概述
通用库存系统(GIS)是一个功能强大、灵活易用的虚幻引擎(UE5)插件,专为游戏开发者设计。无论你是想打造背包系统、装备管理、建造系统还是种田系统,GIS都能帮你快速构建复杂的库存结构。它就像一堆精心设计的“积木块”,让你自由拼装出符合游戏需求的资源管理系统。
文档与支持
- 文档:中文 英文
- 可玩Demo:https://cloud.yuewu.dev/s/qNTK
- 社区 / 支持:Discord
- 功能列表
为什么需要 Generic Inventory System?
大多数团队都能很快做出一个基础背包。真正麻烦的是,同一件物品需要同时作为静态数据、可变运行时状态、容器里的堆叠、已装备对象、商店条目、制作材料、世界中的拾取物、存档记录和多人复制对象存在。
GIS 把这些路径收束到同一模型中:
- 设计师可以通过 Data Asset、Gameplay Tag、集合、槽位和可复用限制规则制作物品。
- 运行时 Item Instance 负责唯一 ID、可变属性、Fragment 状态、存档数据和复制兼容状态。
- 添加、移动、移除、装备、拾取、掉落、制作、购买、出售和 loadout 流程保持权威端可控。
- UI 和表现层可以订阅事件与异步访问点,而不是自己持有库存规则。
关键特性
数据驱动的物品与运行时状态
你可以用 Item Definition Data Asset 描述静态物品,再在运行时创建带唯一 ID 和可变状态的 Item Instance。Item Fragment 负责把默认状态、验证、序列化、复制兼容数据、装备元数据、商店数据、制作配方、动态属性或项目自定义逻辑组合到需要它们的物品上。
容器、堆叠、槽位与接收规则
库存由带 Gameplay Tag 的集合组成,可以表达主背包、装备栏、任务容器、快捷栏或项目自定义容器。普通集合、多堆叠集合和槽位集合覆盖不同存储形态;限制规则可在接收前校验唯一性、标签要求、堆叠大小和堆叠数量。
服务器权威的多人基础
库存组件提供 authority-only 的添加、移动、移除、重置、初始化和默认 loadout 操作,并为支持的变更提供可靠 Server RPC 入口。GIS 使用可复制组件、可复制子对象、基于 FastArraySerializer 的容器,并在合适位置使用 Push Model dirty marking,然后通过事件把变化交给 UI 与表现层。
从库存槽位建立装备系统
装备组件关联库存集合,用 Gameplay Tag 槽位管理已装备和激活状态,并支持装备组。Blueprint Native 扩展点可为项目创建自己的装备 UObject 或 Actor,让武器、护甲、工具、宠物或技能装配进入同一套物品模型。
制作、经济、世界战利品与持久化
制作组件消耗库存输入并产出配置结果;货币组件、商店组件、价格修正和条件检查围绕项目经济工作;dropper 与 pickup 组件把物品、货币或库存从世界 Actor 转移到权威库存;存档结构覆盖库存、集合、堆叠、物品、Fragment 和货币数据。
Blueprint 与 C++ 扩展点
GIS 由 C++ 实现,并公开面向 Blueprint 的配置、事件、异步 Action、Callable API 和 Blueprint Native 钩子。设计师可以在编辑器内配置常见物品和集合行为,程序则可以扩展 Fragment、限制规则、工厂、装备创建、制作检查、价格计算和项目专属规则。
适用项目与人群
- RPG、生存、撤离、动作、模拟、经营或 loot 驱动项目
- 需要容器、堆叠、装备槽、快捷栏、loadout 或持久化物品状态的游戏
- 多人项目,需要服务器权威库存操作和可复制物品 / 装备状态
- 希望用 Data Asset、Gameplay Tags、Blueprint 和 C++ 扩展规则的团队
- 想把世界战利品、掉落、拾取、货币、商店、制作、建造资源、种植资源或其他资源管理循环连接到同一物品模型的项目
插件本体为纯代码,购买后会另行获得配套项目。配套项目包含可运行的 GIS 演示关卡,以及物品、集合、装备、掉落、拾取、存档和 UI 等示例内容,便于先理解完整接入方式。再按自己的游戏进行调整。框架仍保持可扩展,最终的UI表现层,基于库存的玩法规则仍应由你的项目决定。
技术详情
代码模块(Code Modules):
GenericInventorySystem(Runtime)GenericInventoryEditor(UncookedOnly)
依赖插件(Plugin Dependencies):
ModularGameplay
Blueprint 数量(Number of Blueprints): 随配套项目提供
C++ 类数量(Number of C++ Classes): 50+
网络复制(Network Replicated): 是
开发支持平台(Supported Development Platforms): Win64、Mac
支持的目标构建平台(Supported Target Build Platforms): Win64、Mac、Android、Linux
配套项目(Companion Project): 购买后通过购买验证提供
重要说明/附加说明(Important/Additional Notes): 查看我的产品整体设计
