Winter Starfall의 소스 코드와 시나리오
이 튜토리얼에서는 Winter Starfall의 소스 코드를 다운로드하고 실행하는 방법과, 로그인 및 구매 시나리오에서 모범 사례를 보여주는 코드 샘플을 자세히 살펴봅니다.소스 코드 다운로드
사전 요구 사항
- Node JS 설치
- Visual Studio Code 설치
로컬 개발 환경 설정
- GitHub에서 소스 코드를 다운로드합니다.
- VS Code에서
/website폴더를 열고 권장하는 모든 확장을 설치합니다. /website디렉터리에서 npm install을 실행하여 모든 종속성을 설치합니다.npm run dev를 사용하여 사이트를 시작합니다. 사이트를 보려면 제공된 링크를 선택합니다.
Azure 자격 증명
AZURE_CREDENTIALS 시크릿을 업데이트하려면 Azure Portal 셸에서 다음 명령을 실행합니다.az ad sp create-for-rbac --name "VanguardOutrider2" --role contributor --scopes /subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RESOURCE_GROUP_NAME --json-auth
로그인 흐름
Winter Starfall의 플레이어 인증 흐름은 두 단계로 구성됩니다. 로그인 호출 단계와, 서비스에서 플레이어 정보를 가져와 스토리의 올바른 위치로 로드하는 로그인 후 함수 단계입니다.플레이어 인증
로그인 부분의 경우, use-login.tsx 파일은 플레이어에게 제공되는 여러 인증 방식을 처리하는 TypeScript 래퍼 함수를 정의합니다. 144–169행은 이메일 주소로 로그인하는 콜백 함수를 정의하며, 로그인이 성공하면 로그인 후 함수를 호출합니다.로그인 후: 플레이어 데이터 가져오기
보안 토큰을 가져온 후에는 이를 사용하여 저장된 게임 상태를 얻는 로그인 후 함수를 실행합니다. 340–378행에는 postLoginFunctions가 정의되어 있으며, 이 함수는 다양한 Economy 및 PlayFab Services API를 호출하여 플레이어에 따라 올바른 스토리 위치, 인벤토리 아이템, 통화 등을 로드합니다.- 먼저
ClientGetTitleData가 모든 API 호출에 필요한 비밀 키를 가져옵니다. - 그런 다음
EconomySearchItems가 카탈로그에서 통화 및 아이템 유형을 검색합니다. - 이 값은
EconomyGetInventoryItems의 입력으로 사용되어 플레이어의 인벤토리 아이템을 반환합니다. - 그리고
ClientGetUserData가 플레이어 데이터의 일부로 저장된 스토리 위치 값을 검색합니다.
구매 흐름
게임의 특정 지점에서 플레이어는 스토어에서 인벤토리 아이템을 구매하고 판매할 수 있는 옵션을 갖습니다. 구매 흐름은 또 다른 래퍼 함수로 구현됩니다. use-store.tx 파일의 40–69행은 플레이어가 특정 위치에서 만나는 올바른 스토어를 표시하고, 카탈로그를 검색하여 판매 중인 아이템을 채웁니다.EconomyGetItem은 use-playfab.tsx의 423–446행에 정의되어 있으며, 이 안에서 PlayFab Economy API GetItems를 사용해 카탈로그를 검색하고 아이템을 반환합니다.
PurchaseInventoryItems API에 대한 호출이 이루어집니다. 이는 use-playfab.tsx의 540–565행에 정의되어 있습니다.
아이템 판매
판매 흐름은 Azure Functions 기반의 CloudScript를 사용해 Economy 시스템의 기능을 확장하는 방법의 예시입니다. SellItem.cs는 아이템을 판매할 때 실행되는 CloudScript 함수를 정의합니다. 49–61행은 PlayFab의GetTitleData API를 사용해 스토어 배수를 반환하고 판매 가격을 계산하는 부분입니다.
Winter Starfall을 로컬에서 실행하려면 CloudScript 함수를 지원할 Azure 계정이 필요합니다. 무료 Azure 계정에 가입한 다음, 위의 지침에 따라 Azure 자격 증명을 올바르게 재설정할 수 있습니다.
참고 항목
- 로그인 흐름
- 구매 흐름
- Economy V2 문서
- Economy V2에 대해 더 자세히 알아보기 좋은 다음 단계는 크래프팅 게임 튜토리얼을 시도해 보는 것입니다. 이 튜토리얼은 스토어와 인벤토리 함수를 사용하여 샘플 게임을 만드는 데 중점을 둡니다.
