1
Roadmap for Pingus 0.5.0
4
- make sure all important strings are translatable
6
- run ./extract-po.sh && ./update-po.sh
8
- update ChangeLog: svn2cl --break-before-msg
10
- make sure that the game still runs after install.sh
12
- check NEWS, README, INSTALL.*
14
Stuff to do at all times:
15
~~~~~~~~~~~~~~~~~~~~~~~~~
17
- grep for all the FIXME's and '#if 0' and find those that might be
18
important, add what you find to this TODO
20
Roadmap for Pingus 0.8.0:
21
~~~~~~~~~~~~~~~~~~~~~~~~~
23
- pingu explosions are rects, should be circles (Vel(rand()%10, rand()%10) vs Vel(angle, length))
25
- add VCR like effect for fast forward
27
- add slow motion button (dead, turtle, pingu, rabbit)
29
- move time into pingus counter
31
- make option menu accessible from in-game (top/left corner)
33
- proper waiter animation
35
- repaint pause and fast-forward button
37
- use transparent action buttons unless fast-mode is used
39
- add round corners to the minimap
41
- allow sprites as background
43
- add a proper option menu
47
- animate the exit flag
51
- UTF8 support with MES-1 characters (http://www.eki.ee/letter/chardata.cgi?comp1=MES-1&comp2=)
53
- split screen multiplayer
55
- rework the UI, either go glas-like or use the blackbord style
57
- Font::draw() origin only works properly for left, right and center, breaks with multiline text
59
- file parsing easily crashes or asserts on incorrect files
61
- GroundMap tiles are currently RGBA, while in reality they are just
62
RGB with a colorkey, room for optimization
64
- implement xschema-like language to check for syntax errors in the level files
66
- keep highscores for levels (number saved and stuff like that)
68
- digger follows down slopes
70
- trap in one tutorial level with two exits is in background, should be foreground
72
- worldmap pingu walks right over locked levels
74
- Wiimote support (libcwiid)
78
* The suffix showing which extra skill a Pingus has (e.g. [f] for Floater or
81
* b) The big sign on the 'Tutorial Island' image
83
- do we need z-pos for anything or does implicit object position serve
84
the same purpose? Problem: Groundpieces all have the same z-level,
85
the editor doesn't handle that and allows insertions inbetween
87
- StringFormat does line breaking TeX-style, but that isn't useful
88
with the current s-expr format, which can handle explicit line
91
Roadmap for Pingus 0.7.3
2
92
~~~~~~~~~~~~~~~~~~~~~~~~
6
* two worlds should be provided
7
- tutorial world (maybe 25 levels)
8
- Hellmouth(story?: the earth opens and pingus face trouble...)
10
* some text intro: This is Free Software, yada yada... this is not a
11
finished game, more might follow...
13
* contrib levels need better sorting, removing 'dead' maps, and some cleaning up
15
* multiplayer mode should be ripped out if not working correctly (will
18
* fix all major action bugs [mostly done, needs more testing]
20
* resource syntax change [not done]
23
<resource type="datafile">
24
<resource-datafile>global</resource-datafile>
25
<resource-ident>GroundPieces/piece5</resource-ident>
34
<datafile>global</datafile>
35
<ident>GroundPieces/piece5</ident>
40
<orientation>rot0</orientation>
49
============================
53
* Editor arrow keys don't work
55
* Duplication doesn't work for entrances
57
* Pressing Armageddon crashes the game from time to time
59
* While loading a level it sometimes quits with a message that a
60
resource wasn't found, but the resource is present
62
* Sound Support is very primitive
64
* Music support isn't tested very much
68
* Some non-critical errors (file not found, etc.) quit Pingus, when
69
it still should be able to contiune
71
* Bridger's bridges are put wrongly to the colmap
73
* Extremely short mouse clicks are not registered (its a bug in
74
ClanLibs event system)
76
- upload an uptodate doxygen source docu (might be incomplete)
78
- upload a tutorial game introduction
80
- update the level building tutorial and include it in the tarball
82
- all docu should be included in the tarball (source code docu might
83
only be on the webpage due to space issues)
85
- temporary saving should be reworked [rotation buffer]
87
- duplicating multilpe iceblocks leads to a crash
89
- seperate colmap and gfx remover surfaces for digger, miner, etc. would be nice
90
the current ones don't work very good since the remove path is too smooth
91
- keep_trans,alpha blitters would also be very nice (darken the border of a digging path or something like that)
92
- diggers leave a small pixel barier when finished with there digging,
93
which can be abused as a step
95
- check for z-pos on groundpieces, which don't make much sense
97
- replace all '9000' time levels with '-1' time or correct time
99
- fix author in all levels
101
- update email addrs and missing author fields in level files
97
- Levels: All levels lack description
99
halloween1-grumbel.pingus - circle save - finished - needs testing (easy) - demonstrates a Faller bug
100
halloween2-grumbel.pingus - rescue by jump - finished - needs testing (easy)
101
halloween3-grumbel.pingus - digg tunnel - finished - needs testing (medium)
102
halloween4-grumbel.pingus - wall bomb - finished - needs testing (easy/medium)
103
halloween5-grumbel.pingus - join-jump - finished - needs testing (hard++)
104
halloween6-grumbel.pingus - jump high - finished - needs testing (easy)
105
halloween7-grumbel.pingus - rescue - finished - needs testing - number of pingus wrong (hard--)
106
halloween8-plouj.pingus - bridge broken - (hard+)
111
- resource system needs a review/rewrite
113
- "core/misc/404sprite" should be returned for missing graphics
115
- The goal should be to provide fullscreen support for most common
124
1400x1050 (Widescreen LCD)
130
-> 1920x1200 means fullscreen for almost anything today and would work
131
for all halloween levels, not so much for tutorial levels
135
Minimal-Horizantal: 1000
136
Maximal-Horizantal: 2500
138
Minimal-Veritcal: 600
139
Maximal-Veritcal: 1200
141
data/levels/halloween/halloween1-grumbel.pingus: (levelsize 1400 950)
142
data/levels/halloween/halloween2-grumbel.pingus: (levelsize 1700 1000)
143
data/levels/halloween/halloween3-grumbel.pingus: (levelsize 1600 800)
144
data/levels/halloween/halloween4-grumbel.pingus: (levelsize 1900 1000)
145
data/levels/halloween/halloween5-grumbel.pingus: (levelsize 1700 1000)
146
data/levels/halloween/halloween6-grumbel.pingus: (levelsize 2000 1000)
147
data/levels/halloween/halloween7-grumbel.pingus: (levelsize 2500 1000)
148
data/levels/halloween/halloween8-plouj.pingus: (levelsize 1500 900)
150
data/levels/tutorial/basher-tutorial-grumbel.pingus: (levelsize 1900 700)
151
data/levels/tutorial/bomber-tutorial2-grumbel.pingus: (levelsize 1200 1000)
152
data/levels/tutorial/digger-tutorial2-grumbel.pingus: (levelsize 1400 700)
153
data/levels/tutorial/floater-tutorial-grumbel.pingus: (levelsize 1230 900)
154
data/levels/tutorial/jumper-tutorial-grumbel.pingus: (levelsize 1200 600)
155
data/levels/tutorial/miner-tutorial2-grumbel.pingus: (levelsize 1000 1100)
156
data/levels/tutorial/snow10-grumbel.pingus: (levelsize 1400 1200)
157
data/levels/tutorial/snow11-grumbel.pingus: (levelsize 1200 600)
158
data/levels/tutorial/snow12-grumbel.pingus: (levelsize 1300 800)
159
data/levels/tutorial/snow14-grumbel.pingus: (levelsize 1200 1000)
160
data/levels/tutorial/snow15-grumbel.pingus: (levelsize 1400 600)
161
data/levels/tutorial/snow16-grumbel.pingus: (levelsize 1270 600)
162
data/levels/tutorial/snow17-grumbel.pingus: (levelsize 1700 600)
163
data/levels/tutorial/snow19-grumbel.pingus: (levelsize 2100 1000)
164
data/levels/tutorial/snow20-grumbel.pingus: (levelsize 2000 600)
165
data/levels/tutorial/snow21-grumbel.pingus: (levelsize 1400 600)
166
data/levels/tutorial/snow22-grumbel.pingus: (levelsize 1400 1200)
167
data/levels/tutorial/snow7-grumbel.pingus: (levelsize 1824 600)
168
data/levels/tutorial/snow8-grumbel.pingus: (levelsize 1216 1000)
169
data/levels/tutorial/snow9-grumbel.pingus: (levelsize 1500 600)
170
data/levels/tutorial/solid-tutorial-grumbel.pingus: (levelsize 1000 700)
172
- start_pos is missing in editor (worked around by centering the view
175
- implement option menu
177
- Regenerate Courier fonts for latin-1/2/9
179
### Loading font file: system://data/images/fonts/courier_small-iso-8859-9.font
180
Font: datadir://images/fonts/courier_small-iso-8859-9.png
181
Error: glyphs found: 188, expected 189
184
- integrate install command into scons (maybe), use 'install' instead of 'cp'
188
- Editor: 27fps - 20%
189
- Main Menu: 30fps - 50%
190
- Worldmap: 50fps - 22%
191
- Starscreen: 19fps - 14%
193
- EndScreen: 50fps - 19%
195
- Loading data/levels/playable/chouser02.pingus in Editor and saving
196
it again causes the background to be at the wrong position (caused
197
by level lacking position and editor setting a different fallback
198
then in-game) [Currently worked around in editor code, should be
199
fixed in the converter]
201
- frameskip seems broken
205
- add dynamic resize for the game
207
- main menu crashes when you click a little wildely:
209
decide whether to ignore cached_action != CA_NONE in
210
ScreenManager::pop_screen. This causes the game to crash if [ESC] is
211
quickly pressed repeatedly
213
currently worked around by:
214
assert (cached_action == CA_NONE || cached_action == CA_POP);
216
but the menu still acts funky if one clicks heavily (i.e. two
217
screens get added instead of one or stuff like that)
219
- rewrite Config file support, make game automatically write a default
220
config file, use s-expr
222
- level converter has a bug that causes some object types to be
223
ignored (startpos and likely the other more excotic worldobj things)
225
- level converter writes 0/1 instead of #t/#f
227
- bridging gets more complicated has graphical error (background?!)
228
surface background doesn't handle larger res due to the Playfield
229
being offsetted (might be solvable with new DrawingContext that
232
- rework command line parsing so that it actually works properly and
233
doesn't depend so much on the order (setting datadir causes trouble
234
with translation, since translation need datadir to work)
236
- parallax scrolling is funky where background tiles are small. When
237
scrolling right, the leftmost column of tiles gets overlapped by the
238
next column a little bit. See the last tutorial level for an
239
example. (likely rounding error float/int)
241
- CollisionMask can't handle RGBA images and likely shouldn't (due to
242
them being animated and stuff like that), we however don't have
243
seperate colmask for those images
245
- convert all levels and check all classic levels for issues (run
246
branches/pingus_sdl/contribl/levelconvert.sh from SVN toplevel dir)
251
- implemented ComboButton for Shift+Tab combinations
253
- add something like FileReader::must_read_int() for cases where a
254
value isn't optional, something that can figure out values that
255
havn't be used would be nice as well
257
- fix verdana11 for latin2 and latin9 or go UTF-8
259
- Liquids/water is 32, others are 64, this is causing trouble with the
262
- some people like auto-scrolling in window mode, in 0.6.0 it worked
263
even when completly out of the window, in SDL the mouse coords don't
264
get updated when the mouse isn't in the window (need to switch from
267
- action-axis doesn't handle analog (do we even need this or could we do with axis-button?)
269
- remove SceneContext from Credits, replace with DrawingContext
271
- sv.po, Swedish is incomplete, lacks level and story text
273
- story graphics have a missing vertical line (due to age old gimp scaling bug)
275
- add drag&drop scrolling
277
- nuke button is unclean, other buttons not so great either -> repaint
279
- walker speed looks wrong, other actions might need fine tuning as well
281
- hurry-up should be removed and replaced by something less heavy
282
(isn't used in tutorial island, since those levels don't have time)
283
(have a blinking clock and tick sound or so)
285
- write a README.input
287
- LANG=sr ./pingus|grep language shows "English" but ingame text is not English
289
- using some languages (sr, cs, tr) causes some kind of font mapping errors
291
- replace "magic" numbers such as default screen size (800 and 600) with macros/globals or whatever is good programming practice
293
Roadmap for Pingus Editor 0.7.3:
294
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
303
- shrinking the editor window to much causes a crash (limit size as temporary fix)
305
- implement proper tmpfile Support (save tmp levels to ~/.pingus/tmp/
306
for backup purpose in case of editor crash or so)
308
- add yes/no question when creating a new level
310
- add overwrite warning to file dialog
312
- add pixel perfect object selection
314
- add icons to filedialog
316
- Dialogs: Editor Properties: user name and email
318
- show an error message if save fails
323
- make inputbox handle text longer then the rect size as well as
326
- keyboard shortcuts need to be implemented with input framework, but
327
how without support for keymaps?
329
- ObjectSelector need to support more object types, missing types:
330
all kinds of traps, weather, special objects
332
- add type conversion (important to convert groundpieces in hotspots and visa verse)
334
- add options to show/hide hidden files and filter stuff
336
- could/should rotate around object center
338
- write a color select widget (Hue, Saturation.Value)
340
- object raising doesn't work for group
103
346
- hint system via herring or flower (it should show the path to walk)
105
348
- smasher doesn't correctly check the y-coordinate
107
- 'translation bug' should be solved
109
- write some guile scripts to check properties of levels
111
- pingus should act more gracefully on errors
113
- missing music should just get printed to the console
115
- missing images => 404 and console error
117
- menu background should be repainted/fixed
119
- back-button in option menu causes freeze when music running, see backtrace:
122
| 0x4040884e in select () from /lib/libc.so.6
124
| #0 0x4040884e in select () from /lib/libc.so.6
125
| #1 0x400894a0 in __DTOR_END__ () from /usr/local/lib/libclanSound.so.1
126
| #2 0x40079220 in CL_CSMixer::wait() (this=0x81e28ac)
127
| at Sources/Sound/Sound/ClanSound/mixer.cpp:62
128
| #3 0x40078d8d in CL_SoundCard_ClanSound::run() (this=0x0)
129
| at Sources/Sound/Sound/ClanSound/soundcard_clan.cpp:140
130
| #4 0x40187d75 in CL_Thread_Generic::run_init(void*) (_self=0x800)
131
| at Sources/Core/System/Unix/thread_pthread.cpp:99
132
| #5 0x401d4f0a in pthread_start_thread () from /lib/libpthread.so.0
133
| #6 0x401d4f51 in pthread_start_thread_event () from /lib/libpthread.so.0
136
- music and sound should be up and running and included in the game [important - release critical]
138
- door-duplication crashes
140
- z_pos sorting might be incorrect
142
350
- all working actions in default level
144
- walker fly in the air (see test1)
146
- bridger<->walker bug still there
148
- pingus can walk over slime (hellmouth2)
150
- diggers can dead-lock and not start digging
152
- show floater and climber in the 'cursor'
154
- insertion of surface backgrounds in the editor
156
- exit/entrance on smallmap doesn't get shown
158
- fix all the bugs at
159
http://sourceforge.net/tracker/?group_id=5358&atid=105358
161
- check that the editor is fully working
163
- background manipulation in the editor should be working
165
- a property gui in the editor would be nice
167
- one tutorial world should be present, other worlds have to wait for
170
- contrib could need a bit cleanup
172
- playable and non-playable levels should be sorted
174
- add better load-from-file support for hotspots, backgrounds, etc.
176
- fix screenshot segfault
178
- pingus doesn't die when out-of-screen
182
- html like behaviour for level descriptions
184
- description screen and result screen must be reworked
186
- thumbnail handling should be reviewed
192
Random crash while scrolling
194
* with-extra-libs broken
196
* sstream buggy, doesn't work with gcc-3.0
198
* plf entrances are buggy
200
'grep' at the sources for "Bug" or "FIXME" that should give you some
201
more known bugs and other stuff.
203
$Date: 2003/04/07 11:58:19 $
207
Todo and Bugs from ROADMAP:
209
- upload an uptodate doxygen source docu (might be incomplete)
211
- upload a tutorial game introduction
213
- update the level building tutorial and include it in the tarball
215
- all docu should be included in the tarball (source code docu might
216
only be on the webpage due to space issues)
218
- why the f*** is GameTime a class with static member function?! It
219
should be a normal non-static class and placed in World.
221
- temporary saving should be reworked
223
- duplicating multilpe iceblocks leads to a crash
225
352
- seperate colmap and gfx remover surfaces for digger, miner, etc. would be nice
226
353
the current ones don't work very good since the remove path is too smooth
227
354
- keep_trans,alpha blitters would also be very nice (darken the border of a digging path or something like that)
330
387
- thumbnail handling should be reviewed
336
Random crash while scrolling
339
---Type <return> to continue, or q <return> to quit---
340
#0 0x08090697 in Playfield::do_scrolling() (this=0x954d678)
341
at boost/smart_ptr.hpp:207
342
207 T* operator->() const { return px; } // never throws
344
#0 0x08090697 in Playfield::do_scrolling() (this=0x954d678)
345
at boost/smart_ptr.hpp:207
346
#1 0x080901e8 in Playfield::updateX() (this=0x954d678) at Playfield.cc:196
347
#2 0x080637cb in Client::update(float) (this=0x954d3d0, delta=0.0350000001)
348
at /usr/include/g++-v3/bits/stl_iterator.h:478
349
#3 0x08063566 in Client::play_level(boost::shared_ptr<PLF>) (
350
this=0x954d3d0, arg_plf=0xbfffec60) at DeltaManager.hh:35
351
#4 0x08062388 in Client::display() (this=0x954d3d0)
352
at boost/dummy_ptr.hpp:37
353
#5 0x080c18a6 in PingusGameSession::start() (this=0xbfffecd0)
354
at boost/smart_ptr.hpp:207
355
#6 0x080fd50a in EditorEvent::editor_start_current_level() (this=0x829de00)
356
at EditorEvent.cc:490
357
#7 0x080fc137 in EditorEvent::on_button_press(CL_InputDevice*, CL_Key const&) (this=0x829de00, device=0x81eb7c8, key=@0xbffff2d0) at EditorEvent.cc:90
358
#8 0x08145348 in CL_MethodSlot_v2<EditorEvent, CL_InputDevice*, CL_Key const&>::call(CL_InputDevice*, CL_Key const&) (this=0x858a4c8, param1=0x81eb7c8,
359
param2=@0xbffff2d0) at /usr/local/include/ClanLib/Signals/slot_v2.h:62
360
#9 0x4012d5fa in CL_Signal_v2<CL_InputDevice*, CL_Key const&>::call(CL_InputDevice*, CL_Key const&) (this=0x81dd78c, param1=0x81eb7c8, param2=@0xbffff2d0)
361
at Sources/API/Signals/signal_v2.h:80
362
#10 0x40116223 in CL_XWindowKeyboard::on_xevent(_XEvent&) (this=0x81eb7c8,
363
e=@0xbffff3c0) at Sources/API/Signals/signal_v2.h:59
364
#11 0x4012d851 in CL_MethodSlot_v1<CL_XWindowKeyboard, _XEvent&>::call(_XEvent&) (this=0x41001170, param1=@0xbffff3c0) at Sources/API/Signals/slot_v1.h:62
365
#12 0x40119731 in CL_XWindow_DisplayCard::keep_alive() (this=0x81eb5f8)
366
at Sources/API/Signals/signal_v1.h:80
367
#13 0x40171763 in CL_System::keep_alive() ()
368
at /usr/include/g++-v3/bits/stl_list.h:114
369
#14 0x080fa45f in Editor::edit() (this=0x8586368) at Editor.cc:144
370
#15 0x0809931d in EditorButton::on_click() (this=0x826a3f0)
371
at SurfaceButton.cc:331
372
#16 0x08088ac9 in PingusMenu::on_button_release(CL_InputDevice*, CL_Key const&) (this=0xbffff890, device=0x81eb820, key=@0xbffff6f0)
373
---Type <return> to continue, or q <return> to quit---
377
Happened while doing an armageddon in level one (probally out-of-screen remove):
379
#0 PingusSpotMap::remove(CL_SurfaceProvider*, int, int) (this=0x8258f00,
380
sprovider=0x8debc80, x=1673, y=815) at PingusSpotMap.hh:59
381
59 inline bool is_empty(void) { return empty; }
383
#0 PingusSpotMap::remove(CL_SurfaceProvider*, int, int) (this=0x8258f00,
384
sprovider=0x8debc80, x=1673, y=815) at PingusSpotMap.hh:59
385
#1 0x08081dac in PinguMap::remove(CL_Surface const&, int, int) (this=0x8258f00,
386
sur=@0x81da0a8, x=1673, y=815) at PinguMap.cc:49
387
#2 0x080ea60c in Bomber::update(float) (this=0x8df6f00, delta=0.063000001)
389
#3 0x0807f817 in Pingu::update(float) (this=0x8cddcb0, delta=0.063000001)
390
at boost/smart_ptr.hpp:207
391
#4 0x080a72b6 in World::update(float) (this=0x8258e78, delta=0.063000001)
392
at boost/smart_ptr.hpp:207
393
#5 0x080a5748 in TrueServer::update(float) (this=0x8258d20, delta=0.063000001)
395
#6 0x080637b6 in Client::update(float) (this=0x899ad00, delta=0.063000001)
396
at boost/dummy_ptr.hpp:37
397
#7 0x08063505 in Client::play_level(boost::shared_ptr<PLF>) (this=0x899ad00,
398
arg_plf=0xbffff780) at DeltaManager.hh:35
399
#8 0x08062334 in Client::display() (this=0x899ad00) at boost/dummy_ptr.hpp:37
400
#9 0x080c1712 in PingusGameSession::start() (this=0xbffff960) at boost/smart_ptr.hpp:207
401
#10 0x080562a1 in PingusMain::start_game() (this=0x81dd570) at PingusMain.cc:836
402
#11 0x08056a6c in PingusMain::main(int, char**) (this=0x81dd560, argc=2, argv=0xbffffbc4)
404
#12 0x08053730 in GenericMain::main(int, char**) (this=0x81d9a64, argc=2, argv=0xbffffbc4)
406
#13 0x4014c303 in main (argc=2, argv=0xbffffbc4) at Sources/Application/Unix/clanapp.cpp:32
407
#14 0x4035665f in __libc_start_main () from /lib/libc.so.6
410
In the editor while increasing two marked liquid object at once (pressing Pos1)
412
#0 0x080fbfcc in EditorEvent::on_button_press(CL_InputDevice*, CL_Key const&) (
413
this=0x82a8c90, device=0x81e8750, key=@0xbffff2a0) at ../boost/smart_ptr.hpp:207
414
207 T* operator->() const { return px; } // never throws
416
#0 0x080fbfcc in EditorEvent::on_button_press(CL_InputDevice*, CL_Key const&) (
417
this=0x82a8c90, device=0x81e8750, key=@0xbffff2a0) at ../boost/smart_ptr.hpp:207
418
#1 0x08143274 in CL_MethodSlot_v2<EditorEvent, CL_InputDevice*, CL_Key const&>::call(CL_Input
419
Device*, CL_Key const&) (this=0x89ce7b8, param1=0x81e8750, param2=@0xbffff2a0)
420
at /usr/local/include/ClanLib/Signals/slot_v2.h:62
421
#2 0x4012c5fa in CL_Signal_v2<CL_InputDevice*, CL_Key const&>::call(CL_InputDevice*, CL_Key c
422
onst&) (this=0x81d98ac, param1=0x81e8750, param2=@0xbffff2a0)
423
at Sources/API/Signals/signal_v2.h:80
424
#3 0x40115223 in CL_XWindowKeyboard::on_xevent(_XEvent&) (this=0x81e8750, e=@0xbffff390)
425
at Sources/API/Signals/signal_v2.h:59
426
#4 0x4012c851 in CL_MethodSlot_v1<CL_XWindowKeyboard, _XEvent&>::call(_XEvent&) (this=0x0,
427
param1=@0xbffff390) at Sources/API/Signals/slot_v1.h:62
428
#5 0x40118731 in CL_XWindow_DisplayCard::keep_alive() (this=0x81e80e0)
429
at Sources/API/Signals/signal_v1.h:80
430
#6 0x40170763 in CL_System::keep_alive() () at /usr/include/g++-v3/bits/stl_list.h:114
431
#7 0x080f9cb3 in Editor::edit() (this=0x82abf28) at Editor.cc:144
432
#8 0x080991f1 in EditorButton::on_click() (this=0x82575e0) at SurfaceButton.cc:331
433
#9 0x080889e1 in PingusMenu::on_button_release(CL_InputDevice*, CL_Key const&) (
434
this=0xbffff860, device=0x81e8938, key=@0xbffff6c0) at boost/smart_ptr.hpp:207
435
#10 0x080d46ec in PingusMenuManager::on_button_release(CL_InputDevice*, CL_Key const&) (
436
this=0xbffff800, device=0x81e8938, key=@0xbffff6c0) at boost/dummy_ptr.hpp:37
437
#11 0x0813fa44 in CL_MethodSlot_v2<PingusMenuManager, CL_InputDevice*, CL_Key const&>::call(CL
438
_InputDevice*, CL_Key const&) (this=0x8a1a520, param1=0x81e8938, param2=@0xbffff6c0)
439
at /usr/local/include/ClanLib/Signals/slot_v2.h:62
440
#12 0x4012c5fa in CL_Signal_v2<CL_InputDevice*, CL_Key const&>::call(CL_InputDevice*, CL_Key c
441
onst&) (this=0x81d98dc, param1=0x81e8938, param2=@0xbffff6c0)
442
at Sources/API/Signals/signal_v2.h:80
443
#13 0x40117354 in CL_Mouse_XWin::keep_alive() (this=0x81e8938)
444
at Sources/API/Signals/signal_v2.h:59
445
#14 0x40170763 in CL_System::keep_alive() () at /usr/include/g++-v3/bits/st
451
on armagedon gesegfault:
453
warning: exec file is newer than core file.
454
Core was generated by `./pingus'.
455
Program terminated with signal 11, Segmentation fault.
456
#0 0x08090697 in Playfield::update(float) (this=0x954d678, delta=0.0350000001)
457
at /usr/include/g++-v3/bits/stl_iterator.h:469
458
469 explicit __normal_iterator(const _Iterator& __i) : _M_current(__i) { }
460
#0 0x08090697 in Playfield::update(float) (this=0x954d678, delta=0.0350000001)
461
at /usr/include/g++-v3/bits/stl_iterator.h:469
462
#1 0x080901e8 in Playfield::~Playfield() (__in_chrg=0x954d678)
464
#2 0x080637cb in Client::play_level(boost::shared_ptr<PLF>) (this=0x954d3d0,
465
arg_plf=0x3d0f5c29) at /usr/include/g++-v3/bits/basic_string.h:180
466
#3 0x08063566 in Client::play_level(boost::shared_ptr<PLF>) (this=0x954d3d0,
467
arg_plf=0xbfffec60) at Client.cc:130
468
#4 0x08062388 in Client::~Client() (__in_chrg=0x954d3d0) at Client.cc:75
469
#5 0x080c18a6 in PingusGameSession::PingusGameSession(std::string) (
470
this=0xbfffecd0, arg_filename=0xbfffecc0)
471
at /usr/include/g++-v3/bits/basic_string.h:180
472
#6 0x080fd50a in EditorEvent::editor_convert_selection_to_group() (
473
this=0x829de00) at /usr/include/g++-v3/bits/stl_list.h:114
474
#7 0x080fc137 in __static_initialization_and_destruction_0(int, int) (
475
__initialize_p=136961536, __priority=136230856)
476
at /usr/include/g++-v3/bits/locale_facets.tcc:902
477
#8 0x08145348 in Walker::~Walker() (__in_chrg=0x858a4c8) at Walker.cc:30
478
#9 0x4012d5fa in ?? ()
479
#10 0x40116223 in ?? ()
480
#11 0x4012d851 in ?? ()
481
#12 0x40119731 in ?? ()
482
#13 0x40171763 in ?? ()
483
#14 0x080fa45f in Editor::register_event
489
Playability status of levels:
490
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
492
fully := fully playable
493
half := half playable and needs some cleanup/testplay
494
nonplayable := currently not playable, but can be fixed
495
test := just a test level, completly useless
504
blockers-timpany-tutorial -
507
candy-timpany-premoi -
519
desert3-tflavel - solid surface confusion
522
desert5-tflavel - solid surface confusion
523
doors-grumbel - fully, nedes actions cleanup
524
doors-grumbel - playable
526
doors2-grumbel - maybe playable, needs testing (currently to large)
529
foliage1 - nonplayable
533
foliage4 - nonplayable
534
future1-jgoebbert - need cleanup, but looks good
538
headbang - playable maybe, needs testing
540
iceblock-grumbel1 - testing, but could be fixed
542
industrial1-grumbel -
543
industrial2-grumbel -
548
jungle-crisscross-timpany -
555
level10 - nonplayable, boring
556
level12 - half, currently to hard/boring
557
level13 - half, has bugs (solid)
559
level2 - half, FakeExit has position bug
561
level3 - nonplayable, looks boring
563
level5 - half, boring
565
level7 - nonplayable, but usefull
567
level8 - see level7, hammer trap needs fixing
568
level9 - nearly playable, editor sorting bug
579
park-mkoller - could need cleanup, looks ugly
580
partic2 - solid-groundpiece confusion
581
particle - solid-groundpiece confusion
582
pipes1 - gfx demo, testing
585
real1 - ugly, but playable
592
rock1 - testing, no gamplay present
593
rockhopping - playable, probally to easy
606
space1 - playable, could need cleanup
607
space2 - playable, could need cleanup
608
space3 - not-playable
609
space4-grumbel - wrongly placed traps
611
stone-castle-timpany - might be playable
613
stone3-grumbel - playable, but could need more elements, good demo of conveyor belt
614
stone4-grumbel - nice gfx demo, testing
615
teleporter1-grumbel -
621
wland - playable, but doesn't work due to new walker behaviour (3pixel-up walks)
622
xmas-blockblow-timpany - pingus get stuck
625
Additional bugs found by Phlog:
627
Added Sat Apr 20, 2002:
629
* Floaters shouldn't float until they've fallen the minimum distance
630
it'd take for a regular Pingu to splat. That way, you wouldn't have
631
to worry about floaters moving so slowly a lot of the time, when
636
* Level selection box at the bottom of the level selection screen is
637
mostly cutoff by the bottom of the screen
639
* Bashers cut in circles, so their last two or three swipes should be
389
- Floaters shouldn't float until they've fallen the minimum distance
390
it'd take for a regular Pingu to splat. That way, you wouldn't have to
391
worry about floaters moving so slowly a lot of the time, when
394
- Bashers cut in circles, so their last two or three swipes should be
640
395
square when breaking through to an open space, since they currently
641
396
can trap Pingu in, requiring another one or two bashes. This is
642
397
especially obvious when bashing through wells. They can also bash
643
398
through metal, which they shouldn't be able to.
645
* All entrances should have graphics
400
- All entrances should have graphics and be animated
647
* Bridgers seem to move backwards when they first start stacking
648
(I think that their graphic may be more to the left in its square
649
than the walker graphic, and also a little smaller than the walker
402
- Bridgers seem to move backwards when they first start stacking (I
403
think that their graphic may be more to the left in its square than
404
the walker graphic, and also a little smaller than the walker
650
405
graphic - probably because it's confined to a square of the same
651
size - maybe give special workers slightly larger graphic sizes,
652
so they can appear to be the same size as walkers)
654
* Some maps need more time (Cliffs in the ice, especially)
656
* Sometimes diggers can't be changed into miners.
658
* Pingu can't usually walk past a staircase that's pointing towards
659
them (as Lemmings can), and should be able to. Maybe put stairs
660
in a separate layer to differentiate between a staircase they
661
should be able to step around in one direction (direction would
662
have to be determined somehow, though).
664
* If enough Pingu are saved and all that are left are blockers, end
406
size - maybe give special workers slightly larger graphic sizes, so
407
they can appear to be the same size as walkers)
409
- Sometimes diggers can't be changed into miners.
411
- If enough Pingu are saved and all that are left are blockers, end
665
412
level before time runs out, with a win
667
* "Hurry up!" wayyy too late. Maybe at 1 minute left, or so.
414
- "Hurry up!" wayyy too late. Maybe at 1 minute left, or so.
669
* At least one kind of water (the kind in Evil in the Dark) doesn't
416
- At least one kind of water (the kind in Evil in the Dark) doesn't
672
* It seems that when Pingu blow up at the bottom of the screen, it
673
segfaults. It could be doing this because it's expecting to blow
674
up pixels below the size of the screen. The same effect can be
675
seen with blowing up Pingu on other edges of the screen, too.
677
* In space levels, Pingu that fall off of a cliff into space don't
419
- In space levels, Pingu that fall off of a cliff into space don't
678
420
die, though they should just like in water or lava.
680
422
Missing Groundpieces