*** empty log message ***
[supertux.git] / LEVELDESIGN
1
2 - Level editing for SuperTux -
3 http://super-tux.sf.net/
4
5 Last update: April 26, 2004
6
7 This document describes both the level format and
8 the level editor.
9
10 = LEVEL FORMAT =
11
12 The level format used to be pretty easy to understand, but it
13 is now more complex. Anyway, should be pretty useful to know
14 a bit of it, when you want to do stuff just as to just change
15 the author's name or something small.
16
17 It uses the Lisp syntax and is pretty intuitive. Here have a
18 look at a quotation:
19 (Comments can be made using ';')
20
21 ; This is a comment!
22 (supertux-level
23 ; some level info: version, author and the level's name
24   (version 1)
25   (author "Ingo Ruhnke")
26   (name "Night Chill")
27 ; number of tiles used (currently the height has to be 15)
28   (width  515)
29   (height 15)
30 ; Tux's start position
31   (start_pos_x    100)
32   (start_pos_y    170)
33 ; Background image; if none is specified, the color below will be used
34   (background "")
35 ; Music file
36   (music "Mortimers_chipdisko.mod")
37 ; Colors, as you can see you can have different colors in the top
38 ; and in the bottom, thus creating a gradient
39   (bkgd_red_top    0)
40   (bkgd_green_top  0)
41   (bkgd_blue_top   0)
42   (bkgd_red_bottom    120)
43   (bkgd_green_bottom  120)
44   (bkgd_blue_bottom   0)
45 ; Time (it is not in seconds!)
46   (time  300)
47 ; Gravity to be used (you should let it stay in 10 for ordinary levels)
48   (gravity  10)
49 ; The particle system draws images that simulate weather effects
50 ; As of the writing of this text, both "snow" and "clouds" are supported
51   (particle_system "snow")
52 ; Theme is the tileset that is used
53   (theme "antarctica")
54   (interactive-tm
55     ; here goes a lot of numbers that are the tiles places
56   )
57 ; Reset points; there can be more than one
58 ; Reset points are positions where the player passes through and
59 ; if he dies, he will be back to there. They are invisible
60   (reset-points
61     (point (x 6988) (y 222))
62    )
63 ; Objects include enemies, may include more stuff in the future
64 ; just as moving plataforms...
65   (objects
66     (mriceblock  (x 13919) (y 384))
67     (mriceblock  (x 14258) (y 366))
68     (mriceblock  (x 12996) (y 248))
69     (mriceblock  (x 13058) (y 250))
70     (mriceblock  (x 12933) (y 245))
71   )
72    )
73
74
75 = LEVEL EDITORS =
76
77 USING THE BUILT-IN LEVEL EDITOR:
78 --------------------------------
79
80 When opening the leveleditor, a menu will appear. This menu
81 can be used to select or add level subsets. A level subset is
82 a collection of levels. Subsets can be chose during gameplay
83 when starting a game.
84
85 After selecting the subset, have a look at the level editor.
86 The button bar in the right is the place where you can control
87 the actions related with editing. You can select levels and add
88 throught there.
89
90 To select tiles (foreground or background) and enemies, the button
91 bar is the right place. There you can also save, test and setup
92 the level. It is also possible between two selection cursors! Give
93 a try to both. A right click in a button bar button will give you
94 a description and a shortcut for it.
95
96 To change a tile, just press the tile you want to change with a
97 left mouse click. The current tile will be used. Depending
98 on the selection behavior, you can or not select more
99 than one tiles.
100
101 To scroll, you just have to point over the two arrow buttons, or
102 use the right button click.
103
104 There is a small help that can be reached by pressing F1.
105
106 To go back to the menu, just press Esc.
107
108 The levels are saved under a .supertux/levels directory in
109 your home directory.
110
111 FIXME: this description of the built-in level editor are
112 out dated. Anyway, it is yet being developed.
113
114 USING FLEXLAY:
115 --------------
116
117 FlexLay is an external project (it even uses different libraries)
118 that is developed by Ingo Ruhnke and supports a lot of different
119 games, including SuperTux (or else we wouldn't mention it :) ).
120
121 Anyway, it is pretty easy to use and is a lot more advanced than
122 the internal one. So, if you are considering doing a few levels
123 for us, it would be a good idea to check this out.
124
125 There isn't currently any webpage for it, just go to our webpage and
126 you should find a download of this program.
127
128 You can also get the latest development copy from the Subversion
129 source tree:
130     svn co "svn://clanlib.org/Games/Windstille/trunk/flexlay/"
131
132 The only cons it has is that you have to have an accelerated
133 videocard (with the drivers working, obviously). For linux,
134 we advise nvidia videocards with the use of nvidia's closed
135 drivers. ATI drivers should be enough to run this game though.
136
137
138 = CONCLUSION =
139
140 To sum up, go build lots of levels and HAVE FUN!!
141
142 Please, send your levels or any art, including sketches, you
143 have created to the SuperTux mailing list.
144
145
146     - SuperTux developers