Formation System — Squad Movement & Tactical Formations


Command multiple squads in clean tactical formations — RTS drag-to-place preview, obstacle avoidance, 7 formations, and animated low-poly soldiers. Pure C#, no NavMesh required.


by SayGame


Price History +

Give any group of units real military discipline in a single line of code.


Formation System keeps squads locked in formation while they march, turn, and re-form around a moving heading — no NavMesh baking, no Rigidbody physics, no external packages. Just clean, readable C# transform movement.


MULTI-SQUAD RTS CONTROL

Run many squads at once, each with its own team colour. Click one to select it, then drag on the ground to place it — a live ghost footprint shows exactly where each unit will stand and which way it will face. Release and the squad marches over and forms up. A drop-in RtsFormationController + Squad you can build on.


OBSTACLE AVOIDANCE

Units steer around anything with a collider — buildings, props, terrain — funnelling through gaps instead of clipping through walls, then reform on the far side. No NavMesh required.


7 BUILT-IN FORMATIONS

Line, Column, Wedge, Vee, Box, Circle, Echelon. Switch at runtime — units re-assign to their nearest new slot with no crossing or teleporting.


ANIMATED SOLDIERS INCLUDED

A stylised low-poly soldier built from primitives, with a code-driven walk cycle — legs and arms swing, stride tied to speed. No imports, no rig, no Animator. Prefer your own characters? Drop your prefab into one field.


CLEAN & YOURS TO EXTEND

- Fully commented C# source, no DLLs

- Small, single-purpose classes: FormationManager, FormationUnit, ProceduralWalk, Squad

- Works with both the legacy Input Manager and the new Input System

- One-click demo scene: Tools > Formation System > Create Demo Scene


Built for the Built-in Render Pipeline. The core system has no shaders or materials, so it runs in any pipeline — convert the demo materials for URP/HDRP.


Perfect for RTS, tower defense, tactics, auto-battlers, and any game with groups that need to move as one.