Skip to content

Port: Ugh-Guys RTS

capstone lesson Advanced ⏱ 20 min vgai 0.1.0

Prerequisites: Capstone — RTS · Manual — Navigation & pathfinding

What you'll learn

  • Run a ported third-party game (atxgreene/Ugh-Guys) on vgai
  • See units standing on a runtime-built recast navmesh
  • Understand how the port reuses the shipped RTSUnit + RTSDirector capability

What you'll build: An isometric squad game ported from Ugh-Guys, reusing vgai's RTS navmesh crowd.

Walkthrough — Port: Ugh-Guys RTS · generated by site/media/lessons/ports-batch.lesson.ts (5 steps)

ugh-guys (packages/editor/template/src/examples/ugh-guys/) is a port of atxgreene/Ugh-Guys (“Shadow of the Watchers”). It reuses vgai’s shipped RTS capability directly: the RTSUnit (a navmesh crowd agent) and RTSDirector (which builds the recast navmesh from navRole-tagged meshes and gives each unit an agent), plus an orthographic isometric camera.

  1. Open the ugh-guys scene. Load examples/scenes/ugh-guys.vscn.json.

    The ugh-guys scene loaded
    The ported isometric scene.
  2. Enter play mode — the director builds the navmesh. On play, the RTSDirector bakes the recast navmesh from the tagged meshes and assigns each unit a crowd agent.

    The game running after navmesh build
    The director builds the navmesh at runtime.
  3. Pan across the squad with the camera. Use the camera controls to look over the units.

    Panning across the squad
    The isometric squad view.
  4. Watch the units stand on the navmesh. Each unit is a crowd agent positioned on the baked navmesh.

    Units standing on the navmesh
    Units as crowd agents on the navmesh.
  5. Stop play mode. Press Stop (or Escape).

Like the other ports, Ugh-Guys reuses first-party capability — the same RTSUnit / RTSDirector the RTS capstone uses — rather than re-implementing pathfinding. The port is mostly mapping the original’s content and tags onto vgai’s model.

Recap

New functionality

  • Ran a ported third-party RTS on vgai
  • Saw units on a runtime-built navmesh

New concepts & skills

  • Ports reuse shipped capability (RTSUnit + RTSDirector)
  • The director builds the recast navmesh + crowd at runtime
  • Units are crowd agents

Next lesson → Port: SimCity