Walking Into It by Andrew Schultz
Ah the Python one! Ok I frequently play the original releases, but I know this had some problems re Python installations. So just downloading the fixed version of the game to try. For the record I am running Python 2.7.16 on my Mac running MacOS 10.15.5. To run the game I have also whacked up the font size in the Terminal window I am using, to give a closer approximation to the very large fonts I prefer to play with in both web and parser games.
In the game you end up playing Tic Tac Toe (or Noughts and Crosses as we call it in the UK) with a young kid. The aim of the game is to try to help them learn the game, and win in a way that’s satisfying. An obvious loss doesn’t make them happy, but the satisfaction of winning in a new or unexpected way does.
Obviously how much or how effectively you can do this can depend on your skills with the game. Mine are pretty low! But I managed to play quite a lot of games, which gave the other player good outcomes, which they were pleased with. It was also nice when the other kids gathered around, wowed by how well the youngster was doing. These emotional responses meant that what in many ways is quite a mechanical implementation of Tic Tac Toe took on more emotional resonance, and became a more satisfying piece of interactive fiction.
However I ran into a big problem when I retried the game with descriptions on for screen readers (selecting the F option). When I then tried to play the centre square first (position 5) this happened:
A new game. Who moves first? 1 = you, 2 = Ollie.1
Nobody has moved yet.
Which square? 1 is upper left, 2 is upper side, to 9 which is lower right.5
Traceback (most recent call last):
File “wii.py”, line 1020, in
my_games.next_move()
File “wii.py”, line 735, in next_move
self.player_move()
File “wii.py”, line 705, in player_move
self.place_move(x)
File “wii.py”, line 727, in place_move
self.show_board()
File “wii.py”, line 491, in show_board
self.describe_squares(1)
File “wii.py”, line 476, in describe_squares
print("{} took {}, square {}.".format(player_string, ', '.join(temp_ary), x + starting_number))
NameError: global name ‘starting_number’ is not defined
And the game crashed out. I looked briefly at the Python source code to try to see the problem, but it’s not obvious to me. But maybe Andrew can fix it. It doesn’t happen if I select N for descriptions, but always happens if I select Y or F. This was me playing the November 4th fixed version of the game.
So a rather unfortunate outcome, but there was much that I enjoyed. I don’t think I’m as good or as enthusiastic a Noughts and Crosses player to enjoy this more though. I was pleased to manage to get an ending where I quit, but it said I thought I’d done enough to make the other player happy, which was a nice outcome. Probably more by accident than design though!