Main Page | Modules | Class List | File List | Class Members | File Members

Functions
[Lobby Service]

Messages sent to the lobby server. More...

Functions

GSbool Lobby_Engine (GSuint uiMaxPostingDelay=500, GSuint uiMaxsOperationalDelay=800)
 Update connection status-messages handling relating to the lobby service.

GSbool LobbySend_Connect ()
 This function is deprecated.

GSbool LobbySend_Disconnect (GSint iLobbyServerID)
 Disconnect from the lobby server.

GSbool LobbySend_DisconnectAll ()
 Disconnect from the lobby server.

GSbool LobbySend_Login (const GSchar *szGames, GSbool bPublicIP=GS_TRUE, GSushort usPlayerStatus=0)
 This function is used to log into the lobby service.

GSbool LobbySend_JoinLobby (GSint iGroupID, GSint iLobbyServerID, const GSchar *szPassword, GSint iconfig=0)
 Join a lobby.

GSbool LobbySend_JoinRoom (GSint iGroupID, GSint iLobbyServerID, const GSchar *szPassword, GSbool bVisitor, const GSchar *szVersion, GSint iconfig=0)
 Join a room.

GSbool LobbySend_LeaveGroup (GSint iGroupID, GSint iLobbyServerID)
 Leave a group.

GSbool LobbySend_CreateRoom (GSint iParentGroupID, GSint iLobbyServerID, const GSchar *szRoomName, const GSchar *szGames, GSushort usRoomType, GSushort usMaxPlayers, GSushort usMaxVisitors, const GSvoid *vpData, GSint iSize, const GSvoid *vpAltGroupInfo, GSint iAltGroupInfoSize, const GSchar *szPassword, const GSchar *szGameVersion, const GSchar *szGSVersion)
 Create a room.

GSbool LobbySend_StartMatch (GSint iGroupID, GSint iLobbyServerID, GSuint uiMode=0)
 Tell the lobby server that you are ready to start the match.

GSbool LobbySend_MatchFinish (GSint iGroupID, GSint iLobbyServerID)
 Tell the lobby server that you are finishing the match.

GSbool LobbySend_NewMaster (GSint iGroupID, GSint iLobbyServerID, GSchar *szUsername)
 Tell the lobby server that you are ready to start the match.

GSbool LobbySend_PlayerMatchStarted (GSint iGroupID, GSint iLobbyServerID)
 Tell the lobby server that a match is finished.

GSbool LobbySend_PlayerMatchFinished (GSint iGroupID, GSint iLobbyServerID)
 Tell the lobby server that a match is finished.

GSbool LobbySend_PlayerKick (GSint iGroupID, GSint iLobbyServerID, GSchar *szUserName, GSchar *szReason)
 Tell the lobby server that to kick a player.

GSbool LobbySend_GetParentGroupID (GSint iGroupID, GSint iLobbyServerID)
 Tell the lobby server that to get a parent group id.

GSbool LobbySend_UpdateRoomConfig (GSint iGroupID, GSint iLobbyServerID, GSbyte bDedicatedServer, GSbyte bOpen, GSbyte bScore_Submission, GSint iMaxPlayers, GSint iMaxVisitors, const GSchar *szPassword, const GSvoid *vpGroupInfo, GSint iGroupInfoSize, const GSvoid *vpAltGroupInfo, GSint iAltGroupInfoSize)
 Tell the lobby server to update room configuration flags.

GSbool LobbySend_GetGroupInfo (GSint iGroupID, GSint iLobbyServerID, GSint iconfig)
 Get information about a group.

GSbool LobbySend_GetAlternateGroupInfo (GSint iGroupID, GSint iLobbyServerID)
 Get information about a group.

GSbool LobbySend_InitMatchResults (GSuint uiMatchID)
 Initialize the library score submission system.

GSbool LobbySend_SetMatchResult (const GSchar *szUserName, GSuint uiFieldID, GSint iFieldValue)
 Set results for a player in a match.

GSbool LobbySend_SubmitMatchResult (GSint iGroupID, GSint iLobbyServerID)
 Send the compiled scores of a match to the lobby server.

GSbool LobbySend_ClearMatchResult ()
 Unload the internal score submission system.

