Public Member Functions | Protected Member Functions | Protected Attributes | Friends

RakNet::ReplicaManager3 Class Reference
[ReplicaManager3]

System to help automate game object construction, destruction, and serialization. More...

#include <ReplicaManager3.h>

Inherits PluginInterface2.

Collaboration diagram for RakNet::ReplicaManager3:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ReplicaManager3 ()
virtual ~ReplicaManager3 ()
virtual Connection_RM3AllocConnection (SystemAddress systemAddress, RakNetGUID rakNetGUID) const =0
 Implement to return a game specific derivation of Connection_RM3.
virtual void DeallocConnection (Connection_RM3 *connection) const =0
 Implement to destroy a class instanced returned by AllocConnection().
void SetAutoManageConnections (bool autoCreate, bool autoDestroy)
 Enable or disable automatically assigning connections to new instances of Connection_RM3.
bool PushConnection (RakNet::Connection_RM3 *newConnection)
 Track a new Connection_RM3 instance.
RakNet::Connection_RM3PopConnection (RakNetGUID guid)
 Stop tracking a connection.
void Reference (RakNet::Replica3 *replica3)
 Adds a replicated object to the system.
void Dereference (RakNet::Replica3 *replica3)
 Removes a replicated object from the system.
void DereferenceList (DataStructures::Multilist< ML_STACK, Replica3 * > &replicaListIn)
 Removes multiple replicated objects from the system.
void GetReplicasCreatedByGuid (RakNetGUID guid, DataStructures::Multilist< ML_STACK, Replica3 * > &replicaListOut)
 Returns all objects originally created by a particular system.
void GetReplicasCreatedByMe (DataStructures::Multilist< ML_STACK, Replica3 * > &replicaListOut)
 Returns all objects originally created by your system.
void GetReferencedReplicaList (DataStructures::Multilist< ML_STACK, Replica3 * > &replicaListOut)
 Returns the entire list of Replicas that we know about.
unsigned GetReplicaCount (void) const
 Returns the number of replicas known about.
Replica3GetReplicaAtIndex (unsigned index)
 Returns a replica by index.
DataStructures::DefaultIndexType GetConnectionCount (void) const
 Returns the number of connections.
Connection_RM3GetConnectionAtIndex (unsigned index) const
 Returns a connection pointer previously added with PushConnection().
Connection_RM3GetConnectionBySystemAddress (SystemAddress sa) const
 Returns a connection pointer previously added with PushConnection().
Connection_RM3GetConnectionByGUID (RakNetGUID guid) const
 Returns a connection pointer previously added with PushConnection.().
void SetDefaultOrderingChannel (char def)
void SetDefaultPacketPriority (PacketPriority def)
void SetDefaultPacketReliability (PacketReliability def)
void SetAutoSerializeInterval (RakNetTime intervalMS)
void GetConnectionsThatHaveReplicaConstructed (Replica3 *replica, DataStructures::Multilist< ML_STACK, Connection_RM3 * > &connectionsThatHaveConstructedThisReplica)
 Return the connections that we think have an instance of the specified Replica3 instance.
void SetWorldID (unsigned char id)
 Defines the unique instance of ReplicaManager3 if multiple instances are on the same instance of RakPeerInterface.
unsigned char GetWorldID (void) const
void SetNetworkIDManager (NetworkIDManager *_networkIDManager)
NetworkIDManagerGetNetworkIDManager (void) const
 Returns what was passed to SetNetworkIDManager(), or the instance on RakPeerInterface if unset.
void BroadcastDestructionList (DataStructures::Multilist< ML_STACK, Replica3 * > &replicaList, SystemAddress exclusionAddress)
void BroadcastDestruction (Replica3 *replica, SystemAddress exclusionAddress)
void Clear (void)
PRO GetDefaultSendParameters (void) const

Protected Member Functions

virtual PluginReceiveResult OnReceive (Packet *packet)
virtual void Update (void)
 Update is called every time a packet is checked for .
