Skip to content

five-on-it / packages/protocol/src/platform / GameArtifact

Variable: GameArtifact ​

const GameArtifact: ZodObject<{ game: ZodObject<{ blurb: ZodOptional<ZodString>; id: ZodString; level: ZodString; missions: ZodDefault<ZodArray<ZodObject<{ actors: ZodDefault<ZodArray<ZodDiscriminatedUnion<..., ...>>>; apps: ZodDefault<ZodArray<ZodObject<..., ...>>>; blurb: ZodOptional<ZodString>; contacts: ZodDefault<ZodArray<ZodObject<..., ...>>>; counters: ZodDefault<ZodRecord<ZodString, ZodNumber>>; dialogues: ZodDefault<ZodArray<ZodObject<..., ...>>>; helpline: ZodOptional<ZodString>; id: ZodString; items: ZodDefault<ZodArray<ZodObject<..., ...>>>; objectives: ZodArray<ZodDiscriminatedUnion<[..., ..., ...], "verb">>; play: ZodOptional<ZodObject<{ ambient: ...; friendlyFire: ...; joinInProgress: ...; lives: ...; mode: ...; onDeath: ...; players: ...; respect: ...; retries: ...; teams: ...; }, $strict>>; reward: ZodOptional<ZodObject<{ cash: ...; rep: ...; }, $strict>>; rules: ZodDefault<ZodArray<ZodUnion<...>>>; start: ZodDefault<ZodUnion<readonly [..., ...]>>; stealth: ZodOptional<ZodObject<{ bonus: ...; unseen: ...; withoutAlerts: ...; withoutKills: ...; }, $strict>>; title: ZodString; }, $strict>>>; paths: ZodDefault<ZodRecord<ZodString, ZodUnion<readonly [ZodObject<{ gates: ZodArray<...>; laps: ZodDefault<...>; }, $strict>, ZodObject<{ loop: ZodDefault<...>; patrol: ZodArray<...>; }, $strict>]>>>; places: ZodDefault<ZodRecord<ZodString, ZodObject<{ name: ZodOptional<ZodString>; role: ZodOptional<ZodEnum<{ guards: ...; hospital: ...; players: ...; police: ...; traffic: ...; }>>; tags: ZodOptional<ZodArray<ZodString>>; x: ZodNumber; y: ZodOptional<ZodNumber>; yaw: ZodOptional<ZodNumber>; z: ZodNumber; }, $strict>>>; rules: ZodPrefault<ZodObject<{ clock: ZodOptional<ZodObject<{ pace: ZodDefault<...>; start: ZodDefault<...>; }, $strict>>; dropMissionItems: ZodDefault<ZodBoolean>; fallDamage: ZodDefault<ZodBoolean>; garages: ZodOptional<ZodObject<{ respray: ZodOptional<...>; store: ZodOptional<...>; }, $strict>>; ghostSeconds: ZodDefault<ZodNumber>; loadout: ZodOptional<ZodArray<ZodObject<{ count: ...; item: ...; slot: ...; }, $strict>>>; maxPlayers: ZodDefault<ZodNumber>; partyRewards: ZodDefault<ZodEnum<{ shared: "shared"; split: "split"; }>>; phone: ZodDefault<ZodBoolean>; playerDamage: ZodDefault<ZodEnum<{ off: "off"; on: "on"; rivals: "rivals"; }>>; police: ZodDefault<ZodBoolean>; prices: ZodOptional<ZodRecord<ZodString, ZodNumber>>; respawn: ZodDefault<ZodEnum<{ hospital: "hospital"; mission: "mission"; }>>; safeZones: ZodDefault<ZodArray<ZodString>>; traffic: ZodDefault<ZodNumber>; vehicleFire: ZodDefault<ZodBoolean>; weather: ZodOptional<ZodObject<{ changes: ZodDefault<...>; climate: ZodOptional<...>; intensity: ZodDefault<...>; start: ZodOptional<...>; }, $strict>>; }, $strict>>; schemaVersion: ZodOptional<ZodNumber>; title: ZodString; zones: ZodDefault<ZodRecord<ZodString, ZodObject<{ kind: ZodOptional<ZodEnum<{ checkpoint: ...; dropoff: ...; pickup: ...; race_gate: ...; restricted: ...; safe: ...; spawn: ...; }>>; place: ZodString; radius: ZodNumber; raises: ZodOptional<ZodEnum<{ alert: ...; heat: ...; }>>; role: ZodOptional<ZodEnum<{ guards: ...; hospital: ...; players: ...; police: ...; traffic: ...; }>>; }, $strict>>>; }, $strict>; level: ZodObject<{ data: ZodObject<{ cameras: ZodOptional<ZodArray<ZodObject<{ name: ZodString; period: ZodNumber; range: ZodNumber; sweep: ZodNumber; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; containers: ZodOptional<ZodArray<ZodObject<{ items: ZodArray<...>; kind: ZodEnum<...>; lock: ZodOptional<...>; name: ZodString; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; districts: ZodOptional<ZodArray<ZodObject<{ areas: ZodArray<...>; name: ZodString; pedestrians: ZodOptional<...>; theme: ZodOptional<...>; title: ZodString; }, $strip>>>; doors: ZodOptional<ZodArray<ZodObject<{ depth: ZodNumber; height: ZodNumber; kind: ZodOptional<...>; lock: ZodOptional<...>; name: ZodString; width: ZodNumber; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; dummies: ZodArray<ZodObject<{ x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>; escalators: ZodOptional<ZodArray<ZodObject<{ height: ZodNumber; length: ZodNumber; name: ZodString; up: ZodBoolean; width: ZodNumber; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; garages: ZodOptional<ZodArray<ZodObject<{ depth: ZodNumber; height: ZodNumber; name: ZodString; respray: ZodOptional<...>; store: ZodOptional<...>; width: ZodNumber; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; groundHalfSize: ZodNumber; ladders: ZodOptional<ZodArray<ZodObject<{ height: ZodNumber; name: ZodString; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; lifts: ZodOptional<ZodArray<ZodObject<{ depth: ZodNumber; name: ZodString; stops: ZodArray<...>; width: ZodNumber; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; meshes: ZodRecord<ZodString, ZodObject<{ groups: ZodArray<ZodObject<..., ...>>; indices: ZodArray<ZodNumber>; vertices: ZodArray<ZodNumber>; }, $strip>>; nailStrips: ZodArray<ZodObject<{ length: ZodNumber; x: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>; npcs: ZodOptional<ZodArray<ZodObject<{ items: ZodArray<...>; loop: ZodOptional<...>; name: ZodString; patrol: ZodOptional<...>; refuge: ZodOptional<...>; role: ZodEnum<...>; schedule: ZodOptional<...>; turn: ZodOptional<...>; vehicle: ZodOptional<...>; weapon: ZodString; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; placements: ZodArray<ZodObject<{ breakable: ZodOptional<ZodNumber>; kind: ZodEnum<{ building: ...; prop: ...; structure: ...; terrain: ...; }>; mesh: ZodString; name: ZodString; pitch: ZodNumber; scale: ZodTuple<[..., ..., ...], null>; shape: ZodEnum<{ hull: ...; none: ...; trimesh: ...; }>; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>; roads: ZodArray<ZodObject<{ kind: ZodOptional<ZodEnum<...>>; lanes: ZodNumber; lanesBack: ZodNumber; name: ZodString; points: ZodArray<ZodTuple<..., ...>>; speed: ZodNumber; surface: ZodOptional<ZodLiteral<...>>; width: ZodNumber; }, $strip>>; schemaVersion: ZodOptional<ZodNumber>; shops: ZodOptional<ZodArray<ZodObject<{ items: ZodArray<...>; name: ZodString; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; sky: ZodOptional<ZodObject<{ climate: ZodString; clock: ZodOptional<ZodObject<..., ...>>; }, $strip>>; spawners: ZodOptional<ZodArray<ZodObject<{ classes: ZodArray<...>; key: ZodString; locked: ZodBoolean; name: ZodString; owner: ZodEnum<...>; respawn: ZodNumber; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>>; spawns: ZodArray<ZodObject<{ role: ZodOptional<ZodEnum<...>>; x: ZodNumber; y: ZodNumber; yaw: ZodNumber; z: ZodNumber; }, $strip>>; water: ZodOptional<ZodArray<ZodObject<{ depth: ZodNumber; kind: ZodEnum<...>; name: ZodString; width: ZodNumber; x: ZodNumber; y: ZodNumber; z: ZodNumber; }, $strip>>>; }, $strip>; name: ZodString; }, $strip>; manifest: ZodOptional<ZodObject<{ game: ZodNumber; generator: ZodOptional<ZodObject<{ blender: ZodOptional<ZodString>; release: ZodString; scripts: ZodOptional<ZodString>; }, $strip>>; level: ZodNumber; protocol: ZodNumber; release: ZodString; }, $strip>>; }, $strip>

Defined in: packages/protocol/src/platform.ts:91

A built game: its level's data and its game document, and what it was built with (absent from games built before 0.54).