I implemented the mobile interface and the game back-end

Snake

At Code on Canvas, we built a multiplayer Snake game - suitable for a large number of concurrent players in a public setting.

I implemented the mobile interface and the game back-end

I implemented the mobile interface and the game back-end

Just Add WiFi

Just Add WiFi

For an even better on-boarding experience, we use a captive portal (like the ones you see when logging on to WiFi hotspots at cafés and airpots) to serve the game. All that a user needs to do is connect to a specific wifi network, which is also specified on the game screen. There's no website to visit or app to download.

Fun Competitive Elements

Fun Competitive Elements

Players can intentionally block others to stymie their progress. A leaderboard displays high scores throughout the session, and snakes playfully fall apart as square blocks when killed.

Join and Play

Join and Play

A simple intuitive control system ensures that players can keep their eyes on the game, not their phones. Finger movements are sent as swipes - a single motion across the screen can be comprised of multiple swipes. 

The control interface on the phone is also the same colour as the player colour in the game, to help the user situate themselves in the game.

Using web sockets has other advantages too. The low latency makes it especially well-suited for real-time multi-player games. We further encode the messages to binary to further reduce the packet sizes for transmission.

The number of players is limited by the supported number of concurrent connections on the router, and the size of the game canvas. A queue system adds additional players to a waitlist, and they are automatically joined as other players quit. In a public setting, this keeps the action fluid and fast-paced.