virtual void OnClosedConnection (SystemAddress systemAddress, RakNetGUID rakNetGUID, PI2_LostConnectionReason lostConnectionReason)
virtual void OnNewConnection (SystemAddress systemAddress, RakNetGUID rakNetGUID, bool isIncoming)
virtual void OnRakPeerShutdown (void)
 Called when RakPeer is shutdown.
void OnConstructionExisting (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, unsigned char packetDataOffset)
void OnConstruction (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, unsigned char packetDataOffset)
void OnSerialize (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, RakNetTime timestamp, unsigned char packetDataOffset)
void OnDownloadStarted (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, unsigned char packetDataOffset)
void OnDownloadComplete (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, unsigned char packetDataOffset)
void OnLocalConstructionRejected (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, unsigned char packetDataOffset)
void OnLocalConstructionAccepted (unsigned char *packetData, int packetDataLength, RakNetGUID senderGuid, unsigned char packetDataOffset)
RakNet::Connection_RM3PopConnection (DataStructures::DefaultIndexType index)
Replica3GetReplicaByNetworkID (NetworkID networkId)
DataStructures::DefaultIndexType ReferenceInternal (RakNet::Replica3 *replica3)

Protected Attributes

DataStructures::Multilist
< ML_STACK, Connection_RM3 * > 
connectionList
DataStructures::Multilist
< ML_STACK, Replica3 * > 
userReplicaList
PRO defaultSendParameters
RakNetTime autoSerializeInterval
RakNetTime lastAutoSerializeOccurance
unsigned char worldId
NetworkIDManagernetworkIDManager
bool autoCreateConnections
bool autoDestroyConnections

Friends

class Connection_RM3

Detailed Description

System to help automate game object construction, destruction, and serialization.

ReplicaManager3 tracks your game objects and automates the networking for replicating them across the network
As objects are created, destroyed, or serialized differently, those changes are pushed out to other systems.
To use:

  1. Derive from Connection_RM3 and implement Connection_RM3::AllocReplica(). This is a factory function where given a user-supplied identifier for a class (such as name) return an instance of that class. Should be able to return any networked object in your game.
  2. Derive from ReplicaManager3 and implement AllocConnection() and DeallocConnection() to return the class you created in step 1.
  3. Derive your networked game objects from Replica3. All pure virtuals have to be implemented, however defaults are provided for Replica3::QueryConstruction(), Replica3::QueryRemoteConstruction(), and Replica3::QuerySerialization() depending on your network architecture.
  4. When a new game object is created on the local system, pass it to ReplicaManager3::Reference().
  5. When a game object is destroyed on the local system, and you want other systems to know about it, call Replica3::BroadcastDestruction()


At this point, all new connections will automatically download, get construction messages, get destruction messages, and update serialization automatically.

Definition at line 68 of file ReplicaManager3.h.


Constructor & Destructor Documentation

ReplicaManager3::ReplicaManager3 (  ) 

Definition at line 48 of file ReplicaManager3.cpp.

ReplicaManager3::~ReplicaManager3 (  )  [virtual]

Definition at line 64 of file ReplicaManager3.cpp.

Here is the call graph for this function:


Member Function Documentation

virtual Connection_RM3* RakNet::ReplicaManager3::AllocConnection ( SystemAddress  systemAddress,
RakNetGUID  rakNetGUID 
) const [pure virtual]

Implement to return a game specific derivation of Connection_RM3.

The connection object represents a remote system connected to you that is using the ReplicaManager3 system.
It has functions to perform operations per-connection.
AllocConnection() and DeallocConnection() are factory functions to create and destroy instances of the connection object.
It is used if autoCreate is true via SetAutoManageConnections() (true by default). Otherwise, the function is not called, and you will have to call PushConnection() manually

Note:
If you do not want a new network connection to immediately download game objects, SetAutoManageConnections() and PushConnection() are how you do this.
See also:
SetAutoManageConnections()
Parameters:
[in] systemAddress Address of the system you are adding
[in] rakNetGUID GUID of the system you are adding. See Packet::rakNetGUID or RakPeerInterface::GetGUIDFromSystemAddress()
Returns:
The new connection instance.

