1 ' This file is part of Realism, which is Copyright FunnyMan3595 (Charlie Nolan)
2 ' and licensed under the GNU GPL v3. For more details, see LICENSE in the main
5 ' WARNING: All mod formats are under heavy development. They may change at any
6 ' time, breaking old mods. For this reason, we DO NOT RECOMMEND making mods
9 ' This is the start map for the realism main game, which also serves as a mini-
10 ' guide to making maps for your mods.
11 ' For a complete guide to modding, see MODDING, in the Realism main directory.
13 ' TODO: A "mini-guide" this ain't. Trim it down.
15 ' Lines starting with an apostraphe (') are comments and will be ignored when
16 ' the map is processed. Blank lines are also ignored.
19 ' The map file starts with an ASCII art of the map. If some lines are shorter
20 ' than others, the missing tiles are part of the east border.
22 ' You can use any symbols you like except for the apostraphe (') and colon (:).
23 ' Try not to use symbols that are easily confused (1/l, 0/O).
25 ' Whitespace at the end of lines is trimmed. Do not use tabs, they throw off
26 ' the alignment of the ASCII art.
28 ' Note that case matters. T != t
34 ' The art is followed by a key. Each symbol is given a map function.
35 ' You can overwrite them and create your own in <module>/map_functions.py.
36 ' If the map contains any symbols that aren't in the key, the module will output
37 ' an error message and refuse to run.
38 ' The symbol must be the first character on the line, followed immediately by
39 ' a colon. The space after is optional, but improves readability.
40 @: start_and_movement_tutorial
42 ' "safe" squares have no random encounters or other special features.
43 ' If you want ordinary terrain with random encounters, use "normal" instead.
47 ' "safe_door" squares contain closed but unlocked doors. When open, they act
48 ' like "safe" squares. "door" squares act like "normal" squares when open.
53 ' Some functions take one or more parameters, separated by spaces. Extra spaces
54 ' in a row are ignored, as parameters may not be omitted.
55 ' These two have the parameter "Main Game", which alters the tutorial dialogue
56 ' to be in-character for the main game. Use "False" if you want a generic
58 ' You can also just leave it off, since it defaults to False.
59 3: conversation_tutorial True
62 ' If no function with that name exists, the game will search for a map by that
63 ' name, and link to any that it finds. If no map exists, the game will output
64 ' an error and refuse to run the module.
68 ' After the key come a set of the features of the map as a whole.
70 ' The four border_ features are like the key above, but apply to the borders
72 ' Each one should be either wall or a map name. You can also use a custom
73 ' function, but returning True (move OK) will be ignored. Choose your display
76 border_east: start_town 11 4
80 ' This map has only safe spaces, so this section is for reference only.
81 ' "normal" squares would cause encounters 20% of the time, with a safe period
82 ' of five squares after each encounter.
83 encounter_frequency: 20
86 ' The encounters would be against single, level 1 monsters.
87 ' If you specify a range for either level or critters, the value will be chosen
88 ' at random for each encounter.
89 encounter_min_level: 1
90 encounter_max_level: 1
91 encounter_min_critters: 1
92 encounter_max_critters: 1
94 ' critter_types is a space-separated list of critter types (as defined in
95 ' <module>/monsters.py) that can appear on this map. Note that this only
96 ' applies to "normal" squares. Triggered encounters can use any critters.
99 ' The map can either use one of the normal tilesets or define its own in
100 ' <module>/tilesets.py.