Skip to main content

Modio UGC API Reference

Classes​

ModEnabledStateProvider​

Inheritance Hierarchy​

-> Interface-> Object

Request Mod Enabled State Change​

nd_img_ModEnabledStateProvider_RequestModEnabledStateChange.png
nd_img_ModEnabledStateProvider_RequestModEnabledStateChange.png
bool RequestModEnabledStateChange(FGenericModID ID, bool bNewEnabledState)
Parameters​
TargetModEnabledStateProvider
IDThe raw ID for the mod to enable or disable
bNewEnabledStatethe new state for the mod
Returns​

true if the mod's state was successfully changed, else false

Query Is Mod Enabled​

nd_img_ModEnabledStateProvider_QueryIsModEnabled.png
nd_img_ModEnabledStateProvider_QueryIsModEnabled.png
bool QueryIsModEnabled(FGenericModID ModID)
Parameters​
TargetModEnabledStateProvider
ModIDthe raw ID for the mod to query
Returns​

true if the mod is enabled, else false


UGCLibrary​

Inheritance Hierarchy​

-> BlueprintFunctionLibrary-> Object


UGCMutatorSubsystem​

Inheritance Hierarchy​

-> GameInstanceSubsystem-> Subsystem-> Object

Register Mutator​

nd_img_UGCMutatorSubsystem_RegisterMutator.png
nd_img_UGCMutatorSubsystem_RegisterMutator.png
bool RegisterMutator(TSubclassOf<UUGCMutator> Type, int32 Priority, FMutatorHandle OutHandle)
Parameters​
TargetUGCMutatorSubsystem
TypeThe class of mutator you want to register
PriorityDefines the order in which mutators are applied. Higher priority = more influence
Out HandleA handle to the create mutator

PostPlayerInit​

nd_img_UGCMutatorSubsystem_Mutator_PostPlayerInit.png
nd_img_UGCMutatorSubsystem_Mutator_PostPlayerInit.png
void Mutator_PostPlayerInit(FPostPlayerInit_Params Params)

PostPawnSpawned​

nd_img_UGCMutatorSubsystem_Mutator_PostPawnSpawned.png
nd_img_UGCMutatorSubsystem_Mutator_PostPawnSpawned.png
void Mutator_PostPawnSpawned(FPostPawnSpawned_Params Params)

Is Registered​

nd_img_UGCMutatorSubsystem_IsRegistered.png
nd_img_UGCMutatorSubsystem_IsRegistered.png
bool IsRegistered(TSubclassOf<UUGCMutator> Type)
Parameters​
TargetUGCMutatorSubsystem
Typethe type of mutator to check for

Get Mutator Class List​

nd_img_UGCMutatorSubsystem_GetMutatorClassList.png
nd_img_UGCMutatorSubsystem_GetMutatorClassList.png
bool GetMutatorClassList(TArray<TSubclassOf<UUGCMutator> > OutMutators, bool bUseCache)
Parameters​
TargetUGCMutatorSubsystem
bUseCachewhether or not we should return the cached result or rerun the query
Out Mutatorsthe mutator class list
Returns​

Was the query successful

Get Asset​

nd_img_UGCMutatorSubsystem_GetAsset.png
nd_img_UGCMutatorSubsystem_GetAsset.png
UObject* GetAsset(FGameplayTag AssetTag, UObject* DefaultValue) const
Parameters​
TargetUGCMutatorSubsystem
AssetTagThe tag of the asset to retrieve
DefaultValueThe asset to use if no mutator is overriding it

Deregister Mutator​

nd_img_UGCMutatorSubsystem_DeregisterMutator.png
nd_img_UGCMutatorSubsystem_DeregisterMutator.png
void DeregisterMutator(FMutatorHandle Handle)
Parameters​
TargetUGCMutatorSubsystem
Handle

UGCPackageWrapper​

Inheritance Hierarchy​

-> Object


UGCProvider​

Inheritance Hierarchy​

-> Interface-> Object

Is Provider Enabled​

nd_img_UGCProvider_IsProviderEnabled.png
nd_img_UGCProvider_IsProviderEnabled.png
bool IsProviderEnabled()
Parameters​
TargetUGCProvider
Returns​

bool indicating whether the UGC provider is enabled

Initialize Provider​

nd_img_UGCProvider_InitializeProvider.png
nd_img_UGCProvider_InitializeProvider.png
void InitializeProvider(FOnUGCProviderInitializedDelegate Handler)
Parameters​
TargetUGCProvider
HandlerCallback for initialization success.

Get Installed UGC Paths​

