Comment ajouter un Matchmaking automatique et sans code à n'importe quel jeu multijoueur Unreal ou Unity

Nous couvrirons chaque étape pour configurer le matchmaking sans code d'Edgegap, qui fonctionne à la fois avec Unity Engine et Unreal Engine. Le matchmaking d'Edgegap associe instantanément des joueurs et lance des jeux, de manière simple. Le Matchmaker d'Edgegap est entièrement géré, infiniment personnalisable pour regrouper de manière optimale les joueurs du monde entier.
Commençons!

Partie 1 - Configuration

Tout d'abord, inscrivez-vous pour un compte gratuit sur la plateforme d'Edgegap et créez une application serveur pour votre jeu.

Si vous ne l'avez pas encore fait, nous avons des tutoriels vidéo pour Unreal et Unity, ainsi que les principaux netcodes comme Mirror et le Netcode pour objets de jeu de Unity. Nous avons également des exemples pour commencer, et une documentation détaillée.

Avec une version de l'application téléversée sur la plateforme, rendez-vous sur la page « Matchmaker ».

Partie 2 - Créer un Matchmaker

Cliquez sur « Créer un Matchmaker » et entrez un nom.

Sélectionnez l'exemple qui correspond à votre type de jeu, tel que « Compétitif » pour un jeu de tir à la première personne. Pour la vidéo d'aujourd'hui, nous utiliserons l'exemple simple.

Votre dernière version de l'application, avec tous les détails, est déjà pré-remplie.

Ensuite, cliquez sur « Créer & Démarrer », ce qui pousse le Matchmaker vers notre cluster gratuit et le rend accessible. Ignorez l'avertissement de mise en cache, car il s'adresse principalement aux jeux avec du trafic en direct.

Ça y est, le Matchmaker démarre sur notre plateforme.

Pendant que nous attendons que le processus se termine, explorons la configuration.

Chaque nouvelle version utilise le versionnement sémantique. Comme certains déploiements peuvent entraîner des erreurs, la configuration « nombre maximal de tentatives de déploiement » résout ce problème en réessayant votre déploiement jusqu'à ce max.

« Période d'expiration des tickets » et « période de suppression » garantissent que les crashs inattendus des clients ou les clients ayant abandonné le matchmaking n'impactent pas la file d'attente de votre ticket.

« Profils » est le lieu où les règles de matchmaking de votre jeu multijoueur sont définies. En d'autres termes, c'est la logique pour associer les joueurs ensemble.

Chaque fois qu'un joueur choisit le matchmaking dans le jeu, il crée un ticket qui le place dans l'une de ces files avec ces règles spécifiques.

Si deux tickets ou plus correspondent, ou en d'autres termes si deux joueurs ou plus sont dans la même file, le Matchmaker les libère, et ils sont autorisés à jouer ensemble. Ils sont déployés sur la version de l'application définie dans la section « application ». 

La prochaine partie concerne les « règles ».

Par exemple, vous pourriez permettre aux joueurs de sélectionner des cartes spécifiques, et si vous avez suffisamment de joueurs, le Matchmaker envoie une requête pour déployer un serveur de jeu, ce qui permet aux joueurs de rejoindre et de jouer ensemble.

Chaque règle a trois champs à saisir :

  • Tout d'abord, un nom de votre choix, tel que « taille du match »,

  • Ensuite, un type de règle également connu comme l'opérateur, tel que « nombre de joueurs »,

  • Troisièmement, les attributs de l'opérateur, tels que « cible ». Ici, nous voudrions 2 joueurs dans ce match.

Chaque profil est une variable pouvant inclure différents attributs pour regrouper les joueurs, comme les niveaux de compétence, la localisation ou le mode de jeu. Cela signifie que chaque profil résulte en une file d'attente entièrement séparée dans votre jeu.

Dans cet exemple, nous utilisons également une règle basée sur la latence. C'est une caractéristique unique du Matchmaker d'Edgegap, qui sert à garantir le ping le plus bas possible pour tous les joueurs d'un match.

Notre Matchmaker est maintenant prêt! Jetons un coup d'œil et testons-le en émettant des tickets.

Partie 3 - Détails du Matchmaker (Configurations & Règles)

Une fois que votre Matchmaker a été initialisé, vous pouvez passer en revue les détails de l'instance.

