Plugin Fish-Networking - Hébergement automatisé de serveurs de jeu - Tutoriel Unity

Nous couvrirons chaque étape pour configurer le netcode gratuit et open source de Fish-Networking en combinaison avec l'hébergement avec Edgegap pour votre projet afin de déployer et d'héberger un serveur de jeu automatisé directement depuis l'éditeur de Unity. Pour mettre votre jeu en ligne et jouable, dans le monde entier, facilement, et en quelques minutes.

Commencez!

Chapitre 1: Exigences

Il y a trois exigences pour s'assurer que tout fonctionne.

Tout d'abord, assurez-vous d'utiliser le dernier plugin Fish-Networking ; au moins la version v3 et supérieure. Il peut être téléchargé directement depuis le magasin d'actifs Unity ou sur GitHub. Un lien direct se trouve dans la description.

Une fois installé et importé Fish-Net depuis le magasin, accédez-y en sélectionnant “Fenêtre” dans le menu du haut, puis sélectionnez “Gestionnaire de packages”.

Dans le menu déroulant, sélectionnez “Mes actifs” pour trouver le plugin Fish-Net.

Pour les nouveaux utilisateurs, nous vous recommandons fortement de regarder les magnifiques tutoriels de la communauté pour utiliser Fish-Net à ses pleines capacités.

Deuxièmement, dans Unity, rendez-vous sur le Hub de Unity pour confirmer que vous avez installé le module “Support de compilation pour serveur dédié Linux” dans votre projet. Sinon, cliquez simplement sur le package et installez-le. Assurez-vous de redémarrer Unity pour éviter des problèmes.

La troisième et dernière exigence est d'installer et d'exécuter Docker. Il conteneurise vos serveurs de jeu pour les aider à se déployer et à fonctionner plus rapidement. Si ce n'est pas encore fait, vous pouvez regarder notre vidéo d'installation de Docker, ou vous rendre sur Docket.com et suivre la procédure d'installation. C'est facile et cela prend seulement quelques minutes. 

Chapitre 2: Fish-Networking  

Maintenant, commençons dans Unity!

Depuis l'éditeur, ouvrons l'un des projets d'exemple de Fish-Net – dans notre exemple, nous allons utiliser la démo Hash Grid, qui est configurée pour les serveurs de jeu dédiés.

Une fois ouvert, sélectionnez l'objet de jeu “Gestionnaire de Réseau” dans la scène, et dans l'inspecteur de composants, confirmez que deux configurations, à savoir “Exécuter en arrière-plan” et “Ne pas détruire au chargement”, sont activées.

En dessous, sous la section “Tugboat”, notez que l'“Adresse Réseau” doit actuellement être définie sur “Local Host”. Cela sera remplacé par l'adresse d'hébergement plus tard, après le déploiement du serveur de jeu Edgegap. De même, la valeur “Port” est probablement définie sur un état par défaut, interne tel que 7112 dans ce cas, qui devra être mise à jour.

Si la section “Tugboat” est manquante, sélectionnez “Ajouter un composant” et tapez Tugboat. Il apparaîtra dans la recherche. 

Chapitre 3: Edgegap  

Dans le menu de navigation supérieur, sélectionnez “Outil” puis cliquez sur “Hébergement Edgegap”, ce qui ouvrira la fenêtre du plugin.

Si Edgegap n'est pas disponible, même s'il est inclus dans Fish-Networking 3.0 et supérieur, la dernière version du plugin peut être téléchargée directement depuis notre page GitHub.

À ce stade, si vous voyez un avertissement “Erreur 400”, cela signifie que vous manquez ou avez une version obsolète de Newtonsoft. Allez dans “Fenêtre”, puis sélectionnez “Gestionnaire de packages”. Sélectionnez le signe plus et choisissez “Ajouter un package par nom”. Collez le nom du package Newtonsoft, que vous pouvez trouver dans la description de cette vidéo YouTube.

Pour fonctionner, vous devez d'abord générer un token.

Pour ce faire, vous devez créer un compte Edgegap. Cliquez sur le bouton “Obtenir un Token” qui ouvrira votre navigateur.

S'inscrire est gratuit et ne prend que quelques secondes. Tout d'abord, sélectionnez “Commencer” en bas, puis depuis l'écran de connexion, saisissez votre e-mail et un mot de passe et acceptez nos conditions. Vous recevrez instantanément un e-mail de vérification. Cliquez sur “Confirmez votre e-mail” pour valider votre compte. Enfin, saisissez le nom de votre organisation et confirmez.   

