Game should produce game_state, with which Player can define it's course of action, serialize the action and submit to Game, which will apply if possible or return fitting errors,
Human players should be able to propose another play if an error is thrown,
AI plays will be checked for errors for double safety, but shouldn't be producing any errors to begin with,
If an AI produces an error, it'll lose its turn (this seems fitting for my goals of training ML models).
Game
should producegame_state
, with whichPlayer
can define it's course of action, serialize the action and submit toGame
, which will apply if possible or return fitting errors,