Replication Config
Overview
Custom properties are added directly via the FusionReplicator's bottom panel in the editor.
Use this for game data (health, score, name) beyond what the replication mode auto-syncs.
Transform and physics properties should not be added — they are handled by REPLICATION_AUTO.

Property Path Syntax
:property— property on the root nodechild:property— property on a child nodechild/grandchild:property— nested child
GDScript
":health" # Root node
"Sprite2D:modulate" # Child Sprite2D
Strings and Arrays
Strings use 2 words (StringHeap handle + generation).
Handles are freed automatically when the value changes.
Arrays (PackedFloat32Array, PackedInt32Array, PackedVector2Array, etc.) require a fixed max_capacity set before spawning.
Arrays exceeding capacity are truncated.
Node References
Properties of type Node (or Object) can reference other networked root nodes.
On the wire, each reference is stored as a Fusion ObjectId (2 words: Origin + Counter).
The referenced node must be a networked root — the parent node of a FusionReplicator.
This includes spawned object roots, sub-object roots, and scene object roots.
Child nodes within a networked object cannot be referenced.
Non-networked nodes and null both serialize as (0, 0) and resolve to null on the remote end.
GDScript
# Authority sets a reference to another networked node
partner = get_node("/root/Main/Player2")
# Remote automatically receives the resolved Node (or null)
print(partner.name) # "Player2"
Resolution rules:
- If the referenced node is in the remote client's Area of Interest, it resolves to the local Node.
- If the referenced node is outside AoI, destroyed, or not yet spawned, it resolves to
null. - Setting the property to
nullor a non-networked node on authority sendsnullto all remotes. - Scene objects loaded via
FusionClient.load_scene()work the same way — the reference resolves once the remote client has loaded the scene.
Word Count Reference
| Godot Type | Words |
|---|---|
| bool | 1 |
| int | 2 |
| float | 1 |
| String | 2 |
| Node (Object) | 2 |
| Vector2 | 2 |
| Vector3 | 3 |
| Vector4 / Quaternion / Color | 4 |
| Transform2D | 6 |
| Transform3D | 12 |
Arrays: 1 + (max_capacity × element_words).
Query at runtime: $FusionReplicator.compute_word_count().