Distributed SMB: a Co-Op Online Platform Game

   page       attach   
Filippo Badioli  •  Mattia Flamigni  •  Ludovico Nollino
abstract

This report presents Distributed SMB, a cooperative real-time 2D platform game inspired by Super Mario Bros, developed to explore the fundamental principles of Distributed Systems within an interactive environment. Up to four players, each on their own machine connected to a local network, take part in the same session and share a single game world, cooperating to complete a level. The game mechanics are intentionally kept simple, so that the difficulty of the project lies in the coordination among the nodes rather than in the game itself. From an architectural perspective, the system adopts a hybrid peer-to-peer model with a dynamically assigned authority. One node acts as the authoritative owner of the shared state and resolves the actions that affect it, while the other nodes anticipate the effect of their own actions locally in order to preserve responsiveness. In CAP terms this design is AP-oriented: it favours availability and low latency over immediate consistency, and relies on the convergence of the replicas over time. The project places a strong emphasis on fault tolerance and availability. Since the authority resides on one of the participating machines, it constitutes a single point of failure: the system therefore detects its failure, elects a successor among the surviving nodes without resorting to any central coordinator, and allows the session to continue, while a node that has failed can later rejoin the session in progress. 1 This report describes the requirements of the system, the architectural decisions and the consistency model adopted, the implementation and deployment choices, the validation carried out, and the limitations that remain open.

outcomes