nd_img_UGCProvider_GetInstalledUGCPaths.png
nd_img_UGCProvider_GetInstalledUGCPaths.png
FModUGCPathMap GetInstalledUGCPaths()
Parameters​
TargetUGCProvider
Returns​

A map of installed UGC paths to their IDs.

Deinitialize Provider​

nd_img_UGCProvider_DeinitializeProvider.png
nd_img_UGCProvider_DeinitializeProvider.png
void DeinitializeProvider(FOnUGCProviderDeinitializedDelegate Handler)
Parameters​
TargetUGCProvider
HandlerCallback for deinitialization success.

UGCSubsystem​

Inheritance Hierarchy​

-> EngineSubsystem-> DynamicSubsystem-> Subsystem-> Object

Unmount UGC Package By Mod ID​

nd_img_UGCSubsystem_UnmountUGCPackageByModID.png
nd_img_UGCSubsystem_UnmountUGCPackageByModID.png
void UnmountUGCPackageByModID(FGenericModID ModID, bool bRemoveUGCPackage)
Parameters​
TargetUGCSubsystem
ModIDthe ID of the package to unmount
bRemoveUGCPackageshould the package be removed from the registry altogether after unmounting? pass true for uninstallation

Unmount UGC Package​

nd_img_UGCSubsystem_UnmountUGCPackage.png
nd_img_UGCSubsystem_UnmountUGCPackage.png
void UnmountUGCPackage(FUGCPackage Package, bool bRemoveUGCPackage)
Parameters​
TargetUGCSubsystem
Package
bRemoveUGCPackageshould the package be removed from the registry altogether after unmounting? pass true for uninstallation

Unload UGCBy Mod ID​

nd_img_UGCSubsystem_UnloadUGCByModID.png
nd_img_UGCSubsystem_UnloadUGCByModID.png
bool UnloadUGCByModID(FGenericModID ModID)
Parameters​
TargetUGCSubsystem
ModIDMod ID of the mod to remove UGC for

Unload All UGC Packages​

nd_img_UGCSubsystem_UnloadAllUGCPackages.png
nd_img_UGCSubsystem_UnloadAllUGCPackages.png
void UnloadAllUGCPackages()

Set UGC Provider​

nd_img_UGCSubsystem_SetUGCProvider.png
nd_img_UGCSubsystem_SetUGCProvider.png
void SetUGCProvider(TScriptInterface<IUGCProvider> InUGCProvider)
Parameters​
TargetUGCSubsystem
InUGCProviderThe UGC provider to use

Set UGC Enabled State Provider​

nd_img_UGCSubsystem_SetUGCEnabledStateProvider.png
nd_img_UGCSubsystem_SetUGCEnabledStateProvider.png
void SetUGCEnabledStateProvider(TScriptInterface<IModEnabledStateProvider> NewProvider)
Parameters​
TargetUGCSubsystem
NewProviderThe new object to query via IModEnabledStateProvider

Remove UGC Changed Handler​

nd_img_UGCSubsystem_RemoveUGCChangedHandler.png
nd_img_UGCSubsystem_RemoveUGCChangedHandler.png
void RemoveUGCChangedHandler(FOnUGCPackagesChangedDelegate Handler)
Parameters​
TargetUGCSubsystem
HandlerDelegate to remove

Remove Mod Enabled State Change Handler​

nd_img_UGCSubsystem_RemoveModEnabledStateChangeHandler.png
nd_img_UGCSubsystem_RemoveModEnabledStateChangeHandler.png
void RemoveModEnabledStateChangeHandler(FModEnabledStateChangeHandler Handler)
Parameters​
TargetUGCSubsystem
HandlerDelegate to be removed from the notification list

Refresh UGC​

nd_img_UGCSubsystem_RefreshUGC.png
nd_img_UGCSubsystem_RefreshUGC.png
void RefreshUGC(bool bUnloadAll)
Parameters​
TargetUGCSubsystem
bUnloadAllIf true, will unload all UGC packages loading them again

Enumerate All UGC Packages​

nd_img_UGCSubsystem_K2_EnumerateAllUGCPackages.png
nd_img_UGCSubsystem_K2_EnumerateAllUGCPackages.png
void K2_EnumerateAllUGCPackages(FUGCPackageEnumeratorDelegate Enumerator) const
Parameters​
TargetUGCSubsystem
EnumeratorThe bound delegate to invoke

Is UGC Feature Enabled​

nd_img_UGCSubsystem_IsUGCFeatureEnabled.png
nd_img_UGCSubsystem_IsUGCFeatureEnabled.png
bool IsUGCFeatureEnabled(EUGCSubsystemFeature Feature)
Parameters​
TargetUGCSubsystem
FeatureThe feature to query
Returns​

