Skip to content

UMIPPlayerClassSettingsDataAsset

Overview

UMIPPlayerClassSettingsDataAsset is the central registry of all playable player classes for the project. It stores ClassesInfoMap: a map from class gameplay tag (Class hierarchy) to FMIPPlayerClassAllInfo (pawn class, attributes, abilities, UI hooks, etc.). The dedicated server and game code expect every class tag registered under the Class parent in the Gameplay Tag Manager to have a corresponding entry here; missing keys can cause runtime crashes when resolving class data.

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


Key Classes & Files

Class File
UMIPPlayerClassSettingsDataAsset Public/DataAsset/MIPPlayerClassSettingsDataAsset.h
FMIPPlayerClassAllInfo Public/Player/MIPPlayerClassTypes.h
IsDataValid Private/DataAsset/MIPPlayerClassSettingsDataAsset.cpp

Properties

Property Type Description
ClassesInfoMap TMap<FGameplayTag, FMIPPlayerClassAllInfo> One entry per playable class tag under Class.

Editor validation

For each gameplay tag returned by UGameplayTagsManager::RequestGameplayTagChildren(Tag_Class), validation checks that ClassesInfoMap contains that tag in its key set.

Severity Condition Message
Error A child tag of Class is missing from ClassesInfoMap Missing class with tag %s in ClassesInfoMap, server will crash if you try accessing this class

Returns Invalid if any Context errors were added.

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


Integration

Topic Link
Player / character Player Character
Class data / friendly info UMIPPlayerClassDataInfoDataAsset, UMIPPlayerClassFriendlyInfoDataAsset
Data assets index Data assets index