/// SUPPORTED THIRD-PARTY PLUGIN
Backpacks
Free guide for configuring this third-party plugin in the Hub. To install it, use its plugin page or official source.
Prepare your file
- Check the installed version
This guide describes Backpacks 3.17.8. Use the same version in the configurator.
- Get the settings
Click Import, then From my server. Select the files and confirm loading them. Selecting a server does not replace the open document. You can also import files from this device or a configuration from My projects.
- Edit and send
Adjust settings, fix errors, then use Send to transfer files to the selected server. A conflict blocks sending until you choose how to resolve it. You can still export only the files you need.
Server transfers have private backups. Save keeps your work in My projects; it does not send anything to the server. A download also lets you resume without a server connection.
Settings for this version
General 3
- Drop on death
- On / off · required
Drop the backpack into the world when the player dies. If erase-on-death is enabled, erasing takes priority and contents are lost.
JSON path
Drop on Death (true/false) - Erase on death
- On / off · required
Erase backpack contents on every death. This is destructive and takes priority over dropping the backpack on death.
JSON path
Erase on Death (true/false) - Minimum despawn time (seconds)
- Number · required
Minimum time before a dropped backpack despawns, in seconds. It gives players time to recover contents after death.
JSON path
Minimum Despawn Time (Seconds)Minimum : 0
Backpack size 4
- Default slots
- Whole number · required
Slots granted without a larger-size permission. Count individual slots, not rows of six.
JSON path
Backpack size → Default sizeMinimum : 1
- Maximum slots per page
- Whole number · required
Maximum slots on each backpack page, up to 48. Larger backpacks use multiple pages rather than being reduced to this size.
JSON path
Backpack size → Max size per pageMinimum : 1 · Maximum : 48
- Enable legacy row permissions
- On / off · required
Recognize legacy backpacks.use.1 through .8 permissions measured in rows. Disable if using only current size permissions.
JSON path
Backpack size → Enable legacy backpacks.use.1-8 row permissions - Permission sizes
- List · required
Create backpack capacities grantable with backpacks.size.<number> permissions, measured in slots. With several size permissions, the largest capacity wins; adding a number here does not grant that permission to players.
JSON path
Backpack size → Permission sizes
Clear on wipe 3
- Enable wipe clearing
- On / off · required
Apply backpack-cleanup rules on wipe. Review what is retained before enabling: cleanup can delete items.
JSON path
Clear on wipe → Enabled - Enable legacy keeponwipe permission
- On / off · required
Recognize the legacy backpacks.keeponwipe permission for preserving contents on wipe, alongside the current rules system.
JSON path
Clear on wipe → Enable legacy keeponwipe permission - Keep-on-wipe permission rulesets
- JSON value · required
Assign wipe-retention rules with backpacks.keeponwipe.<Name>. If several permissions match, the last matching list entry wins; rules are not merged. Without a match, default rules apply.
JSON path
Clear on wipe → Rulesets by permission
Backpack pagination 2
- Page buttons on container bar
- On / off · required
Place page-navigation buttons on the backpack container bar instead of their alternate location.
JSON path
Container UI → Show page buttons on container bar - Maximum visible page buttons
- Whole number · required
Limit numbered buttons around the active backpack page. Arrows navigate pages not shown; a negative value shows all pages. This does not reduce backpack capacity.
JSON path
Container UI → Max page buttons to show
Backpack button 5
- Enable button
- On / off · required
Enable the backpack-opening UI button. Players still need the relevant permissions to use it.
JSON path
GUI Button → Enabled - Shown by default
- On / off · required
Show the button by default for permitted players, before their personal visibility preference.
JSON path
GUI Button → Enabled by default (for players with permission) - Skin ID
- Whole number · required
Show the selected saddlebag skin on the backpack-opening button. Any non-zero value uses that skin and ignores Image; set 0 to use the remote image instead.
JSON path
GUI Button → Skin IdMinimum : 0
- Image URL
- Text · required
Replace the backpack-opening button artwork with a remote image, only when Skin Id is 0. Use a direct image address accessible to players; otherwise this field has no visible effect.
JSON path
GUI Button → Image - Background color
- Text · required
Tint the backpack-opening button’s background without recoloring its artwork. The four Rust values are red, green, blue and opacity from 0 to 1; opacity 0 hides the background.
JSON path
GUI Button → Background Color
Item restrictions 4
- Enable restrictions
- On / off · required
Check rules allowing or denying items in backpacks. Disable to stop applying this filter.
JSON path
Item restrictions → Enabled - Enable legacy noblacklist permission
- On / off · required
Recognize the legacy backpacks.noblacklist permission that bypasses item restrictions.
JSON path
Item restrictions → Enable legacy noblacklist permission - Denied-item effect
- Text · required
Rust effect path played when an item is denied by restrictions. Use an existing game effect, not an image URL.
JSON path
Item restrictions → Feedback effect - Permission rulesets
- JSON value · required
Assign storage rules with backpacks.restrictions.<Name>. If several permissions match, the last matching list entry wins; rules are not merged. Without a match, default rules apply.
JSON path
Item restrictions → Rulesets by permission
Softcore mode 1
- Reclaim fraction
- Number · required
Fraction of contents reclaimable through Softcore after death. 0 = none, 0.5 = half, 1 = all; applies only to that game mode.
JSON path
Softcore → Reclaim FractionMinimum : 0 · Maximum : 1
Dynamic size (experimental) 2
- Enable dynamic size
- On / off · required
Enable capacity profiles that can grow for each player. Experimental feature: earned capacity belongs to plugin data, not this JSON.
JSON path
Backpack size → Dynamic Size (EXPERIMENTAL) → Enabled - Size profiles
- JSON value · required
Each profile creates a backpacks.size.profile.<suffix> permission. Earned capacity for each player is stored separately by the plugin.
JSON path
Backpack size → Dynamic Size (EXPERIMENTAL) → Size profiles
Default wipe rules 8
- Permission suffix
- Text
Name of this wipe-retention rule. Named rules also identify rule permissions.
JSON path
Clear on wipe → Default ruleset → Name - Max slots to keep
- Whole number · required
Maximum slots to retain after wipe cleanup. -1 means no limit; 0 retains no slots.
JSON path
Clear on wipe → Default ruleset → Max slots to keepMinimum : -1
- Allowed categories
- JSON value · required
Rust categories that may survive wipe cleanup. All allows every category subject to exclusions. An empty list admits no items by category: an item or skin allowance is then needed.
JSON path
Clear on wipe → Default ruleset → Allowed item categories - Blocked categories
- JSON value · required
Item categories removed on wipe by this rule. Use exact Rust category names.
JSON path
Clear on wipe → Default ruleset → Disallowed item categories - Allowed item short names
- List · required
Allow these item short names before category checks, unless a prior skin denial or the same short-name denial applies. This can admit an item from a denied category.
JSON path
Clear on wipe → Default ruleset → Allowed item short names - Disallowed item short names
- List · required
Item short names excluded from wipe retention. Do not enter translated display names.
JSON path
Clear on wipe → Default ruleset → Disallowed item short names - Allowed skin IDs
- List · required
Allow items wearing these skins before short-name and category checks, unless the same skin is explicitly denied. A skin allowance can therefore override a denied category.
JSON path
Clear on wipe → Default ruleset → Allowed skin IDs - Disallowed skin IDs
- List · required
Skin IDs denied by this rule. Leave empty if no skin variant should be excluded.
JSON path
Clear on wipe → Default ruleset → Disallowed skin IDs
GUI Button Position 4
- Bottom-left corner
- Text · required
Place this corner within the screen. X: left (0) to right (1). Y: bottom (0) to top (1). Both corners define the area's size.
JSON path
GUI Button → GUI Button Position → Anchors Min - Top-right corner
- Text · required
Place this corner within the screen. X: left (0) to right (1). Y: bottom (0) to top (1). Both corners define the area's size.
JSON path
GUI Button → GUI Button Position → Anchors Max - Bottom-left offset
- Text · required
Move this corner in pixels. Positive X moves right; positive Y moves up.
JSON path
GUI Button → GUI Button Position → Offsets Min - Top-right offset
- Text · required
Move this corner in pixels. Positive X moves right; positive Y moves up.
JSON path
GUI Button → GUI Button Position → Offsets Max
Default item rules 7
- Permission suffix
- Text
Name of this storage rule. Named rules also identify rule permissions.
JSON path
Item restrictions → Default ruleset → Name - Allowed categories
- JSON value · required
Rust categories admitted into the backpack. All allows every category subject to exclusions. An empty list admits no items by category: an item or skin allowance is then needed.
JSON path
Item restrictions → Default ruleset → Allowed item categories - Blocked categories
- JSON value · required
Item categories denied in the backpack. Use exact Rust category names.
JSON path
Item restrictions → Default ruleset → Disallowed item categories - Allowed item short names
- List · required
Allow these item short names before category checks, unless a prior skin denial or the same short-name denial applies. This can admit an item from a denied category.
JSON path
Item restrictions → Default ruleset → Allowed item short names - Disallowed item short names
- List · required
Item short names denied in the backpack. Do not enter translated display names.
JSON path
Item restrictions → Default ruleset → Disallowed item short names - Allowed skin IDs
- List · required
Allow items wearing these skins before short-name and category checks, unless the same skin is explicitly denied. A skin allowance can therefore override a denied category.
JSON path
Item restrictions → Default ruleset → Allowed skin IDs - Disallowed skin IDs
- List · required
Skin IDs denied by this rule. Leave empty if no skin variant should be excluded.
JSON path
Item restrictions → Default ruleset → Disallowed skin IDs
Reset dynamic size on wipe 1
- Reset on wipe
- On / off · required
Reset earned dynamic capacity on wipe. This affects earned size, independently of item-retention rules.
JSON path
Backpack size → Dynamic Size (EXPERIMENTAL) → Reset dynamic size on wipe → Enabled
Plugin instructions
Backpacks 3.17.8
Configure Backpacks for free under Oxide using oxide/config/Backpacks.json. This guide covers the official uMod version 3.17.8 observed on 2026-10-11, under the MIT license.
Backpacks gives players extra inventory space with permission-based capacity, optional restrictions and death/wipe rules. With an SFTP-connected server, Install retrieves the offered release from uMod. Editing or exporting its configuration does not grant permissions or change player contents.
Reviewed on 2026-10-11, against the exact official 3.17.8 source. This release updates Rust inventory callbacks; configuration, defaults, permissions, commands and all 33 language messages are unchanged from 3.17.6. Existing 3.17.6 configuration files need no conversion. See WhiteThunder’s official guide for installation and usage.
Backpack size
Backpack size contains Default size, Max size per page (maximum 48), the legacy row-permission toggle, and Permission sizes. Each permission-size value generates backpacks.size.<number>.
The advanced Dynamic Size (EXPERIMENTAL) group contains Enabled, Reset dynamic size on wipe > Enabled, and Size profiles. Every profile has Permission suffix, Initial size, and Max size, and generates backpacks.size.profile.<suffix>.
Death, UI, and Softcore
Drop on Death (true/false),Erase on Death (true/false), andMinimum Despawn Time (Seconds)control death handling.GUI Buttoncontrols enablement, the new-player default,Skin Id,Image,Background Color, and the four anchor/offset strings underGUI Button Position.Container UIcontrols whether page buttons share the container bar and how many page buttons are visible.Softcore > Reclaim Fractionaccepts values from 0 to 1.
These settings describe Backpacks’ own Rust interface. Edit them in the configurator, not in PimpMyCUI Editor; they are not in PimpMyCUI format.
Item restrictions
Item restrictions contains Enabled, the legacy noblacklist permission toggle, Feedback effect, Default ruleset, and Rulesets by permission. Each ruleset contains allowed/disallowed Rust categories, item short names, and skin IDs. Permission rulesets additionally require Name and generate backpacks.restrictions.<name>.
Clear on wipe
Clear on wipe contains Enabled, the legacy keeponwipe permission toggle, Default ruleset, and Rulesets by permission. Wipe rulesets add Max slots to keep; -1 means unlimited. Named entries generate backpacks.keeponwipe.<name>.
Configuration and player data
Permission sizes, size profiles, and named rulesets are variable-length configuration lists, but player data is not stored here. Backpack contents are stored per player under Oxide’s Backpacks data directory; interface preferences and earned dynamic capacity are also kept in separate files. The configurator edits only Backpacks.json, not player IDs, backpack contents, preferences, or earned capacity.
Official source: https://umod.org/plugins/backpacks
Migration
Keys from versions before 3.9 are accepted only when Backpacks migrates an older file. Version 3.17.8 no longer writes them to its configuration, so the configurator does not offer them.
Recipe: start with 18 slots
- Set
Backpack size > Default sizeto18, keepMax size per pageat48, and leave dynamic size disabled. - After applying the exported file, grant
backpacks.useto the intended group. Grantbackpacks.guiseparately if the enabled button should be visible. - Reload
Backpacksand test/backpackwith an ordinary player without a competing size permission.
For a group-specific capacity instead, ensure 18 exists in Permission sizes and grant backpacks.size.18. Permissions are applied on the server, not by exporting JSON.
Recipe: drop contents on death
- Set
Drop on Death (true/false)totrueandErase on Death (true/false)tofalse. - Keep
Minimum Despawn Time (Seconds)at300initially, and review intentionalbackpacks.keepondeathexemptions. - On a test server, put a disposable item in the backpack and verify death, recovery and despawn with a non-exempt player.
If both death switches are true, erase takes precedence. backpacks.keepondeath exempts a player from both dropping and erasing. These tests can lose items; do not use live player contents.
Permissions and limits
backpacks.use: open your own backpack;backpacks.gui: see the enabled button.backpacks.size.<slots>: use a capacity listed inPermission sizes.backpacks.keepondeath: keep contents despite death rules.backpacks.admin: administrative commands and editing other players’ backpacks. Restrict it to trusted staff; narrower admin permissions exist upstream.
A page holds at most 48 slots. Dynamic size is experimental and supplies no built-in progression system; upgrade integrations are separate. Oxide is the reviewed framework; this guide does not prove Carbon or future Rust compatibility. No server execution was performed for this editorial review.
Questions
Why does a player have more slots than the default?
The highest granted backpacks.size.<slots> wins over the default. With dynamic size enabled, granted profiles take priority over fixed sizes; multiple profiles use the highest initial and maximum capacities.
Does exporting clear backpacks?
No. Export downloads Backpacks.json only. Clear on wipe > Enabled is false in the pinned default; enabling it changes future wipe behavior according to rulesets and exemptions. Player contents, preferences and earned capacity are not exported.
Install the files
With a connected server, click Send in the configurator. The result shows whether the files were sent and the plugin reloaded. Without RCON, reload the plugin from your server panel after sending.
Without a connected server: Keep a copy of the current files. Place each export in the folder shown before export, or follow the paths in the ZIP. Do not put data or translation files in the config folder.
Follow the plugin instructions above for dependencies and reloading. Exporting does not connect the site to your server.