Skip to content

Tracking Issue for v0.6.0: The Battle System Update #34

@Bli-AIk

Description

@Bli-AIk

🎯 Purpose

The primary objective of v0.6.0 is to implement a fully functional, data-driven combat system powered by our Linear Sequencer Architecture. Instead of a hardcoded state machine, the entire battle flow (from the encounter start to the victory screen) should be driven by scriptable RON sequences (e.g., demo.battle.ron).

📝 Goal Summary

We need to expand the current Sequencer capabilities to support the complete Undertale-style battle loop. The engine must act as a runtime for battle scripts, effectively treating the "Player Turn," "Enemy Attack," and "Dialogue" as discrete, sequenced commands that modders can orchestrate.
Success Metric: The engine acts as a runtime capable of executing a full "Mad Dummy" recreation mod. If the Mad Dummy fight works (Dialogue -> Attack -> Finish Battle), the version is ready.

✅ Core Tasks

Here is the core objective of this update.
All objectives should be linked to specific Issues/PRs in the future.
If an objective is not linked, it means it is still a draft.

🎬 Sequencer & Architecture

Expand the Linear Sequencer to support interactive battle flow control.
Command Expansion: Implement missing commands required for a full battle loop:

⚔️ View (UI) & Interaction Logic

Implement the backend logic for the 4 main battle buttons triggered by the Sequencer.

👾 Enemy Content System

  • Data Configuration: Define Enemy structure in toml/ron (stats, sprites, ACT commands).
  • Visuals: Enemy sprite rendering and simple animations (idle/hurt).
  • Speech Bubbles: Implement the visual system for enemy dialogue during the battle phase.

📦 Content & Documentation

✨ Bonus / Stretch Goals (Deltarune Style)

  • DR UI Adaptation: Adapt the ui_layout.ron parser to support multi-character (Party) layouts.
  • TP System: Basic implementation of Tension Points logic.
  • Grazing: Implement "Graze" hitboxes in the DanmakuPerformance system.

📅 Roadmap

Development Phases (Order of Execution):

  1. Phase 1: The Loop - Expand the Sequencer to support a full "Player Turn -> Enemy Turn" cycle without UI polish.
  2. Phase 2: Interaction - Wire up the FIGHT/ACT/ITEM/MERCY logic to the sequence commands.
  3. Phase 3: Visuals & Content - Implement Speech Bubbles, Enemy Sprites, and the Example Mod data.
  4. Phase 4: Docs & Polish - Finalize the API documentation and clean up the RON syntax.

Metadata

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions