An Uber-engineered PONG clone

games, pong
pip install uberpong==0.1.0a1


Uber Pong!

An Uber-engineered and somewhat overthought multiplayer implementation of a classic game.

NOTE: Uber Pong! is currently on its first alpha state, meaning that everything is subject to change!



  • Painless installation
  • Client-server paradigm, meaning it comes with multiplayer support out of the box
  • Powered by pymunk physics
  • Powered by pyglet for almost everything else
  • Fun and simple


There are a bunch of ways you can install uberpong:

The pip way

pip3 install uberpong
uberpong # Create a session
uberpong -H # Connect to someone else's session

###The git way First of all, you must clone the repo ...

git clone https://github.com/axltxl/uberpong.git
cd uberpong

From this point you can run it standalone ...

pip3 install -r requirements.txt
./uberpong.sh # Create a session
./uberpong.sh -H # Connect to someone else's session

###BTW: you need an opponent to play By default, uberpong runs in server mode, if your opponent wishes to join an existing uberpong session, he/she must do in client mode, like so:

uberpong -H <server ip address>


uberpong [-H <ip_address> | --host <ip_address>] [--port <port> | -p <port>] [--lz4 | -z]
uberpong -h | --help
uberpong --version

    -z --lz4                    Use LZ4 compression algorithm
    -H --host <ip_address>      Server to connect to
    -p --port <port>            Port to connect to [default: 54212]
    -h --help                   Show this screen.
    --version                   Show version.


  • Dead-simple execution of the game
  • Connect to an existing session
uberpong -H <host ip address>
  • Create a session using a different port number for listening
uberpong -p 54201
  • Connect to a session listening on an arbitrary port number
uberpong -H <host ip address> -p 54201
  • Activate lz4 compression for network traffic on you uberpong session
uberpong --lz4
  • Connect to a session using lz4 network traffic compression
uberpong -H <host ip address> --lz4

##How to play

  • Press F12 to exit the game at any point
  • In-Game: Press W to move your paddle up
  • In-Game: Press S to move your paddle down

##Contributing There are many ways in which you can contribute to uberpong. Code patches are just one thing amongst others that you can submit to help the project. We also welcome feedback, bug reports, feature requests, documentation improvements, advertisement and testing.

##Third party assets

##Licensing Please read the LICENSE file bundled with this distribution