You are reading the latest (unstable) version of this documentation, which may document features not available or compatible with Godot 3.x.

Work in progress

Godot documentation is being updated to reflect the latest changes in version 4.0. Some documentation pages may still state outdated information. This banner will tell you if you're reading one of such pages.

The contents of this page are up to date. If you can still find outdated information, please open an issue.


Inherits: Node < Object

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


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.












add_spawnable_scene ( String path )


clear_spawnable_scenes ( )


get_spawnable_scene ( int index ) const


get_spawnable_scene_count ( ) const


spawn ( Variant data=null )


despawned ( Node node )

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

spawned ( Node node )

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

Property Descriptions

Callable spawn_function

Method called on all peers when for every custom spawn 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

  • void set_spawn_limit ( int value )

  • int get_spawn_limit ( )

Maximum nodes that is 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.

Method Descriptions

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.