# Shared Multiplayer Lobby (net.lobby) ## What it is for Provides a private waiting room for any genre: nickname, connected roster, ready flags, host migration and a server-validated start, announced with lobby.started so a game adapter can begin its own simulation. It needs `net.transport`, `game.engine`; installing it brings them in. ## Turn it on Install the kit in a project, then change a setting (the values shown are its defaults): ```text gripforge_gamekit_install { project_id: "gkp_…", id: "net.lobby" } gripforge_gamekit_configure { project_id: "gkp_…", id: "net.lobby", config: { "minPlayers": 2, "maxPlayers": 16 } } ``` ## First example The kit has no dedicated test yet; this installs it and sets two of its settings to their defaults. ```text gripforge_gamekit_install { project_id: "gkp_…", id: "net.lobby" } gripforge_gamekit_configure { project_id: "gkp_…", id: "net.lobby", config: { "minPlayers": 2, "maxPlayers": 16 } } ``` ## Settings and defaults Descriptions come from the kit manifest and stay in English. | Setting | Type | Default | Range or values | Meaning | |---|---|---|---|---| | `minPlayers` | integer | `2` | 1–64 | | | `maxPlayers` | integer | `16` | 1–64 | | | `requireReady` | boolean | `true` | | | ## Services, events, variables - Service `net.lobby`: connect(name), disconnect(), view() → { connected, phase, seat, players, canStart, match, error } (error: connection_failed, mods — the room runs other mods —, host_only, need_players, not_all_ready, not_in_lobby, not_connected, request_refused), ready(value), start(), returnToLobby(), hold() (an in - Events emitted: - `lobby.changed` (`phase`, `match`) — The view of the lobby changed (roster, ready flags, phase, error): phase and match number of the server state. - `lobby.started` (`match`) — Only after the server accepts start. ## Hooks and modding This kit declares no hook and no collection to mod. ## Engines Declared targets: `web`. `gripforge kit api net.lobby` lists the exact settings and services of your version. ## Versions Kit version 1.3.0.