Skip to the content.

Marchline

Deterministic pathfinding and crowd navigation for Unity, from one character to thousands.

Marchline moves the characters in your game: an enemy chasing the player, guards on patrol, NPCs, companions, tower defense creeps, colonists and whole armies. They find their way, avoid each other and arrive sensibly, in a few milliseconds a frame.

Get it on the Unity Asset Store

Why Marchline

Sixty-second start

  1. Install the package.
  2. Empty GameObject → Add Component → Marchline → Nav World. It scans your obstacles on Play.
  3. On any character: Add Component → Marchline → Marchline Agent.
  4. Move it:
GetComponent<Marchline.MarchlineAgent>().MoveTo(target.position);

A whole group: navWorld.MoveGroup(selectedUnits, clickPoint). Add keepFormation: true to keep the shape.

Performance

Measured on an Apple M2 Max, release builds, from the repository bench suite: 10,000 actively repathing agents ≈ 0.5 ms/tick of planning; a full 10,000-agent simulation tick including separation, anticipatory steering and hard collision ≈ 1.8 ms; a 256×256 flow-field build ≈ 1.5 ms; 50,000 cached-follow agents ≈ 1.4 ms. Budgets are counted in deterministic work units, never wall-clock, so lockstep peers stay bit-identical.

Documentation

Version

These pages describe Marchline 2.0. It works in world units and seconds; 1.x worked in cells and ticks. If your copy is 1.x, see Upgrading from 1.x and the changelog.

Questions or studio licensing: support@marchline.dev