From c4a771f665a6cd402cdd0b9e1d1173a5ec9d7489 Mon Sep 17 00:00:00 2001 From: 2200151533 <2200151533@qq.com> Date: Mon, 29 Jan 2024 14:24:00 +0800 Subject: [PATCH] Add Imperfect,Imperfect included some thrall features,and Hooked SendDamage_ToServer --- ItemList.hpp | 2 +- config.cpp | 5 ++- config.h | 3 +- src/Menu.cpp | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 102 insertions(+), 3 deletions(-) diff --git a/ItemList.hpp b/ItemList.hpp index 1ab7dbd..9a43178 100644 --- a/ItemList.hpp +++ b/ItemList.hpp @@ -278,7 +278,7 @@ namespace itemlist "Pan|Bread", "Cake|Cake", "CheeseBurger|Cheeseburger", - "ChickenSaute|Chikipi Sauté", + "ChickenSaute|Chikipi Saut", "Carbonara|Carbonara", "Meat_BerryGoat|Caprity Meat", "Meat_ChickenPal|Chikipi Poultry", diff --git a/config.cpp b/config.cpp index d32d242..32ea139 100644 --- a/config.cpp +++ b/config.cpp @@ -8,6 +8,9 @@ config Config; Tick TickFunc; Tick OldTickFunc; +SendDamage SendDamageFunc; +SendDamage OldSendDamageFunc; + void config::Update(const char* filterText) { Config.db_filteredItems.clear(); @@ -210,7 +213,7 @@ void config::Init() TickFunc = (Tick)(Config.ClientBase + Config.offset_Tick); MH_CreateHook(TickFunc, DetourTick, reinterpret_cast(&OldTickFunc)); - + MH_CreateHook(SendDamageFunc, DetourSendDamage, reinterpret_cast(&OldSendDamageFunc)); //init database ZeroMemory(&Config.db_filteredItems, sizeof(Config.db_filteredItems)); } diff --git a/config.h b/config.h index d89ae0c..c089b5c 100644 --- a/config.h +++ b/config.h @@ -6,13 +6,14 @@ #include "ItemList.hpp" typedef bool(*Tick)(SDK::APalPlayerCharacter* m_this, float DeltaSecond); - +typedef void(*SendDamage)(SDK::APalPlayerState* d_this, SDK::APalCharacter* Target, SDK::FPalDamageInfo* info); class config { public: //offsets DWORD64 ClientBase = 0; DWORD64 offset_Tick = 0x2AB1DC0;//APalPlayerCharacter::Tick + DWORD64 offset_senddmg = 0x2A57920; //APalPlayerState::SendDamage_ToServer //check bool IsESP = false; bool IsAimbot = false; diff --git a/src/Menu.cpp b/src/Menu.cpp index 0138f4c..6b004fb 100644 --- a/src/Menu.cpp +++ b/src/Menu.cpp @@ -164,6 +164,85 @@ namespace DX11_Base Config.IsToggledFly = !Config.IsToggledFly; ExploitFly(Config.IsToggledFly); } + if (ImGui::Button("KillAura", ImVec2(ImGui::GetContentRegionAvail().x - 3, 20))) + { + if (Config.GetPalPlayerCharacter() != NULL) + { + if (Config.GetPalPlayerCharacter()->GetPalPlayerController() != NULL) + { + + if (Config.GetPalPlayerCharacter()->GetPalPlayerController()->GetPalPlayerState()) + { + SDK::TArray T = Config.GetUWorld()->PersistentLevel->Actors; + for (int i = 0; i < T.Count(); i++) + { + + if (T[i] != NULL) + { + if (T[i]->IsA(SDK::APalCharacter::StaticClass())) + { + SDK::APalCharacter* monster = (SDK::APalCharacter*)T[i]; + if (monster->IsLocallyControlled()) + { + continue; + } + Damage(monster, 9999999999999); + + } + } + } + } + } + } + } + if (ImGui::Button("Crash Server", ImVec2(ImGui::GetContentRegionAvail().x - 3, 20)))// + { + if (Config.GetPalPlayerCharacter() != NULL) + { + if (Config.GetPalPlayerCharacter()->GetPalPlayerController() != NULL) + { + Config.GetPalPlayerCharacter()->GetPalPlayerController()->RequestLiftupThrow_ToServer(NULL); + } + } + } + if (ImGui::Button("BossBatt Aura", ImVec2(ImGui::GetContentRegionAvail().x - 3, 20))) + { + if (Config.GetPalPlayerCharacter() != NULL) + { + auto localplayer = Config.GetPalPlayerCharacter(); + if (localplayer->GetPalPlayerController() != NULL) + { + auto localcontroller = localplayer->GetPalPlayerController(); + //localcontroller->Transmitter->BossBattle->RequestBossBattleEntry_ToServer(SDK::EPalBossType::GrassBoss, Config.GetPalPlayerCharacter()); + if (Config.GetUWorld() != NULL) + { + SDK::TArray T = Config.GetUWorld()->PersistentLevel->Actors; + if (T.IsValid()) + { + for (int i = 0; i < T.Count(); i++) + { + if (T[i] != NULL) + { + if (T[i]->IsA(SDK::APalPlayerCharacter::StaticClass())) + { + auto other = (SDK::APalPlayerCharacter*)T[i]; + if (other->GetPalPlayerController() != NULL) + { + if (other->GetPalPlayerController()->IsLocalPlayerController()) + { + continue; + } + } + localcontroller->Transmitter->BossBattle->RequestBossBattleEntry_ToServer(SDK::EPalBossType::ElectricBoss, other); + } + } + } + } + localcontroller->Transmitter->BossBattle->RequestBossBattleStart_ToServer(SDK::EPalBossType::ElectricBoss, localplayer); + } + } + } + } /*if (ImGui::Button("DeleteSelf", ImVec2(ImGui::GetWindowContentRegionWidth() - 3, 20))) { @@ -535,6 +614,22 @@ namespace DX11_Base } } } + if (Character->IsA(SDK::APalPlayerCharacter::StaticClass())) + { + ImGui::SameLine(); + if (ImGui::Button("Boss")) + { + if (Config.GetPalPlayerCharacter() != NULL) + { + auto controller = Config.GetPalPlayerCharacter()->GetPalPlayerController(); + if (controller != NULL) + { + controller->Transmitter->BossBattle->RequestBossBattleEntry_ToServer(SDK::EPalBossType::ElectricBoss, (SDK::APalPlayerCharacter*)Character); + controller->Transmitter->BossBattle->RequestBossBattleStart_ToServer(SDK::EPalBossType::ElectricBoss, (SDK::APalPlayerCharacter*)Character); + } + } + } + } ImGui::PopID(); }