Ceci est le tableau de bord de l'application Edgegap. Nous vous recommandons fortement de l'explorer à l'aide de la visite, mais nous allons l'ignorer pour cette vidéo. Automatiquement, une fenêtre contextuelle avec votre unique OneClick Token apparaît. Il suffit de le copier en cliquant sur l'icône du presse-papiers et de le coller directement dans la zone de texte du plugin.

Ensuite, sélectionnez vérifier, ce qui confirme que le token est valide. L'onglet “Infos sur l'application” s'ouvre maintenant automatiquement.

Si vous avez déjà une application sur notre plateforme, saisissez son nom dans la zone de texte et chargez-la en tant qu'application existante. Sinon, ce qui est le cas dans ce tutoriel, saisissez simplement le nom de votre projet. Il doit être en minuscules, sans espaces.

Le bouton “Créer une application” est maintenant activé. Sélectionnez-le. Cela ouvre les onglets “Registre de conteneurs” et “Déploiement”.

Le registre de conteneurs est l'endroit où est stocké le conteneur de votre serveur de jeu. Tout ce que vous devez faire est de vous assurer que les types de port et de protocole sont exacts par rapport à ceux de votre transport de netcode, afin de garantir que le serveur écoute correctement les connexions.

Ces informations peuvent être trouvées dans l'onglet inspecteur du gestionnaire de réseau. Voici le port du projet d'exemple de Fish-Net, trouvé sous le transport “Tugboat” mentionné plus tôt dans la vidéo.

Ici, le type de protocole est exact car ce projet d'exemple par Fish-Net utilise UDP.

Si vous n'êtes pas sûr du type de protocole à utiliser, référez-vous à la documentation de votre netcode pour confirmer le transport utilisé, ou sélectionnez l'option appropriée en fonction de votre choix unique.  

“Nouvelle étiquette de version” fait référence à la version unique de votre serveur. Ce champ nécessite votre saisie manuelle. Nous vous recommandons de changer la valeur chaque fois que vous procédez à des mises à jour de votre serveur de jeu.

Pour les utilisateurs avancés, Edgegap offre la possibilité d'utiliser un “Registre de conteneurs personnalisé”. Pour ce tutoriel, nous utiliserons celui par défaut d'Edgegap.

Ensuite, sélectionnez “Construire et pousser”. Cela compile automatiquement le projet en un serveur Linux dédié, puis crée un conteneur Docker qui est déployé dans le registre d'Edgegap.

Ensuite, créez un nouveau déploiement. Sous “État”, vous verrez sa progression. Une fois prêt, une URL apparaît. Copiez-la en cliquant sur le bouton du presse-papiers, puis sous le composant “Tugboat”, remplacez l'actuel “Adresse client” en collant l'URL, et retirez le port et le deux-points.

Remplacez le port par le nouveau port de l'URL d'Edgegap.

Dans l'éditeur à gauche sous “Gestionnaire de réseau”, sélectionnez “canvas HUD réseau” et sous la section “Script”, assurez-vous que l'option “Type de démarrage automatique” est définie sur “Désactivé”.

Enfin, démarrez votre scène de jeu en cliquant sur le bouton lecture en haut de l'éditeur.

Félicitations, votre jeu est maintenant en ligne pour que le monde puisse y jouer!

Chapitre 4: Tests  

Évidemment, testez d'abord les choses.

Dans la scène de jeu, sélectionnez “Client” pour tester si votre déploiement fonctionne avec le serveur de jeu hébergé par Edgegap.

Une fois que vous avez terminé les tests, revenez au plugin Edgegap pour arrêter l'instance du serveur en sélectionnant “Arrêter le serveur”.

Rappelez-vous que si vous souhaitez créer une nouvelle version du serveur de jeu, vous devrez revenir à l'Adresse Client, Port et Type de Démarrage Automatique avec les informations pertinentes pour le serveur de jeu. 

C'est tout pour le plugin Edgegap avec le netcode de Fish-Networking, qui permet aux développeurs de jeux de bénéficier d'un serveur de jeu automatisé et d'un hébergement simple.

La prochaine étape probable dans votre développement de jeu sera de connecter des joueurs. Pour plus d'informations sur le système de matchmaking gratuit, simple et entièrement automatisé d'Edgegap, vous pouvez consulter notre tutoriel.

Ou rejoignez la communauté Discord d'Edgegap pour développer et partager avec des développeurs de jeux comme vous.

Merci d'avoir regardé!