RakNet::AcceptInvite_Func | |
RakNet::AddUserToQuickJoin_Func | |
RakNet::AreAllMembersReady_Func | If all members have been set to ready using SetReadyStatus_Func, this operation will set allReady to true |
AutopatcherMySQLRepository | |
AutopatcherPostgreRepository | |
AutopatcherRepositoryInterface | An interface used by AutopatcherServer to get the data necessary to run an autopatcher. This is up to you to implement for custom repository solutions |
RakNet::AutoRPC | |
DataStructures::AVLBalancedBinarySearchTree< BinarySearchTreeType > | An AVLBalancedBinarySearchTree is a binary tree that is always balanced |
DataStructures::BinarySearchTree< BinarySearchTreeType > | A binary search tree and an AVL balanced binary search tree |
RakNet::BitStream | |
RakNet::BookmarkedUsers_Add | |
RakNet::BookmarkedUsers_Get | Returns all users added to BookmarkedUsers_Add |
DataStructures::BPlusTree< KeyType, DataType, order > | |
RakNet::CDKey_Add | Adds CDKeys to the database. Duplicate CDKeys for a particular title are ignored. CDKeys can be identical for different titles |
RakNet::CDKey_FlagStolen | Flags one or more CD keys as stolen. Stolen CD keys will prevent Client_Login() if check cd key is true. They will also prevent these cd keys from being used with CDKey_Use. If this key is already in use by certain users for this particular title, then log this similarly to how CDKey_Use does so |
RakNet::CDKey_GetStatus | Returns if a CD key was previously added with AddCDKey |
RakNet::CDKey_Use | Associates a cd key with a user, such that the cd key cannot be used again. If Client_Login() is called with check cd key as true, then this table will be checked to make sure UserCDKey() was previously called with this user and a valid key. If this user is already associated with a CD Key, add the new key, and use the most recent key. All CD Key usage should be logged in a separate table, including the date used and result |
RakNet::ChangeHandle_Func | Change your handle |
RakNet::ChangeRoomName_Func | Change the name of the room |
RakNet::ChangeSlotCounts_Func | Change the allowed slot counts for the room. Setting fewer slot counts than the number of players does not kick out players, though it may prevent changing spectator status |
RakNet::Chat_Notification | |
CheckSum | Generates and validates checksums |
DataStructures::CircularLinkedList< CircularLinkedListType > | (Circular) Linked List ADT (Doubly Linked Pointer to Node Style) - |
RakNet::Clans_AcceptJoinInvitation | If myPrimaryKey has an invitation to the specified clan, add him to the clan. Fail on specified output parameters. Use Emails_Send() to send an email from myPrimaryKey to all clan members with the specified subject and body |
RakNet::Clans_AcceptJoinRequest | A clan leader or subleader accepts a join request from requestingUserHandle to this clan. requestingUserHandle joins the clan as a regular member. Use Emails_Send() to send an email from requestingUserHandle to all clan members with the specified subject and body |
RakNet::Clans_ChangeHandle | Renames the clan. Note that this may be called asynchronously, in which case the stored procedure should account for this occuring at the same time as another function that uses the old clan handle |
RakNet::Clans_Create | UserHandle updates the clanDescription and clanBinaryData of a clan with the specified clanHandle. userHandle must be the clan leader |
RakNet::Clans_CreateBoard | Creates a new clan board for clan members to post in using AddPostToClanBoard. Clan boards are unique, and are destroyed when the clan is destroyed, or if DestroyClanBoard is called |
RakNet::Clans_CreateNewTopic | Each clan has a clan board that only clan members can post to. This adds a topic to the clan board. Posts should reference the primary key of the poster, so that even if the poster chagnes his or her handle, the post author is updated properly. Each post automatically stores the timestamp when it was created. Banned users may not add new posts to the clan board |
RakNet::Clans_DestroyBoard | Success, invalid parameter syntax, myPrimaryKey is not the leader or subleader of clanHandle, unknown myPrimaryKey, unknown clanHandle, unknown clanBoardName |
RakNet::Clans_DownloadInvitationList | Returns all invites sent by Clans_SendJoinInvitation that were not yet acted upon (withdrawn, accepted, rejected) |
RakNet::Clans_DownloadRequestList | Returns all open requests this user has sent to clans, that have not yet acted upon (withdrawn, accepted, rejected, expired) |
RakNet::Clans_Get | Returns all clans that userHandle is a member of. Clans and clan members should be sorted by name, using ascending or descending sort as specified |
RakNet::Clans_GetBlacklist | Returns a list of all members blacklisted from this clan. Each element in the list contains the handle of the user that did the ban, who was banned, when the user was banned, and the reason passed to ClanKickAndBlacklistUser |
RakNet::Clans_GetBoards | Gets clan boards created for clanHandle. Boards are returned if we are a clan member, or if allowPublicReads in Clans_CreateBoard() was passed as false. However, if we are banned from this clan, no boards are returned |
RakNet::Clans_GetMemberProperties | Returns properties for a clan member of a given clan |
RakNet::Clans_GetMembers | Returns all clan members for this clan. Each entry returned contains handle, description, binary data, status (leader, regular member, subleader) |
RakNet::Clans_GetPosts | Gets all posts for a particular topic. If postId is not a topic but is instead a post in a topic, treat it as if the topic postId was passed. If we are not a clan member and the clan was created with allowPublicReads==false, then the user is not allowed to read topics |
RakNet::Clans_GetProperties | Returns clanDescription and clanBinaryData for the given clan |
RakNet::Clans_GetTopics | Gets topics (posts that are not replies to other posts, created with Clans_CreateTopic()) for the specified clanHandle and clanBoardName. If we are not a clan member and the clan was created with allowPublicReads==false, then the user is not allowed to read topics |
RakNet::Clans_GrantLeader | MyPrimaryKey becomes a subleader. newLeaderHandle becomes the leader. An email is sent with Emails_Send() to all members with the specified subject and body |
RakNet::Clans_KickAndBlacklistUser | Kicks a user from the clan and/or blacklists a user so they cannot join. Only a clan leader or subleader can perform this operation. The operation can only be performed on members of lower status (leader can perform on subleader or regular member or nonmember, subleader on regular members or nonmember). If a member is banned, they are added to the banned table which contains the member's primary key, which user banned them, and the reason. Email is sent from myPrimaryKey to all leaders if a clan member is banned. Emails is furthermore sent to all clan members if successfully kicked |
RakNet::Clans_Leave | |
RakNet::Clans_RejectJoinInvitation | If we have an open clan invitation, reject it (just delete it from the database) |
RakNet::Clans_RejectJoinRequest | Rejects a clan join request from requestingUserHandle. Send an email from myPrimaryKey to requestingUserHandle with the specified subject and body |
RakNet::Clans_RemovePost | The clan leader or subleaders may remove posts or topics from a clan board |
RakNet::Clans_ReplyToTopic | Replies to a topic created with Clans_CreateTopic(). If postId references a post within a topic, just add the reply to the last post. Banned users may not add new posts to the clan board |
RakNet::Clans_SendJoinInvitation | If myPrimaryKey is a leader or subleader of clanHandle, and invitedUserHandle is a valid user not already invited to this clan, add this user to the invite table. The invite table contains the clan, who send the invite, and who the invite was sent to, and when it was sent. Invites expire after expiration time in seconds. Also, use Emails_Send() to send an email from myPrimaryKey to invitedUserHandle with the specified subject and body |
RakNet::Clans_SendJoinRequest | |
RakNet::Clans_SetMemberRank | Lets the clan leader set the rank property for a clan member |
RakNet::Clans_SetMyMemberProperties | Each member of each clan has the the properties clanMemberDescription and clanMemberBinaryData which default to empty. These properties can be set here, and retrieved via GetClanMemberProperties |
RakNet::Clans_SetProperties | UserHandle updates the clanDescription and clanBinaryData of a clan with the specified clanHandle. userHandle must be the clan leader |
RakNet::Clans_SetSubleaderStatus | Promotes a clan member to a subleader, or demotes a subleader to a regular member. On promotion, email is sent to all members from myPrimary key with the specified subject and body. On demotion, email is sent to all leaders from myPrimary key with the specified subject and body |
RakNet::Clans_UnblacklistUser | Removes a user from the blacklist for this clan |
RakNet::Clans_WithdrawJoinInvitation | If myPrimaryKey is a leader or subleader of clanHandle, and invitedUserHandle is a valid user with an invite to this clan, remove this invite. Also, use Emails_Send() to send an email from myPrimaryKey to invitedUserHandle with the specified subject and body |
RakNet::Clans_WithdrawJoinRequest | Withdraws a previously sent clan join request via SendClanJoinRequest. Use Emails_Send() to send an email from myPrimaryKey to the clan leader and all subleaders with the specified subject and body |
RakNet::Client_ChangeHandle | Changes the handle for a user |
RakNet::Client_GetEmailAddress | Returns the email address associated with a specific handle, invalid handle. This is used for password recovery |
RakNet::Client_GetIgnoreList | Returns all users I have ignored |
RakNet::Client_GetPasswordByPasswordRecoveryAnswer | Returns the password associated with a handle, if the passwordRecoveryAnswer is correct |
RakNet::Client_GetPasswordRecoveryQuestionByHandle | Returns the passwordRecoveryQuestion associated with handle, invalid handle |
RakNet::Client_Login | |
RakNet::Client_RegisterAccount | This creates a new account in the database, which can be used in a subsequent call to Login. Most parameters are optional. handle is not optional, and must be unique using case-insensitive compare. emailAddress should be validated to have a sensible format, including an @ sign and a period with a 3 letter extension. allowLoginWithoutEmailAddressValidation is used in Client_Login to potentially disallow logon attempts with unverified email addresses |
RakNet::Client_StartIgnore | Adds the specified user to an ignore list for my user. Recommended to store the primary key of the remote user, both for speed and so if the other use changes their handle it still works. The ignore list is checked for friend invites, emails, and elsewhere where indicated. Ignoring is uni-directional, so if A ignores B, A will block messages from B where appropriate, but B will not immediately block messages from A |
RakNet::Client_StopIgnore | Removes an entry in the database such that myHandle will no longer ignore theirHandle |
RakNet::Client_UpdateAccount | |
RakNet::Client_ValidateHandle | Looks up in the database if this handle is already in use, subject to the usual constraints of handles. This will be used by the user to quickly check for available handles |
CommandParserInterface | The interface used by command parsers |
RakNet::Connection_RM2 | This class represents a connection between two instances of ReplicaManager2 Represents a connection. Allocated by user supplied factory interface Connection_RM2Factory Implicitly created as needed Generally you will want to implement at a minimum the Construct() function, used as a factory function to create your game objects |
RakNet::Connection_RM2Factory | Implement this factory class to return instances of your Connection_RM2 derived object. This is used as a class factory and exposes functionality related to the connection and the system |
RakNet::Connection_RM3 | Each remote system is represented by Connection_RM3. Used to allocate Replica3 and track which instances have been allocated Important function: AllocReplica() - must be overridden to create an object given an identifier for that object, which you define for all objects in your game |
ConnectionGraph | A connection graph. Each peer will know about all other peers |
ConnectionGraph2 | A one hop connection graph. Sends ID_CONNECTION_GRAPH_DISCONNECTION_NOTIFICATION, ID_CONNECTION_GRAPH_CONNECTION_LOST, ID_CONNECTION_GRAPH_NEW_CONNECTION All identifiers are followed by SystemAddress, then RakNetGUID |
ConnectionGraph::SystemAddressAndGroupId | A node in the connection graph |
ConsoleServer | The main entry point for the server portion of your remote console application support. ConsoleServer takes one TransportInterface and one or more CommandParserInterface (s) The TransportInterface will be used to send data between the server and the client. The connecting client must support the protocol used by your derivation of TransportInterface . TelnetTransport and RakNetTransport are two such derivations . When a command is sent by a remote console, it will be processed by your implementations of CommandParserInterface |
RakNet::CreateRoom_Func | Create a room. Each user can be in at most one room, so will fail if the user is already in a room |
RakNet::CustomRoomPropertiesSet_Notification | The custom properties for the room has changed |
DatabaseCellUpdate | The value to write to a cell in a remote database |
DataBlockEncryptor | Encrypts and decrypts data blocks |
DataCompressor | Does compression on a block of data. Not very good compression, but it's small and fast so is something you can compute at runtime |
DirectoryDeltaTransfer | Simple class to send changes between directories. In essence, a simple autopatcher that can be used for transmitting levels, skins, etc |
RakNet::Emails_Delete | Deletes an email with a specified ID. This ID is returned in GetEmail and should uniquely identify an email (it's fine to use the primary key). Note: Emails are not actually deleted from the database in this function. This just sets the deletedBySender or deletedByReciever flags. Emails are actually stored in a log recording past emails and sender and receiver primary key. They are not truly destroyed until done so with System_PruneAccounts |
RakNet::Emails_Get | Returns emails as noted. Emails which were marked deleted are not returned |
RakNet::Emails_Send | Adds to an emails table from myHandle (store primary key) to recipient handles (store primary key) the specified subject, body, and binary data. Emails are persistent, therefore emails should be stored in a separate table and referenced by the user. Deleting the user does not delete previously send email. Emails should have an automatic timestamp to store when they were created. Email should be flagged as sent=true (boolean), markedRead=true (boolean), deletedBySender=false (boolean), deletedByReciever=false (boolean) |
RakNet::Emails_SetStatus | Sets the status flag for an email. This is a property defined by and used by the user |
EmailSender | Rudimentary class to send email from code |
RakNet::EnterRoom_Func | Joins a room if possible. If not, creates a room |
FileListNode | Represents once instance of a file |
FileListProgress | Callback interface set with FileList::SetCallback() in case you want progress notifications when FileList::AddFilesFromDirectory() is called |
FileListTransfer | A plugin to provide a simple way to compress and incrementally send the files in the FileList structure. Similar to the DirectoryDeltaTransfer plugin, except that it doesn't send deltas based on pre-existing files or actually write the files to disk |
FileListTransferCBInterface | Used by FileListTransfer plugin as a callback for when we get a file. You get the last file when fileIndex==setCount |
FLP_Printf | Implementation of FileListProgress to use RAKNET_DEBUG_PRINTF |
RakNet::Friends_AcceptInvite | Stores in the database that this user is now my friend. This is bidirectional, which is to say if someone accepts an add friend invite, they are my friend, and I am their friend. Recommended to store by primary key for speed and in case the friend's handle changes. Store in the emails table from my handle to their handle the subject, body, and binary data. Note: if myHandle is ignored by theirHandle, then the function fails. See AddToIgnoreList |
RakNet::Friends_GetFriends | Getse all friends to this user |
RakNet::Friends_GetInvites | Returns all invites for this user |
RakNet::Friends_RejectInvite | Removes from the database the pending add friend invite. Operation completes even if ignored. Unless ignored, store in the emails table from my handle to their handle the subject, body, binary data, and procedure type flag |
RakNet::Friends_Remove | Ends a friendship between two users. Remove from the database the friend entry between my handle and their handle. As with accept add friend invite, this is bidirectional. Either user can terminate the friendship. Store in the emails table from my handle to their handle the subject, body, and binary data, and procedure type flag |
RakNet::Friends_SendInvite | Stores in the database an add friend invite from my handle to their handle. The combination of my handle and their handle must be unique, so you cannot send more than one add friend invite to a single user. Sends an email to their handle the subject, body, and binary data. Note: if myHandle is ignored by theirHandle, then the function fails. See Client_StartIgnore |
FullyConnectedMesh | |
FullyConnectedMesh2 | |
RakNet::FunctionThread | |
RakNet::Functor | |
RakNet::GetBanReason_Func | For a given room, get the reason parameter of KickMember_Func when we were kicked out |
RakNet::GetInvitesToParticipant_Func | Gets all invitations to you to various rooms |
RakNet::GetReadyStatus_Func | Gets the ready states for every user in the room, excluding spectators |
RakNet::GetRoomLockState_Func | Gets the lock state of the room |
RakNet::GetRoomProperties_Func | Given a named room, return the properties of that room, including member list |
RakNet::GrantModerator_Func | Give moderator to another player. Moderators cannot be spectators |
RakNet::HiddenFromSearchesSet_Notification | The room is now hidden, or no longer hidden, from searches |
HTTPConnection | Use HTTPConnection to communicate with a web server. Start an instance of TCPInterface via the Start() command. Instantiate a new instance of HTTPConnection, and associate TCPInterface with the class in the constructor. Use Post() to send commands to the web server, and ProcessDataPacket() to update the connection with packets returned from TCPInterface that have the system address of the web server This class will handle connecting and reconnecting as necessary |
HTTPConnection::BadResponse | Encapsulates a raw HTTP response and response code |
HuffmanEncodingTree | This generates special cases of the huffman encoding tree using 8 bit keys with the additional condition that unused combinations of 8 bits are treated as a frequency of 1 |
HuffmanEncodingTreeFactory | Creates instances of the class HuffmanEncodingTree |
InlineFunctor | A base class to derive functors from for the InlineFunctorProcessor system |
InlineFunctorProcessor | A base class that will allow you to call YieldOnFunctor() from within a function, and continue with that function when the asynchronous processing has completed |
InternalPacket | |
RakNet::IsInQuickJoin_Func | Returns if you are waiting in quick join mode |
RakNet::JoinByFilter_Func | |
RakNet::KickMember_Func | Kick a member out of the room. This will also automatically ban that member from rejoining as long as the moderator does not change, or the member is unbanned |
RakNet::LastSerializationResult | Represents the serialized data for an object the last time it was sent. Used by Connection_RM3::OnAutoserializeInterval() and Connection_RM3::SendSerializeIfChanged() |
RakNet::LeaveRoom_Func | Leaves a room. You can leave at any time, even if the room is locked |
LightweightDatabaseClient | The client interface to the simple database included with RakNet, useful for a server browser or a lobby server |
LightweightDatabaseServer | A simple flat database included with RakNet, useful for a server browser or a lobby server. A flat database interface. Adds the ability to track IPs of row updaters and passwords for table read and write operations, Best used for data in which queries which do not need to be updated in real-time |
DataStructures::List< list_type > | Array based implementation of a list |
RakNet::Lobby2Callbacks | Every Lobby2Message processed with Lobby2Client::SendMsg() while connected will call the callback registered with Lobby2Client::SetCallbackInterface() |
RakNet::Lobby2Client | |
RakNet::Lobby2Message | |
RakNet::Lobby2Plugin | Both the server and pc client plugins derive from this class |
RakNet::Lobby2Printf | Just print out the name of the message by default. This class is used in the sample |
RakNet::Lobby2Server | |
RakNet::Lobby2Server::ConfigurationProperties | Server configuration properties, to customize how the server runs specific commands |
RakNet::Lobby2Server_PGSQL | PostgreSQL specific functionality to the lobby server |
RakNet::Lobby2ServerCommand | |
LogCommandParser | Adds the ability to send logging output to a remote console |
LogCommandParser::SystemAddressAndChannel | One of these structures is created per player |
DataStructures::Map< key_type, data_type, key_comparison_func > | |
MemoryCompressor | Compress one or more blocks of data |
DataStructures::MemoryPool< MemoryBlockType > | |
MessageFilter | Assigns systems to FilterSets. Each FilterSet limits what kinds of messages are allowed. The MessageFilter plugin is used for security where you limit what systems can send what kind of messages. You implicitly define FilterSets, and add allowed message IDs and RPC calls to these FilterSets. You then add systems to these filters, such that those systems are limited to sending what the filters allows. You can automatically assign systems to a filter. You can automatically kick and possibly ban users that stay in a filter too long, or send the wrong message. Each system is a member of either zero or one filters. Add this plugin before any plugin you wish to filter (most likely just add this plugin before any other) |
DataStructures::MLKeyRef< templateType > | |
RakNet::ModeratorChanged_Notification | The room has a new moderator (possibly you) |
DataStructures::Multilist< _MultilistType, _DataType, _KeyType, _IndexType > | |
NatPunchthroughClient | |
NatPunchthroughServer | |
NetworkIDManager | |
NetworkIDObject | Unique shared ids for each object instance |
DataStructures::OrderedList< key_type, data_type, default_comparison_function > | |
Packet | This represents a user message from another system |
PacketConsoleLogger | Packetlogger that logs to a remote command console |
PacketFileLogger | Packetlogger that outputs to a file |
PacketLogger | Writes incoming and outgoing messages to the screen. This will write all incoming and outgoing messages to the console window, or to a file if you override it and give it this functionality |
PacketOutputWindowLogger | Packetlogger that outputs to the output window in the debugger. Windows only |
DataStructures::Page< KeyType, DataType, order > | |
PluginInterface2 | PluginInterface2 provides a mechanism to add functionality in a modular way. MessageHandlers should derive from PluginInterface and be attached to RakPeer using the function AttachPlugin On a user call to Receive, OnReceive is called for every PluginInterface, which can then take action based on the message passed to it. This is used to transparently add game-independent functional modules, similar to browser plugins |
DataStructures::Queue< queue_type > | A queue implemented as an array with a read and write index |
DataStructures::QueueLinkedList< QueueType > | A queue implemented using a linked list. Rarely used |
RakNet::QuickJoinEnteredRoom_Notification | Quick join succeeded, and you are now in a room |
RakNet::QuickJoinExpired_Notification | The quick join duration has expired without joining or creating any rooms |
RakNetCommandParser | This allows a console client to call most of the functions in RakPeer |
RakNetGUID | |
RakNetStatistics | Network Statisics Usage |
RakNetTransport | Use RakNetTransport if you need a secure connection between the client and the console server. RakNetTransport automatically initializes security for the system. Use the project CommandConsoleClient to connect To the ConsoleServer if you use RakNetTransport Use RakNetTranport2, which is a plugin |
RakNetTransport2 | Use RakNetTransport if you need a secure connection between the client and the console server. RakNetTransport automatically initializes security for the system. Use the project CommandConsoleClient to connect To the ConsoleServer if you use RakNetTransport |
RakNetTransportCommandParser | RakNetTransport has its own command parser to enable remote users to change the command console's password |
RakPeer | The main interface for network communications |
RakPeerInterface | The main interface for network communications |
RakNet::RakString | String class Has the following improvements over std::string Reference counting: Suitable to store in lists Varidic assignment operator Doesn't cause linker errors |
RakNet::Ranking_GetMatchBinaryData | Because of the large amount of binary data potentially returned, this function is used to retrieve binary data for a particular match |
RakNet::Ranking_GetMatches | Gets matches recorded with Ranking_SubmitMatch ordered from most recent to least recent. Each returned match has all columns submitted to Ranking_SubmitMatch, except binary data, which can be retrieved with Ranking_GetMatchBinaryData. Additionally, each returned match returns the primary key of each match, to be passed to Ranking_GetMatchBinaryData |
RakNet::Ranking_GetRating | Get rating for a player |
RakNet::Ranking_GetTotalScore | When a match is submitted with Ranking_SubmitMatch, the total running score and number of matches played for each player for each game title and game mode combination should be recorded. Because matches can be pruned wth PruneMatches(), the total score sum and number of scores submitted should be stored, rather than summed up from prior submitted matches |
RakNet::Ranking_PruneMatches | Will delete all matches submitted with SubmitMatch over PruneTime days old. Will also prune matches if the total storage space of all matches exceeds PruneSizeMB megabytes in the database |
RakNet::Ranking_SubmitMatch | Will record in the database the results of a match. This will store in the database the the match which is defined by the the match notes, match id, winner and loser participant primary keys, winner and loser participant scores, and binary data |
RakNet::Ranking_WipeMatches | Deletes all matches submitted with submit match. Also deletes all scores for all players associated with this titleName and gameType (e.g. same thing that WipeScoresForPlayer does, but for all players) |
RakNet::Ranking_WipeRatings | Deletes all ratings for all players for this combination of titleName and gameType |
RakNet::Ranking_WipeScoresForPlayer | Resets the sum of all submitted scores to 0, the number of scores submitted to 0 |
ReadyEvent | |
ReceiveConstructionInterface | |
ReceiveDownloadCompleteInterface | |
RefCountedObj | World's simplest class :) |
ReliabilityLayer | Datagram reliable, ordered, unordered and sequenced sends. Flow control. Message splitting, reassembly, and coalescence |
RemoteClient | Stores information about a remote client |
RakNet::RemoveUserFromQuickJoin_Func | Leave quick join mode |
Replica | The interface to derive your game's networked classes from |
RakNet::Replica2 | Base class for game objects that use the ReplicaManager2 system All game objects that want to use the ReplicaManager2 functionality must inherit from Replica2. Generally you will want to implement at a minimum Serialize(), Deserialize(), and SerializeConstruction() |
RakNet::Replica3 | Base class for your replicated objects for the ReplicaManager3 system. To use, derive your class, or a member of your class, from Replica3 Implement all pure virtual functions |
ReplicaManager | A management system for your game objects and players to make serialization, scoping, and object creation and destruction easier |
RakNet::ReplicaManager2 | A management system for your game objects and players to make serialization, scoping, and object creation and destruction easier |
RakNet::ReplicaManager3 | 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 an 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() |
RakNet::RoomDestroyedOnModeratorLeft_Notification | |
RakNet::RoomInvitationSent_Notification | You have received an invitation to a room |
RakNet::RoomInvitationWithdrawn_Notification | A previous room invitation is no longer valid (possibly due to moderator change, or the room no longer exists) |
RakNet::RoomLockStateSet_Notification | The room is now, or is no longer, locked |
RakNet::RoomMemberHandleSet_Notification | A room member has changed their handle |
RakNet::RoomMemberJoinedRoom_Notification | A room member has joined the room |
RakNet::RoomMemberKicked_Notification | A room member has been kicked out of the room (possibly you) |
RakNet::RoomMemberLeftRoom_Notification | A room member has left the room |
RakNet::RoomMemberReadyStatusSet_Notification | Another room member has changed their ready status |
RakNet::RoomMemberStartedSpectating_Notification | Another room member has started spectating |
RakNet::RoomMemberStoppedSpectating_Notification | Another room member has stopped spectating |
RakNet::RoomNameSet_Notification | The name of the room has been changed |
RakNet::RoomsPlugin | Used to create rooms for players where they can matchmake A room is similar to the rooms you see in other lobby systems, where groups of players can join together in order to start a game match Each player can be in at most one room Each player name must be unique Each room has one moderator, which can perform operations on the room such as kicking out members This plugin networks the AllGamesRoomsContainer class, which performs the actual functionality |
RakNet::RoomsPluginFunc | |
RakNet::RoomsPluginNotification | |
Router | Used to route messages between peers |
RouterInterface | On failed directed sends, RakNet can call an alternative send function to use |
RakNet::RPC3 | |
RPCParameters | |
RakNet::SearchByFilter_Func | |
SendDownloadCompleteInterface | |
RakNet::SendInvite_Func | |
RakNet::SerializationContext | Contextual information about serialization, passed to some functions in Replica2 |
RakNet::SerializeParameters | Parameters passed to Replica3::Serialize() |
RakNet::SetCustomRoomProperties_Func | |
RakNet::SetDestroyOnModeratorLeave_Func | |
RakNet::SetHiddenFromSearches_Func | Set or unset the room hidden from searches. If a room is hidden from searches, it can only be joined through invitations |
RakNet::SetReadyStatus_Func | |
RakNet::SetRoomLockState_Func | |
SimpleMutex | An easy to use mutex |
DataStructures::SingleProducerConsumer< SingleProducerConsumerType > | A single producer consumer implementation without critical sections |
RakNet::SlotCountsSet_Notification | The slot counts in the room has changed |
SocketDescriptor | Describes the local socket to use for RakPeer::Startup |
RakNet::StartSpectating_Func | |
RakNet::StopSpectating_Func | |
StrAndBool | The string plus a bool telling us if this string was copied or not |
StringCompressor | Writes and reads strings to and from bitstreams |
RakNet::StringTable | Writes a string index, instead of the whole string |
RakNet::System_BanUser | Bans a specific user (will be most likely called by a moderator). Adds the user's primary key to a ban table, along with the name of the moderator, the reason for the ban. Banning is used to prevent the banned user from logging on for some specified duration. A date column should be present and automatically filled in. When bans are expired, the ban can be deleted from the database. However, a separate table should log bans, so that even expired bans can be looked up in case |
RakNet::System_CreateDatabase | Create all tables and stored procedures on a system that does not already have them |
RakNet::System_CreateTitle | Each title essentially corresponds to a game. For example, the same lobby system may be used for both asteroids and Pac-man. When logging in, and for some functions, it is necessary to specify which title you are logging in under. This way users playing asteroids do not interact with users playing pac-man, where such interations are game specific (such as ranking) |
RakNet::System_DeleteAccount | Flags as deleted an account registered with RegisterAccount. Accounts are not actually deleted, only tagged as deleted |
RakNet::System_DestroyDatabase | Destroy all tables and stored procedures created with System_CreateDatabase |
RakNet::System_PruneAccounts | |
RakNet::System_RegisterProfanity | Adds the input strings to a table of profanity. non-unique or empty strings can be ignored. This table will be used internally to ensure that handles and clan names do not contain profanity. Multiple calls add to the table. This table will be used for functions that take a user-defined string that is highly visible, such as clan and user names. It does not need to be checked for emails or message boards |
RakNet::System_SetEmailAddressValidated | For the client with the given handle, mark a column emailAddressValidated as true or false as appropriate. This is potentially used in Client_Login |
SystemAddress | Network address for a system Corresponds to a network address This is not necessarily a unique identifier. For example, if a system has both LAN and internet connections, the system may be identified by either one, depending on who is communicating Use RakNetGUID for a unique per-instance of RakPeer to identify systems |
DataStructures::Table | Holds a set of columns, a set of rows, and rows times columns cells. The table data structure is useful if you want to store a set of structures and perform queries on those structures This is a relatively simple and fast implementation of the types of tables commonly used in databases See TableSerializer to serialize data members of the table See LightweightDatabaseClient and LightweightDatabaseServer to transmit the table over the network |
DataStructures::Table::Cell | Holds the actual data in the table |
DataStructures::Table::ColumnDescriptor | |
DataStructures::Table::Row | Stores the list of cells for this row, and a special flag used for internal sorting |
TelnetTransport | Use TelnetTransport to easily allow windows telnet to connect to your ConsoleServer To run Windows telnet, go to your start menu, click run, and in the edit box type "telnet <IP>" where <IP> is the ip address of your ConsoleServer (most likely the same IP as your game). This implementation always echos commands |
ThreadPool< InputType, OutputType > | |
ThreadsafePacketLogger | Same as PacketLogger, but writes output in the user thread |
TransportInterface | Defines an interface that is used to send and receive null-terminated strings. In practice this is only used by the CommandParser system for for servers |
RakNet::UDPForwarder | Forwards UDP datagrams. Independent of RakNet's protocol |
RakNet::UDPProxyClient | Communicates with UDPProxyCoordinator, in order to find a UDPProxyServer to forward our datagrams |
RakNet::UDPProxyClientResultHandler | Callback to handle results of calling UDPProxyClient::RequestForwarding() |
RakNet::UDPProxyCoordinator | Middleman between UDPProxyServer and UDPProxyClient, maintaining a list of UDPProxyServer, and managing state for clients to find an available forwarding server |
RakNet::UDPProxyServer | UDPProxyServer to control our instance of UDPForwarder |
RakNet::UDPProxyServerResultHandler | Callback to handle results of calling UDPProxyServer::LoginToCoordinator() |
RakNet::UnbanMember_Func | Allow a member previously kicked out of the room to rejoin |