Configuring persistence
Last updated
Last updated
The CoherenceSync editor interface allows us to define the Lifetime of a networked object. The following options are available:
Session Based. No persistence. The entity will disappear when the client or simulator disconnects.
Persistent. The entity will remain on the server until a simulating client deletes it.
Persistent Expire. A persistent object that will be automatically deleted from backing storage after X seconds. These object will continue to exist as long as the replication server is active.
Persistent objects need to be identified so that the system can know how to treat duplicate persistent objects.
Setting the Auto Generate Persistence UUID flag means that each instance of this persistent object prefab is assigned a unique identifier so that each instance is considered unique.
Manually assigning a UUID means that each instance of this persistent object prefab is considered the same object regardless of where on the network it is instantiated. So, for example, if two clients instantiate the same prefab object with the same persistence UUID then only one is considered official and the other is replaced by the replication server.
A persistent object can be deleted only by the client or simulator that has authority over it. For indirect remote deletion, see the section about network commands.
Deleting a persistent object is done the same as with any network object - by destroying its GameObject.