# This file describes the syntax for the quests file. # # Quest definition files are written much like other files in the game. Each # quest is defined by several keys, which are read from the file line-by-line. # Some keys contain fields that may span multiple lines (i.e. 'description'). # The best way to understand the format is to look at an existing example. # # Quests are is handled by the functions in 'server/quest.c', # quest files are handled by classes 'QuestLoader' and 'QuestWriter'. # # Key Reference: # quest - internal name, which must be globally unique # title - short, one-line descriptive title for the quest # description - start of a description field for the block (quest or step) it is in # end_description - end a description field # comment - start of a developer-oriented comment, not visible to players in-game # end_comment - end of comment field # restart - (optional) when set to a non-zero integer, the quest can # is replayable (can be completed multiple times) # step - integer value for the beginning of a step block; this # block must also contain its own description block (see # examples for details) # setwhen - in a 'step' block, starts a block of conditions to automatically switch # to that step, based on other quests. Syntax is 'quest state', where # 'quest' is the internal name of a quest, and 'state' can be # - "min step-max step" for a step range # - "<=max step" for range 0 to "max step" # - "exact step" for a specific step # - "finished" to indicate the quest must be finished # end_setwhen - end of a setwhen block # end_step - end a step field # end_quest - end of a quest definition