Reworked TODO
authorLukas Krickl <lukas@krickl.dev>
Sun, 4 May 2025 03:58:11 +0000 (05:58 +0200)
committerLukas Krickl <lukas@krickl.dev>
Sun, 4 May 2025 03:58:11 +0000 (05:58 +0200)
TODO.md

diff --git a/TODO.md b/TODO.md
index d216294a27554827584e3d9566df208b09608ed1..3a97bca40be31528f9f31f7f51e370b2a0fda10b 100644 (file)
--- a/TODO.md
+++ b/TODO.md
@@ -2,50 +2,32 @@
 
 ## scope
 
-[ ] simple city builder
-[ ] map fills one scroll area of the gameboy - UI area
-[ ] UI area in window
-[ ] each frame a few tiles update.
-[ ] Tile updates should be written to a queue and then drawn when there is time in vblank
-[ ] if indicator sprites were used wait a few frames to allow the user to see them
-[ ] popup menu
-[ ] when hovering over tile show meta information
-[ ] pause screen with total resource stock
-
-## simulation state 
-
-### global
-
-[ ] resources like wood, stone
-[ ] goods like food, bricks, iron ingots
-[ ] total population (24 bit)
-
-### per tile
-
-[ ] type
-[ ] gfx 
-[ ] FLAGS: on fire, destroyed, road connection 
-[ ] tiles have different update loop based on tile type 
-[ ] some more for special tiles
-
-[ ] tiles take resources to produce a good
-[ ] tiles can only transport resources in if they are connected to a road 
-[ ] tiles can only output resources if they are connected to a road 
-[ ] roads themselves need to be connected to a warehouse 
-[ ] only if the road is connected will the tile produce 
-[ ] only if all resources can be withdrawn tiles will produce 
-
-## tick based
-
-[ ] simulation updates the entire map every N ticks
-[ ] pause key pauses simulation but allows player to still look around
-
-## map generator
-
-[ ] randomly generate maps with rivers
-
-## gameplay 
-
-[ ] enemies try to take over tiles with control towers
-[ ] you need to prevent this
-[ ] if either town center is destroyed the game is over
+[ ] Ruin explorer combat game
+[ ] Move from room to room
+[ ] When room contains enemies enter combat
+[ ] Each side may have up to 10 units on a map
+[ ] There are hero units and regular units 
+
+## Combat
+
+[ ] Unit is selected based on the unit initiative queue 
+[ ] A unit may skip its turn (moved to end of queue)
+[ ] Units have a move counter
+[ ] Display moves in UI for selected units
+[ ] Each action consumes moves
+[ ] Units are moved one tile at a time 
+[ ] Moving costs 1 move but if the tile has special flags it may cost more
+[ ] When a unit is out of turns the next unit is selected
+[ ] Units can attack ranged or melee 
+[ ] Melee works if unit is next to target
+[ ] When a unit moves away from an adjacent melee unit it can attack
+[ ] Units can inspect enemies 
+[ ] Units are selected in a queue of initiative 
+[ ] Once the queue is empty it is reset 
+
+## Map
+
+[ ] Map screen consists of rooms
+[ ] Each room has events or combat encounters
+[ ] The player may move to new rooms 
+[ ] The player has to deal with the room's events