Guide

Game kara cancel and proximity cancel systems explained

Harbor Brawl's grappler had a 1.8 m throw range — respectable on paper, but ranked telemetry showed throw attempts whiffing 41% of the time at max spacing. The character felt slow, not weak: players walked into range, ate pokes, and never connected. The fix was not a raw speed buff. It was a kara cancel on forward heavy kick: the first four startup frames slide the hurtbox forward before the move cancels into throw on frame 5. Kara throw range jumped to 2.6 m without changing walk speed or dash length. Throw whiff rate fell to 24%; strike-throw mix success at midscreen rose 19 points. That is what deliberate kara and proximity cancel design does: it extends spacing tools through authored movement windows instead of invisible range hacks.

A kara cancel starts one move, inherits its startup movement (or partial animation), then cancels into a different move before the first attack becomes active. A proximity cancel (or proximity variant) swaps which move fires when fighters are within a distance threshold — close standing heavy becomes a command grab, far standing heavy stays a poke. Both systems sit adjacent to special cancels but solve spacing and route selection, not combo extension. This guide covers kara taxonomy, proximity normals and guard, implementation and input parsing, pairing with input buffers, the Harbor Brawl grappler refactor, a technique decision table, pitfalls, and a production checklist.

Kara cancel taxonomy

Kara cancels are named after the Japanese term for “empty” — the first move's active frames never matter; only its startup properties do. Document every kara edge in data; players will find unintended kara routes within a week of launch.

Kara type Source move Target move Typical use
Kara throw Normal with forward startup slide Throw / command grab Extend grab range without faster walk speed
Kara special Normal or special startup Different special (uppercut, divekick) Reposition before active frames; anti-air from farther away
Kara dash Normal with micro-step Backdash or forward dash (rare) Escape corner or bait whiff punish at specific spacing
Kara super Long-startup normal Super on cancel window Surprise range on cinematic opener; usually hit-only
Plink kara Two-button plink into kara source Throw or special Legacy input technique; modern games often bake into one input

Kara differs from Roman Cancels: RC spends meter and applies global slowdown; kara is move-specific, usually meterless, and only borrows startup frames.

Startup movement and cancel windows

Implementation hinges on three numbers: how far the source move travels during startup, which frame the cancel is legal, and whether movement persists into the target move's own startup.

Movement during startup

  • Root motion vs hitbox slide. Root motion moves the entire character capsule; hitbox slide only advances attack origin. Throws care about capsule position; anti-airs care about hitbox origin. Mixing them creates inconsistent kara throw vs kara upper ranges.
  • Per-frame displacement curve. Most kara sources use linear slide (0.12–0.18 m per frame for 3–5 frames). Ease-out curves feel smoother but shorten effective range unless you extend frame count.
  • Air vs ground. Air kara cancels often zero vertical velocity on cancel to prevent jump-in throw OS from crossing the whole screen.

Cancel window placement

  • Pre-active only. Cancel must fire before the first active frame of the source move. If active frames begin on frame 6, kara window is frames 1–5 inclusive.
  • Single-frame kara. Some classics allow kara only on one startup frame (frame 4 of forward medium). Tighter execution; clearer counterplay.
  • Buffer-friendly window. With a 5-frame input buffer, a 3-frame kara window effectively becomes 7 frames of player-facing leniency. Publish both raw and buffered windows in movelist data.

Log kara attempts in telemetry separately from normal cancels: source move ID, cancel frame, resulting target, whiff vs connect, and distance at throw attempt.

Proximity cancels and proximity variants

Proximity cancels select a different move when the opponent is within range band R. Unlike kara, the player inputs one command; the engine resolves variant by distance. Common patterns:

  • Proximity normals. Close standing heavy becomes a faster, shorter-recovery elbow; far standing heavy stays a lunging kick. Used in footsies-heavy fighters to reduce button count while keeping spacing depth.
  • Proximity guard / proximity block. Holding back at close range triggers a parry-like guard animation with different pushback or chip rules than standard block. Distinct from parry systems — proximity guard is usually passive when holding back, not a timed tap.
  • Proximity throw. Light punch becomes throw when within 1.2 m; otherwise jab. High skill ceiling; must telegraph the close variant or defenders feel cheated.
  • Proximity special. Quarter-circle punch becomes command grab in point-blank range and fireball at mid range (single motion input).

Distance band design

Define bands in meters from attacker root to defender hurtbox center:

BandTypical rangeVariant behavior
Point-blank0–0.9 mThrow, command grab, fast close normal
Mid0.9–2.2 mStandard normal, special projectile
Far2.2 m+Lunge normal, whiff-prone poke

Hysteresis prevents flicker at band edges: enter point-blank at 0.9 m, exit at 1.05 m. Without hysteresis, characters at max throw range oscillate variants frame to frame in rollback netcode.

Implementation: input parsing and cancel graphs