Here is the caller graph for this function:

void ReplicaManager3::BroadcastDestruction ( Replica3 replica,
SystemAddress  exclusionAddress 
)

Definition at line 1160 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::BroadcastDestructionList ( DataStructures::Multilist< ML_STACK, Replica3 * > &  replicaList,
SystemAddress  exclusionAddress 
)

Send a network command to destroy one or more Replica3 instances Usually you won't need this, but use Replica3::BroadcastDestruction() instead. The objects are unaffected locally

Parameters:
[in] replicaList List of Replica3 objects to tell other systems to destroy.
[in] exclusionAddress Which system to not send to. UNASSIGNED_SYSTEM_ADDRESS to send to all.

Definition at line 1108 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::Clear ( void   ) 

Definition at line 364 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void RakNet::ReplicaManager3::DeallocConnection ( Connection_RM3 connection  )  const [pure virtual]

Implement to destroy a class instanced returned by AllocConnection().

Most likely just implement as {delete connection;}
It is used if autoDestroy is true via SetAutoManageConnections() (true by default). Otherwise, the function is not called and you would then be responsible for deleting your own connection objects.

Parameters:
[in] connection The pointer instance to delete

Here is the caller graph for this function:

void ReplicaManager3::Dereference ( RakNet::Replica3 replica3  ) 

Removes a replicated object from the system.

The object is not deallocated, it is up to the caller to do so.
This is called automatically from the destructor of Replica3, so you don't need to call it manually unless you want to stop tracking an object before it is destroyed.

Parameters:
[in] replica3 The object to stop tracking

Definition at line 206 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::DereferenceList ( DataStructures::Multilist< ML_STACK, Replica3 * > &  replicaListIn  ) 

Removes multiple replicated objects from the system.

Same as Dereference(), but for a list of objects.
Useful with the lists returned by GetReplicasCreatedByGuid(), GetReplicasCreatedByMe(), or GetReferencedReplicaList().

Parameters:
[in] replicaListIn List of objects

Definition at line 227 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Connection_RM3 * ReplicaManager3::GetConnectionAtIndex ( unsigned  index  )  const

Returns a connection pointer previously added with PushConnection().

Parameters:
[in] index An index, from 0 to GetConnectionCount()-1.
Returns:
A Connection_RM3 pointer

Definition at line 286 of file ReplicaManager3.cpp.

Connection_RM3 * ReplicaManager3::GetConnectionByGUID ( RakNetGUID  guid  )  const

Returns a connection pointer previously added with PushConnection.().

Parameters:
[in] guid The guid of the connection to return
Returns:
A Connection_RM3 pointer, or 0 if not found

Definition at line 308 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

Connection_RM3 * ReplicaManager3::GetConnectionBySystemAddress ( SystemAddress  sa  )  const

Returns a connection pointer previously added with PushConnection().

Parameters:
[in] sa The system address of the connection to return
Returns:
A Connection_RM3 pointer, or 0 if not found

Definition at line 293 of file ReplicaManager3.cpp.

Here is the call graph for this function:

DataStructures::DefaultIndexType ReplicaManager3::GetConnectionCount ( void   )  const

Returns the number of connections.

Returns the number of connections added with ReplicaManager3::PushConnection(), minus the number removed with ReplicaManager3::PopConnection()

Returns:
The number of registered connections

Definition at line 279 of file ReplicaManager3.cpp.

Here is the call graph for this function:

void ReplicaManager3::GetConnectionsThatHaveReplicaConstructed ( Replica3 replica,
DataStructures::Multilist< ML_STACK, Connection_RM3 * > &  connectionsThatHaveConstructedThisReplica 
)

Return the connections that we think have an instance of the specified Replica3 instance.

This can be wrong, for example if that system locally deleted the outside the scope of ReplicaManager3, if QueryRemoteConstruction() returned false, or if DeserializeConstruction() returned false.

