def _run_game(black_player, white_player, referee, game_num): gamefile, logfile = get_log_file_name(black_player, white_player, game_num, referee) with GomokuGameHandler(black_player, white_player, log_file=logfile, game_file=gamefile, board_size=(7, 7)) as (black_round, white_round, board): for _ in range(11 * 11 // 2): try: white_round() # time.sleep(0.3) black_round() # time.sleep(0.3) except Win as e: log('[end game] %s' % e) # time.sleep(10) if e.winner == black_round.player: return (referee.palyerName(black_round.player), referee.palyerName(white_round.player), black_round.time_remaining, white_round.time_remaining) else: return (referee.palyerName(white_round.player), referee.palyerName(black_round.player), black_round.time_remaining, white_round.time_remaining) except Lose as e: log('[end game] %s' % e) # time.sleep(10) if e.loser == black_round.player: return (referee.palyerName(white_round.player), referee.palyerName(black_round.player), black_round.time_remaining, white_round.time_remaining) else: return (referee.palyerName(black_round.player), referee.palyerName(white_round.player), black_round.time_remaining, white_round.time_remaining)
for player1, player2 in schedule: player1_remainingTime = 0 player2_remainingTime = 0 player1 = globals()[player1].Ai player2 = globals()[player2].Ai h = Bo4Handler(player1, player2, board_size=(7, 7)) # change board_size to 13,13 for black_player, white_player in h.get_player_instance(): print(black_player.color) print(type(black_player), type(white_player)) with GomokuGameHandler(black_player, white_player, board_size=(7, 7)) as ( black_round, white_round, board): try: for _ in range(11 * 11 // 2): black_round() time.sleep(0.1) white_round() time.sleep(0.1) except Win as e: h.handle_win_lose(e) h.handle_time(black_round.get_run_time(),white_round.get_run_time()) log('[end game] %s' % e) except Lose as e: h.handle_win_lose(e) h.handle_time(black_round.get_run_time(),white_round.get_run_time())
from goboard import GomokuGameHandler from goboard.judge import Win, Lose from goboard.logger import log from ai.normal_ai import Ai as NormalAi from ai.easy_ai import Ai as EasyAi from ai.group_23 import Ai as Group23Ai import time black_player = NormalAi("black", board_size=(13, 13)) white_player = Group23Ai("white", board_size=(13, 13)) try: with GomokuGameHandler(black_player, white_player, board_size=(13, 13)) as (black_round, white_round, board): for _ in range(13 * 13 // 2): black_round() time.sleep(0.3) white_round() time.sleep(0.3) except Win as e: time.sleep(5) log('[end game] %s' % e) except Lose as e: time.sleep(5) log('[end game] %s' % e)
#from ai.hard_ai2 import Ai as HardAi import time # black_player = HardAi("black") <<<<<<< HEAD white_player = MCTsAi("white", board_size=(13, 13)) # black_player = FakeAi("black", board_size=(13, 13)) black_player = NormalAi("black", board_size=(13, 13)) ======= black_player = MCTsAi("black", board_size=(13, 13)) white_player = NormalAi("white", board_size=(13, 13)) >>>>>>> 6aeca25084a81bb0cbe3b878b7240f6e0de7d1a1 with GomokuGameHandler(black_player, white_player, board_size=(13, 13), game_file='ai1_vs_ai2.json', log_file='ai1_vs_ai2.txt') as (black_round, white_round, board): try: for _ in range(13 * 13 // 2): black_round() time.sleep(0.3) white_round() time.sleep(0.3) except Win as e: time.sleep(5) log('[end game] %s' % e) except Lose as e: time.sleep(5) log('[end game] %s' % e)