BerryBots programs are written in Lua. If you're new to Lua, check out the Lua 5.1 Manual, the Tutorial Directory at the Lua-users wiki, or learn by example from the BerryBots sample programs.
To create a ship or stage, your Lua program must implement the functions of the ShipControl or StageControl interface. These functions are called by BerryBots before, during, and after the match. The parameters passed to them allow your program to learn about and control the gameplay elements in BerryBots.
The Game Runner API lets you write code to execute BerryBots matches, process the results, and (optionally) save replays. To write a Game Runner, your Lua program must implement the functions of the RunnerControl interface. The parameters passed to your program allow it to specify input parameters, prompt a user for input, queue BerryBots matches, process match results, save replays, and read and write files to disk.
For more information about programming for BerryBots, or to post about your own creations, visit the BerryBots Wiki.
Ship / Stage Modules
Admin | Provides administrative superpowers to a stage control program. |
DebugGfx | Provides graphical debugging for ships and stages. |
Sensors | A ship's sensors, which provide information about events that occurred on the previous tick. |
Ship | A ship controlled by a user written program. |
ShipControl | The API to be implemented by a ship control program. |
StageBuilder | Used to configure stage properties before the game starts. |
StageControl | The API to be implemented by a stage control program. |
StageSensors | The stage's sensors, which provide information about all events that occurred this tick. |
World | The game world. |
Game Runner Modules
MatchRunner | Executes BerryBots matches and returns the results. |
RunnerControl | The API to be implemented by a Game Runner control program. |
RunnerFiles | A file access object used by a Game Runner program to read and write data files or programs to disk. |
RunnerForm | A form used by a Game Runner program to configure parameters. |