frondori-football
football-v0 : football 2D en duel pour Frondori.
Deux équipes de trois joueurs ; chaque agent contrôle une équipe entière.
Moteur physique Rust déterministe (rapier2d) : même seed et mêmes actions,
même match, pas pour pas.
Installation
pip install frondori-football # installe aussi frondori-engine
Wheel précompilée prévue sur PyPI (pas encore publiée). Depuis un clone, il faut une toolchain Rust :
python -m venv .venv && source .venv/bin/activate
pip install -e ../frondori-engine maturin
maturin develop
Utilisation
import frondori_engine
env = frondori_engine.make("football-v0") # découvert automatiquement
observations, infos = env.reset(seed=0)
while env.agents:
actions = {agent: env.action_space(agent).sample() for agent in env.agents}
observations, rewards, terminations, truncations, infos = env.step(actions)
Paramètres (les matchs de compétition utilisent toujours les valeurs par
défaut) : players_per_team (3), max_ticks (9000), max_score (aucun),
field_width, field_height, goal_width, player_max_speed,
kick_max_speed, kick_range...
Règles, observations et actions : docstring de frondori_football.env, et
en anglais sur le site (Documentation > Environments).
Organisation
engine/: le moteur, pur Rust, sans Python ni réseau (cargo test -p engine). Déterminisme total exigé : jamais derand::thread_rng()dans la simulation. Observations ET actions sont exprimées dans le repère de l'équipe (elle attaque toujours versx = +1) : cf.to_field_frame.src/lib.rs: les bindings PyO3 (module natiffrondori_football._football).python/frondori_football/: l'environnement PettingZoo.
Tester
cargo test --workspace # le moteur
maturin develop && python -m pytest
.cargo/config.toml ajoute des flags de lien macOS, sans lesquels la
feature extension-module de PyO3 casse cargo test --workspace sur macOS.
Un simple cargo build ne produit pas un module importable : passer par
maturin develop.
Publier une version
- Mettre à jour
versiondanspyproject.tomlet commiter. - Pousser un tag du même numéro :
git tag v0.1.0 && git push origin v0.1.0.
La CI (.github/workflows/ci.yml) teste, construit et publie sur PyPI ; elle
refuse un tag qui ne correspond pas à la version. Publication par Trusted
Publishing, sans token : à configurer une fois sur PyPI (projet frondori-football >
Publishing > trusted publisher GitHub : ce dépôt, workflow ci.yml,
environnement pypi).
frondori-engine doit être publié AVANT ce paquet (il en dépend, et la CI
l'installe depuis PyPI).
Licence : MIT.
Metadata
Release files for frondori-football 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| frondori_football-0.1.0.tar.gz | 38.9 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| frondori_football-0.1.0-cp310-abi3-win_amd64.whl | CPython 3.10 | abi3 | Windows x86-64 | Details |
| frondori_football-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| frondori_football-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | CPython 3.10 | abi3 | Linux glibc 2.17+ ARM64 | Details |
| frondori_football-0.1.0-cp310-abi3-macosx_11_0_arm64.whl | CPython 3.10 | abi3 | macOS 11.0+ ARM64 | Details |
| frondori_football-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl | CPython 3.10 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 3.3 MB
Release files / frondori_football-0.1.0.tar.gz
| Download URL | frondori_football-0.1.0.tar.gz |
|---|---|
| Size | 38.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7563394f632fbcbb3d5babf04ceb45527291be9f826b3aeb698b05630fddfb0c
|
|
BLAKE2b-256 checksum How to use checksums |
b62b10fa24cd156b7c2415f60deaee3b967b7d0db3902225ce8d9fe85ae3bcd3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / frondori_football-0.1.0-cp310-abi3-win_amd64.whl
| Download URL | frondori_football-0.1.0-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 520.0 kB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
95124f020f20619e9863cb83bcb0d465e1c7fc066d9d204e4628fc739f62bd34
|
|
BLAKE2b-256 checksum How to use checksums |
c7db1aafe4308684ddfb1421dec8f04b90b3708a05c110b8a4cb29c591e13767
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / frondori_football-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | frondori_football-0.1.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 724.5 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
7555079099e82261d2a10cfb011446f2b02f592c4ecb7118b114472c0a9b9b7d
|
|
BLAKE2b-256 checksum How to use checksums |
606f62538411720a0e947c02c2bbdf86f7fad9a78f61fd6f4ee160257bd679a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / frondori_football-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | frondori_football-0.1.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 704.1 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
cde8260eb5954a0a20b063d0a213f8d26d630115716731d625752d9bd8521289
|
|
BLAKE2b-256 checksum How to use checksums |
b8ee66e20a1b9a9d807cacd66eb04e5f6eb5a037b40ad0ca8e373954e0126b6d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / frondori_football-0.1.0-cp310-abi3-macosx_11_0_arm64.whl
| Download URL | frondori_football-0.1.0-cp310-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 634.7 kB |
| Tags | CPython 3.10 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
3f7d77b9761be45fdba74006b4be8b40ff389b600077cb99a0e097965d75ffbf
|
|
BLAKE2b-256 checksum How to use checksums |
778aa33b553785945e4ee9fc9db0d9d08be8cc32958ec564ec161bad3a26d438
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / frondori_football-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl
| Download URL | frondori_football-0.1.0-cp310-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 649.3 kB |
| Tags | CPython 3.10 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
a8e3ad35bac3f686484a6c5c0761d542cf1a428ef2fe9bb68bea492310d0b627
|
|
BLAKE2b-256 checksum How to use checksums |
b3b4254561b4f1349badd7569e41ac7b900c98d1354de43283bb22a307c233f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency log