65151
65151
65151
hpp"
#include <iomanip>
#include "triggerbothelper.h"
#include "xorst.h"
#include "crypter.h"
#include "ImGui/imgui.h"
#include "crypt23.h"
struct WeaponInformation
{
int32_t ammo_count;
int32_t max_ammo;
BYTE tier;
std::string weapon_name;
std::string buildplan;
};
std::string LocalPlayerWeapon;
WeaponInformation WeaponInfo;
int InFovEnemy = 0;
int visennemy = 0;
__int64 TargetedBuild;
bool bTargetedBuild;
{
uintptr_t rankedprogress = read<uintptr_t>(HabaneroComponent +
0xb8);
}
wchar_t ranked[64] = { 0 }; // Initialize the array to avoid potential
issues
std::wstring ranked_wstr(ranked);
std::string ranked_str(ranked_wstr.begin(), ranked_wstr.end());
return ranked_str;
}
}
namespace Offset
{
namespace AFortWeapon
{
auto bIsReloadingWeapon = 0x388;
auto Ammo = 0xe54;
}
namespace UFortMovementComp_Character
{
auto bWantsToSwing = 0x14bc;
auto SwingAttachLocation = 0x14c0;
auto bSwingInstantVelocity = 0x14bf;
auto SwingLaunch = 0x14d8;
// Line thickness
float thickness = 1.5f;
// Top line
drawList->AddLine(ImVec2(x, y), ImVec2(x + size, y), black, thickness +
outline_thickness);
drawList->AddLine(ImVec2(x, y), ImVec2(x + size, y), white, thickness);
// Right line
drawList->AddLine(ImVec2(x + size, y), ImVec2(x + size, y + size),
black, thickness + outline_thickness);
drawList->AddLine(ImVec2(x + size, y), ImVec2(x + size, y + size),
white, thickness);
// Bottom line
drawList->AddLine(ImVec2(x + size, y + size), ImVec2(x, y + size),
black, thickness + outline_thickness);
drawList->AddLine(ImVec2(x + size, y + size), ImVec2(x, y + size),
white, thickness);
// Left line
drawList->AddLine(ImVec2(x, y + size), ImVec2(x, y), black, thickness +
outline_thickness);
drawList->AddLine(ImVec2(x, y + size), ImVec2(x, y), white, thickness);
// Middle lines
// Vertical middle line
drawList->AddLine(ImVec2(x + size / 2, y), ImVec2(x + size / 2, y +
size), black, thickness + outline_thickness);
drawList->AddLine(ImVec2(x + size / 2, y), ImVec2(x + size / 2, y +
size), white, thickness);
ImGui::End();
}
}
ImGui::End();
}
}
namespace g_loop {
class g_fn {
public:
ue5->get_camera();
if (globals::g_watermark) {
switch (globals::g_watermark_type)
{
case 0:
{
char aimfovText[64];
sprintf_s(aimfovText, sizeof(aimfovText),
"gg/frozenfn", globals::g_aimfov);
DrawString(globals::g_font_size, 10, 30, ImColor(255,
255, 255, 255), false, true, aimfovText);
break;
}
case 1: //Normal2
{
char fps[64];
sprintf_s(fps, sizeof(fps), "FPS-> %.1f",
ImGui::GetIO().Framerate);
DrawString(globals::g_font_size, 110, 70,
ImColor(255, 255, 255, 255), false, true, fps);
break;
}
case 2: //Normal3
{
ImVec2 rectMin3 = ImVec2(10, 10);
ImVec2 rectMax3 = ImVec2(120, 30);
draw_list->AddRectFilled(rectMin3, rectMax3,
ImColor(255, 192, 203, 255), 5.0f);
draw_list->AddRect(rectMin3, rectMax3, ImColor(255,
192, 203, 255), 5.0f);
}
}
if (globals::g_visible_check) {
if (ue5->is_visible(cached.skeletal_mesh)) {
if (dist < globals::g_aimfov && dist <
target_dist) {
target_dist = dist;
target_entity = cached.entity;
}
}
}
else {
if (dist < globals::g_aimfov && dist <
target_dist) {
target_dist = dist;
target_entity = cached.entity;
}
}
}
if (globals::g_render_fov) {
ImGui::GetBackgroundDrawList()-
>AddCircle(ImVec2(screen_width / 2, screen_height / 2), globals::g_aimfov,
ImColor(255, 255, 255), 64, 1);
}
if (globals::g_star_fov)
{
ImColor fov_col;
ImVec2 starPoints[10];
float angleOff = 144.0f;
if (globals::nearbyplayers)
{
if (distance <= globals::entitydistance)
{
playersWithin50m++;
}
ImVec2 distancePosition =
ImVec2(playerCountPosition.x, playerCountPosition.y + visibleTextSize.y + 5);
//std::string distanceText =
std::string(verucryptt("Current Nearby Entities Distance: ")) +
std::to_string(globals::entitydistance);
ImVec2 textSize =
ImGui::CalcTextSize(nearbyPlayerCountStr.c_str());
if (globals::crosshair)
{
ImVec2 center(screen_width / 2, screen_height / 2);
ImColor vis;
ImColor invis;
ImColor normal;
vis = ImVec4(globals::g_color_Visible[0],
globals::g_color_Visible[1], globals::g_color_Visible[2], 1.0f);
invis = ImVec4(globals::g_color_invisible[0],
globals::g_color_invisible[1], globals::g_color_invisible[2], 1.0f);
normal = ImVec4(globals::g_color[0], globals::g_color[1],
globals::g_color[2], 1.0f);
ImColor visibleColor;
if (globals::g_visible_check && globals::g_enable_esp)
{
visibleColor = ue5-
>is_visible(cached.skeletal_mesh) ? ImColor(vis) : ImColor(invis);
}
else
{
visibleColor = ImColor(normal);
}
draw_list->AddLine(ImVec2(head_box.x -
(box_width / 2), head_box.y), ImVec2(root.x + (box_width / 2), head_box.y),
visibleColor, globals::g_box_thick);
draw_list->AddLine(ImVec2(head_box.x -
(box_width / 2), head_box.y), ImVec2(head_box.x - (box_width / 2), root.y),
visibleColor, globals::g_box_thick);
draw_list->AddLine(ImVec2(head_box.x -
(box_width / 2), root.y), ImVec2(root.x + (box_width / 2), root.y), visibleColor,
globals::g_box_thick);
draw_list->AddLine(ImVec2(root.x + (box_width /
2), head_box.y), ImVec2(root.x + (box_width / 2), root.y), visibleColor,
globals::g_box_thick);
break;
case 1: /*rounded*/
if (globals::g_outline)
{
draw_list->AddRect(ImVec2(head_box.x -
box_width / 2, head_box.y), ImVec2((head_box.x - box_width / 2) + box_width,
head_box.y + box_height), ImColor(0, 0, 0), 10, ImDrawCornerFlags_All,
globals::g_box_thick + 2.0);
}
draw_list->AddRect(ImVec2(head_box.x -
box_width / 2, head_box.y), ImVec2((head_box.x - box_width / 2) + box_width,
head_box.y + box_height), visibleColor, 10, ImDrawCornerFlags_All,
globals::g_box_thick);
break;
case 2: /*cornered*/
if (globals::g_outline)
{
DrawCorneredBox(root.x - (box_width / 2),
head_box.y, box_width, box_height, ImColor(0, 0, 0), globals::g_box_thick + 2.0, 0,
0);
}
case 3: /*bounding*/
if (globals::g_outline)
{
TwoD(head_box.x - (box_width / 2),
head_box.y, box_width, box_height, ImColor(0, 0, 0), globals::g_box_thick + 2.5);
}
case 4: /*filled*/
{
ImVec4 filledColorTransparent = ImVec4(1.0f,
0.0f, 0.0f, 0.5f); // Adjust the alpha (0.5f) for the desired transparency
draw_list->AddRectFilled(ImVec2(head_box.x -
(box_width / 2), head_box.y),
ImVec2(root.x + (box_width / 2), root.y),
IM_COL32(filledColorTransparent.x * 255,
filledColorTransparent.y * 255, filledColorTransparent.z * 255,
filledColorTransparent.w * 255));
}
}
}
case 1: //bottom
{
std::string username_str = ue5-
>get_player_name(cached.player_state);
ImVec2 text_size =
ImGui::CalcTextSize(username_str.c_str());
DrawString(globals::g_font_size, root.x -
(text_size.x / 2), root.y + 20, ImColor(globals::FontColor[0],
globals::FontColor[1], globals::FontColor[2]), false, true, username_str.c_str());
break;
}
}
}
wchar_t platform[64];
mem::read_physical((PVOID)test_platform,
(uint8_t*)platform, sizeof(platform));
std::wstring platform_wstr(platform);
std::string platform_str(platform_wstr.begin(),
platform_wstr.end());
draw_outlined_text( textPosition,
ImColor(globals::FontColor[0], globals::FontColor[1], globals::FontColor[2]),
platform_str.c_str());
}
if (globals::g_ranked)
{
ImVec2 text_size;
uintptr_t habenero =
read<uintptr_t>(cached.player_state + 0x9f0);
int32_t RankProgress = read<int32_t>(habenero + 0xb8
+ 0x10);
std::string ranktype = get_rank(RankProgress);
std::wstring w_ranktype =
string_to_wstring(ranktype);
std::string final = wstring_to_utf8(w_ranktype);
char ranked[64];
sprintf_s(ranked, E("%s"), (final));
if (globals::headesp)
{
fvector2d head_2d = ue5->w2s(fvector(head_bone.x,
head_bone.y, head_bone.z + 20));
fvector delta = head_bone - camera_postion.location;
float distance = delta.length();
if (globals::g_outline)
{
ImGui::GetBackgroundDrawList()-
>AddCircle(ImVec2(head_2d.x, head_2d.y), circle_radius, ImColor(0, 0, 0, 255),
segments, globals::g_skeletonthickness + 2);
}
ImGui::GetBackgroundDrawList()-
>AddCircle(ImVec2(head_2d.x, head_2d.y), circle_radius, visibleColor, segments,
globals::g_skeletonthickness);
}
if (globals::radaresp)
{
float radarX = radar_position_x;
float radarY = radar_position_y;
float radarSize = radar_size;
bool isRect = rect_radar;
fortnite_radar(radarX, radarY, radarSize, isRect);
add_players_radar(root_bone);
}
//if (globals::weaponesp) //Doesn't work..
//{
// WeaponInformation held_weapon{};
// if (player_weapon)
// {
// held_weapon.ammo_count =
read<int32_t>(player_weapon + 0xE1C);
// uint64_t weapon_data =
read<uint64_t>(player_weapon + 0x4f0);
// if (weapon_data)
// {
// held_weapon.tier = read<BYTE>(weapon_data
+ 0x13b);
// uint64_t ftext_ptr =
read<uint64_t>(weapon_data + 0x90);
// if (ftext_ptr)
// {
// uint64_t ftext_data =
read<uint64_t>(ftext_ptr + 0x28);
// int ftext_length =
read<int>(ftext_ptr + 0x30);
// if (ftext_length > 0 &&
ftext_length < 50)
// {
// wchar_t* ftext_buf = new
wchar_t[ftext_length];
// Frozen-
>FrozenRead(ftext_data, ftext_buf, ftext_length * sizeof(wchar_t));
// std::wstring
wstr_buf(ftext_buf);
// held_weapon.weapon_name =
std::string(wstr_buf.begin(), wstr_buf.end());
// delete[] ftext_buf;
// }
// }
// }
// WeaponInfo = held_weapon;
// ImVec2 TextSize =
ImGui::CalcTextSize(final.c_str());
// ImVec2 text_size =
ImGui::CalcTextSize(final.c_str());
// int add;
// if (globals::g_distance)
// {
// add = 25;
// }
// else
// {
// add = 5;
// }
// bool u_weapon_rarity = 0;
// if (u_weapon_rarity)
// {
// if (WeaponInfo.tier == 0)
// {
// if
(strstr(WeaponInfo.weapon_name.c_str(), verucryptt("Pickaxe")) != nullptr)
// {
// for (int i = -1; i <= 1; ++i)
// {
// for (int j = -1; j <= 1;
++j)
// {
// if (i != 0 || j !=
0)
// {
//
ImGui::GetBackgroundDrawList()->AddText(ImVec2(root.x - (TextSize.x / 2) + i,
root.y + add + j), ImColor(0, 0, 0, 255), final.c_str());
// }
// }
// }
//
ImGui::GetBackgroundDrawList()->AddText(ImVec2(root.x - (TextSize.x / 2),
root.y + add), ImColor(255, 255, 255, 255), final.c_str());
// }
// else
// {
// std::string fina1l =
("Building Plan");
// ImVec2 TextSiz1e =
ImGui::CalcTextSize(fina1l.c_str());
//
ImGui::GetBackgroundDrawList()->AddText(ImVec2(root.x - (TextSiz1e.x / 2),
root.y + add), ImColor(255, 255, 255, 255), fina1l.c_str());
// }
// }
// if (WeaponInfo.tier >= 1 &&
WeaponInfo.tier <= 6)
// {
// ImColor tierColor;
// switch (WeaponInfo.tier)
// {
// case 1:
// tierColor = ImColor(170, 165,
169);
// break;
// case 2:
// tierColor = ImColor(30, 255,
0);
// break;
// case 3:
// tierColor = ImColor(0, 112,
221);
// break;
// case 4:
// tierColor = ImColor(163, 53,
238);
// break;
// case 5:
// tierColor = ImColor(255, 128,
0);
// break;
// case 6:
// tierColor = ImColor(255, 255,
0);
// break;
// default:
// tierColor = ImColor(255, 255,
255);
// }
//
ImGui::GetBackgroundDrawList()->AddText(ImVec2(root.x - (TextSize.x / 2),
root.y + add), visibleColor, final.c_str());
// }
// else
// {
// std::string fina1l =
("Building Plan");
// ImVec2 TextSiz1e =
ImGui::CalcTextSize(fina1l.c_str());
ImVec2 text_size =
ImGui::CalcTextSize(Distance.c_str());
DrawString(globals::g_font_size, head_box.x -
(text_size.x / 2), head_box.y + 5, ImColor(globals::FontColor[0],
globals::FontColor[1], globals::FontColor[2]), false, true, Distance.c_str());
break;
}
case 1: //bottom
{
std::string Distance = "[" +
std::to_string((int)distance) + (std::string)"m]";
ImVec2 text_size =
ImGui::CalcTextSize(Distance.c_str());
DrawString(globals::g_font_size, root.x -
(text_size.x / 2), root.y + 5, ImColor(globals::FontColor[0],
globals::FontColor[1], globals::FontColor[2]), false, true, Distance.c_str());
break;
}
}
}
input->move(hitbox_screen_predict);
if (globals::g_triggerbot) {
{
__int64 temp_targted = read<__int64>(arrays-
>player_controller + 0x1710);
bool b = GetAsyncKeyState(triggerkey);
if (TargetedBuild != 0 && TargetedBuild !=
temp_targted)
{
INPUT Input = { 0 };
// left down
Input.type = INPUT_MOUSE;
Input.mi.dwFlags = TYPES::left_down;
::SendInput(1, &Input, sizeof(INPUT));
// left up
::ZeroMemory(&Input, sizeof(INPUT));
Input.type = INPUT_MOUSE;
Input.mi.dwFlags = TYPES::left_up;
::SendInput(1, &Input, sizeof(INPUT));
TargetedBuild = 0;
}
if (globals::PlayerInfo)
{
auto less = 5;
//auto kills1 =
read<int>(reinterpret_cast<uint64_t>(arrays->player_state) + 0x1104);
//int32_t KillScore; // 0x1104(0x04)
//https://dumpspace.spuckwaffel.com/Games/?
hash=6b77eceb&type=classes&idx=AFortPlayerStateAthena
//auto Levels =
read<int>(reinterpret_cast<uint64_t>(arrays->player_state) + 0x1108);
//SeasonLevelUIDisplay //https://dumpspace.spuckwaffel.com/Games/?
hash=6b77eceb&type=classes&idx=AFortPlayerStateAthena
//uint64_t player_weapon =
read<uint64_t>(reinterpret_cast<uint64_t>(arrays->aactor) + 0xa20);
//auto kills1 =
read<int>(*reinterpret_cast<int*>(uintptr_t(arrays->player_state) + 0x1104));
//auto Levels =
read<int>(*reinterpret_cast<int*>(uintptr_t(arrays->player_state) + 0x1108));
//uint64_t player_weapon =
read<uint64_t>(*reinterpret_cast<uint64_t*>(uintptr_t(arrays->aactor) + 0xa20));
//auto AimingWeap = read<bool>(player_weapon + 0xd80);
//bIsTargeting //https://dumpspace.spuckwaffel.com/Games/?
hash=6b77eceb&type=classes&idx=AFortWeapon
char text_ammo_count[256];
char text_ammo_count2[256];
float projectileSpeed = 0;
float projectileGravityScale = 0;
fvector hitbox;
fvector2d hitbox_screen;
switch (globals::g_hitbox) {
case 0:
hitbox_screen = ue5->w2s(ue5->Bone(closest_mesh,
bone::Head));
hitbox = ue5->Bone(closest_mesh, bone::Head);;
break;
case 1:
hitbox_screen = ue5->w2s(ue5->Bone(closest_mesh,
bone::Neck));
hitbox = ue5->Bone(closest_mesh, bone::Neck);;
break;
case 2:
hitbox_screen = ue5->w2s(ue5->Bone(closest_mesh,
bone::Chest));
hitbox = ue5->Bone(closest_mesh, bone::Chest);;
break;
case 3:
std::mt19937 rng(static_cast<unsigned
int>(std::time(nullptr)));
std::uniform_int_distribution<int> distribution(0,
3);
int randomHitbox = distribution(rng);
switch (randomHitbox) {
case 0:
hitbox_screen = ue5->w2s(ue5-
>Bone(closest_mesh, bone::Head));
hitbox = ue5->Bone(closest_mesh, bone::Head);
break;
case 1:
hitbox_screen = ue5->w2s(ue5-
>Bone(closest_mesh, bone::Neck));
hitbox = ue5->Bone(closest_mesh, bone::Neck);
break;
case 2:
hitbox_screen = ue5->w2s(ue5-
>Bone(closest_mesh, bone::Chest));
hitbox = ue5->Bone(closest_mesh, bone::Chest);
break;
case 3:
hitbox_screen = ue5->w2s(ue5-
>Bone(closest_mesh, bone::RShoulder));
hitbox = ue5->Bone(closest_mesh,
bone::RShoulder);
break;
case 4:
hitbox_screen = ue5->w2s(ue5-
>Bone(closest_mesh, bone::LShoulder));
hitbox = ue5->Bone(closest_mesh,
bone::LShoulder);
break;
}
break;
}
std::string LocalPlayerWeapon;
if (globals::g_target_text)
{
DrawString(20, hitbox_screen.x - 6,
hitbox_screen.y - 80, ImColor(255, 0, 0), true, true, ("TARGET"));
}
if (GetAsyncKeyState(aimkey))
input->move(hitbox_screen);
}
}
}
else {
target_dist = FLT_MAX;
target_entity = NULL;
}
ImGui::PopFont();
}
};
} static g_loop::g_fn* g_main = new g_loop::g_fn();