런처

런처는 비디오 게임을 개발하는 파트너를 위해 사용자 지정 가능한 제공 도구입니다. 이 제품은 가상 화폐에서 비디오 스트리밍에 이르는 모든 모듈을 중앙 집중화하면서 컨텐츠 제공 비용을 최적화합니다. 특징:

  • 가상 아이템 및 실제 상품을 스토어에서 판매
  • 사용자 정의 가능한 UI 및 인증 방식을 포함하는 내장형 로그인
  • 사용자 정의 가능한 런처 UI
  • Windows에서 실행
  • 20개 언어로 번역된 UI
  • 런처 업데이트 정보를 사용자에게 자동 전달
  • P2P/CDN 게임 제공 및 업데이트
  • 멀티게임 지원
  • 자동 키 활성화 기능을 사용하여 런처를 통해 게임 구매
  • 엑솔라 게시자 계정에서 구성 가능
  • 뉴스 및 배너 관리
  • 소셜 네트워크 친구
  • 인게임 친구 목록
  • 사용자가 게임 지역 선택 가능
  • 채널링 파트너 브릿지: 게임을 사전 통합된 게임 플랫폼에 원활하게 통합

Note: 특정한 엑솔라 모듈을 이미 설치한 상태에서 런처를 통합하려면 계정 관리자에게 문의하십시오.

통합 플로우

  1. 엑솔라 게시자 계정에 등록합니다.
  2. 프로젝트를 생성합니다.
  3. 런처를 설치합니다.
  4. 런처 UI를 사용자 정의합니다.
  5. 런처 설치 파일을 생성하고 아카이브를 구성합니다.
  6. 엑솔라 업데이트 서버에 구성한 게임을 업로드합니다.
  7. 런처 설치 파일을 신규 사용자에게 전송합니다.

프로젝트 생성

  1. 프로젝트로 이동하고 새 프로젝트 생성을 클릭합니다.
  2. 설치 모드에서:
    1. 프로젝트 이름을 추가합니다.
    2. 링크를 게임 웹 사이트로 설정합니다.

Note: 게시자 계정의 각 프로젝트는 하나의 게임에 해당합니다.

런처 설정

게시자 계정에서 런처 인스턴스를 생성합니다.

  1. 런처 이름을 설정합니다.
  2. UI 언어를 선택합니다.
  3. 사전 지정된 로그인 구성 중 하나를 선택하거나 이름을 전송하여 새로운 로그인 구성을 생성합니다.
  4. 게시자 계정에서 설정한 하나 이상의 프로젝트를 추가합니다.

게시자 계정에서 런처 설정을 완료한 후, 다음을 수행합니다.

  1. GitHub 저장소에서 런처를 복사합니다.
  2. 복사한 저장소의 launcher/win 폴더로 이동하여 config.json파일에서 객체에 대한 값을 지정합니다.

예제

{
   "launcher_project_id": "8c91ecf3-e7b0-46a8-aaf7-4c419ef8ef4b",
   "login_project_id": "bd2e1104-5494-48f9-ac50-98f230062df1",
   "callback_url": "https://callback_url.com",
   "product_name": "Launcher",
   "link_support": "https://support_example.com",
   "link_community": "https://community_example.com",
   "default_p2p_enabled": true,
   "game_autoupdate": false,
   "hide_peer_seed_info": false,
   "hide_email": false,
   "build_number": 1
}

런처 UI 사용자 정의

이미지, 폰터 및 런처 색상 테마를 변경하는 방법:

  1. 복사한 저장소의 launcher/win 폴더로 이동합니다.
  2. UIStyle.json 파일에서 오브젝트 값을 지정합니다.

예제

"error_window": {
  "bg_color": "#313131",
  "text_color": "white",
  "bottom_line_color": "white"
},
"error_report_window": {
  "bg_color": "#313131",
  "header_text_color": "white",
  "error_text_color": "white",
  "send_error_text_color": "#80FFFFFF",
  "bottom_line_color": "white"
},
"game_page": [
  {
    "game_id": 4,
    "bg_game_image": "img/Backgrounds/game_screen_bg.jpg",
    "version_text_color": "#7FFFFFFF",
    "social_text_color": "#7FFFFFFF"
  },
  {
    "game_id": 6,
    "bg_game_image": "img/Backgrounds/div_background.jpg",
    "version_text_color": "#7FFFFFFF",
    "social_text_color": "#7FFFFFFF"
  }
]

런처에서 스토어를 사용자 정의하려면 config.json을 사용하십시오.

이미지 대체

