JJS State Node Guide – State Tags & Every State

Use the JJS Skill Builder State node safely. Learn State Tag, Check, Cancel State, combat multipliers, movement states, ragdoll controls, and a reliable apply-and-clean-up workflow.

Updated for the current JJS Skill Builder feature set. Last reviewed: July 30, 2026.

What the State node does

A State node changes or checks a temporary gameplay condition. It can restrict an action, apply a multiplier, control ragdoll or movement behavior, or expose a condition to branch logic. Treat every state as something with a beginning, a purpose, and an explicit end.

Apply state → Run move logic → Cancel or restore state

State Tag, Check, and Cancel State

  • State Tag: names or identifies the state used by connected logic.
  • Check: lets the timeline inspect a state before continuing through a path.
  • Cancel State: removes or ends the intended state during cleanup.

Use short, descriptive tags such as charge_armor, grab_lock, or awakening_speed. Consistent names make complex imported moves easier to repair.

Current JJS State node reference

The names below follow the current update terminology. Some states require a Value or another setting, and exact behavior can depend on the target, timeline, and connected branch.

Cancel StateEnds or cancels a state path instead of leaving it active.
InSkillChecks or represents whether the character is inside a skill sequence.
WakeupControls or checks wakeup-related behavior.
NoBlockPrevents blocking while the state is active.
NoMassChanges mass-related behavior for the affected character.
NoParkourDisables parkour actions during the active window.
NoDeathPrevents a normal death result while the state is active.
RagdollApplies or controls ragdoll behavior.
CharacterChanges or checks a character-related state.
ProjectionChanges or checks Projection-related behavior.
BleedApplies or checks a bleed-related state.
LastHitTracks or checks a last-hit-related state.
ScaleChanges the scale state used by the sequence.
SpeedMultiplierMultiplies movement speed by the configured value.
JumpMultiplierMultiplies jump behavior by the configured value.
HealthMultiplierMultiplies health-related behavior by the configured value.
DamageMultiplierMultiplies damage dealt or handled by the configured state.
KnockbackMultiplierMultiplies knockback strength while active.
CameraMaxZoomDistanceChanges the maximum camera zoom distance for the active state.

How to build a safe temporary state

  1. Choose one state and decide exactly why the move needs it.
  2. Apply it immediately before the section that depends on it.
  3. Use a short active window while testing.
  4. Add the intended animation, hitbox, movement, or branch logic.
  5. Cancel or restore the state on success.
  6. Add the same cleanup to miss, block, interruption, and early-exit paths.
  7. Test after respawn and after loading the saved moveset again.

Example state patterns

Short armor window

Apply the intended defensive state during startup, run the attack, then cancel it before recovery ends.

Temporary damage boost

Apply DamageMultiplier for the intended hit window only, then restore it before the next unrelated move can run.

Grab lock

Use movement or action-restricting states only while the target is held. Both the success and failed-grab paths need cleanup.

Conditional branch

Check a named state, then use a Branch to send the move into the normal or empowered path.

State node mistakes to avoid

  • Applying NoDeath, NoBlock, Ragdoll, or a multiplier without an explicit cleanup step.
  • Using the same vague tag for unrelated states.
  • Changing several multipliers at once before testing the first one.
  • Cleaning up only the successful-hit branch.
  • Assuming an imported state still behaves the same after a JJS update.

Frequently asked questions

What does State Tag do in JJS Skill Builder?

State Tag gives a state a named reference so connected logic can identify, check, or cancel the intended state instead of affecting unrelated behavior.

Why does my state stay active after the move ends?

The sequence probably has no reliable cleanup path. Add an explicit cancel or reset step to success, miss, interruption, and early-exit branches.

Can I combine multiple JJS states?

Yes, but test them one at a time first. Stacking movement, damage, ragdoll, and no-death behavior can create difficult-to-debug interactions.

Related JJS resources