Menu
 

Rust Oxide/uMod Plugins Guide 2025 - Installation & Configuration

Rust Oxide/uMod Plugins Guide 2025

Oxide/uMod is the most popular plugin framework for Rust servers, enabling extensive customization through thousands of community plugins. This guide covers installation, configuration, and management of plugins to create unique server experiences.

📋 Oxide/uMod Overview

  • Framework: Oxide 2.0 (latest) / uMod (legacy)
  • Plugin Count: 3000+ community plugins available
  • Compatibility: Works with Rust Dedicated Server
  • Updates: Automatic updates with OxideMod
  • Performance: Minimal overhead with proper configuration

Oxide/uMod Installation

Automatic Installation (Recommended)

# Download latest Oxide for Rust
wget https://umod.org/games/rust/download -O oxide.zip

# Extract to server directory
unzip oxide.zip -d /path/to/rust/server/

# Alternative: Use oxide.mod installer
./RustDedicated -oxide

# Verify installation
ls -la /path/to/rust/server/oxide/
ls -la /path/to/rust/server/oxide/plugins/

Windows Server Installation

  1. Download oxide.zip from umod.org
  2. Extract to Rust server root directory (where RustDedicated.exe is located)
  3. Run server once to generate configuration files
  4. Access Oxide web panel (if enabled) at http://server-ip:28016

Manual Installation

# Manual file placement
1. Copy Oxide.Rust.dll to /oxide/
2. Copy oxide directory structure:
   - /oxide/config/           # Configuration files
   - /oxide/data/             # Plugin data storage
   - /oxide/lang/             # Language files
   - /oxide/plugins/          # Plugin DLLs
   - /oxide/plugins/rust/     # Rust-specific plugins
   - /oxide/logs/             # Plugin logs

# Verify file structure
/path/to/rust/server/
├── RustDedicated.exe
├── oxide/
│   ├── Oxide.Rust.dll
│   ├── config/
│   ├── data/
│   ├── plugins/
│   └── logs/

Plugin Management

Finding and Installing Plugins

🌐 Official Sources

  • umod.org/plugins: Official plugin directory
  • Codefling: Large community plugin repository
  • GitHub: Developer-hosted plugins
  • Oxide Plugin Manager (OPM): Command-line tool

📥 Installation Methods

  • Automatic: OPM install <plugin-name>
  • Manual: Download .cs/.dll to plugins folder
  • Web Panel: Install via Oxide web interface
  • Batch: Use plugin packs for common setups

🔧 Update Management

  • Auto-update: Configure in oxide.config.json
  • Manual updates: Replace plugin files
  • Version checking: oxide.check command
  • Backup strategy: Keep previous versions

Using Oxide Plugin Manager (OPM)

# Install OPM (if not included)
curl -L https://github.com/OxideMod/OPM/releases/latest/download/opm -o opm
chmod +x opm

# Search for plugins
./opm search "economics"

# Install plugin
./opm install Economics

# Update all plugins
./opm update --all

# Remove plugin
./opm remove Economics

# List installed plugins
./opm list

Essential Plugin Categories

Economy & Shops

PluginDescriptionConfiguration File
EconomicsComplete economy system with currencyEconomics.json
Shop UIUser-friendly shop interfaceShopUI.json
PlayerPointsReward points systemPlayerPoints.json
Vending MachinesEnhanced vending machine featuresVendingMachine.json
ATM SystemBanking and ATM functionalityATM.json

Player Management

PluginDescriptionKey Features
FriendsFriend system with permissionsShare tools, build permissions
ClansClan system with territoriesClan wars, shared resources
KitsStarter kits and reward kitsTimed kits, permission-based
TeleportationTPA, home, and warp systemsCooldowns, costs, permissions
Player DatabaseEnhanced player data trackingPlaytime, statistics, history

Server Enhancement

PluginDescriptionPerformance Impact
AutoDoorsAutomatic door opening/closingLow
BetterChatEnhanced chat featuresVery Low
Death NotesCombat logging and analyticsLow
Grid Spawn ManagerControl entity spawningMedium
Heli ControlCustomize helicopter behaviorLow

Plugin Configuration

Configuration File Structure

{
  "PluginSettings": {
    // Example: Economics plugin configuration
    "Economics": {
      "Settings": {
        "StartingBalance": 1000,
        "CurrencyName": "Scrap",
        "CurrencySymbol": "$",
        "EnableATM": true,
        "ATMCost": 100,
        "InterestEnabled": false,
        "InterestRate": 0.01,
        "InterestInterval": 86400,
        "PayDayAmount": 50,
        "PayDayInterval": 3600
      },
      "Permissions": {
        "economics.use": true,
        "economics.admin": "economics.admin",
        "economics.atm": "economics.atm"
      },
      "Messages": {
        "Balance": "Your balance: {0} {1}",
        "Paid": "You paid {0} {1} to {2}",
        "Received": "You received {0} {1} from {2}",
        "InsufficientFunds": "Insufficient funds!"
      }
    }
  }
}

