Core Concepts

avatar`
Yuewu(罗传月武)
Updated: Jun 28, 2025

Introduction

This documentation helps you to understanding the core concepts of Generic Inventory System.

Item

Item Definition

An item definition is a data asset. Creating a new item definition is equivalent to creating a new instance of the item definition class. Essentially, item definitions are static data that can incorporate item data fragments to achieve complex data structures.

Item Fragments

Each item fragment is a data object attached to item definition, user can freely add a new type of item fragment class.

Item Definition Schema

The item definition schema is a data asset used in editor for data validation. You can assign a schema to constrain the configuration specifications of the item definition (such as which data fragments are included, the order of data fragments, etc.).

Item Instance

An item definition can generate multiple item instances during gameplay. Instances can be created, destroyed, or saved. Through an item instance, one can retrieve its definition. Item instances can also undergo data changes during gameplay (such as enhancements or value changes).

Item Attributes

An item instance can possess and maintain a set of float/int attributes, each uniquely identified by GameplayTags. These attributes can be saved and loaded, or replicated across a network.

Inventory

Inventory Component

The inventory component organizes and manages item instances through one or more item collections. An Actor typically possesses one inventory component. In games, players acquire items through shop systems, picking them up from the ground, or obtaining relics by defeating enemies. These mechanisms can essentially be understood as item data exchanges between two different item collections within inventory components. Actions like organizing a player's backpack or equipping weapons are fundamentally interactions and sorting of item data between different collections within an inventory component.

Item Collection

An inventory can contain multiple types of item collection, each of which can include multiple item stacks. Different item stacks can exchange information between different collections within the same inventory, as well as with collections in other inventories (e.g., purchasing an item from the shop inventory to the player’s inventory).

Item Stack

Each element in an item collection is an item stack, which is simply a structure used to store the corresponding item instance, their amount, and their position within the collection.

Item Info

Item information is a temporary structure used to pass item-related information across different operations, such as its belonging collection, quantity, and corresponding item instance.

Euipment

Some items have physical representations in the game world, such as weapons, helmets, and armor. These tangible items are referred to as equipment in the GIS.

Equipiment Definition

An equipment definition is a data asset that outlines all static data used by equipment instances, such as the model of a weapon or the associated GameplayAbilities applied to it.

Equipment Instance

An equipment instance is a UObject tasked with managing the internal logic of the equipment, including the addition or removal of abilities or game effects, as well as the creation or destruction of equipment Actors.

Equipment Actors

An equipment instance may be represented by one or more Actors serving as the physical manifestation of the equipment. For instance, this could be a weapon, or in the case of "equipping a pet," it might spawn a pet to assist you in combat.

Equipment Component

The equipment component oversees the creation, activation, and destruction of equipment instances. It also monitors changes to specific item collection in the inventory, automatically equipping or unequipping instances based on the equipment definitions associated with those items.

LowLevel Concepts

Inventory Subsystem

The inventory subsystem is responsible for creating item instances based on item definitions at a foundational level. The actual creation logic is managed by the Item Factory. Generally, you do not need to understand this part.

logo_small
YuewuDev

© Yuewu @2025. All rights reserved.