Nextendo Network NEX game server for Splatoon 2. Built on nextendo-nex.
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Kazuals 91f8d642e7 Cap and negative-cache NSA account lookups; require nextendo-nex v0.1.4
resolveNSAtoPID only memoised successful lookups, so every login attempt
carrying an unknown NSA id triggered a fresh outbound call to the shared
account service: a flood of bogus ids on the unauthenticated auth port turned
into amplification against the service every game depends on. Failures are now
negative-cached with a short TTL and concurrent outbound calls are capped
(fail-closed past the cap).

Requires nextendo-nex v0.1.4, which stops the secure endpoint from handing a
ticketless CONNECT an identity it never proved.
2026-08-11 20:32:44 +02:00
.gitignore Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00
dashboard.go Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00
example.env splatoon-2: initial source release 2026-07-21 23:38:53 +02:00
gates.go Cap and negative-cache NSA account lookups; require nextendo-nex v0.1.4 2026-08-11 20:32:44 +02:00
go.mod Cap and negative-cache NSA account lookups; require nextendo-nex v0.1.4 2026-08-11 20:32:44 +02:00
go.sum Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00
init_replay.go splatoon-2: initial source release 2026-07-21 23:38:53 +02:00
LICENSE.md splatoon-2: initial source release 2026-07-21 23:38:53 +02:00
main.go Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00
presence.go Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00
README.md Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00
utility.go Update to nextendo-nex v0.1.3; matchmaking/NAT + dashboard sync 2026-08-10 20:46:13 +02:00

splatoon-2

Nextendo Network game server for Splatoon 2.

License: PolyForm Shield 1.0.0 Go 1.23+


What is this?

The NEX game server for Splatoon 2 on Nextendo Network. It handles authentication, matchmaking, presence, and the Splatfest-related Ranking/Utility methods the game needs to bring its online mode up.

It is built on the nextendo-nex core.

DataStore is a stub. Splatoon 2 calls a number of DataStore (0x73) methods during the online bring-up. This server currently answers them with an empty success so the game proceeds; a full server-side DataStore implementation is not yet part of this tree. As a result, matchmaking is not complete out of the box — the DataStore responses are the remaining piece to implement.

Running

cp example.env .env    # then edit .env
go run .

Configuration is entirely through environment variables — see example.env. No secrets are baked into the source.

What this is not

This server ships no Nintendo code, keys, measured data, or copyrighted assets. It is an independent reimplementation for use with a community-run replacement service, not affiliated with, endorsed by, or associated with Nintendo. The NEX access key it uses is a well-known per-title value derivable from the game itself, not a secret.

License

Released under the PolyForm Shield License 1.0.0 — source-available: read, use, modify, and self-host, but do not use it to provide a product that competes with Nextendo Network.