Class reference

MultiplayerSpawner

Inherits Node

Automatically replicates spawnable nodes from the authority to other multiplayer peers.

Description

Spawnable scenes can be configured in the editor or through code (see add_spawnable_scene()). Also supports custom node spawns through spawn(), calling spawn_function on all peers. Internally, MultiplayerSpawner uses MultiplayerAPI.object_configuration_add() to notify spawns passing the spawned node as the object and itself as the configuration, and MultiplayerAPI.object_configuration_remove() to notify despawns in a similar way.

Properties

Callable spawn_function

Method called on all peers when a custom spawn() is requested by the authority. Will receive the data parameter, and should return a Node that is not in the scene tree. Note: The returned node should not be added to the scene with Node.add_child(). This is done automatically.

int spawn_limit = 0

Maximum number of nodes allowed to be spawned by this spawner. Includes both spawnable scenes and custom spawns. When set to 0 (the default), there is no limit.

NodePath spawn_path = NodePath("")

Path to the spawn root. Spawnable scenes that are added as direct children are replicated to other peers.

Methods

void add_spawnable_scene(String path)

Adds a scene path to spawnable scenes, making it automatically replicated from the multiplayer authority to other peers when added as children of the node pointed by spawn_path.

void clear_spawnable_scenes()

Clears all spawnable scenes. Does not despawn existing instances on remote peers.

String get_spawnable_scene(int index) const

Returns the spawnable scene path by index.

int get_spawnable_scene_count() const

Returns the count of spawnable scene paths.

Node spawn(Variant data = null)

Requests a custom spawn, with data passed to spawn_function on all peers. Returns the locally spawned node instance already inside the scene tree, and added as a child of the node pointed by spawn_path. Note: Spawnable scenes are spawned automatically. spawn() is only needed for custom spawns.

Signals

despawned(Node node)

Emitted when a spawnable scene or custom spawn was despawned by the multiplayer authority. Only called on remote peers.

spawned(Node node)

Emitted when a spawnable scene or custom spawn was spawned by the multiplayer authority. Only called on remote peers.

Source revision 4f5b14abade2
Connection interrupted. Reload×

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.