Simple JRPG
Turn-based combat API for Unity. 5 turn systems, 11 actions, 20 events. Pure C# with zero engine dependencies — your rules, your formulas. Free forever.
// Pure C# — no MonoBehaviours, no singletons
using SimpleJRPG;
var battle = new Battle();
var combatants = new List<ICombatant>
{
hero, // Team 0
dragon // Team 1
};
battle.OnBeforeDamage += e =>
{
if (e.Target.HasStatus("Shielded"))
e.Amount *= 0.5f; // your formula
};
battle.Start(combatants, new ClassicTurnSystem());
var actor = battle.BeginNextTurn();
battle.DealDamage(actor, dragon, 42);
battle.EndTurn();
Stop Writing Battle Systems from Scratch
Simple JRPG handles the battle flow so you can focus on what makes your game unique — your damage formulas, your status effects, your UI. Set up your characters, pick a turn system, and start calling actions.
You Do the Math
Simple JRPG doesn't care what your stats look like or how you calculate damage. That's all yours.
We Run the Battle
Turn order, state tracking, win/loss detection, event broadcasting. Create a battle, add characters, pick a system — you're running.
Pure C#
No singletons, no MonoBehaviours, no ScriptableObjects, no Unity dependencies. Test your battle logic anywhere .NET runs.
5 Turn Systems Included
Classic
Characters act in speed order, one round at a time. The standard JRPG turn system.
ATB (Active Time Battle)
Each character has a gauge that fills based on speed. When it's full, they act. Faster characters act more often.
Timeline / CTB
Every action has a cost. Heavy attacks push your next turn further away. A visible timeline shows who acts when.
Press Turn
Teams take turns in phases. Each phase starts with action points. Smart plays conserve them; mistakes waste them.
Action Point
Save points by skipping your turn, then spend them later for multiple actions in a row. Risk and reward.
Build Your Own
Implement the turn system interface and create whatever turn order logic your game needs.
11 Actions, 20 Events
Actions
- DealDamage — hit one target or a whole group
- Heal — restore HP to one or many
- Kill / Revive — knockouts and comebacks
- ApplyStatus / RemoveStatus — poison, stun, whatever you define
- ApplyBuff / RemoveBuff — attack up, defense down, your call
- Flee — escape from battle
- RemoveCombatant — pull a character out entirely
- EndBattle — manually end with a specific outcome
Events
- Battle started / ended, turn started / ended
- Before damage / before heal (intercept and modify)
- Damage dealt / healed
- Character KO'd / revived
- Status applied / removed
- Buff applied / removed
- Fled / character removed
- Group damage / group heal / group status / group buff
What's Included
Documentation
11-page HTML docs with multi-page and single-page format, light/dark mode, and full API reference.
Cookbook
15 copy-paste recipes: mana costs, elemental weakness, status timers, buff stacking, critical hits, drain, instant kill.
Demo Scenes
5 interactive demo scenes, one per turn system. Plus a Demo Hub and Template Generator for quick starts.
Technical
Battle Orchestration, Handled
5 turn systems. 11 actions. 20 events. Zero opinions on your game design.
Get Free on Unity Asset Store