Skip to content

Core Framework

Overview

The core framework is the set of base actors that host all ModularInventoryPlus components. They extend the chat/SocketIO base classes and implement common component interfaces so any system can resolve components from the right owner without hard dependencies.

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


Architecture

AMIPBaseGameMode (IMIPCommonGameModeComponentsInterface)
├── MIPItemPickupSpawnerComponent
├── MIPBaseServerSaveComponent
├── ServerQuestManager
├── PlayerSessionListenerComponent
├── SpawnedActorLifeCycleManager
└── ServerPartyStateComponent

AMIPBaseGameState (IMIPCommonGameStateComponentsInterface)
├── WorldInfoComponent
├── NPCsManager
└── PlayerStateAndInfoResolver

AMIPBasePlayerController (IMIPCommonComponentsInterface, IAbilitySystemInterface, ICharacterClassTagInterface)
└── 45+ components — inventory, save/load, interaction, UI, quest, social, etc.

AMIPBasePlayerState (IMIPCommonPlayerStateComponentsInterface, IAbilitySystemInterface)
├── AbilitySystemComponent + WithDerivedAttributeSet
├── PlayerLevelComponent
├── AbilityPointsLevelComponent
├── PlayerInfoComponent
├── PlayerClassComponent
├── CharacterGameplayEffectsManager
├── FamilyGameplayEffectsManager
└── GameplayEffectsReceiverComponent

AMIPBasePlayerCharacter (IAbilitySystemInterface, IMIPCombatInterface, IMIPCursorHittableInterface, …)
├── HeroComponent
├── EquipmentMeshesManager
├── PlayerHealthComponent
├── PlayerASCManager
├── FloatingDamageTextWidgetComponent
├── MinimapMarkerComponent
└── NearbyActorDetectorComponent

Detailed Pages

Each base actor has its own documentation page:

  • GameMode — JWT login, player spawning, session lifecycle, Agones integration.
  • GameState — Map data, world level, NPC management, respawn rules.
  • PlayerController — 45+ components, loading flow, death state, channel switching.
  • PlayerState — ASC, attribute sets, player info, party, mob kill events.
  • PlayerCharacter — Pawn, camera, equipment meshes, death/respawn, combat interface.

Other Framework Actors

Class Purpose
AMIPClientAuthGameMode Minimal GameMode for client-side auth flow
AMIPDefaultServerGameMode Default dedicated server GameMode
AMIPCharSelectionGameMode Character selection screen GameMode
AMIPWaitSessionInstanceTravelGameMode Waiting room while server allocates a session
AMIPCharSelectionCharacter Character used on the selection screen
AMIPWorldSettings Extends MIPChatWithSIOWorldSettings for world config
AMIPPlayerCameraManager Custom camera manager
AMIPDefaultPlayerStart Default spawn point; GameMode caches these for new players

Common Interfaces

All framework actors implement interfaces so systems can resolve components without casting to a concrete class:

Interface Implemented by Purpose
IMIPCommonGameModeComponentsInterface GameMode Get pickup spawner, quest manager, party state
IMIPCommonGameStateComponentsInterface GameState Get NPC manager, world info
IMIPCommonComponentsInterface PlayerController Get any of 30+ PC components by type
IMIPCommonPlayerStateComponentsInterface PlayerState Get level, class, GE managers
IAbilitySystemInterface PC, PS, Pawn Resolve the Ability System Component
ICharacterClassTagInterface PC Get the player's class gameplay tag