Skip to main content

ProjectZ-CrossSDK Documentation

Cross-backend SDK for a Unity mobile game. The client calls one set of Manager APIs; underneath, requests route to either Unity Gaming Services (UGS) or Nakama, switchable at runtime with automatic fallback.

The docs are split by audience โ€” pick your track:

๐ŸŽฎ Client Guideโ€‹

For the UI / game-studio team. You only present data: inject a Manager, subscribe to its reactive state, call methods, render DTOs. You never touch the SDK facade, a provider, or the raw API.

โ†’ Start here: Client โ€” Overview ยท Getting Started ยท Manager reference

๐Ÿ›  SDK Team Guideโ€‹

For CrossSDK team members who build the game module (data + logic) for other games. You write Manager โ†’ UseCase โ†’ Cache โ†’ service, wire up VContainer, package the DLLs, and version them.

โ†’ Start here: SDK Team โ€” Overview ยท Architecture ยท Add a Manager ยท New game module


The three roles
  1. CrossSDK core (3 DLLs, game-agnostic) โ€” reused by every game.
  2. Per-game data+logic (<Game>.Backend + <Game>.Models, 2 DLLs) โ€” the CrossSDK team builds this for each game.
  3. Client/UI โ€” the game studio, presents data only, through the Manager APIs.

The Client track = role 3. The SDK Team track = roles 1 & 2.