Skip to content

v1.0.0

Compare
Choose a tag to compare
@strakam strakam released this 14 Oct 20:50
7671eab

1.0.0 (2024-10-14)

🥳 Generals-Bots is out!

We are excited to announce that the initial development phase is now completed!

The goal of this project is to be the last attempt to create a bot development platform for the game generals.io. To achieve this goal, multiple design choices had to be made:

  • We chose python for everything code related. It is a home for the most advanced machine-learning tools out there (e.g. numpy, pytorch) and it is only natural to provide a codebase that is as compatible with them as possible.
  • The game integration follows Gymnasium and PettingZoo standards. These standards are simple, pythonic and are de-facto THE standards for current Reinforcement-Learning. This will enable development based on machine learning, a feat not possible with previous attempts to build such platform.
  • The project is and will be open-source. We want to bring the game to the RL community and the RL community to the game! Having this project open-sourced we believe will create a fertile ground for pushing the limits of what current bots and players are capable of.

🌷 Main features

  • 🚀 blazing-fast simulator: run thousands of steps per second with numpy-powered efficiency
  • 🤝 seamless integration: fully compatible with RL standards 🤸Gymnasium and 🦁PettingZoo
  • 🔧 effortless customization: easily tailor environments to your specific needs
  • 🔬 analysis tools: leverage features like interactive replays for deeper insights

🤔 Future development

  • ⚙️ Include new game modes
  • 📹 Export replays as videos or GIFs
  • 🕹️ Allow developers to play against their bots
  • ⚡ Introduce new agents with varying strategies as benchmarks

.. we will be happy if you participate!

❤️ Big thanks to

  • @jdujava for continuous feedback, bug-spotting, code improvements and implementation of the ExpanderAgent
  • @Puckoland for extensive refactoring and bringing more "code culture" to the project
  • @kvankova for adding CI/CD features and helping with establishing project development practices