Skeleton is an enemy body with 480 HP, light at weight 0.7. It fights with 2 authored moves. It sees 200° ahead and gives chase from 16 m. A kill pays 5 coins.
Swings
The body's entries in the shared attack table — the swings with real frame data. This is not the whole repertoire: transformations, casts, summons and every other behaviour live as states, listed below.
Move
Damage
Delivery
Height
Active at
Reach
Knockback
Hitstun
Block stun
Stamina
claw
55
melee
high
0.17 s of 0.44 s
2 m
1.8
18f (300 ms)
20f (333 ms)
10
swipe
55
melee
mid
0.19 s of 0.48 s
2 m
2.2
18f (300 ms)
20f (333 ms)
10
Abilities & behaviour (17)
Every state this body can enter, read off the live instance. A boss's identity lives here rather than in the swing table — Dracula's bat form and his wandless cast are states, not AttackData rows. Descriptions are the programmer's own note at the top of each state.
Offensive (3)
State
What it is
Counter
Parry stance — the Taunt's answer to a fast swing it can't out-speed.
MimicCombat
Replay the player's combo against the player.
Thrown
Being suplexed (combat/pair_throw.gd's victim half): the pair runner owns the body — this state just holds the CharacterBody still (the kept hips tracks fly the rig through the arc), keeps playing whatever p01 clip the runner cues, and reports its own exit so any preemption (a teammate's hit landing — the interrupt rule — or death) frees the thrower into their tech stagger.
Movement, reaction & AI (14)
State
What it is
Approach
Commit and close the gap.
Block
Shared guard stance.
BowDraw
An armed archer's draw -> loose: the enemy-side twin of the player's states/bow_draw_state.gd, wizard-missile cadence.
Dash
A superhuman movement burst — much faster and shorter than the dodge roll (MimicMove), and unlike a roll it keeps the body upright and facing the player, so it reads as a juke/close, not an escape tumble.
Dead
Death: no more sink-and-vanish.
Flee
Back away from the player (hurt + timid).
Hurt
Hit reaction.
Idle
The unaware resting beat.
Knockdown
Balance-break knockdown, enemy side.
MimicMove
Mirror the player's dodge-roll: a quick directional burst at `dodge_speed` that decays to a slide, then drop back to Stalk.
Search
Lost the player: walk to where they were last seen, scan around, then give up.
Stalk
The Ditto's signature behavior: pace the player on a ring of radius `standoff`, circling and periodically swapping direction to "peek" rather than beelining.
Taunt
The laugh — entered by dashing out of the player's reach after building a big duel lead (Npc.hit_lead() >= TAUNT_LEAD, see the smug checks in stalk/approach/mimic_combat).
Wander
Aimless roaming for when there's no target / the player is lost.
In dungeons
Pool entry
Power cost
Weight
Per-tile chance
Max/room
Gates
Atmosphere bias
Pairs with
skeleton
1.1
0.35
5%
3
depth ≥ 2
danger 0.45, weird 0.35
—
Rooms fill a power budget, not a headcount: each body costs its power rating, so two heavy bodies fill a room as fast as five light ones. Per-tile chance is the roll on a tile that has already selected this entry — the effective rate is far lower.
On islands
Power cost
Common everywhere
Comes out at night
Claws out of the ground
1.1
—
0.85
Yes
Biome
Weight
Dead
0.6
it is added to any island after dark (and all day on a haunted one). it arrives by clawing out of the ground near whoever is ashore.