Skip to main content

RLBotTraining

Customizable training for Rocket League bots of any language.

Tutorial: Click Here

Installation

  • Install Python 3.7 or later
  • pip install rlbottraining

Features at a glance

  • Uses RLBot config files to support bots in any programming language
  • Reproducable training setups with seeded randomness
  • Customizable Pass/Fail criteria
  • Importing of shots/playlists from BakkesMod training
  • Playlists of exercises
  • Automatic reloading of both bot and exercise code
  • Imports from bakkesmod training

Architecture

  • At the entry point (run_exercises.py) we decide which GraderExercise should be run and the config_paths define the RLBot setup to be used (which bots, which mode).
  • Each GraderExercise composes together the initial game state and how the bot is judged. The responsibility of judging the bot is handled by Graders
  • A Grader decides whether to continue the exercise or to Pass/Fail the exercise by looking at each tick. A Grader may optionally gather metrics (e.g. "time until goal") to help track bot performance as the bot is improved.
  • Separation of responsiblity: This repository is designed to make it nice to define new exercises whereas the training API of the RLBot framework provides the minimum features for any training to occur.

Tips for writing your own exercises:

  • Always subclass GraderExercise rather than Exercise. Using Graders will allows you to share termination conditions, safely store state across ticks and provide metrics.
  • Compose your Graders. For instance, by using CompoundGrader
  • Provide meaningful error messages in your Graders by subclassing Fail

Future direction

  • Provide an example of striker vs goalie
  • Put metrics (Grader.get_metrics()) into a database
  • A way of browsing past runs, including metrics
  • Reproducing failed exercises
  • Visualization of metrics
  • Continous integration of different bots

Metadata

Release files for rlbottraining 0.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rlbottraining 0.6.1
File Size Uploaded Provenance Actions
rlbottraining-0.6.1.tar.gz 46.4 kB Without provenance Details for rlbottraining-0.6.1.tar.gz

Release files / rlbottraining-0.6.1.tar.gz

Download URL rlbottraining-0.6.1.tar.gz
Size 46.4 kB
Tags Source
SHA-256 checksum
How to use checksums
35df2badb889a0105db9ca1b1464d3d4cae1fa1435a058fd6598ea056ef3b572
BLAKE2b-256 checksum
How to use checksums
efaa19127220185ee4fe20924cc84082e45a84d2ca6734ab864f7729b02b1439
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.3

Security for rlbottraining 0.6.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page