Basic Player Setup
This is the minimal setup to get inventory working:- Open your Player Character Blueprint (or C++ class)
-
Add InventoryComponent:
- In the Blueprint editor, click Add Component
-
Search for
InventoryComponent - Add it to your character
-
Configure in the Details panel:
Max Slots: 30 (or your desired amount)Max Weight: 100.0 (or 0 for unlimited)Inventory Type: Standard
-
Add PlayerProfileComponent:
- Add Component >
PlayerProfileComponent - This will be auto-configured on BeginPlay to find your inventory
- Add Component >
Advanced Player Setup
For full functionality, add these additional components: 1. Equipment System-
Add
EquipmentComponentto your character - Add skeletal mesh components for each equipment slot (Head, Chest, etc.)
-
In the EquipmentComponent details:
- Set
Base Meshto your character’s main skeletal mesh - Click Setup Standard Armor Slots or Setup Weapon Slots for presets
- Or manually configure slots in the
Equipment Slotsarray
- Set
- Add
HotbarComponentto your character - Configure
Max Slots(typically 9 for number keys) - Enable
Auto Refill Enabledfor automatic refilling - The component will automatically link to your main inventory on BeginPlay
- Open your Player Controller Blueprint
- Add
InteractionComponent - Configure trace settings
- Bind to Enhanced Input (or create Input Action)
- Add
AbilitySystemComponentto your character - Link it to PlayerProfileComponent (happens automatically)
- Grant default abilities on BeginPlay if needed
Full Player Setup Example (Blueprint)
In your Player Character Blueprint:-
Components:
- InventoryComponent (Main Storage)
- InventoryComponent (Equipment Storage)
- HotbarComponent
- EquipmentComponent
- PlayerProfileComponent
- AbilitySystemComponent (if using GAS)
- Event Graph - BeginPlay:
-
Components:
- InteractionComponent
-
Enhanced Input Setup:
- Bind Interact input to
InteractionComponent → Handle Interaction Input - Bind Hotbar inputs to
HotbarComponent → Use Hotbar Slot - Bind Inventory toggle to
PlayerProfileComponent → Toggle Inventory
- Bind Interact input to