Aller au contenu

Installer des plugins Rust avec Oxide (uMod)

Oxide — hébergé aujourd’hui sous le nom uMod — est le cadre qui permet de faire tourner des plugins sur un serveur Rust : kits, téléportation, économie, zones protégées. Cette page s’adresse au propriétaire d’un serveur Rust CloudFive qui veut passer de la version vanilla à un serveur moddé, sans se retrouver avec un serveur qui ne démarre plus.

Si vous n’avez pas encore de serveur en service, commencez par Installer un serveur Rust.

Trois conséquences à connaître avant de l’installer.

  • Votre serveur change de liste. Un serveur avec Oxide apparaît dans l’onglet des serveurs moddés, plus dans les serveurs communautaires. Les joueurs qui ne veulent que du vanilla ne vous verront plus ; ceux qui cherchent du moddé vous trouveront. C’est la première cause de « mon serveur a disparu ».
  • Vous dépendez d’un intermédiaire. À chaque mise à jour forcée de Rust, le premier jeudi du mois, Oxide doit être reconstruit pour la nouvelle version du jeu. Tant que ce n’est pas fait, les plugins ne se chargent pas.
  • Un plugin est du code exécuté par votre serveur. Un fichier .cs a les mêmes droits que le serveur lui-même. Ne téléchargez que depuis umod.org ou une source que vous connaissez vraiment.

Deux chemins. Le premier est le plus propre quand votre serveur le propose ; le second marche dans tous les cas.

  1. Arrêtez le serveur depuis le panel.

  2. Ouvrez la section des variables de démarrage et repérez celle qui choisit le cadre de mods. Activez Oxide.

  3. Lancez l’action de réinstallation du serveur, puis attendez la fin du téléchargement dans la console.

  4. Démarrez le serveur et vérifiez la version installée depuis la console :

    oxide.version
  1. Téléchargez l’archive Oxide pour Rust version Linux depuis umod.org. C’est bien la version Linux qu’il faut, pas la version Windows.

  2. Arrêtez le serveur.

  3. Connectez-vous en SFTP à la racine du serveur — celle qui contient le dossier server/ — comme expliqué dans Accéder à son serveur en SFTP.

  4. Envoyez l’archive à cette racine, puis extrayez-la sur place avec le gestionnaire de fichiers. Les fichiers existants doivent être remplacés.

  5. Démarrez le serveur. La console annonce le chargement d’Oxide ; oxide.version confirme.

  1. Sur umod.org, choisissez un plugin et lisez sa page en entier : version de Rust visée, dépendances éventuelles, permissions. Les trois quarts des problèmes d’installation sont annoncés sur cette page.

  2. Téléchargez le fichier .cs. N’ouvrez pas, ne renommez pas, ne « corrigez » pas son contenu.

  3. Déposez-le dans oxide/plugins/, en SFTP ou par le gestionnaire de fichiers.

  4. Surveillez la console : Oxide détecte le nouveau fichier et le charge sans redémarrage. Si rien ne bouge, forcez-le :

    oxide.load MonPlugin
  5. Vérifiez la liste des plugins actifs :

    oxide.plugins
  6. Accordez les permissions dont le plugin a besoin, en les reprenant telles quelles depuis sa page :

    oxide.grant group default monplugin.use
  7. Testez en jeu, puis seulement après, installez le plugin suivant.

Les permissions se donnent à un groupe (group default pour tout le monde, group admin pour l’équipe) ou à un joueur précis par son SteamID64. oxide.revoke reprend un droit, avec la même syntaxe.

Oxide range tout dans un dossier unique, à la racine du serveur.

  • Répertoireoxide/
    • Répertoireplugins/ les fichiers .cs que vous installez
      • …
    • Répertoireconfig/ un fichier .json par plugin, créé au premier chargement
      • …
    • Répertoiredata/ les données produites par les plugins : clans, soldes, kits
      • …
    • Répertoirelang/ les textes affichés aux joueurs, traduisibles
      • …
    • Répertoirelogs/ les erreurs des plugins, datées
      • …

