Skip to content
Work in progress. These docs describe Spawnite at launch, and some parts are still being built.

Composition

What composePlugins makes of a list: what createGameWorld lays on the world.

Property Type Description
bindings KeyBindings Every key the game binds and the engine’s, checked for clashes.
characterHooks CharacterHooks Each plugin’s onCharacterSpawn and onCharacterRespawn hooks in dependency order.
collisionLayers string[] Every collision layer, in bit order: the core’s two, the characters’ two, then each plugin’s in list order.
commands readonly ComposedCommand[] Every command of a listed plugin, with the system that answers it.
contexts readonly InputContextHandle[] Every input context the plugins declare, in their order.
entries readonly ComposedSystem[] Every system in the order the step runs them, the core’s among them.
inputs InputLayout Every input the plugins declare, in their order.
listed readonly Plugin<SystemHandles<Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>, Readonly<Record<string, VectorInputDeclaration | AngleInputDeclaration | ButtonInputDeclaration | AxisInputDeclaration>>, Readonly<Record<string, PageActionDeclaration>>, string, Readonly<Record<string, CommandDeclaration<Readonly<Record<string, CommandField>>, string, Readonly<Record<string, ReturnField>> | undefined, boolean, boolean, boolean>>>, Readonly<Record<string, InputContextDeclaration>>>[] The same plugins as definePlugin made them: what the page mounts their components from.
omitted readonly string[] The names of the systems the list omits.
playerHooks PlayerHooks Each plugin’s player hooks, each kind in dependency order.
plugins readonly ComposedPlugin[] The plugins the game listed, the engine’s first in their order, as the world records them. The core is not among them.
releaseHooks readonly NamedReleaseHook[] Each plugin’s onControlRelease, in dependency order.
setups readonly PluginSetup[] Each plugin’s setup in dependency order.
systems readonly System[] -
teamRule NamedTeamRule | null The one listed plugin’s answer to the team question, or null.