arenarium / battleground_core

A platform for automated multi-player online games.
http://www.arenarium.com/
MIT License
4 stars 1 forks source link

reset in game runner #106

Open vincentropy opened 6 years ago

vincentropy commented 6 years ago

why is

self.game_engine.reset()

commented out in game_runner.py?

phylyc commented 6 years ago

Because an arena game can be launched with e.g. specified hit points for gladiators, which are not stored as initial conditions. Resetting the game on initialisation sets the hit points to max again. This is the current thing where I would see a danger in not getting the expected behaviour.

We could think about storing initial conditions and then resetting to those.

vincentropy commented 6 years ago

I was thinking about the life-cycle of a game-engine. Currently we play sets of games (this matters because a clever agent might change strategies if it is know that he will play the same other players multiple times).

The question is what happens to the game engine between games in one set.

option 1 is to call the reset function between games (this way the game engine can determine what information is retained)

option 2 is to just recreate the game engine class between games, this way, there is guaranteed to be no memory between games. (at least not in the game engine).

thoughts?