Quick answer: Godot 4 MultiplayerSpawner spawn data partial or empty on client? Default replication strips some types - explicitly serialize via PackedByteArray.
Spawn data is Dictionary; client receives empty Dictionary.
Serialize manually
var bytes = var_to_bytes(data)
spawn(bytes)Bytes serialize cleanly. Client deserializes.
Or use only simple types
Dictionary nested = serialization risk. Flatten to arrays of primitives.
Verify on client
Print received data; verify structure matches sent.
“Replication serialization has type limits. Complex types may strip.”
If your spawn data is rich, the manual serialization is the safe path. Document the format.