Exemple #1
0
 def post():
     """Play a single step in the game specified by the gameId parameter"""
     args = request.get_json()
     game_id = args["gameId"]
     game = GameRunner().get_game(game_id)
     if game:
         game.play_single_step()
     else:
         return "Game not found", 204
Exemple #2
0
 def get(self):
     """Get the state (as JSON) of the game identified by the gameId parameter"""
     args = request.args
     game_id = args["gameId"]
     game = GameRunner().get_game(game_id)
     if game:
         return self.game_to_json(game)
     return "Game not found", 204
Exemple #3
0
 def get():
     """Start a new game and return the gameId"""
     game_runner = GameRunner()
     game_id, _ = game_runner.start_game()
     return game_id
Exemple #4
0

def get_winner(g):
    player_0 = g.players[0]
    player_1 = g.players[1]
    if player_0.score > player_1.score:
        return player_0, player_0.score - player_1.score
    return player_1, player_0.score - player_1.score


def train_ai(penalty):
    ai_trainer.main(penalty)


if __name__ == '__main__':
    game_runner = GameRunner()
    data = []
    for penalty in range(0, -30, -3):
        train_ai(penalty)
        num_broken = 0
        num_games = 100
        scores = []
        game_id, game = game_runner.start_game()
        for i in range(num_games):
            print("Playing game {}".format(i + 1))
            while not game.is_finished():
                game.play_single_step()
            if game.player.broken:
                num_broken += 1
            else:
                scores.append(game.player.score)
 def get():
     """Get a list of IDs for all running games."""
     game_runner = GameRunner()
     return game_runner.get_running_games()