Ein reiner (Vanilla-)Rust-Server kann von sich aus keine Plugins ausführen. Dafür braucht er ein Modding-Framework: entweder Oxide oder Carbon. Diese Anleitung erklärt, was ein Framework tut, wie sich die beiden unterscheiden, welches Sie wählen sollten, wie Sie es installieren und was nach jedem monatlichen Rust-Update zu tun ist.
Was Sie brauchen
- Ein Rust-Server, der ohne Framework normal startet
- Zugriff auf die Serverdateien (Dateimanager, SFTP oder SSH auf Ihrem eigenen VPS)
- Die Möglichkeit, den Server zu stoppen und wieder zu starten
- Etwa 20 Minuten
Rust bei StormHost
Rust-Server bereiten wir gerade vor. Diese Anleitung gilt auch für einen Rust-Server auf Ihrem eigenen VPS (Installationsanleitung).
Was ein Modding-Framework ist#
Ein Framework ist eine Servererweiterung, die zusammen mit Rust geladen wird und den Plugins die Tür öffnet. Ein Plugin ist eine einfache Textdatei mit C#-Quellcode und der Endung .cs. Das Framework kompiliert sie beim Laden selbst und führt sie dann aus. Sie laden also nur die .cs-Datei hoch; kompilieren müssen Sie nichts.
Was ein Framework mitbringt:
- Hooks – Stellen im Spiel, an die sich Plugins anhängen (ein Spieler hat sich verbunden, etwas wurde gebaut, jemand hat einen Stein abgebaut …). Über sie kann ein Plugin fast alles verändern.
- Ein Berechtigungssystem – Spielergruppen und Berechtigungen wie
kits.admin. Siehe Berechtigungen auf einem Rust-Server. - Konfiguration, Daten und Übersetzungen der Plugins – jedes Plugin legt eine eigene Einstellungsdatei (JSON) an, die Sie bearbeiten.
Spieler müssen nichts installieren. Alles läuft nur auf dem Server, und Spieler verbinden sich mit demselben Rust-Client wie mit jedem anderen Server.
Die Registerkarte Modded im Serverbrowser
Oxide und Carbon markieren den Server standardmäßig als modded. Spieler finden ihn dann in der Registerkarte Modded und sehen in den Serverdetails das Label Oxide bzw. Carbon. Wenn Ihre Plugins das Gameplay verändern (schnelleres Farmen, Kits, Teleports), lassen Sie den Server in Modded – dort suchen Spieler nach solchen Servern.
Oxide und uMod: warum zwei Namen#
Oxide ist seit Langem das am weitesten verbreitete Framework für Rust. Das Projekt wurde zwischenzeitlich in uMod umbenannt, und unter diesem Namen läuft bis heute die Plugin-Website umod.org (öffnet sich in einem neuen Fenster). Das Framework für Rust selbst heißt aber weiterhin Oxide: Die Downloads heißen Oxide.Rust.zip, Befehle beginnen mit oxide. und im Serverbrowser steht das Label „Oxide“. Umgangssprachliche Namen wie „oxymod“ oder „oxide mod“ meinen dasselbe.
Laden Sie Oxide aus dem offiziellen Repository OxideMod/Oxide.Rust auf GitHub (öffnet sich in einem neuen Fenster) herunter. Neue Versionen erscheinen oft, typischerweise mehrmals im Monat und immer nach einem Rust-Update.
Carbon#
Carbon ist ein neueres Framework (erschienen 2022). Es ist darauf ausgelegt, für Oxide geschriebene Plugins ohne Änderungen auszuführen. Sie laden Plugins also von denselben Quellen herunter, und sie verwenden dieselben .cs-Dateien.
Unterschiede zu Oxide laut den Carbon-Entwicklern:
- Es verändert keine Spieldateien. Oxide überschreibt Dateien im Ordner
RustDedicated_; Carbon hat alles in seinem eigenen OrdnerData/ Managed carbon. - Es aktualisiert sich selbst. Beim Serverstart lädt es die Version herunter, die zum installierten Rust passt.
- Hooks nur bei Bedarf. Es ruft nur die Hooks auf, die ein Plugin tatsächlich nutzt, und spart so Leistung.
- Eingebaute Werkzeuge. Ein Admin-Panel im Spiel (Befehl
/cpanel), optionale Module (Multiplikator für die Sammelrate, Stack-Größen, Unsichtbarkeit für Admins, Whitelist, automatischer Wipe) und ein Profiler.
Carbon gibt es in zwei Builds: Release (vollständig, mit Modulen und Panel) und Minimal (nur das Laden von Plugins). Wählen Sie für den Anfang Release.
Vergleich#
| Oxide | Carbon | |
|---|---|---|
| Plugins von umod.org | Ja, nativ | Ja, die meisten Oxide-Plugins funktionieren unverändert |
| Wohin es installiert wird | Überschreibt Spieldateien in RustDedicated_ | Eigener Ordner carbon im Hauptordner des Servers; die Spieldateien bleiben unberührt |
| Nach einem Rust-Update | Sie müssen eine neue Oxide-Version hochladen (das Spielupdate überschreibt Oxide) | Aktualisiert sich beim Start selbst; Sie aktualisieren nur Rust |
| Leistung (laut den Carbon-Entwicklern) | Alle Hooks aktiv | Hooks werden nur aktiviert, wenn ein Plugin sie braucht |
| Eingebaute Werkzeuge | Keine, alles erledigen Plugins | Admin-Panel, Module, Profiler, Webpanel |
| Plugin-Ordner | oxide/plugins | carbon/plugins |
| Plugin-Konfiguration | oxide/config | carbon/configs (Achtung, Plural) |
| Daten, Übersetzungen, Logs | oxide/data, oxide/lang, oxide/logs | carbon/data, carbon/lang, carbon/logs |
| Befehlspräfix | oxide. oder kurz o. | c. |
| Standard-Berechtigungsgruppen | default, admin | default, admin, moderator |
| Label im Serverbrowser | Oxide | Carbon |
Wie Sie wählen#
- Wählen Sie Oxide, wenn Sie den am weitesten verbreiteten Standard möchten. Plugin-Autoren testen zuerst damit, und die meisten Anleitungen im Internet gehen davon aus. Der Preis dafür ist ein manuelles Update nach jedem Rust-Update.
- Wählen Sie Carbon, wenn Sie möglichst wenig Arbeit mit Updates, ein eingebautes Admin-Panel und Module möchten. Funktioniert ein Plugin unter Carbon nicht, melden Sie das dem Plugin-Autor oder der Carbon-Community.
Auf einem Server darf nur ein Framework laufen. Oxide und Carbon zusammen machen den Server kaputt.
Installation#
Bevor Sie beginnen:
- Aktualisieren Sie den Rust-Server auf die neueste Version. Die Framework-Version muss zur Spielversion passen.
- Erstellen Sie ein Backup, wenn der Server schon eine Welt hat. Siehe Gameserver-Backups.
- Finden Sie heraus, unter welchem Betriebssystem der Server läuft. Ihr eigener VPS und die meisten Gameserver-Anbieter nutzen Linux. Für Windows und Linux gibt es unterschiedliche Downloads.
Oxide
- Stoppen Sie den Server. Dateien in einen laufenden Server hochzuladen kann Daten beschädigen.
- Öffnen Sie die Seite Oxide.Rust – Releases (öffnet sich in einem neuen Fenster) und klappen Sie beim neuesten Release, das nicht als „Pre-release“ markiert ist, den Abschnitt Assets auf.
- Laden Sie die Datei für das Betriebssystem Ihres Servers herunter:
Oxide.Rust-linux.zipfür Linux,Oxide.Rust.zipfür Windows.
- Entpacken Sie das Archiv auf Ihrem Computer. Es enthält einen einzigen Ordner,
RustDedicated_Data. - Laden Sie den Ordner
RustDedicated_Dataaus dem Archiv in den Hauptordner des Servers hoch, also dorthin, wo die DateiRustDedicated(unter WindowsRustDedicated.exe) und der ursprüngliche OrdnerRustDedicated_Dataliegen. Bestätigen Sie auf Nachfrage das Überschreiben der vorhandenen Dateien. - Starten Sie den Server. Beim ersten Start legt Oxide im Hauptordner des Servers den Ordner
oxidemit den Unterordnernplugins,config,data,langundlogsan.
Auf Ihrem eigenen Linux-VPS erledigen Sie das mit diesen Befehlen (die Pfade entsprechen der Anleitung Eigener Rust-Server auf einem VPS):
curl -fL -o /opt/rust/oxide.zip https://github.com/OxideMod/Oxide.Rust/releases/latest/download/Oxide.Rust-linux.zip
unzip -o /opt/rust/oxide.zip -d /opt/rust/servercurl -fL -o /opt/rust/oxide.zip …– lädt den neuesten stabilen Linux-Build von Oxide in den Home-Ordner des Benutzersrustherunter.-flässt den Befehl mit einem Fehler abbrechen, wenn die Datei nicht existiert,-Lfolgt der Weiterleitung von GitHub zur eigentlichen Datei.unzip -o … -d /opt/rust/server– entpackt das Archiv in den Hauptordner des Servers;-oüberschreibt vorhandene Dateien ohne Rückfrage.
Führen Sie das als der Benutzer aus, unter dem der Server läuft (in der Anleitung rust; von root wechseln Sie mit su - rust zu ihm), damit die neuen Dateien diesem Benutzer gehören. Das Programm unzip muss installiert sein (apt install unzip).
Der Dateimanager kann keine Archive entpacken
Wenn der Dateimanager Ihres Hosters keine Archive entpacken kann, laden Sie die entpackten Dateien per SFTP hoch (FileZilla, WinSCP). Ordner werden dabei samt ihrer Struktur hochgeladen.
Carbon
- Stoppen Sie den Server.
- Öffnen Sie die Seite Carbon – Releases (öffnet sich in einem neuen Fenster) und suchen Sie das Release Production Build (die stabile Version für das reguläre Rust).
- Laden Sie die Datei für das Betriebssystem Ihres Servers herunter:
Carbon.für Linux,Linux. Release. tar. gz Carbon.für Windows.Windows. Release. zip
- Entpacken Sie das Archiv in den Hauptordner des Servers (dort, wo
RustDedicatedoderRustDedicated.exeliegt). Der Ordnercarbonaus dem Archiv muss direkt im Hauptordner des Servers landen, ebenso die Dateien aus der obersten Ebene des Archivs: unter Linuxlibdoorstop.soundcarbon.sh, unter Windowswinhttp.dllunddoorstop_config.ini. - Nur unter Linux: Carbon wird über Umgebungsvariablen geladen. Binden Sie deshalb im Startskript des Servers vor dem Start von
RustDedicateddie Dateicarbon/pertools/ environment. sh sourceein (Details in der VPS-Anleitung). Bei einem Gameserver-Anbieter kümmert sich der Anbieter darum; unterstützt er Carbon nicht, wird es nicht geladen. - Starten Sie den Server. Beim Start lädt Carbon die Updates für Ihre Rust-Version herunter und legt im Ordner
carbonUnterordner für Plugins, Konfigurationen und Logs an.
Auf Ihrem eigenen Linux-VPS:
curl -fL -o /opt/rust/carbon.tar.gz https://github.com/CarbonCommunity/Carbon/releases/download/production_build/Carbon.Linux.Release.tar.gz
tar -xzf /opt/rust/carbon.tar.gz -C /opt/rust/servercurl -fL -o /opt/rust/carbon.tar.gz …– lädt den stabilen Build (Production) von Carbon für Linux herunter.tar -xzf … -C /opt/rust/server– entpackt (-x) das mit gzip komprimierte (-z) Archiv aus der Datei (-f) in den Serverordner (-C).
Überprüfung#
Oxide
Beobachten Sie beim Start die Konsole. Sie sehen Zeilen zum Laden von Oxide und seinen Erweiterungen.
Geben Sie in der Serverkonsole ein:
text oxide.versionSie sehen die Version und den Branch, zum Beispiel:
Ausgabetext Oxide.Rust Version: 2.0.<VERSIONSNUMMER> Oxide.Rust Branch: masterIn der F1-Konsole im Spiel sieht die Ausgabe anders aus:
Server is running Oxide … and Rust ….Prüfen Sie, ob im Hauptordner des Servers ein Ordner
oxidemit dem Unterordnerpluginsentstanden ist.
Carbon
Beobachten Sie beim Start die Konsole. Carbon gibt den Ladefortschritt und gegebenenfalls den Download eines Updates aus.
Geben Sie in der Serverkonsole ein:
text c.versionDer Befehl gibt die Carbon-Version und die Rust-Version aus, auf der es läuft.
Prüfen Sie, ob der Ordner
carbondie Unterordnerplugins,configsundlogssowie die Dateiconfig.jsonenthält.
Wo Sie Befehle eingeben: in der Serverkonsole (bei einem Gameserver-Anbieter die Registerkarte Konsole), über RCON (siehe Admin und RCON) oder in der F1-Konsole im Spiel, wenn Sie auf dem Server Admin sind.
Nach jedem Rust-Update#
Facepunch veröffentlicht einmal im Monat ein großes Rust-Update, meist am Abend des ersten Donnerstags im Monat (die Standardzeit des Wipe-Timers ist 19:00 Uhr Londoner Zeit, also 20:00 Uhr in Mitteleuropa). Dazwischen erscheinen gelegentlich kleinere Fixes. Nach jedem Spielupdate muss auch eine passende Framework-Version folgen.
Oxide
- Warten Sie, bis auf GitHub (öffnet sich in einem neuen Fenster) eine neue Oxide-Version erscheint (meist kurz nach dem Rust-Update).
- Stoppen Sie den Server.
- Aktualisieren Sie Rust (bei einem Gameserver-Anbieter per Update oder Neuinstallation des Spiels, auf einem VPS mit SteamCMD).
- Laden Sie Oxide erneut hoch, genauso wie bei der Installation. Das Spielupdate überschreibt die Dateien in
RustDedicated_mit sauberen Kopien, wodurch Oxide verschwindet.Data/ Managed - Starten Sie den Server und prüfen Sie
oxide.version.
Der Ordner oxide mit Plugins, Konfiguration und Daten bleibt erhalten; das Spielupdate löscht ihn nicht.
Carbon
- Stoppen Sie den Server.
- Aktualisieren Sie Rust.
- Starten Sie den Server. Beim Start vergleicht Carbon seine Version mit der Rust-Version und lädt den passenden Build selbst herunter. Die Entwickler veröffentlichen die stabile Version für das monatliche Update etwa eine Stunde vor dem Rust-Release.
- Prüfen Sie
c.version.
Große Updates können auch Plugins kaputt machen
Ein monatliches Update kann den Spielcode ändern, mit dem ein Plugin arbeitet. Meldet ein Plugin einen Kompilierfehler, prüfen Sie auf seiner Seite, ob eine neue Version erschienen ist. Ein monatliches Update bedeutet außerdem meist eine neue Welt (Force-Wipe), siehe Wipe eines Rust-Servers.
Wechsel von Oxide zu Carbon#
Carbon kann Konfigurationen, Daten, Übersetzungen und Berechtigungen von Oxide übernehmen. Das Vorgehen laut der Carbon-Dokumentation:
- Stoppen Sie den Server.
- Schalten Sie alles ab, was Oxide automatisch installieren oder aktualisieren würde (zum Beispiel eine Option „Oxide installieren“ bei Ihrem Anbieter oder einen Schritt in Ihrem eigenen Startskript).
- Bringen Sie die Spieldateien in einen sauberen Zustand: Lassen Sie die Spieldateien überprüfen (SteamCMD mit dem Parameter
validate, „Dateien überprüfen“ bei einem Gameserver-Anbieter oder eine Neuinstallation des Spiels ohne Löschen der Daten). Dadurch verschwinden die Dateien, die Oxide überschrieben hat. - Installieren Sie Carbon wie oben beschrieben.
- Starten Sie den Server. Beim ersten Start findet Carbon die Oxide-Reste und kopiert Konfigurationen, Daten, Übersetzungen, Benutzer und Gruppen automatisch in seinen eigenen Ordner. Oxide-Erweiterungen (die Dateien
Oxide.Ext.*.dllinRustDedicated_) verschiebt es nachData/ Managed carbon/extensions. - Prüfen Sie
c.versionund stellen Sie mitc.pluginssicher, dass die Plugins geladen wurden.
Falls die automatische Übernahme nicht stattgefunden hat (sie läuft nur einmal), übertragen Sie die Daten von Hand:
- Kopieren Sie den Inhalt des Ordners
oxidenachcarbon, außer dem Ordnerconfig, - kopieren Sie den Inhalt von
oxide/confignachcarbon/configs, - verschieben Sie die Dateien
Oxide.Ext.*.dllvonRustDedicated_nachData/ Managed carbon/extensions.
Nach der Übernahme brauchen Sie den Ordner oxide nicht mehr. Befehle mit den Präfixen oxide. und o. funktionieren in Carbon nicht; verwenden Sie stattdessen c. (zum Beispiel c.grant statt oxide.grant).
Fehlerbehebung#
Der Server kennt den Befehl oxide.version nicht#
Oxide wurde nicht geladen. Die häufigsten Ursachen:
- Die Dateien liegen eine Ebene zu tief: Sie haben den ganzen Archivordner hochgeladen, und es ist zum Beispiel
Oxide.entstanden. Der OrdnerRust/ RustDedicated_ Data/… RustDedicated_Dataaus dem Archiv muss den ursprünglichen im Hauptordner des Servers überschreiben. - Sie haben die Windows-Version (
Oxide.Rust.zip) auf einen Linux-Server hochgeladen oder umgekehrt. - Nach dem Hochladen von Oxide lief ein Spielupdate, das die Dateien überschrieben hat (siehe nächster Abschnitt).
Oxide ist nach einem Neustart verschwunden#
Das Startskript oder Ihr Hoster aktualisiert und überprüft die Spieldateien bei jedem Start. Die Überprüfung versetzt die Dateien in den sauberen Zustand zurück und entfernt Oxide daraus. Schalten Sie das automatische Update beim Start ab oder laden Sie Oxide nach jedem Update erneut hoch.
Der Server stürzt nach der Installation des Frameworks beim Start ab#
Die Framework-Version passt nicht zur Spielversion. Aktualisieren Sie Rust und das Framework auf die neuesten Versionen. Laden Sie bei Oxide ein Release herunter, das nach dem letzten Rust-Update veröffentlicht wurde. Details finden Sie im Serverlog und im Ordner oxide/logs bzw. carbon/logs.
Carbon lädt unter Linux nicht, der Server läuft als Vanilla#
Das Startskript bindet carbon/ vor dem Start von RustDedicated nicht ein. Ergänzen Sie die source-Zeile wie in der VPS-Anleitung beschrieben. Laut Carbon-Dokumentation brauchen manche Umgebungen (vor allem Docker) zusätzlich export TERM=xterm.
Ich habe Oxide und Carbon gleichzeitig installiert#
Die beiden Frameworks können nicht zusammen funktionieren. Stoppen Sie den Server, lassen Sie die Spieldateien überprüfen (validate), behalten Sie nur eines der beiden und folgen Sie dem Abschnitt „Wechsel von Oxide zu Carbon“.
Ein Plugin funktioniert unter Oxide, aber nicht unter Carbon#
Stellen Sie sicher, dass Sie die neueste Version des Plugins und von Carbon haben. Die Fehlerausgabe finden Sie in der Konsole und in carbon/logs. Bleibt der Fehler bestehen, melden Sie ihn dem Plugin-Autor oder der Carbon-Community und fügen Sie die Ausgabe bei.
Der Server soll nicht in der Registerkarte Modded erscheinen#
In Carbon gibt c.whymodded aus, warum der Server als modded markiert ist, und c.gocommunity nimmt die für die Registerkarte Community nötigen Änderungen vor. In Oxide wird die Markierung über die Option "Modded" in der Datei oxide/oxide.config.json gesteuert. Wenn Ihre Plugins aber das Gameplay verändern, lassen Sie den Server in Modded.
Zusammenfassung
- Für Plugins ist ein Framework (Oxide oder Carbon) nötig. Spieler installieren nichts.
- Oxide ist am weitesten verbreitet; Carbon führt dieselben Plugins aus, aktualisiert sich selbst und hat eingebaute Werkzeuge.
- Auf einem Server darf nur ein Framework sein.
- Oxide kommt über den Ordner
RustDedicated_Datain den Hauptordner des Servers, Carbon als Ordnercarbon(unter Linux zusätzlichenvironment.sh). - Überprüfung:
oxide.versionbzw.c.version. - Laden Sie Oxide nach jedem Rust-Update erneut hoch; Carbon aktualisiert sich selbst.
Weiterführende Links#
- Oxide: Installation (offizielle Dokumentation) (öffnet sich in einem neuen Fenster)
- Oxide.Rust – Releases auf GitHub (öffnet sich in einem neuen Fenster)
- Carbon: Installation (öffnet sich in einem neuen Fenster)
- Carbon: Umstieg von Oxide (öffnet sich in einem neuen Fenster)
- Carbon im Facepunch-Wiki (öffnet sich in einem neuen Fenster)
- Rust-Plugins auf umod.org (öffnet sich in einem neuen Fenster)