Essential Configuration Files

  1. oxide/config/oxide.json - Core Oxide configuration
  2. oxide/config/oxide.lang - Language and message customization
  3. oxide/config/oxide.permissions - Permission system configuration
  4. oxide/config/oxide.covalence - API and framework settings
  5. Plugin-specific .json files - Individual plugin configurations

Permission System

# Oxide Permission Commands
oxide.grant user        # Grant permission to player
oxide.grant group        # Grant permission to group
oxide.revoke user       # Revoke permission
oxide.show user                     # Show user permissions
oxide.usergroup add          # Add user to group
oxide.usergroup remove       # Remove user from group

# Common permission examples
economics.use                                # Use economy system
kit.use.starter                              # Use starter kit
teleport.tpa                                 # Request teleport
clan.create                                  # Create a clan
friends.add                                  # Add friends

Performance Optimization

Plugin Performance Guidelines

MetricAcceptable RangeWarning SignsOptimization
Plugin Count20-50 plugins80+ pluginsRemove unused plugins
Hook UsageMinimal hooksExcessive OnEntitySpawnUse conditional hooks
Memory Usage< 500MB total> 1GB plugin memoryMonitor with oxide.stats
Update Rate1-5Hz per plugin20+ Hz updatesIncrease update intervals
Database QueriesAsync, batchedSynchronous queriesUse Oxide's async API

Monitoring Plugin Performance

# Oxide performance commands
oxide.perf                           # Show plugin performance stats
oxide.stats                          # Detailed plugin statistics
oxide.track start                    # Start performance tracking
oxide.track stop                     # Stop and show results
oxide.plugins find slow              # Find slow-performing plugins
oxide.hooks list             # List hooks used by plugin

# Example output of oxide.perf:
Plugin Name           | Calls/sec | Avg Time | Total Time
---------------------------------------------------------
BetterChat            | 2.1       | 0.4ms    | 12.5s
Economics             | 0.8       | 1.2ms    | 8.7s
AutoDoors             | 15.3      | 0.1ms    | 4.2s
Clans                 | 1.2       | 2.3ms    | 15.8s  # High avg time!

Optimization Configuration

{
  "Oxide": {
    "Performance": {
      "HookTimeWarning": 100,          // Warn if hook takes >100ms
      "MaxHookTime": 500,              // Disable hook if >500ms
      "PluginUpdateRate": 1.0,         // Default update rate (Hz)
      "EntityUpdateRate": 0.5,         // Entity update rate
      "MaxFrameTime": 16.67,           // Max ms per frame (60 FPS)
      "GCCollection": {
        "Enabled": true,
        "Interval": 300,               // Run GC every 5 minutes
        "ForceFull": false
      }
    },
    "Logging": {
      "LogLevel": "Info",              // Debug, Info, Warning, Error
      "LogToFile": true,
      "MaxFileSize": 10485760,         // 10MB max log file
      "MaxArchiveFiles": 5
    }
  }
}

Popular Plugin Setups

PvP Server Setup

# Essential PvP Plugins
1. CombatLog/DeathNotes - Combat analytics
2. BetterChat - Enhanced chat for team coordination
3. RaidAlert - Notifications for base raids
4. TeamManager - Team system with sharing
5. InstaCraft - Faster crafting for PvP focus
6. NoDecay - Disable building decay
7. QuickSmelt - Faster smelting
8. StackSizeController - Custom stack sizes
9. SkinBox - Weapon and skin management
10. AntiOfflineRaid - Protection during offline

Roleplay Server Setup

# Essential RP Plugins
1. Economics - Currency system
2. ShopUI/NPCVendors - Shopping systems
3. Jobs/Professions - Job system with rewards
4. VehicleLicense - Vehicle ownership system
5. BuildingGrades - Enhanced building permissions
6. DiscordChat/ReportSystem - Communication
7. PlayerTitles - Custom titles and ranks
8. EventManager - Scheduled server events
9. Furniture - Additional decorative items
10. Radio - In-game radio system

Minigames Server Setup

