Inspiration

I wanted to create something that really captures the energy of Cloud9's competitive spirit but in a way that works perfectly for event booths. We imagined players crowded around, cheering, trying to outscore each other, and wanted the game to feel alive and fun in that environment.

How We Built It

Most of our development happened in JetBrains WebStorm and PyCharm, which made switching between front-end and server code much smoother. Junie AI was a huge help, especially for optimizing collision detection and handling WebSocket messages for multiplayer. The game runs on a Python WebSocket server to keep everyone in sync in real time, while HTML5 Canvas handles visuals at a smooth 60 frames per second. Seeing everything run without lag for the first time was really satisfying.

Challenges We Ran Into

Keeping multiplayer smooth was trickier than expected. We had to find the right balance between server authority and client prediction so that movement and shooting felt responsive without breaking when multiple players were on screen. Collision detection also needed careful tuning, especially when everyone started shooting at the same time, or it could get messy fast.

Accomplishments We Are Proud Of

Even with multiple players and effects on screen, the game maintains 60 frames per second. We also built a full spectator system so event organizers can keep crowds engaged, which ended up being more fun than we imagined. Junie AI caught twelve potential bugs before they ever made it into production, saving us a lot of late-night troubleshooting.

What We Learned

Working with WebSockets taught us a lot about real-time networking and multiplayer logic. JetBrains’ debugging tools turned out to be incredibly helpful for tracking down tricky multiplayer issues. Junie’s suggestions made our code cleaner, faster, and more reliable.

What’s Next for Cloud9 Champions Arena

The ultimate goal is to see this running live at Cloud9 events, with players and fans fully immersed in the action. We are already brainstorming ways to make it even more interactive and exciting for future events.

Built With

Share this project:

Updates