Boss Room est l'exemple de donjon coopératif d'Unity pouvant accueillir jusqu'à 8 joueurs, conçu sur Netcode for GameObjects (NGO). Le fork d'Edgegap l'exécute sur un serveur de jeu dédié et ajoute un matchmaking facultatif qui réunit les joueurs dans le même donjon.
Boss Room lui-même change à peine : mêmes scènes, mêmes prefabs, même sélection de personnage (Character Select), même connexion directe par IP (Direct IP join). Tout ce dont le matchmaker a besoin se trouve dans Assets/Edgegap/ et s'ajoute automatiquement au moment de l'exécution.
Aucun joueur n'héberge la partie. Un serveur Boss Room sans interface graphique (headless) gère le donjon, ne nécessite aucun service Unity Gaming Services, Relay ou Lobby, et met fin à son propre déploiement dès que la partie est vide.
Le réseau d'Edgegap s'étend sur plus de 615 emplacements Edge Cloud (en savoir plus). Chaque serveur est déployé dans le meilleur emplacement disponible pour ses joueurs et n'est facturé que pendant la durée de la partie.
Cloner l'exemple : Fork de Boss Room sur GitHub
Guide complet : compilez, conteneurisez et déployez n'importe quel jeu NGO avec le guide d'intégration de Netcode for GameObjects
Plateformes : clients de bureau Windows, macOS et Linux (UDP). Testé avec des clients Windows. Exemple original par Unity Technologies, sous licence Unity Companion License.
Comment ça fonctionne
Les joueurs cliquent sur Trouver une partie (Find Match) dans le panneau du menu principal. Chaque client envoie un ticket au Matchmaker Edgegap.
Le matchmaker regroupe de 2 à 8 joueurs et lance un déploiement Edgegap pour eux.
Le serveur démarre, s'initialise via le propre
ConnectionManagerde Boss Room sur0.0.0.0et sur le portgameport, et consigne le nombre de joueurs associés attendus.Lorsque le ticket indique HOST_ASSIGNED, chaque client rejoint l'adresse IP publique et le port externe du serveur via
ConnectionManager.StartClientIp. Tout le monde arrive dans la sélection de personnage sur le même serveur, puis entre ensemble dans le donjon.Quand il ne reste plus personne (30 s après le départ du dernier joueur, ou si personne ne se connecte dans un délai de 120 s), le serveur arrête son propre déploiement.
Ce que le fork a modifié :
Chemin | Ce que ça fait |
|---|---|
| S'exécute avant la première scène et ajoute les composants ci-dessous. Aucune modification de scène. |
| Le panneau Trouver une partie : ticket, attente de |
| Builds serveur : consigne les joueurs associés et connectés, arrête le déploiement lorsque la partie est vide. |
| Activation/désactivation du matchmaker, URL, jeton d'authentification (Auth Token), profil, port local, délais d'expiration (timeouts). |
| Démarre le serveur avec |
Modifications dans | Serveur au lieu de l'hôte ( |
| Profil du matchmaker à téléverser et image du serveur. |

