BetterDeadThanZed's Wishlist
-
Roaming NPCs
Bring your Rust server to life with Roaming NPCs — AI bots that act just like real players. They gather, loot, and fight, making your server feel active and alive.
Features:
⚒️ Realistic AI Behavior
• NPCs roam the map and simulate player-like behavior.
• Customizable behaviour: friendly, aggressive, defensive
• Spawn bots on beaches or random points around the map.
• Random or custom names and appearances.
🌲 Resource Farming
• Bots harvest wood, stone, metal, and sulfur using tools like rocks, hatchets, or pickaxes.
• Automatically pick up nearby dropped resources, food, and more.
• Loot crates and barrels found across the map.
• Automatically equip better gear found during looting.
⚔️ Dynamic Combat
• Bots attack wild animals like wolves, bears, and boars.
• Uses ranged and melee weapons – from bows to rifle ak.
🎒 Spawn Loadouts
• Configure bot spawn kits – tools, weapons, clothes, and other.
• Choose whether bots spawn with kit or start with rock and torch.
⚙️ Customization
• Setup health, damage rates, respawn timers and other.
• Record your own voice phrases that bot will replay on some actions using voice chat.
• Define bot's behavior:
- Friendly (doesn't attack, runs away)
- Defensive (defends if attacked)
- Aggressive (attacks first)
📺 See It in Action! Watch the Video
⚠️ Don't forget to download data files that include default voice phrases for bots. You can find them here (put this folder in oxide/data)
📋 Commands (roamingnpcs.admin permission):
/rnpc vis - shows all RoamingNPC's bots /rnpc stashvis - shows all RoamingNPC's stashes /rnpc killall - kills all RoamingNPC's bots /rnpc tp - teleports all RoamingNPC's bots to you /rnpc totp - teleports you to closest RoamingNPC bot /rnpc init - clears all data and respawns bot (needs to be done after editing config)
/rnpc recvoice start - start recording /rnpc recvoice stop - stop recording /rnpc recvoice replay - listen to current recording (recording will be stopped) /rnpc recvoice save <file name> - save current recording /rnpc recvoice replay <file name> - listen to the recording from file /rnpc recvoice clear - clear current recording
📃 Configuration:
{ "Specify the ID of the bot generator (8 - 15)": 9, "Bots settings": { "bob_resources_farmer": { "Enable bot?": true, "Bot appearance (Use the id in the range of the specified number of digits for the bot ID generator or leave 0 for random appearance)": 100000000, "Bot name (leave empty for random)": "Bob", "Respawn timer (3 - 60 seconds)": 300.0, "Use for respawn a random place on the map? (false - will respawn on the beach)": false, "Maximum health": 100.0, "What spawns on death (PlayerCorpse, NpcCorpse, Backpack)": "PlayerCorpse", "How many items will be destroyed when Backpack is selected (0 - 100%)": 50.0, "Bot behaviour - Aggressive, Friendly, Defensive": "Friendly", "Controller setup": { "Brain timer tick (0.01 - 1)": 0.1, "Controls timer tick (0.01 - 1)": 0.5, "Accuracy of fire (lower is better)": 10.0, "Find entities radius": 30.0, "Movement speed (1 - 4)": 4, "Movement speed in water (1 - 4)": 2, "Suicide timer if the bot does not reach the destination point (0 - disables the timer)": 600.0, "Timer attempt to avoid obstacle if the bot does not reach the target route": 3.0, "Damage rate from water": 1.0, "Allowed distance to teleport if the bot does not reach the destination point within this distance (-1 - allowed for any distance)": 0.0, "Damage rate to NPC targets": 2.0, "Damage rate to animals": 2.0, "Damage rate to players": 0.8, "Damage rate from NPCs": 0.2, "Damage rate from animals": 0.2, "Damage rate from players": 0.8 }, "Wear items (on respawn)": { "Lock container? (true - after death loot won't drop)": true, "Allow bot to wear found clothes?": false, "List of items": [ { "Item shortname or ID": "hazmatsuit.lumberjack", "Item skin": 0 } ] }, "Resource collection": { "Allow to gather wood?": true, "Allow to use fuel for chainsaw?": false, "Allow to mine ore?": true, "Allow to loot barrels?": false, "Allow to loot road signs?": false, "Allow to pickup resources?": true, "Allow to pickup dropped items?": false, "Allow to loot containers?": false, "Allow to loot corpses?": false, "Allow to harvest corpses?": false, "List of prefabs of corpses to harvest": [ "assets/rust.ai/agents/boar/boar.corpse.prefab", "polarbear.corpse", "bear.corpse", "stag.corpse", "wolf.corpse", "crocodile.corpse", "panther.corpse", "tiger.corpse", "chicken.corpse" ], "List of prefabs blocked for mining": [ "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree03.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtreeprefab.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree02.prefab" ] }, "Fights with NPCs and players": { "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 1.0 }, "Animal hunting": { "Allow to hunt? (true - will attack animals even if they are not attacking)": false, "Make melee weapons preferred for hunting?": true, "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 2.0, "List of prefabs of animals to block hunting them": [] }, "Inventory overflow": { "Stash setup (bot will put items in the stash)": { "Enable?": true, "Hide stash?": true, "Life time (0 - will exist until restart)": 3600.0, "Maximum amount to use (0 - without limit)": 10 }, "Box setup (bot will put items in the box)": { "Enable?": true, "Use small box?": true, "Box skin": 0, "Life time (0 - will exist until restart or until it dies)": 3600.0, "Maximum amount to use (0 - without limit)": 5, "Another container prefab (you can leave it empty)": "" } }, "Monuments visit setup": { "Amount of random positions to visit on monument": 5, "List of monument prefabs blocked for visiting": [] }, "Items for ore mining": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "jackhammer", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "diverpickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stone.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for tree gathering": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "chainsaw", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "frontier_hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stonehatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for fights": { "Use ammo?": false, "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "bow.hunting", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "1965232394", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "salvaged.cleaver", "Item skin": 0 } } ], "Amount of ammo to give for weapon if respawning is allowed": 128 }, "Items for harvesting animals": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "knife.skinning", "Item skin": 0 } } ] }, "Items for healing": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "syringe.medical", "Item skin": 0 }, "Amount of items to give when respawning": 5 }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "bandage", "Item skin": 0 }, "Amount of items to give when respawning": 1 } ] }, "Voice phrases for different actions": { "Use voice phrases?": true, "Phrases for the Miner state": { "Phrases when picking up resources": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when picking up items": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when gathering trees": { "Phrases": [ "uinston/miner/mining_tree/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when mining ore": { "Phrases": [ "uinston/miner/mining_ore/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting containers": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when breaking containers (barrels, signs and etc.)": { "Phrases": [ "uinston/miner/breaking/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting corpses": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when harvesting corpses": { "Phrases": [ "uinston/miner/butcher_corpse/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Hunter state": { "Phrases before starting to attack": { "Phrases": [ "uinston/hunter/start_attack/1", "uinston/hunter/start_attack/2" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Fight state": { "Phrases before starting to attack": { "Phrases": [ "uinston/attacker/start_attack/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot does not see the target": { "Phrases": [ "uinston/attacker/not_visible/1", "uinston/attacker/not_visible/2", "uinston/attacker/not_visible/3" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot runs away from the attacker": { "Phrases": [ "uinston/attacker/run_away/1", "uinston/attacker/run_away/2", "uinston/attacker/run_away/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Researcher state": { "Phrases before starting to move to the monument point": { "Phrases": [ "uinston/researcher/before_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when reaching the destination": { "Phrases": [ "uinston/researcher/after_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases when creating a container with resources": { "Phrases": [ "uinston/full_state/1", "uinston/full_state/2" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when healing": { "Phrases": [ "uinston/medical_state/1", "uinston/medical_state/2", "uinston/medical_state/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } } }, "john_looter": { "Enable bot?": true, "Bot appearance (Use the id in the range of the specified number of digits for the bot ID generator or leave 0 for random appearance)": 0, "Bot name (leave empty for random)": "John", "Respawn timer (3 - 60 seconds)": 300.0, "Use for respawn a random place on the map? (false - will respawn on the beach)": false, "Maximum health": 120.0, "What spawns on death (PlayerCorpse, NpcCorpse, Backpack)": "PlayerCorpse", "How many items will be destroyed when Backpack is selected (0 - 100%)": 50.0, "Bot behaviour - Aggressive, Friendly, Defensive": "Defensive", "Controller setup": { "Brain timer tick (0.01 - 1)": 0.1, "Controls timer tick (0.01 - 1)": 0.5, "Accuracy of fire (lower is better)": 10.0, "Find entities radius": 30.0, "Movement speed (1 - 4)": 4, "Movement speed in water (1 - 4)": 2, "Suicide timer if the bot does not reach the destination point (0 - disables the timer)": 600.0, "Timer attempt to avoid obstacle if the bot does not reach the target route": 3.0, "Damage rate from water": 1.0, "Allowed distance to teleport if the bot does not reach the destination point within this distance (-1 - allowed for any distance)": 0.0, "Damage rate to NPC targets": 2.0, "Damage rate to animals": 2.0, "Damage rate to players": 0.8, "Damage rate from NPCs": 0.2, "Damage rate from animals": 0.2, "Damage rate from players": 0.8 }, "Wear items (on respawn)": { "Lock container? (true - after death loot won't drop)": true, "Allow bot to wear found clothes?": false, "List of items": [ { "Item shortname or ID": "hazmatsuit.nomadsuit", "Item skin": 0 } ] }, "Resource collection": { "Allow to gather wood?": false, "Allow to use fuel for chainsaw?": false, "Allow to mine ore?": false, "Allow to loot barrels?": true, "Allow to loot road signs?": true, "Allow to pickup resources?": true, "Allow to pickup dropped items?": true, "Allow to loot containers?": true, "Allow to loot corpses?": true, "Allow to harvest corpses?": false, "List of prefabs of corpses to harvest": [ "assets/rust.ai/agents/boar/boar.corpse.prefab", "polarbear.corpse", "bear.corpse", "stag.corpse", "wolf.corpse", "crocodile.corpse", "panther.corpse", "tiger.corpse", "chicken.corpse" ], "List of prefabs blocked for mining": [ "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree03.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtreeprefab.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree02.prefab" ] }, "Fights with NPCs and players": { "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 1.0 }, "Animal hunting": { "Allow to hunt? (true - will attack animals even if they are not attacking)": false, "Make melee weapons preferred for hunting?": true, "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 2.0, "List of prefabs of animals to block hunting them": [] }, "Inventory overflow": { "Stash setup (bot will put items in the stash)": { "Enable?": true, "Hide stash?": true, "Life time (0 - will exist until restart)": 3600.0, "Maximum amount to use (0 - without limit)": 10 }, "Box setup (bot will put items in the box)": { "Enable?": true, "Use small box?": true, "Box skin": 0, "Life time (0 - will exist until restart or until it dies)": 3600.0, "Maximum amount to use (0 - without limit)": 5, "Another container prefab (you can leave it empty)": "" } }, "Monuments visit setup": { "Amount of random positions to visit on monument": 5, "List of monument prefabs blocked for visiting": [] }, "Items for ore mining": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "jackhammer", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "diverpickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stone.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for tree gathering": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "chainsaw", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "frontier_hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stonehatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for fights": { "Use ammo?": true, "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "rifle.ak.diver", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "bow.hunting", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "1965232394", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "salvaged.cleaver", "Item skin": 0 } } ], "Amount of ammo to give for weapon if respawning is allowed": 300 }, "Items for harvesting animals": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "knife.skinning", "Item skin": 0 } } ] }, "Items for healing": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "syringe.medical", "Item skin": 0 }, "Amount of items to give when respawning": 5 }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "bandage", "Item skin": 0 }, "Amount of items to give when respawning": 1 } ] }, "Voice phrases for different actions": { "Use voice phrases?": true, "Phrases for the Miner state": { "Phrases when picking up resources": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when picking up items": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when gathering trees": { "Phrases": [ "uinston/miner/mining_tree/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when mining ore": { "Phrases": [ "uinston/miner/mining_ore/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting containers": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when breaking containers (barrels, signs and etc.)": { "Phrases": [ "uinston/miner/breaking/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting corpses": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when harvesting corpses": { "Phrases": [ "uinston/miner/butcher_corpse/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Hunter state": { "Phrases before starting to attack": { "Phrases": [ "uinston/hunter/start_attack/1", "uinston/hunter/start_attack/2" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Fight state": { "Phrases before starting to attack": { "Phrases": [ "uinston/attacker/start_attack/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot does not see the target": { "Phrases": [ "uinston/attacker/not_visible/1", "uinston/attacker/not_visible/2", "uinston/attacker/not_visible/3" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot runs away from the attacker": { "Phrases": [ "uinston/attacker/run_away/1", "uinston/attacker/run_away/2", "uinston/attacker/run_away/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Researcher state": { "Phrases before starting to move to the monument point": { "Phrases": [ "uinston/researcher/before_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when reaching the destination": { "Phrases": [ "uinston/researcher/after_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases when creating a container with resources": { "Phrases": [ "uinston/full_state/1", "uinston/full_state/2" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when healing": { "Phrases": [ "uinston/medical_state/1", "uinston/medical_state/2", "uinston/medical_state/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } } }, "alfred_hunter": { "Enable bot?": true, "Bot appearance (Use the id in the range of the specified number of digits for the bot ID generator or leave 0 for random appearance)": 0, "Bot name (leave empty for random)": "Alfred", "Respawn timer (3 - 60 seconds)": 300.0, "Use for respawn a random place on the map? (false - will respawn on the beach)": false, "Maximum health": 100.0, "What spawns on death (PlayerCorpse, NpcCorpse, Backpack)": "PlayerCorpse", "How many items will be destroyed when Backpack is selected (0 - 100%)": 50.0, "Bot behaviour - Aggressive, Friendly, Defensive": "Defensive", "Controller setup": { "Brain timer tick (0.01 - 1)": 0.1, "Controls timer tick (0.01 - 1)": 0.5, "Accuracy of fire (lower is better)": 10.0, "Find entities radius": 30.0, "Movement speed (1 - 4)": 4, "Movement speed in water (1 - 4)": 2, "Suicide timer if the bot does not reach the destination point (0 - disables the timer)": 600.0, "Timer attempt to avoid obstacle if the bot does not reach the target route": 3.0, "Damage rate from water": 1.0, "Allowed distance to teleport if the bot does not reach the destination point within this distance (-1 - allowed for any distance)": 0.0, "Damage rate to NPC targets": 2.0, "Damage rate to animals": 2.0, "Damage rate to players": 0.8, "Damage rate from NPCs": 0.2, "Damage rate from animals": 0.2, "Damage rate from players": 0.8 }, "Wear items (on respawn)": { "Lock container? (true - after death loot won't drop)": true, "Allow bot to wear found clothes?": false, "List of items": [ { "Item shortname or ID": "hazmatsuit.frontier", "Item skin": 0 } ] }, "Resource collection": { "Allow to gather wood?": false, "Allow to use fuel for chainsaw?": false, "Allow to mine ore?": false, "Allow to loot barrels?": false, "Allow to loot road signs?": false, "Allow to pickup resources?": false, "Allow to pickup dropped items?": true, "Allow to loot containers?": false, "Allow to loot corpses?": false, "Allow to harvest corpses?": true, "List of prefabs of corpses to harvest": [ "assets/rust.ai/agents/boar/boar.corpse.prefab", "polarbear.corpse", "bear.corpse", "stag.corpse", "wolf.corpse", "crocodile.corpse", "panther.corpse", "tiger.corpse", "chicken.corpse" ], "List of prefabs blocked for mining": [ "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree03.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtreeprefab.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree02.prefab" ] }, "Fights with NPCs and players": { "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 1.0 }, "Animal hunting": { "Allow to hunt? (true - will attack animals even if they are not attacking)": true, "Make melee weapons preferred for hunting?": false, "Maximum distance for attack from weapon": 25.0, "Maximum distance for attack from melee": 2.0, "List of prefabs of animals to block hunting them": [] }, "Inventory overflow": { "Stash setup (bot will put items in the stash)": { "Enable?": true, "Hide stash?": true, "Life time (0 - will exist until restart)": 3600.0, "Maximum amount to use (0 - without limit)": 10 }, "Box setup (bot will put items in the box)": { "Enable?": true, "Use small box?": true, "Box skin": 0, "Life time (0 - will exist until restart or until it dies)": 3600.0, "Maximum amount to use (0 - without limit)": 5, "Another container prefab (you can leave it empty)": "" } }, "Monuments visit setup": { "Amount of random positions to visit on monument": 5, "List of monument prefabs blocked for visiting": [] }, "Items for ore mining": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "jackhammer", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "diverpickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stone.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for tree gathering": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "chainsaw", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "frontier_hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stonehatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for fights": { "Use ammo?": false, "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "shotgun.spas12", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "bow.hunting", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "1965232394", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "salvaged.cleaver", "Item skin": 0 } } ], "Amount of ammo to give for weapon if respawning is allowed": 300 }, "Items for harvesting animals": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "knife.skinning", "Item skin": 0 } } ] }, "Items for healing": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "syringe.medical", "Item skin": 0 }, "Amount of items to give when respawning": 5 }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "bandage", "Item skin": 0 }, "Amount of items to give when respawning": 1 } ] }, "Voice phrases for different actions": { "Use voice phrases?": true, "Phrases for the Miner state": { "Phrases when picking up resources": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when picking up items": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when gathering trees": { "Phrases": [ "uinston/miner/mining_tree/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when mining ore": { "Phrases": [ "uinston/miner/mining_ore/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting containers": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when breaking containers (barrels, signs and etc.)": { "Phrases": [ "uinston/miner/breaking/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting corpses": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when harvesting corpses": { "Phrases": [ "uinston/miner/butcher_corpse/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Hunter state": { "Phrases before starting to attack": { "Phrases": [ "uinston/hunter/start_attack/1", "uinston/hunter/start_attack/2" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Fight state": { "Phrases before starting to attack": { "Phrases": [ "uinston/attacker/start_attack/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot does not see the target": { "Phrases": [ "uinston/attacker/not_visible/1", "uinston/attacker/not_visible/2", "uinston/attacker/not_visible/3" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot runs away from the attacker": { "Phrases": [ "uinston/attacker/run_away/1", "uinston/attacker/run_away/2", "uinston/attacker/run_away/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Researcher state": { "Phrases before starting to move to the monument point": { "Phrases": [ "uinston/researcher/before_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when reaching the destination": { "Phrases": [ "uinston/researcher/after_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases when creating a container with resources": { "Phrases": [ "uinston/full_state/1", "uinston/full_state/2" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when healing": { "Phrases": [ "uinston/medical_state/1", "uinston/medical_state/2", "uinston/medical_state/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } } }, "austin_fighter": { "Enable bot?": true, "Bot appearance (Use the id in the range of the specified number of digits for the bot ID generator or leave 0 for random appearance)": 0, "Bot name (leave empty for random)": "Austin", "Respawn timer (3 - 60 seconds)": 300.0, "Use for respawn a random place on the map? (false - will respawn on the beach)": false, "Maximum health": 120.0, "What spawns on death (PlayerCorpse, NpcCorpse, Backpack)": "PlayerCorpse", "How many items will be destroyed when Backpack is selected (0 - 100%)": 0.0, "Bot behaviour - Aggressive, Friendly, Defensive": "Aggressive", "Controller setup": { "Brain timer tick (0.01 - 1)": 0.1, "Controls timer tick (0.01 - 1)": 0.5, "Accuracy of fire (lower is better)": 3.0, "Find entities radius": 30.0, "Movement speed (1 - 4)": 4, "Movement speed in water (1 - 4)": 2, "Suicide timer if the bot does not reach the destination point (0 - disables the timer)": 600.0, "Timer attempt to avoid obstacle if the bot does not reach the target route": 3.0, "Damage rate from water": 0.0, "Allowed distance to teleport if the bot does not reach the destination point within this distance (-1 - allowed for any distance)": 0.0, "Damage rate to NPC targets": 2.0, "Damage rate to animals": 2.0, "Damage rate to players": 0.8, "Damage rate from NPCs": 0.2, "Damage rate from animals": 0.2, "Damage rate from players": 0.8 }, "Wear items (on respawn)": { "Lock container? (true - after death loot won't drop)": true, "Allow bot to wear found clothes?": false, "List of items": [ { "Item shortname or ID": "hazmat.krieg", "Item skin": 0 } ] }, "Resource collection": { "Allow to gather wood?": false, "Allow to use fuel for chainsaw?": false, "Allow to mine ore?": false, "Allow to loot barrels?": true, "Allow to loot road signs?": false, "Allow to pickup resources?": false, "Allow to pickup dropped items?": true, "Allow to loot containers?": true, "Allow to loot corpses?": true, "Allow to harvest corpses?": false, "List of prefabs of corpses to harvest": [ "assets/rust.ai/agents/boar/boar.corpse.prefab", "polarbear.corpse", "bear.corpse", "stag.corpse", "wolf.corpse", "crocodile.corpse", "panther.corpse", "tiger.corpse", "chicken.corpse" ], "List of prefabs blocked for mining": [ "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree03.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtreeprefab.prefab", "assets/bundled/prefabs/autospawn/resource/vine_swinging/vineswingingtree02.prefab" ] }, "Fights with NPCs and players": { "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 1.0 }, "Animal hunting": { "Allow to hunt? (true - will attack animals even if they are not attacking)": false, "Make melee weapons preferred for hunting?": false, "Maximum distance for attack from weapon": 30.0, "Maximum distance for attack from melee": 2.0, "List of prefabs of animals to block hunting them": [] }, "Inventory overflow": { "Stash setup (bot will put items in the stash)": { "Enable?": true, "Hide stash?": true, "Life time (0 - will exist until restart)": 3600.0, "Maximum amount to use (0 - without limit)": 10 }, "Box setup (bot will put items in the box)": { "Enable?": true, "Use small box?": true, "Box skin": 0, "Life time (0 - will exist until restart or until it dies)": 3600.0, "Maximum amount to use (0 - without limit)": 5, "Another container prefab (you can leave it empty)": "" } }, "Monuments visit setup": { "Amount of random positions to visit on monument": 5, "List of monument prefabs blocked for visiting": [] }, "Items for ore mining": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "jackhammer", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "diverpickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stone.pickaxe", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for tree gathering": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "chainsaw", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "lumberjack.hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "frontier_hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "hatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "stonehatchet", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "rock", "Item skin": 0 } } ] }, "Items for fights": { "Use ammo?": false, "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": false, "Allow to give item when respawning?": true, "Item": { "Item shortname or ID": "krieg.shotgun", "Item skin": 0 } }, { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "krieg.chainsword", "Item skin": 0 } } ], "Amount of ammo to give for weapon if respawning is allowed": 300 }, "Items for harvesting animals": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "knife.skinning", "Item skin": 0 } } ] }, "Items for healing": { "List of items (in priority order)": [ { "Allow to create item if it is not in inventory?": true, "Allow to give item when respawning?": false, "Item": { "Item shortname or ID": "syringe.medical", "Item skin": 0 }, "Amount of items to give when respawning": 5 } ] }, "Voice phrases for different actions": { "Use voice phrases?": true, "Phrases for the Miner state": { "Phrases when picking up resources": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when picking up items": { "Phrases": [ "uinston/miner/pickup_collectable/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when gathering trees": { "Phrases": [ "uinston/miner/mining_tree/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when mining ore": { "Phrases": [ "uinston/miner/mining_ore/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting containers": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when breaking containers (barrels, signs and etc.)": { "Phrases": [ "uinston/miner/breaking/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when looting corpses": { "Phrases": [ "uinston/miner/looting/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when harvesting corpses": { "Phrases": [ "uinston/miner/butcher_corpse/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Hunter state": { "Phrases before starting to attack": { "Phrases": [ "uinston/hunter/start_attack/1", "uinston/hunter/start_attack/2" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Fight state": { "Phrases before starting to attack": { "Phrases": [ "uinston/attacker/start_attack/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot does not see the target": { "Phrases": [ "uinston/attacker/not_visible/1", "uinston/attacker/not_visible/2", "uinston/attacker/not_visible/3" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when the bot runs away from the attacker": { "Phrases": [ "uinston/attacker/run_away/1", "uinston/attacker/run_away/2", "uinston/attacker/run_away/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases for the Researcher state": { "Phrases before starting to move to the monument point": { "Phrases": [ "uinston/researcher/before_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when reaching the destination": { "Phrases": [ "uinston/researcher/after_move/1" ], "Chance of using phrases (% 0 - 100)": 30.0 } }, "Phrases when creating a container with resources": { "Phrases": [ "uinston/full_state/1", "uinston/full_state/2" ], "Chance of using phrases (% 0 - 100)": 30.0 }, "Phrases when healing": { "Phrases": [ "uinston/medical_state/1", "uinston/medical_state/2", "uinston/medical_state/3" ], "Chance of using phrases (% 0 - 100)": 30.0 } } } } }
-
Item Insurance
Allow players can insure lost items to be retrieved for a price. This is a feature that is present in many extraction and survival multiplayer games like Escape from Tarkov, Dark and Darker and now you can bring it to your Rust server as well! If an item is insured and you drop it (from death or otherwise) then as long as no one else loots it - you can request to have it "retrieved" by your insurer and returned to you. A UI that matches seamlessly with vanilla rust is included and many configuration options are available to balance and fine-tune this plugin for your server. Please refer to the documentation section as that will likely answer most of your questions!
Documentation:
A full readme including permissions, commands, 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!
-
Ostankino: heli tower
This is not just a tower - it is a fully realized and meticulously crafted monument inspired by the Ostankino Tower, designed specifically for taking down the patrol helicopter. It fits seamlessly into Rust’s style and atmosphere, staying perfectly within the game’s visual and thematic boundaries.
There are no blurry textures, no flickering - every element is built with care and precision.
The shooting range lights are turned on using a switch.
The tower features four dedicated levels for engaging the helicopter:
- Lower level
- Middle level
- Two upper levels
The structure is visible from an impressive distance, becoming a true landmark on the map. And despite containing around five thousand prefabs, the monument remains well-optimized and runs smoothly.
A high level of detail, thoughtful structure, and clean execution make this monument feel like an authentic part of Rust’s world.
Rust - 2025-11-19 20-58-51.mp4- #heli
- #heli tower
-
(and 7 more)
Tagged with:
-
Blueprint Trailers📘
If you also find the new blueprint update a bit strange or unbalanced, this pack can help your players progress a bit faster by offering alternate ways to find blueprint fragments.
These trailers can be placed both at Tier 1 monuments or along roadside locations.
Each trailer has built-in lighting that can be toggled using a switch — just like in standard Rust monuments.
Trailer Variations:
🔴 Red Card Trailer
– Contains 2 blueprints
– Requires a blue keycard and a battery
– Guarded by 5 scientists
– Triggers a light-only alarm when activated (no sound)
🔵 Blue Card Trailer
– Contains 1 blueprint
– Requires a green keycard
– Small loot inside + a blue keycard
– The blueprint is used for Workbench Level 2
🟢 Green Card Trailer (Variant 1)
– Requires a green keycard
– Light loot
– Contains 1 basic blueprint
🟢 Green Card Trailer (Variant 2)
– Easiest version
– Requires only a battery
– Ideal for placement at ports or ferry terminals
If you have any questions or run into issues — feel free to reach out!
Rust - 2025-10-20 12-26-19.mp4- #blueprints
- #pvp
- (and 4 more)
-
Rust Wipe Info Plus
By DarkSilver in Plugins
🧭 RustWipeInfoPlus
A complete wipe tracking and server information plugin for Rust — automatically updates your hostname, map name, and Discord announcements whenever a wipe occurs.
🧩 Main Features
🔁 Automatic wipe detection (detects map, seed, or level changes)
🕒 “Time since wipe” counter for hostname and map name
⚙️ Manual override system (ManualStartISO or ManualStartUnix)
🗺️ Custom map labels (show your own map name or brand)
💬 Discord webhook notifications with rich embeds and color
🎨 Customizable embed color, title, and content (@everyone support)
🧾 Message placeholders:
{level}, {size}, {seed}, {iso}, {age}, {days}, {hostname}, {serverip}, {port},
⚡ Auto-update loop that keeps your info fresh in real time
🧰 Works with both Carbon and uMod (Oxide)
🧱 Installation
Upload RustWipeInfoPlus.cs to your oxide/plugins/ folder.
Reload the plugin:
oxide.reload RustWipeInfoPlus Edit your generated config in oxide/config/RustWipeInfoPlus.json.
Add your Discord webhook URL and optional message ID.
⚙️ Example Config
"General": { "CustomLabel": "Isla Rustalia 3700 — testing.com", "PrependMapInfo": false, "MaxLength": 70 }, "HostnameTag": { "Enable": true, "Format": "Wiped: {0} ago", "Separator": " | ", "Position": "suffix", "BaseHostname": "testing [LATAM] PVE" }, "Webhook": { "Enable": true, "Url": "https://discord.com/api/webhooks/XXXX/XXXX", "MessageTemplate": "TESTING [PVE] Wipeo!\n\nMapa: {level} {size} (Seed {seed})\nWipe time: {iso}\nIP: {serverip}:{port}", "UseEmbed": true, "ContentTemplate": "@everyone", "EmbedTitle": "TESTING WIPEO BIENVENIDOS", "EmbedColor": 16711680, "AllowEveryone": true, "EditInsteadOfPost": true, "MessageId": "123456789012345678" } 🧩 Commands
| Command | Permission | Description | | ------------------------------------- | ---------------------- | ------------------------------------ | | `/mapname.info` | rustwipeinfoplus.admin | Shows current wipe info and hostname | | `/mapname.resetage` | rustwipeinfoplus.admin | Resets wipe timer to now | | `/mapname.setdate <YYYY-MM-DD HH:mm>` | rustwipeinfoplus.admin | Manually set wipe start | | `/mapname.clearmanual` | rustwipeinfoplus.admin | Clears manual override | | `/mapname.forceapply` | rustwipeinfoplus.admin | Forces reapply of mapname/hostname | | `/mapname.dstest` | rustwipeinfoplus.admin | Sends a test Discord message |
