Files
RoadBuildMC/PLAN.md

39 lines
1.4 KiB
Markdown

# RoadRunner Development Plan
## Phase 1: The Foundation (Setup)
- [x] Initialize Project Boilerplate (Stonecutter/Architectury)
- [x] Configure Project Metadata (RoadRunner, com.bnair.roadrunner)
- [ ] User: Install Java 21 and IntelliJ IDEA
- [ ] User: Run `./gradlew build` to verify setup
## Phase 2: The Mathematician (Core Logic)
- [ ] Implement `BezierCurve` class (Cubic Bezier math)
- [ ] Implement `RoadProfile` data structure:
- Lanes (Width, Type, Material)
- Banking logic
- Snapping logic (Tangents)
- [ ] Create debug "Planner Item" to visualize curves with particles
## Phase 3: The Architect (GUI & Blueprints)
- [ ] Integrate **Owo-lib** for GUI
- [ ] Create "Blueprint Planner" item
- [ ] Implement Top-Down Map GUI (DrawContext)
- [ ] Implement "Ghost" rendering for planned roads (WorldRenderEvents)
## Phase 4: The Foreman (Survival Mechanics)
- [ ] Create "Site Office" Block
- [ ] Implement Resource Consumption logic
- [ ] Implement "Virtual Crew" construction mechanic (Progressive building)
- [ ] Add sound effects and particles for construction
## Phase 5: The Civil Engineer (Advanced Features)
- [ ] Terrain Mode: "Follow Terrain" vs "Cut & Fill"
- [ ] Bridges and Tunnels automation
- [ ] "Demolition Tool" with undo capability
## Technical Decisions
- **Loader:** Multi-loader (Fabric & NeoForge) via Architectury & Stonecutter
- **Language:** Kotlin
- **GUI Lib:** Owo-lib
- **Rendering:** Fabric API / Architectury Rendering API