The walkable graph, built on first use. Building it takes a moment on a big map
Creates a navigator
The bot to steer
The game to navigate
The map's collision geometry
Plans a route to a position and starts walking it
Where to end up
How to get there
Why the bot is planning; only affects what BotEvents.pathPlan reports
Whether a route was found; a failure also emits BotEvents.pathError
Whether the graph has already been built, so that touching Pathfinder.graph is free
Abandons the current route and lets go of the controls
Steers one tick along the active route. Called for you by the game's update loop
Builds the walkable graph now, so that the first Pathfinder.goTo does not have to
The graph
Plans routes across a PathGraph and steers the bot along them.
Steering happens one tick at a time and only ever writes control keys and yaw, exactly as if something were at the keyboard - so while a route is active the navigator owns Game.state's yaw, and a LookAtDispatch will fight it for the mouse. Pathfinder.stop hands it back.