oyeb / phoenix

The AI Challenge backend for Anokha 2017
MIT License
3 stars 4 forks source link

illegal winning #19

Closed vasanthaganeshk closed 7 years ago

vasanthaganeshk commented 7 years ago

if a bot gains a bigger score and there are only two bots remaining on the map, if the bot with bigger score raises some kind of exception, that particular bot's execution stops. Then when there are less than two bots on map, the game execution stops. The bot with higher score just wins it, the bot with higher score can win with a cheat.

vasanthaganeshk commented 7 years ago

we should write to the log file that the bot was disqualified, so that the other bot can take the win.

oyeb commented 7 years ago

The log file is difficult to parse, the gameloop can detect this case right? In unrelated work, I've removed score_log, the score JSON/dict can be just returned from gameloop(). While runnning locally, gameloop is essentially the only function invoked. But the server does not invoke gameloop() as __main__ I'm calling the dict returned by gameloop as summary. It can contain basic trivia about the game. This also makes it easy for @kogul to show a description of the game (without having to parse the whole log.

vasanthaganeshk commented 7 years ago

This bug does not exist any more, because we decided yesterday that we'll leave the bot be on the map. So now there can even be a single live bot and multiple dead bots, I've fixed this on branch issue-21