Ship

The only manifest.

Unknown fields are rejected. Record a richer multiplayer profile in notes, not in this file.

{
  "schemaVersion": 1,
  "name": "arena",
  "entrypoint": "index.html",
  "multiplayer": {
    "enabled": true,
    "authority": "host",
    "maxPlayers": 8,
    "tickRate": 10
  },
  "networkAllowlist": []
}
FieldRequiredRules
schemaVersionYesMust be 1
nameYes1–80 characters
entrypointYesRelative *.html path. No leading /, no ..
multiplayerNoIf present, all four subfields are required
multiplayer.enabledtrue or false
multiplayer.authorityMust be "host"
multiplayer.maxPlayersInteger 1–16
multiplayer.tickRateInteger 1–30
networkAllowlistNoUp to 10 absolute URIs. Default []

tickRate is a deployment-time room-loop hint. Do not copy a realtime snapshotHz into it. Realtime publish is a separate ceiling (default and cap 30 Hz) set on the room.

npx lokiplay init and connect write this file if it is missing. Default maxPlayers is 8 and tickRate is 10.