SplatIt Server

SplatIt is a from-scratch reimplementation of the online services that Splatoon for Wii U talked to. It speaks the Nintendo Network account protocol, the BOSS content delivery protocol and the NEX game protocols, so an original console or an emulator can sign in, add friends, matchmake and play again after the official servers went dark.

The whole thing is a single C++20 executable. One process can host every subsystem on a laptop, or a handful of processes can split the work across machines and share their live state through Redis. A React admin panel sits on top of a REST management API for day to day operation.

Scope and legality

This project reimplements protocols. It ships no Nintendo code and no game assets. Running it still requires a legitimate copy of the game, and on the emulator path it requires files dumped from a console you own. Check what your local law allows before deploying anything.

Where to start

Build it

Toolchain, vcpkg dependencies, the manual time zone download that Windows needs, and how to compile the admin panel.

Building from source
Understand it

How Nintendo’s services worked: the login chain, PRUDP, the Kerberos ticket scheme and NEX matchmaking.

How the services work
Deploy it

Docker images, single node and distributed Compose stacks, DNS, certificates and TLS between nodes.

Deployment
Run it

The admin panel, the management REST API, accounts, devices, Splatfests and map rotation.

Managing a server

Contents