Skip to content

Resource Pack Backpack Models

ausmez edited this page Oct 5, 2026 · 1 revision

Pack type: Resource pack · Location: assets/fxntstorage/

Part of Customizing Create: Storage. New to resource packs? Start with Resource packs there.

Every backpack appearance (in the inventory and hand, placed in the world, and worn on a player) comes from standard Minecraft model and texture files, so a resource pack can replace any of them without code.

Contents


Backpack types

Type File prefix
Industrial Iron backpack
Andesite andesite_backpack
Copper copper_backpack
Brass brass_backpack
Hardened hardened_backpack

Below, <type> means one of the prefixes above. All paths are under assets/fxntstorage/.


Files

Appearance Model Default parent
Placed block models/block/<type>.json models/block/backpack.json (the shared geometry)
Inventory / hand / dropped models/item/<type>.json models/block/<type>.json + display transforms
Worn on player models/block/<type>_worn.json models/block/<type>.json

Textures live at textures/block/<type>.png (128×128 by default) and are referenced from the models' textures block, so you can also point a model at any texture of your own.

Because each model inherits from the one above it, overriding a parent changes everything below it:

  • Retexture everything — replace textures/block/<type>.png.
  • Reshape every appearance — replace models/block/backpack.json (all types) or models/block/<type>.json (one type).
  • Change only the worn look — replace models/block/<type>_worn.json with its own elements, or point its parent at a different model.
  • Change only the item look — replace models/item/<type>.json.

Worn model coordinates

The worn model uses the same 0–16 block grid as the placed model and is attached to the player's body, following it as the player walks and crouches:

  • North (−Z) faces away from the player's back (the front pocket side).
  • South (+Z) rests against the player's back.
  • Y = 0 is the bottom of the backpack.

The easiest workflow is to edit the block model in Blockbench (Java Block/Item format), check it placed in the world, then copy it to <type>_worn.json if you want the worn version to differ.

Notes:

  • Models render with cutout transparency, so pixels are either fully opaque or fully transparent.

Block outline

The black outline shown when looking at a placed backpack, and the area you can click, follow the placed block model (models/block/<type>.json and its parents). Each of the model's elements becomes a box in the outline, so a reshaped backpack gets a matching outline automatically after F3 + T.

  • Element rotations are ignored: a rotated element is outlined as if it weren't rotated.
  • If the model has no elements (for example, a model from a custom model loader), the default outline is used.
  • The collision shape (what players and mobs bump into) doesn't change. It has to be the same on the server and every client, and resource packs are client-only.

Workshop flywheels

A backpack with an active Portable Workshop upgrade shows small spinning flywheels. By default, there are two, one on each side. Their position, size and count can be set per backpack type, and they have their own model.

Layout files

File Used for
backpack_flywheels/<type>.json One backpack type
backpack_flywheels/default.json Every type without its own file

The default file ships with the mod:

{
  "flywheels": [
    {
      "position": [ 1.92, 6.4, 8 ],
      "size": 2.4,
      "axis": "x"
    },
    {
      "position": [ 14.08, 6.4, 8 ],
      "size": 2.4,
      "axis": "x"
    }
  ]
}
Field Required Description
flywheels Yes A list of flywheels. Each entry draws one flywheel, and an empty list hides them.
worn No Replaces flywheels while the backpack is worn. Use it if your <type>_worn.json model is shaped differently from the block model.

Each flywheel entry has:

Field Default Description
position — The flywheel's centre as [x, y, z], in the backpack model's 0–16 pixel grid.
size 2.4 Diameter in pixels on the pixel grid.
axis "x" The axis the flywheel spins around: "x", "y" or "z".
reverse false Set to true to spin the flywheel the other way, e.g. a counter-rotating pair.

Positions use the same grid as the backpack model, so you can read coordinates straight from Blockbench. The flywheels stay lined up with the placed, held and worn backpack, including while the player crouches.

Examples

A single, larger flywheel on the back, at the south side against the player:

{
  "flywheels": [
    {
      "position": [ 8, 6, 13 ],
      "size": 4,
      "axis": "z"
    }
  ]
}

No flywheels for this backpack type:

{
  "flywheels": []
}

A counter-rotating pair:

{
  "flywheels": [
    {
      "position": [ 1.92, 6.4, 8 ]
    },
    {
      "position": [ 14.08, 6.4, 8 ],
      "reverse": true
    }
  ]
}

Flywheels on the placed block only, hidden while worn:

{
  "flywheels": [
    {
      "position": [ 1.92, 6.4, 8 ]
    },
    {
      "position": [ 14.08, 6.4, 8 ]
    }
  ],
  "worn": []
}

Flywheel model

The flywheels use models/block/backpack_flywheel.json, which by default points to Create's flywheel mesh. Replacing it changes only the backpack flywheels. Create's flywheel blocks keep their normal look.

  • Build the model as a full 0–16 block, lying flat and spinning around the Y axis, like Create's flywheel. It is scaled down to size and turned onto the axis set in the layout.
  • The model is shared by all backpack types.

Notes:

  • Press F3 + T to reload resource packs and see layout or model changes.
  • If a layout file has an error, the error is logged in latest.log and the file is ignored, so that backpack type uses the default layout.
  • Players can still turn the flywheels off entirely with the workshopFlywheelVisuals client config option.

Home

Using the mod

Customizing the mod

Clone this wiki locally