Guide

Game homing attack systems explained

Harbor Brawl's roster mage shipped a level-3 super: three slow orbs that always curved toward the opponent's hurtbox center. Jumping backward, double-jumping, and even backdashing could not escape once the orbs spawned. Playtest telemetry showed 89% hit rate on any jump attempt during the super's 90-frame active window — far above the 40–55% designers target for spend-meter supers. Rushdown players stopped jumping entirely; zoning matches devolved into grounded stare-downs. The problem was not homing itself but uncapped turn rate combined with instant target acquisition on spawn.

Homing attack systems steer projectiles, melee lunge hitboxes, or entire character bodies toward a target over time. They appear in fighting games (tracking fireballs, divekick homing, install supers), action RPGs (seeking missiles), and platform fighters (lock-on aerials). Unlike straight-line projectile simulation, homing encodes counterplay geometry: how much lateral movement escapes tracking, whether anti-air remains viable, and how homing interacts with projectile clash priority. This guide covers homing taxonomies, steering math, lock-on models, neutral and okizeme implications, the Harbor Brawl refactor, a technique decision table, pitfalls, and a production checklist.

What counts as a homing attack

A homing attack updates its trajectory each frame (or fixed tick) based on target position, velocity, or a stored lock point. The player does not manually aim after release. Common implementations:

  • Projectile homing — missiles, souls, or orbs that steer mid-flight (Street Fighter-style Psycho Crusher trails, anime fighter dragon punches with magnetism).
  • Melee homing — lunge attacks that slide toward the opponent during startup or active frames (teleport punches, sliding grabs).
  • Character homing — the whole fighter moves on a curved path (Brawl-style homing aerials, certain divekicks with late correction).
  • Area lock-on — a reticle sticks to a target; subsequent shots converge regardless of facing (third-person action games ported to arena fighters).

Homing is distinct from predictive aiming at spawn only: a fireball aimed at where the opponent will land in 20 frames is not homing unless it continues to adjust. It is also distinct from large static hitboxes that simply cover space the opponent jumped into.

Homing taxonomy for combat designers

Full homing (infinite tracking)

Turn rate is high enough that any reasonable evasion fails. Reserve for cinematic supers with long startup, clear telegraph, and high meter cost — or single-player spectacle. In versus play, uncapped full homing removes neutral spacing decisions.

Weak homing (gentle correction)

Small angular adjustments each frame; skilled players sidestep by moving perpendicular to initial velocity. Good for making slow projectiles feel “alive” without deleting footsies. Typical turn cap: 2–6 degrees per frame at 60 fps.

Delayed homing

Projectile travels straight for N frames, then enables steering. Gives a readable first trajectory and a reaction window. Harbor Brawl's refactor added 18 frames of straight flight before homing engaged — enough for a committed dash but not for passive block.

Lock-on supers

On super flash, store target position or hurtbox ID; all spawned entities home to that snapshot or live position. Snapshot lock is fairer (opponent can dodge after flash); live lock is oppressive unless turn rate is capped. Document which model you ship in frame data notes.

Height-aware homing

Some homing only tracks on the horizontal axis (2.5D fighters), preserving jump invulnerability layers. Full 3D homing on Y-axis often breaks anti-air hierarchy unless jump arcs are tall or homing ignores airborne targets for the first N frames.

Steering implementation

Production code rarely uses true proportional navigation (PN) from missile guidance, but the same concepts apply:

Seek with turn-rate cap

Each tick, compute desired heading toward target: desired = atan2(ty - y, tx - x). Clamp delta from current heading to ±max_turn_per_tick. Update velocity along new heading. This is the workhorse for fighting-game homing orbs.

Proportional navigation (PN)

Turn rate scales with line-of-sight rotation rate: turn = N * (dλ/dt) where λ is the angle to target. PN produces smoother intercepts for fast targets; cap N or late-game homing becomes undodgeable.

Velocity-matched homing

Homing strength increases when target speed exceeds projectile speed, so slow orbs still catch backdash. Dangerous in fighters: pair with minimum distance before homing activates or homing disables when target speed < walk speed.

Target selection rules

Define priority: nearest hurtbox, locked opponent from super flash, last hitter in team modes, or highest HP in PvE. Ambiguous selection causes rollback desync if client and server disagree. Use deterministic lock at spawn frame on the authoritative simulation.

Expiration and falloff

Homing projectiles need lifetime, max travel distance, and wall despawn. Without expiration, a missed homing orb can chase forever off-screen, wasting object pool slots and confusing spectators.

Combat balance and counterplay