« Statut » indique la santé du service.

« Identifiant » met en évidence l'identifiant unique de votre Matchmaker qui aide Edgegap à résoudre rapidement les problèmes si vous avez besoin d'assistance.

« URL de l'API » est utilisé pour toutes les requêtes des clients du jeu pour se déployer sur le serveur de jeu.

« URL Swagger » est une interface graphique web pratique pour la spécification d'API ouverte où vous pouvez exporter, inspecter et tester le schéma de l'API.

 « Jeton d'authentification » est requis pour toutes les requêtes effectuées par les clients et serveurs de jeu pour l'authentification.

À noter que vous pouvez régénérer le jeton d'authentification, ce qui est particulièrement recommandé en cas de soupçon de violation de sécurité.

Partie 4 - Test du Matchmaker

Maintenant, pour tester votre API, nous allons d'abord copier le « Jeton d'auth » puis naviguer vers l'URL swagger en cliquant sur l'icône « lien externe ».

Une fois que la plateforme Swagger est chargée, sélectionnez « Autoriser » et collez le « Jeton d'auth » dans le champ de valeur fourni plus tôt. Ensuite, cliquez sur « Autoriser » et fermez le menu.

Pour confirmer que cela a fonctionné, faites défiler jusqu'à la section de l'API « Ticket » et sélectionnez le champ « Créer un Ticket de Matchmaking ». Cliquez sur « Essayer ».

Tout d'abord, passez en revue l'exemple. Notez ici que « IP du joueur » est réglé sur null, ce qui signifie qu'il utilisera l'IP de votre machine. Notez également que le profil utilisé est l'« exemple simple » créé plus tôt. Les règles d'optimisation de la latence ont été assignées automatiquement à des valeurs factices.

Pour simuler la requête d'un joueur pour le matchmaking, cliquez sur « exécuter ». Cela crée un ticket, ce qui nous permet d'évaluer la réponse.

Faites défiler jusqu'au « Corps de la réponse » qui nous permet de voir l'ID du Ticket. Assurez-vous de copier cette chaîne pour examiner le ticket dans quelques secondes.

De plus, vous pouvez noter que l'attribution est « nulle » car le ticket vient juste d'être émis, et il manque un second joueur selon les règles que nous avons définies avant de déployer un serveur de jeu.

Ainsi, nous faisons défiler vers le haut pour créer un second ticket en cliquant sur « exécuter ». Cela simule un second joueur pour que le Matchmaker le groupe avec le premier.

Une fois terminé, nous reviendrons en haut et récupérons le Ticket pour examiner notre test. Collez l'ID du Ticket original et sélectionnez « exécuter ».

En revenant au corps de la réponse, nous voyons que le statut a maintenant changé en « Match trouvé », ce qui signifie que les deux tickets ont été trouvés correspondant.

Après rafraîchissement, le statut changera en « Hôte assigné », ce qui signifie que le serveur a été déployé automatiquement.

Sous « attribution », nous voyons qu'un hôte a été assigné, il liste également une URL disponible et met en évidence l'IP publique du serveur, ainsi que les ports externes et internes utilisés pour les clients du jeu. 

En retournant à la plateforme Edgegap, nous pouvons voir que les détails du déploiement sont étiquetés avec les IDs de ticket. Nous pouvons commodément voir la même URL et les mappages de ports. Nous pouvons également voir que le serveur est prêt grâce à l'icône de coche verte.

Ouvrez le serveur dans le navigateur et vous verrez que vous avez connecté les joueurs. Félicitations, votre Matchmaker est maintenant fonctionnel.

[Chapitre 5 – Prochaines étapes du Matchmaker]

L'exemple simple peut suffire à vos besoins.

Pour les jeux avec plusieurs modes de jeu ou les développeurs souhaitant explorer l'expansion des règles pour optimiser leur Matchmaker pour des temps d'attente plus courts, nous vous recommandons d'explorer notre documentation.

Assurez-vous de vous abonner à notre chaîne, car nous ajouterons de nouvelles vidéos tutoriel.

Vous pouvez également rejoindre notre communauté sur Discord pour demander à notre équipe de développeurs et à d'autres studios leur avis sur la meilleure façon d'optimiser votre Matchmaker.

Intégrer Edgegap facilement en quelques minutes