Skip to content
← All documentation

/// 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

  1. Check the installed version

    This guide describes Backpacks 3.17.8. Use the same version in the configurator.

  2. 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.

  3. 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 pathDrop 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 pathErase 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 pathMinimum 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 pathBackpack size → Default size

Minimum : 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 pathBackpack size → Max size per page

Minimum : 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 pathBackpack 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 pathBackpack 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 pathClear 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 pathClear 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 pathClear 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 pathContainer 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 pathContainer 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 pathGUI Button → Enabled
Shown by default
On / off · required

Show the button by default for permitted players, before their personal visibility preference.

JSON pathGUI 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 pathGUI Button → Skin Id

Minimum : 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 pathGUI 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 pathGUI 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 pathItem restrictions → Enabled
Enable legacy noblacklist permission
On / off · required

Recognize the legacy backpacks.noblacklist permission that bypasses item restrictions.

JSON pathItem 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 pathItem 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 pathItem 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 pathSoftcore → Reclaim Fraction

Minimum : 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 pathBackpack 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 pathBackpack 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 pathClear 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 pathClear on wipe → Default ruleset → Max slots to keep

Minimum : -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 pathClear 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 pathClear 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 pathClear 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 pathClear 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 pathClear 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 pathClear 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 pathGUI 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 pathGUI 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 pathGUI 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 pathGUI 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 pathItem 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 pathItem restrictions → Default ruleset → Allowed item categories
Blocked categories
JSON value · required

Item categories denied in the backpack. Use exact Rust category names.

JSON pathItem 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 pathItem 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 pathItem 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 pathItem 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 pathItem 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 pathBackpack 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), and Minimum Despawn Time (Seconds) control death handling.
  • GUI Button controls enablement, the new-player default, Skin Id, Image, Background Color, and the four anchor/offset strings under GUI Button Position.
  • Container UI controls whether page buttons share the container bar and how many page buttons are visible.
  • Softcore > Reclaim Fraction accepts 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

  1. Set Backpack size > Default size to 18, keep Max size per page at 48, and leave dynamic size disabled.
  2. After applying the exported file, grant backpacks.use to the intended group. Grant backpacks.gui separately if the enabled button should be visible.
  3. Reload Backpacks and test /backpack with 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

  1. Set Drop on Death (true/false) to true and Erase on Death (true/false) to false.
  2. Keep Minimum Despawn Time (Seconds) at 300 initially, and review intentional backpacks.keepondeath exemptions.
  3. 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 in Permission 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.

Configuration and transfer guide →