OneLiteFeatherNET / OneLiteFeatherNET/Voyager
feat(practice): always-on spline/particle guide trail for Practice Mode
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 0
- Forks
- 0
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 12
Description
Description
SplineVisualizationSystem is promoted from a debug feature to a player-facing guide, automatically enabled during Practice Mode sessions. Lowest priority — safe to defer post-MVP.
Acceptance Criteria
- `SplineVisualizationSystem` activates automatically when `GameMode.PRACTICE` is detected
- Particle trail is visible to the practicing player only (not broadcast to other instances)
- Visual parameters are tunable per map: particle density, color, lookahead distance threshold
- Defaults are set for first-time-player readability (higher density than debug mode)
- The system is disabled in `GameMode.RACE` sessions (no performance cost in competitive play)
- Guide points must be authored in the setup plugin before the system has data to render
- Unit/integration tests verify the system activates and deactivates with the correct game mode
- No visual artifacts when a player retries (trail resets with the ring tracker)
Technical Details
- Guide point authoring in the setup plugin is a prerequisite (tracked separately)
- `SplineVisualizationSystem` remains in `server` module — no shared-module imports of Minestom
- Visual parameters stored in MapDefinition or a sidecar config file (Gson-serialized)
- System follows the ECS pattern: declares required components, processes matching entities each tick
Dependencies
- #172 (Practice Mode session — system only activates under `GameMode.PRACTICE`)
Estimate
L
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with dependency #172 and inspect SplineVisualizationSystem in the server module, then review MapDefinition or the sidecar Gson configuration and the setup plugin prerequisite. Trace the ECS processing and ring-tracker reset behavior. Done means Practice Mode enables the player-only trail with tunable defaults, Race Mode disables it, and activation, deactivation, and retry behavior are covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100