다음을 통해 공유


XblMultiplayerSessionProperties

이 세션과 연결된 속성의 집합입니다. 모든 플레이어가 이러한 속성을 수정할 수 있습니다.

구문

typedef struct XblMultiplayerSessionProperties {  
    const char** Keywords;  
    size_t KeywordCount;  
    XblMultiplayerSessionRestriction JoinRestriction;  
    XblMultiplayerSessionRestriction ReadRestriction;  
    uint32_t* TurnCollection;  
    size_t TurnCollectionCount;  
    const char* MatchmakingTargetSessionConstantsJson;  
    const char* SessionCustomPropertiesJson;  
    const char* MatchmakingServerConnectionString;  
    const char** ServerConnectionStringCandidates;  
    size_t ServerConnectionStringCandidatesCount;  
    uint32_t* SessionOwnerMemberIds;  
    size_t SessionOwnerMemberIdsCount;  
    XblDeviceToken HostDeviceToken;  
    bool Closed;  
    bool Locked;  
    bool AllocateCloudCompute;  
    bool MatchmakingResubmit;  
} XblMultiplayerSessionProperties  

멤버

키워드
형식: const char**

세션과 연결된 키워드의 컬렉션입니다(선택 사항, 비워 둘 수 있음).

KeywordCount
형식: size_t

키워드 수입니다.

JoinRestriction
형식: XblMultiplayerSessionRestriction

"open" 세션에 참여할 수 있는 사용자를 제한합니다. (예약에는 효과가 없습니다. 즉, "private" 및 "visible" 세션에는 영향을 주지 않습니다.) 기본값은 "none"입니다. "local"인 경우 해당 토큰의 DeviceId가 세션에 이미 있는 다른 사람과 일치하고 "active"가 true인 사용자만 해당합니다. "followed"인 경우 로컬 사용자(위 정의 참조) 및 세션의 기존(예약되지 않은) 멤버가 팔로우하는 사용자만 예약 없이 참여할 수 있습니다.

ReadRestriction
형식: XblMultiplayerSessionRestriction

"open" 세션을 읽을 수 있는 사용자를 제한합니다. (예약에는 효과가 없습니다. 즉, "private" 및 "visible" 세션에는 영향을 주지 않습니다.) 기본값은 "none"입니다. "local"인 경우 해당 토큰의 DeviceId가 세션에 이미 있는 다른 사람과 일치하고 "active"가 true인 사용자만 해당합니다. "followed"인 경우 로컬 사용자(위 정의 참조) 및 세션의 기존(예약되지 않은) 멤버가 팔로우하는 사용자만 예약 없이 읽을 수 있습니다. 읽기 제한은 "open" 또는 "visible" 가시성의 세션에 적용되며, 초대 없이 세션을 읽을 수 있는 사용자를 결정합니다. 읽기 제한은 액세스 수준이 참가 제한 이상이어야 합니다. 즉, 'readRestriction'을 설정하지 않으면, 'joinRestriction'을 "followed"로 설정할 수 없습니다.

TurnCollection
형식: uint32_t*

차례를 나타내는 세션 MemberIds의 컬렉션입니다.

TurnCollectionCount
형식: size_t

TurnCollection 배열에 있는 항목 수입니다.

MatchmakingTargetSessionConstantsJson
형식: const char*

대상 세션 상수를 나타내는 JSON 문자열입니다.

SessionCustomPropertiesJson
형식: const char*

세션에 대한 사용자 지정 속성을 지정하는 JSON 문자열입니다. 언제든지 변경될 수 있습니다. 변경할 경우에는 multiplayer_service::write_session을 호출하여 변경 사항을 서비스에 기록합니다.

MatchmakingServerConnectionString
형식: const char*

사용할 특정 연결 문자열을 강제 적용합니다. 참가 시나리오가 진행 중인 세션에 유용합니다.

ServerConnectionStringCandidates
형식: const char**

게임 서버에 연결하기 위해 세션이 사용할 수 있는 연결 문자열의 정렬된 목록입니다. 일반적으로 타이틀은 목록에서 첫 번째 항목을 사용하지만, 정교한 타이틀은 사용자 지정 메커니즘을 사용하여 다른 항목 중 하나를 선택할 수 있습니다(예: 부하 기준).

ServerConnectionStringCandidatesCount
형식: size_t

ServerConnectionStringCandidates 배열에 있는 항목 수입니다.

SessionOwnerMemberIds
형식: uint32_t*

세션 소유자의 세션 MemberIds입니다.

SessionOwnerMemberIdsCount
형식: size_t

SessionOwnerMemberIds 배열에 있는 항목 수입니다.

HostDeviceToken
형식: XblDeviceToken

호스트의 장치 토큰입니다. 하나 이상의 멤버의 "deviceToken"과 일치해야 합니다. 그렇지 않으면 이 필드가 삭제됩니다. "peerToHostRequirements"가 설정되었고 "host"가 설정되었으면, 측정 단계에서 지정된 호스트가 올바른 호스트라고 가정하고, 해당 호스트에 대해서만 메트릭을 측정합니다.

휴무
형식: bool

세션의 가시성, 참가 제한 및 사용 가능한 공간에 관계없이 세션에 참가 가능한지 여부를 제어합니다. 예약에는 영향을 주지 않습니다. 기본값은 false입니다.

잠김
형식: bool

true인 경우 세션 멤버에 잠금을 설정할 수 있습니다. 따라서 사용자가 떠날 때 세션에 다시 돌아올 수 있지만, 다른 사용자는 해당 스팟을 이용할 수 없습니다. 기본값은 false입니다.

AllocateCloudCompute
형식: bool

클라이언트가 true로 설정하면 MPSD에 의한 Xbox Live Compute 할당 시도가 트리거됩니다. 기본값은 false입니다.

MatchmakingResubmit
형식: bool

발견된 매치가 작동하지 않았고 다시 제출되어야 하는 경우 true입니다. 매치가 작동하지 않았고 매치 메이킹 서비스가 세션을 릴리스할 수 있음을 나타내려면 false로 설정합니다.

요구 사항

헤더: multiplayer_c.h

참고

multiplayer_c