Parameters:
[in] replica The replica to check against.
[out] connectionsThatHaveConstructedThisReplica Populated with connection instances that we believe have replica allocated

Definition at line 351 of file ReplicaManager3.cpp.

Here is the call graph for this function:

PRO ReplicaManager3::GetDefaultSendParameters ( void   )  const

Definition at line 377 of file ReplicaManager3.cpp.

Here is the caller graph for this function:

NetworkIDManager * ReplicaManager3::GetNetworkIDManager ( void   )  const

Returns what was passed to SetNetworkIDManager(), or the instance on RakPeerInterface if unset.

Definition at line 398 of file ReplicaManager3.cpp.

void ReplicaManager3::GetReferencedReplicaList ( DataStructures::Multilist< ML_STACK, Replica3 * > &  replicaListOut  ) 

Returns the entire list of Replicas that we know about.

This is all Replica3 instances passed to Reference, as well as instances we downloaded and created via Connection_RM3::AllocReference()

Parameters:
[out] List of Replica3 instances to be returned

Definition at line 245 of file ReplicaManager3.cpp.

Replica3 * ReplicaManager3::GetReplicaAtIndex ( unsigned  index  ) 

Returns a replica by index.

Returns one of the items in the list that would be returned by GetReferencedReplicaList()

Parameters:
[in] index An index, from 0 to GetReplicaCount()-1.
Returns:
A Replica3 instance

Definition at line 272 of file ReplicaManager3.cpp.

Replica3 * ReplicaManager3::GetReplicaByNetworkID ( NetworkID  networkId  )  [protected]

Definition at line 1093 of file ReplicaManager3.cpp.

Here is the call graph for this function:

unsigned ReplicaManager3::GetReplicaCount ( void   )  const

Returns the number of replicas known about.

Returns the size of the list that would be returned by GetReferencedReplicaList()

Returns:
How many replica objects are in the list of replica objects

Definition at line 265 of file ReplicaManager3.cpp.

Here is the call graph for this function:

void ReplicaManager3::GetReplicasCreatedByGuid ( RakNetGUID  guid,
DataStructures::Multilist< ML_STACK, Replica3 * > &  replicaListOut 
)

Returns all objects originally created by a particular system.

Originally created is defined as the value of Replica3::creatingSystemGUID, which is automatically assigned in ReplicaManager3::Reference().
You do not have to be directly connected to that system to get the objects originally created by that system.

Parameters:
[in] guid GUID of the system we are referring to. Originally passed as the guid parameter to ReplicaManager3::AllocConnection()
[out] List of Replica3 instances to be returned

Definition at line 251 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::GetReplicasCreatedByMe ( DataStructures::Multilist< ML_STACK, Replica3 * > &  replicaListOut  ) 

Returns all objects originally created by your system.

Calls GetReplicasCreatedByGuid() for your own system guid.

Parameters:
[out] List of Replica3 instances to be returned

Definition at line 237 of file ReplicaManager3.cpp.

Here is the call graph for this function:

unsigned char ReplicaManager3::GetWorldID ( void   )  const
Returns:
Whatever was passed to SetWorldID(), or 0 if it was never called.

Definition at line 391 of file ReplicaManager3.cpp.

Here is the caller graph for this function:

void ReplicaManager3::OnClosedConnection ( SystemAddress  systemAddress,
RakNetGUID  rakNetGUID,
PI2_LostConnectionReason  lostConnectionReason 
) [protected, virtual]

Called when a connection is dropped because the user called RakPeer::CloseConnection() for a particular system

Parameters:
[in] systemAddress The system whose connection was closed
[in] rakNetGuid The guid of the specified system
[in] lostConnectionReason How the connection was closed: manually, connection lost, or notification of disconnection

Reimplemented from PluginInterface2.

Definition at line 711 of file ReplicaManager3.cpp.

Here is the call graph for this function:

void ReplicaManager3::OnConstruction ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
unsigned char  packetDataOffset 
) [protected]

Definition at line 783 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::OnConstructionExisting ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
unsigned char  packetDataOffset 
) [protected]

