This game is a multiplayer network game based on Client-Server architecture using RakNet tool. The project was developed in C++, completely by myself as a part of the Game Development program taken at Sheridan College, Oakville.
Platform: PC
#RakNet #C++ #Networking #Multiplayer #VisualStudio

Check out the Project:

Game Overview

This game is a virtual adaptation of the board game “Bingo” which takes place between a single server terminal and multiple client terminals. Once the connection is established, on beginning the game, the server sends a unique 9×9 board to all connected clients. Next, it sends random number cards to all clients (same number card sent to all clients per turn). If the client has that number on its board, it will erase it off the board (replacing it with 0). Once a client gets all numbers erased off its board, they say “Bingo!” which informs the server to end the game.

Game Modules

The game consists of the following modules:

  • RakNetController: RakNetController class is responsible for the entire networking and communication occuring between server and client(s). It contains a list which stores all clients as GUIDs. It also contains necessary methods to Send/Receive data.
  • Server side: Server side class represents the server part of this game. It contains a pointer to the RakNetController class as well as other methods for sending game boards to clients and numbers as well.
  • Client side: Client side class represents the client end of this game. It contains a pointer to RakNetController as well as other methods for changing its board, declaring itself as Winner and displaying the board.
  • Random Number Generator: This is an external class imported which provides methods to generate random numbers. It is not written by me.