# Minigame Plugins
1. Arena - PvP arenas with matchmaking
2. GunGame - Progressive weapon game mode
3. HideAndSeek - Classic hide and seek
4. Race - Vehicle racing system
5. Spleef - Last man standing arena
6. Paintball - Team-based paintball
7. Jail - Prison roleplay minigame
8. MurderMystery - Detective game
9. BattleRoyale - Last man standing
10. Parkour - Jumping/obstacle courses

Troubleshooting Common Issues

Plugins not loading after update

Clear oxide/plugins directory and reinstall plugins. Verify Rust and Oxide version compatibility. Check oxide/logs/oxide.log for loading errors.

"Hook failed to load" errors

Update plugin to latest version. Check plugin compatibility with current Rust version. Remove conflicting plugins. Verify hook registration in plugin code.

High server lag with plugins

Use oxide.perf to identify slow plugins. Reduce plugin update rates. Disable unnecessary hooks. Consider dedicated server with more CPU cores.

Permission system not working

Verify permission names match plugin documentation. Check oxide/config/oxide.permissions file. Use oxide.show user <player> to debug. Ensure proper group assignments.

Plugin configuration not saving

Check file permissions on oxide/config/ directory. Verify JSON syntax is valid. Ensure plugin has write access. Check for disk space issues.

Database errors with plugin data

Verify database connection strings in config. Check SQLite file permissions. For MySQL, ensure server is running and accessible. Backup and regenerate database if corrupted.

Advanced Configuration

Custom Plugin Development Setup

# Development environment setup
1. Install Visual Studio / VS Code with C# extensions
2. Install Oxide.Rust.dll as reference
3. Create plugin template:
   using Oxide.Core;
   using Oxide.Core.Plugins;
   
   namespace Oxide.Plugins
   {
       [Info("MyPlugin", "Author", "1.0.0")]
       [Description("My custom Rust plugin")]
       class MyPlugin : RustPlugin
       {
           void Init() { Puts("Plugin loaded!"); }
           
           void OnPlayerConnected(BasePlayer player)
           {
               SendReply(player, "Welcome to the server!");
           }
       }
   }

4. Compile to DLL and place in oxide/plugins/
5. Test and debug using oxide.reload <plugin>

Web Panel Configuration

{
  "Web": {
    "Enabled": true,
    "Port": 28016,
    "Host": "0.0.0.0",
    "SSL": {
      "Enabled": false,
      "CertificatePath": "/path/to/cert.pem",
      "CertificatePassword": ""
    },
    "Authentication": {
      "Enabled": true,
      "Username": "admin",
      "Password": "secure_password",
      "SessionTimeout": 3600
    },
    "Features": {
      "PluginManagement": true,
      "PlayerManagement": true,
      "ServerControl": true,
      "ConfigurationEditor": true,
      "RealTimeMonitoring": true
    }
  }
}

Database Configuration

{
  "Database": {
    "Provider": "sqlite",  // Options: sqlite, mysql, litedb
    "ConnectionString": {
      "sqlite": "Data Source=oxide/data/oxide.sqlite;Version=3;",
      "mysql": "Server=localhost;Database=oxide;Uid=rust;Pwd=password;Port=3306;",
      "litedb": "Filename=oxide/data/oxide.db;Connection=shared"
    },
    "MySql": {
      "Pooling": true,
      "MaximumPoolSize": 100,
      "ConnectionTimeout": 30,
      "CommandTimeout": 30
    },
    "Backup": {
      "Enabled": true,
      "Interval": 86400,  // Daily backups
      "Retention": 7,     // Keep 7 backups
      "Compression": true
    }
  }
}

Best Practices

Plugin Management

  1. Start minimal: Add plugins gradually, testing performance impact
  2. Regular updates: Keep plugins updated for compatibility and security
  3. Backup configurations: Backup oxide/config/ before major changes
  4. Document changes: Maintain changelog of plugin additions/removals
  5. Test thoroughly: Test plugins on staging server before production

Performance Optimization

  1. Monitor regularly: Use oxide.perf weekly to identify slow plugins
  2. Limit hooks: Disable unnecessary event hooks in plugin configs
  3. Batch operations: Use timers instead of per-frame updates
  4. Memory management: Monitor plugin memory usage with oxide.stats
  5. Database optimization: Use indexes and query optimization for plugins

Security Considerations

  1. Source verification: Only install plugins from trusted sources
  2. Permission auditing: Regularly review oxide.permissions file
  3. Web panel security: Use strong passwords and SSL for web interface
  4. Regular backups: Backup plugin data and configurations
  5. Update promptly: Security patches for plugins and Oxide framework

Next Steps

Managed Rust Server Hosting: Supercraft provides optimized Rust servers with pre-configured Oxide/uMod, automatic plugin updates, and expert support for custom game modes and large player counts.

Top