This game was the final project for my freshman programming sequence. The goal for the assignment was to make a multi-player, networked board game using a client and a server. This assignment combined some of the important things that we had learned in the programming sequence such as networking and user interfaces. The game is called Breakthrough and is somewhat similar to checkers, but the goal is only to get one of your pieces to the other side of the board, while stopping the other player from doing the same.
I implemented a GUI, game logic and networking for both the client and server applications. I also added some cool extra features, like the ability to choose a theme for your game pieces and the ability to trace back the path of all of the game pieces after the game was over.
One of the goals for this project was for the entire class to use the same network protocol. This would make it possible for any student to use their client to connect to any other student’s server and vice versa. I ended up designing the protocol that dictates the client-server interactions, which was successfully used by my entire programming class.