GSbool LobbySend_UpdatePing (GSint iGroupID, GSint iLobbyServerID, GSushort usPing)
 Send a new ping value to the server.

GSbool LobbySend_GameStart (GSint iGroupID, GSint iLobbyServerID)
 Send a message to inform the lobby server that the game is started.

GSbool LobbySend_GameConnected (GSint iGroupID, GSint iLobbyServerID)
 Send a message to inform the lobby server that you are connected.

GSbool LobbySend_GameFinish (GSint iGroupID, GSint iLobbyServerID)
 Send a message to inform the lobby server about the end of the game.

GSbool LobbySend_GameReady (GSint iGroupID, GSint iLobbyServerID, GSvoid *vpGameData, GSint iSize, GSushort usPort=0, GSchar *szIPAddress=0)
 Send a message to inform the lobby server about connection readiness.

GSbool LobbySend_UpdateGameInfo (GSint iGroupID, GSint iLobbyServerID, GSvoid *vpGameData, GSint iSize, GSushort usPort=0, GSchar *szIPAddress=0)
 Tell the lobby server about new game information.

GSbool LobbySend_PlayerBan (GSint iGroupID, GSint iLobbyServerID, GSchar *szUserName, GSchar *szReason)
 Ban a player from a group.

GSbool LobbySend_PlayerUnBan (GSint iGroupID, GSint iLobbyServerID, GSchar *szUserName)
 Un-Ban a player from a group.

GSbool LobbySend_GetPlayerBannedList (GSint iGroupID, GSint iLobbyServerID)
 Get banned player list.

GSbool LobbySend_SetPlayerInfo (GSvoid *vpPlayerInfo, GSint iPlayerInfoSize)
 Set player specific information.

GSbool LobbySend_GetPlayerGroups (GSchar *szUsername)
 Set player specific information.

GSbool LobbySend_ChangeRequestedLobbies (const GSchar *szGames)
 This function is used to get a new list of available lobbies for a game.


Detailed Description

These function are used to send lobby related message to the server

Function Documentation

GSbool Lobby_Engine GSuint  uiMaxPostingDelay = 500,
GSuint  uiMaxsOperationalDelay = 800
 

Description:
Updates the connection between the client and the server, and handles the delivery of queued up messages and reception of messages relating to the lobby service. This function should be called regularly to ensure that the application will run smoothly.
Returns:
Status of the function call
Return values:
GS_TRUE The connection is ok and function call was a success.
GS_FALSE There has been a communication problem.
Parameters:
uiMaxPostingDelay The maximum time to be spent inside the engine to read incomming messages and posting them to the message queue. (Milliseconds)
uiMaxsOperationalDelay The maximum time to be spent inside the engine to decode message in the queue and calling appropriate callback. (Milliseconds)

GSbool LobbySend_ChangeRequestedLobbies const GSchar *  szGames  ) 
 

Description:
This function is used to get a new list of available lobbies for a game The parameter szGame is used to narrow the list of groups received with only those who are running the game specified in the argument field. More than one game can be specify, each ugly game name must be separated by one of those character: | ; or ,
Callbacks:
CBLobbyRcv_NewLobby for every lobby supporting the new game name
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
szGames List of game separated by comma or pipe | character (can be empty)

GSbool LobbySend_ClearMatchResult  ) 
 

Description:
Unload the internal score submission system previously initialized for a specific match. Must be called after scores has been submitted to the lobby server.
Related Function:
LobbySend_InitMatchResults()
LobbyFix_SubmitMatchResultReply()
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure

GSbool LobbySend_Connect  ) 
 

Description:
You don't need to call this function anymore to open up a connection to a lobby server.
Returns:
Status of the function call
Return values:
GS_TRUE The connection is ok and function call was a success
GS_FALSE There has been a problem with the communication of messages between the client and the server

GSbool LobbySend_CreateRoom GSint  iParentGroupID,
GSint  iLobbyServerID,
const GSchar *  szRoomName,
const GSchar *  szGames,
GSushort  usRoomType,
GSushort  usMaxPlayers,
GSushort  usMaxVisitors,
const GSvoid *  vpData,
GSint  iSize,
const GSvoid *  vpAltGroupInfo,
GSint  iAltGroupInfoSize,
const GSchar *  szPassword,
const GSchar *  szGameVersion,
const GSchar *  szGSVersion
 

