UMIPItemRepairDefinitionAsset
Overview
UMIPItemRepairDefinitionAsset maps repair material gameplay tags (under Inventory.Type.Material.Repair.MaxDur) to FMIPItemRepairPerMaterialTagStruct: an instanced UMIPRepairItemEffect, required amount, and success chance (0–1]. The repair system looks up which materials can restore max durability and applies the configured effect when repair succeeds.
All paths below are relative to Plugins/ModularInventoryPlus/Source/ModularInventoryPlus/.
Key Classes & Files
| Class |
File |
UMIPItemRepairDefinitionAsset |
Public/DataAsset/MIPItemRepairDefinitionAsset.h |
FMIPItemRepairPerMaterialTagStruct |
Public/Inventory/Pieces/Repair/MIPItemRepairStruct.h |
IsDataValid |
Private/DataAsset/MIPItemRepairDefinitionAsset.cpp |
Properties
| Property |
Type |
Description |
PerMaterialTagMap |
TMap<FGameplayTag, FMIPItemRepairPerMaterialTagStruct> |
Material tag → repair effect, amount, success chance. |
Editor validation
| Severity |
Condition |
Message |
| Error |
Map empty |
PerMaterialTagMap is empty — no repair materials defined. |
| Error |
Pair.Key invalid |
PerMaterialTagMap has an entry with an invalid GameplayTag key. |
| Error |
Pair.Value invalid (RepairEffect null) |
PerMaterialTagMap entry '%s': RepairEffect is not set. |
| Error |
RequiredAmount <= 0 |
PerMaterialTagMap entry '%s': RequiredAmount must be > 0. Got: %.2f |
| Error |
SuccessChance not in (0, 1] |
PerMaterialTagMap entry '%s': SuccessChance must be in (0, 1]. Got: %.2f |
Implementation: Private/DataAsset/MIPItemRepairDefinitionAsset.cpp (#if WITH_EDITOR).
Integration