-
Notifications
You must be signed in to change notification settings - Fork 1
Introduction to the Editor
So you want to create a text adventure in Quest 6...
The editor is currently under construction, so be prepared for it to change. It is in a state when you can play around and get an idea of what it will be like - and perhaps give me some feedback too. The underlying format of the file should be stable, so you should be able to upgrade to new versions without a problem, however I cannot guarantee that as yet.
The app opens up to look broadly like Quest 5, with a menu bar across the top, a hierarchy of objects down the left and the main area for the current object in the centre, with different features accessed via tabs.
Note that I am using "location" to refer to a place a player can go to, "item" to mean an object that can be manipulated in some way, and "object" to refer to both. In Quest 6 everything in the game world is an object; either a "room" or an "item".
The menu bar has all the features you would expect, and is discussed more fully here.
The pane on the left shows a hierarchy of items and rooms, so you can see what item is in what room. Rooms are indicated by a box around the name, items have no border, stubs have dotted borders. Click on an object to see its details on the right. The currently selected object is highlighted in yellow.
If an object contains other objects (such as a a room or container with items inside, or the player or an NPC holding some items), there will be a small triangle left of the name. Click on the triangles to expand or collapse the list of objects inside this one. This will be saved with your game, by the way.
The main pane shows details for the currently selected object. The information is split between different tabs, and what is shown will depend on the object.
The "Settings" object is special (and is black in the the side pane); it will not be an object in your game, it is used to hold the settings for your game (it is very much like the "game" object in Quest 5). It also has its own unique set of tabs, discussed [elesewhere(Settings).
Objects (anything other than the settings) have two constant tabs and any number of variable tabs.
The Home tab shows general information.
The name is a unique identifier for this object. It can only contain letters, numbers and underscores, and cannot start with a number; you will not be able to type in anything else. If there is already an object with the same name, the editor will warn you with a yellow strip across the top (but it will let you create items with the same name; if it stopped you, it would also stop you giving an item a name that starts with another name).
The location is obviously where the object is; select from a list of current objects. It will not let you select the current object as its own location! The object will immediate go to that location in the hierarchy. Select the "---" option at the top if you want the object not to be inside anything.
There are two controls for the editor (only one is visible for items); this allows you to modify the list on the left to make it easier to find things if you are writing a big game. You can tag a room as a zone, to have the border in white. A zone is a room that contains other rooms; so one zone could be the cave system, another zone the castle and another the forest. There is no effect on your game (though you could make it so there is!), but it makes it easier to work on the castle if the other two zones are collapsed.
You can also change the colour of objects in the side pane too, perhaps to highlight those that need work, or again to flag different types of objects. There are twelve colours to choose from. Again, this has no effect on your game, it is purely for the editor.
The other controls on this tab set the templates, and are only visible for items.
First there is mobility. Certain templates are considered mutually exclusive, so are lumped together under this heading. Either an item is the player OR an NPC OR is something that can be picked up OR a topic OR is none of them. Depending on which of these you choose other options may be available. For example, if you select "Takeable", you will be able to set the item to be a container, and if you then select "Openable" from that list, you will have the option to make it lockable.
Options selected here will control what other tabs are visible.
The second tab is Texts.
The first box on this tab is the description of the object (the "examine" attribute for items or "desc" for rooms). Tick the box if you want this to be a script, a new box will appear where you can list parameters, separated by commas. You will see yellow if it does not compile (though this is not completely reliable as yet).
The second box is for comments. This is just for the author, and will not be saved in your published game.
For locations, the third and final tab is for Exits.
This is where you create a link from the current room to another room. At the top, you will see all the directions. If the direction is in grey, there is no exit that way. Click a direction to select it; it will become bright yellow.
In the lower section you can work on a specific exit. If there is no exit, you can create one. If there is you can set the destination or delete the exit or go to the destination room.
Note that you can choose whether the list of exits has all objects or just rooms via the Options menu. If you set an exit to go to an item, then change the options to show only rooms, you might find problems when you look at this exit.
Exits can have four types, depending on what you want them to do. The default has no options; just a destination. The "Message script" option allows you to add a message that fires when the player (on NPC) uses the exit. It is called "Message script" because it is most useful to describe the character using the exit.
The "Custom script" option is the most flexible; it fires if the character tries to use the exit. You can set it to decide whether the character can go through, send her to a random destination, anything you want.
The "Standard door script" is a built in script for handling exits with door objects. Link to the door and give it a name.
For Authors
Advanced Topics
For Developers