Description:
Create a new room on the lobby server. After successfully creating the room you must join if before it shows up.
Callbacks:
CBLobbyRcv_CreateRoomReply<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iParentGroupID ID of the parent group
iLobbyServerID The id of the server on which the room is created
szRoomName Name of the lobby
szGames Games played in the created lobby
usRoomType The type of the game that will be played in the room
ROOM_CLIENTHOST: Should always be this for ingame clients.
usMaxPlayers Maximum number of player in the room
usMaxVisitors Maximum number of visitor in the room
vpData Group info. This can be any binary data the client wants.
iSize Size of the group info
vpAltGroupInfo Alternate Group Info. This can be any binary data the client wants. See LobbySend_GetAlternateGroupInfo()
iAltGroupInfoSize Size of the alternate group info
szPassword Password to lock the lobby
szGameVersion Version of the game played in this room (information purpose only)
szGSVersion Version of the game played in this room given by ubi.com (gs-game version will be checked upon joining that room)

GSbool LobbySend_Disconnect GSint  iLobbyServerID  ) 
 

Description:
This function will the player from a specific lobby server. After disconnecting from a lobby server, you will still receive Lobby-related messages if your are connected to another lobby server.
Callbacks:
CBLobbyRcv_GroupRemove for every group on that Lobby Server
CBLobbyRcv_LobbyDisconnection for every Lobby Server
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iLobbyServerID The id of the lobby server you are disconnecting from.

GSbool LobbySend_DisconnectAll  ) 
 

Description:
Disconnect from all the Lobby servers. You will not receive anymore lobby-related messages after calling this function.
Callbacks:
CBLobbyRcv_GroupRemove for every group
CBLobbyRcv_LobbyDisconnection for every Lobby Server
CBLobbyRcv_LobbyDisconnectAll<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure

GSbool LobbySend_GameConnected GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Inform the lobby server that you are connected to the game server.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_GameFinish GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Inform the lobby server that the game you were playing is now finished
Callbacks:
CBLobbyRcv_GroupConfigUpdate to everyone in parent lobby
CBLobbyRcv_PlayerStatusUpdate to everyone in parent lobby
CBLobbyRcv_InfoRefresh<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_GameReady GSint  iGroupID,
GSint  iLobbyServerID,
GSvoid *  vpGameData,
GSint  iSize,
GSushort  usPort = 0,
GSchar *  szIPAddress = 0
 

Description:
Called by the master, this function inform the lobby server that the host is ready to accept connection. It will set the basic game data that will be distributed among other players.
Callbacks:
CBLobbyRcv_GameReadyReply<br> CBLobbyRcv_GroupConfigUpdate to everyone in parent lobby
CBLobbyRcv_GameStarted to everyone in room
CBLobbyRcv_PlayerStatusUpdate to everyone in parent lobby
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located
vpGameData Specific game data (i.e. DirectPlay structure)
iSize The size of the game data.
usPort The port of the game server
szIPAddress IP address of the game server.

GSbool LobbySend_GameStart GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Tell the lobby server that the host have started his game. This call should be followed by the LobbySend_GameReady() function once the host is ready to accept connection.
Related Function:
LobbySend_GameReady()
LobbyFix_GameStartReply()
Callbacks:
CBLobbyRcv_StartGameReply<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_GetAlternateGroupInfo GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Get the alternate information about a group.
Callbacks:
CBLobbyRcv_GetAlternateGroupInfoReply
Returns:
Status of the function call.
Parameters:
iGroupID The id of the group the player is in.
iLobbyServerID The id of the server on which the specified group is located.

GSbool LobbySend_GetGroupInfo GSint  iGroupID,
GSint  iLobbyServerID,
GSint  iconfig
 

Description:
Get information about a group
Callbacks:
CBLobbyRcv_RoomInfo if LSM_GROUPINFO is set.
CBLobbyRcv_MemberJoined if LSM_GROUPMEMBERS is set.
CBLobbyRcv_NewRoom if LSM_CHILDGROUPINFO is set.
Returns:
Status of the function call
Parameters:
iGroupID The id of the group the player is in
iLobbyServerID The id of the server on which the specified group is located
iconfig Flag of information you want to receive about the group LSM_GROUPINFO to receive information about the group. LSM_CHILDGROUPINFO to receive information about child group LSM_GROUPMEMBERS to receive list of player member of the specified group LSM_ALLINFO for all previous flags

