mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 02:42:22 +01:00
8.40 - Sleepy rune event
This commit is contained in:
@@ -156,4 +156,18 @@ namespace Calendar
|
|||||||
NewYearTimer->ProcessEvent(StartNYE, nullptr);
|
NewYearTimer->ProcessEvent(StartNYE, nullptr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void (*OnDamageServerSleepyOriginal)(UObject* SleepyProp, FFrame& Stack, void* Ret);
|
||||||
|
static void OnDamageServerSleepyHook(UObject* SleepyProp, FFrame& Stack, void* Ret)
|
||||||
|
{
|
||||||
|
// TODO: Fix damage im too tired and stupid to fix it rn
|
||||||
|
float Damage = 50.0f;
|
||||||
|
Stack.StepCompiledIn(&Damage);
|
||||||
|
|
||||||
|
static UObject* SleepyM = FindObject("/Game/Athena/Maps/Test/S8/SleepyMap.SleepyMap:PersistentLevel.BP_Sleepy_M_2");
|
||||||
|
static UFunction* RootUpdateDamage = SleepyM->FindFunction("RootUpdateDamage");
|
||||||
|
SleepyM->ProcessEvent(RootUpdateDamage, &Damage);
|
||||||
|
OnDamageServerSleepyOriginal(SleepyProp, Stack, Ret);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -152,6 +152,7 @@ static inline void ProcessEventHook(UObject* Object, UFunction* Function, void*
|
|||||||
!strstr(FunctionName.c_str(), "SpinCubeTimeline__UpdateFunc") &&
|
!strstr(FunctionName.c_str(), "SpinCubeTimeline__UpdateFunc") &&
|
||||||
!strstr(ObjectName.c_str(), "FortPhysicsObjectComponent") &&
|
!strstr(ObjectName.c_str(), "FortPhysicsObjectComponent") &&
|
||||||
!strstr(FunctionName.c_str(), "GetTextValue") &&
|
!strstr(FunctionName.c_str(), "GetTextValue") &&
|
||||||
|
!strstr(FunctionName.c_str(), "ServerUpdateLevelVisibility") &&
|
||||||
!strstr(FunctionName.c_str(), "ExecuteUbergraph_BGA_Petrol_Pickup"))
|
!strstr(FunctionName.c_str(), "ExecuteUbergraph_BGA_Petrol_Pickup"))
|
||||||
{
|
{
|
||||||
LOG_INFO(LogDev, "Function called: {} with {}", FunctionFullName, ObjectName);
|
LOG_INFO(LogDev, "Function called: {} with {}", FunctionFullName, ObjectName);
|
||||||
|
|||||||
@@ -987,6 +987,12 @@ DWORD WINAPI Main(LPVOID)
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
//if (Fortnite_Version == 8.40)
|
||||||
|
//{
|
||||||
|
// Hooking::MinHook::Hook((PVOID)(__int64(GetModuleHandleW(0)) + 0x8BC410), (PVOID)GetMeshNetworkNodeTypeHook, nullptr);
|
||||||
|
// Hooking::MinHook::Hook((PVOID)(__int64(GetModuleHandleW(0)) + 0x8BC450), (PVOID)GetMeshNetworkNodeTypeHook, nullptr);
|
||||||
|
//}
|
||||||
|
|
||||||
if (Fortnite_Version >= 16 && Fortnite_Version < 19)
|
if (Fortnite_Version >= 16 && Fortnite_Version < 19)
|
||||||
{
|
{
|
||||||
// Bus crash (only needed if we are calling StartAircraftPhase on seperate thread I THINK) (sometimes)
|
// Bus crash (only needed if we are calling StartAircraftPhase on seperate thread I THINK) (sometimes)
|
||||||
@@ -1230,7 +1236,6 @@ DWORD WINAPI Main(LPVOID)
|
|||||||
// HookInstruction(Addresses::UpdateTrackedAttributesLea, (PVOID)AFortPlayerControllerAthena::UpdateTrackedAttributesHook, "/Script/Engine.PlayerController.EnableCheats", ERelativeOffsets::LEA, FortPlayerControllerAthenaDefault);
|
// HookInstruction(Addresses::UpdateTrackedAttributesLea, (PVOID)AFortPlayerControllerAthena::UpdateTrackedAttributesHook, "/Script/Engine.PlayerController.EnableCheats", ERelativeOffsets::LEA, FortPlayerControllerAthenaDefault);
|
||||||
// HookInstruction(Addresses::CombinePickupLea, (PVOID)AFortPickup::CombinePickupHook, "/Script/Engine.PlayerController.SetVirtualJoystickVisibility", ERelativeOffsets::LEA, FortPlayerControllerAthenaDefault);
|
// HookInstruction(Addresses::CombinePickupLea, (PVOID)AFortPickup::CombinePickupHook, "/Script/Engine.PlayerController.SetVirtualJoystickVisibility", ERelativeOffsets::LEA, FortPlayerControllerAthenaDefault);
|
||||||
|
|
||||||
|
|
||||||
if (Fortnite_Version == 13.40)
|
if (Fortnite_Version == 13.40)
|
||||||
{
|
{
|
||||||
// HookInstruction(__int64(GetModuleHandleW(0)) + 0x1FC835D, (PVOID)UFortAthenaAIBotCustomizationData::ApplyOverrideCharacterCustomizationHook, "/Script/Engine.PlayerController.SetVirtualJoystickVisibility", ERelativeOffsets::CALL, nullptr);
|
// HookInstruction(__int64(GetModuleHandleW(0)) + 0x1FC835D, (PVOID)UFortAthenaAIBotCustomizationData::ApplyOverrideCharacterCustomizationHook, "/Script/Engine.PlayerController.SetVirtualJoystickVisibility", ERelativeOffsets::CALL, nullptr);
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ static inline void SetIsLategame(bool Value)
|
|||||||
|
|
||||||
static inline bool HasAnyCalendarModification()
|
static inline bool HasAnyCalendarModification()
|
||||||
{
|
{
|
||||||
return Calendar::HasSnowModification() || Calendar::HasNYE() || std::floor(Fortnite_Version) == 13;
|
return Calendar::HasSnowModification() || Calendar::HasNYE() || (Fortnite_Version >= 8.40 && Fortnite_Version < 9.0) || std::floor(Fortnite_Version) == 13;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void Restart() // todo move?
|
static inline void Restart() // todo move?
|
||||||
@@ -956,6 +956,51 @@ static inline void MainUI()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Notes:
|
||||||
|
*
|
||||||
|
* Dopey (8.?? to 8.??) mining stones
|
||||||
|
*
|
||||||
|
* Rune events:
|
||||||
|
* Sleepy (8.40) hit the rune and it moves
|
||||||
|
* Leaky (8.40) rotate 3 beams onto the rune
|
||||||
|
* Sneezy (8.50) dance for progress
|
||||||
|
*/
|
||||||
|
if (Fortnite_Version == 8.40)
|
||||||
|
{
|
||||||
|
static UObject* SAR = FindObject("/Game/Athena/Maps/Athena_POI_Foundations.Athena_POI_Foundations:PersistentLevel.BP_SnowAlwaysRelevant_2");
|
||||||
|
if (SAR)
|
||||||
|
{
|
||||||
|
static bool LoadedSleepy = false;
|
||||||
|
static bool InitSleepy = false;
|
||||||
|
if (!LoadedSleepy)
|
||||||
|
{
|
||||||
|
if (ImGui::Button("Load Sleepy"))
|
||||||
|
{
|
||||||
|
SAR->ProcessEvent(SAR->FindFunction("LoadSleepy"));
|
||||||
|
//SAR->ProcessEvent(SAR->FindFunction("LoadLeaky"));
|
||||||
|
LoadedSleepy = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (LoadedSleepy && !InitSleepy)
|
||||||
|
{
|
||||||
|
UObject* SleepyProp = FindObject("/Game/Athena/Maps/Test/S8/SleepyMap.SleepyMap:PersistentLevel.BP_Sleepy_Prop_0");
|
||||||
|
UObject* SleepyM = FindObject("/Game/Athena/Maps/Test/S8/SleepyMap.SleepyMap:PersistentLevel.BP_Sleepy_M_2");
|
||||||
|
|
||||||
|
if (SleepyProp && SleepyM)
|
||||||
|
{
|
||||||
|
InitSleepy = true;
|
||||||
|
|
||||||
|
Hooking::MinHook::Hook(SleepyProp, SleepyProp->FindFunction("OnDamageServer"), Calendar::OnDamageServerSleepyHook, (void**)&Calendar::OnDamageServerSleepyOriginal, false, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ImGui::Text("Failed to find BP_SnowAlwaysRelevant_C");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (std::floor(Fortnite_Version) == 13)
|
if (std::floor(Fortnite_Version) == 13)
|
||||||
{
|
{
|
||||||
static UObject* WL = FindObject("/Game/Athena/Apollo/Maps/Apollo_POI_Foundations.Apollo_POI_Foundations.PersistentLevel.Apollo_WaterSetup_2");
|
static UObject* WL = FindObject("/Game/Athena/Apollo/Maps/Apollo_POI_Foundations.Apollo_POI_Foundations.PersistentLevel.Apollo_WaterSetup_2");
|
||||||
|
|||||||
Reference in New Issue
Block a user