Overview
Generic Inventory System (GIS) is a flexible Unreal Engine 5 plugin for assembling inventory gameplay. Whether you want a backpack, equipment management, a construction system, or a farming loop, GIS gives you a set of building blocks so you can put together the resource-management structure your game actually needs.
Documentation and Support
- Documentation: 中文 English
- Playable Demo: https://cloud.yuewu.dev/s/qNTK
- Community / Support: Discord
- Feature List
Why Generic Inventory System?
Most teams can prototype a backpack quickly. The difficult part starts when the same item needs to exist as static data, mutable runtime state, a stack in a container, an equipped object, a shop entry, a crafting ingredient, a pickup in the world, a saved record, and a replicated multiplayer object.
GIS keeps those paths connected:
- Designers author items through Data Assets, Gameplay Tags, collections, slots, and reusable restrictions.
- Runtime Item Instances carry unique IDs, mutable attributes, fragment state, save data, and replication-friendly state.
- Add, move, remove, equip, pickup, drop, craft, buy, sell, and loadout flows stay on an authority-aware path.
- UI and presentation can react to events and async access points instead of owning the inventory rules.
Key Features
Data-driven items with runtime state
Author static item content in Item Definition Data Assets, then create runtime Item Instances with unique IDs and mutable state. Item Fragments add only the behavior a specific item needs, including default state, validation, serialization, replication-friendly data, equipment metadata, shop data, crafting recipes, dynamic attributes, or custom project logic.
Containers, stacks, slots, and acceptance rules
Gameplay Tag based collections can represent the main bag, equipment, quest storage, hotbars, or custom containers. Standard, multi-stack, and slot collections support different layouts, while restrictions validate uniqueness, required tags, stack size, and stack count before an item is accepted.
Server-authoritative multiplayer foundation
The inventory component exposes authority-only add, move, remove, reset, initialize, and default-loadout operations with reliable server RPC entry points where supported. GIS uses replicated components, replicated subobjects, FastArraySerializer-backed containers, and Push Model dirty marking where appropriate, then broadcasts events for UI and presentation.
Equipment built from inventory slots
The equipment component links to an inventory collection, manages Gameplay Tag slots, tracks equipped and active state, and supports equipment groups. Blueprint Native extension points let your project create the equipment UObject or Actor it needs, so weapons, armor, tools, pets, or ability-granting items can remain part of the same item model.
Crafting, economy, world loot, and persistence
Crafting consumes inventory inputs and produces configured outputs. Currency and shop components provide entries, buy/sell operations, conditions, and price modifiers. Dropper and pickup components transfer items, currencies, or inventories through authority-owned world actors. Save records cover inventories, collections, stacks, items, fragments, and currency data.
Blueprint and C++ extension points
GIS is implemented in C++ and exposes Blueprint-facing setup, events, async actions, callable APIs, and Blueprint Native hooks. Designers can configure common item and collection behavior in the editor, while programmers can extend fragments, restrictions, factories, equipment creation, crafting checks, pricing, and project-specific rules.
Best Fit For
- RPG, survival, extraction, action, simulation, management, or loot-driven games
- Projects that need containers, stacks, equipment slots, hotbars, loadouts, or persistent item state
- Multiplayer games needing server-authoritative inventory operations and replicated item or equipment state
- Teams authoring rules through Data Assets, Gameplay Tags, Blueprint, and C++
- Games connecting world loot, drops, pickups, currencies, shops, crafting, construction resources, farming resources, or other resource-management loops to one item model
The plugin itself is code-only, and the companion project is provided separately after purchase. The companion project includes a playable GIS demo map plus example content for items, collections, equipment, drops, pickups, save workflows, and UI, so you can study a complete integration path before adapting it to your own game. The framework remains extensible; final UI presentation and inventory-driven gameplay rules stay under your project's control.
Technical Details
Code Modules:
GenericInventorySystem(Runtime)GenericInventoryEditor(UncookedOnly)
Plugin Dependencies:
ModularGameplay
Number of Blueprints: Provided with the companion project
Number of C++ Classes: 50+
Network Replicated: Yes
Supported Development Platforms: Win64, Mac
Supported Target Build Platforms: Win64, Mac, Android, Linux
Companion Project: Provided after purchase through purchase verification
Important/Additional Notes: See my overall product design