GSbool LobbySend_GetParentGroupID GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Query the lobby server to get the parent group id of a group.
Callbacks:
CBLobbyRcv_ParentGroupIDReply
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The ID of the group we want to get info from.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_GetPlayerBannedList GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Ask the lobby server about all banned players for a specific group.
Callbacks:
CBLobbyRcv_PlayerBanList<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_GetPlayerGroups GSchar *  szUsername  ) 
 

Description:
Get the groups that a player is member of
Callbacks:
CBLobbyRcv_PlayerGroupList for every group the player is in.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
szUsername The username of the player we want to get info from

GSbool LobbySend_InitMatchResults GSuint  uiMatchID  ) 
 

Description:
Initialize the library score submission system, this has to be called before doing any other score submission-related function call. Note that you must initialize the score submission system prior to any match that will be submitted. This should be call after receiving the MatchStarted message, and the scores should be cleared after being submitted to the lobby server with LobbySend_SubmitMatchResult.
Related Function:
LobbySend_StartMatch()
LobbySend_SubmitMatchResult()
LobbySend_ClearMatchResult()
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
uiMatchID The match unique id as returned by CBLobbyRcv_MatchStarted

GSbool LobbySend_JoinLobby GSint  iGroupID,
GSint  iLobbyServerID,
const GSchar *  szPassword,
GSint  iconfig = 0
 

Description:
Join a lobby on the lobby server.
Callbacks:
CBLobbyRcv_JoinLobbyReply CBLobbyRcv_LobbyInfo if LSM_GROUPINFO is set
::LobbyRcv_NewRoom if LSM_CHILDGROUPINFO is set
CBLobbyRcv_MemberJoined if LSM_GROUPMEMBERS is set
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the lobby to join
iLobbyServerID The id of the server on which the specified group is located
szPassword Password to join lobby if needed
iconfig Flag of information you want to receive when joining lobby LSM_GROUPINFO to receive information about joined lobby LSM_CHILDGROUPINFO to receive information about child group of the joined lobby LSM_GROUPMEMBERS to receive list of player member of joined lobby LSM_ALLINFO for all previous flags

GSbool LobbySend_JoinRoom GSint  iGroupID,
GSint  iLobbyServerID,
const GSchar *  szPassword,
GSbool  bVisitor,
const GSchar *  szVersion,
GSint  iconfig = 0
 

Description:
Join a room on the lobby server.
Callbacks:
CBLobbyRcv_JoinRoomReply<br> CBLobbyRcv_RoomInfo if LSM_GROUPINFO is set.
CBLobbyRcv_MemberJoined for every player in the room if LSM_GROUPMEMBERS is set.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the room to join
iLobbyServerID The id of the server on which the specified group is located
szPassword Password to join room if needed
bVisitor Join as visitor if true, join as player if false
szVersion The version of the game played in the room
iconfig Flag of information you want to receive when joining lobby: LSM_GROUPINFO to receive information about the joined room LSM_GROUPMEMBERS to receive list of player member of joined room

GSbool LobbySend_LeaveGroup GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
This function is used to leave a room or lobby.
Callbacks:
CBLobbyRcv_MemberLeave for yourself.
CBLobbyRcv_GroupLeaveReply<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the player want to leave
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_Login const GSchar *  szGames,
GSbool  bPublicIP = GS_TRUE,
GSushort  usPlayerStatus = 0
 

Description:
This function is used to log into the lobby service. On logging to that service, the user will receive a list of all the groups on the lobby server. The parameter szGame is used to narrow the list of groups received with only those who are running the game specified in the argument field. More than one game can be specify, each ugly game name must be separated by one of those character: | ; or ,
Callbacks:
CBLobbyRcv_LoginReply<br> CBLobbyRcv_NewLobby for every lobby that supports the game names in szGames
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
szGames List of game separated by comma or pipe | character (can be empty)
bPublicIP If this flag is enabled, the ip address will be sent to players in your along with others player infos, if not your ip will not be sent to other players, thus preventing them to ping you.
usPlayerStatus Set the player's status flag as define in LobbyDefine.h

