FIGHT ON!

Hamidreza Karimi
Premium/In development

FIGHT ON!

Allies in survival. Rivals for the score. No one knows until the end.

Role
Solo design & prototype
Engine
Unreal Engine 5
Genre
Wave survival · tower defense
Status
Playable flat slice
Owned
Combat, AI, arenas, balance
Next gate
VR co-op build
FIGHT ON! — first-person view over the tower rail
Key art — the tower under siege. Teal marks the ally side, ember the rival.
01

Design pillars

01

Outnumbered, never cheated

The horde is the fantasy. Every hit that lands has to be one the player could have read.

02

One tower, many worlds

The arena stays constant so the biome can change everything around it — sightlines, cover, mood.

03

Allies with a secret

Players survive together and score apart. Cooperation is real; so is the tally at the end.

02

The player fantasy

You are on top of the last standing structure, and everything below wants up.

The tower is the whole world: a firing platform, a wall, a thing that can be climbed. The player reads the field, picks a side of the rail, and commits. Enemies do the same — once they see you they do not disengage.

Pressure comes from numbers and from the clock. Relief comes from a clean parry, a good draft, and holding one more wave than the last run.

Drop a gameplay capture — the player’s view from the rail
03

Systems breakdown

Nine systems running in the current build.

Combat

Telegraph colour language

Green windups are parryable and reflect projectiles. Red and purple must be dodged or blocked.

Combat

Poise & stagger

Poise at zero staggers. A parried green windup becomes a stun. Both interrupt any state.

AI

Melee token arbitration

Only token holders may commit. The rest circle and wait, so a crowd never gangs up unfairly.

AI

Eight enemy archetypes

Rusher, brute, ranged, chaser, shield, armed shield, elite overlay, multi-phase boss.

AI

Enemy climbing

The tower is scalable. Height buys time, not safety.

Meta

Draft & upgrade

Between waves players draft upgrades — the roguelite spine of a run.

Meta

Hidden score

Everyone cooperates to survive. The ranking only resolves at the end.

Systems

Tower movement

Traversal around the rail — positioning is the primary defensive tool.

Systems

LAN multiplayer

Local network play, tested with four clients on one arena.

04

Enemy AI — the FSM

Ten authored state diagrams: one shared parent flow, seven archetypes, an elite overlay and a boss.

Every enemy runs the same parent loop and delegates its attacks to an archetype sub-machine. The loop exists to solve one problem: a crowd that feels relentless without ever becoming unfair. A token decides who may commit, and everyone else keeps pressure by circling.

Sees player → Commits → Queues for a token → Attacks → Releases, re-engages
The simplified read. It never returns to idle.
Parent flow — shared by every melee archetype
Idle / Wander Pursue / Approach beeline to player Request Melee Token hasToken? Reposition / Strafe circle, wait for token Attack rusher / brute sub-FSM Release Token + cooldown Yes No re-engage (relentless) keep pressure / retry point-blank: ignore token
No retreat: once the enemy sees you it commits. Sight lost → move to lastKnownPos and keep hunting. Never returns to Idle.
Core interrupts, any state: poise ≤ 0 → Staggered · green parried → ParryStun · HP ≤ 0 → Dead.
Telegraph language
Green — parryable. A parry becomes ParryStun; projectiles reflect.
Red / purple — dodge or block only. Never parryable.
Amber — high-priority interrupt: staggered, parry-stunned, shield broken.

Archetypes mix green and red deliberately so the player cannot spam a single answer.

Archetypes authored
Rusher — fast, low poise
Brute / charger — long tells
Ranged — never takes cover
Chaser — outruns the player
Shield — flank or break
Armed shield — peek window
Elite — overlay, token priority
Boss — phases, ignores tokens

Elites inject a signature ability into the base machine rather than replacing it — one overlay, every archetype.

05

Level & arena design

One arena shape, four worlds. Keeping the tower constant means the biome carries the variety — approach lanes, sightlines and silhouette read differently in a ruined city than in a flooded swamp, without retraining the player on the space.

The same tower across four biomes: ruined city, toxic swamp, alpine, desert
01 Ruined city

Dense cover, short lines of sight, vertical approach.

02 Swamp

Slow ground, open sightlines, crowds arrive together.

03 Alpine

Long reads, wrecks as cover, low contrast targets.

04 Desert

No cover at all — pure spacing and timing.

06

Draft & upgrade economy

Between waves the run branches. Players draft from a limited offer, which means the build is decided by what the arena has been doing to them, not by a menu memorised in advance.

Because score is hidden until the end, a draft is also a social read: take the pick that saves the group, or the one that wins the tally.

Drop the draft / upgrade UI capture
07

Tools & pipeline

Build
Unreal Engine 5
Blueprints
Niagara · Materials
Author
FSM diagrams in draw.io
Wave & poise tuning tables
Sequencer for tells
Test
LAN sessions, four clients
Per-archetype isolation arenas
Parry-window pass on each tell

The diagrams are the source of truth. Each archetype is specified on its own page before it is built, so a behaviour change is a diagram edit first and a Blueprint edit second — and the parent flow only has to be solved once.

Drop a UE5 editor capture — Blueprint graph or the isolation arena
08

Built vs designed

What runs today, and what the design is aimed at.

Built — playable now
Flat, non-VR first-person slice
Tower movement and rail traversal
Enemy climbing
Parent FSM with token arbitration
Green / red telegraph pass
Draft and upgrade loop
Hidden score
LAN multiplayer, four clients
One boss encounter
Designed — next gates
VR conversion — room-scale rail traversal
1–4 player PvPvE session structure
Four biome variants of the arena
Full archetype roster in production
Multi-phase boss with enrage
Run-level meta progression

The slice is deliberately flat. Proving the loop reads and the crowd stays fair is cheaper on a monitor than in a headset.

Next

Want the build, the diagrams, or a walkthrough?

Happy to screen-share the slice and talk through why the token system exists.

Hamidreza Karimi — Technical Game Designer UAE · open to remote