Definition at line 755 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::OnDownloadComplete ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
unsigned char  packetDataOffset 
) [protected]

Definition at line 994 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::OnDownloadStarted ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
unsigned char  packetDataOffset 
) [protected]

Definition at line 982 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::OnLocalConstructionAccepted ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
unsigned char  packetDataOffset 
) [protected]

Definition at line 1029 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::OnLocalConstructionRejected ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
unsigned char  packetDataOffset 
) [protected]

Definition at line 1006 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::OnNewConnection ( SystemAddress  systemAddress,
RakNetGUID  rakNetGUID,
bool  isIncoming 
) [protected, virtual]

Called when we got a new connection

Parameters:
[in] systemAddress Address of the new connection
[in] rakNetGuid The guid of the specified system
[in] isIncoming If true, this is ID_NEW_INCOMING_CONNECTION, or the equivalent

Reimplemented from PluginInterface2.

Definition at line 725 of file ReplicaManager3.cpp.

Here is the call graph for this function:

void ReplicaManager3::OnRakPeerShutdown ( void   )  [protected, virtual]

Called when RakPeer is shutdown.

Reimplemented from PluginInterface2.

Definition at line 738 of file ReplicaManager3.cpp.

Here is the call graph for this function:

PluginReceiveResult ReplicaManager3::OnReceive ( Packet packet  )  [protected, virtual]

OnReceive is called for every packet.

Parameters:
[in] packet the packet that is being returned to the user
Returns:
True to allow the game and other plugins to get this message, false to absorb it

Reimplemented from PluginInterface2.

Definition at line 414 of file ReplicaManager3.cpp.

Here is the call graph for this function:

void ReplicaManager3::OnSerialize ( unsigned char *  packetData,
int  packetDataLength,
RakNetGUID  senderGuid,
RakNetTime  timestamp,
unsigned char  packetDataOffset 
) [protected]

Definition at line 945 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

RakNet::Connection_RM3 * ReplicaManager3::PopConnection ( RakNetGUID  guid  ) 

Stop tracking a connection.

On call, for each replica returned by GetReplicasCreatedByGuid(), QueryActionOnPopConnection() will be called. Depending on the return value, this may delete the corresponding replica.
If autoDestroy is true in the call to SetAutoManageConnections() (true by default) then this is called automatically when the connection is lost. In that case, the returned connection instance is deleted.

Parameters:
[in] guid of the connection to get. Passed to ReplicaManager3::AllocConnection() originally.

Definition at line 150 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

RakNet::Connection_RM3 * ReplicaManager3::PopConnection ( DataStructures::DefaultIndexType  index  )  [protected]

Definition at line 107 of file ReplicaManager3.cpp.

Here is the call graph for this function:

bool ReplicaManager3::PushConnection ( RakNet::Connection_RM3 newConnection  ) 

Track a new Connection_RM3 instance.

If autoCreate is false for SetAutoManageConnections(), then you need this function to add new instances of Connection_RM3 yourself.
You don't need to track this pointer yourself, you can get it with GetConnectionAtIndex(), GetConnectionByGUID(), or GetConnectionBySystemAddress().

Parameters:
[in] newConnection The new connection instance to track.

Definition at line 79 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::Reference ( RakNet::Replica3 replica3  ) 

Adds a replicated object to the system.

Anytime you create a new object that derives from Replica3, and you want ReplicaManager3 to use it, pass it to Reference().
Remote systems already connected will potentially download this object the next time ReplicaManager3::Update() is called, which happens every time you call RakPeerInterface::Receive().

Parameters:
[in] replica3 The object to start tracking

Definition at line 166 of file ReplicaManager3.cpp.

Here is the call graph for this function:

DataStructures::DefaultIndexType ReplicaManager3::ReferenceInternal ( RakNet::Replica3 replica3  )  [protected]

Definition at line 186 of file ReplicaManager3.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void ReplicaManager3::SetAutoManageConnections ( bool  autoCreate,
bool  autoDestroy 
)

Enable or disable automatically assigning connections to new instances of Connection_RM3.

