← Work Case study · University team project · 2026

Pandora: Rise of Toruk

An online multiplayer shoot 'em up, built from scratch on a game engine made with web technologies.

Setting
University team project — 2026
Role
Full-stack: client-side game mechanics and network sync
Stack
TypeScript, Node.js, Socket.io, HTML5 Canvas

Context

Build an online multiplayer video game from scratch, with a native game engine based on web technologies. I focused on client-side game mechanics and network synchronisation.

What I did

  • TypeScript and Node.js

    The whole JavaScript ecosystem, typed end to end.

  • 2D rendering

    HTML5 Canvas for drawing and collisions.

  • Real time

    Two-way communication with Socket.io (WebSockets), organised in lobbies.

Soft skills

  • Problem solving

    Handling state mismatches between what the client shows and what the server validates.

  • Planning ahead

    A modular, scene-based architecture so the game can grow easily.

  • Testing

    Unit tests to make rankings and lives management reliable.

Debrief

What I learned

The real challenge of real-time multiplayer is latency. Syncing ships, shots and enemies taught me client-server architecture for games: the server is the source of truth, the client interpolates. I learned a lot about asynchronous events and disconnections.

What I'd do differently

Instead of sending the full game state every frame, I'd send deltas: only the variables that changed. The bandwidth saved would be significant.