방 검색¶
일반적으로 매치메이킹 기능이 있는 게임에서는 플레이어가 입장할 매치를 검색할 수 있습니다. Strix에서는 몇 가지 검색 함수로 가능합니다.
검색 인수¶
검색 함수에는 다음과 같은 공통 인수가 있습니다.
이름 |
타입 |
설명 |
channelId |
int |
검색이 일어나는 연결 ID |
limit |
int |
리턴하는 결과의 최대 수 |
offset |
int |
리턴의 기원이 되는 총 결과의 상쇄 |
condition |
FStrixCondition |
검색 조건 (아래 참조) |
order |
FStrixOrder |
결과를 리턴하는 순서(아래 참조) |
검색 조건¶
Strix는 검색 결과를 좁히기 위해 FStrixCondition 스트럭트를 이용합니다. 여기에는 검색 조건이 포함되어 있습니다.
검색 조건은 Strix BP Library > Adapter에 있는 Field Not Equals와 같은 함수로 빌드할 수 있습니다. 이것은 FStrixCondition 스트럭트를 리턴합니다. 조건은 Create And Condition과 같은 함수와 결합하여 복잡한 쿼리에 이용할 수 있습니다.
검색 조건은 속성값에서 작동합니다. 예를 들어, 플레이어 수가 최소인 방 검색은 방의 memberCount 속성에서 Field Greater Than 함수로 할 수 있습니다.
참고
조건은 타입을 구분해야 합니다. 방 속성과 같은 문서를 참고하여 속성에 적합한 함수를 정해야 합니다.
참고
특별 속성인 properties에 들어 있는 커스텀 속성은 검색할 수 없습니다. key1과 같이 커스터마이징 가능한 것을 포함하여 memberCount와 같은 표준 속성은 검색이 가능하므로 필요하면 이것을 이용합니다. 방을 찾은 후에만 필요한 게임 플레이나 디스플레이에는 커스텀 속성을 이용합니다.
검색 순서¶
Strix에는 검색 결과를 리턴하는 순서를 지정하는 FStrixOrder 스트럭트가 있습니다. Create Ascending Order와 Create Descending Order 함수는 각 방향으로 속성에서 순서를 만듭니다.
검색 함수¶
Strix 방의 검색 함수는 Search Room, Search Joinable Room, Search Node Room, Search Joinable Node Room입니다.
Node room 함수는 마스터 서버에서 작동합니다. 마스터 서버는 자기 클러스터 안에 있는 방을 모두 추적합니다. 따라서, 방 서버에 연결하기 전에 쿼리를 할 수 있습니다. 이 함수들은 FStrixNodeRoomInfo 스트럭트를 목록으로 리턴합니다.
표준 함수는 방 서버에서 작동하므로 방 서버는 그것을 이용하기 전에 연결해야 합니다. channellId 인수는 그것이 작동할 연결을 지정합니다. 여기서는 FStrixNodeRoomInfo 스트럭트가 목록으로 리턴됩니다.
이 함수들의 Joinable 버전에는 방이 차지 않았다는(memberCount < capacity) 조건이 자동으로 포함됩니다.