Skip to content

UMIPLifeSkillRecipeDataAsset

Overview

UMIPLifeSkillRecipeDataAsset is a recipe table for a life skill (Crafting, Cooking, etc.). It subclasses UDataAsset directly. Recipes holds FMIPLifeSkillRecipeInfo rows (tag, level requirement, required items, fees, output pool). UMIPBaseLifeSkillComponent merges multiple such assets via RecipeDataAssets so content can be split by category, DLC, or season.

All paths below are relative to Plugins/ModularInventoryPlus/Source/ModularInventoryPlus/.


Key Classes & Files

Class File
UMIPLifeSkillRecipeDataAsset Public/DataAsset/MIPLifeSkillRecipeDataAsset.h
FMIPLifeSkillRecipeInfo Public/LifeSkill/MIPLifeSkillTypes.h
IsDataValid Private/DataAsset/MIPLifeSkillRecipeDataAsset.cpp

Properties

Property Type Description
Recipes TArray<FMIPLifeSkillRecipeInfo> All recipes in this table.

FindRecipeByTag returns a pointer by exact RecipeTag match.


Editor validation

If Super::IsDataValid returns Invalid, the function returns immediately.

Severity Condition Message
Warning Recipes empty Recipes array is empty — this asset contributes no recipes.

Per recipe index i, prefix Recipes[i] and recipe tag string when valid:

Severity Condition Message
Error RecipeTag invalid Recipes[%d]: RecipeTag is not set.
Error Duplicate RecipeTag Recipes[%d] (%s): Duplicate RecipeTag — each recipe must have a unique tag.
Error LevelRequirement < 0 Recipes[%d] (%s): LevelRequirement is negative (%d).
Error Output pool entry invalid (!Entry.IsValid()) Recipes[%d] (%s): OutputPool.Items[%d] has an invalid ItemTag.
Error Entry.Weight <= 0 Recipes[%d] (%s): OutputPool.Items[%d] (%s) has Weight <= 0.
Error No valid outputs in pool Recipes[%d] (%s): Recipe has no valid output entries in the output pool.
Error RequiredItems[r] invalid Recipes[%d] (%s): RequiredItems[%d] has an invalid ItemTag.

Duplicate detection uses a TSet<FGameplayTag> SeenTags.

Implementation: Private/DataAsset/MIPLifeSkillRecipeDataAsset.cpp (#if WITH_EDITOR).


Integration

Topic Link
Life skills Life Skills
Data assets index Data assets index