Aller au contenu

Héberger une map custom Rust sur un serveur

Réponse rapide : envoyez votre fichier .map quelque part qui donne un lien de téléchargement direct en https, mettez server.levelurl "<ce lien>" sur la ligne de démarrage de votre serveur ou dans son server.cfg, retirez server.seed et server.worldsize, puis redémarrez le serveur. Le serveur et chaque joueur téléchargent la map depuis ce lien.

  • La map custom en fichier .map, venant de Crucible Heightmap, de Creator ou de RustEdit.
  • Un endroit où mettre le fichier qui donne un lien de téléchargement direct : ouvrir le lien dans un navigateur lance le téléchargement tout de suite, sans page ni bouton entre les deux. Ce doit être un lien https.
  • Un serveur Rust que vous pouvez redémarrer, avec sa ligne de démarrage ou son server.cfg ouvert pour édition.

Parcourez la map avant tout le monde. Crucible Local Server la lance sur votre propre PC sans aucun lien : glissez la .map sur sa fenêtre, appuyez sur Assigner, démarrez le serveur et appuyez sur Rejoindre. Vérifiez que les joueurs spawnent, que les monuments reposent sur le sol et que rien ne bloque les routes. Le parcours complet est tester votre map sur un serveur Rust local.

Une fois la map envoyée (étape 2), testez le lien de la même façon. Dans l’onglet Carte, choisissez URL hébergée, collez le lien dans URL du niveau (.map en téléchargement direct) dans l’onglet Config, et démarrez le serveur. Si elle se charge, le lien marche.

2. Envoyez la map vers un lien de téléchargement direct

Section intitulée « 2. Envoyez la map vers un lien de téléchargement direct »
  • Le téléchargement doit démarrer tout de suite. Une page de partage de fichiers avec un bouton Télécharger ne marche pas : le serveur reçoit la page au lieu de la map.
  • Sur Dropbox, un lien de partage se termine par dl=0, qui ouvre une page. Changez-le en dl=1.
  • Gardez le lien en ligne. Chaque nouveau joueur télécharge la map depuis lui la première fois qu’il rejoint, donc un lien mort tient les nouveaux joueurs dehors tant que le serveur lance cette map.
  • Vérifiez-le : collez le lien dans un navigateur. Il doit télécharger un fichier qui se termine par .map, de la même taille que le vôtre.

Sur la ligne de démarrage du serveur :

Fenêtre de terminal
RustDedicated.exe -batchmode +server.identity "my_server" +server.port 28015 +server.levelurl "https://example.com/maps/mymap.map" +server.maxplayers 100 +rcon.port 28016 +rcon.password "your-own-password" +rcon.web 1

Ou en ligne dans server.cfg, dans le dossier cfg du serveur (server/<identity>/cfg/, à côté de RustDedicated.exe) :

server.levelurl "https://example.com/maps/mymap.map"
  • Retirez server.seed et server.worldsize. Ces deux-là font une map procédurale. Avec une level URL, c’est le fichier de map qui définit le monde.
  • Mettez le lien entre guillemets.
  • Si la ligne de démarrage et server.cfg le définissent tous les deux, la ligne de démarrage l’emporte.

Plus de détails sur les deux endroits : l’exemple de server.cfg Rust et les arguments de lancement.

Rust lit la map une seule fois, au démarrage du serveur, donc redémarrez-le. La console affiche alors :

Loading custom map from https://example.com/maps/mymap.map

et la liste des serveurs indique la map comme Custom Map. Si le téléchargement échoue, la console affiche Couldn't Download Level: avec le nom de la map et la raison, et le serveur s’arrête. Les messages du serveur Rust dans l’index des erreurs disent ce que chacun signifie et quoi changer.

Le serveur et chaque joueur gardent une copie de chaque map téléchargée, rangée sous son lien. Envoyez une map modifiée vers le même lien et ils continuent tous de charger l’ancienne. Deux façons de contourner :

  • Un nouveau nom de fichier. Envoyez-la sous mymap_v2.map et pointez server.levelurl vers le nouveau lien. Tout le monde la télécharge de nouveau. Rust nomme la sauvegarde du monde d’une map custom d’après le nom de fichier de la map, donc cela démarre aussi un nouveau monde.
  • Le même nom de fichier avec un nouveau lien. Pour garder le monde après une petite correction, gardez le nom de fichier et ne changez que la fin du lien, par exemple https://example.com/maps/mymap.map?v=2. Ouvrez d’abord le nouveau lien dans un navigateur pour vérifier que votre hébergeur donne toujours la map avec.

Arrêtez le serveur avant de changer le lien. Il ne lit la map qu’au démarrage.

Quand vous voulez la map sur un serveur qui reste en ligne sans votre PC, Drizzza est partenaire de Pine Hosting : pine.host/drizzza.

Mettez votre serveur Rust en ligne en quelques minutes chez Pine Hosting, avec protection DDoS et un installateur de plugins uMod. 30 % de réduction avec le code DRIZZZA.

Les étapes de cette page sont les mêmes sur un serveur hébergé : envoyez la map, réglez server.levelurl là où l’hébergeur vous laisse modifier la ligne de démarrage ou server.cfg, et redémarrez.

Un serveur Rust standard lance le terrain, les calques et les prefabs de n’importe quelle .map. Les extras que certains éditeurs enregistrent dans le fichier ont besoin d’un module côté serveur pour prendre vie : les puzzles et spawners de RustEdit ont besoin de l’extension RustEdit sur un serveur Carbon ou Oxide, et le câblage, les volumes et les profils de loot de Creator ont besoin de l’extension serveur de Creator. Voir custom data et RustEdit et ce qu’un serveur standard lit.