.plan
October 12, 2020
Less than three weeks left to go in the DOS Games Fall Jam, and I need to start focusing on getting as many game features in as possible, instead of working on under-the-hood engine stuff that can wait until later.
The three biggies left to do:
- Add at least one more enemy type (two more would be better)
- Add one more playable character (demo will be Allie and Roslyn)
- Add at least two more levels (three more would be better)
- To do
+ Done
/ In progress
X Not a bug / won't fix
------------------------------------------------------------------------
/ Implement Bruiser
+ Graphics
- Behavior
+ Add score popups
+ BUG: player can get stuck in floor if grabbing a sufficiently low
ledge (ex.: boxes on top floor of E1M1)
+ BUG: game can softlock in E1M1 secret room (room on top level that
reveals yellow key -- if you stay in the room, the door closes and you
get locked in. Add a way to open door from the inside)
+ Fix Enemy::canSeePlayer so that it does a simple line-of-sight check
(tile-based check is sufficient)
+ BUG: invincibility isn't being applied when player takes damage if
armor > 0
+ Add point totals (and displays) for killing enemies
+ Simplify weapon handling:
+ Remove ammo limits
+ Remove coach gun
+ Remove minimum shot count (chaingun)
+ BUG: player doesn't stick to platform when platform is moving downward
+ BUG: horizontally-flipped sprites are drawn incorrectly when at the
very left or right edges of the screen
+ BUG: character select screen not drawing properly
+ Finish re-drawing Allie's sprites
- Work on sprites for other characters: Roslyn -> Harry -> Dad -> Buddy
- Make two or three more levels
- Record demos for all levels
- Implement conveyors and a few other hazards
- PC speaker sounds
- High score table (integrate into demo loop)
- Don't load in player graphics until that character is the active
player (this will reduce load time -- and overall memory requirements
by only having one set of graphics in memory at a time)
- User settings should load from a file (currently hardcoded)
- Don't allow player to fire weapon when in special states (hanging,
climbing, sliding, etc)
- Add frameskip option
- Modify player to use separate leg and torso sprites -- Player object
should use two Spriteset members