BP_SPM_Library Functions
BP_SPM_Library (at Content/SteamPartyMenu/Blueprints/Libraries/BP_SPM_Library) is the main Blueprint Function Library: pure/static helpers callable from any graph. Reference by group:
Component Getters
| Function | Returns |
|---|---|
GetPartyManager | The BPC_PartyManager from the player controller. Your #1 entry point from widgets. |
GetPartyManagerSoftRef | Same, as a soft reference (safe during travel). |
GetMatchmaker | The BPC_Matchmaking component (work in progress, testing only). |
Get Player Data | The BPC_PlayerData from the player state. |
Get Player Data from Player State | Same, from an explicit PlayerState input (for remote players in match). |
GetCustomizationComponent | The BPC_CharacterCustomization from an actor. |
Lobby & Steam Helpers
| Function | Purpose |
|---|---|
Is In Lobby? | Whether the local player is currently in a lobby. |
Get Joined Lobby | Current lobby ID (validated). |
Get Joined SIK Session | Current SIK session, if any. |
IsLocalUserLobbyOwner | Is the local player the party host? Gates all host-only UI/logic. |
IsUserLobbyOwner | Is a specific user the host? |
IsSameSteamID / Compare Steam ID's | Steam ID equality (handles struct vs int64 forms). |
Get Player Cloud Data | Reads a cloud data value for a player by key. |
Set Saved Member Lobby Data | Writes the local player's saved data (skin etc.) into lobby member data. |
PersonaState Enum to String / LobbyType Enum to String | Display helpers for Steam enums. |
Game Server State
| Function | Purpose |
|---|---|
SetGameServerState / GetGameServerState | Write/read E_GameServerState on a lobby. See SIK Utility Functions. |
Maps & Travel
| Function | Purpose |
|---|---|
Get Open Level from Map Name | Resolves a MapsDataAsset soft world reference from the map name stored in lobby data. |
GetTravelStringFromMapString | Map name → console travel string. |
Get Last Map Used / Get Last Gamemode Used / Get Last Party Size Used | Read the host's previously used match settings from saved data (used as defaults when creating a party). |
Settings
| Function | Purpose |
|---|---|
Get Current Set Game Settings | Currently applied graphics settings as S_GraphicsSettings. |
IsSavedGraphicsSettingsDifferent? | Compares saved vs applied settings (drives the Keep Current / Load Saved dialog). |
Set Player Graphics Settings / Set Default Graphics Settings | Apply graphics settings. |
ApplyAudioVolumeSettings | Apply saved volumes to the SPM sound classes. |
Characters
| Function | Purpose |
|---|---|
Get Skin Mesh with Anim | Resolves skin type + variation keys into (soft) mesh + anim BP via the CharacterDataAsset list. |
Reset Main Spot Character Skin from Save | Reapplies the locally saved skin to the local avatar. |
Input & UI
| Function | Purpose |
|---|---|
Set Input Mode Custom | Wrapper for switching Game / UI / GameAndUI input modes consistently. |
ReturnFocusToWidget | Restores keyboard focus after closing popups (important for Escape key handling). |
IsPIEMode | True in PIE. Used to branch around Steam-only features when testing in editor. |
Matchmaking String Utilities
Preference-comparison helpers used by the matchmaking component (work in progress):
| Function | Purpose |
|---|---|
Convert Session Settings | Converts settings into the SIK session settings format. |
ParseCommaSeparatedString | Splits a preference string into items. |
StringContainsAllItems / StringItemsExactMatch | Set comparison of preference items. |
ArePreferencesMatching / ArePreferencesMatchingDetailed | Full preference compatibility check between two parties (detailed variant reports which preference failed). |
Other Libraries
| Library | Functions |
|---|---|
BP_HUD_Library | Get HUD Manager: returns BPC_PlayerHUD via BPI_HudManagerInterface. |
BPML_SPM_Widgets (widget helpers) | Get Validated Lobby ID, Load and Set Texture 2D Asset, Load And Play Sound 2D, Get Steam User Data (persona name + avatar for a Steam ID). |
BPML_Actors | LoadAndSetSkeletalMesh, LoadAndSetStaticMesh: async soft-reference loaders for actors. |
BPML_Components | LoadAndSetSkeletalMesh, LoadMaterialInstance, LoadMultipleSoftObjectAssets, LoadAndSetAnimInstance, ValidateAllMemberLobbyData. |