Le fichier de configuration d’un plugin n’existe qu’après son premier chargement : inutile de le chercher avant. Pour le modifier :

  1. Ouvrez le fichier .json correspondant dans oxide/config/.

  2. Changez les valeurs sans toucher à la structure. Pas de virgule en trop après la dernière ligne d’un bloc, pas de guillemet oublié : un JSON invalide empêche le plugin de se charger.

  3. Rechargez le plugin pour appliquer :

    oxide.reload MonPlugin
  4. Lisez la console : elle confirme le rechargement, ou nomme la ligne fautive.

Le dossier data/ ne doit pas être édité à la main sauf indication du plugin : il contient l’état en cours, pas des réglages. Il survit aux wipes de carte, ce qui est souvent voulu — voir Wipe et sauvegardes sur Rust.

Le premier jeudi du mois, Rust change de version. L’ordre des opérations compte.

  1. Attendez qu’Oxide soit publié pour la nouvelle version du jeu. Tant que ce n’est pas le cas, redémarrer ne fera que vous priver de vos plugins.

  2. Prenez une sauvegarde.

  3. Mettez à jour les fichiers du jeu, puis Oxide, par la même méthode que lors de l’installation.

  4. Démarrez et lisez la console du début à la fin. Les plugins incompatibles s’y nomment eux-mêmes.

  5. Mettez à jour un à un les plugins qui ont échoué, en reprenant leur fichier sur umod.org.

  6. Retirez ceux qui ne sont plus maintenus : un plugin abandonné finira par faire tomber le serveur.

  1. Si le serveur tourne encore, déchargez le plugin sans redémarrer :

    oxide.unload MonPlugin
  2. Si le serveur ne démarre plus, cherchez le coupable dans la console et dans oxide/logs/ : le nom du plugin figure dans la ligne d’erreur.

  3. Serveur arrêté, déplacez son fichier .cs hors de oxide/plugins/ — créez un dossier plugins-desactives/ à la racine. Ne le supprimez pas : vous voudrez peut-être y revenir, et le fichier garde votre version qui fonctionnait.

  4. Démarrez. Si le serveur tient, le coupable est identifié.

  5. Si le serveur plante toujours, videz oxide/plugins/ dans votre dossier de côté, démarrez à vide, puis remettez les plugins par moitié. Vous isolez le fautif en quelques essais.

Le plugin ne se charge pas et la console reste muette. Vérifiez l’extension du fichier : un .cs.txt téléchargé par le navigateur ne sera jamais vu. Vérifiez aussi le dossier — oxide/plugins/, pas oxide/ ni plugins/ à la racine.

La console annonce une erreur de compilation. Le plugin ne vise pas votre version de Rust ou d’Oxide. Reprenez-le depuis umod.org et comparez les versions annoncées. Modifier le code n’est pas une solution si vous ne lisez pas le C#.

Le plugin est chargé mais ne répond pas en jeu. C’est une permission manquante neuf fois sur dix. Reprenez les noms exacts sur la page du plugin et accordez-les avec oxide.grant. Les fautes de frappe dans un nom de permission ne génèrent aucune erreur.

Le serveur a perdu tous ses plugins après un redémarrage. Une mise à jour du jeu est passée et Oxide a été écrasé par les fichiers vanilla. Réinstallez Oxide, les plugins et leurs configurations sont toujours dans oxide/.

Le serveur rame depuis l’installation d’un plugin. Les plugins sont le premier suspect d’un serveur Rust lent. La méthode de diagnostic est dans Optimiser les performances d’un serveur Rust.

Rien de tout cela. Consultez status.cloudfive.xyz, puis ouvrez un ticket de support avec le nom du plugin, sa version et les lignes de console concernées. Notez que le support intervient sur l’hébergement et le serveur, pas sur le code d’un plugin tiers : pour cela, le fil de discussion du plugin sur uMod reste le bon endroit, et le Discord CloudFive une aide entre administrateurs.