Kara and proximity routes extend your cancel graph with extra dimensions:

  1. State entry. Player presses throw while kara-eligible normal is in startup. Parser checks cancel table row: (source=forward_heavy_kick, phase=startup, frame<5) → throw.
  2. Movement carryover. On cancel, copy accumulated root displacement to the target move before its own startup begins. Do not reset position to animation origin.
  3. Proximity resolution. On button press, query distance band before choosing move ID. Resolve before startup so VFX matches variant.
  4. Throw tech interaction. Kara throws use the same throw tech window as normal throws; extended range does not shorten tech frames.
  5. Priority on overlap. If both kara cancel and proximity variant match, document precedence: proximity band usually wins at point-blank; kara wins at mid range when explicitly input.

Rollback tests: record root position every frame during kara throw at 120 ms RTT. Capsule position after cancel must match on both peers within one physics tick.

Harbor Brawl grappler kara refactor

Pre-refactor Harbor Brawl relied on walk-speed tuning for grappler approach. Faster walk made neutral oppressive; slower walk made throws irrelevant. Proximity throw on light punch existed but fired only inside 0.7 m — shorter than the jab itself, so it almost never triggered in match data.

The refactor shipped four changes:

  1. Kara throw route. Forward heavy kick slides 0.15 m per frame for frames 1–4; cancel into throw on frames 3–5. Effective throw range 2.6 m from neutral standing position.
  2. Proximity band fix. Point-blank light punch → throw band expanded to 1.15 m enter / 1.30 m exit with hysteresis.
  3. Whiff recovery tax. Kara throw whiff adds 8 frames recovery (empty animation) so missed kara throws are punishable at max range.
  4. Tutorial drill. Training mode “Kara range” overlay shows green ring at 2.6 m; success counter tracks consecutive kara connects.

After 9,400 ranked matches: throw whiff rate 41% → 24%; midscreen strike-throw success +19 pp; kara throw usage 2.1 attempts per round among grappler mains; defender jump-out rate on kara whiff +11 pp (counterplay emerged). Survey: 72% of grappler players said neutral felt “fair but threatening” vs 38% pre-patch.

Technique decision table

Design goalApproachWhy
Extend throw range without faster walkKara throw from forward normalSpacing skill expression; whiff tax keeps risk.
Reduce button count at multiple rangesProximity normals on one inputFootsies depth without memorizing three stand heavies.
Hide throw behind strike-looking startupProximity throw at point-blankMixup tool; must respect tech and pushback rules.
Extend anti-air reachKara upper from low forward normalFarther intercept without full invincibility buff.
Keep beginners viableSingle-button kara (forward heavy + throw macro)Competitive players can still manual kara for OS routes.
Avoid invisible grab rangePublish kara range in movelist; show whiff recoveryDefenders learn spacing; no “how did that grab me?”
Limit OS degeneracyNo kara into command grab from plus frames on blockPrevents zero-risk strike-throw after safe pokes.

Common pitfalls

  • Kara without whiff recovery. Max-range kara throw becomes zero-risk spacing probe every neutral.
  • Accidental kara on every normal. If all heavies kara into throw, footsies collapse into grab fishing.
  • Proximity band flicker. Missing hysteresis causes variant swaps mid-combo in rollback.
  • Movement not carried to target. Kara throw connects at jab range despite visible slide — players distrust the system.
  • Proximity throw faster than jab. Point-blank variant must not beat reaction tech unless intentionally a command grab with longer startup.
  • Kara into plus-on-block special. Safe kara blockstrings with throw threat at end homogenize offense.
  • No telemetry. You cannot tune bands without kara attempt rate, whiff rate, and connect distance histograms.
  • Tutorial omission. Kara stays expert-only; grappler pick rate stays low despite strong kit.
  • Plink-only kara. Requiring frame-perfect plink excludes pad players unless baked into modern buffer or macro.

Production checklist

  • Document kara edges in cancel table with source, phase, frame window, and target.
  • Define per-frame startup displacement curve for each kara source.
  • Carry accumulated root motion into target move startup on cancel.
  • Set proximity bands with enter/exit hysteresis in meters.
  • Match throw tech windows for kara and proximity throws to normal throws.
  • Add whiff recovery tax on kara throw whiff at max range.
  • Publish effective kara throw range in movelist and training overlay.
  • Separate telemetry events for kara vs normal cancels and proximity variant IDs.
  • Rollback test capsule position at 120 ms RTT during kara sequences.
  • Ship tutorial drill with range ring and success counter.

Key takeaways

  • Kara cancels borrow startup movement before canceling into another move — range without raw speed buffs.
  • Proximity cancels swap move variants by distance band; hysteresis prevents rollback flicker.
  • Kara throw, kara special, and proximity normals solve different spacing problems than special cancels.
  • Whiff recovery tax and published range keep kara throws fair and readable.
  • Harbor Brawl's kara throw refactor cut grappler throw whiff rate from 41% to 24% without walk-speed changes.

Related reading