런처, 배경, LoginWindow 등으로 그룹화된 img 폴더에서 런처 이미지를 찾을 수 있습니다. 이미지를 추가하려면 해당 파일을 대체하거나 새로운 파일을 폴더에 추가하고 UIStyle.json에서 링크를 변경하십시오.

예제

로그인 위젯의 백그라운드로 my_custom_bg_image.jpg를 사용하는 방법:

  1. img/LoginWindow에 이미지를 위치시킵니다.
  2. UIStyle.json에서, login_window오브젝트를 찾아
  3. “bg_image”: “img/LoginWindow/login_background.png”“bg_image”: “img/LoginWindow/my_custom_imagemy_custom_image.jpg”로 변경합니다.

Note: 파일명 다음 그리고 예를 들어, login_background@2x.png 확장자 앞에 “@2x” 접두사와 함께 더블 사이즈 이미지를 추가하여 4K 스크린에 런처를 적용할 수 있습니다.

글꼴 변경

런처는 Lato Regular, Medium, Bold 및 Black 글꼴을 사용합니다. 글꼴 파일은 글꼴 폴더에 위치해 있습니다.

글꼴 변경 방법:

  1. 새 글꼴을 글꼴 폴더에 추가합니다.
  2. UIStyle.json에서 다음 라인에 새로운 글꼴에 대한 경로를 지정하십시오.

"fonts": {
    "regular": "fonts/Lato-Regular.ttf",
    "medium": "fonts/Lato-Medium.ttf",
    "bold": "fonts/Lato-Bold.ttf",
    "black": "fonts/Lato-Black.ttf"
}

예제

Lato-Black.ttfMy_Own_Cool_Font.ttf로 변경하는 방법:

  1. My_Own_Cool_Font.ttf글꼴 폴더에 추가합니다.
  2. UIStyle.json에서 My_Own_Cool_Font.ttf에 대한 경로를 다음과 같이 지정합니다.

"fonts": {
        "regular": "fonts/Lato-Regular.ttf",
        "medium": "fonts/Lato-Medium.ttf",
        "bold": "fonts/Lato-Bold.ttf",
        "black": "fonts/My_Own_Cool_Font.fft"
}

색상 변경

런처 UI 요소 색상은 창 및 구성 요소별로 UIStyle.json에 그룹화되어 있습니다. 요소 색상을 변경하려면 해당하는 섹션으로 이동하여 속성값을 편집하십시오.

