study2025Completed

RoboRally multiplayer game

Multiplayer RoboRally game with real-time board mechanics.

study/2025

Overview

A digital recreation of the RoboRally board game, built as a group project for DTU course 02162 Software Engineering 2.

The system splits into a React and TypeScript client, a Spring Boot gateway handling auth, WebSockets, and a MySQL-backed lobby layer, and a separate Spring Boot host running the core game rules engine. It includes a Nix-based dev environment and deployment scripts for a Linux and nginx server.

It started as a DTU 02162 Software Engineering 2 group project (the Java and Spring Boot stack above). I then took my own copy and continued it solo down a different path: I ported the rules engine to TypeScript (movement, conveyors, lasers, the card and damage system, checkpoints, antenna priority, pits, and reboot/respawn), built a browser-authoritative host orchestrator and a board-definition loader that runs a full round on the real Starter Course, and wired a React client to a Vercel backend for playable multiplayer in the browser. The source-code link is that continued copy.

Highlights

  • Client, gateway, and host architecture separating UI, networking and auth, and the rules engine
  • Real-time multiplayer over WebSockets with a lobby system
  • JWT auth and MySQL persistence via Spring Security
  • Reproducible dev environment via flake.nix
  • Production deployment scripts and nginx config for a DTU compute server