Guide

Game surface grind and rail slide traversal systems explained

Harbor Rail District shipped a rooftop chase sequence in early 2026: players sprinted across neon pipes connecting skyscraper ledges, grinding rails to maintain speed between jumps. Telemetry showed 71% of first-time players fell off before the second rail — not because they lacked skill, but because mount detection required overlapping a 0.15 m collider on the exact frame they landed. The visible pipe mesh was 0.4 m wide; the authoritative grind volume was not. After rebuilding attachment with fat snap cones, coyote land windows, spline speed clamps on tight curves, and generous gap-transfer magnets between chained rails, first-segment fall-offs dropped to 14% and median clear time fell 31%. Surface grinding is not “walk on a mesh”; it is a constrained movement mode with its own mount grammar.

A production surface grind / rail slide system locks the player to a spline or tagged ledge, integrates speed along the path, handles curves and banked corners without launching the character into space, and hands off cleanly to jumps, wall runs, or dismounts. This guide covers rail types and tagging, the mount FSM, speed and balance physics, chain transfers across gaps, camera and collision policy, the Harbor refactor, a technique decision table versus wall runs and ziplines, common pitfalls, and an engineering checklist. Pair it with platformer design fundamentals for broader level rhythm context.

Rail types: what players actually attach to

Grind surfaces fall into three authoring families. Most shipped games mix them within one level.

Spline rails (pipes, cables, tracks)

A Bezier or Catmull-Rom spline defines the grind path. The character's root snaps to the closest point on the spline each frame; forward progress advances arc-length parameter s. Pipes in skate games and energy conduits in sci-fi platformers use this model. Spline rails support loops, S-curves, and vertical segments cleanly.

Flat ledge grinds (copings, handrails, roof edges)

A tagged mesh edge or thin box collider marks a grindable ledge. Movement follows the polyline of the edge rather than a smooth spline — corners are hard 90-degree turns unless you insert blend arcs. Simpler to author on architectural geometry; harder to keep speed feel consistent through kinks.

Surface slides (roofs, slopes, ice channels)

Wider zones where the player slides along a surface normal rather than a single line. Speed is often higher but steering is looser. Overlaps with slope and friction systems but differs because entry is intentional (jump onto rail) and lateral drift is clamped.

Tag grindables explicitly (grind_rail, grind_ledge) with per-segment metadata: max speed, grind direction (one-way vs bidirectional), trick tier, and dismount impulse vector.

Mount FSM: approach, snap, grind, dismount

Detection and coyote land

Naive systems require the player's feet to overlap the rail collider on the landing frame. Production games add a mount cone below and beside the character: if grind input is held (or auto-mount is enabled) within 150–250 ms of landing near a tagged rail, snap to the closest valid point. This is coyote land applied to grinding — the same leniency pattern as coyote time for jumps.

States

  1. Approach — airborne or running; grind input polled; proximity test against tagged volumes within snap radius.
  2. Snap blend — 3–6 frames interpolating position and rotation to align board/feet to rail tangent; zero out velocity components perpendicular to the rail to avoid bounce-off.
  3. Grind — advance along spline; apply speed rules; optional balance minigame on curved segments.
  4. Trick branch (optional) — ollie, kickflip, or grind hop that briefly leaves the rail and re-enters on a parallel segment.
  5. Dismount — jump off with composed velocity (rail speed + jump impulse), auto-dismount at spline end, or fall off from balance failure.
  6. Fail — miss mount, slip on balance meter, or dismount into kill volume.

Auto-mount vs manual mount splits audiences: auto-mount keeps flow in story platformers; manual mount (hold grind button on landing) rewards timing in skate sims. Harbor uses auto-mount on story rails and manual on optional score lines.

Speed along the rail: boost, friction, and curves

Players expect grinding to preserve or increase momentum. Three speed models dominate:

  • Constant cruise — snap to designer-set speed on mount; simple, predictable, good for tutorial rails.
  • Momentum carry — entry speed from jump or sprint carries onto the rail, clamped between min and max; rewards fast approaches.
  • Accel / decay — grind adds boost over time (skate fantasy) or friction slowly bleeds speed (balance challenge).

Curves launch players unless you fight physics

Centripetal acceleration on a curved spline at speed v and radius r is v²/r. If the rail cannot supply that lateral force, the character visually “drifts off” or the camera breaks. Mitigations:

  • Speed clamp per segment — metadata on spline spans caps v before tight corners.
  • Banked mesh — roll the character into turns so gravity assists centripetal force.
  • Invisible turn assist — apply mild lateral correction force while grinding; players feel skilled, designers keep flow.
  • Balance meter — player input counter-steers on curves; fail state drops them off instead of physics explosion.

Vertical grind segments need explicit policy: grind up slows by design (or requires pump input); grind down accelerates with a terminal velocity cap so players do not become uncontrollable missiles.

Chain grinds, gaps, and transfer magnets

