pub type EOS_Lobby_CreateLobbyOptions = _tagEOS_Lobby_CreateLobbyOptions;Expand description
Input parameters for the EOS_Lobby_CreateLobby function.
Aliased Type§
#[repr(C)]pub struct EOS_Lobby_CreateLobbyOptions {Show 17 fields
pub ApiVersion: i32,
pub LocalUserId: *mut EOS_ProductUserIdDetails,
pub MaxLobbyMembers: u32,
pub PermissionLevel: i32,
pub bPresenceEnabled: i32,
pub bAllowInvites: i32,
pub BucketId: *const i8,
pub bDisableHostMigration: i32,
pub bEnableRTCRoom: i32,
pub LocalRTCOptions: *const _tagEOS_Lobby_LocalRTCOptions,
pub LobbyId: *const i8,
pub bEnableJoinById: i32,
pub bRejoinAfterKickRequiresInvite: i32,
pub AllowedPlatformIds: *const u32,
pub AllowedPlatformIdsCount: u32,
pub bCrossplayOptOut: i32,
pub RTCRoomJoinActionType: i32,
}Fields§
§ApiVersion: i32API Version: Set this to EOS_LOBBY_CREATELOBBY_API_LATEST.
LocalUserId: *mut EOS_ProductUserIdDetailsThe Product User ID of the local user creating the lobby; this user will automatically join the lobby as its owner
MaxLobbyMembers: u32The maximum number of users who can be in the lobby at a time
PermissionLevel: i32The initial permission level of the lobby
bPresenceEnabled: i32If true, this lobby will be associated with the local user’s presence information. A user’s presence can only be associated with one lobby at a time. This affects the ability of the Social Overlay to show game related actions to take in the user’s social graph.
@note The Social Overlay can handle only one of the following three options at a time:
- using the bPresenceEnabled flags within the Sessions interface
- using the bPresenceEnabled flags within the Lobby interface
- using EOS_PresenceModification_SetJoinInfo
@see EOS_PresenceModification_SetJoinInfoOptions @see EOS_Lobby_JoinLobbyOptions @see EOS_Lobby_JoinLobbyByIdOptions @see EOS_Sessions_CreateSessionModificationOptions @see EOS_Sessions_JoinSessionOptions
bAllowInvites: i32Are members of the lobby allowed to invite others
BucketId: *const i8Bucket ID associated with the lobby
bDisableHostMigration: i32Is host migration allowed (will the lobby stay open if the original host leaves?) NOTE: EOS_Lobby_PromoteMember is still allowed regardless of this setting
bEnableRTCRoom: i32Creates a real-time communication (RTC) room for all members of this lobby. All members of the lobby will automatically join the RTC room when they connect to the lobby and they will automatically leave the RTC room when they leave or are removed from the lobby. While the joining and leaving of the RTC room is automatic, applications will still need to use the EOS RTC interfaces to handle all other functionality for the room.
@see EOS_Lobby_GetRTCRoomName @see EOS_Lobby_AddNotifyRTCRoomConnectionChanged
LocalRTCOptions: *const _tagEOS_Lobby_LocalRTCOptions(Optional) Allows the local application to set local audio options for the RTC Room if it is enabled. Set this to NULL if the RTC RTC room is disabled or you would like to use the defaults.
LobbyId: *const i8(Optional) Set to a globally unique value to override the backend assignment If not specified the backend service will assign one to the lobby. Do not mix and match override and non override settings. This value can be of size [EOS_LOBBY_MIN_LOBBYIDOVERRIDE_LENGTH, EOS_LOBBY_MAX_LOBBYIDOVERRIDE_LENGTH]
bEnableJoinById: i32Is EOS_Lobby_JoinLobbyById allowed. This is provided to support cases where an integrated platform’s invite system is used. In these cases the game should provide the lobby ID securely to the invited player. Such as by attaching the lobby ID to the integrated platform’s session data or sending the lobby ID within the invite data.
bRejoinAfterKickRequiresInvite: i32Does rejoining after being kicked require an invite? When this is set, a kicked player cannot return to the session even if the session was set with EOS_LPL_PUBLICADVERTISED. When this is set, a player with invite privileges must use EOS_Lobby_SendInvite to allow the kicked player to return to the session.
AllowedPlatformIds: *const u32Array of platform IDs indicating the player platforms allowed to register with the session. Platform IDs are found in the EOS header file, e.g. EOS_OPT_Epic. For some platforms, the value will be in the EOS Platform specific header file. If null, the lobby will be unrestricted.
AllowedPlatformIdsCount: u32Number of platform IDs in the array
bCrossplayOptOut: i32This value indicates whether or not the lobby owner allows crossplay interactions. If false, the lobby owner will be treated as allowing crossplay. If it is set to true, AllowedPlatformIds must have a single entry that matches the platform of the lobby owner.
RTCRoomJoinActionType: i32If bEnableRTCRoom is true, this value indicates the action to take against the RTC Room when joining the lobby. This may be used to indicate the RTCRoom should be joined immediately or manually at a later time.