ELF's Wishlist
-
The Dome Event
The Dome Event plugin, the idea is to get on top of the Dome. In the meantime, defeat a tank and turrets. Inside the dome you will find a Locked Crate. When you click on it, a patrol helicopter spawns and a blue card reader appears on top of the Dome. If you kill the helicopter and the Npc's on top of the Dome and use the card reader then the finale is coming.
Support PveMode plugin.
Support BotReSpawn plugin.
Chat and Consolecommand available to admins only.:
destart destop Hooks:
void OnDomeEventStart();
void OnDomeEventStop();
Contact:
Additional free plugins created by me are available on Discord: https://discord.gg/C5CehdJMdK
If you want to try out this plugin, you can do so on the test server. IP: 212.73.137.3:27195
My public Rust server IP: 136.243.135.46:28050
Video:
Config:
{ "Version": { "Major": 1, "Minor": 0, "Patch": 4 }, "Automatic event start": true, "Minimum time for event start": 3600.0, "Maximum time for event start": 7200.0, "Duration of the event": 2800.0, "Warning messages before event start": 300.0, "Warning messages before event end": 300.0, "Chat icon": 0, "Locked crate hack time": 900.0, "Disable BetterNpc plugin npc's for the duration of the event?": false, "Spawn NpcSpawn Scientist?(Required: NpcSpawn plugin!)": true, "Spawn BotReSpawn Scientist?(Required: BotReSpawn plugin!)": false, "BotReSpawn profil name:": "", "BotReSpawn Npc's number": 10, "Messages setting": { "Message before the event starts.": "Everyone be careful, the <color=#ff0000>Dome Event</color> is about to start.", "Warning message before the event stop.": "The Dome event will end soon!!", "Message when someone event owner": "Someone has become the owner of Dome Event.", "Start message": "<color=#ff0000>Dome Event</color> has started!!", "Stop message": "<color=#ff0000>Dome Event</color> end!", "Map marker name": "Dome Event", "Map marker radius": 0.6, "Color": { "r": 1.0, "g": 0.0, "b": 0.0 } }, "Bradley setting": { "Bradley health": 1000.0, "Number of crate to spawn when the bradley dies": 3, "Number of Npc spawning from Bradely": 3 }, "Patrolhelicopter setting": { "Patrolhelicopter health": 10000.0, "Number of crate to spawn when the helicopter dies": 3 }, "AutoTurret setting": { "Health": 300.0, "Weapon ShortName": "rifle.ak", "Ammo ShortName": "ammo.rifle", "Number of ammo": 5000 }, "List of lootable crates": [ { "Prefab": "assets/bundled/prefabs/radtown/crate_elite.prefab", "Position": "(2.567, 47.640, -7.085)", "Rotation": "(0, 337.426, 0)", "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] } }, { "Prefab": "assets/prefabs/npc/patrol helicopter/heli_crate.prefab", "Position": "(-6.099, 47.640, 4.679)", "Rotation": "(0, 303.510, 0)", "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] } }, { "Prefab": "assets/prefabs/npc/m2bradley/bradley_crate.prefab", "Position": "(19.550, 65.059, -9.339)", "Rotation": "(0, 289.162, 0)", "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] } }, { "Prefab": "assets/bundled/prefabs/radtown/crate_elite.prefab", "Position": "(-25.683, 65.179, -6.666)", "Rotation": "(0, 79.714, 0)", "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] } }, { "Prefab": "assets/bundled/prefabs/radtown/crate_elite.prefab", "Position": "(-3.239, 71.638, 6.203)", "Rotation": "(0, 331.058, 0)", "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] } }, { "Prefab": "assets/bundled/prefabs/radtown/crate_elite.prefab", "Position": "(-2.268, 71.638, -6.717)", "Rotation": "(0, 17.623, 0)", "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] } } ], "Floor Npcs settings inside": { "Minimum": 6, "Maximum": 6, "List of position": [ "(1.654, 71.638, -6.538)", "(-6.142, 71.638, -3.089)", "(-0.235, 71.638, 7.514)", "(6.279, 71.638, 3.544)", "(-22.664, 65.172, -2.128)" ], "NPCs setting": { "Name": "Dome Guard", "Health": 200.0, "Roam Range": 10.0, "Chase Range": 30.0, "Attack Range Multiplier": 3.0, "Sense Range": 30.0, "Target Memory Duration [sec.]": 60.0, "Scale damage": 1.0, "Aim Cone Scale": 0.6, "Detect the target only in the NPC's viewing vision cone? [true/false]": false, "Vision Cone": 135.0, "Speed": 7.5, "Disable radio effects? [true/false]": false, "Is this a stationary NPC? [true/false]": false, "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] }, "Wear items": [ { "ShortName": "riot.helmet", "SkinID (0 - default)": 1136847802 }, { "ShortName": "pants", "SkinID (0 - default)": 2469702450 }, { "ShortName": "hoodie", "SkinID (0 - default)": 2472131751 }, { "ShortName": "metal.plate.torso", "SkinID (0 - default)": 2462023997 }, { "ShortName": "shoes.boots", "SkinID (0 - default)": 1192621630 } ], "Belt items": [ { "ShortName": "smg.mp5", "Amount": 1, "SkinID (0 - default)": 0, "Mods": [], "Ammo": "" }, { "ShortName": "syringe.medical", "Amount": 2, "SkinID (0 - default)": 0, "Mods": [], "Ammo": "" } ] } }, "Ground Npcs settings outside": { "Minimum": 8, "Maximum": 8, "List of position": [ "(8.450, 5.677, -39.192)", "(42.784, 5.677, 5.506)", "(-31.383, 5.808, 33.135)", "(-43.109, 5.677, -23.131)" ], "NPCs setting": { "Name": "Dome Guard", "Health": 150.0, "Roam Range": 30.0, "Chase Range": 30.0, "Attack Range Multiplier": 2.0, "Sense Range": 40.0, "Target Memory Duration [sec.]": 60.0, "Scale damage": 0.6, "Aim Cone Scale": 1.5, "Detect the target only in the NPC's viewing vision cone? [true/false]": false, "Vision Cone": 135.0, "Speed": 7.5, "Disable radio effects? [true/false]": false, "Is this a stationary NPC? [true/false]": false, "Use custom loot?": false, "CustomLoot": { "Minimum items": 1, "Maximum items": 1, "Use minimum - maxium?": false, "List of items": [ { "ShortName": "xmas.present.small", "Minimum": 3, "Maximum": 6, "Chance": 100.0, "Give blueprint?": false, "SkinID": 0, "Displayname": "" } ] }, "Wear items": [ { "ShortName": "coffeecan.helmet", "SkinID (0 - default)": 1164355094 }, { "ShortName": "pants", "SkinID (0 - default)": 2115326845 }, { "ShortName": "hoodie", "SkinID (0 - default)": 1133942186 }, { "ShortName": "sunglasses", "SkinID (0 - default)": 0 }, { "ShortName": "roadsign.jacket", "SkinID (0 - default)": 1164353601 }, { "ShortName": "roadsign.kilt", "SkinID (0 - default)": 1164357032 }, { "ShortName": "shoes.boots", "SkinID (0 - default)": 916448999 } ], "Belt items": [ { "ShortName": "smg.2", "Amount": 1, "SkinID (0 - default)": 0, "Mods": [], "Ammo": "" }, { "ShortName": "syringe.medical", "Amount": 2, "SkinID (0 - default)": 0, "Mods": [], "Ammo": "" } ] } }, "PVE Mode Setting (only for users PveMode plugin)": { "Use PveMode plugin?": false, "Required damage to the event owner": 500.0, "The event is a right of ownership, to obtain it you need damage multiplier.": { "Npc": 1.0, "Bradley": 1.0 }, "Non owner can loot the crates?": false, "Non owner can loot the Npc's?": false, "Non owner can damage Npc's?": false, "Non owner can be attacked by Npc's?": false, "Non owner, can you enter the event zone?": false, "Allow a player who has an active cooldown of the Event Owner to enter the event zone?": true, "The time that the Event Owner may not be inside the event zone.": 300, "The time until the event owner can return to the event zone.": 60, "Block the RestoreUponDeath plugin in the event zone.": true, "After all this time, an event owner can be an event owner again.": 86400.0, "Darkening the sphere.": 15 } }
-
Custom Icon Creator
This is a simple tool for developers who want to make custom items, this allows you to chose a item name (Workshop Name) and item image anywhere on your computer (.png) and upload it to your rust steam workshop. This will allow you to get the workshop ID in which you use to create a "custom" item.
Requirements
- Must have steam running
- Must have rust in steam library
Installation
Download the zip and extract the folder to chosen location
Run the unity game named, Rust Custom Icons.exe
Tips
I recommend running this in windowed which you can get to by pressing ALT + ENTER
GIF of how it work
-
JetPack
Take your players to new heights in the game of Rust, and get a few laughs watching people try to fly one for the first time! Introducing Jetpack! A plugin that allows your players to soar around like never before in the game of Rust. Grab this plugin and give your players something to talk about! Many functions have already been implemented like the ability to shoot while piloting a jetpack, and the plugin will continue to expand and grow with the community.
You'll find the configuration covers almost anything you can think of, and you'll see a breakdown of the configuration file in the description below. By default you can simply press the middle mouse wheel to equip and remove the jetpack quickly, you can't run around once you've equipped it. You can customize loot crates the jetpack might appear in, and all of the stats from thrust to rotation and all of the other controls. Be sure to check the permission section and feel free to use the command creatively to give jetpacks as an award for completing other tasks on your server using the commands provided. Make sure you have some lowgrade handy, let's take to the skies!
Сontrols
Space bar - thrust W/S keys - pitch axis A/D keys - yaw axis
Chat commands (check config for permissions)
/jet - toggle jetpack on & off /givejetpack - give a jetpack to yourself
Console commands (admin only)
givejetpack - give a jetpack to yourself givejetpack SteamID - give a jetpack to player using their SteamID
Plugin config
en – example of plugin configuration in English
ru – example of plugin configuration in Russian
Check out the rest of my work: Adem's Codefling Library
You can reach out to me in Discord: Adem's Discord Profile
Thanks to Jbird for writing, translation, & support: Jbird's Discord Profile
Join the Mad Mappers Discord!
-
CrashAlertSystem
[ ! ] 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. [ ! ]
Crash Alert System tells you when your server crashed or froze, what it cost, and makes it up to the players who lost something. A heartbeat every 30 seconds records players, FPS, memory and entities, so after a crash the report says how long the server was down and how much progress was lost, measured, not guessed. A watchdog thread notices a server that stopped ticking and posts to Discord while it is still frozen, because a hung server cannot send anything itself.
Each Discord webhook gets its own messages: a public channel can announce "back online, claim your compensation" while the staff channel gets the forensics, each with its own mention. Players get a recovery popup when they wake up, a toast under the compass, a chat line and a native COMPENSATION countdown above the health bar, in their own language.
Compensation goes only to the players who were online before the crash, as a kit, money and a console command, with VIP multipliers and a bag for whatever does not fit. Everything is set up in one admin panel, /cas, and saves at once: no reloads, no double claims.
🌟 Features of Crash Alert System
Crash detection with numbers: how long the server was down and how much progress was lost, from a heartbeat every 30 seconds A freeze watchdog that alerts Discord while the server is still frozen (45 seconds without a tick by default) and logs shorter freezes Several Discord webhooks, each with its own events (crash, freeze, back online) and its own messages: title, text, colour, mention (none, @here, @everyone or a role) and the lines it includes A live preview of exactly what Discord will get, a test button per webhook and a delivery log with Discord's answer Compensation only for the players who lost progress: online in the 15 minutes before the crash by default, or everyone who joins, or a permission A kit of up to 14 items with an item picker of every game item, money through Economics, ServerRewards or IQEconomic, a console command per player and VIP multipliers Claim with a button or /claim, or automatically on wake-up; what does not fit drops in a bag at the player's feet Open a compensation window by hand for a rollback, a lag storm or a rough wipe day, with a reason and the crash kit or a custom kit for that window A recovery popup, a toast, a chat line, a native HUD countdown, Notify and NCP, and freeze notes for your staff An incident history with a 30-day chart, a timeline per crash and the server's last heartbeat before it went down English, Spanish, Portuguese, Russian, Ukrainian, German, French and Italian inside the plugin, each player in their own language Built for high population servers: the panel only sends what changed, the countdowns tick on the client, and the clocks run on the game loop
🎮 Commands
/claim - claim the compensation while a window is open Admin
/cas - the admin panel: server health, Discord, compensation, in-game alerts and history cas.simulate crash [steamid] and cas.simulate freeze [steamid] - server console only: a test crash (history entry, Discord alerts, compensation window) or a test freeze. With a Steam ID only that player is included, so you can test on a live server Both chat commands can be renamed in the config.
🛡️ Permissions
crashalertsystem.admin - the admin panel, for staff who are not server admins crashalertsystem.staff - freeze and recovery notes in game (server admins get them too) crashalertsystem.claim - who can claim, when "Who can claim" is set to permission crashalertsystem.<tier> - VIP bonus tiers, created in the panel (vip x1.5 and elite x2 by default) The server command of the compensation can only be edited by the server owner (auth level 2), because it runs as the server console.
🖼️ Showcase
Every screen below is the plugin running in game
Server health
Discord alerts with a live preview
The compensation kit and claim rules
Every game item in the picker
In-game alerts, previewed in every language
The crash history
A compensation window opened by hand
What players see when the server is back
After the claim
🎥 Video
The trailer, recorded in game (click to play)
⚙️ Configuration
Everything is editable in the panel, and lives in oxide/config/CrashAlertSystem.json:
Discord - server name, bot name and avatar, and the webhooks: URL, name, events, role ID and the messages each one posts Discord messages - the messages a new webhook starts with Heartbeat interval and Freeze watchdog - how often the heartbeat is written, the seconds without a tick before the freeze alert, and the shortest freeze kept in the history Compensation - the claim window, who can claim, button or automatic, the bag for overflow, the kit (amount, skin, blueprint, VIP bonus per item), money, the console command and the VIP tiers In-game alerts - toast, popup, HUD countdown, chat, Notify, NCP, staff notes, sounds and the Discord invite shown when a window closes History size, Popup art URL and both chat commands
📚 FAQ
Q: How does it know the server crashed?
A: Every 30 seconds it writes a heartbeat, and a clean shutdown or restart marks it closed. If the next boot finds it still open, the process died. Downtime is the last heartbeat to the boot; lost progress is the last world save to the last heartbeat. A new map save never opens a compensation window.
Q: Can players farm the compensation?
A: No. A window opens only after a real crash or when you open one by hand, each player claims once per window, and by default only the players who were online in the 15 minutes before the crash can claim. Reloading the plugin or the config never reopens anything.
Q: Will it ping @everyone on every restart?
A: No. Mentions are off by default and you pick them per webhook and per event. A clean restart only posts if you tick "back online" for that webhook, and tests never ping anyone.
Q: Do I need an economy plugin?
A: No. The kit and the console command work on their own. Money uses Economics, ServerRewards or IQEconomic, whichever is loaded first.
Q: I run 2.1.0. What changes when I update?
A: Install the extension and replace the .cs. Your webhook (with its mention), bot name and avatar, crash message, reward kit and window, and the Notify, chat and NCP settings move to the new config on the first load, and the old file is kept as a backup. A crash that happened right before the update is still reported.
Q: How heavy is it?
A: Built for high population servers. The heartbeat is a few numbers every 30 seconds, the countdowns tick on the players' clients, the panel only sends what changed, and the watchdog is one small background thread.
Q: Can I translate it?
A: It already speaks eight languages, and each player sees the language their game runs in. For another one, copy oxide/lang/en/CrashAlertSystem.json to oxide/lang/<code>/CrashAlertSystem.json and translate it.
Q: Does it work on Carbon?
A: Yes. The extension goes into carbon/extensions instead of RustDedicated_Data/Managed, and everything else is the same.
🔧 API / Hooks
// Hooks void OnCrashDetected(Dictionary<string, object> incident) void OnServerFreezeRecovered(int seconds) void OnCompensationClaimed(BasePlayer player) // API: CrashAlertSystem?.Call<T>("Method") bool API_IsCompensationOpen() Dictionary<string, object> API_GetLastIncident() // id, kind, start, end, downtime, lost, players, fps, memoryMb, entities, uptime, reason, openedBy, claimed, windowClose
Questions, ideas or bug reports? Join our Discord.
-
RadTown Puzzles
Adds a unique green and blue card puzzle to the Radtown that players can go into to get some extra loot.
{ "Green Room Spawns": { "Loot Information": [ { "LootContainer prefab to use": "assets/bundled/prefabs/radtown/crate_normal_2.prefab", "LootContainer respawn time after looted in minutes": 30, "Position of the LootContainer": { "x": 6.231558, "y": 0.6286445, "z": -14.76554 }, "Rotation of the LootContainer": { "x": 0.0, "y": 0.0, "z": 0.0 } }, { "LootContainer prefab to use": "assets/bundled/prefabs/radtown/crate_normal_2.prefab", "LootContainer respawn time after looted in minutes": 30, "Position of the LootContainer": { "x": -2.074273, "y": 0.6468282, "z": -18.84206 }, "Rotation of the LootContainer": { "x": 0.0, "y": 0.0, "z": 0.0 } }, { "LootContainer prefab to use": "assets/bundled/prefabs/radtown/foodbox.prefab", "LootContainer respawn time after looted in minutes": 30, "Position of the LootContainer": { "x": -4.595845, "y": 1.493383, "z": -16.61216 }, "Rotation of the LootContainer": { "x": 0.0, "y": 0.0, "z": 0.0 } } ] }, "Blue Room Spawns": { "Loot Information": [ { "LootContainer prefab to use": "assets/bundled/prefabs/radtown/crate_normal.prefab", "LootContainer respawn time after looted in minutes": 30, "Position of the LootContainer": { "x": 7.25617, "y": 4.363087, "z": -19.05 }, "Rotation of the LootContainer": { "x": 0.0, "y": 0.0, "z": 0.0 } }, { "LootContainer prefab to use": "assets/bundled/prefabs/radtown/crate_elite.prefab", "LootContainer respawn time after looted in minutes": 1, "Position of the LootContainer": { "x": 4.8, "y": 4.363087, "z": -14.74765 }, "Rotation of the LootContainer": { "x": 0.0, "y": 90.0, "z": 0.0 } } ] }, "Version": { "Major": 1, "Minor": 0, "Patch": 0 } }
