Passer au contenu principal

Code source et scénarios dans Winter Starfall

Ce tutoriel contient des instructions pour télécharger et exécuter le code source de Winter Starfall, ainsi qu’une présentation des exemples de code illustrant les bonnes pratiques pour les scénarios de connexion et d’achat.

Téléchargement du code source

Prérequis

  • Installer Node JS
  • Installer Visual Studio Code

Configuration pour le développement local

  1. Téléchargez le code source depuis GitHub.
  2. Dans VS Code, ouvrez le dossier /website et choisissez d’installer toutes les extensions recommandées.
  3. Dans le répertoire /website, exécutez npm install pour installer toutes les dépendances.
  4. Utilisez npm run dev pour démarrer le site. Sélectionnez le lien proposé pour afficher le site.

Informations d’identification Azure

Pour mettre à jour les secrets AZURE_CREDENTIALS, exécutez cette commande dans l’interpréteur de commandes du portail Azure : az ad sp create-for-rbac --name "VanguardOutrider2" --role contributor --scopes /subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RESOURCE_GROUP_NAME --json-auth

Flux de connexion

Le flux d’authentification des joueurs dans Winter Starfall comporte deux étapes : l’appel de connexion et les fonctions post-connexion, qui servent à obtenir les informations du joueur auprès du service et à le placer au bon endroit de l’histoire.

Authentification des joueurs

Pour la partie connexion, le fichier use-login.ts définit une fonction wrapper TypeScript qui gère les différentes méthodes d’authentification disponibles pour les joueurs. Les lignes 144 à 169 définissent la fonction de rappel pour la connexion avec une adresse e-mail et appellent les fonctions post-connexion si la connexion réussit.
Le jeu propose 3 méthodes récupérables d’authentification des joueurs : e-mail, Google et Facebook, afin que les comptes des joueurs ne soient jamais perdus. Pour plus d’informations, consultez Bonnes pratiques de connexion.

Après la connexion : obtention des données du joueur

Une fois le jeton de sécurité récupéré, il est utilisé pour exécuter les fonctions post-connexion afin d’obtenir l’état de jeu enregistré. Les lignes 340 à 378 définissent postLoginFunctions, qui appelle diverses API Economy et PlayFab Services pour charger le bon emplacement dans l’histoire, les objets d’inventaire, la monnaie, etc. en fonction du joueur.
  • D’abord, ClientGetTitleData obtient la clé secrète nécessaire à tous les appels d’API
  • Ensuite, EconomySearchItems recherche dans le catalogue les types monnaie et objet
  • Ce résultat sert d’entrée à EconomyGetInventoryItems pour renvoyer les objets d’inventaire du joueur
  • Enfin, ClientGetUserData récupère la valeur qui stocke l’emplacement dans l’histoire dans les données du joueur.

Flux d’achat

À certains moments du jeu, le joueur a la possibilité d’acheter et de vendre des objets d’inventaire dans la boutique. Le flux d’achat est implémenté dans une autre fonction wrapper. Dans le fichier use-store.ts, les lignes 40 à 69 affichent la boutique correspondant à l’emplacement où se trouve le joueur et la remplissent avec les objets à vendre en effectuant une recherche dans le catalogue.
EconomyGetItem est défini dans use-playfab.ts aux lignes 423 à 446, où l’API PlayFab Economy GetItems est utilisée pour effectuer une recherche dans le catalogue et renvoyer des objets.
Lorsqu’un achat est effectué, un appel à l’API PurchaseInventoryItems est réalisé. Celui-ci est défini dans use-playfab.ts aux lignes 540 à 565.

Vente d’objets

Le flux de vente illustre comment utiliser CloudScript basé sur Azure Functions pour étendre les fonctionnalités du système Economy. SellItem.cs définit la fonction CloudScript qui s’exécute lors de la vente d’un objet. Aux lignes 49 à 61, l’API GetTitleData de PlayFab est utilisée pour renvoyer le multiplicateur de la boutique et calculer le prix de vente.
La fonction CloudScript est ensuite appelée aux lignes 161 à 187 de use-store.ts.
Pour exécuter Winter Starfall localement, vous aurez besoin d’un compte Azure pour prendre en charge les fonctions CloudScript. Vous pouvez vous inscrire pour obtenir un compte Azure gratuit, puis suivre les instructions ci-dessus pour réinitialiser correctement les informations d’identification Azure.

Voir aussi

Dernière modification le 6 octobre 2026