Steam과 런처를 통합하는 방법

작동 방식

크로스 플랫폼 절차

Steam의 런처와 게임을 통합할 수 있습니다. 엑솔라 런처를 통해 자신의 다른 Steam 게임을 홍보할 수 있습니다.

런처를 Steam과 연동한 경우, Steam을 처음 시작할 때 별도의 애플리케이션으로 사용자의 컴퓨터에 설치됩니다. 이후 런처 작동은 런처가 실행되는 방식에 따라 달라집니다.

  • Steam을 사용하는 경우:
    • 런처가 관리자 페이지에 Steam AppID가 지정된 게임만 표시합니다.
    • 구매 버튼은 Steam 애플리케이션의 게임 페이지와 연결되어 있습니다.
    • 설치 버튼은 Steam 애플리케이션에서 Steam SDK를 통해 게임 설치를 시작합니다.
    • 런처는 인게임 구매를 위해 사용자를 Steam으로 리디렉션합니다.
    • 특정 게임의 런처 프로젝트 설정에서 스토어를 활성화하고 해당 Steam AppID를 제공한 경우, 런처는 Steam에서 해당 게임에서 이용할 수 있는 DLC 정보를 검색하고 엑솔라 런처 스토어에서 이러한 DLC용 카드를 생성합니다. 사용자가 구매 버튼을 클릭하면 Steam 애플리케이션의 아이템 페이지로 리디렉션됩니다.
    • 엑솔라 로그인은 Steam의 사용자 데이터를 사용하여 엑솔라 에코시스템 내에서 사용자 계정을 자동으로 생성합니다. 이를 통해 엑솔라 로그인 데이터베이스의 관리자 페이지에서 모든 런처 사용자를 볼 수 있습니다. 사용자는 Steam 외부에서 런처를 실행할 때 동일한 계정을 사용하고 엑솔라 런처 스토어를 통해 인게임 구매를 할 수 있습니다. 따라서 Steam에서 실행하더라도 엑솔라 런처 스토어를 통해 구매한 아이템에 대한 사용자의 소유권을 엑솔라 API 메소드를 사용하여 확인할 수 있습니다.
    • 사용자가 런처가 시작된 게임이 아닌 다른 게임에서 플레이 버튼을 클릭하면 런처가 닫히고 선택한 게임이 Steam에서 백그라운드로 시작됩니다. 런처는 런처 UI를 표시하지 않고 즉시 게임을 시작합니다. 사용자가 게임을 닫으면 런처 UI가 표시됩니다.

  • 런처의 실행 파일 또는 데스크톱 바로가기를 통해 독립 실행형 애플리케이션으로 사용할 수 있습니다:
    • 런처는 Steam AppID 지정 여부와 관계없이 런처 프로젝트에 추가된 모든 게임을 표시합니다.
알림
관리자 페이지에서 각 게임에 대해 Steam 또는 독립 실행형 중 하나의 실행 방법만 선택할 수 있습니다. 사용자가 두 가지 실행 방법을 모두 사용할 수 있도록 하려면 관리자 페이지에서 두 개의 프로젝트를 생성하고 이를 런처에 추가해야 합니다.
    • 엑솔라 런처 스토어에는 관리자 페이지를 통해 추가된 인게임 아이템이 표시됩니다.
알림
Steam 스토어와 엑솔라 런처 스토어에서 동일한 아이템을 판매하는 경우, Steam 정책의 요구 사항에 따라 가격이 동일해야 합니다.
    • 런처는 Steam을 통해 로컬에 설치된 게임 정보에 액세스할 수 있습니다. Steam을 통해 배포된 게임이 로컬로 설치된 경우 구매 버튼이 플레이 버튼으로 대체됩니다. 사용자가 플레이 버튼을 클릭하면 런처가 Steam을 통해 다시 시작됩니다.

선행 조건

Steam 통합에 필요한 항목:

  • Steam AppID
  • Steamworks의 계정과 게임
  • Steam에 게시하기 위한 게임 빌드
  • 관리자 페이지에서 구성하여 바로 사용할 수 있는 런처

Steamworks의 게임 관리 패널에서 Steam AppID를 확인할 수 있습니다. Steamworks > App Admin 섹션으로 이동하여 프로젝트 이름 옆에서 해당 정보를 볼 수 있습니다.

통합 단계

