#pragma once /* * SDK generated by Dumper-7 * * https://github.com/Encryqed/Dumper-7 */ // Package: PL_SaveGame #include "Basic.hpp" #include "CoreUObject_structs.hpp" #include "CoreUObject_classes.hpp" #include "GameplayTags_structs.hpp" #include "PL_SaveGame_structs.hpp" #include "PL_Core_classes.hpp" #include "Engine_classes.hpp" namespace SDK { // Class PL_SaveGame.PL_ProjectSpecificSaveGameData // 0x0000 (0x0028 - 0x0028) class UPL_ProjectSpecificSaveGameData : public UObject { public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_ProjectSpecificSaveGameData") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_ProjectSpecificSaveGameData") } static class UPL_ProjectSpecificSaveGameData* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_ProjectSpecificSaveGameData; // Class PL_SaveGame.PL_SaveGame // 0x0038 (0x0060 - 0x0028) class UPL_SaveGame : public USaveGame { public: int32 VersionNumber; // 0x0028(0x0004)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_2C[0x4]; // 0x002C(0x0004)(Fixing Size After Last Property [ Dumper-7 ]) struct FDateTime LastUpdate; // 0x0030(0x0008)(Edit, BlueprintVisible, ZeroConstructor, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) bool bWasAutoSaved; // 0x0038(0x0001)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_39[0x7]; // 0x0039(0x0007)(Fixing Size After Last Property [ Dumper-7 ]) struct FPL_PersistentData PersistentData; // 0x0040(0x0020)(Edit, BlueprintVisible, NativeAccessSpecifierPublic) public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGame") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGame") } static class UPL_SaveGame* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGame; // Class PL_SaveGame.PL_SaveGameErrorCodeUtils // 0x0000 (0x0028 - 0x0028) class UPL_SaveGameErrorCodeUtils final : public UBlueprintFunctionLibrary { public: static class FString ConvertErrorCodeToDigitNumberString(EPL_SaveGameErrorCode ErrorCode); public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGameErrorCodeUtils") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGameErrorCodeUtils") } static class UPL_SaveGameErrorCodeUtils* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGameErrorCodeUtils; // Class PL_SaveGame.PL_SaveGameSystem // 0x00E8 (0x0118 - 0x0030) class UPL_SaveGameSystem final : public UGameInstanceSubsystem { public: TMulticastInlineDelegate OnStateSavedBegin; // 0x0030(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic) TMulticastInlineDelegate OnStateSavedEnd; // 0x0040(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic) TMulticastInlineDelegate OnStateLoadedBegin; // 0x0050(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic) TMulticastInlineDelegate OnStateLoadedEnd; // 0x0060(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic) TMulticastInlineDelegate OnStateDeleted; // 0x0070(0x0010)(ZeroConstructor, InstancedReference, BlueprintAssignable, NativeAccessSpecifierPublic) uint8 Pad_80[0x20]; // 0x0080(0x0020)(Fixing Size After Last Property [ Dumper-7 ]) class UUserWidget* SaveIndicatorWidget; // 0x00A0(0x0008)(ExportObject, ZeroConstructor, Transient, InstancedReference, DuplicateTransient, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected) uint8 Pad_A8[0x70]; // 0x00A8(0x0070)(Fixing Struct Size After Last Property [ Dumper-7 ]) public: static const class FText GetMessageFailedToLoad(); bool DeleteAllSavesOfSlot(const class FString& SlotName); bool DeleteSaveSlot(const class FString& SlotName); class USaveGame* GetRawSave(const class FString& SlotName); class UPL_SaveGame* GetSave(const class FString& SlotName); bool LoadState(); bool LoadStateFromSlot(const class FString& SlotName); void OnActorsHaveBegunPlay(class UWorld* World); void OnWorldChanged(class UWorld* OldWorld, class UWorld* NewWorld); void QueueAutoSave(const struct FGameplayTag& InAutoSaveReason, bool bSkipAutoSaveCoolDown); struct FPL_SaveResult SaveRawStateToSlot(class USaveGame* RawSaveObj, const class FString& SlotName); struct FPL_SaveResult SaveState(bool bWasAutoSaved, bool bAsync); struct FPL_SaveResult SaveStateToSlot(const class FString& SlotName, bool bWasAutoSaved, bool bAsync); TArray GetAllSaveGameSlotNames() const; int32 GetSavingBlockedCount() const; class FString GetSavingBlockedReasons() const; bool HasPendingSave() const; bool HasSave(const class FString& SlotName) const; bool IsSavingBlocked() const; EPL_SaveGameStatus QuerySaveGameStatus(const class FString& SlotName) const; public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGameSystem") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGameSystem") } static class UPL_SaveGameSystem* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGameSystem; // Class PL_SaveGame.PL_SaveGameUpgradeAction // 0x0000 (0x0028 - 0x0028) class UPL_SaveGameUpgradeAction : public UObject { public: bool Upgrade(class UPL_SaveGame* SaveGame, const struct FPL_SaveGameUpgradeContext& Context); public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGameUpgradeAction") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGameUpgradeAction") } static class UPL_SaveGameUpgradeAction* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGameUpgradeAction; // Class PL_SaveGame.PL_SaveGameUpgradeData // 0x0060 (0x0088 - 0x0028) class UPL_SaveGameUpgradeData : public UObject { public: TMap VersionUpgrades; // 0x0028(0x0050)(Edit, BlueprintVisible, NativeAccessSpecifierPublic) TArray RepeatableActions; // 0x0078(0x0010)(Edit, BlueprintVisible, ZeroConstructor, NativeAccessSpecifierPublic) public: int32 GetLatestVersionNumber() const; bool UpgradeSaveGameToLatestVersion(class UPL_SaveGame* SaveGame, const struct FPL_SaveGameUpgradeContext& Context) const; public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGameUpgradeData") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGameUpgradeData") } static class UPL_SaveGameUpgradeData* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGameUpgradeData; // Class PL_SaveGame.PL_SaveGameUtils // 0x0000 (0x0028 - 0x0028) class UPL_SaveGameUtils final : public UBlueprintFunctionLibrary { public: static void CancelAutoSave(const class UObject* WorldContextObject); static TArray GetAllSaveGameSlotNames(const class UObject* WorldContextObject, bool bIncludeAutoSaves, bool bIncludeUserSettings); static bool GetBlackboardData(const class UPL_SaveGame* SaveGame, const class FName BlackboardName, struct FPL_BlackboardData* BlackboardData); static class UPL_SaveGameSystem* GetSaveGameSystem(const class UObject* WorldContextObject); static bool GetSystemData(const struct FPL_PersistentData& PersistentData, const class FName TypeName, struct FInstancedStruct* SystemData); static bool IsSavingAllowed(const class UObject* WorldContextObject); static void QueueAutoSave(const class UObject* WorldContextObject, const struct FGameplayTag& InReasonTag, bool bSkipAutoSaveCoolDown); static void QueueSave(const class UObject* WorldContextObject); static void SetBlackboardData(class UPL_SaveGame* SaveGame, const class FName BlackboardName, const struct FPL_BlackboardData& BlackboardData); static void SetSystemData(struct FPL_PersistentData& PersistentData, const class FName TypeName, const struct FInstancedStruct& SystemData); static void StartPeriodicAutoSave(const class UObject* WorldContextObject); static void StopPeriodicAutoSave(const class UObject* WorldContextObject); public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGameUtils") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGameUtils") } static class UPL_SaveGameUtils* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGameUtils; // Class PL_SaveGame.PL_SaveIndicatorInterface // 0x0000 (0x0000 - 0x0000) class IPL_SaveIndicatorInterface final { public: void HideSaveIndicator(bool bHideInstantly); void ShowSaveIndicator(float MinDisplayTime); public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveIndicatorInterface") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveIndicatorInterface") } static class IPL_SaveIndicatorInterface* GetDefaultObj() { return GetDefaultObjImpl(); } class UObject* AsUObject() { return reinterpret_cast(this); } const class UObject* AsUObject() const { return reinterpret_cast(this); } }; DUMPER7_ASSERTS_IPL_SaveIndicatorInterface; // Class PL_SaveGame.PL_PersistenceSystem // 0x0048 (0x0078 - 0x0030) class UPL_PersistenceSystem final : public UGameInstanceSubsystem { public: uint8 Pad_30[0x8]; // 0x0030(0x0008)(Fixing Size After Last Property [ Dumper-7 ]) struct FPL_PersistentData PersistentData; // 0x0038(0x0020)(Transient, DuplicateTransient, Protected, NativeAccessSpecifierProtected) TMulticastInlineDelegate PersistenceSystem)> OnPreSaveData; // 0x0058(0x0010)(ZeroConstructor, InstancedReference, Protected, NativeAccessSpecifierProtected) TMulticastInlineDelegate PersistenceSystem)> OnPostLoadData; // 0x0068(0x0010)(ZeroConstructor, InstancedReference, Protected, NativeAccessSpecifierProtected) public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_PersistenceSystem") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_PersistenceSystem") } static class UPL_PersistenceSystem* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_PersistenceSystem; // Class PL_SaveGame.PL_SaveGameSettings // 0x00B8 (0x00F0 - 0x0038) class UPL_SaveGameSettings final : public UPL_SettingsBase { public: class FString SaveName; // 0x0038(0x0010)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, HasGetValueTypeHash, NativeAccessSpecifierPublic) TSubclassOf SaveGameUpgradeDataAsset; // 0x0048(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic) TSubclassOf ProjectSpecificSaveGameDataClass; // 0x0050(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic) TSubclassOf SaveGameIndicatorWidgetClass; // 0x0058(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, NoDestructor, UObjectWrapper, HasGetValueTypeHash, NativeAccessSpecifierPublic) float SaveIndicatorMinDisplayTime; // 0x0060(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) int32 AvailableSaveSlots; // 0x0064(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) int32 SaveGameMaxSize; // 0x0068(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) bool bTakePersistencySnapshotBetweenFrames; // 0x006C(0x0001)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_6D[0x3]; // 0x006D(0x0003)(Fixing Size After Last Property [ Dumper-7 ]) TArray SaveExclusionList; // 0x0070(0x0010)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, NativeAccessSpecifierPublic) struct FGameplayTag LevelChangingSaveBlockerTag; // 0x0080(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, Config, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) bool bShouldCancelPendingSavesOnLevelChange; // 0x0088(0x0001)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) bool bShouldEnsureNoPendingSavesOnLevelChange; // 0x0089(0x0001)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_8A[0x6]; // 0x008A(0x0006)(Fixing Size After Last Property [ Dumper-7 ]) TArray> LevelsThatCancelPendingSaves; // 0x0090(0x0010)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, UObjectWrapper, NativeAccessSpecifierPublic) bool bAutoSaveIsEnabled; // 0x00A0(0x0001)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_A1[0x3]; // 0x00A1(0x0003)(Fixing Size After Last Property [ Dumper-7 ]) float AutoSaveQueueDelay; // 0x00A4(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) EPL_AutoSaveGameStrategy AutoSaveGameStrategy; // 0x00A8(0x0001)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_A9[0x3]; // 0x00A9(0x0003)(Fixing Size After Last Property [ Dumper-7 ]) int32 NumberOfAutoSave; // 0x00AC(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) class FString AutoSaveName; // 0x00B0(0x0010)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, HasGetValueTypeHash, NativeAccessSpecifierPublic) struct FGameplayTag DefaultAutoSaveReasonTag; // 0x00C0(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, Config, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) bool bPeriodicAutoSaveIsEnabled; // 0x00C8(0x0001)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_C9[0x3]; // 0x00C9(0x0003)(Fixing Size After Last Property [ Dumper-7 ]) struct FGameplayTag AutoSavePeriodReasonTag; // 0x00CC(0x0008)(Edit, BlueprintVisible, BlueprintReadOnly, Config, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic) uint8 Pad_D4[0x4]; // 0x00D4(0x0004)(Fixing Size After Last Property [ Dumper-7 ]) class FString UserSettingsName; // 0x00D8(0x0010)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, HasGetValueTypeHash, NativeAccessSpecifierPublic) float AutoSavePeriod; // 0x00E8(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected) float AutoSaveCoolDownDuration; // 0x00EC(0x0004)(Edit, BlueprintVisible, BlueprintReadOnly, ZeroConstructor, Config, IsPlainOldData, NoDestructor, Protected, HasGetValueTypeHash, NativeAccessSpecifierProtected) public: static const class UPL_SaveGameSettings* Get(); public: static class UClass* StaticClass() { STATIC_CLASS_IMPL("PL_SaveGameSettings") } static const class FName& StaticName() { STATIC_NAME_IMPL(L"PL_SaveGameSettings") } static class UPL_SaveGameSettings* GetDefaultObj() { return GetDefaultObjImpl(); } }; DUMPER7_ASSERTS_UPL_SaveGameSettings; }