Crate rlbot[][src]

crates.io docs pipeline status

RLBot is a framework for creating offline Rocket League bots. This crate lets you write bots using a simple, safe interface that should feel comfortable to Rust developers.

Most types in this crate are exported directly from RLBot, so for anything not documented here, you'll need to use RLBot's docs as the authoritative reference.

There are two ways to use this crate:

  1. run_bot – This is the high-level interface. It plays a single match from start to finish. It expects the app to have been launched by the RLBot framework, and runs its own game loop under framework control.
  2. init – This is the low-level interface. You can use this to directly access the innards of RLBot for scripting, integration tests, or any other custom use-case.

Examples

This crate comes with a few examples to get you started.

Structs

BallInfo
BoostInfo
BoostPad
FieldInfo
GameInfo
GoalInfo
LiveDataPacket
MatchSettings
MutatorSettings
Packeteer

An iterator-like object that yields LiveDataPackets from the game as they occur.

Physics
PlayerConfiguration
PlayerInfo
PlayerInput
RLBot

The main interface to RLBot. All the RLBot calls that are available can be made through this struct.

Rotator
ScoreInfo
Touch
Vector3

Enums

BallBouncinessOption
BallMaxSpeedOption
BallSizeOption
BallTypeOption
BallWeightOption
BoostOption
BoostStrengthOption
DemolishOption
GameMap
GameMode
GameSpeedOption
GravityOption
MatchLength
MaxScore
OvertimeOption
QuickChatPreset
RLBotCoreStatus
RespawnTimeOption
RumbleOption
SeriesLengthOption

Traits

Bot

A bot that can run within the RLBot framework. Instances of Bot are used by the run_bot function.

Functions

init

Injects the RLBot core DLL into Rocket League, and initializes the interface DLL. This function might sleep for a bit while it waits for RLBot to fully initialize.

run_bot

Runs a bot under control of the RLBot framework.

Type Definitions

CallbackFunction