GSbool LobbySend_MatchFinish GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Tell the lobby server that you want to stop the match. Be sure before sending that Message than other players have finished there match be cause they will no longer be able to submit there scores to the lobby server.
Callbacks:
CBLobbyRcv_MatchFinishReply CBLobbyRcv_PlayerStatusUpdate is sent to everyone in the parent group for everyone in the room.
CBLobbyRcv_UpdateRoomConfigReply is sent to everyone in the parent group
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the match will be in.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_NewMaster GSint  iGroupID,
GSint  iLobbyServerID,
GSchar *  szUsername
 

Description:
Tell the lobby server to change the master for the specified group.
Callbacks:
CBLobbyRcv_MasterNewReply<br> CBLobbyRcv_MasterChanged is sent to everyone in the parent lobby.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the match will be in.
iLobbyServerID The id of the server on which the specified group is located
szUsername The Username of the new master in the group.

GSbool LobbySend_PlayerBan GSint  iGroupID,
GSint  iLobbyServerID,
GSchar *  szUserName,
GSchar *  szReason
 

Description:
Tell the lobby server to ban a player from a lobby or room. The player won't be able to joined a group from which he was banned, it will also be impossible to join any child group of the banned group.
Callbacks:
CBLobbyRcv_MemberLeave to all players for the player that was banned
CBLobbyRcv_PlayerBanReply<br> CBLobbyRcv_PlayerBanned is sent to the banned player
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located
szUserName Username of the player that has to be banned.
szReason The reason the player was banned.

GSbool LobbySend_PlayerKick GSint  iGroupID,
GSint  iLobbyServerID,
GSchar *  szUserName,
GSchar *  szReason
 

Description:
Tell the lobby server to kick a player out of a specified group (must be master of that group)
/par Callbacks: CBLobbyRcv_MemberLeave to all players in parent lobby
CBLobbyRcv_PlayerStatusUpdate to all players in parent lobby
CBLobbyRcv_PlayerKickReply<br> CBLobbyRcv_KickOut to the kicked player

Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the match will be in.
iLobbyServerID The id of the server on which the specified group is located
szUserName The username of the player to kick.
szReason The reason the given to the kicked player for this action.

GSbool LobbySend_PlayerMatchFinished GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Tell the lobby server that the match you were playing as ended Everyone in the room has to call this function to confirm the end of the match.
Related Function:
LobbySend_StartMatch()
LobbySend_PlayerMatchStarted()
Callbacks:
CBLobbyRcv_PlayerStatusUpdate is sent to everyone in the parent group for everyone in the room.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the match will be in.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_PlayerMatchStarted GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Tell the lobby server that the match you were playing as started Everyone in the room has to call this function to confirm the start of the match
Related Function:
LobbySend_StartMatch()
LobbySend_PlayerMatchFinished()

Callbacks:
None
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the match will be in.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_PlayerUnBan GSint  iGroupID,
GSint  iLobbyServerID,
GSchar *  szUserName
 

Description:
Tell the lobby server to un-ban a player that was previously banned from a lobby or room.
Callbacks:
CBLobbyRcv_PlayerUnBanReply<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located
szUserName Username of the player that has to be banned.

GSbool LobbySend_SetMatchResult const GSchar *  szUserName,
GSuint  uiFieldID,
GSint  iFieldValue
 

Description:
Set the result for a player in a match in the library's score submission system. Each player should set the result for each other player that where in the match including himself. This will insure validity of scores submitted to the LobbyServer.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
szUserName The username of the player associated with the results
uiFieldID The result field id
iFieldValue The actual value that will be set for the specified field

GSbool LobbySend_SetPlayerInfo GSvoid *  vpPlayerInfo,
GSint  iPlayerInfoSize
 

Description:
Set player specific information stored on the server
Callback:
CBLobbyRcv_SetPlayerInfoReply<br> CBLobbyRcv_PlayerInfoUpdate is sent to all players
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
vpPlayerInfo Pointer to player info data buffer
iPlayerInfoSize of the player info data buffer

