Jump to content
Featured framework
Carbon for modern Rust servers
Fast, self-updating, and built for performance with seamless in-game plugin and server management.
1,600+ servers powered by Carbon
$19.99
This plugin allows you to set how many times per day players can raid bases. It is a very straight forward plugin with lots of features to customize it for your server such as scheduled reset times, custom UI, and protection options.     Features: Limit number of raids that players can perform daily Scheduled reset times, even when server is offline Option for "free" raids against your attackers when defending your base Limit sync with teams and clans Assign bonus raid points to individuals Damage thresholds for raids Configurable messages Customizable UI Works with Simple Status Works with Clans Works with protection plugins (configurable) Documentation: A full readme including permissions, command, and config options is available in  this google doc link.   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  🙂
5.0
$49.90
The map is made in a post-apocalyptic style: fog, abandoned scientific bases, anomalous fields, subways, caves and secret bunkers. Players are waiting for dangerous locations, caves, ruined cities and closed doors, behind which you can find valuable resources. The island has become a testing ground for experiments at the Cobalt Research Institute. After the accident at the power reactor, the terrain changed: anomalies appeared, the space became unstable, and research was urgently stopped. Scientists have disappeared, laboratories are empty, technology has gone crazy. Now the island is full of dangers and mysteries. Something continues to work underground, and abnormal zones are growing and being transferred. Those who ventured to explore the area find artifacts and traces of what led to the disaster. Every step here is a choice between prey and death. But the deeper you go, the more you feel that this place is going to disappear or explode... very soon. Features: Prefab Count: ~58к prefabs Size: 4500 A lot of interesting locations to explore Railway Places for the construction of foundations in the form of unusual rocks, caves, landscape and icebergs Custom plugin Map Skinner  (by  Adem) Custom plugin Npc Moving Control  (by  Adem) Custom plugin Emission  (by  Adem) Custom plugin Artifacts (by  Adem) Custom plugin Anomalies (by  Adem) Profile BetterNPC Realistic zombies on the map The atmosphere of the apocalypse This map is constantly supported and updated for the current version of the game with all updates! Description of Plugins: Emission - Once every 2 - 4 hours, a timer message appears and a large-scale change in the weather and effects occurs, radiation begins to spread, the screen shakes, trees fall and the effects of this event appear. Players need to find shelter underground or in their house (the higher the building level, the less radiation damage will be). Commands for plugins: /emissionstart /emissionstop  Anomalies - There are 4 types of Anomalies on the map, they appear after the end of the Emission. 1 anomaly is electrical (damage is inflicted on the player who is inside the anomaly, configured in the config), 2 anomaly is fiery (there are funnels in the radius, if you step on them, flames are released into the air, you can deactivate the anomaly by throwing a stone into the funnel, there is damage to the player), 3 anomaly is a bubble (in the radius of the bubbles breaks, if the player is too close to it, it will be thrown to the side or into the air, damage is caused only by the player falling), 4 anomaly - light (the most dangerous anomaly, when a blue ray appears, you need to turn away from it sharply, otherwise you will be blinded and a lot of damage will be done, it is configured in the config). /spawnanomaly presetName - spawns an anomaly in a random position; /killanomaly - destroys the anomaly closest to the player; /killallanomalies - destroys all anomalies on the map; /spawnanomalymypos presetName - will spawn an anomaly in your position Artifacts - These are stones with some improvements to the player's characteristics, these are increased rates, lack of radiation, increased processing of components (increased extraction of resources from processing), HP recovery (takes away water and food). These artifacts only work in the player's fast slots and have their own HP, which is not repaired. These artifacts can only be found in anomalies with a metal detector in hand. /giveartifact customShortName - give the artifact to yourself giveartifact customShortName userId - give the artifact to the player with the userId Map Skinner - we change this plugin skins on some objects installed on the map, for atmospheric effect. Npc Moving Control - this plugin controls the radius of movement of the NPCs installed in the editor and changes their clothes to random hazmats. These plugins were created for the map as a bonus. When evaluating the map itself, please do not touch on the topic of plugins. The map can work without these plugins.   Custom Monuments: Icarus Cultural Center Zalesye Orbita Station Blocked Tunnel Uranium Mining Unfinished Scanner Yanov Station Hot Runner Cemetery of Onlookers  Loners Cave Radioactive Waste Storage Anomaly Ribs Startup Failure Dead man Mine Supply Depot Dire Thicket Vent Distribution Substation Danger Tunnel Skladovsk Dredger Old Church Secret Bunker Cage Machine Station Repair Factory  interesting places to build a base marked X Shelters for escape from radiation Emission, marked with the letter S Monument Facepunch: Launch Site Missile Silo   Junkyard Harbor 1 and 2 Arctic Research Base Satellite Dish Airfield Bandit Camp Outpost Giant Excavator Pit Water Treatment Military Tunnel The Dome Sewer Branch Ranch Fishing Village 1,2,3  Lighthouse Underwater Lab Railway HQM, Sulfur, Stone Quarry Roadside Monument RadTown Water Well Ziggurat
5.0
Upgrades your furnaces, ovens, refinery, mixing table & etc to beyond. ⭐ Key Features Upgrade each attribute of your furnace; Supports different oven types; It is possible to define default attributes for all ovens on the server; You can set a default value for all base ovens (replacing quicksmelt); You can enable/disable any features you want; Option to keep attributes when removing the furnace; Option to auto split ores; Automatic fuel calc based on the upraded oven attributes; Now BBQ and Campfire can also be improved; Option so that only the furnace owner can upgrade it; Option so that only owner's teammates can upgrade it; A new completely redesigned UI; NEW Supports Mixing Table 🎬 Video Showcase   📜 Permissions furnaceupgrades.use - This is the unique permission. required for all players to upgrade furnaces ⚙️ Configuration 💬 Support
5.0
$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.                  
4.9
sale
$19.99 $14.99
AdminWarn is designed for situations where players clearly violate server rules or require a direct and serious warning. With the latest update, an optional popup warning mode has been added alongside the mandatory acknowledgment GUI. This allows admins to send clean, non-intrusive messages displayed at the top of the screen. News: To avoid disrupting gameplay (such as PvP), you can use: /warnpopup <SteamID> <message> /warnpopupall <message> The core purpose of AdminWarn remains unchanged: forcing players to acknowledge warnings. Each mandatory warning includes a single confirmation button, ensuring the player has read and accepted it. Acknowledgment events are tracked via Discord webhook logs, including whether the warning was confirmed while the player was online or after reconnecting.   AdminWarn is built for manual use only. It is not an automated warning system. All warnings are intentionally sent by admins using commands.   At the same time, the system works intelligently in the background: - Warnings sent to offline players are stored and automatically shown when they next join, even days later. - For online players, warnings remain active until acknowledged, then are automatically cleared. - All data is fully wipe-aware and automatically cleaned on server wipes.   Each warning includes built-in in-game sound effects. No external or custom audio files are used. This is not a chat message. Warnings are delivered as visual UI elements that require acknowledgment or appear as optional popup notifications. Even if a player closes the game, mandatory warnings will reappear on the next login until confirmed. No movement restrictions are applied.   Warnings can be sent via: - RCON - Server console - In-game admin console (F1) 🚀 Performance: AdminWarn is built with an optimized and efficient code structure, making its presence virtually unnoticeable on the server. It runs smoothly during long uptimes and maintains stable hook memory and performance values under normal server conditions. 🔄 Wipe Behavior: - Restarts: Data preserved (approved warnings are auto-deleted for data optimization) - Server wipe: All warning data automatically cleared - No manual cleanup needed (Most of the time, it is not necessary) 🔧 Commands Chat & Rcon: Note: Player names are not unique and may include different alphabets or special characters. To avoid ambiguity, using Steam64ID is strongly recommended when sending warnings. warn <SteamID> <message> warn <PlayerName> <message> warn <SteamID1>,<SteamID2>,<SteamID3> <message> warn <Name1>,<Name2>,<Name3> <message> warnall <message> warnpopup <SteamID> <message> warnpopup <PlayerName> <message> warnpopup <SteamID1>,<SteamID2>,<SteamID3> <message> warnpopup <Name1>,<Name2>,<Name3> <message> warnpopupall <message> 🔐 Permissions Oxide/Carbon oxide.grant group admin adminwarn.admin c.grant group admin adminwarn.admin 📊 Discord Webhook Logging - Player name/steamid and SteamURL - Warning message / Timestamp - Read status (online/after reconnect) - Logs warning sending - Logs individual warning acknowledgements 📁 Config: {   "Warning sound": "assets/prefabs/building/wall.frame.shopfront/effects/metal_transaction_complete.prefab",   "Clear data on wipe": true,   "Discord Webhook URL": "https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks",   "Discord Log Enabled": true,   "Log Global Warnings (warnall)": true,   "Log Warning Sent (single + multi)": true,   "Show Date in GUI": true,   "Show logo in warning GUI": true,   "Logo size (px) — local image should be a square PNG, recommended 75-120": 90,   "Use local images (false = use Web URL below)": true,   "Web image URL for logo (128x128 transparent PNG recommended, used only when Use local images is false)": "",   "Popup duration (seconds)": 10 }  
5.0
Tip4Serv is a complete Rust Webstore and Donation Store solution that allows Rust server owners to sell VIP memberships, kits, permissions, queue priority, subscriptions, virtual currency and more with automatic delivery. Looking for a Tebex Alternative for Rust? https://tip4serv.com helps you create a professional donation store in less than 5 minutes with automatic command execution, Discord integration and support for more than 25 payment methods. Perfect For Selling VIP Memberships Queue Priority Kits Item Bundles Permissions Economics Money Server Rewards Points Subscriptions Battle Passes Donation Packages Cosmetics Supported Games   Rust   Garry's Mod FiveM Minecraft Discord ARK and more Starter Plan (Only 5% Fee) Unlimited Products & Categories Unlimited Rust Servers & Commands Subscription Products Discord Roles & Webhooks Dark & Light Mode More Than 25 Payment Methods Managers & Staff Access Sales Statistics Coupons & Discounts Loyalty Points System Custom Domain Name Resend Orders Tax Compliance Free SSL Certificate DDoS Protection & Mitigation Fast Order Delivery No Advertisements PRO Features (21 Days Free Trial) Includes all Starter features plus: Reduced Fees From 5.0% To 3.8% Gift Cards Support Multiple Dynamic Themes Custom Fields & Command Integration Product Gallery, Videos & GIF Support Top Customers Widget Related Products Widget Built-In Product Search Bar Advanced UI Theme Editor Custom CSS Editor Steam & Discord Account Linking Customer Avatars Store available in 15 languages English, Danish, Dutch, French, German, Hungarian, Italian, Norwegian, Polish, Portuguese, Romanian, Russian, Spanish, Swedish and Turkish. Several payment methods Here are the payment methods you can offer your players: Card, Paypal, Venmo, Google Pay, Ideal, Giropay, Bancontact, Sofort, My Bank, Sepa, EPS, BACS, Multibanco, BECS, Przelexy24, BOLETO, OXXO, Mercado Pago. Installation via Plugin   Open an account at https://tip4serv.com/, follow the instructions and add a Rust server. Drag and drop  tip4serv.cs  into the oxide  plugins  directory on your Rust server Reload the plugin by typing  oxide.reload Tip4serv  in your Rust server console. Set  key  to your tip4serv API key in the config file  tip4serv.json. Reload plugin by typing  oxide.reload Tip4serv  in console. You should get this message:  Server has been successfully connected Installation via RCON Open an account at https://tip4serv.com/, follow the instructions and add a Rust server. Enter your server IP     Enter your server RCON port Enter your server RCON password You should get this message:  Server has been successfully connected Setting up commands on Tip4Serv Before setting up your commands on Tip4serv.com, you should know that command work in your server's console (not ingame as an admin). Here are some sample commands you can use in the products configuration:  MY PRODUCTS. But you can use any plugin commands you want. Give a group or permission Add a player to a group previously created with oxide.group add [group-name]: oxide.usergroup add {steam_id} group-name Remove a player from a group: oxide.usergroup remove {steam_id} group-name Give a permission to a player: oxide.grant user {steam_id} permission-name Remove a permission from a player: oxide.revoke user {steam_id} permission-name Give an item to a player inventory with steam_id (advised) IMPORTANT: Please select the option [Player must be online] in your product editor inventory.giveto {steam_id} item-short-name quantity Example:  inventory.giveto {steam_id} scientist 5 Give an item to a player inventory with Give plugin IMPORTANT: Please select the option [Player must be online] in your product editor giveto {steam_id} item-short-name quantity Example:  giveto {steam_id} fun.guitar 1 Give a kit to a player with Give plugin: givekitto {steam_id} kit-name Give money Give money to a player with  Economics plugin: deposit {steam_id} amount Give points Give points to a player with  Server Rewards plugin: sr add {rust_username} amount Quantity multiplier You can also multiply the quantity choosen by the customer like this: {quantity*50} Note: You must first activate the **Allow quantity choice** option in your product. Use this command on Tip4serv if you want to sell bundles of $200 with economics plugin: deposit {steam_id} {quantity*200} This will run in your server console after a purchase if the player buys product 4 times: deposit 76561198181797231 800 Store examples     https://tip4serv.com/demos   Need Help ? Read the Tip4Serv documentation here  https://docs.tip4serv.com Any issues feel free to contact us here  https://tip4serv.com/contact  
5.0
$29.99
Contracts allows you to create versatile quests/missions that rotate periodically. Each contract can have one or more objectives, with multiple objective types to choose from. It doesn't stop there: each objective can be augmented with objective conditions, which add additional requirements in order to progress it. This allows you to define versatile and unique quests: You could have quests as simple as "Kill 5 scientists"... or a little bit more challenging quests like "Kill 5 scientists with an assault rifle" or have crazy requirements like "Kill 5 scientists, with an assault rifle OR an MP5, between 25-50m away, while being below 20 HP, while wearing a bandana and riding a horse". The possibilities are endless! Features Highly customizable quests/missions to help you build your unique set of goals and control difficulty beyond just progression amounts required. Control the flow and order of how contract objectives can be completed. 10+ objective types to vary gameplay across your server 10+ objective condition types to add as many layers of challenge that you want to your objectives Customizable categories and their rotation period, with the possibility to disable rotations altogether and manually control when contracts rotate. Clean UI for browsing and tracking contracts. HUD to track contracts while playing. Permission based features for your VIP members: Max active contracts globally, Max active contracts per category and Max HUD pins. Event logging with JSONL format support Powerful Web editor to make editing your configs a breeze and viewing insightful charts on your JSONL logs Motivation The motivation behind the plugin is to give players an evolving gameplay experience on your server with an urgency aspect, with the goal of improving player engagement. Instead of making hundreds of quests available from day 1 and achievable anytime during the wipe, I wanted players to have a sense of urgency and achievement when completing quests. I also didn't want to overwhelm players with hundreds of quests to choose from. Contracts solves this by letting you define any number of contracts and assign them to timed categories that will rotate through a portion of contracts on the period you set them to. The more contracts you have, the more variety you add, without adding the mental burden of choice. Included While you can discard and customize the contracts, categories and presets yourself, the plugin comes with: 4 categories: Hourly (14 contracts), Daily (16 contracts), Weekly (14 contracts) and Wipe (6) 50 contracts designed to touch just about every objective types and objective conditions available. These contracts' difficulty were designed for the category they were assigned to. Permissions All permissions listed here are the default ones. You can configure them in the config file of the plugin. contracts.use - allows the player to use Contracts (open the menu, accept/complete contracts, etc.) contracts.admin - allows the player to run admin commands (manually rotate categories, reset data, view cache debug info, etc.) Max Active Contracts - Maximum amount of contracts the player can have at a time. Largest amount is used. (-1 for unlimited) contracts.use - 3 contracts.vip - 5 contracts.admin - -1 Max Tracked Contracts - Maximum amount of contracts the player can pin in the HUD. Largest amount is used. (-1 for unlimited. 0 disables the HUD) contracts.use - 2 contracts.vip - 5 contracts.admin - -1 Chat Commands Note: While the "contracts" command is the default, it can be configured to be different name(s) in the config file! /contracts - opens the contracts menu /contracts hud - toggles the HUD /contracts scale <0.5 - 1.0> - adjusts the plugin's UI element's scale. (default: 1.0)  This option is designed to be set to the same as the player's Rust UI scale, configurable under the Settings > User Interface menu. No action is required for players who left Rust default UI scale (1.0), but players with a smaller scale will have their initial UI much smaller than intended. Unfortunately, the plugin cannot read the player's Rust UI scale, so it will need to be set manually. You should inform your players about this so they get the best UI! Console Commands contracts.rotate_category <category_id> - trigger rotation for the specified category ID. contracts.reset_all_progress - clears all player progress data Debugging commands contracts.debug.refresh.all - refresh all caches (clears and rebuilds them). This is normally only done on category rotation. contracts.debug.cache.all - Print all caches info. Replace "all" with individual cache names: attackers, card_swipe, craft, damage, kill, loot, gather, heal, fishing, crate_hack, plant, harvest, cloning contracts.debug.hooks - Print the subscription status of hooks (enabled or disabled, depending on if any objective needs them) contracts.debug.tainted_items - Print information about item taints (for the Loot objectives) contracts.debug.clear_tainted_items - Clears all taints from the loot cache contracts.debug.transfers - Print information about item transfers (for the Loot objectives). Normally, there should be zero transfers printed most of the time. Transfers are only meant to track items movement between containers (where they start and where they end) and then automatically get cleaned up. contracts.debug.clear_transfers - Clears the transfers cache Configuration Contracts has 1 config file and 3 data files that you can edit for your needs, though the plugin comes with a generous amount of pre-defined contracts (generated when you first load the plugin). oxide/config/Contracts.json Command - The commands that can be used to interact with the plugin Permissions - Set the permissions for features Use Contracts Features - Permission required to use Contracts, open the menu, accept contracts and complete them. Admin - Permission required to use admin commands Max Active Contracts - Maximum amount of contracts the player can have at a time. Largest amount is used. (-1 for unlimited) Max Tracked Contracts (HUD) - Maximum amount of contracts the player can pin in the HUD. Largest amount is used. (-1 for unlimited. 0 disables the HUD) Rewards Show Ineligible Rewards - When true, rewards that the player is not eligible to get upon completion are dimmed. When false, ineligible rewards are hidden from the menu. Conditions Condition Ordering - One of "Optimized" (default), "None" or "RootOptimized"  Optimized - The plugin will re-order conditions to execute from less computationally expensive to most None - Condition ordering are kept as defined RootOptimized - Only conditions at the first level are optimized, not the nested ones in AND and OR conditions HUD Anchor Min - The HUD's bottom left anchor position (see Oxide UI position) Anchor Max - The HUD's top right anchor position (see Oxide UI position) Collapse Direction - One of "TopLeft" (default), "TopRight", "BottomLeft" or "BottomRight" TopLeft = Header is above tracked contracts. Toggle button is on the left. TopRight = Header is above tracked contracts. Toggle button is on the right. BottomLeft = Header is below tracked contracts. Toggle button is on the left. BottomRight = Header is below tracked contracts. Toggle button is on the right. Logging - collect logs on specified events (stored in oxide/logs/Contracts/<date> or carbon/logs/Contracts/<date>) Mode - One of "None" (default), "JSONL" or "Text" None = Disable logging JSONL = Logs events in a structured format. JSONL is more efficient for large datasets than JSON because it doesn't require you to load the entire file into memory! Text = Human readable text lines that you can configure with placeholders. Can also be used to create your own JSONL format, if the one provided is not preferred. Retention Days - Log folders past this age will be deleted at plugin load time. Set to 0 to disable and never delete logs (not recommended). Contract Accepted - occurs when the player accepts a contract Enabled - whether or not to collect logs for this event Format (Text Mode) - Log format to use when the logging mode is "Text". See Logging section below for {placeholders}. Contract Completed - occurs when the player completes a contract. Contract Claimed - occurs when the player claims the rewards on a contract.  Contract Abandoned - occurs when the player abandons a contract. Reward Given - occurs once for each reward given when the player claims the contract Rotation Started - occurs when a category rotates its contracts Objective Completed - occurs when the player completes a contract objective Version - The version of the config. Matches the plugin's version. Default Configuration { "Command": ["contracts"], "Permissions": { "Use Contracts Features": "contracts.use", "Admin": "contracts.admin", "Max Active Contracts": { "contracts.use": 3, "contracts.vip": 5, "contracts.admin": -1 }, "Max Tracked Contracts (HUD)": { "contracts.use": 2, "contracts.vip": 5, "contracts.admin": -1 } }, "Rewards": { "Show Ineligible Rewards": true }, "Conditions": { "Condition Ordering": "Optimized" }, "HUD": { "Anchor Min": "0.0 0.60", "Anchor Max": "0.135 0.87", "Collapse Direction": "TopLeft" }, "Logging": { "Mode": "None", "Retention Days": 30, "Contract Accepted": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] {player_name} ({player_id}) accepted contract {contract_name} ({contract_id}) in {category_name} ({category_id})" }, "Contract Completed": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] {player_name} ({player_id}) completed contract {contract_name} ({contract_id}) in {category_name} ({category_id}) in {duration}s" }, "Contract Claimed": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] {player_name} ({player_id}) claimed contract {contract_name} ({contract_id}) in {category_name} ({category_id})" }, "Contract Abandoned": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] {player_name} ({player_id}) abandoned contract {contract_name} ({contract_id}) in {category_name} ({category_id})" }, "Reward Given": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] {player_name} ({player_id}) received {reward_type} reward: {reward_detail} from contract {contract_name} ({contract_id})" }, "Rotation Started": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] Category {category_name} ({category_id}) rotated. Contracts: {contract_ids}." }, "Objective Completed": { "Enabled": false, "Format (Text Mode)": "[{timestamp_local}] {player_name} ({player_id}) completed objective {objective_name} (#{objective_id}) in contract {contract_name} ({contract_id})" } }, "Version": { "Major": 0, "Minor": 5, "Patch": 0 } } Contracts Website The data files that follow this section don't have to be manually edited! Head to the Web Editor at https://www.rustcontracts.com , drop your data configs and start editing your configs in a convenient UI. The quality of the editor and its extensive features are on par with the quality of the plugin!  Website Features Convenient UI: Edit all your contracts, categories and presets in a Web-based UI. No manual JSON editing required. Rich Editing Experience: Validation, undo/redo from anywhere, ID refactoring, autocomplete fields, optional raw JSON editing and more QoL features. Data Persistence: Save snapshots of your configs and restore or download them at a later time (data saved in your browser). AI Generated Contracts: (experimental) Use OpenAI, Google or Anthropic's models to generate entire contracts from a prompt. (BYOK) Command Palette: Easily navigate through contracts, categories, presets from anywhere in the editor through the command palette. Stats: View your JSONL logs in pre-made charts to gain insights into your contracts, such as pacing and reward balance. Data Files Contracts has 3 types of data files meant to be configured by you (other data files are generated by the plugin, such as player progress, but not meant to be edited): Presets, Contracts and Categories. oxide/data/Contracts/preset_data.json Presets are lists of strings you can define to easily reference them in contracts. E.g: Instead of defining all the types of scientists for a kill contract, you can reference them with "@scientists" presets - key/value pair where the key is the name of the preset and the value is a list of strings that the preset resolves to. You can mention other presets in a preset, but they must not have a circular reference version - The version of the config. Matches the plugin's version. Example presets: { "presets": { "scientists": [ "scientist2.heavy", "scientist2", "scientist2.shotgun", "scientistnpc_arena", "scientistnpc_bradley", "scientistnpc_bradley_heavy", "scientistnpc_cargo", "scientistnpc_cargo_turret_any", "scientistnpc_cargo_turret_lr300", "scientistnpc_ch47_gunner", "scientistnpc_excavator", "scientistnpc_full_any", "scientistnpc_full_lr300", "scientistnpc_full_mp5", "scientistnpc_full_pistol", "scientistnpc_full_shotgun", "scientistnpc_heavy", "scientistnpc_junkpile_pistol", "scientistnpc_oilrig", "scientistnpc_outbreak", "scientistnpc_patrol", "scientistnpc_patrol_arctic", "scientistnpc_peacekeeper", "scientistnpc_ptboat", "scientistnpc_rhib", "scientistnpc_roam", "scientistnpc_roam_nvg_variant", "scientistnpc_roamtethered" ], "ballista": [ "ballista.static", "ballista.mounted" ], }, "version": { "Major": 0, "Minor": 2, "Patch": 0 } } oxide/data/Contracts/contracts_data.json This file holds all your contract definitions. contracts - key/value pair where the key is the contract ID and the value is the contract definition title - The title of the contract description - Optional description for the contract progressionType - One of "Independant" (default), "Sequential" or "Progressive" Independant - objectives can be completed in any order simultaneously Sequential - objectives must be completed in order from first to last. The locked objectives are visible. Progressive - objectives must be completed in order from first to last. The locked objectives are hidden. objectives - key/value pair where the key is the objective ID and the value is the objective definition title - The objective title description - Optional objective description conditions - key/value pair where the key is the condition ID and the value is the condition definition type - The type of the condition (see Objective Conditions below) ... more fields depending on the objective condition type (see Objective Conditions below) type - Type of the objective (see Objective Types below) ... more fields depending on the objective type (see Objective Types below) rewards - key/value pair where the key is the reward ID and the value is the reward defintion title - Optional title for the reward (empty titles will use default names) description - Optional description for the reward eligiblePermissions - list of strings of permissions allowed to claim this reward type - Type of the reward (see Contract Rewards below) ... more fields depending on the reward type (see Contract Rewards below) version - The version of the config. Matches the plugin's version. oxide/data/Contracts/contract_category_data.json This file holds all your contract categories definitions. categories - key/value pair where the key is the category ID and the value is the category definition name - The category name description - Optional category description contractIds - List of all contract IDs defined earlier that are part of the category and will be rotated periodically rotation duration - Time in seconds that the rotation lasts (-1 = never rotates) minContractsAmount - minimum number of contracts to include in the rotation maxContractsAmount - maximum number of contracts to include in the rotation maxActiveContracts - key/value pair where the key is the permission name and the value is a number indicating the maximum amount of contracts that can be active in this category for a given player (-1 for unlimited. defaults to -1). This works in conjunction to the config Max Active Contracts parameter. e.g: "contracts.use": 1 - only 1 contract in this category can be active at a time version - The version of the config. Matches the plugin's version. Objective Types Contracts currently support the following objective types, with additional types possible in the future! Objective types are intentionally kept simple with minimal configuration so that you can create more complex objectives with Objective Conditions. This section also details the additional fields to be added in the objectives definition of the contract (where it says "... more fields depending on the objective type"). ☠️ Kill Requires the player to kill one of the specified entities. Configuration (excludes common objective fields): type - Always "Kill" amountRequired - An integer value greater than 0 entities - list of entities targeted by the objective. Can include presets. Example (excludes common objective fields): { "type": "Kill", "amountRequired": 50, "entities": ["wolf", "boar", "@scientists"] }  💔 Damage Requires the player to damage one of the specified entities. Configuration (excludes common objective fields): type - Always "Damage" amountRequired - An integer value greater than 0 entities - list of entities targeted by the objective. Can include presets. Example (excludes common objective fields): { "type": "Damage", "amountRequired": 5000, "entities": ["wolf", "boar", "@scientists"] }  🛠️ Craft Requires the player to craft one of the specified items. Configuration (excludes common objective fields): type - Always "Craft" amountRequired - An integer value greater than 0 items - list of items that count toward the objective's progression. Can include presets. Example (excludes common objective fields): { "type": "Craft", "amountRequired": 50, "items": ["bandage", "@firearms"] }  🪓 Gather Requires the player to gather one of the specified items. Configuration (excludes common objective fields): type - Always "Gather" amountRequired - An integer value greater than 0 items - list of items received from a gathered dispenser that count towards the objective's progress. Can include presets. Example (excludes common objective fields): { "type": "Gather", "amountRequired": 500, "entities": ["wood", "metal.ore", "@ores"] }  💳 Card Swipe Requires the player to swipe cards of specified access levels. Configuration (excludes common objective fields): type - Always "CardSwipe" amountRequired - An integer value greater than 0 accessLevels - list of access levels that count towards the objective's progress. Valid access levels are 1, 2 or 3 1 = Green | 2 = Blue | 3 = Red Example (excludes common objective fields): { "type": "CardSwipe", "amountRequired": 3, "accessLevels": [1, 3] }  🔟 Crate Hack Requires the player to hack hackable crates. Configuration (excludes common objective fields): type - Always "CrateHack" amountRequired - An integer value greater than 0 Example (excludes common objective fields): { "type": "CrateHack", "amountRequired": 50 }  🐟 Fishing Requires the player to catch any or specified types of fish. Configuration (excludes common objective fields): type - Always "Fishing" amountRequired - An integer value greater than 0 fish - List of fishes that count towards the objective's progress. Leave empty for any. Can include presets. bait - List of baits used to fish that count towards the objective's progress. Leave empty for any. Can include presets. Example (excludes common objective fields): { "type": "Fishing", "amountRequired": 50, "fish": ["fish.salmon", "@rarefish"], "bait": ["grub", "@rawmeat"] }  ❤️‍🩹 Heal Requires the player to heal themselves and/or others by a specified amount of health Configuration (excludes common objective fields): type - Always "Heal" amountRequired - An integer value greater than 0 items - List of healing items that can be used to count towards the objective's progress. Leave empty for any. Can include presets. target - One of Any, Self or Others Any = Heal anyone | Self = Heal self | Others = Heal others Example (excludes common objective fields): { "type": "Heal", "amountRequired": 100, "items": ["bandage", "@advancedheals"], "target": "Self" } 📦 Turn In Requires the player to give specified items to the plugin. Turned in items are removed from the inventory. Configuration (excludes common objective fields): type - Always "TurnIn" amountRequired - An integer value greater than 0 items - List of items that count towards the objective's progress. Can include presets. Example (excludes common objective fields): { "type": "TurnIn", "amountRequired": 100, "items": ["scrap", "@components"] } 🔎 Loot Requires the player to loot the specified items from the world. Looted items are not removed from the inventory, unlike turn in objectives. Configuration (excludes common objective fields): type - Always "Loot" amountRequired - An integer value greater than 0 items - List of items that count towards the objective's progress. Can include presets. Example (excludes common objective fields): { "type": "Loot", "amountRequired": 100, "items": ["scrap", "@components"] } 🌱 Plant Requires the player to plant any or specified seeds Configuration (excludes common objective fields): type - Always "Plant" amountRequired - An integer value greater than 0 items - List of seed shortnames. Leave empty for any seed. Example (excludes common objective fields): { "type": "Plant", "amountRequired": 100, "items": ["seed.corn", "@berries_seed"] } 🌾 Harvest Requires the player to harvest any or specified plants. Configuration (excludes common objective fields): type - Always "Harvest" amountRequired - An integer value greater than 0 items - List of seed shortnames. Leave empty for any seed. source - One of Any, World or Planted Any = Any plant | World = Natural plants | Planted = Player-planted plants Example (excludes common objective fields): { "type": "Harvest", "amountRequired": 100, "items": ["mushroom", "@berries"], "source": "World" } 🍃 Cloning Requires the player to clone any or specified plants. Configuration (excludes common objective fields): type - Always "Cloning" amountRequired - An integer value greater than 0 items - List of clone shortnames to get. Leave empty for any clone. Example (excludes common objective fields): { "type": "Cloning", "amountRequired": 100, "items": ["clone.hemp", "@berries_clone"] }   Objective Conditions Objective types on their own do not provide much configuration for variety by design. Objective conditions are what makes your objectives so customizable with many combination of conditions that can be applied on top of objective types. They are what makes your objectives challenging and versatile. This section also details the additional fields to be added in the objective conditions definition of the contract (where it says "... more fields depending on the objective condition type"). 🔫 Weapon Requires the player to use a specific weapon during an attack on an entity. Configuration (excludes common objective condition fields): type - Always "Weapon" weapon - List of weapons that satisfy the condition. Can include presets. Example (excludes common objective condition fields): { "type": "Weapon", "items": ["grenade.molotov", "@primitiveweapons"] } 🌙 Time of Day Requires the player to progress the objective between set times. Note: the plugin supports day wrapping. If your start time is "20:00" and end time is "06:00", then the plugin will understand it's between 8PM - 6AM. Configuration (excludes common objective condition fields): type - Always "TimeOfDay" startTime - The minimum time of day. 24h format. e.g: "21:32" endTime - The maximum time of day. 24h format. e.g: "06:00" Example (excludes common objective condition fields): { "type": "TimeOfDay", "startTime": "20:00", "endTime": "06:00" } 👕 Player Wear Requires the player to wear specific clothing Configuration (excludes common objective condition fields): type - Always "PlayerWear" items - List of wearable items that satisfy the condition. Can include presets. requireAll - true = requires all items to be worn. false = require some items to be worn. requireNaked - true = requires the player to wear nothing (items should be empty (i.e: [ ] ) ). false = use items list to determine the condition. Example (excludes common objective condition fields): { "type": "PlayerWear", "items": ["bandana", "@woodarmor"], "requireAll": false, "requireNaked": false } 🐎 Player Mount Requires the player to be mounted on specific entities (vehicles, horse, chairs, etc.) Configuration (excludes common objective condition fields): type - Always "PlayerMount" mounts - List of mount entities that count satisfy the condition. Can include presets. Example (excludes common objective condition fields): { "type": "PlayerMount", "mounts": ["ridablehorse", "@chairs"] } ♥️ Player Health Requires the player to be between specific amount of HP. Configuration (excludes common objective condition fields): type - Always "PlayerHealth" minHealth - Minimum amount of health required to satisfy the condition. -1.0 to ignore. maxHealth - Maximum amount of health required to satisfy the condition. -1.0 to ignore. Example (excludes common objective condition fields): { "type": "PlayerHealth", "minHealth": -1.0, "maxHealth": 30.0 } 💥 Min Damage Ratio Requires the player to have done a minimum amount of damage when compared to the total damage done with others. Currently, this is mostly only useful for the Kill objective, though it could be attached to a Damage objective if you have the need for it... Configuration (excludes common objective condition fields): type - Always "MinDamageRatio" minDamageRatio - The minimum ratio of damage that the player needs to have on the victim to satisfy the condition. Between 0.0 and 1.0. Example (excludes common objective condition fields): { "type": "MinDamageRatio", "minDamageRatio": 0.5 } ↔️ Attack Distance Requires the player's attack to occur between specified distance in meters. Configuration (excludes common objective condition fields): type - Always "AttackDistance" minDistance - Minimum distance required to satisfy the condition. -1.0 to ignore. maxDistance - Maximum distance required to satisfy the condition. -1.0 to ignore. Example (excludes common objective condition fields): { "type": "AttackDistance", "minDistance": 50.0, "maxDistance": -1 } && And Requires the player to satisfy all listed conditions inside the AND operator condition. Note that this condition is useless when used at the top level of your conditions, because multiple conditions are already evaluated as an AND condition (i.e: all conditions within the objective's "conditions" list must be satisfied). It is only useful when placed inside a Not or an Or condition. Configuration (excludes common objective condition fields): type - Always "And" conditions - key/value pair where the key is the condition ID and the value is a condition that needs to be satisfied. All conditions inside the And condition need to pass to satisfy this condition. Example (excludes common objective condition fields): { "type": "And", "conditions" { "and_weapon_condition": { "type": "Weapon", "weapon": ["rifle.ak"] }, "and_attackdistance_condition": { "type": "AttackDistance", "minDistance": -1.0, "maxDistance": 10.0 } } }  || Or Requires the player to satisfy any of the listed conditions inside the OR operator condition. Configuration (excludes common objective condition fields): type - Always "Or" conditions - key/value pair where the key is the condition ID and the value is a condition that needs to be satisfied. Any condition inside the Or condition need to pass to satisfy this condition. Example (excludes common objective condition fields): { "type": "Or", "conditions" { "or_attackdistance1_condition": { "type": "AttackDistance", "minDistance": -1.0, "maxDistance": 10.0 }, "or_attackdistance2_condition": { "type": "AttackDistance", "minDistance": 100.0, "maxDistance": -1.0 } } } 🚫 Not Requires the player to NOT satisfy the specified condition. (inverses the satisfaction requirement) Configuration (excludes common objective condition fields): type - Always "Not" condition - The condition to NOT satisfy Example (excludes common objective condition fields): { "type": "Not", "condition" { "type": "Weapon", "weapon": ["@firearms"] } }   Contract Rewards The following rewards can be distributed by the plugin. This section also details the additional fields to be added in the reward definition of the contract (where it says "... more fields depending on the reward type"). 🏷️ Item Grants the player a specified quantity of an item. Configuration (excludes common reward fields): type - Always "Item" item - The item shortname quantity - An integer value greater than 0 Example (excludes common reward fields): { "type": "Item", "item": "scrap", "quantity": 50 } 💲 Economics Grants the player an amount of money. Requires the Economics plugin. Configuration (excludes common reward fields): type - Always "Economics" amount - A decimal value greater than 0.0 Example (excludes common reward fields): { "type": "Economics", "amount": 50.50 } 🎁 Server RP Grants the player an amount of server rewards points. Requires the Server Rewards plugin. Configuration (excludes common reward fields): type - Always "ServerRewards" amount - An integer value greater than 0 Example (excludes common reward fields): { "type": "ServerRewards", "amount": 5 } ⌘ Command Runs a parameterized command. Useful when the other rewards are not suitable and you need something custom. Technically, all above rewards can be achieved through a command reward. Configuration (excludes common reward fields): type - Always "Command" command - The command to run on reward claim. You can add the following {placeholders} and the plugin will fill them during distribution: {playerId} - The player's Steam ID {playerName} - The player's Steam name {qPlayerName} - The player's Steam name wrapped in "quotes" {playerX} - The player's current X position, rounded to the nearest integer {playerY} - The player's current Y position, rounded to the nearest integer {playerZ} - The player's current Z position, rounded to the nearest integer Example (excludes common reward fields): { "type": "Command", "command": "say {playerName} is the top fisherman!" }   Logging When using Text formatting for logging, you can use {placeholders} to inject data into your logs. Each event type has their own placeholders. The following placeholders are always available: timestamp_utc - yyyy-MM-dd HH:mm:ss timestamp using the UTC timezone timestamp_local - yyyy-MM-dd HH:mm:ss timestamp using your server's local timezone timestamp_iso - timestamp using the ISO format (same format used in JSONL) time_utc - HH:mm:ss timestamp using the UTC timezone time_local - HH:mm:ss timestamp using your server's local timezone The following are additional fields per event type: Contract Abandoned player_id category_id contract_id player_name category_name contract_name Contract Accepted player_id category_id contract_id player_name category_name contract_name Contract Claimed player_id category_id contract_id player_name category_name contract_name Contract Completed player_id category_id contract_id player_name category_name contract_name duration - the amount of time (in seconds) that passed since the player accepted the contract Contract Expired player_id category_id contract_id player_name category_name contract_name duration - the amount of time (in seconds) that passed since the player accepted the contract Objective Completed objective_type player_id category_id contract_id objective_id player_name category_name contract_name objective_name Reward Given reward_type player_id category_id contract_id reward_id player_name category_name contract_name reward_name reward_detail - e.g: scraps x50 ; command ; $1000 ; 10 RP amount - always 1 for commands Rotation Started category_id contract_ids - comma separated list of contract IDs category_name API This plugin does not currently expose an API. Let me know what you'd like to see in a future implementation! Discord Join the official Discord server for support, announcements and more! https://discord.rustcontracts.com
5.0
Custom Smelt Item Custom Smelt Item is an all-in-one plugin that allows you to add smeltable items, fuel items, and freely set the processing speed of each furnace. Create a unique gameplay experience with new smelting recipes, fuel items, and smelting speed adjustments! Compatible with Oxide. Installing this mod will change the smelting system from the vanilla version.                                   ⚠️Note This data includes "Custom Smelt Item" and "Custom Smelt Item Experimental." Please install only one of them. "Custom Smelt Item" functions as a stable version, while "Custom Smelt Item Experimental" functions as a Experimental version. "Custom Smelt Item Experimental" allows you to set additional foods, but please make sure you understand how to use this mod before using it. If there are many reports of bugs caused by incorrect use, we will discontinue releasing the Experimental version. Custom Smelt Item Experimental will turn off the visuals of food places in campfires, etc. Read below for instructions on how to use it.     ■ Custom Smelting Items - Set any item to be smelted - Freely configure input/output items - Set processing time for each item - Set output amount per processing - Support for skinned items (SkinID) - Custom name settings for output items - Item type classification for each furnace type (ore, oil) ■ Custom Fuel System - Add any item as fuel - Set burn time for each fuel - Set by-product output (e.g., wood → charcoal) - Adjust by-product drop rate - Support for skinned fuel items ■ Furnace Speed Multiplier Individual speed settings for each furnace type(Custom Smelt Item) - Furnace - Legacy Furnace - Large Furnace - Electric Furnace - Small Oil Refinery Notice : The speed cannot be adjusted for any other types. The speed for all other types is set to 1. This setting is to adjust the interaction between fuel and cooking time. (Custom Smelt Item Only)                                   You can fully customize the config, adding refined items, fuel items, refinement speed, and more. *Please do not delete default items from the settings.   Custom Smelting Item { "Smelting Patterns": [ { "ItemType": "oil", ///ore" (for furnaces) or "oil" (for refineries) "InputItem": "crude.oil", ///Input item short name "InputItemSkinId": 0, ///Input item skin ID "OutputItem": "lowgradefuel", ///Output item short name "OutputItemSkinId": 0, ///Output item skin ID "OutputItemName": null, ///Custom display name for the output item (null for default) "RequiredTime": 30, ///Smelting time (seconds) "OutputAmountPerProcess": 3 ///Output amount per 1 }, { "ItemType": "oil", "InputItem": "diesel_barrel", "InputItemSkinId": 0, "OutputItem": "lowgradefuel", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 180, "OutputAmountPerProcess": 150 }, { "ItemType": "ore", "InputItem": "metal.ore", "InputItemSkinId": 0, "OutputItem": "metal.fragments", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 10, "OutputAmountPerProcess": 1 }, { "ItemType": "ore", "InputItem": "sulfur.ore", "InputItemSkinId": 0, "OutputItem": "sulfur", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 7, "OutputAmountPerProcess": 1 }, { "ItemType": "ore", "InputItem": "hq.metal.ore", "InputItemSkinId": 0, "OutputItem": "metal.refined", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 20, "OutputAmountPerProcess": 1 }, { "ItemType": "ore", "InputItem": "can.tuna.empty", "InputItemSkinId": 0, "OutputItem": "metal.fragments", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 20, "OutputAmountPerProcess": 10 }, { "ItemType": "ore", "InputItem": "can.beans.empty", "InputItemSkinId": 0, "OutputItem": "metal.fragments", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 25, "OutputAmountPerProcess": 15 }, { "ItemType": "ore", "InputItem": "honeycomb", "InputItemSkinId": 0, "OutputItem": "honey", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 3, "OutputAmountPerProcess": 1 }, { "ItemType": "ore", "InputItem": "techparts", "InputItemSkinId": 0, "OutputItem": "metal.refined", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 120, "OutputAmountPerProcess": 10 }, { "ItemType": "ore", "InputItem": "sheetmetal", "InputItemSkinId": 0, "OutputItem": "metal.fragments", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 180, "OutputAmountPerProcess": 150 }, { "ItemType": "ore", "InputItem": "scrap", "InputItemSkinId": 0, "OutputItem": "metal.fragments", "OutputItemSkinId": 0, "OutputItemName": null, "RequiredTime": 15, "OutputAmountPerProcess": 10 } ], "Fuel Patterns": [ { "FuelInputItem": "wood", ///Fuel item short name "FuelInputItemSkinId": 0, ///Fuel item skin ID "FuelOutputItem": "charcoal", ///By-product item (null if none) "FuelOutputItemSkinId": 0, ///By-product skin ID (default is 0) "FuelOutputItemName": null, ///Custom by-product Display name "FuelOutputAmountPerProcess": 1, ///By-product amount per fuel consumed "FuelOutputChance": 0.7, ///By-product generation probability (0.0-1.0) "FuelBurnTime": 10 ///Burn time per fuel (seconds) }, { "FuelInputItem": "lowgradefuel", "FuelInputItemSkinId": 0, "FuelOutputItem": null, "FuelOutputItemSkinId": 0, "FuelOutputItemName": null, "FuelOutputAmountPerProcess": 0, "FuelOutputChance": 0.0, "FuelBurnTime": 80 }, { "FuelInputItem": "coal", "FuelInputItemSkinId": 0, "FuelOutputItem": null, "FuelOutputItemSkinId": 0, "FuelOutputItemName": null, "FuelOutputAmountPerProcess": 0, "FuelOutputChance": 0.0, "FuelBurnTime": 180 }, { "FuelInputItem": "charcoal", "FuelInputItemSkinId": 0, "FuelOutputItem": null, "FuelOutputItemSkinId": 0, "FuelOutputItemName": null, "FuelOutputAmountPerProcess": 0, "FuelOutputChance": 0.0, "FuelBurnTime": 60 }, { "FuelInputItem": "cloth", "FuelInputItemSkinId": 0, "FuelOutputItem": null, "FuelOutputItemSkinId": 0, "FuelOutputItemName": null, "FuelOutputAmountPerProcess": 0, "FuelOutputChance": 0.0, "FuelBurnTime": 30 }, { "FuelInputItem": "plantfiber", "FuelInputItemSkinId": 0, "FuelOutputItem": null, "FuelOutputItemSkinId": 0, "FuelOutputItemName": null, "FuelOutputAmountPerProcess": 0, "FuelOutputChance": 0.0, "FuelBurnTime": 120 } ], "Oven Speed Multipliers": { ///Furnace Smelt Speed "Furnace": 1.0, "Legacy Furnace": 1.0, "Large Furnace": 2.0, "Electric Furnace": 2.0, "Small Oil Refinery": 3.0 } }   Custom Smelt Item Experimental { "Can Cook In Furnace": false, ///Can food be cooked in a furnace? "Smelting Patterns": [ { { "ItemType": "food", ///"ore" or "oil" or "food" "InputItem": "mushroom", "InputItemSkinId": 0, "OutputItem": "apple", "OutputItemSkinId": 3347673417, "OutputItemName": "Cooked Mushroom", "RequiredTime": 30, "OutputAmountPerProcess": 1 }, { "ItemType": "food", "InputItem": "seed.corn", "InputItemSkinId": 0, "OutputItem": "apple", "OutputItemSkinId": 3154577332, "OutputItemName": "Popcorn", "RequiredTime": 30, "OutputAmountPerProcess": 1 } ... ], "Fuel Patterns": [ { "FuelInputItem": "wood", "FuelInputItemSkinId": 0, "FuelOutputItem": "charcoal", "FuelOutputItemSkinId": 0, "FuelOutputItemName": null, "FuelOutputAmountPerProcess": 1, "FuelOutputChance": 0.7, "FuelBurnTime": 10 }, ... ], "Oven Speed Multipliers": { "Furnace": 1.0, "Legacy Furnace": 1.0, "Large Furnace": 2.0, "Camp Fire": 1.0, "Cursed Cauldron": 1.0, "Skull Fire Pit": 1.0, "Stone Fireplace": 1.0, "Hobo Barrel": 1.0, "Barbeque": 2.0, "Cooking Workbench": 2.0, "Electric Furnace": 2.0, "Small Oil Refinery": 3.0 } }   ■ Configuration Option Details ItemType: Item type: "ore" (for furnaces) or "oil" (for refineries) InputItem: Input item short name InputItemSkinId: Input item skin ID OutputItem: Output item short name OutputItemSkinId: Output item skin ID OutputItemName: Custom display name for the output item (null for default) RequiredTime: Refining time (seconds) OutputAmountPerProcess: Output amount per unit   ■ Fuel Pattern Settings FuelInputItem - Fuel item short name FuelInputItemSkinId - Fuel item skin ID FuelOutputItem - By-product item (null if none) FuelOutputItemSkinId - By-product skin ID (default is 0) FuelOutputItemName - Custom by-product name FuelOutputAmountPerProcess - By-product amount per fuel consumed FuelOutputChance - By-product generation probability (0.0-1.0) FuelBurnTime - Burn time per fuel (seconds)   Important Notes   - Food items (raw meat, fish, etc.) cannot be set as smelting items in Custom Smelt Items, as they maintain vanilla cooking behavior. - Custom Smelt Item Only : Furnace speed cannot be adjusted for other types. All other types have the speed set to 1. This setting is to adjust the interaction between fuel and cooking time. - The same item cannot be set as both a smelting item and a fuel item. - The same item cannot be assigned to multiple item types (ore + oil). - Fuel settings can only be used for smelting. Vehicle fuel consumption settings cannot be configured. - The fuel used for vehicles cannot be customized with this mod. - Please note that compatibility with other mods is not supported.   ⚠️⚠️⚠️Important: How to Use Custom Smelt Items (Experimental)⚠️⚠️⚠️   To stop using this mod and keep the server running, you must remove all custom food items from the input slots of the cookable ovens. Before removing this mod, be sure to run the server console command (or reinstall the mod and then run the server console command again). Failure to perform this step will prevent the server from starting. Also, absolutely do not save the server in this state; it will corrupt the server save data. Target Type Campfire Cursed Cauldron Fireplace Hobo Barrel BBQ Cooking Workbench   Console Command : removefood When you run the command, a confirmation message will appear. Enter "y" if you agree. Then, remove this mod.         VOID / NINJA WORKS DISCORD  :  https://discord.gg/U8uxePjSyA   MADE IN JAPAN    
0.0
$14.99
🗒️Features: You can add any  plugin event in the UI  (if it has hooks, usually specified in the plugin description) Has ingame UI menu for configure your Hud The time format is adjusted to the player (depending on his language in the game), it checks which time format is used for this language You can also enable an additional menu that opens on the arrow. You can add various buttons to this menu, for example, to open a store, your server menu, etc. Almost all elements are customizable  [for example: visibility of each element, Logo, Icons, Color e.t.c (check config down below)]                     📕Commands: /h setup - open UI for ingame config /h - show all Server Hud UI commands /h open - open Server Hud UI /h events - open Events Bar /h close - close Server Hud UI /h hide - hide Server Hud UI Q&A: Q: Where i can find a base icon for creating my events icons? A: Take a base icon below this message and using f.e photoshop for create you personal event icon! Q: Where i can find a ready to use icons? A: Here some links to ready to use icons packs(1 free, 2 paid): https://codefling.com/customizations/free-custom-hud-icons https://codefling.com/customizations/custom-hud-icons-paid https://codefling.com/customizations/server-hud-custom-icon-pack API: string API_PlayerHudState(string id) CanHudChangeState(BasePlayer player, string currentState, strint nextState) 🗒️Config: { "Auto reload [If you change the config and save the file the plugin will reload itself]": true, "Main setup": { "Overall layer [you will see the hud in your inventory]": false, "Size ALL [0% - inf]": 100, "Logo [HUD interact button]": "https://media.discordapp.net/attachments/335512864548847617/1134455399756607549/logo.png", "Events background opacity [0% - 100%]": 100, "Background opacity [0% - 100%]": 100, "Position": { "Align [TopLeft | TopRight | BottomLeft | BottomRight": "TopLeft", "Left | Right - offset": 40, "Top | Bottom - offset": 25 }, "Server name": "Your Server Name", "Active players": { "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455395813965934/active.png", "Color": "#fff", "Enable": true }, "Sleep players": { "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455395138670652/sleep.png", "Color": "#fff", "Enable": true }, "Queue players": { "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455393972654171/line.png", "Color": "#fff", "Enable": true }, "Time": true, "Player position [hide permisson - hud.streamer]": { "Enable": true, "true - grid | false - x,z coordinates": true, "Color": "cyan" }, "Economy plugin [Economics | ServerRewards]": { "Currency": "$", "Value color": "#10ff10", "Enable": true }, "Info messages": { "Update interval [in seconds]": 60, "Align [BottomCenter | TopCenter | TopRight]": "BottomCenter", "Width [in px]": 260, "Offset [top | bottom]": 0, "Offset [right]": 15, "Outline color": "#000", "Overall [you will see messages in your invenotory]": true, "Enable": true, "Messages": [ "Welcome to Your Server Name", "Good luck" ] }, "Additional menu": { "Auto close timer [seconds | 0 - disable]": 60, "Auto close after command use": true, "Open/Close button color": "yellow", "Commands background opacity [0% - 100%]": 100, "Enable": true, "Commands": [ { "Background image": "https://media.discordapp.net/attachments/335512864548847617/1134455392420761671/command.png", "Icon [optional]": "https://media.discordapp.net/attachments/335512864548847617/1134455395813965934/active.png", "Command": "chat.say Hello there", "Text": "Say Something", "Outline color": "#000", "Is Console": true }, { "Background image": "https://media.discordapp.net/attachments/335512864548847617/1134455392420761671/command.png", "Icon [optional]": "", "Command": "/shop", "Text": "Say Something", "Outline color": "#000", "Is Console": false } ] } }, "Base Events": [ { "Name": "Bradley", "Active color": "#10ff10", "Icon": "https://media.discordapp.net/attachments/335512864548847617/1134455316654850049/bradley.png", "Color": "#fff", "Enable": true }, { "Name": "PatrolHeli", "Active color": "#10ff10", "Icon": "https://media.discordapp.net/attachments/335512864548847617/1134455315073597530/heli.png", "Color": "#fff", "Enable": true }, { "Name": "CH47", "Active color": "#10ff10", "Icon": "https://media.discordapp.net/attachments/335512864548847617/1134455317485342803/ch47.png", "Color": "#fff", "Enable": true }, { "Name": "Cargo", "Active color": "#10ff10", "Icon": "https://media.discordapp.net/attachments/335512864548847617/1134455317086879794/cargo.png", "Color": "#fff", "Enable": true }, { "Name": "AirDrop", "Active color": "#10ff10", "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455316143161374/airdrop.png", "Color": "#fff", "Enable": true } ], "Custom Events": [ { "Hook OnEventStart": "OnConvoyStart", "Hook OnEventStop": "OnConvoyStop", "Name": "Convoy", "Active color": "#10ff10", "Icon": "https://media.discordapp.net/attachments/335512864548847617/1134455318030598154/convoy.png", "Color": "#fff", "Enable": false }, { "Hook OnEventStart": "OnSputnikEventStart", "Hook OnEventStop": "OnSputnikEventStop", "Name": "Sputnik", "Active color": "#10ff10", "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455315488854016/sputnik.png", "Color": "#fff", "Enable": false }, { "Hook OnEventStart": "OnArmoredTrainEventStart", "Hook OnEventStop": "OnArmoredTrainEventStop", "Name": "ArmoredTrain", "Active color": "#10ff10", "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455315841155173/train.png", "Color": "#fff", "Enable": false }, { "Hook OnEventStart": "OnHarborEventStart", "Hook OnEventStop": "OnHarborEventEnd", "Name": "Harbor", "Active color": "#10ff10", "Icon": "https://cdn.discordapp.com/attachments/335512864548847617/1134455318332592219/harbor.png", "Color": "#fff", "Enable": false } ] }
5.0
Automated chat messages based on chat keywords, timer or various other triggers. Plugin comes with an easy to use  Admin UI for complete setup, and supports special localization for your messages. You can define messages to be sent only to specific Groups or Permissions, and you can allow players to toggle on/off messages if they do not find them useful.   SUPPORTED TRIGGERS  If what you need is not here and still falls under the scope of the plugin description, reach out to me Timed | ChatCommand | AutoReply | NewPlayerJoined | PlayerConnected | PlayerDisconnected | PermissionGranted | PermissionRevoked | AddedToGroup | RemovedFromGroup | PlayerDead | CrateHacked | EnteredDeepSea | LeftDeepSea | EnteredZone | LeftZone | EnteredMonument | LeftMonument   COMMANDS /am.edit - (Admin UI for complete setup) - requires automatedmessages.admin permission /tips -  (Player command for toggling on/off messages) command can be changed in the config file   MESSAGES LOCALIZATION You can switch between languages in Admin UI to setup localized replies for every language the game supports. Check config section below for how to add languages.   Game Tips You can utilize Rust's native game tip UI to show specific messages instead or along with sending it to chat.   VARIABLES Variables can be included in the messages text to show further info based on the trigger or player. The plugin also supports  https://umod.org/plugins/placeholder-api  with the extensive list of variables it brings.   {playername} {playerid} - Player steam id {playercountry} {hacklocation} - Specific to messages with type CrateHacked {wipetimeremaining} - Days/Hours till wipe (based on rust convar settings if a missile silo monument is present) {online} - # of players online {sleeping} - # of players sleeping {joining} - # of players joining   CONFIG SETTINGS  Below are  only settings not currently available in Admin UI, highly recommended to edit triggers or actions using /am.edit Chat Icon (Steam Id)  - Icon that will be used for all messages sent by the plugin, must be a steam id. Toggle Chat Command  - "tips" - Chat command that allows a player to toggle on/off messages. AutoReply Cooldown (in seconds)  - Per action cooldown timer when  players type a keyword set. ChatCommand Cooldown (in seconds) - Per player cooldown timer when a player types a  chat command. ZoneManager Cooldown (in seconds)  - Per player cooldown timer on enter or exit zone. MonumentWatcher Cooldown (in seconds) - Per player cooldown timer on enter or exit monument. Replies Server Languages  - Languages your server will support. Available options:  af, ar, ca, cs, da, de, el, en-PT, en, es-ES, fi, fr, hu, it, ja, ko, nl, no, pl, pt-PT, pt-BR, ro, ru, sr, sv, tr, uk, vi, zh-CN, zh-TW Default Server Language -  Fallback language if player client  language had no available replies, you must have at least one reply for this language for the action to function. AutoReply `Broadcast to all` option to broadcast to team only if keywords sent from team chat - true/false
5.0
Highest Rated
Top-rated picks trusted and loved by the community.
Trending Files
Popular picks members are downloading the most right now.
Great Deals
Discounted picks, limited-time deals, and sale items worth grabbing now.
Latest Reviews
See what customers are saying about their experience with files.
Great plugin with useful moderation features and clean configuration. Runs lightweight and doesn’t affect server performance. Perfect for keeping chat under control without extra hassle
I actailly liked how easy this was to use, and how easily it allowed me to setup loot tables, it will be missed. 
Всё замечательно, но есть одна проблема: двери не отображаются в RustEdit из-за своего размера.
It's great. The only improvement would be if custom items could be added as rewards. That feature would earn the 5th star
I haven't even had to really edit anything yet. The random weather cycle(s) is absolutely perfect and already adding a heavy layer of immersion to my server. Love this mod absolutely worth the $14.99 
I’m honestly beyond impressed with this plugin. The level of quality, attention to detail, and overall functionality completely exceeded my expectations. Everything works smoothly, the setup process was straightforward, and you can clearly see how much effort and professionalism went into development. I’ve tested many plugins before, but this one genuinely stands out. It saves time, performs flawlessly, and adds exactly the kind of features I was looking for. I can confidently say I’m
Amazing Plugin!  A bit of work getting it all setup, cusomisied with loot tables, and kits for the NPC's etc/ but once its done, its an aboslute blast! I'm added a Prim Raid to mine, NPC with bows an eoka's, and also a Hell Raid mode with 9 waves with MLRS rockers on each, with difficulties everywhere inbetween.  So much fun, and great companion for the raidable bases plugin to give a PVE server both Raiding and being Raided.     

About Us

Codefling is the largest marketplace for plugins, maps, tools, and more, making it easy for customers to discover new content and for creators to monetize their work.

Downloads
2.6m
Total downloads
Customers
11.4k
Customers served
Files Sold
163.2k
Total sales
Payments
3.5m
Processed total
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.