Releases: martinballa/PyTAG
Releases · martinballa/PyTAG
Release list
PyTAG v0.2
What's new in v0.2
Breaking changes
- Java 21 minimum — the new
TAG.jarrequires Java 21+ (up from Java 11). - Gymnasium 1.0 — updated to the stable Gymnasium API (
VectorWrapper, keyword-onlyreset(seed, options),FrameStackObservation).
New features
- Single fat JAR — replaced
ModernBoardGame.jar+ ~200 dependency JARs with a singleTAG.jar. Runpython jar_setup.pyto download it. - Self-play support — new
SelfPlayPyTAGenvironment,TAGSelfPlayGYmwrapper,RecordSelfPlayEpStats, andppo-selfplay.pybaseline. - PowerGrid added as a supported game (3–6 players). ExplodingKittens removed.
- Generalised agent creation via
PlayerFactory.createPlayer()— any TAG agent string (e.g."random","osla","mcts") is now supported. - JAVA_HOME-aware JVM detection —
JAVA_HOMEis respected when starting the JVM, fixingUnsupportedClassVersionErroron Colab. - Action masking fix — invalid actions now masked to
torch.finfo(dtype).mininstead of-1e8.
Installation
git clone https://github.com/martinballa/PyTAG
cd PyTAG
pip install -e .
python jar_setup.py # downloads TAG.jar (~352 MB)Citing
If you use PyTAG, please cite the IEEE Transactions on Games 2024 paper.
PyTAG 0.1
Not fully approved release - for testing purposes