From: Lukas Krickl Date: Sun, 1 Jun 2025 14:09:50 +0000 (+0200) Subject: TODO: updated todo list X-Git-Url: https://git.krickl.dev/?a=commitdiff_plain;h=8f735564814faf534214f0ce830bbeb486fd295a;p=gbrg%2F.git TODO: updated todo list --- diff --git a/TODO.md b/TODO.md index eaf016d..9d7a6e4 100644 --- a/TODO.md +++ b/TODO.md @@ -2,29 +2,25 @@ ## scope -[ ] Ruin explorer combat game +[ ] RPG adventure [ ] 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 troops ## 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 +[x] Units have a move counter +[x] Display moves in UI for selected units +[x] Each action consumes moves +[x] 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 +[x] 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 -[ ] Ranged attacks must be at least 1 tile away [ ] 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 +[x] Units are selected in a queue of initiative +[x] Once the queue is empty it is reset [ ] Units use state machines to update [ ] Each unit's start state is a polling state [ ] The polling state can either be player input or CPU input @@ -33,35 +29,23 @@ [ ] The player can collect up to 5 initiative points [ ] Initiative can be spent on deployment or special moves -## Mission - -[ ] Mission screen consists of maps -[ ] Each room has events or combat encounters -[ ] The player may move to new rooms -[ ] The player has to deal with the room's events -[ ] Add map completion board -[ ] Units do not recover HP until mission is completed -[ ] When starting a mission the player can select a roster of up to 10 units -[ ] Some events may give intiative - ## Map -[ ] A map is a 32x24 playfield consiting of 8x8 tiles -[ ] A map may reduce the playfield by making out of bounds tiles walls -[ ] The camera always centers on the current unit -[ ] All units are always visible +[x] A map is a 32x24 playfield consiting of 8x8 tiles +[x] A map may reduce the playfield by making out of bounds tiles walls +[x] The camera always centers on the current unit +[x] All units are always visible [ ] Tiles can be impassible, walls or walkable [ ] Tiles may cost extra movement to pass ## Units -[ ] Each unit has a ranged and melee weapon +[ ] Each unit has a ranged or melee weapon [ ] Each unit has attack, health, and armor stats [ ] Units can be affected by damage over time [ ] Move unit with d-pad -[ ] B = Ranged attack in direction -[ ] A = Melee attack in direction -[ ] Some units have melee or ranged heals. Enemy healing is possible. +[ ] A = attack in direction +[ ] Some units have melee or ranged heals. [ ] Ranged attacks can be blocked by solid tiles [ ] Ranged attacks have a max range @@ -75,8 +59,9 @@ ## Randomness -[ ] The entire game is based on d16 rolls +[x] The entire game is based on d16 rolls [ ] Weapons do damage based on a roll [ ] Some weapons can roll twice and take the best [ ] Rome weapons can roll twice and take the worst [ ] When being hit a resistance roll based on armor and other stats is done +[ ] Add special sprites that can be positioned on units that display their last roll