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.
$19.99
What it does helps sus out cheating in Rust and assigns each player a risk score. Alerts you via Discord. Optionally shares flagged players across a network of servers. Includes a live web dashboard for tracking players, violations and bans across all connected servers.
See effected detection in troublshooting
you are not obligated to use the web service but it helps build the database its set to false by default
although an option automatic report is set to false you send what you find if you find there is enough proof
ban intercept so you dont need to use our ban it will pickup on your ban plugin or method
Detection modules (all individually configurable)
ESP / Wallhack
Aimbot (snap angle + alignment tracking with confirmation windows)
No-Recoil (shot interval and pattern analysis)
Speed Hack (with lag-switch detection and network burst softening)
NoClip / Fly
Wall Loot (looting through walls with confirmation system)
Debug Camera abuse
Privilege Escalation (console command monitoring)
Strafe & Backpedal hacks (SkillTree compatible)
When a player connects
Pulls VAC bans, game bans, community bans, account age and name history from Steam
Optional ServerArmour integration for extended ban history and risk scoring
Alerts Discord on flagged joins, new accounts, VAC bans, name changes
Auto Actions (disabled by default)
Auto-kick at configurable risk threshold
Auto-ban at configurable risk threshold (permanent or timed)
Radar
radar detects players, sleepers, TCs, stashes, bags, corpses, and player ships
Toggleable side strip UI panel
Risk scoring
Composite score built from all detection modules plus Steam and ServerArmour data
Configurable weights per module
Score decay over time (configurable)
Persists between sessions
Requirements
Steam API key (required)
Discord webhooks (optional but strongly recommended)
ServerArmour API key (optional)
Setup
Drop NexusCheatRadar.cs into /oxide/plugins/
Add your Steam API key to the config
Set your Discord webhook URLs for each alert type
Adjust detection thresholds to suit your server population and tick rate
Web service is optional — detection works fully offline
Commands All require nexuscheatradar.admin permission or server console
Chat commands:
/ncr or /ncr.radar — toggle the admin radar overlay on/off
/ncr.strip — toggle the radar side strip UI
/ncr.lookup <name|steamid> [team|clan] — full player lookup with risk data
/ncr.risk <name|steamid> — show current risk score
/ncr.history <name|steamid> — view incident history
/ncr.incidents <name|steamid> — view all logged incidents
/ncr.stats — plugin stats (online players, tracked states, elevated scores, top scorer)
/ncr.reset <steamid> — reset a player's risk score
/ncr.watch <steamid> — add to watchlist for extra scrutiny
/ncr.unwatch <steamid> — remove from watchlist
/ncr.watchlist — show all players currently on watchlist
/ncr.ban <steamid> [reason] [appeal link] — manual ban, logged to web dashboard
/ncr.unban <steamid> — lift a ban
/ncr.webshare <steamid> <type> [notes] — manually push a violation to the network. Types: aimbot esp no_recoil speed_hack noclip wall_loot priv_escalation strafe_hack debug_cam
/ncr.test norecoil|aimbot|esp — sends a test message to the corresponding Discord webhook to confirm it's working
Console commands (server console or RCON only):
ncr.testmode <steamid> <true|false> — enable test mode against a specific player to verify alerts and web sync without a real cheater
Web Service (completely optional) Detection works 100% offline. Turning it on helps other servers and gives you :
Shared suspicious player data across all connected servers
Public dashboard — players, violations, bans, server status
Server owner portal — manage bans, view player list
Group Key — one key to manage multiple servers from a single portal login please make it a unique key as the larger the comunity the more likely simple keys can be accidently duplicated
Player appeal URL — set a Discord or website link per server so banned players know where to appeal
Dashboard: nexuscheatradar.pages.dev
Group Key (multi-server owners) Set the same GroupKey in the config on each of your servers. Log into the server portal with the group key instead of a server key to manage all servers from one view
Group Key can be changed at anytime
Warnings
Do NOT change the Server UUID once generated — it will orphan all your data and break web sync
Do NOT rename the plugin file — Oxide uses the filename as the plugin ID
Do NOT share your Server Key or Group Key publicly — treat them like passwords pick and choose who has access to group key dont give it to the trigger happy admin
Troubleshooting
We are aware of some of the issues throwing flags in raidable bases working on a fix
Raidable Bases — disable NoClip detection or whitelist affected players if running this. Wall Loot may need confirmation threshold raised to 3+ if raid loot false positives appear.
Any plugin that spawns sphere/zone entities (ZoneManager, ArenaTournament, TruePVE zones, etc.) — may trigger NoClip false positives. Recommend disabling NoClip on those servers or increasing RequiredViolations to 6+.
Speed boost plugins — raise MaxMetersPerSecond to account for the boost, or whitelist affected players.
Servers without TC on custom bases (Raidable Bases, custom dungeons) — Wall Loot relies on TC auth as a primary bypass. Without it, it falls back to LOS only which is still accurate but more load on admins to verify.
NTeleportation/teleport plugins — generally safe, grace fires on OnPlayerTeleported. Plugins using direct Rust teleport methods need verification.
you are not obligated to use the web service but it helps build the database its set to false by default
although an option automatic report is set to false you send what you find if you find there is enough proof
ban intercept so you dont need to use our ban it will pickup on your ban plugin or method
Too many alerts → raise the probability thresholds in config, defaults are conservative
False positives are expected especially on high-pop or laggy servers — tune gradually
Alerts not arriving → run /ncr.test aimbot to confirm your webhook URL is working
Web not connecting → check your Supabase URL and API key in config
Wrong risk score → run /ncr.risk <name> or /ncr.lookup <name> to force a re-scan
SkillTree conflicts → enable SkillTree compatibility mode in config to suppress false speed and strafe detections
(adding more supression for skilltree users in future releases )
Config format may change between versions — check changelog before updating
we are still beta ..Bugs will happen. Threshold tuning will be needed. Expect some trial and error getting it dialled in for your server.
dashboard will remain free as long as i can find a way to keep it free
Dashboard — nexuscheatradar.pages.dev
$14.99
CodeFling Creator Bot is a Discord bot, written in Python using Discord.py.
The bot monitors users specified in the config and using the CodeFling API, sends notifications to Discord for various actions:
New Releases (Plugins, Maps, Tools etc)
Plugin/Release Updates
New Comments/Discussion Posts
New Support requests and replies to threads
New Reviews
New Private Messages
The bot is lightweight and written with efficiency and reliability in mind. It makes only the API calls it needs and stores data in an SQLite database for use later. When guild members use the bot commands, the data is pulled from the local database and doesn’t make extra calls to the API, which means you don’t need to worry about rate limiting or getting banned by the API.
The bot polls the API looking for new content at set periods as set in the config, notifying about new content and then updating the database with new data.
PLEASE NOTE: Requires Python 3.6 or higher.
README:
CodeFling Creator Bot 1.1.1
Discord Bot by ZEODE
==========================================
Minimum requirements:
Python 3.6 or higher
Dependacies:
Discord.py
aiohttp
Using pip:
pip install -U discord.py
pip install -U aiohttp
The -U flag just means “upgrade to the latest version if already installed.”
Using apt:
apt install python3-discord
apt install python3-aiohttp
This file explains each configuration option in config.json
*************** DEFAULT CONFIG FILE IS CREATED ON FIRST RUN ***************
DISCORD SETTINGS
----------------
Make sure your Discord bot has at least "Send Messages", "Read Message History" and "Embed Links" permissions.
bot:
bot_token:
Your Discord bot token from the Discord Developer Portal.
Get it from: https://discord.com/developers/applications
channels:
release_channel_id:
Discord channel ID where file release/update notifications will be posted.
To get channel ID: Enable Developer Mode in Discord settings, right-click channel, "Copy ID"
purchase_channel_id:
Discord channel ID for purchase notifications (recommend private channel).
Shows when someone buys one of your paid plugins.
support_channel_id:
Discord channel ID for support request notifications.
comments_channel_id:
Discord channel ID for comment/discussion notifications.
Shows when users comment on your files (excludes file author replies).
downloads_channel_id:
Discord channel ID for file downloads notifications (recommend private channel).
Shows when users download your files.
reviews_channel_id:
Discord channel ID for file review notifications.
Shows when users review a monitored file.
messages_channel_id:
Discord channel ID for user message notifications (recommend private channel).
Notifys when a monitored user receives a message on CodeFling.
commands_channel_id:
Discord channel ID for people to use bot commands.
People can use bot ! commands here, all user messages can be cleaned automatically, see below.
admin_commands_channel_id:
Channel for users with the bot admin role to use admin commands away from public channels
All normal commands also work here for bot admin role users to use here too
NOTE:
- Leaving any of the channel IDs blank will disable notifications for those actions
- Although there are separate channels for each type in the config, this is just for anyone
wanting this, if you want you can put the same channel ID in more than one channel config
misc:
clean_commands_channel:
If true, users messages are automatically deleted shortly after they are sent to the channel.
max_number_files_to_list:
Number of files to return when users use the "!list plugins" command
bot_admin_role_id:
Users need this role to use the admin only commands
ping_release_channel:
If this is true, new releases or updates to files will be notified with the @everyone tag
presence:
enabled:
true or false to enable or disable Discord presence.
type:
Available options:
"playing"
"watching"
"listening"
"competing"
text:
The text to display, e.g. www.codefling.com
CODEFLING SETTINGS
------------------
monitored_users:
Dictionary of Codefling user IDs and their API tokens.
Format: "user_id": "api_token"
How to get your User ID:
- Visit your Codefling profile
- Hover over or click on "See my activity"
- Your user ID is in the URL: https://codefling.com/profile/USER_ID-username/content/
- Copy just the numbers, without the "-username" part
How to get API Token:
- Visit: https://codefling.com/settings/apps/
- Click "Add App" > "Creator API"
- Select "All" under scopes
- Copy the access token to paste in your config
NOTE: For message_buyer_on_purchase you will require a Creator Pro API token.
Example:
"monitored_users": {
"user_id_1": "your_api_token_here",
"user_id_2": "another_api_token"
}
Note: Each user needs to use their own API token.
poll_interval_seconds:
How often (in seconds) the bot checks Codefling for new content.
Default: 120 (2 minutes)
Suggested values:
| Type | Safe poll interval | Notes |
| ----------------------- | ------------------ | ----------------------------------- |
| Light use (1–2 authors) | 60 s | Feels instant, safe if few requests |
| Medium (3–5 authors) | 120 s | Recommended default |
| Heavy use (5+ authors) | 300 s | Low strain, good scaling |
| Massive / strict API | 600–900 s | Extremely safe |
Note: Too frequent polling may hit API rate limits. The more files a user has, the harder
it is on the API leading to possible rate limits or IP ban, so be cautious.
retention_days:
How many days of historical data to track and store.
Default: 7 days
The bot will:
- Only notify about content within this time window
- Automatically clean up older data daily
- On first run, load existing content from this period
Recommended values:
- 7 days (minimal storage)
- 30 days (balanced)
- 90 days (extended history)
NOTE: Monitored resource/file data is kept indefinitely for users !stats !list commands etc, but the bot
will only look for new actions within this period to send notifications to Discord or not. This maintains
speed and performance so the bot isn't retreiving more data than is necessary with each API call.
In most cases, 7 days should be more than sufficient for all use cases.
message_buyer_on_purchase:
If true, when a new purchase is detected, the bot will send a private message on the Codefling website
with the message content taken from users/{userid}/purchase_message.txt. This can be edited to whatever
you like, using html formatting and with available placeholders:
{buyer_name}
{resource_name}
{resource_url}
{support_url}
NOTE: You will require a Creator Pro API token to use this feature!!!
notify_support_request_replies:
Limitation of the API at present means that it is not possible to know the reply comment author in
support requests. Therefore we cannot filter replies by the file owner, so all replies will be
announced, inclduing from the file owner. If you do not want this, you can disable announcing replies
so that only new support requests are announced. If the API endpoint is updated in future this can
be improved.
LOGGING SETTINGS
----------------
timestamp_date_format:
The format for timestamps in the console/log output.
Availble:
- %d
- %m
- %y
e.g: %d-%m-%y would make something like 30-10-25
timestamp_time_format:
Specify the format for the timestamp.
- 12h
- 24h
log_file_path:
Set the path to the OPTIONAL log file. If left blank, no log file will be used.
API OPTIONS
-----------
Note: You can usually leave this as is and it will work absolutely fine.
max_attempts:
How many times to try an API request if it fails before giving up on that attempt
Useful for occasional CloudFare errors/timeouts
timeout_seconds:
How long to wait before retrying a API request due to timeout
DEBUG OPTIONS
------------------
enable_verbose_debug_logging:
As it says, enabled verbose loigging which can help in troubleshooting issues. Default is false.
config_version:
DO NOT EDIT THIS
COMMANDS
------------------
NOTE: Commands by users do not query the CodeFling API every time. They only retreive data from
the SQLite database, so you don't have to worry about rate limiting or banning from users abusing
the commands on Discord. This also means it is much quicker with results. The database is updated
with all the info every time the API is queried as per the poll rate in the config only.
Non-Admin Commands:
!help
Lists all available commands
!stats [username]
Get own stats without parameter if you are monitored by the bot or get stats for the user specified
!list files
List all files monitored by the plugin (config option to limit results)
!list authors
List all file authors/devs monitored by the bot
!file <FileName> / !file <file_id>
Give information about that file
Admin Commands:
!user add <user_id> <api_token>
Add the specified user ID and API token to the bot, save in the config and begin monitoring
!user remove <user_id>
Stops monitoring and removes the specified user ID from the bot and config
!rotate
Immediately rotate the log file and begin a new blank log file (rotated files saved in logs/)
!cleardb
Immediately clear the SQLite database and re-seed a new database (ALL DATA WILL BE CLEARED)
!test <review|download|purchase|comment|support|message>
Send a test notification to Discord for the most recent entry of the given type
!test <purchase_msg> <user_id> <purchaser_id>
Send a test purchase message by PM on CodeFling
!test <file> [new|updated]
Send a test notification to Discord for the most recent entry for files/releases,
using the new or updated parameter accordingly/
FIRST RUN BEHAVIOR
------------------
On first run, the bot will:
1. Create a SQLite database (codefling_bot.db)
2. Load/Cache all users existing files.
3. Load/Cache all existing content from the last N days (retention_days)
4. DOES NOT send any notifications for existing content
5. Only notify about NEW content after initialization
On subsequent runs:
1. Check for content created while bot was offline
2. Send notifications for missed content
3. Continue normal monitoring
TROUBLESHOOTING
---------------
No notifications appearing:
- Verify channel IDs are correct
- Check bot has "Send Messages", "Read Message History" and "Embed Links" permissions
- Confirm API tokens are valid and have correct scopes
Getting rate limited:
- Increase poll_interval_seconds value
- Default 300 seconds (5 minutes) should be safe
Bot sends old notifications on startup:
- This is normal if content was created while bot was offline
- Bot catches up on missed content within retention period
- On first run, no old notifications should appear
SUPPORT
-------
For issues with the bot, check console output for error messages.
Get more support in my Discord: https://discord.gg/jnyg3FvDnc
For Codefling API issues, see: https://codefling.com/developers
$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
Extra Fishing V2
Transform vanilla fishing into a rich, progression-based gameplay pillar with
300+ custom fish species, drifting school-of-fish encounters, aquaculture
breeding, fish finders, economy integration, a beautiful animated fish
encyclopedia, and fully fish traps.
ExtraFishing turns one of Rust's most ignored activities into a deep, rewarding
system your players will actually want to engage with. Every catch matters:
size, weight, rarity, biome, time of day, water depth, rod tier, school
proximity, and aquaculture breeding all influence what ends up on the line.
DEPENDENCIES
Required:
ImageLibrary — For all custom fish icons and UI background images. ExtraFishing will not display images without it.
Optional:
Economics — Enables Economics as a currency backend in the sell UI.
ServerRewards — Enables ServerRewards as a currency backend.
If you use only Scrap or a Custom item as currency, no optional plugins are
needed.
Added 300+ Fish
• Fully configurable fish catalog with custom names, skin IDs, growth
formulas, min/max sizes, rarities (Star 1 to Star 5), biome restrictions,
descriptions, and processed-item yields.
• Each species uses a real weight formula:
Weight (kg) = Growth_A * Size^Growth_B / 1000
so bigger fish really do weigh proportionally more. This is what drives
the per-species weight rankings.
• Fish are linked to vanilla bait items (anchovy, sardine, catfish,
herring, salmon, orangeroughy, smallshark, troutsmall, yellowperch) for
seamless compatibility with vanilla fishing mechanics.
School of Fish System
• Dynamic, drifting schools spawn and migrate across the ocean in real time.
• Schools provide massive bonuses while players fish inside them:
- Fish size multiplier (default 2.0x)
- Rarity bonus (default +100)
- Hook speed bonus (default 70% faster catch time)
• Visual burst effects trigger in bursts when players hook a fish inside a
school — great immersive feedback.
• Peak time schools spawn in shallower water (1–5m) to reward
morning/evening fishing. Off-peak schools stay in deeper water (30–50m).
• Per-school catch limit forces the school to migrate elsewhere after X
catches, keeping players exploring and preventing AFK camping.
• Fully configurable: max schools, radius range, drift speed, direction
change intervals, catch limit, update rate, effect tick settings.
Fish Finder Device
• Custom Geiger-counter-based handheld detector with a live radar-style UI
showing distance and bearing to the nearest active school.
• Configurable:
- Max detection range (default 100m)
- Beep interval, UI update interval, UI size
- Durability drain per interval
- Background image and overlay image stack
- Require specific skinned item vs. allow any Geiger counter
Tiered Fishing Rods
• Define any number of rod tiers keyed by SkinId. Each rod tier configures:
- ChanceBonus: adds to catch chance for rarer fish
- FishSizeMultiplier: multiplier applied to caught fish size
• Default tiers included: Low / Mid / High Quality Rod.
• Players progress by upgrading their rod — directly tied to bigger, rarer
fish and higher-value catches.
Tiered Fish Traps
• Define any number of fish trap tiers keyed by SkinId, each with:
- ChanceBonus for rarer fish
- FishSizeMultiplier
- CatchMinnowEnabled toggle + Min/Max minnow per catch
- StorageSlots (override vanilla slot count)
- MaxHealth (override trap durability)
• Default tiers included: Low / Mid / High Quality Fish Trap.
Aquaculture / Fish Breeding
• Deployable custom fish cages (Large Fish Cage, Small Fish Cage) that breed
fish over time when fed bait.
• Each cage type configures:
- Breeding interval min/max (in minutes)
- Box slot count (storage size)
- Fish size multiplier for bred fish
• Built-in breeding progress UI with feed reminders, empty state, box-full
warning, and an in-game guide overlay.
• Custom raft-based platforms for building floating fish farms:
- Square Raft 3x3 / 5x5 / 10x10
- Hexagonal Raft 1 / 3 / 5
• Configurable aquaculture settings: replacement/box health, effect
duration, effect tick interval, rarity multiplier for bred fish.
Depth-Based Fishing
• Fish size scales with water depth across 4 configurable tiers.
Default:
- Tier 1 (0.0 – 4.9m): 1.0x
- Tier 2 (5.0 – 39.9m): 1.1x
- Tier 3 (40.0 – 49.8m): 1.2x
- Tier 4 (49.9 – 999.9m):1.3x
• Encourages boat exploration and offshore deep-sea fishing.
• Fully toggleable via config.
Peak Time System
• Morning (default 4:00 – 7:00) and Evening (default 18:00 – 21:00) peak
windows apply a global chance bonus (default +50) for rarer fish.
• During peak time, additional fish schools spawn in shallow water so
players can easily reach them.
• All four values are configurable: MorningStart, MorningEnd, EveningStart,
EveningEnd, PeakTimeChanceBonus.
Fish Records & Server Rankings
• Every player's personal best Size and Weight per fish species is
tracked automatically and persisted across wipes (unless you wipe the
data file).
• Comprehensive in-game fish encyclopedia UI (/fish command):
- Search bar with live filtering
- Rarity filter (All / Star 1 – Star 5)
- Biome filter (All / Arid / Temperate / Tundra / Arctic / Jungle)
- "Caught" mark displayed on species the player has already landed
- Per-fish detail page with description, your personal record, and
**Server Top 3 by Size** + **Server Top 3 by Weight** leaderboards
• Optional Hide-Uncaught-Fish mode (HideUncaughtFish config toggle):
- Uncaught species are shown as "?????" with blacked-out icons
- Detail page is blocked both client-side (no clickable button) and
server-side (command rejected) — no way to sneak past the lock
- Search bar is spoiler-safe: real fish names do NOT match uncaught
species when the search filter is used, so players cannot reveal
hidden fish by typing guesses
Fish Sell UI & Economy Integration
• Built-in fish selling interface with live balance display.
• Supports four currency backends:
- Scrap (vanilla item, no dependencies)
- Economics (optional plugin)
- ServerRewards (optional plugin)
- Custom: any shortname + skin + display name as your server's
currency item
• Per-rarity price multipliers (Star 1 through Star 5) + global base price
multiplier for easy tuning.
• Sell individual fish stacks or use Sell All for bulk liquidation.
• Fish exchange via vending machines can be blocked to prevent trivial
economy exploits.
• Prices scale with fish rarity, base stack value, and base price
multiplier — everything is in the config.
Processed Fish Items (Custom Food / Resources / Buffs)
• When cooked or processed, fish yield custom items with configurable
skin IDs and display names. Example default items: Sulfur Fish yields
sulfur, Wood Fish yields wood, Metal Fish yields metal fragments,
Stones Fish yields stones, Bone Fish yields bone fragments, Crude Oil
Fish yields crude oil, and many more.
• Per-processed-item effects when consumed:
- Instant Health
- Health over Time
- Calories
- Hydration
- Poison reduction
- Bleeding reduction
- Radiation reduction
• **Full tea-buff system** — every vanilla tea modifier can be applied
per processed fish with custom value and duration:
Wood Yield, Ore Yield, Scrap Yield, Max Health, Move Speed,
Harvesting, Fishing Boost, Farming (Better Genes), Comfort, Clotting,
Warming, Cooling, Hunter Vision, Metabolism, Crafting Quality,
Radiation Resistance, Horse Gallop Speed.
• Turn fishing into a viable alternative to vanilla farming and gathering.
Other QOL Features
• Tension-break calorie penalty — failed casts cost extra calories
(configurable via CaloriesPerTensionBreak).
• Normal fishing calorie cost per cast (CaloriesPerFishing).
• Fish stack limit toggle:
- Enabled: each unique fish (size+weight) is its own item with the
full name tag
- Disabled: fish stack vanilla-style with a base-value table per
vanilla shortname
• Biome check toggle — restrict fish species to specific biomes or open them up everywhere.
◆ Player Command
/fish
Opens the main fish encyclopedia and records UI. Shows all fish species
with filters (search, rarity, biome), caught marks, and per-species
detail pages including personal and server records. Requires the
extrafishing.records permission.
◆ ADMIN ONLY COMMAND
/extrafishing
Gives you one of every configured item in a single command:
- Every fishing rod tier (by SkinId from config)
- Every fish trap tier (by SkinId from config)
- Both fish cages (Large + Small)
- Every raft platform (Square 3x3/5x5/10x10, Hex 1/3/5)
- Fish Finder
- 10 of every processed fish item with effects configured
Perfect for quick testing or outfitting admin accounts.
/givefish "Fish Name"
Spawns one fish of the specified species by its display Name (case
insensitive, quoted if it contains spaces). The item is tagged with a
random size/weight from the fish's config range.
Example: /givefish "Sulfur Fish"
/efgive <SteamID|Name> <Item>
Gives a specific named item to any player. See the full item list below.
/fishbuff <player> <percent> <minutes>
Grants a fishing luck buff to the specified player for the specified
duration. Increases chance of rarer fish.
◆ Console Commands (Server Console / RCON)
clearfishdata
Wipes all player fishing records from memory and disk. Admin only.
Use with caution — this cannot be undone.
fishbuff <steamid> <percent> <minutes>
RCON-friendly version of the chat fishbuff command.
efgive <SteamID|Name> <Item>
RCON-friendly version of the /efgive chat command. See item list below.
◆ Command : efgive ITEM LIST — ALL PATTERNS
Usage:
/efgive <SteamID or Name> <Item>
efgive <SteamID or Name> <Item> (console / RCON)
The <Item> argument is matched case-insensitively. Names with spaces do NOT
need quotes — the command joins all remaining arguments as the item name.
All 15 patterns:
FISHING RODS (3 tiers)
Low Quality Rod
Base: fishingrod.handmade
SkinId: 3683450483
The entry-level tier. Small ChanceBonus and a modest FishSizeMultiplier
(defaults 0.5x). Players start with this.
Mid Quality Rod
Base: fishingrod.handmade
SkinId: 3683450683
Mid-tier rod. Better ChanceBonus and FishSizeMultiplier than Low Quality.
Default multiplier 0.6x.
High Quality Rod
Base: fishingrod.handmade
SkinId: 3683450793
Top-tier rod. Highest ChanceBonus and FishSizeMultiplier (default 0.8x).
Meant as an endgame / shop reward.
FISH TRAPS (3 tiers)
Low Quality Fish Trap
Base: fishtrap.small
SkinId: 3683441661
Basic automated fish trap. Unlike vanilla traps, ExtraFishing traps work
offline and without a nearby player. Low ChanceBonus, small storage,
low MaxHealth.
Mid Quality Fish Trap
Base: fishtrap.small
SkinId: 3683441772
Upgraded trap. Better chance bonus, larger storage, more durability.
High Quality Fish Trap
Base: fishtrap.small
SkinId: 3683441864
Top-tier trap with the highest ChanceBonus, largest storage slot count,
and highest MaxHealth.
SQUARE RAFT PLATFORMS (3 sizes)
Square Raft 3x3
Base: boatbuildingstation
SkinId: 3691488275
The smallest square raft platform. Used as a base for building small
floating fish farms and bases on water.
Square Raft 5x5
Base: boatbuildingstation
SkinId: 3691488429
Medium square raft. Plenty of room for fish cages plus storage / crafting.
Square Raft 10x10
Base: boatbuildingstation
SkinId: 3691488598
Large square raft. Flagship fishing base platform — fit multiple cages,
workbenches, sleeping area, and defenses.
HEXAGONAL RAFT PLATFORMS (3 sizes)
Hexagonal Raft 1
Base: boatbuildingstation
SkinId: 3691577294
Small single-hex raft platform. Compact, efficient footprint.
Hexagonal Raft 3
Base: boatbuildingstation
SkinId: 3691577405
Medium hex raft built from 3 hexagonal cells. Aesthetic alternative to
square rafts.
Hexagonal Raft 5
Base: boatbuildingstation
SkinId: 3691577502
Large hex raft built from 5 hexagonal cells. Comparable in area to a
Square Raft 5x5 but with honeycomb geometry.
FISH CAGES (2 tiers)
Large Fish Cage
Base: boatbuildingstation
SkinId: 3691368539
The large aquaculture cage. Default 30 box slots, 2.0x fish size
multiplier for bred fish, faster breeding interval (3–5 min). Deploy on
a raft platform and feed it bait to breed rare fish.
Small Fish Cage
Base: boatbuildingstation
SkinId: 3691368364
Compact cage. Default 18 box slots, 1.5x fish size multiplier, slightly
slower breeding interval (4–6 min). Cheaper, earlier-tier option.
FISH FINDER
Fish Finder
Base: geiger.counter
SkinId: 3696334992
Handheld radar-style fish finder. Shows distance and direction to the
nearest active fish school on a live UI overlay. Drains durability over
time and beeps periodically. Configurable max detection range (default
100m), durability drain rate, UI size, and visual assets.
Quick Copy/Paste Reference (all 15 valid <Item> strings)
Low Quality Rod
Mid Quality Rod
High Quality Rod
Low Quality Fish Trap
Mid Quality Fish Trap
High Quality Fish Trap
Square Raft 3x3
Square Raft 5x5
Square Raft 10x10
Hexagonal Raft 1
Hexagonal Raft 3
Hexagonal Raft 5
Large Fish Cage
Small Fish Cage
Fish Finder
Examples
/efgive 76561198000000000 High Quality Rod
/efgive PlayerName Large Fish Cage
/efgive 76561198000000000 Square Raft 10x10
efgive PlayerName Fish Finder (from RCON/server console)
If the player isn't found, you'll get "Player not found: <input>".
If the item name isn't recognized, you'll get "Unknown item: <name>"
followed by the full list of available items.
extrafishing.records
Required to use the /fish encyclopedia and records UI. Grant to all
players who should be able to see the fish catalog, filters, personal
records, and server rankings.
extrafishing.sell
Required to use the in-game fish selling UI. Grant to players who
should be able to sell fish for your chosen currency (Scrap / Economics
/ ServerRewards / Custom item).
All admin-only commands (/extrafishing, /givefish, /efgive, /chkbiome,
/chkdepth, /chktpo, /chkschool, /fishbuff, clearfishdata) require the
vanilla Admin or Developer flag — no permission needed.
{
"EnableUIDisplay": true, /// Show the popup Result UI every time a player catches a fish.
"EnableSoundEffects": true, /// Play a catch sound effect (vanilla mission accept prefab) when a fish is landed.
"ShowMessages": false, /// Send chat messages on fish catch and tension break events.
"HideUncaughtFish": false, /// Hide uncaught fish in the /fish encyclopedia as "?????" with blacked-out icons. Also blocks detail pages AND spoiler-proofs the search bar (real fish names do not match uncaught species). Default: false.
"EnableBiomeCheck": true, /// Enforce biome restrictions from the Fish list (Biome field). Disable to allow all fish in every biome.
"EnableUIAnimation": true, /// Enable slide-in/fade-out animations for the Result, Record, and Sell UIs.
"CaloriesPerFishing": 1, /// Calories consumed per cast.
"CaloriesPerTensionBreak": 3, /// Extra calories lost when the fishing line tension-breaks.
"SizeInterval": 20.0, /// Grouping interval in cm used for size display/rounding.
"EnableFishStackLimit": true, /// true = each fish is a unique item with [Size/Weight] tag (no stacking). false = vanilla-style stacking using FishBaseValuesForDisableFishStackLimit.
"MinnowStackSize": 1000, /// Max stack size for minnow bait items.
"UI": {
"DisplayDuration": 8.0, /// How long the catch-result popup stays visible (seconds).
"Result": { /// Settings for the popup shown when a fish is caught.
"AnchorMin": "0.35 0.75", /// UI bottom-left anchor on screen (x y, 0.0–1.0 range).
"AnchorMax": "0.65 0.9", /// UI top-right anchor on screen.
"BackgroundColor": "0.1 0.1 0.1 0.9", /// Background color in "R G B A" format (0.0–1.0 range, last value is alpha).
"TitleColor": "0.678 0.643 0.616 1.0",/// Title text color.
"TitleFontSize": 18, /// Title font size.
"FishNameColor": "0.678 0.643 0.616 1.0", /// Fish name text color.
"FishNameFontSize": 16, /// Fish name font size.
"DetailsColor": "0.447 0.427 0.404 1.0", /// Details text color (size/weight info).
"DetailsFontSize": 14, /// Details font size.
"BackgroundImage": "https://i.imgur.com/C30zzZ5.png", /// Background image URL loaded via ImageLibrary.
"UseBackgroundImage": true /// true = use the image above, false = solid color only.
},
"Record": { /// Settings for the /fish encyclopedia UI.
"AnchorMin": "0.15 0.15", /// Encyclopedia bottom-left anchor.
"AnchorMax": "0.85 0.85", /// Encyclopedia top-right anchor.
"BackgroundColor": "0.086 0.086 0.086 1.0", /// Background color.
"TitleColor": "0.678 0.643 0.616 1.0",/// Title text color.
"TitleFontSize": 20, /// Title font size.
"FishButtonColor": "0.086 0.086 0.086 1.0", /// Background color for each fish entry button in the grid.
"FishNameColor": "0.678 0.643 0.616 1.0", /// Fish name color in the list.
"FishNameFontSize": 14, /// Fish name font size in the list.
"FishDetailColor": "0.678 0.643 0.616 1.0", /// Body text color on the per-fish detail page.
"FishDetailFontSize": 16, /// Body text size on the detail page.
"SectionTitleColor": "0.678 0.643 0.616 1.0", /// Section heading color (e.g. "Your Record", "Server Top 3").
"SectionTitleFontSize": 18, /// Section heading font size.
"DetailsColor": "0.447 0.427 0.404 1.0", /// Generic detail text color.
"DetailsFontSize": 14, /// Generic detail text size.
"HighlightColor": "0.447 0.427 0.404 1.0", /// Highlight accent color.
"NavButtonColor": "0.090 0.263 0.400 1.0", /// Pagination button background color.
"NavTextColor": "0.259 0.620 0.875 1.0", /// Pagination button text color.
"NavFontSize": 14, /// Pagination button font size.
"CloseButtonColor": "0.722 0.227 0.149 1.0", /// Close-button background color.
"CloseTextColor": "0.792 0.643 0.608 1.0", /// Close-button text color.
"CloseFontSize": 18, /// Close-button font size.
"DescriptionColor": "0.447 0.427 0.404 1.0", /// Fish description text color.
"DescriptionFontSize": 14, /// Fish description font size.
"BackgroundImage": "https://i.imgur.com/IhEjX5Q.png", /// Encyclopedia background image URL.
"UseBackgroundImage": true, /// Toggle for the background image above.
"SearchBarAnchorMin": "0.02 0.92", /// Search bar bottom-left anchor.
"SearchBarAnchorMax": "0.26 0.98", /// Search bar top-right anchor.
"SearchBarBackgroundImage": "https://i.imgur.com/RaLTTp7.png", /// Search bar background image URL.
"SearchBarTextColor": "0.678 0.643 0.616 1.0", /// Search bar text color.
"SearchBarFontSize": 14, /// Search bar font size.
"CaughtMarkImage": "https://i.imgur.com/0lfBSNR.png" /// Image shown in the top-right of fish the player has already caught.
},
"Sell": { /// Settings for the fish sell UI.
"AnchorMin": "0.15 0.15", /// Sell UI bottom-left anchor.
"AnchorMax": "0.85 0.85", /// Sell UI top-right anchor.
"BackgroundColor": "0.086 0.086 0.086 1.0", /// Background color.
"TitleColor": "0.678 0.643 0.616 1.0",/// Title text color.
"TitleFontSize": 20, /// Title font size.
"FishButtonColor": "0.086 0.086 0.086 1.0", /// Background color for each fish row in the sell list.
"FishNameColor": "0.678 0.643 0.616 1.0", /// Fish name color.
"FishNameFontSize": 14, /// Fish name font size.
"DetailColor": "0.447 0.427 0.404 1.0", /// Detail info text color (size/weight).
"DetailFontSize": 12, /// Detail info font size.
"PriceColor": "0.259 0.620 0.875 1.0",/// Price display color.
"PriceFontSize": 13, /// Price display font size.
"BalanceTextColor": "0.678 0.643 0.616 1.0", /// Currency balance text color.
"BalanceFontSize": 14, /// Currency balance font size.
"SellButtonColor": "0.3 0.6 0.3 1", /// Individual "Sell" button background color.
"NavButtonColor": "0.090 0.263 0.400 1.0", /// Pagination button background color.
"NavTextColor": "0.259 0.620 0.875 1.0", /// Pagination button text color.
"NavFontSize": 14, /// Pagination font size.
"CloseButtonColor": "0.722 0.227 0.149 1.0", /// Close-button background color.
"CloseTextColor": "0.792 0.643 0.608 1.0", /// Close-button text color.
"CloseFontSize": 18, /// Close-button font size.
"SellAllButtonColor": "0.314 0.380 0.200 1.0", /// "Sell All" button background color.
"SellAllTextColor": "0.569 0.765 0.231 1.0", /// "Sell All" text color.
"SellAllFontSize": 14, /// "Sell All" font size.
"BackgroundImage": "https://i.imgur.com/IhEjX5Q.png", /// Sell UI background image URL.
"UseBackgroundImage": true /// Toggle for the background image above.
}
},
"RarityChances": { /// Base weights for rarity rolls. Final weight[R] = base × (1 + totalBonus × (R-1) / 100). Weights do not need to sum to 100.
"1": 80, /// Base weight for ★1 (common) fish.
"2": 15, /// Base weight for ★2 fish.
"3": 5, /// Base weight for ★3 fish.
"4": 2, /// Base weight for ★4 fish.
"5": 1 /// Base weight for ★5 (legendary) fish. ~1% at base, ~5% at max bonus.
},
"Economy": { /// Currency backend and price multiplier settings for the fish sell UI.
"PreferredEconomy (Scrap / Custom / Economics / ServerRewards)": "Scrap", /// Currency backend: "Scrap", "Custom" (uses CustomItem below), "Economics" (plugin required), or "ServerRewards" (plugin required).
"RarityMultipliers": { /// Per-rarity price multipliers (applied on top of the base price).
"1": 1.0, /// ★1 fish price multiplier.
"2": 1.1, /// ★2 fish price multiplier.
"3": 1.2, /// ★3 fish price multiplier.
"4": 1.3, /// ★4 fish price multiplier.
"5": 1.5 /// ★5 fish price multiplier.
},
"BasePriceMultiplier": 1.0, /// Global price multiplier applied to every fish sale.
"CustomItem": { /// Settings used when PreferredEconomy is set to "Custom".
"ItemShortName": "sulfur", /// Shortname of the item used as currency.
"ItemSkinId": 0, /// Skin ID of the custom currency item (0 = vanilla, no skin).
"DisplayName": null /// Display name for the currency item (null = use the item's default name).
}
},
"FishBaseValuesForDisableFishStackLimit": { /// Fallback per-fish base prices used ONLY when EnableFishStackLimit = false (since size/weight data is lost under vanilla stacking).
"fish.anchovy": 2, /// Base value per anchovy.
"fish.catfish": 32, /// Base value per catfish.
"fish.herring": 4, /// Base value per herring.
"fish.orangeroughy": 37, /// Base value per orange roughy.
"fish.salmon": 27, /// Base value per salmon.
"fish.sardine": 2, /// Base value per sardine.
"fish.smallshark": 45, /// Base value per small shark.
"fish.troutsmall": 6, /// Base value per small trout.
"fish.yellowperch": 10 /// Base value per yellow perch.
},
"ChanceTime": { /// Peak-time window settings. During these hours, rarity chance bonus is added and fish schools spawn in shallow water.
"MorningStart": 4.0, /// Morning peak-time start (24h in-game clock).
"MorningEnd": 7.0, /// Morning peak-time end.
"EveningStart": 18.0, /// Evening peak-time start.
"EveningEnd": 21.0, /// Evening peak-time end.
"PeakTimeChanceBonus": 50 /// Rarity bonus value added to totalBonus during peak-time windows.
},
"DepthMultiplier": { /// Water-depth size multiplier tiers. Evaluated top-down; the first tier whose MaxDepth is >= current depth is used.
"Enabled": true, /// Enable the depth multiplier system.
"Tier1": { /// Shallowest tier.
"MaxDepth": 4.9, /// Max depth for Tier1 (meters).
"SizeMultiplier": 1.0 /// Fish size multiplier for this tier. Additive formula: (value - 1.0) is added as bonus.
},
"Tier2": {
"MaxDepth": 39.9, /// Max depth for Tier2 (meters).
"SizeMultiplier": 1.1 /// +10% size bonus in this depth range.
},
"Tier3": {
"MaxDepth": 49.8, /// Max depth for Tier3 (meters).
"SizeMultiplier": 1.2 /// +20% size bonus in this depth range.
},
"Tier4": {
"MaxDepth": 999.9, /// Max depth for Tier4 (effectively unlimited).
"SizeMultiplier": 1.3 /// +30% size bonus in the deepest waters.
}
},
"FishingRods": { /// Fishing rod tier definitions. Keyed by internal name; SkinIds are mapped in code.
"Default Rod": { /// Vanilla rod (no skin). Baseline performance.
"ChanceBonus": 0, /// Rarity bonus value added to totalBonus when using this rod.
"FishSizeMultiplier": 1.0 /// Size multiplier. Additive formula: (value - 1.0) is added as bonus.
},
"Low Quality Rod": { /// Entry-tier custom rod.
"ChanceBonus": 10, /// +10 rarity bonus.
"FishSizeMultiplier": 1.05 /// +5% size bonus.
},
"Mid Quality Rod": { /// Mid-tier custom rod.
"ChanceBonus": 20, /// +20 rarity bonus.
"FishSizeMultiplier": 1.1 /// +10% size bonus.
},
"High Quality Rod": { /// Top-tier custom rod.
"ChanceBonus": 30, /// +30 rarity bonus.
"FishSizeMultiplier": 1.2 /// +20% size bonus.
}
},
"FishTraps": { /// Fish trap tier definitions. Trap-caught fish are NOT affected by depth multiplier or school bonus.
"Default Fish Trap": { /// Vanilla trap (no skin). Baseline performance.
"ChanceBonus": 0, /// Rarity bonus added to totalBonus for trap catches.
"FishSizeMultiplier": 0.5, /// Size multiplier for fish caught by this trap.
"CatchMinnowEnabled": true, /// Whether this trap automatically catches minnow bait items.
"MinnowMinAmount": 1, /// Minimum minnows caught per cycle.
"MinnowMaxAmount": 3, /// Maximum minnows caught per cycle.
"StorageSlots": 6, /// Inventory slot count of the trap (overrides vanilla).
"MaxHealth": 100.0 /// Max HP/durability of the trap entity.
},
"Low Quality Fish Trap": { /* ChanceBonus 5, FishSizeMultiplier 0.6, StorageSlots 12, MaxHealth 300, rest same structure, omitted */ },
"Mid Quality Fish Trap": { /* ChanceBonus 10, FishSizeMultiplier 0.8, StorageSlots 18, MaxHealth 500, rest same structure, omitted */ },
"High Quality Fish Trap": { /* ChanceBonus 15, FishSizeMultiplier 1.0, StorageSlots 24, MaxHealth 750, rest same structure, omitted */ }
},
"SchoolOfFish": { /// Drifting fish school system settings.
"Enabled": true, /// Enable the school-of-fish system.
"MaxSchoolOfFish": 30, /// Maximum number of schools that can exist simultaneously on the map.
"MaxCatchesPerSchool": 5, /// Number of catches before a school is forced to migrate (respawn elsewhere).
"MinSchoolOfFishRadius": 10.0, /// Minimum school radius in meters. Players inside this area get bonuses.
"MaxSchoolOfFishRadius": 50.0, /// Maximum school radius in meters.
"SchoolOfFishRadiusChangeMinMinutes": 0.1, /// Min time until a school's radius randomly changes (minutes).
"SchoolOfFishRadiusChangeMaxMinutes": 1.0, /// Max time until a school's radius randomly changes (minutes).
"MinDriftSpeed": 0.0, /// Minimum drift speed of a school (m/s).
"MaxDriftSpeed": 3.0, /// Maximum drift speed of a school (m/s).
"DirectionChangeMinMinutes": 0.5, /// Min time until a school changes direction (minutes).
"DirectionChangeMaxMinutes": 3.0, /// Max time until a school changes direction (minutes).
"SizeMultiplierBonus": 1.5, /// Fish size multiplier when fishing inside a school. Additive: (value - 1.0) is added as bonus (+50% by default).
"HookSpeedBonus": 0.7, /// Catch-time reduction ratio inside a school (0.7 = 70% faster catch).
"RarityBonus": 100, /// Rarity bonus added to totalBonus when fishing inside a school.
"MinOceanDepth": 30.0, /// Minimum water depth (m) where schools spawn during normal time.
"MaxOceanDepth": 50.0, /// Maximum water depth (m) where schools spawn during normal time.
"PeakTimeMinOceanDepth": 1.0, /// Minimum depth for schools that spawn during peak time (shallow water).
"PeakTimeMaxOceanDepth": 5.0, /// Maximum depth for schools that spawn during peak time.
"DriftUpdateInterval": 1.0, /// School position update interval (seconds).
"Effect": { /// Visual burst effect settings for schools.
"Enabled": true, /// Enable burst effects.
"TickInterval": 0.01, /// Internal tick interval while an effect plays (seconds).
"DelayMin": 0.0, /// Minimum startup delay before an effect fires (seconds).
"DelayMax": 1.5, /// Maximum startup delay before an effect fires (seconds).
"BurstDurationMin": 2.0, /// Minimum duration of one burst (seconds).
"BurstDurationMax": 10.0, /// Maximum duration of one burst (seconds).
"BurstIntervalMinMinutes": 0.1, /// Minimum wait between bursts (minutes).
"BurstIntervalMaxMinutes": 3.0 /// Maximum wait between bursts (minutes).
},
"FishFinder": { /// Fish finder device settings.
"Enabled": true, /// Enable the fish finder feature.
"UIUpdateInterval": 0.1, /// Radar UI update interval (seconds).
"BeepInterval": 0.5, /// Beep sound interval while pointing toward a school (seconds).
"BackgroundImage": "https://i.imgur.com/5K50I7S.png", /// Radar background image URL.
"OverlayImages": [ /// List of decorative overlay images layered on top of the radar.
"https://i.imgur.com/6L4TG7R.png", /// First overlay image URL. (Additional overlays use the same format.)
"https://i.imgur.com/UilagDt.png", /// Subsequent overlays omitted explanation — same format as above.
"https://i.imgur.com/Dh5uXPs.png",
"https://i.imgur.com/6rSarf6.png",
"https://i.imgur.com/yyBuEB9.png"
],
"UISize": 0.12, /// Radar UI size as a fraction of screen size.
"MaxDetectRange": 100.0, /// Maximum detection range in meters.
"DurabilityDrainInterval": 30.0, /// Interval between durability drains (seconds).
"DurabilityDrainAmount": 1.0, /// Durability removed per drain tick.
"RequireItem": true /// true = only a geiger counter with the configured skin works. false = any geiger counter works.
}
},
"Aquaculture": { /// Aquaculture / fish breeding system settings.
"Enabled": true, /// Enable the aquaculture system.
"ReplacementMaxHealth": 5000.0, /// Max HP of the fish cage replacement entity.
"BoxMaxHealth": 5000.0, /// Max HP of the aquaculture storage box entity.
"EffectDuration": 5.0, /// Duration of aquaculture-related effects (seconds).
"EffectTickInterval": 0.03, /// Aquaculture effect tick interval (seconds).
"RarityMultiplier": 3, /// Rarity bonus multiplier applied to bred fish.
"LargeFishCage": { /// Large fish cage configuration.
"DisplayName": "Large Fish Cage", /// Display name of the large cage item.
"BreedingIntervalMinutesMin": 3.0, /// Minimum breeding interval (minutes).
"BreedingIntervalMinutesMax": 5.0, /// Maximum breeding interval (minutes).
"BoxSlots": 30, /// Inventory slot count inside the cage.
"FishSizeMultiplier": 2.0 /// Size multiplier for fish bred in this cage.
},
"SmallFishCage": { /* ... same structure as LargeFishCage, omitted ... */ }
},
"Fish": [ /// Master fish catalog. 300+ species defined by default.
{
"ItemShortName": "fish.sardine", /// Base vanilla fish shortname this custom fish is built on. Valid values: fish.anchovy, fish.catfish, fish.herring, fish.orangeroughy, fish.salmon, fish.sardine, fish.smallshark, fish.troutsmall, fish.yellowperch.
"SkinId": 3683947483, /// Workshop skin ID that uniquely identifies this custom fish. Same shortname + different skin = different species.
"Name": "Sulfur Fish", /// Display name shown in UIs and chat.
"MaxSize": 100.0, /// Maximum size of this fish in cm.
"MinSize": 20.0, /// Minimum size of this fish in cm.
"Growth_A": 0.0188, /// Growth formula coefficient A. Weight(kg) = A × Size^B / 1000.
"Growth_B": 3.04, /// Growth formula exponent B. Weight(kg) = A × Size^B / 1000.
"Biome": "All", /// Biome restriction: "All", "Arid", "Temperate", "Tundra", "Arctic", or "Jungle". Ignored if EnableBiomeCheck = false.
"Rarity": 2, /// Rarity tier 1–5 (★1 to ★5). Used for rarity weight calculation.
"ProcessedItemShortName": "sulfur", /// Shortname of the item produced when this fish is cooked/processed.
"ProcessedItemSkinId": 0, /// Skin ID of the processed item. Links to the corresponding ProcessedItemEffects entry.
"DisplayName": null, /// Display name of the processed item (null = use default name).
"ProcessedItemAmount": 50, /// Base amount of processed item given. Scales with the caught fish size.
"Description": "A mysterious fish that can be found anywhere and can explode when provoked." /// Description text shown in the fish encyclopedia.
}
/* ... 300+ additional fish entries follow with the same structure, omitted ... */
],
"ProcessedItemEffects": { /// Per-processed-item effects applied when a player consumes the item. Key = Skin ID matching Fish.ProcessedItemSkinId.
"3687258712": { /// Example entry. Each key is a unique skin ID linking to a processed fish item.
"DisplayName": "Raw white fish", /// Display name of this processed item.
"InstantHealth": 5.0, /// Instant health restored on consumption.
"HealthOverTime": 5.0, /// Health restored over time (HoT).
"Calories": 80.0, /// Calories restored.
"Hydration": 15.0, /// Hydration restored.
"PoisonReduce": 50.0, /// Poison meter reduction.
"BleedingReduce": 0.0, /// Bleeding meter reduction.
"RadiationReduce": 0.0, /// Radiation meter reduction.
"Buff": { /// Tea-style buffs applied on consumption. Any buff with Value = 0 or DurationMinutes = 0 is skipped.
"Wood": { /// Wood yield tea buff.
"Value": 0.0, /// Buff strength in percent (e.g. 100 = +100% wood yield).
"DurationMinutes": 0.0 /// Buff duration in minutes. 0 disables this buff.
},
"Ore": { "Value": 100.0, "DurationMinutes": 15.0 }, /// Ore yield tea buff (+100% for 15min).
"Scrap": { /* ... same {Value, DurationMinutes} structure ... */ }, /// Scrap yield tea buff.
"MaxHealth": { /* ... */ }, /// Max health tea buff.
"MoveSpeed": { /* ... */ }, /// Move speed tea buff.
"Harvesting": { /* ... */ }, /// Harvesting tea buff.
"Fishing": { /* Value 100, Duration 30 */ }, /// Fishing boost (increases rare-fish chance). Default Value 100 across all processed fish.
"Farming": { /* ... */ }, /// Farming (better genes) tea buff.
"ComfortBuff": { /* ... */ }, /// Comfort tea buff.
"Clotting": { /* ... */ }, /// Clotting (bleed resistance) tea buff.
"Warming": { /* ... */ }, /// Warming tea buff.
"Cooling": { /* ... */ }, /// Cooling tea buff.
"HunterVision":{ /* ... */ }, /// Hunter vision tea buff.
"Metabolism": { /* ... */ }, /// Metabolism booster tea buff.
"Crafting": { /* ... */ }, /// Crafting quality tea buff.
"RadResist": { /* ... */ }, /// Radiation resistance tea buff.
"HorseSpeed": { /* ... */ } /// Horse gallop speed tea buff.
}
}
/* ... additional ProcessedItemEffects entries follow with the same structure, omitted ... */
}
}
Q. Can you translate information about fish species?
A. Yes. This product includes translation data. This data includes Chinese, Russian, and Japanese. You will need to select one and manually replace the existing text.
VOID / NINJA WORKS
DISCORD : https://discord.gg/U8uxePjSyA
MADE IN JAPAN
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
3x BetterLoot Loottable
The 3x BetterLoot config offers the perfect balance between vanilla progression and boosted excitement, and fight for loot.
Key Features
3x Boosted Loot All key containers (crates, barrels, airdrops) slightly scaled for quicker progression.
Cleaner Loot Tables, junk removed, so every find feels rewarding.
Perfect for Community Servers Great for semi-vanilla or lightly modded servers that want smoother pacing.
Modern Items Supported Includes Minigun, Military Flamethrower, and Backpack with balanced drop rates.
Balanced Gameplay Keeps Rust’s survival feel intact while speeding up early and mid-game gearing.
⚠️ Note: Made specifically for the BetterLoot plugin.
- Setup: Place the config file into your BetterLoot config folder and restart the server that’s all you need.
Access Our Other Loottables With These Links: 5x - 2x - 10x
```json
{
"crate": "locked_crate",
"items": {
"rifle.ak": { "Min": 1, "Max": 1 },
"rocket.launcher": { "Min": 1, "Max": 1 },
"explosive.timed": { "Min": 2, "Max": 3 },
"explosives": { "Min": 4, "Max": 10 },
"metal.refined": { "Min": 45, "Max": 75 },
"techparts": { "Min": 7, "Max": 12 },
"autoturret": { "Min": 1, "Max": 1 },
"electric.battery.rechargable.large": { "Min": 1, "Max": 1 }
}
}
```
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 and 5x table based like this.
New Arrivals
What's New
Fresh uploads, new releases, and recently updated files.
-
$15.99$12.99By Brad Copp
-
$5.00
By Ionut Shiro
-
$12.00
-
$10.00
-
$49.90
-
$14.99$9.99By crash
-
$30.00$20.00By NooBlet
-
$19.99
-
$29.99$25.99By SlayersRust
-
$14.99
By Boomilei
-
$10.00
Community Picks
Highest Rated
Top-rated picks trusted and loved by the community.
-
$16.99
By David
-
$40.00$30.00By nivex
-
$29.99
By LosGranada
-
$29.99
By imthenewguy
-
$24.99
By Whispers88
-
$40.00$31.95By Mevent
-
Free
By Steenamaroo
-
$14.99
By AhigaO
-
$19.99
By Fruster
-
$14.99
By David
-
$45.99
By Monster
-
$19.99$15.99By Fruster
-
$19.99
By ZEODE
Trending
Trending Files
Popular picks members are downloading the most right now.
-
$29.99
By imthenewguy
-
$30.00
By 0xF
-
$25.00
By Martian
-
By Scalbox
-
$35.00
By KpucTaJl
-
$49.99
By Adem
-
$29.90
By walkinrey
-
$40.00
By The_Kiiiing
-
Free
By tofurahie
-
$40.00$30.00By nivex
-
$8.99$7.99By Brad Copp
-
Free
By Steenamaroo
Community Feedback
Latest Reviews
See what customers are saying about their experience with files.
bulshit!!!! fuck that creator never answers in suport!
The best statistics system I’ve seen so far.
Customization. The plugin is highly flexible — you can tailor it to your server as much as possible.
A lot can be changed, and I really like the “builder-style” approach.
Web configuration. Large config files have become much more visual and user-friendly. This tool saves me a lot of time.
Design. While many overlook this, Mevent has it organized in the best possible way.
Support. Fast and responsive support from the developer
This is an excellent tool that makes creating CUI fast, simple, and far less frustrating thanks to its visual canvas. The support is outstanding, with the developer being very responsive, open to suggestions, and consistently pushing regular updates. Best program I've used so far.
Great plugin overall, does exactly what it says and I haven't had any issues with it yet. Works smooth and fast to swap players into their scuba suit gears. I would 100% recommend if it suits your needs ❤️ Great quality of life plugin
This is a really amazing plugin and I'm surprised no one else has released something like this before. This is a one of a kind plugin that works great as a VIP Perk or In-game shop perk to give players. This allows for incredible creativity. We have been running it for a few weeks now with no reported issues yet. I would 100% recommend getting this!
OK this is a reasonably simplistic plugin but it does what it says on the tin and does it well. glad i purchased it as it is a nice event for any server.
I decided to spice it up a little and now have it spawning snakes and panthers over the duration of the event so it gets more and more difficult to keep mining in the ring. Great fun tbh. The snakes slow you down and the panthers rush you 🙂
maybe you should add it in op.
This is fun !
Tip for the Jump scares
/hrec starts it /hrec ends it /hrec save 1 saves it
Then you need to go into the config for jump scares and add
"1", to the list 😃 PRO TIP !!! I used voicemod to run through my mic so I can upload my own recordings for the jump scare to play 😃
I misread the title at first and thought I was buying Pocket Dementia, which felt fitting, because there are definitely things from the past still haunting me to this day.
That said, jokes aside, I’m genuinely really satisfied with Pocket Dimensions. It’s a good plugin, works well, and has been a solid purchase for me. No regrets at all, definitely worth it.
10/10
Have been using this mod for a few years always works never causes a problem. good way to allow players to bring their prized clones between wipes on our server 🙂
Visually this is great, but functionality wise, its useless. It doesn't work in the same way as NoEscape, so all the many plugins that support noescape don't actually work with this.
Same applies to Combat Block for the same reason. If/when the author can support the same hooks as NoEscape I would give this 5 stars.