Fragment reference
A fragment answers one question about an item. Absence is the default: an item with no Stack fragment does not stack, and one with no Size fragment is one cell.
All of them are USTRUCTs deriving from FEDItemFragment, stored in a definition's Fragments
array. None has virtual functions.
Core
Display
Name, description, icon, category label. What the UI reads.
| Field | Type |
|---|---|
| Display Name | FText |
| Description | FText |
| Category | FText — the label, distinct from the definition's category tag |
| Icon | TSoftObjectPtr<UTexture2D> — streamed asynchronously |
Stack
| Field | Meaning |
|---|---|
| Stackable | Whether stacks merge at all |
| Max Stack Size | Units per stack |
| Maximum Quantity | Cap across the whole inventory. 0 = uncapped |
Stacking also requires identical per-stack state and identical dynamic tags — see Items and fragments.
Size
| Field | Meaning |
|---|---|
| Width / Height | Cells covered in a grid layout |
| Use Shape | Whether the occupancy mask applies |
| Occupancy Mask | Per-cell booleans for non-rectangular items |
Rarity
| Field | Meaning |
|---|---|
| Rarity Tag | The tier, e.g. Inventory.Rarity.Epic |
| Color | Accent colour used by slots and tooltips |
| Tier | A number, for sorting |
Container Placement
Where the item wants to go. See Placement and routing.
| Field | Meaning |
|---|---|
| Preferred Containers | Ordered tags; the first that accepts wins |
| Container Query | Containers the item tolerates at all |
Nested Container
The item brings a container with it. See Nested containers.
| Field | Meaning |
|---|---|
| Container Definition | The container it brings |
| Container Filter / Slot Filter | Where the item must be for it to be open |
Prerequisites
Conditions checked before a container accepts the item, reported as player-readable text.
| Prerequisite | Checks |
|---|---|
| Required Item | Another item is held, or forbidden — bForbidden inverts it |
| Required Attribute (GAS) | A GAS attribute against a threshold |
Stat Rolls
Stats decided when the item is created rather than authored. Rolled once on the server, stored in the entry's state.
| Field | Meaning |
|---|---|
| Rolls | Per-stat tag, range and roll mode |
| Roll Mode | Uniform, weighted toward the middle, and so on |
World Model
How the item looks on the ground. See Items in the world.
| Field | Meaning |
|---|---|
| Model Type | Static mesh, skeletal mesh or actor class |
| Mesh / Actor Class | What to show |
| Override Material | Per-item material override |
| Offset / Rotation / Scale | Resting transform |
| Simulate Physics | Whether it falls |
Grants (GAS)
Effects, abilities and attribute sets granted while the item sits somewhere. See Gameplay Ability System.
| Field | Meaning |
|---|---|
| Effect Grants | Effect + condition |
| Ability Grants | Ability + condition |
| Attribute Set Grants | Attribute set + condition |
Each condition carries a Container Filter and a Slot Filter.
Equipment module
Equipment
| Field | Meaning |
|---|---|
| Equip Slot | The slot tag this item can be worn in |
Equipment Visuals
A list of states, each with filters deciding when it applies. See Equipment.
| Field | Meaning |
|---|---|
| Container / Slot / State Filter | When this state applies |
| Visual Type | Static mesh, skeletal mesh or actor |
| Mesh / Skeletal Mesh / Actor Class | What to show |
| Follows Avatar Pose | Whether a skeletal piece uses the character's animation |
| Anim Class / Avatar Anim Layer | Animation for the piece |
| Material | Override |
| Attach Socket / Offset / Rotation / Scale | Fit, relative to the slot anchor |
| Attach Finder | Which mesh to attach to |
| Prerequisites | Conditions the state requires |
| Gameplay Only | Grants effects, shows nothing |
Other modules
| Fragment | Module | Answers |
|---|---|---|
| Weight | Weight | Unit weight |
| Value | Trading | Base worth; without it an item cannot be sold |
| Usable | Usable | Use-effect tag, verb, consumption |
| Durability | Durability | Maximum durability and what happens at zero |
| Mutable Equipment | Equipment · Mutable | Customizable Object parameters to write while worn |
Reading a fragment
// From a definition
if (const FEDStackFragment* Stack = Definition->FindFragment<FEDStackFragment>()) { ... }
// From an entry, resolving the definition on the way
if (const FEDStackFragment* Stack = UEDItemFunctionLibrary::FindItemFragment<FEDStackFragment>(Entry)) { ... }
Get Fragment (Definition, wildcard out) → Boolean
Has Fragment Of Type (Definition, Struct) → Boolean
The Blueprint Get Fragment node is a wildcard: pick the struct type on the output pin and it copies the first matching fragment, returning false and leaving the default if there is none.
At most one fragment of each type per definition. Asset validation flags duplicates, because the second one would silently never be read.
Where next
- Items and fragments
- Extending — writing your own