Homing attacks sit at the intersection of offense and frame advantage. Design levers:

  • Startup vs homing strength — slow homing supers are reactable with jumps or reflects; instant homing needs long blockstun on hit only, not on whiff.
  • Clash and durability — homing orbs should declare priority tier like any projectile; a homing low-priority orb losing clashes teaches players to fight fire with fire.
  • Reflect and parry — if homing cannot be reflected, document why (common for supers). Otherwise reflect should retarget homing to opponent or disable homing on reflected copy.
  • Invincibility windows — backdash i-frames and jump squat frames must exceed homing acquisition if you want those tools to matter.
  • Grounded-only homing — some moves home only while target is on ground, preserving jump-out okizeme answers.

In zoning matchups, weak homing on slow fireballs helps zoners correct for walk forward but still loses to committed run approaches at homing-limited angles. Strong homing replaces footsies with “hold back and super.”

Harbor Brawl refactor (worked example)

Original level-3 homing super: instant lock on flash, 45°/frame turn cap (effectively infinite at orb speed), three orbs staggered 8 frames apart, 90-frame total active time.

  • Hit rate on jumping opponents: 89%
  • Super pick rate in ranked: 34% of meter spend (over-centralized)
  • Average match length: +18% (stale neutral)
  • Player survey “unfair tracking”: 62% agree

Refactor shipped:

  • 18-frame straight flight before homing enables
  • Turn cap reduced to 8°/frame; orbs slow 12% during first homing second
  • Live lock replaced with snapshot at frame 10 of super (post-flash)
  • Orbs do not track airborne targets until frame 30 (jump outs work early)
  • Two frames of counter-hit vulnerability if opponent lands a light during straight-flight phase

Post-refactor metrics:

  • Hit rate on intentional jump escape attempts: 89% → 41%
  • Super pick rate: 34% → 19% (still viable, not mandatory)
  • Average match length: normalized to roster baseline
  • “Unfair tracking” survey: 62% → 14%

Training mode gained a homing debug overlay: turn-rate cone, lock snapshot marker, and homing-enable frame — critical for players learning spacing answers.

Technique decision table

Approach Best when Weak when
Straight-line projectile Readable neutral, clash wars, reflect meta Opponents always walk out of line; needs angle coverage
Weak homing (capped turn) Slow zoners need minor correction; skill-based dodge Fast targets at close range; still feels unfair if cap too high
Delayed homing Meter supers with clear telegraph; teaches reaction timing Needs distinct VFX for straight vs homing phases
Snapshot lock-on super Cinematic finishers; dodge after flash is possible Live-tracking requirement for “never miss” fantasy
Melee lunge homing Grappler gap-close on whiff punish; short active window Long lunge homing deletes footsies and frame traps
Teleport-to-target Command grab range, cinematic only Replacing projectiles; no counterplay besides preemptive movement

Prefer delayed + capped homing over instant full tracking for any move available more than once per round. Save true lock-on for install supers or cinematic triggers with global slowdown.

Common pitfalls

  • Uncapped turn rate — mathematically undodgeable at common speeds; always publish max degrees per frame in internal spec.
  • Homing on spawn frame zero — no reaction window; pair with straight phase or slow initial velocity.
  • Live lock on super flash — opponent cannot influence outcome after commit; use snapshot or cap tracking to horizontal plane only.
  • Homing ignores clash rules — orb that phases through fireballs breaks projectile clash meta; assign durability like any projectile.
  • Reflected homing still chases you — retarget reflected copy or strip homing flag on reflect.
  • No training mode visualization — players blame RNG; show lock point and turn cone.
  • Rollback nondeterminism — floating-point atan2 across platforms; fix lock frame and use fixed-point or rounded angles in netcode.
  • Homing melee with no recovery — lunge whiff must be punishable; homing active frames are not free approach.

Production checklist

  • Document homing type: projectile, melee lunge, or character body.
  • Set max turn rate (deg/frame), straight-flight delay, and projectile lifetime.
  • Choose snapshot vs live lock; record lock frame in move script.
  • Define airborne tracking rules (ignore air, delay air homing, or full 3D).
  • Assign clash priority and reflect behavior for homing projectiles.
  • Add debug draw: velocity vector, lock target, homing-enable gate.
  • Playtest dodge routes: backdash, jump, empty jump, super jump if applicable.
  • Measure hit rate on intentional escape attempts; target 40–55% for meter supers.
  • Verify deterministic lock under rollback with identical inputs.
  • Expose homing parameters in training mode frame data overlay.

Key takeaways

  • Homing attacks steer toward targets over time — they are not one-time aim predictions.
  • Turn-rate caps and delayed homing create dodge windows; uncapped tracking deletes neutral.
  • Snapshot lock on super flash is fairer than live lock for versus play.
  • Harbor Brawl cut jump escape hit rate from 89% to 41% with straight phase + 8°/frame cap.
  • Homing projectiles must participate in clash, reflect, and netcode rules like any other projectile.

Related reading