Pular para o conteúdo principal

Código-fonte e cenários no Winter Starfall

Este tutorial contém instruções para baixar e executar o código-fonte do Winter Starfall, além de um passo a passo dos exemplos de código que demonstram as práticas recomendadas para cenários de login e compra.

Download do código-fonte

Pré-requisitos

  • Instale o Node JS
  • Instale o Visual Studio Code

Configuração para desenvolvimento local

  1. Baixe o código-fonte do GitHub.
  2. No VS Code, abra a pasta /website e opte por instalar todas as extensões recomendadas.
  3. No diretório /website, execute npm install para instalar todas as dependências.
  4. Use npm run dev para iniciar o site. Selecione o link oferecido para visualizar o site.

Credenciais do Azure

Para atualizar os segredos AZURE_CREDENTIALS, execute este comando no shell do Portal do Azure: az ad sp create-for-rbac --name "VanguardOutrider2" --role contributor --scopes /subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RESOURCE_GROUP_NAME --json-auth

Fluxo de login

O fluxo de autenticação de jogadores no Winter Starfall tem duas etapas: a chamada de login e as funções pós-login, que são usadas para obter as informações do jogador no serviço e carregá-lo no local correto da história.

Autenticação de jogadores

Para a parte de login, o arquivo use-login.ts define uma função wrapper em TypeScript que lida com os vários métodos de autenticação disponíveis para os jogadores. As linhas 144-169 definem a função de retorno de chamada para fazer login com um endereço de email e chamam as funções pós-login se o login for bem-sucedido.
O jogo oferece 3 métodos recuperáveis de autenticação de jogadores: email, Google e Facebook, para que as contas dos jogadores nunca sejam perdidas. Para obter mais informações, confira Práticas recomendadas de login.

Pós-login: obtendo os dados do jogador

Depois que o token de segurança é obtido, ele é usado para executar as funções pós-login e obter o estado salvo do jogo. As linhas 340-378 definem postLoginFunctions, que chama várias APIs do Economy e do PlayFab Services para carregar o local correto da história, os itens de inventário, a moeda etc. com base no jogador.
  • Primeiro, ClientGetTitleData obtém a chave secreta necessária para todas as chamadas de API
  • Em seguida, EconomySearchItems pesquisa o catálogo em busca de tipos de moeda e item
  • O que é usado como entrada para EconomyGetInventoryItems para retornar os itens de inventário do jogador
  • Depois, ClientGetUserData recupera o valor que armazena o local da história como parte dos dados do jogador.

Fluxo de compra

Em determinados pontos do jogo, o jogador tem a opção de comprar e vender itens de inventário na loja. O fluxo de compra é implementado em outra função wrapper. No arquivo use-store.ts, as linhas 40-69 exibem a loja correta que o jogador encontra em um local específico e preenchem os itens à venda pesquisando o catálogo.
EconomyGetItem é definido em use-playfab.ts nas linhas 423-446, nas quais a API GetItems do PlayFab Economy é usada para pesquisar o catálogo e retornar itens.
Quando uma compra é realizada, é feita uma chamada à API PurchaseInventoryItems. Isso é definido em use-playfab.ts nas linhas 540-565.

Vendendo itens

O fluxo de venda é um exemplo de como usar o CloudScript com Azure Functions para estender a funcionalidade do sistema Economy. SellItem.cs define a função do CloudScript que é executada ao vender um item. As linhas 49-61 são onde a API GetTitleData do PlayFab é usada para retornar o multiplicador da loja e calcular o preço de venda.
A função do CloudScript é então chamada nas linhas 161-187 de use-store.ts.
Para executar o Winter Starfall localmente, você precisará de uma conta do Azure para dar suporte às funções do CloudScript. Você pode se inscrever para uma conta gratuita do Azure e depois seguir as instruções acima para redefinir as credenciais do Azure corretamente.

Confira também

Última modificação em 6 de outubro de 2026