2 - To do for Milestone2 -
3 http://super-tux.sf.net/
5 High priority: milestone goals that should be implemented for next milestone
6 Medium priority: would be nice to have for next milestone, but should
7 be secondary to high priority goals
8 Low priority: things that should be fixed sometime
9 ?: Things that need to be discussed to determine whether or not they should be
21 * [H] Add an install target - done (however scons is creating stupid .sconsign
22 files at the install location :-/)
23 * [M] improve opengl check to work on win32 and eventually more strange
25 * [H] Make sure compilation on win32 and cross-compilation works
26 * [M] compile some test executables to test for SDL, SDL_mixer and SDL_image.
27 Also test for version of SDL_mixer and SDL_image
28 * [M] Create a distclean target
29 * [M] Create a dist target
30 * [M] Add instructions to the README
31 * [L] If all of the [H] and [M] issues are fixed, remove autoconf/automake
32 * [L] Take a look if it is possible to make it a bit more quiet. (Similar to
33 linux kernel, samba or jam output would be optimum, ie.
34 C++ build/linux/src/bla.o
35 C++ build/linux/src/blup.o
36 C++ build/linux/src/error.o
37 Error on line xx in error.o: This source contained an error
39 g++ -Wall .... -o build/linux/src/error.o src/error.cpp
41 --Collision Detection Rewrite (all [H])--
42 * make blocks bounce again - ok
43 * bonusblocks don't always bounce back to their original position (but stay a
44 few pixels higher) - hopefully ok
45 * it's impossible to go into passages that have exactly the size of tux,
46 either reduce collision rectangle by DELTA or round collision coordinates to
47 integers... - ok for tux and most badguys
49 ** implement star - ok
50 * bring back the enemies
51 - add activation again - ok
52 - make api simpler - ok
53 - implement jumpy - ok
54 -* implement spiky - ok
55 - implement snowball - ok
57 - implement bouncingsnowball - ok
58 -* implement mriceblock - ~ok
59 - implement flame - ok
60 -* implement mrbomb - ok
61 - implement flyingsnowball
63 - implement tree (really?)
64 - bring back stay on platform flag
65 - make enemies bounce of upon each other again
66 - make enemies fall again - ok
67 -* activate/deactive enemies when on screen/away again - ok
68 ** implement ability to cary mriceblock (and other objects) around - delayed
69 for after big commit...
70 * smoke clouds are too fast
71 * some shots disappear in the ground with a "max collision depth reached"
73 * rework collision detection to take movement into account - this should fix
74 the egg suddenly turning directions and the somtimes strange behaviour
75 when hitting a block from the side when falling.
76 - done for rectangles, fixes the issues with blocks and enemies hitting
77 when they should get squished, still it's not optimal as when hitting 2
78 blocks now only 1 gets cleared...
79 * rethink slopes collision feedback... tux becomes too slow when walking up
80 and starts jumping when walking down
81 * think about an attachement mechanism for moving platforms
82 * implement paths for the moving platform, implement simple moving platforms
83 ** activate level end sequence again - ok
84 ** make bullets kill enemies - ok
85 * fix bullet speed/behaviour
87 * check if unducking is actually possible or if something is in the way
89 ** having a star doesn't kill enemies - ok
90 * tux always jumps to full height at the moment - ok
91 * invisble blocks are visible and make the game crash when bumped - ok
92 * reimplement spikes as objects - ok
93 * what to do when stuck under tiles (after using duck-sliding)
94 * do we want multi hit scores again?
95 * tux doesn't stop at igloo anymore
96 * background particle systems are too slow - ok
97 * buttjump is deactivated
99 --Code Refactoring/Cleanup/Optimisation--
100 [H] make the title using GameSession instead of reimplementing all the stuff
101 [L] rename gameloop.* files to gamesession.*
102 [L] rename GameObject::action to GameObject::update()
103 [L] use physfs for loading files
104 [L] eventually move over new lispreader code from tuxkart
105 [L] change physics class y-velocity-coordinate to be like all other
106 y-coordinates again (positive y to go down)
107 [M] harmonize to 1 single gameloop that switches between title, worldmap,
108 ingame mode and eventually leveleditor mode
109 [H] introduce a special mode in DrawingContext for objects that want to draw
110 themselfes. This could speed up rendering of tilemaps.
111 [H] implement quadtree to speed up collision detection
112 [?] remove badguyspecs and bitmask files
113 [M] Make the gamelogic run in a fixed logical framerate
116 [?] think about how to implement scripting, and how to make a simple and easy to
117 use api for the scripting interface
118 (language will probably be lua - just have to figure out how well we can do
119 without OO support in the scripting language.
120 Other candidates are python, ruby and less likely java, mono/.net,
121 surely no own invention, perl or 1 of these c-like scripting languages)
123 [?] Default keyboard setup should change. Up will be needed for other features
124 like going through doors and looking up, etc.
125 Up arrow - Look up / activate
126 Down arrow - Look down / duck
127 Left arrow - Left move
128 Right arrow - Right move
132 [H] Worldmap should have a flag to allow to go to another map after finishing
133 a level from that one.
134 It might be cool to have a (place group in the worldmap file that would
135 allow such stuff as: levels, messages, wrapping and worldmap changing
136 (or even combinations).
137 [H] Change resolution to 800x600
138 - Levels need to be updated to resolution
139 - half of the levels have been already updated
140 - some fixed levels still have "glitches". See the menu level where
141 some of the tiles are "wrong" and don't fit
142 [H] Buttjump related things
143 - Should kill enemies with a certain range
144 - Done--now needs to be tweaked
145 - Animation (need images)
146 - Should be a powerup item (still to be discussed)
147 - Should break bricks if Tux is on top of bricks, otherwise it should
148 kill enemies within a close range.
149 - After enemy-kill is used, powerup should be removed from Tux
150 [H] Icebullet related things
151 - we should decide on specifics
152 [H] Tux should fall while walking in tiles that have a space between.
153 - Possible solution: reduce Tux's width when checking collision with tiles
157 - Tux's buttjump animation
158 [H] Tiles constructed with image-region are not drawn coordinates < 0
160 [M] Save score on per-level basis to make high-score
161 [M] Save time on per-level basis to make low-time-score
162 [M] Add bonus score for extra time left when finishing a level
163 [M] when bumping a special with 2 blocks at once, it won't change direction
164 [M] tux get killed if he kicks a iceblock while at the same time bouncing on
166 [L] Allow any object to be inside of a [?] box, ie. trampoline or badguy
167 - Not sure if this would be gameplay wise.
171 - More things than just levels on the worldmap (similar to SMB3)