GSbool LobbySend_StartMatch GSint  iGroupID,
GSint  iLobbyServerID,
GSuint  uiMode = 0
 

Description:
Tell the lobby server that you are ready to start the match: the message will be passed allong the member of the room and the match will start.
Callbacks:
CBLobbyRcv_StartMatchReply<br> CBLobbyRcv_MatchStarted is sent to everyone in the room
CBLobbyRcv_UpdateRoomConfigReply is sent to everyone in the parent group
CBLobbyRcv_PlayerStatusUpdate is sent to everyone in the parent group for everyone in the room.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
uiMode The mode of the Match
iGroupID The id of the group the match will be in.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_SubmitMatchResult GSint  iGroupID,
GSint  iLobbyServerID
 

Description:
Send the compiled scores of a match to the lobby server for archiving, this will send a message to the lobby server and set the match result on the server-side. You will receive a confirmation of the message sent with the CBLobbyRcv_SubmitMatchResult callback.
Related Function:
LobbyFix_SubmitMatchResultReply()
Callbacks:
CBLobbyRcv_SubmitMatchResultReply
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the match took place.
iLobbyServerID The id of the server on which the specified group is located

GSbool LobbySend_UpdateGameInfo GSint  iGroupID,
GSint  iLobbyServerID,
GSvoid *  vpGameData,
GSint  iSize,
GSushort  usPort = 0,
GSchar *  szIPAddress = 0
 

Description:
Tell the lobby server about new game information; this is mostly used in the host migration process, the player becoming the new master can send new game data to the lobby server which will then redistribute this data among the other players.
Callbacks:
CBLobbyRcv_UpdateGameInfoReply<br>
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group where the game is taking place.
iLobbyServerID The id of the server on which the specified group is located
vpGameData Specific game data (i.e. DirectPlay structure)
iSize The size of the game data.
usPort The port of the game server
szIPAddress IP address of the game server.

GSbool LobbySend_UpdatePing GSint  iGroupID,
GSint  iLobbyServerID,
GSushort  usPing
 

Description:
Update the ping value for a player. When the client ping the host of a game server, he can tell his ping to the other players by calling this functions which will update his ping value on the server. The server will then forward this information to the other players.
Related Function:
LobbyFix_UpdatePing()
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the group the player is in
iLobbyServerID The id of the server on which the specified group is located
usPing The new ping of the player

GSbool LobbySend_UpdateRoomConfig GSint  iGroupID,
GSint  iLobbyServerID,
GSbyte  bDedicatedServer,
GSbyte  bOpen,
GSbyte  bScore_Submission,
GSint  iMaxPlayers,
GSint  iMaxVisitors,
const GSchar *  szPassword,
const GSvoid *  vpGroupInfo,
GSint  iGroupInfoSize,
const GSvoid *  vpAltGroupInfo,
GSint  iAltGroupInfoSize
 

Description:
Tell the lobby server to update a specific room configuration flags (Must be master). Each of those argument can be set to -1 (in case of numeric) or NULL (in case of a GSchar*) if the argument as not changed.
Callbacks:
CBLobbyRcv_UpdateRoomConfigReply<br> CBLobbyRcv_GroupConfigUpdate to everyone in the parent lobby if the config flags changed.
CBLobbyRcv_RoomInfo if the other settings changed.
Returns:
Status of the function call
Return values:
GS_TRUE Success
GS_FALSE Failure
Parameters:
iGroupID The id of the room we want to modify.
iLobbyServerID The id of the server on which the specified group is located
bDedicatedServer Set the Dedicated Server flag on the group Default Value: -1
bOpen Set the open or close flag on the group Default Value: -1
bScore_Submission Set the score submission flag on the group Default Value: -1
iMaxPlayers The maximum number of player Default Value: -1
iMaxVisitors The maximum number of visitors Default Value: -1
szPassword The password to enter the group (PASSWORDLENGTH) Default Value: NULL
vpGroupInfo The group data Default Value: NULL
iGroupInfoSize The group data size Default Value: -1
vpAltGroupInfo The alternate group info Default Value: NULL
iAltGroupInfoSize The alternate group info buffer size Default Value: -1


Ubi.com GameService SDK - ©UbiSoft Entertainment 2002
GameService development team