Steam 플랫폼 설정 및 파일 다운로드

  1. 관리자 페이지에서 프로젝트를 엽니다.
  2. 사이드 메뉴에서 런처를 클릭합니다.
  3. 대시보드에서 런처를 찾고 런처 편집을 클릭합니다.
  4. 설정 섹션으로 이동하여 Steam 플랫폼 로고 오른쪽의 설정하기를 클릭합니다.
  5. Steam 웹 API 키를 입력합니다.
  6. 게임의 Steam App ID를 입력합니다.
  7. 런처 호스트 다운로드를 클릭하여 Windows 혹은 macOS용 LauncherHost.zip 아카이브를 다운로드합니다.
  8. 구성 다운로드를 클릭하여 게임 구성 파일을 다운로드합니다.
  9. 런처 동작 탭으로 이동하여 사용자가 Steam에서 게임을 실행할 때 런처가 수행해야 할 작업을 선택합니다(선택 사항).
    • 런처 실행(기본값)
    • 게임 실행
알림
선택에 관계없이 게임을 종료한 후에도 런처는 계속 표시됩니다.
  1. 사용자 로그인 탭으로 이동하여 로그인 방식을 선택합니다(선택 사항).
    • Steam 계정으로 자동 로그인(기본값)
    • 위젯으로 수동 로그인. 위젯은 런처 생성 시 선택한 로그인 프로젝트를 사용합니다.

런처 설치 프로그램 생성 및 다운로드

런처 설치 프로그램 생성 및 다운로드 방법은 가이드를 참조하세요.

Steam용 게임 빌드 준비

  1. 임의의 디렉터리에 LauncherHost.zip 아카이브(1단계에서 다운로드해야 함)의 압축을 해제합니다. 이 아카이브에는 Steam에 업로드할 게임과 런처를 준비하기 위한 PreparingSteam 디렉터리가 포함되어 있습니다. Windows의 폴더 구조:
    • LauncherHost.exe - LauncherHost 유틸리티용 실행 파일
    • Qt5Core.dll, vcruntime140-140_1.dll, msvcp140-140_1.dll - LauncherHost.exe 유틸리티용 서비스 라이브러리
    • installer - 런처 설치 프로그램용 폴더
  1. MacOS의 폴더 구조:
    • LauncherHost - LauncherHost 유틸리티용 실행 파일
    • Frameworks - LauncherHost 유틸리티 라이브러리용 시스템 폴더
    • installer - 런처 설치 프로그램용 폴더
  1. PreparingSteam 폴더에서 새 폴더를 생성합니다.
  2. 게임 빌드를 해당 폴더에 복사 붙여넣기합니다.
  3. 게임 > 빌드 > 실행 파일 섹션에서 게임 실행 파일 이름(Windows/mac OS)을 설정하고 게임 실행 파일의 상대 경로를 지정합니다.
알림
확장자와 함께 게임 실행 파일의 이름을 지정해야 합니다.
  1. 독립 실행형 런처 설치 프로그램(Windows/macOS)을 설치 프로그램 폴더에 복사 및 붙여넣기합니다.
  2. PreparingSteam 폴더에 Steam 구성 파일을 복사 및 붙여넣기합니다.
  3. Steam에 이미 게임이 있는 경우 LauncherHost.exe 파일 이름을 게임의 실행 파일 이름으로 교체합니다. 앱 및 패키지 > 모든 애플리케이션 > Steamworks 관리자 > 설치 프로그램 > 일반 설치 섹션의 실행 필드에 있는 게임 관리 패널에서 이 정보를 찾을 수 있습니다.
알림
실행 파일을 변경하지 않으려면 통합 디버깅을 위해 LauncherHost.exe 파일의 이름을 게임의 실행 파일 이름으로 교체할 수 있습니다.
  1. 게임 관리 패널에서 ISteamApps::GetLaunchCommandLine()의 사용을 활성화
  1. 퍼블리싱 준비를 클릭하여 자신의 작업과 다른 사용자의 작업 사이에 충돌이 없는지 확인합니다.

Steam에 Windows 게임 빌드 파일 업로드

  1. Steamworks에 로그인한 후 Steamworks SDK를 다운로드합니다.
  2. SDK 아카이브의 압축을 해제합니다.

  1. steamworks_sdk_151\sdk\tools 폴더로 이동한 후 Steam에 게임 빌드를 업로드할 수 있도록 SteamPipeGUI 유틸리티의 압축을 해제합니다.

  1. SteamPipeGUI 유틸리티를 실행합니다.

  1. 설정 창에서 다음 필드를 작성합니다.
    1. App ID 필드에서 게임의 Steam AppID를 지정합니다.
    2. 빌드 설명 필드에서 Steam 관리자 패널에서 알아보기 쉽도록 이 빌드에 대한 짧은 설명을 입력합니다.
    3. Steamworks SDK ContentBuilder Path 필드에서 Steamworks SDK ContentBuilder의 경로를 지정합니다.
    4. Steam 로그인Steam 암호 필드에서 Steamworks 로그인 정보와 암호를 입력합니다.
    1. 디포 추가를 클릭합니다. 빌드 경로 필드에서 게임 빌드 및 런처 설치 프로그램과 함께 PreparingSteam 경로를 지정합니다.
    1. 업로드를 클릭한 후 업로드가 완료되기를 기다립니다.

