Skip to content

five-on-it / packages/protocol/src/messages / parseWelcome

Function: parseWelcome() ​

parseWelcome(text): { clientId: number; debug?: boolean; garages?: { respray?: number; store?: number; }; ghostTicks?: number; items?: object[]; level: { data?: { cameras?: object[]; containers?: object[]; districts?: object[]; doors?: object[]; dummies: object[]; escalators?: object[]; garages?: object[]; groundHalfSize: number; ladders?: object[]; lifts?: object[]; meshes: Record<string, { groups: object[]; indices: number[]; vertices: number[]; }>; nailStrips: object[]; npcs?: object[]; placements: object[]; roads: object[]; schemaVersion?: number; shops?: object[]; sky?: { climate: string; clock?: { pace: number; start: string; }; }; spawners?: object[]; spawns: object[]; water?: object[]; }; name: string; ref?: { bytes: number; hash: string; }; }; places?: string[]; playerDamage?: "on" | "off" | "rivals"; playerEid: number; protocolVersion: number; rtc?: boolean; safeZones?: object[]; tick: number; type: "welcome"; version?: string; zones?: object[]; } | undefined

Defined in: packages/protocol/src/messages.ts:1173

Parses a text frame as a welcome message; undefined when it is not one.

Parameters ​

text ​

string

Returns ​

Type Literal ​

{ clientId: number; debug?: boolean; garages?: { respray?: number; store?: number; }; ghostTicks?: number; items?: object[]; level: { data?: { cameras?: object[]; containers?: object[]; districts?: object[]; doors?: object[]; dummies: object[]; escalators?: object[]; garages?: object[]; groundHalfSize: number; ladders?: object[]; lifts?: object[]; meshes: Record<string, { groups: object[]; indices: number[]; vertices: number[]; }>; nailStrips: object[]; npcs?: object[]; placements: object[]; roads: object[]; schemaVersion?: number; shops?: object[]; sky?: { climate: string; clock?: { pace: number; start: string; }; }; spawners?: object[]; spawns: object[]; water?: object[]; }; name: string; ref?: { bytes: number; hash: string; }; }; places?: string[]; playerDamage?: "on" | "off" | "rivals"; playerEid: number; protocolVersion: number; rtc?: boolean; safeZones?: object[]; tick: number; type: "welcome"; version?: string; zones?: object[]; }

clientId ​

clientId: number

debug? ​

optional debug?: boolean

Whether the server honours this client's debug commands (the legend's chasers, Go to, the clock and the weather; off, it drops them and tells the client nothing). Always sent; absent from an older server, which may take them or not: unknown, never off.

garages? ​

optional garages?: object

garages.respray? ​

optional respray?: number

garages.store? ​

optional store?: number

ghostTicks? ​

optional ghostTicks?: number

items? ​

optional items?: object[]

level ​

level: object

level.data? ​

optional data?: object

level.data.cameras? ​

optional cameras?: object[]

level.data.containers? ​

optional containers?: object[]

level.data.districts? ​

optional districts?: object[]

level.data.doors? ​

optional doors?: object[]

level.data.dummies ​

dummies: object[]

level.data.escalators? ​

optional escalators?: object[]

level.data.garages? ​

optional garages?: object[]

level.data.groundHalfSize ​

groundHalfSize: number = positive

level.data.ladders? ​

optional ladders?: object[]

level.data.lifts? ​

optional lifts?: object[]

level.data.meshes ​

meshes: Record<string, { groups: object[]; indices: number[]; vertices: number[]; }>

level.data.nailStrips ​

nailStrips: object[]

level.data.npcs? ​

optional npcs?: object[]

level.data.placements ​

placements: object[]

level.data.roads ​

roads: object[]

level.data.schemaVersion? ​

optional schemaVersion?: number

level.data.shops? ​

optional shops?: object[]

level.data.sky? ​

optional sky?: object

level.data.sky.climate ​

climate: string

level.data.sky.clock? ​

optional clock?: object

level.data.sky.clock.pace ​

pace: number

level.data.sky.clock.start ​

start: string

level.data.spawners? ​

optional spawners?: object[]

level.data.spawns ​

spawns: object[]

level.data.water? ​

optional water?: object[]

level.name ​

name: string

level.ref? ​

optional ref?: object

level.ref.bytes ​

bytes: number

level.ref.hash ​

hash: string

places? ​

optional places?: string[]

playerDamage? ​

optional playerDamage?: "on" | "off" | "rivals"

playerEid ​

playerEid: number

protocolVersion ​

protocolVersion: number

rtc? ​

optional rtc?: boolean

Whether the server offers a WebRTC data channel for the unreliable frames (rtc.ts): the client may then offer one; absent when it does not.

safeZones? ​

optional safeZones?: object[]

tick ​

tick: number

type ​

type: "welcome"

version? ​

optional version?: string

The server's release (RELEASE_VERSION), shown when its protocol is not the client's; absent from servers before 0.42.

zones? ​

optional zones?: object[]


undefined