Pour créer un serveur Cyberpunk 2077 avec Open77, il faut un accès alpha, un compte open2077.net avec e-mail vérifié, une clé de licence créée dans le keymaster, le serveur dédié (Windows ou Linux) et deux ports ouverts : UDP 11778 pour le jeu et TCP 11779 pour les ressources, par défaut. Cyberpunk 2077 n'est pas nécessaire sur la machine hôte, mais chaque joueur doit posséder le jeu en version 2.31 avec Phantom Liberty. Voici la procédure complète, de l'installation à l'apparition dans le launcher.
Ce qu'il faut retenir
- Sans clé de licence, le serveur ne s'enrôle pas et n'apparaît pas dans le launcher. La clé s'affiche une seule fois à sa création.
- Le serveur est autonome : paquet Windows x64 ou Linux x64 avec le runtime .NET inclus, sans copie du jeu sur la machine, et livré avec le mode Freeroam prêt à jouer.
- Warden, le panel d'administration web, écoute en local sur le port 11780 et ne doit jamais être exposé sur Internet.
- Le projet est en alpha : les joueurs ont besoin de l'accès alpha pour rejoindre.
Ce qu'il faut avoir avant de commencer
- Un accès alpha à Open77, obtenu depuis le Discord officiel.
- Un compte open2077.net avec une adresse e-mail vérifiée, nécessaire pour créer une clé de licence.
- Une machine Windows x64 ou Linux x64 (Debian et distributions compatibles). Aucune installation séparée de .NET n'est nécessaire.
- Une machine dimensionnée pour vos ressources : la documentation ne fixe pas de minimum. À titre indicatif, un VPS de 2 à 4 cœurs avec 4 Go de RAM suffit pour démarrer, à augmenter selon vos ressources Lua et votre nombre de joueurs. Votre PC convient pour tester.
- Une adresse joignable depuis Internet : un nom de domaine ou une IP publique, avec la possibilité d'ouvrir des ports.
- Côté joueurs : Cyberpunk 2077 en version 2.31 avec Phantom Liberty, sous Windows 10 ou 11 en 64 bits, et l'accès alpha.
Étape 1 : obtenir l'accès alpha et créer son compte
L'accès alpha donne le droit de jouer, de télécharger le serveur et de construire des modes de jeu, sans candidature développeur séparée. Créer un compte ou télécharger le launcher ne suffit pas à l'obtenir.
- Rejoignez le Discord officiel et lancez la commande
/alpha applydans n'importe quel salon. - Créez votre compte sur open2077.net avec une adresse e-mail et un mot de passe, puis vérifiez l'e-mail.
- Une fois l'accès alpha activé sur le compte, utilisez ce même compte sur le site et dans le launcher.
Le détail du processus se trouve dans le guide de l'accès alpha.
Étape 2 : télécharger le serveur officiel
Le serveur se télécharge sur la page Host du site, réservée aux comptes alpha. Windows reçoit une archive .zip, Linux une archive .tar.gz autonome construite pour Debian et ses dérivées. Chaque archive est publiée avec son empreinte SHA-256, à comparer avec celle du fichier téléchargé avant de lancer quoi que ce soit.
# Linux
sha256sum archive-du-serveur.tar.gz
# Windows (PowerShell)
Get-FileHash -Algorithm SHA256 archive-du-serveur.zip
Ne téléchargez le serveur que sur la page officielle ou son CDN. Le build stable est proposé par défaut et recommandé. Un build « Unstable » existe pour les tests : il se débloque après un avertissement, les joueurs doivent alors choisir Unstable dans les paramètres du launcher, et il ne faut jamais écraser un serveur en production avec un build de prévisualisation. Extrayez toujours le nouveau build dans un dossier séparé, après avoir sauvegardé la configuration, les ressources et les bases de données.
Étape 3 : créer sa clé de licence
La clé de licence rattache le serveur à votre compte. Elle sert à l'enrôlement auprès du serveur maître d'Open77, à l'inscription dans l'annuaire et au renouvellement du bail d'exécution. Sans clé, il n'y a ni enrôlement ni listing : les serveurs anonymes ne font pas partie de la plateforme.
- Ouvrez le keymaster dans votre compte, rubrique des clés de licence serveur.
- Créez une clé avec une étiquette qui identifie le serveur.
- Copiez-la immédiatement. Elle ressemble à
op77_live_suivi de 43 caractères et ne s'affiche qu'une fois : la plateforme ne conserve qu'une empreinte et ne peut jamais la réafficher.
Un compte peut avoir vingt clés actives. Une même clé peut enrôler plusieurs serveurs, mais mieux vaut une clé par communauté ou par environnement (test, production) : révoquer une clé coupe immédiatement tous les serveurs qui l'utilisent. Les détails sont dans la page licence serveur.
Placez la clé dans la variable d'environnement OP77_LICENSE_KEY plutôt que dans server.jsonc, pour que le fichier reste partageable et sauvegardable sans risque.
# Linux
export OP77_LICENSE_KEY="op77_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Windows (PowerShell)
$env:OP77_LICENSE_KEY = "op77_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
Ces commandes ne valent que pour le terminal en cours. Pour un service systemd, un conteneur ou un panel d'hébergement, définissez la variable dans l'environnement de ce service. L'assistant de premier lancement accepte aussi la clé saisie directement.
Étape 4 : premier lancement et assistant de configuration
Extrayez l'archive dans un nouveau dossier, puis lancez Start.cmd (Windows) ou ./start.sh (Linux). Vous pouvez aussi exécuter directement Open77.Server.exe ou ./Open77.Server.
Si aucun fichier server.jsonc n'existe, le serveur ouvre un assistant dans le navigateur, servi en local par Warden sur le port 11780.
- Ouvrez
http://localhost:11780. - Saisissez le code PIN à usage unique affiché dans les logs du serveur.
- Créez l'identifiant et le mot de passe du compte administrateur propriétaire. Le PIN devient alors invalide.
- Renseignez le nom du serveur, la clé de licence, l'adresse publique et la visibilité. L'assistant écrit le fichier
server.jsonc: relisez-le avant de démarrer.
- Pour ignorer l'assistant, placez un
server.jsoncvalide à côté de l'exécutable et lancez avec--no-setup. - Pour rouvrir l'assistant plus tard, utilisez
--setupou--reconfigure. - Laissez l'URL du serveur maître à sa valeur par défaut,
https://master.open2077.net/. L'adresse locale affichée pour Warden est votre panel d'administration, pas l'annuaire.
Étape 5 : régler server.jsonc
Le fichier accepte du JSON avec des commentaires //. Voici les blocs à connaître, tels que l'assistant les génère.
{
// Comment le serveur se présente dans le launcher et dans l'annuaire.
"identity": {
"name": "Neon District RP",
"visibility": "public"
},
// Port de jeu UDP et adresse que les joueurs utilisent.
// Jamais une adresse de réseau local.
"network": {
"port": 11778,
"publicEndpoint": "play.example.com:11778"
},
// Informations sur le serveur, interrogeables de l'extérieur.
"query": {
"enabled": true,
"map": "Night City",
"gamemode": "Freeroam"
},
// Le lien avec la plateforme. Laissez enabled à true.
"masterServer": {
"enabled": true,
"url": "https://master.open2077.net/",
"licenseKey": null,
"licenseKeyEnvironmentVariable": "OP77_LICENSE_KEY"
},
// Panel d'administration, à garder en local.
"warden": {
"enabled": true,
"bind": "127.0.0.1:11780"
}
}
- identity.name : le nom affiché dans le launcher et sur la liste publique. C'est la vitrine du serveur.
- identity.visibility : public pour être listé, unlisted ou private pour un serveur sur invitation, enrôlé et sous licence mais hors de la liste publique.
- network.port et network.publicEndpoint : le port de jeu UDP (11778 par défaut, modifiable avec
network.portou--port) et l'adresse remise aux joueurs. Elle doit être joignable depuis Internet, donc pas une adresse en 192.168.x. - query : active l'interrogation d'informations sur le serveur et définit la carte et le mode de jeu annoncés. Laissez-le activé si vous voulez qu'un annuaire puisse relever les statistiques du serveur.
- masterServer : l'inscription auprès du serveur maître. Laissez
licenseKeyà null pour lire la clé depuis la variable d'environnement. - warden.bind : l'adresse d'écoute du panel, à garder en local.
D'autres champs se règlent dans le même fichier ou en options de démarrage, comme network.maximumPlayers, identity.description et identity.tags. La page hébergement officielle détaille les champs de base.
Étape 6 : ouvrir les ports et valider la configuration
Les joueurs doivent pouvoir joindre à la fois le jeu et le serveur de téléchargement des ressources. Le serveur ne modifie jamais le pare-feu : les règles et les redirections NAT ou de conteneur se configurent séparément.
| Port | Protocole | Usage | À ouvrir sur Internet |
|---|---|---|---|
| 11778 (par défaut) | UDP | Trafic de jeu | Oui |
| 11779 (par défaut) | TCP | Téléchargement des ressources et des mods par les joueurs | Oui |
| 11780 | HTTP (TCP) | Panel Warden | Non, local ou tunnel uniquement |
| 3306 | TCP | MySQL ou MariaDB local, si activé | Non |
Voici des règles de pare-feu d'exemple pour les deux ports publics :
# Windows (PowerShell, en administrateur)
New-NetFirewallRule -DisplayName "Open77 Game" -Direction Inbound -Protocol UDP -LocalPort 11778 -Action Allow
New-NetFirewallRule -DisplayName "Open77 Downloads" -Direction Inbound -Protocol TCP -LocalPort 11779 -Action Allow
# Linux (UFW)
sudo ufw allow 11778/udp
sudo ufw allow 11779/tcp
# Linux (iptables)
sudo iptables -A INPUT -p udp --dport 11778 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 11779 -j ACCEPT
Derrière une box ou un routeur, redirigez le port UDP 11778 et le port TCP 11779 vers l'IP locale de la machine, puis indiquez votre IP publique avec --public-ip ou dans network.publicEndpoint. Sans cela, les joueurs voient le serveur sans pouvoir s'y connecter.
Sur un VPS, l'option --public-ip complète automatiquement l'adresse publique du jeu et les adresses de téléchargement à partir de l'IP fournie par l'hébergeur. Le serveur ne découvre pas sa propre IP publique.
./Open77.Server --no-setup --config server.jsonc \
--public-ip 200.0.100.10 --port 11778 --max-players 32 \
--log-level info
Remplacez 200.0.100.10 par l'IP réelle de votre machine. Ces surcharges demandent un serveur en version 2.31.13+op77.91 ou plus récente. Elles s'appliquent au processus en cours sans réécrire server.jsonc, et la précédence est : valeurs par défaut, fichier, variables OP77_CONFIG__..., puis options de la ligne de commande.
Avant de démarrer pour de bon, ajoutez --check-config à la même commande. Le code de sortie 0 confirme que la configuration est valide, le code 2 signale une erreur de configuration ou d'argument avec le champ concerné. Ce test n'ouvre aucun port, ne contacte pas le serveur maître et ne vérifie pas l'accessibilité depuis l'extérieur.
Gardez les secrets hors de la ligne de commande, que les listes de processus ou les journaux de panel peuvent exposer. La page arguments de démarrage et journalisation liste toutes les options.
Étape 7 : démarrer le serveur et vérifier son apparition
Lancez le serveur avec la variable OP77_LICENSE_KEY définie. Au démarrage, il présente la clé au serveur maître, qui la vérifie, rattache le serveur à votre compte et délivre un bail d'exécution renouvelé à chaque battement de cœur. Peu après, le serveur apparaît dans le launcher et sur la liste publique, sous votre compte, et les joueurs peuvent le rejoindre. Arrêtez-le ou révoquez sa clé, et il disparaît tout aussi automatiquement.
S'il n'apparaît pas, vérifiez dans l'ordre :
- la licence : une clé inconnue, révoquée ou un propriétaire suspendu produit le message « Master refused the platform license key » dans les logs ;
- la visibilité : un serveur private ou unlisted n'est pas publié ;
- la connexion au serveur maître ;
- l'adresse publique : les adresses de réseau local et de bouclage ne sont jamais listées.
Pour tester avant d'être listé, le launcher propose la connexion directe avec un nom d'hôte ou une IP et un port. Elle ne contourne ni l'approbation du compte alpha, ni les règles du serveur. L'état des services se suit sur la page de statut.
Notre avis
Pour un premier essai, n'ouvrez pas tout de suite au public. Démarrez le serveur avec le mode Freeroam livré dans le paquet, en visibilité private ou avec une liste blanche, et testez avec deux ou trois amis ayant l'accès alpha. L'alpha prévient de bugs, de plantages et de changements d'API : mieux vaut les découvrir entre amis que devant une communauté. Quand le serveur tient, passez en public et soignez le nom et la description. La plupart des échecs de listing viennent d'une clé, d'une adresse ou d'un port mal réglé, pas du jeu.
Étape 8 : administrer le serveur avec Warden
Warden est le panel d'administration web intégré au serveur, le rôle que txAdmin joue pour FiveM. Il écoute en local sur le port 11780. L'assistant de premier lancement génère un server.jsonc qui l'active avec le bloc ci-dessous. Si vous écrivez le fichier à la main, ajoutez ce bloc vous-même : Warden reste désactivé tant que warden.enabled n'est pas à true, et le serveur doit être redémarré.
{
"warden": {
"enabled": true,
"bind": "127.0.0.1:11780"
}
}
Connectez-vous sur http://localhost:11780 avec le compte propriétaire créé à l'étape 4. Warden donne accès à :
- la console en direct, pour lire les logs et saisir les commandes du serveur ;
- le rechargement à chaud des ressources Lua, sans redémarrage ni déconnexion des joueurs ;
- la modération : avertir, expulser ou bannir un joueur, et gérer la liste des bannis ;
- les annonces envoyées à tous les joueurs, par exemple un avertissement de redémarrage ;
- la configuration et l'identité du serveur (nom, visibilité, présentation publique), sans éditer les fichiers à la main ;
- les rôles, pour donner à chaque membre du staff un accès limité.
Créez un compte Warden par administrateur, avec seulement les droits nécessaires, plutôt que de partager le compte propriétaire : vous gardez la trace de qui fait quoi.
Warden donne le contrôle complet du serveur. Gardez-le sur localhost, ou derrière un VPN ou un tunnel SSH, sans exposer son port sur Internet. Pour un serveur distant, un tunnel SSH standard suffit :
ssh -L 11780:127.0.0.1:11780 utilisateur@adresse-du-serveur
Le panneau s'ouvre alors sur http://localhost:11780 depuis votre poste. La page Warden détaille les rôles et les opérations qui demandent un redémarrage.
Étape 9 : contrôler qui peut rejoindre
Le serveur tient sa propre liste d'accès dans le fichier access.json, à côté de server.jsonc : une liste blanche et une liste de bannis, indexées par l'identifiant de compte (userId). Elle s'applique avant toute ressource Lua, y compris pour les connexions directes. Warden, la console et l'API Lua modifient la même liste.
whitelist état et identités listées
whitelist.on | whitelist.off
whitelist.add <userId> [label]
whitelist.remove <userId>
bans bans actifs
ban.id <userId> [secondes|0] [raison]
unban <userId>
Activer la liste blanche déconnecte immédiatement tous les joueurs non listés, y compris le staff et votre propre compte de jeu. Ajoutez d'abord ces identités. Un joueur retrouve son identifiant avec la commande identity.dump dans la console du client, et un administrateur le lit aussi dans les refus journalisés par le serveur. Bannissez toujours sur l'identifiant, jamais sur le pseudo, que le joueur peut changer.
La licence du serveur ne remplace pas ces règles : elle gère l'enrôlement, l'annuaire et le bail d'exécution, pas l'admission des joueurs. La page contrôle de connexion décrit aussi les portes en Lua, avec des exemples de liste blanche et de bans à expiration.
Étape 10 : choisir et ajouter des ressources
Le contenu de jeu d'un serveur Open77 est fait de ressources : des dossiers contenant un manifeste, des scripts Lua serveur et client, des permissions déclarées et, au besoin, des interfaces web. Le paquet du serveur inclut le mode Freeroam (courses, PvP, garde-robe, menu d'animations) et des ressources système comme le chat, la voix, la météo et l'administration.
Le tableau resources.load de server.jsonc choisit les ressources chargées. Une liste exacte est recommandée en production, pour qu'une ressource de développement ajoutée à la bibliothèque ne se retrouve pas sur un serveur en ligne.
"resources": {
"enabled": true,
"root": "../resources",
"load": [
"open77_shell",
"open77_chat",
"open77_vehicles",
"freeroam",
"open77_freeroam"
],
"autoStart": true
}
L'assistant de premier lancement écrit déjà une liste exacte pour le modèle livré : partez de celle-là plutôt que de la réécrire à la main.
Les dossiers de ressources sont rangés par catégorie :
resources/
system/ ressources officielles de la plateforme
gamemodes/ modes de jeu et leurs HUD (freeroam, race, pursuit...)
dev/ exemples et bancs d'essai
assets/
loaders/ chargeurs (archivexl, tweakxl)
maps/ paquets de monde
vehicles/ paquets de véhicules
mods/ autres paquets tiers
Une ressource minimale tient en un manifeste et un script. Les scripts serveur ne sont jamais envoyés aux joueurs.
-- resources/hello/open77.lua
resource "hello"
version "1.0.0"
auto_start true
client_script "client/main.lua"
server_script "server/main.lua"
permissions { "network.events", "world.loot" }
-- resources/hello/server/main.lua
RegisterCommand("hello", function(source, args)
print(("player %d said hello"):format(source))
end, false)
Pour ajouter une ressource à un serveur en marche : créez son dossier, ajoutez son nom à resources.load, puis redémarrez le serveur, ou lancez refresh suivi de ensure nom si le nom figurait déjà dans la liste au démarrage. server.jsonc n'est pas relu à chaud : un nom absent de la liste au démarrage demande un redémarrage, et ensure répond alors que la ressource est introuvable. Avec autoStart actif, une modification de ressource valide est détectée, publiée sous forme de nouvel ensemble signé et envoyée aux joueurs, qui ne téléchargent que les morceaux manquants. Les commandes resources, start, stop, restart et reload complètent la console.
Pour aller plus loin, la documentation couvre le modèle des ressources et la référence de l'API Lua.
Vous venez de FiveM ?
Open77 reprend plusieurs concepts de FiveM : séparation client et serveur, événements, exports, commandes et cycle de vie piloté par un manifeste. Des alias de compatibilité FiveM existent (table Citizen, SetTick, promise.new, aides de scripts partagés), et un manifeste porté accepte les clés FiveM comme fx_version ou game, qui sont ignorées. Le fxmanifest.lua devient open77.lua.
En revanche, les natives de GTA V (comme Citizen.InvokeNative, RequestModel ou RequestAnimDict) n'existent pas côté Cyberpunk : un script FiveM doit être adapté à l'API Open77, pas simplement copié. L'inclusion entre ressources avec @autre_ressource/fichier.lua est aussi refusée, il faut passer par les dépendances, require et les exports.
Étape 11 : exiger des mods pour votre monde (facultatif)
Avant de passer par un mod, vérifiez que le contenu n'est pas réalisable en ressource Lua. Accessoires, marqueurs, zones, parcours ou intérieurs meublés à partir d'éléments déjà dans le jeu se livrent sans téléchargement ni redémarrage, avec rechargement à chaud. Un mod ne s'impose que pour des éléments que le jeu ne contient pas, comme de nouveaux bâtiments ou véhicules (archives .archive et fichiers .xl). La géométrie de carte personnalisée reste expérimentale.
Quand un mod est nécessaire, le serveur le déclare et l'héberge lui-même, et le launcher l'installe au clic sur Connecter, avant le lancement du jeu : le joueur n'a pas à redémarrer. Le flux se fait depuis Warden.
- Ouvrez l'onglet Mods de Warden. Il demande la permission
mods.manage. - Déposez l'archive du mod (Zip, 7z ou RAR). Rien n'est écrit à ce stade : vous obtenez un plan.
- Relisez le plan : pour chaque fichier, sa destination, s'il est inerte ou exécutable, s'il ajoute ou remplace un fichier du jeu, et son SHA-256. C'est le seul moment où vous voyez le contenu avant vos joueurs.
- Validez, puis redémarrez le serveur : l'empreinte de l'ensemble de mods requis change, et c'est elle que chaque launcher compare.
Warden écrit lui-même le bloc requiredMods dans server.jsonc, jusqu'à 64 paquets. Une entrée indexée (un paquet que la plateforme distribue déjà, comme ArchiveXL) ressemble à ceci :
"requiredMods": {
"enabled": true,
"packages": [
{ "id": "archivexl", "minVersion": "1.27.1" }
]
}
Une entrée hébergée (vos propres octets, servis par votre serveur) exige en plus sha256, version et sizeBytes. Chaque paquet reçoit un statut qui décide de ce qu'il a le droit de contenir :
- Verified : les octets exacts ont été relus par l'équipe Open77, tout type de contenu est permis, y compris exécutable.
- Unverified : fourni par votre monde sans relecture. Seules des données inertes sont acceptées (
.archive,.tweak,.xl, fichiers INI sousengine/config). Le joueur est prévenu avant toute écriture et peut refuser. - Blocked : refusé, et la connexion est refusée avec la raison nommée.
Un contenu exécutable (.dll, .reds, scripts CET, .asi) est refusé tant que ces octets exacts ne sont pas vérifiés. Warden permet de demander une relecture, mais le délai n'est pas garanti : ne calez pas un lancement dessus. Il n'existe aucun réglage côté joueur pour lever cette limite.
Le mode requiredMods.unsecured lève ce plafond pour un seul serveur. Le serveur reçoit alors un badge UNSECURED et un avertissement rouge dans le navigateur de serveurs, et les joueurs doivent confirmer avant de rejoindre. Réservez-le à une communauté privée ou de confiance, pas à un serveur public.
Gardez en tête que vous êtes l'hébergeur des paquets hébergés : chaque nouveau joueur télécharge l'ensemble depuis votre serveur, et la bande passante est à votre charge. Pour retirer un mod, supprimez son entrée dans Warden puis redémarrez : les joueurs n'ont rien à désinstaller. Le guide complet est la page mods requis par le serveur, et la page mods et ressources personnalisées décrit le côté joueur.
Option : brancher une base de données MySQL ou MariaDB
Le pont SQL est désactivé par défaut. Il ne gère que MySQL et MariaDB, sans PostgreSQL, SQLite ni SQL Server, et aucune ressource oxmysql n'est nécessaire. Créez une base et un compte dédiés, avec les droits limités à cette base, puis ajoutez ce bloc à server.jsonc.
{
"database": {
"enabled": true,
"connectionString": "",
"connectionStringEnvironmentVariable": "OP77_DATABASE_CONNECTION",
"maxRows": 10000
}
}
La chaîne de connexion se fournit par la variable OP77_DATABASE_CONNECTION, au format MySqlConnector (valeurs séparées par des points-virgules), et non sous forme d'URL mysql://.
Server=127.0.0.1;Port=3306;Database=open77;User ID=open77;Password=SECRET;
Redémarrez le serveur après tout changement. Les joueurs n'ont jamais à joindre le port 3306, qui ne doit pas être ouvert sur Internet pour une base locale. Chaque ressource qui accède à la base doit déclarer la permission database.access, et toutes partagent la même base et le même compte SQL : n'accordez cette permission qu'à des ressources que vous avez relues. Une copie du dossier resources/ ne sauvegarde pas les données SQL. La page configuration SQL détaille la vérification depuis Lua et le dépannage.
Nos conseils
Gardez la clé de licence dans l'environnement, jamais dans un fichier partagé ni dans une option de la ligne de commande. Utilisez une clé par serveur pour pouvoir en révoquer une sans couper les autres. Sauvegardez ensemble
server.jsonc,access.json, vos ressources, la base de données et le fichier de clé de signature des ressources (.open77/resource-signing-key.jsondans l'exemple de la documentation), car le serveur doit conserver cette clé lors d'une migration. Ne la commitez jamais, et automatisez ces sauvegardes : une copie manuelle finit toujours par être oubliée. Lancez--check-configavant chaque redémarrage de production, et gardez Warden en local.
Faire connaître son serveur sur Serveur Privé
Une fois le serveur stable et ouvert au public, la visibilité vient des joueurs qui cherchent une communauté Cyberpunk 2077. Notre listing de serveurs Cyberpunk 2077 réunit les serveurs communautaires au même endroit, pour les joueurs qui veulent savoir où jouer.
Avant de référencer le vôtre, préparez ce qu'un joueur veut savoir avant de rejoindre :
- Un nom clair et une description qui annonce le mode de jeu (roleplay, courses, freeroam, PvP), la langue et l'ambiance.
- Vos règles principales et un moyen de contacter l'équipe.
- Votre Discord, où les joueurs posent leurs questions et suivent les annonces.
- Comment rejoindre : le lien de connexion directe
open77://connect?server=identifiant, où l'identifiant est l'identifiant public attribué par le serveur maître et non l'adresse de connexion, qui peut changer. Ce lien ne contourne ni la billetterie ni vos règles d'accès, et il ne fait rien si le joueur n'a pas le launcher : ajoutez une phrase d'explication à côté. - Les prérequis côté joueur : Cyberpunk 2077 en version 2.31, Phantom Liberty, le launcher et l'accès alpha. Un joueur qui ne les connaît pas prend un serveur fonctionnel pour un serveur cassé.
Le fonctionnement complet du lien direct est décrit dans la page votre serveur dans le launcher.
Dépannage : les symptômes fréquents
- Le serveur n'apparaît pas dans le launcher : vérifiez la licence, la visibilité public, la connexion au serveur maître et une adresse publique joignable.
- Les joueurs voient le serveur mais ne peuvent pas s'y connecter : une redirection de port ou une IP publique manque, surtout derrière une box. Vérifiez UDP 11778 et TCP 11779.
- Il est listé mais les téléchargements échouent : testez depuis l'extérieur l'URL publique de téléchargement et le port TCP associé.
- Les changements faits dans Warden disparaissent au redémarrage : une option de démarrage ou une variable d'environnement surcharge encore le même champ.
- Aucun message de ressource dans la console Warden : les niveaux de log
warneterrormasquent les messages d'information. Passez eninfooudebug, puis revenez eninfoune fois le test fini. - Un joueur est refusé : contrôlez son accès alpha, sa version du jeu (2.31 exactement), sa copie de Phantom Liberty et la liste blanche du serveur.
Foire aux questions
Faut-il posséder Cyberpunk 2077 sur la machine du serveur ?
Non. Le serveur dédié fonctionne indépendamment du jeu, de REDengine et du plugin client, et ne charge jamais de contenu du jeu. Il existe pour Windows x64 et Linux x64 (Debian et distributions compatibles), avec le runtime .NET inclus. En revanche, chaque joueur doit posséder Cyberpunk 2077 en version 2.31 avec Phantom Liberty, sous Windows 10 ou 11 en 64 bits.
Combien coûte l'hébergement d'un serveur Open77 ?
La plateforme est prévue pour être gratuite. Les joueurs achètent le jeu et l'extension, et les propriétaires de serveur paient leur propre hébergement, qui ne coûte rien de plus si vous hébergez sur votre propre machine. La documentation ne fixe pas de configuration minimale : à titre indicatif, un VPS de 2 à 4 cœurs avec 4 Go de RAM suffit pour démarrer.
Quels ports faut-il ouvrir ?
Le port UDP 11778 pour le trafic de jeu et le port TCP 11779 pour le téléchargement des ressources, par défaut. Le port 11780 de Warden reste en local, et le port 3306 d'une base locale ne doit pas être exposé.
Mes scripts FiveM fonctionnent-ils sur Open77 ?
En partie. Open77 propose des alias de compatibilité (threads, commandes, événements, exports) et le fxmanifest.lua devient open77.lua. Mais tout ce qui dépend des natives de GTA V doit être réécrit avec l'API Open77, qui décrit les entités de Cyberpunk 2077.
Combien de joueurs un serveur peut-il accueillir ?
Aucun plafond n'est garanti : la capacité dépend du matériel, des ressources chargées et de la charge. Vous réglez le maximum avec network.maximumPlayers ou l'option --max-players (la documentation donne 32 en exemple).
Que faire si la clé de licence est perdue ou divulguée ?
La clé ne s'affiche qu'une fois et la plateforme ne peut pas la retrouver. Révoquez-la dans le keymaster et créez-en une nouvelle. La révocation coupe immédiatement tous les serveurs enrôlés avec cette clé, d'où l'intérêt d'une clé par serveur.
Peut-on garder un serveur privé entre amis ?
Oui. En visibilité private, le serveur reste enrôlé et sous licence mais n'apparaît pas dans la liste publique. Vos amis s'y connectent avec la connexion directe du launcher (nom d'hôte ou IP et port), à condition d'avoir l'accès alpha. Ajoutez une liste blanche pour verrouiller l'accès.


Aucun commentaire pour le moment.