pygomas
A python capture the flag Game Oriented Multiagent System.
Free software: GNU General Public License v3
Documentation: https://pygomas.readthedocs.io. (to be done)
Features
BDI agents to play a capture the flag game.
Based on the SPADE Multi-Agent System platform (https://spade-mas.readthedocs.io.)
Support for different game viewers (pygame, Unity, ncurses…)
Usage
To run a pygomas game manager:
$ pygomas manager --num-players 10 --match-time 120
The prepare a JSON file with your agent configuration:
{
"host": "127.0.0.1",
"manager": "cmanager",
"service": "cservice",
"axis": [
{
"rank": "BDISoldier",
"name": "soldier_axis1",
"password": "secret",
"amount": 5
}
],
"allied": [
{
"rank": "BDISoldier",
"name": "soldier_allied1",
"password": "secret",
"amount": 5
}
]
}
For more complex configuration files run:
$ pygomas help run
Then run your agents file:
$ pygomas run --game game.json
To view the game play in real time run:
$ pygomas render
To dump the game play to a file to be replayed in the future run:
$ pygomas dump --log my_log_file.log
To replay a game play run:
$ pygomas replay --game my_log_file.log
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
0.5.1 (2024-03-20)
Upgraded to spoade_bdi 0.3.1
Fixed missing files in last release
0.5.0 (2024-02-13)
Upgraded to SPADE 3.3.2
Upgraded to spade-bdi 0.3.0
File refactoring
Constants moved to Enums
0.4.7 (2022-05-09)
Added internal action .delete
0.4.6 (2022-04-05)
SPADE version upgraded
0.4.5 (2020-05-12)
Fixed minor bug when deregistering services.
0.4.4 (2020-04-13)
Upgraded spade and spade-bdi versions.
Fixed shot method with negative values.
0.4.3 (2020-03-11)
Fixed BDI initialization.
Fixed allied uniform color.
New pack sprites.
Default asl now generates packs at target_reached for axis troops
0.4.2 (2020-03-09)
Pygame render improvements.
Sprite size modified.
Help dialog.
Show/hide info (health bars and names).
0.4.1 (2020-03-06)
Hotfix: fixed bug with flag sprite.
0.4.0 (2020-03-06)
Improved create_control_points.
Fixed import bug.
New pygame render. With new sprites and animations.
0.3.7 (2020-03-05)
Added warning when goto tries to go to invalid coordinates.
Fixed dump and replay options.
Changed map_arena.
0.3.6 (2020-02-28)
Added new maps.
0.3.5 (2020-02-25)
Increased agents velocity.
Fixed render messaging initialization.
Fixed look ZeroDivisionError bug.
Improved pygomas render with tiles.
Improved pygomas render supporting invisible bases.
0.3.4 (2020-02-24)
Added add_custom_actions support.
Improved create_control_points custom action.
Updated spade_bdi requirement to 0.2.0.
Fixed maps path in render.
0.3.3 (2020-02-24)
Minor bug fix.
Upgraded reference to github repository.
0.3.2 (2020-02-19)
Added friendly fire.
Added a probability to miss a shot.
Fixed agent stop when there are pending messages to be sent.
Fixed max length bug in text render.
Moved ontology constants to a new file.
0.3.1 (2020-02-17)
Fixed adding new actions in inherited classes.
Improved logger.
Added verbosity parameter.
Improved jps and a* algorithms by avoiding being near walls.
0.3.0 (2020-02-10)
Migrated msg format to msgpack.
Black sttyle applied to code.
Major refactoring of code in renders.
0.2.3 (2019-07-10)
Upgrade default ASLs.
Agent name in JSON file is no longer required.
0.2.2 (2019-07-10)
Change all coordinate actions and beliefs to tuple of coordinates.
Update spade-bdi.
0.2.1 (2019-07-08)
Change the .create_control_points from action to function.
Change all coordinate actions and beliefs to tuple of coordinates.
0.2.0 (2019-07-05)
Added game replay support.
Added action to register generic services.
Added turn action for the troop agents.
Added a new map (map_08)
Minor bug fixes.
0.1.0 (2019-06-13)
First release on PyPI.
Metadata
Release files for pygomas 0.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pygomas-0.5.1.tar.gz | 8.0 MB | Without provenance | Details for pygomas-0.5.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pygomas-0.5.1-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details for pygomas-0.5.1-py2.py3-none-any.whl |
Total release size: 12.9 MB
Release files / pygomas-0.5.1.tar.gz
| Download URL | pygomas-0.5.1.tar.gz |
|---|---|
| Size | 8.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ecf7ed54059e26bed8a2e456ca474e0da3ac8896d99ee4c058bff4f987178f5
|
|
BLAKE2b-256 checksum How to use checksums |
ce30bdc7a4faa9562167007013c47064210cf336cb72e9d724562b270ebf10e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.18
|
Release files / pygomas-0.5.1-py2.py3-none-any.whl
| Download URL | pygomas-0.5.1-py2.py3-none-any.whl |
|---|---|
| Size | 4.9 MB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
d8bbd54e4e73ebe8fd92f0791b426997790768d3d774025b4a133f37c892e7c5
|
|
BLAKE2b-256 checksum How to use checksums |
921d6cdb6df19c973c6fe41844ae1ea5b5b8ff1805be75b8416eb58ea35ec688
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.18
|
Security for pygomas 0.5.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.