Skip to content
BrandonRobare edited this page Jun 2, 2026 · 1 revision

netPong Wiki

netPong is a two-player networked Pong game for the terminal, written in C for Kent State CS4-53203 Systems Programming (Spring 2026). It began as the single-player Pong assignment and grew into a game that two processes play across a TCP socket.

Pages

  • Architecture: the module layout, the two-process topology, and the game state machine, with the reasoning behind each.
  • Network Protocol: the SPPBTP message set, the BALL packet layout, and how the two sides stay in sync. This is the heart of the project.
  • Build and Run: dependencies, building with make, and starting a host and a client.
  • Development Journey: the three phases from single-player baseline to networked game.
  • Roadmap: what is done and what I would build next.

Quick start

sudo apt-get install -y libncurses-dev
make
# terminal A
./pong 2001
# terminal B
./pong localhost 2001

The client serves the first ball. Move your paddle with k and j, and press Q to quit.

License

netPong is released under the MIT License, Copyright (c) 2026 Brandon Robare. The full text is in the LICENSE file at the repo root. The single-player Pong baseline came from the CS4-53203 course; the networking code is my own work.

Clone this wiki locally