Master Inventory Engine - Crafting/Loot/Trade/Skills/HotBar
Important Notice
This package is now in maintenance mode.
We recommend using the new Pro version, which features a fully redesigned, data-driven architecture, improved APIs, and seamless integration with other packages such as Master Combat Core.
Going forward:
- The old version will no longer receive feature updates
- We will continue to provide bug fixes and critical stability updates
- New features and long-term improvements will be exclusive to the Pro version
If you are starting a new project, we strongly recommend using InventoryEngine Pro for the best experience and future support.
We offer FREE upgrade for user within 90 days!
Upgrade Guide
-------------------------------------------------------------------------------
Elevate Your Game with Our Comprehensive Inventory and Crafting System for Unity!
Transform your game development process with our all-in-one package designed to simplify the creation of rich, immersive inventory and crafting systems. Whether you’re building a shooter, a rogue-like, or any game that requires a robust inventory, this tool has you covered.
Documentation Link (Google Drive)
Key Features:
Developer-Friendly Interface:
Customize and set up your inventory, crafting, and trade systems with ease. Our intuitive interface ensures that even complex systems can be implemented quickly and efficiently.
Robust Crafting, Enhancing, Socketing and Enchanting Systems:
Allow players to craft powerful items, enhance them to new heights, socketing gems to the equipments and add unique enchantments—all fully customizable within the Unity Editor.
Dynamic Skill System:
Create and manage skills effortlessly. Define and organize skills by class or type, and let players link them directly to the hot bar for seamless gameplay.
Rogue-Like Game Ready:
Enhanced with randomized item stats and dynamic loot generation, ideal for creating unpredictable and replayable rogue-like experiences.
Cool-down functionality and attribute restrictions add strategic depth, crucial for challenging gameplay.
Flexible Loot Pack Configuration:
Easily set up loot packs with customizable drop rates, item pools, and random enchantments. Perfect for creating varied and engaging loot experiences.
NPC System:
Turn any NPC into a merchant with customizable inventories and dynamic pricing. Tailor the trading experience to fit your game’s economy. Included 2 different style merchant interface.(Simple Drag&Drop and DOS2 style)
Customizable NPC Equipment & Inventory:
Give NPCs their own fully customizable equipment and inventories. Allow players to access or manage NPC inventories and gear. Additionally, assign NPCs or in-game props (like crafting tables) to perform crafting jobs seamlessly.
Highly Customizable UI:
Switch art styles (Including Pixel Art style), adjust colors and sizes, and toggle features on or off. Our tool allows you to create a UI that perfectly matches your game’s aesthetic.
Extensible Tags and Commands System:
Tems come with a flexible tags and commands system, making it easy to integrate with other systems like quests, building mechanics, and more. Expand the functionality of your game with minimal effort.
Extensive Asset Library:
Includes over 80 equipment icons, 200 item icons, 30 NPC avatars, and 20 skill icons—everything you need to bring your game to life.
Save/Load System:
Auto Save/Load system + Manual save with one line of code.
Modding Support:
Support Import/Export all item/attribute/enchantment settings with json format in Editor or during runtime.
Detailed Documentation:
Get started quickly with our 40-page PDF guide, packed with instructions and tips to help you make the most of the system.
Perfectly compatible with [Master Character Creator].
Asset uses [Bona Nova] Font & [Noto Sans] Font under [the Open Font License]; see Third-Party Notices.txt file in package for details.
Release Notes
v2.3
- Fixed item split bug.
- Fixed an editor bug.
- Added tool to export settings to Pro version.
Important Notice
This package is now in maintenance mode.
We recommend using the new Pro version, which features a fully redesigned, data-driven architecture, improved APIs, and seamless integration with other packages such as Master Combat Core.
Going forward:
- The old version will no longer receive feature updates
- We will continue to provide bug fixes and critical stability updates
- New features and long-term improvements will be exclusive to the Pro version
If you are starting a new project, we strongly recommend using InventoryEngine Pro for the best experience and future support. We offer FREE upgrade for user within 90 days!
Upgrade Guide
v2.2
Core Improvements:
- Multi-threading Support: The entire system has been refactored for thread-safety, ensuring robust and stable operation in projects utilizing multi-threaded environments.
- New Asset Loading System: Introduced three distinct methods for loading icons and custom data objects associated with your items, providing greater flexibility in memory management and asset delivery:
Direct Reference:Description: The data object (e.g., Texture2D for an icon, GameObject for a model) is directly assigned and stored within the item's data.
Pros: Simplest and most straightforward setup. The object is immediately available once the item data is loaded.
Cons: All directly referenced objects will be loaded into memory at game launch, potentially increasing initial loading times. This memory cannot be easily freed as long as the item data remains in memory.
Resources Folder:Description: The object is loaded from a Resources folder at runtime, specifically when a script attempts to access it.
Pros: Offers more flexible memory management as you can explicitly load assets only when needed and release them using Item.ReleaseLoadedAsset(). This method generally uses less initial memory at launch.
Setup: Requires you to provide the relative path to the object within any Resources folder (e.g., "Icons/MySwordIcon").
Custom Loader (AssetLoader):Description: The object is loaded via the AssetLoader component. By default, this component is configured to load assets from AssetBundles.
Flexibility: You can extend this functionality by inheriting from the AssetLoader class to create your own custom loading script (e.g., for Addressables, web requests, or other custom asset management systems).
Integration: Attach your custom loader script to the InventoryEngine prefab to replace the default AssetLoader component.
Modding & Editor Enhancements:
- JSON Data Import/Export: Added new inspector buttons and API calls for the ItemManager component, allowing you to easily export and import Item, Attribute, and Enchantment settings in JSON format. This greatly simplifies external data management and modding workflows.Important Note for Modding: If you intend for modders to easily modify or swap out icon or custom data, it is strongly recommended not to use the "Direct Reference" loading method. Direct references embed asset data, making external modification or swapping difficult. Instead, consider using the "Resources Folder" or "Custom Loader" methods for moddable assets.
- Improved Editor UI Performance: Significant optimizations have been made to the editor user interface, resulting in a smoother and more responsive experience, particularly when managing large inventories.
New Features & Refinements:
- Merchant Specific Pricing: Introduced a 'Specific Price Multiplier' feature to Merchant components, allowing you to define unique price adjustments for individual items on a per-merchant basis.
- Enchantments Pool: Added enchantments pool in LootPack settings, so you can speicify which enchantments the items from each lootpack can randomly get.
- Modular Attribute System: The Attribute class has been refactored into a separate, modular component, enhancing reusability and future compatibility with other packages, including our upcoming "CombatCore."
v2.11 (Small patch)
Bug Fix: Drag any equipment back to an empty inventory slot throws an error.
Bug Fix: Custom data mistakenly linked when copying item's data.
Bug Fix: The HP value of the player and monster are not correctly displayed in the example scene.
Improvements: Added support to make all interface works when Time.timeScale==0. (Game Pause)
Demo Improvements: Added stun effect.
v2.1
Enhanced Features & New Gameplay Example:
Feature Expansion:This update builds upon the robust features introduced in v2.0, enhancing their functionality and API integration.
Comprehensive RPG Gameplay Example:A fully realized RPG gameplay demo scene has been added, complete with detailed, in-code comments.
This example demonstrates how to implement a complete RPG gameplay loop using Master Inventory Engine, including:
- Dynamic damage calculation based on player equipment and stats.
- Enemy damage reception, factoring in player gear and stats.
- Item-driven healing and buff application.
- Character leveling through enemy defeat.
- Skill casting utilizing SP, with item-based SP recovery.
- Loot acquisition and gear enhancement for progression.
- This demo scene serves as an invaluable learning tool, providing a clear, practical demonstration of the package's capabilities.
Notes:
- Version 2.1 significantly enhances the usability of v2.0's new features.
- The Included demo scene will allow the user to easily learn how to use the package.
- The detailed example empowers developers to quickly implement core RPG mechanics.
v2.0
Major New Features & Enhancements:
- Randomized Item Stats:Items now generate with randomized, non-static stats, perfect for creating dynamic loot and enhancing rogue-like gameplay.
Configure stat ranges and unlock chances for endless item variations.
- Item Cool-Down Functionality:Implement cool-down periods for items, affecting usage across all inventory locations (Action Bar, Inventory, Equipment).
Adds strategic depth to item usage.
- Character Stat Binding:Bind character name, level, XP, and max XP to custom attributes.
Provides flexible control over character stats via the "Base Stats" of InventoryHolder component.
- Enhanced Stat Display Customization:Expanded customization options for stat presentation, allowing for tailored UI/UX.
- Item Use/Equip Restrictions:Implement attribute-based restrictions for item usage and equipment.
Example: Require a character level of 5 or higher to equip an item.
- Custom Item Data List:Attach any data format (AudioClip, Prefab, Texture, etc.) to items.
Enables advanced item behaviors and interactions.
Notes:
- Version 2.0 introduces significant gameplay enhancements, including randomized item stats, cool-down functionality, and attribute-based restrictions.
- The added Custom Data List allows for massive expansion of what kinds of data can be tied to inventory items.
- The enhanced stat customization and character stat binding offer greater flexibility in UI/UX design.
v1.91
- Added support for WebGL.
- Added setting for main Canvas tag, if you have multiple Canvas in your scene, you can mark which Canvas you would like the InventoryEngine UI appears on by tag.
- When there is no Canvas in the scene, InventoryEngine will create one when any interface is requested.
v1.9
New Features & Enhancements:
- Merchant Item Acceptance Filtering:Added granular control for merchants, allowing them to accept only specific items.
Configure this feature via the InventoryHolder component (Merchant type).
- Base Stat Configuration:Introduced settings to define base stats for players and NPCs, independent of equipment.
Access these settings through the InventoryHolder component (Player/NPC Equipment type).
- Player Stats UI Prefab:Added a pre-built Stats interface prefab for easy integration.
Location: Assets\SoftKitty\InventoryEngine\Prefabs\Ui\PlayerStats.prefab
- Filter-Aware Drag/Split Restrictions:Enhanced filter functionality to prevent drag/split actions on items that do not match the current filter (visually represented by half-transparent items).
- InventoryHolder Item List Expansion/Shrinkage:Implemented "Expand All" and "Shrink All" buttons for the InventoryHolder component's item list, streamlining workflow.
Bug Fixes:
- Database Item Deletion Error Resolved:Fixed a data reference error that occurred when deleting items from the database, ensuring data integrity.
v1.81
Bug Fixes:
- Corrected an issue where splitting non-deletable items would result in item duplication.
- Fixed a bug that caused the merchant interface to malfunction when the player possessed fewer than three currency types.
- Resolved an issue preventing NPCs from equipping items when a Player InventoryHolder was absent from the scene.
......