Skip to main content

A Python 'capture the flag' Game Oriented Multiagent System.

Project description

pygomas

https://img.shields.io/pypi/v/pygomas.svg https://img.shields.io/travis/sfp932705/pygomas.svg Documentation Status

A python capture the flag Game Oriented Multiagent System.

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.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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygomas-0.3.1.tar.gz (654.4 kB view details)

Uploaded Source

Built Distribution

pygomas-0.3.1-py2.py3-none-any.whl (495.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pygomas-0.3.1.tar.gz.

File metadata

  • Download URL: pygomas-0.3.1.tar.gz
  • Upload date:
  • Size: 654.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for pygomas-0.3.1.tar.gz
Algorithm Hash digest
SHA256 eb9b60300eb2e0f5b2a9c6a980625cb836b850ce2034eb7ce34ca588f4335d23
MD5 b6fbd80f81277e12a29f1c67becab51c
BLAKE2b-256 34c3bbcd7f4e89a2cf840998fda526fb0ef0257e91399fb220041c0265085c99

See more details on using hashes here.

File details

Details for the file pygomas-0.3.1-py2.py3-none-any.whl.

File metadata

  • Download URL: pygomas-0.3.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 495.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for pygomas-0.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 18500c723352dab149901df088f9163b05d89258debdf32135305f331228f08c
MD5 29de988a1495d2f9c8be4334c188be7d
BLAKE2b-256 bd2f79f47783f14b6c2956b55b42c616a3a9d3334f62c803bc951d29a514aafa

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page