diff --git a/Content/GettingStarted/OnboardingGuideWidget.uasset b/Content/GettingStarted/OnboardingGuideWidget.uasset index 364bb33b..40fcc4af 100644 Binary files a/Content/GettingStarted/OnboardingGuideWidget.uasset and b/Content/GettingStarted/OnboardingGuideWidget.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/B_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/B_Key_Light.uasset index 85a2d237..ec03cc0f 100644 Binary files a/Content/UI5/Default/Platform/Input/KeyboardMouse/B_Key_Light.uasset and b/Content/UI5/Default/Platform/Input/KeyboardMouse/B_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/C_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/C_Key_Light.uasset new file mode 100644 index 00000000..ef1be281 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/KeyboardMouse/C_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/E_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/E_Key_Light.uasset index 4f6eb758..7684bca7 100644 Binary files a/Content/UI5/Default/Platform/Input/KeyboardMouse/E_Key_Light.uasset and b/Content/UI5/Default/Platform/Input/KeyboardMouse/E_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/I_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/I_Key_Light.uasset new file mode 100644 index 00000000..766ba140 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/KeyboardMouse/I_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/ModioCommonInput_KeyboardMouse.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/ModioCommonInput_KeyboardMouse.uasset index e8bbaf14..873702b3 100644 Binary files a/Content/UI5/Default/Platform/Input/KeyboardMouse/ModioCommonInput_KeyboardMouse.uasset and b/Content/UI5/Default/Platform/Input/KeyboardMouse/ModioCommonInput_KeyboardMouse.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/P_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/P_Key_Light.uasset new file mode 100644 index 00000000..e3d5d6b1 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/KeyboardMouse/P_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/Q_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/Q_Key_Light.uasset index 49ef6ec0..2a83ff3f 100644 Binary files a/Content/UI5/Default/Platform/Input/KeyboardMouse/Q_Key_Light.uasset and b/Content/UI5/Default/Platform/Input/KeyboardMouse/Q_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/X_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/X_Key_Light.uasset index 8d9da27f..b6993ad2 100644 Binary files a/Content/UI5/Default/Platform/Input/KeyboardMouse/X_Key_Light.uasset and b/Content/UI5/Default/Platform/Input/KeyboardMouse/X_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/KeyboardMouse/Z_Key_Light.uasset b/Content/UI5/Default/Platform/Input/KeyboardMouse/Z_Key_Light.uasset index 9ca0bdf5..02dc928a 100644 Binary files a/Content/UI5/Default/Platform/Input/KeyboardMouse/Z_Key_Light.uasset and b/Content/UI5/Default/Platform/Input/KeyboardMouse/Z_Key_Light.uasset differ diff --git a/Content/UI5/Default/Platform/Input/ModioInputActionDataTable.uasset b/Content/UI5/Default/Platform/Input/ModioInputActionDataTable.uasset index 5de698e2..d175e41b 100644 Binary files a/Content/UI5/Default/Platform/Input/ModioInputActionDataTable.uasset and b/Content/UI5/Default/Platform/Input/ModioInputActionDataTable.uasset differ diff --git a/Content/UI5/Default/Platform/Input/PlayStation/ModioCommonInput_PlayStation.uasset b/Content/UI5/Default/Platform/Input/PlayStation/ModioCommonInput_PlayStation.uasset index 24789f46..3160f7b9 100644 Binary files a/Content/UI5/Default/Platform/Input/PlayStation/ModioCommonInput_PlayStation.uasset and b/Content/UI5/Default/Platform/Input/PlayStation/ModioCommonInput_PlayStation.uasset differ diff --git a/Content/UI5/Default/Platform/Input/PlayStation/PS_LS_Press.uasset b/Content/UI5/Default/Platform/Input/PlayStation/PS_LS_Press.uasset new file mode 100644 index 00000000..dfe4a44c Binary files /dev/null and b/Content/UI5/Default/Platform/Input/PlayStation/PS_LS_Press.uasset differ diff --git a/Content/UI5/Default/Platform/Input/PlayStation/PS_Options.uasset b/Content/UI5/Default/Platform/Input/PlayStation/PS_Options.uasset new file mode 100644 index 00000000..1cb3d627 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/PlayStation/PS_Options.uasset differ diff --git a/Content/UI5/Default/Platform/Input/PlayStation/PS_RS_Press.uasset b/Content/UI5/Default/Platform/Input/PlayStation/PS_RS_Press.uasset new file mode 100644 index 00000000..6f0404b2 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/PlayStation/PS_RS_Press.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/ModioCommonInput_Switch.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/ModioCommonInput_Switch.uasset index 746aef42..4cf6001f 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/ModioCommonInput_Switch.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/ModioCommonInput_Switch.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_A.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_A.uasset index 40d20309..f9ddbd1b 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_A.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_A.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_B.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_B.uasset index 5d73a514..6595e5a5 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_B.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_B.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_L.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_L.uasset index c647b91d..c2b363ad 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_L.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_L.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_LS_Press.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_LS_Press.uasset new file mode 100644 index 00000000..6a5c0bb0 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_LS_Press.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Plus.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Plus.uasset new file mode 100644 index 00000000..1b9e0cc0 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Plus.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_R.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_R.uasset index b841da3d..487a988c 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_R.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_R.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_RS_Press.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_RS_Press.uasset new file mode 100644 index 00000000..289530ff Binary files /dev/null and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_RS_Press.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_X.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_X.uasset index d7adaa0f..89fee1a5 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_X.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_X.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Y.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Y.uasset index 6839f7d5..4388196d 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Y.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_Y.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZL.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZL.uasset index 8a9f09f3..45a31424 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZL.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZL.uasset differ diff --git a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZR.uasset b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZR.uasset index 2c8fb40a..8ee097fd 100644 Binary files a/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZR.uasset and b/Content/UI5/Default/Platform/Input/SwitchSpecific/Switch_ZR.uasset differ diff --git a/Content/UI5/Default/Platform/Input/Xbox/ModioCommonInput_Xbox.uasset b/Content/UI5/Default/Platform/Input/Xbox/ModioCommonInput_Xbox.uasset index 7a0f5e2a..97c67b6f 100644 Binary files a/Content/UI5/Default/Platform/Input/Xbox/ModioCommonInput_Xbox.uasset and b/Content/UI5/Default/Platform/Input/Xbox/ModioCommonInput_Xbox.uasset differ diff --git a/Content/UI5/Default/Platform/Input/Xbox/Xbox_LS_Press.uasset b/Content/UI5/Default/Platform/Input/Xbox/Xbox_LS_Press.uasset new file mode 100644 index 00000000..77a8b26d Binary files /dev/null and b/Content/UI5/Default/Platform/Input/Xbox/Xbox_LS_Press.uasset differ diff --git a/Content/UI5/Default/Platform/Input/Xbox/Xbox_Menu.uasset b/Content/UI5/Default/Platform/Input/Xbox/Xbox_Menu.uasset new file mode 100644 index 00000000..2c170abb Binary files /dev/null and b/Content/UI5/Default/Platform/Input/Xbox/Xbox_Menu.uasset differ diff --git a/Content/UI5/Default/Platform/Input/Xbox/Xbox_RS_Press.uasset b/Content/UI5/Default/Platform/Input/Xbox/Xbox_RS_Press.uasset new file mode 100644 index 00000000..4ce0c573 Binary files /dev/null and b/Content/UI5/Default/Platform/Input/Xbox/Xbox_RS_Press.uasset differ diff --git a/Content/UI5/Default/Styles/Auth/Text/DefaultCodeInputTextBoxStyle.uasset b/Content/UI5/Default/Styles/Auth/Text/DefaultCodeInputTextBoxStyle.uasset index f8915288..f6217cdb 100644 Binary files a/Content/UI5/Default/Styles/Auth/Text/DefaultCodeInputTextBoxStyle.uasset and b/Content/UI5/Default/Styles/Auth/Text/DefaultCodeInputTextBoxStyle.uasset differ diff --git a/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBarStyle.uasset b/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBarStyle.uasset index b12a2cd4..3a3db119 100644 Binary files a/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBarStyle.uasset and b/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBarStyle.uasset differ diff --git a/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBoxStyle_Horizontal.uasset b/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBoxStyle_Horizontal.uasset index dd0c5f76..0a0c0dad 100644 Binary files a/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBoxStyle_Horizontal.uasset and b/Content/UI5/Default/Styles/ScrollBox/DefaultScrollBoxStyle_Horizontal.uasset differ diff --git a/Content/UI5/Default/Widgets/ActionBar/W_ModioCommonBottomActionBar.uasset b/Content/UI5/Default/Widgets/ActionBar/W_ModioCommonBottomActionBar.uasset index e2947d15..014ba615 100644 Binary files a/Content/UI5/Default/Widgets/ActionBar/W_ModioCommonBottomActionBar.uasset and b/Content/UI5/Default/Widgets/ActionBar/W_ModioCommonBottomActionBar.uasset differ diff --git a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthCodeView.uasset b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthCodeView.uasset index 52082519..56bef42f 100644 Binary files a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthCodeView.uasset and b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthCodeView.uasset differ diff --git a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthLoadingView.uasset b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthLoadingView.uasset index 9bdb0862..2dfa4f26 100644 Binary files a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthLoadingView.uasset and b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthLoadingView.uasset differ diff --git a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthView.uasset b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthView.uasset index ae876b1b..c9082315 100644 Binary files a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthView.uasset and b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonEmailAuthView.uasset differ diff --git a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonTermsOfUseView.uasset b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonTermsOfUseView.uasset index 56d13668..f3d922d3 100644 Binary files a/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonTermsOfUseView.uasset and b/Content/UI5/Default/Widgets/Auth/Views/W_ModioCommonTermsOfUseView.uasset differ diff --git a/Content/UI5/Default/Widgets/Auth/W_ModioCommonAuthView.uasset b/Content/UI5/Default/Widgets/Auth/W_ModioCommonAuthView.uasset index 812c1009..1f69ba51 100644 Binary files a/Content/UI5/Default/Widgets/Auth/W_ModioCommonAuthView.uasset and b/Content/UI5/Default/Widgets/Auth/W_ModioCommonAuthView.uasset differ diff --git a/Content/UI5/Default/Widgets/Dialog/Views/W_ModioCommonDialogMessageView.uasset b/Content/UI5/Default/Widgets/Dialog/Views/W_ModioCommonDialogMessageView.uasset index f347463e..739f5a27 100644 Binary files a/Content/UI5/Default/Widgets/Dialog/Views/W_ModioCommonDialogMessageView.uasset and b/Content/UI5/Default/Widgets/Dialog/Views/W_ModioCommonDialogMessageView.uasset differ diff --git a/Content/UI5/Default/Widgets/List/EmptyWidgetSlot.uasset b/Content/UI5/Default/Widgets/List/EmptyWidgetSlot.uasset new file mode 100644 index 00000000..911aae7e Binary files /dev/null and b/Content/UI5/Default/Widgets/List/EmptyWidgetSlot.uasset differ diff --git a/Content/UI5/Default/Widgets/List/W_ModioCommonFilteredModListView.uasset b/Content/UI5/Default/Widgets/List/W_ModioCommonFilteredModListView.uasset index 7b31bf86..8e5302ac 100644 Binary files a/Content/UI5/Default/Widgets/List/W_ModioCommonFilteredModListView.uasset and b/Content/UI5/Default/Widgets/List/W_ModioCommonFilteredModListView.uasset differ diff --git a/Content/UI5/Default/Widgets/ModBrowser/W_ModioCommonModBrowser.uasset b/Content/UI5/Default/Widgets/ModBrowser/W_ModioCommonModBrowser.uasset index 1bdf7042..f00ab76d 100644 Binary files a/Content/UI5/Default/Widgets/ModBrowser/W_ModioCommonModBrowser.uasset and b/Content/UI5/Default/Widgets/ModBrowser/W_ModioCommonModBrowser.uasset differ diff --git a/Content/UI5/Default/Widgets/ModDetails/W_ModioCommonModDetailsView.uasset b/Content/UI5/Default/Widgets/ModDetails/W_ModioCommonModDetailsView.uasset index c76aaeb8..768e91af 100644 Binary files a/Content/UI5/Default/Widgets/ModDetails/W_ModioCommonModDetailsView.uasset and b/Content/UI5/Default/Widgets/ModDetails/W_ModioCommonModDetailsView.uasset differ diff --git a/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessModOperationTracker.uasset b/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessModOperationTracker.uasset index 28ab8537..6205d5ad 100644 Binary files a/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessModOperationTracker.uasset and b/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessModOperationTracker.uasset differ diff --git a/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessStorageSpaceTracker.uasset b/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessStorageSpaceTracker.uasset deleted file mode 100644 index f9f47839..00000000 Binary files a/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessStorageSpaceTracker.uasset and /dev/null differ diff --git a/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessTabView.uasset b/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessTabView.uasset index 6401f72a..8514288f 100644 Binary files a/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessTabView.uasset and b/Content/UI5/Default/Widgets/QuickAccess/W_ModioCommonQuickAccessTabView.uasset differ diff --git a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportEmailView.uasset b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportEmailView.uasset index 7000b116..33988c35 100644 Binary files a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportEmailView.uasset and b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportEmailView.uasset differ diff --git a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportMessageView.uasset b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportMessageView.uasset index ffe34532..494851e2 100644 Binary files a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportMessageView.uasset and b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportMessageView.uasset differ diff --git a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportReasonView.uasset b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportReasonView.uasset index a3dff944..6a79ddc4 100644 Binary files a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportReasonView.uasset and b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportReasonView.uasset differ diff --git a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportSummaryView.uasset b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportSummaryView.uasset index 607febf2..4e1d7949 100644 Binary files a/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportSummaryView.uasset and b/Content/UI5/Default/Widgets/Report/Views/W_ModioCommonReportSummaryView.uasset differ diff --git a/Content/UI5/Default/Widgets/Search/W_ModioCommonSearchResultsView.uasset b/Content/UI5/Default/Widgets/Search/W_ModioCommonSearchResultsView.uasset index 0e4a5874..63a96a1d 100644 Binary files a/Content/UI5/Default/Widgets/Search/W_ModioCommonSearchResultsView.uasset and b/Content/UI5/Default/Widgets/Search/W_ModioCommonSearchResultsView.uasset differ diff --git a/Content/UI5/Default/Widgets/Tag/W_ModioCommonTags_SingleLine.uasset b/Content/UI5/Default/Widgets/Tag/W_ModioCommonTags_SingleLine.uasset index 8f3e6e25..5caa9bb4 100644 Binary files a/Content/UI5/Default/Widgets/Tag/W_ModioCommonTags_SingleLine.uasset and b/Content/UI5/Default/Widgets/Tag/W_ModioCommonTags_SingleLine.uasset differ diff --git a/Content/UI5/Default/Widgets/UserProfile/ModOperationTracker/W_ModioCommonUserProfileModOperationTracker.uasset b/Content/UI5/Default/Widgets/UserProfile/ModOperationTracker/W_ModioCommonUserProfileModOperationTracker.uasset index 9db428b4..2bb23274 100644 Binary files a/Content/UI5/Default/Widgets/UserProfile/ModOperationTracker/W_ModioCommonUserProfileModOperationTracker.uasset and b/Content/UI5/Default/Widgets/UserProfile/ModOperationTracker/W_ModioCommonUserProfileModOperationTracker.uasset differ diff --git a/Content/UI5/Default/Widgets/UserProfile/StorageSpaceTracker/W_ModioCommonUserProfileStorageSpaceTracker.uasset b/Content/UI5/Default/Widgets/UserProfile/StorageSpaceTracker/W_ModioCommonUserProfileStorageSpaceTracker.uasset deleted file mode 100644 index 6820dfa5..00000000 Binary files a/Content/UI5/Default/Widgets/UserProfile/StorageSpaceTracker/W_ModioCommonUserProfileStorageSpaceTracker.uasset and /dev/null differ diff --git a/Content/UI5/Default/Widgets/UserProfile/W_ModioCommonUserProfile.uasset b/Content/UI5/Default/Widgets/UserProfile/W_ModioCommonUserProfile.uasset index ffbb852c..2625a796 100644 Binary files a/Content/UI5/Default/Widgets/UserProfile/W_ModioCommonUserProfile.uasset and b/Content/UI5/Default/Widgets/UserProfile/W_ModioCommonUserProfile.uasset differ diff --git a/Doc/documentation.html b/Doc/documentation.html index ac8cfeb1..9f32bfe2 100644 --- a/Doc/documentation.html +++ b/Doc/documentation.html @@ -929,6 +929,7 @@
Windows |
Linux |
-OSX |
+macOS |
+iOS |
|
|
|
+
|
+ Note
+ |
++In Linux, macOS & iOS, mods and data binds to a single user. Every other client would have their own instance in their home directory. + | +
FModioModCategoryParams GetDefaultCategoryFilterParams(bool bUserAuthenticated)
+void ZeroOutFiltering()
+void SynchronizeFilterParams(TArray<FString> PreviouslySelectedTagGroupValues)
+void SynchronizeFilterParams(TArray<FString> PreviouslySelectedTagGroupValues, bool bResetToDefault)
Previously Selected Tag Group Values
The previously selected tag group values
Reset to Default
Whether to reset the filter params to the default values
bool ShowSearchView(EModioCommonSearchViewType SearchType, FModioModCategoryParams CurrentFilterParams)
+bool ShowSearchView(EModioCommonSearchViewType SearchType, FModioModCategoryParams CurrentFilterParams, FModioModCategoryParams DefaultFilterParams)
void SwitchEnableButtonVisibility(bool bIsVisible)
+Target |
+Modio Common Mod Details View Object Reference |
+
Is Visible |
+Whether the enable button should be visible |
+
void SwitchDisableButtonVisibility(bool bIsVisible)
+Target |
+Modio Common Mod Details View Object Reference |
+
Is Visible |
+Whether the disable button should be visible |
+
void SetStyle(TSubclassOf<UModioCommonModDetailsViewStyle> InStyle)
void ShowSearchResults()
-void SetStyle(TSubclassOf<UModioCommonSearchTabViewStyle> InStyle)
+bool GetNumOfAppliedFilters(int32 NumOfAppliedFilters) const
Target |
-Modio Common Search Tab View Object Reference |
+Modio Common Search Results View Object Reference |
|
Style |
-The style to set |
+Num Of Applied Filters |
+The number of applied filters |
+
Return Value |
+True if the number of applied filters was successfully retrieved, false otherwise |
True if the number of applied filters was successfully retrieved, false otherwise
+void Reset()
+void ZeroOut()
FModioModCategoryParams GetFilterParamsWrapper() const
+void ShowSearchResults()
void SetStyle(TSubclassOf<UModioCommonSearchTabViewStyle> InStyle)
+Modio Common Search Tab View Object Reference |
|||
Return Value |
-The filter params wrapper |
+Style |
+The style to set |
The filter params wrapper
+void Reset()
+FModioFilterParams GetFilterParams() const
+FModioModCategoryParams GetFilterParamsWrapper() const
Return Value |
-The currently selected filter params |
+The filter params wrapper |
The currently selected filter params
+The filter params wrapper
void SetStyle(TSubclassOf<UModioCommonStorageSpaceTrackerUserWidgetStyle> InStyle)
+FModioFilterParams GetFilterParams() const
Target |
-Modio Common Storage Space Tracker User Widget Object Reference |
+Modio Common Search Tab View Object Reference |
|
Style |
-The style to set |
+Return Value |
+The currently selected filter params |
The currently selected filter params
+bool SelectTabByIDExtended(FName TabNameID, bool bSuppressClickFeedback, bool bSuppressOnTabSelectedIfAlreadySelected)
Whether the tab was successfully selected
void SetStyle(TSubclassOf<UModioCommonListViewStyle> InStyle)
-the next popup on the stack
TMap<FModioID, FModioModCollectionEntry> providing information about the subscribed mods
Fetches the subset of the user’s subscribed mods that are installed and therefore ready for loading
TMap<FModioID, FModioModCollectionEntry> providing information about the subscribed mods
Fetches all mods installed on the system such that a consuming application can present the information in a UI in order to free up space by uninstalling mods
TMap using Mod IDs as keys and ModCollectionEntry objects providing information about mods installed on the system regardless of which user installed them
Error code indicating the status of the prioritization request. Will be empty if the prioritization was successful or if the mod was already being processed
FModioOptionalUser object containing profile information
Provides progress information for a mod installation or update operation if one is currently in progress.
Optional ModProgressInfo object containing information regarding the progress of the installation operation.
Retrieve a list of updates between the users local mod state, and the server-side state. This allows you to identify which mods will be modified by the next call to FetchExternalUpdatesAsync in order to perform any content management (such as unloading files) that might be required.
Target |
+Modio Subsystem Object Reference |
+
Filter |
+FModioFilterParams object containing any filters that should be applied to the query |
+
Callback |
+Callback invoked with a status code and an optional GameInfoList providing game profiles |
+
NetworkError |
+Couldn’t connect to mod.io servers |
+
UserNotAuthenticatedError |
+No authenticated user |
+
SDKNotInitialized |
+SDK not initialized |
+
Provides a list of mods that the user has submitted, or is a team member for, for the current game, applying the parameters specified in the filter.
True if automatic management is currently performing an operation
If the last request to the mod.io servers returned a validation failure, this function returns extended information describing the fields that failed validation.
Collection of FModioValidationError objects, or empty collection if there were no validation failures
Disables automatic installation or uninstallation of mods based on the user’s subscriptions. Allows currently processing installation to complete; will cancel any pending operations when called.
Array with its corresponding info tags
void SetOnOperationStateDelegate(FOnChangeAsyncHandlerOperationState Delegate)
+Call this to pass in a delegate that will receive operation state change notifications
- | ModId |
-Unique Mod ID |
-|||
- | ProfileName |
-Name of the mod |
++ | GameID |
+Unique Game ID |
- | ProfileSummary |
-Summary of the mod |
++ | DateAdded |
+Unix timestamp of date the game was registered |
- | ProfileDescription |
-Detailed description in HTML format |
++ | DateUpdated |
+Unix timestamp of date the game was updated |
- | ProfileDescriptionPlaintext |
-Detailed description in plaintext |
++ | DateLive |
+Unix timestamp of date the game was set live |
- | ProfileURL |
-URL to the mod profile |
+UgcName |
+Word used to describe user-generated content (mods, items, add-ons etc) |
|
- | ProfileSubmittedBy |
-Information on the user who submitted the mod |
++ | Icon |
+Contains media URLs to the icon for the game |
- | ProfileDateAdded |
-Unix timestamp of the date the mod was registered |
++ | Logo |
+Contains media URLs to the logo for the game |
- | ProfileDateUpdated |
-Unix timestamp of the date the mod was updated |
++ | HeaderImage |
+Contains media URLs to the preview header image for the game |
- | ProfileDateLive |
-Unix timestamp of the date the mod was marked live |
++ | Name |
+Name of the game |
- | ProfileMaturityOption |
-Flags for maturity options Maturity options flagged by the mod developer, this is only relevant if the parent game allows mods to be labeled as mature. |
++ | Summary |
+Summary of the game’s mod support |
- | bVisible_DEPRECATED |
-Deprecated as of 2023.6 release. Please use the [Visibility] instead. |
++ | Instructions |
+A guide about creating and uploading mods for this game to mod.io |
- | Visibility |
-Enum parameter to signal the backend if the mod to upload would be publicly visible. Default value is Public |
++ | InstructionsUrl |
+Link to a mod.io guide, modding wiki, or a page where modders can learn how to make and submit mods *//// to this game’s profile |
- | MetadataBlob |
-+ | ProfileUrl |
+URL to the game |
|
- | FileInfo |
-Information about the mod’s most recent public release |
++ | Theme |
+Theme color values for the game |
- | MetadataKvp |
-Arbitrary key-value metadata set for this mod |
++ | Stats |
+Numerous aggregate stats for the game |
- | Tags |
-Tags this mod has set |
++ | OtherUrls |
+Creator defined URLs to share |
- | NumGalleryImages |
-Number of images in the mod’s media gallery |
++ | Platforms |
+Platforms that are supported by this title |
- | YoutubeURLs |
-List of youtube links provided by the creator of the mod |
++ | bAllowNegativeRatings |
+Whether or not the game allows negative ratings |
- | SketchfabURLs |
-List of sketchfab links provided by the creator of the mod |
++ | GameMonetizationOptions |
+Monetization options for the game |
- | Stats |
-Stats and rating information for the mod |
++ | GameMaturityOptions |
+Maturity options for the game |
- | ModStatus |
-Status of the mod |
++ | VirtualTokenName |
+Name of the Virtual Tokens for this game |
- | Price |
-Price of this mod |
++ | PlatformSupport |
+Platforms that are supported by this title |
Contains download stats and ratings for a mod
-- | PopularityRankPosition |
-Current rank of the mod. |
++ | Platform |
+A platform supported by a title |
- | PopularityRankTotalMods |
-Number of ranking spots the current rank is measured against. |
++ | Locked |
+Whether ot not this platform is locked from having files submitted to it by players |
- | DownloadsTotal |
-Number of total mod downloads. |
++ | Moderated |
+Whether or not this platform’s file submissions are moderated or not |
+
+ | Label |
+Label of the link you are sharing |
|||
- | SubscribersTotal |
-Number of total users who have subscribed to the mod. |
++ | Url |
+The URL to be associated with the label |
+
Numerous aggregate stats for the game
++ | GameID |
+Unique game id |
|||
- | RatingTotal |
-Number of times this mod has been rated. |
+ModCountTotal |
+Available mod count for the game |
|
- | RatingPositive |
-Number of positive ratings. |
+ModDownloadsToday |
+Mods downloaded today for the game |
|
- | RatingNegative |
-Number of negative ratings. |
+ModDownloadsTotal |
+Total mods downloaded for the game |
|
- | RatingPercentagePositive |
-Number of positive ratings, divided by the total ratings to determine it’s percentage score. |
+ModDownloadsDailyAverage |
+Average mods downloaded on a daily basis |
|
- | RatingWeightedAggregate |
-Overall rating of this item calculated using the [Wilson score confidence interval](https://www.evanmiller.org/how-not-to-sort-by-average-Ratinghtml). This column is good to sort on, as it will order items based on number of ratings and will place items with many positive ratings above those with a higher score but fewer ratings. We actually get a double back from the server, but it’s converted to a float for blueprint support |
++ | ModSubscribersTotal |
+Number of total users who have subscribed to the mods for the game |
- | RatingDisplayText |
-Textual representation of the rating in format: Overwhelmingly Positive → Very Positive → Positive → Mostly Positive → Mixed → Negative → Mostly Negative → Very Negative → Overwhelmingly Negative → Unrated |
++ | DateExpires |
+Unix timestamp until this game’s statistics are considered stale |
- | Tag |
-+ | Primary |
+The primary hex color code |
+
+ | Dark |
+The dark hex color code |
+||
+ | Light |
+The light hex color code |
+||
+ | Success |
+The success hex color code |
+||
+ | Warning |
+The warning hex color code |
+||
+ | Danger |
+The danger hex color code |
- | Key |
-+ | Filename |
+Header image filename including extension |
- | Value |
-+ | Original |
+URL to the full-sized header image |
Metadata for a release archive for a mod
-- | MetadataId |
-Unique modfile id. |
-|||
- | ModId |
-Unique mod id. |
-|||
- | DateAdded |
-Unix timestamp of date file was added. |
-|||
- | CurrentVirusScanStatus |
-Current virus scan status of the file. For newly added files that have yet to be scanned this field will change frequently until a scan is complete |
-|||
- | CurrentVirusStatus |
-Was a virus detected? |
-|||
- | Filesize |
-Size of the file in bytes. |
++ | Filename |
+Logo filename including extension. |
- | Filename |
-Filename including extension. |
+Original |
+URL to the full - sized logo. |
|
- | Version |
-Release version this file represents. |
+Thumb320x180 |
+URL to the small logo thumbnail. |
|
- | Changelog |
-Changelog for the file. |
+Thumb640x360 |
+URL to the medium logo thumbnail. |
|
- | MetadataBlob |
-Metadata stored by the game developer for this file. |
+Thumb1280x720 |
+URL to the large logo thumbnail. |
- | UserId |
-+ | + | Filename |
+Icon filename including extension. |
- | Username |
-+ | Original |
+URL to the full-sized icon. |
|
- | DateOnline |
-+ | + | Thumb64x64 |
+URL to the small icon thumbnail. |
- | ProfileUrl |
-+ | Thumb128x128 |
+URL to the medium icon thumbnail. |
|
- | DisplayNamePortal |
-+ | Thumb256x256 |
+URL to the large icon thumbnail. |
+ | ModId |
+Unique Mod ID |
+|||
- | TagGroupName |
-The display name for the tag |
+ProfileName |
+Name of the mod |
|
- | TagGroupValues |
-The valid tags the group can have |
++ | ProfileSummary |
+Summary of the mod |
- | bAllowMultipleSelection |
-True if multiple tags from the group can be used simultaneously |
++ | ProfileDescription |
+Detailed description in HTML format |
wrapper around Modio::ErrorCode
-Simple struct representing the outcome of a mod management operation
-- | ID |
-ID for the mod that the event occurred on |
++ | ProfileDescriptionPlaintext |
+Detailed description in plaintext |
- | Event |
-What type of event occurred |
++ | ProfileURL |
+URL to the mod profile |
- | Status |
-Empty if operation completed successfully, truthy/contains error code if operation failed |
++ | ProfileSubmittedBy |
+Information on the user who submitted the mod |
+
+ | ProfileDateAdded |
+Unix timestamp of the date the mod was registered |
+|||
+ | ProfileDateUpdated |
+Unix timestamp of the date the mod was updated |
+|||
+ | ProfileDateLive |
+Unix timestamp of the date the mod was marked live |
+|||
+ | ProfileMaturityOption |
+Flags for maturity options Maturity options flagged by the mod developer, this is only relevant if the parent game allows mods to be labeled as mature. |
+|||
+ | bVisible_DEPRECATED |
+Deprecated as of 2023.6 release. Please use the [Visibility] instead. |
+|||
+ | Visibility |
+Enum parameter to signal the backend if the mod to upload would be publicly visible. Default value is Public |
+|||
+ | MetadataBlob |
++ | |||
+ | FileInfo |
+Information about the mod’s most recent public release |
+|||
+ | MetadataKvp |
+Arbitrary key-value metadata set for this mod |
+|||
+ | Tags |
+Tags this mod has set |
+|||
+ | NumGalleryImages |
+Number of images in the mod’s media gallery |
+|||
+ | YoutubeURLs |
+List of youtube links provided by the creator of the mod |
+|||
+ | SketchfabURLs |
+List of sketchfab links provided by the creator of the mod |
+|||
+ | Stats |
+Stats and rating information for the mod |
+|||
+ | ModStatus |
+Status of the mod |
+|||
+ | Price |
+Price of this mod |
Simple struct to encapsulate data passed to external authentication systems
+Contains download stats and ratings for a mod
- | AuthToken |
-+ | + | PopularityRankPosition |
+Current rank of the mod. |
- | UserEmail |
-+ | + | PopularityRankTotalMods |
+Number of ranking spots the current rank is measured against. |
- | bUserHasAcceptedTerms |
-+ | + | DownloadsTotal |
+Number of total mod downloads. |
- | ExtendedParameters |
-+ | + | SubscribersTotal |
+Number of total users who have subscribed to the mod. |
+
+ | RatingTotal |
+Number of times this mod has been rated. |
+|||
+ | RatingPositive |
+Number of positive ratings. |
+|||
+ | RatingNegative |
+Number of negative ratings. |
+|||
+ | RatingPercentagePositive |
+Number of positive ratings, divided by the total ratings to determine it’s percentage score. |
+|||
+ | RatingWeightedAggregate |
+Overall rating of this item calculated using the [Wilson score confidence interval](https://www.evanmiller.org/how-not-to-sort-by-average-Ratinghtml). This column is good to sort on, as it will order items based on number of ratings and will place items with many positive ratings above those with a higher score but fewer ratings. We actually get a double back from the server, but it’s converted to a float for blueprint support |
+|||
+ | RatingDisplayText |
+Textual representation of the rating in format: Overwhelmingly Positive → Very Positive → Positive → Mostly Positive → Mixed → Negative → Mostly Negative → Very Negative → Overwhelmingly Negative → Unrated |
- | PathToModRootDirectory |
+Tag |
- | PathToLogoFile |
-- | |||
- | Name |
+Key |
|||
- | Summary |
+Value |
- | GameID |
-Unique Game ID |
-|||
- | DateAdded |
-Unix timestamp of date the game was registered |
++ | MetadataId |
+Unique modfile id. |
- | DateUpdated |
-Unix timestamp of date the game was updated |
++ | ModId |
+Unique mod id. |
- | DateLive |
-Unix timestamp of date the game was set live |
-|||
- | UgcName |
-Word used to describe user-generated content (mods, items, add-ons etc) |
-|||
- | Icon |
-Contains media URLs to the icon for the game |
-|||
- | Logo |
-Contains media URLs to the logo for the game |
+DateAdded |
+Unix timestamp of date file was added. |
|
- | HeaderImage |
-Contains media URLs to the preview header image for the game |
++ | CurrentVirusScanStatus |
+Current virus scan status of the file. For newly added files that have yet to be scanned this field will change frequently until a scan is complete |
- | Name |
-Name of the game |
++ | CurrentVirusStatus |
+Was a virus detected? |
- | Summary |
-Summary of the game’s mod support |
++ | Filesize |
+Size of the file in bytes. |
- | Instructions |
-A guide about creating and uploading mods for this game to mod.io |
+Filename |
+Filename including extension. |
|
- | InstructionsUrl |
-Link to a mod.io guide, modding wiki, or a page where modders can learn how to make and submit mods *//// to this game’s profile |
+Version |
+Release version this file represents. |
|
- | ProfileUrl |
-URL to the game |
-|||
- | Theme |
-Theme color values for the game |
-|||
- | Stats |
-Numerous aggregate stats for the game |
-|||
- | OtherUrls |
-Creator defined URLs to share |
-|||
- | Platforms |
-Platforms that are supported by this title |
-|||
- | GameMonetizationOptions |
-Monetization options for the game |
+Changelog |
+Changelog for the file. |
|
- | VirtualTokenName |
-Name of the Virtual Tokens for this game |
-|||
- | PlatformSupport |
-Platforms that are supported by this title |
+MetadataBlob |
+Metadata stored by the game developer for this file. |
- | Platform |
-A platform supported by a title |
++ | UserId |
+|
- | Locked |
-Whether ot not this platform is locked from having files submitted to it by players |
++ | Username |
+|
- | Moderated |
-Whether or not this platform’s file submissions are moderated or not |
++ | DateOnline |
++ |
+ | ProfileUrl |
++ | |||
+ | DisplayNamePortal |
+
- | Label |
-Label of the link you are sharing |
+TagGroupName |
+The display name for the tag |
|
- | Url |
-The URL to be associated with the label |
++ | TagGroupValues |
+The valid tags the group can have |
+
+ | bAllowMultipleSelection |
+True if multiple tags from the group can be used simultaneously |
Numerous aggregate stats for the game
+wrapper around Modio::ErrorCode
+Simple struct representing the outcome of a mod management operation
- | GameID |
-Unique game id |
-|||
- | ModCountTotal |
-Available mod count for the game |
-|||
- | ModDownloadsToday |
-Mods downloaded today for the game |
-|||
- | ModDownloadsTotal |
-Total mods downloaded for the game |
-|||
- | ModDownloadsDailyAverage |
-Average mods downloaded on a daily basis |
++ | ID |
+ID for the mod that the event occurred on |
- | ModSubscribersTotal |
-Number of total users who have subscribed to the mods for the game |
++ | Event |
+What type of event occurred |
- | DateExpires |
-Unix timestamp until this game’s statistics are considered stale |
++ | Status |
+Empty if operation completed successfully, truthy/contains error code if operation failed |
Simple struct to encapsulate data passed to external authentication systems
+- | Primary |
-The primary hex color code |
-|||
- | Dark |
-The dark hex color code |
-|||
- | Light |
-The light hex color code |
+AuthToken |
+||
- | Success |
-The success hex color code |
+UserEmail |
+||
- | Warning |
-The warning hex color code |
++ | bUserHasAcceptedTerms |
+|
- | Danger |
-The danger hex color code |
++ | ExtendedParameters |
+
- | Filename |
-Header image filename including extension |
-
- | Original |
-URL to the full-sized header image |
-
- | Filename |
-Logo filename including extension. |
-||
- | Original |
-URL to the full - sized logo. |
-||
- | Thumb320x180 |
-URL to the small logo thumbnail. |
-||
- | Thumb640x360 |
-URL to the medium logo thumbnail. |
-||
- | Thumb1280x720 |
-URL to the large logo thumbnail. |
+PathToModRootDirectory |
+
- | Filename |
-Icon filename including extension. |
-||
- | Original |
-URL to the full-sized icon. |
-||
- | Thumb64x64 |
-URL to the small icon thumbnail. |
+PathToLogoFile |
+|
- | Thumb128x128 |
-URL to the medium icon thumbnail. |
+Name |
+|
- | Thumb256x256 |
-URL to the large icon thumbnail. |
+Summary |
+
+ | HintText |
++ |
Font |
@@ -15009,7 +15252,7 @@ |
New Initialization Options object with the session identifier set to the desired value
Changes the portal for the provided set of initialization options
New Initialization Options object with the portal set to the desired value
Compares two ModioModIDs, returning true if not equal
The constructed FModioAuthenticationParams object for use with AuthenticateUserExternalAsync
Create a ApiKey id from a string, should only be used in conjunction with InitializeAsync
The underlying value
Compares two ModioModIDs, returning true if equal
0 if there is no error
FString GetMessage(FModioErrorCode Error)
-Checks if the passed-in ErrorCode matches the specified error condition
true if the code matches the condition
Runs a filter over the user’s subscription list
Dimensions of the logo if displayed in a 1:1 pixel ratio
FVector2D GetGallerySize(UTexture* GalleryImage, EModioGallerySize GallerySize)
-Dimensions of the gallery image if displayed in a 1:1 pixel ratio
FVector2D GetAvatarSize(UTexture* Avatar, EModioAvatarSize AvatarSize)
-Dimensions of the avatar if displayed in a 1:1 pixel ratio
FString GetPath(FModioModCollectionEntry Entry)
-Path to the mod’s installation folder on disk NOTE: If the mod is not yet installed this path may not yet exist. Check Get Mod State before trying to load files in this location
EModioModState GetModState(FModioModCollectionEntry Entry)
-EModioModState enum representing current state of the mod
FModioModInfo GetModProfile(FModioModCollectionEntry Entry)
-FModioModInfo containing mod profile data
FModioModID GetID(FModioModCollectionEntry Entry)
-Mod ID
Retrieves the total amount of progress required for the specified state.
Modio::FileSize for total progress in bytes
Returns a EModioModProgressState indicating which state the mod operation is in