Skip to content

Characters

smsolutionsva-byte edited this page Jun 26, 2026 · 2 revisions

Characters

Home · Gameplay · Enemies · Multiplayer

Every run selects one of eight gameplay classes. The selection applies in Classic, Tutorial, and Multiplayer. In first person, the player sees a weapon viewmodel; the selected class is represented by an invisible local shadow caster and by a full 3D avatar for remote multiplayer players.

Character visual reference

The class models below are rendered directly through the implemented character builders, with one evenly sized slot per class. These are the remote/multiplayer avatar models; first-person gameplay uses weapon viewmodels instead.

All eight playable class models

Class roster

Class Visual identity Active ability Cooldown / duration Passive
Ranger Green hood, glowing eye band, quiver Dash 5 s / instant −10% ability cooldown
Scout Gold cap, visor, backpack Adrenaline 11 s / 4 s +12% movement speed
Heavy Red armor, helmet, oversized pauldrons Bulwark 15 s / 5 s +20% maximum HP, −8% speed
Operative Dark tactical helmet and quad-tube NVGs Overclock 15 s / 5 s +10% headshot damage
Pyro Orange fire-themed suit and bright visor Firestorm 13 s / instant +6 flat damage on every bullet hit
Medic White and red field uniform Field Triage 14 s / instant Regenerate 0.5 HP/s out of combat
Engineer Yellow-brown work gear, cyan visor Demolition 12 s after detonation −15% reload time
Phantom Dark violet stealth suit, glowing purple accents Cloak 15 s / 4 s +15% Phantom pickup duration

Class jump multipliers range from 0.94 (Heavy) to 1.06 (Scout). There is no separate class-specific player hitbox value in the implementation; class selection changes abilities, passives, jump multiplier, visual model, shadow silhouette, and multiplayer replica metadata.

Active abilities

Ranger — Dash

Dash is a 0.24-second, 2.9× speed charge in the input direction. It tramples enemies in its path: one target may be lethal, while other targets are heavily damaged and shoved. Nearby barrels can detonate during the charge. Dash briefly applies a cinematic time slowdown and uses the standard ability cooldown system.

Scout — Adrenaline

Adrenaline activates the same speed state used by the Speed pickup for four seconds. The active effect is a 1.75× movement-speed surge, compounded with applicable modifiers.

Heavy — Bulwark

Bulwark raises the shared directional riot shield for five seconds. It absorbs front-arc incoming damage up to a 160-damage pool, then shatters. It is not an invulnerability bubble; attacks from outside the front arc can still deal damage.

Operative — Overclock

Overclock instantly refills the active weapon's effective magazine and applies both unlimited ammunition and the Overcharge buff for five seconds. Overcharge is 1.6× damage and 1.8× fire rate.

Pyro — Firestorm

Firestorm performs a local rocket-style blast with 70 base damage plus a large fire-nova presentation. It uses the same area-damage path as the rocket, including distance falloff and multiplayer host reporting.

Medic — Field Triage

Field Triage restores up to 18 HP, capped by maximum health. It is deliberately a small stabilizing heal rather than a full reset.

Engineer — Demolition

The Engineer's ability is two-stage:

  1. Stand within 5.5 units of an unwired explosive barrel and cast to wire it. Arming takes one second and grants a short 1.3-second follow-up gate.
  2. Cast again to remotely detonate it. The armed barrel is upgraded to at least 9.5 blast radius and 220 damage, then the full 12-second cooldown begins.

Only one bomb can be armed. A held remote detonator occupies the same left-hand space as a shield, so the Engineer cannot wire while a shield is active or raise a shield while the bomb is armed.

Phantom — Cloak

Cloak makes the player untargetable and intangible to enemies for four seconds. Enemies do not begin melee attacks or ranged charges against a cloaked player. The class passive extends the duration of a Phantom loot pickup, and also applies to the active ability duration calculation.

Movement and animation

All classes share the same base first-person movement system, then apply class passives and weapon-weight effects. Supported movement animations and feedback include idle sway, walk/run bob, ADS, strafe lean, jump/landing inertia, recoil, reloads, weapon inspection, class cast effects, camera impulses, and screen pulses.

Remote multiplayer models animate walk/idle, crouch, aim pitch, held weapon pose, death collapse, billboarding nameplate, and health bar. Their player class and current weapon replicate with position, rotation, health, and crouch state.

Class selection and synchronization

  • Solo and Tutorial use CharacterSelect before the run.
  • Multiplayer has unique class ownership in the lobby; a class card can be unavailable if another player has selected it.
  • The selected class is broadcast as modelClass and drives the remote avatar builder as well as the class modifiers at match start.
  • The local class casts a weapon-aware full-body shadow, but the shadow itself does not change hit detection.

Implementation references: src/utils/CharacterAbilityRegistry.ts, src/utils/CharacterPassiveRegistry.ts, src/utils/CharacterModels.ts, src/utils/LocalPlayerShadow.ts, src/App.tsx.

Clone this wiki locally