diff --git a/AsaApi/Core/Private/Ark/ArkBaseApi.cpp b/AsaApi/Core/Private/Ark/ArkBaseApi.cpp index fd0c7d7..1b16de1 100644 --- a/AsaApi/Core/Private/Ark/ArkBaseApi.cpp +++ b/AsaApi/Core/Private/Ark/ArkBaseApi.cpp @@ -16,7 +16,7 @@ namespace API { - constexpr float api_version = 1.21f; + constexpr float api_version = 1.22f; ArkBaseApi::ArkBaseApi() : commands_(std::make_unique()), diff --git a/AsaApi/Core/Private/Offsets.cpp b/AsaApi/Core/Private/Offsets.cpp index 90f856f..b2066c0 100644 --- a/AsaApi/Core/Private/Offsets.cpp +++ b/AsaApi/Core/Private/Offsets.cpp @@ -1,5 +1,71 @@ #include "Offsets.h" #include "Logger/Logger.h" +#include +#pragma comment(lib, "Psapi.lib") + +namespace +{ + std::string ModuleName(HMODULE hModule) + { + if (!hModule) + return ""; + + char path[MAX_PATH]{}; + if (!GetModuleFileNameA(hModule, path, MAX_PATH)) + return ""; + + const std::string full(path); + const auto slash = full.find_last_of("\\/"); + std::string name = (slash != std::string::npos) ? full.substr(slash + 1) : full; + + const auto dot = name.rfind('.'); + if (dot != std::string::npos) + name.erase(dot); + + return name; + } + + std::string GetCallingModuleName() + { + constexpr int maxFrames = 32; + void* stack[maxFrames]{}; + + const USHORT frames = CaptureStackBackTrace(1, maxFrames, stack, nullptr); + + HMODULE self = nullptr; + GetModuleHandleExA( + GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, + reinterpret_cast(&GetCallingModuleName), + &self); + + constexpr int maxStackDepth = 2; + int stackDepth = 0; + + for (USHORT i = 0; i < frames; ++i) + { + HMODULE module = nullptr; + if (!GetModuleHandleExA( + GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, + reinterpret_cast(stack[i]), + &module)) + { + continue; + } + + if (module == self) + { + if (++stackDepth > maxStackDepth) + return ModuleName(self); + continue; + } + + if (stackDepth > 0) + return ModuleName(module); + } + + return stackDepth > 0 ? ModuleName(self) : ""; + } +} // namespace namespace API { @@ -18,12 +84,12 @@ namespace API const auto end_section = first_section + section_count; const auto data_section_header = std::find_if(first_section, end_section, [](_IMAGE_SECTION_HEADER hdr) - { - auto name = std::string(reinterpret_cast(hdr.Name), 8); - name.erase(std::remove(name.begin(), name.end(), '\0'), name.end()); + { + auto name = std::string(reinterpret_cast(hdr.Name), 8); + name.erase(std::remove(name.begin(), name.end(), '\0'), name.end()); - return name == ".data"; - }); + return name == ".data"; + }); if (data_section_header == end_section) { @@ -41,7 +107,7 @@ namespace API } void Offsets::Init(std::unordered_map&& offsets_dump, - std::unordered_map&& bitfields_dump) + std::unordered_map&& bitfields_dump) { offsets_dump_.swap(offsets_dump); bitfields_dump_.swap(bitfields_dump); @@ -51,7 +117,7 @@ namespace API { if (!offsets_dump_.contains(name)) { - Log::GetLog()->critical("Failed to get the offset of {}.", name); + Log::GetLog()->critical("Failed to get the offset of '{}'.\nRequested by plugin: {}", name, GetCallingModuleName()); Log::GetLog()->flush(); Sleep(10000); throw; @@ -64,7 +130,7 @@ namespace API { if (!offsets_dump_.contains(name)) { - Log::GetLog()->critical("Failed to get the offset of {}.", name); + Log::GetLog()->critical("Failed to get the offset of '{}'.\nRequested by plugin: {}", name, GetCallingModuleName()); Log::GetLog()->flush(); Sleep(10000); throw; @@ -77,7 +143,7 @@ namespace API { if (!offsets_dump_.contains(name)) { - Log::GetLog()->critical("Failed to get the offset of {}.", name); + Log::GetLog()->critical("Failed to get the offset of '{}'.\nRequested by plugin: {}", name, GetCallingModuleName()); Log::GetLog()->flush(); Sleep(10000); throw; @@ -100,7 +166,7 @@ namespace API { if (!bitfields_dump_.contains(name)) { - Log::GetLog()->critical("Failed to get the bitfield address of {}.", name); + Log::GetLog()->critical("Failed to get the bitfield address of '{}'.\nRequested by plugin: {}", name, GetCallingModuleName()); Log::GetLog()->flush(); Sleep(10000); throw; @@ -115,4 +181,4 @@ namespace API return cf; } -} // namespace API +} // namespace API \ No newline at end of file diff --git a/AsaApi/Core/Public/API/ARK/Actor.h b/AsaApi/Core/Public/API/ARK/Actor.h index b9849e9..2069f21 100644 --- a/AsaApi/Core/Public/API/ARK/Actor.h +++ b/AsaApi/Core/Public/API/ARK/Actor.h @@ -13581,3 +13581,128 @@ struct FUnreplicatedEggData static UScriptStruct* StaticStruct() { return NativeCall(nullptr, "FUnreplicatedEggData.StaticStruct()"); } }; + +struct FCreatureGeneTraitSpawnInfo +{ + // Fields + + float& SpawnRateProbabilityField() { return *GetNativePointerField(this, "FCreatureGeneTraitSpawnInfo.SpawnRateProbability"); } + TArray >& GeneTraitTierChanceProbabilityOverrideField() { return *GetNativePointerField >*>(this, "FCreatureGeneTraitSpawnInfo.GeneTraitTierChanceProbabilityOverride"); } + + // Bitfields + + + // Functions + + static UScriptStruct* StaticStruct() { return NativeCall(nullptr, "FCreatureGeneTraitSpawnInfo.StaticStruct()"); } + +}; + +struct FCreatureSpawnGeneTraits_Specifications +{ + // Fields + + TMap >& OverrideDefaultGeneTraitSpawnInfoField() { return *GetNativePointerField >*>(this, "FCreatureSpawnGeneTraits_Specifications.OverrideDefaultGeneTraitSpawnInfo"); } + TArray >& OverrideDefaultLiklihoodToSpawnWithCountOfTraitsField() { return *GetNativePointerField >*>(this, "FCreatureSpawnGeneTraits_Specifications.OverrideDefaultLiklihoodToSpawnWithCountOfTraits"); } + int& OverrideMaxNumberOfTotalGeneTraitsAllowedOnThisCreatureField() { return *GetNativePointerField(this, "FCreatureSpawnGeneTraits_Specifications.OverrideMaxNumberOfTotalGeneTraitsAllowedOnThisCreature"); } + + // Bitfields + + + // Functions + + FCreatureSpawnGeneTraits_Specifications& operator=(const struct FCreatureSpawnGeneTraits_Specifications* __that) { return NativeCall(this, "FCreatureSpawnGeneTraits_Specifications.operator=(FCreatureSpawnGeneTraits_Specifications&)", __that); } + static UScriptStruct* StaticStruct() { return NativeCall(nullptr, "FCreatureSpawnGeneTraits_Specifications.StaticStruct()"); } + +}; + +struct FGeneTraitSpecification +{ + // Fields + + FCreatureSpawnGeneTraits_Specifications& DefaultCreatureSpawnGeneTraits_SpecificationsField() { return *GetNativePointerField(this, "FGeneTraitSpecification.DefaultCreatureSpawnGeneTraits_Specifications"); } + TMap >& OverwrittenPerCreatureSpawnGeneTraits_SpecificationsField() { return *GetNativePointerField >*>(this, "FGeneTraitSpecification.OverwrittenPerCreatureSpawnGeneTraits_Specifications"); } + + // Bitfields + + + // Functions + + static UScriptStruct* StaticStruct() { return NativeCall(nullptr, "FGeneTraitSpecification.StaticStruct()"); } + +}; + + +struct FGeneTraitSkipCodeChecksStruct +{ + // Fields + + FName& TraitNameField() { return *GetNativePointerField(this, "FGeneTraitSkipCodeChecksStruct.TraitName"); } + bool& ThisTraitWeConfirmedHasNoSpecialConditionsBeyondThrallCheckField() { return *GetNativePointerField(this, "FGeneTraitSkipCodeChecksStruct.ThisTraitWeConfirmedHasNoSpecialConditionsBeyondThrallCheck"); } + + // Bitfields + + + // Functions + + static UScriptStruct* StaticStruct() { return NativeCall(nullptr, "FGeneTraitSkipCodeChecksStruct.StaticStruct()"); } + +}; + + +struct UGeneTraitDefinitions : UObject +{ + // Fields + + TMap, FDefaultSetAllocator, TDefaultMapHashableKeyFuncs, 0> >& GeneTraits_GeneTraitDefinitionsField() { return *GetNativePointerField, FDefaultSetAllocator, TDefaultMapHashableKeyFuncs, 0> >*>(this, "UGeneTraitDefinitions.GeneTraits_GeneTraitDefinitions"); } + FGeneTraitSpecification& GeneTraits_SpecificationsField() { return *GetNativePointerField(this, "UGeneTraitDefinitions.GeneTraits_Specifications"); } + TArray >& GeneTraits_Specifications_NonHumansField() { return *GetNativePointerField >*>(this, "UGeneTraitDefinitions.GeneTraits_Specifications_NonHumans"); } + TArray >& GeneTraits_Specifications_ThrallsField() { return *GetNativePointerField >*>(this, "UGeneTraitDefinitions.GeneTraits_Specifications_Thralls"); } + TArray >& GeneTraits_SkipCodeChecksStruct_NonHumansField() { return *GetNativePointerField >*>(this, "UGeneTraitDefinitions.GeneTraits_SkipCodeChecksStruct_NonHumans"); } + TArray >& GeneTraits_SkipCodeChecksStruct_ThrallsField() { return *GetNativePointerField >*>(this, "UGeneTraitDefinitions.GeneTraits_SkipCodeChecksStruct_Thralls"); } + TArray >& DefaultGeneTraitTierChanceProbabilityField() { return *GetNativePointerField >*>(this, "UGeneTraitDefinitions.DefaultGeneTraitTierChanceProbability"); } + bool& ThisIsACustomFileAndWillAttemptToFindThisCreaturesGeneTraitListingInTheDefaultBPField() { return *GetNativePointerField(this, "UGeneTraitDefinitions.ThisIsACustomFileAndWillAttemptToFindThisCreaturesGeneTraitListingInTheDefaultBP"); } + bool& ThisIsACustomFileAndWillNOTOverrideTheDefaultGeneTraitListingForWhenACreatureIsntFoundInEitherFileField() { return *GetNativePointerField(this, "UGeneTraitDefinitions.ThisIsACustomFileAndWillNOTOverrideTheDefaultGeneTraitListingForWhenACreatureIsntFoundInEitherFile"); } + + // Bitfields + + + // Functions + + bool GeneTraits_AddRandomSpawnGeneTraitToThisCreature_Implementation(struct UObject* TargetToEvaluate, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AddRandomSpawnGeneTraitToThisCreature_Implementation(UObject*,FString&)", TargetToEvaluate, FailReasonString); } + bool GeneTraits_GetCreatureSpawnGeneTraits_GeneTraitDefinitions(struct UObject* TargetToEvaluate, struct FCreatureSpawnGeneTraits_Specifications* ReturnStruc, class FString* FailReasonStringt) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetCreatureSpawnGeneTraits_GeneTraitDefinitions(UObject*,FCreatureSpawnGeneTraits_Specifications&,FString&)", TargetToEvaluate, ReturnStruc, FailReasonStringt); } + bool GeneTraits_AreGeneTraitsEnabled_Implementation(struct UObject* WorldContextObject) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AreGeneTraitsEnabled_Implementation(UObject*)", WorldContextObject); } + bool GeneTraits_AddRandomSpawnGeneTraitToEgg_Implementation(TSubclassOf EggItemClass, class TArray >* OutEggDinoGeneTraits, class FString* FailReasonString, struct UObject* WorldContextObject) { return NativeCall*, class TArray >*, class FString*, struct UObject*>(this, "UGeneTraitDefinitions.GeneTraits_AddRandomSpawnGeneTraitToEgg_Implementation(TSubclassOf,TArray>&,FString&,UObject*)", &EggItemClass, OutEggDinoGeneTraits, FailReasonString, WorldContextObject); } + static void StaticRegisterNativesUGeneTraitDefinitions() { NativeCall(nullptr, "UGeneTraitDefinitions.StaticRegisterNativesUGeneTraitDefinitions()"); } + bool GeneTraits_CanTraitExistOnThisCreature_Implementation(struct UObject* TargetToEvaluate, FName TraitName, const class TMap >* ExistingCountOfEachTraitNotIncludingIt, bool IsCreatureUnderMaxTotalTraitLimit, class FString* FailReasonString) { return NativeCall >*, bool, class FString*>(this, "UGeneTraitDefinitions.GeneTraits_CanTraitExistOnThisCreature_Implementation(UObject*,FName,TMap>&,bool,FString&)", TargetToEvaluate, TraitName, ExistingCountOfEachTraitNotIncludingIt, IsCreatureUnderMaxTotalTraitLimit, FailReasonString); } + static bool CumulativeAdjustFloatValueFromCharacterTraits(FName DataName, struct FFunctionParams_NoArrays* InData, struct FFunctionParams_NoArrays* OutData) { return NativeCall(nullptr, "UGeneTraitDefinitions.CumulativeAdjustFloatValueFromCharacterTraits(FName,FFunctionParams_NoArrays,FFunctionParams_NoArrays&)", DataName, InData, OutData); } + bool GeneTraits_AddRandomSpawnGeneTrait_SkipCode_NonHuman(struct UObject* TargetToEvaluate) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AddRandomSpawnGeneTrait_SkipCode_NonHuman(UObject*)", TargetToEvaluate); } + bool GeneTraits_RemoveInstanceOfGeneTraitIfItExists_Implementation(struct UObject* TargetToEvaluate, FName TraitName, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_RemoveInstanceOfGeneTraitIfItExists_Implementation(UObject*,FName,FString&)", TargetToEvaluate, TraitName, FailReasonString); } + static UClass* StaticClass() { return NativeCall(nullptr, "UGeneTraitDefinitions.StaticClass()"); } + bool BPGetCustomBlueprintData_Implementation(FName DataName, struct FFunctionParams_NoArrays* InData, struct FFunctionParams_NoArrays* OutData) { return NativeCall(this, "UGeneTraitDefinitions.BPGetCustomBlueprintData_Implementation(FName,FFunctionParams_NoArrays,FFunctionParams_NoArrays&)", DataName, InData, OutData); } + int GeneTraits_GetMaxAllowedTraitsForThisCreature_Implementation(struct UObject* TargetToEvaluate) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetMaxAllowedTraitsForThisCreature_Implementation(UObject*)", TargetToEvaluate); } + TSubclassOf* GeneTraits_GetDefinitionForThisTrait_Implementation(TSubclassOf* result, FName TraitName, TSubclassOf CreatureClass, class FString* FailReasonString) { return NativeCall*, TSubclassOf*, FName, struct TSubclassOf*, class FString*>(this, "UGeneTraitDefinitions.GeneTraits_GetDefinitionForThisTrait_Implementation(FName,TSubclassOf,FString&)", result, TraitName, &CreatureClass, FailReasonString); } + bool GeneTraits_CanTraitBeAdded_Implementation(struct UObject* TargetToEvaluate, FName TraitName, class FString* FailReasonString, bool IsReplace) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_CanTraitBeAdded_Implementation(UObject*,FName,FString&,bool)", TargetToEvaluate, TraitName, FailReasonString, IsReplace); } + bool GeneTraits_ValidateGeneTraits(struct UObject* TargetToEvaluate, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_ValidateGeneTraits(UObject*,FString&)", TargetToEvaluate, FailReasonString); } + bool GeneTraits_AreGeneTraitsEnabled(struct UObject* WorldContextObject) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AreGeneTraitsEnabled(UObject*)", WorldContextObject); } + int GeneTraits_GetRandomNumberOfTraitsToBeAddedToThisCreatureOnSpawn(struct UObject* TargetToEvaluate) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetRandomNumberOfTraitsToBeAddedToThisCreatureOnSpawn(UObject*)", TargetToEvaluate); } + bool GeneTraits_AddRandomSpawnGeneTraitToEgg(TSubclassOf EggItemClass, class TArray >* OutEggDinoGeneTraits, class FString* FailReasonString, struct UObject* WorldContextObject) { return NativeCall*, class TArray >*, class FString*, struct UObject*>(this, "UGeneTraitDefinitions.GeneTraits_AddRandomSpawnGeneTraitToEgg(TSubclassOf,TArray>&,FString&,UObject*)", &EggItemClass, OutEggDinoGeneTraits, FailReasonString, WorldContextObject); } + int GeneTraits_GetCountOfGeneTraitStacksThisCreatureHas_Implementation(struct UObject* TargetToEvaluate, FName TraitName) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetCountOfGeneTraitStacksThisCreatureHas_Implementation(UObject*,FName)", TargetToEvaluate, TraitName); } + bool GeneTraits_GetCreatureSpawnGeneTraits_GeneTraitDefinitions_Implementation(struct UObject* TargetToEvaluate, struct FCreatureSpawnGeneTraits_Specifications* ReturnStruct, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetCreatureSpawnGeneTraits_GeneTraitDefinitions_Implementation(UObject*,FCreatureSpawnGeneTraits_Specifications&,FString&)", TargetToEvaluate, ReturnStruct, FailReasonString); } + int GeneTraits_GetMaxAllowedTraitsForThisCreature(struct UObject* TargetToEvaluate) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetMaxAllowedTraitsForThisCreature(UObject*)", TargetToEvaluate); } + bool GeneTraits_RemoveInstanceOfGeneTraitIfItExists(struct UObject* TargetToEvaluate, FName TraitName, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_RemoveInstanceOfGeneTraitIfItExists(UObject*,FName,FString&)", TargetToEvaluate, TraitName, FailReasonString); } + FName GeneTraits_GetRandomSpawnGeneTraitForCreature_Implementation(struct UObject* Creature, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetRandomSpawnGeneTraitForCreature_Implementation(UObject*,FString&)", Creature, FailReasonString); } + bool GeneTraits_ValidateGeneTraits_Implementation(struct UObject* TargetToEvaluate, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_ValidateGeneTraits_Implementation(UObject*,FString&)", TargetToEvaluate, FailReasonString); } + bool GeneTraits_AddInstanceOfGeneTraitIfPossible_Implementation(struct UObject* TargetToEvaluate, FName TraitName, int TraitTier, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AddInstanceOfGeneTraitIfPossible_Implementation(UObject*,FName,int,FString&)", TargetToEvaluate, TraitName, TraitTier, FailReasonString); } + bool GeneTraits_CanTraitExistOnThisCreature(struct UObject* TargetToEvaluate, FName TraitName, const class TMap >* ExistingCountOfEachTraitNotIncludingIt, bool IsCreatureUnderMaxTotalTraitLimit, class FString* FailReasonString) { return NativeCall >*, bool, class FString*>(this, "UGeneTraitDefinitions.GeneTraits_CanTraitExistOnThisCreature(UObject*,FName,TMap>&,bool,FString&)", TargetToEvaluate, TraitName, ExistingCountOfEachTraitNotIncludingIt, IsCreatureUnderMaxTotalTraitLimit, FailReasonString); } + bool GeneTraits_AddRandomSpawnGeneTraitToThisCreature(struct UObject* TargetToEvaluate, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AddRandomSpawnGeneTraitToThisCreature(UObject*,FString&)", TargetToEvaluate, FailReasonString); } + int GeneTraits_GetRandomNumberOfTraitsToBeAddedToThisCreatureOnSpawn_Implementation(struct UObject* TargetToEvaluate) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetRandomNumberOfTraitsToBeAddedToThisCreatureOnSpawn_Implementation(UObject*)", TargetToEvaluate); } + bool GeneTraits_CanTraitBeAdded(struct UObject* TargetToEvaluate, FName TraitName, class FString* FailReasonString, bool IsReplace) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_CanTraitBeAdded(UObject*,FName,FString&,bool)", TargetToEvaluate, TraitName, FailReasonString, IsReplace); } + int GeneTraits_GetCountOfGeneTraitStacksThisCreatureHas(struct UObject* TargetToEvaluate, FName TraitName) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_GetCountOfGeneTraitStacksThisCreatureHas(UObject*,FName)", TargetToEvaluate, TraitName); } + static UClass* GetPrivateStaticClass() { return NativeCall(nullptr, "UGeneTraitDefinitions.GetPrivateStaticClass()"); } + bool BPGetCustomBlueprintData(FName DataName, struct FFunctionParams_NoArrays* InData, struct FFunctionParams_NoArrays* OutData) { return NativeCall(this, "UGeneTraitDefinitions.BPGetCustomBlueprintData(FName,FFunctionParams_NoArrays,FFunctionParams_NoArrays&)", DataName, InData, OutData); } + bool GeneTraits_AddInstanceOfGeneTraitIfPossible(struct UObject* TargetToEvaluate, FName TraitName, int TraitTier, class FString* FailReasonString) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AddInstanceOfGeneTraitIfPossible(UObject*,FName,int,FString&)", TargetToEvaluate, TraitName, TraitTier, FailReasonString); } + static FName GeneTraits_SplitGeneTraitFNameAndTier(FName TraitName, int* TraitTierRank) { return NativeCall(nullptr, "UGeneTraitDefinitions.GeneTraits_SplitGeneTraitFNameAndTier(FName,int&)", TraitName, TraitTierRank); } + bool GeneTraits_AddRandomSpawnGeneTrait_SkipCode_Thralls(struct UObject* TargetToEvaluate) { return NativeCall(this, "UGeneTraitDefinitions.GeneTraits_AddRandomSpawnGeneTrait_SkipCode_Thralls(UObject*)", TargetToEvaluate); } + +}; \ No newline at end of file diff --git a/AsaApi/Core/Public/API/ARK/GameMode.h b/AsaApi/Core/Public/API/ARK/GameMode.h index 5678b30..542cebf 100644 --- a/AsaApi/Core/Public/API/ARK/GameMode.h +++ b/AsaApi/Core/Public/API/ARK/GameMode.h @@ -339,8 +339,8 @@ struct AShooterGameState : AGameState int GetStartTimeHour() { return NativeCall(this, "AShooterGameState.GetStartTimeHour()"); } bool AllowDinoTame(APrimalDinoCharacter* DinoChar, AShooterPlayerController* ForPC) { return NativeCall(this, "AShooterGameState.AllowDinoTame(APrimalDinoCharacter*,AShooterPlayerController*)", DinoChar, ForPC); } bool AllowDinoClassTame(TSubclassOf DinoCharClass, AShooterPlayerController* ForPC) { return NativeCall, AShooterPlayerController*>(this, "AShooterGameState.AllowDinoClassTame(TSubclassOf,AShooterPlayerController*)", DinoCharClass, ForPC); } -// FString* GetSaveDirectoryName(FString* result, ESaveType::Type SaveType) { return NativeCall(this, "AShooterGameState.GetSaveDirectoryName(ESaveType::Type)", result, SaveType); } -// FUNCTION MISSING: AShooterGameState.GetSaveDirectoryName(ESaveType::Type) + // FString* GetSaveDirectoryName(FString* result, ESaveType::Type SaveType) { return NativeCall(this, "AShooterGameState.GetSaveDirectoryName(ESaveType::Type)", result, SaveType); } + // FUNCTION MISSING: AShooterGameState.GetSaveDirectoryName(ESaveType::Type) FString* GetDayTimeString(FString* result) { return NativeCall(this, "AShooterGameState.GetDayTimeString()", result); } static APrimalBuff* BaseSpawnBuffAndAttachToCharacter(UClass* Buff, APrimalCharacter* PrimalCharacter, float ExperiencePoints) { return NativeCall(nullptr, "AShooterGameState.BaseSpawnBuffAndAttachToCharacter(UClass*,APrimalCharacter*,float)", Buff, PrimalCharacter, ExperiencePoints); } void InitializedGameState() { NativeCall(this, "AShooterGameState.InitializedGameState()"); } @@ -475,8 +475,8 @@ struct UPrimalWorld : UObject int OverlapNumInternalOctree(const FBoxCenterAndExtent* InBounds, unsigned int InSearchMask) { return NativeCall(this, "UPrimalWorld.OverlapNumInternalOctree(FBoxCenterAndExtent&,unsignedint)", InBounds, InSearchMask); } void GetPrimitiveOctreeIterator(const UE::Math::TVector* InLocation, float Extents, unsigned int InSearchMask, TFunction* InFunc) { NativeCall*, float, unsigned int, TFunction*>(this, "UPrimalWorld.GetPrimitiveOctreeIterator(UE::Math::TVector&,float,unsignedint,TFunction* InLocation, float Extents, unsigned int InSearchMask, TFunction* InFunc) { NativeCall*, float, unsigned int, TFunction*>(this, "UPrimalWorld.GetPrimitiveOctreeIteratorEarlyOut(UE::Math::TVector&,float,unsignedint,TFunction(this, "UPrimalWorld.DestroyOctree()"); } -// FUNCTION MISSING: UPrimalWorld.DestroyOctree() + // void DestroyOctree() { NativeCall(this, "UPrimalWorld.DestroyOctree()"); } + // FUNCTION MISSING: UPrimalWorld.DestroyOctree() bool OverlapMultiInternalSimpleOctree(TArray >* OutPrimitives, const FBoxCenterAndExtent* InBounds, unsigned int InSearchMask, bool bDontClearOutArray) { return NativeCall >*, const FBoxCenterAndExtent*, unsigned int, bool>(this, "UPrimalWorld.OverlapMultiInternalSimpleOctree(TArray>&,FBoxCenterAndExtent&,unsignedint,bool)", OutPrimitives, InBounds, InSearchMask, bDontClearOutArray); } }; @@ -595,7 +595,7 @@ struct UWorld : UPrimalWorld //UWorld::FOnGameStateSetEvent& GameStateSetEventField() { return *GetNativePointerField(this, "UWorld.GameStateSetEvent"); } //FWorldPSCPool& PSCPoolField() { return *GetNativePointerField(this, "UWorld.PSCPool"); } //FObjectSubsystemCollection& SubsystemCollectionField() { return *GetNativePointerField*>(this, "UWorld.SubsystemCollection"); } - + // Bitfields BitFieldValue bWorldWasLoadedThisTick() { return { this, "UWorld.bWorldWasLoadedThisTick" }; } @@ -678,8 +678,8 @@ struct UWorld : UPrimalWorld FTraceHandle* AsyncLineTraceByChannel(FTraceHandle* result, EAsyncTraceType InTraceType, const UE::Math::TVector* Start, const UE::Math::TVector* End, ECollisionChannel TraceChannel, const FCollisionQueryParams* Params, const FCollisionResponseParams* ResponseParam, const TDelegate* InDelegate, unsigned int UserData) { return NativeCall*, const UE::Math::TVector*, ECollisionChannel, const FCollisionQueryParams*, const FCollisionResponseParams*, const TDelegate*, unsigned int>(this, "UWorld.AsyncLineTraceByChannel(EAsyncTraceType,UE::Math::TVector&,UE::Math::TVector&,ECollisionChannel,FCollisionQueryParams&,FCollisionResponseParams&,TDelegate*,unsignedint)", result, InTraceType, Start, End, TraceChannel, Params, ResponseParam, InDelegate, UserData); } void WaitForAllAsyncTraceTasks() { NativeCall(this, "UWorld.WaitForAllAsyncTraceTasks()"); } void ResetAsyncTrace() { NativeCall(this, "UWorld.ResetAsyncTrace()"); } -// AActor* SpawnActorDeferred(UClass* Class, const UE::Math::TTransform* Transform, AActor* Owner, APawn* Instigator, ESpawnActorCollisionHandlingMethod CollisionHandlingOverride, ESpawnActorScaleMethod TransformScaleMethod) { return NativeCall*, AActor*, APawn*, ESpawnActorCollisionHandlingMethod, ESpawnActorScaleMethod>(this, "UWorld.SpawnActorDeferred(UClass*,UE::Math::TTransform*,AActor*,APawn*,ESpawnActorCollisionHandlingMethod,ESpawnActorScaleMethod)", Class, Transform, Owner, Instigator, CollisionHandlingOverride, TransformScaleMethod); } -// FUNCTION MISSING: UWorld.SpawnActorDeferred(UClass*,UE::Math::TTransform*,AActor*,APawn*,ESpawnActorCollisionHandlingMethod,ESpawnActorScaleMethod) + // AActor* SpawnActorDeferred(UClass* Class, const UE::Math::TTransform* Transform, AActor* Owner, APawn* Instigator, ESpawnActorCollisionHandlingMethod CollisionHandlingOverride, ESpawnActorScaleMethod TransformScaleMethod) { return NativeCall*, AActor*, APawn*, ESpawnActorCollisionHandlingMethod, ESpawnActorScaleMethod>(this, "UWorld.SpawnActorDeferred(UClass*,UE::Math::TTransform*,AActor*,APawn*,ESpawnActorCollisionHandlingMethod,ESpawnActorScaleMethod)", Class, Transform, Owner, Instigator, CollisionHandlingOverride, TransformScaleMethod); } + // FUNCTION MISSING: UWorld.SpawnActorDeferred(UClass*,UE::Math::TTransform*,AActor*,APawn*,ESpawnActorCollisionHandlingMethod,ESpawnActorScaleMethod) AActor* SpawnActorAbsolute(UClass* Class, const UE::Math::TTransform* AbsoluteTransform, const FActorSpawnParameters* SpawnParameters) { return NativeCall*, const FActorSpawnParameters*>(this, "UWorld.SpawnActorAbsolute(UClass*,UE::Math::TTransform&,FActorSpawnParameters&)", Class, AbsoluteTransform, SpawnParameters); } AActor* SpawnActor(UClass* Class, const UE::Math::TVector* Location, const UE::Math::TRotator* Rotation, const FActorSpawnParameters* SpawnParameters) { return NativeCall*, const UE::Math::TRotator*, const FActorSpawnParameters*>(this, "UWorld.SpawnActor(UClass*,UE::Math::TVector*,UE::Math::TRotator*,FActorSpawnParameters&)", Class, Location, Rotation, SpawnParameters); } AActor* SpawnActor(UClass* Class, const UE::Math::TTransform* UserTransformPtr, const FActorSpawnParameters* SpawnParameters) { return NativeCall*, const FActorSpawnParameters*>(this, "UWorld.SpawnActor(UClass*,UE::Math::TTransform*,FActorSpawnParameters&)", Class, UserTransformPtr, SpawnParameters); } @@ -687,8 +687,8 @@ struct UWorld : UPrimalWorld APlayerController* SpawnPlayActor(UPlayer* NewPlayer, ENetRole RemoteRole, const struct FURL* InURL, const FUniqueNetIdRepl* UniqueId, FString* Error, unsigned __int8 InNetPlayerIndex) { return NativeCall(this, "UWorld.SpawnPlayActor(UPlayer*,ENetRole,FURL&,FUniqueNetIdRepl&,FString&,unsignedchar)", NewPlayer, RemoteRole, InURL, UniqueId, Error, InNetPlayerIndex); } static bool FindTeleportSpot() { return NativeCall(nullptr, "UWorld.FindTeleportSpot(AActor*,UE::Math::TVector&,UE::Math::TRotator)"); } static char EncroachingBlockingGeometry() { return NativeCall(nullptr, "UWorld.EncroachingBlockingGeometry(AActor*,UE::Math::TVector,UE::Math::TRotator,UE::Math::TVector*)"); } -// void TickNetClient(float DeltaSeconds) { NativeCall(this, "UWorld.TickNetClient(float)", DeltaSeconds); } -// FUNCTION MISSING: UWorld.TickNetClient(float) + // void TickNetClient(float DeltaSeconds) { NativeCall(this, "UWorld.TickNetClient(float)", DeltaSeconds); } + // FUNCTION MISSING: UWorld.TickNetClient(float) bool IsPaused() { return NativeCall(this, "UWorld.IsPaused()"); } void ProcessLevelStreamingVolumes(UE::Math::TVector* OverrideViewLocation) { NativeCall*>(this, "UWorld.ProcessLevelStreamingVolumes(UE::Math::TVector*)", OverrideViewLocation); } void MarkActorComponentForNeededEndOfFrameUpdate(UActorComponent* Component, bool bForceGameThread) { NativeCall(this, "UWorld.MarkActorComponentForNeededEndOfFrameUpdate(UActorComponent*,bool)", Component, bForceGameThread); } @@ -746,8 +746,8 @@ struct UWorld : UPrimalWorld bool AreAlwaysLoadedLevelsLoaded() { return NativeCall(this, "UWorld.AreAlwaysLoadedLevelsLoaded()"); } void HandleTimelineScrubbed() { NativeCall(this, "UWorld.HandleTimelineScrubbed()"); } bool HandleDemoScrubCommand(const wchar_t* Cmd, FOutputDevice* Ar, UWorld* InWorld) { return NativeCall(this, "UWorld.HandleDemoScrubCommand(wchar_t*,FOutputDevice&,UWorld*)", Cmd, Ar, InWorld); } -// bool HandleDemoSpeedCommand(const wchar_t* Cmd, FOutputDevice* Ar, UWorld* InWorld) { return NativeCall(this, "UWorld.HandleDemoSpeedCommand(wchar_t*,FOutputDevice*,UWorld*)", Cmd, Ar, InWorld); } -// FUNCTION MISSING: UWorld.HandleDemoSpeedCommand(wchar_t*,FOutputDevice*,UWorld*) + // bool HandleDemoSpeedCommand(const wchar_t* Cmd, FOutputDevice* Ar, UWorld* InWorld) { return NativeCall(this, "UWorld.HandleDemoSpeedCommand(wchar_t*,FOutputDevice*,UWorld*)", Cmd, Ar, InWorld); } + // FUNCTION MISSING: UWorld.HandleDemoSpeedCommand(wchar_t*,FOutputDevice*,UWorld*) bool Exec(UWorld* InWorld, const wchar_t* Cmd, FOutputDevice* Ar) { return NativeCall(this, "UWorld.Exec(UWorld*,wchar_t*,FOutputDevice&)", InWorld, Cmd, Ar); } bool HandleDemoRecordCommand(const wchar_t* Cmd, FOutputDevice* Ar, UWorld* InWorld) { return NativeCall(this, "UWorld.HandleDemoRecordCommand(wchar_t*,FOutputDevice&,UWorld*)", Cmd, Ar, InWorld); } bool HandleDemoPlayCommand(const wchar_t* Cmd, FOutputDevice* Ar, UWorld* InWorld) { return NativeCall(this, "UWorld.HandleDemoPlayCommand(wchar_t*,FOutputDevice&,UWorld*)", Cmd, Ar, InWorld); } @@ -784,8 +784,8 @@ struct UWorld : UPrimalWorld //void SetNavigationSystem(UNavigationSystemBase* InNavigationSystem) { NativeCall(this, "UWorld.SetNavigationSystem(UNavigationSystemBase*)", InNavigationSystem); } ENetMode InternalGetNetMode() { return NativeCall(this, "UWorld.InternalGetNetMode()"); } bool IsRecordingClientReplay() { return NativeCall(this, "UWorld.IsRecordingClientReplay()"); } -// ENetMode AttemptDeriveFromURL() { return NativeCall(this, "UWorld.AttemptDeriveFromURL()"); } -// FUNCTION MISSING: UWorld.AttemptDeriveFromURL() + // ENetMode AttemptDeriveFromURL() { return NativeCall(this, "UWorld.AttemptDeriveFromURL()"); } + // FUNCTION MISSING: UWorld.AttemptDeriveFromURL() void SetGameState(AGameStateBase* NewGameState) { NativeCall(this, "UWorld.SetGameState(AGameStateBase*)", NewGameState); } //FLevelCollection* FindOrAddCollectionByType(const ELevelCollectionType InType) { return NativeCall(this, "UWorld.FindOrAddCollectionByType(ELevelCollectionType)", InType); } void SetActiveLevelCollection(int LevelCollectionIndex) { NativeCall(this, "UWorld.SetActiveLevelCollection(int)", LevelCollectionIndex); } @@ -883,19 +883,19 @@ struct UPrimalGameData : UObject TArray >& ExplorerNoteEntriesObjectsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.ExplorerNoteEntriesObjects"); } TArray >& HeadHairStylesEntriesObjectsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.HeadHairStylesEntriesObjects"); } TArray >& FacialHairStylesEntriesObjectsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.FacialHairStylesEntriesObjects"); } -// TSubclassOf& DefaultMultiUseToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultMultiUseToolTipWidget"); } -// TSubclassOf& DefaultToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultToolTipWidget"); } -// TSubclassOf& DefaultDinoMinimalTooltipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultDinoMinimalTooltipWidget"); } -// TSubclassOf& DefaultItemToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultItemToolTipWidget"); } -// TSubclassOf& StarterNoteItemField() { return *GetNativePointerField*>(this, "UPrimalGameData.StarterNoteItem"); } - //TArray, TSizedDefaultAllocator<32> >& PrimaryResourcesField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.PrimaryResources"); } -// TSubclassOf& GenericDroppedItemTemplateField() { return *GetNativePointerField*>(this, "UPrimalGameData.GenericDroppedItemTemplate"); } + // TSubclassOf& DefaultMultiUseToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultMultiUseToolTipWidget"); } + // TSubclassOf& DefaultToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultToolTipWidget"); } + // TSubclassOf& DefaultDinoMinimalTooltipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultDinoMinimalTooltipWidget"); } + // TSubclassOf& DefaultItemToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultItemToolTipWidget"); } + // TSubclassOf& StarterNoteItemField() { return *GetNativePointerField*>(this, "UPrimalGameData.StarterNoteItem"); } + //TArray, TSizedDefaultAllocator<32> >& PrimaryResourcesField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.PrimaryResources"); } + // TSubclassOf& GenericDroppedItemTemplateField() { return *GetNativePointerField*>(this, "UPrimalGameData.GenericDroppedItemTemplate"); } UMaterialInterface*& PostProcess_KnockoutBlurField() { return *GetNativePointerField(this, "UPrimalGameData.PostProcess_KnockoutBlur"); } UMaterialInterface*& AdditionalDeathPostProcessEffectField() { return *GetNativePointerField(this, "UPrimalGameData.AdditionalDeathPostProcessEffect"); } //TArray, TSizedDefaultAllocator<32> >& BuffPostProcessEffectsField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.BuffPostProcessEffects"); } //TArray, TSizedDefaultAllocator<32> >& AdditionalBuffPostProcessEffectsField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.AdditionalBuffPostProcessEffects"); } TArray >& EngramPointPurchaseRangesField() { return *GetNativePointerField >*>(this, "UPrimalGameData.EngramPointPurchaseRanges"); } -// TSubclassOf& GenericDroppedItemTemplateLowQualityField() { return *GetNativePointerField*>(this, "UPrimalGameData.GenericDroppedItemTemplateLowQuality"); } + // TSubclassOf& GenericDroppedItemTemplateLowQualityField() { return *GetNativePointerField*>(this, "UPrimalGameData.GenericDroppedItemTemplateLowQuality"); } TArray >& TutorialDefinitionsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.TutorialDefinitions"); } UTexture2D*& UnknownIconField() { return *GetNativePointerField(this, "UPrimalGameData.UnknownIcon"); } UMaterialInterface*& UnknownMaterialField() { return *GetNativePointerField(this, "UPrimalGameData.UnknownMaterial"); } @@ -948,21 +948,21 @@ struct UPrimalGameData : UObject TArray >& AdditionalStructureEngramsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalStructureEngrams"); } TArray >& AdditionalDefaultBuffsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalDefaultBuffs"); } TArray >& AvailableMissionsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AvailableMissions"); } -// TSubclassOf& ActorToSpawnUponEnemyCoreStructureDeathField() { return *GetNativePointerField*>(this, "UPrimalGameData.ActorToSpawnUponEnemyCoreStructureDeath"); } - //TArray, TSizedDefaultAllocator<32> >& AdditionalStructuresToPlaceField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.AdditionalStructuresToPlace"); } + // TSubclassOf& ActorToSpawnUponEnemyCoreStructureDeathField() { return *GetNativePointerField*>(this, "UPrimalGameData.ActorToSpawnUponEnemyCoreStructureDeath"); } + //TArray, TSizedDefaultAllocator<32> >& AdditionalStructuresToPlaceField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.AdditionalStructuresToPlace"); } TArray >& AdditionalStructuresToBuildField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalStructuresToBuild"); } TArray >& AdditionalStructureVariantsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalStructureVariants"); } //TArray, TSizedDefaultAllocator<32> >& MasterDyeListField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.MasterDyeList"); } TArray >& MasterColorTableField() { return *GetNativePointerField >*>(this, "UPrimalGameData.MasterColorTable"); } float& EnemyCoreStructureDeathActorRadiusBuildCheckField() { return *GetNativePointerField(this, "UPrimalGameData.EnemyCoreStructureDeathActorRadiusBuildCheck"); } -// TSubclassOf& DeathDestructionDepositInventoryClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.DeathDestructionDepositInventoryClass"); } + // TSubclassOf& DeathDestructionDepositInventoryClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.DeathDestructionDepositInventoryClass"); } UTexture2D*& MateBoostIconField() { return *GetNativePointerField(this, "UPrimalGameData.MateBoostIcon"); } UTexture2D*& EggBoostIconField() { return *GetNativePointerField(this, "UPrimalGameData.EggBoostIcon"); } UTexture2D*& MatingIconField() { return *GetNativePointerField(this, "UPrimalGameData.MatingIcon"); } UTexture2D*& NearFeedIconField() { return *GetNativePointerField(this, "UPrimalGameData.NearFeedIcon"); } UTexture2D*& BuffedIconField() { return *GetNativePointerField(this, "UPrimalGameData.BuffedIcon"); } UTexture2D*& TethererdIconField() { return *GetNativePointerField(this, "UPrimalGameData.TethererdIcon"); } -// TSubclassOf& FooterTemplateField() { return *GetNativePointerField*>(this, "UPrimalGameData.FooterTemplate"); } + // TSubclassOf& FooterTemplateField() { return *GetNativePointerField*>(this, "UPrimalGameData.FooterTemplate"); } float& TribeXPSharePercentField() { return *GetNativePointerField(this, "UPrimalGameData.TribeXPSharePercent"); } int& OverrideServerPhysXSubstepsField() { return *GetNativePointerField(this, "UPrimalGameData.OverrideServerPhysXSubsteps"); } float& OverrideServerPhysXSubstepsDeltaTimeField() { return *GetNativePointerField(this, "UPrimalGameData.OverrideServerPhysXSubstepsDeltaTime"); } @@ -975,16 +975,16 @@ struct UPrimalGameData : UObject USoundBase*& Sound_ItemFinishCraftingField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_ItemFinishCrafting"); } USoundBase*& Sound_ItemStartRepairingField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_ItemStartRepairing"); } USoundBase*& Sound_ItemFinishRepairingField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_ItemFinishRepairing"); } -// TSubclassOf& NotifClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.NotifClass"); } -// TSubclassOf& StructureDefaultOverlayToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.StructureDefaultOverlayToolTipWidget"); } -// TSubclassOf& MeleeHitColorizeStructuresUIField() { return *GetNativePointerField*>(this, "UPrimalGameData.MeleeHitColorizeStructuresUI"); } + // TSubclassOf& NotifClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.NotifClass"); } + // TSubclassOf& StructureDefaultOverlayToolTipWidgetField() { return *GetNativePointerField*>(this, "UPrimalGameData.StructureDefaultOverlayToolTipWidget"); } + // TSubclassOf& MeleeHitColorizeStructuresUIField() { return *GetNativePointerField*>(this, "UPrimalGameData.MeleeHitColorizeStructuresUI"); } float& MinPaintDurationConsumptionField() { return *GetNativePointerField(this, "UPrimalGameData.MinPaintDurationConsumption"); } float& MaxPaintDurationConsumptionField() { return *GetNativePointerField(this, "UPrimalGameData.MaxPaintDurationConsumption"); } float& MinDinoRadiusForPaintConsumptionField() { return *GetNativePointerField(this, "UPrimalGameData.MinDinoRadiusForPaintConsumption"); } float& MaxDinoRadiusForPaintConsumptionField() { return *GetNativePointerField(this, "UPrimalGameData.MaxDinoRadiusForPaintConsumption"); } TArray >& DinoBabySetupsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.DinoBabySetups"); } TArray >& DinoGestationSetupsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.DinoGestationSetups"); } -// TSubclassOf& SoapItemTemplateField() { return *GetNativePointerField*>(this, "UPrimalGameData.SoapItemTemplate"); } + // TSubclassOf& SoapItemTemplateField() { return *GetNativePointerField*>(this, "UPrimalGameData.SoapItemTemplate"); } UTexture2D*& NameTagWildcardAdminField() { return *GetNativePointerField(this, "UPrimalGameData.NameTagWildcardAdmin"); } UTexture2D*& NameTagServerAdminField() { return *GetNativePointerField(this, "UPrimalGameData.NameTagServerAdmin"); } UTexture2D*& NameTagTribeAdminField() { return *GetNativePointerField(this, "UPrimalGameData.NameTagTribeAdmin"); } @@ -1010,7 +1010,7 @@ struct UPrimalGameData : UObject TArray >& CoreNPCSpawnEntriesContainerAdditionsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.CoreNPCSpawnEntriesContainerAdditions"); } TArray >& TheNPCSpawnEntriesContainerAdditionsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.TheNPCSpawnEntriesContainerAdditions"); } UMaterialInterface*& PostProcess_ColorLUTField() { return *GetNativePointerField(this, "UPrimalGameData.PostProcess_ColorLUT"); } -// TSubclassOf& DefaultStructureSettingsField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultStructureSettings"); } + // TSubclassOf& DefaultStructureSettingsField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultStructureSettings"); } USoundBase*& Sound_DossierUnlockedField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_DossierUnlocked"); } USoundBase*& Sound_ItemUseOnItemField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_ItemUseOnItem"); } USoundBase*& Sound_RemoveItemSkinField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_RemoveItemSkin"); } @@ -1052,7 +1052,7 @@ struct UPrimalGameData : UObject TArray >& AdditionalHeadHairStyleDefinitionsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalHeadHairStyleDefinitions"); } TArray >& AdditionalFacialHairStyleDefinitionsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalFacialHairStyleDefinitions"); } USoundBase*& GenericWaterPostprocessAmbientSoundField() { return *GetNativePointerField(this, "UPrimalGameData.GenericWaterPostprocessAmbientSound"); } -// TSubclassOf& OverridePlayerDataClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.OverridePlayerDataClass"); } + // TSubclassOf& OverridePlayerDataClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.OverridePlayerDataClass"); } TArray >& AllDinosAchievementNameTagsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AllDinosAchievementNameTags"); } USoundBase*& GenericArrowPickedUpSoundField() { return *GetNativePointerField(this, "UPrimalGameData.GenericArrowPickedUpSound"); } UTexture2D*& AimMagnetismIconField() { return *GetNativePointerField(this, "UPrimalGameData.AimMagnetismIcon"); } @@ -1071,7 +1071,7 @@ struct UPrimalGameData : UObject USoundBase*& Sound_GenericUnboardPassengerField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_GenericUnboardPassenger"); } USoundBase*& Sound_CraftingTabToggleField() { return *GetNativePointerField(this, "UPrimalGameData.Sound_CraftingTabToggle"); } UParticleSystem*& LockedToSeatingStructureParticleField() { return *GetNativePointerField(this, "UPrimalGameData.LockedToSeatingStructureParticle"); } -// TSubclassOf& GenericBatteryItemClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.GenericBatteryItemClass"); } + // TSubclassOf& GenericBatteryItemClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.GenericBatteryItemClass"); } TMap >& ItemEngramMapField() { return *GetNativePointerField >*>(this, "UPrimalGameData.ItemEngramMap"); } //TArray, TSizedDefaultAllocator<32> >& GenesisSeasonPassItemsField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.GenesisSeasonPassItems"); } // TSubclassOf& DefaultStructureDestroyedMeshActorClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.DefaultStructureDestroyedMeshActorClass"); } @@ -1082,8 +1082,8 @@ struct UPrimalGameData : UObject TArray >& GrinderReplacementsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.GrinderReplacements"); } TArray >& InvalidReferenceRedirectsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.InvalidReferenceRedirects"); } TArray >& AdditionalInvalidReferenceRedirectsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalInvalidReferenceRedirects"); } -// TSubclassOf& CoreWorldBuffDefinitionsField() { return *GetNativePointerField*>(this, "UPrimalGameData.CoreWorldBuffDefinitions"); } - //TArray, TSizedDefaultAllocator<32> >& AdditionalWorldBuffDefinitionsField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.AdditionalWorldBuffDefinitions"); } + // TSubclassOf& CoreWorldBuffDefinitionsField() { return *GetNativePointerField*>(this, "UPrimalGameData.CoreWorldBuffDefinitions"); } + //TArray, TSizedDefaultAllocator<32> >& AdditionalWorldBuffDefinitionsField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.AdditionalWorldBuffDefinitions"); } UPrimalWorldBuffData*& WorldBuffDataField() { return *GetNativePointerField(this, "UPrimalGameData.WorldBuffData"); } FLinearColor& PointOfInterest_IndicatorColor_DefaultField() { return *GetNativePointerField(this, "UPrimalGameData.PointOfInterest_IndicatorColor_Default"); } FLinearColor& PointOfInterest_IndicatorColor_ObjectiveCompleteField() { return *GetNativePointerField(this, "UPrimalGameData.PointOfInterest_IndicatorColor_ObjectiveComplete"); } @@ -1091,9 +1091,9 @@ struct UPrimalGameData : UObject UTexture2D*& PointOfInterest_Icon_TamingInProgressField() { return *GetNativePointerField(this, "UPrimalGameData.PointOfInterest_Icon_TamingInProgress"); } UTexture2D*& PointOfInterest_Icon_TamingCompleteField() { return *GetNativePointerField(this, "UPrimalGameData.PointOfInterest_Icon_TamingComplete"); } UTexture2D*& PointOfInterest_Icon_PlayerField() { return *GetNativePointerField(this, "UPrimalGameData.PointOfInterest_Icon_Player"); } -// TSubclassOf& GlobalUIDataClass_PS5Field() { return *GetNativePointerField*>(this, "UPrimalGameData.GlobalUIDataClass_PS5"); } -// TSubclassOf& GlobalUIDataClass_XSXField() { return *GetNativePointerField*>(this, "UPrimalGameData.GlobalUIDataClass_XSX"); } -// TSubclassOf& GlobalUIDataClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.GlobalUIDataClass"); } + // TSubclassOf& GlobalUIDataClass_PS5Field() { return *GetNativePointerField*>(this, "UPrimalGameData.GlobalUIDataClass_PS5"); } + // TSubclassOf& GlobalUIDataClass_XSXField() { return *GetNativePointerField*>(this, "UPrimalGameData.GlobalUIDataClass_XSX"); } + // TSubclassOf& GlobalUIDataClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.GlobalUIDataClass"); } TArray >& DefaultMapItemSetsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.DefaultMapItemSets"); } TArray >& AdditionalDefaultMapItemSetsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.AdditionalDefaultMapItemSets"); } //TSoftClassPtr& PhotoModeClassField() { return *GetNativePointerField*>(this, "UPrimalGameData.PhotoModeClass"); } @@ -1103,9 +1103,9 @@ struct UPrimalGameData : UObject UStaticMesh*& CopySettingsVisualIndicatorMeshField() { return *GetNativePointerField(this, "UPrimalGameData.CopySettingsVisualIndicatorMesh"); } UMaterialInterface*& CopySettingsVisualIndicatorMaterialField() { return *GetNativePointerField(this, "UPrimalGameData.CopySettingsVisualIndicatorMaterial"); } TArray >& SubtitleColorsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.SubtitleColors"); } -// TSubclassOf& HUDOverlayGestationTooltipField() { return *GetNativePointerField*>(this, "UPrimalGameData.HUDOverlayGestationTooltip"); } - //TArray, TSizedDefaultAllocator<32> >& ProfilingDinosField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.ProfilingDinos"); } - //TArray, TSizedDefaultAllocator<32> >& ProfilingStructuresField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.ProfilingStructures"); } + // TSubclassOf& HUDOverlayGestationTooltipField() { return *GetNativePointerField*>(this, "UPrimalGameData.HUDOverlayGestationTooltip"); } + //TArray, TSizedDefaultAllocator<32> >& ProfilingDinosField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.ProfilingDinos"); } + //TArray, TSizedDefaultAllocator<32> >& ProfilingStructuresField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGameData.ProfilingStructures"); } UShooterHaptics*& HapticsField() { return *GetNativePointerField(this, "UPrimalGameData.Haptics"); } TArray >& CryopodPersistantBuffsMapField() { return *GetNativePointerField >*>(this, "UPrimalGameData.CryopodPersistantBuffsMap"); } TArray >& CoreOverrideSupplyCrateItemsField() { return *GetNativePointerField >*>(this, "UPrimalGameData.CoreOverrideSupplyCrateItems"); } @@ -1162,9 +1162,9 @@ struct UPrimalGameData : UObject FString* GetEntryDefaultTextOverride(FString* result, IDataListEntryInterface* entryInterface) { return NativeCall(this, "UPrimalGameData.GetEntryDefaultTextOverride(IDataListEntryInterface*)", result, entryInterface); } void GetEntryExtraIcons(IDataListEntryInterface* entryInterface, TArray >* extraIcons) { NativeCall >*>(this, "UPrimalGameData.GetEntryExtraIcons(IDataListEntryInterface*,TArray>&)", entryInterface, extraIcons); } void GetEntryCustomColor(IDataListEntryInterface* entryInterface, FLinearColor* CustomColor, FLinearColor* TextColorOverride) { NativeCall(this, "UPrimalGameData.GetEntryCustomColor(IDataListEntryInterface*,FLinearColor&,FLinearColor*)", entryInterface, CustomColor, TextColorOverride); } -// TSubclassOf* GetDinoEntry(TSubclassOf* result, TSubclassOf DinoClass) { return NativeCall *, TSubclassOf*, TSubclassOf>(this, "UPrimalGameData.GetDinoEntry(TSubclassOf*,TSubclassOf)", result, DinoClass); } - //static TSubclassOf* GetDinoEntrySoft() { return NativeCall *>(nullptr, "UPrimalGameData.GetDinoEntrySoft()"); } -// TSubclassOf* GetRedirectedClass(TSubclassOf* result, const FString* key, UObject* WorldContextObject) { return NativeCall *, TSubclassOf*, const FString*, UObject*>(this, "UPrimalGameData.GetRedirectedClass(TSubclassOf*,FString&,UObject*)", result, key, WorldContextObject); } + // TSubclassOf* GetDinoEntry(TSubclassOf* result, TSubclassOf DinoClass) { return NativeCall *, TSubclassOf*, TSubclassOf>(this, "UPrimalGameData.GetDinoEntry(TSubclassOf*,TSubclassOf)", result, DinoClass); } + //static TSubclassOf* GetDinoEntrySoft() { return NativeCall *>(nullptr, "UPrimalGameData.GetDinoEntrySoft()"); } + // TSubclassOf* GetRedirectedClass(TSubclassOf* result, const FString* key, UObject* WorldContextObject) { return NativeCall *, TSubclassOf*, const FString*, UObject*>(this, "UPrimalGameData.GetRedirectedClass(TSubclassOf*,FString&,UObject*)", result, key, WorldContextObject); } static void ArkChangeUIPlatform() { NativeCall(nullptr, "UPrimalGameData.ArkChangeUIPlatform(FString)"); } static UPrimalGlobalUIData* BPGetGlobalUIData(bool* bIsPsOrXbUi) { return NativeCall(nullptr, "UPrimalGameData.BPGetGlobalUIData(bool&,TSubclassOf,TSubclassOf,TSubclassOf)", bIsPsOrXbUi); } USoundBase* GetGenericCombatMusic_Implementation(APrimalCharacter* forCharacter, APrimalCharacter* forEnemy) { return NativeCall(this, "UPrimalGameData.GetGenericCombatMusic_Implementation(APrimalCharacter*,APrimalCharacter*)", forCharacter, forEnemy); } @@ -1199,14 +1199,14 @@ struct UPrimalGlobals : UObject UPrimalGameData*& PrimalGameDataField() { return *GetNativePointerField(this, "UPrimalGlobals.PrimalGameData"); } UPrimalGameData*& PrimalGameDataOverrideField() { return *GetNativePointerField(this, "UPrimalGlobals.PrimalGameDataOverride"); } -// TSubclassOf& DefaultReplicationGraphField() { return *GetNativePointerField*>(this, "UPrimalGlobals.DefaultReplicationGraph"); } - //TSoftClassPtr& PrimalGameDataAssetField() { return *GetNativePointerField*>(this, "UPrimalGlobals.PrimalGameDataAsset"); } - //TArray, TSizedDefaultAllocator<32> >& PrimalGameDataAssetExtendedField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGlobals.PrimalGameDataAssetExtended"); } + // TSubclassOf& DefaultReplicationGraphField() { return *GetNativePointerField*>(this, "UPrimalGlobals.DefaultReplicationGraph"); } + //TSoftClassPtr& PrimalGameDataAssetField() { return *GetNativePointerField*>(this, "UPrimalGlobals.PrimalGameDataAsset"); } + //TArray, TSizedDefaultAllocator<32> >& PrimalGameDataAssetExtendedField() { return *GetNativePointerField, TSizedDefaultAllocator<32> >*>(this, "UPrimalGlobals.PrimalGameDataAssetExtended"); } UPrimalAssets*& AssetsField() { return *GetNativePointerField(this, "UPrimalGlobals.Assets"); } -// TSubclassOf& RagdollKinematicActorClassField() { return *GetNativePointerField*>(this, "UPrimalGlobals.RagdollKinematicActorClass"); } -// TSubclassOf& DefaultHarvestTreeClassField() { return *GetNativePointerField*>(this, "UPrimalGlobals.DefaultHarvestTreeClass"); } -// TSubclassOf& DefaultHarvestBushClassField() { return *GetNativePointerField*>(this, "UPrimalGlobals.DefaultHarvestBushClass"); } -// TSubclassOf& GlobalGenericConfirmationDialogField() { return *GetNativePointerField*>(this, "UPrimalGlobals.GlobalGenericConfirmationDialog"); } + // TSubclassOf& RagdollKinematicActorClassField() { return *GetNativePointerField*>(this, "UPrimalGlobals.RagdollKinematicActorClass"); } + // TSubclassOf& DefaultHarvestTreeClassField() { return *GetNativePointerField*>(this, "UPrimalGlobals.DefaultHarvestTreeClass"); } + // TSubclassOf& DefaultHarvestBushClassField() { return *GetNativePointerField*>(this, "UPrimalGlobals.DefaultHarvestBushClass"); } + // TSubclassOf& GlobalGenericConfirmationDialogField() { return *GetNativePointerField*>(this, "UPrimalGlobals.GlobalGenericConfirmationDialog"); } TArray >& ExtraResourcesField() { return *GetNativePointerField >*>(this, "UPrimalGlobals.ExtraResources"); } bool& bAllowNonDedicatedHostField() { return *GetNativePointerField(this, "UPrimalGlobals.bAllowNonDedicatedHost"); } TArray >& UIOnlyShowMapFileNamesField() { return *GetNativePointerField >*>(this, "UPrimalGlobals.UIOnlyShowMapFileNames"); } @@ -1643,8 +1643,8 @@ struct APrimalWorldSettings : AARKNXWorldSettings float GetHarvestComponentHealthScale(UClass* HarvestComponentClass) { return NativeCall(this, "APrimalWorldSettings.GetHarvestComponentHealthScale(UClass*)", HarvestComponentClass); } void Tick(float DeltaSeconds) { NativeCall(this, "APrimalWorldSettings.Tick(float)", DeltaSeconds); } void HandleDeferredTickActors(float DeltaSeconds) { NativeCall(this, "APrimalWorldSettings.HandleDeferredTickActors(float)", DeltaSeconds); } -// bool AllowPhysicsSimulation() { return NativeCall(this, "APrimalWorldSettings.AllowPhysicsSimulation()"); } -// FUNCTION MISSING: APrimalWorldSettings.AllowPhysicsSimulation() + // bool AllowPhysicsSimulation() { return NativeCall(this, "APrimalWorldSettings.AllowPhysicsSimulation()"); } + // FUNCTION MISSING: APrimalWorldSettings.AllowPhysicsSimulation() UClass* GetDefaultDestroyedInstanceActor(UMeshComponent* ForMesh) { return NativeCall(this, "APrimalWorldSettings.GetDefaultDestroyedInstanceActor(UMeshComponent*)", ForMesh); } static void AddReferencedObjects(UObject* InThis, FReferenceCollector* Collector) { NativeCall(nullptr, "APrimalWorldSettings.AddReferencedObjects(UObject*,FReferenceCollector&)", InThis, Collector); } }; @@ -1801,8 +1801,8 @@ struct AGameMode : AGameModeBase void HandleSeamlessTravelPlayer(AController** C) { NativeCall(this, "AGameMode.HandleSeamlessTravelPlayer(AController*&)", C); } void InitSeamlessTravelPlayer(AController* NewController) { NativeCall(this, "AGameMode.InitSeamlessTravelPlayer(AController*)", NewController); } void SetSeamlessTravelViewTarget(APlayerController* PC) { NativeCall(this, "AGameMode.SetSeamlessTravelViewTarget(APlayerController*)", PC); } -// void RemovePlayerControllerFromPlayerCount(APlayerController* PC) { NativeCall(this, "AGameMode.RemovePlayerControllerFromPlayerCount(APlayerController*)", PC); } -// FUNCTION MISSING: AGameMode.RemovePlayerControllerFromPlayerCount(APlayerController*) + // void RemovePlayerControllerFromPlayerCount(APlayerController* PC) { NativeCall(this, "AGameMode.RemovePlayerControllerFromPlayerCount(APlayerController*)", PC); } + // FUNCTION MISSING: AGameMode.RemovePlayerControllerFromPlayerCount(APlayerController*) int GetNumPlayers() { return NativeCall(this, "AGameMode.GetNumPlayers()"); } int GetNumSpectators() { return NativeCall(this, "AGameMode.GetNumSpectators()"); } void HandleStartingNewPlayer_Implementation(APlayerController* NewPlayer) { NativeCall(this, "AGameMode.HandleStartingNewPlayer_Implementation(APlayerController*)", NewPlayer); } @@ -2470,6 +2470,7 @@ struct AShooterGameMode : APrimalGameMode // Functions + int ForceCreateTribe(const class FString* TribeName, int TeamOverride) { return NativeCall(this, "AShooterGameMode.ForceCreateTribe(FString&,int)", TribeName, TeamOverride); } bool TryGetIntOption(const FString& Section, const FString& Options, const FString& OptionName, int& value) { return NativeCall(this, "AShooterGameMode.TryGetIntOption(FString&,FString&,FString&,int&)", Section, Options, OptionName, value); } void ShowMessageOfTheDay() { NativeCall(this, "AShooterGameMode.ShowMessageOfTheDay()"); } void LoadTribeIds() { NativeCall(this, "AShooterGameMode.LoadTribeIds()"); } @@ -2569,8 +2570,8 @@ struct AShooterGameMode : APrimalGameMode //void HttpGetBanListComplete(TSharedPtr* HttpRequest, TSharedPtr* HttpResponse, bool bSucceeded) { NativeCall*, TSharedPtr*, bool>(this, "AShooterGameMode.HttpGetBanListComplete(TSharedPtr,TSharedPtr,bool)", HttpRequest, HttpResponse, bSucceeded); } //void HttpGetDynamicConfigComplete(TSharedPtr* HttpRequest, TSharedPtr* HttpResponse, bool bSucceeded) { NativeCall*, TSharedPtr*, bool>(this, "AShooterGameMode.HttpGetDynamicConfigComplete(TSharedPtr,TSharedPtr,bool)", HttpRequest, HttpResponse, bSucceeded); } FString DoGameCommand(const FString& TheCommand) { return NativeCall(this, "AShooterGameMode.DoGameCommand(FString&)", TheCommand); } -// void LoadWorldFromFileWrapper() { NativeCall(this, "AShooterGameMode.LoadWorldFromFileWrapper()"); } -// FUNCTION MISSING: AShooterGameMode.LoadWorldFromFileWrapper() + // void LoadWorldFromFileWrapper() { NativeCall(this, "AShooterGameMode.LoadWorldFromFileWrapper()"); } + // FUNCTION MISSING: AShooterGameMode.LoadWorldFromFileWrapper() bool AllowTaming(int ForTeam, APrimalDinoCharacter* TheDino) { return NativeCall(this, "AShooterGameMode.AllowTaming(int,APrimalDinoCharacter*)", ForTeam, TheDino); } bool BPIsSpawnpointAllowed_Implementation(APlayerStart* SpawnPoint, AController* Player) const { return NativeCall(this, "AShooterGameMode.BPIsSpawnpointAllowed_Implementation(APlayerStart*,AController*)", SpawnPoint, Player); } void ForceRepopulateAllHarvestElements(UE::Math::TVector AtPoint, float MaxRangeFromPoint) { NativeCall, float>(this, "AShooterGameMode.ForceRepopulateAllHarvestElements(UE::Math::TVector,float)", AtPoint, MaxRangeFromPoint); } @@ -2580,8 +2581,8 @@ struct AShooterGameMode : APrimalGameMode bool IsEngramClassHidden(TSubclassOf ForItemClass) { return NativeCall>(this, "AShooterGameMode.IsEngramClassHidden(TSubclassOf)", ForItemClass); } void DDoSDetected() { NativeCall(this, "AShooterGameMode.DDoSDetected()"); } bool CheckJoinInProgress_Implementation(bool bIsFromLogin, APlayerController* NewPlayer) { return NativeCall(this, "AShooterGameMode.CheckJoinInProgress_Implementation(bool,APlayerController*)", bIsFromLogin, NewPlayer); } -// bool SetTranfers(bool enabled) { return NativeCall(this, "AShooterGameMode.SetTranfers(bool)", enabled); } -// FUNCTION MISSING: AShooterGameMode.SetTranfers(bool) + // bool SetTranfers(bool enabled) { return NativeCall(this, "AShooterGameMode.SetTranfers(bool)", enabled); } + // FUNCTION MISSING: AShooterGameMode.SetTranfers(bool) static void StaticRegisterNativesAShooterGameMode() { NativeCall(nullptr, "AShooterGameMode.StaticRegisterNativesAShooterGameMode()"); } void RestartPlayer(AController* NewPlayer) { NativeCall(this, "AShooterGameMode.RestartPlayer(AController*)", NewPlayer); } bool IsCachedTeamTameListOutOfDate(AShooterPlayerController* RequestingPlayer) { return NativeCall(this, "AShooterGameMode.IsCachedTeamTameListOutOfDate(AShooterPlayerController*)", RequestingPlayer); } @@ -2624,11 +2625,11 @@ struct AShooterGameMode : APrimalGameMode bool CreatePipes() { return NativeCall(this, "AShooterGameMode.CreatePipes()"); } void BeginUnloadingWorld() { NativeCall(this, "AShooterGameMode.BeginUnloadingWorld()"); } void AddPlayerID(int playerDataID, FString* netUniqueString, bool bForce) { NativeCall(this, "AShooterGameMode.AddPlayerID(int,FString,bool)", playerDataID, netUniqueString, bForce); } -// void ArkMetricsAppend(const FString& Type, TSharedPtr* Payload) { NativeCall*>(this, "AShooterGameMode.ArkMetricsAppend(FString&,TSharedPtr)", Type, Payload); } -// FUNCTION MISSING: AShooterGameMode.ArkMetricsAppend(FString&,TSharedPtr) + // void ArkMetricsAppend(const FString& Type, TSharedPtr* Payload) { NativeCall*>(this, "AShooterGameMode.ArkMetricsAppend(FString&,TSharedPtr)", Type, Payload); } + // FUNCTION MISSING: AShooterGameMode.ArkMetricsAppend(FString&,TSharedPtr) void GenericPlayerInitialization(AController* C) { NativeCall(this, "AShooterGameMode.GenericPlayerInitialization(AController*)", C); } -// void SingleplayerSetupValues() { NativeCall(this, "AShooterGameMode.SingleplayerSetupValues()"); } -// FUNCTION MISSING: AShooterGameMode.SingleplayerSetupValues() + // void SingleplayerSetupValues() { NativeCall(this, "AShooterGameMode.SingleplayerSetupValues()"); } + // FUNCTION MISSING: AShooterGameMode.SingleplayerSetupValues() FString InitNewPlayer(APlayerController* NewPlayerController, const FUniqueNetIdRepl* UniqueId, const FString& Options, const FString& Portal) { return NativeCall(this, "AShooterGameMode.InitNewPlayer(APlayerController*,FUniqueNetIdRepl&,FString&,FString&)", NewPlayerController, UniqueId, Options, Portal); } void PostAlarmNotificationTribe(int TribeID, FString* Title, FString* Message) { NativeCall(this, "AShooterGameMode.PostAlarmNotificationTribe(int,FString,FString)", TribeID, Title, Message); } unsigned __int64 GetSteamIDForPlayerID(int playerDataID) { return NativeCall(this, "AShooterGameMode.GetSteamIDForPlayerID(int)", playerDataID); } @@ -2644,8 +2645,8 @@ struct AShooterGameMode : APrimalGameMode void SpawnedPawnFor(AController* PC, APawn* SpawnedPawn) { NativeCall(this, "AShooterGameMode.SpawnedPawnFor(AController*,APawn*)", PC, SpawnedPawn); } void UpConvertPlayerDataToDataStore() { NativeCall(this, "AShooterGameMode.UpConvertPlayerDataToDataStore()"); } bool AreTribesAllied(int TribeID1, int TribeID2) { return NativeCall(this, "AShooterGameMode.AreTribesAllied(int,int)", TribeID1, TribeID2); } -// AActor* FindDeadCharOrCacheAtLocation(unsigned long ForPlayerId, UE::Math::TVector AtLocation) { return NativeCall>(this, "AShooterGameMode.FindDeadCharOrCacheAtLocation(unsigned__int64,UE::Math::TVector)", ForPlayerId, AtLocation); } -// FUNCTION MISSING: AShooterGameMode.FindDeadCharOrCacheAtLocation(unsigned__int64,UE::Math::TVector) + // AActor* FindDeadCharOrCacheAtLocation(unsigned long ForPlayerId, UE::Math::TVector AtLocation) { return NativeCall>(this, "AShooterGameMode.FindDeadCharOrCacheAtLocation(unsigned__int64,UE::Math::TVector)", ForPlayerId, AtLocation); } + // FUNCTION MISSING: AShooterGameMode.FindDeadCharOrCacheAtLocation(unsigned__int64,UE::Math::TVector) bool UnbanPlayer(FString* PlayerSteamName) { return NativeCall(this, "AShooterGameMode.UnbanPlayer(FString)", PlayerSteamName); } bool TryGetBoolOptionIni(const wchar_t* Section, const wchar_t* OptionName, bool& value) { return NativeCall(this, "AShooterGameMode.TryGetBoolOptionIni(FString,FString,bool&)", Section, OptionName, value); } bool TryGetBoolOptionIni(FString* Section, FString* OptionName, bool& value) { return NativeCall(this, "AShooterGameMode.TryGetBoolOptionIni(FString,FString,bool&)", Section, OptionName, value); } @@ -2669,8 +2670,8 @@ struct AShooterGameMode : APrimalGameMode void SlowFrameDetected(float FrameTime, float SlowFrameThresholdSeconds) { NativeCall(this, "AShooterGameMode.SlowFrameDetected(float,float)", FrameTime, SlowFrameThresholdSeconds); } bool AllowSpectatorJoinAfterMatchStart(APlayerController* ForPlayerController) { return NativeCall(this, "AShooterGameMode.AllowSpectatorJoinAfterMatchStart(APlayerController*)", ForPlayerController); } bool IsSpawnpointPreferred(APlayerStart* SpawnPoint, AController* Player) const { return NativeCall(this, "AShooterGameMode.IsSpawnpointPreferred(APlayerStart*,AController*)", SpawnPoint, Player); } -// bool IsBusySavingWorld()const { return NativeCall(this, "AShooterGameMode.IsBusySavingWorld()"); } -// FUNCTION MISSING: AShooterGameMode.IsBusySavingWorld() + // bool IsBusySavingWorld()const { return NativeCall(this, "AShooterGameMode.IsBusySavingWorld()"); } + // FUNCTION MISSING: AShooterGameMode.IsBusySavingWorld() float GetFloatOptionIni(const wchar_t* Section, const wchar_t* OptionName) { return NativeCall(this, "AShooterGameMode.GetFloatOptionIni(wchar_t*,wchar_t*)", Section, OptionName); } void LoadTribeIds_Process(unsigned int theTribeID) { NativeCall(this, "AShooterGameMode.LoadTribeIds_Process(unsignedint)", theTribeID); } void UpdateTribeWars() { NativeCall(this, "AShooterGameMode.UpdateTribeWars()"); } @@ -2717,8 +2718,8 @@ struct AShooterGameMode : APrimalGameMode //void HttpGetCosmeticWhitelistComplete(TSharedPtr* HttpRequest, TSharedPtr* HttpResponse, bool bSucceeded) { NativeCall*, TSharedPtr*, bool>(this, "AShooterGameMode.HttpGetCosmeticWhitelistComplete(TSharedPtr,TSharedPtr,bool)", HttpRequest, HttpResponse, bSucceeded); } bool GetIsMapActor() { return NativeCall(this, "AShooterGameMode.GetIsMapActor()"); } void ForceRepopulateFoliageAtPoint(UE::Math::TVector AtPoint, float MaxRangeFromPoint, int MaxNumFoliages, TSubclassOf RepopulatedEmitter, const UE::Math::TVector& StructureDownTraceVector, const UE::Math::TVector& StructureUpTraceVector, bool bDontCheckForOverlaps, int TriggeredByTeamID, bool bCheckAreaAroundEachIndividualFoliage, float RadiusAroundEachIndivitualFoliageToCheck, bool bReallyForceIt) { NativeCall, float, int, TSubclassOf, const UE::Math::TVector&, const UE::Math::TVector&, bool, int, bool, float, bool>(this, "AShooterGameMode.ForceRepopulateFoliageAtPoint(UE::Math::TVector,float,int,TSubclassOf,UE::Math::TVector&,UE::Math::TVector&,bool,int,bool,float,bool)", AtPoint, MaxRangeFromPoint, MaxNumFoliages, RepopulatedEmitter, StructureDownTraceVector, StructureUpTraceVector, bDontCheckForOverlaps, TriggeredByTeamID, bCheckAreaAroundEachIndividualFoliage, RadiusAroundEachIndivitualFoliageToCheck, bReallyForceIt); } -// void TickAutoWaterRefreshCrop() { NativeCall(this, "AShooterGameMode.TickAutoWaterRefreshCrop()"); } -// FUNCTION MISSING: AShooterGameMode.TickAutoWaterRefreshCrop() + // void TickAutoWaterRefreshCrop() { NativeCall(this, "AShooterGameMode.TickAutoWaterRefreshCrop()"); } + // FUNCTION MISSING: AShooterGameMode.TickAutoWaterRefreshCrop() void PrintHibernatingDino(const FString* DinoToFind) { NativeCall(this, "AShooterGameMode.PrintHibernatingDino(FString)", DinoToFind); } FTribeData const GetTribeData(unsigned long TribeID) { return NativeCall(this, "AShooterGameMode.GetTribeData(unsigned__int64)", TribeID); } int GetNumberOfLivePlayersOnTribe(const FString& TribeName) { return NativeCall(this, "AShooterGameMode.GetNumberOfLivePlayersOnTribe(FString&)", TribeName); }