Table of Contents

FishMMO

A modular, open-source MMO framework built on Unity 6.3 LTS, FishNet, QUIC/WebTransport, and PostgreSQL.

Get Started Introduction API Reference GitHub

FishMMO is a complete multiplayer online game stack: a Unity client/server/shared codebase with a full prediction pipeline, transport-agnostic SRP-6a + TOTP authentication, a PostgreSQL data-access layer, QUIC-based networking, and the supporting web services, tooling, and bots needed to run and operate a persistent world. This site carries the hand-written guides for every part of it alongside generated API reference for every C# project, each page linked back to its source on GitHub.

Start Here

Guide What it covers
Introduction What FishMMO is, the server topology, and the key design decisions behind it.
Getting Started Prerequisites, database setup, building the native transport, and running the servers.
Connection Pipeline End-to-end flow from client launch through authentication to gameplay.
Server Initialization Order Complete boot sequence from MainBootstrap through to the running server.
Feature List Everything the framework currently supports.

Server Architecture

Three server roles, all launched from a single GameServer executable with a command-line argument (LOGIN, WORLD, or SCENE):

Role Responsibility
LoginServer Account creation, SRP-6a authentication, character select, TOTP 2FA.
WorldServer World state, character routing, scene server orchestration.
SceneServer Gameplay simulation per world scene — chat, combat, inventory, guilds.

Projects

Project Description Links
Unity Client, server, and shared game code — full prediction pipeline, modular character visuals, threat-based AI, and the ECA trigger system. Docs · API · Source
Auth Transport-agnostic .NET authentication library: SRP-6a, X25519 ECDH, token auth, and TOTP two-factor authentication. Docs · API · Source
Database PostgreSQL data-access layer built on Entity Framework Core and Npgsql. Docs · API · Source
Web Servers ASP.NET Core web services — IPFetch, Patcher, and the WebGL static server. Docs · API · Source
Shared Utility Pure C# utility library shared between the client and server projects. Docs · API · Source
Logger Flexible logging library with file, email, and console backends. Docs · API · Source
App Health Monitor Daemon that monitors, auto-restarts, and health-checks server processes. Docs · API · Source
Discord Bot Discord bot bridging in-game chat with a Discord guild. Docs · API · Source
Installer Cross-platform .NET console tool that automates dependency installation. Docs · API · Source
Patcher Client-side updater that applies versioned patch files. Docs · API · Source
Setup Configuration templates — nginx.conf, server .cfg files, appsettings.json, and deploy hooks. Docs · Source
Dependencies Centralized NuGet dependency aggregator that copies DLLs into Unity. Docs · Source
Web Transport C++ native library wrapping MsQuic (QUIC/HTTP3), P/Invoked from C# as a FishNet transport plugin. Docs · Source
CMS ASP.NET Core account-management web API — registration, password and 2FA management, and admin account actions. Scaffold: routes exist, handlers are still TODO stubs. Docs · API · Source

API Reference

Generated class and method documentation for every C# project: