UMIPLootDefinitionAsset
Overview
UMIPLootDefinitionAsset is a shared loot table: an array of FMIPItemLootDefinition entries (item tag, drop chance in (0,1], min/max count). Referenced from UMIPMobInfoDataAsset, gatherables, and other reward sources so loot is centralized and memory-efficient when many actors share the same table.
All paths below are relative to Plugins/ModularInventoryPlus/Source/ModularInventoryPlus/.
Key Classes & Files
| Class |
File |
UMIPLootDefinitionAsset |
Public/DataAsset/MIPLootDefinitionAsset.h |
FMIPItemLootDefinition |
Public/Inventory/Structs/MIPItemLoot.h |
IsDataValid |
Private/DataAsset/MIPLootDefinitionAsset.cpp |
Properties
| Property |
Type |
Description |
LootDefinitions |
TArray<FMIPItemLootDefinition> |
Weighted entries (tag, chance, counts). |
Editor validation
| Severity |
Condition |
Message |
| Warning |
LootDefinitions empty |
LootDefinitions is empty — this asset will drop nothing. |
| Error |
ItemTag invalid |
LootDefinitions[%d]: ItemTag is not set. |
| Error |
DropChance not in (0, 1] |
LootDefinitions[%d]: DropChance must be in (0, 1] (normalized probability). Got: %.4f |
| Error |
MinCount <= 0 |
LootDefinitions[%d]: MinCount must be > 0. Got: %d |
| Error |
MaxCount < MinCount |
LootDefinitions[%d]: MaxCount (%d) must be >= MinCount (%d). |
Implementation: Private/DataAsset/MIPLootDefinitionAsset.cpp (#if WITH_EDITOR).
Integration