This is a Python-based base code developed for the RCSSServerMJ. It was created to simplify the onboarding process for new teams joining the RoboCup 3D Soccer Simulation League using the Mujoco Simulator.
This code was influenced by the early demonstrations from MagmaOffenburg team of a client for the RCSSServerMJ, and the FCPortugal base code for the SimSpark simulator.
## Installation
### Make sure the following are installed on your system:
- Python ≥ 3.13
- Any Python dependency manager can be used, but **either Poetry is recommended**.
- Official rules test: use the server with `--rules ssim`, and run agents with `-f fifa`. This matches the current `rcssservermj` default field for the SSIM rule book.
- Apollo custom 7v7: run agents with `-f sim3d_7vs7`. This profile is kept for Apollo's custom small-field setup and should not be treated as the official SSIM geometry baseline.
-`[host]` Server IP address (default: 'localhost')
-`[port]` Server port for agents (default: 60000)
### Binary building
To compete, a binary is needed. It provides a compact, portable version and protects the source code. To create a binary, just run the script ```build_binary.sh```
```bash
./build_binary.sh <team-name>
```
Using **Poetry**:
```bash
poetry run ./build_binary.sh <team-name>
```
Once binary generation is finished, the result will be inside the build folder, as ```<team-name>.tar.gz```