Unreal Engine 5 C++ Inventory Systems
Intermediate LevelDevelopment

Unreal Engine 5 C++ Inventory Systems

Create a multiplayer-ready functional spatial inventory with equippables, stackables, and craftable items!

Created by Stephen Ulibarri
24.5 hours
Video Content
166
Lectures
1,824
Students
4.9
Rating
4.9
(1,824 students enrolled)

What you'll learn

Create and manage inventory systems in Unreal Engine
Code item interaction systems in a robust and scalable way
Code multiplayer inventory and item systems
Create spatial inventory grids with item categories
Implement stackable, consumable, and equippable items

Course Content

16 sections • 166 lectures • 24:35:43 total length

Introduction

12 lectures • 01:34:05

Welcome to the Course!04:15
1 - Section 1 Intro00:43
Project Creation and Assets02:23
Custom Character Mesh01:35
Creating a Plugin02:51
+7 more lectures

Inventory HUD

7 lectures • 01:24:14

Section 2 Intro01:07
Inventory Component15:51
Toggle Inventory10:31
Close Button05:42
Inventory Grid16:18
+2 more lectures

Inventory Data

9 lectures • 02:25:13

Section 3 Intro01:30
Fast Array Serializer22:47
Fast Array Functions12:17
No Room in Inventory24:34
Has Room for Item14:52
+4 more lectures

Item Fragments

13 lectures • 02:39:54

Section 4 Intro07:26
Item Fragment17:48
Image Fragment05:35
Inventory Grid Check14:47
Add Item To Indices06:43
+8 more lectures

Searching for a Place to Belong

17 lectures • 01:55:36

Has Room For Item - The Plan14:56
Is the Item Stackable03:20
How Many Stacks to Add02:08
Exiting the Loop Early02:24
Is Index Claimed04:29
+12 more lectures

Adding Stacks

4 lectures • 29:08

Total Stack Count05:48
On Picked Up11:03
On Stack Change04:12
Add Stacks08:05

Pick Up

7 lectures • 44:43

Section 7 Intro01:40
Hover Item12:00
Slotted Item Clicked06:54
Pointer Events06:15
Assign Hover Item07:24
+2 more lectures

Hover Item

14 lectures • 01:37:33

Section 8 Intro02:22
Tile Parameters07:02
Canvas and Mouse Position07:31
Hovered Coordinates06:12
Calculate Tile Quadrant06:39
+9 more lectures

Put Down

12 lectures • 01:38:19

Section 9 Intro00:58
Grid Slot Events11:49
On Grid Slot Clicked09:37
Put Down on Index08:37
Show and Hide Cursor17:06
+7 more lectures

Pop Up Menu

10 lectures • 01:09:57

Section 10 Intro01:19
Pop Up Menu Class04:33
Pop Up Widget Events02:48
Item Pop Up Delegates07:54
Finishing the Item Pop Up Class07:00
+5 more lectures

Dropping Items

7 lectures • 44:42

Section 11 Intro01:10
Drop Item05:09
Server Drop Item05:07
Spawn Dropped Item09:09
Spawn Pickup Actor08:21
+2 more lectures

Consuming Items

4 lectures • 28:01

Section 12 Intro01:06
On Pop Up Menu Consume04:54
Server Consume Item03:44
Consumable Fragments18:17

Item Description

5 lectures • 42:28

Section 13 Intro02:49
Item Description Widget04:46
Hover and Unhover for Slotted Items11:21
Creating an Item Description08:55
Set Item Description Size and Position14:37

The Composite Pattern

8 lectures • 02:06:00

The Composite Pattern06:06
Setting up the Composite Pattern13:43
Assimilate Inventory Fragments15:19
The Image Fragment12:30
The Text Fragment12:24
+3 more lectures

Equipping Items

22 lectures • 02:31:16

Section 15 Intro02:32
Equipped Grid Slots09:48
Hover Functionality08:23
Equipped Grid Slot Blueprints04:29
Grayed Out Icon03:49
+17 more lectures

Equipment Component

15 lectures • 02:24:34

Equipment Component13:29
Calling Equip Functions13:53
Equip Actor10:47
Spawning the Equip Actor12:01
Destroying the Equip Actor08:06
+10 more lectures

Description

In this course, you will learn how to create inventory systems for your games in Unreal Engine 5 using C++ and Blueprints.

We will create a spatial inventory with item grids for different categories (Equippable, Consumable, and Craftable) and the ability to switch between grids filled with items. Items can be different sizes, each taking up a different number of squares in the grid, and items can be stackable, allowing for splitting, combining, consuming, and dropping items.

This inventory system is architected for scalability, modularity, and uses Unreal Engine C++ best practices. The inventory is coded in its own separate plugin, which can be added to multiple game projects or simply kept in a single project.

Assets are provided for this course, including:

  • All 3D meshes for items used, including consumable potions, equippable cloaks, masks, and weapons, and craftable foraging materials.

  • All 2D textures for icons, widgets, menus, borders, and messages.

  • Niagara effects for picking up items

This project uses Unreal Engine 5.5 and works in Unreal Engine 5.6 - you may use the latest version of Unreal Engine for this course!

Features of this course include:

  • Spatial inventory grids and the ability to switch between multiple grids in the inventory to house items of different categories (we implement Equippables, Consumables, and Craftables),

  • An Item Fragment system whereby items can be customized by adding modular "Fragments" to give them functionality (a well-established software pattern in the games industry). Add a Grid Fragment to make the item capable of taking up multiple squares on the grid - add an Equippable Fragment to make the item equippable, etc.,

  • Item tooltip popups showing item attributes and the use of design patterns to make a highly-flexible system where tooltips adapt to an item's fragments to display item information,

  • The ability to move items in a spatial inventory,

  • Stackable items with stack counts (just add a Stackable Fragment), supporting max stack sizes, and the ability to split, combine, and drop items in the inventory,

  • Consumable items, the ability to consume and apply custom behaviors upon item consumption (we will implement potions),

  • Equipment with equippable slots, and actually equipping items of different types (we will implement cloaks, masks, and weapons),

  • Assets will be provided for this course, including the character, weapons, equipment, potions, and craftables, as well as all UI textures for inventory menu widgets. Though you are free to use your own assets!

  • Everything is programmed to work in a multiplayer environment, both Listen Server and Dedicated Servers. It also works in single-player, Standalone games.

  • Items are functional - not just affecting what we see in the menus, but also what happens in the game - the system is coded to be flexible, allowing you to program your own functionality when items are consumed/equipped/used, including incorporation with the Gameplay Ability System (GAS).

My students have easily incorporated this inventory into their own projects with little effort.

We will cover topics from intermediate to advanced Unreal Engine C++. If you have taken my course titled Unreal Engine 5 C++ The Ultimate Game Developer Course or have equivalent knowledge, you are ready for this course!

You will also have access to the Druid Mechanics Discord Community, a community I have created for my students, designed to be your most helpful resource when learning. We are going on 35,000 students and climbing! We're all here to help each other out!

I hope you enjoy this course as much as I did while creating it!

Jump in, and let's make some inventories!

Who this course is for:

  • UE5 devs who want to implement inventory systems in their games
  • Those who want to learn how items are handled in serious games
  • Those who want to implement equipment systems
  • Those who need multiplayer solutions to items, inventory, and equipment

This course includes:

  • 24.5 hours on-demand video
  • 1 articles
  • 1 downloadable resources
  • Access on mobile and TV
  • Full lifetime access
  • Certificate of completion

Instructor

Stephen Ulibarri

Students also download

Explore related courses to expand your learning journey.