Python Implementation of Go
As a team of four students, we developed a playable Go game, including game logic, a GUI with custom music and SFX, a terminal-based interface, a simple game-playing strategy, and tests in Python using pygame and pytest libraries.
Source code available by request
While more of a coding exercise than a viable game mode, our Go game supports any number of concurrent players. The GUI start menu displays the selected number of players visually by writing “Go” in the colors assigned to each player.
I focused on developing the board, stone, and player classes, programming the game logic, and designed and implemented the GUI using pygame.
The game alternates between black and white moves, and each player can see their anticipated move before clicking with a hover effect. Stones can be captured, and when the game ends the engine counts the points for each player. The game engine also enforces ko or superko rules depending on the user’s selection on launch.
I wrote two short songs that play in the background of our game! You can listen to them here: