diff options
| author | alf9310 <alf9310@rit.edu> | 2025-10-17 10:30:38 -0400 |
|---|---|---|
| committer | alf9310 <alf9310@rit.edu> | 2025-10-17 10:30:38 -0400 |
| commit | e34e8bcf0a4a6ffec09375d105a0e90a5b96d40a (patch) | |
| tree | b787faf56987616b0357718f3f636cde8f2abbf5 /docs | |
| parent | graphics: draw_fps should pull fps from info struct (diff) | |
| download | DungeonCrawl-e34e8bcf0a4a6ffec09375d105a0e90a5b96d40a.tar.gz DungeonCrawl-e34e8bcf0a4a6ffec09375d105a0e90a5b96d40a.tar.bz2 DungeonCrawl-e34e8bcf0a4a6ffec09375d105a0e90a5b96d40a.zip | |
Proposal summary and use cases complete
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/Proposal.md | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/docs/Proposal.md b/docs/Proposal.md index aea91cd..4fa81c0 100644 --- a/docs/Proposal.md +++ b/docs/Proposal.md @@ -9,15 +9,43 @@ Team members: ## Summary Description -A summary description of the overall goal of the project. +Embark on a classic roguelike dungeon-crawling adventure. Players will explore +procedurally generated, tile-based dungeon floors crafted using a Wave Function +Collapse algorithm. Battle through waves of enemies with turn-based combat, +collect powerful items, and push your limits to see how deep you can delve +into the ever-changing depths. ## Additional Details -- One or more typical “use cases”. These might include “storyboards” explaining +### Use Cases + +#### Player Input +- Directional Movement: The player can move up, down, left, or right across a tile-based dungeon map using WASD or arrow keys. +- Combat Actions: On encountering an enemy, the player can choose to attack or use an item. +- Item Interaction: The player can pick up items, manage inventory, and use consumables like potions. + +#### Gameplay Loop +- The player spawns on floor 1 of the dungeon. +- The map is procedurally generated using the Wave Function Collapse algorithm. +- Enemies and items are randomly spawned on valid tiles based on probabilities. +- The player explores and collects items until encountering an enemy. +- A turn-based battle begins where both player and enemy take alternating actions. +- After winning, the player collects loot and continues exploring until finding the staircase to the next floor. +- Difficulty increases as the player descends deeper. + + +One or more typical “use cases”. These might include “storyboards” explaining how a user would interact with the program or some interesting “input/output” examples. + +### Components + +**Dungeon** + - A sketch of intended components (key functions, key data structures, separate modules). + +### Testing - Thoughts on testing. These might include critical functions or data structures that will be given `#[test]` functions. Also consider using the [`insta`](https://crates.io/crates/insta) crate, |