bool indicating the state of the specified feature

Is UPlugin Compatible​

nd_img_UGCSubsystem_IsUGCCompatible.png
nd_img_UGCSubsystem_IsUGCCompatible.png
bool IsUGCCompatible(FString UPluginFilePath)
Parameters​
TargetUGCSubsystem
UPluginFilePath

Is Provider Enabled​

nd_img_UGCSubsystem_IsProviderEnabled.png
nd_img_UGCSubsystem_IsProviderEnabled.png
bool IsProviderEnabled()
Parameters​
TargetUGCSubsystem
Returns​

bool indicating whether the UGC provider is enabled

Initialize UGCProvider​

nd_img_UGCSubsystem_InitializeUGCProvider.png
nd_img_UGCSubsystem_InitializeUGCProvider.png
void InitializeUGCProvider(FOnUGCProviderInitializedDelegate Handler)
Parameters​
TargetUGCSubsystem
HandlerCallback for initialization success.

Get UGC Package By Mod ID​

nd_img_UGCSubsystem_GetUGCPackageByModID.png
nd_img_UGCSubsystem_GetUGCPackageByModID.png
bool GetUGCPackageByModID(FGenericModID ModID, FUGCPackage UGCPackage) const
Parameters​
TargetUGCSubsystem
ModIDthe ID of the mod to get the package for
UGCPackagethe package to populate with the UGC package data
Returns​

true if the package was found, false otherwise

Get Package Names From UGC Package​

nd_img_UGCSubsystem_GetPackageNamesFromUGCPackage.png
nd_img_UGCSubsystem_GetPackageNamesFromUGCPackage.png
TArray<FName> GetPackageNamesFromUGCPackage(FUGCPackage UGCPackage) const
Parameters​
TargetUGCSubsystem
UGCPackageThe UGC package to get package names from
Returns​

Array of package names

Deinitialize UGCProvider​

nd_img_UGCSubsystem_DeinitializeUGCProvider.png
nd_img_UGCSubsystem_DeinitializeUGCProvider.png
void DeinitializeUGCProvider(FOnUGCProviderDeinitializedDelegate Handler)
Parameters​
TargetUGCSubsystem
HandlerCallback for deinitialization success.

Add UGC From Path​

nd_img_UGCSubsystem_AddUGCFromPath.png
nd_img_UGCSubsystem_AddUGCFromPath.png
void AddUGCFromPath(FString Path)
Parameters​
TargetUGCSubsystem
PathThe path to the UGC package, such as "C:\Users\Public\mod.io\6532\mods\4119758". This path must contain a .uplugin file in the root directory, and .pak file in "Content/Paks/[PLATFORM]" directory

Add UGC Changed Handler​

nd_img_UGCSubsystem_AddUGCChangedHandler.png
nd_img_UGCSubsystem_AddUGCChangedHandler.png
void AddUGCChangedHandler(FOnUGCPackagesChangedDelegate Handler)
Parameters​
TargetUGCSubsystem
HandlerDelegate to invoke

Add Mod Enabled State Change Handler​

nd_img_UGCSubsystem_AddModEnabledStateChangeHandler.png
nd_img_UGCSubsystem_AddModEnabledStateChangeHandler.png
void AddModEnabledStateChangeHandler(FModEnabledStateChangeHandler Handler)
Parameters​
TargetUGCSubsystem
HandlerDelegate to be notified
Variables​
FOnUGCPackagesChangedMulticastDelegateOnUGCPackagesChanged
FOnModEnabledStateChangeMulticastDelegateOnModEnabledStateChanged

UGC_Metadata​

Inheritance Hierarchy​

-> PrimaryDataAsset-> DataAsset-> Object

Variables​
FStringUnrealVersion
boolbIoStoreEnabled

Structs​

PostPawnSpawned_Params​

Variables​
TObjectPtr<APawn>Pawn

PostPlayerInit_Params​

Variables​
TObjectPtr<AController>Controller

GenericModID​

Variables​
int64ModID

UGCPackage​


MutatorHandle​


MutatorPriorityBucket​


ModUGCPathMap​

Variables​
TMap<FString,FGenericModID>PathToModIDMap

Functions​

GetModID (FUGCPackage)​

nd_img_UGCLibrary_GetModID.png
nd_img_UGCLibrary_GetModID.png
bool GetModID(FUGCPackage UGCPackage, FGenericModID ModID)

Enums​

EUGCPackageMountState​

EUPMS_Unmounted
EUPMS_Mounted

EUGCSubsystemFeature​

EUSF_ModEnableDisable
EUSF_Monetization
EUSF_ModDownvote