Inspiration
Couch party games are better when everyone's playing on something chaotic. We wanted every phone to be both the controller and the screen, so the game feels physical. You don't press buttons, you tilt and shake.
Flopball is 3D ragdoll soccer for up to 4 players, each defending their own goal on one side of a square pitch.
- Join: one player creates a game and the others join with a 4-letter code.
- Controls: tilt your phone to wobble your floppy player around and shake it to kick.
- Brutal scoring: +1 for scoring and −1 every time the ball goes in your net, own goals included.
- Super kick: touch the ball enough times in a row and you charge one. The ball turns into a rocket and blows nearby players across the pitch.
Final 15 seconds: goals count double, the clock catches fire, the ball glows and the music speeds up.
Server: Node.js with Socket.io runs the game authoritatively, simulating Matter.js ragdoll physics at 60 Hz and sending positions to every phone.
Rendering: each phone draws the match in 3D with Three.js, from a camera behind its own goal.
Input: tilt comes from the phone's motion sensors (DeviceOrientation), and shakes are detected from DeviceMotion.
Audio: music and sound effects are generated live with the Web Audio API, so there are no audio files.
Lag: we used WebSocket-only connections and droppable position updates, and each phone smooths movement between server updates.
HTTPS: phones only allow motion sensors over HTTPS, so the server generates its own certificate.
Four viewpoints: each player's controls had to be converted between their rotated view and the shared pitch.
Feel: tuning the physics so players feel floppy but still controllable.
It's genuinely funny to play: ragdolls cartwheeling after a super kick, a GOOOAL screen that takes over everyone's phone, and a last-second panic for double points. All of it runs in a phone browser with no app to install.
Real-time multiplayer is mostly about hiding network delay. Small touches like screen shake, vibration and sound make a big difference to how fun a game feels. https://youtube.com/shorts/ZCxoJ56bvKU?si=NkiuHTFylfvOzfja
- Power-ups
- More arenas
- Team modes for 6–8 players
- A TV/laptop spectator screen
- Bots to fill empty spots
Log in or sign up for Devpost to join the conversation.