Most loot plugins replace Rust's loot tables entirely, wiping out the vanilla loot in the process. Loot Inject works differently. It adds items to crates and barrels without touching what's already there, or swaps out specific items one at a time.
You set up rules that say things like "5% chance an AK shows up in elite crates" or "replace every MP5 at Launch Site with a Custom SMG". You can control the stack size, spawn chance, item condition, skin, weapon attachments, and loaded ammo. Rules are grouped into profiles so you can turn whole sets on or off with a single switch.
Each rule has two jobs:
Use this when you want to give players a chance at bonus loot, for example a small chance of an AK in every elite crate, or guaranteed extra scrap in barrels.
Use this when you want to change what a crate gives out without rewriting the whole loot table, for example replacing every MP5 at Launch Site with a Custom SMG, or swapping low tier medical supplies for bandages.
The key of each profile (for example
To apply injections everywhere on the map, leave
You set up rules that say things like "5% chance an AK shows up in elite crates" or "replace every MP5 at Launch Site with a Custom SMG". You can control the stack size, spawn chance, item condition, skin, weapon attachments, and loaded ammo. Rules are grouped into profiles so you can turn whole sets on or off with a single switch.
How It Works
Every time a crate, barrel, or other loot container spawns, the plugin checks your rules and decides whether to add, replace, or leave items as they are. Vanilla loot still spawns normally, your rules just modify what ends up inside.Each rule has two jobs:
- Decide which containers it cares about (which crate types, and optionally which monuments)
- Decide what to do when it finds one (add an item, or replace an item)
Add Mode
Drops a new item into the container next to the existing loot. If the container is already full, you can either tell the plugin to skip the item or to make room by adding an extra slot.Use this when you want to give players a chance at bonus loot, for example a small chance of an AK in every elite crate, or guaranteed extra scrap in barrels.
Replace Mode
Looks for a specific item in the container and swaps it for a different one. Everything else in the container stays untouched.Use this when you want to change what a crate gives out without rewriting the whole loot table, for example replacing every MP5 at Launch Site with a Custom SMG, or swapping low tier medical supplies for bandages.
Configuration
JSON:
{
"Global Settings": {
"Enable Debug Logging (shows injection details in console)": false,
"Process Already Spawned Containers On Plugin Load/Reload": true
},
"Loot Profiles": {
"Example - Add Items": {
"Enabled": false,
"Injections": [
{
"Replace Existing Item (false = add new item to loot)": false,
"Item Shortname (item to add, or item to find if replacing)": "rifle.ak",
"Replacement Item Shortname (only used when replacing)": null,
"Target Container Prefabs (full prefab path e.g. assets/bundled/prefabs/radtown/crate_elite.prefab)": [
"assets/bundled/prefabs/radtown/crate_elite.prefab",
"assets/bundled/prefabs/radtown/crate_normal.prefab"
],
"Only At Monuments (leave empty to apply everywhere)": [],
"Spawn As Blueprint Instead Of Item": false,
"Minimum Stack Amount": 1,
"Maximum Stack Amount": 1,
"Chance To Spawn Percent (0-100)": 5.0,
"Item Condition Percent (0-100, only for items with durability)": 100.0,
"Custom Display Name (empty = default item name)": "",
"Skin ID (0 = default skin)": 0,
"Weapon Attachments (e.g. weapon.mod.holosight, weapon.mod.silencer)": [
"weapon.mod.holosight"
],
"Loaded Ammo (only for weapons)": {
"Ammo Type Shortname (e.g. ammo.rifle, ammo.pistol)": "ammo.rifle",
"Amount To Load In Magazine": 30
},
"Expand Container Capacity When Full (false = skip injection if no room)": false
}
]
},
"Example - Replace Items": {
"Enabled": false,
"Injections": [
{
"Replace Existing Item (false = add new item to loot)": true,
"Item Shortname (item to add, or item to find if replacing)": "smg.mp5",
"Replacement Item Shortname (only used when replacing)": "smg.2",
"Target Container Prefabs (full prefab path e.g. assets/bundled/prefabs/radtown/crate_elite.prefab)": [
"assets/bundled/prefabs/radtown/crate_elite.prefab"
],
"Only At Monuments (leave empty to apply everywhere)": ["Launch Site"],
"Spawn As Blueprint Instead Of Item": false,
"Minimum Stack Amount": 1,
"Maximum Stack Amount": 1,
"Chance To Spawn Percent (0-100)": 100.0,
"Item Condition Percent (0-100, only for items with durability)": 100.0,
"Custom Display Name (empty = default item name)": "",
"Skin ID (0 = default skin)": 0,
"Weapon Attachments (e.g. weapon.mod.holosight, weapon.mod.silencer)": [],
"Loaded Ammo (only for weapons)": null,
"Expand Container Capacity When Full (false = skip injection if no room)": false
}
]
}
}
}
Global Settings
Enable Debug Logging-- Prints detailed messages to the server console whenever a container is processed, an injection succeeds, or an injection is skipped. Useful while tuning rules, noisy in productionProcess Already Spawned Containers On Plugin Load/Reload-- When the plugin loads, iterate every existingLootContaineron the map and run injection rules against them. Set totrueif you want changes to take effect mid-wipe without a server restart
Loot Profiles
Profiles are named containers for groups of related injection rules. Each profile has its ownEnabled flag so you can switch whole rule sets on or off without editing individual rules.The key of each profile (for example
"Example - Add Items") is just a label for your own organization — it's not referenced anywhere except in debug logs. Use names that describe what the profile does (e.g. "Elite Crate Buffs", "Launch Site Only", "Scrap Rebalance").Enabled-- Master switch for the profile. When false, every rule inside it is skipped regardless of its own settingsInjections-- List of Injection Rules belonging to this profile
Injection Rules
Each rule is a single injection action — either "add this item" or "replace this item with that one" — scoped to specific containers and optionally specific monuments.Replace Existing Item-- Mode switch.falseruns the rule in Add Mode,trueruns it in Replace ModeItem Shortname-- In Add Mode, the item that gets inserted. In Replace Mode, the item the plugin searches for in the containerReplacement Item Shortname-- Only used in Replace Mode. The item that replaces each match. Ignored in Add ModeTarget Container Prefabs-- Full prefab paths of containers this rule applies to. Must be exact matches (e.g. assets/bundled/prefabs/radtown/crate_elite.prefab). Leave empty or omit to match every containerOnly At Monuments-- Monument name filter. Uses case-insensitive substring matching against the monument's display name (e.g."Launch Site","military","airfield"). Empty list means the rule runs everywhere on the map, including outside monumentsSpawn As Blueprint Instead Of Item-- Whentrue, the plugin creates a blueprint fragment of the item rather than the item itself. Ignores attachments, ammo, condition, and skin since those don't apply to blueprintsMinimum Stack Amount-- Lower bound of the random stack size. InclusiveMaximum Stack Amount-- Upper bound of the random stack size. Inclusive. For single items (weapons, tools), set both min and max to1Chance To Spawn Percent-- Probability the rule fires on a matching container.100always fires,5fires roughly 1 in 20 times. Rolled independently per container per ruleItem Condition Percent-- Condition of the injected item as a percentage of its max condition. Only applied to items that have durability (weapons, tools, armor).100= brand new,50= half health. Ignored for blueprints and items without conditionCustom Display Name-- Overrides the item's in-game name. Leave empty to use the default nameSkin ID-- Steam Workshop skin ID applied to the item.0keeps the default skinWeapon Attachments-- List of attachment shortnames to mount on the weapon (e.g.weapon.mod.holosight,weapon.mod.silencer,weapon.mod.lasersight). Only works on items that have a held entity inheriting fromBaseProjectile. Silently skipped for non-weaponsLoaded Ammo-- Pre-loads the weapon's magazine. Set tonullor omit entirely to leave the magazine empty. See Loaded Ammo for fieldsExpand Container Capacity When Full-- Add Mode only. When the container has no free slots,trueadds one slot to its capacity so the item can fit;falseskips the injection entirely
Loaded Ammo
Optional sub-object on each injection rule. Only applied to weapon items.Ammo Type Shortname-- Shortname of the ammo that fills the magazine. Must be a valid ammo itemAmount To Load In Magazine-- Number of rounds to load. Automatically clamped to the weapon's magazine capacity, so setting a huge number is safe — it just fills the mag
Finding Monument Names
Enable debug logging and reload the plugin to see monument names in console output. When you see "at monument: Launch Site", you can use "Launch Site" in yourOnly At Monuments filter.To apply injections everywhere on the map, leave
Only At Monuments as an empty array [].