# C-Based Multiplayer Game Server Coding a text-based battle game server in C running on a dynamic port via TCP. Clients are able to connect to an actively running battle game server using the Netcat networking utility and can engage in a Pokémon-esque turn-based battle game by logging into the server and matching with another client. Unix stream sockets are used within the program to allow for lossless client-server exchanges of information.
demo1 demo2
### Gameplay During login, clients are prompted to enter a username to play under. They are made to wait in a priority queue until a suitable opponent is found amongst a pool of active clients, upon which two players are matched against one another to play a battle game. In a battle, players take turns being the ‘active player’; the active player chooses from a menu of available commands by which to advance the game with. Players may choose to use basic attacks against their opponent, heal/shield themselves, attempt powermoves or simply chat with one another. A player wins once they drain their opponent of all of their hit points or if their opponent is disconnected from the server by any means, after which they re-enter the queue to be matched with the next available client to play another game.