-
Notifications
You must be signed in to change notification settings - Fork 0
Roadmap
beforan edited this page Sep 16, 2015
·
4 revisions
These notes are copied from the DvD page on hackpad, so to be more appropriately kept in the same place as the DvD codebase!
I would like to fix the bugs and implement the improvements below.
The AI was always planned for the weekend but never made it.
AI should be easy, there's a straight forward yes/no tile collision map already in, tiles have id's and co-ords. so applying A* pathfinding to the existing map would be trivial, as would getting a destination of "this furniture, in this room".
Map size and Time limit difficulties are also super easy, though finding suitable values for each might be harder, though I can just use Spy vs Spy as a guide.
But beyond the below I wouldn't bother doing any more (e.g. the traps stuff, cba).
- item redistribution on death is buggy :( makes it impossible to win sometimes. items should be objected ideally rather than the shitty flag system in use (this is still dodgy)
- ESC on game end state crashes; should perform same action as "Return to Menu" (that'll teach me to copy it from the pause state)
- levels of difficulty - adjusts map sizes and time limit
- AI
- levels of AI difficulty:
- Easy: always tries to fight to the death in the same room, always picks a random furniture to check for items
- Medium: runs away when super low? checks all furniture in a room at a time but doesn't remember which rooms checked. [ ] Hard: runs away when losing fights, systematically checks and remembers furniture and re-checks old furniture after either player's death.
- Replace TileMap rendering with filled Meshes to see if it's faster than spritebatched quads?
- Basically, generate the mesh for each colour ahead of time (like we do with the spritebatch image, but should be faster, I think?)
- Then instantiate the appropriate coloured mesh a bunch, instead of drawing a bunch of textured quads from the spritebatch.
- Turns out spritebatching will be faster, since that uses a Mesh-equivalent method, but via OGL directly :)