Passer au contenu principal

Déployer et exécuter un serveur Windows dans le cloud

Ce guide explique comment déployer votre build de serveur Windows dans le cloud PlayFab Multiplayer Server (MPS). C’est idéal pour tester et itérer rapidement sur votre serveur de jeu pendant le développement. De nombreux utilisateurs utiliseront des serveurs Linux pour la version de production après avoir effectué leurs tests avec Windows.

Objectifs

  • Déployer un projet dans le cloud.
  • S’y connecter depuis un client de jeu local

Exigences

Instructions

Empaqueter le serveur de jeu

  • [FACULTATIF] Cette section permet d’actualiser les fichiers qu’Unreal génère dans votre projet. C’est utile si vous avez récemment créé ou supprimé des fichiers.
    • Si vous n’avez pas récemment généré votre projet dans la configuration “development editor”, faites-le maintenant
    • Fermez Visual Studio
    • Accédez au fichier {ProjectName}.uproject de votre projet
    • Cliquez avec le bouton droit sur le fichier {ProjectName}.uproject dans votre gestionnaire de fichiers et sélectionnez “Generate Visual Studio Project Files”
    • Rouvrez le fichier {ProjectName}.sln dans Visual Studio
  • Sélectionnez la configuration Development Editor
  • Exécutez votre projet
  • Observez l’éditeur Unreal, qui doit avoir chargé votre projet
  • En haut à gauche du menu de l’éditeur Unreal, sélectionnez File -> Package -> Build Target -> {ProjectName}Server
  • Sélectionnez File -> Package -> Build Configuration -> Shipping
  • Sélectionnez File -> Package -> Windowsx64
  • Sélectionnez un emplacement de sortie {ShippingServerFolder} et mémorisez-le
  • Vous pouvez maintenant utiliser cette version empaquetée de votre serveur de jeu pour effectuer des tests avec LocalMultiplayerAgent
  • Une fois la vérification effectuée avec LocalMultiplayerAgent, consultez le guide de création d’une build
    • À ce stade, les tests sur MPS nécessitent un outil intermédiaire de PlayFab MpsAllocatorSample
    • Cet outil contourne pour l’instant une partie du travail côté client et nous permet d’allouer un serveur sans requête directe du client de jeu
    • La bonne façon de procéder sur un client est un sujet distinct, traité dans le guide d’allocation.
  • Compressez votre build Shipping Server à partir du dossier {ShippingServerFolder} ci-dessus
    • Votre zip doit contenir tout le contenu de {ShippingServerFolder}, éventuellement à la racine du fichier zip
    • [Facultatif] Autrement dit, la racine de votre zip doit contenir {ProjectName}Server.exe (il est conseillé que l’exe ne se trouve pas dans un sous-dossier tel que “WindowsServer”. Recréez votre zip si vous le souhaitez)
  • Familiarisez-vous avec le guide du processus de création de build
  • Les détails propres à chaque configuration sont présentés ci-dessous :

Configurer un serveur dédié Windows sur PlayFab

Cette section explique comment créer une build dans PlayFab MPS, charger votre serveur de jeu et vous y connecter pour la première fois. Vous pouvez également suivre le guide principal de création de serveur de MPS pour des instructions moins spécifiques à Unreal.
  • Accédez à Game Manager -> Multiplayer
  • Sélectionnez New Build
  • Donnez un nom à la build
  • Sélectionnez une machine virtuelle (pour les exemples décrits dans ces guides, l’option recommandée comportant le moins de cœurs suffit)
  • Le nombre de serveurs par machine peut être compris entre 1 et 10 environ
    • L’amélioration/l’augmentation de ce nombre dépend des performances de votre serveur de jeu
    • Vous pouvez utiliser les métriques des machines virtuelles pour mesurer les performances de votre serveur de jeu et l’optimiser afin d’augmenter ce nombre
  • Ignorez Server details pour l’instant (traité à l’étape suivante)
  • Dans le bloc Assets, faites glisser votre fichier zip de la section précédente dans la zone de chargement
    • Si vous effectuez un nouveau lancement, vous pouvez sélectionner Use existing assets
  • Attendez la fin du chargement
  • Ignorez Start Command pour l’instant (traité à l’étape suivante)
  • Dans le bloc Network, définissez le champ Port Name sur gameport
    • Il est obligatoire de définir le port qui sera utilisé pour se connecter à votre serveur de jeu
    • Le GSDK Unreal contient du code qui lit automatiquement ce port et remplace en interne le port hôte du serveur Unreal en fonction de cette valeur
    • Le nom de ce port doit obligatoirement être gameport
  • Passez à l’étape suivante correspondant aux “Server Details” que vous souhaitez configurer

Option 1 : mode processus Windows

Cette option exécute votre ou vos serveurs de jeu sous forme de processus directement sur la machine virtuelle. Vos processus partagent l’accès à l’ensemble de la machine, y compris les ports, les lecteurs, etc. Cette option décompresse votre ressource chargée et exécute la “Start Command” en utilisant l’emplacement de vos fichiers décompressés comme répertoire de travail.
  • Dans Server Details, sélectionnez Process et Windows
  • Dans Assets, définissez la commande de démarrage sur :
    • {ProjectName}Server.exe, ou {ProjectName}Server.exe -log si vous souhaitez générer des fichiers journaux
    • La commande de démarrage est exécutée depuis la ligne de commande, avec vos fichiers de ressources décompressés comme répertoire de travail
    • Si vous avez choisi d’empaqueter votre fichier zip avec des sous-dossiers, vous pouvez spécifier un chemin relatif, par exemple WindowsServer/{ProjectName}Server.exe, pour accéder à votre projet avec un sous-chemin relatif
  • Sélectionnez Add Build
  • Passez directement à la section Configure Regions ci-dessous

Option 2 : mode conteneur Windows

Cette option exécute votre ou vos serveurs de jeu dans des conteneurs Docker, en les isolant les uns des autres. Chaque processus de serveur dispose d’un lecteur virtuel, de ports réseau virtuels, etc., distincts. Cette option décompresse votre ressource dans un chemin de montage que vous définissez, et attend une commande de démarrage sous forme de chemin complet, basé sur le chemin de montage. Prérequis : configurer Docker pour exécuter des conteneurs Windows
  • Dans Server Details, sélectionnez Process et Windows
  • Dans Assets
    • Définissez le Mount Path de votre fichier zip gameServer sur C:\assets (ou une valeur similaire, désignée par {MountPath})
    • Définissez la commande de démarrage sur : {MountPath}\{ProjectName}Server.exe, ou {MountPath}\{ProjectName}Server.exe -log si vous souhaitez générer des fichiers journaux
    • La commande de démarrage doit représenter le chemin complet, dans le conteneur, de votre fichier -Server.exe
    • Si vous avez choisi d’empaqueter votre fichier zip avec des sous-dossiers, vous pouvez spécifier un chemin absolu, par exemple {MountPath}\WindowsServer\{ProjectName}Server.exe, pour accéder à votre projet avec un sous-chemin absolu
  • Sélectionnez Add Build
  • Passez directement à la section Configure Regions ci-dessous

Étapes suivantes

De nombreux utilisateurs voudront tester leur serveur en connectant un client de jeu. D’autres utilisateurs peuvent éventuellement poursuivre en régénérant et en redéployant leurs serveurs à l’aide de conteneurs Linux. Linux réduit les coûts d’hébergement des serveurs pour les déploiements à grande échelle. Sinon, vous pouvez revenir au guide principal du plug-in Unreal GSDK.
Dernière modification le 8 octobre 2026