Rooftop sequences chain four to eight rails with air gaps between them. Each link must answer:

  • Exit velocity at spline end — auto-launch impulse toward the next rail's mount cone, or neutral drop requiring player aim.
  • Air gap tolerance — transfer magnet pulls the character onto the next rail if they enter a volume within 1–2 m of the target pipe (generous for casual, disabled for expert routes).
  • Speed inheritance — does the next rail start at exit speed or reset to cruise speed?
  • Parallel rail choice — fork splines let players pick high-risk high-speed line vs safe wide ledge.

Harbor's chain failed because each rail reset to 6 m/s regardless of approach — the third gap required 9 m/s to clear. The refactor carried 85% of exit speed into the next mount and added transfer volumes with 1.5 m snap radius on story difficulty.

Camera, collision, and animation

Grinding at 15 m/s along a twisting spline disorients with a fixed camera. Common fixes:

  • Velocity-aligned chase cam — camera lag behind movement direction, not world +Z.
  • Look-ahead along spline — soft focus 3–5 m ahead on the path.
  • FOV widen on speed — subtle speed read without UI clutter.
  • Collision suppression — disable body-environment collision while grinding; re-enable one frame after dismount.
  • Procedural board pitch — align mesh roll to spline curvature; foot IK on ledge grinds.

Spark particle trails and metal-on-metal audio sell contact even when the authoritative collider is an invisible capsule snapped to the spline centerline.

Level authoring: splines, mount cones, and fail recovery

Each grind segment should expose editor metadata:

  • Spline ID and direction arrow for one-way enforcement.
  • Mount snap radius and coyote land duration (ms).
  • Speed min / max / cruise per span.
  • Curve speed cap on tight-radius handles.
  • Dismount impulse at spline end (vector + optional auto-jump).
  • Transfer target linking to the next rail's mount volume.
  • Fallback respawn — rewind to last stable grind point, not level reload.

Gizmo-draw mount cones in-editor so designers see forgiveness, not just art mesh width. Playtest with +50 ms and +100 ms input lag — grind mounts are frame-sensitive.

Harbor Rail District refactor: 71% fall-off to 14%

Week 1: heatmaps showed 82% of failures on rail 1 — mount collider matched visible pipe centerline only (0.15 m). Week 2: expanded snap capsule to 0.8 m radius with closest-point-on-spline projection. Week 3: added 200 ms coyote land after any airborne state near a tagged rail. Week 4: per-curve speed caps on the 4 m-radius helix segment; banked mesh roll 12 degrees. Week 5: transfer magnets on gaps 2 and 3 with speed carry. Fall-off 14%, survey “controls unfair” 38% → 8%.

Technique decision table

ApproachBest forWeak when
Spline rail grindSkate flow, rooftop chases, sustained speed routesTight interior spaces without camera room
Ledge cop grindArchitectural realism, handrails on stairsLong high-speed curves (kinks kill momentum)
Auto-mount cruise railsStory platformers, mobile one-button schemesSkill-based score attack modes
Wall run Vertical faces, cornering without railsLong horizontal speed highways
Zipline Long downhill transit, vista momentsPlayer-steered trick lines and forks
Conveyor belt Puzzle timing, forced direction in factoriesPlayer expression and optional routes

Common pitfalls

  • Mount collider matches art mesh exactly — players see a wide pipe, hitbox is a line.
  • No coyote land on grind — punishes jump-then-land rhythm that feels natural.
  • Speed reset every rail — chains feel like disconnected QTEs.
  • Uncapped speed into tight curves — physics or camera ejects the player unpredictably.
  • Manual mount only on story rails — casual players never discover the mechanic.
  • Dismount into void without warning — spline end with no telegraph or auto-jump.
  • Balance minigame on tutorial rails — story players want flow, not sim difficulty.
  • Grind input separate from jump with no buffer — same-frame conflicts on gamepad.

Engineer checklist

  • Tag splines and ledges; document direction, speed limits, and trick tier.
  • Implement fat mount snap with closest-point projection onto spline.
  • Add coyote land window after airborne state near grindables.
  • Choose constant cruise, momentum carry, or accel/decay per biome.
  • Cap speed on tight-radius curve spans; bank mesh or apply turn assist.
  • Carry exit speed across chain rails with tunable retention ratio.
  • Place transfer magnets on authored gaps for story difficulty.
  • Align camera to velocity; widen FOV slightly at high speed.
  • Suppress body collision during grind; foot IK on ledge variants.
  • Log fail reason (miss mount, balance slip, gap short) not just death.

Key takeaways

  • Grinding is a movement mode — mount forgiveness matters as much as dismount skill.
  • Spline centerline authority — art mesh width is cosmetic; snap volume is gameplay.
  • Harbor cut fall-offs 71% → 14% with fat cones, coyote land, and speed carry — not slower rails.
  • Curves need speed policy — uncapped v²/r launches players off the fantasy.
  • Chain transfers separate flowing rooftop chases from isolated grind QTEs.

Related reading