Deux joueurs dans le donjon de Boss Room, sur un serveur Netcode for GameObjects hébergé par Edgegap.
1. Avant de commencer
Un compte Edgegap gratuit.
Unity 6000.0.54f1 (Unity 6.0 LTS) avec Linux Build Support (Mono) et Linux Dedicated Server Build Support, ainsi que le module correspondant à la plateforme de votre client.
Docker Desktop, en cours d'exécution.
Git LFS : exécutez
git lfs installavant de cloner, sinon les ressources graphiques et l'asset de paramètres Edgegap ne seront pas téléchargés.Clonez le fork.
Git : Unity a besoin d'un client Git (2.14.0 ou plus récent) dans votre PATH pour installer des paquets depuis une URL Git, comme le plugin Edgegap. macOS en possède généralement déjà un (Outils en ligne de commande Xcode) ; sur Windows, installez Git.
2. Obtenir un serveur Boss Room sur Edgegap
Le Matchmaking nécessite un serveur qui fonctionne déjà sur Edgegap. Les étapes 4 et 5 du guide Netcode for GameObjects couvrent sa création, sa conteneurisation et son déploiement. Ce qui est spécifique à ce fork :
Générez le serveur avec Tools → Edgegap → Build Linux Dedicated Server. Le
Dockerfiledu fork situé à la racine du dépôt empaquetteBuilds/EdgegapServer/.Sur la version de l'application, un seul port : nom
gameport, 7777, UDP. Le nom doit êtregameport: le serveur lit son port à partir de celui-ci.En local (et dans
docker run), le serveur écoute plutôt sur le port 9998.Pour vérifier manuellement un déploiement : Start with Direct IP → Join dans deux clients, avec l'adresse IP publique du déploiement (pas le nom d'hôte) et le port externe de
gameport.
Pour exécuter l'image du serveur localement :
docker run --rm -p 9998:9998/udp ngo-bossroom:local
Deux instances sur un même PC nécessitent leur propre profil, sinon le serveur rejettera la seconde en la considérant comme le même joueur :
Game.exe -AuthProfile p1
Game.exe -AuthProfile p2
3. Ajoutez-le à votre propre jeu d'ONG
Le fork est une référence fonctionnelle : votre agent de codage peut copier ses fichiers testés au lieu de les écrire à partir de zéro. Quatre modifications permettent d'exécuter un jeu NGO sur Edgegap avec le matchmaking :
Le serveur démarre lui-même. Dans les builds serveur, appelez
StartServer, jamaisStartHost, sur0.0.0.0et le portgameport(Assets/Scripts/EdgegapServerStarter.cs,StartingHostState.cs).Le serveur s'arrête lui-même. Il interrompt son déploiement lorsque personne ne rejoint à temps ou que le dernier joueur quitte la partie, ce qui arrête la facturation (
Assets/Edgegap/EdgegapServerLifecycle.cs).Le client trouve une partie. Il envoie un ticket, attend
HOST_ASSIGNED, puis rejoint l'IP et le port assignés (Assets/Edgegap/EdgegapMatchmakingClient.cs). Si votre jeu possède son propre flux de connexion comme leConnectionManagerde Boss Room, rejoignez via celui-ci afin que les charges utiles et l'approbation continuent de fonctionner.Rien ne change dans vos scènes.
Assets/Edgegap/EdgegapBootstrap.csajoute les composants au démarrage, configurés parEdgegapSettings.asset.
Avec votre agent :
« Charge la compétence edgegap, puis edgegap-ngo. En utilisant github.com/edgegap/netcode-game-sample-unity-ngo-bossroom comme référence, fais en sorte que mon jeu Netcode for GameObjects démarre un serveur dédié headless sur le port gameport, arrête son déploiement lorsque la partie est vide, et ajoute un bouton Trouver une partie qui rejoint le serveur attribué par le Matchmaker Edgegap, via le flux de connexion propre à mon jeu. »
Pour chaque étape détaillée, manuellement, consultez le guide d'intégration de Netcode for GameObjects.
4. Activer le matchmaking dans la salle du boss
Le Matchmaking est désactivé par défaut. Activez-le dès qu'une connexion directe fonctionne :
Dans le fichier
matchmaker-config.jsondu fork, définissezapplication.nameetversionavec le nom et la version de votre application.Dans le tableau de bord, ouvrez Matchmaker → Create Matchmaker, importez le fichier, puis cliquez sur Create and Start. Copiez son API URL et son Auth Token. Le jeton d'authentification (Auth Token) peut être utilisé en toute sécurité dans les clients de jeu : il n'autorise que les appels de matchmaking.
Sélectionnez
Assets/Edgegap/Resources/EdgegapSettings.asset. Cochez Use Edgegap Matchmaker, puis collez l'Matchmaker Url et l'Matchmaker Auth Token.Recompilez le client et lancez-le deux fois. Cliquez sur Find Match dans le panneau situé à gauche du menu principal sur les deux instances. Le statut passe de recherche (searching) → match trouvé (match found) → connexion (joining), puis les deux joueurs arrivent sur l'écran de sélection des personnages (Character Select) sur le même serveur.
Le profil casual crée des parties de 2 à 8 joueurs, ce qui correspond aux 8 places de héros de Boss Room. Il remplit jusqu'à 8 joueurs lorsqu'il le peut ; après 15 secondes, il démarre avec au moins 2 joueurs. Conservez cette étape d'extension : sans elle, une partie de moins de 8 joueurs ne démarre qu'à l'expiration des tickets, au bout de 5 minutes.
Pour tester sans clics, transmettez les paramètres via la ligne de commande (<url> et <token> de l'étape 2), avec -AuthProfile p2 et -edgegapAutoReady 1 pour le second client :
Game.exe -AuthProfile p1 -edgegapMatchmaker true -edgegapMatchmakerUrl <url> -edgegapAuthToken <token> -edgegapFindMatch -edgegapAutoReady 0
Lorsque vous déployez une nouvelle version du serveur : nouveau tag d'image → nouvelle version de l'application → dans le matchmaker, Stop, modifiez application.version, Start. Sinon, les parties continueront de déployer l'ancienne version.
Limites connues
Clients de bureau uniquement. Boss Room se connecte via UDP, ce que les navigateurs ne peuvent pas ouvrir. Une version WebGL nécessiterait les WebSockets d'Unity Transport et un port WS avec mise à niveau TLS : cela ne fait pas partie de cet exemple.
Le panneau Trouver un match est une simple superposition, ne faisant pas partie du menu de Boss Room. Pour un vrai jeu, appelez
EdgegapMatchmakingClient.FindMatch()etCancelMatchmaking()depuis votre propre bouton et désactivezShowGUI.Aucune vérification de ticket sur le serveur. Toute personne disposant de l'IP et du port peut rejoindre via IP directe. Vérifier l'ID de ticket de chaque client par rapport à
MM_TICKET_IDSlors de l'approbation de connexion est une étape suivante.Impossible de rejoindre une partie en cours. Les joueurs qui appuient sur Trouver un match plus tard obtiennent un nouveau serveur ; le backfill n'est pas configuré.
Erreurs de serveur sans danger. Le serveur headless enregistre des erreurs
NullReferenceExceptiondansClientCharacter.OnAnimEventetTransform child out of bounds, provenant des éléments visuels côté client de Boss Room. Elles n'affectent pas le jeu.Niveau gratuit : un seul déploiement à la fois, et le matchmaker redémarre toutes les 3 heures (mêmes URL et jeton).
Ce qui a été testé
Testé de bout en bout sur Edgegap le 19 octobre 2026, avec Unity 6000.0.54f1, Netcode for GameObjects 1.13.0, Unity Transport 2.5.2 (UDP) et le SDK Edgegap Unity 3.5.6 :
Connexion directe : deux clients Windows ont rejoint le même serveur Edgegap par IP et ont joué dans le donjon.
Matchmaker : deux clients Windows ont cliqué sur Find Match, ont été associés, se sont connectés et ont atteint la sélection de personnage sur le même serveur en moins de 40 secondes après le lancement, puis ont joué dans le donjon.
Arrêt automatique : à chaque fois, le serveur a arrêté son propre déploiement après le départ des joueurs.
Les clients macOS et Linux devraient fonctionner, non testé. Les options de ligne de commande de test du fork (-edgegapConnect, -edgegapFindMatch, -edgegapAutoReady, -edgegapScreenshots, -edgegapQuitAfter) sont répertoriées dans EDGEGAP.md.
Questions Fréquemment Posées
Questions concernant l'exécution de Boss Room d'Unity avec les serveurs dédiés et le matchmaking d'Edgegap.
Boss Room peut-il utiliser le matchmaking sans Unity Gaming Services ?
Oui. Le fork d'Edgegap ajoute un panneau optionnel « Trouver une partie » qui utilise le Matchmaker d'Edgegap. Il ne nécessite aucun Matchmaker, Relay ou Lobby d'UGS : le matchmaker lance un serveur Edgegap et chaque client apparié le rejoint.
Combien de joueurs peuvent participer à une partie Boss Room sur Edgegap ?
Le profil de matchmaking du fork crée des parties de 2 à 8 joueurs, soit autant que les 8 places de héros de Boss Room. Il attend jusqu'à 15 secondes pour compléter la partie, puis commence avec au moins 2 joueurs.
De quelle version d'Unity le fork de Boss Room a-t-il besoin ?
Unity 6000.0.54f1 (Unity 6.0 LTS), avec les modules de compilation Linux Dedicated Server. Unity n'a pas mis à jour Boss Room pour les versions ultérieures, les versions plus récentes peuvent donc le corrompre.
Le serveur de la Boss Room continue-t-il de fonctionner lorsque personne ne joue ?
Non. Le serveur arrête son propre déploiement Edgegap 30 secondes après le départ du dernier joueur, ou si personne ne le rejoint dans les 120 secondes, les serveurs inactifs ne coûtent donc rien.

Clients
Découvrez les témoignages de clients qui ont intégré Edgegap
31 études de cas sont disponibles auprès de studios ayant migré d'une autre plateforme vers Edgegap.

Un lancement mondial impeccable pour Rivals of Aether 2
Aether Studios
Découvrez comment Aether Studios a rapidement ajouté Edgegap et a offert un lancement et un post-lancement sans faille à sa communauté.
Case Study

Surmontez la latence introduite par l'utilisation de WiFi par la réalité virtuelle dans les jeux multijoueurs compétitifs.
Halfbrick Studios
Découvrez comment Halfbrick a réussi à lancer et à maintenir un accès anticipé axé sur le multijoueur sur la plateforme VR META Quest.
Case Study

L'application sociale de MENA ajoute des jeux en ligne
WOLF
Découvrez comment l'application sociale très populaire de la région MENA a facilement ajouté des jeux de matchmaking et d'orchestration multijoueur à WOLF Qanawat.
Case Study

L'orchestration hybride maintient Kickoff Tactics prêt pour tout type de trafic
Birch Games
Comment l'orchestration hybride d'Edgegap pour gérer tant le le trafic prévisible et imprévisible, grâce aux flottes "egress-free" et le cloud.
Case Study

Lunes de sang de 7 jours
The Fun Pimps & iLLOGIKA
Découvrez comment Illogika a considérablement réduit ses coûts de serveur et garanti l'expérience en ligne attendue par la franchise 7 Days to Die.
Case Study

La guerre en ligne authentique nécessite l'orchestration ultime
Highwire Games
Découvrez comment le besoin de performance de Highwire nécessite une orchestration que seul Edgegap peut fournir.
Case Study

22 000 avis, 4,8 étoiles et une infrastructure qui s'est adaptée automatiquement
Sinn Studios
Comment une intégration simple, prise en charge par Slack, a permis au titre VR à succès de Sinn Studio d'être mis en ligne rapidement et de s'y maintenir.
Case Study

Orchestration de Serveurs Dynamiques
Under NDA - AAA Studio
Découvrez comment l'un des plus grands studios AAA du monde a amélioré son expérience multijoueur pair à pair grâce à l'informatique en périphérie.
Case Study

Latence presque nulle pour un jeu de combat AAA
AAA Studio - Under NDA
Comment un projet non annoncé a permis d'obtenir le délai d'attente le plus bas possible et d'améliorer l'équité dans son jeu 1v1.
Case Study

Jouez aux dieux avec la physique multiplayer
Squido Studio
Découvrez comment Squido utilise les serveurs de jeu optimisés par Edgegap pour offrir un gameplay VR époustouflant et chaotique.
Case Study

Des solutions entièrement gérées qui font gagner du temps à un jeu VR
Dirty Pearl Studios
Découvrez comment Dirty Pearl Studios a gagné du temps de développement grâce à l'intégration facile d'Edgegap et à l'orchestration automatisée de son intégration avec Nakama.
Case Study

Déploiement instantané de serveurs globaux pour l'éducation médicale en XR
AlensiaXR
Comment AlensiaXR utilise Edgegap pour offrir des sessions d'anatomie partagées à faible latence et toujours disponibles aux étudiants en médecine du monde entier.
Case Study

The Lightkeepers : un jeu coopératif social en VR avec des serveurs dédiés
Spectral Games
Comment Spectral Games a utilisé Edgegap Matchmaking et Server Browser pour lancer des serveurs dédiés pour son salon social VR, sans aucune expérience préalable des serveurs.
Case Study

Déploiements rapides & fiables dans le monde pour le PvPvE Gravebound
Crater Studios
Comment l'orchestration et le matchmaking d'Edgegap ont aidé Crater Studios à se concentrer sur le gameplay plutôt que sur l'infrastructure.
Case Study

Échelle rapide du métavers web
Hiber
Découvrez comment Hiber a éliminé les incertitudes de sa planification de capacité serveur avec Edgegap.
Case Study

Exigences matérielles élevées et pools de serveurs de jeux personnalisés
Alderon Games
Découvrez comment Alderon Games utilise instantanément une pool personnalisée de serveurs de jeux à travers plusieurs fournisseurs dans le monde pour son MMO populaire.
Case Study

Intégration facile pour les développeurs indépendants
WhaleFood Games
Découvrez comment WhaleFood Games a "chassé" ses problèmes de netcode avec Edgegap.
Case Study

Une technologie qui propulse le premier jeu eSports de l'Asie du Sud-Est.
Anantarupa Studios
Découvrez comment Edgegap a transformé le paysage du jeu en Asie du Sud-Est en démocratisant des infrastructures complexes avec sa solution.
Case Study

Une frappe. Portée mondiale.
Triple Hill Interactive
Comment Triple Hill Interactive tire parti de l'orchestration d'Edgegap pour offrir une faible latence et améliorer l'équité dans un genre où chaque milliseconde compte.
Case Study

Un Battle Royale en équipe au rythme effréné... avec des peluches d'animaux armées jusqu'aux dents !
SANDYFLOOR
Découvrez comment un studio indépendant basé en Corée a lancé son jeu multijoueur dans le monde entier.
Case Study

Les courses de chevaux sur mobile disponible mondialement grâce à Edgegap.
Mirai Labs
Comment Mirai Labs propulse les courses multijoueurs mondiales de Pegaxy Blaze grâce au déploiement de serveurs juste-à-temps et au vCPU fractionné pour maintenir un coût bas.
Case Study

Gestion et distribution des serveurs
Matrioshka Games
Lisez comment Matrioshka Games a réussi à expédier un Battle Royale en accès anticipé avec des ressources limitées.
Case Study

À mon signal, déchaînez l'enfer !
TyGames
Découvrez comment le studio indépendant TyGames immerge les joueurs dans un combat multijoueur de gladiateurs à la troisième personne.
Case Study

Orchestration Instantanée Mondiale
Soliton Interactive
Découvrez comment Soliton Interactive a réalisé l'impossible… Livrer son premier jeu jouable en mode multijoueur !
Case Study

Le jeu de hockey avec une physique côté serveur & une latence sous les 50ms
NS7
Découvrez pourquoi seul Edgegap pourrait permettre à un studio indépendant de réaliser sa vision d'un gameplay sportif F2P de qualité AAA grâce à la physique côté serveur et à l'autorité.
Case Study

Déploiements régionaux pour les jeux en ligne
X1 Contra 1
X1 Contra 1 propose des jeux PvP décontractés en temps réel à sa base de joueurs brésilienne grâce à un hébergement économique et à des déploiements régionaux
Case Study

Payez uniquement lorsque les joueurs jouent : une infrastructure abordable
Meltdown Interactive
Comment Edgegap a aidé le développeur indépendant Meltdown Interactive Media à résoudre la mise à l’échelle rentable et le matchmaking sans complexité
Case Study

Une plateforme Edgegap, trois profils réseau très différents
Warped Games
Comment Warped Games gère un hub social, du coopératif en temps réel et du coopératif au tour par tour, le tout sur la même API de déploiement Edgegap et le même pipeline de conteneurs.
Case Study

Pool Live Tour Max
RETA Games
Case Study

Le tireur d'extraction POP Web3 de Corée devient mondial, instantanément
NDUS Entertainment
Comment XOCIETY a facilement ajouté l'orchestration Edgegap et intégré un matchmaking personnalisé en travaillant aux côtés des Edgegap Ping Beacons pour optimiser la latence.
Case Study

Multijoueur dans chaque dimension
Arcadia.tv
Découvrez comment Arcadia.tv utilise le réseau edge d'Edgegap pour offrir un sport VR innovant basé sur l'équipe et la localisation.
Case Study

Un jeu mobile F2P réduit ses coûts d'infrastructure grâce aux serveurs JIT
Game Changers Worldwide
Comment Game Changer Worldwide a hébergé le PvP 3v3 en temps réel de Rumble Rush à l'échelle mondiale sur mobile.
Case Study
Principales raisons pour lesquelles ils ont choisi Edgegap
Découvrez l’impact de l’orchestration automatisée des serveurs de jeu d’Edgegap pour une expérience multijoueur impeccable.









