bw logo

Chapter 1. What is a Movement Controller?

A movement controller is an object that controls the movement of a bot.

More specifically, it must sub-class the MovementController class defined in bigworld/src/server/tools/bots/movement_controller.[ch]pp, and therefore implement the virtual method nextStep(), which supplies position and orientation updates for that bot.

Additionally, you will need to implement a sub-class of MovementFactory (defined in the same source files as MovementController) to supply MovementController objects to bots, either at bot instantiation time, or on change of movement controller, via the virtual method create(). For details, see The create() method.

Note

The Patrol movement controller is recommended as a reference companion to this document.

It can be found in src/server/tools/bots/patrol_graph.[ch]pp.

This file also contains useful classes other than the movement controller and factory referenced in this document.