Delwddrylliwr / cartolan

Simulation and networked virtual play of the Cartolan boardgame, playtesting and exploring whether there are degenerate strategies as well as providing a basis for novel ANN testing.
0 stars 0 forks source link

Bug - move map contains a None for some coordinates #213

Open Delwddrylliwr opened 3 years ago

Delwddrylliwr commented 3 years ago

Exception in thread Thread-4: Traceback (most recent call last): File "/usr/lib64/python3.6/threading.py", line 916, in _bootstrap_inner self.run() File "/usr/lib64/python3.6/threading.py", line 864, in run self._target(*self._args, **self._kwargs) File "web_server.py", line 372, in join_game self.game.game_over = self.game.play_round() File "/home/x/cartolan/game.py", line 193, in play_round player.continue_turn(adventurer) File "/home/x/cartolan/players_human.py", line 327, in continue_turn self.continue_move(adventurer) File "/home/x/cartolan/players_human.py", line 270, in continue_move moved = adventurer.move(move_map[move_coords[0]].get(move_coords[1])) File "/home/x/cartolan/beginner.py", line 218, in move if not self.current_tile.compass_edge_water(compass_point): #land movement File "/home/x/cartolan/base.py", line 314, in compass_edge_water if compass_point.lower() in ["north", "n"]: AttributeError: 'NoneType' object has no attribute 'lower'

Delwddrylliwr commented 3 years ago

Couldn't diagnose from the code, and it seems to be a rare error.

Temporary hacky fix through reverting to waiting in place if a valid compass_point isn't provided.

Will see if it is noticeable in play.