mirror of
https://github.com/Milxnor/Project-Reboot-3.0.git
synced 2026-01-13 02:42:22 +01:00
Ok this is boring im only doing sleepy
This commit is contained in:
@@ -157,7 +157,6 @@ namespace Calendar
|
||||
}
|
||||
}
|
||||
|
||||
static void (*OnDamageServerSleepyOriginal)(UObject* SleepyProp, FFrame& Stack, void* Ret);
|
||||
static void OnDamageServerSleepyHook(UObject* SleepyProp, FFrame& Stack, void* Ret)
|
||||
{
|
||||
static auto DamageOffset = FindOffsetStruct("/Game/Athena/Prototype/Blueprints/Sleepy/BP_Sleepy_M.BP_Sleepy_M_C.OnDamageServer", "Damage");
|
||||
@@ -166,29 +165,5 @@ namespace Calendar
|
||||
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);
|
||||
}
|
||||
|
||||
static void (*OnDamageServerLeakyOriginal)(UObject* SleepyProp, FFrame& Stack, void* Ret);
|
||||
static void OnDamageServerLeakyHook(UObject* LeakyProp, FFrame& Stack, void* Ret)
|
||||
{
|
||||
static auto DamageOffset = FindOffsetStruct("/Game/Athena/Prototype/Blueprints/Leaky/BP_LeakyProp.BP_LeakyProp_C.OnDamageServer", "Damage");
|
||||
int Damage = (int)(*(float*)(__int64(Stack.Locals) + DamageOffset));
|
||||
|
||||
static UObject* LeakyHandler = FindObject("/Game/Athena/Maps/Test/S8/LeakyMap.LeakyMap:PersistentLevel.BP_LeakyHandler_2");
|
||||
static UFunction* RootUpdateRotationValue = LeakyHandler->FindFunction("RootUpdateRotationValue");
|
||||
|
||||
struct
|
||||
{
|
||||
int32 Damage;
|
||||
int8 PropIndex;
|
||||
} Params;
|
||||
|
||||
static auto ColorOfBeaconOffset = LeakyProp->GetOffset("Color of Beacon");
|
||||
Params.Damage = Damage;
|
||||
Params.PropIndex = LeakyProp->Get<int>(ColorOfBeaconOffset);
|
||||
|
||||
LeakyHandler->ProcessEvent(RootUpdateRotationValue, &Params);
|
||||
OnDamageServerLeakyOriginal(LeakyProp, Stack, Ret);
|
||||
}
|
||||
}
|
||||
@@ -153,6 +153,7 @@ static inline void ProcessEventHook(UObject* Object, UFunction* Function, void*
|
||||
!strstr(ObjectName.c_str(), "FortPhysicsObjectComponent") &&
|
||||
!strstr(FunctionName.c_str(), "GetTextValue") &&
|
||||
!strstr(FunctionName.c_str(), "ServerUpdateLevelVisibility") &&
|
||||
!strstr(FunctionName.c_str(), "UpdatePlayerPositionsWithinTheMID") &&
|
||||
!strstr(FunctionName.c_str(), "ExecuteUbergraph_BGA_Petrol_Pickup"))
|
||||
{
|
||||
LOG_INFO(LogDev, "Function called: {} with {}", FunctionFullName, ObjectName);
|
||||
|
||||
@@ -987,10 +987,18 @@ DWORD WINAPI Main(LPVOID)
|
||||
}
|
||||
*/
|
||||
|
||||
if (Fortnite_Version == 8.40)
|
||||
if (Fortnite_Version == 8.40)/*Fortnite_Version >= 8.40 && Fortnite_Version <= 8.51*/
|
||||
{
|
||||
Hooking::MinHook::Hook((PVOID)(__int64(GetModuleHandleW(0)) + 0x8BC410), (PVOID)GetMeshNetworkNodeTypeHook, nullptr);
|
||||
Hooking::MinHook::Hook((PVOID)(__int64(GetModuleHandleW(0)) + 0x8BC450), (PVOID)GetMeshNetworkNodeTypeHook, nullptr);
|
||||
auto TheFunc = (uint8*)FindObject<UFunction>("/Script/MeshNetwork.MeshNetworkSubsystem:GetMeshNetworkNodeType")->GetFunc();
|
||||
for (int i = 0; i < 75; i++)
|
||||
{
|
||||
if (TheFunc[i] == 0xE8)
|
||||
{
|
||||
Hooking::MinHook::Hook((PVOID)(Memcury::Scanner(__int64(TheFunc) + i).RelativeOffset(1).Get()), (PVOID)GetMeshNetworkNodeTypeHook, nullptr);
|
||||
}
|
||||
}
|
||||
|
||||
//Hooking::MinHook::Hook((PVOID)(__int64(GetModuleHandleW(0)) + 0x8BC450), (PVOID)GetMeshNetworkNodeTypeHook, nullptr);
|
||||
}
|
||||
|
||||
if (Fortnite_Version >= 16 && Fortnite_Version < 19)
|
||||
|
||||
@@ -31,10 +31,10 @@ namespace Globals
|
||||
extern inline int NumToSubtractFromSquadId = 0; // I think 2?
|
||||
|
||||
extern inline std::string PlaylistName =
|
||||
//"/Game/Athena/Playlists/Playlist_DefaultSolo.Playlist_DefaultSolo";
|
||||
"/Game/Athena/Playlists/Playlist_DefaultSolo.Playlist_DefaultSolo";
|
||||
// "/Game/Athena/Playlists/gg/Playlist_Gg_Reverse.Playlist_Gg_Reverse";
|
||||
// "/Game/Athena/Playlists/Playlist_DefaultDuo.Playlist_DefaultDuo";
|
||||
"/Game/Athena/Playlists/Playground/Playlist_Playground.Playlist_Playground";
|
||||
//"/Game/Athena/Playlists/Playground/Playlist_Playground.Playlist_Playground";
|
||||
// "/Game/Athena/Playlists/Carmine/Playlist_Carmine.Playlist_Carmine";
|
||||
// "/Game/Athena/Playlists/Fill/Playlist_Fill_Solo.Playlist_Fill_Solo";
|
||||
// "/Game/Athena/Playlists/Low/Playlist_Low_Solo.Playlist_Low_Solo";
|
||||
|
||||
@@ -116,7 +116,7 @@ static inline void SetIsLategame(bool Value)
|
||||
|
||||
static inline bool HasAnyCalendarModification()
|
||||
{
|
||||
return Calendar::HasSnowModification() || Calendar::HasNYE() || (Fortnite_Version >= 8.40 && Fortnite_Version < 9.0) || std::floor(Fortnite_Version) == 13;
|
||||
return Calendar::HasSnowModification() || Calendar::HasNYE() || Fortnite_Version == 8.40 || std::floor(Fortnite_Version) == 13;
|
||||
}
|
||||
|
||||
static inline void Restart() // todo move?
|
||||
@@ -970,13 +970,12 @@ static inline void MainUI()
|
||||
{
|
||||
static UObject* SAR = FindObject("/Game/Athena/Maps/Athena_POI_Foundations.Athena_POI_Foundations:PersistentLevel.BP_SnowAlwaysRelevant_2");
|
||||
if (SAR)
|
||||
{
|
||||
{
|
||||
static bool LoadedSleepy = false;
|
||||
if (!LoadedSleepy && ImGui::Button("Load Sleepy"))
|
||||
{
|
||||
SAR->ProcessEvent(SAR->FindFunction("LoadSleepy"));
|
||||
//SAR->ProcessEvent(SAR->FindFunction("LoadLeaky"));
|
||||
|
||||
LoadedSleepy = true;
|
||||
|
||||
UObject* SleepyProp = FindObject("/Game/Athena/Maps/Test/S8/SleepyMap.SleepyMap.PersistentLevel.BP_Sleepy_Prop_0");
|
||||
@@ -988,7 +987,7 @@ static inline void MainUI()
|
||||
SleepyM = FindObject("/Game/Athena/Maps/Test/S8/SleepyMap.SleepyMap.PersistentLevel.BP_Sleepy_M_2");
|
||||
}
|
||||
|
||||
Hooking::MinHook::Hook(SleepyProp, SleepyProp->FindFunction("OnDamageServer"), Calendar::OnDamageServerSleepyHook, (void**)&Calendar::OnDamageServerSleepyOriginal, false, true);
|
||||
Hooking::MinHook::Hook(SleepyProp, SleepyProp->FindFunction("OnDamageServer"), Calendar::OnDamageServerSleepyHook, nullptr, false, true);
|
||||
int FiveHundred = 500;
|
||||
*SleepyM->GetPtr<int>("MaxHealth") = 500;
|
||||
SleepyM->ProcessEvent(SleepyM->FindFunction("RootSetProgress"), &FiveHundred);
|
||||
@@ -1011,31 +1010,6 @@ static inline void MainUI()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ImGui::Separator();
|
||||
|
||||
{
|
||||
static bool LoadedLeaky = false;
|
||||
if (!LoadedLeaky && ImGui::Button("Load Leaky"))
|
||||
{
|
||||
SAR->ProcessEvent(SAR->FindFunction("LoadLeaky"));
|
||||
LoadedLeaky = true;
|
||||
|
||||
UObject* LeakyHandler = FindObject("/Game/Athena/Maps/Test/S8/LeakyMap.LeakyMap.PersistentLevel.BP_LeakyHandler_2");
|
||||
|
||||
while (!LeakyHandler)
|
||||
{
|
||||
LeakyHandler = FindObject("/Game/Athena/Maps/Test/S8/LeakyMap.LeakyMap.PersistentLevel.BP_LeakyHandler_2");
|
||||
}
|
||||
|
||||
UObject* LeakyProp = FindObject("/Game/Athena/Maps/Test/S8/LeakyMap.LeakyMap:PersistentLevel.BP_LeakyProp2");
|
||||
Hooking::MinHook::Hook(LeakyProp, LeakyProp->FindFunction("OnDamageServer"), Calendar::OnDamageServerLeakyHook, (void**)&Calendar::OnDamageServerLeakyOriginal, false, true);
|
||||
//LeakyHandler->ProcessEvent(LeakyHandler->FindFunction("TestDirt"));
|
||||
|
||||
LOG_INFO(LogDev, "Leaky loaded!");
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
ImGui::Text("Failed to find BP_SnowAlwaysRelevant_C");
|
||||
|
||||
Reference in New Issue
Block a user