Featured framework
Carbon for modern Rust servers
Fast, self-updating, and built for performance with seamless in-game plugin and server management.
1,400+
servers powered by Carbon
ServerPanel adds a player information menu to your server, where you can both share important and useful information with your players and integrate your plugins into it!
🌟 Features
User-Friendly Interface: Intuitive GUI for easy navigation and interaction.
Economy Integration: Supports various economy plugins for seamless financial management.
Dynamic Menu Categories: Organize functionalities into customizable categories for better user experience.
Extensive Configuration Options: Almost every aspect of the plugin can be customized, including messages, colors, sizes, fonts, tion.
Auto-Open Menu: Automatically displays the menu upon player connection, configurable per server settings.
Block Settings: Control access to the menu during building, raiding, or combat situations to enhance gameplay balance.
Multiple Economy Head Fields: Display various economic metrics such as balance, server rewards, and bank information.
Permission Management: Fine-tune permissions for different user roles to control access to features.
Localization Support: Easily translate and customize all messages for different languages.
Performance Optimized: Designed to minimize server lag while providing rich functionality.
Customizable Hooks: Integrate with existing economy systems using customizable hooks for adding, removing, and displaying balances.
Editor Position Change: Admins can now change editor positions with a simple click, choosing between left, center, or right alignments.
Command Enhancements: Commands are now processed with multiple arguments separated by "|", enabling bulk command processing.
🎮 Commands
/info – open menu
/sp.install (or) /welcome.install – open installer menu
sp.migrations – console command for updating plugin data structure when upgrading to new versions. Automatically creates backups before making changes.
sp.migrations list – shows available migrations and whether they need to run
sp.migrations run <version> – runs specific migration (e.g., "1.3.0")
sp.migrations run <version> force – forces migration even if not detected as needed
🛡️ Permissions
serverpanel.edit – allows players to edit the plugin settings and open the edit menu
serverpanelinstaller.admin - required to access the plugin installation functions
🎥 Video
🖼️ Showcase
Templates
Template V1
Template V2
Template V3
Template V5
Editor
Installer
🧪 TEST SERVER
Join our test server to view and experience all our unique features yourself!
Copy the IP Address below to start playing!
connect 194.147.90.239:28015
📊 Update Fields
ServerPanel supports dynamic update fields that can be used in your templates to display real-time information. These fields are automatically updated and can be used in text components, headers, and other interface elements.
Player Information
{online_players} – Number of currently online players
{sleeping_players} – Number of sleeping players
{all_players} – Total number of players (online + sleeping)
{max_players} – Maximum server capacity
{player_kills} – Player's kill count (requires KillRecords, Statistics, or UltimateLeaderboard)
{player_deaths} – Player's death count (requires KillRecords, Statistics, or UltimateLeaderboard)
{player_username} – Player's display name
{player_avatar} – Player's Steam ID for avatar display
Economy
{economy_economics} – Economics plugin balance
{economy_server_rewards} – ServerRewards points
{economy_bank_system} – BankSystem balance
Note: Economy fields are fully customizable in "oxide/config/ServerPanel.json" under "Economy Header Fields". You can add support for any economy plugin by configuring the appropriate hooks (Add, Balance, Remove). Custom keys can be created and used in templates just like the default ones.
Server Information
{server_name} – Server hostname
{server_description} – Server description
{server_url} – Server website URL
{server_headerimage} – Server header image URL
{server_fps} – Current server FPS
{server_entities} – Number of entities on server
{seed} – World seed
{worldsize} – World size
{ip} – Server IP address
{port} – Server port
{server_time} – Current server time (YYYY-MM-DD HH:MM:SS)
{tod_time} – Time of day (24-hour format)
{realtime} – Server uptime in seconds
{map_size} – Map size in meters
{map_url} – Custom map URL
{save_interval} – Auto-save interval
{pve} – PvE mode status (true/false)
Player Stats
{player_health} – Current health
{player_maxhealth} – Maximum health
{player_calories} – Calorie level
{player_hydration} – Hydration level
{player_radiation} – Radiation poisoning level
{player_comfort} – Comfort level
{player_bleeding} – Bleeding amount
{player_temperature} – Body temperature
{player_wetness} – Wetness level
{player_oxygen} – Oxygen level
{player_poison} – Poison level
{player_heartrate} – Heart rate
Player Position
{player_position_x} – X coordinate
{player_position_y} – Y coordinate (height)
{player_position_z} – Z coordinate
{player_rotation} – Player rotation (degrees)
Player Connection
{player_ping} – Connection time in seconds
{player_ip} – Player's IP address
{player_auth_level} – Authorization level (0=Player, 1=Moderator, 2=Admin)
{player_steam_id} – Steam ID
{player_connected_time} – Connection start time
{player_idle_time} – Idle time (HH:MM:SS)
Player States
{player_sleeping} – Is sleeping (true/false)
{player_wounded} – Is wounded (true/false)
{player_dead} – Is dead (true/false)
{player_building_blocked} – Is building blocked (true/false)
{player_safe_zone} – Is in safe zone (true/false)
{player_swimming} – Is swimming (true/false)
{player_on_ground} – Is on ground (true/false)
{player_flying} – Is flying (true/false)
{player_admin} – Is admin (true/false)
{player_developer} – Is developer (true/false)
Network & Performance
{network_in} – Network input (currently shows 0)
{network_out} – Network output (currently shows 0)
{fps} – Server FPS
{memory} – Memory allocations
{collections} – Garbage collections count
Usage Example:
You can use these fields in any text component like: "Welcome {player_username}! Server has {online_players}/{max_players} players online."
🔧 API Documentation for Developers
ServerPanel provides an API for plugin developers to integrate their plugins into the menu system.
Required Methods
API_OpenPlugin(BasePlayer player) - Main integration method that returns CuiElementContainer
OnServerPanelClosed(BasePlayer player) - Called when panel closes (cleanup)
OnServerPanelCategoryPage(BasePlayer player, int category, int page) - Called when category changes (cleanup)
OnReceiveCategoryInfo(int categoryID) - Receives your category ID
Integration Example
[PluginReference]
private Plugin ServerPanel;
private int _serverPanelCategoryID = -1;
private void OnServerInitialized()
{
ServerPanel?.Call("API_OnServerPanelProcessCategory", Name);
}
private void OnReceiveCategoryInfo(int categoryID)
{
_serverPanelCategoryID = categoryID;
}
private void OnServerPanelCategoryPage(BasePlayer player, int category, int page)
{
// Cleanup when player switches categories
}
private CuiElementContainer API_OpenPlugin(BasePlayer player)
{
var container = new CuiElementContainer();
// Create base panels (required structure)
container.Add(new CuiPanel()
{
RectTransform = {AnchorMin = "0 0", AnchorMax = "1 1"},
Image = {Color = "0 0 0 0"}
}, "UI.Server.Panel.Content", "UI.Server.Panel.Content.Plugin", "UI.Server.Panel.Content.Plugin");
container.Add(new CuiPanel()
{
RectTransform = {AnchorMin = "0 0", AnchorMax = "1 1"},
Image = {Color = "0 0 0 0"}
}, "UI.Server.Panel.Content.Plugin", "YourPlugin.Background", "YourPlugin.Background");
// Add your plugin's UI elements here
container.Add(new CuiLabel
{
RectTransform = {AnchorMin = "0.1 0.8", AnchorMax = "0.9 0.9"},
Text = {Text = "Your Plugin Interface", FontSize = 16, Align = TextAnchor.MiddleCenter, Color = "1 1 1 1"}
}, "YourPlugin.Background", "YourPlugin.Title");
// Add buttons, panels, etc. using "YourPlugin.Background" as parent
return container;
}
private void OnServerPanelClosed(BasePlayer player)
{
// Cleanup when panel closes
}
Header Update Fields
API_OnServerPanelAddHeaderUpdateField(Plugin plugin, string updateKey, Func<BasePlayer, string> updateFunction) - Registers a per-player string provider for a header placeholder. Returns true on success.
API_OnServerPanelRemoveHeaderUpdateField(Plugin plugin, string updateKey = null) - Unregisters a specific updateKey for your plugin, or all keys for your plugin when updateKey is null. Returns true on success.
Usage Example
[PluginReference]
private Plugin ServerPanel;
private void OnServerInitialized()
{
// Register a dynamic header field for each player
ServerPanel?.Call("API_OnServerPanelAddHeaderUpdateField", this, "{player_kdr}", (Func<BasePlayer, string>)(player => GetKdr(player)));
}
private string GetKdr(BasePlayer player)
{
// Compute and return the value to display in the header for this player
return "1.23";
}
Using in UI: Place your key (e.g., {player_kdr}) directly in Header Field texts. The value will be updated per player using your function.
📚 FAQ
Q: Why can't I open the menu?
A: Make sure that the plugin is installed and activated on your server. If the problem persists, contact the server administrator.
Q: How do I enable Expert Mode? (disables automatic template updates)
A: In the data file "Template.json", turn on the "Use an expert mod?" option:
"Use an expert mod?": true,
P.S. "Template.json” is located in the "oxide/data/ServerPanel" directory (if you use Oxide) or in the "carbon/data/ServerPanel" directory (if you use Carbon)
Q: I see black images with Rust logo or get error 429 when loading images. What should I do?
A: These issues occur when there are problems downloading images from the internet. To fix this, enable Offline Image Mode which will use local images instead:
Enable the mode in config:
Open "oxide/config/ServerPanel.json" (or "carbon/config/ServerPanel.json" for Carbon)
Set "Enable Offline Image Mode": true
Set up the images:
Create folder "TheMevent" in "oxide/data" (or "carbon/data" for Carbon)
Download PluginsStorage (click "CODE" → "Download ZIP")
Extract the ZIP and copy all contents to the "TheMevent" folder
Reload the plugin:
Type o.reload ServerPanel (Oxide) or c.reload ServerPanel (Carbon)
Note: If using a hosting service, you may need to use their file manager or FTP to upload the files.
Q: Does ServerPanel work only with Mevent's plugins?
A: Currently, ServerPanel integrates seamlessly with Mevent's plugins (Shop, Kits, Daily Rewards, etc.). However, other developers can use the provided API to integrate their plugins into the menu system. The plugin system is designed to be extensible for third-party integrations.
Q: Why do integrated plugins (Shop, Kits) have different window sizes?
A: Different plugins may use different templates for integration. Make sure all your integrated plugins use the same template version (V1, V2, etc.) that matches your ServerPanel template. Update the template in each plugin to ensure consistent sizing.
Q: The panel displays differently for different players. How can I make it show the same on everyone's screen?
A: This issue occurs when players have different UI scale settings. To fix this and ensure consistent display for all players:
Open the "Template.json" file located in "oxide/data/ServerPanel" (or "carbon/data/ServerPanel" for Carbon)
Find the "Parent (Overlay/Hud)" setting in the "Background" section
Change the value from "Overlay" to "OverlayNonScaled"
Save the file and restart your server or reload the plugin
Q: How can I change the video displayed in the ServerPanel interface to my own custom video?
A: Yes, you can replace the default video with your own! You need to find and modify the command:
serverpanel_broadcastvideo [your_video_url]
Replace [your_video_url] with the direct link to your video. For best compatibility, we recommend hosting your video on imgur.com.
Q: My custom images are not loading or show as blank/question marks. What image hosting should I use?
A: For custom images, we recommend using imgbb.com for image hosting. Avoid Imgur and services without direct access to the image. For the most reliable experience, use Offline Image Mode with local images instead.
Q: How can I make plugin UIs open outside of the ServerPanel menu instead of inside categories?
A: You can configure buttons to execute chat commands that open plugin UIs independently. To do this:
In your button configuration, set "Chat Button": true
Set the "Commands" field to "chat.say /command" (replace "command" with the actual plugin command)
Example: To open the Cases plugin outside the menu:
"Chat Button": true
"Commands": "chat.say /cases"
This will execute the command as if the player typed it in chat, opening the plugin's interface independently rather than within the ServerPanel menu.
Q: Text in V4 template is shifting or sliding out of place. How can I fix this?
A: This issue occurs when text width isn't properly configured. ServerPanel provides "TITLE LOCALIZATION" settings to control text width for categories and pages:
Open the ServerPanel editor (click the "ADMIN MODE" button to open the edit menu)
Select the category or page you want to edit (click to "EDIT CATEGORY" or "EDIT PAGE" button)
In the editor, find the "TITLE LOCALIZATION" section
For each language (en, ru, etc.), you'll see three columns:
LANGUAGE - The language code
TEXT - The localized text content
WIDTH (px) - The width setting in pixels
Adjust the "WIDTH (px)" value to match your text length. Longer text requires larger width values
Save your changes and test in-game
Tip: Start with a width value around 100-150 pixels for short text, and increase it for longer titles. You can adjust this value until the text displays correctly without shifting.
🗺️ Map Vote Bot 🗺️
MapVote is a self-hosted Discord bot that lets your Rust community vote on the next wipe map. Built for server owners who want a clean, reliable voting system.
✨ What's New in v2.0.0
Scheduled votes — Queue a vote to start automatically at a set time. Schedules survive bot restarts, so nothing gets lost if the bot goes down.
Vote history — /vote_history shows a full log of past votes with winners, vote counts, and timestamps.
Role select ping — Optionally select a role to ping when a vote starts to notify your community.
Persistent storage — All votes and map data are stored in SQLite. Nothing is lost on restart.
🗳️ Features
Live vote tracking with animated progress bars
2–5 maps per voting session
Standard maps (any size/seed), custom RustMaps.com maps, and staging branch support
Detailed map info — biomes, islands, rivers, and more
Automatic winner determination with random tie-breaking
Role-based command access via Discord's built-in Server Integrations (no bot config needed)
Ephemeral setup flow — vote configuration is private to the admin running it
⚙️ Commands
/map_vote Start or schedule a map vote
/vote_history View past vote results for your server
🔐 Restricting Access
By default the commands require Administrator. You can grant access to specific roles without giving them admin — go to Server Settings > Integrations > MapVote and configure per-command role access.
📋 Requirements
Node.js 24+
Discord bot token
RustMaps.com API key
🚀 Setup
Download and extract the files
Run npm install
Fill in your TKN and RUSTMAPS_API_KEY in the .env file
Run npm start
Need help? Join the support server: Click Here
🔄 Updating
Stop the bot
Delete the src/ folder
Input the new src/ folder and overwrite package.json, README.md, and CHANGELOG files
Delete the node_modules/ folder package-lock.json file
Run npm install
Start the bot (npm start)
Your .env and .db files are not touched — all settings and vote history are preserved.
$4.99
Watchlist is a lightweight but powerful tool that alerts admins when specific players connect to the server. Whether you're online or offline, you'll get real-time in-game notifications and Discord alerts with fully configurable message templates and role pings. The built-in UI makes managing the watchlist easy, with support for sorting, filtering, teleporting, and note-taking. Players can be added or removed manually or straight from RustAdmin with custom commands. Very useful tool to keep you and your staff one step ahead.
Configuration
{
"Discord Webhook URL": "https://discord.com/api/webhooks/your/webhook/url", (Your Webhook URL)
"Ping Role": false, (Whether to ping a role when player comes online on discord, e.g: @Admin)
"Role ID": 0, (Discord Roll Id to ping)
"Purge Watchlist on Wipe": false, (whether to purge on wipe)
"Purge Players List on Wipe": true, (performance, every player is stored in a file, it is recommended to clear this on wipe)
"Enable UI": true, (plugin can be run entirely without UI if desired)
"UI Color Scheme (Options: dark, light, rust)": "dark", ( UI styles )
"Custom Colors": { (customise the UI for your server)
"PrimaryBackground": "0 0 0 0.95",
"SecondaryBackground": "0.15 0.15 0.15 1",
"HeaderBackground": "0.1 0.1 0.1 1",
"ButtonPrimary": "0.2 0.7 0.2 0.9",
"ButtonSecondary": "0.3 0.3 0.3 1",
"ButtonDanger": "0.7 0.2 0.2 0.9",
"TextPrimary": "1 1 1 1",
"TextSecondary": "0.7 0.7 0.7 1",
"OnlineIndicator": "0.2 0.8 0.2 1",
"OfflineIndicator": "0.8 0.2 0.2 1",
"RowEven": "0.12 0.12 0.12 0.95",
"RowOdd": "0.15 0.15 0.15 0.95",
"ActiveItem": "0.4 0.4 0.4 1",
"AlertBackground": "0.8 0.2 0.2 0.95",
"AlertText": "1 1 1 1"
},
"UI Scale": 1.0, (scales the UI as desired)
"Main UI Position": {
"AnchorMin": "0.2 0.1",
"AnchorMax": "0.8 0.9"
},
"Font Size": {
"Title": 20,
"Header": 14,
"Normal": 12,
"Small": 10
},
"UI Animation": true, (enables ui animations)
"Enable Sound Alert": true, (plays sound when watchlist player comes online)
"Alert Sound": "assets/bundled/prefabs/fx/notice/item.select.fx.prefab", (choose which sound you want from rust prefab sounds)
"Alert Duration (seconds)": 10.0, ( hlow long the alert is displayed in-game when a player comes online - only admins see this)
"Show Visual Alert": true, (enable / disable the in-game alert)
"Send Discord Add/Remove Notifications": true ( enable discord logging of adding/removing watchlist players)
"Max Cached Players": 3000, (Performance, set this lower to reduce the memory used by the plugin this populates the player list with the last x number of players to join your server, ordered by latest)
"Alert Cooldown Seconds": 120, (Prevents alert spam when players reconnect)
"Startup Alert Grace Seconds": 60, (waits before firing watchlist alerts after server starts)
"Auto Expire Days (0 = disabled)": 0, (auto expire watchlist players after number of days)
"Send Prune Discord Notifications": true, (sent prune notification to discord)
"Prune Report Max Per Embed": 10, (max players in prune message, prevents breaching discord embed count)
"Prune Report Include Notes": false,
"Enable Diagnostics": false (enable this for plugin performance stats and diagnostic information)
}
COMMANDS
Chat:
/watchlist
Opens the Watchlist UI (requires permission)
/wl <steamid> "<note>"
Adds a player to the watchlist with a note (requires watchlist.admin permission)
/wlr <steamid>
Removes a player from the watchlist (requires watchlist.admin permission)
/wlist
Lists all watched players in chat (requires watchlist.admin permission)
Console:
watchlist.add <steamid> "<note>"
Adds a player to the watchlist Example: watchlist.add 76561198000000000 "Suspected Cheater"
watchlist.remove <steamid>
Removes a player from the watchlist watchlist.list Lists all watched players in the server console
wl <steamid> "<note>"
Adds a player to the watchlist with a note (can be used via rcon)
wlr <steamid>
Removes a player from the watchlist (can be used via rcon)
wlist
Lists all watched players in the server console (can be used via rcon)
purgewl
Clears the entire watchlist (requires watchlist.admin permission)
PERMISSIONS
watchlist.admin
Full access to all commands and features
watchlistui.toggle
Allows UI toggle via `/watchlist` command
RUSTADMIN INTEGRATION
You can integrate Watchlist directly with **RustAdmin** to add or remove players with a single click.
Add to Watchlist
Command to Execute: wl ${playerSteamid} "From RustAdmin"
Tick "Show Command Output in a Dialog" (optional)
Remove from Watchlist
Command to Execute: wlr ${playerSteamid}
Tick "Show Command Output in a Dialog" (optional)
$29.99
Basements lets players build underground rooms beneath their bases. Place a hatch on your foundation and dig straight down into a hidden basement with walls, ceilings, and full building privileges. Great for stashing loot, setting up secret bunkers, or just adding extra space.
Readme Link - Click Here for Instruction and Documentation
👆Highly recommend reading the FAQ section!
BUILD
Build basements easily from your tool cupboard. Just place an entrance to get started.
EXPAND
Expand your basement by drilling underground. But don't forget to bring a headlamp - its dark down there!
TRAVERSE
Place multiple entryways, building out your labyrinth of tunnels beneath your base.
DECORATE
All deployables, electricity, and storage items can be placed in your basement. Take advantage of your new space!
RAID
Nothing is safe in Rust, including your basement. If all the entrances are destroyed, then the basement is too. Any loot below will float to the surface. Protect the entrance at all costs!
API METHODS (For Plugin Developers)
// Returns true if the given entityId is part of a basement.
bool IsBasementEntity(ulong entityId)
// Returns the building ids of the basements connected to a given surface building id.
uint[] GetBasementBuildingIds(uint surfaceBuildingId)
// Returns the building ids of the surface buildings connected to a given basement building id.
uint[] GetSurfaceBuildingIds(uint basementBuildingId)
Extension Plugins
These are free plugins that add additional functionality to Basements.
BasementsManager
Provides a UI for admins to view and manage the basements on the server. Useful for debugging & fixing issues. Use with the /bm command, requires the basements.admin permission to use.
BasementsManager.cs
This is a custom package created by us, featuring 110 unique bases and a specialized loot setup tailored for five difficulty levels, ranging from Easy to Nightmare.
Note: The building skins in the package showcase images may differ from the spawned bases or use the default building skin.
Warning: The Raidable Bases plugin requires the Copy Paste plugin to function. You must install both for this bases pack to work.
🔗 Raidable Bases (Paid): https://codefling.com/plugins/raidable-bases
🔗 Copy Paste (Free): https://umod.org/plugins/copy-paste
This Raidable Bases Pack & Loot Tables package includes:
🏡30 Easy Bases +🗡️Base_Loot Tables (Easy "Vanilla" and "Enhanced" tables included)
🏡30 Medium Bases +🗡️Base_Loot Tables (Medium "Vanilla" and "Enhanced" tables included)
🏡30 Hard Bases +🗡️Base_Loot Tables (Hard "Vanilla" and "Enhanced" tables included)
🏡10 Expert Bases +🗡️Base_Loot Tables (Expert "Vanilla" and "Enhanced" tables included)
🏡10 Nightmare Bases +🗡️Base_Loot Tables (Nightmare "Vanilla" and "Enhanced" tables included)
Beware: Our loot table package includes only the 5-tier loot tables within the Base_loot folder, ranging from easy to nightmare.
It does not include the loot tables from the Difficulty_Loot or Weekday_Loot folders.
With a total of 110 bases, this package focuses on simplicity and optimization.
Most bases are protected by turrets and traps, and each base is designed with player PC performance and server stability in mind.
VANILLA AND ENHANCED LOOT TABLES FOR RAIDABLE BASES
This package includes 10 different base loot table files, ensuring a well-structured and advanced configuration for every difficulty level, from Easy to Nightmare.
5 loot files for the Vanilla setup (Easy, Medium, Hard, Expert, Nightmare), offering a balanced loot experience with some junk items, staying close to a 1x rate.
5 loot files for the Enhanced setup (Easy, Medium, Hard, Expert, Nightmare), designed for modded servers with 2x, 3x, or higher gather rates, featuring cleaner loot tables with minimal junk and more valuable rewards.
📁 Installation Path:
All loot table files are intended for the /oxide/data/RaidableBases/Base_Loot directory.
⚠️ Setup Requirement: You must choose and install only one loot table setup at a time—either Vanilla or Enhanced. If you want to switch, you can replace the current files with the other set, but both cannot be active simultaneously.
For those exclusively seeking the loot table, we offer it as a standalone product: https://codefling.com/customizations/raidable-bases-loot-tables-pack
(Note: If you've purchased our Raidable Bases Pack & Loot Tables (110 Bases) package, there is no need to buy this separately.)
WARNING: TWO DIFFERENT INSTALLATION METHODS
(PLEASE READ BOTH AND APPLY ONLY THE ONE THAT FITS YOUR NEEDS)
INSTALLATION GUIDE 1:
(If you do not have a custom configuration and are not a professional in server configurations, choose this option. However, if you already have your own configuration and profile settings and do not wish to use the optional configs we provide—in other words, if you only need the bases and loot tables—use the second installation guide instead.)
Step 1: Place the Config File
From the extracted ZIP files, locate the config folder and find the RaidableBases.json file. Move it to the following directory:
📁 /serverfiles/oxide/config
Step 2: Place the Bases
From the extracted ZIP files, locate the copypaste folder and move it to the following directory:
📁 /serverfiles/oxide/data
Step 3: Place the Base_Loot Tables
From the extracted ZIP files, locate the Base_Loot folder and move it to the following directory:
📁 /serverfiles/oxide/data/RaidableBases
Important: If there are any existing JSON files inside this folder that are not part of our loot tables, delete them to ensure proper functionality.
Choose between Vanilla or Enhanced loot tables based on your preference.
If the folder is named "Base_Loot (Enhanced loot)", remove the text in parentheses so that the correct folder name is simply: "Base_Loot" (Otherwise, the loot tables will not work properly.)
Step 4: Place the Profiles Folder
From the extracted ZIP files, locate the profiles folder and move it to the following directory:
📁 /serverfiles/oxide/data/RaidableBases
Why Are Profiles Important?
The profiles folder contains crucial settings that allow you to:
✔️ Enable/disable the dome
✔️ Enable/disable NPCs
✔️ Adjust the number of lootable items
These are just a few examples—there are dozens of important settings that directly affect how raid bases function. The config file alone is not enough—these files play a major role in customizing your raid bases.
⚠️ I strongly recommend reviewing each difficulty setting (Easy to Nightmare) inside the profiles folder and adjusting them based on your needs.
Step 5: Restart the plugin via RCON:
o.reload RaidableBases
INSTALLATION GUIDE 2:
(Use this installation method if you do not want to use our configurations and instead prefer to use your own config files and your own /oxide/data/RaidableBases/Profiles configurations.)
In this case, you only need to add the bases. To do this, use the following commands in RCON:
Step 1:
You can add bases one by one or in bulk.
After executing the commands in RCON, the bases will be registered inside the Profiles configuration.
If you do not want to deal with these adjustments, it is recommended to use Installation Guide 1 instead.
A- Example RCON commands:
rb.config add "Easy Bases" fullwipedeasy1
rb.config add "Hard Bases" fullwipedhard1
B- Commands to Integrate Raid Bases in Bulk via RCON:
rb.config add "Easy Bases" fullwipedeasy1 fullwipedeasy2 fullwipedeasy3 fullwipedeasy4 fullwipedeasy5 fullwipedeasy6 fullwipedeasy7 fullwipedeasy8 fullwipedeasy9 fullwipedeasy10 fullwipedeasy11 fullwipedeasy12 fullwipedeasy13 fullwipedeasy14 fullwipedeasy15 fullwipedeasy16 fullwipedeasy17 fullwipedeasy18 fullwipedeasy19 fullwipedeasy20 fullwipedeasy21 fullwipedeasy22 fullwipedeasy23 fullwipedeasy24 fullwipedeasy25 fullwipedeasy26 fullwipedeasy27 fullwipedeasy28 fullwipedeasy29 fullwipedeasy30
rb.config add "Medium Bases" fullwipedmed1 fullwipedmed2 fullwipedmed3 fullwipedmed4 fullwipedmed5 fullwipedmed6 fullwipedmed7 fullwipedmed8 fullwipedmed9 fullwipedmed10 fullwipedmed11 fullwipedmed12 fullwipedmed13 fullwipedmed14 fullwipedmed15 fullwipedmed16 fullwipedmed17 fullwipedmed18 fullwipedmed19 fullwipedmed20 fullwipedmed21 fullwipedmed22 fullwipedmed23 fullwipedmed24 fullwipedmed25 fullwipedmed26 fullwipedmed27 fullwipedmed28 fullwipedmed29 fullwipedmed30
rb.config add "Hard Bases" fullwipedhard1 fullwipedhard2 fullwipedhard3 fullwipedhard4 fullwipedhard5 fullwipedhard6 fullwipedhard7 fullwipedhard8 fullwipedhard9 fullwipedhard10 fullwipedhard11 fullwipedhard12 fullwipedhard13 fullwipedhard14 fullwipedhard15 fullwipedhard16 fullwipedhard17 fullwipedhard18 fullwipedhard19 fullwipedhard20 fullwipedhard21 fullwipedhard22 fullwipedhard23 fullwipedhard24 fullwipedhard25 fullwipedhard26 fullwipedhard27 fullwipedhard28 fullwipedhard29 fullwipedhard30
rb.config add "Expert Bases" fullwipedexp1 fullwipedexp2 fullwipedexp3 fullwipedexp4 fullwipedexp5 fullwipedexp6 fullwipedexp7 fullwipedexp8 fullwipedexp9 fullwipedexp10
rb.config add "Nightmare Bases" fullwipednight1 fullwipednight2 fullwipednight3 fullwipednight4 fullwipednight5 fullwipednight6 fullwipednight7 fullwipednight8 fullwipednight9 fullwipednight10
Step 2: Place the Base_Loot Tables
From the extracted ZIP files, locate the Base_Loot folder and move it to the following directory:
📁 /serverfiles/oxide/data/RaidableBases
Important: If there are any existing JSON files inside this folder that are not part of our loot tables, delete them to ensure proper functionality.
Choose between Vanilla or Enhanced loot tables based on your preference.
If the folder is named "Base_Loot (Enhanced loot)", remove the text in parentheses so that the correct folder name is simply: "Base_Loot" (Otherwise, the loot tables will not work properly.)
Step 3: Restart the plugin via RCON:
o.reload RaidableBases
EXTRA IMPORTANT INFORMATIONS:
We do not use a dome, NPCs, or arena walls around raid bases on our servers, and in the ZIP file we provided, these features are also disabled by default. If you want to enable them, you will need to adjust the settings accordingly.
For example, to enable the dome, follow the steps below:
Navigate to:
/oxide/data/RaidableBases/Profiles
Open the files inside the Profiles folder with a text editor.
Locate the following settings:
(This is already set to false because it is required for markers to appear on the map.)
"Spawn Silently (No Notification, No Dome, No Map Marker)": false,
"Create Dome Around Event Using Spheres (0 = disabled, recommended = 5)": 0,
Change the value from 0 to 5 as shown below:
"Create Dome Around Event Using Spheres (0 = disabled, recommended = 5)": 5,
Additionally, the loot amount for bases varies depending on the difficulty level (easy, medium, hard, expert, and nightmare). You can adjust this setting in the same Profiles location according to your needs:
"Amount Of Items To Spawn": 210,
For example, in medium bases, this value is set to 210, which determines the total number of items that will appear in crates, furnaces, and the cupboard.
Our current configuration is specifically adjusted to prevent players from feeling overwhelmed by massive buildings right after a wipe. We have configured Maintained Events accordingly to ensure a balanced experience.
In our setup:
- Timed events and purchasable events are disabled.
- After a wipe, easy bases will start spawning 30 minutes later.
- Nightmare bases will begin spawning 48 hours (2 days) later.
Imagine starting the game with just a torch in hand and immediately encountering a nightmare base on the shore.
You’d likely quit the game right away—this setting is crucial for us to avoid such scenarios.
Configuration Example: serverfiles/oxide/config
"Maintained Events": {
"Always Maintain Max Events": true,
"Max Maintained Events": 30,
"Enable X Hours After Wipe (0 = immediately)": {
"Easy": 0.5,
"Medium": 1.0,
"Hard": 3.0,
"Expert": 24.0,
"Nightmare": 48.0
All of our bases from Easy to Nightmare are equipped with turret protection.
If you do not want turrets to spawn in your raidable bases on your server, you can use the following method.
Go to the file path /data/RaidableBases/Profiles, open the JSON files inside with a text editor, and apply the following:
"Kill These Prefabs After Paste": [
"assets/prefabs/npc/autoturret/autoturret_deployed.prefab",
"autoturret_deployed"
],
If you are satisfied with this package, you can support us by leaving a 5-star review on the site where you purchased it. Your feedback motivates us to continue improving and providing even better configurations for dedicated server owners like you.
Please leave a review here: https://codefling.com/bases/raidable-bases-pack-loot-tables-110-bases?tab=reviews
Thank you! ❤️
Support: FULLWIPED DISCORD
Free
DemoPro: The Anti Cheat That Works 🎥
DemoPro turns F7 reports into a single evidence bundle with timeline markers + jump points,
so you can jump straight to the key moments fast. It captures footage Before / during / after the f7 report is made
Cheaters can’t hide from this system — no more relying on outdated anti-cheat plugins.
This is clear video evidence that makes decisions easier, faster, and fairer.
100% accurate, No False Positives
Key Features 🎥
✅ Converts **F7 reports** into a single evidence bundle
✅ Records BEFORE, DURING, and AFTER every F7 report. You NEVER miss what happens.
✅ Saves you and your admins loads of time. No more wasting hours spectating players
✅ Smart sorts demos with Timeline markers + jump points to reach key moments fast
✅ Private portal access for you and your admins with **Steam sign-in**
✅ Assignments, notes, outcomes (keeps reviews organised)
✅ Server-friendly: all data is stored off-site on your account, not on your game server, keeping things lightweight and smooth.
✅ Can be use as a content tool, you can make cinematic videos from the demos you receive.
✅ Fully compatible with all Rust server setups.
Proof it works: 🔍
join our Discord and check out the #cheater-clips channel
https://discord.gg/2DCfVFFgvW
7-day free trial: https://rustdemopro.com
RustAdmin Integration: https://www.rustadmin.com
Visual snippet of recoil mapping with each attack in timeline
Shareable filtered portal links
Discord ban feed + global portal search
Redesign the portal + dashboard for a more modern and fluid feel
New portal is now live
Future Updates
AI Integration 🧠
Introduce an AI/ML system that analyses demo files to learn the difference between normal players behaviour vs a cheaters behaviour
All Seeing Eye 👁️
An AI powered monitoring layer that automatically flags suspicious players and triggers evidence capture without relying on F7 reports.
Set Up Guide
Step 1 — Create Your DemoPro Space
Sign in at https://rustdemopro.com using your Steam account
Create your community space
Choose monthly or annual billing (includes a 7-day free trial)
Step 2 — Install the Harmony Mod
Copy the DLL into: server_root/HarmonyMods/
Start the server once to generate: server_root/HarmonyConfig/ (this contains the config)
After editing the config, run: rdm.reloadcfg to apply changes
Step 3 — Connect Your Server
In the portal, generate a Server Key
Paste the key into the plugin config
Make sure uploads are enabled in the config
Reload the config, enter this command in your console rdm.reloadcfg
Step 4 — Reports Create Cases
When an in-game report (F7) happens, DemoPro automatically builds an evidence bundle
The bundle is uploaded to your portal as a case for review
Step 5 — Review & Decide
Open the case, assign it, and add notes
Download the bundle, jump to the timeline markers
Mark the outcome as Reviewed (Clear) or Reviewed (Cheating) with notes for your team
If you need any help setting up DemoPro, please open a ticket on our Discord.
How it works 🎥
Server records players in 15-minute chunks with ~30 minutes rolling history.
When someone is F7 reported, Demo Pro grabs the “before” buffer and keeps recording.
15 minutes later it adds the “after” clip and uploads everything to the portal.
If a player disconnects/reconnects, chunk lengths can be shorter than 15 minutes—that’s normal.
Portal statuses 🎥
Players reported → Clip uploaded → Needs Review → Admin downloads → Admin reviews → Mark result Needs Review — new or reset incidents.
Downloaded (Needs Review) — someone pulled the bundle but hasn’t finished. Reviewed — Clear / Reviewed — Cheating — finished decisions.
Opening & assigning a report 🎥
Click Open on a card to see details.
Assign it to yourself immediately and add notes as you investigate.
Set the review state to Reviewed (Clear) or Reviewed (Cheating) when done.
Assignments and outcomes keep other moderators from duplicating work.
Finding the action fast 🎥
Timeline dots: hits/shots, kills, report moment.
Use the event feed to jump to notable damage or kill events.
Report marker shows where the F7 report landed inside the clip.
Downloading the bundle Use Download bundle for a ZIP containing .dem files and a README.
The README points to the first demo and the timestamp to jump to—start there.
Clip lengths can vary if players disconnect; that’s expected.
Load demos into Rust 🎥
Copy the suggested .dem into C:\Program Files (x86)\Steam\steamapps\common\Rust\demos.
If the demos folder doesn’t exist, create it (restart Rust once if needed). Playing + controls From Rust main menu, open the Demo browser, refresh, pick the file, and play.
Use Alt to toggle cursor, Tab for UI, and debugcamera to free-fly.
Cycle nearby players with Spacebar; pause/rewind/fast-forward as needed.
Review guidance 🎥
Use the README timestamps as a starting point; check other demos if nothing obvious.
If cheating is confirmed: capture proof, upload to the usual place, mark Reviewed (Cheating), and leave clear notes.
If clean: mark Reviewed (Clear) and add a quick note (e.g., desync, valid prefire).
long story short, when someone f7 reports, you can get a clip, you replay in rust of exactly why, and it shows footage before and during the report.
For tips and useful keybinds to help you get the most out of DemoPro, check out the dedicated channels in our Discord.
Discord: https://discord.gg/2DCfVFFgvW
Website: https://rustdemopro.com/
Youtube: https://www.youtube.com/@RustDemoPro
Cheater Videos
Welcome to UltimateCases - the most exciting case opening experience for Rust servers! Give your players the thrill of unboxing rare items with beautiful roulette animations, create unlimited custom cases with unique rewards, and build a thriving economy through our advanced key exchange system. Whether you want to reward active players with free cases or monetize your server with premium loot boxes, UltimateCases has everything you need to keep players engaged and coming back for more!
⭐️ Why Choose UltimateCases?
Beautiful Unboxing Experience - Watch your players' excitement as they spin the roulette and discover their rewards! Customizable animations, rarity backgrounds, and sound effects create an unforgettable opening experience.
Easy Case Creation - No coding required! Use our in-game visual editor to create cases, add items, set prices, and configure everything you need. Edit cases on the fly without touching configuration files.
Monetize Your Server - Turn your server into a profitable venture with our key exchange system. Players can buy keys using any currency (Economics, ServerRewards, scrap, etc.) and you control the economy.
Reward Active Players - Keep players engaged with free cases! Set playtime requirements and cooldowns to reward your most dedicated community members.
Protect Your Economy - Advanced limits and restrictions prevent abuse. Set daily limits, lifetime limits, minimum playtime requirements, and block case opening during combat or raids.
Store Rewards Safely - Built-in inventory system stores all case rewards securely. Players can retrieve items when they're ready, with options to persist items across wipes.
Share the Excitement - Announce rare wins in chat and Discord! Customizable logging and webhook integration lets your community celebrate big wins together.
NPC Traders at Monuments - Spawn NPCs at monuments where players can exchange keys for currency. Perfect for creating trading hubs and encouraging exploration!
VIP Benefits - Reward your supporters with exclusive discounts on case opening and key exchange. Multiple VIP tiers with customizable benefits.
Works Everywhere - Seamlessly integrates with ServerPanel, supports all major economy plugins, and works with ImageLibrary for perfect image management.
💰 Key Exchange System
Turn any currency into case keys! Our flexible exchange system supports:
Multiple Currencies - Use Economics, ServerRewards, BankSystem, IQEconomic, or any item (scrap, sulfur, etc.) as currency for key exchange.
Bulk Discounts - Reward players who exchange more keys! Automatic discounts: 5% off for 10+ keys, 10% off for 25+ keys, 15% off for 50+ keys, 20% off for 100+ keys.
VIP Discounts - Give your supporters extra savings! Configure permission-based discounts (5%, 10%, 15%, 20%) with custom daily limits.
Daily Limits - Prevent abuse by limiting how many keys players can exchange per day. Perfect for controlling your server economy.
Monument NPCs - Spawn traders at monuments! Players can visit NPCs at lighthouse, outpost, or any monument to exchange keys. Fully customizable appearance and rates.
📦 Smart Inventory System
Never lose a reward again! Our inventory system stores all case rewards safely:
Secure Storage - All case rewards are automatically stored in your personal inventory, accessible anytime through the UI.
Wipe Protection - Choose whether items persist across server wipes or are cleared automatically. Perfect for seasonal rewards!
Safe Retrieval - Items can only be retrieved when it's safe - no retrieving during combat, raids, or building blocked situations.
Post-Wipe Cooldown - Optional cooldown after wipe before items can be retrieved, helping maintain server balance.
📬 Video Overview
🖼️ Showcase
Templates
Fullscreen Template
ServerPanel V1 Template
ServerPanel V2 Template
ServerPanel V4 Template
In-Game Editor
Monument Trader
How to get Keys?
🎮 Commands
/opencases or /cases - Opens the cases interface for players
/cases.trader - Chat command for managing Monument Traders (requires ultimatecases.edit permission)
/cases.trader create [currencyID] [defaultKeys] [prefab] - Create a new trader bot
/cases.trader start <botIndex> - Enter edit mode for a trader
/cases.trader move - Update trader position (requires edit mode)
/cases.trader rotate <angle> - Set trader rotation (requires edit mode)
/cases.trader save - Save and reload trader (requires edit mode)
/cases.trader cancel/stop - Cancel edit mode
/cases.trader list - Show all configured trader bots
/cases.trader teleport <botIndex> - Teleport to a trader bot location
/cases.trader help - Show help for trader commands
cases.give - Console/Rcon command for giving keys or cases to players (admin only)
cases.give <player> keys <amount> - Give keys to a player
cases.give <player> case <caseID> [amount] - Give case(s) to a player
Examples: cases.give PlayerName keys 100 or cases.give 76561198000000000 case 0 5
cases.convert - Console command for converting cases from old Cases plugin (requires UltimateCasesConverter plugin, admin only)
cases.convert - Convert all cases and add them to existing UltimateCases data
cases.convert true - Clear existing UltimateCases data before converting (fresh start)
🛡️ Permissions
ultimatecases.edit - Permission to edit cases, items, and modals using the in-game editor. Required to access all editor functions and manage Monument Traders.
ultimatecases.discount1 - 5% discount on case opening
ultimatecases.discount2 - 10% discount on case opening
ultimatecases.discount3 - 15% discount on case opening
ultimatecases.vip1 - 5% discount on key exchange, with optional custom daily limit
ultimatecases.vip2 - 10% discount on key exchange, with optional custom daily limit
ultimatecases.vip3 - 15% discount on key exchange, with optional custom daily limit
ultimatecases.vip4 - 20% discount on key exchange, with optional custom daily limit
Note: Additional permissions can be configured in the config file for demo mode and quick unbox mode. These are optional and can be left empty to disable the features.
📚 FAQ
Q: How do I open the Case Editor?
A: To open the Case Editor:
Make sure you have the ultimatecases.edit permission
Open the cases menu using /opencases or /cases
Look for the "EDIT" button in the header of the interface (usually in the top-right area)
Click the "EDIT" button to open the Case Editor
From here you can create new cases, edit existing cases, add items, configure prices, permissions, and all case settings
Q: How do I open the Item Editor?
A: To open the Item Editor:
First, open the Case Editor (see instructions above)
Select a case from the list or create a new case
In the case editor, you'll see a section for items
Click "ADD ITEM" or click on an existing item to edit it
The Item Editor will open where you can configure item type, chance, image, title, description, permissions, and all item-specific settings (weapons, contents, genes, etc.)
Q: How do I open the Modal Editor?
A: To open the Modal Editor:
Make sure you have the ultimatecases.edit permission
Open the cases menu and navigate to any modal window (like the keys exchange modal)
Look for the "EDIT" button that appears on modal windows when you have edit permission
Click the "EDIT" button to open the Modal Editor
From here you can edit modal content, text elements, images, buttons, and all modal settings
Q: How do I create a case?
A: It's super easy! Open the cases menu in-game, click the "EDIT" button in the header, then click "ADD CASE" in the Case Editor. Configure the case title, image, price, permission, and add items. No file editing needed!
Q: Can players get free cases?
A: Yes! Enable Free Case Settings for any case. Set minimum playtime (e.g., 2 hours) and cooldown (e.g., 24 hours). Players meeting requirements can open the case for free once per cooldown period.
Q: How do I set up key exchange?
A: Go to Exchange Settings in the config. Add currencies (Economics, ServerRewards, scrap, etc.), set exchange rates, configure discounts, and you're done! Players can exchange currency for keys instantly.
Q: What can I put in cases?
A: Almost anything! Add items (weapons with attachments, containers with contents, blueprints, plant seeds with genes), or execute commands when cases are opened. Full customization for every reward type.
Q: How do Monument Traders work?
A: Configure NPCs in Exchange Settings to spawn at monuments. Players can visit these NPCs to exchange keys for currency. Set the monument (lighthouse, outpost, etc.), NPC appearance, position, and exchange rate.
Q: Can I limit how many cases players can open?
A: Absolutely! Set daily limits (e.g., 5 cases per day), total lifetime limits (e.g., 50 cases total), minimum playtime requirements, and block opening for a period after server wipe.
Q: How does the inventory system work?
A: When players open cases, rewards go to their inventory automatically. Players can access inventory through the UI and retrieve items when ready. Configure whether items persist across wipes.
Q: Can I announce rare wins?
A: Yes! Enable chat announcements and Discord webhooks. Set rarity threshold (e.g., only announce items with 5% or lower chance), customize message format, and share the excitement with your community!
Q: How do I add UltimateCases to ServerPanel?
A: In ServerPanel, create a new category with Type: "Plugin", Plugin Name: "UltimateCases", Plugin Hook: "API_OpenPlugin". The plugin integrates seamlessly!
Q: Can I give VIP players discounts?
A: Yes! Configure permission-based discounts in Case Opening Discounts and Exchange Privilege Settings. Set different discount percentages for different VIP tiers.
Q: How do I configure the plugin config file?
A: The config file is located at oxide/config/UltimateCases.json (or carbon/config/UltimateCases.json for Carbon). Here's how to configure key settings:
Template Selection: Set "Template" to "Fullscreen", "V1", "V2", or "V4"
Commands: Modify "Open UI Commands" array to add custom command aliases
Key Exchange: Configure "Exchange Settings" → "Currencies" to add currencies (Economics, ServerRewards, items, etc.)
Roulette Duration: Set "Roulette Settings" → "Default Duration" (seconds) and "Quick Mode Duration"
Sound Effects: Enable/disable sounds in "Sound Effects" section and set effect prefab paths
Logging: Configure console, file, chat, and Discord logging in "Logging Settings"
Restrictions: Enable/disable case opening restrictions in "Restrictions Settings"
Inventory: Configure inventory settings in "Inventory settings" section
After editing, reload the plugin: o.reload UltimateCases (Oxide) or c.reload UltimateCases (Carbon).
Q: How do I set up LangAPI for multi-language support?
A: To enable LangAPI support:
Make sure LangAPI plugin is installed and loaded on your server
In UltimateCases config, set "Work with LangAPI?" to true
Create language files in oxide/lang/UltimateCases/ (or carbon/lang/UltimateCases/ for Carbon)
Create files like en.json, ru.json, etc. with translation keys
Use LangAPI's translation system to translate all plugin messages
Reload the plugin to apply changes
Example translation key structure:
{
"UI_Header_Title": "Ultimate Cases",
"UI_Content_ButtonOpen": "OPEN CASE",
"UI_Content_ButtonOpenFREE": "FREE",
...
}
Q: How do I set up Monument Traders using commands?
A: To create and configure Monument Traders:
Make sure you have ultimatecases.edit permission
Go to the monument where you want to spawn a trader (e.g., lighthouse, outpost)
In server console, use: cases.trader create [currencyID] [defaultKeys] [prefab]
currencyID - ID of the currency from Exchange Settings (0, 1, 2, etc.)
defaultKeys - Default number of keys per exchange (e.g., 1)
prefab - NPC prefab path (e.g., "assets/prefabs/npc/bandit/missionproviders/missionprovider_outpost_b.prefab")
Enter edit mode: cases.trader start <botIndex> (use cases.trader list to see bot indices)
Position yourself where you want the NPC to spawn
Update position: cases.trader move
Set rotation: cases.trader rotate <angle> (0-360 degrees)
Save: cases.trader save
The NPC will spawn automatically at the configured monument
Q: How do I configure custom economy plugins?
A: To use a custom economy plugin:
In config, find "Custom Economy Settings"
Set "Use Custom Economy" to true
Set "Type" to "Plugin"
Enter "Plugin Name" (exact name as it appears in plugins list)
Configure hooks:
"Plugin Hook Add" - Hook name for adding balance (e.g., "AddPoints", "Deposit")
"Plugin Hook Remove" - Hook name for removing balance (e.g., "TakePoints", "Withdraw")
"Plugin Hook Balance" - Hook name for checking balance (e.g., "CheckPoints", "Balance")
Test the hooks work correctly by checking plugin documentation
Reload the plugin
Q: How do I configure rarity backgrounds?
A: To set up rarity backgrounds:
In config, find "Rarity Settings" → "Rarity Backgrounds"
Add entries with chance ranges and images:
"Min" - Minimum chance percentage (e.g., 0)
"Max" - Maximum chance percentage (e.g., 1)
"Image" - Background image URL for case display
"Roulette Item Background Image" - Background image URL for roulette item display
Example: Legendary (0-1%), Epic (1-5%), Rare (5-15%), Uncommon (15-50%), Common (50-100%)
Items with drop chances within each range will display the corresponding background
Q: How do I configure Discord webhook logging?
A: To set up Discord webhook logging:
Create a Discord webhook in your Discord server (Server Settings → Integrations → Webhooks → New Webhook)
Copy the webhook URL
In config, find "Logging Settings" → "Discord"
Set "Enabled" to true
Paste webhook URL in "Webhook URL"
Configure options:
"Rare Threshold" - Only log items with chance ≤ X% (0 = log all items)
"Embed Color" - Decimal color code (e.g., 15844367 for gold)
"Title" - Embed title
"Show Player Avatar" - Display player avatar in embed
"Show Item Icons" - Display item icons in embed
"Group Items" - Group multiple items in single message
"Include Statistics" - Add statistics to embed
Reload the plugin
Q: How do I configure item rewards with weapons and attachments?
A: In the Item Editor:
Set "Type" to "Item"
Enter the weapon "ShortName" (e.g., "rifle.ak")
In "Weapon" section, set "Enabled" to true
Set "Ammo Type" (e.g., "ammo.rifle.explosive")
Set "Ammo Amount" (e.g., 128)
In "Content" section, set "Enabled" to true
Add attachments in "Contents" array:
"ShortName" - Mod shortname (e.g., "weapon.mod.lasersight")
"Condition" - Item condition (0-100)
"Amount" - Usually 1 for mods
"Position" - Slot index (-1 for auto-assignment)
Save the item
Q: How do I configure command rewards in cases?
A: To add command rewards:
In Item Editor, set "Type" to "Command"
In "Command (%steamid%)" field, enter your command
Use placeholders:
%steamid% - Player's Steam ID
%username% - Player's display name
%player.x% - Player's X coordinate
%player.y% - Player's Y coordinate
%player.z% - Player's Z coordinate
Multiple commands can be separated by | or line breaks
Example: "inventory.giveto %steamid% rifle.ak 1|oxide.usergroup add %steamid% vip"
Q: How do I enable Offline Image Mode?
A: To use local images instead of downloading from internet:
In config, set "Enable Offline Image Mode" to true
Create folder "TheMevent" in oxide/data (or carbon/data for Carbon)
Download PluginsStorage (click "CODE" → "Download ZIP")
Extract the ZIP and copy all contents to the "TheMevent" folder
Reload the plugin: o.reload UltimateCases (Oxide) or c.reload UltimateCases (Carbon)
Note: For custom images, place them in the "TheMevent" folder and reference them with the "TheMevent/" prefix (e.g., "TheMevent/MyImage.png").
Q: How do I configure demo mode and quick unbox mode?
A: Demo mode allows testing cases without spending keys, and quick unbox mode speeds up animations:
In config, find "Roulette Settings"
For demo mode: Set "Demo Mode Permission" to a permission name (e.g., "ultimatecases.demo") or leave empty to disable
For quick unbox: Set "Quick Unbox Permission" to a permission name (e.g., "ultimatecases.quick") or leave empty to disable
Set "Quick Mode Duration" (seconds) - how long the quick animation should last
Grant the permissions to players who should have access
Reload the plugin
Q: How do I configure case opening restrictions?
A: To prevent case opening in certain situations:
In config, find "Restrictions Settings"
Set "Enabled" to true
Enable/disable specific restrictions:
"Block During Combat" - Requires NoEscape plugin
"Block During Raid" - Requires NoEscape plugin
"Block in Building Blocked" - Blocks when player can't build
"Block While Swimming" - Blocks when player is swimming
"Block When Player is Wounded" - Blocks when player is wounded
"Block During Duel" - Requires Duel/Duelist plugin
"Block During Helicopter Flight" - Blocks when in helicopter
"Block When Player is Sleeping" - Blocks when player is sleeping
Reload the plugin
🧪 TEST SERVER
Join our test server to experience UltimateCases yourself!
Copy the IP Address below to start playing!
connect 194.147.90.147:28015
Ready to create the ultimate case opening experience? UltimateCases gives you all the tools you need to build excitement, reward players, and monetize your server. Start creating your first case today!
Premium Betterloot table V.4 Compatible + Updated deep sea loot.
Elevate your Rust server's loot economy with this meticulously crafted BetterLoot v4 configuration, designed exclusively for 2x gather servers.
Probability-driven drops ensure resonable and fair loot without flooding the map with junk loot.
This covers boxes, NPC and all other loot on rust.
Key Balancing Features
2x-Optimized Scaling: Matches vanilla multipliers on high tier items for fair 2x progression.
Balanced Probabilities:Barrels stay low-tier for early-game grind. Tested for wipe-long sustainability—no early-game god-rolls or late-game starvation.
Perfect for servers seeking premium, player-approved loot without alot of custom plugins.
Full config JSON included with setup guide.
I also have a 3x, 5x and 10x table based like this.
Why choose this config? Setting up a balanced 2x server can be a real headache. I’ve spent countless hours fine-tuning these tables to ensure your players get a rewarding experience without breaking the progression. Save your time and focus on growing your community instead of fighting with config files!
Video of the loot table in action:
Free
StarGuard Platform
The RCON dashboard built for Rust server admins
Manage your servers from anywhere. Console, players, bans, reports, automated rules, analytics, one place, persistent across wipes.
Get Started Live Demo
Explore the Dashboard
Just a preview, countless other features integrated and planned.
Console Full RCON access from your browser
Players Live player list with deep profiles
Reports All F7 reports in one place
Statistics Live server KPIs and performance
Plugins Oxide and Carbon plugin management
Under the Hood
Built for speed and moderation workflows, with real-time data, automation, and persistent history.
🖥️
RCON Console
Full RCON from your browser. Command history, syntax highlighting, real-time output.
👥
Player Intel
Deep player profiles, alts, playtime, connections, ban history. One click to moderate.
🛡️
Threat Detection
Flags suspicious joins instantly. VPN detection, threat scoring, known cheater alerts.
⚡
Automation
Event-driven rules. Auto-kick, auto-ban, scheduled commands, runs 24/7.
📊
Analytics
Player counts, peak hours, retention, performance trends.
💾
Persistent Data
Persistent across wipes. Chat logs, bans, reports, events, all searchable.
Oxide Compatible
Carbon Compatible
Developer API
StarGuard hooks into global.playerlist and extends it. If you're building on top of this, here's what you get.
GetPlayerList(ConsoleSystem.Arg arg)
Replaces the default global.playerlist handler. Returns JSON with extended player data not available in the vanilla response.
Response Fields
SteamID · OwnerSteamID · DisplayName · Ping · Address · EntityId · ConnectedSeconds · ViolationLevel · Health · NetworkId · S_TeamId
TryGetCommand(out ConsoleSystem.Command command)
Scans ConsoleSystem.Index.All for global.playerlist. Returns true with the command reference via out, false otherwise.
Get set up in 2 minutes.
Create an account, connect your server, done.
Get Started Live Demo
Rust CUI Editor
Visual Interface Designer for Rust
Stop writing UI code blindly. Design your CUI interfaces visually and export ready-to-use code in seconds.
What is this?
Rust CUI Editor is a desktop application for creating Rust game UI (CUI) interfaces using a visual drag-and-drop editor. Instead of writing dozens of lines of CuiHelper code and constantly reloading your plugin to see the result, you design everything visually and get clean, working code instantly.
Video demonstration 2.0.0 Version (At the moment the version is already newer with new features)
Elements
Panel
Image (URL/sprite)
Label (with outline)
Button
InputField
ScrollView
Countdown
Draggable
Slot
NeedsCursor / NeedsKeyboard
Layout
Horizontal Layout Group
Vertical Layout Group
Grid Layout Group
Content Size Fitter
LayoutElement
Visual
Drag elements on canvas
Resize with 8 handles
Multi-selection
Marquee select
Anchor/offset system
Element rotation
Inline text editing
Element locking
Alignment
Left / Center / Right
Top / Middle / Bottom
Stretch to parent
Match Width/Height
Distribute evenly
🆕 Find & Replace
Search and replace element properties across the entire project at once. No need to click through each element manually.
► Search by text content, color value, sprite, or material
► Filter results by element type
► Replace single matches or all at once
► Full undo support for bulk replacements
🆕 Inspect Element
Dedicated inspection window for any selected element. Shows all properties in structured form alongside the raw CUI JSON output.
► All component properties in one place
► Raw CUI JSON with one-click copy
► Useful for debugging and quick exports
► Opens with shortcut or right-click menu
🆕 Snapshots
Save named project states at any point and restore them without losing your current work. Snapshots are completely separate from undo history.
► Create named snapshots before risky changes
► Restore any snapshot at any time — current work is preserved
► Stored in a .snapshots folder next to the project file
► Independent from undo/redo stack
🆕 Wrap in Parent
You've built a header with a label and a close button, then realize you forgot to add a background panel behind them. Select all elements, right-click, Wrap in Parent — done. Nothing moves.
► Works with any selection of elements
► New parent is sized to the bounding box of the selection
► All anchors recalculate automatically
► Wrap into Panel, Button, Image, or ScrollView
🆕 Themes
Dark Theme
Default dark interface.
Easy on the eyes during long sessions.
Light Theme
Full light mode across all panels,
dialogs, and overlays. Toggle in settings.
🆕 Plugin Import
Load CUI elements directly from an existing .cs plugin source file. The parser reconstructs the full element tree for visual editing.
► Parses CuiHelper and CuiElementContainer patterns
► Resolves local variables and string constants
► Handles loops and repeated element generation
► Substitutes lang message references with preview text
► Works on any Oxide/Carbon plugin file
🆕 Built-in Reference
A built-in help system with searchable articles covering the entire CUI system. No need to leave the editor to look something up.
► Articles for every element type and property
► Covers layers, ScrollView, blur materials, anchors, offsets, fonts
► Shortcut reference with all editor hotkeys
► Live demo canvas inside each article
► One-click "Add to project" from any example
🆕 Performance Rewrite
Canvas
GPU rendering
Scene bitmap cache
Static layer cache
SKPicture cache
SKPaint pooling (50+ allocs/frame saved)
Text layout cache
Typeface cache
Pan without full re-render
Element Tree
Debounced rebuild on rapid changes
Bulk update batching
Fast flat selection cache O(n)
ThumbnailBrush cache
Detach() memory leak fixed
Color Picker
Real-time updates while dragging
Only the affected element redraws
No full scene invalidation
🆕 Live Preview
See your UI exactly as it appears in-game, right inside the editor. Every element is fully rendered with correct Rust scaling, colors, sprites, and fonts. No need to reload your plugin to check the result.
Rendering
Panels & Images
Labels with fonts
Rich Text support
Sprite tinting
FadeIn / FadeOut
Interactive
Button hover & press
ScrollView with inertia
Elastic bounce
Auto-hiding scrollbars
Live Countdown
Drag & Drop
Draggable elements
Slot filter matching
MoveToAnchor snap
Element swapping
KeepOnTop z-order
Tools
Element Inspector
Grid overlay
Outlines view
Auto-sync with editor
Screenshot to PNG
All CuiDraggableComponent properties are supported in preview: LimitToParent, MaxDistance, AllowSwapping, DropAnywhere, DragAlpha, ParentPadding, ParentLimitIndex, AnchorOffset, and more.
► Pick up Draggable elements and drop them into Slots
► Filter matching ensures only compatible elements snap
► Swap elements between occupied slots
► Inspector overlay shows element info on hover (shortcut: I)
► Grid and outline overlays for layout debugging (G / O)
► Background selector: dark, light, or any game screenshot
► Auto-sync keeps preview updated as you edit
► Export preview as PNG screenshot (S)
🆕 Smart Hook Generation
When your project uses Draggable or Slot elements, the export automatically generates ready-to-use hook methods with proper logic:
► OnCuiDraggableDrag with if/switch blocks for each draggable
► OnCuiDraggableDropped with switch by slot name
► Comments with accepted elements and filter values
► Works in both Snippet and Plugin export modes
🆕 Developer Tools
Professional plugin development toolkit with four dedicated tabs:
Plugin Settings
Author & version
Chat/console commands
Auto-show hooks
Permissions list
Plugin references
Generate Unload
Lang System
Multi-language support
Visual translation table
Per-element lang keys
lang.GetMessage() export
Canvas preview
ImageLibrary
Image key/URL table
Per-element ImageLib key
GetImage() helper
Auto OnServerInitialized
Auto plugin reference
Templates
Reusable code templates
Custom method generation
Placeholder system
Per-project settings
🆕 Localization System
Full multi-language support for your plugins. Assign lang keys to any text element, manage translations visually, and export with automatic lang.GetMessage() calls.
► Add unlimited languages (en, ru, de, fr, etc.)
► Visual translation table - edit all strings in one place
► Toggle between raw text and lang key per element
► Canvas shows resolved translations in real-time
► Exported code includes full LoadDefaultMessages with all languages
🆕 ImageLibrary Integration
Manage image assets directly in the editor. Define image keys and URLs, assign them to elements, and get clean export code with automatic ImageLibrary loading.
► Image key/URL table in Dev Tools
► ImageLib Key property on Image elements
► Export generates GetImage() helper method
► Plugin export auto-adds OnServerInitialized with image loading
► Automatic [PluginReference] ImageLibrary in export
🆕 Syntax Highlighting
► C# syntax highlighting in Export window
► JSON syntax highlighting in Export window
► Color-coded keywords, strings, numbers, comments
► Optimized for large code blocks
🆕 SVG Design Import
Import your designs directly from professional design tools:
Figma
export to SVG and import
Illustrator
Adobe AI/SVG support
Inkscape
free vector editor
Any SVG
standard format
► Automatic source detection optimizes parsing for each tool
► Smart layer hierarchy preservation
► Automatic element type detection (btn_, lbl_, img_, panel_)
► Correct parent-child coordinate conversion
🆕 Figma Plugin & Tools
New "Tools" folder included with the editor:
► CuiHelper Plugin for Figma - export designs directly to C# code
► Sample SVG designs - ready-to-import examples for testing and learning
► Documentation - setup guide for Figma plugin
🆕 Smart Resize Mode
Default Mode
Resize by changing Anchor values
Perfect for responsive layouts that
scale with screen size
Shift + Resize
Resize by changing Offset values
Perfect for pixel-perfect positioning
Orange handles indicate active mode
🆕 Inline Text Editing
► Double-click any text element to edit it directly on canvas
► No need to switch to the property panel, just click and type
► Press Enter or click outside to confirm changes
Guides, Grid & Smart Snapping
► Draggable guides from rulers
► Customizable grid with snap
► Smart guides - auto-snap to edges
► Distance indicators while dragging
Multiple Backgrounds
Preview your UI on actual game screenshots:
Game view Inventory Loot container Crafting Map Transparent
Export Formats
Generate ready-to-use code in three formats:
C# (CuiHelper)
container.Add(new CuiPanel {
RectTransform = {
AnchorMin = "0.3 0.3",
AnchorMax = "0.7 0.7"
},
Image = { Color = "0.1 0.1 0.1 0.9" }
}, "Overlay", "MyPanel");
JSON
[{
"name":"MyPanel",
"parent":"Overlay",
"components":[...]
}]
Full Plugin
Complete .cs file with:
• using statements
• class definition
• commands & permissions
• Lang & ImageLib integration
• all UI code
Import Existing Code
Already have CUI code? Import it!
► Paste JSON array
► Paste C# CuiHelper code
► Import from PSD files
► Import from SVG files (Figma, Illustrator, Inkscape)
► Import from .cs plugin source files
The editor parses your code and recreates all elements for visual editing.
Project Management
► Save/Load project files
► Multiple tabs for different projects
► Recent projects with thumbnails
► Per-project settings
► Close confirmation for unsaved changes
Property Editor
Full control over every element property:
► Position (anchors + offsets)
► Colors with Rust format (0-1 RGBA)
► Fonts and text alignment
► Sprite/material selection
► Outline settings
► Fade in/out animations
► Button commands
► Input field parameters
► ScrollView settings
► Rotation and pivot point
Element Hierarchy
► Layer-based structure (Overlay, Hud, HudMenu)
► Parent-child relationships
► Drag & drop reordering
► Visibility toggle
► Lock elements to prevent accidental edits
► Rename with double-click
► Hover a tree node to highlight it on canvas
Additional Tools
Measure Tool
measure distances on canvas
Style Picker
copy style between elements
Sprite Library
browse Rust sprites
Color Picker
Rust format preview
Quality of Life
► Unlimited undo/redo
► Copy/paste/duplicate elements
► Copy/paste style
► Keyboard shortcuts for everything
► Multiple preset resolutions
► Smooth multiplicative zoom
► Auto-fit canvas to window
► Dark and light themes
► English & Russian localization
► Automatic update notifications
System Requirements
► Windows 10/11
► .NET 8.0 Runtime (bundled)
Installation
1. Download and extract the archive
2. Run RustCUIEditor.exe
3. Start creating!
Questions or support issues?
Contact me via CodeFling messages.
Community Picks
Highest Rated
Top-rated picks trusted and loved by the community.
-
$16.99
By David
-
$40.00$30.00By nivex
-
$29.99$19.99By LosGranada
-
$29.99
By imthenewguy
-
$24.99
By Whispers88
-
$40.00$31.95By Mevent
-
Free
By Steenamaroo
-
$14.99
By AhigaO
-
$14.99
By David
-
$19.99$15.99By Fruster
-
$45.99$40.47By Monster
-
$19.99
By ZEODE
-
$19.99
By Fruster
Trending
Trending Files
Popular picks members are downloading the most right now.
-
$29.90
By walkinrey
-
$29.99
By Adem
-
$21.95$15.95By Mevent
-
$15.00
By imthenewguy
-
$40.00$30.00By nivex
-
By Scalbox
-
Free
By Duff
-
$34.95$21.95By Mevent
-
Free
By Steenamaroo
-
$29.99
By imthenewguy
-
$35.00
By KpucTaJl
-
$40.00
By The_Kiiiing
Deals
Great Deals
Discounted picks, limited-time deals, and sale items worth grabbing now.
-
$15.00$11.25By Ionut Shiro
-
$45.00$41.95By Mevent
-
$13.50$8.99By Qbis
-
$15.00$4.50By kykyxa
-
$8.00$6.00By Ionut Shiro
-
$5.98$4.96 -
$3.00$2.25By Ionut Shiro
-
$34.99$17.49By SirApesALot
-
By Shemov
-
$6.30$4.72By Shemov
-
$9.99$7.49By Kamycz3q
-
$11.99$10.55By Monster
-
$11.95$7.95By Mevent
Fresh Updates
Recently Updated
Recently improved files with fresh updates, fixes, and new content.
-
$24.99$19.99 -
$25.00
By Martian
-
$20.00
By Neighigh
-
$12.99
By the-bandit
-
Free
By Duff
-
$5.90
-
$19.99$14.99By Yaki
-
Free
By crash
-
$4.00
By tacman1981
-
$21.95$15.95By Mevent
-
$8.00
By Barry_Allenn
-
$15.00
By josh-z
Community Feedback
Latest Reviews
See what customers are saying about their experience with files.
While it's uses are undeniable, I found it difficult to get permissions set and completely set up for use. Without Permissions Manager, I'd probably still be looking for things or getting a refund. So that lost a star.
Second star was due to how incredibly slow it works, as it took over 3 minutes to fully upgrade my current base. Admittedly there may be a setting in there somewhere to increase it's efficiency but for $15, I expected a little bit more.
In the plugins defense I think it'
LOVE IT
better then free quick smelt plugin
An absolutely outstanding plugin that has improved tremendously over time. The latest update has made it even better, and the addition of the wipe block has been a huge benefit for my server. It's an incredibly useful feature that makes day-to-day management far easier.
What really sets this apart is the current developer. They genuinely listen to feedback, actively engage with their community, and consistently implement meaningful improvements. It's refreshing to reach out with an author w
Easy to use permissions manager.
This is a good WelcomePanel.
Good addition to WelcomePanel.
Works great. Set up is simple and codes are generated instantly. The plugin creates a file where you can see all players who generated a code and who they invited.
Works great. Integrates perfectly with ServerPanel. Low performance plugin that shows players important dates that you set.
Works great. Integrates with ServerPanel perfectly. The in game GUI will allow you to set up kits without touch a single .json file.