Your next-gen Game Creation Framework for Unity 6. Start developing RPGs, Survival games and more with Spark now!
For more details about this asset: Click Here
This package is provided solely for evaluation, learning, or testing purposes before purchase and is not permitted for commercial use.
Inventory – Spark Plugin v1.5
“If possible, please buy the package to support the developer”
Description
💥WHAT IS SPARK?
Create full RPGs, survival games, and more using Spark’s custom editor. No scripting required. If you want custom mechanics, Spark’s plugin system and included C# source let you extend anything.
WHAT IS INCLUDED IN THIS PLUGIN?
Items:
Create unlimited items for your game. Each item has a configurable rarity, a maximum stack size, and an item type that drives all of its behavior. The item type system is fully extensible, so any custom behavior can be added with a single C# class.
Item Types:
Choose what an item does when used, equipped, or obtained. Currently supported item types:
Weapon: equips to a configurable hand slot on the character, spawns a visual weapon prefab on the correct bone, applies an Animator Override Controller to swap animations, and supports sheath and unsheath animations
Armor: equips to a configurable slot on the character, shows or hides a named child GameObject on the character avatar, and applies a body mesh configuration that hides specific mesh types such as hair, beards, or hands while the armor is worn
Resource: A basic item type
Any custom item type can be added with a single C# class inheriting from ItemTypeBase.
Weapon Configuration:
Each weapon supports five hand types that drive which equipment slots and visual configurations are used:
Main Hand: occupies the configured main hand equipment slot
Off Hand: occupies the configured off hand equipment slot
Any Hand: supports dual configurations, one for main hand and one for off hand, allowing the same item to be equipped in either slot with separate visual setups
Two Handed: occupies a single dedicated two-handed slot
Ranged: occupies a dedicated ranged slot with its own separate visual configuration
Each configuration stores an optional weapon prefab, weapon scale, Animator Override Controller, camera override, sheath and unsheath animation toggle, and per-character bone coordinate overrides for precise placement on any character model.
Weapon Types:
Define unlimited weapon type categories as database entries, such as Sword, Axe, Spear, Staff, or Bow. Weapon types are used to drive requirement checks, ability weapon type filtering, and combat integration.
Equipment Slots:
Define unlimited equipment slots as database entries, each with a configurable slot type (Generic, Main Hand, Off Hand, or Ranged) and a placeholder icon displayed in the UI when the slot is empty.
Character Sheets:
Create character sheet configurations that define the exact set of equipment slots available for any character or NPC. The same slot type can be added multiple times to support multiple instances of the same slot, such as two ring slots or two accessory slots. The character sheet drives the layout of the Equipment UI automatically.
Inventories:
Create inventory definitions with a configurable slot count, optional item stacking, and optional auto-stacking of similar items into existing stacks on pickup. Inventories can be assigned to any entity in the scene via the Inventory Entity component with a direct scene reference or tag-based auto-discovery.
Body Mesh System:
Define body mesh types as database entries to categorize the individual meshes on a character model, such as hair, beard, eyebrows, or bare hands. Armor items can reference a Body Mesh Configuration that lists which mesh types to hide while that armor is worn, enabling clean layered character customization without any code.
Item Rarities:
Define unlimited item rarity tiers as database entries. Each rarity has a configurable display color that is automatically applied throughout the UI wherever that item appears.
Loot Tables:
Create data-driven loot tables to control exactly what drops and when. Each loot table supports:
Guaranteed Drops: items that always drop from this table regardless of any weight or chance, with configurable minimum and maximum quantity per drop
Drop Groups: named groups of items rolled independently, each with a relative group weight, a force select flag that makes the group always process regardless of weight, a configurable minimum and maximum number of items to draw from the group, and requirement gating so a group only becomes active when specific conditions are met
Per-Item Configuration: each item within a group has an independent relative weight, an additional drop chance modifier, and a minimum and maximum quantity range
Nested Tables: any item entry in a group can be replaced by a reference to another loot table, which is then rolled recursively when that entry is selected
Global Drop Chance Multiplier: a single multiplier applied to all chances across the entire table, useful for difficulty scaling
Allow Duplicates: control whether the same item can appear more than once in a single roll
Max Total Drops: cap the total number of items that can drop from a single roll, regardless of group results
Requirements:
Gate any content behind item-related conditions using Spark’s requirement system. Currently supported requirement types specific to the Items plugin:
Has Item In Inventory: checks whether the entity’s inventory contains a specific item with a comparison against a configurable quantity threshold
Has Item Equipped: checks whether the entity has a specific item currently equipped
Has Weapon Type Equipped: checks whether the entity has any weapon of a specific weapon type currently equipped
Has Equipment Slot Equipped: checks whether a specific equipment slot is currently occupied by any item
Has Empty Inventory Slot: checks whether the entity’s inventory has at least a configurable number of empty slots available
UI:
Ready to use UI that will:
Display an Inventory Panel showing all inventory slots in a grid, populated dynamically from the Inventory Entry configuration, with an animated open and close transition driven by a configurable animation curve and a bindable toggle input action
Display a Character Sheet Panel showing all equipment slots defined in a Character Sheet Entry, with auto-discovery of slot UI components from children, modal behavior, and a configurable close button
Show item tooltips on hover with a fully composable tooltip system built from individual elements that can be combined in any order, including an icon and name header, icon with inline text, plain text blocks, title and value pairs, stat display rows with configurable formatting, bullet lists, separators, and spacers
Support drag and drop between inventory slots and equipment slots, allowing players to equip items directly from the inventory grid or swap equipment between slots
Trigger Integration:
Usable anywhere Spark Triggers are supported:
Add Item: add a specific item and quantity to any entity’s inventory
Roll Loot Table: roll a loot table and distribute all resulting items into an entity’s inventory
Extensions:
The Items plugin ships with several optional extensions that activate automatically when paired plugins are installed:
Starting Items Extension: attach a starting item list to any Character Entry, with per-item quantity and an auto-equip flag that equips the item immediately after it is added to the inventory
Class Starting Items Extension: attach a starting item list to any Class Entry, so characters of that class automatically receive and optionally auto-equip their class-specific gear on creation
Quest Objectives Extension: enables a Loot Item objective type in the Quests plugin, tracking how many of a specific item the player has looted
Quest Rewards Extension: enables a Gain Item reward type in the Quests plugin, granting specific items as quest rewards
Ability Tooltips Extension: bridges item and ability data so that items which grant abilities display full ability tooltip information inline within the item tooltip
Ability Weapon Type Extension: adds a weapon type field (Melee or Ranged) to any Ability Entry that automatically triggers the correct sheath and unsheath animation when that ability is cast
Integrated with Spark’s Save System:
All inventory contents and equipped item state are saved and will load automatically in future sessions.




