Core RPG handbook · Development build / version notes

Documentation / Tile Tick Core RPG

Project Setup

Recommended scene, network, player and dedicated-server composition.

On this page

The demo scene is useful because it shows the intended composition: shared world systems, one network session, one local presentation binder per client, and client-only objects that can be stripped from a dedicated server.

Demo
├── _Managers
│   ├── _Systems                 # Tick, grid and path services
│   ├── _InteractionManager
│   ├── _CombatFormulaService
│   ├── _CombatXPService
│   ├── _DialogueManager
│   └── _ShopManager
├── PlayerUI                     # HUD, panels, chat, minimap, XP orb
├── SaveSystem
├── BankService
├── NetworkManager              # UnityTransport + NetworkManager + NetworkBootstrap
├── MultiplayerSession          # Server/network session services
├── LocalPlayerBinder           # LocalPlayerPresentationBinder component
├── ConnectCanvas
├── DedicatedServerComposition
└── QuestSystems

Exactly-once responsibilities#

  • One active NetworkManager / NetworkBootstrap pair.
  • One authoritative TickManager and shared grid/path service set per gameplay world.
  • One NetworkPlayerSpawner per network session and its associated NetworkLoginService.
  • One LocalPlayerPresentationBinder per client gameplay scene composition.
  • One DedicatedServerSceneComposition for the client-only roots it owns.
  • One central AudioManager. It self-creates and rejects duplicates.

Network session wiring#

The demo NetworkManager references NetworkLaunchConfig.asset. The multiplayer session contains tick synchronization, player/NPC spawning, server interaction, ground item, world object registration, temporary object, chat, login, and status services. The player prefab must contain NetworkObject, NetworkPlayer, and PlayerComposition, and must be present in the NGO network prefab list.

Local player presentation#

LocalPlayerPresentationBinder binds only NGO's locally owned player. It connects camera, HUD, inventory, equipment, skills, combat style, prayer, magic, spell targeting, and then publishes LocalPlayerContext. Input systems such as minimap click-to-move use that sanctioned context rather than searching globally for a player.

Do not duplicate gameplay managers. Most hard-to-diagnose setup problems come from a second NetworkManager, tick source, interaction service, or client-created authoritative path running beside the intended server path.

Dedicated server composition#

Client-only roots such as HUD, minimap, camera, EventSystem, connect UI, chat/context menus, presentation overlays, and client input can be assigned to DedicatedServerSceneComposition. Shared gameplay services such as TickManager, GridManager, TilePathService, NetworkManager, and the player spawner must remain active on the server.