ReplicaManager3 can automatically create and/or destroy Connection_RM3 as systems connect or disconnect from RakPeerInterface.
By default this is on, to make the system easier to learn and setup.
If you don't want all connections to take part in the game, or you want to delay when a connection downloads the game, set autoCreate to false.
If you want to delay deleting a connection that has dropped, set autoDestroy to false. If you do this, then you must call PopConnection() to remove that connection from being internally tracked. You'll also have to delete the connection instance on your own.

Parameters:
[in] autoCreate Automatically call ReplicaManager3::AllocConnection() for each new connection. Defaults to true.
[in] autoDestroy Automatically call ReplicaManager3::DeallocConnection() for each dropped connection. Defaults to true.

Definition at line 71 of file ReplicaManager3.cpp.

void ReplicaManager3::SetAutoSerializeInterval ( RakNetTime  intervalMS  ) 

Every intervalMS milliseconds, Connection_RM3::OnAutoserializeInterval() will be called.
Defaults to 30.
Pass with 0 to disable.
If you want to control the update interval with more granularity, use the return values from Replica3::Serialize().

Parameters:
[in] intervalMS How frequently to autoserialize all objects. This controls the maximum number of game object updates per second.

Definition at line 344 of file ReplicaManager3.cpp.

void ReplicaManager3::SetDefaultOrderingChannel ( char  def  ) 
Parameters:
[in] Default ordering channel to use for object creation, destruction, and serializations

Definition at line 323 of file ReplicaManager3.cpp.

void ReplicaManager3::SetDefaultPacketPriority ( PacketPriority  def  ) 
Parameters:
[in] Default packet priority to use for object creation, destruction, and serializations

Definition at line 330 of file ReplicaManager3.cpp.

void ReplicaManager3::SetDefaultPacketReliability ( PacketReliability  def  ) 
Parameters:
[in] Default packet reliability to use for object creation, destruction, and serializations

Definition at line 337 of file ReplicaManager3.cpp.

void ReplicaManager3::SetNetworkIDManager ( NetworkIDManager _networkIDManager  ) 

Sets the networkIDManager instance that this plugin relys upon.
Uses whatever instance is attached to RakPeerInterface if unset.
To support multiple worlds, you should set it to a different manager for each instance of the plugin

Parameters:
[in] _networkIDManager The externally allocated NetworkIDManager instance for this plugin to use.

Definition at line 405 of file ReplicaManager3.cpp.

Here is the call graph for this function:

void ReplicaManager3::SetWorldID ( unsigned char  id  ) 

Defines the unique instance of ReplicaManager3 if multiple instances are on the same instance of RakPeerInterface.

ReplicaManager3 supports multiple instances of itself attached to the same instance of rakPeer, in case your game has multiple worlds.
Call SetWorldID with a different number for each instance.
The default worldID is 0.
To use multiple worlds, you will also need to call ReplicaManager3::SetNetworkIDManager() to have a different NetworkIDManager instance per world

Definition at line 384 of file ReplicaManager3.cpp.

void ReplicaManager3::Update ( void   )  [protected, virtual]

Update is called every time a packet is checked for .

Reimplemented from PluginInterface2.

Definition at line 647 of file ReplicaManager3.cpp.

Here is the call graph for this function:


Friends And Related Function Documentation

friend class Connection_RM3 [friend]

Definition at line 269 of file ReplicaManager3.h.


Member Data Documentation

Definition at line 267 of file ReplicaManager3.h.

Definition at line 267 of file ReplicaManager3.h.

Definition at line 263 of file ReplicaManager3.h.

Definition at line 259 of file ReplicaManager3.h.

Definition at line 262 of file ReplicaManager3.h.

Definition at line 264 of file ReplicaManager3.h.

Definition at line 266 of file ReplicaManager3.h.

Definition at line 260 of file ReplicaManager3.h.

unsigned char RakNet::ReplicaManager3::worldId [protected]

Definition at line 265 of file ReplicaManager3.h.


The documentation for this class was generated from the following files: