title | aliases | tags | created | updated | |||||
---|---|---|---|---|---|---|---|---|---|
BootHillGM Development Roadmap (MVP Focus) |
|
|
2024-12-28 |
2025-01-17 |
This document outlines the development roadmap for BootHillGM, focusing on Minimum Viable Product (MVP) features and implementation phases.
The purpose of this roadmap is to:
- Provide a clear development timeline
- Track progress toward MVP completion
- Identify critical path items
- Serve as a reference for development priorities
The roadmap is organized into development phases, with each phase containing specific milestones and tasks. Progress is tracked using checkboxes, with completed items marked with [x] and pending items marked with [ ].
1.1 Environment Setup ✓
- Set up Next.js development environment
- Configure TypeScript
- Set up version control with Git 1.2 Learning and Experimentation ✓
- Complete Next.js tutorial
- Experiment with basic React concepts (components, props, state)
- Learn about React Hooks (useState, useEffect, useContext) 1.3 Project Structure ✓
- Set up basic Next.js project structure
- Create initial pages (Home, Character Creation, Game Session)
- Experiment with API routes
2.1 State Management ✓
- Implement basic game state using React Context
- Create reducers for state updates
- Implement dispatch function for all state updates
- Optimized character creation flow with static descriptions and targeted AI usage
2.2 AI Integration ✓
- Set up Gemini API integration
- Implement basic AI response generation using Next.js API routes
- Develop simple context management for game elements
- Implement uncensored AI responses for unrestricted player agency
- Implement focused AI usage for specific features
- Add comprehensive logging for AI interactions
2.3 Character System ✓
- Implement simplified character creation flow
- Implement AI-driven random character generation
- Create basic character sheet display
- Add character generation logging system
- Implement data validation framework
- Add robust error handling
3.1 Game Session Enhancement
- Implement contextual action buttons
- Separate action suggestions from narrative
- Extract status display into separate component
- Add visual distinction for player actions
- Implement typed narrative content processing
- Implement BrawlingEngine for combat system
- Add state protection pattern
- Enhance campaign state restoration 3.2 State Management Improvements
- Implement progressive state saving
- Add state persistence across navigation
- Implement weapon equipment state management
- Add inventory-weapon integration
- Create error recovery system 3.3 Combat System Enhancements
- Implement simplified Boot Hill combat rules
- Create basic combat UI
- Implement turn-based combat flow
- Add health tracking for player and opponent
- Create combat log for narrating fight progression
- Add initial weapon combat framework
- Implement critical hits and misses
- Add combat-specific inventory interactions
- Refactor combat hooks (
useWeaponCombat
,useWeaponCombatAction
,useWeaponCombatState
) - Improve combat log with detailed action descriptions and outcomes
- Implement core dice rolling system (diceUtils.ts)
- Add strength validation system with wound effects and stacking
- Implement combat summary with detailed stats tracking (#67) 3.4 Inventory System Refinements
- Implement basic inventory data structure
- Create Inventory component for displaying items
- Implement add and remove item functionality
- Implement item usage restrictions and logical checks
- Prevent usage of items not in inventory
- Provide feedback for attempted use of unavailable items
- Integrate inventory with other game systems 3.5 Journal Integration
- Implement automatic journal entry creation
- Update CombatSystem to trigger journal updates
- Modify GameSession to handle combat journal entries
- Enhance journal system with narrative summaries
- Type-safe journal entries
- Virtualized scrolling for performance
- Enhanced entry formatting
- Comprehensive test coverage
- Update combat log entries in combat system for detailed combat results and summaries 3.6 Character Sheet Enhancements
- Implement stat-based skill checks
- Add character portrait/image upload
- Create character inventory section
- Add character background/notes section
4.1 UI/UX Improvements
- Add loading indicators for AI responses
- Improve combat feedback and animations
- Enhance narrative text formatting
- Add tooltips and help text 4.2 Performance Optimization
- Optimize state updates
- Improve AI response handling
- Enhance combat system performance
- Optimize journal context selection 4.3 Error Handling
- Implement comprehensive error boundaries
- Add recovery mechanisms for failed AI calls
- Improve error messaging
- Add state recovery options 4.4 Testing Implementation
- Complete unit test coverage for core components
- Add integration tests for main game flows
- Implement combat system testing
- Add journal system tests
- Bug fixes and issue resolution
- Documentation updates
- Code refactoring for maintainability
- Performance monitoring and optimization
- Regular testing and validation
- Complete combat system enhancements (Core dice rolling system implemented)
- Finish inventory system logical checks
- Implement journal narrative summaries
- Add loading indicators and feedback
- Complete testing implementation
- Implement character sheet enhancements
- Functional character creation with AI guidance
- Working combat system with Boot Hill rules
- Basic inventory management
- Persistent game state
- Automated journal system
- Basic character sheet display
- Complete error handling
- Comprehensive test coverage
- 2025-01-17: Completed character generation enhancements (#114)
- 2024-12-28: Updated documentation links to reflect migration to GitHub Issues
- 2024-12-28: Initial version