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 |