1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548
|
0.41:
- updated `Modern' scenario
- bumps skill level up one on wrap around
- decrease energized time, etc. when bumping up & already on
max skill level
0.40:
- implemented search paths per-scenario
0.39:
- fixed mem leak in util.cc
- accept ~'s in basenames
- accept TRANS in level file (transparent color)
- replaced Bitmaps with Mazes where appropriate
- seperate paths for fonts, images, mazes, sounds, and
`top-level' items.
0.38:
- changed play.cc to use VLLists to store levels --
removed hardwired limit of 100 levels per file
- updated luxchk to understand the new Level definition
0.37:
- modified `quit' to really end game so that highscores
can be updated and user is returned to main menu
- removed #if 0 code
- changed Scenarios to use VLLists (removed hardwired
restriction of 10 levels per scenario)
0.36:
- added prompt for quit if `q' pressed (also for Ctrl-C)
- removed README.Hacking (HOWTO.Modify is better)
- updated README's, manpages, etc.
0.35:
- generalized the VT switch check a bit during startup
- added scenario selection to main menu
- backward compatibility fix for routines not expecting
state GHOST_WAIT
- added `Back to Main' to scenario menu
0.34:
- added delay before ghost `regeneration'
- made ghost regen delay settable in level file (optional
parameter)
- changed calibration to restart if VT switch detected
- oops -- put copyright notice in some new files I had missed
- made next_piece public so that sf.cc could use it
- wrote scenerio file routines (sf.cc)
0.33:
- made search depth a per-level parameter (also
a required param in level file). Removed
command line option. Updated level files.
- created `luxchk' to check level files (`mapchk' now obsolete)
- stop making `mapchk' (leaving source there for now)
- made luxman colors per-level (optional param)
- made fruit timings per-level (optional param)
- lf.cc now `correctly' supports #-style comments
- made manpages for luxman and luxchk
- re-fixed highscore & credits screen to exit on "any key"
0.32:
- put new rawkey in (from Russell Marks).
(VT switching now works)
- added blank_key_down() call after VT switch back.
- made all items optional in the level file except for
mazename, tilename and fruitname.
- added notice that -8 option may go away
0.31:
- made level file old.def -- same level layout as
0.26; default is levels.def
- removed #if 0 code in play.cc
- made background color settable in level file
0.30:
- moved blocking out of banner routine and into
run loop.
- changed signal handlers so I can have it dump
core in the debugging version -- no change in
`user' version.
- modified collision detection: harder for ghosts
to eat you; no change for eating ghosts. Eliminates
that annoying `getting killed on a corner' thing.
- made ghost energized and flashing times settable
per-level
- cleaned up code in play.cc
- made tile settable per-level
- modified highscore & about... screens so that any
key exits from them
- made dot color settable per-level
- made bigdot color settable per-level
- made external levels file & modified Makefile
to install it
- updated README.Hacking
- added cmdline option (-f) to specify level file
0.29:
- explicitly open/close sound at start/end of
game so there's no clicking when game over
- replaced reference to /usr/lib with /usr/games/lib
in Makefile
0.28:
- added some more `stuck' checks in places where
we could block
- changed source to refer to GPL-2 since that's
what's included
- made next_piece routine more correct
- made `fatal' a macro (finally)
- cleaned up (removed) #if 0'd and commented-out
code
- fixed ./src/Makefile to give error if make run
from src subdir
0.27:
- now using regular pipes instead of FIFO's.
Thanks to Michael Weller (eowmob@exp-math.uni-essen.de)
for the patch.
- as per suggestion from Michael Weller, the data file
directory was changed from /usr/lib/luxman to
/usr/games/lib/luxman (to comply with FSSTD).
0.26 (first public release):
- modified searching routine so that eyes don't
follow each other as much. Better to do this now
than after release and wreck everyone's patterns :)
- added small delay when you eat a ghost & sound is
disabled -- looks more like real game, IMO
- modified signal handlers to kill soundserver process
- fixed that argv_version thing and the exit() thing -
should now compile cleanly
- changed `lux' subdir to `src' to prevent confusion
0.25:
- made thunderbird level easier (grumble...)
- modified README.First a bit
0.24:
- whoa! hold the phone... I THOUGHT I had put the
new calibration stuff in there... oops... it
seems MUCH smoother now.
- explicitly set modes on everything when installing
0.23:
- commented out grx2map target. I'm betting that
most people don't have LIBGRX and I don't want
everyone to have to use the `-k' switch with
make.
- removed unused .snd files.
- stop installing bins from gtools directory.
still making them, but I don't want to accidentally
step on programs of the same name on others' systems.
- removed babble from Makefile and added targets info.
[Split off release branch after 0.22]
0.22:
- moved main source to /lux subdir; updated Makefiles
0.21:
- moved all bitmaps to ./maps in source tree
- highscore file moved to ~/.luxman.scores
- oops - was creating fifo's with wrong modes - broken
for non-superuser. fixed.
- removed `debug mode'; it never actually worked anyways
- show ghosts and luxman during banners
- now marking the ghost home tile with `home.map'
0.20:
- changed sound server `pause' and `continue' commands to
`sleep' and `wakeup' to keep server from eating cpu while
paused.
- added `open sound' and `close sound' to sound server
so that the actual sound device can be opened/closed
independently of the memory initialization in the
server.
- sound server now sleeps until sound device opened.
this prevents the server from eating the cpu when
sound is disabled
- removed vga_init() from gr.cc; each main() now calls
vga_init() as its first action.
- oops - was broken if sound support wasn't compiled
into kernel; fixed
- added an (untested) compiler switch -DOLD_KERNEL
which may allow the game to work with pre-1.1.50
kernels
- changed program names to `luxman' and `luxman-snd'
- fixed a few install bugs
0.19:
- little hack to make animation better when eating a
ghost
- added cmdline option (-8) to use 8kHz sound (11kHz default)
- added cmdline option (-n) to disable sound
- main program now starts soundserver process;
server should now get killed any time program exits
- added `pause' and `continue' commands to sound server.
updated client. sound now pauses during shell (`p')
0.18:
- added `sndserver.c' and `sndclient.c'
removed soundIt and the cfclass stuff
0.17:
- can now use `p' to shell during banners and
menus
- ditto for highscore screen and `credits' screen
- no longer have to run from lux directory --
By doing a `make install':
binaries install to /usr/games
maps, sounds & fonts install to /usr/lib/luxman
highscores kept in /var/games/luxman.scores
Note: can still play in lux directory if `make install'
not used.
0.16:
- modified menus so that cursor updates before key released
- added `Credits' screen
- added highlighting to highscore screen
- made main menu cursor `sticky' -- i.e., remembers where
it was last
- can now press `p' to pause the game and "shell out" so
that you can switch consoles.
- modified highscore screen to print "Hard".."Simple"
in skill column instead of 3..0
- modified highscores -- in case of a tie, the higher
skill level now listed first. if there is a tie and
the skill levels are equal, the older score is listed
first.
- added mini-explanation of `-r' at startup
- added `fruit quota' to put limit on max number of
fruits that will be displayed each screen
0.15:
- updated Bitmap class to exit gracefully on error
- ditto for Font class
- made skill level runtime configurable
- added skill level menu
- added `lux-menu' selection code for skill level and
main menu
0.14:
- added high score list
- split off most of map.cc to play.cc
- created `main loop' -- title screen -> game -> highscore list
- added ghost animations, like in real game
- luxman now first tries to go left or right at start of
a level instead of up, which was getting annoying
- clear pending keystrokes (arrow keys only) before
displaying `Ready!' banner
- modified ghosts so that they don't prefer to keep
going in their current direction of movement.
As this seems to make it MUCH harder, you can
turn off this feature with:
-DUSE_MOMENTUM
This is embarrasing, but I've only managed to make it past
the first level once with this new strategy...
Here's how I'd rank games for difficulty:
Hard: No options
Medium: -DUSE_MOMENTUM
Easy: -DCONFIG_NOSEEK
(`momentum' is irrelevant if seeking
turned off)
Simple: -DCONFIG_NOSEEK -DCONFIG_NOLOS
0.13:
- added `free' life every 10000 points
- added display at bottom showing last 5 `fruits'
- modified labels so they never go off screen
- synced up mapchk with map so that they use the
same search depth (both read globals.h)
- updated mapchk to check all items
(while doing this, found that `run.cc' was using hardwired
colors... oops... fixed)
- added runtime calibration routine -- determines (approx)
how much overhead there is in the usleep() call
Still innacurate (yields ~5fps too high on my machine),
but seems to make things smoother
- redid the time-counting code so hopefully the `fps'
figure is somewhat accurate again -- doesn't matter
anymore whether you are in `test' mode (0.08) - should get
same results
0.12:
- if you don't put a fruit tile down, it now defaults
to luxman init location
- no longer put dot in ghost `home' tile
- new option -l, --level, to specify start level
- ghosts now move away from you when energized (IF they
have line-of-sight -- see next note)
- updated ghosts routines so that the ghosts now actually
look for you. This makes it pretty tough, IMO, so
I also added two compiler flags:
-DCONFIG_NOSEEK -- make ghosts not look for you
-DCONFIG_NOLOS -- make ghosts not `see' you when you are
in line-of-sight
If you turn this on, the blue ghosts will
still run towards you (or rather, they
won't *care* if they are running towards you).
(Combining these two makes the game pitifully easy -- you
nearly have to chase the ghosts down to run into them.)
- each ghost now has a preferred seek direction -- perhaps
this will keep ghosts from overlapping and following each
other around so much (?)
0.11:
- merged 0.10 and 0.08.snd (from bruce)
i.e., we now have sound!!
0.10:
- added multiple screens
- added `pending' velocity changes to ghosts so that
ghosts don't "jerk" when changing states
- oops -- seems I haven't been calling vga_init()...
hmpf... worked fine until svgalib 1.2.0. oh well,
it's fixed now
(actually, it looks like bruce caught this in 0.08... hmpf!)
- removed hardwired values in check_collide (run.cc)
0.09:
- updated fruit to time itself off of # of frames rather
than # of seconds -- this means fruit will appear/disappear
at same relative time in the game regardless of frame rate
(don't want to break those patterns jsut because you're
recompiling the kernel in the background!)
- ditto for ghost ``energized'' and ``flashing'' times
- updated code to compile cleanly (well, except for that
`argv_version' thing...) with g++ 2.6.2
- fiddled with Makefiles some -- prevent myself from
accidentally running a Makefile in subdir
- oops!! -- fixed nasty bug in zfclose()
(deleting struct before I had closed the file.. duh)
- oops!!(2) (man, oh man) -- was deleting something I should
have Free()'d (not free()'d) in bigdotmap.cc
bad, bad, bad, bad, bad... I feel bigstupid
0.08:
- added score labels when you eat a ghost
- added `fruit' & score labels
- added status line & life-counting
- added scorekeeping
- added "banners" (e.g. ``Ready!''); banners are disabled in
test mode (--test) since they screw up the FPS calculation
- modified collision detection a bit so there will (hopefully)
not be so many bad misses
0.07:
- Created run.cc - starting to look like real game -
ghosts turn blue, you can eat them, etc.
- new program `mapchk' to check maps
currently checks to make sure eyes can find way back
from all positions in maze using a given search depth.
should run this if you edit the maps so that the
program doesn't crash unexpectedly.
- added command line switch (map): -t, --test
turns off collision detection between luxman and
ghosts -- will give better FPS number since no
delay for path-finding
- added command line switch (map): -r, --fps
(attempts) to set frame-per-second rate. Not very
accurate at all, but with some tinkering you
should be able to get it to run at a comfortable rate.
defaults to 100 (yeah, right)
- added command line switch (map): -h, --help
prints usage info
- added command line switch (map): -d, --depth
allows you to set the search depth for the `eyes'
at runtime.
The intended use of this switch is to enter the
depth value that has been determined experimentally
by running `mapchk' with different `--depth' values.
- added ghost flashing
0.06:
- Note: v0.06 left in the state where ghosts turn into
eyes when you eat a power pill. This is to test
the path-finding routine
- wrote path finding algorithm (search.cc)
- added power pills - ghosts turn blue but can still
kill you
- added (untested) movement code for eyes
0.05:
- luxman can now change location at any time
- rewrote collision detection routine so that the
ghosts actually have to overlap luxman
- updated Mouse so that it will (hopefully) handle all
mouse types correctly
- added `alarm()' calls to (hopefully) prevent program from
becoming stuck in an infinite loop
- added more signal handlers (created sigs.cc)
- cleaned up makefiles and #includes to get ready for
distribution
0.04:
- first "real" ghost routine now in place, incorporating
"count map" with line-of-sight reset
0.03:
- made malloc wrappers (Malloc, Mcheck and Free) to add simple
fence-post checking
0.02-0.01: ??
|