A modern implementation of the classic Pong game with network multiplayer support and SSL encryption. Players can compete against each other over a local network with secure communication.
- Real-time multiplayer gameplay
- SSL/TLS encrypted communication
- Classic Pong mechanics
- Score tracking
- Clean, minimalist graphics
- C++ compiler with C++17 support
- CMake (version 3.15 or higher)
- Raylib (version 3.0 or higher)
- OpenSSL development libraries
- SSL certificates (for secure communication)
sudo apt install cmake build-essential libraylib-dev libssl-dev
brew install cmake raylib openssl
mkdir build
cd build
cmake ..
make
make
Note: When using the Makefile, you can specify a custom Raylib path:
RAYLIB_PATH=/path/to/raylib make
- Generate SSL certificates (required for first-time setup):
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out certificate.pem -days 365 -nodes
- Start the game:
./pongdaddy
- Enter the other player's IP address when prompted
J
- Move paddle downK
- Move paddle upESC
- Exit game
pongdaddy/
├── src/
│ └── main.cpp
├── CMakeLists.txt
├── Makefile
├── certificate.pem
├── key.pem
└── README.md
- The game uses SSL/TLS encryption for secure communication between players
- Ensure your SSL certificates are properly configured
- Keep your private key secure and never share it
- SSL certificate paths are currently hardcoded and need to be updated manually
- Players must be on the same local network
- Only supports two players at a time
Feel free to open issues or submit pull requests with improvements!
This project is open source. Feel free to use and modify as needed.