- 이 페이지에서는 XBOX 인증에서 테스트되는 XBOX 본체 게임의 XR을 정의합니다. XBOX 인증에서 테스트되지 않는 XR을 포함한 전체 XR 목록은 XBOX 요구 사항을 참조하세요.
- 이번 릴리스의 변경 사항 요약은 이 페이지 하단의 이번 릴리스의 변경 사항을 참조하세요.
- XR 및 테스트 사례의 변경 기록을 검토하려면 XBOX 요구 사항 및 테스트 사례의 변경 기록을 참조하세요.
- 본체에서 가장 많이 실패하는 테스트 사례 10가지를 확인하세요.
[!Important] 인증 팀은 모든 최종 제출에 대해 CERT 샌드박스의 리테일 하드웨어에서 테스트를 수행합니다. 본체 테스트 사례에는 리테일 XBOX 본체를, 디바이스별 테스트 사례에는 이에 상응하는 리테일 하드웨어(예: 리테일 PC 또는 휴대용 디바이스)를 사용합니다. 이전에는 일부 테스트 사례가 XBOX 개발 키트에서 실행되는 GDK 명령에 의존했습니다. 이러한 사례는 리테일 하드웨어에서 사용할 수 있는 단계만 사용하도록 수정되었습니다. 선택적 제출은 여전히 CERT.DEBUG 샌드박스의 개발 키트에서 테스트됩니다.
일시 중단, 절전 및 최대 절전 모드 테스트
많은 테스트 사례는 타이틀이 저전력 또는 일시 중단 상태에서 다시 시작된 _후_의 타이틀 동작을 검증합니다. 이러한 전환은 일반적인 플레이 중에 발생할 수 있으므로 타이틀은 진행 상황, 보상 및 도전 과제를 보존해야 하며, 다시 시작하거나 크래시, 중단 또는 진행 상황 손실 없이 재개되어야 합니다. 이 섹션에서는 각 디바이스에서 타이틀을 이러한 상태로 전환하는 방법을 설명합니다. 타이틀을 일시 중단, 절전 또는 최대 절전 모드로 전환하는 테스트 사례에는 사용해야 하는 방법과 테스트 대상 디바이스에 적용되는 방법이 명시되어 있습니다. XBOX 본체 게임 수명 주기를 구성하는 개념과 이벤트에 대한 자세한 내용은 XBOX 게임 수명 주기를 참조하세요. 이 문서에서는 게임에서 게임 상태 및 상태 변경 이벤트를 구현하는 방법을 보여 줍니다. XBOX 본체에서 게임은 다음과 같은 조건에서 일시 중단됩니다.- 전원 모드가 인스턴트 온으로 설정된 상태에서 본체를 꺼서 본체가 연결된 대기 모드로 전환되는 경우
- 게임이 10분 동안 포커스를 벗어난 상태로 유지되는 경우. 예를 들어 설정과 같은 애플리케이션을 실행하고 10분 동안 포커스를 유지하는 경우
기본 요구 사항
이 범주의 요구 사항은 코딩 표준, 타이틀 동작 및 게임 제출에 관한 일반 규칙에 적용됩니다.XR-001: 타이틀 안정성 *
타이틀은 타이틀 안정성에 관한 Microsoft Store 정책을 준수해야 합니다. 이 요구 사항에는 다음 정책이 적용됩니다. 10.4.2제품은 즉시 시작되고, 계속 실행되며, 사용자 입력에 대한 응답성을 유지해야 합니다. 제품은 정상적으로 종료되어야 하며 예기치 않게 닫히지 않아야 합니다. 제품은 관리형 또는 네이티브 시스템 API에서 발생하는 예외를 처리해야 하며, 예외가 처리된 후에도 사용자 입력에 대한 응답성을 유지해야 합니다.
001-01 타이틀 안정성
테스트 단계- XBOX 프로필에 로그인합니다.
- 게임을 시작합니다.
- 다음을 포함하되 이에 국한되지 않는 게임의 모든 영역을 탐색합니다.
- 게임 플레이
- 메뉴 및 기능
- 다운로드 가능한 콘텐츠(DLC)
- 이전 저장 데이터가 없는 새 XBOX 프로필을 사용하여 XBOX 서비스에 연결되지 않은 상태에서 1-3단계를 반복합니다.
게임 불안정성이란 사용자 입력이 인식되지 않거나, 사용자 알림 없이 소프트웨어 크래시로 인해 사용자가 진행하지 못하는 모든 상태를 의미합니다. 통과 예
- 게임이 안정적입니다.
- 게임으로 인해 의도하지 않은 사용자 데이터 손실이 발생하지 않습니다.
- 게임이 크래시되거나, 응답하지 않거나, 본체를 다시 부팅시킵니다.
- 게임으로 인해 사용자 데이터가 손실됩니다.
- 상호 작용할 수 없는 일시 정지 또는 정적 화면이 20초 넘게 표시됩니다.
- 게임에 진행률 표시 없이 2분 넘게 지속되는 로딩 화면이 있습니다.
- 게임에 진행률 표시기가 있는 상태로 3분 넘게 지속되는 로딩 화면이 있습니다.
001-02 일시 중단, 절전 및 최대 절전 모드 후 타이틀 안정성
이 테스트는 XBOX 본체에서 일시 중단 후 다시 시작할 때와 PC 및 휴대용 디바이스에서 절전 또는 최대 절전 모드 후 다시 시작할 때의 타이틀 안정성을 검증합니다. 본체에서 게임을 일시 중단하는 방법과 PC 또는 휴대용 디바이스를 절전 및 최대 절전 모드로 전환하는 방법은 일시 중단, 절전 및 최대 절전 모드 테스트를 참조하세요. 이 테스트 사례에서는 3단계에서 테스트 대상 디바이스에서 사용할 수 있는 모든 방법을 확인합니다. 테스트 단계- 프로필에 로그인하고 게임을 시작합니다. XBOX 본체에서는 본체 전원 모드를 인스턴트 온으로 설정합니다.
- 게임 플레이로 진행합니다.
- 메뉴 및 모든 게임 모드를 포함하여 게임 전체의 여러 지점에서 다음을 수행합니다.
- XBOX 본체에서는 게임을 일시 중단합니다.
- PC 및 휴대용 디바이스에서는 시스템을 절전 모드로 전환한 다음 최대 절전 모드로 전환합니다.
- 디바이스의 전원을 다시 켠 상태에서 게임을 다시 시작하고 사용자가 마지막 게임 플레이 위치에서 계속할 수 있는지 확인합니다.
- 다음 저장 지점까지 계속 진행하고 게임을 저장한 후 주 메뉴로 돌아갑니다.
- 5단계에서 만든 저장 데이터를 다시 로드하고 모든 진행 상황이 그대로 있는지 확인합니다.
- 게임 전체에서 3-6단계를 반복합니다.
게임이 다시 시작되면 다음이 발생합니다.
- 게임이 크래시되거나 중단되거나 의도하지 않은 게임 진행 상황 손실을 일으키지 않습니다.
- 게임이 완전히 다시 시작되거나 사용자에게 게임을 다시 시작하도록 요구하지 않습니다.
- 게임이 XBOX 및/또는 파트너 서비스에 대한 온라인 연결을 다시 설정합니다.
- 게임이 크래시되거나 중단되거나 의도하지 않은 게임 진행 상황 손실을 일으키지 않습니다.
- 게임이 완전히 다시 시작되거나 사용자에게 게임을 다시 시작하도록 요구하지 않습니다.
- 모든 메뉴와 게임 모드에 액세스할 수 있으며 사용자가 마지막 게임 플레이 위치에서 계속할 수 있습니다.
- 사용자에게 마지막 게임 플레이 위치에서 다시 시작할지 묻는 메시지가 표시됩니다.
- 게임이 이전 메뉴 또는 초기 상호 작용 상태로 돌아갑니다.
- 온라인 서비스 연결이 필요한 온라인 게임 플레이 중에 본체에서 일시 중단하거나 PC 또는 휴대용 디바이스를 절전 또는 최대 절전 모드로 전환한 후, 게임이 다시 시작되고 사용자를 이전 메뉴 또는 초기 상호 작용 상태로 돌려보냅니다.
- 게임이 XBOX 및/또는 파트너 서비스에 대한 온라인 연결을 다시 설정합니다.
- 연결된 스토리지의 동기화 해제로 인해 시스템에서 게임을 종료합니다.
- 게임이 크래시되거나, 중단되거나, 다시 시작됩니다.
- 일시 중단, 절전 또는 최대 절전 모드 전환 실패로 인해 게임이 종료되거나, 다시 시작한 후 예기치 않게 종료됩니다.
- 사용자가 마지막 저장 위치를 로드할 수 없습니다.
- 게임이 XBOX 및/또는 파트너 서비스에 대한 온라인 연결을 다시 설정하지 않거나, 사용자가 파트너 호스팅 서비스에 대한 연결을 다시 설정할 수 없습니다.
XR-003: 제출을 위한 타이틀 품질 *
XBOX 게임은 XBOX 품질 표준을 충족해야 하며 완전히 작동하고 테스트 가능해야 합니다.기능적으로 완전하고 테스트 가능
타이틀은 인증을 위해 제출될 때 완전히 작동하고 테스트 가능해야 합니다. 여기에는 모든 클라이언트 코드, 제출 아티팩트 및 다운로드 가능한 콘텐츠가 포함됩니다. 타이틀은 최신 버전의 Submission Validator를 사용하여 오류 없이 깔끔하게 패키지되어야 합니다. Submission Validator 로그는 제출물에 포함되어야 합니다.XBOX 품질 표준
XBOX 게임은 플레이어의 기대를 충족하기 위해 모든 게임 모드와 시나리오에서 올바르게 작동해야 합니다.타이틀 무결성
타이틀에는 크래시, 멈춤, 플레이할 수 없는 프레임 속도, 진행을 크게 방해하는 버그 또는 그래픽 손상과 같은 심각한 문제가 없어야 합니다. 게임 설정, 옵션 및 컨트롤은 올바르게 적용되어야 하며 적절한 경우 기본 설정을 따라야 합니다. 탐색과 콘텐츠 이용은 막힘없이 원활해야 하며, 막다른 곳이나 액세스할 수 없는 메뉴가 없어야 합니다. 멀티플레이어 기능은 플레이어 수에 관계없이 안정적이고 제대로 작동해야 합니다.저장된 게임 호환성
게임 저장 데이터와 플레이어 진행 상황은 콘텐츠 업데이트 후에도 계속 작동해야 합니다. 또한 업데이트된 저장 데이터를 기본 디스크 버전으로 로드할 때 영구적인 데이터 손실이 발생하지 않아야 합니다.추가 정보
부정확하고 불완전한 제출물은 인증에서 거부됩니다. 인증을 위해 제출하기 전에 Partner Center에서 XBOX 인증에 제출 설명서를 검토하세요. 인증 제출과 관련된 질문은 Microsoft 담당자에게 문의하세요.Submission Validator
Submission Validator는 개발자가 사용하는 독립 실행형 도구가 아닙니다. 대신 makepkg pack 명령을 사용할 때마다 앱을 검사하기 위해 자동으로 호출됩니다. 구문 및 명령줄 사용에 대한 자세한 내용은 makepkg 참조 페이지를 참조하세요. Submission Validator가 식별하는 문제 유형은 제출부터 인증을 거쳐 출시에 이르는 과정을 원활하게 만든다는 목표를 향해 시간이 지남에 따라 늘어나고 발전합니다. Submission Validator가 감지하는 현재 문제 목록은 Submission Validator 품질 검사를 참조하세요.파트너 호스팅 서비스
게임 실행에 필요한 파트너 서비스는 인증에 제출할 때 작동하고 올바르게 구성되어 있어야 합니다. 이러한 서비스는 타이틀의 테스트 일정을 잡기 전에 확인되며 인증 기간 내내 계속 작동해야 합니다.구현 지침 및 모범 사례
옵션 및 설정
옵션, 컨트롤 및 언어와 같은 게임 설정은 게임 내에서 업데이트할 때와 타이틀을 종료하고 다시 시작한 후에 올바르게 적용됩니다. 적절한 경우 기본 설정을 따릅니다.탐색
모든 탐색 명령은 예상대로 작동해야 합니다. 본체에서는 컨트롤러로 게임을 완전히 탐색할 수 있어야 합니다. 콘텐츠에 막다른 곳이 없고, 모든 게임 메뉴를 탐색할 수 있으며, 모든 콘텐츠를 이용할 수 있습니다.지역화 지원
타이틀이 지원해야 하는 지역화의 양에 대한 요구 사항은 없습니다. 지역화된 텍스트가 지원되는 영역에서는 디스플레이 설정에 관계없이 텍스트를 읽을 수 있어야 합니다.순위표
타이틀은 사용자가 사용 가능한 모든 순위표에 통계를 게시하고 제공된 필터를 사용하여 해당 순위표를 정렬할 수 있도록 해야 합니다.본체에서의 헤드셋 상태 변경
본체에서는 헤드셋을 연결하고, 제거하고, 다시 연결할 때 오디오가 계속 들려야 합니다. XBOX One Software Development Kit와 Microsoft Game Development Kit 오디오 API 비교를 참조하세요.다음 표는 본체 또는 PC에서 타이틀에 적용되는 XR-003 테스트 사례를 보여 줍니다.
003-02 타이틀 무결성
구성- 이 페이지 하단의 본체 테스트 벤치 가이드를 참조하여 본체를 설정하세요.
- 이 페이지 하단의 PC 테스트 벤치 가이드를 참조하여 PC를 설정하세요.
- XBOX 프로필에 로그인하고 타이틀을 시작합니다.
-
모든 메뉴와 하위 메뉴를 탐색하고, 모든 기능을 검토하고, 모든 게임 모드를 완료합니다.
- 지원되는 모든 언어로 추가 기능을 포함하여 모든 메뉴 UI, 추가 콘텐츠, 싱글 플레이어 및 멀티플레이어 게임 모드와 상호 작용하고 완료합니다.
- 해당하는 경우 오프라인, 온라인 및 분할 화면을 테스트합니다.
- 최대 플레이어 수로 멀티플레이어 게임 모드를 테스트합니다.
- 지원되는 모든 순위표에 통계를 게시합니다.
모든 타이틀은 사용자에게 신뢰할 수 있고, 공정하며, 일관되고, 완전한 XBOX 엔터테인먼트 경험을 제공해야 합니다. 통과 예
- 모든 게임 모드에서 타이틀을 완료할 수 있습니다.
- 게임 플레이 중에 설정한 옵션이 타이틀을 종료하고 다시 시작한 후에도 저장되어 있습니다.
- 타이틀의 모든 영역을 예상대로 탐색할 수 있습니다.
- 지역화된 텍스트가 지원되는 모든 영역에서 올바르게 표시됩니다.
- 사용자가 예상대로 순위표에 게시할 수 있습니다.
- 레벨이 끝날 때 타이틀이 크래시되거나 게임의 어느 영역에서든 사용자가 진행하지 못합니다.
- 타이틀의 일부 영역을 예상대로 탐색할 수 없습니다.
- 사용자가 일시 정지 메뉴에서 가로 또는 세로 카메라 컨트롤을 반전해도 게임 내 카메라 컨트롤이 변경되지 않습니다.
- 사용자가 예상대로 순위표에 게시할 수 없습니다.
- 사용자가 이미 다른 모드를 완료한 경우 특정 게임 모드를 완료할 수 없습니다.
- 게임 플레이 중에 설정한 옵션이 타이틀을 종료하고 다시 시작한 후 기본값으로 재설정됩니다.
- 프레임 속도 문제로 인해 타이틀을 플레이할 수 없습니다.
003-16 저장된 게임 호환성
테스트 단계- XBOX 프로필에 로그인하고 XBOX에 연결하지 않은 상태에서 게임을 시작합니다.
- 게임을 플레이하고 진행 상황과 설정을 저장합니다.
- 게임을 다시 부팅하고 2단계에서 저장한 진행 상황을 로드하여 다시 시작할 수 있는지 확인합니다.
- XBOX에 연결하고 기본 타이틀의 콘텐츠 업데이트를 설치합니다.
- 업데이트 후에도 저장된 진행 상황을 로드하여 계속할 수 있는지 확인합니다.
- 타이틀을 다시 부팅하고, 새 게임을 시작하고, 진행 상황을 다시 저장합니다.
- 게임을 종료하고 제거합니다.
- XBOX 네트워크에 연결하지 않은 상태에서 기본 게임을 다시 설치하고 시작합니다.
- 다음 중 하나가 발생하는지 확인합니다.
- 저장된 진행 상황을 로드하여 계속할 수 있음
- 저장 데이터를 사용하려면 콘텐츠 업데이트를 설치해야 한다는 메시지가 게임에 표시됨
- 게임에 6단계에서 만든 저장 데이터가 표시되지 않음
- 타이틀을 다시 부팅하고 콘텐츠 업데이트를 설치합니다.
- 업데이트 후에도 저장된 진행 상황을 로드하여 계속할 수 있는지 확인합니다.
콘텐츠가 업데이트된 버전의 게임은 콘텐츠가 업데이트되지 않은 버전의 게임에서 만든 저장 데이터를 성공적으로 로드할 수 있어야 합니다. 통과 예
- 콘텐츠가 업데이트된 버전의 타이틀에서 모든 저장 데이터를 성공적으로 로드할 수 있습니다.
- 업데이트된 저장 데이터를 로드하기 위해 기본 버전을 시작하면 사용자에게 누락된 콘텐츠에 대한 알림과 저장 파일을 로드할 수 없는 이유가 제공되거나, 콘텐츠가 업데이트된 버전에서 만든 저장 데이터가 기본 버전에서 표시되지 않습니다.
- 콘텐츠가 업데이트된 버전의 게임이 이전 버전의 타이틀에서 만든 게임 저장 데이터를 로드할 수 없습니다.
- 콘텐츠가 업데이트된 버전의 게임에서 만든 저장 데이터를 로드할 때 기본 버전의 게임이 크래시됩니다.
003-17 헤드셋 상태 변경
테스트 단계- 컨트롤러에 헤드폰을 연결하거나 게임 디바이스에 헤드폰을 무선으로 연결합니다.
- 타이틀을 부팅하고 게임 플레이로 진행합니다.
- TV와 헤드폰을 통해 오디오가 들리는지 확인합니다.
- 헤드폰을 분리하고 잠시 후 오디오가 다시 들리는지 확인합니다.
- 헤드폰을 다시 연결하고 TV와 헤드폰을 통해 오디오가 들리는지 확인합니다.
- 타이틀 전체에서 4-5단계를 반복합니다.
오디오가 문제없이 계속 들립니다. 통과 예
- 헤드셋을 제거할 때마다 오디오가 문제없이 다시 들립니다.
- 헤드셋을 연결하면 오디오가 문제없이 다시 들립니다.
- 헤드셋 상태가 변경된 후 오디오가 더 이상 들리지 않습니다.
- 헤드셋 상태가 변경된 후 오디오가 왜곡되거나 손상됩니다.
003-18 일시 중단, 절전 및 최대 절전 모드 후 헤드셋 상태 변경
XBOX 본체에서 게임을 일시 중단하는 방법과 PC 또는 휴대용 디바이스를 절전 및 최대 절전 모드로 전환하는 방법은 일시 중단, 절전 및 최대 절전 모드 테스트를 참조하세요. 이 테스트 사례에서는 6단계에서 테스트 대상 디바이스에서 사용할 수 있는 모든 일시 중단, 절전 및 최대 절전 모드 방법을 확인합니다. 테스트 단계- 프로필에 로그인합니다. XBOX 본체에서는 본체 전원 모드를 인스턴트 온으로 설정합니다.
- XBOX 본체에서는 XBOX 오디오 설정에서 헤드셋 형식으로 Windows Sonic for Headphones를 사용하도록 설정합니다.
- 헤드폰을 연결합니다. XBOX 본체에서는 컨트롤러에 연결하거나 본체에 무선으로 연결합니다. PC 및 휴대용 디바이스에서는 USB, 3.5mm 또는 Bluetooth로 연결합니다.
- 게임을 시작하고 게임 플레이로 진행합니다.
- TV와 헤드폰을 통해 오디오가 들리는지 확인합니다.
- 게임 전체의 여러 지점에서 다음을 수행합니다.
- XBOX 본체에서는 게임을 일시 중단합니다.
- PC 및 휴대용 디바이스에서는 시스템을 절전 모드로 전환한 다음 최대 절전 모드로 전환합니다.
- 게임을 다시 시작하고 TV를 통해 오디오가 들리는지 확인합니다.
- 헤드폰을 다시 연결하고 TV와 헤드폰을 통해 오디오가 들리는지 확인합니다.
- 게임 전체에서 6-8단계를 반복합니다.
오디오가 문제없이 계속 들립니다. 통과 예
- 헤드셋을 제거할 때마다 오디오가 문제없이 다시 들립니다.
- 헤드셋을 연결하면 오디오가 문제없이 다시 들립니다.
- 헤드셋 상태가 변경된 후 오디오가 더 이상 들리지 않습니다.
- 헤드셋 상태가 변경된 후 오디오가 왜곡되거나 손상됩니다.
003-20 스트리밍 설치 초기 플레이 마커
초기 플레이 마커가 포함된 타이틀은 초기 플레이 마커에서 시작될 때 게임 플레이 경험을 제공해야 합니다. GDK를 사용한 스트리밍 설치 또는 인텔리전트 전송에 대한 자세한 내용은 스트리밍 설치 및 인텔리전트 전송 개요를 참조하세요. 테스트 단계- XBOX 프로필에 로그인합니다.
- 타이틀을 설치하고 초기 플레이 마커의 설치가 완료된 후 타이틀을 시작합니다.
- 전체 설치가 완료되기 전에 타이틀의 모든 영역에 들어가 봅니다.
초기 플레이 마커 설치는 게임 플레이 경험(예: 튜토리얼, 첫 번째 레벨 플레이 또는 한 게임 모드에서의 빠른 멀티플레이어 매치)을 제공해야 합니다. 통과 예
- 타이틀이 초기 플레이 마커에서 시작될 때 게임 플레이 경험(예: 튜토리얼, 첫 번째 레벨 플레이 또는 한 게임 모드에서의 빠른 멀티플레이어 매치)을 제공합니다.
- 초기 플레이 마커가 설치된 후 타이틀이 게임 플레이 경험을 제공하지 않습니다. 실패하는 경험에는 다음이 포함됩니다.
- 진행률 표시줄만 표시
- 동영상 및/또는 일련의 이미지 재생
- 주 메뉴에 대한 액세스만 제공
- 기타 상호 작용이 없는 경험
XR-130: XBOX Series X|S 세대 *
본체 세대를 대상으로 하는 모든 게임 타이틀은 해당 세대의 전체 디바이스 제품군을 지원해야 합니다. 본체 세대 간의 일관성을 유지하기 위해 게임은 다음을 충족해야 합니다.- 저장된 게임이 세대 내의 여러 본체 유형에서 작동하도록 합니다.
- 온라인 플레이어가 세대 내의 본체 유형에 따라 분리되지 않도록 합니다.
- 세대 내의 여러 본체 유형에서 동일한 게임 모드가 제공되도록 합니다.
130-02 저장된 게임 로밍
필요한 도구- XBOX Series S 1대
- XBOX Series X 1대
- 디바이스 A에서 XBOX 프로필에 로그인하고 타이틀을 시작합니다.
- 게임 플레이를 시작하고 진행 상황을 저장합니다(가능한 경우 설정 구성을 변경하거나 새로 추가하여 설정 저장 데이터를 만듭니다).
- 타이틀을 종료합니다.
- 같은 세대의 다른 디바이스에서 1단계에서 사용한 것과 동일한 프로필로 로그인합니다.
- 1단계와 동일한 타이틀을 시작하고, 저장된 모든 게임과 모든 설정 및/또는 구성 파일에 액세스하여 올바르게 로드할 수 있으며 같은 세대의 특정 디바이스에 대한 종속성이 없는지 확인합니다.
- 같은 세대의 디바이스에서 위의 모든 단계를 반복합니다.
저장된 게임은 같은 세대 내의 모든 본체 유형에서 완전하게 작동해야 합니다. 통과 예
- XBOX Series S에서 만든 게임 저장 데이터가 XBOX Series X에서 작동하며, XBOX Series 디바이스 제품군 전체에서 그 반대의 경우도 마찬가지입니다.
- 한 세대 내에서 만든 게임 저장 데이터가 해당 세대의 모든 디바이스 유형에서 완전히 로드되지 않습니다.
130-03 온라인 분리
필요한 도구- XBOX Series S 1대
- XBOX Series X 1대
- XBOX 프로필에 로그인하고 같은 세대의 모든 디바이스 유형에서 타이틀을 시작합니다.
- 모든 디바이스가 참여하는 XBOX 네트워크 멀티플레이어 게임 세션을 완료합니다.
- 타이틀에서 지원하는 모든 XBOX 네트워크 멀티플레이어 모드에서 2단계를 반복합니다.
XBOX 네트워크 플레이어는 같은 세대에서 어떤 본체 유형을 사용하는지에 관계없이 다른 XBOX 네트워크 플레이어와 함께 참가할 수 있어야 합니다. 통과 예
- 같은 세대 디바이스의 모든 본체가 멀티플레이어 게임 플레이에서 서로 대전할 수 있습니다.
- XBOX 네트워크 플레이어가 같은 세대 내에서 본체 유형에 따라 분리됩니다.
130-04 주요 게임 모드
필요한 도구- XBOX Series S 1대
- XBOX Series X 1대
- XBOX 프로필에 로그인하고 타이틀을 시작합니다.
- 모든 주요 게임 모드를 찾아 액세스합니다.
- 같은 세대의 디바이스에서 위의 모든 단계를 반복하고 각 디바이스에서 모든 게임 모드가 동일한지 확인합니다.
같은 세대의 디바이스에서 동일한 게임 모드가 제공되어야 합니다. 통과 예
- 같은 세대 디바이스의 모든 본체가 동일한 게임 모드 세트를 제공합니다.
- 같은 세대 디바이스 중 하나 이상의 본체가 같은 세대 내 본체 유형에 따라 다른 게임 모드를 제공합니다.
XR-022: 공식 명명 표준 *
타이틀은 XBOX 플랫폼 기능, 서비스, 하드웨어 또는 주변 장치를 언급할 때 최신 릴리스의 용어 목록에 정의된 명명 표준을 사용해야 합니다. 이러한 표준은 실행되는 디바이스에 관계없이 모든 XBOX 게임에 적용됩니다. 타이틀은 용어 목록에 포함되지 않은 용어를 사용하여 디바이스 또는 주변 장치의 구성 요소 이미지를 표시하거나 이를 언급해서는 안 됩니다.022-01 공식 명명 표준
테스트 단계- 타이틀을 시작합니다.
- 타이틀의 모든 영역을 방문합니다.
- 모든 메뉴와 하위 메뉴를 탐색합니다.
- 사용 가능한 모든 설정과 옵션을 변경합니다.
- 타이틀이 저장을 지원하는 경우 가능한 모든 게임 유형을 저장하고 로드합니다.
- 모든 시네마틱을 시청합니다.
- 표시되는 모든 텍스트와 이미지를 기록합니다.
모든 텍스트가 최신 용어 목록을 준수합니다. 이미지는 용어 목록에 명시적으로 포함되지 않은 용어를 사용하여 디바이스 또는 주변 장치의 구성 요소를 표시해서는 안 됩니다. 통과 예
없음 실패 예
- 타이틀이 경쟁 플랫폼의 독점 용어 또는 이미지를 사용합니다.
- 타이틀이 용어 목록에 포함되지 않은 용어를 사용하여 디바이스 또는 주변 장치의 구성 요소를 언급합니다.
XR-074: XBOX 및 파트너 서비스에 대한 연결 손실 *
타이틀은 XBOX 및 파트너 서비스 연결과 관련된 오류를 정상적으로 처리해야 합니다. 타이틀은 실패가 발생한 후 XBOX 서비스에 대한 요청을 다시 시도할 때 XBOX에서 설정한 재시도 정책을 준수해야 합니다. 타이틀은 서비스를 사용할 수 없을 때 사용자에게 표시하는 메시지를 적절하게 관리해야 합니다. 파트너 서비스를 사용할 수 없는 경우 게임은 XBOX 네트워크에 문제가 있다고 표시해서는 안 됩니다. 타이틀은 네트워크 서비스가 느려지거나 간헐적으로 사용 가능한 경우에도 크래시되거나 중단되어서는 안 됩니다.074-01 XBOX 서비스에 대한 WAN 연결 끊김
테스트 단계- XBOX 프로필에 로그인합니다.
- 다음 작업을 수행하는 동안 WAN 네트워크 연결을 끊습니다. 이더넷 스위치/허브를 사용하는 경우 네트워크 장치에서 업링크 케이블을 분리합니다. 디바이스가 Wi-Fi를 통해 연결된 경우 무선 액세스 포인트 연결에서 업링크 케이블을 분리합니다.
- 새 저장 지점 만들기
- 저장 지점 로드
- 자동 저장 지점에 도달
- 저장된 게임 목록 열거
- 온라인 세션 검색 및 참가
- 온라인 세션 만들기 시도
- 순위표 보기(해당하는 경우)
- 오프라인 플레이
본체가 XBOX 서비스에 연결할 수 없는 경우 타이틀은 사용자에게 친숙한 오류 메시지로 응답해야 합니다. 통과 예
- 타이틀이 XBOX 서비스에 대한 네트워크 연결 손실을 나타내는 오류 메시지를 표시합니다.
- XBOX 서비스가 필요하지 않은 로컬 게임 모드를 플레이하는 동안에는 타이틀이 오류 메시지를 표시하지 않습니다.
- AppX 매니페스트에
RequireXboxLive가 있는 타이틀은 연결이 끊기면 일시 중단된 후 종료됩니다.
- 사용자가 온라인이 아닌 XBOX 게임 세션을 완료할 수 없습니다.
- 타이틀이 응답하지 않거나 불안정한 상태가 됩니다.
074-02 직접 연결 끊김
테스트 단계- 타이틀을 시작하고 XBOX 프로필에 로그인합니다.
- 타이틀에서 다음 작업을 수행하는 동안 디바이스에서 네트워크 케이블을 뽑거나 WAP 또는 무선 라우터의 전원을 끕니다.
- 새 저장 지점 만들기
- 저장 지점 로드
- 자동 저장 지점에 도달
- 저장된 게임 목록 열거
- 온라인 세션 검색 및 참가
- 온라인 세션 만들기 시도
- 순위표 보기(해당하는 경우)
- 오프라인 플레이
디바이스가 XBOX 서비스에 대한 연결을 잃은 경우 타이틀은 사용자에게 친숙한 오류 메시지로 응답해야 합니다. 통과 예
- 온라인 게임 모드에서 타이틀이 사용자에게 친숙한 메시지를 표시합니다.
- 오프라인 게임 모드에서는 타이틀이 게임 플레이를 중단하지 않습니다.
- AppX 매니페스트에
RequireXboxLive가 있는 타이틀은 연결이 끊기면 일시 중단된 후 종료됩니다.
- 오프라인 게임 모드에서 오류 메시지가 표시됩니다.
- 타이틀이 응답하지 않거나 불안정한 상태가 됩니다.
- 네트워크가 오프라인 상태가 된 후에도 사용자가 온라인 메뉴를 보거나 버퍼링된 미디어를 볼 수 있습니다.
074-03 일시 중단, 절전 또는 최대 절전 모드 중 XBOX 서비스 연결 끊김
XBOX 본체에서 게임을 일시 중단하는 방법과 PC 또는 휴대용 디바이스를 절전 및 최대 절전 모드로 전환하는 방법은 일시 중단, 절전 및 최대 절전 모드 테스트를 참조하세요. 이 테스트 사례에서는 3단계에서 테스트 대상 디바이스에서 사용할 수 있는 모든 일시 중단, 절전 및 최대 절전 모드 방법을 확인합니다. 테스트 단계- 프로필에 로그인합니다. XBOX 본체에서는 본체 전원 모드를 인스턴트 온으로 설정합니다.
- 게임을 시작하고 게임 플레이로 진행합니다.
- 게임 전체의 여러 지점에서 다음을 수행합니다.
- XBOX 본체에서는 게임을 일시 중단합니다.
- PC 및 휴대용 디바이스에서는 시스템을 절전 모드로 전환한 다음 최대 절전 모드로 전환합니다.
- 디바이스의 전원을 다시 켠 상태에서 게임을 다시 시작하고 게임이 연결 끊김을 정상적으로 처리하는지 확인합니다.
- 게임 전체에서 3-4단계를 반복합니다.
일시 중단, 절전 또는 최대 절전 모드에서 다시 시작한 후 디바이스가 XBOX 서비스에 연결할 수 없는 경우 타이틀은 성공적으로 다시 시작되고, 상황을 정상적으로 처리하며, 적절한 경우 사용자에게 친숙한 오류 메시지로 응답해야 합니다. 통과 예
- 온라인 XBOX 멀티플레이어 세션 중에 타이틀이 XBOX 서비스에 대한 네트워크 연결 손실을 나타내는 오류 메시지를 표시합니다.
- XBOX 서비스가 필요하지 않은 로컬 게임 모드를 플레이하는 동안에는 타이틀이 오류 메시지를 표시하지 않습니다.
- 사용자가 온라인이 아닌 XBOX 게임 세션을 완료할 수 없습니다.
- 타이틀이 응답하지 않거나 불안정한 상태가 됩니다.
- 다시 시작한 후 타이틀이 오해의 소지가 있거나 잘못된 오류 메시지를 표시합니다.
074-04 일시 중단, 절전 또는 최대 절전 모드 중 XBOX 서비스 재연결
XBOX 본체에서 게임을 일시 중단하는 방법과 PC 또는 휴대용 디바이스를 절전 및 최대 절전 모드로 전환하는 방법은 일시 중단, 절전 및 최대 절전 모드 테스트를 참조하세요. 이 테스트 사례에서는 3단계에서 테스트 대상 디바이스에서 사용할 수 있는 모든 일시 중단, 절전 및 최대 절전 모드 방법을 확인합니다. 테스트 단계- 프로필에 로그인하고 디바이스가 홈으로 설정되어 있는지 확인합니다. XBOX 본체에서는 본체 전원 모드를 인스턴트 온으로 설정합니다.
- XBOX에 연결되지 않았지만 로컬 네트워크 연결은 유지된 상태에서 타이틀을 시작합니다.
- 이더넷 스위치/허브를 사용하는 경우 네트워크 장치에서 업링크 케이블을 분리합니다.
- 디바이스가 Wi-Fi를 통해 연결된 경우 무선 액세스 포인트에서 업링크 케이블을 분리합니다.
- 게임 전체의 여러 지점에서 다음을 수행합니다.
- XBOX 본체에서는 게임을 일시 중단합니다.
- PC 및 휴대용 디바이스에서는 시스템을 절전 모드로 전환한 다음 최대 절전 모드로 전환합니다.
- 업링크 케이블을 다시 연결하고 디바이스가 XBOX 서비스에 다시 연결될 때까지 기다립니다.
- 디바이스의 전원을 다시 켠 상태에서 게임을 다시 시작하고 게임이 재연결을 정상적으로 처리하는지 확인합니다.
- 게임 전체에서 2-5단계를 반복합니다.
일시 중단, 절전 또는 최대 절전 모드에서 다시 시작한 후 디바이스가 XBOX 서비스에 연결할 수 없는 경우 타이틀은 성공적으로 다시 시작되고, 상황을 정상적으로 처리하며, 적절한 경우 사용자에게 친숙한 오류 메시지로 응답해야 합니다. 통과 예
- 사용자가 타이틀을 다시 시작하고 중단 없이 오프라인 XBOX 게임 세션을 완료할 수 있습니다.
- 타이틀이 안정적으로 유지되며 크래시되지 않습니다.
- 사용자가 온라인이 아닌 XBOX 게임 세션을 완료할 수 없습니다.
- 타이틀이 응답하지 않거나 불안정한 상태가 됩니다.
- 다시 시작한 후 타이틀이 오해의 소지가 있거나 잘못된 오류 메시지를 표시합니다.
074-07 동적 연결 손실
필요한 도구: 파트너 서비스를 차단하도록 XMAT 구성 설치, 캡처 설정 및 스크립팅 지침은 XBOX Multiplayer Analysis Tool을 사용하여 네트워크 트래픽 검사 및 수정을 참조하세요.- 관리자 권한으로 XMAT를 시작하고 테스트 대상 디바이스에 대한 Web Proxy 캡처를 추가합니다.
- XBOX 개발 본체에서는 Enable XBOX Proxy를 선택하고 본체가 다시 시작될 때까지 기다립니다.
- Windows에서는 Start Capture를 선택합니다.
- XMAT로 캡처하는 상태에서 타이틀을 시작하고 모든 메뉴를 탐색하고, 멀티플레이어 세션을 완료하고, 모든 게임 모드를 로드하고, 다음을 포함하여 타이틀의 모든 영역을 탐색합니다.
- 메뉴
- 순위표
- 서버(서버를 만들고 다른 사람의 서버에 참가)
- 친구 목록
- 타이틀 내 스토어
- 기간 한정 이벤트
- Host 필터를 사용하여 일반 게임 플레이 중에 연결되는 파트너 서비스 호스트를 식별합니다. 선택한 호스트를 차단하기 전에 해당 호스트가 Microsoft, XBOX 또는 PlayFab에 속하지 않는지 확인합니다.
- Script Editor를 열고 SSL Connection Request 이벤트를 선택한 다음, 각 파트너 서비스 호스트에 대해
Params.Continue를false로 설정하는 스크립트를 만듭니다. - 스크립트를 사용하도록 설정하고 성공적으로 컴파일되는지 확인합니다. 그런 다음 테스트를 시작할 때 파트너 서비스를 계속 사용할 수 있도록 스크립트를 사용하지 않도록 설정합니다. XMAT 캡처는 계속 실행 상태로 둡니다.
- XMAT 차단 스크립트를 사용하지 않도록 설정한 상태에서 XBOX 프로필에 로그인하고 타이틀을 시작합니다.
- 파트너 호스팅 서비스를 사용하는 타이틀 기능으로 이동하여 해당 기능을 사용할 수 있는지 확인합니다.
- 타이틀을 닫지 않고 XMAT 차단 스크립트를 사용하도록 설정합니다.
- 타이틀을 계속 진행하면서 다음을 포함하여 해당하는 모든 영역을 실행해 봅니다.
- 메뉴
- 순위표
- 서버(서버를 만들고 다른 사람의 서버에 참가)
- 친구 목록
- 타이틀 내 스토어
- 기간 한정 이벤트
- 타이틀이 XBOX 네트워크에 문제가 있음을 나타내는 오류 메시지를 표시하지 않는지 확인합니다.
타이틀이 Microsoft 이외 서비스에 대한 연결 끊김을 정상적으로 처리합니다. 통과 예
- 파트너 호스팅 서비스에 대한 연결이 끊겨도 타이틀이 중단되거나 크래시되지 않습니다.
- 표시된 메시지가 Microsoft 서비스에 문제가 있음을 암시합니다.
- 설명이 부족한 오류 메시지가 표시됩니다.
- 타이틀이 크래시되거나, 불안정해지거나, 본체를 다시 부팅시킵니다.
074-08 출시 전 가동 중지
필요한 도구:- GDK/XDK의 xbstress.exe
- Windows용 XBOX Multiplayer Analysis Tool(XMAT)
- 본체에서 다음 명령을 사용하여 _xbstress.exe_로 Microsoft 이외 트래픽에 대해 끊어진 네트워크 채널을 만듭니다.
xbstress set channel=0 network=broken addresses=[semicolon delimited list of addresses]
xbstress simulate network=channels명령으로 네트워크 시뮬레이션을 시작합니다.- Windows에서 테스트하는 경우 타이틀을 시작하기 전에 XMAT 웹 프록시 캡처를 구성하고 해당 파트너 서비스 호스트를 차단하는 스크립트를 사용하도록 설정합니다.
- XBOX 프로필에 로그인합니다.
- 타이틀을 시작합니다.
- Microsoft 이외의 온라인 기능에 액세스합니다.
타이틀은 Microsoft 이외 서비스에 연결하는 데 문제가 있음을 나타내는 사용자에게 친숙한 오류 메시지를 제공하고 연결을 다시 시도할 수 있는 기회를 제공해야 합니다. 통과 예
- 파트너 호스팅 서비스에 대한 연결이 끊겨도 타이틀이 중단되거나 크래시되지 않습니다.
- 표시된 오류가 Microsoft 서비스에 문제가 있음을 암시합니다.
- 설명이 부족한 오류 메시지가 표시됩니다.
- 타이틀이 크래시되거나, 불안정해지거나, 본체를 다시 부팅시킵니다.
XR-132: 서비스 액세스 제한 *
XBOX 네트워크 서비스를 호출할 때 타이틀 및 사용자 기반 제한을 초과하거나 XBOX 네트워크 서비스 재시도 정책을 준수하지 않는 타이틀은 속도 제한을 받을 수 있으며, 이로 인해 서비스가 중단되거나 사용이 중지될 수 있습니다. 지정된 제한을 준수하지 않으면 타이틀의 출시가 차단될 수 있으며, 출시된 타이틀의 프로덕션 환경 문제로 인해 타이틀 제거를 포함한 XBOX 네트워크 서비스 정지 조치가 취해질 수 있습니다.132-01 서비스 액세스 제한
필요한 도구- 본체의 Fiddler 또는 PC의 Fiddler
- GDK 개발 도구 다운로드 패키지의 XBOX services Trace Analyzer. 타이틀에서 수행한 서비스 호출을 검토하고 호출 패턴의 위반 사항을 찾는 데 사용됩니다.
- 타이틀을 시작하기 전에 Fiddler Classic을 시작하고 본체 또는 Windows 10 PC(해당 타이틀이 실행되는 곳)의 네트워크 트래픽을 캡처하도록 구성되어 있는지 확인합니다.
- Fiddler Classic이 실행되어 네트워크 트래픽을 캡처하는 상태에서 타이틀을 시작하고 다음을 포함하되 이에 국한되지 않는 모든 영역을 진행합니다.
- 게임 저장 데이터를 만들고, 본체를 다시 부팅하고, 게임 저장 데이터 로드
- 리치 프레즌스 상태를 빠르게 연속으로 변경(가능한 경우)
- 도전 과제 잠금 해제 및 보기
- 모든 순위표에 게시하고 모든 필터를 사용하여 모든 순위표 보기
- 게임 내 친구 목록(프레즌스가 차단된 친구 포함)을 보고 페이지 간에 빠르게 이동
- Hero Stat 획득 및 보기
- 모든 온라인 모드에 매치메이킹(가능한 경우 사용 가능한 세션을 찾을 수 없는 경우 포함) 및 음성 트래픽 생성
- 게임 클립 만들기, 저장 및 공유
- 게임 내 스토어 액세스(해당하는 경우)
- 테스트가 완료되면 Fiddler 캡처를 로컬 디렉터리에 저장합니다.
- GDK 명령 프롬프트에서
xbltraceAnalyzer -data filepath -outputdir filepath를 실행합니다. - 4단계의 출력 디렉터리를 열고 ‘index’ 파일을 엽니다(메시지가 표시되면 ‘차단된 콘텐츠 허용’을 선택).
_xbtrace.exe_는 타이틀이 시작될 때까지 시작할 수 없지만, 시작 중에 타이틀이 수행하는 XBOX 서비스 호출을 캡처하려면 가능한 한 빨리 시작해야 합니다. 이 때문에 타이틀 트래픽을 캡처하는 데 권장되는 방법은 타이틀을 시작하기 전에 시작할 수 있는 Fiddler Classic입니다.
- 타이틀이 실행 중인 상태에서
xbtrace start xboxliveservices를 실행하고 다음을 포함하되 이에 국한되지 않는 타이틀의 모든 영역을 진행합니다.- 게임 저장 데이터를 만들고, 본체를 다시 부팅하고, 게임 저장 데이터 로드
- 리치 프레즌스 상태를 빠르게 연속으로 변경(가능한 경우)
- 도전 과제 잠금 해제 및 보기
- 모든 순위표에 게시하고 모든 필터를 사용하여 모든 순위표 보기
- 게임 내 친구 목록(프레즌스가 차단된 친구 포함)을 보고 페이지 간에 빠르게 이동
- Hero Stat 획득 및 보기
- 모든 온라인 모드에 매치메이킹(가능한 경우 사용 가능한 세션을 찾을 수 없는 경우 포함) 및 음성 트래픽 생성
- 게임 클립 만들기, 저장 및 공유
- 게임 내 스토어 액세스(해당하는 경우)
- 테스트가 완료되면
run xbtrace stop을 두 번 실행합니다. - 본체의 파일을 찾아보면 SystemScratch > xbtrace에서 csv 파일을 찾을 수 있습니다. 타임스탬프를 확인하여 녹화를 중지한 시간이 기록되었는지 확인합니다. 파일을 로컬로 복사합니다.
- XDK 명령 프롬프트에서
Xbltraceanalyzer -data filepath -outputdir filepath를 실행합니다. - 4단계의 출력 디렉터리를 열고 ‘index’ 파일을 엽니다(메시지가 표시되면 ‘차단된 콘텐츠 허용’을 선택).
타이틀은 XBOX 엔드포인트에 대한 서비스 호출을 지정된 버스트 및 지속 제한 미만으로 유지해야 하며, XBOX services Trace Analyzer 보고서에 빨간색 결과가 없어야 합니다. XBOX services Trace Analyzer 도구는 위반 사항을 발견한 규칙과 해당 위반 사항의 세부 정보를 나타내는 report.txt 파일을 생성합니다.
[!Tip] XBOX services Trace Analyzer 보고서 해석통과 예
- 빨간색 - 세분화된 속도 제한이 적용되는 지점을 10배 초과하는 문제를 나타냅니다. 이는 인증에서 심각한 문제입니다.
- 노란색 - 타이틀이 서비스에 허용되는 호출 빈도를 초과하여 서비스가 속도 제한을 받고 있지만, 인증에서 심각한 문제가 되는 임계값은 초과하지 않음을 나타냅니다. 타이틀에서 해결을 검토해야 하는 사항입니다.
- 녹색 - 타이틀이 속도 제한이 적용되는 빈도 미만으로 XBOX 서비스를 호출하고 있음을 나타냅니다.
- XBOX 서비스를 호출할 때 타이틀이 지속 제한을 초과하지 않습니다.
- XBOX services Trace Analyzer 보고서에 노란색 및/또는 녹색 결과만 포함됩니다.
- 타이틀이 지속 제한(속도 제한이 적용되는 제한)을 10배 초과합니다. 예를 들어 세분화된 속도 제한이 적용되는 지속 제한이 300초 동안 300회 호출로 설정된 경우, 300초 동안 3000회 이상 호출하는 타이틀은 실패합니다.
- XBOX services Trace Analyzer 보고서에 빨간색 결과가 하나 이상 포함됩니다.
132-02 게임 이벤트 제한
테스트 단계- 타이틀을 설치하고 타이틀이 실행 중인 상태에서 다음을 포함하되 이에 국한되지 않는 타이틀의 모든 영역을 탐색합니다.
- 게임 저장 데이터를 만들고, 본체를 다시 부팅하고, 게임 저장 데이터 로드
- 리치 프레즌스 상태를 빠르게 연속으로 변경(가능한 경우)
- 도전 과제 잠금 해제 및 보기
- 모든 순위표에 게시하고 모든 필터를 사용하여 모든 순위표 보기
- 게임 내 친구 목록(프레즌스가 차단된 친구 포함)을 보고 페이지 간에 빠르게 이동
- Hero Stat 획득 및 보기
- 모든 온라인 모드에 매치메이킹(가능한 경우 사용 가능한 세션을 찾을 수 없는 경우 포함) 및 음성 트래픽 생성
- 게임 클립 만들기, 저장 및 공유
- 게임 내 스토어 액세스(해당하는 경우)
- 테스트 중에 게임 이벤트 제한 시스템 알림이 나타나는지 타이틀을 관찰합니다.
게임은 게임 이벤트 제한 시스템 알림을 트리거해서는 안 됩니다. 통과 예
- 타이틀이 게임 이벤트 제한 시스템 알림을 트리거하지 않습니다.
- 타이틀이 게임 이벤트 제한 시스템 알림을 트리거합니다.
온라인 안전 및 개인 정보 보호
이 범주의 요구 사항은 사용자의 안전과 개인 정보를 보호하는 것과 관련됩니다.XR-013: Microsoft 계정과 퍼블리셔 계정 연결 *
XBOX에서 퍼블리셔 호스팅 서비스, 퍼블리셔 계정, 파트너 호스팅 계정 또는 기타 비 XBOX 자격 증명을 사용하는 타이틀은 XBOX 사용자에게 일관되고 안전하며 연령에 적합한 환경을 지원해야 합니다. 게임플레이 또는 게임 기능에 퍼블리셔 계정 로그인, 계정 만들기 또는 계정 연결이 필요한 경우 타이틀은 다음을 기준으로 타이틀 또는 기능에 액세스할 수 있는 모든 사용자에게 연령에 적합한 액세스 경로를 제공해야 합니다.- 타이틀의 연령 등급
- XBOX 가족, 개인 정보 및 안전 설정
- 타이틀 또는 기능이 제공되는 지원 지역
- 적용 가능한 현지 또는 지역 법률
- 기능별 개인 정보, 안전 또는 모더레이션 요구 사항
- 사용자의 연령 그룹과 지역을 지원하는 표준 퍼블리셔 계정
- 연령에 적합한 기본값을 갖춘 어린이 또는 청소년 퍼블리셔 계정
- 부모 동의 또는 부모 승인 계정 만들기 흐름
- 기능이 제한되거나 격리되었거나 개인 정보를 보호하는 퍼블리셔 계정
- 불필요한 퍼블리셔 계정 만들기를 피하는 Microsoft 또는 XBOX 인증 액세스 경로
- 자격 있는 사용자가 전체 퍼블리셔 계정 연결 없이 기능에 액세스할 수 있도록 하는 기능별 대체 경로
온라인 멀티플레이어, 커뮤니케이션, 사용자 생성 콘텐츠, 네트워크 간 기능 또는 기타 온라인 기능을 포함한 게임의 특정 기능은 XBOX 어린이 또는 청소년 계정이나 퍼블리셔 계정 요구 사항을 충족하지 않는 사용자가 액세스하지 못할 수 있습니다. 연령 및 지역 제한이 적용될 수 있습니다.알려진 제한이 적용되는 경우 타이틀별 문구를 사용하세요. 예:
[기능]을 사용하려면 [X]세 이상의 [퍼블리셔 계정]이 필요합니다. 연령 제한이 적용됩니다.퍼블리셔 계정과 Microsoft 계정 연결 XSTS(XBOX Secure Token Service)를 사용한 인증 사용자의 퍼블리셔 계정을 사용자의 Microsoft 계정에 연결할 때 인증을 위한 ID 정보를 제공하려면 XSTS 토큰을 사용해야 합니다. XSTS 토큰 인증에 대한 자세한 내용은 타이틀 서비스에 대한 XBOX services 인증을 참조하세요. 타이틀은 연결을 설정하기 전에 Microsoft 계정과 퍼블리셔 계정을 모두 인증해야 하며, 게이머태그만과 같은 인증되지 않은 식별자를 사용하여 계정을 연결해서는 안 됩니다. 계정 연결에는 PXUID(Partner XUID) 또는 쌍별(pairwise) 식별자를 사용하세요. 승인된 서비스 간 시나리오에서 명시적으로 요구되지 않는 한 계정 연결 저장소에 XUID를 사용하지 마세요. 동의 획득 및 선택권 제공 퍼블리셔 계정이 Microsoft 계정에 연결될 때 사용자에게 알려야 하며, 계정 연결이 선택 사항인 경우 사용자에게 옵트아웃할 수 있는 선택권을 제공해야 합니다. 사용자는 계정 연결을 해제할 수 있어야 합니다. 계정 연결 해제는 타이틀 내, 웹, 컴패니언 앱 또는 기타 전용 계정 관리 환경을 통해 제공할 수 있습니다. 연결에 대한 자격 있는 사용자 수용 게임플레이 또는 게임 기능에 퍼블리셔 계정 연결이 필요한 경우, 연결은 타이틀이 제공되고 법률에 따라 해당 기능이 허용되는 자격 있는 사용자 유형, 연령 및 지역을 지원해야 합니다. 연결된 퍼블리셔 계정이 필요하지만 퍼블리셔가 사용자의 연령 그룹, 지역 또는 계정 유형을 지원할 수 없는 경우, 타이틀은 승인된 대체 액세스 경로를 제공하거나 예외를 요청해야 합니다. 연령 및 계정 처리 Microsoft 계정 사용자에게 계정 만들기 또는 연결 기능을 제공하기 전에 타이틀은
XUserGetAgeGroup을 호출하여 사용자의 연령 그룹을 확인해야 합니다. 타이틀은 다음 계정 범주를 올바르게 처리해야 합니다.
- 사용자의 Microsoft 계정 연령과 퍼블리셔 계정 연령이 다른 경우, 승인된 연령 확인 플랫폼과 같은 다른 법적 규정 준수 방식을 사용하지 않는 한 타이틀 또는 서비스는 더 보호적인 처리를 적용해야 합니다.
- 어린이 계정의 경우, 법률에서 요구하는 경우 퍼블리셔는 계정을 만들기 전에 부모 동의를 얻어야 합니다. 필요한 경우 퍼블리셔 약관 및 개인정보처리방침 동의를 포함한 부모 동의는 퍼블리셔의 규정 준수 계정 흐름을 통해 제공되어야 하며, XBOX 네트워크 참여만으로 간주되어서는 안 됩니다.
- 청소년 계정의 경우, 퍼블리셔는 소셜, UGC, 커뮤니케이션, 데이터 공유 및 개인 정보에 영향을 미치는 기능에 대한 명확한 정보를 제공해야 합니다. 적절한 경우 퍼블리셔는 청소년에게 계정이 만들어졌음을 부모 또는 보호자에게 알리도록 요청해야 합니다.
- 퍼블리셔가 계정 설정 중에 연령을 수집하고 사용자가 퍼블리셔 계정 요구 사항을 충족하지 않는다고 판단하는 경우, 퍼블리셔는 불필요한 개인 정보를 수집하기 전에 계정 만들기를 중단하고, 사용자에게 계속할 수 없음을 알리고, 적절한 경우 다른 연령 정보의 즉시 재입력을 방지하고, 보존할 필요가 없는 이미 수집된 개인 정보를 파기하고, 반복적인 가입 또는 연결 시도 실패를 피해야 합니다.
- 음성 또는 텍스트 채팅
- 친구 시스템 또는 소셜 그래프 기능
- 네트워크 간 커뮤니케이션
- UGC 업로드 또는 게시
- 공개 프로필
- 외부 포럼 또는 커뮤니티 기능
- 구매, 프리미엄 통화 또는 수익화
- 행동 기반 광고, 프로파일링 또는 선택적 데이터 공유
[!NOTE] 퍼블리셔는 연결된 계정이 새 디바이스에서 처음 로그인할 때 2단계 인증과 같은 추가 사기 방지 메커니즘을 구현할 수 있습니다. 이 동작은 이 XR을 위반하지 않습니다.예외 퍼블리셔가 등급상 자격 있는 사용자에게 연령에 적합한 액세스 경로를 제공할 수 없는 경우, 퍼블리셔는 타이틀별 예외를 요청해야 합니다. 한 타이틀에 대한 승인이 향후 타이틀에 대한 포괄적인 승인이 되지는 않습니다. 예외 요청에는 다음이 포함되어야 합니다.
- 영향을 받는 타이틀, 등급, 플랫폼, 지역, 기능 및 사용자 그룹
- 퍼블리셔 계정 없이 핵심 게임플레이를 계속 이용할 수 있는지 여부
- 차단되거나 제한되는 기능과 그 이유
- 제한에 대한 법률, 개인 정보, 안전, 기술 또는 모더레이션 근거
- 제안된 Store, 패키지 및 타이틀 내 고지 문구
- 차단되거나 제한된 사용자를 위한 사용자 환경
- 어린이, 청소년, 성인, 가족 관리 및 지역별 계정 사례에 대한 테스트 계획
- 향후 연령에 적합한 액세스를 지원하기 위한 완화 계획 또는 로드맵
013-01 Microsoft 계정과 퍼블리셔 계정 연결
테스트 단계- 타이틀이 서비스 또는 기능을 위해 비 XBOX 계정, 퍼블리셔 계정 또는 퍼블리셔 로그인을 지원하거나 요구하는지 확인합니다.
- 새로 만든 XBOX 프로필을 사용하여 초기 설정 중에 퍼블리셔 계정을 연결하거나 만듭니다.
- 계정 연결을 완료하기 전에 타이틀에서 사용자가 사용 약관 및 개인 정보를 볼 수 있는지, 또는 이를 보는 방법을 사용자에게 명확하게 알려 주는지 확인합니다.
- 초기 설정 후 사용자에게 비 XBOX 계정 자격 증명을 다시 입력하라는 메시지가 표시되지 않는지 확인합니다.
- 타이틀이 실행 중인 상태에서 로그아웃한 후 다시 로그인합니다.
- Single Sign-On이 계속 작동하는지 확인합니다.
- 동일한 프로필을 사용하여 타이틀을 종료하고 다시 활성화합니다.
- Single Sign-On이 계속 작동하는지 확인합니다.
- 동일한 프로필을 사용하여 다른 콘솔에서 타이틀을 시작합니다.
- Single Sign-On이 계속 작동하는지 확인합니다.
- 타이틀이 만들었을 수 있는 저장된 파일을 삭제하여 타이틀이 비 XBOX 계정 자격 증명을 로컬에 저장하지 않는지 확인합니다.
- 사용자가 비 XBOX 계정에서 XBOX 프로필의 연결을 해제할 수 있는지 확인합니다.
- 타이틀의 연령 등급에 해당하는 XBOX 어린이 및 청소년 계정으로 해당 단계를 반복합니다.
- 멀티플레이어, 커뮤니케이션, UGC, 구매 및 네트워크 간 플레이를 허용하거나 차단하는 가족 설정으로 해당 단계를 반복합니다.
- Microsoft 계정과 퍼블리셔 계정의 연령이 일치하지 않는 상태로 해당 단계를 반복합니다.
- 해당하는 경우, 동의 연령 기준이 다른 지원 지역에 대해 해당 단계를 반복합니다.
- 퍼블리셔가 어린이, 청소년, 지역 또는 계정 유형을 지원하지 않는 경우, 타이틀이 승인된 대체 액세스 경로, 원활한 메시지 또는 승인된 예외에 근거한 제한을 제공하는지 확인합니다.
타이틀은 퍼블리셔 계정이 사용되는 모든 곳에서 안전한 퍼블리셔 계정 로그인, 계정 만들기, 연결, 연결 해제 및 Single Sign-On을 제공해야 합니다. 게임플레이 또는 게임 기능에 퍼블리셔 계정 로그인 또는 연결이 필요한 경우, 타이틀은 타이틀 등급, XBOX 가족 설정, 지역 법률 및 기능별 안전 또는 개인 정보 요구 사항에 따라 타이틀 또는 기능에 액세스할 자격이 있는 모든 사용자에게 연령에 적합한 액세스 경로를 제공해야 합니다. 사용자는 연결하기 전에 적용 가능한 약관 및 개인 정보를 볼 수 있어야 하며, 퍼블리셔 계정에서 XBOX 프로필의 연결을 해제할 수 있어야 합니다. 통과 예
- 타이틀이 두 계정을 모두 인증하고, PXUID 또는 쌍별 식별자로 연결하며, 초기 연결 후 사용자에게 퍼블리셔 자격 증명을 다시 입력하도록 요청하지 않습니다.
- 타이틀이 약관, 개인 정보, 동의, 연결 해제 및 Single Sign-On을 제공합니다.
- 타이틀이 규정을 준수하는 어린이 또는 청소년 퍼블리셔 계정, 부모 동의 흐름, 제한된 계정, XBOX 인증 경로 또는 승인된 기능별 대체 경로를 통해 어린이 및 청소년 사용자를 지원합니다.
- 타이틀이 채팅, UGC 업로드, 구매 또는 네트워크 간 커뮤니케이션과 같은 고위험 기능을 제한하면서, 법적으로 허용되는 경우 적절한 등급의 게임플레이에 대한 액세스를 유지합니다.
- 타이틀이 Store, 패키지 및 타이틀 내 메시지에서 퍼블리셔 계정 요구 사항과 모든 기능 제한을 명확하게 고지합니다.
- 타이틀을 시작할 때마다 퍼블리셔 자격 증명을 요구합니다.
- 다른 콘솔에서 실행할 때 퍼블리셔 자격 증명을 다시 요구합니다.
- 계정 만들기 또는 연결 중에 약관이나 개인 정보를 제공하지 않습니다.
- Microsoft 계정에서 퍼블리셔 계정의 연결을 해제하는 방법을 제공하지 않습니다.
- 게임플레이 또는 광고된 기능에 퍼블리셔 계정을 요구하지만 자격 있는 어린이 또는 청소년 사용자에게 연령에 적합한 액세스 경로를 제공하지 않습니다.
- 퍼블리셔의 표준 계정 시스템이 사용자의 연령 그룹, 지역 또는 계정 유형을 지원하지 않는다는 이유만으로 등급상 자격 있는 사용자를 핵심 게임플레이 또는 광고된 기능으로부터 차단합니다.
- 승인된 예외 없이 Store 고지에만 의존하여 자격 있는 사용자를 필수 게임플레이 또는 광고된 기능으로부터 차단합니다.
- Microsoft 계정과 퍼블리셔 계정의 연령 불일치를 안전하게 처리하지 못합니다.
XR-014: 플레이어 데이터 및 개인 정보 *
게임 퍼블리셔는 특히 사용자가 어린이인 경우 적용 가능한 법률에 따라 최종 사용자 데이터를 수집하고 처리할 전적인 책임이 있습니다. 또한 타이틀이 XBOX로부터 또는 플레이어와의 직접적인 관계(예: 웹 사이트 또는 모바일 앱)를 통해 획득한 플레이어 정보를 보유하고 있는 경우, 타이틀은 다른 플레이어에게 다음 정보를 표시해서는 안 됩니다.- 사용자에게 금전적 피해를 줄 수 있는 정보(예: 주민등록번호 또는 신용 카드 번호)
- 국가/지역 수준을 넘어 사용자의 주소를 노출하는 정보
- 계정 자격 증명과 같이 사용자가 온라인에서 다른 사용자를 사칭할 수 있게 하는 정보
어린이 데이터 처리
어린이 또는 청소년 연령 그룹의 계정에서 데이터를 수집하는 경우, 타이틀은 연령 확인, 부모 동의 획득 또는 퍼블리셔 계정 연결 완료에 필요한 개인 데이터만 요청할 수 있습니다.[!Important] 데이터 요청 시 데이터가 어떤 용도로 사용될지 명시해야 합니다. 예를 들어 타이틀이 사용자의 생년월일을 요청하는 경우 생년월일이 어떤 용도로 사용될지 명시해야 합니다. 좋은 예:나쁜 예:
- 연령을 확인할 수 있도록 생년월일을 입력해 주세요
- 환경을 개인 설정할 수 있도록 생년월일을 입력해 주세요
- 연령에 적합한 콘텐츠를 제공하기 위해 생년월일이 필요합니다
- 법적 연령 제한을 준수하기 위해 생년월일이 필요합니다
- 생년월일을 입력해 주세요
- 생년월일 입력
- 생년월일이 필요합니다
- 생년월일 필수
정의
주소는 사용자의 위치를 시 또는 읍 수준까지 식별할 수 있는 모든 정보입니다. 여기에는 다음이 포함되지만 이에 국한되지는 않습니다.- 실제 주소
- 우편 주소
- 청구 주소
- 우편 번호
- IP 주소 또는 관련 정보
- 지리적 위치 정보
014-01 개인 정보
테스트 단계- 가능한 모든 XBOX 멀티플레이어 세션을 포함하여 타이틀의 모든 영역을 방문합니다.
- 콘텐츠가 저장되거나 XBOX 네트워크 또는 타이틀 서버로 전송될 수 있는 모든 영역을 방문합니다.
타이틀은 XR 본문에 자세히 설명된 다른 사용자의 개인 정보를 절대 표시해서는 안 됩니다. 통과 예
- 타이틀이 거주 국가 정보를 다른 콘솔의 사용자에게 표시하고 공유합니다.
- 타이틀이 사용자의 IP 주소를 사용하여 사용자의 일반적인 위치(주 또는 국가/지역보다 구체적이지 않음)를 정의하고 해당 위치를 순위표에서 다른 사용자에게 표시합니다.
- 타이틀이 사용자의 개인 정보를 다른 콘솔의 사용자에게 전송하고 공유합니다. 예: 이메일 주소, 위치(주/국가/지역보다 구체적인 모든 정보), 이름, 생년월일, 프로필 암호, 보안 질문, 암호, 신용 카드 정보.
014-02 데이터 수집
테스트 단계- 어린이 또는 청소년 계정을 사용하여 타이틀을 시작합니다.
- 가능한 모든 싱글 및 XBOX 멀티플레이어 게임 모드를 포함하여 타이틀의 모든 영역을 방문합니다.
- 사용자에게 어떤 데이터를 요청하는지 확인합니다.
타이틀은 어린이 또는 청소년 사용자에게 다음에 필요한 것 이상의 데이터를 요청해서는 안 됩니다.
- 연령 확인
- 부모 동의 획득(예: 부모의 이메일 주소)
- 퍼블리셔 계정 연결(예: 부모, 어린이 또는 청소년 사용자의 이메일 주소)
- 타이틀이 어린이 또는 청소년 사용자에게 어떤 데이터도 요청하지 않습니다.
- 타이틀이 사용자의 생년월일을 요청하고 데이터가 어떤 용도로 사용될지 명시합니다.
- 타이틀이 부모의 이메일 주소를 요청하고 데이터가 어떤 용도로 사용될지 명시합니다.
- 타이틀이 계정 연결을 위해 이메일 주소를 요청하고 데이터가 어떤 용도로 사용될지 명시합니다.
- 타이틀이 연령 확인, 부모 동의 획득 또는 퍼블리셔 계정 연결 이외의 목적으로 사용될 수 있는 데이터를 요청합니다.
- 타이틀이 사용자의 생년월일을 요청하지만 데이터가 어떤 용도로 사용될지 명시하지 않습니다.
- 타이틀이 부모의 이메일 주소를 요청하지만 데이터가 어떤 용도로 사용될지 명시하지 않습니다.
- 타이틀이 계정 연결을 위해 이메일 주소를 요청하지만 데이터가 어떤 용도로 사용될지 명시하지 않습니다.
XR-015: 플레이어 커뮤니케이션 관리 *
사용자의 개인 정보 설정에서 허용하지 않는 경우 타이틀은 XBOX 네트워크를 통한 커뮤니케이션을 허용해서는 안 됩니다. 타이틀은 XBOX 네트워크 서비스에서 데이터를 검색하여 이 XR을 충족합니다. 타이틀이 자체 서비스를 사용하는 경우, 세션 시작 시 또는 새 사용자가 세션에 참가할 때 사용자의 개인 정보 권한을 확인해야 합니다. 세션 외부에서 사용자가 시작한 시나리오의 경우, 타이틀은 사용자의 데이터를 표시하기 전과 작업을 수행하기 전에 개인 정보를 확인하여 이 요구 사항을 충족합니다. 타이틀이 확인할 수 있는 권한은 다음과 같습니다.
게임플레이 세션 중에 XBOX 네트워크 플레이어와 비 XBOX 네트워크 플레이어 간의 커뮤니케이션을 제공하는 타이틀은 세션 기간 동안 모든 비 XBOX 네트워크 플레이어를 음소거하는 기능을 제공해야 합니다.
[!Note] 타이틀에서 개인 정보 및 권한 문제를 확인하고 해결하는 방법에 대한 자세한 내용은 개인 정보 및 권한 개요를 참조하세요.
015-01 사용자 커뮤니케이션
구성:- “다른 사람이 음성, 텍스트 또는 초대로 커뮤니케이션할 수 있음”을 모든 사람, 친구 및 차단됨으로 설정한 프로필 세트를 만듭니다.
- XBOX 외부 커뮤니케이션을 지원하는 타이틀의 경우, “XBOX 외부에서 음성 및 텍스트로 커뮤니케이션할 수 있음”을 허용, 게임 내 친구 및 차단됨으로 설정한 프로필 세트를 만듭니다.
[!Note] “허용”과 “게임 내 친구” 옵션의 차이점은 “허용”은 네트워크 간에 모든 사람(무작위 매치메이킹에서 만난 플레이어 포함)과 대화할 수 있음을 의미한다는 것입니다. “게임 내 친구”는 게임 내 친구 목록에 추가하여 함께 플레이하기로 명시적으로 선택한 사람들입니다.테스트 단계
- 디바이스 1에서 구성에 따라 특정 권한 세트로 구성된 프로필에 로그인합니다.
- 디바이스 2에서 커뮤니케이션 제한이 없는 프로필에 로그인합니다.
- 두 디바이스 모두에서 타이틀을 시작하고 지원되는 모든 위치에서 텍스트, 음성(Kinect 및 헤드셋 모두 사용) 및 비디오로 커뮤니케이션을 시도하고 멀티플레이어 게임 초대를 보내 봅니다.
- 구성 단계의 모든 프로필에 대해 1~3단계를 반복합니다.
타이틀은 개인 정보 및 온라인 안전 관련 작업에 대한 사용자의 권한을 XBOX 서비스에서 확인해야 하며, 사용자의 개인 정보 및 온라인 안전 설정에서 허용하지 않는 경우 사용자 데이터를 전송하거나 XBOX를 통한 커뮤니케이션을 허용해서는 안 됩니다. 통과 예
- 특정 커뮤니케이션 방법이 차단되도록 구성된 경우, 타이틀이 사용자가 XBOX를 통해 음성 및 텍스트로 커뮤니케이션하지 못하도록 합니다.
- 특정 커뮤니케이션 방법이 차단되도록 구성된 경우, 타이틀이 사용자가 XBOX 외부에서 음성 및 텍스트로 커뮤니케이션하지 못하도록 합니다.
- 차단된 경우, 타이틀이 사용자가 XBOX에서 멀티플레이어 게임 초대를 받지 못하도록 합니다.
- 특정 커뮤니케이션 방법이 차단되도록 구성되었는데도 사용자가 XBOX를 통해 음성 및 텍스트로 커뮤니케이션할 수 있습니다.
- 특정 커뮤니케이션 방법이 차단되도록 구성되었는데도 사용자가 XBOX 외부에서 음성 및 텍스트로 커뮤니케이션할 수 있습니다.
- 차단되었는데도 타이틀이 사용자가 XBOX에서 멀티플레이어 게임 초대를 받을 수 있도록 허용합니다.
015-02 음소거 지원
테스트 단계- 사용자 A로서 사용자 B를 음소거합니다.
- 두 사용자를 모두 XBOX 멀티플레이어 세션에 참가시킵니다.
- 사용자 B에서 사용자 A로 음성 커뮤니케이션을 보내 봅니다.
- 사용자 A가 사용자 B로부터 어떤 음성 커뮤니케이션도 받을 수 없는지 확인합니다.
사용자 A는 사용자 B의 커뮤니케이션을 들을 수 없어야 합니다. 통과 예
- 음소거를 시작한 사용자는 음소거된 사용자의 음성 커뮤니케이션을 들을 수 없습니다.
- 음소거를 시작한 사용자가 음소거된 사용자의 음성 커뮤니케이션을 들을 수 있습니다.
015-03 차단된 사용자
테스트 단계- 사용자 A로서 사용자 B를 차단합니다.
- 두 사용자를 모두 XBOX 멀티플레이어 세션에 참가시킵니다.
- 사용자 B에서 사용자 A로 음성 및 서면 커뮤니케이션을 보내 봅니다.
- 사용자 B에서 사용자 A로 멀티플레이어 게임 초대를 보내 봅니다.
- 사용자 A가 사용자 B로부터 어떤 커뮤니케이션이나 멀티플레이어 게임 초대도 받을 수 없는지 확인합니다.
사용자 A는 사용자 B의 커뮤니케이션을 듣거나 볼 수 없어야 합니다. 사용자 A는 사용자 B로부터 멀티플레이어 게임 초대를 받아서는 안 됩니다. 통과 예
- 차단을 시작한 사용자는 차단된 사용자의 커뮤니케이션을 보거나 들을 수 없습니다.
- 차단을 시작한 사용자는 차단된 사용자의 멀티플레이어 게임 초대를 받지 않습니다.
- 차단을 시작한 사용자가 차단된 사용자의 커뮤니케이션을 보거나 들을 수 있습니다.
- 차단을 시작한 사용자가 차단된 사용자의 멀티플레이어 게임 초대를 받습니다.
XR-018: 사용자 생성 콘텐츠 *
UGC(사용자 생성 콘텐츠)는 플레이어가 제작하여 온라인 상태에서 한 명 이상의 다른 사람이 보거나 액세스할 수 있도록 한 모든 게임 내 디지털 콘텐츠를 의미합니다. 제품에 UGC가 포함된 경우 다음을 수행해야 합니다.- 사용자가 부적절하거나 유해한 UGC를 검토 및 제거/비활성화(콘텐츠 지침을 위반하는 경우)를 위해 개발자에게 신고할 수 있는 제품 내 수단을 제공하거나, 부적절하거나 유해한 UGC를 사전에 감지하는 방법(예: 텍스트 필터링)을 구현하거나, 둘 다 수행합니다.
- 사용 약관 또는 행동 강령과 같은 사용자 생성 콘텐츠에 대한 콘텐츠 지침을 게시하여 사용자가 제품 내에서 또는 타이틀 웹 사이트에서 이용할 수 있도록 합니다.
- 표준 조치 메커니즘이나 프로세스를 통해 처리되지 않은 불법 자료를 Microsoft가 XBOX 네트워크에서 인지하게 되는 드문 경우에, Microsoft의 요청에 따라 고위험 불법 콘텐츠를 제거/비활성화할 수 있도록 준비합니다.
- 플레이어의 UGC 설정을 준수하고, 제한된 권한으로 인해 사용자가 게임 내 UGC에 액세스할 수 없는 시나리오를 원활하게 처리합니다.
- 플랫폼의 신고/불만 API(사용 가능한 경우)와 통합하고, 타사와의 계약에서 요구하는 경우 콘텐츠를 모더레이션합니다.
- 콘텐츠의 출처가 개발자가 아닌 경우 사용자에게 고지 사항, 대화 상자 또는 시각적 표시를 제공합니다.
018-01 부적절한 콘텐츠 신고 및 UGC 텍스트 문자열 확인
테스트 단계- 친구가 아닌 사용자 간에 텍스트를 입력할 수 있고 다른 디바이스의 사용자가 이를 볼 수 있는 타이틀의 모든 영역을 식별합니다.
- 타이틀이 다른 사용자의 부적절하거나 유해한 UGC를 개발자에게 신고할 수 있는 제품 내 방법을 제공하는지 확인합니다.
-
부적절한 콘텐츠를 신고할 방법이 없는 경우, 각 영역에서 금지 용어 목록에 있는 문자열, 하위 문자열 등을 입력합니다.
- 금지 용어를 직접 입력합니다(예: “ForbiddenTerm”).
- 금지 용어를 금지되지 않은 다른 용어와 공백으로 구분하여 입력합니다(예: “Good ForbiddenTerm”).
- 타이틀에서 캐릭터 이름처럼 오프라인 상태에서 UGC를 만들 수 있는 경우, 디바이스의 네트워크 연결을 끊고, 금지 용어 조합을 입력한 다음, 네트워크에 다시 연결합니다.
- 금지 용어가 다른 디바이스의 어떤 사용자에게도 표시되지 않는지 확인합니다.
- 해당 로캘의 금지 용어를 사용하여 타이틀에서 지원하는 각 언어로 3~5단계를 반복합니다.
타이틀은 사용자가 부적절하거나 유해한 UGC를 개발자에게 신고할 수 있는 제품 내 방법을 제공하거나, 부적절하거나 유해한 UGC를 사전에 감지하는 방법(예: StringService API를 사용한 텍스트 필터링)을 구현하거나, 둘 다 수행해야 합니다. 부적절하거나 유해한 콘텐츠는 XBOX 서비스에서 로컬이 아닌 플레이어에게 차단되거나 난독 처리되어야 합니다. XBOX 게이머태그는 UGC 요구 사항에서 면제되며, 제한된 UGC 권한으로 인해 텍스트 필터링, 타이틀 관리 신고 옵션 또는 난독 처리의 대상이 되어서는 안 됩니다. 사용 약관 또는 행동 강령과 같은 UGC 지침은 사용자가 제품 내에서 또는 타이틀 웹 사이트에서 이용할 수 있습니다. 타이틀은 UGC 권한이 제한된 사용자에 대해 전체 게임 모드나 환경을 차단해서는 안 됩니다. 통과 예
- XBOX 게이머태그가 필터링되거나, 난독 처리되거나, 타이틀 내 신고의 대상이 되지 않습니다.
- 네트워크 간 사용자 이름, 퍼블리셔 관리 사용자 이름, 사용자 지정 캐릭터 이름 또는 클랜/분대/길드 이름이 난독 처리되지 않습니다.
- 타이틀이 사용자가 부적절하거나 유해한 UGC를 개발자에게 신고할 수 있는 제품 내 방법을 제공합니다.
- 타이틀이 부적절하거나 유해한 UGC의 게시를 방지하고 게시가 실패한 이유를 사용자에게 알립니다.
- 타이틀이 부적절하거나 유해한 텍스트를 Content Blocked 또는 $!*#& 같은 단어나 문자로 바꿉니다.
- 로비나 게임 내 텍스트 오버레이처럼 게임에서 실시간으로 공유되거나 친구 간에만 공유되는, 사용자가 입력한 텍스트는 필터링되지 않습니다.
- 부적절하거나 유해한 텍스트 문자열이 로컬 콘솔의 사용자에게는 표시되지만 로컬 콘솔 외부의 친구가 아닌 다른 사용자에게는 전송되지 않습니다.
- 사용 약관 또는 행동 강령과 같은 UGC 지침을 사용자가 제품 내에서 또는 타이틀 웹 사이트에서 이용할 수 있습니다.
- 타이틀이 UGC 권한이 제한된 사용자에 대해 전체 게임 모드나 환경을 차단하지 않습니다.
- XBOX 게이머태그가 필터링되거나 난독 처리됩니다.
- 타이틀이 사용자가 부적절하거나 유해한 UGC를 개발자에게 신고할 방법을 제공하지 않거나, 부적절하거나 유해한 UGC가 다른 디바이스의 친구가 아닌 사용자에게 표시되도록 허용합니다.
- 타이틀이 오프라인 상태에서 UGC를 만든 후 온라인으로 공유하는 방식으로 사용자가 부적절하거나 유해한 UGC 필터링을 우회하도록 허용합니다.
- 사용 약관 또는 행동 강령과 같은 UGC 지침을 사용자가 제품 내에서나 타이틀 웹 사이트에서 이용할 수 없습니다.
- 타이틀이 UGC 권한이 제한된 사용자에 대해 전체 게임 모드나 환경을 차단합니다.
콘텐츠 패키지 및 업데이트
이 범주의 요구 사항은 게임을 패키지하는 방법과 게임이 추가 기능 콘텐츠 패키지와 상호 작용하는 방법을 지정합니다.XR-037: 콘텐츠 패키지에 대한 종속성 *
사용자가 기본 게임의 주요 기능이나 콘텐츠를 완료하기 위해 추가 기능 콘텐츠(영구 또는 소모성)를 구매하도록 요구해서는 안 됩니다. 선택적 콘텐츠 패키지는 다른 선택적 콘텐츠 패키지에 종속되어서는 안 됩니다. 즉, 사용자가 콘텐츠 패키지를 사용하기 위해 추가 콘텐츠 패키지를 다운로드하도록 요구해서는 안 됩니다. 추가 기능 콘텐츠에 연결된 고유 콘텐츠가 있는 게임 저장 데이터는 기본 게임에서도 로드되거나, 로드할 수 없는 이유를 설명하는 명확한 메시지를 제공해야 합니다.추가 정보
이 요구 사항의 핵심 사항은 다음과 같습니다.- 사용자가 기본 게임의 주요 기능을 완료하기 위해 추가 기능 콘텐츠를 구매하도록 요구해서는 안 됩니다.
- 사용자가 다른 콘텐츠 패키지를 사용하기 위해 추가 기능 콘텐츠를 더 구매하도록 요구해서는 안 됩니다. 추가 기능 콘텐츠는 다른 추가 기능 콘텐츠와 독립적으로 사용할 수 있어야 합니다.
- 추가 기능 콘텐츠에 연결된 고유 콘텐츠가 있는 게임 저장 데이터는 기본 게임에서도 로드되거나, 로드할 수 없는 이유를 설명하는 명확한 메시지를 제공해야 합니다. 모범 사례로, 메시지에는 콘텐츠를 이미 소유한 경우 다운로드하라는 프롬프트를, 소유하지 않은 경우 구매를 고려하도록 하는 프롬프트를 포함해야 합니다.
- 멀티플레이어 게임플레이에 필요한 추가 기능 콘텐츠를 지원하는 타이틀은 해당 콘텐츠가 설치되지 않은 사용자에게 명확한 메시지를 제공해야 합니다.
구현 지침 및 모범 사례
이상적으로, 게임은 사용자가 이전에 추가 기능 콘텐츠로 플레이했지만 현재 해당 콘텐츠가 제거된 상황을 원활하게 처리하고, 사용자가 게임 저장 데이터를 로드하여 계속할 수 있도록 해야 합니다. 이것이 불가능한 경우, 게임은 게임 저장 데이터를 로드하려면 콘텐츠를 설치해야 한다는 것을 사용자에게 명확하게 알려야 합니다. 타이틀은 사용자가 해당 콘텐츠에 대한 권한을 가지고 있는지 쿼리한 후 다음 중 하나를 수행할 수 있습니다.- 이미 소유한 경우 사용자에게 특정 콘텐츠를 다운로드하라는 메시지를 표시합니다.
- 소유하지 않은 경우 사용자에게 해당 콘텐츠의 구매를 고려하도록 메시지를 표시합니다.
037-01 기본 타이틀에 대한 콘텐츠 패키지 게임 저장 종속성 없음
테스트 단계- XBOX 프로필에 로그인하고 타이틀을 시작합니다.
- 기본 타이틀의 모든 기능과 콘텐츠에 액세스해 봅니다. 사용자에게 추가 기능 콘텐츠를 다운로드하도록 요구하지 않는지 확인합니다.
- 타이틀 내에서 사용할 수 있는 콘텐츠 패키지를 다운로드합니다.
- 콘텐츠 패키지를 로드하고 사용하며, 콘텐츠 기반 게임 저장 데이터가 만들어질 만큼 충분히 진행합니다.
- 홈으로 돌아가서 콘텐츠 패키지를 삭제합니다.
- 타이틀을 다시 시작합니다.
- 게임 저장 데이터를 성공적으로 로드하고 게임플레이를 계속할 수 있는지, 또는 계속할 수 없는 이유를 사용자에게 명확하게 알려 주는지 확인합니다.
- 메시지는 명확해야 하며 문제를 해결하는 방법을 사용자에게 구체적으로 알려야 합니다.
- 지원되는 다른 모든 콘텐츠 패키지에 대해 1~8단계를 반복합니다.
사용자는 추가 기능 콘텐츠를 구매하지 않고도 기본 타이틀의 주요 기능 및/또는 콘텐츠를 완료할 수 있어야 합니다. 사용자가 콘텐츠 패키지를 삭제한 후에도 타이틀이 올바르게 작동하거나, 올바르게 작동할 수 없는 이유를 사용자에게 명확하게 알려야 합니다. 통과 예
- 사용자가 추가 기능 콘텐츠를 구매하지 않고도 기본 타이틀에 포함된 모든 기능과 콘텐츠를 완료할 수 있습니다. 사용자가 콘텐츠 패키지를 삭제한 후에도 타이틀의 모든 측면을 문제없이 플레이할 수 있습니다.
- 콘텐츠 패키지에서 제공하는 영역 내에서 저장 데이터를 만든 다음 콘텐츠 패키지를 삭제한 후, 게임이 게임 저장 데이터를 로드하려면 콘텐츠 x 을(를) 설치해야 한다는 것을 사용자에게 명확하게 알립니다. 타이틀은 사용자가 해당 콘텐츠에 대한 권한을 가지고 있는지 쿼리한 후, 이미 소유한 경우 특정 콘텐츠를 다운로드하라는 메시지를 표시하거나, 소유하지 않은 경우 해당 콘텐츠의 구매를 고려하도록 메시지를 표시할 수도 있습니다.
- 사용자가 기본 타이틀에 포함된 기능이나 콘텐츠를 완료하기 위해 추가 기능 콘텐츠를 구매해야 합니다. 3단계에서 사용자가 콘텐츠 패키지 1과 콘텐츠 패키지 2를 다운로드한 후 콘텐츠 패키지 1을 삭제하면 게임 내에서 콘텐츠 패키지 2를 사용할 수 없게 됩니다.
- 콘텐츠 게임 저장 종속성이 존재하고 콘텐츠가 설치되어 있지 않은데, 게임이 게임 저장 데이터를 로드하려면 콘텐츠를 설치해야 한다는 것을 사용자에게 명확하게 알리지 않습니다.
037-02 다른 콘텐츠 패키지에 대한 종속성 없음
테스트 단계- XBOX 프로필에 로그인합니다.
- 타이틀을 시작합니다.
- 타이틀에서 지원하는 추가 기능 콘텐츠 하나를 다운로드합니다.
- 타이틀 내에서 콘텐츠를 사용해 봅니다.
- 3단계의 콘텐츠를 사용하기 위해 사용자에게 추가 콘텐츠를 다운로드하도록 요구하지 않는지 확인합니다.
- 타이틀을 종료하고 3단계의 콘텐츠를 삭제합니다.
- 타이틀에서 지원하는 각 콘텐츠에 대해 2~6단계를 반복합니다.
사용자가 콘텐츠 패키지를 사용하기 위해 추가 콘텐츠 패키지를 다운로드하도록 요구해서는 안 됩니다. 콘텐츠 패키지는 그 자체로 사용할 수 있어야 합니다. 통과 예
- 타이틀이 별도의 콘텐츠 패키지를 사용하기 위해 사용자에게 추가 콘텐츠를 다운로드하도록 요구하지 않습니다.
- 사용자가 별도의 콘텐츠 패키지를 사용하기 위해 추가 콘텐츠를 다운로드해야 합니다.
037-03 DLC 종속성
테스트 단계- XBOX 프로필에 로그인합니다.
- 타이틀의 DLC(다운로드 가능한 콘텐츠)를 다운로드합니다.
- 게임플레이를 진행하고 DLC를 사용하여 진행 상황을 저장합니다.
- 타이틀을 종료합니다.
- 게임 디바이스(콘솔, PC)에서 DLC를 제거합니다.
- 타이틀을 시작하고 저장된 진행 상황에 액세스해 봅니다.
DLC가 더 이상 설치되어 있지 않을 때 타이틀이 해당 DLC로 만든 게임 저장 데이터의 존재를 원활하게 처리합니다. 통과 예
- 사용자가 저장된 진행 상황을 로드하고 문제없이 타이틀과 상호 작용할 수 있습니다.
- 저장된 게임에 액세스하려면 특정 DLC가 필요하다는 알림이 사용자에게 표시됩니다.
- DLC가 없으면 타이틀을 사용할 수 없게 됩니다.
- 사용자가 저장된 진행 상황에 액세스할 수 없고 그 이유에 대한 알림을 받지 못합니다.
037-04 멀티플레이어 DLC
테스트 단계- XBOX 프로필에 로그인합니다.
- 타이틀을 시작합니다.
- 게임 디바이스 A: 멀티플레이어 게임플레이에서 사용할 수 있는 모든 다운로드 가능한 콘텐츠를 다운로드합니다.
- 게임 디바이스 A: 다운로드 가능한 콘텐츠(레벨, 캐릭터, 자동차, 트랙 등)를 사용하여 게임 세션을 호스트합니다.
- 게임 디바이스 B: 가능한 모든 방법을 사용하여 게임 디바이스 A가 만든 게임 세션에 참가해 봅니다.
- 게임 세션에 참가할 수 없는 경우, 참가할 수 없는 이유를 설명하거나 사용자가 쉽게 추론할 수 있도록 하는 명확한 표시가 제공되는지 확인합니다.
- 모든 게임 모드에 대해 3~6단계를 반복합니다.
- 게임 디바이스 B를 호스트로 하여 3~6단계를 반복합니다.
멀티플레이어 게임플레이에 필요한 다운로드 가능한 콘텐츠를 지원하는 타이틀은 다운로드 가능한 콘텐츠가 설치되지 않은 사용자에게 명확한 표시를 제공해야 합니다. 통과 예
- DLC 요구 사항이 있는 세션에 참가하려고 할 때 요구 사항을 충족하지 않는 사용자에게 적절한 메시지가 표시되고, 문제를 해결하는 방법(다운로드, 다시 다운로드 등)에 대한 정보가 제공됩니다.
- 아이콘 및/또는 기타 화면 요소를 사용하여, DLC 요구 사항이 있는 세션에 참가하려고 할 때 요구 사항을 충족하지 않는 사용자에게 명확한 알림이 제공되고, 문제를 해결하는 방법에 대한 정보가 제공되거나 사용자가 이를 쉽게 추론할 수 있습니다.
- 멀티플레이어 매치의 DLC 요구 사항을 충족하는 사용자는 세션에 참가하여 플레이할 수 있습니다.
- 멀티플레이어 세션의 DLC 요구 사항을 충족하지 않는 사용자에게 DLC 요구 사항과 해결 방법에 대한 명확한 시각적 표시가 제공되지 않습니다.
- 멀티플레이어 세션의 DLC 요구 사항을 충족하는 사용자들이 함께 참가할 수 없습니다.
게임 내 스토어 및 Microsoft Store에서 구매
이 범주의 요구 사항은 게임 내 스토어와 Microsoft Store에서 구매하는 방법을 지정합니다. 가격 책정, 메타데이터 및 제안에 대한 정책은 게임 퍼블리싱 가이드를 참조하세요.사용자 프로필
이 범주의 요구 사항은 게임이 XBOX 사용자 모델, 프로필과 상호 작용하고 사용자 데이터를 저장하는 방식에 적용됩니다.XR-112: 초기 활성화 및 다시 시작 시 사용자 및 컨트롤러 설정 *
타이틀은 타이틀에서 기본 사용자 역할을 할 하나 이상의 활성 사용자를 설정해야 하며, 일시 중단, 절전 또는 최대 절전 모드에서 다시 시작할 때 해당 사용자를 처리해야 합니다. GDK에서 타이틀은 Simplified User Model 또는 Advanced User Model을 사용하여 이 작업을 수행합니다. GDK Simplified User Model 타이틀 GDK의 Simplified User Model은 타이틀을 대신하여 기본 사용자 획득을 처리합니다. 타이틀은 여전히 컨트롤러가 사용자에게 할당되었는지 확인하고 해당 컨트롤러를 게임 입력에 사용할 책임이 있습니다. 기본 사용자에게 할당된 컨트롤러가 없는 경우 타이틀은 XUserFindControllerForUserWithUiAsync를 사용하여 컨트롤러를 선택하는 시스템 대화 상자를 표시하고 플레이어의 입력을 받기 시작해야 합니다. GDK Advanced User Model 초기 활성화 시 게임은 타이틀을 실행한 사용자를 사용하거나 명시적으로 사용자를 묻는 방식으로, 게임 디자인 및 기본 설정에 따라 초기 사용자를 결정하도록 선택할 수 있습니다. 타이틀은 해당 사용자의 프로필에서 첫 번째 프로필 관련 작업(예: 진행 상황 또는 설정 저장)이 수행되기 전에 활성 사용자를 표시해야 합니다. Advanced User Model을 사용하는 모든 Microsoft Game Development Kit (GDK) 타이틀은 활성 사용자를 변경할 수 있도록 계정 선택기에 대한 진입점을 제공해야 합니다. 타이틀이 일시 중단, 절전 또는 최대 절전 모드에서 다시 시작되면 타이틀은 사용자/컨트롤러 페어링의 유효성을 검사하고 이전 사용자의 세션을 다시 시작하거나 새 사용자를 획득하여 적절히 대응해야 합니다.[!Note] 다음 표는 GDK Simplified User Model 또는 GDK Advanced User Model을 사용하는 경우 XR-112의 어떤 테스트 사례가 타이틀에 적용되는지 보여 줍니다.
112-02 초기 사용자 및 컨트롤러
테스트 단계- 프로필 A로 로그인하고 타이틀을 실행합니다.
- 활성 사용자가 타이틀을 조작할 수 있는지 확인합니다.
- 로그인한 프로필 없이 [1]단계를 반복하고 타이틀이 활성 사용자를 설정하라는 메시지를 표시하는지 확인합니다.
- 활성 사용자를 설정하고 사용자가 타이틀을 조작할 수 있는지 확인합니다.
타이틀은 활성 사용자를 타이틀을 실행한 컨트롤러/사용자 페어링으로 설정하거나, 컨트롤러와 사용자를 식별하는 참여 프롬프트를 표시하거나, 로그인할 수 있도록 계정 선택기를 표시해야 합니다. 통과 예
- 타이틀이 활성 사용자를 타이틀을 실행한 컨트롤러/사용자 페어링으로 설정합니다.
- 타이틀이 컨트롤러와 사용자를 식별하는 참여 프롬프트를 표시합니다.
- 타이틀이 로그인할 수 있도록 계정 선택기를 표시합니다.
- 타이틀이 사용자가 처음 사용한 컨트롤러로 타이틀을 조작하도록 허용하지 않습니다.
- 로그인한 사용자 없이 실행했을 때 타이틀이 사용자에게 활성 사용자를 설정하라는 메시지를 표시하지 않습니다.
112-03 로그인한 사용자 없음
테스트 단계- 로그인한 사용자가 없는지 확인합니다.
- 타이틀을 실행하고 사용자 데이터 저장을 지원하는 모든 모드에 들어갑니다.
- 데이터 손실이 발생하기 전에 각 모드가 사용자에게 로그인할 기회를 제공하는지 확인합니다.
- 로그인 기회를 취소하고 타이틀이 진행 상황이 저장되지 않는다는 경고를 제공하는지 확인합니다.
타이틀이 일반적으로 사용자 데이터 또는 게임 상태를 저장하는 모드에 있는 경우 타이틀은 사용자에게 로그인할 기회를 제공해야 합니다. 사용자가 로그인하지 않고 게임 플레이를 계속하는 경우 타이틀은 진행 상황이 저장되지 않는다는 것을 사용자에게 알려야 합니다. 통과 예
- 로그인하지 않은 사용자가 일반적으로 사용자 데이터 또는 게임 상태를 저장하는 타이틀 모드에 액세스할 때 로그인하라는 메시지가 표시됩니다.
- 사용자가 로그인하지 않고 모드를 계속 진행하면 진행 상황이 저장되지 않는다는 알림을 받습니다.
- 일반적으로 사용자 데이터 또는 게임 상태를 저장하는 모드에 있는 동안, 사용자가 로그인하지 않고 해당 모드를 계속 진행하면 진행 상황이 저장되지 않는다는 알림을 받지 못합니다.
- 데이터 손실이 이미 발생한 후에 사용자가 진행 상황을 저장할 수 없다는 알림을 받습니다.
112-04 활성 사용자 표시
테스트 단계- 이전에 타이틀을 실행한 적이 없고 연결된 저장 데이터가 없는 프로필로 로그인합니다.
- 타이틀을 실행합니다.
- 프로필 관련 작업을 수행하기 전에 타이틀이 UI 내에서 활성 사용자를 식별하는지 확인합니다. “프로필 관련 작업”의 예로는 사용자의 저장된 게임 또는 기본 설정 변경, 사용자 프로필에 데이터 저장, 도전 과제 부여, 사용자 통계 작성, 기타 사용자 데이터 또는 상태의 로컬 또는 클라우드 사용이나 조작 등이 있습니다.
- 저장 데이터를 만듭니다.
- 타이틀을 다시 실행하고 프로필 관련 작업을 수행하기 전에 타이틀이 UI 내에서 활성 사용자를 식별하는지 확인합니다.
- XBOX Live에서 연결을 끊습니다.
- 타이틀을 다시 실행하고 프로필 관련 작업을 수행하기 전에 타이틀이 UI 내에서 활성 사용자를 식별하는지 확인합니다.
타이틀은 첫 번째 프로필 관련 작업 전에 현재 사용자 컨텍스트를 표시해야 합니다. 통과 예
- 타이틀이 프로필 관련 작업을 수행하기 전에 타이틀 내에서 사용자의 게이머태그 및/또는 게이머 사진을 표시합니다.
- 사용자 프로필을 사용하지 않는 타이틀은 활성 사용자를 표시하지 않습니다.
- 타이틀이 여러 사용자를 지원하는 게임 모드에서 여러 활성 사용자를 표시합니다.
- 타이틀이 프로필 관련 작업을 수행하기 전에 타이틀의 활성 사용자를 표시하지 않습니다.
112-05 계정 선택기 액세스
테스트 단계- 프로필로 로그인하고 타이틀을 실행합니다.
- 타이틀이 활성 사용자가 타이틀에서 계정 선택기에 액세스하여 다른 프로필을 선택할 수 있도록 허용하는지 확인합니다.
타이틀은 사용자가 타이틀에서 계정 선택기에 액세스하여 활성 사용자를 변경할 수 있도록 허용해야 합니다. 통과 예
- 타이틀이 사용자가 타이틀에서 계정 선택기에 액세스할 수 있도록 허용합니다.
- 타이틀이 사용자가 타이틀에서 계정 선택기에 액세스하도록 허용하지 않습니다.
112-06 프로필 변경 처리
테스트 단계- 프로필로 로그인하고 타이틀을 실행합니다.
- 계정 선택기에 액세스하여 다른 프로필을 선택합니다.
- 타이틀이 적절하게 반응하여 활성 사용자의 컨텍스트를 새 프로필로 전환하는지 확인합니다.
- 타이틀에서 계정 선택기에 액세스할 수 있는 모든 위치에 대해 1-4단계를 반복합니다.
타이틀은 사용자가 다른 사용자의 컨텍스트로 원활하게 변경할 수 있도록 허용해야 합니다. 통과 예
- 타이틀이 활성 사용자를 변경하면 데이터가 손실될 수 있다는 것을 사용자에게 알리고, 계정 선택기로 진행하기 전에 사용자에게 확인을 요청합니다.
- 타이틀이 새 활성 사용자의 컨텍스트로 적절하게 업데이트됩니다.
- 타이틀이 새 활성 사용자의 컨텍스트로 적절하게 업데이트되지 않습니다.
112-08 일시 중단, 절전 또는 최대 절전 중 사용자 변경
XBOX 본체에서 게임을 일시 중단하는 방법과 PC 또는 핸드헬드 디바이스를 절전 및 최대 절전 모드로 전환하는 방법은 일시 중단, 절전 및 최대 절전 테스트를 참조하세요. 이 테스트 사례의 목적상, XBOX 본체에서는 2단계에서 설정 앱을 실행하고 10분 동안 포커스를 유지하여 게임을 일시 중단함으로써 로그인한 사용자를 변경할 수 있도록 합니다. PC 및 핸드헬드 디바이스에서는 2단계에서 시스템을 절전 또는 최대 절전 모드로 전환합니다. 테스트 단계- 프로필로 로그인하고 게임을 실행합니다.
- 게임 전체의 다양한 위치에서:
- XBOX 본체에서는 설정 앱을 실행하고 10분 동안 포커스를 유지하여 게임을 일시 중단합니다.
- PC 및 핸드헬드 디바이스에서는 시스템을 절전 또는 최대 절전 모드로 전환합니다.
- 게임이 일시 중단, 절전 또는 최대 절전 상태에 있는 동안 활성 사용자를 변경합니다. XBOX 본체에서는 프로필 A에서 로그아웃하고 프로필 B로 로그인합니다. PC 및 핸드헬드 디바이스에서는 다른 Windows 사용자 계정으로 전환합니다.
- 디바이스의 전원을 다시 켠 상태에서 게임을 다시 시작하고 게임이 새 활성 사용자에 따라 적절하게 반응하는지 확인합니다.
- 새 활성 사용자로 게임 플레이에 들어가 사용자가 진행할 수 있는지 확인합니다.
- 게임이 일시 중단, 절전 또는 최대 절전 상태에서 다시 시작되면 게임은 이전에 참여한 모든 사용자가 여전히 게임 디바이스에 로그인되어 있는지 확인해야 합니다.
- 게임이 다시 시작될 때 활성 사용자 컨텍스트를 자동으로 프로필 B로 전환합니다.
- 게임이 자동으로 게임에서 프로필 A를 제거하거나 새 사용자를 다시 설정하고 해당 새 사용자의 상태를 게임 플레이에 사용합니다.
- 게임이 활성 사용자인 프로필 A를 컨텍스트에서 제거하도록 업데이트되지 않습니다.
- 새 프로필을 선택한 후에도 게임이 게임 플레이에 프로필 A의 상태를 계속 사용합니다.
XR-115: 게임 플레이 중 사용자 또는 컨트롤러 추가 및 제거 *
여러 사용자를 지원하는 타이틀은 사용자의 추가 및 제거, 또는 활성 플레이어에게 할당된 컨트롤러가 없거나 게임 플레이 중 컨트롤러 연결이 끊어지는 시나리오에 다음과 같이 대응해야 합니다. 컨트롤러 추가:타이틀이 초기 사용자와 컨트롤러를 선택하거나 받은 후에는 선택적으로 다른 컨트롤러의 입력을 받을 수 있습니다. 멀티플레이어 환경을 지원하는 타이틀은 추가 플레이어 또는 컨트롤러가 게임 플레이에 추가되고
XUserAddAsync를 사용하여 사용자에게 바인딩되는 방식을 고려해야 합니다. 예를 들어 ‘참가하려면 A를 누르세요’를 표시하거나 플레이어 선택 화면에 컨트롤러 실루엣을 보여 주는 방식이 있습니다.
컨트롤러 제거:게임 플레이를 조작하는 플레이어의 컨트롤러가 게임 플레이 중에 제거되면 타이틀은 새 활성 컨트롤러를 다시 설정할 수 있도록 허용해야 합니다(예: “계속하려면 A를 누르세요” 또는 유효한 컨트롤러가 있는 활성 사용자에 대해 ERA에서
ControllerPairingChanged를 받거나 GDK에서 XUserDeviceAssociationChangedCallback 이벤트를 받음). 타이틀은 XUserFindControllerForUserWithUiAsync를 사용하여 시스템 UX를 호출함으로써 사용자에게 컨트롤러를 사용자와 페어링하고 게임 플레이로 돌아가도록 요청할 수도 있습니다.
사용자 추가:GDK를 사용하는 경우(Simplified User Model 또는 Advanced User Model 사용) 사용자는 타이틀이
XUserAddAsync를 호출할 때만 추가됩니다.
기본 사용자 제거:GDK Advanced User Model을 사용하는 타이틀의 경우, 기본 사용자가 로그아웃되면(가이드, SPOP 또는 기타 방법을 통해) 타이틀은 게임에서 플레이어를 제거하거나 사용자와 활성 컨트롤러를 다시 설정해야 합니다. GDK Simplified User Model을 사용하는 타이틀의 경우, 기본 플레이어가 제거되면 시스템 수준에서 타이틀이 일시 중단됩니다. 모든 시나리오에서 타이틀은 게임을 양호한 상태로 만들어 제거/종료를 처리합니다. 여기에는 연결된 스토리지에 쓰기, 관련 MPSD 세션에 사용자가 나갔음을 알리기, 새 사용자가 추가되지 않은 경우 사용자를 로그인에 적절한 위치로 안내하기가 포함됩니다. 추가/보조 사용자 제거:
타이틀은 재량에 따라 이 이벤트를 처리할 수 있으며, 일반적으로 게임 플레이에서 플레이어를 즉시 제거하거나 사용 중인 멀티플레이어 환경의 컨텍스트에서 플레이어에게 다시 참가하도록 요청합니다.
[!Note] 다음 표는 GDK Simplified User Model 또는 GDK Advanced User Model을 사용하는 경우 XR-115의 어떤 테스트 사례가 타이틀에 적용되는지 보여 줍니다.
115-02 컨트롤러 제거
테스트 단계- 프로필로 로그인하고 타이틀을 실행합니다.
- 타이틀을 사용하는 동안 여러 시점에서 컨트롤러의 배터리를 제거합니다.
- 컨트롤러에 배터리를 다시 넣고 사용자가 타이틀을 계속 사용할 수 있는지 확인합니다.
- 1-3단계를 반복하되, 배터리를 다시 넣는 대신 두 번째 컨트롤러를 연결합니다.
타이틀은 컨트롤러의 제거 및 추가에 올바르게 대응해야 합니다. 통과 예
- 컨트롤러가 제거되거나 추가된 후에도 활성 사용자가 타이틀을 계속 사용할 수 있어야 합니다.
- 사용자에게 새 활성 컨트롤러를 다시 설정하라는 메시지가 표시됩니다(예: “계속하려면 A를 누르세요” 또는 시스템 UX 호출).
- 컨트롤러가 제거된 후 사용자가 타이틀을 계속 사용할 수 없습니다.
115-03 사용자 제거
테스트 단계- 프로필 A로 로그인하고 다른 프로필이 로그인되어 있지 않은지 확인합니다.
- 타이틀을 실행하고 게임 플레이로 진행합니다.
- 타이틀을 사용하는 동안 여러 시점에서 프로필 A에서 로그아웃합니다.
- 타이틀이 계정 선택기를 호출하거나 사용자를 프런트 엔드로 돌려보내는지 확인합니다.
- 가능한 경우 다음과 같은 방법으로 타이틀과 상호 작용합니다.
- 프로필 A로 로그인하고 타이틀이 사용자 환경을 더 이상 중단하지 않는지 확인합니다.
- 프로필 B로 로그인하고 타이틀이 새 사용자의 컨텍스트로 업데이트되는지 확인합니다.
타이틀은 게임에서 플레이어를 제거하거나 사용자와 활성 컨트롤러를 다시 설정해야 합니다. 플레이어가 게임에서 제거되는 경우 타이틀은 양호한 상태로 유지되어야 합니다. 여기에는 연결된 스토리지에 쓰기, 관련 MPSD 세션에 사용자가 나갔음을 알리기, 새 사용자가 추가되지 않은 경우 사용자를 로그인에 적절한 위치로 안내하기가 포함됩니다. 통과 예
- 타이틀이 게임에서 플레이어를 제거하고 프런트 엔드로 돌아갑니다.
- 타이틀이 사용자가 새 사용자를 다시 설정할 수 있도록 허용하고 관련 사용자 컨텍스트로 올바르게 업데이트됩니다.
- 타이틀이 사용자 상태 변경에 반응하지 않습니다.
- 새 프로필을 선택한 후에도 타이틀이 프로필 A의 사용자 상태를 계속 사용합니다.
XR-045: XBOX network 및 계정 권한 *
XBOX network는 사용자와 그 자녀에게 기대 수준의 개인 정보 보호 및 온라인 안전을 제공합니다. 이러한 약속을 이행하기 위해 타이틀은 XBOX network 서비스 또는 타이틀 환경에서 특정 작업을 완료하기 위한 권한을 XBOX network 서비스에서 확인해야 합니다. 권한 확인 및 준수는 모든 계정에 적용되지만, 특히 자녀 계정에 대한 환경과 기대 사항에 유의하는 것이 중요합니다. 자녀 계정의 경우 연령 기반 기본값 및/또는 자녀의 가족 구성원 관리자(부모 또는 보호자)의 구성으로 인해 특정 활동이 제한될 수 있습니다. 자녀는 직접 변경할 수 없지만, 특정 활동의 경우 타이틀이 필요한 시스템 UI를 호출하여 어린 플레이어가 해당 활동에 대한 승인 흐름을 통해 예외를 요청할 수 있도록 하는 것이 가능하며 또한 그렇게 하는 것이 기대됩니다. 예를 들어 이러한 상황에서 어린 플레이어는 멀티플레이어가 전역적으로 차단되어 있을 수 있지만, 가족의 부모 또는 보호자가 시스템 UI를 통해 특정 타이틀에 대한 멀티플레이어를 승인할 수 있으며, 그러면 자녀는 해당 특정 타이틀에서 이 게임 모드에 액세스할 수 있고 또 액세스할 수 있어야 합니다.
무료 플레이 타이틀, 데모 또는 베타는 Game Pass 구독자가 아닌 플레이어에게 멀티플레이어 게임 플레이(ID 254)를 허용하도록 구성할 수 있습니다. 이는 서비스 측 구성을 통해 수행되며 Microsoft 담당자에게 문의하여 시작할 수 있습니다. 이러한 타이틀은 자녀 보호 설정 및 플레이어 선택이 준수되도록 멀티플레이어 게임 권한을 계속 확인해야 합니다.
045-01 사용자 권한 준수
테스트 단계- XBOX 프로필로 로그인하고 타이틀을 실행합니다.
- XR 설명에서 식별된 각 권한에 대해 타이틀이 관련 활동을 지원하는지 확인합니다.
- 2단계에서 식별된 각 해당 권한의 가능한 각 설정에 대해 다음을 수행합니다.
- 타이틀을 종료하고 해당 권한에 대한 사용자 설정을 변경합니다.
- 본체를 다시 시작합니다.
- 동일한 프로필로 로그인하고 타이틀을 실행합니다.
- 타이틀의 모든 관련 영역을 방문하고, 해당 권한과 관련된 모든 타이틀 기능을 사용하며, 타이틀이 사용자의 현재 권한 설정을 준수하는지 확인합니다.
- Silver XBOX 프로필을 사용하여 모든 오프라인 및 온라인 영역에 액세스해 봅니다.
타이틀은 사용자의 권한 설정을 준수해야 합니다. 통과 예
- 타이틀이 사용자의 권한 설정을 준수합니다.
- 타이틀이 부분 허용 권한 설정을 권한이 비활성화/허용되지 않은 것처럼 처리합니다(예: 사용자 생성 콘텐츠(UGC) 권한이 친구만으로 설정된 경우 타이틀은 권한이 차단으로 설정된 것처럼 동작함).
- XDK를 사용하는 타이틀의 경우 타이틀이 시스템 UI를 호출하여 사용자에게 권한 충돌을 알립니다(타이틀은
Store::Product::CheckPrivilegeAsyncAPI를 사용해야 함). 시스템 UI를 호출할 수 없는 경우(권한 252, 189, 247) 타이틀은 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시합니다. - GDK를 사용하는 타이틀의 경우 타이틀이 시스템 UI를 호출하여 사용자에게 권한 충돌을 알립니다(타이틀은
XUserCheckPrivilege및XUserResolvePrivilegeWithUiAsyncAPI를 사용해야 함). 시스템 UI를 호출할 수 없는 경우(권한 252, 189, 247) 타이틀은 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시합니다. - XSAPI를 사용하는 타이틀의 경우 타이틀이 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시합니다.
- 타이틀이 사용자의 권한 설정을 유지하여 권한이 변경된 후에도 사용자의 실제 권한을 반영하지 않습니다.
- 타이틀이 부분 허용 권한 설정을 권한이 가장 덜 제한적인 설정으로 설정된 것처럼 처리합니다(예: 사용자 생성 콘텐츠(UGC) 권한이 친구만으로 설정된 경우 타이틀은 권한이 허용으로 설정된 것처럼 동작함).
- XDK 또는 GDK를 사용하는 타이틀의 경우 타이틀이 게임 내 메시지를 사용하여 사용자에게 권한 충돌을 알리고 시스템 UI를 표시하지 않습니다.
- XSAPI를 사용하는 타이틀의 경우 타이틀이 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시하지 않습니다.
045-02 사용자 권한 준수 - XBOX 가족
테스트 설정 및 구성- 다음 Microsoft 계정을 포함하는 XBOX 가족:
- 구성원 관리자로 지정된 성인(18세 초과).
- 자녀 기본값 권한 설정이 적용된 자녀(13세 미만):
참조 및 링크
테스트 단계
- 성인 및 자녀 Microsoft 계정으로 로그인하고 자녀 계정으로 타이틀을 실행합니다.
- XR 설명에서 식별된 각 권한에 대해 타이틀이 관련 활동을 지원하는지 확인합니다.
- 2단계에서 식별된 각 해당 권한의 가능한 각 설정에 대해 다음을 수행합니다.
- 계정 권한에 따라 관련 활동이 허용/허용되지 않는지 확인합니다. 예: 타이틀이 멀티플레이어를 지원하고 자녀 계정의 멀티플레이어 권한이 차단되어 있습니다. 타이틀이 자녀의 모든 멀티플레이어 활동을 차단하고, 자녀가 멀티플레이어 활동에 참여하려고 할 때 보호자 권한 프롬프트(시스템 TCUI)가 표시되는지 확인합니다.
- 타이틀을 종료하고 타이틀이 지원하는 권한 활동에 대해 사용자 자녀의 권한 설정을 차단에서 허용으로 변경합니다. 예: 멀티플레이어 또는 사용자 생성 콘텐츠를 차단에서 허용으로 변경합니다.
- 본체를 다시 시작합니다.
- 동일한 프로필로 로그인하고 타이틀을 실행합니다.
- 타이틀의 모든 관련 영역을 방문하고, 해당 권한과 관련된 모든 타이틀 기능을 사용하며, 타이틀이 사용자의 현재 권한 설정을 준수하는지 확인합니다. 예: 타이틀이 멀티플레이어를 지원합니다. 자녀는 차단되어 있었지만 이제 멀티플레이어 권한이 부여되었습니다. 타이틀이 자녀가 멀티플레이어 게임 모드에 액세스하도록 올바르게 허용합니다.
- 부모 계정이 본체에 로그인되어 있지 않은 상태에서 2-3단계를 반복합니다.
타이틀은 모든 XBOX 가족 구성원의 권한 설정을 준수해야 합니다. 통과 예
- 타이틀이 자녀의 권한 설정을 준수합니다.
- 활동에 대한 권한이 허용된 경우 타이틀이 자녀가 해당 활동에 참여하도록 허용합니다.
- 활동에 대한 권한이 차단된 경우 타이틀이 자녀가 해당 활동에 참여하도록 허용하지 않습니다.
- 차단된 활동에 대해 부모가 (보호자 권한 UI를 통해) 권한을 허용한 후 타이틀이 자녀가 해당 활동에 참여하도록 허용합니다.
- 차단된 활동에 대해 부모가 (보호자 권한 UI를 통해) 권한을 허용하지 않은 경우 타이틀이 자녀가 해당 활동에 참여하도록 허용하지 않습니다.
- 타이틀이 부분 허용 권한 설정을 권한이 비활성화/허용되지 않은 것처럼 처리합니다(예: 사용자 생성 콘텐츠(UGC) 권한이 친구만으로 설정된 경우 타이틀은 권한이 차단으로 설정된 것처럼 동작함).
- XDK를 사용하는 타이틀의 경우 타이틀이 시스템 UI를 호출하여 사용자에게 권한 충돌을 알립니다(타이틀은
Store::Product::CheckPrivilegeAsyncAPI를 사용해야 함). 시스템 UI를 호출할 수 없는 경우(권한 252, 189, 247) 타이틀은 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시합니다. - GDK를 사용하는 타이틀의 경우 타이틀이 시스템 UI를 호출하여 사용자에게 권한 충돌을 알립니다(타이틀은 XUserCheckPrivilege 및
XUserResolvePrivilegeWithUiAsyncAPI를 사용해야 함). 시스템 UI를 호출할 수 없는 경우(권한 252, 189, 247) 타이틀은 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시합니다. - XSAPI를 사용하는 타이틀의 경우 타이틀이 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시합니다.
- 타이틀이 자녀의 권한 설정을 준수하지 않습니다.
- 예: 타이틀이 멀티플레이어를 지원하며, 멀티플레이어가 차단된 자녀가 멀티플레이어 게임 모드에 액세스하도록 허용합니다.
- 타이틀이 자녀에게 권한 충돌을 경고하고 알리는 적절한 UI를 호출하지 않습니다.
- 예: 타이틀이 멀티플레이어를 지원하지만, 권한이 차단된 경우 자녀에게 보호자 권한을 요청하는 메시지가 전혀 표시되지 않습니다.
- 활동에 대한 권한이 차단된 경우 타이틀이 자녀가 해당 활동에 참여하도록 허용합니다.
- 활동에 대한 권한이 허용된 경우 타이틀이 자녀가 해당 활동에 참여하도록 허용하지 않습니다.
- 차단된 활동에 대해 부모가 (보호자 권한 UI를 통해) 권한을 허용하지 않았는데도 타이틀이 자녀가 해당 활동에 참여하도록 허용합니다.
- 차단된 활동에 대해 부모가 (보호자 권한 UI를 통해) 권한을 허용했는데도 타이틀이 자녀가 해당 활동에 참여하도록 허용하지 않습니다.
- 타이틀이 사용자의 권한 설정을 유지하여 권한이 변경된 후에도 사용자의 실제 권한을 반영하지 않습니다.
- 예: 타이틀이 멀티플레이어를 지원합니다. 자녀 계정은 멀티플레이어가 차단되어 있지만 부모가 시스템 UI를 통해 권한을 부여합니다. 권한이 부여되었는데도 타이틀이 멀티플레이어를 계속 차단합니다.
- 타이틀이 부분 허용 권한 설정을 권한이 가장 덜 제한적인 설정으로 설정된 것처럼 처리합니다. 예: 사용자 생성 콘텐츠(UGC) 권한이 친구만으로 설정된 경우 타이틀은 권한이 허용으로 설정된 것처럼 동작합니다.
- XDK를 사용하는 타이틀의 경우 타이틀이 시스템 UI를 호출하여 사용자에게 권한 충돌을 알리지 않습니다(타이틀은
Store::Product::CheckPrivilegeAsyncAPI를 사용해야 함). 시스템 UI를 호출할 수 없는 경우(권한 252, 189, 247) 타이틀이 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시하지 않습니다. - GDK를 사용하는 타이틀의 경우 타이틀이 시스템 UI를 호출하여 사용자에게 권한 충돌을 알리지 않습니다(타이틀은
XUserCheckPrivilege및XUserResolvePrivilegeWithUiAsyncAPI를 사용해야 함). 시스템 UI를 호출할 수 없는 경우(권한 252, 189, 247) 타이틀이 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시하지 않습니다. - XSAPI를 사용하는 타이틀의 경우 타이틀이 사용자가 참여할 수 없음을 알리는 정보 메시지를 표시하지 않습니다.
XR-046: 표시 이름 및 게이머 사진 *
XBOX 본체에서 타이틀은 게이머태그를 기본 표시 이름으로 사용해야 합니다. 디자인 선택에 따라 타이틀은 플레이어의 최신 게이머태그 또는 클래식 게이머태그 중에서 선택할 수 있습니다. 최신 게이머태그는 GDK에서 사용할 수 있으며 클래식 게이머태그는 ERA와 GDK 모두에서 사용할 수 있습니다. 본체가 아닌 플랫폼에서는 필수는 아니지만 게임 타이틀 환경 내의 적절한 위치에 XBOX network 플레이어의 게이머태그를 사용하는 것이 좋습니다. 게이머태그는 사용된 게이머태그 유형에 따라 타이틀에 올바르게 표시되어야 합니다. 최신 게이머태그고유한 최신 게이머태그의 16자를 모두 표시합니다. 여기에는 최대 12자의 최신 게이머태그와 그 뒤에 오는 # 및 접미사 번호(있는 경우)가 포함됩니다. 예: Major Nelson(접미사 없음) 또는 Major Nelson#881. 최신 게이머태그를 사용하는 경우 최신 게이머태그에 사용할 수 있는 모든 유니코드 문자 범위를 지원해야 합니다. 최신 게이머태그에 대한 자세한 정보 및 모범 사례는 GDK 개발 설명서 문서 ‘최신 게이머태그 개요’를 참조하세요. 클래식 게이머태그
클래식 게이머태그의 15자를 모두 올바르게 표시합니다. 클래식 게이머태그에는 ASCII 문자 a-z, A-Z, 0-9, 쉼표(,) 및 공백(ASCII 문자 0x20)만 포함됩니다. 예: Major Nelson GDK에서는 이러한 항목이 XUserGetGamertag API를 사용하여 반환됩니다. ERA에서는
GetUserProfileAsync API를 사용하여 게이머태그를 가져옵니다.
046-01 표시 이름 및 게이머 사진
필요한 도구- GDK의 XblTestAccountGui.exe
다음 각 이름에 대해 테스트 계정 4개를 만들고 _XblTestAccountGui.exe_를 사용하여 각 테스트 계정의 게이머태그를 다음과 같이 변경합니다.
- สฐ众нь컴퓨퓨
- आथाώঙぁヺ
- øÜêþЯЂў
- gttest1
- 타이틀 내에서 게이머태그가 표시되는 위치를 찾아 확인합니다.
- [1]단계에서 식별된 모든 영역에서 사용자의 게이머태그가 어떻게 표시되는지 확인합니다.
- 타이틀이 사용자의 사진을 표시하는 경우 각 계정에 대해 올바른 Microsoft 계정 사진 또는 게이머 사진이 표시되는지 확인합니다.
사용자의 게이머태그가 올바르게 표시되어야 합니다. 통과 예
- 최신 게이머태그를 사용할 때 게이머태그가 유니코드 문자(자동 생성된 접미사 포함)를 올바르게 표시합니다.
- 클래식 게이머태그를 사용할 때 게이머태그가 올바르게 표시됩니다.
- 유니코드 문자가 빈 문자로 표시되어 게이머태그가 전혀 렌더링되지 않습니다.
- 클래식 게이머태그를 사용할 때 게이머태그가 올바르게 표시되지 않습니다.
XR-047: 사용자 프로필 액세스 *
타이틀은 사용자의 표시 이름이 나열되는 모든 위치에서 사용자가 다른 XBOX network 사용자의 게이머카드(사용자 프로필)에 액세스할 수 있는 옵션을 제공해야 합니다.047-01 사용자 프로필 액세스
테스트 단계- 디바이스 1 및 2: 타이틀을 부팅합니다.
- 디바이스 1 및 2: XBOX 프로필로 로그인합니다.
- 디바이스 1: XBOX 멀티플레이어 게임 세션을 설정합니다.
- 디바이스 2: 본체 1에서 만든 게임 세션을 찾아 참가합니다.
- 디바이스 2가 게임 세션에 참가한 후 다음을 확인합니다.
- 게임 전 로비에서 게이머태그 또는 사용자 이름을 선택하여 다른 XBOX 사용자의 게이머카드에 액세스합니다.
- 게임 플레이 중에 사용자의 사용자 이름 또는 게이머태그를 선택하여 다른 XBOX 사용자의 게이머카드에 액세스해 봅니다(타이틀에 따라 가능할 수도 있고 불가능할 수도 있음).
- 게임 후 통계 화면에서 사용자의 사용자 이름 또는 게이머태그를 선택하여 다른 XBOX 사용자의 게이머카드에 액세스합니다.
- 순위표 영역에서 사용자의 사용자 이름 또는 게이머태그를 선택하여 다른 XBOX 사용자의 게이머카드에 액세스합니다.
- 게이머태그가 나열되는 다른 모든 영역을 찾아 사용자의 사용자 이름 또는 게이머태그를 선택하여 다른 XBOX 사용자의 게이머카드에 액세스해 봅니다.
사용자는 다른 XBOX 사용자의 게이머카드 정보를 볼 수 있어야 합니다. 통과 예
- 사용자가 게이머태그가 표시되고 UI 탐색이 활성화된 모든 위치에서 다른 XBOX 사용자의 게이머카드에 액세스할 수 있습니다.
- 사용자가 UI 탐색 활성화 여부와 관계없이 순위표, 세션 로비, 게임 후 통계 및 기타 게임 내 메뉴에서 다른 XBOX 사용자의 게이머카드에 액세스할 수 있습니다.
- 사용자가 게이머태그가 표시되고 UI 탐색을 사용할 수 있는 위치에서 다른 XBOX 사용자의 게이머카드에 액세스할 수 없습니다.
- 사용자가 UI 탐색 활성화 여부와 관계없이 순위표, 세션 로비, 게임 후 통계 및 기타 게임 내 메뉴에서 다른 XBOX 사용자의 게이머카드에 액세스할 수 없습니다.
- 사용자가 게이머태그가 표시되고 UI 탐색이 활성화된 위치에서 다른 XBOX 사용자의 게이머카드에 액세스할 수 없습니다.
XR-048: 프로필 설정 사용 *
XBOX network는 XBOX 사용자 프로필 정보의 신뢰할 수 있는 원본입니다. 이를 지원하기 위해 타이틀은 네트워크 연결 끊김 시나리오를 지원하기 위한 로컬 저장 캐시 외에는 프로필 데이터, 기본 설정 또는 게이머태그와 같이 XBOX network에서 가져온 사용자 정보를 저장해서는 안 됩니다. 모든 오프라인 캐시는 다음에 서비스에 연결할 수 있을 때 업데이트되어야 합니다.048-01 프로필 설정 사용
구성- XBOX 디바이스 2대
- 프로필을 선택하고 저장 데이터를 만듭니다.
- 게이머태그 또는 계정 이름 업데이트를 포함하여 사용자 프로필 데이터를 변경합니다.
- 타이틀을 부팅하고 [2]단계에서 만든 저장 데이터를 로드합니다.
- 게임 플레이 중에 표시되는 사용자 프로필 데이터가 변경되었으며 저장된 게임에 저장되지 않았는지 확인합니다.
- (타이틀에서 자동으로 만든) 게이머태그에 대한 모든 참조가 업데이트되었는지 확인합니다. 여기에는 서버 호스팅 기능의 모든 참조와 타이틀 내의 모든 참조가 포함됩니다.
- 두 번째 디바이스에서 타이틀을 부팅하고 업데이트된 게이머태그가 올바르게 표시되는지 확인합니다.
사용자 프로필 데이터를 저장해서는 안 됩니다. 예를 들어 타이틀이 게임 내(예: 환영 메시지)에서 또는 XBOX가 아닌 서버에서(예: 업로드된 데이터의 이름 지정) 게이머태그를 사용하는 경우, 사용자가 게이머태그를 변경하면 해당 게이머태그가 유지되어서는 안 됩니다. 사용자가 게이머태그를 수동으로 입력한 경우에는 적용되지 않습니다. 통과 예
- 사용자 프로필 데이터 및 기본 설정이 변경된 후 모든 화면에서 업데이트됩니다.
- 리플레이, 저장 데이터, 옵션, 맵, 팀 등 로컬에 저장된 저장 데이터에 대해 타이틀 내 또는 XBOX 홈에서 타이틀이 사용자의 업데이트된 게이머태그 또는 Microsoft 계정 이름을 표시하지 않습니다.
- 타이틀이 게임 클립, 리플레이, 순위표 등의 영구 게시물이나 메시지, 게시판 게시물, 사용자 챌린지, 의상, 테마, 도색, 토너먼트, 리그 등의 기타 사용자 지정 게시물에 대해 사용자의 게이머태그를 업데이트하지 않습니다. 참고: 이는 새 게시물과 이전에 만든 게시물 모두에 적용됩니다.
- 타이틀이 리플레이, 저장 데이터, 옵션, 맵, 팀 등 사용자의 저장된 데이터에 사용자의 게이머태그를 저장하여, 사용자가 게이머태그 또는 계정 이름을 변경하면 저장 데이터를 사용할 수 없게 됩니다.
XR-052: 사용자 상태 및 타이틀 저장 위치, 로밍 및 종속성 *
타이틀은 진행 상황, 저장된 상태, 기본 설정, 도전 과제 및 기타 보상을 해당 진행 상황을 기록하거나, 기본 설정을 선택하거나, 보상을 획득한 사용자와 연결해야 합니다. 타이틀은 사용자 변경 알림을 적절하게 처리하여 이를 수행합니다. 타이틀은 더 이상 로그인되어 있지 않은 사용자의 상태를 저장하지 않아야 합니다. 게임 저장 데이터는 공유 콘텐츠 또는 로컬 스토리지에 대한 종속성이 없어야 합니다. 플랫폼, 디바이스 및/또는 본체 세대 간에 동일한 TitleID를 사용하는 게임의 경우, 사용자가 XBOX network에 로그인되어 있을 때 게임 저장 진행 상황은 다음과 같이 로밍되어야 합니다.- 동일한 플랫폼 내(XBOX 본체).
- 동일한 플랫폼의 디바이스 간(예: XBOX One 및 XBOX One S).
- 디바이스 플랫폼의 세대 간(예: XBOX One 및 XBOX Series X|S).
- Windows 플랫폼의 PC 간(예: 서로 다른 두 PC 간).
- 게임이 XPA인 경우 Windows 플랫폼의 PC와 XBOX 본체 플랫폼 간(예: Windows 및 XBOX Series X|S).
- XPA가 아닌 게임의 경우 Windows 플랫폼의 PC와 XBOX 본체 플랫폼 간(예: Windows 및 XBOX Series X|S) 로밍은 필수는 아니지만 플레이어 환경을 지원하기 위해 권장됩니다.
- Microsoft 이외의 플랫폼(예: iOS, Android, Switch, PlayStation®)의 경우 게임 저장 로밍은 필수는 아니지만 플레이어 환경을 지원하기 위해 권장됩니다.
추가 정보
공유 콘텐츠는 게임 저장 데이터를 로드할 때 로밍된 본체에 없을 수 있는 콘텐츠(예: 게임 추가 기능)입니다. 해당 콘텐츠는 현재 로그인한 사용자가 다운로드하지 않았거나 소유하지 않았기 때문에 사용하지 못할 수 있습니다. GDK를 사용하는 개발자는XGameSave, XGameSaveFiles 또는 PlayFab Game Saves를 사용하여 이러한 요구 사항을 쉽게 구현할 수 있습니다.
- GDK를 사용하여 게임 상태를 저장하는 방법에 대한 자세한 내용은 게임 저장을 참조하세요.
- GDK를 사용하여 게임 상태를 관리하고 데이터를 저장하는 방법에 대한 자세한 내용은 XBOX 게임 수명 주기를 참조하세요.
[!Note] 다음 표는 GDK Simplified User Model 또는 GDK Advanced User Model을 사용하는 경우 어떤 테스트 사례가 타이틀에 적용되는지 보여 줍니다. Simplified User Model과 Advanced User Model의 사용에 대한 자세한 내용은 XR-112를 참조하세요.
052-01 사용자 로그인 및 로그아웃
테스트 단계- 프로필 A에 게임 진행 상황 및 사용자 기본 설정을 포함한 저장 데이터가 있는지 확인합니다.
- 프로필 B에 저장 데이터가 없는지 확인합니다.
- 프로필 A로 로그인하고 타이틀을 실행합니다. 다음을 포함하되 이에 국한되지 않는 타이틀의 모든 영역을 방문하여 모든 저장 데이터가 보존되었는지 확인합니다.
- 싱글 플레이어 또는 멀티플레이어 게임 세션
- 메뉴
- 비디오 또는 오디오 재생
- 프로필 A에서 로그아웃하고 프로필 B로 로그인합니다.
- 3단계에서 확인한 타이틀의 모든 영역을 다시 방문하여 타이틀이 프로필 B의 사용자 진행 상황, 저장된 상태, 기본 설정, 도전 과제 또는 기타 보상을 올바르게 업데이트하는지 확인합니다.
- 게임 플레이를 시작하여 저장 진행 상황을 만들고 프로필 B의 사용자 기본 설정을 변경합니다.
- 타이틀을 종료했다가 다시 실행하고 6단계의 저장 데이터가 정확하게 반영되는지 확인합니다.
- 프로필 B에서 로그아웃합니다.
- 프로필 A에서 저장 데이터를 ‘모든 위치’에서 삭제하고 3-7단계를 반복합니다.
타이틀은 기본 사용자의 변경을 적절하게 처리해야 합니다. 통과 예
- 사용자 변경 후 사용자 진행 상황, 저장된 상태, 기본 설정, 도전 과제 또는 기타 보상이 올바른 사용자와 연결됩니다.
- 사용자 변경 후 타이틀이 사용자 진행 상황, 저장된 상태, 기본 설정, 도전 과제 또는 기타 보상을 잘못된 사용자와 연결합니다.
- 타이틀이 첫 번째 사용자에게 저장 데이터를 계속 부여합니다.
- 이전 사용자가 로그아웃한 후 새 사용자가 이전 사용자의 저장 데이터, 상태 또는 프로필을 변경할 수 있습니다.
052-02 일시 중단, 절전 및 최대 절전 중 사용자 변경
XBOX 본체에서 게임을 일시 중단하는 방법과 PC 또는 핸드헬드 디바이스를 절전 및 최대 절전 모드로 전환하는 방법은 일시 중단, 절전 및 최대 절전 테스트를 참조하세요. 이 테스트 사례의 목적상, XBOX 본체에서는 2단계에서 설정 앱을 실행하고 10분 동안 포커스를 유지하여 게임을 일시 중단함으로써 로그인한 사용자를 변경할 수 있도록 합니다. PC 및 핸드헬드 디바이스에서는 2단계에서 시스템을 절전 또는 최대 절전 모드로 전환합니다. 테스트 단계- 프로필로 로그인하고 게임을 실행합니다.
- 게임 전체의 다양한 위치에서:
- XBOX 본체에서는 설정 앱을 실행하고 10분 동안 포커스를 유지하여 게임을 일시 중단합니다.
- PC 및 핸드헬드 디바이스에서는 시스템을 절전 또는 최대 절전 모드로 전환합니다.
- 활성 사용자를 변경합니다. XBOX 본체에서는 기본 사용자를 로그아웃하고 다른 사용자로 로그인합니다. PC 및 핸드헬드 디바이스에서는 다른 Windows 사용자 계정으로 전환합니다.
- 새 사용자로 타이틀을 실행하고 이전 사용자의 위치에서 계속 진행해 봅니다.
- 타이틀의 모든 영역에 대해 1-4단계를 반복합니다.
타이틀은 기본 사용자의 변경을 적절하게 처리해야 합니다. 통과 예
- 다른 사용자로 실행할 때의 타이틀 상태가 타이틀 유형에 맞게 상황적으로 적절합니다.
- 사용자 변경 후 사용자 진행 상황, 저장된 상태, 기본 설정, 도전 과제 또는 기타 보상이 올바른 사용자와 연결됩니다.
- 사용자 변경 후 타이틀이 사용자 진행 상황, 저장된 상태, 기본 설정, 도전 과제 또는 기타 보상을 잘못된 사용자와 연결합니다.
- 타이틀이 첫 번째 사용자에게 저장 데이터를 계속 부여합니다.
- 이전 사용자가 로그아웃한 후 새 사용자가 이전 사용자의 저장 데이터, 상태 또는 프로필을 변경할 수 있습니다.
052-05 올바른 사용자 연결
테스트 단계- 프로필로 로그인하고 타이틀을 실행합니다.
- 게임 플레이로 진행하고 게임 진행 상황을 저장합니다.
- 타이틀을 종료합니다.
- 1단계의 프로필에서 로그아웃하고 새 프로필로 로그인합니다.
- 타이틀을 실행하고 저장된 진행 상황에 액세스해 봅니다.
원래 사용자에 대해 저장된 진행 상황은 새 프로필에 표시되거나 새 프로필에서 액세스할 수 없어야 합니다. 통과 예
- 5단계에서는 4단계의 새 프로필과 연결된 저장된 진행 상황만 표시됩니다.
- 타이틀이 새 프로필에서 다른 프로필의 저장된 진행 상황을 로드하도록 허용합니다.
052-06 클라우드 스토리지: 로밍
필요한 디바이스- XBOX One
- XBOX One S
- XBOX One X
- XBOX Series X|S
- PC 2대
- 디바이스 A에서 XBOX 프로필로 로그인하고 타이틀을 실행합니다.
- 게임 플레이를 시작하고 진행 상황을 저장합니다(가능한 경우 설정 구성을 변경하거나 새로 추가하여 설정 저장 데이터를 만듭니다).
- 타이틀을 종료합니다.
- 1단계에서 사용한 것과 동일한 플랫폼/세대의 두 번째 디바이스(예: XBOX Series S와 XBOX Series X, XBOX One과 XBOX One S, 두 번째 PC)에서 1단계에서 사용한 것과 동일한 프로필로 로그인합니다.
- 1단계와 동일한 타이틀을 실행하고 저장된 모든 게임과 모든 설정 및/또는 구성 파일에 액세스하고 올바르게 로드할 수 있으며 공유 콘텐츠에 대한 종속성이 없는지 확인합니다.
- 세대 간에 동일한 플랫폼에서 동일한 TitleID를 사용하는 게임(예: XBOX One 및 XBOX Series X|S)의 경우 4단계를 반복합니다.
- Windows 플랫폼에서 동일한 TitleID를 사용하는 PC 게임의 경우 4단계를 반복합니다.
- 지원되는 경우, 플랫폼 간에 동일한 TitleID를 사용하는 게임(예: Windows 및 XBOX Series X|S)의 경우:
- 지원되는 다른 플랫폼에서 1단계와 동일한 타이틀을 실행하고 저장된 모든 게임과 모든 설정 및/또는 구성 파일에 액세스하고 올바르게 로드할 수 있으며 공유 콘텐츠에 대한 종속성이 없는지 확인합니다.
타이틀 저장 진행 상황은 사용자 프로필과 연결되어야 하며, 사용자가 XBOX 서비스에 로그인되어 있을 때 동종 디바이스/플랫폼 간에 로밍되어야 합니다. 세대 간에 동일한 플랫폼에서 동일한 TitleID를 사용하는 게임의 경우 게임 저장 데이터가 이러한 플랫폼 간에 로밍되어야 합니다. Windows 플랫폼에서 동일한 TitleID를 사용하는 PC 게임의 경우 게임 저장 데이터가 서로 다른 PC 간에 로밍되어야 합니다. 게임 저장 데이터는 공유 콘텐츠에 대한 종속성이 없어야 합니다. 통과 예
- 게임 저장 데이터 및 관련 설정 파일을 동일한 본체 플랫폼/세대의 두 번째 본체(예: XBOX Series S와 XBOX Series X 또는 XBOX One과 XBOX One S)에서 성공적으로 다운로드할 수 있습니다.
- 게임 저장 데이터 및 관련 설정 파일을 Windows 플랫폼의 두 번째 PC에서 성공적으로 다운로드할 수 있습니다.
- 세대 간에 동일한 플랫폼에서 동일한 TitleID를 공유하는 본체 게임(예: XBOX One 및 XBOX Series X|S)의 경우 저장 데이터 및 관련 설정 파일을 이러한 디바이스 간에 로밍할 수 있습니다.
- 게임 저장 데이터에 공유 콘텐츠에 대한 종속성이 없습니다.
- 게임 저장 데이터 및 관련 설정 파일을 동일한 플랫폼/세대의 두 번째 본체(예: XBOX Series S와 XBOX Series X 또는 XBOX One과 XBOX One S)에서 성공적으로 다운로드할 수 없습니다.
- 게임 저장 데이터 및 관련 설정 파일을 Windows 플랫폼의 두 번째 PC에서 성공적으로 다운로드할 수 없습니다.
- 세대 간에 동일한 플랫폼에서 동일한 TitleID를 공유하는 본체 게임(예: XBOX One 및 XBOX Series X|S)의 경우 저장 데이터 및 관련 설정 파일을 이러한 디바이스 간에 로밍할 수 없습니다.
- 처음 실행할 때 타이틀이 클라우드의 저장 데이터를 인식하지 못하고, 사용자 조작 없이 이후 두 번째 디바이스에서 덮어쓰여집니다.
- 게임 저장 데이터에 공유 콘텐츠에 대한 종속성이 있습니다.
업적 및 보상
다음 요구 사항은 XBOX 네트워크에서 업적을 제공하는 타이틀에 적용됩니다. XBOX 콘솔을 대상으로 하는 모든 게임은 업적을 제공해야 하며 다음 요구 사항을 충족해야 합니다. 데모에는 업적을 포함할 수 없지만 Hero Stats를 지원하는 옵션은 있습니다.XR-055: 업적 및 게이머스코어 *
타이틀은 출시 시점에 필요한 수(최소 및 최대)의 업적과 관련 게이머스코어를 제공해야 합니다. 타이틀은 출시 후 언제든지 해당하는 새 콘텐츠의 유무와 관계없이 업적이나 게이머스코어를 추가할 수 있지만, 타이틀 기준 또는 달력 기준 한도를 초과할 수는 없습니다. 단일 업적은 200 게이머스코어를 초과할 수 없으며, 타이틀의 모든 업적은 달성 가능해야 합니다. 기본 게임 또는 콘텐츠 업데이트에서 업적을 잠금 해제하는 것은 게임 콘텐츠에 대한 철저한 탐색 또는 참여를 나타내야 합니다.[!Note] “반기”는 1월-6월, 7월-12월을 의미합니다. 기본 게임 업적과 게이머스코어는 반기별 한도에 포함되지 않습니다.업적은 여러 타이틀 간에 공유되어서는 안 됩니다. 단일 타이틀이 동일한 타이틀 ID를 사용하여 여러 디바이스에서 지원되는 경우, 해당 타이틀은 동일한 업적 세트를 공유해야 하며 재량에 따라 디바이스별 업적을 가질 수 있습니다. 업적 이름과 설명에는 PEGI 12, ESRB EVERYONE 10+ 또는 그 이하의 등급에 해당하는 콘텐츠만 포함할 수 있습니다. 업적 이름과 설명에는 일반적으로 욕설로 간주되는 표현을 명확한 텍스트 또는 가려진 형태로 포함할 수 없습니다.
055-01 업적
테스트 단계- 타이틀에서 지원하는 게이머스코어의 양과 총 업적 수를 검토합니다.
- 타이틀을 플레이하면서 가능한 한 많은 업적을 획득하도록 시도합니다.
- 콘솔에서 일시 중단 후 다시 시작한 뒤, 그리고 PC 또는 핸드헬드 디바이스에서 절전 및 최대 절전 모드에서 다시 시작한 뒤 2단계를 반복합니다.
- XBOX 서비스에서 연결이 끊긴 상태로 2단계를 반복합니다.
모든 업적이 해당 조건에 따라 잠금 해제되며, 기본 게임 출시 시 획득 가능한 최대 게이머스코어는 10-100개의 업적에 걸쳐 분배된 1000G입니다. 모든 업적은 게임 콘텐츠에 대한 철저한 탐색 또는 참여를 나타냅니다. 통과 예
- 모든 업적을 획득할 수 있습니다.
- 업적이 해당 조건에 따라 잠금 해제됩니다.
- 모든 업적이 게임 콘텐츠에 대한 철저한 탐색 또는 참여를 나타냅니다.
- 게임의 출시 버전에 10-100개의 업적에 걸쳐 분배된 1000 게이머스코어가 있습니다.
- 조건이 충족되었는데도 업적이 잠금 해제되지 않습니다.
- 조건이 충족되기 전에 업적이 잠금 해제됩니다.
- 업적이 게임 콘텐츠에 대한 철저한 탐색 또는 참여를 나타내지 않습니다.
- 게임을 시작한 후 몇 분 이내에 모든 업적을 잠금 해제할 수 있습니다.
- 핵심 게임플레이 루프의 일부로 필요한 경우가 아닌데도 사용자 입력 없이(또는 최소한의 입력으로) 업적을 잠금 해제할 수 있습니다.
- 게임의 출시 버전에 1000G가 없습니다.
- 게임의 출시 버전에 업적이 10-100개보다 많거나 적습니다.
- 콘솔에서 일시 중단 후 다시 시작하거나 PC 또는 핸드헬드 디바이스에서 절전 또는 최대 절전 모드에서 다시 시작한 후 업적이 잠금 해제되지 않습니다.
- 단일 업적이 200 게이머스코어를 초과합니다.
- XBOX 서비스에 다시 연결한 후 업적이 잠금 해제되지 않습니다.
XR-057: 업적 잠금 해제 *
타이틀은 사용자가 추가 타이틀 내 콘텐츠를 구매하지 않고도 기본 타이틀에 정의된 모든 업적을 획득할 수 있는 방법을 제공해야 합니다. 업적은 게임 내 행동, 게임플레이 및/또는 경험을 통해 잠금 해제되어야 합니다. 타이틀은 해당하는 게임플레이 활동 없이 업적을 직접 잠금 해제하는 대체 옵션을 플레이어에게 제공해서는 안 됩니다. 허용되지 않는 옵션의 예는 다음과 같으며 이에 국한되지 않습니다.- 실제 금전 구매
- 게임 내 치트 코드, 콘솔 또는 메뉴 옵션
057-01 기본 업적에 추가 구매 불필요
테스트 단계- 기본 타이틀의 업적 설명을 검토합니다.
- 업적에 추가 구매나 콘텐츠가 필요하지 않은지 확인합니다.
- 모든 업적을 획득합니다.
추가 타이틀 내 콘텐츠를 구매하지 않고도 모든 업적을 획득할 수 있습니다. 통과 예
- 추가 타이틀 내 콘텐츠를 구매하지 않고도 모든 업적을 획득할 수 있습니다.
- 추가 타이틀 내 콘텐츠가 필요한 업적이 없습니다.
- 기본 타이틀에 정의된 업적을 잠금 해제하려면 사용자가 추가 타이틀 내 콘텐츠를 구매해야 합니다.
멀티플레이어 세션
이 범주의 요구 사항은 XBOX에서 멀티플레이어 세션을 제공하는 게임 타이틀과 관련이 있습니다. XBOX는 멀티플레이어 세션을 찾고 해당 세션을 찾는 데 사용되는 매개 변수를 미세 조정하는 일관되고 간단한 방법을 제공합니다.XR-064: 참가 가능한 게임 세션 및 온라인 플레이 *
참가 가능한 멀티플레이어 또는 협동 경험을 제공하는 타이틀은 MPA(Multiplayer Activity) 기능을 사용하여 XBOX 셸 인터페이스를 통해 참가 가능 여부를 알려야 합니다. 참가 가능한 활동을 알리면 플레이어가 크로스 네트워크 플레이어가 있는 시나리오를 포함하여 XBOX 셸(예: 친구 목록, 게이머 카드 및 Game Bar)을 통해 참가하고 초대를 주고받을 수 있습니다.추가 정보
참가 가능한 경험이란 협동 캠페인, 드롭인 멀티플레이어 또는 소셜 공간과 같이 다른 플레이어가 합리적으로 참가할 수 있는 모든 온라인 세션을 말합니다. 타이틀이 MPA를 통해 참가 가능한 활동을 알리면 XBOX 셸은 친구가 직접 참가하거나 셸에서 초대받을 수 있도록 해당 세션을 표시합니다. 타이틀은 플레이어가 더 이상 참가 가능하지 않을 때 알린 활동을 지워서 셸이 들어갈 수 없는 세션을 표시하지 않도록 해야 합니다. 참가를 완료할 수 없는 경우 타이틀은 플레이어에게 그 이유(예: 세션이 가득 찼거나 다운로드 가능 콘텐츠가 필요함)를 메시지로 알려야 합니다. XBOX 셸은 세션 용량을 강제하지 않으므로 플레이어 수를 관리하고 세션이 가득 찼을 때 참가를 거부하거나 대기열에 넣는 것은 타이틀의 책임입니다. 매치메이킹을 통해서만 참가를 지원하는 타이틀(예: 랭크 매치)은 XBOX 셸을 통해 참가 가능 여부를 알릴 필요가 없습니다. 타이틀은 플레이어에게 명확하게 메시지를 전달하는 경우 필수 다운로드 가능 콘텐츠와 같은 전제 조건에 따라 참가를 제한할 수 있습니다.초대
XBOX 셸에서 보낸 플랫폼 초대는 참가 가능한 세션에 대해 항상 사용할 수 있어야 합니다. 게임 내 초대는 권장되지만 필수 요구 사항은 아닙니다. 타이틀은 플레이어가 셸을 통해 다른 사람을 초대하기 전에 게임 내 초대 메커니즘을 제공할 필요가 없습니다. 타이틀이 게임 내 초대 메커니즘을 제공하는 경우, 해당 메커니즘은 수신자가 XBOX 셸 알림을 통해 초대를 받을 수 있도록 XBOX 플랫폼을 통해 초대를 라우팅해야 합니다. 타이틀은 초대를 보낼 수 있는 사람을 제한할 수 있으며(예: 호스트 또는 팀 주장만), 플레이어의 XBOX 친구 중 일부만 표시할 수 있습니다. 프랜차이즈, 클럽 또는 클랜 내에서만 참가 가능한 타이틀은 그에 따라 초대 범위를 지정할 수 있습니다.구현 지침 및 모범 사례
MPA(Multiplayer Activity) 기능을 사용하여 참가 가능한 활동을 알리고 초대를 보내고 수락하세요. 동일한 목적으로 MPA를 레거시 MPSD(Multiplayer Session Directory)와 혼합하지 마세요. 둘 다 유지하면 중복 레코드와 참가 충돌이 발생할 수 있습니다. 세션이 참가 불가능해질 때마다 활동을 지우고, 플랫폼 초대와 게임 내 초대가 일관되게 동작하도록 XBOX 플랫폼 초대 API를 사용하세요. GDK를 사용하여 참가 가능한 활동을 알리고 초대를 보내는 방법에 대한 자세한 내용은 Multiplayer Activity 개요를 참조하세요.064-01 게임 외부에서 게임 세션 참가
구성- XBOX 프로필 2개
- 디바이스 1 프로필 A - 프로필 B와 친구
- 디바이스 2 프로필 B - 프로필 A와 친구
- 프로필 A를 사용하여 참가 가능한 게임 세션을 만듭니다.
- 타이틀을 실행하지 않은 프로필 B를 사용하여 XBOX 셸 인터페이스를 통해 친구 목록에 액세스하고 프로필 A가 참가 가능으로 나열되어 있는지 확인합니다.
- 일부 게임은 비공개 멀티플레이어 세션만 지원하므로 프로필 B에 참가 가능으로 표시되지 않을 수 있습니다. 이 경우 6단계로 이동하세요.
- 프로필 B가 프로필 A의 게임에 참가합니다.
- 두 프로필이 함께 게임 경험에 배치되는지 확인합니다.
- 콘솔에서 타이틀이 일시 중단된 상태일 때, 그리고 PC 또는 핸드헬드 디바이스에서 시스템이 절전 또는 최대 절전 모드일 때 프로필 B로 1-4단계를 반복합니다.
- 1-5단계를 반복하되, 이번에는 프로필 B가 친구 목록을 통해 참가하는 대신 프로필 A가 시스템 셸을 통해 프로필 B에게 게임 초대를 보내고, 프로필 B가 초대를 받고 수락하여 프로필 A에 참가할 수 있는지 확인합니다.
사용자 B는 사용자 A의 게임에 참가하여 함께 게임 경험을 진행할 수 있어야 합니다. 비공개 멀티플레이어 세션만 지원하여 프로필 B에 참가 가능으로 표시되지 않는 게임의 경우, 초대가 프로필 A에 참가하는 유일한 메커니즘이어도 허용됩니다. 매치메이킹을 통해서만 세션 참가를 지원하는 멀티플레이어 게임 세션(예: 랭크 매치)의 경우, XBOX 셸 인터페이스를 통한 참가를 지원하지 않아도 허용됩니다. 크로스 플랫폼 멀티플레이어를 지원하는 타이틀의 경우, 사용자는 XBOX One 콘솔과 PC 간에 참가할 수 있어야 합니다. 통과 예
- 두 프로필이 함께 게임 경험에 배치됩니다.
- 사용자 B가 사용자 A의 게임에 참가하여 함께 게임 경험을 진행할 수 있습니다.
- 게임이 비공개 멀티플레이어 세션만 지원하므로 사용자 A가 XBOX 셸 인터페이스를 통한 친구 목록에 참가 가능으로 표시되지 않지만, 사용자 A는 시스템 셸을 통해 사용자 B에게 게임 초대를 보낼 수 있습니다.
- 매치메이킹을 통해서만 참가를 지원하는 세션(예: 랭크 매치)에 참여하는 동안 사용자 A가 참가 가능으로 표시되지 않으며 XBOX 셸 인터페이스를 통해 게임 초대를 보낼 수 없습니다.
- 사용자 B가 사용자 A의 게임에 성공적으로 참가하지 못하고 게임 경험에 배치되지 않습니다.
- 게임이 비공개 멀티플레이어 세션만 지원하므로 사용자 A가 XBOX 셸 인터페이스를 통한 친구 목록에 참가 가능으로 표시되지 않으며, 사용자 A가 시스템 셸을 통해 사용자 B에게 게임 초대를 보낼 수 없습니다.
064-02 같은 게임에서 게임 세션 참가
구성- XBOX 프로필 2개
- 디바이스 1 프로필 A - 프로필 B와 친구
- 디바이스 2 프로필 B - 프로필 A와 친구
- 프로필 A를 사용하여 타이틀을 실행하고 타이틀 내에서 참가 가능한 게임 세션을 만듭니다.
- 프로필 B를 사용하여 같은 타이틀을 실행하고 타이틀 내의 경험에 들어갑니다.
- 프로필 B를 사용하여 XBOX 셸 인터페이스를 통해 친구 목록에 액세스하고 프로필 A의 게임에 참가하도록 선택합니다.
- 일부 게임은 비공개 멀티플레이어 세션만 지원하므로 프로필 B에 참가 가능으로 표시되지 않을 수 있습니다. 이 경우 5단계로 이동하세요.
- 두 프로필이 함께 게임 경험에 배치되는지 확인합니다.
- 1-4단계를 반복하되, 이번에는 프로필 B가 XBOX 셸 인터페이스를 통해 친구 목록에서 참가하는 대신 프로필 A가 시스템 셸을 통해 프로필 B에게 게임 초대를 보내고, 프로필 B가 초대를 받고 수락하여 프로필 A에 참가할 수 있는지 확인합니다.
사용자 B는 사용자 A의 게임에 참가하여 함께 게임 경험을 진행할 수 있어야 합니다. 비공개 멀티플레이어 세션만 지원하여 프로필 B에 참가 가능으로 표시되지 않는 게임의 경우, 초대가 프로필 A에 참가하는 유일한 메커니즘이어도 허용됩니다. 매치메이킹을 통해서만 세션 참가를 지원하는 멀티플레이어 게임 세션(예: 랭크 매치)의 경우, XBOX 셸 인터페이스를 통한 참가를 지원하지 않아도 허용됩니다. 크로스 플랫폼 멀티플레이어를 지원하는 타이틀의 경우, 사용자는 XBOX One 콘솔과 PC 간에 참가할 수 있어야 합니다. 통과 예
- 두 프로필이 함께 게임 경험에 배치됩니다.
- 사용자 B가 사용자 A의 게임에 참가하여 함께 게임 경험을 진행할 수 있습니다.
- 게임이 비공개 멀티플레이어 세션만 지원하므로 사용자 A가 XBOX 셸 인터페이스를 통한 친구 목록에 참가 가능으로 표시되지 않지만, 사용자 A는 시스템 셸을 통해 사용자 B에게 게임 초대를 보낼 수 있습니다.
- 매치메이킹을 통해서만 참가를 지원하는 세션(예: 랭크 매치)에 참여하는 동안 사용자 A가 참가 가능으로 표시되지 않으며 XBOX 셸 인터페이스를 통해 게임 초대를 보낼 수 없습니다.
- 사용자 B가 사용자 A의 게임에 성공적으로 참가하지 못하고 게임 경험에 배치되지 않습니다.
- 게임이 비공개 멀티플레이어 세션만 지원하므로 사용자 A가 XBOX 셸 인터페이스를 통한 친구 목록에 참가 가능으로 표시되지 않으며, 사용자 A가 시스템 셸을 통해 사용자 B에게 게임 초대를 보낼 수 없습니다.
064-03 게임 내 초대
이 테스트 사례는 게임 내 초대 메커니즘을 제공하는 타이틀에만 적용됩니다. 구성- 각각 다른 디바이스에 로그인한 XBOX 프로필 2개
- 디바이스 1 프로필 A - 프로필 B와 친구
- 디바이스 2 프로필 B - 프로필 A와 친구
- 사용자 A와 B를 각자의 디바이스에 로그인합니다.
- 두 사용자 모두 타이틀을 실행합니다.
- 사용자 A가 게임 세션을 만들고 초대를 보내는 게임 내 옵션을 찾습니다.
- 사용자 A가 사용자 B에게 게임 초대를 보냅니다.
- 프로필 B가 다음 각 영역에서 초대를 수락하여 프로필 A의 게임 세션에 참가합니다.
- 초기 부팅 시퀀스부터 초기 대화형 상태까지의 모든 지점
- 주 메뉴(있는 경우)
- 싱글 플레이어 게임플레이 중(있는 경우)
- 멀티플레이어 게임플레이 중(있는 경우)
- 주 메뉴에서 타이틀이 콘솔에서 일시 중단된 상태이거나 PC 또는 핸드헬드 디바이스에서 절전 또는 최대 절전 모드인 경우(있는 경우)
- 싱글 플레이어 게임플레이 중 타이틀이 콘솔에서 일시 중단된 상태이거나 PC 또는 핸드헬드 디바이스에서 절전 또는 최대 절전 모드인 경우(있는 경우)
- 주 메뉴에서 타이틀이 제한 모드 상태인 경우(있는 경우)
- 게임플레이 중 타이틀이 제한 모드 상태인 경우(있는 경우)
- 각 초대 후 두 프로필이 함께 게임 경험에 배치되는지 확인합니다.
타이틀이 게임 내 초대 메커니즘을 제공하는 경우, 해당 메커니즘은 프로필 B가 XBOX 셸 알림을 통해 초대를 받고 프로필 A가 호스트하는 세션에 참가할 수 있도록 XBOX 플랫폼을 통해 초대를 라우팅해야 합니다. 타이틀이 세션에 초대를 보낼 수 있는 사람을 제한하는 것은 허용됩니다(예: 팀 게임에서 팀 주장만). 타이틀은 이 상황에서 파괴적 작업 확인 방식을 취할 필요가 없습니다. 타이틀은 초대 또는 참가 작업이 수행되는 것을 막을 수 없으므로, 해당 작업이 타이틀에 파괴적인 영향을 미치더라도 확인을 요청할 필요가 없습니다. 크로스 플랫폼 멀티플레이어를 지원하는 타이틀의 경우, 사용자는 XBOX One 콘솔과 PC 간에 초대를 통해 세션에 참가할 수 있어야 합니다. 통과 예
- 게임 내 초대 옵션이 XBOX 플랫폼을 통해 초대를 라우팅하고, 프로필 B가 XBOX 셸을 통해 초대를 받고 수락합니다.
- 게임 중에 게임 초대를 수락할 때 플레이어에게 파괴적 작업 확인 메시지가 표시되지 않습니다.
- 초대는 완료되지만 필수 DLC가 디바이스에 없으면 세션을 시작/실행할 수 없습니다. 이 내용이 플레이어에게 명확하게 메시지로 전달됩니다.
- 호스트가 누구인지 명확한 경우, 게임 세션의 호스트만 초대를 보낼 수 있습니다.
- 게임 내 초대 메커니즘이 XBOX 플랫폼을 통해 초대를 라우팅하지 않아 프로필 B가 XBOX 셸을 통해 초대를 받지 못합니다.
- 게임 초대를 수락한 후 활성 플레이어가 초대받은 게임 세션으로 이동하지 않습니다.
- 필수 DLC가 디바이스에 없으면 초대가 완료되지 않으며, 이 내용이 플레이어에게 메시지로 전달되지 않습니다.
064-04 참가할 수 없는 게임
구성- 각각 다른 디바이스에 로그인한 XBOX 프로필 3개
- 디바이스 1 프로필 A - 프로필 B 및 C와 친구
- 디바이스 2 프로필 B - 프로필 A와 친구
- 디바이스 3 프로필 C - 프로필 A와 친구
- 프로필 A를 사용하여 타이틀을 실행하고 참가 가능한 게임 세션을 만듭니다.
- 프로필 A를 사용하여 프로필 B와 C를 게임에 초대합니다.
- 프로필 A를 사용하여 A가 참가한 후 남은 슬롯이 하나만 있도록 게임 세션에 들어갑니다.
- 프로필 B를 사용하여 초대를 수락합니다.
- 프로필 A와 B가 함께 플레이하고 있는지 확인합니다.
- 프로필 C를 사용하여 초대를 수락하고 게임 세션에 참가를 시도합니다.
프로필 C에 다음 참가 기회까지 기다리도록 요청하거나, 프로필 C에 게임 세션 참가 실패 이유를 메시지로 알립니다. 통과 예
- 프로필 C에 다음 참가 기회까지 기다리도록 요청합니다.
- 프로필 C에 게임 세션 참가 실패 이유를 메시지로 알립니다.
- 프로필 C에 다음 참가 기회까지 기다리도록 요청하지 않으며, 프로필 C에 참가 실패에 대한 메시지도 전달되지 않습니다.
XR-067: 최근 함께 플레이한 플레이어 상호 작용 유지 *
온라인 멀티플레이어 기능이 있는 타이틀은 MPA(Multiplayer Activity) Recent Players 기능을 사용하여 XBOX 네트워크에서 의미 있는 플레이어 상호 작용을 기록해야 합니다. 상호 작용을 기록하면 XBOX 네트워크가 어떤 플레이어가 함께 플레이했는지 알 수 있으므로 플랫폼이 최근 함께 플레이한 플레이어 목록, 플레이어 피드백 및 사용 보고를 제공할 수 있습니다. 레거시 MPSD(Multiplayer Session Directory)를 계속 사용하는 타이틀의 경우, 세션 상태 정보를 대신 MPSD에서 유지할 수 있습니다. 이 목적으로 MPA Recent Players와 MPSD를 모두 사용하지 마세요. 둘 다 유지하면 중복 레코드가 생성될 수 있습니다.067-01 최근 함께 플레이한 플레이어 상호 작용
테스트 단계- XBOX 프로필로 로그인하고 여러 디바이스에서 타이틀을 실행합니다.
- 모든 플레이어와 함께 XBOX 게임 세션을 완료합니다.
- 홈으로 돌아가 최근 함께 플레이한 플레이어 목록을 보고 게임 세션의 모든 플레이어가 포함되어 있는지 확인합니다.
- 1-3단계를 몇 번 더 반복하되, 이번에는 매번 새 계정을 사용합니다.
- 1-4단계를 반복하되, 이번에는 한 명 이상의 플레이어가 게임플레이 중에 나가도록 하고 2단계에서 해당 프로필이 여전히 최근 함께 플레이한 플레이어 목록에 표시되는지 확인합니다.
사용자는 최근 플레이한 모든 게임 세션의 모든 플레이어를 검토할 수 있어야 합니다. 통과 예
- 모든 프로필이 디바이스의 최근 함께 플레이한 플레이어 목록에 포함됩니다.
- 일부 프로필이 디바이스의 최근 함께 플레이한 플레이어 목록에 포함되지 않습니다.
- 멀티플레이어 게임플레이 중에 나간 사용자가 최근 함께 플레이한 플레이어 목록에 표시되지 않습니다.
XR-070: 친구 목록 *
타이틀은 XBOX 네트워크 친구 목록을 기본 친구 목록으로 사용해야 합니다. 타이틀은 XBOX API에서 친구 목록을 가져와야 하며 게임 서버에 친구 목록을 영구적으로 저장해서는 안 됩니다. 타이틀은 XBOX 네트워크에 없거나 사용자의 XBOX 네트워크 친구 목록에 없는 플레이어를 위해 중앙 타이틀 계정의 보조 친구 목록을 표시할 수 있습니다. 디자인에 따라 타이틀은 XBOX 네트워크 친구와 게시자 계정 친구를 모두 한곳에 포함하는 혼합 친구 목록 경험을 만들 수 있습니다. 이 경우 아이콘이나 기타 구분 표시를 사용하여 XBOX 친구와 다른 네트워크의 친구를 구별해야 합니다. GDK를 사용하여 친구 목록을 사용하는 방법에 대한 자세한 내용은 People System(친구 목록) 개요를 참조하세요.070-01 XBOX 친구 목록
테스트 단계- 타이틀 내에 표시되는 모든 사람 목록을 찾아 XBOX 네트워크 친구 목록이 포함되어 있는지 확인합니다.
- 타이틀이 XBOX 네트워크 친구와 게시자 계정 친구를 모두 포함하는 혼합 친구 목록을 지원하는 경우, 아이콘이나 기타 구분 표시로 구별되는지 확인합니다.
타이틀은 XBOX API를 사용하여 XBOX 네트워크 친구 목록을 기본 친구 목록으로 사용해야 하며 게임 서버에 영구적으로 저장해서는 안 됩니다. 타이틀은 XBOX 네트워크 친구와 게시자 계정 친구를 모두 포함하는 혼합 친구 목록을 표시할 때 친구를 구별해야 합니다. 통과 예
- 타이틀이 XBOX API를 사용하여 XBOX 네트워크 친구 목록을 기본 친구 목록으로 사용합니다.
- 타이틀에 최근 플레이어나 길드 멤버와 같이 사용자의 핵심 목록으로 배치되지 않은 대체 사람 목록이 있습니다.
- 타이틀이 해당 타이틀을 플레이한 친구만 표시하도록 필터링된 친구 목록을 표시하며, 경우에 따라 현재 온라인 상태이거나 현재 온라인 상태이면서 타이틀에서 활동 중인 친구만 표시합니다.
- 타이틀이 XBOX 네트워크 친구와 게시자 계정 친구를 모두 포함하는 혼합 친구 목록을 표시하고 아이콘이나 기타 구분 표시로 구별합니다.
- 타이틀이 XBOX API를 사용하여 친구 목록을 표시하지 않습니다.
- 타이틀이 게임 서버에 친구 목록을 영구적으로 저장합니다.
- 타이틀이 XBOX 네트워크 친구와 게시자 계정 친구를 모두 포함하는 혼합 친구 목록을 표시하면서 이를 구별하지 않습니다.
베타 및 Game Preview
이 범주의 요구 사항은 베타 또는 Game Preview로 분류된 타이틀에만 적용됩니다. 기타 스토어 정책과 공개 및 비공개 베타의 프로그램별 정의, 크기 제한, 기간, 가격, 메타데이터 및 제안에 대해서는 Microsoft 담당자에게 문의하세요. 베타 및 Game Preview 타이틀에는 이 문서에 제시된 XR 중 일부가 적용됩니다. 이 하위 집합의 범위는 Game Preview 및 베타에 대한 XBOX 요구 사항 페이지에 자세히 설명되어 있습니다.XR-117: 베타/Game Preview 알림 *
베타 단계에 있는 타이틀은 실행 후 게임플레이 또는 애플리케이션 사용 전에 경험 내에서 다음 내용을 전달하는 시작 화면 또는 메시지를 표시해야 합니다.- 타이틀이 베타/시험판 소프트웨어입니다.
- 일부 플랫폼 기능이 올바르게 작동하지 않을 수 있습니다.
- 일부 게임 기능이 올바르게 작동하지 않을 수 있으며 크래시가 발생할 수 있습니다.
117-01 사용자에 대한 베타/Game Preview 알림
테스트 단계- XBOX 프로필로 로그인하고 타이틀을 실행합니다.
- 사용자가 게임플레이 또는 애플리케이션 사용에 참여하기 전에 최소한 다음 내용을 전달하는 메시지가 표시되는지 확인합니다.
- 타이틀이 베타/시험판 소프트웨어입니다.
- 일부 플랫폼 기능이 올바르게 작동하지 않을 수 있습니다.
- 일부 게임 기능이 올바르게 작동하지 않을 수 있으며 크래시가 발생할 수 있습니다.
- 알림에는 타이틀의 지원 범위도 명시해야 합니다.
타이틀은 해당 타이틀이 베타/시험판이며 완전히 예상대로 작동하지 않을 수 있음을 사용자에게 알려야 합니다. 통과 예
- 사용자가 타이틀 내 기능을 사용하기 전에 타이틀의 베타/시험판 상태에 대한 알림을 받습니다.
- 타이틀이 사용자에게 타이틀의 베타/시험판 상태를 알리는 메시지를 표시하지 않습니다.
- 사용자가 베타/시험판 상태에 관한 타이틀의 알림을 보기 전에 타이틀 기능에 액세스할 수 있습니다.
BVT: 빌드의 사전 인증 테스트
다음 테스트는 타이틀이 XBOX 인증 테스트를 받을 준비가 되었는지 확인하는 데 사용됩니다.BVT-01 빌드 안정성
테스트 단계- 타이틀을 실행하고 모든 메뉴를 탐색한 후 게임플레이에 들어갑니다.
- 다른 BVT를 수행하는 동안 발견된 안정성 문제를 재현해 봅니다.
타이틀에 타이틀의 전체 XR 테스트를 차단할 수 있는 안정성 문제나 긴 로드 시간이 없어야 합니다.
BVT-02 매치메이킹
테스트 단계- 콘솔 1: 가장 기본적인 XBOX 게임 모드를 선택하고 XBOX 게임 세션을 호스트합니다.
- 콘솔 2: 빠른 매치를 사용하여 콘솔 1의 XBOX 게임 세션에 참가합니다. (게임 세션을 시작하는 데 필요한 최소 콘솔 수가 참가할 때까지 이 단계를 반복합니다.)
- 콘솔 1 및 2: XBOX 게임 세션을 시작하고 완료합니다.
- 지원되는 다른 모든 게임 모드에서 매치메이킹이 작동하고 사용자가 게임플레이에 들어갈 수 있는지 확인합니다.
콘솔 2는 항상 콘솔 1의 게임 세션을 찾아 참가할 수 있어야 합니다. 두 콘솔 모두 연결이 끊기거나 안정성 문제가 발생하지 않고 XBOX 게임 세션을 완료할 수 있어야 합니다.
BVT-03 DLC
테스트 단계- 게임과 함께 제출된 다운로드 가능 콘텐츠를 XBOX Store 또는 게임 내 메커니즘을 사용하여 다운로드할 수 있는지 확인합니다.
- 다운로드한 후 게임에서 해당 콘텐츠를 쉽게 식별할 수 있는지 확인합니다. (제출 자료와 함께 제공되는 자세한 다운로드 가능 콘텐츠 설명은 인증 팀이 다운로드 가능 콘텐츠를 찾는 데 도움이 됩니다.)
타이틀과 함께 제출된 다운로드 가능 콘텐츠는 XBOX Store 또는 게임 내 UI를 사용하여 다운로드할 수 있어야 하며, 다운로드한 후에는 게임에서 쉽게 식별할 수 있어야 합니다.
BVT-05 언어
테스트 단계- XBOX 디바이스 설정 애플리케이션을 통해 언어를 영어로 설정합니다.
- 타이틀을 진행합니다.
- 타이틀이 다음을 충족하는지 확인합니다.
- 크래시가 발생하거나 응답하지 않는 상태가 되지 않습니다.
- 화면에 디버그 출력이 표시되지 않습니다.
- 의도한 모든 영역에서 지역화가 구현되어 있습니다.
- 타이틀에서 지원하는 모든 언어에 대해 1-4단계를 반복합니다.
타이틀에 지원되는 모든 언어가 포함되어 있습니다. 또한 타이틀에 언어별 안정성 문제나 디버그가 없어야 합니다.
BVT-07 기본 구성
테스트 단계- 타이틀을 실행하고 모든 BVT 기능 검사가 작동하기 위해 시간/날짜와 같은 콘솔 설정을 변경할 필요가 없는지 확인합니다.
- 타이틀의 주 메뉴에 도달하는 데 해결 방법이 필요하지 않은지 확인합니다.
타이틀이 인증에 들어갈 때 기본 기능이 작동해야 합니다.
BVT-08 XBOX Store 가용성
필요한 도구:- 개발자 샌드박스에 게시된 게임.
- CERT 및 CERT.DEBUG 샌드박스에 게시된 게임.
- 개발자 샌드박스에 게임을 게시합니다.
- 스토어에서 타이틀을 설치합니다.
- 타이틀을 실행하고 게임플레이에 들어갑니다.
[!Important] 인증에 제출할 때 CERT 및 CERT.DEBUG 샌드박스에 게임을 게시하세요.예상 결과
타이틀은 CERT 및 CERT.DEBUG 샌드박스에서 설치할 수 있어야 합니다.
BVT-09 재제출 조건
테스트 단계- 타이틀에 대한 가장 최근 인증 보고서에서 CFR로 기록된 모든 문제를 재현합니다.
- CFR로 기록된 모든 문제가 수정되었는지 확인합니다. 재현되는 문제는 모두 승인된 예외가 있어야 합니다.
이전 보고서에서 CFR로 표시된 문제는 예외가 승인되지 않은 한 수정되어야 합니다.
예외를 신청하는 단계는 Microsoft 담당자에게 문의하세요.
BVT-10 버전 확인
테스트 단계- 타이틀을 설치합니다.
- 내 게임 및 앱으로 이동하여 타이틀을 강조 표시하고 Menu button을 누른 후 ‘게임 및 추가 기능 관리’를 선택합니다.
- 파일 정보를 선택합니다.
- 설치된 제품의 FullName을 제출 문서/킥오프 메일에 나열된 패키지 이름과 비교합니다.
설치된 XVC의 FullName이 킥오프 메일/제출 문서에 기록된 내용과 정확히 일치합니다.
BVT-12 파트너 호스팅 서비스
테스트 단계- XBOX 프로필로 로그인하고 타이틀을 실행합니다.
- 모든 파트너 호스팅 서비스에 액세스할 수 있는지 확인합니다.
모든 파트너 호스팅 서비스가 테스트용으로 구성되어 있으며 이에 의존하는 모든 기능에 액세스할 수 있습니다.
BVT-13 연령 등급 유효성 검사
구성:- 타이틀은 Final(기본 또는 콘텐츠 업데이트)이어야 합니다.
- Final(기본/콘텐츠 업데이트) - 인증서가 필요한 모든 로캘에 대해 인증서가 필요합니다.
- 범위 외 - DLC, 게임 내 콘텐츠 - 테스트가 필요하지 않습니다.
- 검토할 제출 자료를 사용할 수 있습니다.
- Microsoft Partner Center에서 제품 연령 등급에 액세스할 수 있습니다.
- 다음 문서/정보를 사용할 수 있는지 확인합니다.
- 제출의 XVC에 대한 Submission Validator 로그.
- Partner Center의 연령 등급 선언.
- 연령 등급 인증서.
- Submission Validator 로그 파일을 열고
<component>Manifest-Ratings</component>테스트에 대한 경고나 실패가 표시되지 않는지 확인합니다.- 2020년 5월 11일 이후에 인증된 모든 타이틀: AppxManifest 내에 등급 요소가 있어서는 안 됩니다.
- 2020년 5월 11일 이전에 인증된 타이틀: AppxManifest 내에 등급 요소가 있어도 됩니다.
- Partner Center를 열어 제품의 연령 등급 정보를 검토합니다.
- 표시된 각 값에 대해 연령 등급과 정확히 일치하는 해당 등급 인증서가 제공되었는지 확인합니다.
- 이러한 모든 파일이 제공되어야 하며 이 제출 유형과 관련이 있어야 합니다.
- 모든 등급에 해당하는 인증서가 제공되어야 합니다.
- 2020년 5월 11일 이후 인증 중인 기본 최종 제출에는 AppxManifest에 연령 등급 요소가 정의되어 있어서는 안 됩니다.
- 2020년 5월 11일 이전에 인증된 타이틀의 콘텐츠 업데이트는 등급 요소를 완전히 제거하는 경우를 제외하고 AppxManifest에서 등급을 추가하거나 제거해서는 안 됩니다.
BVT-14 UWP 서비스 구성 유효성 검사
구성 타이틀은 UWP 제출이어야 합니다. 테스트 단계- 이전에 타이틀에 액세스한 적이 없는 XBOX 프로필로 로그인합니다.
- 타이틀을 실행합니다.
- 사용자에게 XBOX 계정 권한을 수락하라는 메시지가 표시되는지 확인합니다.
- 주 메뉴 또는 프런트 엔드 메뉴에서 다음 명령
xbdir "XS:\Program Files\WindowsApps\{XVC}\"을 실행하고 ‘xboxservices.config’ 파일을 검색합니다.
타이틀의 서비스 구성이 테스트용으로 구성되어 있어야 합니다. 통과 예
- 타이틀에 서비스 구성 파일이 포함되어 있으며 새 사용자에게 XBOX 계정 권한을 수락하라는 메시지가 표시됩니다.
- 서비스 구성 파일이 없습니다.
- 서비스 구성 파일이 있지만 0바이트입니다.
- 새 사용자에게 XBOX 계정 권한을 수락하라는 메시지가 표시되지 않습니다.
BVT-15 Intelligent Delivery
테스트 단계- 타이틀의 XVC를 가져와
packageutil chunkinfo [XVC] > chunkinfo.xml명령을 사용하여 Chunkinfo.xml 파일을 생성합니다. - 생성된 chunkinfo.xml을 사용하여 타이틀이 Intelligent Delivery를 지원하는지 확인합니다.
- Intelligent Delivery가 지원되는 경우
xbapp install /[Chunk Parameter] [XVC]명령을 사용하여 다음 각 항목에 대해 새로 설치를 시작합니다./Languages=매개 변수를 사용한 언어 팩(지원되는 다른 언어 청크로 전환하고 시스템 설정 또는 타이틀 내 언어 옵션을 사용하여 추가 언어 팩을 다운로드)/Devices=매개 변수를 사용한 디바이스별 콘텐츠/ContentTypes=매개 변수를 사용한 콘텐츠 유형/Tags=매개 변수를 사용한 주문형 콘텐츠
타이틀이 예상되는 Intelligent Delivery 청크를 올바르게 설치하며 부정적인 영향이 발생하지 않습니다.
