Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
This site comprises tutorials and libraries written by me for Quest 5. Since I starting this site, I have become responsible for the updating of Quest and the official Quest documentation, so there is some stuff repeated. Some material from here is starting to disappear and reappear over there. Ultimately this will site will have libraries and guides for using them, plus the more advanced or specialised guides.
Quest is software designed for creating and playing text adventures, and its main site is here:
If you are just starting with Quest, you are best starting with the official tutorial, which is here:
A more advanced tutorial here:
The main documentation is here:
How to set up specific systems for your game.
Dynamic Descriptions: How to create room descriptions that change to reflect how the game has progressed
Keys and Locks: How to lock chests and doors.
Enhanced Wait: Allow the player to wait an arbitrary number of turns, but interrupt the waiting if necessary.
Computer system: Modelling a computer interface that is navigated by selecting from a menu.
Adding a Smart Phone to your game: Uses ConvLib.
For more complicated systems, no need to re-invent the wheel, just use a library. Each of these is a tutorial, which will explain what you can do and how to do it, with a link to the library itself.
NOTE: If using the on-line editor you will be unable to add custom libraries.
CombatLib: A comprehensive library for magic and melee in a fantasy RPG. A series of tutorials will take you through how to create your own monsters, spells and equipment.
Conversations: Build dynamic conversations for your NPCs. Now you can also add consultables (computers, encyclopedeas, etc.) to your game.
Enhanced it: Better handling of pronouns.
Lifts (elevators): A system where the player enters a room and presses a button to move the room to a new location.
Liquids: Allows you to handle liquids in your game, with the capability for them to be mixed to produce new liquids.
Independent NPCs: Allows your NPCs to act independently.
Quests: A way to track quests in Quest.
Save and Load: An alternative save/load system.
Second Inventory Pane: Add a second inventory pane to your game (for spells, for example).
Shipwise directions: Changes all the compass directions, to ship-style directions, port, starboard, forward and aft.
Shops: Allow the player to buy and sell goods.
Stackable items: Have items stack in the player's inventory pane.
Tracking time: This allows you to track and display time in your game. Time advances with each turn, rather than in real time. For advanced users, you can also schedule events.
Weather: Handling weather in your game.
Quest allows you to make all sorts of changes to the user interface. Some changes can be made on the Display and Interface tabs of the game object, but there is a huge amount you can do besides that, using code.
Advanced UI Part 01: Concepts: Understanding how Quest handles the display.
Advanced UI Part 02: New Status Pane: Adding a new feature that can be updated from your game, including an indicator.
Advanced UI Part 03: New Button Pane: Adding a feature the player can click to make something happen in the game world.
Advanced UI Part 04: Dialogue Panels: Adding a dialogue panel suitable for character creation to your game.
Advanced UI Part 05: Enhanced Compass Pane: Instead of putting buttons in a new pane, add them to the compass pane!
A Group Project: Suggestions on how you might do this in Quest.
On-line vs Off-line editor: There are limitations to using the on-line editor; this explains them.
YAML to Quest: Converting a text file in YAML to Quest, using Ruby.