Understanding Cube Inventory
Definitions and Runtime State
PDA_InventoryMaster describes an item shared by all its stacks: identity, stack limit, weight, type, tags and asset references. PDA_ItemDatabase registers item masters and supplies the default inventory route. A replicated entry stores SlotID, ItemID, StackSize and MaxStackSize; it does not replicate the full master, icon or description.
UInventoryComponent stores runtime entries and carry weight. UInventorySubSystem exposes lookups and operation calls. UInventoryManager resolves components and executes the operation context. Widgets display component snapshots and slot events.
Project settings → database loading → ItemID lookup
Server gameplay → subsystem → manager → inventory component
↓
Fast Array replication
↓
client slot events → widgets
Routing
Lookup searches components implementing I_InventoryManagerListener on the supplied Pawn, then on that Pawn's PlayerState. It compares InventoryIdentityTag by exact equality. Tags identify a component within that lookup context; a tag is not a global player identifier.
The words Character and PlayerState in built-in tag names express a convention. The resolver does not parse the tag to choose an owner class. Components on arbitrary world actors are not automatically discoverable through this Pawn-based lookup.
Project Responsibilities
Use the subsystem for standard gameplay calls, keep mutations on the server and read component state for UI. The project supplies permission checks, RPCs, persistence, consumption effects and trade rules. The component's low-level interface methods do not enforce authority or all capacity rules themselves. See Implementation Limits before using them directly.