Inspiration
We wanted to take a simple game and transform it using Redis. We decided to use Pong, the highly popular game, to implement Redis, using Xcode and IntelliJ.
What it does
The app allows two players to control their own paddles and play against each other in a game of Pong. The controllers are on the players' iPhones, while the display for both players is on a laptop screen, running on a Java application. Every time the ball bounces on either the walls or paddles, the speed increases, gradually increasing the speed of the ball. If one player is unable to deflect the ball with their paddle, they lose the game.
How we built it
We created a Redis server from the laptop with the Java code. The iPhone app on each phone was able to access the server through the laptop's IP address. The Java code involved the actual animation and physics logic of the ball and both paddles. The Swift code would send the values of the change in y coordinates of the paddles as controlled by the players' iPhones. The Java code would then use these inputted values to constantly update the position of the paddle and create a multiplayer environment.
Challenges we ran into
The Redis server was challenging to access and implement in our code since we were relatively new to the backend technology. In addition, we ran into problems in constantly updating the paddles' y positions, for we had to introduce arrays that held the values. We had to then update the array in the Redis backend through the iOS apps and access the array through the Java application as well.
Accomplishments that we're proud of
We were able to successfully implement the Redis backend as a middleman between the iOS and Java applications to create a multiplayer Pong game.
What we learned
We learned how to combine various platforms, as well as a frontend and backend, to create an innovative, yet fun, multiplayer game.
What's next for Redis Pong
We hope that we can continue to develop Redis Pong with an enhanced user interface and a variety of game modes.


Log in or sign up for Devpost to join the conversation.