How to install Oxide or Carbon plugins on your Rust server

Plain Rust is a survival game with no commands for players. Plugins add everything else: teleporting home, kits, clans, shops, protection and events. Rust plugins run on a modding framework, and the two common ones are Oxide (also known as uMod) and Carbon. You pick one, install it, then add plugins to it.

Pick a framework

Both do the same job: they hook into the game so plugins can change how it behaves. Plugins are written for one, and many work on both, so check each plugin's page.

  • Oxide has been around for years and has the largest plugin library, hosted on the uMod site.
  • Carbon is a newer framework built for speed, and it can load most Oxide plugins.

If you are not sure, Oxide is the safe choice because almost every guide and plugin assumes it. Run only one framework on a server, never both.

Install the framework

On a managed panel, there is often a startup option or egg that installs Oxide or Carbon for you. If so, enable it and restart. Otherwise:

  1. Download the framework's server build for Linux or Windows, whichever your server uses, from its official site.
  2. Stop the server and take a backup.
  3. Upload the files and extract them over the game's folder, so the framework's files replace the game's own.
  4. Start the server. The first start creates a folder, oxide or carbon, with plugins, config, data and lang inside.

Read the console. It should print the framework's version at startup. If it does not, the files were not placed in the right folder.

Add a plugin

  1. Download the plugin from the uMod site or the author's page. Plugins are .cs files.
  2. Upload the file into the framework's plugins folder with the file manager.
  3. The framework loads it within a few seconds, and the console confirms it. You do not need to restart the server.

If the plugin needs another plugin or a library, the console names it. Install that first.

Where things live

FolderWhat it holds
pluginsThe plugin .cs files
configSettings for each plugin, as .json files
dataSaved data, like player homes and clans
langText and translations you can edit

Plugin configs are created the first time the plugin loads. Edit them, then reload that plugin.

Useful console commands

oxide.plugins
oxide.reload PluginName
oxide.unload PluginName
oxide.load PluginName

These list loaded plugins and reload, unload or load one by name. On Carbon, the same job uses c. or carbon. style commands, so check its documentation. Reloading after an edit is much faster than restarting.

Permissions

Plugins check permissions, which you give to players or groups:

oxide.grant group default pluginname.use
oxide.grant user PlayerNameOrId pluginname.admin
oxide.group add vip
oxide.usergroup add PlayerNameOrId vip
oxide.show perms PluginName

The last command lists every permission a plugin defines. Give ordinary players only what you would give a stranger. Admin permissions should go to staff only. Rust admin commands and ownerid covers who counts as an admin in the first place.

After each Rust update

This is the big one. Every game update can break the framework, and the framework must be updated to match. After the monthly update:

  1. Update the server.
  2. Update Oxide or Carbon to the build for the new version.
  3. Update your plugins. Many authors release fixes within days.
  4. Read the console for load errors and remove or replace any plugin that no longer works.

A server that skips this step usually fails to start its plugins, or crashes. Plan for it on wipe day. Rust wipes explained shows where it fits.

Staying safe with plugins

  • Download only from trusted sources. A malicious plugin can give a stranger full control.
  • Read what a plugin does and what it asks for before installing.
  • Add one at a time, and watch the console.
  • Remove plugins you no longer use. Each one costs performance.

If a plugin is slow or crashes, the console shows the plugin's name in the error. How to read your server logs helps you find it.


Still stuck? Open a ticket on Discord - run /ticket in any channel, pick a department, and include your Server ID or Invoice ID so we can jump straight in.