Project 02 · Unity · C#

Bunblade

A turn-based combat game with a twist: a real-time parry sits inside the turn system. Time the input window and you cancel the hit.

Playable build not added yet.

Needs a Unity WebGL build dropped in assets/game/.
Build steps are in BUILD-NOTES.md — then this box becomes the game.

Built in Unity 6.2 · source: github.com/jjkim08 link the exact repo


The hook

Turn-based combat usually means you pick a move and watch it resolve. Bunblade keeps the turn structure but drops a timed input window into the enemy’s attack — a state machine confirms whether you hit the parry, and the turn branches from there.

  • Parry system — timed windows + confirmation states
  • Shop & economy with JSON save / load
  • Pattern-based enemy AI
  • Spells — Ignia (fire), Glacia (ice)

Under the hood

ArchitectureEvent-driven; systems communicate through events, not direct calls
Turn orderCustom binary heap scheduling combatants by speed / initiative
Combat dataScriptableObjects for players, enemies, spells, elements
PersistenceShop / economy state serialized to JSON
EnemiesGhoul, Spirit — each with its own action pattern
// heap.cs — turn scheduler
public void Insert(Combatant c, int tick) { ... }
public Combatant PopNext() {
    // lowest tick acts first; O(log n)
}

Screens

main menu — assets/game/shots/menu.png optional
battle — assets/game/shots/battle.png optional
← all projects