Network 오브젝트는 멀티플레이 게임을 네트워크를 통해 플레이하는 데 사용되는 시스템에 대한 기본 인터페이스입니다.
이 시스템을 사용하려면 먼저 사용할 네트워크 하위 시스템을 결정하는 init_...() 함수(init_lan_client(), init_steam_client(), init_psn_client(), init_xboxlive_client() 등)를 호출하여 시스템을 설정해야 합니다.
한 번에 하나의 네트워크 하위 시스템만 실행할 수 있습니다.
네트워크를 초기화한 후에 사용 중인 네트워크 하위 시스템의 로비 기능을 사용하여 새 로비를 생성하거나 기존 로비를 찾습니다(로비 브라우저 사용). 사용 중인 네트워크 하위 시스템 인터페이스(LAN, Steam, PSN 또는 Xbox Live)를 확인합니다.
클라이언트가 실행되는 한 모든 프레임에서 Network.update()를 호출해야 합니다.
로비에 충분한 플레이어가 있다면 새로운 GameSession(실행 중인 멀티 플레이 게임을 관리하는 오브젝트)을 시작할 수 있습니다. 어느 네트워크 하위 시스템을 사용 중이든 동일한 오브젝트를 사용합니다.
네트워크를 사용하는 작업을 완료하고 나면 사용 중인 네트워크 하위 시스템에 대해 shutdown_...() 함수(shutdown_lan_client(), shutdown_steam_client(), shutdown_psn_client(), shutdown_xboxlive_client() 등)를 호출해야 합니다.
DLC, Steam [Leaderboards] 및 Achievements 등의 기타 네트워크 기능은 여기에 나와 있지 않습니다.
기타 관련 참조 항목
![]() | stingray.RPC |
![]() | stingray.UnitSynchronizer |
![]() | network_message_info network_object_info network_type_info |
![]() | network_type_info.type |
![]() | Networking |
![]() |
config_hash ( config_resource )![]() 네트워크 구성 데이터 파일의 내용을 기반으로 해시를 구성합니다.
|
config_resource : | string | 해시할 .network_config 데이터 파일의 리소스 이름입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
두 피어가 호환되는지를 판단하는 데 사용할 수 있습니다.
![]() |
create_game_session ( ) : stingray.GameSession![]() 새 게임 세션을 생성합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
새로 생성된 게임 세션입니다. |
한 번에 하나의 게임 세션만 실행할 수 있습니다. 기존 세션이 있는 경우 새 세션을 생성하기 전에 먼저 shutdown_game_session()을 호출해 기존 세션을 종료해야 합니다.
참고: 서버와 클라이언트 모두 create_game_session()을 호출해야 합니다. 서버는 게임을 시작할 때, 클라이언트는 게임에 들어갈 때 호출해야 합니다.
기타 관련 참조 항목
![]() |
enable_qos ( min_peer_kbps, initial_peer_kbps, max_total_kbps )![]() 대역폭 용량에 맞춰 업로드 제한을 조정하는 서비스 품질 시스템을 활성화합니다.
|
min_peer_kbps : | number | 허용되는 최소 업로드 속도(kbit/s)입니다. |
initial_peer_kbps : | number | 최초 업로드 속도(kbit/s)입니다. |
max_total_kbps : | number | 허용되는 최대 업스트림 대역폭(kbit/s)입니다. 여러 게임을 서비스하는 전용 서버의 트래픽을 제한하는 데 사용됩니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기타 관련 참조 항목
![]() |
fatal_error ( ) : boolean![]() 추가 네트워크 작업을 막는 치명적인 네트워크 오류의 발생 여부를 나타냅니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
boolean |
치명적인 네트워크 오류가 발생한 경우 true를, 그렇지 않으면 false를 반환합니다. |
게임은 이 상황에 대응해 Network 오브젝트를 종료하고, 플레이어를 오프라인 모드로 전환해야 합니다.
예를 들어, 게임 중 플레이어가 PlayStation Network에서 로그아웃하면 이 상황이 발생할 수도 있습니다.
![]() |
game_session ( ) : stingray.GameSession![]() 현재 게임 세션을 반환합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
현재 게임 세션을 반환하거나, 아직 설정된 게임 세션이 없으면 nil을 반환합니다. |
![]() |
peer_id ( ) : string![]() 이 피어를 고유하게 식별하는 ID를 반환합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
string |
네트워크에서 이 피어를 고유하게 식별하는 문자열을 반환하거나, 아직 설정된 피어 ID가 없으면 nil을 반환합니다. |
아직 설정된 피어 ID가 없는 경우에는 이 함수가 nil을 반환합니다. PlayStation4에서 룸에 대한 연결이 설정될 때까지 피어 ID를 알 수 없는 경우 이렇게 될 수 있습니다.
기타 관련 참조 항목
![]() |
ping ( player_id ) : number![]() 지정된 피어를 ping하고, ping에 소요된 시간을 반환합니다.
|
player_id : | string | 연결하려는 피어의 ID입니다. |
number |
해당 플레이어에게 도달하기 위한 ping에 소요되는 시간을 반환하거나, 해당 플레이어와 연결되어 있지 않으면 0을 반환합니다. |
기타 관련 참조 항목
![]() |
reliable_send_buffer_left ( peer_id ) : number![]() 특정 피어를 위한 신뢰 가능한 전송 버퍼를 채우기 위해 남겨둔 크기(바이트)를 반환합니다.
|
peer_id : | string | 피어를 식별합니다. |
number |
버퍼 크기(바이트)를 반환하거나, 해당 피어가 없으면 0을 반환합니다. |
처음 새 피어가 세션에 참가하면 새 피어가 플레이를 시작하기 전에 몇 가지 정보를 전송해주는 것이 일반적입니다. 게임 오브젝트 생성 메시지가 여러 프레임에 걸쳐 분산되면서 아직 다른 끝단에서 수신하지 않은 정보를 포함하고 있는 버퍼에 과부하가 걸리지 않습니다. 모든 게임 오브젝트가 성공적으로 전송되고 나면 이를 알려주는 콜백을 받습니다. 피어가 세션에 참가할 때 대량의 데이터를 전송하는 경우에는 RPC 메시지도 비슷한 방식으로 처리되어야 합니다. 하지만 엔진에서는 이를 내부적으로 처리하지 않습니다. 이 함수를 사용하여 전송 버퍼에 더 많은 공간이 남겨질 때까지 RPC 메시지 전송을 중지하는 것이 최선일지 판단할 수 있습니다.
참고: 사용자가 인식하지 못한 데이터를 엔진이 전송할 수도 있으므로 버퍼를 완전히 채우지는 마십시오.
![]() |
현재 GameSession을 종료합니다(있는 경우).
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기타 관련 참조 항목
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
자세한 내용은 [ReplaySession] 설명서를 참조하십시오.
기타 관련 참조 항목
![]() |
update ( dt, callback_object )![]() 네트워크 시스템을 업데이트하고, 발생한 이벤트의 콜백과 마지막 업데이트 이후 전송된 RPC 메시지를 통해 사용자에게 알려줍니다.
|
dt : | number | 마지막 update() 호출 이후의 델타 시간(초)입니다. |
callback_object : | table | 네트워크 게임 세션 중에 발생하는 이벤트에 응답하기 위해 호출하는 콜백 함수 세트가 포함되어 있는 테이블입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이벤트 또는 RPC 메시지가 있을 때마다 callback_object 테이블의 함수가 update() 호출 중에 즉시 호출됩니다.
다른 피어가 RPC 메시지를 전송하는 경우에는 .network_config 데이터 파일에 설정해 둔 메시지 이름에 따라 어느 함수를 호출할지 결정됩니다. 자세한 내용은 RPC 오브젝트 설명서를 참조하십시오.
게임 이벤트의 경우에는 발생할 수 있는 다양한 게임 이벤트를 처리하도록 콜백 오브젝트에 구현해야 하는 콜백 함수 목록이 사전 설정되어 있습니다.
id로 식별된 게임 오브젝트가 피어 creator_id에 의해 생성되었음을 알려줍니다.
id로 식별된 게임 오브젝트가 피어 destroyer_id에 의해 삭제되었음을 알려줍니다.
이제 id로 식별되는 게임 오브젝트의 소유자가 되었음을 알려줍니다. old_owner_id 매개변수는 이전에 이 게임 오브젝트를 소유했던 피어를 식별합니다.
더 이상 id로 식별되는 게임 오브젝트의 소유자가 아님을 알려줍니다. new_owner_id 매개변수는 이제 이 게임 오브젝트를 소유하는 피어를 식별합니다.
새 피어가 추가된 후에 모든 게임 오브젝트가 지정된 원격 피어와 동기화되어 이제부터는 RPC 호출의 순서가 게임 오브젝트 생성 메시지를 기준으로 정해진다는 것을 알려줍니다. 이 콜백이 이루어지기 전에는 RPC 호출 및 게임 오브젝트 생성 호출이 호출 순서와 동일한 순서로 도달한다는 보장이 없습니다.
게임 세션 호스트에 의해 게임 세션 연결이 끊겼음을 알려줍니다. 추방을 당했거나 게임 세션 호스트가 게임에서 나갔을 수 있습니다.
네트워크 대기 시간을 조금이라도 줄이고 싶다면 대신 게임에서 update_receive()를 호출해 네트워크 통신을 수신하고, 이에 응답한 다음, 동일한 프레임에서 나중에 update_transmit()를 호출하면 됩니다.
기타 관련 참조 항목
![]() |
update_receive ( dt, callback_object )![]() |
dt : | number | 마지막 update() 호출 이후의 델타 시간(초)입니다. |
callback_object : | table | 네트워크 게임 세션 중에 발생하는 이벤트에 응답하기 위해 호출하는 콜백 함수 세트가 포함되어 있는 테이블입니다. 자세한 내용은 update()에 대한 설명을 참조하십시오. 대기 시간을 한 프레임 줄이려면 update()를 단일 호출하는 대신 update_receive()와 update_transmit()를 이 순서대로 호출하면 됩니다. 이런 식으로, 전송 전에 동일한 프레임 내에서 수신한 정보에 응답할 수 있습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기타 관련 참조 항목
![]() |
update_transmit ( )![]() |
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이런 식으로, 전송 전에 동일한 프레임 내에서 수신한 정보에 응답할 수 있습니다.
기타 관련 참조 항목
![]() |
write_dump_tag ( details )![]() settings.ini 파일에서 네트워킹 시스템이 모든 네트워크 활동의 로그를 기록하도록 구성되어 있다면 이 함수가 지정된 이름으로 된 태그를 로그 파일에 기록합니다.
|
details : | string | 네트워크 로그 파일에 기록할 문자열입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
Network Analyzer 도구로 네트워크 로그 파일을 살펴보는 경우에는 이 태그가 대역폭 그래프에 수직 마커로 표시됩니다.
이 그룹의 요소들은 네트워크 연결 구성과 관련되어 있습니다.
![]() |
message_info ( message_name ) : network_message_info![]() 우선 순위, 예상 인수 등, 지정된 메시지 유형에 관한 메타데이터를 포함하고 있는 테이블을 반환합니다.
|
message_name : | string | 관련 정보를 검색하려는 RPC 메시지 유형의 이름입니다. 이 이름은 .network_config 데이터 파일에 지정되어 있는 메시지 이름과 일치해야 합니다. |
지정된 메시지 유형에 관한 메타데이터를 포함하고 있는 테이블입니다. |
기타 관련 참조 항목
![]() |
object_info ( object_name ) : network_object_info![]() 우선 순위, 데이터 필드 등, 지정된 게임 오브젝트 유형에 관한 메타데이터를 포함하고 있는 테이블을 반환합니다.
|
object_name : | string | 관련 정보를 검색하려는 게임 오브젝트 유형의 이름입니다. 이 이름은 .network_config 데이터 파일에 지정되어 있는 오브젝트 이름과 일치해야 합니다. |
지정된 게임 오브젝트 유형에 관한 메타데이터를 포함하고 있는 테이블입니다. |
기타 관련 참조 항목
![]() |
set_max_transmit_rate ( time )![]() 연속적인 전송 간 경과할 수 있는 최소 시간을 설정합니다.
|
time : | number | 연속적인 전송 간 경과할 수 있는 새로운 최소 시간(초)입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기본값은 0.03입니다.
![]() |
set_ping_resend_time ( time )![]() 응답이 없을 때 keep-alive 메시지를 전송하는 시간 간격을 설정합니다.
|
time : | number | keep-alive 메시지를 전송하는 새로운 시간 간격(초)입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기본값은 0.5입니다.
![]() |
set_ping_send_time ( time )![]() keep-alive 응답과 다음 keep-alive 메시지 간 시간 간격을 설정합니다.
|
time : | number | keep-alive 메시지를 전송하는 새로운 시간 간격(초)입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기본값은 1.0입니다.
![]() |
set_pong_timeout ( time )![]() 수신자와의 연결이 끊긴 것으로 간주하기까지의 시간 초과 값을 설정합니다.
|
time : | number | 수신자와의 연결이 끊긴 것으로 간주하기까지의 새로운 최대 시간(초)입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기본값은 60.0입니다.
![]() |
set_resend_time ( time )![]() 드롭된 것으로 간주된 패킷을 다시 전송하기 전에 경과할 수 있는 시간(초)을 설정합니다.
|
time : | number | 설정할 새로운 재전송 시간(초)입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기본값은 0.2입니다.
![]() |
type_info ( type_name ) : network_type_info![]() 엔진이 해당 유형의 값을 압축하는 데 사용하는 비트 수, 최소값과 최대값 등, 지정된 데이터 유형에 관한 메타데이터를 포함하고 있는 테이블을 반환합니다.
|
type_name : | string | 관련 정보를 검색하려는 데이터 유형의 이름입니다. 이 이름은 .network_config 데이터 파일에 지정되어 있는 유형 이름과 일치해야 합니다. |
지정된 데이터 유형에 관한 메타데이터를 포함하고 있는 테이블입니다. |
기타 관련 참조 항목
Network.type_info() 함수에서 사용하는, 다양한 데이터 유형의 식별자입니다.
![]() |
ARRAY : integer![]() 어레이의 데이터 유형입니다.
|
![]() |
BOOL : integer![]() 부울 값의 데이터 유형입니다.
|
기타 관련 참조 항목
![]() |
FLOAT : integer![]() 부동 소수점 숫자의 데이터 유형입니다.
|
![]() |
IDSTRING32 : integer![]() IdString32의 데이터 유형입니다.
|
![]() |
IDSTRING64 : integer![]() IdString64의 데이터 유형입니다.
|
![]() |
INT : integer![]() 정수 숫자의 데이터 유형입니다.
|
![]() |
QUATERNION : integer![]() 쿼터니언 회전의 데이터 유형입니다.
|
![]() |
RESOURCE_ID : integer![]() 리소스 ID의 데이터 유형입니다.
|
![]() |
STRING : integer![]() 문자열 값의 데이터 유형입니다.
|
![]() |
UINT64 : integer![]() 64비트 정수 값의 데이터 유형입니다.
|
![]() |
VECTOR3 : integer![]() 3D 벡터 값의 데이터 유형입니다.
|
이 그룹의 요소들은 네트워크 게임 디버깅에 관련되어 있습니다.
![]() |
log ( log_level )![]() 디버깅 콘솔로 전송할 정보의 수준을 설정합니다.
|
log_level : | integer | MESSAGES 또는 WARNINGS 등, logging level 그룹의 어떠한 값이든 될 수 있습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기타 관련 참조 항목
Network.log()로 전달할 수 있는 로그 수준입니다.
![]() |
MESSAGES : integer![]() 게임 오브젝트 생성, 마이그레이션 및 삭제 메시지뿐 아니라 경고까지 출력됩니다.
|
기타 관련 참조 항목
![]() |
SILENT : integer![]() 디버깅 출력이 없습니다.
|
![]() |
SPEW : integer![]() 게임 오브젝트 업데이트와 세부 정보, 그리고 위에 나온 모든 항목까지 출력됩니다.
|
![]() |
WARNINGS : integer![]() 경고만 출력됩니다.
|
기타 관련 참조 항목
이 그룹의 요소는 개발 빌드에서만 사용할 수 있습니다.
최종 빌드에서는 사용하지 마십시오.
![]() |
create_replay_session ( dump_file ) : stingray.GameSession![]() 새 재생 세션을 시작합니다.
|
dump_file : | string | 네트워크 세션의 덤프를 포함하고 있는 파일의 경로입니다. |
"재생 세션"으로 설정된 새로운 GameSession 오브젝트입니다. |
자세한 내용은 GameSession 오브젝트 설명서를 참조하십시오.
기타 관련 참조 항목
![]() |
disable_qos_peer ( peer_id )![]() 지정된 피어와의 통신에 대해서는 서비스 품질 시스템을 비활성화합니다.
|
peer_id : | string | 서비스 품질 시스템을 비활성화할 피어의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
enable_qos_peer()를 호출해 다시 활성화할 수 있습니다.
개발 빌드에서 서비스 품질 시스템을 디버깅하는 목적으로만 사용할 수 있습니다. 이 함수가 효과를 발휘하도록 하려면 enable_qos()를 호출하여 서비스 품질 시스템을 활성화해야 합니다.
기타 관련 참조 항목
![]() |
enable_qos_peer ( peer_id )![]() disable_qos_peer()를 호출하여 비활성화했던 서비스 품질 시스템을 지정된 피어와의 통신을 위해 다시 활성화합니다.
|
peer_id : | string | 서비스 품질 시스템을 다시 활성화할 피어의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
개발 빌드에서 서비스 품질 시스템을 디버깅하는 목적으로만 사용할 수 있습니다. 이 함수가 효과를 발휘하도록 하려면 enable_qos()를 호출하여 서비스 품질 시스템을 활성화해야 합니다.
기타 관련 참조 항목
이 그룹의 요소들은 명시적 연결 구성과 관련되어 있습니다.
![]() |
connections ( ) : string[]![]() 활성 연결 상태인 모든 피어의 목록을 반환합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
string[] |
피어 ID가 나열된 테이블입니다. [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. |
![]() |
create_connection ( peer_id ) : integer![]() 지정된 피어에 대한 새로운 연결을 생성합니다.
|
peer_id : | string | 연결하려는 피어의 고유 ID입니다. |
integer |
새로 생성된 연결의 ID입니다. |
특정 피어에 대해서는 최대 하나의 연결만 존재할 수 있기 때문에 해당 피어와의 연결이 이미 존재하는 경우에는 이 함수를 호출할 수 없습니다.
이렇게 피어와 직접 연결하는 방식은 특정 전송 레이어(예: Steam)에서만 지원됩니다. PSN 등의 다른 전송 레이어에서는 연결이 항상 룸 및 로비를 통해 설정되기 때문에 피어와 직접 연결할 수 있는 방법이 없습니다.
![]() |
destroy_connection ( peer_id )![]() 현재 연결이 존재하는 경우 지정된 피어와의 연결을 끊습니다.
|
peer_id : | string | 연결을 끊으려는 피어의 고유 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
네트워크 스택의 상위 레이어가 사용하고 있는 연결은 해제할 수 없으므로 해당 연결을 해제할 수 있는지 확인하려면 이 함수를 호출하기 전에 먼저 is_used()를 호출해야 합니다.
기타 관련 참조 항목
![]() |
has_connection ( peer_id ) : integer?![]() 지정된 피어에 대한 연결(있는 경우)의 ID를 반환합니다.
|
peer_id : | string | 테스트하려는 피어의 고유 ID입니다. |
integer? |
이 피어에 대한 연결의 ID를 반환하거나, 연결이 없으면 nil을 반환합니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
![]() |
is_broken ( peer_id ) : boolean![]() 지정된 피어에 대한 연결이 끊겼는지, 즉 네트워킹 시스템이 해당 피어에게 더 이상 메시지를 전송할 수 없는지 여부를 나타냅니다.
|
peer_id : | string | 연결을 테스트할 피어입니다. |
boolean |
연결이 끊겼으면 true를, 그렇지 않으면 false를 반환합니다. |
![]() |
is_used ( peer_id ) : boolean![]() 지정된 피어와의 연결을 네트워킹 시스템의 상위 레이어(룸, 로비, 게임 세션 등)에서 사용 중인지 여부를 나타냅니다.
|
peer_id : | string | 연결을 테스트할 피어입니다. |
boolean |
연결을 사용 중이면 true를, 그렇지 않으면 false를 반환합니다. |
사용 중인 연결은 명시적으로 삭제할 수 없기 때문에 destroy_connection()을 호출할 수 있게 되기 전에는 이 함수가 false를 반환합니다. 이 함수가 true를 반환하는 상태에서 연결을 닫고 싶은 경우에는 이 피어와의 연결을 사용 중인 모든 로비, 룸, 게임 세션 등을 먼저 종료해야 합니다.
기타 관련 참조 항목
![]() |
create_lan_lobby ( lobby_port, max_members ) : stingray.LanLobby![]() LAN에 로비를 생성합니다.
|
lobby_port : | integer | 로비 통신에 사용하려는 UDP 포트입니다. 이 포트는 init_lan_client() 호출 시 게임 포트로 사용하는 포트와 번호가 같으면 안 됩니다. 로비를 검색하는 클라이언트는 로비 포트 번호를 지정하기 때문에 로비를 실행 중인 모든 피어에 대해 잘 알려진 단일 포트 번호를 사용해야 합니다. |
max_members : | integer | 이 로비에 참여할 수 있는 최대 피어 수입니다. |
새롭게 생성된 로비 오브젝트입니다. |
이 함수를 사용해 새 로비를 생성하면 해당 로비에 자동으로 참여하게 됩니다. join_lan_lobby()를 호출할 필요가 없습니다.
기타 관련 참조 항목
![]() |
init_lan_client ( config, game_port, peer_id ) : stingray.LanClient![]() LAN(Local Area Network)에서 다른 게임에 연결할 수 있도록 네트워킹 시스템을 초기화합니다.
|
config : | string | 클라이언트 설정을 위해 사용하는 .network_config 리소스의 이름입니다. 이 이름을 통해 세션 중에 사용할 수 있는 게임 오브젝트 및 RPC 메시지의 유형이 결정됩니다. |
game_port : | integer? | 네트워크 통신에 사용할 UDP 포트입니다. 0으로 지정하거나 이 매개변수를 생략하면 남아 있는 임의의 포트가 선택됩니다. 이렇게 하면 포트 번호가 충돌하지 않기 때문에 동일한 시스템에서 여러 네트워크 노드를 테스트할 때 유용합니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
peer_id : | integer? | 지정하는 경우, 이 번호가 다른 네트워크 노드에 클라이언트를 식별시키는 ID로 사용됩니다. 생략하는 경우에는 임의의 수가 할당됩니다. 피어 ID는 LAN 상의 모든 노드에 대해 고유해야 합니다. 그렇지 않으면 메시지가 정확한 목적지에 도달하지 못합니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
새로운 클라이언트 오브젝트입니다. |
LAN 클라이언트 초기화 후 모든 프레임에서 Network.update()를 호출하고 더 이상 필요하지 않으면 Network.shutdown_lan_client()를 호출해야 합니다.
기타 관련 참조 항목
![]() |
join_lan_lobby ( address, lobby_port ) : stingray.LanLobby![]() 지정된 주소의 로비에 참여합니다.
|
address : | string | 로비를 실행 중인 호스트의 IP 주소 및 로비 포트 번호입니다. 이 문자열의 형식은 ip:port이며, 보통 LanLobbyBrowser.lobby() 호출을 통해 반환되는 정보 테이블에서 가져옵니다. |
lobby_port : | integer? | 로비가 이 컴퓨터에서 사용해야 하는 포트입니다. lobby_port에 대해 0을 지정하거나, 매개변수를 생략하면 남아 있는 임의의 포트가 사용됩니다. 이렇게 하면 포트가 create_lan_lobby()에 사용되는 공용 로비 포트와 충돌하지 않기 때문에 동일한 시스템에서 여러 노드를 테스트할 때 유용합니다. 이 방식의 단점은 로비가 임의의 포트에서 실행 중이기 때문에 로비 호스트가 종료되어 로비가 사용자에게 이전되는 경우 다른 노드에서 로비를 찾을 수 없게 된다는 점입니다. 로비가 사용자에게 이전되어도 공개적으로 찾을 수 있게 하려면 create_lan_lobby()에서 사용하는 것과 동일한 공용 포트를 사용해야 합니다. 하지만 이 경우 동일한 시스템에서 여러 네트워크 노드를 실행할 수 없습니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
참여한 로비입니다. |
기타 관련 참조 항목
![]() |
leave_lan_lobby ( lobby )![]() 지정된 로비에서 나옵니다.
|
lobby : | 나오려는 로비입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
로비를 호스팅하는 중이라면 로비가 로비 내 다른 피어에게 이전됩니다. 로비의 마지막 구성원이라면 로비가 네트워크에서 제거됩니다.
![]() |
shutdown_lan_client ( client )![]() 이전에 init_lan_client() 호출을 통해 생성된 지정 LanClient를 종료합니다.
|
client : | 종료하려는 LAN 클라이언트입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기타 관련 참조 항목
![]() |
create_psn_room ( name, max_members ) : integer![]() 지정된 type 및 name으로 PlayStation Network에 룸을 생성합니다.
|
name : | string | 새 룸의 이름입니. |
max_members : | integer | 이 룸에 참여할 수 있는 최대 피어 수입니다. |
integer |
새로 생성된 룸을 식별하는 ID입니다. |
이 함수를 사용해 새 룸을 생성하면 해당 룸에 자동으로 참여하게 됩니다. join_psn_room()을 호출할 필요가 없습니다.
기타 관련 참조 항목
![]() |
init_psn_client ( config ) : stingray.PsnClient![]() PSN(PlayStation Network)을 통해 다른 게임에 연결할 수 있도록 네트워킹 시스템을 초기화합니다.
|
config : | string | 클라이언트 설정을 위해 사용하는 .network_config 리소스의 이름입니다. 이 이름을 통해 세션 중에 사용할 수 있는 게임 오브젝트 및 RPC 메시지의 유형이 결정됩니다. |
새로운 클라이언트 오브젝트입니다. |
기타 관련 참조 항목
![]() |
join_psn_room ( room_id ) : stingray.PsnRoom![]() 지정된 ID의 룸에 참여합니다.
|
room_id : | string | 참여하려는 룸의 ID입니다. 이 문자열은 대개 PsnRoomBrowser.room() 호출을 통해 반환되는 정보 테이블에서 가져옵니다. |
참여한 룸입니다. |
기타 관련 참조 항목
![]() |
leave_psn_room ( room )![]() 지정된 룸에서 나옵니다.
|
room : | 나오려는 룸입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
룸을 호스팅하는 중이라면 룸이 룸 내 다른 피어에게 이전됩니다. 룸의 마지막 구성원이라면 룸이 네트워크에서 제거됩니다.
![]() |
shutdown_psn_client ( client )![]() 이전에 init_psn_client() 호출을 통해 생성된 지정 PsnClient를 종료합니다.
|
![]() |
create_steam_lobby ( type_lobby, max_members ) : stingray.SteamLobby![]() SteamLobby를 생성합니다.
|
type_lobby : | integer | 생성하려는 로비의 유형입니다. 이 유형은 로비 유형 상수 중 하나일 수 있습니다. |
max_members : | integer | 로비에서 허용되는 최대 구성원 수입니다. |
새로 생성된 Steam 로비입니다. |
로비를 생성하면 자동으로 참여하게 됩니다. join_steam_lobby()를 호출할 필요가 없습니다.
기타 관련 참조 항목
![]() |
init_steam_client ( config ) : stingray.SteamClient![]() 다른 게임에 연결할 수 있도록 네트워킹 시스템을 Steam 클라이언트로 초기화합니다.
|
config : | string | 클라이언트 설정을 위해 사용하는 * .network_config* 파일의 이름입니다. 이 이름을 통해 세션 중에 사용할 수 있는 게임 오브젝트 및 RPC 메시지의 유형이 결정됩니다. |
새로운 Steam 클라이언트 오브젝트입니다. |
이 함수는 Steam이 실행 중이어야 호출할 수 있습니다. stingray.Steam 오브젝트 및 Steam.connected() 함수를 참조하십시오.
기타 관련 참조 항목
![]() |
init_steam_server ( config, settings ) : stingray.SteamGameServer![]() 네트워크를 Steam 게임 서버로 초기화합니다. 그러면 다른 Steam 클라이언트가 Steam 서버 브라우저를 사용하여 찾을 수 있습니다.
|
config : | string | 서버 설정을 위해 사용할 * .network_config* 파일의 이름입니다. 이 이름을 통해 세션 중에 사용할 수 있는 게임 오브젝트 및 RPC 메시지의 유형이 결정됩니다. |
settings : | 키/값 쌍으로 표현되는, 서버의 구성 설정을 포함하고 있는 테이블입니다. |
새로 생성된 Steam 게임 서버입니다. |
기타 관련 참조 항목
![]() |
join_steam_lobby ( lobby_id ) : stingray.SteamLobby![]() 지정된 ID로 식별되는 로비에 참여합니다.
|
lobby_id : | integer | Steam 로비의 ID입니다. |
로비에 대한 연결을 나타내는, 새로 생성된 SteamLobby 오브젝트입니다. |
기타 관련 참조 항목
![]() |
join_steam_server ( ip_address, password ) : stingray.SteamGameServerLobby![]() 인터넷에서 Steam 서버에 참여합니다.
|
ip_address : | string | a.b.c.d:e 형식의 IPv4 주소입니다. 처음 네 개 숫자는 호스트의 IPv4 주소 구성요소이고, 그 뒤에 콜론, 그리고 서버가 사용하는 쿼리 포트의 번호가 차례대로 붙습니다. 예: 127.0.0.1:27016. |
password : | string? | 서버가 예상하는 암호(있는 경우)입니다. 암호로 보호되는 서버에 연결할 때에만 필요합니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
서버에 대한 연결을 추적하는 로비 오브젝트입니다. |
서버에 대한 연결 진행 상황을 확인하는 데 사용되는 로비 오브젝트가 반환됩니다.
기타 관련 참조 항목
![]() |
join_steam_server ( ip_address, port, password ) : stingray.SteamGameServerLobby![]() 인터넷에서 Steam 서버에 참여합니다.
|
ip_address : | string | a.b.c.d:e 형식의 IPv4 주소입니다. 네 개 숫자는 호스트의 IPv4 주소 구성요소입니다. 예: 127.0.0.1. |
port : | number | 서버가 사용하는 쿼리 포트의 번호입니다. 예: 27016. |
password : | string? | 서버가 예상하는 암호(있는 경우)입니다. 암호로 보호되는 서버에 연결할 때에만 필요합니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
서버에 대한 연결을 추적하는 로비 오브젝트입니다. |
서버에 대한 연결 진행 상황을 확인하는 데 사용되는 로비 오브젝트가 반환됩니다.
![]() |
leave_steam_lobby ( lobby )![]() 지정된 로비에서 나옵니다.
|
lobby : | 나오려는 Steam 로비입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
로비를 호스팅하는 중이라면 로비가 로비 내 다른 사용자에게 이전됩니다. 로비의 마지막 구성원이라면 로비가 제거됩니다.
![]() |
leave_steam_server ( server_lobby )![]() 서버 로비를 제거하고, 서버에 알립니다.
|
![]() |
shutdown_steam_client ( client )![]() init_steam_client()를 통해 생성한 SteamClient를 종료합니다.
|
![]() |
shutdown_steam_server ( server )![]() init_steam_server()를 통해 생성한 SteamGameServer를 종료합니다.
|
다양한 Steam 로비 유형을 나타내는 데 사용되는 상수입니다.
![]() |
STEAM_LOBBY_FRIENDS_ONLY : integer![]() 로비에 친구들이 참여할 수 있음을 나타냅니다.
|
![]() |
STEAM_LOBBY_INVISIBLE : integer![]() 로비가 다른 친구들에게 보이지 않지만 검색 결과로 반환될 수 있음을 나타냅니다.
|
![]() |
STEAM_LOBBY_PRIVATE : integer![]() 로비에 초대를 받은 사람만 참여할 수 있음을 나타냅니다.
|
![]() |
STEAM_LOBBY_PUBLIC : integer![]() 로비가 로비 목록에 표시됨을 나타냅니다.
|
![]() |
clean_sessions ( user_id )![]() 사용자와 연관된 모든 세션에서 나옵니다. 오래되었거나 누출된 세션을 정리하는 데 사용됩니다.
|
user_id : | integer | 연관 세션을 정리하려는 사용자의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
사용자가 매치메이킹 또는 세션 생성을 시작하기 전에 실행하는 것이 좋습니다. 이 함수는 비동기적으로 실행되며, clean_sessions_status()를 사용하여 상태를 모니터링합니다.
완료 시 자동으로 stingray.SessionJobStatus.COMPLETE가 아닌 stingray.SessionJobStatus.NOT_RUNNING으로 전환되기 때문에 이 작업을 완료하고 나서는 리소스 점유를 풀어줄 필요가 없습니다.
호출 전에 모든 세션에서 나왔는지 확인합니다.
기타 관련 참조 항목
![]() |
clean_sessions_status ( ) : integer![]() 세션 정리 작업의 상태를 반환합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
integer |
clean_sessions()으로 시작한 세션 정리 작업의 상태입니다. SessionJobStatus(network.xbl.work_status) 상수 중 하나일 수 있습니다. |
기타 관련 참조 항목
![]() |
clear_activity ( user_id )![]() 제공된 사용자의 활동을 정리합니다.
|
user_id : | integer | 활동을 정리하려는 사용자의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이 함수는 비동기적으로 실행되며, clear_activity_status()를 사용하여 상태를 모니터링합니다.
완료 후 이 작업의 리소스 점유를 풀어줄 필요가 없습니다.
참고: set_activity()와 달리 이 함수는 세션 독립적입니다.
기타 관련 참조 항목
![]() |
clear_activity_status ( user_id ) : integer![]() 사용자 활동 정리 작업의 상태를 반환합니다.
|
user_id : | integer | 활동 정리 작업의 상태를 가져오려는 사용자의 ID입니다. |
integer |
clear_activity()로 시작한 사용자 활동 정리의 상태입니다. SessionJobStatus(network.xbl.work_status) 상수 중 하나일 수 있습니다. |
기타 관련 참조 항목
![]() |
create_multiplayer_session ( user_id, session_name, session_template_name, create_as_host, session_keywords ) : integer![]() 세션을 생성하고, 세션에 참여하는 비동기 작업을 시작합니다.
|
user_id : | integer | 관련 세션을 생성하려는 사용자의 ID입니다. |
session_name : | string | 세션의 이름입니다. 모두 소문자여야 합니다. |
session_template_name : | string | 세션 템플릿의 이름입니다. 모두 소문자여야 합니다. |
create_as_host : | boolean | 제공된 사용자가 세션 호스트로 설정되어야 하는 경우 true입니다. |
session_keywords : | string[]? | 세션의 키워드를 나타내는 문자열의 테이블입니다(선택 사항). 문자열은 비어 있으면 안 되고, 최대 63자로 구성할 수 있습니다. [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
integer |
Lua 인터페이스에서 이 세션을 참조하는 데 사용되는 세션 ID입니다. |
stingray.MultiplayerSession.status()를 통해 세션 상태를 추적할 수 있습니다.
더 이상 사용되지 않습니다. create_multiplayer_session_host 및 create_multiplayer_session_client를 사용하십시오. 세션을 추적하는 데 사용되는 session_id를 반환합니다.
이 함수는 각 콘솔의 기본 사용자에 대해서만 호출할 수 있습니다. 로컬 사용자가 여러 명인 경우 stingray.Network.join_local_multiplayer_session()을 사용하여 이 사용자들을 세션에 추가해야 합니다.
세션에서 나가려면 stingray.MultiplayerSession.leave()을 사용합니다. 비동기 작업이 완료되면 stingray.Network.free_multiplayer_session()을 호출하여 세션 리소스의 점유를 풀어주어야 합니다.
매치메이킹을 통해 발견한 원격 호스트에 참여할 때에는 create_as_host를 false로 설정해야 합니다.
기타 관련 참조 항목
![]() |
create_multiplayer_session_client ( user_id, session_name, session_template_name, xbox_user_id_member_reservation ) : integer![]() 세션을 생성하고, 세션에 참여하는 비동기 작업을 시작합니다.
|
user_id : | integer | 관련 세션을 생성하려는 사용자의 ID입니다. |
session_name : | string | 세션의 이름입니다. 모두 소문자여야 합니다. |
session_template_name : | string | 세션 템플릿의 이름입니다. 모두 소문자여야 합니다. |
xbox_user_id_member_reservation : | integer[]? | 구성원 자리를 예약할 Xbox 사용자 ID의 테이블입니다(선택 사항). [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
integer |
Lua 인터페이스에서 이 세션을 참조하는 데 사용되는 세션 ID입니다. |
stingray.MultiplayerSession.status()를 통해 세션 상태를 추적할 수 있습니다.
세션을 추적하는 데 사용되는 session_id를 반환합니다.
이 함수는 각 콘솔의 기본 사용자에 대해서만 호출할 수 있습니다. 로컬 사용자가 여러 명인 경우 stingray.Network.join_local_multiplayer_session()을 사용하여 이 사용자들을 세션에 추가해야 합니다.
세션에서 나가려면 stingray.MultiplayerSession.leave()을 사용합니다. 비동기 작업이 완료되면 stingray.Network.free_multiplayer_session()을 호출하여 세션 리소스의 점유를 풀어주어야 합니다.
![]() |
create_multiplayer_session_host ( user_id, session_name, session_template_name, session_keywords, min_number_members, max_number_members, xbox_user_id_member_reservation ) : integer![]() 세션을 생성하고, 세션에 참여하는 비동기 작업을 시작합니다.
|
user_id : | integer | 관련 세션을 생성하려는 사용자의 ID입니다. |
session_name : | string | 세션의 이름입니다. 모두 소문자여야 합니다. |
session_template_name : | string | 세션 템플릿의 이름입니다. 모두 소문자여야 합니다. |
min_number_members : | integer? | 세션 내 최소 구성원 수입니다(선택 사항). 이 임계값이 충족되지 않으면 구성원이 초기화 단계를 완료하지 못합니다. 기본값은 세션 템플릿을 사용하는 0입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
max_number_members : | integer? | 세션 내 최대 구성원 수입니다(선택 사항). 기본값은 세션 템플릿을 사용하는 0입니다. 따로 지정하지 않는 경우 100이 됩니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
session_keywords : | string[]? | 세션의 키워드를 나타내는 문자열의 테이블입니다(선택 사항). 문자열은 비어 있으면 안 되고, 최대 63자로 구성할 수 있습니다. [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
xbox_user_id_member_reservation : | integer[]? | 구성원 자리를 예약할 Xbox 사용자 ID의 테이블입니다(선택 사항). [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
integer |
Lua 인터페이스에서 이 세션을 참조하는 데 사용되는 세션 ID입니다. |
stingray.MultiplayerSession.status()를 통해 세션 상태를 추적할 수 있습니다.
세션을 추적하는 데 사용되는 session_id를 반환합니다.
이 함수는 각 콘솔의 기본 사용자에 대해서만 호출할 수 있습니다. 로컬 사용자가 여러 명인 경우 stingray.Network.join_local_multiplayer_session()을 사용하여 이 사용자들을 세션에 추가해야 합니다.
세션에서 나가려면 stingray.MultiplayerSession.leave()을 사용합니다. 비동기 작업이 완료되면 stingray.Network.free_multiplayer_session()을 호출하여 세션 리소스의 점유를 풀어주어야 합니다.
![]() |
free_get_activity_details ( session_lookup_id )![]() stingray.Network.get_activity_details()로 시작한 비동기 작업에 할당된 리소스의 점유를 풀어줍니다.
|
session_lookup_id : | integer | 리소스의 점유를 풀어줄 세션 조회의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이 결과는 stingray.Network.get_activity_details_status()가 stingray.SessionJobStatus.COMPLETE 또는 stingray.SessionJobStatus.FAILED를 반환하는 경우에만 리소스 점유를 풀어줄 수 있습니다.
기타 관련 참조 항목
![]() |
free_handle_to_description ( session_lookup_id )![]() stingray.Network.handle_to_description()으로 시작한 비동기 작업에 할당된 리소스의 점유를 풀어줍니다.
|
session_lookup_id : | integer | 리소스의 점유를 풀어줄 세션 조회의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이 결과는 stingray.Network.handle_to_description_status()가 stingray.SessionJobStatus.COMPLETE 또는 stingray.SessionJobStatus.FAILED를 반환하는 경우에만 리소스 점유를 풀어줄 수 있습니다.
기타 관련 참조 항목
![]() |
free_multiplayer_session ( session_id )![]() 제공된 ID의 세션이 사용하는 리소스의 점유를 풀어줍니다.
|
session_id : | integer | 리소스 점유를 풀어줄 세션의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
호출 전에 stingray.MultiplayerSession.status()가 stingray.MultiplayerSession.SHUTDOWN을 반환하는지 확인합니다.
기타 관련 참조 항목
![]() |
get_activity_details ( user_id, xuids ) : integer![]() 사용자 활동 세부 정보를 가져오는 비동기 작업을 시작합니다.
|
user_id : | integer | 활동 조회에 사용할 사용자의 ID입니다. |
xuids : | string[] | 활동을 가져올 사용자의 XUID입니다. [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. |
integer |
Lua 인터페이스에서 이 활동 세부 정보 가져오기 작업을 참조하는 데 사용되는 ID입니다. |
상태는 stingray.Network.get_activity_details_status()를 통해 모니터링할 수 있으며, 결과는 stingray.Network.get_activity_details_result()를 통해 가져올 수 있습니다.
활동 세부 정보 가져오기 작업이 완료되면 stingray.Network.free_get_activity_details()를 호출하여 리소스 점유를 풀어주어야 합니다.
기타 관련 참조 항목
![]() |
get_activity_details_result ( session_lookup_id ) : activity_details*![]() 활동 세부 정보 가져오기 작업의 결과입니다.
|
session_lookup_id : | integer | 결과를 가져오려는 세션 조회의 ID입니다. |
활동이 설정되어 있는 사용자의 활동 세부 정보입니다. * 표기는 지정된 유형의 인스턴스가 0개 이상 있을 수 있음을 나타냅니다. |
이 결과는 stingray.Network.get_activity_details_status()가 stingray.SessionJobStatus.COMPLETE를 반환하는 경우에만 가져올 수 있습니다.
기타 관련 참조 항목
![]() |
get_activity_details_status ( get_activites_id ) : integer![]() |
get_activites_id : | integer | 상태를 가져오려는 활동 세부 정보 가져오기 작업의 ID입니다. |
integer |
stingray.Network.get_activity_details()로 시작한 활동 세부 정보 가져오기 작업의 상태를 반환합니다. SessionJobStatus(network.xbl.work_status) 상수 중 하나일 수 있습니다. |
기타 관련 참조 항목
![]() |
handle_to_description ( user_id, handle ) : integer![]() 제공된 사용자에 대한 비동기 세션 조회 작업을 시작합니다.
|
user_id : | integer | 세션 조회를 수행할 사용자의 ID입니다. |
handle : | string | 세션 핸들입니다. 이는 비어 있으면 안 되고, 최대 63자로 구성할 수 있습니다. |
integer |
Lua 인터페이스에서 이 세션 조회 작업을 참조하는 데 사용되는 세션 조회 ID입니다. |
상태는 stingray.Network.handle_to_description_status()를 통해 모니터링할 수 있고, 결과는 stingray.Network.handle_to_description_result()를 통해 가져올 수 있습니다.
세션 조회가 완료되면 stingray.Network.free_handle_to_description()을 호출하여 리소스 점유를 풀어주어야 합니다.
기타 관련 참조 항목
![]() |
handle_to_description_result ( session_lookup_id ) : string, string![]() 세션 조회 결과입니다.
|
session_lookup_id : | integer | 결과를 가져오려는 세션 조회의 ID입니다. |
string |
세션 이름입니다. |
string |
세션 템플릿 이름 |
이 결과는 stingray.Network.handle_to_description_status()가 stingray.SessionJobStatus.COMPLETE를 반환하는 경우에만 가져올 수 있습니다.
기타 관련 참조 항목
![]() |
handle_to_description_status ( session_lookup_id ) : integer![]() |
session_lookup_id : | integer | 상태를 가져오려는 세션 조회의 ID입니다. |
integer |
stingray.Network.handle_to_description()으로 시작한 세션 조회의 상태를 반환합니다. SessionJobStatus(network.xbl.work_status) 상수 중 하나일 수 있습니다. |
기타 관련 참조 항목
![]() |
init_xboxlive_client ( config )![]() Xbox Live를 통해 다른 게임에 연결하도록 네트워킹 시스템을 초기화합니다.
|
config : | string | 클라이언트 설정을 위해 사용하는 .network_config 리소스의 이름입니다. 이 이름을 통해 세션 중에 사용할 수 있는 게임 오브젝트 및 RPC 메시지의 유형이 결정됩니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이 함수를 호출하기 전에 xboxlive_client_exists()를 사용하여 Xbox Live Client가 존재하지 않는지 확인합니다.
호출 전에 settings.ini(service_config_id 키 아래) 및 AppXManifest에 일치하는 서비스 구성 ID가 있는지 확인합니다.
기타 관련 참조 항목
![]() |
invite_friends ( user_id, session_id, min_selection, max_selection, custom_invite_id )![]() 시스템 UI를 열고 친구를 선택한 다음 초대를 전송합니다.
|
user_id : | integer | 관련 세션을 생성하려는 사용자의 ID입니다. |
session_id : | integer | 참여할 세션의 ID입니다. |
min_selection : | integer | 선택해야 하는 최소 인원 수입니다. 이 수는 0일 수 있습니다. 이 수가 max_selection 값보다 크면 안 됩니다. |
max_selection : | integer | 선택할 수 있는 최대 인원 수입니다. |
custom_invite_id : | string? | 사용할 사용자 정의 초대 문자열의 ID입니다(선택 사항). ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
기타 관련 참조 항목
![]() |
invite_friends_list ( user_id, session_id, friend_xuids, custom_invite_id )![]() 시스템 UI를 열지 않고 친구들에게 게임 초대를 전송하는 비동기 작업을 시작합니다.
|
user_id : | integer | 관련 세션을 생성하려는 사용자의 ID입니다. |
session_id : | integer | 참여할 세션의 ID입니다. |
friend_xuids : | string[] | 지정된 세션으로 초대할 친구의 Xbox 사용자 ID 목록입니다. [] 표기는 이 유형이 어레이임을 나타냅니다. 어레이는 구성원의 키가 순차적인 정수이며, 각 요소의 값이 표시된 유형의 인스턴스인 테이블입니다. |
custom_invite_id : | string? | 사용할 사용자 정의 초대 문자열의 ID입니다(선택 사항). ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
![]() |
join_local_multiplayer_session ( user_id, session_id ) : integer![]() 로컬 사용자를 세션에 참여시키는 비동기 작업을 시작합니다.
|
user_id : | integer | 관련 세션을 생성하려는 사용자의 ID입니다. |
session_id : | integer | 참여할 세션의 ID입니다. |
integer |
세션 ID입니다. |
stingray.MultiplayerSession.status()를 통해 세션 상태를 추적할 수 있습니다.
이 함수는 세션에 추가해야 하는 로컬 사용자가 여러 명일 때 사용해야 합니다. 호출 전에 stingray.Network.create_multiplayer_session()을 통해 생성한 세션이 최초 비동기 작업을 완료했는지 확인합니다.
기타 관련 참조 항목
![]() |
set_activity ( user_id, session_id )![]() 사용자의 활동을 제공된 세션으로 설정합니다.
|
user_id : | integer | 활동을 설정하려는 사용자의 ID입니다. |
session_id : | integer | 활동을 설정할 대상 세션의 ID입니다. |
이 함수는 아무 값도 반환하지 않습니다. |
이 함수는 연관된 세션에서 비동기적으로 실행됩니다. stingray.MultiplayerSession.status()를 통해 세션 상태를 추적할 수 있습니다.
참고: 이 함수는 제공된 세션에 의존적입니다. 호출 전에 stingray.MultiplayerSession.status()가 stingray.MultiplayerSession.READY를 반환하는지 확인하십시오.
기타 관련 참조 항목
![]() |
set_presence ( user_id, presence_id, is_active_in_title ) : integer![]() 이 함수는 지정된 사용자에 대한 현재 상태 문자열을 설정합니다.
|
user_id : | integer | 현재 상태를 설정하려는 사용자의 ID입니다. |
presence_id : | string | 설정할 현재 상태에 해당하는 문자열의 ID입니다. |
is_active_in_title : | boolean? | 사용자가 실제로 현재 타이틀을 사용 중인지 여부를 지정합니다. 기본값은 true입니다. ? 표기는 이 유형이 선택 사항임을 나타냅니다. 해당 인스턴스가 0개 또는 한 개일 수 있습니다. |
integer |
현재 상태 설정 작업의 ID입니다. |
작업 진행 상황을 추적하려면 stingray.Network.set_presence_status()를 사용합니다. 완료되면 시스템이 자동으로 작업을 정리합니다.
기타 관련 참조 항목
![]() |
set_presence_status ( set_precense_job_id ) : integer![]() |
set_precense_job_id : | integer | 상태를 가져올 현재 상태 설정 작업의 ID입니다. |
integer |
stingray.Network.set_presence()로 시작한 세션 조회의 상태를 반환합니다. stingray.SessionJobStatus 상수 중 하나가 됩니다. 완료 시 자동으로 stingray.SessionJobStatus.COMPLETE가 아닌 stingray.SessionJobStatus.NOT_RUNNING으로 전환되기 때문에 이 작업을 완료하고 나서는 리소스 점유를 풀어줄 필요가 없습니다. |
기타 관련 참조 항목
![]() |
init_xboxlive_client()를 통해 생성한 Xbox Live Client를 종료합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
이 함수는 아무 값도 반환하지 않습니다. |
![]() |
xboxlive_client_exists ( ) : boolean![]() 이 함수를 사용하여 언제든 하나의 Xbox Live Client만 존재하는지 확인합니다.
|
이 함수는 어떠한 매개변수도 수용하지 않습니다. |
boolean |
Xbox Live Client가 존재하면 true를 반환합니다. |
기타 관련 참조 항목