Introduction to the User Experience - ThePix/QuestJS GitHub Wiki

This section is all about what the user sees and hears, beyond just the raw text. It is about adding colours and fonts, menus and maps. While this specific document will hopefully make it easier to find what you want, as I am conscious that this is a complex area with a lot of options. There are about as many pages on this issue as there are for everything else combined.

Quest offers broadly three options for the player to interact with the game:

  • Command bar
  • Game panes on the side
  • Hyperlinks

The pros and cons of each are discussed in more detail here.

User Input

Occasionally you want to allow the user to provide input in a different way during your game. This could be to provide an answer to a riddle, and you do not want the answer going through the parser; it could be the player selecting a response from a menu; it could be a character creation screen for an RPG.

Text Output

This section is about the text that is output to the main screen. The first discussed the basic output function, msg, as well as its many alternatives. It also describes the underlying mechanism of the output queue.

"Special text effects" is about animating the display of the text; at its simplest, showing one character at a time. "Output effects" are things like pausing and clearing the screen.

The last page in this section is about the settings available, controlling whether the text input is available and its cursor, the format of room descriptions, etc.

For styling a section of text within a string, you should use a text processor directive.

The Side Panes

This is about customising the side panes. There are a lot of options here, and the built-in ones are discussed in the first page - what panes are shown, how to set up the status pane, adding extra inventories.

Then we get into how we can change the way the panes work. "Verb-orientated" gives the user a list of verbs; select one, then choose the item. This is the opposite to the standard Quest approach introduced in Quest 1, I think (and possibly pre-dating Quest), but is how we say it in English. Destination-orientated offers an alternative to the compass; the user selects a destination, rather than a direction.

"Buttons, buttons, buttons" has all the verbs displayed immediately as button after the item name (click the link to see an example). This gives a very different feel to the panes. The "Additional side pane" describes more generally how you can add your own element.

Miscellany

The "Destinations, not directions" page describes how you could implement a game without compass directions; the player types GO TO KITCHEN, or selects "kitchen" from the list in the side pane.

"Hyperlinks" explains how to add hyperlinks; at its simplest, just add a built-in library.

The "Responsive games" is about making games work on both computers and mobile; it should just happen, but you might want to see the details.

Finally, "Styling with CSS" describes how to use CSS to modify fonts, colours, etc.

Multimedia

These are pretty self-explanatory.

Adding Extra Features

What a toolbar across the top or a map?