$24.99
Allows both PVE and PVP players to exist on a server at the same time. PVE players will have certain configurable protections and restrictions. You can have players use a command to flag themselves as PVP/PVE or you can assign it to them when they first spawn. If you have ZoneManager you can also designate specific zones to force player's to be PVE or PVP. Plugin is also compatible with SimpleStatus.
Note: Video is outdated, see documentation for a full list of new features!
Documentation:
A full readme including permissions, commands, and config options is available in this wiki site.
Disclaimer:
Like all of my plugins - this plugin is sold as is. I will be happy to take feature requests into consideration but make no guarantees about which ones get implemented. Please refer to the feature list before you make your purchase!
Developer API:
API Methods
// Returns the mode of the given entity. Also takes into account if the entity is in a forced mode zone.
string GetEntityMode(BaseEntity entity);
// Returns the group name for the given mode. For example if given 'pve' will return 'warmodepve'
string GetModeGroup(string modeId);
// Returns the target type for a given entity. Target types are the category that an entity falls into.
// For example, if given a BasePlayer entity, it will return 'players'. If given a horse entity is will
// return 'horses'.
string GetEntityTargetType(BaseEntity entity);
Hooks - place these in your plugin and WarMode will call them.
// Called when a player's mode has been updated or config changes have ocurred that may affect the mode.
private void WarMode_PlayerModeUpdated(string userid, string modeId)
// Used to override WarMode logic for taking damage.
// If true/false is returned then WarMode logic will be skipped. Return null to continue WarMode logic.
private object CanEntityTakeDamage(BaseCombatEntity target, HitInfo info)
// Used to override WarMode logic for targeting.
// If true/false is returned then WarMode logic will be skipped. Return null to continue WarMode logic.
private object CanEntityBeTargeted(BasePlayer target, BaseEntity attacker, bool skipVendingCheck)
// Used to override WarMode logic for triggering a trap.
// If true/false is returned then WarMode logic will be skipped. Return null to continue WarMode logic.
private object CanEntityTrapTrigger(BaseTrap trap, BasePlayer basePlayer)
// Used to override WarMode logic for looting an entity.
// If true/false is returned then WarMode logic will be skipped. Return null to continue WarMode logic.
private object CanEntityLoot(BasePlayer looter, BaseEntity target, bool skipVendingCheck)
FREE Extension Plugins:
All extension plugins are optional, and included in the downloadable zip that WarMode comes in.
War Mode Admin Panel
Use the /warmode.config or /wmc command to open a panel that allows admins to update mode rules in game without having to reload the pluign. Requires the warmode.admin permission to use.
I HIGHLY recommend you use this extension!
War Mode Spawn UI
Provides a UI that is shown to players when they first spawn that prompts them to choose whether they want to be PVP or PVE. Also supports custom modes. Localization and config options available. This can also be configured to appear when players use the /flag command.
War Mode Rules UI
Using the /rules command (which is configurable) players can see a list of what restrictions they have for their current mode. These ruling will update dynamically based on your config settings.
War Mode Badges
Customizable UI elements that will appear on the player's HUD to indicate what their current mode is.
$15.00
Rust / Server Plugins
BoatControl
Modular Boat ManagementRust Plugin
Take the helm. Control the ship. Command the cannons.
Bring navigation, cannons, lighting and boat management together in a clear interface at the helm. Manage sails and engines, upgrade performance, repair the boat and customize its setup with permission-controlled features.
Helm controls
Navigation, anchors and lighting
Cannon crew
Aim, reload and fire from the helm
Boat progression
Upgrades, repairs and customization
01 / Video demos
See BoatControl in action
Video demo
Watch on YouTube
Video Update 1.0.0
Watch on YouTube
02 / Helm & navigation
One interface for the whole boat
The control interface appears when a player with boatcontrol.use mounts a modular boat’s steering wheel.
BoatControl helm control bar
Raise or lower the sails and anchors.
Start or stop the engines.
Switch between forward and reverse navigation; engines and sails adjust accordingly.
Use W and S to change direction when keyboard direction control is enabled.
Hold R to open the boat’s radial menu when enabled, and release it to close the menu.
Live boat information
Display boat health, mass, power, power-to-mass ratio and speed in knots. Players can unlock and move the information window; its saved position is retained. Administrators can configure window colors, dimensions and placement, or disable the information window.
Boat information and controls while steering
03 / Cannons & crew
Coordinate your fire from the helm
Reload cannons using cannon ammunition from the player’s inventory. A separate permission bypasses ammunition costs.
Fire through the interface or left mouse click when enabled. Configure the firing cooldown, or bypass it through a permission.
Aim cannons in configurable angle steps and select numbered crew groups to control which crew-operated cannons are targeted.
Assign or remove NPC cannon crew through the interface. Configure crew names, health, outfits and skins, maximum crewed cannons, toggle cooldown and whether corpses are created.
Configure whether cannons need a mounted operator before remote aiming and firing.
Cannon control and crew interface
boatcontrol.cannonuse controls access to BoatControl’s cannon interface. It does not disable manual, vanilla cannon use. Assign ammunition and cooldown bypasses carefully.
04 / Lighting
Switch the boat’s lights together
Toggle configured torches, lanterns, candle sets, jack-o’-lanterns and Chinese lanterns together from the boat controls. Configure supported item shortnames, the toggle cooldown and whether lights require fuel.
Boat lighting controlled from the helm
Optional fuel-free lighting applies to supported lights. It does not make boat engines operate without fuel.
05 / Boat editing
Edit away from a fixed boat-building area
Grant boatcontrol.edit to access boat editing from the controls. Configure a damage cooldown before editing and block editing inside safe zones when desired. Editing also requires a Boat Building Station item in the player inventory, a boat moving at no more than 2 m/s, and no other active station owned by that player.
Boat editing through BoatControl
Safe-zone restriction for boat editing
Larger building stations
Major update — new features in 1.2.0, with station resizing available from 1.2.3.
Scale the boat-building station created by the edit option with Building Station Scale. This supports a larger construction area for custom boat builds.
Expanded boat-building station
For larger ships, adjust the game block-count limit separately if needed. Set a limit of 500 blocks with the following server variable:
playerboat.maxblockcount 500
Safe-zone anchor protection
Optionally prevent anchor activation inside safe zones.
Anchor restriction inside safe zones
Safe-zone anchor protection example
06 / Authorization
See who can access the boat
Open the list of authorized players from the helm. Grant the separate deleteauth permission to allow authorized users to revoke individual authorizations.
Boat authorized-player list
07 / Sail configuration
Upgrade thrust and customize sail size
View all sails installed on the boat, including their health. Use configurable upgrade levels to change thrust. Starting with version 1.2.3, sail upgrades can also increase or decrease sail size according to your configured scale multiplier.
Sail configuration and health
Sail upgrade levels and costs
Additional sail upgrade interface example
Sails with different configured size multipliers
Define the number of upgrade levels, display names and costs. Select resources, ServerRewards points or Economics money as the upgrade currency.
08 / Engine configuration
Manage fuel, health and engine upgrades
View installed engines with their health and current fuel. Refuel them from the player’s inventory through the refueling menu. Configure upgrade levels that improve engine power and reduce fuel consumption through an efficiency multiplier.
Engine configuration and refueling
Engine upgrade levels and costs
Choose resources, ServerRewards points or Economics money for upgrade costs. Engine and sail upgrade levels are saved in the plugin’s data, and boatcontrol.upgrade.nocost can waive upgrade charges.
Upgrades modify power and thrust, and the plugin adjusts boat drag for upgraded propulsion. Final speed still depends on the game’s boat physics; power multipliers do not guarantee an equal multiplier to maximum speed.
09 / Automatic repairs
Repair using materials from the player’s inventory
Configure repair costs per block/component and a cooldown after recent damage.
Set repair frequency through permission profiles; a larger interval repairs more slowly.
Repairs stop if new damage is received, the player runs out of materials or the player disconnects.
Grant boatcontrol.repair.nocost to waive repair materials.
Automatic boat repair system
Boat health differs from ordinary building health. The repair system simulates repair points according to lost health, so the repair sound may come from a different point than the damaged component.
10 / Wallpaper & impact physics
Customize the interior and naval combat
BetterTC wallpapers
With BetterTC 1.6.2 or later installed, BoatControl provides access to its automatic boat wallpaper placement interface. Grant boatcontrol.wallpaper to make this feature available.
Automatic boat wallpaper placement through BetterTC
Cannon impact physics
Enable configurable force on boats hit by cannon damage. Adjust the impact force and enable diagnostic logging when needed.
11 / Permissions & access
Choose what each player can control
Permission
Purpose
boatcontrol.use
Enable BoatControl when mounting the helm.
boatcontrol.edit
Access boat editing away from a fixed building area, subject to configured restrictions.
boatcontrol.bypassAmmo
Bypass cannon ammunition consumption.
boatcontrol.bypasscannoncooldown
Fire cannons without the configured cooldown.
boatcontrol.cannonuse
Access the cannon control interface; manual vanilla use remains available.
boatcontrol.authlist
View authorized players.
boatcontrol.deleteauth
Revoke individual boat authorizations.
boatcontrol.sailconfig
Open the sail configuration menu.
boatcontrol.sailupgrade
Upgrade sails using the configured levels.
boatcontrol.engineconfig
Open the engine configuration and refueling menus.
boatcontrol.engineupgrade
Upgrade engines using the configured levels.
boatcontrol.upgrade.nocost
Waive engine and sail upgrade costs.
boatcontrol.wallpaper
Access boat wallpapers through BetterTC 1.6.2 or later.
boatcontrol.repair
Access automatic boat repairs.
boatcontrol.repair.nocost
Repair without consuming materials.
boatcontrol.vip
Example profile in the repair-frequency configuration; configurable, not a boat speed-limit permission.
Additional repair-frequency profile names are registered from the configuration. They adjust repair intervals, not the boat’s maximum speed.
Normal use is through the CUI and keyboard controls; no chat command is required. The plugin also registers console actions used by its interface.
Utility console action
Purpose
boatcontrol.resetuiposition
Player console: reset your saved information-window position.
boatcontrol.clearorphancrew
Console: remove orphaned cannon crew.
12 / Requirements & configuration
Configure the controls for your server
Rust server using Oxide or Carbon. On Oxide, install ImageLibrary; Carbon uses its built-in Image Module.
Install BetterTC 1.6.2 or later for automatic wallpapers.
Install ServerRewards or Economics only when using their upgrade currencies.
Optional Notify or UINotify integration supplies configured notifications; chat alerts are also configurable.
Configure keyboard controls, cannon aiming and cooldowns, crew behavior, supported lights, impact physics, GUI, safe-zone restrictions, repairs, station scale and upgrade levels.
The example below uses the supplied costs and profiles, with current keys and sail-scale options from BoatControl 1.2.5. It is an example, not a replacement for the configuration generated by your installed version.
13 / Configuration example
Controls, costs and upgrade profiles
{
"Enable WASD Direction": true,
"Enable Cannon Fire Key (Left Mouse Button)": true,
"Cannon Aim Step (degrees per click)": 5.0,
"Cannon Fire Cooldown": 5.0,
"Cannon Crew": {
"Enable": true,
"Names": [
"Seaman",
"Deckhand",
"Bosun",
"Gunner",
"Quartermaster",
"Navigator",
"Sailor",
"Crewman",
"Mate",
"Boatswain",
"Cannoneer",
"Buccaneer",
"Mariner",
"Sea Dog",
"Old Salt"
],
"Health": 100.0,
"MaxCannons": 0,
"Wear": {
"burlap.shirt": 1380044819,
"burlap.trousers": 1380047706,
"burlap.shoes": 2215057317,
"hat.boonie": 965553937
},
"RequireOperate": true,
"ToggleCrewCooldown": 30.0,
"NoCorpse": true
},
"Lights": {
"Light Toggle Cooldown": 1.0,
"Require Fuel For Lights": false,
"Light Items (shortnames)": [
"tunalight",
"lantern",
"torchholder",
"largecandles",
"smallcandles",
"jackolantern.angry",
"jackolantern.happy",
"chineselantern",
"chineselanternwhite"
]
},
"Impact Force Physics": {
"Enable Impact Physics": true,
"Impact Force (default: 100, range: 50-500)": 100.0,
"Enable Debug Logging": false
},
"Alert Chat": true,
"Alert Notify Plugin": false,
"Notify: select what notification type to be used": {
"error": 0,
"info": 0
},
"Color Prefix Chat": "#f74d31",
"GUI": {
"GUI Windows Belt": {
"BG Color Primary": "0.10 0.15 0.10 1",
"BG Color Secundary": "0.2 0.30 0.2 0.80",
"Button Active Color": "0.2 0.6 0.2 0.80",
"Button Inactive Color": "0.2 0.30 0.2 0.80",
"OffsetMin": "-200 15",
"OffsetMax": "181 79",
"AnchorMin": "0.5 0",
"AnchorMax": "0.5 0"
},
"GUI Windows Info": {
"BG Color Primary": "0.10 0.10 0.10 0.8",
"BG Color Secundary": "0.2 0.30 0.2 0.80",
"Button Active Color": "0.2 0.6 0.2 0.80",
"Button Inactive Color": "0.2 0.30 0.2 0.80",
"OffsetMin": "-115 -100",
"OffsetMax": "115 100",
"AnchorMin": "0.902 0.8104",
"AnchorMax": "0.902 0.8104"
},
"GUI Windows Cannons Menu": {
"BG Color Primary": "0.10 0.15 0.10 1",
"BG Color Secundary": "0.2 0.30 0.2 0.80",
"Button Active Color": "0.2 0.6 0.2 0.80",
"Button Inactive Color": "0.2 0.30 0.2 0.80",
"OffsetMin": "-140 85",
"OffsetMax": "140 185",
"AnchorMin": "0.5 0",
"AnchorMax": "0.5 0"
}
},
"Show Info Window": true,
"Boat Edit Damage Cooldown (seconds)": 30.0,
"Block Anchor in Safe Zone": true,
"Block Boat Edit in Safe Zone": true,
"Config Version": "1.2.5",
"Repair Cooldown After Recent Damage (seconds)": 30.0,
"Cooldown Frequency Repair (larger number is slower)": {
"boatcontrol.use": 2.0,
"boatcontrol.vip": 1.0
},
"Repair Costs (ItemShortName: Amount per block/component)": {
"lowgradefuel": 4,
"wood": 75
},
"Engine Upgrades": {
"Enable Engine Upgrades": true,
"Upgrade Levels": [
{
"Level": 1,
"Display Name": "Tier 1",
"Fuel Efficiency Multiplier (1.0 = normal, 0.5 = half fuel consumption)": 0.9,
"Power Multiplier (1.0 = normal, 2.0 = double power)": 2.0,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 100,
"lowgradefuel": 50
},
"ServerRewards Points": 0,
"Economics Money": 0.0
}
},
{
"Level": 2,
"Display Name": "Tier 2",
"Fuel Efficiency Multiplier (1.0 = normal, 0.5 = half fuel consumption)": 0.8,
"Power Multiplier (1.0 = normal, 2.0 = double power)": 4.0,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 250,
"lowgradefuel": 100,
"metal.fragments": 300
},
"ServerRewards Points": 0,
"Economics Money": 0.0
}
},
{
"Level": 3,
"Display Name": "Tier 3",
"Fuel Efficiency Multiplier (1.0 = normal, 0.5 = half fuel consumption)": 0.65,
"Power Multiplier (1.0 = normal, 2.0 = double power)": 8.0,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 500,
"lowgradefuel": 200,
"metal.fragments": 500,
"metal.refined": 25
},
"ServerRewards Points": 0,
"Economics Money": 0.0
}
},
{
"Level": 4,
"Display Name": "Tier 4",
"Fuel Efficiency Multiplier (1.0 = normal, 0.5 = half fuel consumption)": 0.65,
"Power Multiplier (1.0 = normal, 2.0 = double power)": 16.0,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 1000,
"lowgradefuel": 300,
"metal.fragments": 1500,
"metal.refined": 100
},
"ServerRewards Points": 0,
"Economics Money": 0.0
}
}
],
"Currency Type (Resources, ServerRewards, Economics)": "Resources"
},
"Sail Upgrades": {
"Enable Sail Upgrades": true,
"Upgrade Levels": [
{
"Level": 1,
"Display Name": "Tier 1",
"Thrust Multiplier (1.0 = normal, 2.0 = double thrust)": 1.5,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 75,
"cloth": 100
},
"ServerRewards Points": 10,
"Economics Money": 0.0
},
"Scale Multiplier (1.0 = normal size, 1.5 = 50% bigger)": 1.2
},
{
"Level": 2,
"Display Name": "Tier 2",
"Thrust Multiplier (1.0 = normal, 2.0 = double thrust)": 2.0,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 150,
"cloth": 200,
"leather": 50
},
"ServerRewards Points": 15,
"Economics Money": 0.0
},
"Scale Multiplier (1.0 = normal size, 1.5 = 50% bigger)": 1.4
},
{
"Level": 3,
"Display Name": "Tier 3",
"Thrust Multiplier (1.0 = normal, 2.0 = double thrust)": 2.5,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 300,
"cloth": 300,
"leather": 100,
"metal.fragments": 200
},
"ServerRewards Points": 20,
"Economics Money": 0.0
},
"Scale Multiplier (1.0 = normal size, 1.5 = 50% bigger)": 1.6
},
{
"Level": 4,
"Display Name": "Tier 4",
"Thrust Multiplier (1.0 = normal, 2.0 = double thrust)": 3.0,
"Upgrade Cost": {
"Resource Costs (ItemShortName: Amount)": {
"scrap": 600,
"cloth": 500,
"leather": 200,
"metal.fragments": 500
},
"ServerRewards Points": 30,
"Economics Money": 0.0
},
"Scale Multiplier (1.0 = normal size, 1.5 = 50% bigger)": 1.8
}
],
"Currency Type (Resources, ServerRewards, Economics)": "ServerRewards"
},
"Enable Boat Pie Menu Key (R)": true,
"Building Station Scale (1.0 = normal, 2.0 = double size)": 1.0
}
14 / Current limitations
Plan your boat setup around the game
Engine efficiency is configurable; engines still require fuel.
The plugin does not provide a supported increase to the maximum number of engines or sails.
Larger construction stations are supported; the game’s separate block-count setting still applies.
Final speed depends on boat physics and the installed game version.
15 / Try it & support
Try the setup and share your ideas
You can try the plugin on the RustSpain Staging test server when it is online. It is a test server, so availability is not guaranteed.
connect staging.rustspain.com
For questions, suggestions or assistance, contact ninco90 on Discord. Feature suggestions are also welcome in the product discussion.
$24.99
High Timez
Custom Hand-Crafted Rust Map
Created by: Silent Creations
Welcome to High Timez, a custom hand-crafted Rust map engineered for unique, high-intensity gameplay. Carved into the iconic shape of a cannabis leaf, this island layout features a fully customized landscape that seamlessly integrates Facepunch monuments with handcrafted terrain to offer an unforgettable survival experience.
🌴 Map Features
Custom Leaf-Shaped Island: A meticulously sculpted pot-leaf layout offering distinct combat zones and strategic terrain chokepoints across every leaf tip.
Balanced Monument Distribution: Strategic placement of essential monuments ensuring smooth progression from fresh spawn to end-game raiding.
Inspiration: Special thanks to High Miles for sparking the core concept for this build.
🏛️ Monuments & Points of Interest
Major & High-Tier Monuments
Launch Site
Giant Excavator
Missile Silo
Power Plant
Train Yard
Water Treatment Plant
Airfield
Large Harbor & Small Harbor
Large Barn
Jungle Ziggurat
Large Oil Rig
Small Oil RIg
Mid-Tier & Tactical Monuments
Arctic Research Base
Satellite Dish
Abandoned Military Base
The Dome
Ferry Terminal
Apartment Complex
Bandit Camp
Outpost
Ranch
Junkyard
Resource & Utility Outposts
2x Oxum's Gas Station
2x Abandoned Supermarket
2x Mining Outpost
3x Fishing Village
Stone Quarry
HQM Quarry
Sulfur Quarry
Crafted by Silent Creations | A Lost In Rust Project
For any Assistance or questions Please contact me on Discord @ https://discord.gg/THf6dGN8eW
$25.00
Dungeon Events — Procedural PvE Dungeons for Rust
A new dungeon. A new challenge. Every run.
Give your Rust players a reason to gear up, fight powerful enemies, collect valuable rewards, and come back for another raid. Dungeon Events generates PvE dungeons with randomized room layouts, corridors, NPCs, bosses, animals, auto turrets, and loot containers — all accessible through in-game portals.
Run dungeons as automated world events, let players purchase private dungeon runs, or spawn specific difficulty tiers whenever you want. From beginner-friendly raids to intense endgame encounters, you control the challenge, access, rewards, appearance, and lifecycle of each dungeon.
Procedural layouts · 6 predefined difficulty tiers · Custom bosses · Private dungeon purchases · Configurable loot and rewards
Why Dungeon Events?
Unlike a fixed dungeon that players learn once, Dungeon Events builds new layouts for each run. Players enter through a portal, explore connected rooms and corridors, deal with a mix of hostile encounters, and work toward clearing the dungeon for loot and completion rewards.
For server owners, that means a flexible PvE activity you can reuse throughout a wipe — without manually designing a new layout for every event.
Main Features
Procedural Dungeons & Difficulty
Randomized dungeon generation: Dynamically created room layouts and connecting corridors make each run different.
Six predefined tiers: Easy, Normal, Medium, Hard, Nightmare, and Impossible. Rename, edit, disable, or create tiers to suit your server.
Custom difficulty per tier: Configure room count and size, enemy and loot limits, purchase cost, cooldowns, lifetime, and unlock timing after a wipe.
Flexible event delivery: Enable automatic dungeon spawns, create dungeons by admin command, or trigger them from console/RCON.
NPCs, Bosses, Animals & Turrets
Custom NPCs and bosses: Configure names, health, damage multipliers, weapons, attachments, clothing, skins, and loot.
Distinct boss encounters: Give tougher tiers more or stronger bosses, including configurable damage taken from explosions.
Dungeon animals: Add enemies such as wolves, panthers, tigers, crocodiles, and other supported animal prefabs. Configure health, damage, movement speed, detection range, and spawn chances.
Auto turrets: Configure turret counts, health, and weapons for additional threats.
Per-tier enemy limits: Build different combat experiences for introductory and high-difficulty dungeons.
Loot, Rewards & Progression
Separate loot tables for every tier: Independently configure NPC loot, boss loot, and loot container contents.
Loot control: Adjust item chances, minimum/maximum quantities, skins, custom names, and the maximum number of item types.
Combat rewards: Award Economics currency or ServerRewards points for defeating dungeon NPCs/animals, destroying turrets, and destroying loot containers.
Dungeon-clear rewards: Give additional Economics currency, ServerRewards points, or SkillTree XP when a dungeon is cleared.
SkillTree team rewards: Optionally share clear XP with eligible team members, either splitting the reward or granting the full amount to each.
Private Dungeons & Player Access
In-game purchase interface: Players can browse available dungeon tiers and purchase a run using /buydungeon.
Flexible payment options: Use Economics, ServerRewards, or a configured in-game item such as scrap.
Private access: Optionally lock entry to the dungeon owner or first entrant, while allowing teammates and friends when configured.
Tier-specific permissions: Reserve higher difficulty dungeons for selected groups or permission-based progression.
Purchase controls: Configure costs, cooldowns, active dungeon limits, and whether each tier can be purchased.
Visuals, Portals & World Integration
Custom visual themes: Select building styles, door skins, container colors, lighting, loot-container skins, and dungeon time-of-day settings.
Portal access: Players travel into and out of dungeons through linked portals.
Custom portal locations: Save locations for automatic-event portals and purchased-dungeon portals, or use supported random location selection.
Portal protection bubble: Configure protection radius, building/deployment restrictions, damage rules, and vehicle protection around portal areas.
Map markers and live UI: Display active dungeon locations, remaining time, and encounter progress.
Administration, Performance & Cleanup
Spawn validation: Apply checks for terrain, nearby entities, rocks, safe zones, monuments, and supported plugin-managed areas.
Configurable dungeon placement: Adjust dungeon height and portal placement according to your server setup.
Performance controls: Configure batched construction, entity spawning, location searches, and cleanup instead of processing everything at once.
Automated lifecycle: Remove dungeons after their configured lifetime or clear conditions; control how long abandoned or unentered dungeons remain active.
Anti-abuse rules: Block selected commands, building, deployment, and entity pickup inside dungeons; configure death handling and backpack protection.
Reset behavior: Optionally reset remaining enemies when the last player leaves or dies.
Ways to Use Dungeon Events on Your Server
Recurring world PvE events: Automatically introduce dungeons for players to discover and challenge.
Private solo or group raids: Let players spend earned currency or scrap on their own dungeon runs.
Endgame progression: Offer increasingly difficult tiers with separate enemies, reward pools, and access permissions.
PvP/PvE hybrid servers: Add challenging PvE content with configurable protections around dungeon portals.
Player Commands
Command
Description
/buydungeon
Open the dungeon purchase interface.
/buydungeon <tierName>
Purchase a specific dungeon tier.
/removedungeon
Remove your own active dungeon.
Administrator Commands
Command
Description
/createdungeon <tierName>
Create a dungeon of a selected tier.
/removeinactivedungeons
Remove inactive dungeons.
/removealldungeons
Remove all active dungeons.
/forceremovealldungeons
Force cleanup of plugin-created entities.
/de.removenearest
Remove the nearest dungeon.
/de.reloadconfig
Reload plugin configuration.
/de.toggle
Toggle dungeon purchases.
/de.addautospawn
Save your current location for automatic-event portals.
/de.addbuyspawn
Save your current location for purchased-dungeon portals.
/de.removespawn <auto|buy> [radius]
Remove a nearby saved portal position.
/de.listspawns
List custom portal positions.
/dungeons
List active dungeons.
Console / RCON
buydungeon <tierName> <playerID>
spawnrandomdungeon
spawnfixeddungeon <tierName>
spawnfixeddungeon <tierName> <playerID>
de.reloadconfig
dungeons
All default chat and console command names can be changed in the configuration.
Permissions
dungeonevents.admin
dungeonevents.buy
dungeonevents.enter
Optional tier permissions: Enable Require Permission in a tier to use its dynamically generated permission, such as dungeonevents.nightmare.
Important: When dungeon owner-locking is enabled, regular players also need dungeonevents.enter to enter permitted dungeons.
Per-Tier Loot Configuration
Each tier has separate data files, letting you create completely different reward pools for different difficulty levels.
oxide/data/DungeonEvents/<TierName>/
npc_loot.json
boss_loot.json
lootbox.json
npc_loot.json — regular NPC drops.
boss_loot.json — boss drops.
lootbox.json — dungeon loot containers.
When a tier-specific file has no loot entries, the plugin uses the default loot configuration:
oxide/data/DungeonEvents/Default_Loot.json
Integrations
Economics · ServerRewards · SkillTree · Friends · Notify · NightVision · ZoneManager · Duelist · RaidableBases · AbandonedBases · RestoreUponDeath
Integrations are used for features such as payments, rewards, friend access, notifications, time-of-day handling, and spawn/territory compatibility. Configure the integrations relevant to your server.
Developer Hooks
void OnDungeonSpawn(ulong ownerID, Vector3 position, string grid, string tierName)
void OnDungeonDespawn(ulong ownerID, Vector3 position, string grid, string tierName)
void OnDungeonWin(ulong playerID, string mapName)
Note: OnDungeonWin currently passes the tier's configured Map Name as its second argument.
Available Languages
English · Portuguese (Brazil) · German · Spanish · Russian
Bring replayable, configurable PvE raids to your Rust server with Dungeon Events. Give players new layouts to explore, tougher encounters to overcome, and reasons to keep coming back for another dungeon run.
$32.99
Well rounded shop, with various features. It's standalone plugin which is compatible with WelcomePanel, HumanNpc.
This plugin also supports selling commands, wipe block, no escape, sales, permission access.
Multi-currency support
Use different currencies for different items. Economics and ServerRewards (RP) is supported as well as scrap or any other ingame item.
Restrictions
Combat, raid, spawn and building block supported alongside with basic cooldowns and wipe block. NoEscape is required for combat and raid block.
Appearance
Simple and clean design to ensure smooth user experience for your players. Additionally Shop can be inserted into WelcomePanel to achieve "all in" server panel.
Customization
Widely customizable and feature rich Shop which will fit all needs of your community.
Field Tested
Plugin made by experienced developer, tested by hundreds of server owners and used by some big organizations.
Discord
Customer support available on discord,
Installation
- unzip downloaded package and place Shop.cs file into your plugin folder.
- after succesfuly loading the plugin, data folder oxide/data/Shop will be generated
- take data files provided in plugin package and drop them into your Shop data folder
After finishing these steps your shop is ready to used.
Server Currency
If you don't wish to use ingame items as currency make sure you use either Economics or ServerRewards as you currency management as only those two plugins are compatible with Shop. Default currency setting is Economics ("eco"), if you wish to change it navigate to "oxide/data/Shop/Items.json", open this file in some text editor (VSC recommended) and simply select "eco" and mass replace for desired value. (video here)
"eco" for Economics
"rp" for ServerRewards
"scrap" or any other ingame item
Shop Categories
To remove, change or add new categories open "oxide/data/Shop/Categories.json" file. There you will find all categories alongside with items lists. If you wish to remove certain items from category, just head over to item list and delete from there.
Items
Changing prices
In "oxide/data/Shop/Items.json" you will find every item with their properties, to quick search for specific items press "CTRL + F". By leaving BuyPrice or SellPrice at 0 you will disable selling or buying of said item. Due to multi-currency support prices can be set only in whole numbers, no decimals. To offset for this, you can set minimal amount requirement. For example instead of selling one piece of wood for 0.01$ you can set minimal amount of 100x wood for 1$.
Removing items
If you wish to remove some items from Shop, you can do that directly in "data/Shop/Categories.json" file. Removing items from "Items.json" is not needed as they have no effect unless they are listed in some category.
Adding new items
To add new item you must first head over to "Items.json" data file and create new entry by copy pasting some of the existing ones. Once done with that you can add the item into category. To add multiple versions of same item can be created by simply adding unique tag behind shortname, for example "rifle.ak{1}", "rifle.ak{2}", etc...
Commands
Adding new commands
Commands can be create at "data/Shop/Commands.json". Plugin can only run server side console commands and then parse steam id or player name with tags {steamid} and {playername}. There are two examples shown in default data file. Server side console commands are common thing and almost all plugins utilize them.
Listing commands in categories
Simply type in one of your command names into category item list like this "cmd/yourCommandName". Slash cmd in front of command name is there to make difference between ingame item and command.
Cooldowns
These are very basic, cooldown is triggered when buy/sell action is triggered. By using minimal amount requirement for items you can manage how much player buy and how often. Cooldowns are managed in "data/Shop/Cooldowns.json". Default data file contains two example of cooldowns but it's simply shortname and amount of seconds.
Restrictions
Raid and Combat Block
Managed by NoEscape plugin, option to enable these two block can be found in config file.
Building Block
Prevents players from using shop while they are building block, option can be found in config file.
Spawn Block
Prevents players from using shop after they respawn, amount of seconds can be set in config file, 0 = disabled.
Wipe Block
Prevents players from buying specific items after wipe. Settings are located in "data/Shop/ItemsWipeBlock.json", similar as cooldowns.
Sales
By Permission (config file)
Discount on every item in the shop assigned by permission, multiple permission can be created with their own discount values.
By Category (categories data file)
Discount for every item within specified category.
By Item
Discount for specific item in the shop. If item is already in discounted category, higher discount will be applied.
WelcomePanel integration
To integrate this plugin into WelcomePanel simply use one of the four configs included in download package. These config were premade for each WelcomePanel template (goes from 1 to 4). In case you have own highly customized layout for WelcomePanel you will have to adjust "Layout Container" in Shop config file by yourself.
$14.99
TC Upgrades provides an efficient and optimized way to enhance your base directly from the Tool Cupboard. With this plugin, you can easily change building grades, switch building skins, repair structures or deployables, and even set up wallpapers on your base, streamlining your base management process.
⭐ Key Features
Multi-TC Support
Authorization List on Tool Cupboard
Upgrade Building Grades
Change Building Skins
Repair Structures and Deployables
Apply Wallpapers
Shows Required Upgrade materials
NEW! Change Doors skins from tc directly
Detailed Permissions
VIP Features
User-Friendly UI
🎉Game hosting perfected, that's Physgun
Join the thousands of server owners using Physgun to take their game server communities to the top.
🎬 Video Showcase
📜 Permissions
TCUpgrades.admin- Shows a UI Change button when in admin mode (command: /tcuadmin)
TCUpgrades.authlist - Shows Authorization list button on TC
TCUpgrades.upgrade - Shows upgrade button on TC
TCUpgrades.repair - Shows repair button on TC
TCUpgrades.skin - Shows skin button on TC
TCUpgrades.wallpaper - Shows wallpaper button on TC
TCUpgrades.upgrade.nocost - Allows player to use no resources when upgrading
TCUpgrades.repair.nocost - Allows player to use no resources when repairing
TCUpgrades.reskin.nocost - Allows player to use no resources when reskining
TCUpgrades.wallpaper.nocost - Allows player to use no resources when setting wallpaper
TCUpgrades.default - Allows player to use (wood, stone, metal, hqm & deploy)
TCUpgrades.wood
TCUpgrades.stone
TCUpgrades.metal
TCUpgrades.hqm
TCUpgrades.deploy
TCUpgrades.TCSkin - Allows player to use Tool Cupboard skins
TCUpgrades.WallandGates - Allows player to External Gate skins
TCUpgrades.DoorSkins - Allows player to place door skins
⚙️ Configurations
🗃️ Language EN
💬 Support
FEATURES
Map size: 4500;
Prefab count: ~54k;
A lot of attention was paid to nature, and each section of the map was designed in detail;
Most of the rocks are hand-crafted, which makes them look much better.
The custom config for the BetterNpc plugin is set up so that bots are present at all points of interest;
Compatible with BetterNPC plugins (Config for bots in the file), Train Homes and Raidable bases;
Underground railway;
A large number of small settlements/single buildings not marked on the road map by road;
Double-track surface railway with 1 entrance to the metro with separate branches for spawn trains;
Ring road (compatible with event plugins);
There are custom trawlers;
Evenly spaced monuments to spread the FPS load of client;
A lot custom building places (X on the minimap);
Custom places for building in the subway (XU on the minimap);
Bridges are designed for easy tugboat access;
A large number of points with access to fresh water for farms. ( Rivers inside the island work like regular game rivers )
CUSTOM MONUMENTS
Oil Refinery;
Destroyed satellite dishes;
Heli towers (1-5);
Construction Site;
Abandoned Oil Tanks;
Oil Tanks;
Crash Site;
Oil Platform;
Deep Seeker ( Trawler );
Northwind ( Trawler );
Storm Trawler ( Trawler );
Sea Wolf ( Trawler );
Silver Catch ( Trawler );
Bering Beauty ( Trawler );
Underwater caves (x2 ) ( Zones for underwater farm );
Sunken Containers (x2 ) ( Zones for underwater farm );
A lots custom places to build a base. ( "X"/"XU" on map );
Train Station ( For Train homes plugin )
A lots unmarked buildings.
FACEPUNCH MONUMENTS
Combined Outpost;
Apartment Complex;
Launch Site;
Military Tunnel;
Harbor (2/2);
Ziggurat;
Ferry Terminal;
Radtown;
Abandoned Supermarket;
Nuclear Missile Silo;
Oxum's Gas Station;
Airfield;
Lighthouse;
The Dome;
Water treatment plant;
Trainyard;
Power Plant;
Arctic Research Base;
Desert Military Base;
Giant Excavator Pit;
Stone, Sulfur & HQM quarries;
Satellite Dish;
Small & Large Oil Rig;
Large Underwater Lab.
My Discord: shemov
Discord Server: https://discord.gg/UpUXuxs4Vx
A password is attached to the map. You can edit it.
$9.99
Offline Raid Limiter
Stop Unfair Offline Raids in Their Tracks
Tired of seeing your Rust server overrun by offline raid abuse? Offline Raid Limiter steps in to restore balance and fair play. With powerful tracking and immediate damage blocking, your players can enjoy a more authentic Rust experience—and you can enjoy worry-free server management.
Key Benefits
Prevent Offline Raid Abuse
Daily + Per-Wipe raid limits
Run daily limits, wipe limits, or both at the same time (fully configurable).
Proximity-Based Tracking: Only counts raids when attackers are within range of a Tool Cupboard (TC), ensuring offline raid limits don’t trigger prematurely.
Smart Raid Session Management
Team & Additional Raider Tracking: Keeps tabs on individual players as well as entire teams—even if they leave and rejoin. Plus, if additional players jump into the same raid, their involvement is recorded.
Edge Case Handling: No more confusion or gaps in coverage if a defender goes offline mid-raid or when multiple attackers are involved. Offline Raid Limiter’s robust logic sorts out these scenarios seamlessly.
Instant Damage Blocking
Enforce Fair Play: Once a team or individual hits their daily offline raid quota, further damage is blocked automatically. That means no more sneaky workarounds or unstoppable raids.
Modded Server UI
In-Game Control: For modded servers, gain access to a simple in-game UI that displays raid history, player statistics, and real-time session data.
Player-Friendly Features: Grant permissions so your players can check their offline raid counts with the /orl.mystats command—helping everyone stay within the rules.
Detailed Alerts & Reporting
Discord Integration: Offline Raid Limiter sends comprehensive alerts to Discord, making admin oversight a breeze.
Export & Clear Sessions: Use /orl.export to log and share your entire raid history for deeper analysis, then wipe all sessions with a simple console command if you need a fresh start.
Designed for Vanilla & Modded Servers
Flexible Configuration: If you set your server to "Vanilla,” the plugin automatically disables UI and direct damage blocks, limiting itself to Discord notifications so admins can monitor raiding behind the scenes.
Seamless Integration: Works hand-in-hand with Rust’s existing frameworks and requires only the Simple Status & Image Library for certain UI elements.
Why Choose Offline Raid Limiter?
Enhanced Fairness: Players can’t take shortcuts with offline raids for easy loot.
Clear Oversight: Admins see exactly who’s raiding and how often, helping you enforce balanced gameplay.
Configurable & User-Friendly: Tailor the plugin to your server’s needs in just a few clicks, with plenty of documentation to guide you.
If you’re ready to level the playing field and protect your community from unfair offline raids, Offline Raid Limiter has you covered. Bring your Rust server to new heights of balance, transparency, and peace of mind!
Commands & Usage
Player Commands (permission based)
/orl.mystats — Shows your overall stats (daily + wipe, plus active limits).
/orl.mydaily — Shows your daily offline raids and daily limit.
/orl.mywipe — Shows your wipe offline raids and wipe limit.
Admin Commands
/orl.disable <hours> — Temporarily disables enforcement for X hours.
/orl.enable — Re-enables immediately.
/orl.clearall — Clears all stored raid sessions (and fully resets tracking).
/orl.clearplayer <SteamID64 or name> — Clears raids for a specific player/team.
/orl.export — Exports raid sessions to JSON via the debug webhook.
/orl.dailyall [top] — Shows a “top raiders” list for daily scope.
/orl.wipeall [top] — Shows a “top raiders” list for wipe scope.
/orl.dailyplayer <name/id> — Check a player’s daily count.
/orl.wipeplayer <name/id> — Check a player’s wipe count.
Damage / Raid Logic
OfflineRaidLimiter checks incoming damage to building blocks, doors, external walls, and more.
If a team or player has exceeded the daily offline raid limit, all further damage to offline bases is blocked—and you can optionally broadcast an alert to Discord.
Key Points to Note About Commands
Some commands differ depending on your permissions and server setup. For instance, if a player types /exportraidsessions in chat, it won’t work unless they have OfflineRaidLimiter.admin.
For "Vanilla” servers (as set in the config), UI, damage blocking, and certain other features may be disabled—so commands like clearraidsessions and clearraidsforplayer will still work, but may only be visible to server admins via console.
When Commands Might Defer
Cleanup Commands: If the plugin detects that some raid sessions are still "cooling down” (meaning the raid window hasn’t fully expired), the system may defer clearing them until the next pass. This prevents conflicts with currently active raids.
Blocking Logic: After the daily limit is reached, the blocking triggers immediately and remains in place until the next server reset or cleanup routine (depending on how you configure it).
$30.00
Rust / Server Plugins
BetterTC
Tool Cupboard ManagementRust Plugin
Upgrade. Repair. Reskin. Make your base your own.
Bring your most-used Tool Cupboard features together in one interface inspired by Rust’s item store. Automate building upgrades and repairs, manage authorizations, and personalize buildings, external walls, wallpapers and your TC.
Automated upkeep tasks
Upgrade and repair with TC resources
Personalized buildings
Skins, wallpapers and external walls
Permission profiles
Configure access, speed and costs
01 / Video demo
See BetterTC in action
Take a look at BetterTC’s interface and building management features.
Watch on YouTube
02 / Skin ownership
Compatibility with Facepunch’s server policy
Facepunch’s policy prohibits granting paid skins or DLC to players who do not legitimately own them. BetterTC includes ownership validation for building skins, TC skins and wallpapers.
Building skins: all available choices remain visible, but players can only apply skins they own or skins that are free.
Wallpapers: only free, custom and owned wallpapers are visible. More custom wallpapers are planned.
TC skins: only owned skins are visible and selectable.
Read Facepunch’s official server policy
Ownership checks are enabled with the following bypass option set to false:
"Bypass DLC ownership check (⚠ only allowed on creative/test servers per Facepunch rules)": false
⚠ Very important
Keep the bypass disabled on ordinary public PvP and PvE servers. Facepunch only permits temporary exceptions on servers specifically set up to test game mechanics, for testing purposes. A creative or training label alone is not an exemption. Misuse may result in delisting or other sanctions.
03 / Building management
Let the TC do the work
Automatic upgrades
Upgrade building grades using resources directly from the TC. Select the default appearance or an eligible building skin, and use the information button to estimate the materials required. Configure upgrade speed and costs through permission profiles.
Automatic repairs
Repair the building and supported deployables, including doors, trapdoors, windows and boxes, with resources from the TC. Configure a cooldown after recent damage to help prevent repair abuse during raids.
Automatic reskinning
Change a building’s appearance without manually replacing each piece. Players can switch from a skinned grade back to its default appearance when they prefer. The Container skin’s multicolor selection can also be disabled to reduce client rendering load.
Building downgrades
Allow players to return to a lower building grade when their base becomes too expensive to maintain. Downgrading charges resources as a fresh upgrade to the selected grade; it is not a free conversion. Disable this feature if it does not fit your server, or retain a separate administrator-only downgrade override.
Configure NoEscape or RaidBlock integration to stop automatic upgrades, repairs, building reskinning, wallpaper placement and external wall reskinning when a raid block starts. Ownership and team restrictions are also configurable.
04 / Building skins
Keep the available skins up to date
The skin update checker adds newly available construction skins and their options to the configuration.
After installing BetterTC, grant yourself bettertc.admin and click Check Update to populate the available skins and options. Applying paid content remains subject to ownership checks.
05 / External walls
Change the look. Preserve the damage.
Reskin stone external walls with their adobe or ice variants, or switch wooden external walls to Frontier and back. Supported external gates can also be reskinned to their available variants. The original wall’s health is preserved, so reskinning a damaged wall does not repair it.
Recommended setting:
"Only reskin on wall of the same grade": true
Keep this enabled to use external wall reskinning as an appearance change. Disabling it allows wood-to-stone and stone-to-wood changes without a resource charge, because this wall system has no cost mechanism.
06 / Wallpapers & TC skins
Personalize the details
Automatically place eligible wallpapers on walls, ceilings and floors. New game wallpapers are added to the list automatically.
Use included custom wallpapers and add your own through the admin wallpaper commands.
Configure placement on both sides of walls, including exterior sides.
Apply wallpapers to both sides of a wall, including the exterior side when configured.
Place wallpapers on boats with /wpb after sitting at the boat’s steering wheel.
Let players change their TC’s appearance or deploy a TC with a skin, according to their permissions and ownership.
Tool Cupboard skin selection
Choose an eligible TC skin from the interface, or deploy a TC using the selected skin. BetterTC carries over the cupboard’s authorizations, contents and lock when replacing its appearance.
Manual wallpaper tool menu
Hold the wallpaper tool and open BetterTC’s selector with /wp or the configured input button. The default input is the middle mouse button. This menu must be enabled in the configuration and requires bettertc.wallpaper.toolmenu.
Wallpaper rotation hammer
Administrators can obtain a special wallpaper hammer with /wphammer. Hit a wallpapered floor or foundation with this hammer to rotate its wallpaper: 90° on square pieces and 120° on triangles.
Configure the cloth cost of automated wallpaper placement. Building placement uses cloth from the TC; boat placement uses cloth from the player’s inventory. The no-cost wallpaper permission waives placement resource costs.
Set "Wallpaper Damage": false to protect wallpapers from melee and ammunition damage. C4 and rockets can still damage them.
07 / Authorization & inventory
Manage access from the cupboard
Authorized player list
Show who is authorized on the TC, optionally including Steam IDs and Online, Sleeping or Offline status through the player-status permission. Hide administrators with the configured option and allow individual authorization removal with a separate permission.
Automatic TC locks
Use separate permissions to automatically attach a locked key lock or code lock when a TC is deployed. Code locks use a generated code, authorize the deploying player and notify them of the code; the notification masks it in streamer mode. The code-lock permission takes priority when both lock permissions are assigned.
Additional TC storage
Configure which additional item types the TC accepts: gunpowder, sulfur, sulfur ore, explosives, diesel barrels, CCTV cameras and targeting computers. Each item type has its own switch. Select a general inventory filter: Resources, ResourcesAndComponents or All. The ResourcesAndComponents mode also accepts supported building and utility tools.
08 / Interface & integrations
A panel that adapts to your players
The panel keeps a consistent size across player UI scaling settings.
Buttons rearrange automatically according to the functions the player can access.
Authorization lists and construction skins support pagination. Building options can be automatically sorted by grade, or retain the configured order.
Configure whether players can disable automatic construction effects.
Most interface images load directly from the game client.
Carbon servers use the built-in Image Module; Oxide servers use ImageLibrary.
Configure game tip, chat and optional Notify or UINotify alerts, plus button colors and positioning.
TiersMode and TCLevels
When TiersMode is installed, BetterTC reads its maximum unlocked building grade for the upgrade menu. When TCLevels is installed, BetterTC adds a button to open its Tool Cupboard level-upgrade menu.
09 / Permissions
Choose the functions each player can use
Assign feature permissions and configure the standard and advanced profiles to match your server. Grant the no-cost permissions carefully.
Permission
Purpose
bettertc.admin
Admin update checks; also used to hide administrators from the authorization list when configured.
bettertc.authlist
Show the authorized-player list button.
bettertc.playerstatus
Show each authorized player's status next to their name in the TC authorization list: Online (green) when connected, Sleeping (light blue) when disconnected with a sleeping character in the server, or Offline (red) when registered but no active or sleeping character is found. Without this permission, only the player name is shown. This permission only displays status; it does not grant authorization or removal rights.
bettertc.deleteauth
Revoke individual player authorizations.
bettertc.use
Use the standard speed and cost profile defined in the configuration.
bettertc.vip
Use the advanced speed and cost profile defined in the configuration.
bettertc.repair
Access automatic building repair.
bettertc.repair.nocost
Repair without resource costs.
bettertc.reskin
Access automatic building reskinning.
bettertc.reskin.nocost
Reskin without resource costs.
bettertc.upskin
Show building upgrade options with skins.
bettertc.upwall
Access external wall reskinning.
bettertc.upgrade
Access building upgrades.
bettertc.upgrade.nocost
Upgrade without resource costs.
bettertc.wallpaper
Access wallpaper placement.
bettertc.wallpaper.nocost
Place wallpapers without resource costs.
bettertc.wallpaper.custom
Show custom wallpapers.
bettertc.wallpaper.toolmenu
Access the manual wallpaper tool selector when enabled.
bettertc.tcskinchange
Change the TC skin.
bettertc.tcskindeployed
Deploy a TC with a skin.
bettertc.autolock
Automatically add a locked key lock when deploying a TC.
bettertc.autocodelock
Automatically add a locked code lock with a generated code when deploying a TC.
Skin-related permissions do not replace paid-content ownership checks.
10 / Commands
Add custom wallpapers
Command
Purpose
/addwp <skinid> <Wall|Floor|Ceiling>
Chat: add a custom wallpaper for the selected surface type.
addwp <skinid> <Wall|Floor|Ceiling>
Console: add a custom wallpaper for the selected surface type.
/wpb
Chat: place wallpapers on boats; first sit at the boat’s steering wheel.
/wp
Chat: open the manual wallpaper menu while holding the wallpaper tool; requires bettertc.wallpaper.toolmenu.
/wphammer
Chat: give yourself the wallpaper rotation hammer; requires bettertc.admin.
wphammer
Player console: give yourself the wallpaper rotation hammer; requires bettertc.admin.
wphammer <playername or steamid>
Server console: give the wallpaper rotation hammer to a selected player.
Adding wallpapers from chat or a player console requires bettertc.admin. Example for a wall wallpaper:
/addwp 3356517390 Wall
Console equivalent:
addwp 3356517390 Wall
11 / Configuration
Selected configuration options
This excerpt covers the settings supplied with this description, including ownership checks, raid blocking, repairs, wallpapers and permission profiles. It is not the complete configuration file, and these supplied example values may differ from the defaults in your installed version. Edit the configuration generated by your installed BetterTC version.
{
"Check for updates when loading": true,
"Bypass DLC ownership check (⚠ only allowed on creative/test servers per Facepunch rules)": false,
"Use NoEscape Plugin": false,
"Use RaidBlock Plugin": true,
"GUI Buttons TC - Color Default": "0.3 0.40 0.3 0.60",
"GUI Buttons TC - Color Active": "0.90 0.20 0.20 0.50",
"GUI Buttons TC - OffsetMin": "280 621",
"GUI Buttons TC - OffsetMax": "573 643",
"GUI Buttons TC - AnchorMin": "0.5 0",
"GUI Buttons TC - AnchorMax": "0.5 0",
"Alert Gametip": true,
"Alert Chat": true,
"Alert Notify Plugin": false,
"Notify: select what notification type to be used": {
"error": 0,
"info": 0
},
"Color Prefix Chat": "#f74d31",
"Show Admin Auth List": false,
"Show SteamID Auth List": true,
"Upgrade Effect": true,
"Colour Selection MultiColor Option": false,
"Reskin Enable": true,
"Reskin Wall Enable": true,
"Only reskin on wall of the same grade": true,
"Reskin Wall TC Distance (Default: 100)": 100.0,
"Deployables Repair": true,
"Repair Cooldown After Recent Damage (seconds)": 30.0,
"Downgrade Enable": true,
"Downgrade only Owner Entity Build": false,
"Upgrade only Owner Entity Build": false,
"Upgrade / Downgrade only Owner and Team": true,
"Wallpaper Enable": true,
"Wallpaper placement Cost (Cloth)": 5,
"Wallpaper Damage": true,
"Wallpaper both sides": true,
"Force both sides including external sides": true,
"Cooldown Frequency Upgrade (larger number is slower)": {
"bettertc.use": 2.0,
"bettertc.vip": 1.0
},
"Cooldown Frequency Reskin (larger number is slower)": {
"bettertc.use": 2.0,
"bettertc.vip": 1.0
},
"Cooldown Frequency Repair (larger number is slower)": {
"bettertc.use": 2.0,
"bettertc.vip": 1.0
},
"Cooldown Frequency Wallpaper (larger number is slower)": {
"bettertc.use": 2.0,
"bettertc.vip": 1.0
},
"Cost Modifier for repairs": {
"bettertc.use": 1.5,
"bettertc.vip": 1.0
},
"Allow Items in TC Inventory": {
"gunpowder": false,
"sulfur": false,
"sulfur.ore": false,
"explosives": false,
"diesel_barrel": true,
"cctv.camera": true,
"targeting.computer": true
},
"Downgrade Admin": true,
"Use BetterTC Wallpaper Tool Menu (requires bettertc.wallpaper.toolmenu permission)": true,
"BetterTC Wallpaper Tool Menu input button (FIRE_THIRD = middle mouse button)": "FIRE_THIRD",
"Item Category Filter (Resources, ResourcesAndComponents, All)": "Resources",
"Auto Sort Items by Grade": true
}
12 / Known issue
Unexpected default blue wallpapers
If default blue wallpapers appear randomly, check whether TruePVE or a similar plugin is protecting wallpaper damage. Disable that wallpaper protection in the other plugin and use BetterTC’s own wallpaper protection instead.
BetterTC’s protection reduces damage, especially from melee attacks, but does not block all damage.
13 / Support
Questions, ideas or a problem to report?
Contact ninco90 on Discord for questions, suggestions or assistance.
Custom server configuration is also available for an additional fee if you would like the plugin set up around your preferences.
[ ! ] The zip contains a DLL extension that goes into RustDedicated_Data/Managed. Some hosts do not allow uploading DLLs - check with your host before buying. [ ! ]
Case Battles is case opening for Rust. Players open cases with scrap, Economics or ServerRewards money, with case keys, or for free on a cooldown, watch the spin slide across the items and land on the drop, and everything they win goes to a personal storage where they claim it into the inventory or sell it back.
Battles put 2 to 4 players on the same list of cases, in 1v1, 2v2, 3-way or 4-way, and the highest total takes the whole pot (the lowest in crazy mode). House bots fill empty seats, private battles join by code, and anyone can watch. The upgrader trades items or currency for a better item at a chance shown on a dial before you press GO. Every roll is provably fair, and players can check any of them in the window.
Version 2.0 adds levels with free level cases, Case Rain that splits a server pot among the players who join, wipe seasons that pay the top 3 of every board in cases, a guided tour, Steam avatars on every board and seat, and a whole new window.
Works on Oxide and Carbon
Needs CrashExtensions (included in the zip)
20 cases and 3 level cases ready to go
English, Spanish, Russian, Portuguese and German built in
Jump to: Features · How it plays · Screenshots · Trailer · Included cases · Commands · Permissions · Install · Configuration · Test server · FAQ · API
🌟 Features
For players
A spin for every open. Open up to 5 at once, or switch on quick open and skip straight to the drop. A demo spin shows a case for free and wins nothing.
Case battles. 1v1, 2v2, 3-way and 4-way, up to 10 cases per battle, normal (highest total wins) or crazy (lowest total wins), public or private with a code. Join, watch, fill empty seats with house bots (the creator calls them), or recreate the battle in one click.
The upgrader. Offer up to 6 items or currency, pick a target or a multiplier chip (x1.5 to x10), and see your exact chance on the dial before you spin.
A storage of your own. Every drop waits there: claim it into your inventory or sell it back for 85% of its value.
Provably fair. The hash of the server seed is shown before you roll, you can set your own client seed, and the FAIRNESS page checks any revealed roll against the drop table it was made with.
Levels. Everything you open, battle and upgrade earns XP, and the level road hands out bronze, silver and gold level cases. Levels carry over between wipes.
Case Rain. A small share of every paid open fills a pot. When it rains, players have 60 seconds to join and the pot is split between them.
Wipe seasons. Three boards close at every wipe (best drop, profit, battles) and the top 3 of each get cases.
Stats. Your own numbers, the server's, top drops and leaderboards.
A live drop feed and toasts for the big drops on the server, and HUD rows for a running Case Rain, a ready free case and its cooldown.
A guided tour the first time the window opens, replayed from the ? button.
For server owners
Your currency. Scrap (or any item you name), Economics or ServerRewards, set with one config line.
Sell keys and cases. casebattles.givecase and casebattles.givekey are made for your shop, Tebex or battle pass, offline players included. The GET KEYS button links to your store.
A key dealer NPC. Place him with /cases dealer add. He sells keys in packs with bulk and VIP discounts and a daily limit (talks through NpcDialogue, optional).
In-game editor. /cases edit edits every case and its drops in game, so nobody has to touch a file.
VIP hooks. Discount permissions on case prices, VIP prices at the key dealer, and per-case permissions such as the VIP case.
Limits and locks. Daily and lifetime limits per case, minimum playtime, a lock after the wipe, and blocks while wounded, swimming, in a vehicle, building blocked, or combat and raid blocked (with NoEscape).
Drops beyond items. A drop can be an item, a blueprint or a list of console commands (a rank, a kit, anything).
Discord. Big drops and Case Rain posted to your webhook, from the rarity you choose.
5 languages. English, Spanish, Russian, Portuguese and German are built in, and each player sees the language of their own game.
Wipe your way. Storage and keys survive the wipe by default, and so do levels. Each is one switch.
For developers
A hook and an API. OnCaseOpened and the API_* calls: give cases and keys, read a player's opens, keys and level, open the window on a tab or a case. See the API.
Console and RCON commands. The give commands run from the server console and RCON, which is where your shop, quests and reward plugins point.
🔁 How it plays
Pick a case. Free ones run on a cooldown, the rest cost currency or keys. Every case shows its drops and their odds.
Open. One to five at a time. The spin lands on a drop decided by your seeds before it starts.
Keep or sell. Drops go to your storage. Claim them into your inventory or sell them back.
Battle. Create or join a battle, everyone opens the same cases round by round, and the winner takes the pot.
Upgrade. Put items or currency on the dial for a shot at something better.
Progress. XP from every open, battle and upgrade raises your level, level cases wait on the level road, and the season boards pay out at the wipe.
Check. Rotate your seed to reveal the old one and verify any roll on the FAIRNESS page.
📸 Screenshots
Every screen below is Case Battles running in Rust.
The case browser
A case and its drops
Two cases landed: total, cost and profit
The battles lobby
A battle room
A battle winner
The upgrader
The storage
Fairness and the roll verifier
Stats
The level road
Season boards: the top 3 of each win cases
Case Rain on the HUD while you play
Case Rain live in the case browser
A level-up with a level case
Creating a 2v2 battle
History, every roll with its fairness check
The guided tour
🎥 Trailer
The Case Battles 2.0 trailer (click to play, 80 seconds)
🎁 Included Cases
20 cases ship ready to open, with 7 rarities from Common to Gold and three keys (green, blue and red):
Free on a cooldown - Daily Case (every 24 hours, after 30 minutes played) and Starter Case (every 4 hours, after 15 minutes played)
For currency - Medic (250), Fuel (300), Miner (350), Farmer (400), Ammo (550), Builder (600), Tech (800), Mystery (1,500), Boom (5,000), VIP (5,000, for casebattles.vip) and Jackpot (6,500, 3 a day)
For keys - Weapons (1 green), Diver (1 green), Airdrop (1 blue), Tactical (2 blue), Elite (1 red), Cobalt (2 red) and Legend (3 red, locked for the first 2 hours of a wipe)
Level cases - Bronze, Silver and Gold, claimed from the level road at levels 5 to 50
A few of the drops at the top: the AK-47 blueprint in the Weapons Case, an auto turret blueprint in the Builder Case, 10,000 scrap in the Mystery Case, and 20 timed C4 in the Legend, Jackpot and Gold Level cases.
A disabled Example Rewards case shows the other kinds of drop: blueprints, a reward paid by console command, and a VIP rank granted on the spot.
🗒️ In-Game Editor
No file editing needed. /cases edit opens every case in a list and an editor for its name, image, price or key, free cooldown, permission, daily and lifetime limits, playtime and wipe lock, rarity tier, badge and whether it is allowed in battles. Add drops from the item list or straight from your inventory (skin, name and amount kept), set their odds and values, and watch the case's expected value update as you go. Duplicate a case to start a new one. Players keep the live table until you press SAVE.
🎮 Commands
Players
/cases - open the window (the command name is set in the config)
/cases battles, /cases upgrader, /cases storage - open the window on that tab
/cases join <code> - join a private battle
/cases help - the command list in chat
/rain - join a running Case Rain (the name is set in the config, and it only exists while Case Rain is on)
Admin
/cases edit [case] - the in-game case editor, optionally straight on one case
/cases dealer add | remove | list - place a key dealer where you stand, remove one, or list them
casebattles.givecase <player> <case> [amount] - give free opens of a case, the one to point your shop, Tebex or battle pass at
casebattles.givekey <player> <key> [amount] - give case keys
casebattles.givebalance <player> <amount> - give currency
casebattles.rain [amount | add <amount> | stop | status] - start a Case Rain now (an amount tops the pot up first), add to the pot without starting one, stop a rain without paying (the pot is kept), or show the pot and the time to the next one
The give and rain commands run from the server console and RCON as well. <player> is a SteamID64, online or not, or the exact name of an online player.
🛡️ Permissions
casebattles.use - open cases, battles, the upgrader and the storage. Required, so grant it to your default group
casebattles.admin - the editor, the key dealer, and the give, rain and convert commands. Staff only, and give it to yourself too: being a server admin is not enough
casebattles.discount1, casebattles.discount2, casebattles.discount3 - 5, 10 or 15% off case prices paid in currency. The highest one a player holds wins
casebattles.dealer.vip1, casebattles.dealer.vip2 - 5 or 10% off keys at the key dealer, added to the bulk discount
casebattles.vip - opens the VIP Case
Every case can carry its own permission, and the discounts, dealer prices and demo spin permission are all set in the config.
A typical setup opens everything to everyone and keeps the discounts and the VIP case for your VIPs:
oxide.grant group default casebattles.use
oxide.grant group vip casebattles.discount2
oxide.grant group vip casebattles.dealer.vip1
oxide.grant group vip casebattles.vip
oxide.grant user <your steamid> casebattles.admin
📦 Install
Install the extension, once per server. Stop the server, copy Oxide.Ext.CrashExtensions.dll into RustDedicated_Data/Managed (Carbon: carbon/extensions) and start it again. The console prints Loaded extension CrashExtensions with its version. An older copy of the DLL is simply overwritten: it is one shared file for all our plugins.
Install the plugin. Copy CaseBattles.cs into oxide/plugins (Carbon: carbon/plugins). It compiles on its own and creates its config, data and language files.
Grant the permissions above. Nobody opens a case until casebattles.use is granted. Then type /cases in game: the tour shows you around, and /cases edit tunes the cases.
⚙️ Configuration
Everything lives in oxide/config/CaseBattles.json, the cases included. Each player's storage, keys, level and history are in oxide/data/CaseBattles/players, and the battles, boards, seasons and the Case Rain pot in oxide/data/CaseBattles/global.json.
Config sections (click to expand)
🧪 Test server
Available on the new Meowcraft test server. Join from the F1 console and type /cases:
client.connect 91.229.114.54:28015
📚 FAQ
Q: I run Case Battles 1.x. What changes when I update?
A: Replace CaseBattles.cs. The first load upgrades the config and keeps the old file as oxide/config/CaseBattles.json.v1.bak, and your cases, storage, keys and history carry over. Levels are on and the bronze, silver and gold level cases are added. Case Rain and season rewards start off, so turn them on in the config when you want them. The art stays classic (the 1.x pictures) until you set Art pack to venux.
Q: Do I need an economy plugin?
A: No. Cases, battles and the upgrader run on scrap by default, or on any item you name. Economics or ServerRewards take one config line. Keys are separate: you give or sell them with casebattles.givekey, the key dealer or your shop.
Q: Is it really provably fair?
A: Yes. Every roll is HMAC-SHA256 of the player's server seed, client seed and a nonce. The hash of the server seed is shown before any roll, the player can set their own client seed, and rotating the seed reveals the old one. The FAIRNESS page recomputes any past roll against the drop table it was made with, not today's config.
Q: Does it work on Carbon?
A: Yes. The extension goes into carbon/extensions and the plugin into carbon/plugins, and everything else is the same.
Q: Can I translate it?
A: It already speaks five: English, Spanish, Russian, Portuguese and German are built into the plugin, and each player sees the language their game runs in. For another language, copy oxide/lang/en/CaseBattles.json to oxide/lang/<code>/CaseBattles.json and translate it.
Q: What happens at a wipe?
A: By default storage and keys are kept, and so are levels. The season boards close, the top 3 of every board get their prize cases, and a new season starts. One switch makes storage and keys start over at the wipe, another resets levels.
Q: Do I need NpcDialogue?
A: No, it is optional and only for the key dealer. With NpcDialogue installed he talks through the vanilla conversation screen and sells keys there. Without it, talking to him opens the case window.
Q: Can I sell cases or keys in my shop?
A: Yes. Point your shop, Tebex or battle pass at casebattles.givecase or casebattles.givekey, and set your store link for the GET KEYS button in the config.
Q: How heavy is it?
A: Built for busy servers. Every spin plays on the player's own game, so it stays smooth whatever the server's frame rate, the window only sends what changed, and player files are saved with the server's own save.
Q: Does it contact any outside service?
A: It downloads its pictures (case art, keys and icons) from cdn.crashplugins.space and rust-cui.crashplugins.space, and your server caches them. Steam avatars are drawn by each player's own game, so the server fetches nothing from Steam. The optional Discord webhook is off until you set its URL; once set, it posts big drops and Case Rain with the player's name and profile links. Nothing else about your server or your players is sent.
🔧 API / Hooks
// Hook
void OnCaseOpened(BasePlayer player, string caseId, int count)
// API: CaseBattles?.Call<T>("Method", ...)
// player: a BasePlayer, player.userID, or a SteamID64 as ulong or string
// The give calls work for offline players and return false when nothing was given
bool API_GiveCase(object player, string caseId, object amount = null, bool notify = true)
bool API_GiveKeys(object player, string keyId, object amount = null, bool notify = true)
int API_GetCaseOpens(object player, string caseId)
int API_GetKeys(object player, string keyId)
int API_GetLevel(object player)
bool API_OpenUI(BasePlayer player, string tab = null, string caseId = null) // tab: cases, battles, upgrader, storage, stats
Dictionary<string, string> API_GetCases() // case id -> display name
Dictionary<string, string> API_GetKeyTypes() // key id -> display name
Questions, ideas or bug reports? Use the Support tab of this file or join our Discord.
Highest Rated
Top-rated picks trusted and loved by the community.
-
$40.00
By nivex
-
$16.99
By David
-
$40.00$31.95By Mevent
-
$29.99
By imthenewguy
-
$29.99$19.99By LosGranada
-
$24.99
By Whispers88
-
$14.99
By Sheo
-
Free
By Steenamaroo
-
$14.99
By David
-
$19.99$15.99By Fruster
-
$45.99$36.79By Monster
Great Deals
Discounted picks, limited-time deals, and sale items worth grabbing now.
-
$15.00$12.00By Ionut Shiro
-
$45.00$41.95By Mevent
-
$19.99$14.99By Iftebinjan
-
$15.00$3.75By kykyxa
-
$8.00$6.40By Ionut Shiro
-
$5.97$4.98 -
$24.99$19.99By Khaled
-
$6.99$4.99By IIIaKa
-
$3.00$2.40By Ionut Shiro
-
$4.99$3.99By EXO Engineer
-
$21.99$17.59By Meowhuh
-
$10.00$7.50By Wrecks
Recently Updated
Recently improved files with fresh updates, fixes, and new content.
-
$15.00
By 0xF
-
$24.99
By Wonder_Fox
-
$20.00$12.00By NooBlet
-
$9.99$8.99By IIIaKa
-
$9.98
By flutes
-
By flutes
-
$27.00
By Nomad Rush
-
$47.00
By Nomad Rush
-
$29.99$19.99By LosGranada
-
$12.50
By J4V1
-
$47.00
By Nomad Rush
-
By RobJ
-
$29.95$21.95By Mevent
Latest Reviews
See what customers are saying about their experience with files.
⭐⭐ 2-Star Review – Hawk Ridge Island Rev627b
The map looks really beautiful, and I remember it from back in the day. We were really looking forward to it becoming available again. That makes it all the more disappointing that there are still several bugs that significantly affect the gameplay experience.
Monument H5:
It is best to avoid using the green map door, as it will cause you to get kicked out of the map. Apparently, part of the tunnel system is missing at this location. A bug like
A good, simple plugin, but not maintained often enough by the developer.
Nice, clean, and simple for items/kits/signals you sell on your server. #Kudos!
The plugin works exactly as advertised and performs perfectly. I’ve never had any issues with it. The developer is very helpful and skilled. Players have a love-hate relationship with this plugin, but we like that it keeps the server population active and engaged. Keep up the good work!
One of the best offline raid protection plugins out there, offering a wide range of customization options. The plugin works perfectly, I’ve never encountered any errors, and the developer is very helpful and responsive. Highly recommended!
Great developer and amazing support! Helped me out with a Pack on the plugin I needed for my new server. The bases look incredible, and I'll definitely be back to buy more packs as the server grows. Highly recommended!
One of the best plugins for integrating PvP and PvE
. The plugin works perfectly, and the developer is extremely helpful, professional, and a great person overall. I've been using his plugins for a long time and have never encountered an issue that couldn't be resolved. Excellent work and outstanding support!
Pluging works as intended and spport for devoper was spot on
CONGRATULATIONS FOR 6,666 DOWNLOADS ON LIGHTS ON!!! It's a great useful free plugin! Thank you!