다음과 같은 색상 형식을 사용할 수 있습니다.

  • SVG 색상. 예시: “white”.
  • #RRGGBB. 예시: “#F13900”.
  • #AARRGGBB. 예시: “#40FFFFFF”.
  • 예제

    설정 창 배경을 붉은색으로 변경하는 방법:

    1. UIStyle.json을 열고 settings_screen 객체를 검색합니다.
    2. bg_color“bg_color”으로 변경하는 방법: “#FF0000”.

    스토어 사용자 정의

    런처에 있는 인게임 스토어를 사용자 정의하려면 store 오브젝트를 config.json에 추가하십시오. 표에 지정된 오브젝트 값을 변경할 수 있습니다.

    객체 설명
    id 게시자 계정 프로젝트 ID.
    theme 스토어 색상 테마. ‘default’ 및 ‘dark’ 가능. 기본값은 ‘dark’입니다.
    size 스토어 내 요소 크기. ‘small’, ‘medium’ 및 ‘large’ 가능. 기본값은 ‘large’입니다.
    view 스토어 내 요소 위치(가로 또는 세로 메뉴). ‘vertical_navigation’ 및 ‘horizontal_navigation’ 가능. 기본값은 ‘horizontal_navigation’입니다.

    예제

    "store": { "id" : 12345, "theme" : "default", "size" : "large", "view" : "horizontal_navigation" } 

    표준 아이콘 변경

    특정 게임 페이지에서 런처를 열 수 있도록 사용자가 시작 메뉴에 바로 가기를 추가할 수 있습니다. 기본적으로 img/GamesIcons 폴더에 있는 defaultIcon.ico 파일이 바로 가기 아이콘으로 사용됩니다.

    다음 방법 중 하나를 사용하여 기본 아이콘을 변경할 수 있습니다.

    • 게시자 계정의 프로젝트 설정에서 새 이미지를 업로드합니다.
    • 새 파일을 img/GamesIcons 폴더로 업로드합니다. 파일 형식은 {publisher_project_id}.ico이며 {publisher_project_id}는 게시자 계정의 프로젝트 ID입니다.

    예: 프로젝트 ID가 ‘12345’인 런처에 12345.ico 아이콘이 추가되었습니다.

    엑솔라 런처에서 스토어 전체를 사용자 정의하려면 본인의 UI 키트 또는 디자인 자산을 계정 관리자에게 보내십시오.

    아카이브 및 설치 도구 생성

    scripts/win/deploy.bat 스크립트는 다음을 생성합니다.

    • 새 사용자에게 전송할 수 있는 런처 설치 도구
    • 사용자에게 자동으로 업데이트를 전달하기 위한 런처 빌드 아카이브.

    다음과 같은 방법으로 deploy.bat을 시작할 수 있습니다.

  • 스크립트 파일을 더블 클릭하면 빌드가 복제된 프로젝트 폴더에서 대상 하위폴더로 이동합니다.
  • 명령줄 프롬프트에서, 추가--out {directory} 키 사용, {directory}는 해당하는 빌드 설치 경로입니다.
  • 예제

    deploy.bat --out C:/Target

    Notice: 설치 파일은 SSH256 인증서로 확인된 디지털 서명으로 검증해야 합니다. Thawte, Verisign/Symantec, Comodo 및 Digicert 등의 인증 기관에서 인증서를 받을 수 있습니다.
    Note: 생성한 런처 빌드 아카이브를 게시자 계정에 업로드해야 합니다.

    게임 빌드 업로드

    게임 빌드를 업데이트 서버로 로딩하려면 빌드 로더 명령줄 유틸리티를 사용합니다.

    빌드 로더 시스템 요구 사항:

    • Windows 7/8/10 64비트 OS
    • 1.6GHz CPU
    • 100MB 여유 RAM
    • 여유 디스크 공간: 빌드 크기의 1.5배

    다음과 같은 인수가 허용됩니다.

    • --init — 유틸리티 초기화
    • --update — 게임 빌드를 서버로 전송
    • --builds-list — 게임 빌드 목록 수집
    • --descr {..} — 빌드 설명 전송
    • --api-key {..} — API 키 전송
    • --game-path {..} — 게임 빌드에 대한 경로 전송

    게임 빌드 업로딩 방법:

    1. 게시자 계정 > 빌드 설정으로 이동합니다.
    2. API 키를 복사합니다.
    3. 빌드 로더를 다운로드하고 설치합니다.
    4. 유틸리티를 초기화합니다.
    5. 서버에 게임 빌드를 업로드합니다.
    6. 게임 빌드를 스테이지에 배치합니다.
    7. 게임 파일을 설정합니다.

    빌드 로더 초기화

    유틸리티를 초기화하려면 이전에 복사한 API 키와 게임 빌드 경로를 전달해야 합니다.

    > xbuild_loader.exe --init --api-key {..} --game-path {..}

    Note: 앞서 언급된 매개변수를 변경하고 싶지 않다면 유틸리티를 한 번만 초기화해야 합니다.

    게임 빌드를 서버로 업로딩

    게임 빌드를 서버로 업로드하려면 빌드 경로를 지정하십시오.

    > xbuild_loader.exe --update --game-path {..}

    유틸리티 초기화 또는 이전 빌드 업로드 시 매개변수를 이미 사용한 경우 이러한 매개변수를 생략할 수 있습니다.

    처음 업로딩할 때 업데이트 서버가 전체 게임 빌드를 수신합니다. 그 이후에는 게임 패치(빌드 로더에 의해 생성)를 수신합니다.

    게임 빌드를 스테이지에 배치하기

    게임 서버에 업로드할 때 게임 빌드가 프로젝트 설정 > 빌드 설정 > 빌드 목록의 게시자 게정에 표시됩니다.

    게임 빌드를 배치할 스테이지를 선택하세요.

    • master: 최종 사용자가 게임을 이용할 수 있습니다.
    • test: 테스트 용도로만 게임을 이용할 수 있습니다.

    Note: 게임을 테스트하려면 콘솔에 전달된 --game_stage test 매개변수로 런처를 시작하세요. 예: launcher.exe -- game_stage test.

    게임 파일 설치

    런처에서 사용자에게 올바른 파일을 전송하도록 하려면 우선 설치 파일을 설치하고 초기화하십시오.

    1. 게시자 계정에서 빌드 설정으로 이동한 다음 게임 파일 설정으로 이동합니다.
    2. 게임을 시작할 파일명과 확장자를 입력합니다(예: coolgame.exe).
    3. 게임 설치 경로를 지정합니다.
    4. Microsoft Visual C++ 2017 Redistributable 등 게임을 출시하는 데 필요한 재배포 가능 패키지를 추가합니다.

    다음 매개변수를 사용하여 런처에서 게임을 전송합니다.

    • --xsolla-locale {locale}: 인터페이스 언어;
    • --xsolla-login-token {token}: 엑솔라 로그인 JWT(JSON 웹 토큰);
    • --xsolla-playfab-token {token}: PlayFab 토큰.

    런처 시스템 요구 사항

    최적의 런처 실행을 위한 권장 구성:

    • Windows 7/8/10 64비트 OS
    • 1.6GHz CPU
    • 300MB 여유 RAM
    • 여유 디스크 공간: 180 MB
    • 최신 버전 DirectX

    레시피

    당사의 레시피를 통해 다음과 같은 런처의 몇 가지 고급 기능을 시도해볼 수 있습니다.

    FAQ

    Q. 제 자신의 런처를 생성할 수 있을 때 엑솔라 런처를 사용해야 하는 이유는 무엇 때문입니까?

    A. 최종 개발 단계 동안 또는 게임을 완료한 경우 런처를 생성하는 데 리소스를 소모할 필요가 없습니다.

    Q. 런처를 이용하는 데 얼마의 비용을 지불해야 합니까?

    A. 런처는 부가 가치 제품입니다. 즉, 런처에 대한 액세스 비용이 표준 엑솔라 요금에 이미 포함되어 있습니다. 엑솔라 CDN(GB 당 $0.01)을 통해 게임 및 업데이트를 제공하려는 경우 추가 비용이 발생할 수 있습니다. 하지만 P2P 밸런싱 시스템을 사용하면 평균 80%의 비용을 절감할 수 있습니다.

    Q. 게임을 작동하려면 런처를 실행해야 하나요?

    A. 런처는 항상 실행되도록 기본 설정되어 있습니다. 게임을 실행하면 런처는 시스템 트레이에 숨겨지므로 리소스를 소모하지 않습니다. 게이머는 런처를 종료할 수 있으며, 실제로 게임을 하는 중에는 연결하지 않으므로 게임이 계속 실행됩니다.

    Q. 엑솔라 런처가 Steam과 어떻게 다릅니까? 어떤 점이 유사합니까?

    A. 엑솔라 런처는 Steam과 게임 사이에서 다리 역할을 수행합니다.

    Q. Steam에서 출시되면 런처에서 모든 것을 다운로드하게 되나요? 아니면 전체 게임 + 런처가 Steam에 업로드되고, 이후 런처에서 추가 업데이트를 가져오게 되나요?

    A. 런처는 위의 작업 중 하나만 수행할 수 있습니다. 최신 버전 게임을 런처에 포함시킨 다음 Steam에서 배포할 수 있으므로 추가 다운로드 작업이 필요하지 않습니다(게임 배포 비용은 Steam에서 부담합니다). 업데이트를 신속하게 제공하려면 런처를 빠른 제공 솔루션으로 사용할 수 있으며, 게임을 런처를 포함하여 Steam에 다시 업로드하지 않아도 됩니다. 따라서, 선택은 귀하에게 달려 있습니다.

    Q. 개발자가 Steam과 독립 실행형 2가지 빌드를 모두 유지해야 하나요? 아니면 동일한 빌드가 Steam에 업로드되나요?

    A. 2개의 별도 빌드가 필요하지 않습니다. 또한, 독립 실행형과 Steam 방식을 모두 제공하는 경우, 런처는 두 플랫폼 사용자 정보를 하나의 데이터베이스로 수집하여 서비스합니다. Steam에서 게임을 처음으로 실행하는 신규 사용자는 등록 절차를 원활하게 마칠 수 있도록 아무것도 사용자에게 요구하지 않는 “원활한 등록” 기능을 이용하거나, Steam 에코시스템 외부의 공식 웹사이트로 이동하여 Steam OpenID를 사용하여 로그인하고 공식/중앙 집중식 커뮤니티의 일원이 되어 포럼에서 대화를 나누고, 새로운 게임을 발견하며, 뉴스를 읽을 수 있습니다.

    Q. 런처를 포함하여 Steam 도구를 사용하고 있지만 CDN 비용은 걱정하지 않습니다. 왜 제가 이러한 위험을 감수해야 합니까?

    A. Steam이 CDN에 대한 비용을 지불하는 동안 엑솔라 런처를 사용할 수 있으며 Steam을 통해 런처에 포함된 게임을 배포할 수 있습니다. 위험은 없고 혜택이 상당히 많습니다. 완전하게 사용자 정의가 가능하므로 런처를 통해 커뮤니티와 의사소통할 수 있습니다. 사용자 스토리지도 수집할 수 있으므로 Steam 생태계 외부에 있는 이러한 대상과 연락할 수 있고 이러한 생태계의 팬과 의사소통할 수 있습니다.

    Q. 런처와 사전 통합된 CDN 목록이 있습니까? 추가 통합을 위해 CDN을 제공하는 회사에 문의해야 합니까? 목록에 없는 CDN을 사용할 수 있습니까?

    A. 예, 엑솔라에는 사전 통합된 CDN 목록(G-Core Labs, Akamai)이 있습니다. 파트너는 엑솔라 런처와 미리 통합된 CDN 공급 업체에 연락할 필요가 없습니다. 다른 CDN을 사용하기 원하는 경우 계정 관리자에게 문의하십시오.

    Q. Solid State Network를 사용하면 안되는 이유는 무엇입니까?

    A. Solid State Network의 주요 비즈니스는 CDN이므로 런처 솔루션은 CDN 비용을 최적화하도록 설계되지 않았습니다.

    Q. 런처에 IPC 솔루션 혹은 유사 솔루션이 있나요?

    A. 런처에 IPC 통신을 필요로 하는 기능이 없으므로 현재는 IPC가 없습니다. 향후 라이브 스트리밍과 IPC를 요구(SDK 사용)하는 오버레이에 게임 스토어 등을 추가할 예정입니다.

    Q. 엑솔라 런처 사용자는 게임에 어떻게 액세스할 수 있습니까? 구독, 쿠폰 또는 프로모션 코드를 통해 게임을 배포할 수 있습니까?

    A. 현재 사용자만 게임 키를 사용하여 게임에 액세스할 수 있습니다.

    Q. 엑솔라 런처 사용자가 게임 키를 구매하지 않은 경우 게임 업데이트를 다운로드할 수 있습니까?

    A. 아니요. 게임 키를 구매하지 않으면 게임 및 게임 업데이트를 사용할 수 없습니다.

    Q. P2P 연결을 통해 동일한 LAN에 있는 PC를 연결하는 솔루션이 있습니까? 따라서 이 LAN 내에서만 데이터가 전송됩니까?

    A. 아니요, 현재 이에 대한 솔루션이 없습니다.

    Q. 엑솔라 런처가 액세스 수준을 지원합니까? (예: 테스트의 경우 “alpha” 및 최종 사용자의 경우”beta”)

    A. 예, 엑솔라 런처는 액세스 레벨을 지원합니다. 게임 빌드 업로딩 시 시험을 위해 test 또는 최종 사용자를 위해 master 중 하나를 선택할 수 있습니다. stage=test에서 게시한 게임과 함께 런처를 시작하려면 --game_stage test 매개변수를 콘솔로 전송해야 합니다. 예: launcher.exe --game_stage test.

    Q. 엑솔라 런처의 게임 목록에 표시되는 게임은 무엇입니까? 추가된 모든 게임이 표시됩니까? 아니면 사용자가 구매한 게임만 표시됩니까?

    A. 목록에는 런처에 추가한 모든 게임이 포함되어 있습니다. 사용자가 구매한 게임에는 플레이 버튼이 있으며 나머지 게임에는 구매 버튼이 있습니다.

    Q. 특정 사용자가 무료 게임 키를 받을 수 있습니까? 어떻게 게임 키를 사용할 수 있습니까?

    A. 예, 게시자 계정에서 게임 키를 다운로드하고 원하는 방식으로 사용자에게 무료로 전달할 수 있습니다. 사용자는 런처에서 자신의 키를 사용할 수 있습니다.

    Q. 사용자가 런처에서 인증한 후 게임에서 자동으로 인증받을 수 있습니까?

    A. 예, 자동 인게임 인증을 위한 솔루션이 있습니다. xsolla-login-token 매개변수를 사용하여 엑솔라 런처의 사용자 데이터를 게임으로 옮겨올 수 있습니다. 사용자 데이터를 얻으려면 매개변수(레시피 참조) 값을 해독하십시오.

    Q. 제가 런처 다운로드 링크를 사용자에게 예를 들어, 게임 키 활성화 지침에 전송할 수 있습니까?

    A. 런처 다운로드 링크는 게임 키 활성화 지침에 포함되어 있지 않습니다. 다운로드 링크를 독립적으로 전송하려면 설치 파일을

    1. 생성하십시오.
    2. 게시자 계정의 게임 키 설정에서, 설치 파일을 DRM Free 배포 패키지로 업로드하십시오.
    게임 구매 후, 사용자는 배포 패키지를 다운로드할 수 있는 링크를 받게 됩니다.