5 Documents and ideas: http://super-tux.sourceforge.net/milestone2
6 Wiki: http://netpanzer.berlios.de/supertux
7 esp. http://netpanzer.berlios.de/supertux/index.php/Forest
12 High priority [H]: milestone goals that should be implemented for next
14 Medium priority [M]: would be nice to have for next milestone, but should
15 be secondary to high priority goals
16 Low priority [L]: things that should be fixed sometime
17 ?: Things that need to be discussed to determine whether or not they should be
24 * [H] Add an install target - done (however scons is creating stupid .sconsign
25 files at the install location :-/)
26 * [M] improve opengl check to work on win32 and eventually more strange
28 * [H] Make sure compilation on win32 and cross-compilation works
29 * [M] compile some test executables to test for SDL, SDL_mixer and SDL_image.
30 Also test for version of SDL_mixer and SDL_image
31 * [M] Create a distclean target
32 * [M] Create a dist target
33 * [M] Add instructions to the README
34 * [L] If all of the [H] and [M] issues are fixed, remove autoconf/automake
35 * [L] Take a look if it is possible to make it a bit more quiet. (Similar to
36 linux kernel, samba or jam output would be optimum, ie.
37 C++ build/linux/src/bla.o
38 C++ build/linux/src/blup.o
39 C++ build/linux/src/error.o
40 Error on line xx in error.o: This source contained an error
42 g++ -Wall .... -o build/linux/src/error.o src/error.cpp
44 --Collision Detection Rewrite (all [H])--
47 - implement flyingsnowball
49 - implement tree (really?)
50 - bring back stay on platform flag
51 ** implement ability to cary mriceblock (and other objects) around - delayed
52 for after big commit...
53 * smoke clouds are too fast
54 * rethink slopes collision feedback... tux becomes too slow when walking up
55 and starts jumping when walking down
56 * think about an attachement mechanism for moving platforms
57 * implement paths for the moving platform, implement simple moving platforms
58 * fix bullet speed/behaviour
59 * check if unducking is actually possible or if something is in the way
61 * what to do when stuck under tiles (after using duck-sliding)
62 * do we want multi hit scores again?
63 * tux doesn't stop at igloo anymore
64 * buttjump is deactivated
65 * implement quadtree or grid to speedup collision detection
67 --Code Refactoring/Cleanup/Optimisation--
68 [H] make the title using GameSession instead of reimplementing all the stuff
69 [L] rename gameloop.* files to gamesession.*
70 [L] rename GameObject::action to GameObject::update()
71 [L] use physfs for loading files
72 [L] change physics class y-velocity-coordinate to be like all other
73 y-coordinates again (positive y to go down)
74 [M] harmonize to 1 single gameloop that switches between title, worldmap,
75 ingame mode and eventually leveleditor mode
76 [H] introduce a special mode in DrawingContext for objects that want to draw
77 themselfes. This could speed up rendering of tilemaps.
78 [M] Make the gamelogic run in a fixed logical framerate
81 [?] think about how to implement scripting, and how to make a simple and easy to
82 use api for the scripting interface
83 (language will probably be lua - just have to figure out how well we can do
84 without OO support in the scripting language.
85 Other candidates are python, ruby and less likely java, mono/.net,
86 surely no own invention, perl or 1 of these c-like scripting languages)
87 [H] Create a "sound object" that is an object or area, that can be placed on the
88 map and constantly plays a .wav file to improve game athmosphere.
89 Good examples would be a water sound which can be placed at waterfalls,
90 a kuckoo sound that can be placed into the wood, bubling sound for lava,
92 [?] Create a falling leaves particle system. (I.e. slowly falling leaves in the
93 background) along with nice leaves graphics.
94 - the problem here is that leaves don't fall of the sky and fir trees
96 [H] Add a simple rock object that can be carried around
97 [H] Add a rope object on which tux is able to climb, also add a ? block that
100 [H] Buttjump related things
101 - Should kill enemies with a certain range
102 - Done--now needs to be tweaked
103 - Animation (need images)
104 - Should be a powerup item (still to be discussed)
105 - Should break bricks if Tux is on top of bricks, otherwise it should
106 kill enemies within a close range.
107 - After enemy-kill is used, powerup should be removed from Tux
108 [H] Icebullet related things
109 - we should decide on specifics
110 [H] Tux should fall while walking in tiles that have a space between.
111 - Possible solution: reduce Tux's width when checking collision with tiles
115 - Tux's buttjump animation
116 [M] Save score on per-level basis to make high-score
117 [M] Save time on per-level basis to make low-time-score
118 [M] Add bonus score for extra time left when finishing a level
119 [M] when bumping a special with 2 blocks at once, it won't change direction
120 [M] tux get killed if he kicks a iceblock while at the same time bouncing on
121 [L] The camera does some nasty little jumps if you jumped up on a higher place
122 where the camera didn't completely follow yet and you fall down directly
123 again. This will suddenly raise the camera up.
124 [L] Allow any object to be inside of a [?] box, ie. trampoline or badguy
125 - Not sure if this would be gameplay wise.
126 [L] There is a report that the joypad is always used on windows and more severe
127 it generates random up/down events, though it is callibrated correctly.
132 [H] Graphics+Animations for the Yeti
133 (see also http://netpanzer.berlios.de/supertux/index.php/Yeti)
134 [H] Graphics for the 5 keys in the forest world, graphics for the castle door
136 [H] New tiles for the forest worldmap
137 [H] Create a graphics to visually present reset points. (Maybe a bell that
138 starts swinging once tux touched it?)
139 [M] Add graphics for ropes
140 [L] Create graphics for bubbles and soap (not necessary for milestone2)
142 -new enemies need to be designed and added
146 - More things than just levels on the worldmap (similar to SMB3)
147 - if we have a logical framerate we could record/play demos by simply storing
148 the pressed keys in each frame...