docs: update ROADMAP with FOV, A* pathfinding, and GUI text widget completions

- Mark TCOD Integration Sprint as complete
- Document FOV system with perspective rendering implementation
- Update UIEntity pathfinding status to complete with A* and caching
- Add comprehensive achievement entry for July 10 work
- Reflect current engine capabilities accurately

The engine now has all core roguelike mechanics:
- Field of View with per-entity visibility
- Pathfinding (both Dijkstra and A*)
- Text input for in-game consoles
- Performance optimizations throughout

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
John McCardle 2025-07-09 22:19:38 -04:00
parent d13153ddb4
commit 9be3161a24
1 changed files with 29 additions and 7 deletions

View File

@ -22,19 +22,19 @@
- Mass entity choreography (100+ entities)
- Performance stress test with 1000+ entities
#### 2. TCOD Integration Sprint
#### 2. TCOD Integration Sprint ✅ COMPLETE!
- [x] **UIGrid TCOD Integration** (8 hours) ✅ COMPLETED!
- ✅ Add TCODMap* to UIGrid constructor with proper lifecycle
- ✅ Implement complete Dijkstra pathfinding system
- ✅ Create mcrfpy.libtcod submodule with Python bindings
- ✅ Fix critical PyArg bug preventing Color object assignments
- [ ] Implement mcrfpy.libtcod.compute_fov() (still needed for tutorial)
- [ ] Add batch operations for NumPy-style access
- [ ] Create CellView for ergonomic .at((x,y)) access
- [~] **UIEntity Pathfinding** (4 hours) - 50% COMPLETE
- ✅ Implement FOV with perspective rendering
- [ ] Add batch operations for NumPy-style access (deferred)
- [ ] Create CellView for ergonomic .at((x,y)) access (deferred)
- [x] **UIEntity Pathfinding** (4 hours) ✅ COMPLETED!
- ✅ Implement Dijkstra maps for multiple targets in UIGrid
- [ ] Add path_to(target) method using A* to UIEntity
- [ ] Cache paths in UIEntity for performance
- Add path_to(target) method using A* to UIEntity
- Cache paths in UIEntity for performance
#### 3. Performance Critical Path
- [ ] **Implement SpatialHash** for 10,000+ entities (2 hours)
@ -124,6 +124,28 @@ entity.can_see(other_entity) # FOV check
## Recent Achievements
### 2025-07-10: Complete FOV, A* Pathfinding & GUI Text Widgets! 👁️🗺️⌨️
**Engine Feature Sprint - Major Capabilities Added**
- ✅ Complete FOV (Field of View) system with perspective rendering
- UIGrid.perspective property controls which entity's view to render
- Three-layer overlay system: unexplored (black), explored (dark), visible (normal)
- Per-entity visibility state tracking with UIGridPointState
- Perfect knowledge updates - only explored areas persist
- ✅ A* Pathfinding implementation
- Entity.path_to(x, y) method for direct pathfinding
- UIGrid compute_astar() and get_astar_path() methods
- Path caching in entities for performance
- Complete test suite comparing A* vs Dijkstra performance
- ✅ GUI Text Input Widget System
- Full-featured TextInputWidget class with cursor, selection, scrolling
- Improved widget with proper text rendering and multi-line support
- Example showcase demonstrating multiple input fields
- Foundation for in-game consoles, chat systems, and text entry
- ✅ Sizzle Reel Demos
- path_vision_sizzle_reel.py combines pathfinding with FOV
- Interactive visibility demos showing real-time FOV updates
- Performance demonstrations with multiple entities
### 2025-07-09: Dijkstra Pathfinding & Critical Bug Fix! 🗺️
**TCOD Integration Sprint - Major Progress**
- ✅ Complete Dijkstra pathfinding implementation in UIGrid