Steam에 macOS 게임 빌드 파일 업로드

  1. prepairingSteam/installer에서 launcher.dmg를 복사 및 붙여넣기합니다.
  2. prepairingSteam 폴더에서 hostArgs.json을 복사 및 붙여넣기합니다.
  3. Steam에 파일을 업로드합니다.
    1. 압축을 해제한 SteamSDK 폴더를 엽니다.

    1. tools/scripts 폴더로 이동합니다.
    2. app_build_<steam_id>.vdf로 이름을 설정한 vdf 스크립트를 생성합니다. 여기서 <steam_id>는 프로젝트의 Steam ID이자 다음 콘텐츠입니다(3번째 줄의 xxxxxx를 Steam ID로 교체, 11번째 줄의 yyyyyy를 Depot ID로 교체, 이 값은 Steam ID + 1에 해당).
Copy
Full screen
Small screen
    
    
    	"AppID" "xxxxxx" // your AppID
    	"Desc" "This is a simple build script 1" // internal description for this build
    
    	"ContentRoot" "../content/" // root content folder, relative to location of this file
    	"BuildOutput" "../output/" // build output folder for build logs and build cache files
    
    	"Depots"
    	{
    		"yyyyyy" // your DepotID
    		{
    			"FileMapping"
    			{
    				"LocalPath" "*" // all files from contentroot folder
    				"DepotPath" "." // mapped into the root of the depot
    				"recursive" "1" // include all subfolders
    			}
    		}
    	}
    }
    
      1. 변경 사항을 저장합니다.
      2. PrepairingSteam 디렉토리의 콘텐츠를 복사하여 tools/ContentBuilder/Content 폴더에 붙여넣기합니다.
      3. 터미널 콘솔에서 tools/ContentBuilder/builder_osx 폴더로 이동합니다.
      4. ./steamcmd.sh 명령어를 호출하여 초기화와 구성을 시작합니다.
      5. Steam 서버로 빌드를 업로드하는 스크립트를 실행하려면 다음 명령을 호출합니다.
    Copy
    Full screen
    Small screen
      cmd.sh +login <username> <password> +run_app_build_http ../scripts/app_build_{Steam_id}.vdf
      

      Steamworks에 게임 빌드 게시

      1. Steamworks의 게임 관리 패널로 이동합니다.
      2. Steamworks 관리를 클릭하여 애플리케이션 관리자 페이지를 엽니다.

      1. SteamPipes > 빌드 섹션으로 이동합니다.

      1. 새 브랜치를 생성하거나 기본 브랜치를 사용합니다.
      2. 빌드 ID, 업로드 날짜 또는 설명으로 업로드된 빌드를 찾고 브랜치에 빌드를 배치합니다.
      3. 변경 사항 미리 보기를 클릭하여 변경 사항을 봅니다.
      4. 지금 빌드 라이브 설정하기를 클릭합니다.
      이 기사가 도움이 되었나요?
      감사합니다!
      개선해야 할 점이 있을까요? 메시지
      유감입니다
      이 기사가 도움이 안 된 이유를 설명해 주세요. 메시지
      의견을 보내 주셔서 감사드립니다!
      메시지를 검토한 후 사용자 경험 향상에 사용하겠습니다.
      이 페이지 평가
      이 페이지 평가
      개선해야 할 점이 있을까요?

      답하기 원하지 않습니다

      의견을 보내 주셔서 감사드립니다!
      마지막 업데이트: 2024년 1월 22일

      오자 또는 기타 텍스트 오류를 찾으셨나요? 텍스트를 선택하고 컨트롤+엔터를 누르세요.

      문제 보고
      콘텐츠를 항상 검토합니다. 여러분의 피드백은 콘텐츠를 개선에 도움이 됩니다.
      후속 조치를 위해 이메일을 제공해 주세요
      의견을 보내 주셔서 감사드립니다!