Fight Config Builder
Fight Config Builder
Section titled “Fight Config Builder”Build complete titan fight configurations with visual node graphs for phases and state machines.
Interactive Builder
Section titled “Interactive Builder”Open Fight Config Builder (Full Screen) →
The Fight Config Builder provides a visual node graph editor for creating titan fight configurations with phases, moves, and state machines.
How to Use
Section titled “How to Use”Phase Timeline Mode
Section titled “Phase Timeline Mode”The default view shows your phase progression as a horizontal flowchart.
1. Configure Basic Info
Section titled “1. Configure Basic Info”- Pokemon Name: Species to apply config to (e.g., “charizard”)
- Titan Display Name: Name shown to players
- Selection Strategy: How moves are chosen (Weighted Random recommended)
2. Add/Edit Phases
Section titled “2. Add/Edit Phases”- Click ”+ Add Phase” to create new phases
- Click a phase node to select it and show details panel
- Edit properties in the details panel:
- Health Threshold (when phase triggers)
- Speed/Damage/Scale modifiers
- Aggression level
- On Enter Script (MoLang for phase transition effects)
3. Navigate to State Machine
Section titled “3. Navigate to State Machine”- Click “Edit State Machine” on any phase node
- Opens state machine graph editor for that phase
State Machine Mode
Section titled “State Machine Mode”Edit AI behavior for the selected phase.
1. Add States
Section titled “1. Add States”- Click ”+ Add State” to create new AI states
- States define movement patterns and behavior
- The green-bordered state is the initial state (where the phase starts)
2. Connect States
Section titled “2. Connect States”- Drag from one state’s edge to another to create transitions
- Transitions define when the titan switches behaviors
- Red dashed lines are global transitions (work from any state)
3. Configure States
Section titled “3. Configure States”Each state controls:
- Movement Controller: How the titan moves (patrol, rush, circler, etc.)
- Speed Multiplier: Movement speed in this state
- Aggression Multiplier: How aggressively titan pursues target
- Duration: Min/max time in state before forced transition
4. Return to Phases
Section titled “4. Return to Phases”- Click ”← Back to Phases” to return to phase timeline
- Your state machine changes are saved
Generate & Export
Section titled “Generate & Export”- Click “Generate JSON” after configuring everything
- Copy to Clipboard to paste into your config file
- Save to
config/titan/fights/pokemon_name.json - Run
/titan reloadin-game to load changes
Phase Timeline Tips
Section titled “Phase Timeline Tips”Health Thresholds
Section titled “Health Thresholds”Phases trigger when titan health drops below threshold:
- Phase 1:
1.0(100% HP - starts here) - Phase 2:
0.66(66% HP) - Phase 3:
0.33(33% HP) - Enrage:
0.1(10% HP - optional)
Phases must be in descending order!
Stat Modifier Progression
Section titled “Stat Modifier Progression”Typical difficulty curve:
| Phase | Speed | Damage | Aggression |
|---|---|---|---|
| 1 | 1.0-1.1 | 1.0 | 1.0-1.1 |
| 2 | 1.2-1.3 | 1.2-1.3 | 1.3-1.5 |
| 3 | 1.4-1.5 | 1.5-1.7 | 1.6-2.0 |
On Enter Scripts
Section titled “On Enter Scripts”Common phase transition effects:
// Particle burstq.particle_effect('minecraft:soul_fire_flame', q.position(0), 100, 2.5)
// Apply buffsq.apply_potion('minecraft:speed', 999999, 1); q.apply_potion('minecraft:strength', 999999, 1)
// Combined effectq.particle_effect('minecraft:explosion', q.position(0), 50, 3.0); q.play_sound('minecraft:entity.ender_dragon.growl', 1.0, 0.5)State Machine Tips
Section titled “State Machine Tips”Movement Controllers
Section titled “Movement Controllers”Available controllers (from Titan):
titan:ground_patrol- Standard ground movementtitan:ground_berserker- Aggressive ground rushtitan:aerial_circler- Circle in air around targettitan:aerial_bomber- Dive bomb attackstitan:aerial_rush- Fast aerial charges
Transition Conditions
Section titled “Transition Conditions”Common MoLang conditions:
// Time-basedq.titan_time_in_state > 2000
// Distance-basedq.titan_distance_to_target < 8.0
// Health-basedq.titan_health_percent < 0.5
// Combinedq.titan_distance_to_target < 5.0 && q.titan_time_in_state > 1500
// Random chanceq.titan_random < 0.3State Design Patterns
Section titled “State Design Patterns”Aggressive/Defensive Cycle
Section titled “Aggressive/Defensive Cycle”aggressive_state (high aggro, 2-5s) → defensive_state (low aggro, 1-3s) → aggressive_stateDistance-Based
Section titled “Distance-Based”ranged_state (far from target) → melee_state (close to target) → retreat_state (after damage taken) → ranged_stateFlying Boss
Section titled “Flying Boss”circling (aerial_circler, medium aggro) → dive_bomb (aerial_bomber, high aggro) → retreat (aerial_rush, low aggro) → circlingGlobal Transitions
Section titled “Global Transitions”Use global transitions for emergency behaviors:
// Retreat when damagedcondition: q.titan_health_percent < 0.3 && q.titan_time_since_damage < 1000target: retreat_state
// Enrage at low HPcondition: q.titan_health_percent < 0.15target: enrage_stateGlobal transitions work from ANY state, useful for:
- Low-HP panic modes
- Retreat when damaged
- Special triggers
Complete Example Workflow
Section titled “Complete Example Workflow”1. Create Basic Structure
Section titled “1. Create Basic Structure”- Set pokemon name: “charizard”
- Set titan name: “Inferno Titan Charizard”
- Keep default 3 phases
2. Configure Phase 1 (100% HP)
Section titled “2. Configure Phase 1 (100% HP)”- Select Phase 1 node
- Set modifiers: Speed 1.1, Damage 1.0, Aggro 1.0
- Add on enter script:
q.particle_effect('minecraft:flame', q.position(0), 50, 2.0) - Click “Edit State Machine”
3. Build Phase 1 State Machine
Section titled “3. Build Phase 1 State Machine”- Keep default_state
- Add new state: “aggressive_rush”
- Connect: default_state → aggressive_rush
- Set transition condition:
q.titan_distance_to_target < 6.0 && q.titan_time_in_state > 2000 - Connect: aggressive_rush → default_state
- Set condition:
q.titan_time_in_state > 3000 - Back to phases
4. Configure Phase 2 (66% HP)
Section titled “4. Configure Phase 2 (66% HP)”- Select Phase 2 node
- Set modifiers: Speed 1.25, Damage 1.3, Aggro 1.4
- Add buffs:
q.apply_potion('minecraft:speed', 999999, 0) - Repeat state machine setup
5. Configure Phase 3 (33% HP)
Section titled “5. Configure Phase 3 (33% HP)”- Select Phase 3 node
- Set modifiers: Speed 1.4, Damage 1.6, Aggro 1.8
- Add buffs:
q.apply_potion('minecraft:speed', 999999, 1); q.apply_potion('minecraft:strength', 999999, 1) - Create aggressive state machine
6. Generate & Test
Section titled “6. Generate & Test”- Click “Generate JSON”
- Copy to clipboard
- Save to
config/titan/fights/charizard.json - Run
/titan reload - Test:
/pokespawn charizardthen/titan create @e[type=cobblemon:pokemon,limit=1,sort=nearest]
Troubleshooting
Section titled “Troubleshooting”Phase Not Transitioning
Section titled “Phase Not Transitioning”- Check health thresholds are in descending order
- Ensure titan health actually drops below threshold
- Verify phases array is properly formatted in JSON
State Machine Not Working
Section titled “State Machine Not Working”- Check initial state exists in states object
- Verify movement controller IDs are valid
- Check transition conditions use valid MoLang
- Ensure states are connected with transitions
Generated JSON Invalid
Section titled “Generated JSON Invalid”- All phases must have required fields
- State machine states need valid movement controllers
- Check MoLang syntax in conditions and scripts
Next Steps
Section titled “Next Steps”- Phase System Docs → - Understand phase configuration
- State Machines Docs → - Deep dive into AI states
- MoLang Reference → - All available functions
Build complex boss AI visually! 🎮🧠