_NetworkSynchronizationServer

Inherits: Node

Synchronizes properties over the network

Description

Handles synchronization of rollback and state properties ( RollbackSynchronizer and StateSynchronizer ), while respecting visibility filters and schemas for serialization.

Packets are sent per tick, instead of per object. So for every simulated rollback tick, a packet is sent with states, and for every recorded input, a packet is sent with the inputs.

Optionally, diff states can be used, sending only the property values that have changed, saving on bandwidth.

Methods

Return Type Name
void register_rollback_state(Node node, NodePath property)
void deregister_rollback_state(Node node, NodePath property)
void register_rollback_input(Node node, NodePath property)
void deregister_rollback_input(Node node, NodePath property)
void register_sync_state(Node node, NodePath property)
void deregister_sync_state(Node node, NodePath property)
void register_schema(Node node, NodePath property, NetworkSchemaSerializer serializer)
void deregister_schema(Node node, NodePath property)
void deregister_schema_for(Node node)
void register_visibility_filter(Node node, PeerVisibilityFilter filter)
void deregister_visibility_filter(Node node)
void deregister(Node node)
void erase_peer(int peer)
void reset()

Method Descriptions

void register_rollback_state ( Node node, NodePath property )

Register a property of node to be synchronized as rollback state


void deregister_rollback_state ( Node node, NodePath property )

Deregister a property of node from being synchronized as rollback state


void register_rollback_input ( Node node, NodePath property )

Register a property of node to be synchronized as rollback input


void deregister_rollback_input ( Node node, NodePath property )

Deregister a property of node from being synchronized as rollback input


void register_sync_state ( Node node, NodePath property )

Register a property of node to be synchronized as synchronized state


void deregister_sync_state ( Node node, NodePath property )

Deregister a property of node from being synchronized as synchronized state


void register_schema ( Node node, NodePath property, NetworkSchemaSerializer serializer )

Register a serializer to use when transmitting property param of node over the network


void deregister_schema ( Node node, NodePath property )

Deregister any serializers used for property on node when transmitting over the network


void deregister_schema_for ( Node node )

Deregister all serializers registered for any properties of node


void register_visibility_filter ( Node node, PeerVisibilityFilter filter )

Register a visibility filter for use with node


void deregister_visibility_filter ( Node node )

Deregister the visibility filter used for node


void deregister ( Node node )

Deregister any and all settings associated with node


void erase_peer ( int peer )

Erase all data kept about peer.

Called by default when a peer leaves


void reset ( )

Forget what was sent to other peers, while keeping the registered properties

Sent states are the reference for diff states, and are indexed by tick, so they must not carry over to the next session. Called by _NetworkTime.stop().