Showing preview only (1,253K chars total). Download the full file or copy to clipboard to get everything.
Repository: Visual9999/FortniteCheatSRCUpdateEveryUpdate
Branch: master
Commit: d1cf14549ca0
Files: 46
Total size: 1.2 MB
Directory structure:
gitextract_yzzz2n58/
├── FortniteCheatSRCUpdateEveryUpdate/
│ ├── DiscordHook/
│ │ ├── Discord.cpp
│ │ └── Discord.h
│ ├── FortniteCheatSRCUpdateEveryUpdate.filters
│ ├── FortniteCheatSRCUpdateEveryUpdate.user
│ ├── FortniteCheatSRCUpdateEveryUpdate.vcxproj
│ ├── FortniteCheatSRCUpdateEveryUpdate.vcxproj.user
│ ├── Header Files/
│ │ ├── Config/
│ │ │ ├── Archivex.h
│ │ │ └── Config.h
│ │ ├── FortUpdaters/
│ │ │ ├── FortUpdaters.cpp
│ │ │ └── FortUpdaters.h
│ │ ├── Structs.h
│ │ ├── core/
│ │ │ └── core.h
│ │ ├── includes.h
│ │ ├── menu/
│ │ │ └── menu.h
│ │ ├── offsets/
│ │ │ └── offsets.h
│ │ ├── settings/
│ │ │ └── settings.h
│ │ ├── util/
│ │ │ └── util.h
│ │ ├── xor/
│ │ │ └── xor.hpp
│ │ └── xorstr.h
│ ├── Helper/
│ │ ├── Helper.cpp
│ │ └── Helper.h
│ ├── Source Files/
│ │ ├── Config/
│ │ │ └── Config.cpp
│ │ ├── FortUpdaters/
│ │ │ └── FortUpdaters.cpp
│ │ ├── core/
│ │ │ └── core.cpp
│ │ ├── menu/
│ │ │ └── menu.cpp
│ │ ├── offsets/
│ │ │ └── offsets.cpp
│ │ ├── settings/
│ │ │ └── settings.cpp
│ │ └── util/
│ │ └── Util.cpp
│ ├── dllmain.cpp
│ ├── imgui/
│ │ ├── Instructions.txt
│ │ ├── LICENSE.txt
│ │ ├── imconfig.h
│ │ ├── imgui.cpp
│ │ ├── imgui.h
│ │ ├── imgui_draw.cpp
│ │ ├── imgui_impl_dx11.cpp
│ │ ├── imgui_impl_dx11.h
│ │ ├── imgui_internal.h
│ │ ├── imgui_xorstr.h
│ │ ├── stb_rect_pack.h
│ │ ├── stb_textedit.h
│ │ └── stb_truetype.h
│ └── spoofinternal.asm
├── FortniteCheatSRCUpdateEveryUpdate.sln
├── LICENSE
└── README.md
================================================
FILE CONTENTS
================================================
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/DiscordHook/Discord.cpp
================================================
/*
*/
#include <cstdint>
#include <Windows.h>
#include "../Helper/Helper.h"
#include "Discord.h"
#define DEVELOPER
uintptr_t Discord::GetDiscordModuleBase()
{
// This is static because we only need to get once.
static uintptr_t discordModuleBase = 0;
// If its false, we use GetModuleHandle to grab the Module Base adress.
if (!discordModuleBase)
discordModuleBase = (uintptr_t)GetModuleHandleA("DiscordHook64.dll");
return discordModuleBase;
}
bool Discord::CreateHook(uintptr_t originalPresent, uintptr_t hookFunction, uintptr_t pOriginal)
{
static uintptr_t addrCreateHook = NULL;
if (!addrCreateHook)
{
addrCreateHook = Helper::PatternScan(GetDiscordModuleBase(), "41 57 41 56 56 57 55 53 48 83 EC 68 4D 89 C6 49 89 D7");
#ifdef DEVELOPER
#endif
}
if (!addrCreateHook)
return false;
using CreateHook_t = uint64_t(__fastcall*)(LPVOID, LPVOID, LPVOID*);
auto fnCreateHook = (CreateHook_t)addrCreateHook;
return fnCreateHook((void*)originalPresent, (void*)hookFunction, (void**)pOriginal) == 0 ? true : false;
}
bool Discord::EnableHook(uintptr_t pTarget, bool toggle)
{
static uintptr_t addrEnableHook = NULL;
if (!addrEnableHook)
{
addrEnableHook = Helper::PatternScan(GetDiscordModuleBase(),
"41 56 56 57 53 48 83 EC 28 49 89 CE BF 01 00 00 00 31 C0 F0 ? ? ? ? ? ? ? 74"
);
}
if (!addrEnableHook)
return false;
using EnableHook_t = uint64_t(__fastcall*)(LPVOID, bool);
auto fnEnableHook = (EnableHook_t)addrEnableHook;
return fnEnableHook((void*)pTarget, toggle) == 0 ? true : false;
}
bool Discord::EnableHookQue()
{
static uintptr_t addrEnableHookQueu = NULL;
if (!addrEnableHookQueu)
{
addrEnableHookQueu = Helper::PatternScan(GetDiscordModuleBase(),
"41 57 41 56 41 55 41 54 56 57 55 53 48 83 EC 38 48 ? ? ? ? ? ? 48 31 E0 48 89 44 24 30 BE 01 00 00 00 31 C0 F0 ? ? ? ? ? ? ? 74 2B");
}
if (!addrEnableHookQueu)
return false;
using EnableHookQueu_t = uint64_t(__stdcall*)(VOID);
auto fnEnableHookQueu = (EnableHookQueu_t)addrEnableHookQueu;
return fnEnableHookQueu() == 0 ? true : false;
}
short Discord::GetAsyncKeyState(const int vKey)
{
static uintptr_t addrGetAsyncKeyState = NULL;
if (!addrGetAsyncKeyState)
{
addrGetAsyncKeyState = Helper::PatternScan(GetDiscordModuleBase(),
"48 FF ? ? ? ? ? CC CC CC CC CC CC CC CC CC 48 FF ? ? ? ? ? CC CC CC CC CC CC CC CC CC 48 83 EC 28 48 ? ? ? ? ? ? 48 85 C9");
}
if (!addrGetAsyncKeyState)
return false;
using GetAsyncKeyState_t = short(__fastcall*)(int);
auto fnGetAyncKeyState = (GetAsyncKeyState_t)addrGetAsyncKeyState;
return fnGetAyncKeyState(vKey);
}
short Discord::SetCursorPos(int x, int y)
{
static uintptr_t addrSetCursorPos = NULL;
if (!addrSetCursorPos)
{
addrSetCursorPos = Helper::PatternScan(GetDiscordModuleBase(),
"44 0F B6 05 ? ? ? ? 45 84 C0");
#ifdef DEVELOPER
#endif
}
if (!addrSetCursorPos)
return false;
using SetCursorPos_t = short(__fastcall*)(int, int);
auto fnSetCursorPos = (SetCursorPos_t)addrSetCursorPos;
return fnSetCursorPos(x, y);
}
bool Discord::GetCursorPos(LPPOINT lpPoint)
{
static uintptr_t addrGetCursorPos = NULL;
if (!addrGetCursorPos)
{
addrGetCursorPos = Helper::PatternScan(GetDiscordModuleBase(),
"40 53 48 83 EC 20 48 8B D9 FF 15 ? ? ? ? 0F B6 15 ? ? ? ?");
#ifdef DEVELOPER
#endif
}
if (!addrGetCursorPos)
return false;
using GetCursorPos_t = short(__fastcall*)(LPPOINT);
auto fnGetCursorPos = (GetCursorPos_t)addrGetCursorPos;
return fnGetCursorPos(lpPoint);
}
HCURSOR Discord::SetCursor(HCURSOR hCursor)
{
static uintptr_t addrSetCursor = NULL;
if (!addrSetCursor)
{
addrSetCursor = Helper::PatternScan(GetDiscordModuleBase(),
"40 53 48 83 EC 20 0F B6 05 ? ? ? ? 48 8B D9 84 C0 74 4F");
#ifdef DEVELOPER
#endif
}
if (!addrSetCursor)
return 0;
using SetCursor_t = HCURSOR(__fastcall*)(HCURSOR);
auto fnSetCursor = (SetCursor_t)addrSetCursor;
return fnSetCursor(hCursor);
}
bool Discord::HookFunction(uintptr_t originalFunction, uintptr_t hookedFunction, uintptr_t pOriginalPresent)
{
#ifdef DEVELOPER
#endif
if (DISCORD.CreateHook(originalFunction, hookedFunction, pOriginalPresent))
{
#ifdef DEVELOPER
#endif
if (DISCORD.EnableHook(originalFunction, true))
{
#ifdef DEVELOPER
#endif
if (DISCORD.EnableHookQue())
{
#ifdef DEVELOPER
#endif
return true;
}
}
}
return false;
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/DiscordHook/Discord.h
================================================
/*
*/
#pragma once
#define DISCORD Discord::Instance()
class Discord
{
public:
// ********************************************************************************
/// <summary>
/// Get Discord64.dll module base adresss
/// </summary>
/// <returns>Discord module base adress</returns>
// ********************************************************************************
static uintptr_t GetDiscordModuleBase();
// ********************************************************************************
/// <summary>
/// Create Hook
/// </summary>
/// <param name="originalPresent">Original function</param>
/// <param name="hookFunction">Hook function. (The one that will be redirect to)</param>
/// <param name="pOriginal">A Pointer to original Function</param>
/// <returns>Sucess if the hook has been created.</returns>
// ********************************************************************************
bool CreateHook(uintptr_t originalPresent, uintptr_t hookFunction, uintptr_t pOriginal);
// ********************************************************************************
/// <summary>
/// Enable Hook
/// </summary>
/// <param name="pTarget">Function target</param>
/// <param name="toggle">Enable / Disable</param>
/// <returns>Sucess if the Hook has been enabled.</returns>
// ********************************************************************************
bool EnableHook(uintptr_t pTarget, bool toggle);
// ********************************************************************************
/// <summary>
/// Enable Hook queu. (If there any function pending)
/// </summary>
/// <returns>Sucess if the queu has been initiated</returns>
// ********************************************************************************
bool EnableHookQue();
// ********************************************************************************
/// <summary>
/// Determines whether a key is up or down at the time the function is called
/// </summary>
/// <param name="vKey">VirtualKeyCode. You can have a look at msdn for getting the key such VK_F1 for example.</param>
/// <returns>If sucess return a specified value which determined if the key was pressed, or if its currently down. 0 If current desktop its not active.</returns>
// ********************************************************************************
short GetAsyncKeyState(int vKey);
// ********************************************************************************
/// <summary>
/// Moves the cursor to the specified screen coordinates.
/// </summary>
/// <param name="x">The new x-coordinate of the cursor, in screen coordinates.</param>
/// <param name="y">The new y-coordinate of the cursor, in screen coordinates.</param>
/// <returns>Returns nonzero if successful or zero otherwise.</returns>
// ********************************************************************************
short SetCursorPos(int x, int y);
// ********************************************************************************
/// <summary>
/// Retrieves the position of the mouse cursor, in screen coordinates.
/// </summary>
/// <param name="lpPoint">A pointer to a POINT structure that receives the screen coordinates of the cursor.</param>
/// <returns>Returns nonzero if successful or zero otherwise.</returns>
// ********************************************************************************
bool GetCursorPos(LPPOINT lpPoint);
// ********************************************************************************
/// <summary>
/// Sets the cursor shape.
/// </summary>
/// <param name="hCursor">A handle to the cursor. The cursor must have been created by the CreateCursor function or loaded by the LoadCursor or LoadImage function. If this parameter is NULL, the cursor is removed from the screen.</param>
/// <returns>The return value is the handle to the previous cursor, if there was one.</returns>
// ********************************************************************************
HCURSOR SetCursor(HCURSOR hCursor);
// ********************************************************************************
/// <summary>
/// Its Create and Enable hook.
/// </summary>
/// <param name="sig">Pointer to original func.</param>
/// <param name="function">Pointer to hooked func.</param>
/// <param name="ints">Pointer to origianl func.</param>
/// <returns>Sucess if the hook has been enabled.</returns>
// ********************************************************************************
bool HookFunction(uintptr_t sig, uintptr_t function, uintptr_t ints);
// ********************************************************************************
/// <summary>
/// Class Singleton.
/// </summary>
/// <returns>Handle to a static Discord class.</returns>
// ********************************************************************************
static Discord& Instance()
{
static Discord handle;
return handle;
}
};
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.filters
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;hm;inl;inc;ipp;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
<Filter Include="Source Files\offsets">
<UniqueIdentifier>{8416771d-7784-41b1-bf2d-a01f84bbe794}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\utils">
<UniqueIdentifier>{9bd2e87f-de85-49d3-ba86-5b6e9c0ad62b}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\menu">
<UniqueIdentifier>{6ec731d4-4d85-41ae-ae50-fae180c0d113}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\core">
<UniqueIdentifier>{a1eeff16-103e-4ca4-9616-aea15be5a45e}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\setting">
<UniqueIdentifier>{7889e946-8e7b-406b-8a86-308d22ca4c60}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="dllmain.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="imgui\imgui.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="imgui\imgui_draw.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="imgui\imgui_impl_dx11.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="offsets.cpp">
<Filter>Source Files\offsets</Filter>
</ClCompile>
<ClCompile Include="Util.cpp">
<Filter>Source Files\utils</Filter>
</ClCompile>
<ClCompile Include="menu.cpp">
<Filter>Source Files\menu</Filter>
</ClCompile>
<ClCompile Include="core.cpp">
<Filter>Source Files\core</Filter>
</ClCompile>
<ClCompile Include="settings.cpp">
<Filter>Source Files\setting</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="imgui\imconfig.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="imgui\imgui.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="imgui\imgui_impl_dx11.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="imgui\imgui_internal.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="imgui\stb_rect_pack.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="imgui\stb_textedit.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="imgui\stb_truetype.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="stdafx.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="offsets.h">
<Filter>Source Files\offsets</Filter>
</ClInclude>
<ClInclude Include="util.h">
<Filter>Source Files\utils</Filter>
</ClInclude>
<ClInclude Include="Structs.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="meni.h">
<Filter>Source Files\menu</Filter>
</ClInclude>
<ClInclude Include="core.h">
<Filter>Source Files\core</Filter>
</ClInclude>
<ClInclude Include="settings.h">
<Filter>Source Files\setting</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<MASM Include="spoofinternal.asm">
<Filter>Source Files</Filter>
</MASM>
</ItemGroup>
</Project>
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.user
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.vcxproj
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>16.0</VCProjectVersion>
<ProjectGuid>{432CD352-DFE6-4AC6-B858-3F74D5CB161F}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>example</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<ProjectName>FortniteCheatSRCUpdateEveryUpdate</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<SpectreMitigation>false</SpectreMitigation>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
<Import Project="$(VCTargetsPath)\BuildCustomizations\marmasm.props" />
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
<TargetName>FortniteCheatSRCUpdateEveryUpdate</TargetName>
<IncludePath>C:\Users\liam_\Documents\detours;C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior;C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior\minhook;C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior\imgui;$(IncludePath)</IncludePath>
<LibraryPath>C:\Users\liam_\Documents\detours;C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior\imgui;C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior\minhook;C:\Users\alex7\Desktop\Superior New\Superior;$(LibraryPath)</LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<IncludePath>$(VC_IncludePath);$(WindowsSDK_IncludePath);C:\Users\Ticx\source\repos\l0st.dev FN\l0st.dev FN\imgui;C:\Users\Ticx\source\repos\l0st.dev FN\l0st.dev FN\minhook</IncludePath>
<LibraryPath>$(VC_LibraryPath_x86);$(WindowsSDK_LibraryPath_x86);$(NETFXKitsDir)Lib\um\x86;C:\Users\Ticx\source\repos\l0st.dev FN\l0st.dev FN\minhook</LibraryPath>
<TargetName>fn</TargetName>
<OutDir>..\x64\Release</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
<IncludePath>.\imgui;.\minhook;$(VC_IncludePath);$(WindowsSDK_IncludePath);C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior\detours</IncludePath>
<LibraryPath>.\minhook;$(VC_LibraryPath_x64);$(WindowsSDK_LibraryPath_x64);$(NETFXKitsDir)Lib\um\x64;C:\Users\alex7\OneDrive\Skrivebord\Superior New\Superior\detours</LibraryPath>
<TargetName>FortniteCheatSRCUpdateEveryUpdateVisual9999</TargetName>
<OutDir>.\x64\Release\Release</OutDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;_DEBUG;EXAMPLE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;EXAMPLE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;NDEBUG;EXAMPLE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<PrecompiledHeader>NotUsing</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;EXAMPLE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<PrecompiledHeaderFile>
</PrecompiledHeaderFile>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
<IgnoreAllDefaultLibraries>
</IgnoreAllDefaultLibraries>
<AdditionalDependencies>libcmtd.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="DiscordHook\Discord.cpp" />
<ClCompile Include="dllmain.cPP" />
<ClCompile Include="Header Files\FortUpdaters\FortUpdaters.cpp" />
<ClCompile Include="Helper\Helper.cpp" />
<ClCompile Include="imgui\imgui.cpp" />
<ClCompile Include="imgui\imgui_draw.cpp" />
<ClCompile Include="imgui\imgui_impl_dx11.cpp" />
<ClCompile Include="Source Files\Config\Config.cpp" />
<ClCompile Include="Source Files\core\core.cpp" />
<ClCompile Include="Source Files\FortUpdaters\FortUpdaters.cpp" />
<ClCompile Include="Source Files\menu\menu.cpp" />
<ClCompile Include="Source Files\offsets\offsets.cpp" />
<ClCompile Include="Source Files\settings\settings.cpp" />
<ClCompile Include="Source Files\util\Util.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="DiscordHook\Discord.h" />
<ClInclude Include="Header Files\Config\Archivex.h" />
<ClInclude Include="Header Files\Config\Config.h" />
<ClInclude Include="Header Files\core\core.h" />
<ClInclude Include="Header Files\FortUpdaters\FortUpdaters.h" />
<ClInclude Include="Header Files\includes.h" />
<ClInclude Include="Header Files\menu\menu.h" />
<ClInclude Include="Header Files\offsets\offsets.h" />
<ClInclude Include="Header Files\settings\settings.h" />
<ClInclude Include="Header Files\Structs.h" />
<ClInclude Include="Header Files\util\util.h" />
<ClInclude Include="Header Files\xor\xor.hpp" />
<ClInclude Include="Helper\Helper.h" />
<ClInclude Include="imgui\imconfig.h" />
<ClInclude Include="imgui\imgui.h" />
<ClInclude Include="imgui\imgui_impl_dx11.h" />
<ClInclude Include="imgui\imgui_internal.h" />
<ClInclude Include="imgui\stb_rect_pack.h" />
<ClInclude Include="imgui\stb_textedit.h" />
<ClInclude Include="imgui\stb_truetype.h" />
</ItemGroup>
<ItemGroup>
<MASM Include="spoofinternal.asm">
<FileType>Document</FileType>
</MASM>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
<Import Project="$(VCTargetsPath)\BuildCustomizations\marmasm.targets" />
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
</ImportGroup>
</Project>
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.vcxproj.user
================================================
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ShowAllFiles>true</ShowAllFiles>
</PropertyGroup>
</Project>
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/Config/Archivex.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
template <typename Stream>
class ArchiveX final {
public:
constexpr explicit ArchiveX(Stream& stream) noexcept : stream{ stream } { }
template <typename T>
constexpr const auto& operator<<(const T& item) const noexcept
{
stream.write(reinterpret_cast<const char*>(&item), sizeof(item));
return *this;
}
template <typename T>
constexpr const auto& operator>>(T& item) const noexcept
{
stream.read(reinterpret_cast<char*>(&item), sizeof(item));
return *this;
}
private:
Stream& stream;
};
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/Config/Config.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include <filesystem>
class c_config final {
public:
void run(const char*) noexcept;
void load(size_t) noexcept;
void save(size_t) const noexcept;
void add(const char*) noexcept;
void remove(size_t) noexcept;
void rename(size_t, const char*) noexcept;
void reset() noexcept;
constexpr auto& get_configs() noexcept {
return configs;
}
struct {
// item
bool Players;
bool Chest;
bool PlayerBox;
bool PlayersCorner;
bool Llama;
bool PlayerLines;
bool ClosestLineESP;
int PlayerLinesLocation;
bool PlayerNames;
float PlayerVisibleColor[3];
float PlayerNotVisibleColor[3];
bool kazoisgay;
float PlayerTeammate[3];
float FOVCircleColor[3];
float BoxESP[3];
float BoxESPOpacity;
float FOVCircleOpacity;
float FOVCircleFilledOpacity;
float LineESP[3];
bool Ammo;
bool boat;
bool chopper;
bool Weapons;
bool Items;
int MinWeaponTier;
int Page;
int AimPoint;
bool Aimbot;
bool AutoAimbot;
bool SilentAimbot;
bool FlickAimbot;
bool SpinBot;
bool AutoAim;
bool SpamAutoAim;
bool TriggerAimbot;
int TriggerSpeed;
bool NoSpreadAimbot;
bool AntiAim;
bool BetterMap;
bool AirStuck;
bool ThirdPerson;
bool FreeCam;
float FreeCamSpeed;
bool CheckVisible;
char StreamSnipeName;
bool StreamSnipe;
bool DrawAimbotFOV;
bool DrawFilledAimbotFOV;
float CrosshairSize;
float MenuColor[3] = { 1.f, 0.f, 0.f };
float CrosshairThickness;
float AimbotFOV;
float AimbotSlow;
bool RapidFire;
bool BulletTP;
bool ARTP;
bool fastmode420;
bool BoatRocketTP;
bool RocketTP;
bool FreeCamRotationLock;
bool InstantReload;
bool FOVSlider;
float FOV;
bool Extra;
} item;
struct {
//keybind
int Menu = 0x2D;
int AimbotLock = 0x02;
int AimbotShoot = 0x01;
int AntiAim = 0x01;
int Spinbot = 0x14;
int Freecam = 0;
int StreamSnipe = 0;
int ThirdPerson = 0;
int Airstuck1 = 0;
int Airstuck2 = 0;
int BetterMap = 0;
} keybind;
private:
std::filesystem::path path;
std::vector<std::string> configs;
};
extern c_config config_system;
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/FortUpdaters/FortUpdaters.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include "FortUpdaters.h"
template<class T>
struct TArray
{
friend struct FString;
public:
inline TArray()
{
Data = nullptr;
Count = Max = 0;
};
inline int Num() const
{
return Count;
};
inline T& operator[](int i)
{
return Data[i];
};
inline const T& operator[](int i) const
{
return Data[i];
};
inline bool IsValidIndex(int i) const
{
return i < Num();
}
private:
T* Data;
int Count;
int Max;
};
struct FString : private TArray<wchar_t>
{
inline FString()
{
};
inline bool IsValid() const
{
return Data != nullptr;
}
inline const wchar_t* c_str() const
{
return Data;
}
std::string ToString() const
{
auto length = std::wcslen(Data);
std::string str(length, '\0');
std::use_facet<std::ctype<wchar_t>>(std::locale()).narrow(Data, Data + length, '?', &str[0]);
return str;
}
};
struct FName
{
int32_t ComparisonIndex;
int32_t Number;
};
bool FortUpdater::Init(uintptr_t UObjectArray, uintptr_t GetObjectName, uintptr_t GetNameByIndex, uintptr_t FnFree)
{
if (!UObjectArray || !GetObjectName || !GetNameByIndex || !FnFree) return false;
uintptr_t deref_1 = *(uintptr_t*)UObjectArray;
if (IsBadReadPtr((void*)deref_1, sizeof(uintptr_t))) return false;
uintptr_t deref_2 = *(uintptr_t*)deref_1;
if (IsBadReadPtr((void*)deref_2, sizeof(uintptr_t))) return false;
this->UObjectArray = deref_2;
this->GetObjectName = GetObjectName;
this->GetNameByIndex = GetNameByIndex;
this->FnFree = FnFree;
return true;
}
DWORD FortUpdater::FindOffset(const char* Class, const char* varName)
{
for (DWORD i = 0x0; i < 0x9000; i++)
{
auto CurrentObject = *(uintptr_t*)(this->UObjectArray + (i * 0x18));
if (!CurrentObject) return NULL;
if (!(*(uintptr_t*)(CurrentObject + 0x50)) || *(DWORD*)(CurrentObject + 0x54) == 0xFFFFFFFF) continue;
char* CurObjectName = this->fGetObjectName(CurrentObject);
if (!strcmp(CurObjectName, Class)) //Same class
{
for (auto Property = *(uint64_t*)(CurrentObject + 0x50); !IsBadReadPtr((void*)Property, 8); Property = *(uint64_t*)(Property + 0x20))
{
auto Type = *(uint64_t*)(Property + 0x8);
if (!IsBadReadPtr((void*)Type, 8) && Type)
{
auto Property_FName = *(FName*)(Property + 0x28);
auto Offset = *(DWORD*)(Property + 0x4C);
if (Offset != 0)
{
auto Property_idx = Property_FName.ComparisonIndex;
if (Property_idx)
{
char* PropertyName = this->fGetNameByIndex(Property_idx);
if (!strcmp(PropertyName, varName))
{
return Offset;
}
}
printf(" % X", Offset);
system("pause");
}
}
}
}
}
}
void FortUpdater::cFixName(char* Name)
{
for (int i = 0; Name[i] != '\0'; i++)
{
if (Name[i] == '_')
{
if (Name[i + 1] == '0' ||
Name[i + 1] == '1' ||
Name[i + 1] == '2' ||
Name[i + 1] == '3' ||
Name[i + 1] == '4' ||
Name[i + 1] == '5' ||
Name[i + 1] == '6' ||
Name[i + 1] == '7' ||
Name[i + 1] == '8' ||
Name[i + 1] == '9')
Name[i] = '\0';
}
}
return;
}
void FortUpdater::FreeObjName(uintptr_t Address)
{
if (Address == NULL) return;
auto func = reinterpret_cast<__int64(__fastcall*)(__int64)>(this->FnFree);
func(Address);
}
char* FortUpdater::fGetObjectName(uintptr_t Object)
{
if (Object == NULL) return (char*)"";
auto fGetObjName = reinterpret_cast<FString * (__fastcall*)(FString*, uintptr_t)>(this->GetObjectName);
FString result;
fGetObjName(&result, Object);
if (result.c_str() == NULL) return (char*)"";
auto tmp = result.ToString();
char return_string[1024];
memcpy(return_string, std::string(tmp.begin(), tmp.end()).c_str(), 1024);
this->FreeObjName((uintptr_t)result.c_str());
cFixName(return_string);
return (char*)std::string(tmp.begin(), tmp.end()).c_str();
}
char* FortUpdater::fGetNameByIndex(int Index)
{
if (Index == 0) return (char*)"";
auto fGetNameByIdx = reinterpret_cast<FString * (__fastcall*)(int*, FString*)>(this->GetNameByIndex);
FString result;
fGetNameByIdx(&Index, &result);
if (result.c_str() == NULL) return (char*)"";
auto tmp = result.ToString();
char return_string[1024];
memcpy(return_string, std::string(tmp.begin(), tmp.end()).c_str(), 1024);
FreeObjName((uintptr_t)result.c_str());
cFixName(return_string);
return return_string;
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/FortUpdaters/FortUpdaters.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include <Windows.h>
#include <iostream>
#include <string>
class FortUpdater
{
public:
bool Init(uintptr_t UObjectArray, uintptr_t GetObjectName, uintptr_t GetNameByIndex, uintptr_t FnFree);
DWORD FindOffset(const char* Class, const char* var);
private:
uintptr_t UObjectArray = NULL;
uintptr_t GetObjectName = NULL;
uintptr_t GetNameByIndex = NULL;
uintptr_t FnFree = NULL;
void cFixName(char* Name);
void FreeObjName(uintptr_t Address);
char* fGetObjectName(uintptr_t Object);
char* fGetNameByIndex(int Index);
};
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/Structs.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include "includes.h"
class UClass {
public:
BYTE _padding_0[0x40];
UClass* SuperClass;
};
class UObject {
public:
PVOID VTableObject;
DWORD ObjectFlags;
DWORD InternalIndex;
UClass* Class;
BYTE _padding_0[0x8];
UObject* Outer;
inline BOOLEAN IsA(PVOID parentClass) {
for (auto super = this->Class; super; super = super->SuperClass) {
if (super == parentClass) {
return TRUE;
}
}
return FALSE;
}
};
class FUObjectItem {
public:
UObject* Object;
DWORD Flags;
DWORD ClusterIndex;
DWORD SerialNumber;
DWORD SerialNumber2;
};
class TUObjectArray {
public:
FUObjectItem* Objects[9];
};
class GObjects {
public:
TUObjectArray* ObjectArray;
BYTE _padding_0[0xC];
DWORD ObjectCount;
};
template<class T>
struct TArray {
friend struct FString;
public:
inline TArray() {
Data = nullptr;
Count = Max = 0;
};
inline INT Num() const {
return Count;
};
inline T& operator[](INT i) {
return Data[i];
};
inline BOOLEAN IsValidIndex(INT i) {
return i < Num();
}
private:
T* Data;
INT Count;
INT Max;
};
struct FString : private TArray<WCHAR> {
FString() {
Data = nullptr;
Max = Count = 0;
}
FString(LPCWSTR other) {
Max = Count = static_cast<INT>(wcslen(other));
if (Count) {
Data = const_cast<PWCHAR>(other);
}
};
inline BOOLEAN IsValid() {
return Data != nullptr;
}
inline PWCHAR c_str() {
return Data;
}
};
class FText {
private:
char _padding_[0x28];
PWCHAR Name;
DWORD Length;
public:
inline PWCHAR c_str() {
return Name;
}
};
typedef struct {
float X, Y, Z;
} FVector;
typedef struct {
float X, Y;
} FVector2D;
typedef struct {
float Pitch;
float Yaw;
float Roll;
} FRotator;
typedef struct {
FVector Location;
FRotator Rotation;
float FOV;
float OrthoWidth;
float OrthoNearClipPlane;
float OrthoFarClipPlane;
float AspectRatio;
} FMinimalViewInfo;
typedef struct {
float M[4][4];
} FMatrix;
typedef struct {
FVector ViewOrigin;
char _padding_0[4];
FMatrix ViewRotationMatrix;
FMatrix ProjectionMatrix;
} FSceneViewProjectionData;
typedef struct {
FVector Origin;
FVector BoxExtent;
float SphereRadius;
} FBoxSphereBounds;
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/core/core.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include "../includes.h"
// BODY
#define BONE_HEAD_ID (66)
#define BONE_NECK_ID (65)
#define BONE_CHEST_ID (36)
#define BONE_PELVIS_ID (2)
// ARMS
#define BONE_LEFTSHOULDER_ID (9)
#define BONE_RIGHTSHOULDER_ID (62)
#define BONE_LEFTELBOW_ID (10)
#define BONE_RIGHTELBOW_ID (38)
#define BONE_LEFTHAND_ID (11)
#define BONE_RIGHTHAND_ID (39)
// LEGS
#define BONE_LEFTLEG_ID (67)
#define BONE_RIGHTLEG_ID (74)
#define BONE_LEFTTHIGH_ID (73)
#define BONE_RIGHTTHIGH_ID (80)
#define BONE_LEFTFOOT_ID (68)
#define BONE_RIGHTFOOT_ID (75)
#define BONE_LEFTFEET_ID (71)
#define BONE_RIGHTFEET_ID (78)
#define BONE_LEFTFEETFINGER_ID (72)
#define BONE_RIGHTFEETFINGER_ID (79)
namespace Core {
extern bool NoSpread;
extern PVOID LocalPlayerPawn;
extern PVOID LocalPlayerController;
extern PVOID TargetPawn;
extern PVOID(*ProcessEvent)(PVOID, PVOID, PVOID, PVOID);
BOOLEAN Initialize();
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/includes.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <Windows.h>
#include <psapi.h>
#include <intrin.h>
#include <string>
#include <vector>
#include <imgui.h>
#include <imgui_impl_dx11.h>
#include <imgui_internal.h>
#include <d3d11.h>
#pragma comment(lib, "d3d11.lib")
#include "xor/xor.hpp"
#include "Structs.h"
#include "util/util.h"
#include "offsets/offsets.h"
#include "menu/menu.h"
#include "core/core.h"
#include "settings/settings.h"
ImGuiWindow& BeginScene();
VOID EndScene(ImGuiWindow& window);
template<typename T>
T ReadMemory(DWORD_PTR address, const T& def = T())
{
return *(T*)address;
}
typedef struct
{
DWORD R;
DWORD G;
DWORD B;
DWORD A;
}RGBA;
class Color
{
public:
RGBA NiggaGreen = { 128, 224, 0, 200 };
RGBA red = { 255,0,0,255 };
RGBA Magenta = { 255,0,255,255 };
RGBA yellow = { 255,255,0,255 };
RGBA grayblue = { 128,128,255,255 };
RGBA green = { 128,224,0,255 };
RGBA darkgreen = { 0,224,128,255 };
RGBA brown = { 192,96,0,255 };
RGBA pink = { 255,168,255,255 };
RGBA DarkYellow = { 216,216,0,255 };
RGBA SilverWhite = { 236,236,236,255 };
RGBA purple = { 144,0,255,255 };
RGBA Navy = { 88,48,224,255 };
RGBA skyblue = { 0,136,255,255 };
RGBA graygreen = { 128,160,128,255 };
RGBA blue = { 0,96,192,255 };
RGBA orange = { 255,128,0,255 };
RGBA peachred = { 255,80,128,255 };
RGBA reds = { 255,128,192,255 };
RGBA darkgray = { 96,96,96,255 };
RGBA Navys = { 0,0,128,255 };
RGBA darkgreens = { 0,128,0,255 };
RGBA darkblue = { 0,128,128,255 };
RGBA redbrown = { 128,0,0,255 };
RGBA purplered = { 128,0,128,255 };
RGBA greens = { 0,255,0,255 };
RGBA envy = { 0,255,255,255 };
RGBA black = { 0,0,0,255 };
RGBA gray = { 128,128,128,255 };
RGBA white = { 255,255,255,255 };
RGBA blues = { 30,144,255,255 };
RGBA lightblue = { 135,206,250,160 };
RGBA Scarlet = { 220, 20, 60, 160 };
RGBA white_ = { 255,255,255,200 };
RGBA gray_ = { 128,128,128,200 };
RGBA black_ = { 0,0,0,200 };
RGBA red_ = { 255,0,0,200 };
RGBA Magenta_ = { 255,0,255,200 };
RGBA yellow_ = { 255,255,0,200 };
RGBA grayblue_ = { 128,128,255,200 };
RGBA green_ = { 128,224,0,200 };
RGBA darkgreen_ = { 0,224,128,200 };
RGBA brown_ = { 192,96,0,200 };
RGBA pink_ = { 255,168,255,200 };
RGBA darkyellow_ = { 216,216,0,200 };
RGBA silverwhite_ = { 236,236,236,200 };
RGBA purple_ = { 144,0,255,200 };
RGBA Blue_ = { 88,48,224,200 };
RGBA skyblue_ = { 0,136,255,200 };
RGBA graygreen_ = { 128,160,128,200 };
RGBA blue_ = { 0,96,192,200 };
RGBA orange_ = { 255,128,0,200 };
RGBA pinks_ = { 255,80,128,200 };
RGBA Fuhong_ = { 255,128,192,200 };
RGBA darkgray_ = { 96,96,96,200 };
RGBA Navy_ = { 0,0,128,200 };
RGBA darkgreens_ = { 0,128,0,200 };
RGBA darkblue_ = { 0,128,128,200 };
RGBA redbrown_ = { 128,0,0,200 };
RGBA purplered_ = { 128,0,128,200 };
RGBA greens_ = { 0,255,0,200 };
RGBA envy_ = { 0,255,255,200 };
RGBA glassblack = { 0, 0, 0, 160 };
RGBA GlassBlue = { 65,105,225,80 };
RGBA glassyellow = { 255,255,0,160 };
RGBA glass = { 200,200,200,60 };
RGBA Plum = { 221,160,221,160 };
};
class Vector3
{
public:
Vector3() : x(0.f), y(0.f), z(0.f)
{
}
Vector3(float _x, float _y, float _z) : x(_x), y(_y), z(_z)
{
}
~Vector3()
{
}
float x;
float y;
float z;
inline float Dot(Vector3 v)
{
return x * v.x + y * v.y + z * v.z;
}
inline float Distance(Vector3 v)
{
return float(sqrtf(powf(v.x - x, 2.0) + powf(v.y - y, 2.0) + powf(v.z - z, 2.0)));
}
Vector3 operator+(Vector3 v)
{
return Vector3(x + v.x, y + v.y, z + v.z);
}
Vector3 operator-(Vector3 v)
{
return Vector3(x - v.x, y - v.y, z - v.z);
}
Vector3 operator*(float number) const {
return Vector3(x * number, y * number, z * number);
}
};
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/menu/menu.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
namespace Render {
bool Initialize();
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/offsets/offsets.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include "../Header Files/includes.h"
namespace Offsets {
typedef struct {
LPCWSTR Name;
DWORD& Offset;
} OFFSET;
extern PVOID* uWorld;
namespace Engine {
namespace World {
extern DWORD OwningGameInstance;
extern DWORD Levels;
}
namespace Level {
extern DWORD AActors;
}
namespace GameInstance {
extern DWORD LocalPlayers;
}
namespace Player {
extern DWORD PlayerController;
}
namespace Controller {
extern DWORD ControlRotation;
extern PVOID SetControlRotation;
extern PVOID ClientSetRotation;
}
namespace PlayerController {
extern DWORD AcknowledgedPawn;
}
namespace Pawn {
extern DWORD PlayerState;
}
namespace PlayerState {
extern PVOID GetPlayerName;
}
namespace Actor {
extern DWORD RootComponent;
}
namespace Character {
extern DWORD Mesh;
}
namespace SceneComponent {
extern DWORD RelativeLocation;
extern DWORD ComponentVelocity;
}
namespace StaticMeshComponent {
extern DWORD ComponentToWorld;
extern DWORD StaticMesh;
}
namespace SkinnedMeshComponent {
extern DWORD CachedWorldSpaceBounds;
}
}
namespace FortniteGame {
namespace FortPawn {
extern DWORD bIsDBNO;
extern DWORD bIsDying;
extern DWORD CurrentWeapon;
}
namespace FortPickup {
extern DWORD PrimaryPickupItemEntry;
}
namespace FortItemEntry {
extern DWORD ItemDefinition;
}
namespace FortItemDefinition {
extern DWORD DisplayName;
extern DWORD Tier;
}
namespace FortPlayerStateAthena {
extern DWORD TeamIndex;
}
namespace FortWeapon {
extern DWORD WeaponData;
}
namespace FortWeaponItemDefinition {
extern DWORD WeaponStatHandle;
}
namespace FortProjectileAthena {
extern DWORD FireStartLoc;
}
namespace FortBaseWeaponStats {
extern DWORD ReloadTime;
}
namespace BuildingContainer {
extern DWORD bAlreadySearched;
}
}
BOOLEAN Initialize();
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/settings/settings.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include <wtypes.h>
namespace SettingsHelper {
VOID Initialize();
VOID SaveSettings();
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/util/util.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include "../includes.h"
#define PI (3.141592653589793f)
#define RELATIVE_ADDR(addr, size) ((PBYTE)((UINT_PTR)(addr) + *(PINT)((UINT_PTR)(addr) + ((size) - sizeof(INT))) + (size)))
#define ReadPointer(base, offset) (*(PVOID *)(((PBYTE)base + offset)))
#define ReadDWORD(base, offset) (*(PDWORD)(((PBYTE)base + offset)))
#define ReadBYTE(base, offset) (*(((PBYTE)base + offset)))
namespace Util {
BOOLEAN Initialize();
VOID CreateConsole();
PBYTE FindPattern(LPCSTR pattern, LPCSTR mask);
std::wstring GetObjectFirstName(UObject* object);
std::wstring GetObjectName(UObject* object);
PVOID FindObject(LPCWSTR name);
BOOLEAN WorldToScreen(float width, float height, float inOutPosition[3]);
VOID ToMatrixWithScale(float* in, float out[4][4]);
VOID GetBoneLocation(float compMatrix[4][4], PVOID bones, DWORD index, float out[3]);
BOOLEAN LineOfSightTo(PVOID PlayerController, PVOID Actor, FVector* ViewPoint);
FMinimalViewInfo& GetViewInfo();
FVector* GetPawnRootLocation(PVOID pawn);
VOID CalcAngle(float* src, float* dst, float* angles);
extern VOID(*FreeInternal)(PVOID);
namespace _SpoofCallInternal {
extern "C" PVOID RetSpoofStub();
template <typename Ret, typename... Args>
inline Ret Wrapper(PVOID shell, Args... args) {
auto fn = (Ret(*)(Args...))(shell);
return fn(args...);
}
template <std::size_t Argc, typename>
struct Remapper {
template<typename Ret, typename First, typename Second, typename Third, typename Fourth, typename... Pack>
static Ret Call(PVOID shell, PVOID shell_param, First first, Second second, Third third, Fourth fourth, Pack... pack) {
return Wrapper<Ret, First, Second, Third, Fourth, PVOID, PVOID, Pack...>(shell, first, second, third, fourth, shell_param, nullptr, pack...);
}
};
template <std::size_t Argc>
struct Remapper<Argc, std::enable_if_t<Argc <= 4>> {
template<typename Ret, typename First = PVOID, typename Second = PVOID, typename Third = PVOID, typename Fourth = PVOID>
static Ret Call(PVOID shell, PVOID shell_param, First first = First{}, Second second = Second{}, Third third = Third{}, Fourth fourth = Fourth{}) {
return Wrapper<Ret, First, Second, Third, Fourth, PVOID, PVOID>(shell, first, second, third, fourth, shell_param, nullptr);
}
};
}
template <typename Ret, typename... Args>
Ret SpoofCall(Ret(*fn)(Args...), Args... args) {
static PVOID trampoline = nullptr;
if (!trampoline) {
trampoline = Util::FindPattern("\xFF\x27", "xx");
if (!trampoline) {
MessageBox(0, L"Failed to find valid trampoline", L"Failure", 0);
ExitProcess(0);
}
}
struct {
PVOID Trampoline;
PVOID Function;
PVOID Reg;
} params = {
trampoline,
reinterpret_cast<void*>(fn),
};
return _SpoofCallInternal::Remapper<sizeof...(Args), void>::template Call<Ret, Args...>(&_SpoofCallInternal::RetSpoofStub, ¶ms, args...);
}
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/xor/xor.hpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include <string>
#include <utility>
namespace
{
constexpr int const_atoi(char c)
{
return c - '0';
}
}
#ifdef _MSC_VER
#define ALWAYS_INLINE __forceinline
#else
#define ALWAYS_INLINE __attribute__((always_inline))
#endif
template<typename _string_type, size_t _length>
class _Basic_XorStr
{
using value_type = typename _string_type::value_type;
static constexpr auto _length_minus_one = _length - 1;
public:
constexpr ALWAYS_INLINE _Basic_XorStr(value_type const (&str)[_length])
: _Basic_XorStr(str, std::make_index_sequence<_length_minus_one>())
{
}
inline auto c_str() const
{
decrypt();
return data;
}
inline auto str() const
{
decrypt();
return _string_type(data, data + _length_minus_one);
}
inline operator _string_type() const
{
return str();
}
private:
template<size_t... indices>
constexpr ALWAYS_INLINE _Basic_XorStr(value_type const (&str)[_length], std::index_sequence<indices...>)
: data{ crypt(str[indices], indices)..., '\0' },
encrypted(true)
{
}
static constexpr auto XOR_KEY = static_cast<value_type>(
const_atoi(__TIME__[7]) +
const_atoi(__TIME__[6]) * 10 +
const_atoi(__TIME__[4]) * 60 +
const_atoi(__TIME__[3]) * 600 +
const_atoi(__TIME__[1]) * 3600 +
const_atoi(__TIME__[0]) * 36000
);
static ALWAYS_INLINE constexpr auto crypt(value_type c, size_t i)
{
return static_cast<value_type>(c ^ (XOR_KEY + i));
}
inline void decrypt() const
{
if (encrypted)
{
for (size_t t = 0; t < _length_minus_one; t++)
{
data[t] = crypt(data[t], t);
}
encrypted = false;
}
}
mutable value_type data[_length];
mutable bool encrypted;
};
//---------------------------------------------------------------------------
template<size_t _length>
using XorStrA = _Basic_XorStr<std::string, _length>;
template<size_t _length>
using XorStrW = _Basic_XorStr<std::wstring, _length>;
template<size_t _length>
using XorStrU16 = _Basic_XorStr<std::u16string, _length>;
template<size_t _length>
using XorStrU32 = _Basic_XorStr<std::u32string, _length>;
//---------------------------------------------------------------------------
template<typename _string_type, size_t _length, size_t _length2>
inline auto operator==(const _Basic_XorStr<_string_type, _length>& lhs, const _Basic_XorStr<_string_type, _length2>& rhs)
{
static_assert(_length == _length2, "XorStr== different length");
return _length == _length2 && lhs.str() == rhs.str();
}
//---------------------------------------------------------------------------
template<typename _string_type, size_t _length>
inline auto operator==(const _string_type& lhs, const _Basic_XorStr<_string_type, _length>& rhs)
{
return lhs.size() == _length && lhs == rhs.str();
}
//---------------------------------------------------------------------------
template<typename _stream_type, typename _string_type, size_t _length>
inline auto& operator<<(_stream_type& lhs, const _Basic_XorStr<_string_type, _length>& rhs)
{
lhs << rhs.c_str();
return lhs;
}
//---------------------------------------------------------------------------
template<typename _string_type, size_t _length, size_t _length2>
inline auto operator+(const _Basic_XorStr<_string_type, _length>& lhs, const _Basic_XorStr<_string_type, _length2>& rhs)
{
return lhs.str() + rhs.str();
}
//---------------------------------------------------------------------------
template<typename _string_type, size_t _length>
inline auto operator+(const _string_type& lhs, const _Basic_XorStr<_string_type, _length>& rhs)
{
return lhs + rhs.str();
}
//---------------------------------------------------------------------------
template<size_t _length>
constexpr ALWAYS_INLINE auto _xor_(char const (&str)[_length])
{
return XorStrA<_length>(str);
}
//---------------------------------------------------------------------------
template<size_t _length>
constexpr ALWAYS_INLINE auto _xor_(wchar_t const (&str)[_length])
{
return XorStrW<_length>(str);
}
//---------------------------------------------------------------------------
template<size_t _length>
constexpr ALWAYS_INLINE auto _xor_(char16_t const (&str)[_length])
{
return XorStrU16<_length>(str);
}
//---------------------------------------------------------------------------
template<size_t _length>
constexpr ALWAYS_INLINE auto _xor_(char32_t const (&str)[_length])
{
return XorStrU32<_length>(str);
}
//---------------------------------------------------------------------------
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/xorstr.h
================================================
#ifndef JM_XORSTR_HPP
#define JM_XORSTR_HPP
#include <immintrin.h>
#include <cstdint>
#include <cstddef>
#include <utility>
#define JM_XORSTR_DISABLE_AVX_INTRINSICS
#define xorstr_(str) \
::jm::make_xorstr( \
[]() { return str; }, \
std::make_index_sequence<sizeof(str) / sizeof(*str)>{}, \
std::make_index_sequence<::jm::detail::_buffer_size<sizeof(str)>()>{})
#define xorstr(str) xorstr_(str).crypt_get()
#ifdef _MSC_VER
#define XORSTR_FORCEINLINE __forceinline
#else
#define XORSTR_FORCEINLINE __attribute__((always_inline))
#endif
// you can define this macro to get possibly faster code on gcc/clang
// at the expense of constants being put into data section.
#if !defined(XORSTR_ALLOW_DATA)
// MSVC - no volatile
// GCC and clang - volatile everywhere
#if defined(__clang__) || defined(__GNUC__)
#define XORSTR_VOLATILE volatile
#endif
#endif
#ifndef XORSTR_VOLATILE
#define XORSTR_VOLATILE
#endif
namespace jm {
namespace detail {
template<std::size_t S>
struct unsigned_;
template<>
struct unsigned_<1> {
using type = std::uint8_t;
};
template<>
struct unsigned_<2> {
using type = std::uint16_t;
};
template<>
struct unsigned_<4> {
using type = std::uint32_t;
};
template<auto C, auto...>
struct pack_value_type {
using type = decltype(C);
};
template<std::size_t Size>
constexpr std::size_t _buffer_size() {
return ((Size / 16) + (Size % 16 != 0)) * 2;
}
template<auto... Cs>
struct tstring_ {
using value_type = typename pack_value_type<Cs...>::type;
constexpr static std::size_t size = sizeof...(Cs);
constexpr static value_type str[size] = { Cs... };
constexpr static std::size_t buffer_size = _buffer_size<sizeof(str)>();
constexpr static std::size_t buffer_align =
#ifndef JM_XORSTR_DISABLE_AVX_INTRINSICS
((sizeof(str) > 16) ? 32 : 16);
#else
16;
#endif
};
template<std::size_t I, std::uint64_t K>
struct _ki {
constexpr static std::size_t idx = I;
constexpr static std::uint64_t key = K;
};
template<std::uint32_t Seed>
constexpr std::uint32_t key4() noexcept {
std::uint32_t value = Seed;
for (char c : __TIME__)
value = static_cast<std::uint32_t>((value ^ c) * 16777619ull);
return value;
}
template<std::size_t S>
constexpr std::uint64_t key8() {
constexpr auto first_part = key4<2166136261 + S>();
constexpr auto second_part = key4<first_part>();
return (static_cast<std::uint64_t>(first_part) << 32) | second_part;
}
// clang and gcc try really hard to place the constants in data
// sections. to counter that there was a need to create an intermediate
// constexpr string and then copy it into a non constexpr container with
// volatile storage so that the constants would be placed directly into
// code.
template<class T, std::uint64_t... Keys>
struct string_storage {
std::uint64_t storage[T::buffer_size];
XORSTR_FORCEINLINE constexpr string_storage() noexcept : storage{ Keys... } {
using cast_type =
typename unsigned_<sizeof(typename T::value_type)>::type;
constexpr auto value_size = sizeof(typename T::value_type);
// puts the string into 64 bit integer blocks in a constexpr
// fashion
for (std::size_t i = 0; i < T::size; ++i)
storage[i / (8 / value_size)] ^=
(std::uint64_t{ static_cast<cast_type>(T::str[i]) }
<< ((i % (8 / value_size)) * 8 * value_size));
}
};
} // namespace detail
template<class T, class... Keys>
class xor_string {
alignas(T::buffer_align) std::uint64_t _storage[T::buffer_size];
// _single functions needed because MSVC crashes without them
XORSTR_FORCEINLINE void _crypt_256_single(const std::uint64_t* keys,
std::uint64_t* storage) noexcept
{
_mm256_store_si256(
reinterpret_cast<__m256i*>(storage),
_mm256_xor_si256(
_mm256_load_si256(reinterpret_cast<const __m256i*>(storage)),
_mm256_load_si256(reinterpret_cast<const __m256i*>(keys))));
}
template<std::size_t... Idxs>
XORSTR_FORCEINLINE void _crypt_256(const std::uint64_t* keys,
std::index_sequence<Idxs...>) noexcept {
(_crypt_256_single(keys + Idxs * 4, _storage + Idxs * 4), ...);
}
XORSTR_FORCEINLINE void _crypt_128_single(const std::uint64_t* keys,
std::uint64_t* storage) noexcept {
_mm_store_si128(
reinterpret_cast<__m128i*>(storage),
_mm_xor_si128(_mm_load_si128(reinterpret_cast<const __m128i*>(storage)),
_mm_load_si128(reinterpret_cast<const __m128i*>(keys))));
}
template<std::size_t... Idxs>
XORSTR_FORCEINLINE void _crypt_128(const std::uint64_t* keys,
std::index_sequence<Idxs...>) noexcept {
(_crypt_128_single(keys + Idxs * 2, _storage + Idxs * 2), ...);
}
// loop generates vectorized code which places constants in data dir
XORSTR_FORCEINLINE constexpr void _copy() noexcept {
constexpr detail::string_storage<T, Keys::key...> storage;
static_cast<void>(std::initializer_list<std::uint64_t>{
(const_cast<XORSTR_VOLATILE std::uint64_t*>(_storage))[Keys::idx] =
storage.storage[Keys::idx]... });
}
public:
using value_type = typename T::value_type;
using size_type = std::size_t;
using pointer = value_type*;
using const_pointer = const pointer;
XORSTR_FORCEINLINE xor_string() noexcept { _copy(); }
XORSTR_FORCEINLINE constexpr size_type size() const noexcept {
return T::size - 1;
}
XORSTR_FORCEINLINE void crypt() noexcept {
alignas(T::buffer_align) std::uint64_t keys[T::buffer_size];
static_cast<void>(std::initializer_list<std::uint64_t>{
(const_cast<XORSTR_VOLATILE std::uint64_t*>(keys))[Keys::idx] =
Keys::key... });
_copy();
#ifndef JM_XORSTR_DISABLE_AVX_INTRINSICS
_crypt_256(keys, std::make_index_sequence<T::buffer_size / 4>{});
if constexpr (T::buffer_size % 4 != 0)
_crypt_128(keys, std::index_sequence<T::buffer_size / 2 - 1>{});
#else
_crypt_128(keys, std::make_index_sequence<T::buffer_size / 2>{});
#endif
}
XORSTR_FORCEINLINE const_pointer get() const noexcept {
return reinterpret_cast<const_pointer>(_storage);
}
XORSTR_FORCEINLINE const_pointer crypt_get() noexcept {
crypt();
return reinterpret_cast<const_pointer>(_storage);
}
};
template<class Tstr, std::size_t... StringIndices, std::size_t... KeyIndices>
XORSTR_FORCEINLINE constexpr auto
make_xorstr(Tstr str_lambda,
std::index_sequence<StringIndices...>,
std::index_sequence<KeyIndices...>) noexcept {
return xor_string<detail::tstring_<str_lambda()[StringIndices]...>,
detail::_ki<KeyIndices, detail::key8<KeyIndices>()>...>{};
}
} // namespace jm
#endif // include guard
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Helper/Helper.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include <cstdlib>
#include <Windows.h>
#include "Helper.h"
void Helper::OpenConsole()
{
AllocConsole();
freopen("CONOUT$", "w", stdout);
}
uintptr_t Helper::PatternScan(uintptr_t moduleAdress, const char* signature)
{
static auto patternToByte = [](const char* pattern)
{
auto bytes = std::vector<int>{};
const auto start = const_cast<char*>(pattern);
const auto end = const_cast<char*>(pattern) + strlen(pattern);
for (auto current = start; current < end; ++current)
{
if (*current == '?')
{
++current;
if (*current == '?')
++current;
bytes.push_back(-1);
}
else { bytes.push_back(strtoul(current, ¤t, 16)); }
}
return bytes;
};
const auto dosHeader = (PIMAGE_DOS_HEADER)moduleAdress;
const auto ntHeaders = (PIMAGE_NT_HEADERS)((std::uint8_t*)moduleAdress + dosHeader->e_lfanew);
const auto sizeOfImage = ntHeaders->OptionalHeader.SizeOfImage;
auto patternBytes = patternToByte(signature);
const auto scanBytes = reinterpret_cast<std::uint8_t*>(moduleAdress);
const auto s = patternBytes.size();
const auto d = patternBytes.data();
for (auto i = 0ul; i < sizeOfImage - s; ++i)
{
bool found = true;
for (auto j = 0ul; j < s; ++j)
{
if (scanBytes[i + j] != d[j] && d[j] != -1)
{
found = false;
break;
}
}
if (found) { return reinterpret_cast<uintptr_t>(&scanBytes[i]); }
}
return NULL;
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Helper/Helper.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#pragma once
#include <vector>
class Helper
{
public:
/// <summary>
/// Scan for a given byte pattern on a moduleAdress.\n
/// Example: PatternScan(GetModuleHandleW(L"engine.dll"), "53 56 57 8B DA 8B F9 FF 15")
/// </summary>
/// <param name="moduleAdress">Base of the moduleAdress to search</param>
/// <param name="signature">signature IDA-style byte array pattern</param>
/// <returns>Address of the first occurence</returns>
static uintptr_t PatternScan(uintptr_t moduleAdress, const char* signature);
// ********************************************************************************
/// <summary>
/// Open console CMD
/// </summary>
// ********************************************************************************
static void OpenConsole();
};
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/Config/Config.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include <fstream>
#include <ShlObj.h>
#include "../../Header Files/Config/Archivex.h"
#include "../../Header Files/Config/config.h"
c_config config_system;
void c_config::run(const char* name) noexcept {
PWSTR pathToDocuments;
if (SUCCEEDED(SHGetKnownFolderPath(FOLDERID_Documents, 0, NULL, &pathToDocuments))) {
path = pathToDocuments;
path /= name;
CoTaskMemFree(pathToDocuments);
}
if (!std::filesystem::is_directory(path)) {
std::filesystem::remove(path);
std::filesystem::create_directory(path);
}
std::transform(std::filesystem::directory_iterator{ path },
std::filesystem::directory_iterator{ },
std::back_inserter(configs),
[](const auto& entry) { return entry.path().filename().string(); });
}
void c_config::load(size_t id) noexcept {
if (!std::filesystem::is_directory(path)) {
std::filesystem::remove(path);
std::filesystem::create_directory(path);
}
std::ifstream in{ path / configs[id] };
if (!in.good())
return;
ArchiveX<std::ifstream>{ in } >> item;
in.close();
}
void c_config::save(size_t id) const noexcept {
if (!std::filesystem::is_directory(path)) {
std::filesystem::remove(path);
std::filesystem::create_directory(path);
}
std::ofstream out{ path / configs[id] };
if (!out.good())
return;
ArchiveX<std::ofstream>{ out } << item;
out.close();
}
void c_config::add(const char* name) noexcept {
if (*name && std::find(std::cbegin(configs), std::cend(configs), name) == std::cend(configs))
configs.emplace_back(name);
}
void c_config::remove(size_t id) noexcept {
std::filesystem::remove(path / configs[id]);
configs.erase(configs.cbegin() + id);
}
void c_config::rename(size_t item, const char* newName) noexcept {
std::filesystem::rename(path / configs[item], path / newName);
configs[item] = newName;
}
void c_config::reset() noexcept {
item = { };
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/FortUpdaters/FortUpdaters.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include "../../Header Files/FortUpdaters/FortUpdaters.h"
#include "../../Header Files/xorstr.h"
#include "../../imgui/imgui_xorstr.h"
template<class T>
struct TArray
{
friend struct FString;
public:
inline TArray()
{
Data = nullptr;
Count = Max = 0;
};
inline int Num() const
{
return Count;
};
inline T& operator[](int i)
{
return Data[i];
};
inline const T& operator[](int i) const
{
return Data[i];
};
inline bool IsValidIndex(int i) const
{
return i < Num();
}
private:
T* Data;
int Count;
int Max;
};
struct FString : private TArray<wchar_t>
{
inline FString()
{
};
inline bool IsValid() const
{
return Data != nullptr;
}
inline const wchar_t* c_str() const
{
return Data;
}
std::string ToString() const
{
auto length = std::wcslen(Data);
std::string str(length, '\0');
std::use_facet<std::ctype<wchar_t>>(std::locale()).narrow(Data, Data + length, '?', &str[0]);
return str;
}
};
struct FName
{
int32_t ComparisonIndex;
int32_t Number;
};
bool FortUpdater::Init(uintptr_t UObjectArray, uintptr_t GetObjectName, uintptr_t GetNameByIndex, uintptr_t FnFree)
{
if (!UObjectArray || !GetObjectName || !GetNameByIndex || !FnFree) return false;
uintptr_t deref_1 = *(uintptr_t*)UObjectArray;
if (IsBadReadPtr((void*)deref_1, sizeof(uintptr_t))) return false;
uintptr_t deref_2 = *(uintptr_t*)deref_1;
if (IsBadReadPtr((void*)deref_2, sizeof(uintptr_t))) return false;
this->UObjectArray = deref_2;
this->GetObjectName = GetObjectName;
this->GetNameByIndex = GetNameByIndex;
this->FnFree = FnFree;
return true;
}
DWORD FortUpdater::FindOffset(const char* Class, const char* varName)
{
for (DWORD i = 0x0; i < 0x9000; i++)
{
auto CurrentObject = *(uintptr_t*)(this->UObjectArray + (i * 0x18));
if (!CurrentObject) return NULL;
if (!(*(uintptr_t*)(CurrentObject + 0x50)) || *(DWORD*)(CurrentObject + 0x54) == 0xFFFFFFFF) continue;
char* CurObjectName = this->fGetObjectName(CurrentObject);
if (!strcmp(CurObjectName, Class)) //Same class
{
for (auto Property = *(uint64_t*)(CurrentObject + 0x50); !IsBadReadPtr((void*)Property, 8); Property = *(uint64_t*)(Property + 0x20))
{
auto Type = *(uint64_t*)(Property + 0x8);
if (!IsBadReadPtr((void*)Type, 8) && Type)
{
auto Property_FName = *(FName*)(Property + 0x28);
auto Offset = *(DWORD*)(Property + 0x4C);
if (Offset != 0)
{
auto Property_idx = Property_FName.ComparisonIndex;
if (Property_idx)
{
char* PropertyName = this->fGetNameByIndex(Property_idx);
if (!strcmp(PropertyName, varName))
{
return Offset;
}
}
printf(xorstr(" % X", Offset));
system(xorstr("pause"));
}
}
}
}
}
}
void FortUpdater::cFixName(char* Name)
{
for (int i = 0; Name[i] != '\0'; i++)
{
if (Name[i] == '_')
{
if (Name[i + 1] == '0' ||
Name[i + 1] == '1' ||
Name[i + 1] == '2' ||
Name[i + 1] == '3' ||
Name[i + 1] == '4' ||
Name[i + 1] == '5' ||
Name[i + 1] == '6' ||
Name[i + 1] == '7' ||
Name[i + 1] == '8' ||
Name[i + 1] == '9')
Name[i] = '\0';
}
}
return;
}
void FortUpdater::FreeObjName(uintptr_t Address)
{
if (Address == NULL) return;
auto func = reinterpret_cast<__int64(__fastcall*)(__int64)>(this->FnFree);
func(Address);
}
char* FortUpdater::fGetObjectName(uintptr_t Object)
{
if (Object == NULL) return (char*)"";
auto fGetObjName = reinterpret_cast<FString * (__fastcall*)(FString*, uintptr_t)>(this->GetObjectName);
FString result;
fGetObjName(&result, Object);
if (result.c_str() == NULL) return (char*)"";
auto tmp = result.ToString();
char return_string[1024];
memcpy(return_string, std::string(tmp.begin(), tmp.end()).c_str(), 1024);
this->FreeObjName((uintptr_t)result.c_str());
cFixName(return_string);
return (char*)std::string(tmp.begin(), tmp.end()).c_str();
}
char* FortUpdater::fGetNameByIndex(int Index)
{
if (Index == 0) return (char*)"";
auto fGetNameByIdx = reinterpret_cast<FString * (__fastcall*)(int*, FString*)>(this->GetNameByIndex);
FString result;
fGetNameByIdx(&Index, &result);
if (result.c_str() == NULL) return (char*)"";
auto tmp = result.ToString();
char return_string[1024];
memcpy(return_string, std::string(tmp.begin(), tmp.end()).c_str(), 1024);
FreeObjName((uintptr_t)result.c_str());
cFixName(return_string);
return return_string;
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/core/core.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include "../../Header Files/menu/menu.h"
#include "../../Header Files/Config/config.h"
#include "../../Header Files/includes.h"
#include "../../DiscordHook/Discord.h"
#include "../../Header Files/xorstr.h"
#include "../../imgui/imgui_xorstr.h"
#include <iostream>
namespace Core {
bool NoSpread = true;
bool IsAirstuck = true;
int Current = 1;
PVOID LocalPlayerPawn = nullptr;
PVOID LocalPlayerController = nullptr;
PVOID TargetPawn = nullptr;
BYTE FreeCamDirection[6] = { 0 };
FRotator FreeCamRotation[6] = { 0 };
FVector FreeCamPosition = { 0 };
FVector PlayerPosition = { 0 };
PVOID(*ProcessEvent)(PVOID, PVOID, PVOID, PVOID) = nullptr;
PVOID(*CalculateSpread)(PVOID, float*, float*) = nullptr;
float* (*CalculateShot)(PVOID, PVOID, PVOID) = nullptr;
VOID(*ReloadOriginal)(PVOID, PVOID) = nullptr;
PVOID(*GetWeaponStats)(PVOID) = nullptr;
INT(*GetViewPoint)(PVOID, FMinimalViewInfo*, BYTE) = nullptr;
auto CurrentLocation = Core::FreeCamPosition;
auto CurrentYaw = 0;
auto CurrentPitch = 0;
auto CurrenRoll = 0;
auto OriginalAitstuck = 0;
PVOID calculateSpreadCaller = nullptr;
float originalReloadTime = 0.0f;
BOOLEAN GetTarget(FVector& out) {
if (!Core::TargetPawn) {
return FALSE;
}
auto mesh = ReadPointer(Core::TargetPawn, 0x280);
if (!mesh) {
return FALSE;
}
auto bones = ReadPointer(mesh, 0x488);
if (!bones) bones = ReadPointer(mesh, 0x488 + 0x10);
if (!bones) {
return FALSE;
}
float compMatrix[4][4] = { 0 };
Util::ToMatrixWithScale(reinterpret_cast<float*>(reinterpret_cast<PBYTE>(mesh) + 0x1C0), compMatrix);
float AimPointer;
if (config_system.item.AimPoint == 0) {
AimPointer = BONE_HEAD_ID;
}
else if (config_system.item.AimPoint == 1) {
AimPointer = BONE_NECK_ID;
}
else if (config_system.item.AimPoint == 2) {
AimPointer = BONE_CHEST_ID;
}
else if (config_system.item.AimPoint == 3) {
AimPointer = BONE_PELVIS_ID;
}
else if (config_system.item.AimPoint == 4) {
AimPointer = BONE_RIGHTELBOW_ID;
}
else if (config_system.item.AimPoint == 5) {
AimPointer = BONE_LEFTELBOW_ID;
}
else if (config_system.item.AimPoint == 6) {
AimPointer = BONE_RIGHTTHIGH_ID;
}
else if (config_system.item.AimPoint == 7) {
AimPointer = BONE_LEFTTHIGH_ID;
}
else if (config_system.item.AimPoint == 8) {
AimPointer = BONE_PELVIS_ID;
}
Util::GetBoneLocation(compMatrix, bones, AimPointer, &out.X);
return TRUE;
}
PVOID ProcessEventHook(UObject* object, UObject* func, PVOID params, PVOID result) {
if (object && func) {
auto objectName = Util::GetObjectFirstName(object);
auto funcName = Util::GetObjectFirstName(func);
do {
if (Core::TargetPawn && Core::LocalPlayerController) {
if (wcsstr(objectName.c_str(), xorstr(L"B_Prj_Bullet_Sniper")) && funcName == xorstr(L"OnRep_FireStart")) {
FVector CurrentAimPointer = { 0 };
if (!GetTarget(CurrentAimPointer)) {
break;
}
*reinterpret_cast<FVector*>(reinterpret_cast<PBYTE>(object) + Offsets::FortniteGame::FortProjectileAthena::FireStartLoc) = CurrentAimPointer;
auto root = reinterpret_cast<PBYTE>(ReadPointer(object, Offsets::Engine::Actor::RootComponent));
*reinterpret_cast<FVector*>(root + Offsets::Engine::SceneComponent::RelativeLocation) = CurrentAimPointer;
memset(root + Offsets::Engine::SceneComponent::ComponentVelocity, 0, sizeof(FVector));
}
else if (!config_system.item.SilentAimbot && wcsstr(funcName.c_str(), xorstr(L"Tick"))) {
FVector CurrentAimPointer;
if (!GetTarget(CurrentAimPointer)) { //head
break;
}
float angles[2] = { 0 };
Util::CalcAngle(&Util::GetViewInfo().Location.X, &CurrentAimPointer.X, angles); //head instead of neck.X
if (config_system.item.AimbotSlow <= 0.0f) {
if (config_system.item.TriggerAimbot) {
FRotator args = { 0 };
args.Pitch = angles[0];
args.Yaw = angles[1];
ProcessEvent(Core::LocalPlayerController, Offsets::Engine::Controller::ClientSetRotation, &args, 0);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
int x = 0;
while (x < config_system.item.TriggerSpeed * 10) {
x++;
}
x = 0;
}
else {
auto scale = config_system.item.AimbotSlow + 1.0f;
auto currentRotation = Util::GetViewInfo().Rotation;
FRotator args = { 0 };
args.Pitch = (angles[0] - currentRotation.Pitch) / scale + currentRotation.Pitch;
args.Yaw = (angles[1] - currentRotation.Yaw) / scale + currentRotation.Yaw;
ProcessEvent(Core::LocalPlayerController, Offsets::Engine::Controller::ClientSetRotation, &args, 0);
}
}
else {
if (config_system.item.TriggerAimbot) {
auto scale = config_system.item.AimbotSlow + 1.0f;
auto currentRotation = Util::GetViewInfo().Rotation;
FRotator args = { 0 };
args.Pitch = (angles[0] - currentRotation.Pitch) / scale + currentRotation.Pitch;
args.Yaw = (angles[1] - currentRotation.Yaw) / scale + currentRotation.Yaw;
ProcessEvent(Core::LocalPlayerController, Offsets::Engine::Controller::ClientSetRotation, &args, 0);
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
int v = 0;
while (v < config_system.item.TriggerSpeed * 10) {
v++;
}
v = 0;
}
else {
auto scale = config_system.item.AimbotSlow + 1.0f;
auto currentRotation = Util::GetViewInfo().Rotation;
FRotator args = { 0 };
args.Pitch = (angles[0] - currentRotation.Pitch) / scale + currentRotation.Pitch;
args.Yaw = (angles[1] - currentRotation.Yaw) / scale + currentRotation.Yaw;
ProcessEvent(Core::LocalPlayerController, Offsets::Engine::Controller::ClientSetRotation, &args, 0);
}
}
}
}
} while (FALSE);
}
return ProcessEvent(object, func, params, result);
}
PVOID CalculateSpreadHook(PVOID arg0, float* arg1, float* arg2) {
if (originalReloadTime != 0.0f) {
auto localPlayerWeapon = ReadPointer(Core::LocalPlayerPawn, Offsets::FortniteGame::FortPawn::CurrentWeapon);
if (localPlayerWeapon) {
auto stats = GetWeaponStats(localPlayerWeapon);
if (stats) {
*reinterpret_cast<float*>(reinterpret_cast<PBYTE>(stats) + Offsets::FortniteGame::FortBaseWeaponStats::ReloadTime) = originalReloadTime;
originalReloadTime = 0.0f;
}
}
}
if (config_system.item.NoSpreadAimbot && Core::NoSpread && _ReturnAddress() == calculateSpreadCaller) {
return 0;
}
return CalculateSpread(arg0, arg1, arg2);
}
float* CalculateShotHook(PVOID arg0, PVOID arg1, PVOID arg2) {
auto ret = CalculateShot(arg0, arg1, arg2);
if (ret && config_system.item.SilentAimbot && Core::TargetPawn && Core::LocalPlayerPawn) {
auto mesh = ReadPointer(Core::TargetPawn, Offsets::Engine::Character::Mesh);
if (!mesh) return ret;
auto bones = ReadPointer(mesh, Offsets::Engine::StaticMeshComponent::StaticMesh);
if (!bones) bones = ReadPointer(mesh, Offsets::Engine::StaticMeshComponent::StaticMesh + 0x10);
if (!bones) return ret;
float compMatrix[4][4] = { 0 };
Util::ToMatrixWithScale(reinterpret_cast<float*>(reinterpret_cast<PBYTE>(mesh) + Offsets::Engine::StaticMeshComponent::ComponentToWorld), compMatrix);
FVector CurrentAimPoint = { 0 };
int CurrentAimPointer = BONE_HEAD_ID;
if (config_system.item.AimPoint == 0) {
CurrentAimPointer = BONE_HEAD_ID;
}
else if (config_system.item.AimPoint == 1) {
CurrentAimPointer = BONE_NECK_ID;
}
else if (config_system.item.AimPoint == 2) {
CurrentAimPointer = BONE_CHEST_ID;
}
else if (config_system.item.AimPoint == 3) {
CurrentAimPointer = BONE_PELVIS_ID;
}
else if (config_system.item.AimPoint == 4) {
CurrentAimPointer = BONE_RIGHTELBOW_ID;
}
else if (config_system.item.AimPoint == 5) {
CurrentAimPointer = BONE_LEFTELBOW_ID;
}
else if (config_system.item.AimPoint == 6) {
CurrentAimPointer = BONE_RIGHTTHIGH_ID;
}
else if (config_system.item.AimPoint == 7) {
CurrentAimPointer = BONE_LEFTTHIGH_ID;
}
else if (config_system.item.AimPoint == 8) {
CurrentAimPointer = BONE_PELVIS_ID;
}
Util::GetBoneLocation(compMatrix, bones, CurrentAimPointer, &CurrentAimPoint.X);
auto rootPtr = Util::GetPawnRootLocation(Core::LocalPlayerPawn);
if (!rootPtr) return ret;
auto root = *rootPtr;
auto dx = CurrentAimPoint.X - root.X;
auto dy = CurrentAimPoint.Y - root.Y;
auto dz = CurrentAimPoint.Z - root.Z;
if (dx * dx + dy * dy + dz * dz < 125000.0f) {
ret[4] = CurrentAimPoint.X;
ret[5] = CurrentAimPoint.Y;
ret[6] = CurrentAimPoint.Z;
}
else {
CurrentAimPoint.Z -= 16.0f;
root.Z += 45.0f;
auto y = atan2f(CurrentAimPoint.Y - root.Y, CurrentAimPoint.X - root.X);
root.X += cosf(y + 1.5708f) * 32.0f;
root.Y += sinf(y + 1.5708f) * 32.0f;
auto length = Util::SpoofCall(sqrtf, powf(CurrentAimPoint.X - root.X, 2) + powf(CurrentAimPoint.Y - root.Y, 2));
auto x = -atan2f(CurrentAimPoint.Z - root.Z, length);
y = atan2f(CurrentAimPoint.Y - root.Y, CurrentAimPoint.X - root.X);
x /= 2.0f;
y /= 2.0f;
ret[0] = -(sinf(x) * sinf(y));
ret[1] = sinf(x) * cosf(y);
ret[2] = cosf(x) * sinf(y);
ret[3] = cosf(x) * cosf(y);
}
}
return ret;
}
INT GetViewPointHook(PVOID player, FMinimalViewInfo* viewInfo, BYTE stereoPass)
{
static HWND TargetWindow = 0;
float CurrentSpeed = config_system.item.FreeCamSpeed;
TargetWindow = FindWindow(xorstr(L"UnrealWindow"), xorstr(L"Fortnite "));
auto RotationYaw = viewInfo->Rotation.Yaw * PI / 180.0f;
const float FlySpeed = 0.10f;
const float HighFOV = 50.534008f;
const float LowFOV = 40.0f;
static FVector FreecamPoint = { 0 };
static FRotator FreeCamRotation = { 0 };
FVector DirectionPoint = {
static_cast<float>(Core::FreeCamDirection[0] - Core::FreeCamDirection[1]),
static_cast<float>(Core::FreeCamDirection[2] - Core::FreeCamDirection[3]),
static_cast<float>(Core::FreeCamDirection[4] - Core::FreeCamDirection[5]),
};
auto CurrentViewPoint = GetViewPoint(player, viewInfo, stereoPass);
auto CurrentFOV = viewInfo->FOV;
auto NormalFOV = (((180.0f - HighFOV) / (180.0f - 80.0f)) * (config_system.item.FOV - 80.0f)) + HighFOV;
if (CurrentFOV > HighFOV) {
CurrentFOV = NormalFOV;
}
else if (CurrentFOV > LowFOV) {
CurrentFOV = (((CurrentFOV - LowFOV) / (HighFOV - LowFOV)) * (NormalFOV - LowFOV)) + LowFOV;
}
auto master = Util::SpoofCall(sqrtf, DirectionPoint.X * DirectionPoint.X + DirectionPoint.Y * DirectionPoint.Y + DirectionPoint.Z * DirectionPoint.Z);
if (master != 0) {
DirectionPoint.X /= master;
DirectionPoint.Y /= master;
DirectionPoint.Z /= master;
}
if (config_system.item.FOVSlider) {
viewInfo->FOV = CurrentFOV;
}
if (config_system.item.SpinBot) {
if (Util::SpoofCall(GetAsyncKeyState, config_system.keybind.Spinbot) && Util::SpoofCall(GetForegroundWindow) == TargetWindow) {
// Freeze Cam
viewInfo->Location = CurrentLocation;
viewInfo->Rotation.Yaw = CurrentYaw;
viewInfo->Rotation.Pitch = CurrentPitch;
viewInfo->Rotation.Roll = CurrenRoll;
return CurrentViewPoint;
}
else {
//
CurrentLocation = Util::GetViewInfo().Location;
CurrentYaw = viewInfo->Rotation.Yaw;
CurrentPitch = viewInfo->Rotation.Pitch;
CurrenRoll = viewInfo->Rotation.Roll;
}
}
return CurrentViewPoint;
}
VOID ReloadHook(PVOID arg0, PVOID arg1) {
if (config_system.item.InstantReload && Core::LocalPlayerPawn) {
auto localPlayerWeapon = ReadPointer(Core::LocalPlayerPawn, Offsets::FortniteGame::FortPawn::CurrentWeapon);
if (localPlayerWeapon) {
auto stats = GetWeaponStats(localPlayerWeapon);
if (stats) {
auto& reloadTime = *reinterpret_cast<float*>(reinterpret_cast<PBYTE>(stats) + Offsets::FortniteGame::FortBaseWeaponStats::ReloadTime);
if (reloadTime != 0.01f) {
originalReloadTime = reloadTime;
reloadTime = 0.01f;
}
}
}
}
ReloadOriginal(arg0, arg1);
}
BOOLEAN Initialize() {
// GetWeaponStats
auto addr = Util::FindPattern(xorstr("\x48\x83\xEC\x58\x48\x8B\x91\x00\x00\x00\x00\x48\x85\xD2\x0F\x84\x00\x00\x00\x00\xF6\x81\x00\x00\x00\x00\x00\x74\x10\x48\x8B\x81\x00\x00\x00\x00\x48\x85\xC0\x0F\x85\x00\x00\x00\x00\x48\x8B\x8A\x00\x00\x00\x00\x48\x89\x5C\x24\x00\x48\x8D\x9A\x00\x00\x00\x00\x48\x85\xC9"), xorstr("xxxxxxx????xxxxx????xx?????xxxxx????xxxxx????xxx????xxxx?xxx????xxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find GetWeaponStats."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
GetWeaponStats = reinterpret_cast<decltype(GetWeaponStats)>(addr);
// ProcessEvent
addr = Util::FindPattern(xorstr("\x40\x55\x56\x57\x41\x54\x41\x55\x41\x56\x41\x57\x48\x81\xEC\x00\x00\x00\x00\x48\x8D\x6C\x24\x00\x48\x89\x9D\x00\x00\x00\x00\x48\x8B\x05\x00\x00\x00\x00\x48\x33\xC5\x48\x89\x85\x00\x00\x00\x00\x8B\x41\x0C\x45\x33\xF6\x3B\x05\x00\x00\x00\x00\x4D\x8B\xF8\x48\x8B\xF2\x4C\x8B\xE1\x41\xB8\x00\x00\x00\x00\x7D\x2A"), xorstr("xxxxxxxxxxxxxxx????xxxx?xxx????xxx????xxxxxx????xxxxxxxx????xxxxxxxxxxx????xx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find ProcessEvent."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
DISCORD.HookFunction((uintptr_t)addr, (uintptr_t)ProcessEventHook, (uintptr_t)&ProcessEvent);;
//CalculateShot
addr = Util::FindPattern(xorstr("\x48\x89\x5C\x24\x00\x4C\x89\x4C\x24\x00\x55\x56\x57\x41\x54\x41\x55\x41\x56\x41\x57\x48\x8D\x6C\x24\x00\x48\x81\xEC\x00\x00\x00\x00\x48\x8B\xF9\x4C\x8D\x6C\x24\x00"), xorstr("xxxx?xxxx?xxxxxxxxxxxxxxx?xxx????xxxxxxx?"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find CalculateShot."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
DISCORD.HookFunction((uintptr_t)addr, (uintptr_t)CalculateShotHook, (uintptr_t)&CalculateShot);
// GetViewPoint
addr = Util::FindPattern(xorstr("\x48\x89\x5C\x24\x00\x48\x89\x74\x24\x00\x57\x48\x83\xEC\x20\x48\x8B\xD9\x41\x8B\xF0\x48\x8B\x49\x30\x48\x8B\xFA\xE8\x00\x00\x00\x00\xBA\x00\x00\x00\x00\x48\x8B\xC8"), xorstr("xxxx?xxxx?xxxxxxxxxxxxxxxxxxx????x????xxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find GetViewPoint."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
DISCORD.HookFunction((uintptr_t)addr, (uintptr_t)GetViewPointHook, (uintptr_t)&GetViewPoint);
//CalculateSpread
addr = Util::FindPattern(xorstr("\x83\x79\x78\x00\x4C\x8B\xC9\x75\x0F\x0F\x57\xC0\xC7\x02\x00\x00\x00\x00\xF3\x41\x0F\x11\x00\xC3\x48\x8B\x41\x70\x8B\x48\x04\x89\x0A\x49\x63\x41\x78\x48\x6B\xC8\x1C\x49\x8B\x41\x70\xF3\x0F\x10\x44\x01\x00\xF3\x41\x0F\x11\x00\xC3"), xorstr("xxxxxxxxxxxxxx????xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx?xxxxxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed To find CalculateSpread."), xorstr(L"github.com/visual9999"), MB_OK | MB_ICONERROR);
return FALSE;
}
DISCORD.HookFunction((uintptr_t)addr, (uintptr_t)CalculateSpreadHook, (uintptr_t)&CalculateSpread);
}
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/menu/menu.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include "../../Header Files/menu/menu.h"
#include "../../Header Files/includes.h"
#include "../../Header Files/Config/config.h"
#include "../../DiscordHook/Discord.h"
#include "../../Helper/Helper.h"
#include "../../Header Files/xorstr.h"
#include "../../imgui/imgui_xorstr.h"
#include <iostream>
ID3D11Device* device = nullptr;
ID3D11DeviceContext* immediateContext = nullptr;
ID3D11RenderTargetView* renderTargetView = nullptr;
HRESULT(*PresentOriginal)(IDXGISwapChain* swapChain, UINT syncInterval, UINT flags) = nullptr;
HRESULT(*ResizeOriginal)(IDXGISwapChain* swapChain, UINT bufferCount, UINT width, UINT height, DXGI_FORMAT newFormat, UINT swapChainFlags) = nullptr;
WNDPROC oWndProc;
extern LRESULT ImGui_ImplWin32_WndProcHandler(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam);
static bool ShowMenu = true;
void ToggleButton(const char* str_id, bool* v)
{
ImVec2 p = ImGui::GetCursorScreenPos();
ImDrawList* draw_list = ImGui::GetWindowDrawList();
float height = 16.0f;
float width = height * 1.60f;
float radius = height * 0.50f;
ImGui::InvisibleButton(str_id, ImVec2(width, height));
if (ImGui::IsItemClicked())
*v = !*v;
float t = *v ? 1.0f : 0.0f;
ImGuiContext& g = *GImGui;
float ANIM_SPEED = 0.20f;
if (g.LastActiveId == g.CurrentWindow->GetID(str_id))
{
float t_anim = ImSaturate(g.LastActiveIdTimer / ANIM_SPEED);
t = *v ? (t_anim) : (1.0f - t_anim);
}
ImU32 col_bg;
if (ImGui::IsItemHovered())
col_bg = ImGui::GetColorU32(ImLerp(ImVec4(0.0f, 0.0f, 0.80f, 1.0f), ImVec4(0.0f, 0.0f, 0.80f, 1.0f), t));
else
col_bg = ImGui::GetColorU32(ImLerp(ImVec4(0.85f, 0.0f, 0.0f, 1.0f), ImVec4(0.0f, 0.85f, 0.0f, 1.0f), t));
draw_list->AddRectFilled(p, ImVec2(p.x + width, p.y + height), col_bg, height * 0.5f);
draw_list->AddCircleFilled(ImVec2(p.x + radius + t * (width - radius * 2.0f), p.y + radius), radius + 0.80f, IM_COL32(255, 255, 255, 255));
}
VOID AddMarker(ImGuiWindow& window, float width, float height, float* start, PVOID pawn, LPCSTR text, ImU32 color) {
auto root = Util::GetPawnRootLocation(pawn);
if (root) {
auto pos = *root;
float dx = start[0] - pos.X;
float dy = start[1] - pos.Y;
float dz = start[2] - pos.Z;
if (Util::WorldToScreen(width, height, &pos.X)) {
float dist = Util::SpoofCall(sqrtf, dx * dx + dy * dy + dz * dz) / 1000.0f;
CHAR modified[0xFF] = { 0 };
snprintf(modified, sizeof(modified), xorstr("%s\n| %dm |"), text, static_cast<INT>(dist));
auto size = ImGui::GetFont()->CalcTextSizeA(window.DrawList->_Data->FontSize, FLT_MAX, 0, modified);
window.DrawList->AddText(ImVec2(pos.X - size.x / 2.0f, pos.Y - size.y / 2.0f), color, modified);
}
}
}
FLOAT GetDistance(ImGuiWindow& window, float width, float height, float* start, PVOID pawn) {
auto root = Util::GetPawnRootLocation(pawn);
float dist;
if (root) {
auto pos = *root;
float dx = start[0] - pos.X;
float dy = start[1] - pos.Y;
float dz = start[2] - pos.Z;
if (Util::WorldToScreen(width, height, &pos.X)) {
dist = Util::SpoofCall(sqrtf, dx * dx + dy * dy + dz * dz) / 1000.0f;
return dist;
}
}
}
__declspec(dllexport) LRESULT CALLBACK WndProcHook(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) {
if (msg == WM_KEYUP && (wParam == config_system.keybind.Menu || (ShowMenu && wParam == VK_ESCAPE))) {
ShowMenu = !ShowMenu;
ImGui::GetIO().MouseDrawCursor = ShowMenu;
}
else if (msg == WM_QUIT && ShowMenu) {
ExitProcess(0);
}
if (ShowMenu) {
ImGui_ImplWin32_WndProcHandler(hWnd, msg, wParam, lParam);
return TRUE;
}
return CallWindowProc(oWndProc, hWnd, msg, wParam, lParam);
}
extern uint64_t base_address = 0;
DWORD processID;
const ImVec4 color = { 255.0,255.0,255.0,1 };
const ImVec4 red = { 0.65,0,0,1 };
const ImVec4 white = { 255.0,255.0,255.0,1 };
const ImVec4 green = { 0.03,0.81,0.14,1 };
const ImVec4 blue = { 0.21960784313,0.56470588235,0.90980392156,1.0 };
ImGuiWindow& BeginScene() {
ImGui_ImplDX11_NewFrame();
ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0);
ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0, 0));
ImGui::PushStyleColor(ImGuiCol_WindowBg, ImVec4(0, 0, 0, 0));
ImGui::Begin(xorstr("##scene"), nullptr, ImGuiWindowFlags_NoInputs | ImGuiWindowFlags_NoTitleBar);
auto& io = ImGui::GetIO();
ImGui::SetWindowPos(ImVec2(0, 0), ImGuiCond_Always);
ImGui::SetWindowSize(ImVec2(io.DisplaySize.x, io.DisplaySize.y), ImGuiCond_Always);
return *ImGui::GetCurrentWindow();
}
char streamsnipena[256] = "Username";
VOID EndScene(ImGuiWindow& window) {
window.DrawList->PushClipRectFullScreen();
ImGui::End();
ImGui::PopStyleColor();
ImGui::PopStyleVar(2);
ImGui::PushStyleColor(ImGuiCol_WindowBg, ImVec4(0.17f, 0.18f, 0.2f, 1.0f));
if (ShowMenu) {
ImVec4* colors = ImGui::GetStyle().Colors;
colors[ImGuiCol_Text] = ImVec4(1.00f, 1.00f, 1.00f, 1.00f);
colors[ImGuiCol_TextDisabled] = ImVec4(0.50f, 0.50f, 0.50f, 1.00f);
colors[ImGuiCol_WindowBg] = ImVec4(0.06f, 0.06f, 0.06f, 1.0f);
colors[ImGuiCol_ChildBg] = ImVec4(0.00f, 0.00f, 0.00f, 0.00f);
colors[ImGuiCol_PopupBg] = ImVec4(0.08f, 0.08f, 0.08f, 0.94f);
colors[ImGuiCol_Border] = ImVec4(1.00f, 0.00f, 0.00f, 0.50f);
colors[ImGuiCol_BorderShadow] = ImVec4(0.00f, 0.00f, 0.00f, 0.00f);
colors[ImGuiCol_FrameBg] = ImVec4(0.41f, 0.00f, 0.03f, 0.54f);
colors[ImGuiCol_FrameBgHovered] = ImVec4(0.48f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_FrameBgActive] = ImVec4(0.26f, 0.59f, 0.98f, 0.67f);
colors[ImGuiCol_TitleBg] = ImVec4(0.04f, 0.04f, 0.04f, 1.00f);
colors[ImGuiCol_TitleBgActive] = ImVec4(0.04f, 0.04f, 0.04f, 1.00f);
colors[ImGuiCol_TitleBgCollapsed] = ImVec4(0.00f, 0.00f, 0.00f, 0.51f);
colors[ImGuiCol_MenuBarBg] = ImVec4(0.14f, 0.14f, 0.14f, 1.00f);
colors[ImGuiCol_ScrollbarBg] = ImVec4(0.02f, 0.02f, 0.02f, 0.53f);
colors[ImGuiCol_ScrollbarGrab] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_ScrollbarGrabHovered] = ImVec4(1.00f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_ScrollbarGrabActive] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_CheckMark] = ImVec4(0.75f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_SliderGrab] = ImVec4(1.00f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_SliderGrabActive] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_Button] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_ButtonHovered] = ImVec4(1.00f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_ButtonActive] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_Header] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_HeaderHovered] = ImVec4(1.00f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_HeaderActive] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_Separator] = ImVec4(0.43f, 0.43f, 0.50f, 0.50f);
colors[ImGuiCol_SeparatorHovered] = ImVec4(0.10f, 0.40f, 0.75f, 0.78f);
colors[ImGuiCol_SeparatorActive] = ImVec4(0.10f, 0.40f, 0.75f, 1.00f);
colors[ImGuiCol_ResizeGrip] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_ResizeGripHovered] = ImVec4(1.00f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_ResizeGripActive] = ImVec4(0.46f, 0.00f, 0.00f, 1.00f);
colors[ImGuiCol_PlotLines] = ImVec4(0.61f, 0.61f, 0.61f, 1.00f);
colors[ImGuiCol_PlotLinesHovered] = ImVec4(1.00f, 0.43f, 0.35f, 1.00f);
colors[ImGuiCol_PlotHistogram] = ImVec4(0.90f, 0.70f, 0.00f, 1.00f);
colors[ImGuiCol_PlotHistogramHovered] = ImVec4(1.00f, 0.60f, 0.00f, 1.00f);
colors[ImGuiCol_TextSelectedBg] = ImVec4(0.26f, 0.59f, 0.98f, 0.35f);
colors[ImGuiCol_DragDropTarget] = ImVec4(1.00f, 1.00f, 0.00f, 0.90f);
ImGui::GetStyle().WindowTitleAlign = ImVec2(0.5, 0.5);
ImGui::GetStyle().FramePadding = ImVec2(4.0, 2.0);
ImGui::GetStyle().WindowRounding = 0;
ImGui::GetStyle().GrabMinSize = 12;
ImGui::GetStyle().ScrollbarSize = 14;
ImGui::GetStyle().ScrollbarRounding = 0;
ImGui::GetStyle().FrameRounding = 4.0f;
ImGui::Begin(xorstr("github.com/Visual9999"), 0, ImGuiWindowFlags_NoCollapse | ImGuiWindowFlags_NoResize); {
ImGui::SetWindowSize(ImVec2(550, 450), ImGuiCond_FirstUseEver);
ImVec2 size = ImGui::GetItemRectSize();
if (ImGui::CollapsingHeader(xorstr("Aimbot")))
{
ImGui::Text(xorstr("Memory"));
ToggleButton(xorstr("Memory"), &config_system.item.Aimbot);
ImGui::Text(xorstr("Silent Aimbot"));
ToggleButton(xorstr("Silent"), &config_system.item.SilentAimbot);
ImGui::Text(xorstr("Trigger Aimbot"));
ToggleButton(xorstr("Trigger"), &config_system.item.TriggerAimbot);
const char* Points[] = { " Head", " Chest", " Pelvis" };
static int AimPoint = 0;
ImGui::Combo(xorstr("Aim Point"), &AimPoint, Points, IM_ARRAYSIZE(Points));
config_system.item.AimPoint = AimPoint;
if (config_system.item.AutoAimbot) {
config_system.item.AutoAimbot = 2000.0f;
}
ImGui::Text(xorstr("Fov"));
ToggleButton(xorstr("Fov"), &config_system.item.DrawAimbotFOV);
if (config_system.item.DrawAimbotFOV)
{
ImGui::Text(xorstr("Filled FOV"));
ToggleButton(xorstr("Filled"), &config_system.item.DrawFilledAimbotFOV);
}
ImGui::SliderFloat(xorstr("Circle FOV"), &config_system.item.AimbotFOV, 100.0f, 1000.0f);
}
if (ImGui::CollapsingHeader(xorstr("Misc")))
{
ImGui::Text(xorstr("Spin Bot [CAPSLOCK]"));
ToggleButton(xorstr("Spin"), &config_system.item.SpinBot);
ImGui::Text(xorstr("NoSpread"));
ToggleButton(xorstr("NoSpread"), &config_system.item.NoSpreadAimbot);
ImGui::Text(xorstr("Camera FOV"));
ToggleButton(xorstr("Camera"), &config_system.item.FOVSlider);
if (config_system.item.FOVSlider)
{
ImGui::SliderFloat(xorstr("Camera FOV Slider"), &config_system.item.FOV, 0.0f, 150.0f, xorstr("%.2f"));
}
ImGui::Text(xorstr("Stream Snipe Player Name"));
ImGui::InputText(xorstr(" "), streamsnipena, 256, ImGuiInputTextFlags_EnterReturnsTrue);
}
if (ImGui::CollapsingHeader(xorstr("ESP")))
{
ImGui::Text(xorstr("Chest ESP"));
ToggleButton(xorstr("Chest"), &config_system.item.Chest);
ImGui::Text(xorstr("Llama ESP"));
ToggleButton(xorstr("Llama"), &config_system.item.Llama);
ImGui::Text(xorstr("Ammo ESP"));
ToggleButton(xorstr("Ammo"), &config_system.item.Ammo);
ImGui::Text(xorstr("Boat ESP"));
ToggleButton(xorstr("Boat"), &config_system.item.boat);
ImGui::Text(xorstr("Chopper ESP"));
ToggleButton(xorstr("Chopper"), &config_system.item.chopper);
ImGui::Text(xorstr("Player Names ESP"));
ToggleButton(xorstr("Names"), &config_system.item.PlayerNames);
ImGui::Text(xorstr("Box ESP"));
ToggleButton(xorstr("BOX"), &config_system.item.PlayerBox);
ImGui::Text(xorstr("Player Lines"));
ToggleButton(xorstr("Lines"), &config_system.item.PlayerLines);
ImGui::Text(xorstr("Players Corner"));
ToggleButton(xorstr("Corner"), &config_system.item.PlayersCorner);
}
if (ImGui::CollapsingHeader(xorstr("Colors")))
{
ImGui::PushItemWidth(100.0f);
ImGui::Text(xorstr("ESP"));
ImGui::SameLine();
ImGui::ColorPicker3(xorstr("Box"), config_system.item.BoxESP, ImGuiColorEditFlags_NoInputs);
ImGui::SameLine();
ImGui::ColorPicker3(xorstr("Lines"), config_system.item.LineESP, ImGuiColorEditFlags_NoInputs);
ImGui::SameLine();
ImGui::ColorPicker3(xorstr("Aim\nFOV"), config_system.item.FOVCircleColor, ImGuiColorEditFlags_NoInputs);
ImGui::Text(xorstr("Skeleton ESP"));
ImGui::ColorPicker3(xorstr("Is\nVisible"), config_system.item.PlayerVisibleColor, ImGuiColorEditFlags_NoInputs);
ImGui::SameLine();
ImGui::ColorPicker3(xorstr("Not\nVisible"), config_system.item.PlayerNotVisibleColor, ImGuiColorEditFlags_NoInputs);
ImGui::SameLine();
ImGui::ColorPicker3(xorstr("Teammates"), config_system.item.PlayerTeammate, ImGuiColorEditFlags_NoInputs);
}
}
ImGui::End();
}
ImGui::PopStyleColor();
ImGui::Render();
}
VOID AddLine(ImGuiWindow& window, float width, float height, float a[3], float b[3], ImU32 color, float& minX, float& maxX, float& minY, float& maxY) {
float ac[3] = { a[0], a[1], a[2] };
float bc[3] = { b[0], b[1], b[2] };
if (Util::WorldToScreen(width, height, ac) && Util::WorldToScreen(width, height, bc)) {
window.DrawList->AddLine(ImVec2(ac[0], ac[1]), ImVec2(bc[0], bc[1]), color, 2.0f);
minX = min(ac[0], minX);
minX = min(bc[0], minX);
maxX = max(ac[0], maxX);
maxX = max(bc[0], maxX);
minY = min(ac[1], minY);
minY = min(bc[1], minY);
maxY = max(ac[1], maxY);
maxY = max(bc[1], maxY);
}
}
__declspec(dllexport) HRESULT PresentHook(IDXGISwapChain* swapChain, UINT syncInterval, UINT flags) {
static float width = 0;
static float height = 0;
static HWND hWnd = 0;
if (!device) {
swapChain->GetDevice(__uuidof(device), reinterpret_cast<PVOID*>(&device));
device->GetImmediateContext(&immediateContext);
ID3D11Texture2D* renderTarget = nullptr;
swapChain->GetBuffer(0, __uuidof(renderTarget), reinterpret_cast<PVOID*>(&renderTarget));
device->CreateRenderTargetView(renderTarget, nullptr, &renderTargetView);
renderTarget->Release();
ID3D11Texture2D* backBuffer = 0;
swapChain->GetBuffer(0, __uuidof(ID3D11Texture2D), (PVOID*)&backBuffer);
D3D11_TEXTURE2D_DESC backBufferDesc = { 0 };
backBuffer->GetDesc(&backBufferDesc);
hWnd = FindWindow(xorstr(L"UnrealWindow"), xorstr(L"Fortnite "));
if (!width) {
oWndProc = reinterpret_cast<WNDPROC>(SetWindowLongPtr(hWnd, GWLP_WNDPROC, reinterpret_cast<LONG_PTR>(WndProcHook)));
}
width = (float)backBufferDesc.Width;
height = (float)backBufferDesc.Height;
backBuffer->Release();
ImGui::GetIO().Fonts->AddFontFromFileTTF(xorstr("C:\\Windows\\Fonts\\trebucbd.ttf"), 13.0f); //your font here
ImGui_ImplDX11_Init(hWnd, device, immediateContext);
ImGui_ImplDX11_CreateDeviceObjects();
}
immediateContext->OMSetRenderTargets(1, &renderTargetView, nullptr);
////// reading
auto& window = BeginScene();
////// readin
auto success = FALSE;
do {
float closestDistance = FLT_MAX;
PVOID closestPawn = NULL;
auto world = *Offsets::uWorld;
if (!world) break;
auto gameInstance = ReadPointer(world, Offsets::Engine::World::OwningGameInstance);
if (!gameInstance) break;
auto localPlayers = ReadPointer(gameInstance, Offsets::Engine::GameInstance::LocalPlayers);
if (!localPlayers) break;
auto localPlayer = ReadPointer(localPlayers, 0);
if (!localPlayer) break;
auto localPlayerController = ReadPointer(localPlayer, Offsets::Engine::Player::PlayerController);
if (!localPlayerController) break;
auto localPlayerPawn = reinterpret_cast<UObject*>(ReadPointer(localPlayerController, Offsets::Engine::PlayerController::AcknowledgedPawn));
if (!localPlayerPawn) break;
auto localPlayerWeapon = ReadPointer(localPlayerPawn, Offsets::FortniteGame::FortPawn::CurrentWeapon);
if (!localPlayerWeapon) break;
auto localPlayerRoot = ReadPointer(localPlayerPawn, Offsets::Engine::Actor::RootComponent);
if (!localPlayerRoot) break;
auto localPlayerState = ReadPointer(localPlayerPawn, Offsets::Engine::Pawn::PlayerState);
if (!localPlayerState) break;
auto localPlayerLocation = reinterpret_cast<float*>(reinterpret_cast<PBYTE>(localPlayerRoot) + Offsets::Engine::SceneComponent::RelativeLocation);
auto localPlayerTeamIndex = ReadDWORD(localPlayerState, Offsets::FortniteGame::FortPlayerStateAthena::TeamIndex);
auto weaponName = Util::GetObjectFirstName((UObject*)localPlayerWeapon);
auto isProjectileWeapon = wcsstr(weaponName.c_str(), xorstr(L"Rifle_Sniper"));
Core::LocalPlayerPawn = localPlayerPawn;
Core::LocalPlayerController = localPlayerController;
std::vector<PVOID> playerPawns;
for (auto li = 0UL; li < ReadDWORD(world, Offsets::Engine::World::Levels + sizeof(PVOID)); ++li) {
auto levels = ReadPointer(world, 0x138); //keks
if (!levels) break;
auto level = ReadPointer(levels, li * sizeof(PVOID));
if (!level) continue;
for (auto ai = 0UL; ai < ReadDWORD(level, Offsets::Engine::Level::AActors + sizeof(PVOID)); ++ai) {
auto actors = ReadPointer(level, Offsets::Engine::Level::AActors);
if (!actors) break;
auto pawn = reinterpret_cast<UObject*>(ReadPointer(actors, ai * sizeof(PVOID)));
if (!pawn || pawn == localPlayerPawn) continue;
auto name = Util::GetObjectFirstName(pawn);
if (wcsstr(name.c_str(), xorstr(L"PlayerPawn_Athena_C")) || wcsstr(name.c_str(), xorstr(L"PlayerPawn_Athena_Phoebe_C")) || wcsstr(name.c_str(), xorstr(L"BP_MangPlayerPawn")) || wcsstr(name.c_str(), xorstr(L"HoagieVehicle_C"))) {
playerPawns.push_back(pawn);
}
else if (config_system.item.Llama && wcsstr(name.c_str(), xorstr(L"AthenaSupplyDrop_Llama"))) {
AddMarker(window, width, height, localPlayerLocation, pawn, xorstr("Llama"), ImGui::GetColorU32({ 0.03f, 0.78f, 0.91f, 1.0f }));
}
if (config_system.item.Chest && wcsstr(name.c_str(), xorstr(L"Tiered_Chest")) && !((ReadBYTE(pawn, Offsets::FortniteGame::BuildingContainer::bAlreadySearched) >> 7) & 1)) {
AddMarker(window, width, height, localPlayerLocation, pawn, xorstr("Chest"), ImGui::GetColorU32({ 255,255,0,255 }));
}
else if (config_system.item.Ammo && wcsstr(name.c_str(), xorstr(L"Tiered_Ammo")) && !((ReadBYTE(pawn, Offsets::FortniteGame::BuildingContainer::bAlreadySearched) >> 7) & 1)) {
AddMarker(window, width, height, localPlayerLocation, pawn, xorstr("Ammo Box"), ImGui::GetColorU32({ 0.75f, 0.75f, 0.75f, 1.0f }));
}
else if (config_system.item.chopper && wcsstr(name.c_str(), xorstr(L"HoagieVehicle_C"))) {
AddMarker(window, width, height, localPlayerLocation, pawn, xorstr("Chopper"), ImGui::GetColorU32({ 1.0f, 0.0f, 0.0f, 1.0f }));
}
else if (config_system.item.boat && wcsstr(name.c_str(), xorstr(L"MeatballVehicle_L"))) {
AddMarker(window, width, height, localPlayerLocation, pawn, xorstr("Boat"), ImGui::GetColorU32({ 1.0f, 0.0f, 0.0f, 1.0f }));
}
}
}
float CurrentAimPointer[3] = { 0 };
float AimPointer;
if (config_system.item.AimPoint == 0) {
AimPointer = BONE_HEAD_ID;
}
else if (config_system.item.AimPoint == 1) {
AimPointer = BONE_NECK_ID;
}
else if (config_system.item.AimPoint == 2) {
AimPointer = BONE_CHEST_ID;
}
else if (config_system.item.AimPoint == 3) {
AimPointer = BONE_PELVIS_ID;
}
else if (config_system.item.AimPoint == 4) {
AimPointer = BONE_RIGHTELBOW_ID;
}
else if (config_system.item.AimPoint == 5) {
AimPointer = BONE_LEFTELBOW_ID;
}
else if (config_system.item.AimPoint == 6) {
AimPointer = BONE_RIGHTTHIGH_ID;
}
else if (config_system.item.AimPoint == 7) {
AimPointer = BONE_LEFTTHIGH_ID;
}
else if (config_system.item.AimPoint == 8) { // automatic
}
for (auto pawn : playerPawns)
{
auto state = ReadPointer(pawn, Offsets::Engine::Pawn::PlayerState);
if (!state) continue;
auto mesh = ReadPointer(pawn, Offsets::Engine::Character::Mesh);
if (!mesh) continue;
auto bones = ReadPointer(mesh, Offsets::Engine::StaticMeshComponent::StaticMesh);
if (!bones) bones = ReadPointer(mesh, Offsets::Engine::StaticMeshComponent::StaticMesh + 0x10);
if (!bones) continue;
float compMatrix[4][4] = { 0 };
Util::ToMatrixWithScale(reinterpret_cast<float*>(reinterpret_cast<PBYTE>(mesh) + 0x1C0), compMatrix);
// Top
float head[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 66, head);
float neck[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 65, neck);
float chest[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 36, chest);
float pelvis[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 2, pelvis);
// Arms
float leftShoulder[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 9, leftShoulder);
float rightShoulder[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 62, rightShoulder);
float leftElbow[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 10, leftElbow);
float rightElbow[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 38, rightElbow);
float leftHand[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 11, leftHand);
float rightHand[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 39, rightHand);
// Legs
float leftLeg[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 67, leftLeg);
float rightLeg[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 74, rightLeg);
float leftThigh[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 73, leftThigh);
float rightThigh[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 80, rightThigh);
float leftFoot[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 68, leftFoot);
float rightFoot[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 75, rightFoot);
float leftFeet[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 71, leftFeet);
float rightFeet[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 78, rightFeet);
float leftFeetFinger[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 72, leftFeetFinger);
float rightFeetFinger[3] = { 0 };
Util::GetBoneLocation(compMatrix, bones, 79, rightFeetFinger);
Util::GetBoneLocation(compMatrix, bones, AimPointer, CurrentAimPointer);
auto color = ImGui::GetColorU32({ config_system.item.PlayerNotVisibleColor[0], config_system.item.PlayerNotVisibleColor[1], config_system.item.PlayerNotVisibleColor[2], 1.0f });
FVector viewPoint = { 0 };
if (ReadDWORD(state, 0xE60) == localPlayerTeamIndex) {
color = ImGui::GetColorU32({ config_system.item.PlayerTeammate[0], config_system.item.PlayerTeammate[1], config_system.item.PlayerTeammate[2], 1.0f });
}
else if (!config_system.item.CheckVisible) {
auto w2s = *reinterpret_cast<FVector*>(CurrentAimPointer);
if (Util::WorldToScreen(width, height, &w2s.X)) {
auto dx = w2s.X - (width / 2);
auto dy = w2s.Y - (height / 2);
auto dist = Util::SpoofCall(sqrtf, dx * dx + dy * dy);
if (dist < config_system.item.AimbotFOV && dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
}
}
else if ((ReadBYTE(pawn, Offsets::FortniteGame::FortPawn::bIsDBNO) & 1) && (isProjectileWeapon || Util::LineOfSightTo(localPlayerController, pawn, &viewPoint))) {
color = ImGui::GetColorU32({ config_system.item.PlayerVisibleColor[0], config_system.item.PlayerVisibleColor[1], config_system.item.PlayerVisibleColor[2], 1.0f });
if (config_system.item.AutoAimbot) {
if (config_system.item.AimPoint = 8) {
Util::GetBoneLocation(compMatrix, bones, BONE_HEAD_ID, CurrentAimPointer);
auto dx = CurrentAimPointer[0] - localPlayerLocation[0];
auto dy = CurrentAimPointer[1] - localPlayerLocation[1];
auto dz = CurrentAimPointer[2] - localPlayerLocation[2];
auto dist = dx * dx + dy * dy + dz * dz;
if (dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
else {
Util::GetBoneLocation(compMatrix, bones, BONE_NECK_ID, CurrentAimPointer);
auto dx = CurrentAimPointer[0] - localPlayerLocation[0];
auto dy = CurrentAimPointer[1] - localPlayerLocation[1];
auto dz = CurrentAimPointer[2] - localPlayerLocation[2];
auto dist = dx * dx + dy * dy + dz * dz;
if (dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
else {
Util::GetBoneLocation(compMatrix, bones, BONE_CHEST_ID, CurrentAimPointer);
auto dx = CurrentAimPointer[0] - localPlayerLocation[0];
auto dy = CurrentAimPointer[1] - localPlayerLocation[1];
auto dz = CurrentAimPointer[2] - localPlayerLocation[2];
auto dist = dx * dx + dy * dy + dz * dz;
if (dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
else {
Util::GetBoneLocation(compMatrix, bones, BONE_PELVIS_ID, CurrentAimPointer);
auto dx = CurrentAimPointer[0] - localPlayerLocation[0];
auto dy = CurrentAimPointer[1] - localPlayerLocation[1];
auto dz = CurrentAimPointer[2] - localPlayerLocation[2];
auto dist = dx * dx + dy * dy + dz * dz;
if (dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
}
}
}
}
else {
auto dx = CurrentAimPointer[0] - localPlayerLocation[0];
auto dy = CurrentAimPointer[1] - localPlayerLocation[1];
auto dz = CurrentAimPointer[2] - localPlayerLocation[2];
auto dist = dx * dx + dy * dy + dz * dz;
if (dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
}
}
else
{
auto w2s = *reinterpret_cast<FVector*>(CurrentAimPointer);
if (Util::WorldToScreen(width, height, &w2s.X)) {
auto dx = w2s.X - (width / 2);
auto dy = w2s.Y - (height / 2);
auto dist = Util::SpoofCall(sqrtf, dx * dx + dy * dy);
if (dist < config_system.item.AimbotFOV && dist < closestDistance) {
closestDistance = dist;
closestPawn = pawn;
}
}
}
}
//if (!config_system.item.Players) continue;
if (config_system.item.PlayerLines) {
auto end = *reinterpret_cast<FVector*>(CurrentAimPointer);
if (Util::WorldToScreen(width, height, &end.X)) {
if (ReadDWORD(state, 0xE60) != localPlayerTeamIndex) {
if (config_system.item.LineESP) {
window.DrawList->AddLine(ImVec2(width / 2, height / 2), ImVec2(end.X, end.Y), ImGui::GetColorU32({ config_system.item.LineESP[0], config_system.item.LineESP[1], config_system.item.LineESP[2], 1.0f }));
}
}
}
}
float minX = FLT_MAX;
float maxX = -FLT_MAX;
float minY = FLT_MAX;
float maxY = -FLT_MAX;
if (config_system.item.Players) {
AddLine(window, width, height, head, neck, color, minX, maxX, minY, maxY);
AddLine(window, width, height, neck, pelvis, color, minX, maxX, minY, maxY);
AddLine(window, width, height, chest, leftShoulder, color, minX, maxX, minY, maxY);
AddLine(window, width, height, chest, rightShoulder, color, minX, maxX, minY, maxY);
AddLine(window, width, height, leftShoulder, leftElbow, color, minX, maxX, minY, maxY);
AddLine(window, width, height, rightShoulder, rightElbow, color, minX, maxX, minY, maxY);
AddLine(window, width, height, leftElbow, leftHand, color, minX, maxX, minY, maxY);
AddLine(window, width, height, rightElbow, rightHand, color, minX, maxX, minY, maxY);
AddLine(window, width, height, pelvis, leftLeg, color, minX, maxX, minY, maxY);
AddLine(window, width, height, pelvis, rightLeg, color, minX, maxX, minY, maxY);
AddLine(window, width, height, leftLeg, leftThigh, color, minX, maxX, minY, maxY);
AddLine(window, width, height, rightLeg, rightThigh, color, minX, maxX, minY, maxY);
AddLine(window, width, height, leftThigh, leftFoot, color, minX, maxX, minY, maxY);
AddLine(window, width, height, rightThigh, rightFoot, color, minX, maxX, minY, maxY);
AddLine(window, width, height, leftFoot, leftFeet, color, minX, maxX, minY, maxY);
AddLine(window, width, height, rightFoot, rightFeet, color, minX, maxX, minY, maxY);
AddLine(window, width, height, leftFeet, leftFeetFinger, color, minX, maxX, minY, maxY);
AddLine(window, width, height, rightFeet, rightFeetFinger, color, minX, maxX, minY, maxY);
}
/*float dist;
if (dist >= 100)
dist = 75;*/
if (minX < width && maxX > 0 && minY < height && maxY > 0) {
//ALL CORRECT
auto topLeft = ImVec2(minX - 3.0f, minY - 3.0f);
auto bottomRight = ImVec2(maxX + 3.0f, maxY);
auto topRight = ImVec2(maxX + 3.0f, minY - 3.0f);
auto bottomLeft = ImVec2(minX - 3.0f, maxY);
if (config_system.item.PlayerBox) {
window.DrawList->AddRectFilled(topLeft, bottomRight, ImGui::GetColorU32({ 0.0f, 0.0f, 0.0f, 0.70f }));
window.DrawList->AddRect(topLeft, bottomRight, color, 0.2, 0, 0.1f);
}
else if (config_system.item.PlayersCorner) {
auto bottomRightLEFT = ImVec2(maxX - 7.f + 75, maxY + 2.5f);
auto bottomRightUP = ImVec2(maxX + 3.0f, maxY - 7.f + 75);
auto topRight = ImVec2(maxX + 3.0f, minY - 3.0f);
auto topRightLEFT = ImVec2(maxX - 7.f + 75, minY - 3.0f);
auto topRightDOWN = ImVec2(maxX + 3.0f, minY + 7.f - 75);
auto bottomLeft = ImVec2(minX - 3.0f, maxY + 3.f);
auto bottomLeftRIGHT = ImVec2(minX + 7.f - 75, maxY + 3.f);
auto bottomLeftUP = ImVec2(minX - 3.0f, maxY - 7.f + 75);
auto topLeftRIGHT = ImVec2(minX + 7.f - 75, minY - 3.0f);
auto topLeftDOWN = ImVec2(minX - 3.0f, minY + 7.f - 75);
window.DrawList->AddRectFilled(topLeft, bottomRight, ImGui::GetColorU32({ 0.0f, 0.0f, 0.0f, 0.70f }));
ImU32 kek = ImGui::GetColorU32({ ImGui::GetColorU32({ 1.f, 0.f, 0.f, 1.0f }) });
window.DrawList->AddLine(topLeft, topLeftRIGHT, color, 1.00f);
window.DrawList->AddLine(topLeft, topLeftDOWN, color, 1.00f);
window.DrawList->AddLine(bottomRight, bottomRightLEFT, color, 1.5f);
window.DrawList->AddLine(bottomRight, bottomRightUP, color, 1.5f);
window.DrawList->AddLine(topRight, topRightLEFT, color, 1.5f);
window.DrawList->AddLine(topRight, topRightDOWN, color, 1.5f);
window.DrawList->AddLine(bottomLeft, bottomLeftRIGHT, color, 1.5f);
window.DrawList->AddLine(bottomLeft, bottomLeftUP, color, 1.5f);
}
if (config_system.item.PlayerNames) {
FString playerName;
Core::ProcessEvent(state, Offsets::Engine::PlayerState::GetPlayerName, &playerName, 0);
if (playerName.c_str()) {
CHAR copy[0xFF] = { 0 };
auto w2s = *reinterpret_cast<FVector*>(head);
float dist;
if (Util::WorldToScreen(width, height, &w2s.X)) {
auto dx = w2s.X;
auto dy = w2s.Y;
auto dz = w2s.Z;
dist = Util::SpoofCall(sqrtf, dx * dx + dy * dy + dz * dz) / 100.0f;
}
CHAR lel[0xFF] = { 0 };
wcstombs(lel, playerName.c_str(), sizeof(lel));
Util::FreeInternal(playerName.c_str());
snprintf(copy, sizeof(copy), xorstr("%s [%dm]"), lel, static_cast<INT>(dist));
auto centerTop = ImVec2((topLeft.x + bottomRight.x) / 2.0f, topLeft.y);
auto size = ImGui::GetFont()->CalcTextSizeA(window.DrawList->_Data->FontSize, FLT_MAX, 0, copy);
// window.DrawList->AddRectFilled(ImVec2(centerTop.x - size.x / 2.0f, centerTop.y - size.y + 3.0f), ImVec2(centerTop.x + size.x / 2.0f, centerTop.y), ImGui::GetColorU32({ 0.0f, 0.0f, 0.0f, 0.4f }));
ImVec2 kek = ImVec2(centerTop.x - size.x / 2.0f + 10, centerTop.y - size.y);
// window.DrawList->AddRectFilled(kek, ImVec2(centerTop.y - size.y), ImGui::GetColorU32({ 0.0f, 0.0f, 0.0f, 0.20f }));
std::string jsj = copy;
if (jsj.find(streamsnipena) != std::string::npos) {
window.DrawList->AddText(ImVec2(centerTop.x - size.x / 2.0f + 10, centerTop.y - size.y), ImGui::GetColorU32({ 1.0f, 0.0f, 1.0f, 1.0f }), copy);
}
else
{
window.DrawList->AddText(ImVec2(centerTop.x - size.x / 2.0f + 10, centerTop.y - size.y), color, copy);
}
}
}
}
}
if (config_system.item.Aimbot && closestPawn && Util::SpoofCall(GetAsyncKeyState, config_system.keybind.AimbotLock) < 0 && Util::SpoofCall(GetForegroundWindow) == hWnd) {
Core::TargetPawn = closestPawn;
Core::NoSpread = TRUE;
if (config_system.item.Aimbot && config_system.item.AntiAim && Util::SpoofCall(GetAsyncKeyState, config_system.keybind.AntiAim)) {
int rnd = rand();
FRotator args = { 0 };
args.Yaw = rnd;
Core::ProcessEvent(Core::LocalPlayerController, Offsets::Engine::Controller::ClientSetRotation, &args, 0);
//mouse_event(000001, rnd, NULL, NULL, NULL); old anti aim
}
}
else {
Core::TargetPawn = nullptr;
Core::NoSpread = FALSE;
}
bool isSilent = config_system.item.SilentAimbot;
bool isRage = config_system.item.AutoAimbot;
if (config_system.item.SpinBot && Util::SpoofCall(GetAsyncKeyState, config_system.keybind.Spinbot) && Util::SpoofCall(GetForegroundWindow) == hWnd) {
int rnd = rand();
FRotator args = { 0 };
args.Yaw = rnd;
if (closestPawn) {
Core::TargetPawn = closestPawn;
Core::NoSpread = TRUE;
}
else {
Core::ProcessEvent(Core::LocalPlayerController, Offsets::Engine::Controller::ClientSetRotation, &args, 0);
}
config_system.item.AutoAimbot = true;
config_system.item.SilentAimbot = true;
}
else {
if (!isSilent) {
config_system.item.SilentAimbot = false;
}
if (!isRage) {
config_system.item.AutoAimbot = false;
}
if (config_system.item.SilentAimbot) {
isSilent = true;
}
if (config_system.item.AutoAimbot) {
isRage = true;
}
}
if (config_system.item.FlickAimbot && closestPawn && Util::SpoofCall(GetAsyncKeyState, config_system.keybind.AimbotShoot) < 0 && Util::SpoofCall(GetForegroundWindow) == hWnd) {
Core::TargetPawn = closestPawn;
Core::NoSpread = TRUE;
}
if (config_system.item.AutoAim && closestPawn && Util::SpoofCall(GetForegroundWindow) == hWnd) {
//mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0);
Core::TargetPawn = closestPawn;
Core::NoSpread = TRUE;
}
if (config_system.item.SpamAutoAim && closestPawn && Util::SpoofCall(GetForegroundWindow) == hWnd) {
mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0);
Core::TargetPawn = closestPawn;
Core::NoSpread = TRUE;
mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0);
Core::TargetPawn = nullptr;
Core::NoSpread = FALSE;
}
if (config_system.item.DrawAimbotFOV) {
window.DrawList->AddCircle(ImVec2(width / 2, height / 2), config_system.item.AimbotFOV, ImGui::GetColorU32({ config_system.item.FOVCircleColor[0], config_system.item.FOVCircleColor[1], config_system.item.FOVCircleColor[2], config_system.item.FOVCircleOpacity }), 128);
if (config_system.item.DrawFilledAimbotFOV) {
window.DrawList->AddCircleFilled(ImVec2(width / 2, height / 2), config_system.item.AimbotFOV, ImGui::GetColorU32({ 0.0f, 0.0f, 0.0f, config_system.item.FOVCircleFilledOpacity }), 128);
}
}
if (&config_system.item.CrosshairSize) {
//base crosshair
window.DrawList->AddLine(ImVec2(width / 2 + config_system.item.CrosshairSize, height / 2), ImVec2(width / 2 - config_system.item.CrosshairSize, height / 2), ImGui::GetColorU32({ config_system.item.FOVCircleColor[0], config_system.item.FOVCircleColor[1], config_system.item.FOVCircleColor[2], 1.0f }), config_system.item.CrosshairThickness);
window.DrawList->AddLine(ImVec2(width / 2, height / 2 + config_system.item.CrosshairSize), ImVec2(width / 2, height / 2 - config_system.item.CrosshairSize), ImGui::GetColorU32({ config_system.item.FOVCircleColor[0], config_system.item.FOVCircleColor[1], config_system.item.FOVCircleColor[2], 1.0f }), config_system.item.CrosshairThickness);
//fancy crosshair
window.DrawList->AddLine(ImVec2(width / 2 + config_system.item.CrosshairSize / 2, height / 2), ImVec2(width / 2 - config_system.item.CrosshairSize / 2, height / 2), ImGui::GetColorU32({ 1.0f, 0.0f, 0.0f, 1.0f }), config_system.item.CrosshairThickness);
window.DrawList->AddLine(ImVec2(width / 2, height / 2 + config_system.item.CrosshairSize / 2), ImVec2(width / 2, height / 2 - config_system.item.CrosshairSize / 2), ImGui::GetColorU32({ 1.0f, 0.0f, 1.0f, 0.0f }), config_system.item.CrosshairThickness);
}
success = TRUE;
} while (FALSE);
if (!success) {
Core::LocalPlayerController = Core::LocalPlayerPawn = Core::TargetPawn = nullptr;
}
EndScene(window);
return PresentOriginal(swapChain, syncInterval, flags);
}
__declspec(dllexport) HRESULT ResizeHook(IDXGISwapChain* swapChain, UINT bufferCount, UINT width, UINT height, DXGI_FORMAT newFormat, UINT swapChainFlags) {
ImGui_ImplDX11_Shutdown();
renderTargetView->Release();
immediateContext->Release();
device->Release();
device = nullptr;
return ResizeOriginal(swapChain, bufferCount, width, height, newFormat, swapChainFlags);
}
bool Render::Initialize() {
IDXGISwapChain* swapChain = nullptr;
ID3D11Device* device = nullptr;
ID3D11DeviceContext* context = nullptr;
auto featureLevel = D3D_FEATURE_LEVEL_11_0;
DXGI_SWAP_CHAIN_DESC sd = { 0 };
sd.BufferCount = 1;
sd.BufferDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM;
sd.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT;
sd.Flags = DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH;
sd.OutputWindow = FindWindow(xorstr(L"UnrealWindow"), xorstr(L"Fortnite "));
sd.SampleDesc.Count = 1;
sd.Windowed = TRUE;
if (FAILED(D3D11CreateDeviceAndSwapChain(nullptr, D3D_DRIVER_TYPE_HARDWARE, 0, 0, &featureLevel, 1, D3D11_SDK_VERSION, &sd, &swapChain, &device, nullptr, &context))) {
MessageBox(0, xorstr(L"Critical error have happened\nPlease contact an admin with the error code:\n0x0001b"), xorstr(L"Error"), MB_ICONERROR);
return FALSE;
}
auto table = *reinterpret_cast<PVOID**>(swapChain);
auto present = table[8];
auto resize = table[13];
context->Release();
device->Release();
swapChain->Release();
const auto pcall_present_discord = Helper::PatternScan(Discord::GetDiscordModuleBase(), xorstr("FF 15 ? ? ? ? 8B D8 E8 ? ? ? ? E8 ? ? ? ? EB 10"));
auto presentSceneAdress = Helper::PatternScan(Discord::GetDiscordModuleBase(),
xorstr("56 57 53 48 83 EC 30 44 89 C6"));
DISCORD.HookFunction(presentSceneAdress, (uintptr_t)PresentHook, (uintptr_t)&PresentOriginal);
DISCORD.HookFunction(presentSceneAdress, (uintptr_t)ResizeHook, (uintptr_t)&PresentOriginal);
return TRUE;
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/offsets/offsets.cpp
================================================
/*
Visual#9999
*/
#include "../../Header Files/xorstr.h"
#include "../../imgui/imgui_xorstr.h"
#include "../Header Files/includes.h"
namespace Offsets {
PVOID* uWorld = 0;
namespace Engine {
namespace World {
DWORD OwningGameInstance = 0;
DWORD Levels = 0;
}
namespace Level {
DWORD AActors = 0;
}
namespace GameInstance {
DWORD LocalPlayers = 0;
}
namespace Player {
DWORD PlayerController = 0;
}
namespace Controller {
DWORD ControlRotation = 0;
PVOID SetControlRotation = 0;
PVOID ClientSetRotation;
}
namespace PlayerController {
DWORD AcknowledgedPawn = 0;
DWORD PlayerCameraManager = 0;
}
namespace Pawn {
DWORD PlayerState = 0;
}
namespace PlayerState {
PVOID GetPlayerName = 0;
}
namespace Actor {
DWORD RootComponent = 0;
DWORD CustomTimeDilation = 0;
}
namespace Character {
DWORD Mesh = 0;
}
namespace SceneComponent {
DWORD RelativeLocation = 0;
DWORD ComponentVelocity = 0;
}
namespace StaticMeshComponent {
DWORD ComponentToWorld = 0;
DWORD StaticMesh = 0;
}
namespace SkinnedMeshComponent {
DWORD CachedWorldSpaceBounds = 0;
}
}
namespace FortniteGame {
namespace FortPawn {
DWORD bIsDBNO = 0;
DWORD bIsDying = 0;
DWORD CurrentWeapon = 0;
}
namespace FortPickup {
DWORD PrimaryPickupItemEntry = 0;
}
namespace FortItemEntry {
DWORD ItemDefinition = 0;
}
namespace FortItemDefinition {
DWORD DisplayName = 0;
DWORD Tier = 0;
}
namespace FortPlayerStateAthena {
DWORD TeamIndex = 0;
}
namespace FortWeapon {
DWORD WeaponData = 0;
DWORD AmmoCount = 0;
}
namespace FortHoagieVehicle {
DWORD BoostCooldown = 0;
}
namespace FortWeaponItemDefinition {
DWORD WeaponStatHandle = 0;
}
namespace FortProjectileAthena {
DWORD FireStartLoc = 0;
}
namespace FortBaseWeaponStats {
DWORD ReloadTime = 0;
}
namespace BuildingContainer {
DWORD bAlreadySearched = 0;
}
}
namespace UI {
namespace ItemCount {
DWORD ItemDefinition = 0;
}
}
BOOLEAN Initialize() {
auto addr = Util::FindPattern(xorstr("\x48\x89\x05\x00\x00\x00\x00\x48\x8B\x4B\x78"), xorstr("xxx????xxxx"));
if (!addr) {
MessageBox(0, xorstr(L"Please contact an administrator and give the error code:\n0x08"), xorstr(L"Error"), 0);
return FALSE;
}
uWorld = reinterpret_cast<decltype(uWorld)>(RELATIVE_ADDR(addr, 7));
// SetControlRotation
Engine::Controller::SetControlRotation = Util::FindObject(xorstr(L"/Script/Engine.Controller.SetControlRotation"));
if (!Engine::Controller::SetControlRotation) {
MessageBox(0, xorstr(L"Please contact an administrator and give the error code:\n0x09"), xorstr(L"Error"), 0);
return FALSE;
}
// ClientSetRotation
Engine::Controller::ClientSetRotation = Util::FindObject(xorstr(L"/Script/Engine.Controller.ClientSetRotation"));
if (!Engine::Controller::ClientSetRotation) {
MessageBox(0, xorstr(L"Please contact an administrator and give the error code:\n0x10"), xorstr(L"Error"), 0);
return FALSE;
}
// GetPlayerName
Engine::PlayerState::GetPlayerName = Util::FindObject(xorstr(L"/Script/Engine.PlayerState.GetPlayerName"));
if (!Engine::PlayerState::GetPlayerName) {
MessageBox(0, xorstr(L"Please contact an administrator and give the error code:\n0x11"), xorstr(L"Error"), 0);
return FALSE;
}
Engine::World::Levels = 0x148;
Engine::GameInstance::LocalPlayers = 0x38;
Engine::World::OwningGameInstance = 0x190;
Engine::Controller::ControlRotation = 0x290;
Engine::PlayerController::PlayerCameraManager = 0x2C0;
Engine::PlayerController::AcknowledgedPawn = 0x2B0;
Engine::Pawn::PlayerState = 0x240;
Engine::Actor::RootComponent = 0x138;
Engine::Character::Mesh = 0x288;
Engine::SceneComponent::RelativeLocation = 0x11C;
Engine::SceneComponent::ComponentVelocity = 0x140;
Engine::StaticMeshComponent::StaticMesh = 0x488;
Engine::SkinnedMeshComponent::CachedWorldSpaceBounds = 0x638;
Engine::Actor::CustomTimeDilation = 0x98;
FortniteGame::FortPawn::bIsDBNO = 0x572;
FortniteGame::FortPawn::bIsDying = 0x548;
FortniteGame::FortPlayerStateAthena::TeamIndex = 0xF50;
FortniteGame::FortPickup::PrimaryPickupItemEntry = 0x2A8;
FortniteGame::FortItemDefinition::DisplayName = 0x88;
FortniteGame::FortItemDefinition::Tier = 0x6C;
FortniteGame::FortItemEntry::ItemDefinition = 0x18;
FortniteGame::FortPawn::CurrentWeapon = 0x5F8;
FortniteGame::FortWeapon::WeaponData = 0x380;
FortniteGame::FortWeaponItemDefinition::WeaponStatHandle = 0x8B8;
FortniteGame::FortProjectileAthena::FireStartLoc = 0x8C8;
FortniteGame::FortBaseWeaponStats::ReloadTime = 0xFC;
FortniteGame::BuildingContainer::bAlreadySearched = 0xE01;
return TRUE;
}
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/settings/settings.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include "../../Header Files/includes.h"
#include "../../Header Files/Config/config.h"
#include "../../Header Files/xorstr.h"
#include "../../imgui/imgui_xorstr.h"
//config_system Settings = { 0 };
namespace SettingsHelper {
VOID SaveSettings() {
CHAR path[0xFF];
GetTempPathA(sizeof(path) / sizeof(path[0]), path);
strcat(path, (xorstr("fnambt.settings")));
auto file = fopen(path, (xorstr("wb")));
if (file) {
fwrite(&config_system.item, sizeof(config_system.item), 1, file);
fclose(file);
}
}
VOID ResetSettings() {
config_system.item = { 0 };
config_system.item.Page = 1;
config_system.item.AimPoint = 0;
config_system.item.Aimbot = true;
config_system.item.SilentAimbot = false;
config_system.item.FlickAimbot = false;
config_system.item.SpinBot = false;
config_system.item.AutoAim = false;
config_system.item.SpamAutoAim = false;
config_system.item.TriggerAimbot = false;
config_system.item.TriggerSpeed = 0;
config_system.item.AutoAimbot = false;
config_system.item.NoSpreadAimbot = false;
config_system.item.RapidFire = false;
config_system.item.BulletTP = false;
config_system.item.ARTP = false;
config_system.item.BoatRocketTP = false;
config_system.item.RocketTP = false;
config_system.item.BetterMap = false;
config_system.item.ThirdPerson = true;
config_system.item.AirStuck = false;
config_system.item.AntiAim = false;
config_system.item.FreeCamRotationLock = false;
config_system.item.FreeCam = false;
config_system.item.FreeCamSpeed = 1.00f;
config_system.item.CheckVisible = false;
config_system.item.AimbotFOV = 200.0f;
config_system.item.AimbotSlow = 0.0f;
config_system.item.InstantReload = false;
config_system.item.StreamSnipe = false;
config_system.item.FOVSlider = true;
config_system.item.FOV = 120.0f;
config_system.item.FOV = true;
config_system.item.DrawAimbotFOV = true;
config_system.item.DrawFilledAimbotFOV = true;
config_system.item.CrosshairSize = 0.0f;
config_system.item.CrosshairThickness = 0.0f;
config_system.item.AimbotFOV = true;
config_system.item.Players = true;
config_system.item.PlayerBox = true;
config_system.item.PlayersCorner = false;
config_system.item.PlayerLines = true;
config_system.item.ClosestLineESP = true;
config_system.item.PlayerLinesLocation = 1;
config_system.item.PlayerNames = true;
config_system.item.BoxESPOpacity = 0.20f;
config_system.item.FOVCircleOpacity = 1.00f;
config_system.item.FOVCircleFilledOpacity = 0.20f;
config_system.item.PlayerVisibleColor[0] = 0.0f;
config_system.item.PlayerVisibleColor[1] = 0.0f;
config_system.item.PlayerVisibleColor[2] = 1.0f;
config_system.item.PlayerNotVisibleColor[0] = 0.0f;
config_system.item.PlayerNotVisibleColor[1] = 0.0f;
config_system.item.PlayerNotVisibleColor[2] = 0.0f;
config_system.item.PlayerTeammate[0] = 0.0f;
config_system.item.PlayerTeammate[1] = 0.75f;
config_system.item.PlayerTeammate[2] = 0.0f;
config_system.item.FOVCircleColor[0] = 0.0f;
config_system.item.FOVCircleColor[1] = 0.20f;
config_system.item.FOVCircleColor[2] = 0.0f;
config_system.item.BoxESP[0] = 0.0f;
config_system.item.BoxESP[1] = 0.0f;
config_system.item.BoxESP[2] = 0.0f;
config_system.item.LineESP[0] = 0.46f;
config_system.item.LineESP[1] = 0.0f;
config_system.item.LineESP[2] = 0.0f;
config_system.item.Ammo = true;
config_system.item.Chest = true;
config_system.item.Llama = true;
config_system.item.boat = true;
config_system.item.chopper = true;
config_system.item.Extra = true;
// keybinds
config_system.keybind.Menu = 0x2D;
config_system.keybind.AimbotLock = 0x02;
config_system.keybind.AimbotShoot = 0x01;
config_system.keybind.AntiAim = 0x01;
config_system.keybind.Spinbot = 0x14;
config_system.keybind.Freecam = 0;
config_system.keybind.StreamSnipe = 0;
config_system.keybind.ThirdPerson = 0;
config_system.keybind.Airstuck1 = 0;
config_system.keybind.Airstuck2 = 0;
SaveSettings();
}
VOID Initialize() {
CHAR path[0xFF] = { 0 };
GetTempPathA(sizeof(path) / sizeof(path[0]), path);
strcat(path, (xorstr("fnambt.settings")));
auto file = fopen(path, (xorstr("rb")));
if (file) {
fseek(file, 0, SEEK_END);
auto size = ftell(file);
if (size == sizeof(config_system.item)) {
fseek(file, 0, SEEK_SET);
fread(&config_system.item, sizeof(config_system.item), 1, file);
fclose(file);
}
else {
fclose(file);
ResetSettings();
}
}
else {
ResetSettings();
}
}
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/util/Util.cpp
================================================
/*
Visual#9999
*/
#include "../../Header Files/includes.h"
#include "../../DiscordHook/Discord.h"
#include "../../Header Files/xorstr.h"
#include "../../imgui/imgui_xorstr.h"
#include <corecrt_math.h>
namespace Util {
GObjects* objects = nullptr;
FString(*GetObjectNameInternal)(PVOID) = nullptr;
VOID(*FreeInternal)(PVOID) = nullptr;
BOOL(*LineOfSightToInternal)(PVOID PlayerController, PVOID Actor, FVector* ViewPoint) = nullptr;
VOID(*CalculateProjectionMatrixGivenView)(FMinimalViewInfo* viewInfo, BYTE aspectRatioAxisConstraint, PBYTE viewport, FSceneViewProjectionData* inOutProjectionData) = nullptr;
struct {
FMinimalViewInfo Info;
float ProjectionMatrix[4][4];
} view = { 0 };
VOID CreateConsole() {
AllocConsole();
static_cast<VOID>(freopen("CONIN$", xorstr("r"), stdin));
static_cast<VOID>(freopen("CONOUT$", xorstr("w"), stdout));
static_cast<VOID>(freopen("CONOUT$", xorstr("w"), stderr));
}
BOOLEAN MaskCompare(PVOID buffer, LPCSTR pattern, LPCSTR mask) {
for (auto b = reinterpret_cast<PBYTE>(buffer); *mask; ++pattern, ++mask, ++b) {
if (*mask == ('x') && *reinterpret_cast<LPCBYTE>(pattern) != *b) {
return FALSE;
}
}
return TRUE;
}
PBYTE FindPattern(PVOID base, DWORD size, LPCSTR pattern, LPCSTR mask) {
size -= static_cast<DWORD>(strlen(mask));
for (auto i = 0UL; i < size; ++i) {
auto addr = reinterpret_cast<PBYTE>(base) + i;
if (MaskCompare(addr, pattern, mask)) {
return addr;
}
}
return NULL;
}
PBYTE FindPattern(LPCSTR pattern, LPCSTR mask) {
MODULEINFO info = { 0 };
GetModuleInformation(GetCurrentProcess(), GetModuleHandle(0), &info, sizeof(info));
return FindPattern(info.lpBaseOfDll, info.SizeOfImage, pattern, mask);
}
VOID Free(PVOID buffer) {
FreeInternal(buffer);
}
std::wstring GetObjectFirstName(UObject* object) {
auto internalName = GetObjectNameInternal(object);
if (!internalName.c_str()) {
return L"";
}
std::wstring name(internalName.c_str());
Free(internalName.c_str());
return name;
}
std::wstring GetObjectName(UObject* object) {
std::wstring name(L"");
for (auto i = 0; object; object = object->Outer, ++i) {
auto internalName = GetObjectNameInternal(object);
if (!internalName.c_str()) {
break;
}
name = internalName.c_str() + std::wstring(i > 0 ? (xorstr(L".")) : xorstr(L"")) + name;
Free(internalName.c_str());
}
return name;
}
BOOLEAN GetOffsets(std::vector<Offsets::OFFSET>& offsets) {
auto current = 0ULL;
auto size = offsets.size();
for (auto array : objects->ObjectArray->Objects) {
auto fuObject = array;
for (auto i = 0; i < 0x10000 && fuObject->Object; ++i, ++fuObject) {
auto object = fuObject->Object;
if (object->ObjectFlags != 0x41) {
continue;
}
auto name = GetObjectName(object);
for (auto& o : offsets) {
if (!o.Offset && name == o.Name) {
o.Offset = *reinterpret_cast<PDWORD>(reinterpret_cast<PBYTE>(object) + 0x44);
if (++current == size) {
return TRUE;
}
break;
}
}
}
}
for (auto& o : offsets) {
if (!o.Offset) {
WCHAR buffer[0xFF] = { 0 };
wsprintf(buffer, xorstr(L"Offset %ws not found"), o.Name);
MessageBox(0, buffer, xorstr(L"Failure"), 0);
}
}
return FALSE;
}
PVOID FindObject(LPCWSTR name) {
for (auto array : objects->ObjectArray->Objects) {
auto fuObject = array;
for (auto i = 0; i < 0x10000 && fuObject->Object; ++i, ++fuObject) {
auto object = fuObject->Object;
if (object->ObjectFlags != 0x41) {
continue;
}
if (GetObjectName(object) == name) {
return object;
}
}
}
return 0;
}
VOID ToMatrixWithScale(float* in, float out[4][4])
{
auto* rotation = &in[0];
auto* translation = &in[4];
auto* scale = &in[8];
out[3][0] = translation[0];
out[3][1] = translation[1];
out[3][2] = translation[2];
auto x2 = rotation[0] + rotation[0];
auto y2 = rotation[1] + rotation[1];
auto z2 = rotation[2] + rotation[2];
auto xx2 = rotation[0] * x2;
auto yy2 = rotation[1] * y2;
auto zz2 = rotation[2] * z2;
out[0][0] = (1.0f - (yy2 + zz2)) * scale[0];
out[1][1] = (1.0f - (xx2 + zz2)) * scale[1];
out[2][2] = (1.0f - (xx2 + yy2)) * scale[2];
auto yz2 = rotation[1] * z2;
auto wx2 = rotation[3] * x2;
out[2][1] = (yz2 - wx2) * scale[2];
out[1][2] = (yz2 + wx2) * scale[1];
auto xy2 = rotation[0] * y2;
auto wz2 = rotation[3] * z2;
out[1][0] = (xy2 - wz2) * scale[1];
out[0][1] = (xy2 + wz2) * scale[0];
auto xz2 = rotation[0] * z2;
auto wy2 = rotation[3] * y2;
out[2][0] = (xz2 + wy2) * scale[2];
out[0][2] = (xz2 - wy2) * scale[0];
out[0][3] = 0.0f;
out[1][3] = 0.0f;
out[2][3] = 0.0f;
out[3][3] = 1.0f;
}
VOID MultiplyMatrices(float a[4][4], float b[4][4], float out[4][4]) {
for (auto r = 0; r < 4; ++r) {
for (auto c = 0; c < 4; ++c) {
auto sum = 0.0f;
for (auto i = 0; i < 4; ++i) {
sum += a[r][i] * b[i][c];
}
out[r][c] = sum;
}
}
}
VOID GetBoneLocation(float compMatrix[4][4], PVOID bones, DWORD index, float out[3]) {
float boneMatrix[4][4];
ToMatrixWithScale((float*)((PBYTE)bones + (index * 0x30)), boneMatrix);
float result[4][4];
MultiplyMatrices(boneMatrix, compMatrix, result);
out[0] = result[3][0];
out[1] = result[3][1];
out[2] = result[3][2];
}
VOID GetViewProjectionMatrix(FSceneViewProjectionData* projectionData, float out[4][4]) {
auto loc = &projectionData->ViewOrigin;
float translation[4][4] = {
{ 1.0f, 0.0f, 0.0f, 0.0f, },
{ 0.0f, 1.0f, 0.0f, 0.0f, },
{ 0.0f, 0.0f, 1.0f, 0.0f, },
{ -loc->X, -loc->Y, -loc->Z, 0.0f, },
};
float temp[4][4];
MultiplyMatrices(translation, projectionData->ViewRotationMatrix.M, temp);
MultiplyMatrices(temp, projectionData->ProjectionMatrix.M, out);
}
BOOLEAN ProjectWorldToScreen(float viewProjection[4][4], float width, float height, float inOutPosition[3]) {
float res[4] = {
viewProjection[0][0] * inOutPosition[0] + viewProjection[1][0] * inOutPosition[1] + viewProjection[2][0] * inOutPosition[2] + viewProjection[3][0],
viewProjection[0][1] * inOutPosition[0] + viewProjection[1][1] * inOutPosition[1] + viewProjection[2][1] * inOutPosition[2] + viewProjection[3][1],
viewProjection[0][2] * inOutPosition[0] + viewProjection[1][2] * inOutPosition[1] + viewProjection[2][2] * inOutPosition[2] + viewProjection[3][2],
viewProjection[0][3] * inOutPosition[0] + viewProjection[1][3] * inOutPosition[1] + viewProjection[2][3] * inOutPosition[2] + viewProjection[3][3],
};
auto r = res[3];
if (r > 0) {
auto rhw = 1.0f / r;
inOutPosition[0] = (((res[0] * rhw) / 2.0f) + 0.5f) * width;
inOutPosition[1] = (0.5f - ((res[1] * rhw) / 2.0f)) * height;
inOutPosition[2] = r;
return TRUE;
}
return FALSE;
}
VOID CalculateProjectionMatrixGivenViewHook(FMinimalViewInfo* viewInfo, BYTE aspectRatioAxisConstraint, PBYTE viewport, FSceneViewProjectionData* inOutProjectionData) {
CalculateProjectionMatrixGivenView(viewInfo, aspectRatioAxisConstraint, viewport, inOutProjectionData);
view.Info = *viewInfo;
GetViewProjectionMatrix(inOutProjectionData, view.ProjectionMatrix);
}
BOOLEAN WorldToScreen(float width, float height, float inOutPosition[3]) {
return ProjectWorldToScreen(view.ProjectionMatrix, width, height, inOutPosition);
}
BOOLEAN LineOfSightTo(PVOID PlayerController, PVOID Actor, FVector* ViewPoint) {
return SpoofCall(LineOfSightToInternal, PlayerController, Actor, ViewPoint);
}
FMinimalViewInfo& GetViewInfo() {
return view.Info;
}
FVector* GetPawnRootLocation(PVOID pawn) {
auto root = ReadPointer(pawn, Offsets::Engine::Actor::RootComponent);
if (!root) {
return nullptr;
}
return reinterpret_cast<FVector*>(reinterpret_cast<PBYTE>(root) + Offsets::Engine::SceneComponent::RelativeLocation);
}
float Normalize(float angle) {
float a = (float)fmod(fmod(angle, 360.0) + 360.0, 360.0);
if (a > 180.0f) {
a -= 360.0f;
}
return a;
}
VOID CalcAngle(float* src, float* dst, float* angles) {
float rel[3] = {
dst[0] - src[0],
dst[1] - src[1],
dst[2] - src[2],
};
auto dist = sqrtf(rel[0] * rel[0] + rel[1] * rel[1] + rel[2] * rel[2]);
auto yaw = atan2f(rel[1], rel[0]) * (180.0f / PI);
auto pitch = (-((acosf((rel[2] / dist)) * 180.0f / PI) - 90.0f));
angles[0] = Normalize(pitch);
angles[1] = Normalize(yaw);
}
BOOLEAN Initialize() {
addr = FindPattern(xorstr("\x48\x89\x5C\x24\x08\x48\x89\x74\x24\x20\x55\x57\x41\x56\x48\x8B\xEC\x48\x83\xEC\x30\x48\x83\x65\x28\x00\x49\x8B\xF0\x48\x8B\xDA\xE8\x4F\x4B\xFD\xFE\x48\x83\x7B\x20\x00\x48\x8B\xCB\x0F\x84\xB3\x00\x00\x00\x48\x8B\x53\x18\x4C\x8D\x45\x28\xE8\x40\x89\xE7\xFE"), xorstr("xxxxxxxxxxxxxxxxxxxxxxxxx?xxxxxxxxxxxxxxx?xxxxxx???xxxxxxxxxxxxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find GetObjectNameInternal."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
GetObjectNameInternal = reinterpret_cast<decltype(GetObjectNameInternal)>(addr);
addr = FindPattern(xorstr("\x48\x85\xC9\x0F\x84\x00\x00\x00\x00\x53\x48\x83\xEC\x20\x48\x89\x7C\x24\x30\x48\x8B\xD9\x48\x8B\x3D\x00\x00\x00\x00\x48\x85\xFF\x0F\x84\x00\x00\x00\x00\x48\x8B\x07\x4C\x8B\x40\x30\x48\x8D\x05\x00\x00\x00\x00\x4C\x3B\xC0"), xorstr("xxxxx????xxxxxxxxxxxxxxxx????xxxxx????xxxxxxxxxxxxx????xxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find FreeInternal."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
FreeInternal = reinterpret_cast<decltype(FreeInternal)>(addr);
addr = FindPattern(xorstr("\xE8\x00\x00\x00\x00\x41\x88\x07\x48\x83\xC4\x30"), xorstr("x????xxxxxxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find ProjectionMatrixGivenView."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
addr -= 0x280;
DISCORD.HookFunction((uintptr_t)addr, (uintptr_t)CalculateProjectionMatrixGivenViewHook, (uintptr_t)&CalculateProjectionMatrixGivenView);
addr = FindPattern(xorstr("\x48\x8B\xC4\x48\x89\x58\x20\x55\x56\x57\x41\x54\x41\x55\x41\x56\x41\x57\x48\x8D\x6C\x24\x00\x48\x81\xEC\x00\x00\x00\x00\x0F\x29\x70\xB8\x0F\x29\x78\xA8\x44\x0F\x29\x40\x00\x48\x8B\x05\x00\x00\x00\x00\x48\x33\xC4\x48\x89\x45\x20"), xorstr("xxxxxxxxxxxxxxxxxxxxxx?xxx????xxxxxxxxxxx?xxx????xxxxxx"));
if (!addr) {
MessageBox(0, xorstr(L"Failed to find LineOfSightTo."), xorstr(L"github.com/visual9999"), 0);
return FALSE;
}
LineOfSightToInternal = reinterpret_cast<decltype(LineOfSightToInternal)>(addr);
return TRUE;
}
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/dllmain.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
#include "Header Files/includes.h"
#include "Header Files/menu/menu.h"
#include "Header Files/config/Config.h"
VOID Main() {
SettingsHelper::Initialize();
if (!Util::Initialize()) {
return;
}
if (!Offsets::Initialize()) {
return;
}
if (!Core::Initialize()) {
return;
}
if (!Render::Initialize()) {
return;
}
}
BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) {
if (reason == DLL_PROCESS_ATTACH) {
Main();
}
return TRUE;
}
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/Instructions.txt
================================================
/*
Visual#9999
*/
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/LICENSE.txt
================================================
/*
Visual#9999
*/
The MIT License (MIT)
Copyright (c) 2014-2019 Omar Cornut
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imconfig.h
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
//-----------------------------------------------------------------------------
// USER IMPLEMENTATION
// This file contains compile-time options for ImGui.
// Other options (memory allocation overrides, callbacks, etc.) can be set at runtime via the ImGuiIO structure - ImGui::GetIO().
//-----------------------------------------------------------------------------
#pragma once
//---- Define assertion handler. Defaults to calling assert().
//#define IM_ASSERT(_EXPR) MyAssert(_EXPR)
//---- Define attributes of all API symbols declarations, e.g. for DLL under Windows.
//#define IMGUI_API __declspec( dllexport )
//#define IMGUI_API __declspec( dllimport )
//---- Don't define obsolete functions names. Consider enabling from time to time or when updating to reduce like hood of using already obsolete function/names
//#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS
//---- Include imgui_user.h at the end of imgui.h
//#define IMGUI_INCLUDE_IMGUI_USER_H
//---- Don't implement default handlers for Windows (so as not to link with OpenClipboard() and others Win32 functions)
//#define IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS
//#define IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS
//---- Don't implement demo windows functionality (ShowDemoWindow()/ShowStyleEditor()/ShowUserGuide() methods will be empty)
//---- It is very strongly recommended to NOT disable the demo windows. Please read the comment at the top of imgui_demo.cpp to learn why.
//#define IMGUI_DISABLE_DEMO_WINDOWS
//---- Don't implement ImFormatString(), ImFormatStringV() so you can reimplement them yourself.
//#define IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS
//---- Pack colors to BGRA instead of RGBA (remove need to post process vertex buffer in back ends)
//#define IMGUI_USE_BGRA_PACKED_COLOR
//---- Implement STB libraries in a namespace to avoid linkage conflicts
//#define IMGUI_STB_NAMESPACE ImGuiStb
//---- Define constructor and implicit cast operators to convert back<>forth from your math types and ImVec2/ImVec4.
/*
#define IM_VEC2_CLASS_EXTRA \
ImVec2(const MyVec2& f) { x = f.x; y = f.y; } \
operator MyVec2() const { return MyVec2(x,y); }
#define IM_VEC4_CLASS_EXTRA \
ImVec4(const MyVec4& f) { x = f.x; y = f.y; z = f.z; w = f.w; } \
operator MyVec4() const { return MyVec4(x,y,z,w); }
*/
//---- Use 32-bit vertex indices (instead of default: 16-bit) to allow meshes with more than 64K vertices
//#define ImDrawIdx unsigned int
//---- Tip: You can add extra functions within the ImGui:: namespace, here or in your own headers files.
//---- e.g. create variants of the ImGui::Value() helper for your low-level math types, or your own widgets/helpers.
/*
namespace ImGui
{
void Value(const char* prefix, const MyMatrix44& v, const char* float_format = NULL);
}
*/
================================================
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui.cpp
================================================
/*
Visual#9999, Updated by bunyip24#9999
*/
// dear imgui, v1.54 WIP
// (main code and documentation)
// Call and read ImGui::ShowDemoWindow() in imgui_demo.cpp for demo code.
// Newcomers, read 'Programmer guide' below for notes on how to setup Dear ImGui in your codebase.
// Get latest version at https://github.com/ocornut/imgui
// Releases change-log at https://github.com/ocornut/imgui/releases
// Gallery (please post your screenshots/video there!): https://github.com/ocornut/imgui/issues/1269
// Developed by Omar Cornut and every direct or indirect contributors to the GitHub.
// This library is free but I need your support to sustain development and maintenance.
// If you work for a company, please consider financial support, see Readme. For individuals: https://www.patreon.com/imgui
/*
Index
- MISSION STATEMENT
- END-USER GUIDE
- PROGRAMMER GUIDE (read me!)
- Read first
- How to update to a newer version of Dear ImGui
- Getting started with integrating Dear ImGui in your code/engine
- API BREAKING CHANGES (read me when you update!)
- ISSUES & TODO LIST
- FREQUENTLY ASKED QUESTIONS (FAQ), TIPS
- How can I help?
- What is ImTextureID and how do I display an image?
- I integrated Dear ImGui in my engine and the text or lines are blurry..
- I integrated Dear ImGui in my engine and some elements are clipping or disappearing when I move windows around..
- How can I have multiple widgets with the same label? Can I have widget without a label? (Yes). A primer on labels/IDs.
- How can I tell when Dear ImGui wants my mouse/keyboard inputs VS when I can pass them to my application?
- How can I load a different font than the default?
- How can I easily use icons in my application?
- How can I load multiple fonts?
- How can I display and input non-latin characters such as Chinese, Japanese, Korean, Cyrillic?
- How can I preserve my Dear ImGui context across reloading a DLL? (loss of the global/static variables)
- How can I use the drawing facilities without an ImGui window? (using ImDrawList API)
- ISSUES & TODO-LIST
- CODE
MISSION STATEMENT
=================
- Easy to use to create code-driven and data-driven tools
- Easy to use to create ad hoc short-lived tools and long-lived, more elaborate tools
- Easy to hack and improve
- Minimize screen real-estate usage
- Minimize setup and maintenance
- Minimize state storage on user side
- Portable, minimize dependencies, run on target (consoles, phones, etc.)
- Efficient runtime and memory consumption (NB- we do allocate when "growing" content e.g. creating a window, opening a tree node
for the first time, etc. but a typical frame won't allocate anything)
Designed for developers and content-creators, not the typical end-user! Some of the weaknesses includes:
- Doesn't look fancy, doesn't animate
- Limited layout features, intricate layouts are typically crafted in code
END-USER GUIDE
==============
- Double-click on title bar to collapse window.
- Click upper right corner to close a window, available when 'bool* p_open' is passed to ImGui::Begin().
- Click and drag on lower right corner to resize window (double-click to auto fit window to its contents).
- Click and drag on any empty space to move window.
- TAB/SHIFT+TAB to cycle through keyboard editable fields.
- CTRL+Click on a slider or drag box to input value as text.
- Use mouse wheel to scroll.
- Text editor:
- Hold SHIFT or use mouse to select text.
- CTRL+Left/Right to word jump.
- CTRL+Shift+Left/Right to select words.
- CTRL+A our Double-Click to select all.
- CTRL+X,CTRL+C,CTRL+V to use OS clipboard/
- CTRL+Z,CTRL+Y to undo/redo.
- ESCAPE to revert text to its original value.
- You can apply arithmetic operators +,*,/ on numerical values. Use +- to subtract (because - would set a negative value!)
- Controls are automatically adjusted for OSX to match standard OSX text editing operations.
PROGRAMMER GUIDE
================
READ FIRST
- Read the FAQ below this section!
- Your code creates the UI, if your code doesn't run the UI is gone! == very dynamic UI, no construction/destructions steps, less data retention
on your side, no state duplication, less sync, less bugs.
- Call and read ImGui::ShowDemoWindow() for demo code demonstrating most features.
- You can learn about immediate-mode gui principles at http://www.johno.se/book/imgui.html or watch http://mollyrocket.com/861
HOW TO UPDATE TO A NEWER VERSION OF DEAR IMGUI
- Overwrite all the sources files except for imconfig.h (if you have made modification to your copy of imconfig.h)
- Read the "API BREAKING CHANGES" section (below). This is where we list occasional API breaking changes.
If a function/type has been renamed / or marked obsolete, try to fix the name in your code before it is permanently removed from the public API.
If you have a problem with a missing function/symbols, search for its name in the code, there will likely be a comment about it.
Please report any issue to the GitHub page!
- Try to keep your copy of dear imgui reasonably up to date.
GETTING STARTED WITH INTEGRATING DEAR IMGUI IN YOUR CODE/ENGINE
- Add the Dear ImGui source files to your projects, using your preferred build system.
It is recommended you build the .cpp files as part of your project and not as a library.
- You can later customize the imconfig.h file to tweak some compilation time behavior, such as integrating imgui types with your own maths types.
- See examples/ folder for standalone sample applications.
- You may be able to grab and copy a ready made imgui_impl_*** file from the examples/.
- When using Dear ImGui, your programming IDE is your friend: follow the declaration of variables, functions and types to find comments about them.
- Init: retrieve the ImGuiIO structure with ImGui::GetIO() and fill the fields marked 'Settings': at minimum you need to set io.DisplaySize
(application resolution). Later on you will fill your keyboard mapping, clipboard handlers, and other advanced features but for a basic
integration you don't need to worry about it all.
- Init: call io.Fonts->GetTexDataAsRGBA32(...), it will build the font atlas texture, then load the texture pixels into graphics memory.
- Every frame:
- In your main loop as early a possible, fill the IO fields marked 'Input' (e.g. mouse position, buttons, keyboard info, etc.)
- Call ImGui::NewFrame() to begin the frame
- You can use any ImGui function you want between NewFrame() and Render()
- Call ImGui::Render() as late as you can to end the frame and finalize render data. it will call your io.RenderDrawListFn handler.
(Even if you don't render, call Render() and ignore the callback, or call EndFrame() instead. Otherwhise some features will break)
- All rendering information are stored into command-lists until ImGui::Render() is called.
- Dear ImGui never touches or knows about your GPU state. the only function that knows about GPU is the RenderDrawListFn handler that you provide.
- Effectively it means you can create widgets at any time in your code, regardless of considerations of being in "update" vs "render" phases
of your own application.
- Refer to the examples applications in the examples/ folder for instruction on how to setup your code.
- A minimal application skeleton may be:
// Application init
ImGuiIO& io = ImGui::GetIO();
io.DisplaySize.x = 1920.0f;
io.DisplaySize.y = 1280.0f;
io.RenderDrawListsFn = MyRenderFunction; // Setup a render function, or set to NULL and call GetDrawData() after Render() to access render data.
// TODO: Fill others settings of the io structure later.
// Load texture atlas (there is a default font so you don't need to care about choosing a font yet)
unsigned char* pixels;
int width, height;
io.Fonts->GetTexDataAsRGBA32(pixels, &width, &height);
// TODO: At this points you've got the texture data and you need to upload that your your graphic system:
MyTexture* texture = MyEngine::CreateTextureFromMemoryPixels(pixels, width, height, TEXTURE_TYPE_RGBA)
// TODO: Store your texture pointer/identifier (whatever your engine uses) in 'io.Fonts->TexID'. This will be passed back to your via the renderer.
io.Fonts->TexID = (void*)texture;
// Application main loop
while (true)
{
// Setup low-level inputs (e.g. on Win32, GetKeyboardState(), or write to those fields from your Windows message loop handlers, etc.)
ImGuiIO& io = ImGui::GetIO();
io.DeltaTime = 1.0f/60.0f;
io.MousePos = mouse_pos;
io.MouseDown[0] = mouse_button_0;
io.MouseDown[1] = mouse_button_1;
// Call NewFrame(), after this point you can use ImGui::* functions anytime
ImGui::NewFrame();
// Most of your application code here
MyGameUpdate(); // may use any ImGui functions, e.g. ImGui::Begin("My window"); ImGui::Text("Hello, world!"); ImGui::End();
MyGameRender(); // may use any ImGui functions as well!
// Render & swap video buffers
ImGui::Render();
SwapBuffers();
}
- A minimal render function skeleton may be:
void void MyRenderFunction(ImDrawData* draw_data)(ImDrawData* draw_data)
{
// TODO: Setup render state: alpha-blending enabled, no face culling, no depth testing, scissor enabled
// TODO: Setup viewport, orthographic projection matrix
// TODO: Setup shader: vertex { float2 pos, float2 uv, u32 color }, fragment shader sample color from 1 texture, multiply by vertex color.
for (int n = 0; n < draw_data->CmdListsCount; n++)
{
const ImDrawVert* vtx_buffer = cmd_list->VtxBuffer.Data; // vertex buffer generated by ImGui
const ImDrawIdx* idx_buffer = cmd_list->IdxBuffer.Data; // index buffer generated by ImGui
for (int cmd_i = 0; cmd_i < cmd_list->CmdBuffer.Size; cmd_i++)
{
const ImDrawCmd* pcmd = &cmd_list->CmdBuffer[cmd_i];
if (pcmd->UserCallback)
{
pcmd->UserCallback(cmd_list, pcmd);
}
else
{
// The texture for the draw call is specified by pcmd->TextureId.
// The vast majority of draw calls with use the imgui texture atlas, which value you have set yourself during initialization.
MyEngineBindTexture(pcmd->TextureId);
// We are using scissoring to clip some objects. All low-level graphics API supports it.
// If your engine doesn't support scissoring yet, you will get some small glitches (some elements outside their bounds) which you can fix later.
MyEngineScissor((int)pcmd->ClipRect.x, (int)pcmd->ClipRect.y, (int)(pcmd->ClipRect.z - pcmd->ClipRect.x), (int)(pcmd->ClipRect.w - pcmd->ClipRect.y));
// Render 'pcmd->ElemCount/3' indexed triangles.
// By default the indices ImDrawIdx are 16-bits, you can change them to 32-bits if your engine doesn't support 16-bits indices.
MyEngineDrawIndexedTriangles(pcmd->ElemCount, sizeof(ImDrawIdx) == 2 ? GL_UNSIGNED_SHORT : GL_UNSIGNED_INT, idx_buffer, vtx_buffer);
}
idx_buffer += pcmd->ElemCount;
}
}
}
- The examples/ folders contains many functional implementation of the pseudo-code above.
- When calling NewFrame(), the 'io.WantCaptureMouse'/'io.WantCaptureKeyboard'/'io.WantTextInput' flags are updated.
They tell you if ImGui intends to use your inputs. So for example, if 'io.WantCaptureMouse' is set you would typically want to hide
mouse inputs from the rest of your application. Read the FAQ below for more information about those flags.
API BREAKING CHANGES
====================
Occasionally introducing changes that are breaking the API. The breakage are generally minor and easy to fix.
Here is a change-log of API breaking changes, if you are using one of the functions listed, expect to have to fix some code.
Also read releases logs https://github.com/ocornut/imgui/releases for more details.
- 2018/01/11 (1.54) - obsoleted IsAnyWindowHovered() in favor of IsWindowHovered(ImGuiHoveredFlags_AnyWindow). Kept redirection function (will obsolete).
- 2018/01/11 (1.54) - obsoleted IsAnyWindowFocused() in favor of IsWindowFocused(ImGuiFocusedFlags_AnyWindow). Kept redirection function (will obsolete).
- 2018/01/03 (1.54) - renamed ImGuiSizeConstraintCallback to ImGuiSizeCallback, ImGuiSizeConstraintCallbackData to ImGuiSizeCallbackData.
- 2017/12/29 (1.54) - removed CalcItemRectClosestPoint() which was weird and not really used by anyone except demo code. If you need it it's easy to replicate on your side.
- 2017/12/24 (1.53) - renamed the emblematic ShowTestWindow() function to ShowDemoWindow(). Kept redirection function (will obsolete).
- 2017/12/21 (1.53) - ImDrawList: renamed style.AntiAliasedShapes to style.AntiAliasedFill for consistency and as a way to explicitly break code that manipulate those flag at runtime. You can now manipulate ImDrawList::Flags
- 2017/12/21 (1.53) - ImDrawList: removed 'bool anti_aliased = true' final parameter of ImDrawList::AddPolyline() and ImDrawList::AddConvexPolyFilled(). Prefer manipulating ImDrawList::Flags if you need to toggle them during the frame.
- 2017/12/14 (1.53) - using the ImGuiWindowFlags_NoScrollWithMouse flag on a child window forwards the mouse wheel event to the parent window, unless either ImGuiWindowFlags_NoInputs or ImGuiWindowFlags_NoScrollbar are also set.
- 2017/12/13 (1.53) - renamed GetItemsLineHeightWithSpacing() to GetFrameHeightWithSpacing(). Kept redirection function (will obsolete).
- 2017/12/13 (1.53) - obsoleted IsRootWindowFocused() in favor of using IsWindowFocused(ImGuiFocusedFlags_RootWindow). Kept redirection function (will obsolete).
- obsoleted IsRootWindowOrAnyChildFocused() in favor of using IsWindowFocused(ImGuiFocusedFlags_RootAndChildWindows). Kept redirection function (will obsolete).
- 2017/12/12 (1.53) - renamed ImGuiTreeNodeFlags_AllowOverlapMode to ImGuiTreeNodeFlags_AllowItemOverlap. Kept redirection enum (will obsolete).
- 2017/12/10 (1.53) - removed SetNextWindowContentWidth(), prefer using SetNextWindowContentSize(). Kept redirection function (will obsolete).
- 2017/11/27 (1.53) - renamed ImGuiTextBuffer::append() helper to appendf(), appendv() to appendfv(). If you copied the 'Log' demo in your code, it uses appendv() so that needs to be renamed.
- 2017/11/18 (1.53) - Style, Begin: removed ImGuiWindowFlags_ShowBorders window flag. Borders are now fully set up in the ImGuiStyle structure (see e.g. style.FrameBorderSize, style.WindowBorderSize). Use ImGui::ShowStyleEditor() to look them up.
Please note that the style system will keep evolving (hopefully stabilizing in Q1 2018), and so custom styles will probably subtly break over time. It is recommended you use the StyleColorsClassic(), StyleColorsDark(), StyleColorsLight() functions.
- 2017/11/18 (1.53) - Style: removed ImGuiCol_ComboBg in favor of combo boxes using ImGuiCol_PopupBg for consistency.
- 2017/11/18 (1.53) - Style: renamed ImGuiCol_ChildWindowBg to ImGuiCol_ChildBg.
- 2017/11/18 (1.53) - Style: renamed style.ChildWindowRounding to style.ChildRounding, ImGuiStyleVar_ChildWindowRounding to ImGuiStyleVar_ChildRounding.
- 2017/11/02 (1.53) - obsoleted IsRootWindowOrAnyChildHovered() in favor of using IsWindowHovered(ImGuiHoveredFlags_RootAndChildWindows);
- 2017/10/24 (1.52) - renamed IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCS/IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCS to IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS/IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS for consistency.
- 2017/10/20 (1.52) - changed IsWindowHovered() default parameters behavior to return false if an item is active in another window (e.g. click-dragging item from another window to this window). You can use the newly introduced IsWindowHovered() flags to requests this specific behavior if you need it.
- 2017/10/20 (1.52) - marked IsItemHoveredRect()/IsMouseHoveringWindow() as obsolete, in favor of using the newly introduced flags for IsItemHovered() and IsWindowHovered(). See https://github.com/ocornut/imgui/issues/1382 for details.
removed the IsItemRectHovered()/IsWindowRectHovered() names introduced in 1.51 since they were merely more consistent names for the two functions we are now obsoleting.
- 2017/10/17 (1.52) - marked the old 5-parameters version of Begin() as obsolete (still available). Use SetNextWindowSize()+Begin() instead!
- 2017/10/11 (1.52) - renamed AlignFirstTextHeightToWidgets() to AlignTextToFramePadding(). Kept inline redirection function (will obsolete).
- 2017/09/25 (1.52) - removed SetNextWindowPosCenter() because SetNextWindowPos() now has the optional pivot information to do the same and more. Kept redirection function (will obsolete).
- 2017/08/25 (1.52) - io.MousePos needs to be set to ImVec2(-FLT_MAX,-FLT_MAX) when mouse is unavailable/missing. Previously ImVec2(-1,-1) was enough but we now accept negative mouse coordinates. In your binding if you need to support unavailable mouse, make sure to replace "io.MousePos = ImVec2(-1,-1)" with "io.MousePos = ImVec2(-FLT_MAX,-FLT_MAX)".
- 2017/08/22 (1.51) - renamed IsItemHoveredRect() to IsItemRectHovered(). Kept inline redirection function (will obsolete). -> (1.52) use IsItemHovered(ImGuiHoveredFlags_RectOnly)!
- renamed IsMouseHoveringAnyWindow() to IsAnyWindowHovered() for consistency. Kept inline redirection function (will obsolete).
- renamed IsMouseHoveringWindow() to IsWindowRectHovered() for consistency. Kept inline redirection function (will obsolete).
- 2017/08/20 (1.51) - renamed GetStyleColName() to GetStyleColorName() for consistency.
- 2017/08/20 (1.51) - added PushStyleColor(ImGuiCol idx, ImU32 col) overload, which _might_ cause an "ambiguous call" compilation error if you are using ImColor() with implicit cast. Cast to ImU32 or ImVec4 explicily to fix.
- 2017/08/15 (1.51) - marked the weird IMGUI_ONCE_UPON_A_FRAME helper macro as obsolete. prefer using the more explicit ImGuiOnceUponAFrame.
- 2017/08/15 (1.51) - changed parameter order for BeginPopupContextWindow() from (const char*,int buttons,bool also_over_items) to (const char*,int buttons,bool also_over_items). Note that most calls relied on default parameters completely.
- 2017/08/13 (1.51) - renamed ImGuiCol_Columns*** to ImGuiCol_Separator***. Kept redirection enums (will obsolete).
- 2017/08/11 (1.51) - renamed ImGuiSetCond_*** types and flags to ImGuiCond_***. Kept redirection enums (will obsolete).
- 2017/08/09 (1.51) - removed ValueColor() helpers, they are equivalent to calling Text(label) + SameLine() + ColorButton().
- 2017/08/08 (1.51) - removed ColorEditMode() and ImGuiColorEditMode in favor of ImGuiColorEditFlags and parameters to the various Color*() functions. The SetColorEditOptions() allows to initialize default but the user can still change them with right-click context menu.
- changed prototype of 'ColorEdit4(const char* label, float col[4], bool show_alpha = true)' to 'ColorEdit4(const char* label, float col[4], ImGuiColorEditFlags flags = 0)', where passing flags = 0x01 is a safe no-op (hello dodgy backward compatibility!). - check and run the demo window, under "Color/Picker Widgets", to understand the various new options.
- changed prototype of rarely used 'ColorButton(ImVec4 col, bool small_height = false, bool outline_border = true)' to 'ColorButton(const char* desc_id, ImVec4 col, ImGuiColorEditFlags flags = 0, ImVec2 size = ImVec2(0,0))'
- 2017/07/20 (1.51) - removed IsPosHoveringAnyWindow(ImVec2), which was partly broken and misleading. ASSERT + redirect user to io.WantCaptureMouse
- 2017/05/26 (1.50) - removed ImFontConfig::MergeGlyphCenterV in favor of a more multipurpose ImFontConfig::GlyphOffset.
- 2017/05/01 (1.50) - renamed ImDrawList::PathFill() (rarely used directly) to ImDrawList::PathFillConvex() for clarity.
- 2016/11/06 (1.50) - BeginChild(const char*) now applies the stack id to the provided label, consistently with other functions as it should always have been. It shouldn't affect you unless (extremely unlikely) you were appending multiple times to a same child from different locations of the stack id. If that's the case, generate an id with GetId() and use it instead of passing string to BeginChild().
- 2016/10/15 (1.50) - avoid 'void* user_data' parameter to io.SetClipboardTextFn/io.GetClipboardTextFn pointers. We pass io.ClipboardUserData to it.
- 2016/09/25 (1.50) - style.WindowTitleAlign is now a ImVec2 (ImGuiAlign enum was removed). set to (0.5f,0.5f) for horizontal+vertical centering, (0.0f,0.0f) for upper-left, etc.
- 2016/07/30 (1.50) - SameLine(x) with x>0.0f is now relative to left of column/group if any, and not always to left of window. This was sort of always the intent and hopefully breakage should be minimal.
- 2016/05/12 (1.49) - title bar (using ImGuiCol_TitleBg/ImGuiCol_TitleBgActive colors) isn't rendered over a window background (ImGuiCol_WindowBg color) anymore.
If your TitleBg/TitleBgActive alpha was 1.0f or you are using the default theme it will not affect you.
However if your TitleBg/TitleBgActive alpha was <1.0f you need to tweak your custom theme to readjust for the fact that we don't draw a WindowBg background behind the title bar.
This helper function will convert an old TitleBg/TitleBgActive color into a new one with the same visual output, given the OLD color and the OLD WindowBg color.
ImVec4 ConvertTitleBgCol(const ImVec4& win_bg_col, const ImVec4& title_bg_col)
{
float new_a = 1.0f - ((1.0f - win_bg_col.w) * (1.0f - title_bg_col.w)), k = title_bg_col.w / new_a;
return ImVec4((win_bg_col.x * win_bg_col.w + title_bg_col.x) * k, (win_bg_col.y * win_bg_col.w + title_bg_col.y) * k, (win_bg_col.z * win_bg_col.w + title_bg_col.z) * k, new_a);
}
If this is confusing, pick the RGB value from title bar from an old screenshot and apply this as TitleBg/TitleBgActive. Or you may just create TitleBgActive from a tweaked TitleBg color.
- 2016/05/07 (1.49) - removed confusing set of GetInternalState(), GetInternalStateSize(), SetInternalState() functions. Now using CreateContext(), DestroyContext(), GetCurrentContext(), SetCurrentContext().
- 2016/05/02 (1.49) - renamed SetNextTreeNodeOpened() to SetNextTreeNodeOpen(), no redirection.
- 2016/05/01 (1.49) - obsoleted old signature of CollapsingHeader(const char* label, const char* str_id = NULL, bool display_frame = true, bool default_open = false) as extra parameters were badly designed and rarely used. You can replace the "default_open = true" flag in new API with CollapsingHeader(label, ImGuiTreeNodeFlags_DefaultOpen).
- 2016/04/26 (1.49) - changed ImDrawList::PushClipRect(ImVec4 rect) to ImDraw::PushClipRect(Imvec2 min,ImVec2 max,bool intersect_with_current_clip_rect=false). Note that higher-level ImGui::PushClipRect() is preferable because it will clip at logic/widget level, whereas ImDrawList::PushClipRect() only affect your renderer.
- 2016/04/03 (1.48) - removed style.WindowFillAlphaDefault setting which was redundant. Bake default BG alpha inside style.Colors[ImGuiCol_WindowBg] and all other Bg color values. (ref github issue #337).
- 2016/04/03 (1.48) - renamed ImGuiCol_TooltipBg to ImGuiCol_PopupBg, used by popups/menus and tooltips. popups/menus were previously using ImGuiCol_WindowBg. (ref github issue #337)
- 2016/03/21 (1.48) - renamed GetWindowFont() to GetFont(), GetWindowFontSize() to GetFontSize(). Kept inline redirection function (will obsolete).
- 2016/03/02 (1.48) - InputText() completion/history/always callbacks: if you modify the text buffer manually (without using DeleteChars()/InsertChars() helper) you need to maintain the BufTextLen field. added an assert.
- 2016/01/23 (1.48) - fixed not honoring exact width passed to PushItemWidth(), previously it would add extra FramePadding.x*2 over that width. if you had manual pixel-perfect alignment in place it might affect you.
- 2015/12/27 (1.48) - fixed ImDrawList::AddRect() which used to render a rectangle 1 px too large on each axis.
- 2015/12/04 (1.47) - renamed Color() helpers to ValueColor() - dangerously named, rarely used and probably to be made obsolete.
- 2015/08/29 (1.45) - with the addition of horizontal scrollbar we made various fixes to inconsistencies with dealing with cursor position.
GetCursorPos()/SetCursorPos() functions now include the scrolled amount. It shouldn't affect the majority of users, but take note that SetCursorPosX(100.0f) puts you at +100 from the starting x position which may include scrolling, not at +100 from the window left side.
GetContentRegionMax()/GetWindowContentRegionMin()/GetWindowContentRegionMax() functions allow include the scrolled amount. Typically those were used in cases where no scrolling would happen so it may not be a problem, but watch out!
- 2015/08/29 (1.45) - renamed style.ScrollbarWidth to style.ScrollbarSize
- 2015/08/05 (1.44) - split imgui.cpp into extra files: imgui_demo.cpp imgui_draw.cpp imgui_internal.h that you need to add to your project.
- 2015/07/18 (1.44) - fixed angles in ImDrawList::PathArcTo(), PathArcToFast() (introduced in 1.43) being off by an extra PI for no justifiable reason
- 2015/07/14 (1.43) - add new ImFontAtlas::AddFont() API. For the old AddFont***, moved the 'font_no' parameter of ImFontAtlas::AddFont** functions to the ImFontConfig structure.
you need to render your textured triangles with bilinear filtering to benefit from sub-pixel positioning of text.
- 2015/07/08 (1.43) - switched rendering data to use indexed rendering. this is saving a fair amount of CPU/GPU and enables us to get anti-aliasing for a marginal cost.
this necessary change will break your rendering function! the fix should be very easy. sorry for that :(
- if you are using a vanilla copy of one of the imgui_impl_XXXX.cpp provided in the example, you just need to update your copy and you can ignore the rest.
- the signature of the io.RenderDrawListsFn handler has changed!
ImGui_XXXX_RenderDrawLists(ImDrawList** const cmd_lists, int cmd_lists_count)
became:
ImGui_XXXX_RenderDrawLists(ImDrawData* draw_data).
argument 'cmd_lists' -> 'draw_data->CmdLists'
argument 'cmd_lists_count' -> 'draw_data->CmdListsCount'
ImDrawList 'commands' -> 'CmdBuffer'
ImDrawList 'vtx_buffer' -> 'VtxBuffer'
ImDrawList n/a -> 'IdxBuffer' (new)
ImDrawCmd 'vtx_count' -> 'ElemCount'
ImDrawCmd 'clip_rect' -> 'ClipRect'
ImDrawCmd 'user_callback' -> 'UserCallback'
ImDrawCmd 'texture_id' -> 'TextureId'
- each ImDrawList now contains both a vertex buffer and an index buffer. For each command, render ElemCount/3 triangles using indices from the index buffer.
- if you REALLY cannot render indexed primitives, you can call the draw_data->DeIndexAllBuffers() method to de-index the buffers. This is slow and a waste of CPU/GPU. Prefer using indexed rendering!
- refer to code in the examples/ folder or ask on the GitHub if you are unsure of how to upgrade. please upgrade!
- 2015/07/10 (1.43) - changed SameLine() parameters from int to float.
- 2015/07/02 (1.42) - renamed SetScrollPosHere() to SetScrollFromCursorPos(). Kept inline redirection function (will obsolete).
- 2015/07/02 (1.42) - renamed GetScrollPosY() to GetScrollY(). Necessary to reduce confusion along with other scrolling functions, because positions (e.g. cursor position) are not equivalent to scrolling amount.
- 2015/06/14 (1.41) - changed ImageButton() default bg_col parameter from (0,0,0,1) (black) to (0,0,0,0) (transparent) - makes a difference when texture have transparence
- 2015/06/14 (1.41) - changed Selectable() API from (label, selected, size) to (label, selected, flags, size). Size override should have been rarely be used. Sorry!
- 2015/05/31 (1.40) - renamed GetWindowCollapsed() to IsWindowCollapsed() for consistency. Kept inline redirection function (will obsolete).
- 2015/05/31 (1.40) - renamed IsRectClipped() to IsRectVisible() for consistency. Note that return value is opposite! Kept inline redirection function (will obsolete).
- 2015/05/27 (1.40) - removed the third 'repeat_if_held' parameter from Button() - sorry! it was rarely used and inconsistent. Use PushButtonRepeat(true) / PopButtonRepeat() to enable repeat on desired buttons.
- 2015/05/11 (1.40) - changed BeginPopup() API, takes a string identifier instead of a bool. ImGui needs to manage the open/closed state of popups. Call OpenPopup() to actually set the "open" state of a popup. BeginPopup() returns true if the popup is opened.
- 2015/05/03 (1.40) - removed style.AutoFitPadding, using style.WindowPadding makes more sense (the default values were already the same).
- 2015/04/13 (1.38) - renamed IsClipped() to IsRectClipped(). Kept inline redirection function until 1.50.
- 2015/04/09 (1.38) - renamed ImDrawList::AddArc() to ImDrawList::AddArcFast() for compatibility with future API
- 2015/04/03 (1.38) - removed ImGuiCol_CheckHovered, ImGuiCol_CheckActive, replaced with the more general ImGuiCol_FrameBgHovered, ImGuiCol_FrameBgActive.
- 2014/04/03 (1.38) - removed support for passing -FLT_MAX..+FLT_MAX as the range for a SliderFloat(). Use DragFloat() or Inputfloat() instead.
- 2015/03/17 (1.36) - renamed GetItemBoxMin()/GetItemBoxMax()/IsMouseHoveringBox() to GetItemRectMin()/GetItemRectMax()/IsMouseHoveringRect(). Kept inline redirection function until 1.50.
- 2015/03/15 (1.36) - renamed style.TreeNodeSpacing to style.IndentSpacing, ImGuiStyleVar_TreeNodeSpacing to ImGuiStyleVar_IndentSpacing
- 2015/03/13 (1.36) - renamed GetWindowIsFocused() to IsWindowFocused(). Kept inline redirection function until 1.50.
- 2015/03/08 (1.35) - renamed style.ScrollBarWidth to style.ScrollbarWidth (casing)
- 2015/02/27 (1.34) - renamed OpenNextNode(bool) to SetNextTreeNodeOpened(bool, ImGuiSetCond). Kept inline redirection function until 1.50.
- 2015/02/27 (1.34) - renamed ImGuiSetCondition_*** to ImGuiSetCond_***, and _FirstUseThisSession becomes _Once.
- 2015/02/11 (1.32) - changed text input callback ImGuiTextEditCallback return type from void-->int. reserved for future use, return 0 for now.
- 2015/02/10 (1.32) - renamed GetItemWidth() to CalcItemWidth() to clarify its evolving behavior
- 2015/02/08 (1.31) - renamed GetTextLineSpacing() to GetTextLineHeightWithSpacing()
- 2015/02/01 (1.31) - removed IO.MemReallocFn (unused)
- 2015/01/19 (1.30) - renamed ImGuiStorage::GetIntPtr()/GetFloatPtr() to GetIntRef()/GetIntRef() because Ptr was conflicting with actual pointer storage functions.
- 2015/01/11 (1.30) - big font/image API change! now loads TTF file. allow for multiple fonts. no need for a PNG loader.
(1.30) - removed GetDefaultFontData(). uses io.Fonts->GetTextureData*() API to retrieve uncompressed pixels.
this sequence:
const void* png_data;
unsigned int png_size;
ImGui::GetDefaultFontData(NULL, NULL, &png_data, &png_size);
// <Copy to GPU>
became:
unsigned char* pixels;
int width, height;
io.Fonts->GetTexDataAsRGBA32(&pixels, &width, &height);
// <Copy to GPU>
io.Fonts->TexID = (your_texture_identifier);
you now have much more flexibility to load multiple TTF fonts and manage the texture buffer for internal needs.
it is now recommended that you sample the font texture with bilinear interpolation.
(1.30) - added texture identifier in ImDrawCmd passed to your render function (we can now render images). make sure to set io.Fonts->TexID.
(1.30) - removed IO.PixelCenterOffset (unnecessary, can be handled in user projection matrix)
(1.30) - removed ImGui::IsItemFocused() in favor of ImGui::IsItemActive() which handles all widgets
- 2014/12/10 (1.18) - removed SetNewWindowDefaultPos() in favor of new generic API SetNextWindowPos(pos, ImGuiSetCondition_FirstUseEver)
- 2014/11/28 (1.17) - moved IO.Font*** options to inside the IO.Font-> structure (FontYOffset, FontTexUvForWhite, FontBaseScale, FontFallbackGlyph)
- 2014/11/26 (1.17) - reworked syntax of IMGUI_ONCE_UPON_A_FRAME helper macro to increase compiler compatibility
- 2014/11/07 (1.15) - renamed IsHovered() to IsItemHovered()
- 2014/10/02 (1.14) - renamed IMGUI_INCLUDE_IMGUI_USER_CPP to IMGUI_INCLUDE_IMGUI_USER_INL and imgui_user.cpp to imgui_user.inl (more IDE friendly)
- 2014/09/25 (1.13) - removed 'text_end' parameter from IO.SetClipboardTextFn (the string is now always zero-terminated for simplicity)
- 2014/09/24 (1.12) - renamed SetFontScale() to SetWindowFontScale()
- 2014/09/24 (1.12) - moved IM_MALLOC/IM_REALLOC/IM_FREE preprocessor defines to IO.MemAllocFn/IO.MemReallocFn/IO.MemFreeFn
- 2014/08/30 (1.09) - removed IO.FontHeight (now computed automatically)
- 2014/08/30 (1.09) - moved IMGUI_FONT_TEX_UV_FOR_WHITE preprocessor define to IO.FontTexUvForWhite
- 2014/08/28 (1.09) - changed the behavior of IO.PixelCenterOffset following various rendering fixes
ISSUES & TODO-LIST
==================
See TODO.txt
FREQUENTLY ASKED QUESTIONS (FAQ), TIPS
======================================
Q: How can I help?
A: - If you are experienced enough with Dear ImGui and with C/C++, look at the todo list and see how you want/can help!
- Become a Patron/donate! Convince your company to become a Patron or provide serious funding for development time! See http://www.patreon.com/imgui
Q: What is ImTextureID and how do I display an image?
A: ImTextureID is a void* used to pass renderer-agnostic texture references around until it hits your render function.
Dear ImGui knows nothing about what those bits represent, it just passes them around. It is up to you to decide what you want the void* to carry!
It could be an identifier to your OpenGL texture (cast GLuint to void*), a pointer to your custom engine material (cast MyMaterial* to void*), etc.
At the end of the chain, your renderer takes this void* to cast it back into whatever it needs to select a current texture to render.
Refer to examples applications, where each renderer (in a imgui_impl_xxxx.cpp file) is treating ImTextureID as a different thing.
(c++ tip: OpenGL uses integers to identify textures. You can safely store an integer into a void*, just cast it to void*, don't take it's address!)
To display a custom image/texture within an ImGui window, you may use ImGui::Image(), ImGui::ImageButton(), ImDrawList::AddImage() functions.
Dear ImGui will generate the geometry and draw calls using the ImTextureID that you passed and which your renderer can use.
It is your responsibility to get textures uploaded to your GPU.
Q: I integrated Dear ImGui in my engine and the text or lines are blurry..
A: In your Render function, try translating your projection matrix by (0.5f,0.5f) or (0.375f,0.375f).
Also make sure your orthographic projection matrix and io.DisplaySize matches your actual framebuffer dimension.
Q: I integrated Dear ImGui in my engine and some elements are clipping or disappearing when I move windows around..
A: You are probably mishandling the clipping rectangles in your render function.
Rectangles provided by ImGui are defined as (x1=left,y1=top,x2=right,y2=bottom) and NOT as (x1,y1,width,height).
Q: Can I have multiple widgets with the same label? Can I have widget without a label?
A: Yes. A primer on the use of labels/IDs in Dear ImGui..
- Elements that are not clickable, such as Text() items don't need an ID.
- Interactive widgets require state to be carried over multiple frames (most typically Dear ImGui often needs to remember what is
the "active" widget). to do so they need a unique ID. unique ID are typically derived from a string label, an integer index or a pointer.
Button("OK"); // Label = "OK", ID = hash of "OK"
Button("Cancel"); // Label = "Cancel", ID = hash of "Cancel"
- ID are uniquely scoped within windows, tree nodes, etc. so no conflict can happen if you have two buttons called "OK"
in two different windows or in two different locations of a tree.
- If you have a same ID twice in the same location, you'll have a conflict:
Button("OK");
Button("OK"); // ID collision! Both buttons will be treated as the same.
Fear not! this is easy to solve and there are many ways to solve it!
- When passing a label you can optionally specify extra unique ID information within string itself.
This helps solving the simpler collision cases. Use "##" to pass a complement to the ID that won't be visible to the end-user:
Button("Play"); // Label = "Play", ID = hash of "Play"
Button("Play##foo1"); // Label = "Play", ID = hash of "Play##foo1" (different from above)
Button("Play##foo2"); // Label = "Play", ID = hash of "Play##foo2" (different from above)
- If you want to completely hide the label, but still need an ID:
Checkbox("##On", &b); // Label = "", ID = hash of "##On" (no label!)
- Occasionally/rarely you might want change a label while preserving a constant ID. This allows you to animate labels.
For example you may want to include varying information in a window title bar (and windows are uniquely identified by their ID.. obviously)
Use "###" to pass a label that isn't part of ID:
Button("Hello###ID"; // Label = "Hello", ID = hash of "ID"
Button("World###ID"; // Label = "World", ID = hash of "ID" (same as above)
sprintf(buf, "My game (%f FPS)###MyGame");
Begin(buf); // Variable label, ID = hash of "MyGame"
- Use PushID() / PopID() to create scopes and avoid ID conflicts within the same Window.
This is the most convenient way of distinguishing ID if you are iterating and creating many UI elements.
You can push a pointer, a string or an integer value. Remember that ID are formed from the concatenation of everything in the ID stack!
for (int i = 0; i < 100; i++)
{
PushID(i);
Button("Click"); // Label = "Click", ID = hash of integer + "label" (unique)
PopID();
}
for (int i = 0; i < 100; i++)
{
MyObject* obj = Objects[i];
PushID(obj);
Button("Click"); // Label = "Click", ID = hash of pointer + "label" (unique)
PopID();
}
for (int i = 0; i < 100; i++)
{
MyObject* obj = Objects[i];
PushID(obj->Name);
Button("Click"); // Label = "Click", ID = hash of string + "label" (unique)
PopID();
}
- More example showing that you can stack multiple prefixes into the ID stack:
Button("Click"); // Label = "Click", ID = hash of "Click"
PushID("node");
Button("Click"); // Label = "Click", ID = hash of "node" + "Click"
PushID(my_ptr);
Button("Click"); // Label = "Click", ID = hash of "node" + ptr + "Click"
PopID();
PopID();
- Tree nodes implicitly creates a scope for you by calling PushID().
Button("Click"); // Label = "Click", ID = hash of "Click"
if (TreeNode("node"))
{
Button("Click"); // Label = "Click", ID = hash of "node" + "Click"
TreePop();
}
- When working with trees, ID are used to preserve the open/close state of each tree node.
Depending on your use cases you may want to use strings, indices or pointers as ID.
e.g. when displaying a single object that may change over time (dynamic 1-1 relationship), using a static string as ID will preserve your
node open/closed state when the targeted object change.
e.g. when displaying a list of objects, using indices or pointers as ID will preserve the node open/closed state differently.
experiment and see what makes more sense!
Q: How can I tell when Dear ImGui wants my mouse/keyboard inputs VS when I can pass them to my application?
A: You can read the 'io.WantCaptureMouse'/'io.WantCaptureKeyboard'/'ioWantTextInput' flags from the ImGuiIO structure.
- When 'io.WantCaptureMouse' or 'io.WantCaptureKeyboard' flags are set you may want to discard/hide the inputs from the rest of your application.
- When 'io.WantTextInput' is set to may want to notify your OS to popup an on-screen keyboard, if available (e.g. on a mobile phone, or console OS).
Preferably read the flags after calling ImGui::NewFrame() to avoid them lagging by one frame. But reading those flags before calling NewFrame() is
also generally ok, as the bool toggles fairly rarely and you don't generally expect to interact with either Dear ImGui or your application during
the same frame when that transition occurs. Dear ImGui is tracking dragging and widget activity that may occur outside the boundary of a window,
so 'io.WantCaptureMouse' is more accurate and correct than checking if a window is hovered.
(Advanced note: text input releases focus on Return 'KeyDown', so the following Return 'KeyUp' event that your application receive will typically
have 'io.WantCaptureKeyboard=false'. Depending on your application logic it may or not be inconvenient. You might want to track which key-downs
were for Dear ImGui, e.g. with an array of bool, and filter out the corresponding key-ups.)
Q: How can I load a different font than the default? (default is an embedded version of ProggyClean.ttf, rendered at size 13)
A: Use the font atlas to load the TTF/OTF file you want:
ImGuiIO& io = ImGui::GetIO();
io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels);
io.Fonts->GetTexDataAsRGBA32() or GetTexDataAsAlpha8()
Q: How can I easily use icons in my application?
A: The most convenient and practical way is to merge an icon font such as FontAwesome inside you main font. Then you can refer to icons within your
strings. Read 'How can I load multiple fonts?' and the file 'extra_fonts/README.txt' for instructions and useful header files.
Q: How can I load multiple fonts?
A: Use the font atlas to pack them into a single texture:
(Read extra_fonts/README.txt and the code in ImFontAtlas for more details.)
ImGuiIO& io = ImGui::GetIO();
ImFont* font0 = io.Fonts->AddFontDefault();
ImFont* font1 = io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels);
ImFont* font2 = io.Fonts->AddFontFromFileTTF("myfontfile2.ttf", size_in_pixels);
io.Fonts->GetTexDataAsRGBA32() or GetTexDataAsAlpha8()
// the first loaded font gets used by default
// use ImGui::PushFont()/ImGui::PopFont() to change the font at runtime
// Options
ImFontConfig config;
config.OversampleH = 3;
config.OversampleV = 1;
config.GlyphOffset.y -= 2.0f; // Move everything by 2 pixels up
config.GlyphExtraSpacing.x = 1.0f; // Increase spacing between characters
io.Fonts->LoadFromFileTTF("myfontfile.ttf", size_pixels, &config);
// Combine multiple fonts into one (e.g. for icon fonts)
ImWchar ranges[] = { 0xf000, 0xf3ff, 0 };
ImFontConfig config;
config.MergeMode = true;
io.Fonts->AddFontDefault();
io.Fonts->LoadFromFileTTF("fontawesome-webfont.ttf", 16.0f, &config, ranges); // Merge icon font
io.Fonts->LoadFromFileTTF("myfontfile.ttf", size_pixels, NULL, &config, io.Fonts->GetGlyphRangesJapanese()); // Merge japanese glyphs
Q: How can I display and input non-Latin characters such as Chinese, Japanese, Korean, Cyrillic?
A: When loading a font, pass custom Unicode ranges to specify the glyphs to load.
// Add default Japanese ranges
io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, NULL, io.Fonts->GetGlyphRangesJapanese());
// Or create your own custom ranges (e.g. for a game you can feed your entire game script and only build the characters the game need)
ImVector<ImWchar> ranges;
ImFontAtlas::GlyphRangesBuilder builder;
builder.AddText("Hello world"); // Add a string (here "Hello world" contains 7 unique characters)
builder.AddChar(0x7262); // Add a specific character
builder.AddRanges(io.Fonts->GetGlyphRangesJapanese()); // Add one of the default ranges
builder.BuildRanges(&ranges); // Build the final result (ordered ranges with all the unique characters submitted)
io.Fonts->AddFontFromFileTTF("myfontfile.ttf", size_in_pixels, NULL, ranges.Data);
All your strings needs to use UTF-8 encoding. In C++11 you can encode a string literal in UTF-8 by using the u8"hello" syntax.
Specifying literal in your source code using a local code page (such as CP-923 for Japanese or CP-1251 for Cyrillic) will NOT work!
Otherwise you can convert yourself to UTF-8 or load text data from file already saved as UTF-8.
Text input: it is up to your application to pass the right character code to io.AddInputCharacter(). The applications in examples/ are doing that.
For languages using IME, on Windows you can copy the Hwnd of your application to io.ImeWindowHandle.
The default implementation of io.ImeSetInputScreenPosFn() on Windows will set your IME position correctly.
Q: How can I preserve my Dear ImGui context across reloading a DLL? (loss of the global/static variables)
A: Create your own context 'ctx = CreateContext()' + 'SetCurrentContext(ctx)' and your own font atlas 'ctx->GetIO().Fonts = new ImFontAtlas()'
so you don't rely on the default globals.
Q: How can I use the drawing facilities without an ImGui window? (using ImDrawList API)
A: The easiest way is to create a dummy window. Call Begin() with NoTitleBar|NoResize|NoMove|NoScrollbar|NoSavedSettings|NoInputs flag,
zero background alpha, then retrieve the ImDrawList* via GetWindowDrawList() and draw to it in any way you like.
You can also perfectly create a standalone ImDrawList instance _but_ you need ImGui to be initialized because ImDrawList pulls from ImGui
data to retrieve the coordinates of the white pixel.
- tip: you can call Begin() multiple times with the same name during the same frame, it will keep appending to the same window.
this is also useful to set yourself in the context of another window (to get/set other settings)
- tip: you can create widgets without a Begin()/End() block, they will go in an implicit window called "Debug".
- tip: the ImGuiOnceUponAFrame helper will allow run the block of code only once a frame. You can use it to quickly add custom UI in the middle
of a deep nested inner loop in your code.
- tip: you can call Render() multiple times (e.g for VR renders).
- tip: call and read the ShowDemoWindow() code in imgui_demo.cpp for more example of how to use ImGui!
*/
#include "imgui.h"
#define IMGUI_DEFINE_MATH_OPERATORS
#include "imgui_internal.h"
#include <ctype.h> // toupper, isprint
#include <stdlib.h> // NULL, malloc, free, qsort, atoi
#include <stdio.h> // vsnprintf, sscanf, printf
#include <limits.h> // INT_MIN, INT_MAX
#if defined(_MSC_VER) && _MSC_VER <= 1500 // MSVC 2008 or earlier
#include <stddef.h> // intptr_t
#else
#include <stdint.h> // intptr_t
#endif
#ifdef _MSC_VER
#pragma warning (disable: 4127) // condition expression is constant
#pragma warning (disable: 4505) // unreferenced local function has been removed (stb stuff)
#pragma warning (disable: 4996) // 'This function or variable may be unsafe': strcpy, strdup, sprintf, vsnprintf, sscanf, fopen
#endif
// Clang warnings with -Weverything
#ifdef __clang__
#pragma clang diagnostic ignored "-Wunknown-pragmas" // warning : unknown warning group '-Wformat-pedantic *' // not all warnings are known by all clang versions.. so ignoring warnings triggers new warnings on some configuration. great!
#pragma clang diagnostic ignored "-Wold-style-cast" // warning : use of old-style cast // yes, they are more terse.
#pragma clang diagnostic ignored "-Wfloat-equal" // warning : comparing floating point with == or != is unsafe // storing and comparing against same constants (typically 0.0f) is ok.
#pragma clang diagnostic ignored "-Wformat-nonliteral" // warning : format string is not a string literal // passing non-literal to vsnformat(). yes, user passing incorrect format strings can crash the code.
#pragma clang diagnostic ignored "-Wexit-time-destructors" // warning : declaration requires an exit-time destructor // exit-time destruction order is undefined. if MemFree() leads to users code that has been disabled before exit it might cause problems. ImGui coding style welcomes static/globals.
#pragma clang diagnostic ignored "-Wglobal-constructors" // warning : declaration requires a global destructor // similar to above, not sure what the exact difference it.
#pragma clang diagnostic ignored "-Wsign-conversion" // warning : implicit conversion changes signedness //
#pragma clang diagnostic ignored "-Wformat-pedantic" // warning : format specifies type 'void *' but the argument has type 'xxxx *' // unreasonable, would lead to casting every %p arg to void*. probably enabled by -pedantic.
#pragma clang diag
gitextract_yzzz2n58/ ├── FortniteCheatSRCUpdateEveryUpdate/ │ ├── DiscordHook/ │ │ ├── Discord.cpp │ │ └── Discord.h │ ├── FortniteCheatSRCUpdateEveryUpdate.filters │ ├── FortniteCheatSRCUpdateEveryUpdate.user │ ├── FortniteCheatSRCUpdateEveryUpdate.vcxproj │ ├── FortniteCheatSRCUpdateEveryUpdate.vcxproj.user │ ├── Header Files/ │ │ ├── Config/ │ │ │ ├── Archivex.h │ │ │ └── Config.h │ │ ├── FortUpdaters/ │ │ │ ├── FortUpdaters.cpp │ │ │ └── FortUpdaters.h │ │ ├── Structs.h │ │ ├── core/ │ │ │ └── core.h │ │ ├── includes.h │ │ ├── menu/ │ │ │ └── menu.h │ │ ├── offsets/ │ │ │ └── offsets.h │ │ ├── settings/ │ │ │ └── settings.h │ │ ├── util/ │ │ │ └── util.h │ │ ├── xor/ │ │ │ └── xor.hpp │ │ └── xorstr.h │ ├── Helper/ │ │ ├── Helper.cpp │ │ └── Helper.h │ ├── Source Files/ │ │ ├── Config/ │ │ │ └── Config.cpp │ │ ├── FortUpdaters/ │ │ │ └── FortUpdaters.cpp │ │ ├── core/ │ │ │ └── core.cpp │ │ ├── menu/ │ │ │ └── menu.cpp │ │ ├── offsets/ │ │ │ └── offsets.cpp │ │ ├── settings/ │ │ │ └── settings.cpp │ │ └── util/ │ │ └── Util.cpp │ ├── dllmain.cpp │ ├── imgui/ │ │ ├── Instructions.txt │ │ ├── LICENSE.txt │ │ ├── imconfig.h │ │ ├── imgui.cpp │ │ ├── imgui.h │ │ ├── imgui_draw.cpp │ │ ├── imgui_impl_dx11.cpp │ │ ├── imgui_impl_dx11.h │ │ ├── imgui_internal.h │ │ ├── imgui_xorstr.h │ │ ├── stb_rect_pack.h │ │ ├── stb_textedit.h │ │ └── stb_truetype.h │ └── spoofinternal.asm ├── FortniteCheatSRCUpdateEveryUpdate.sln ├── LICENSE └── README.md
SYMBOL INDEX (790 symbols across 33 files)
FILE: FortniteCheatSRCUpdateEveryUpdate/DiscordHook/Discord.cpp
function HCURSOR (line 150) | HCURSOR Discord::SetCursor(HCURSOR hCursor)
FILE: FortniteCheatSRCUpdateEveryUpdate/DiscordHook/Discord.h
function class (line 9) | class Discord
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/Config/Archivex.h
function noexcept (line 13) | const noexcept
function noexcept (line 20) | const noexcept
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/Config/Config.h
function class (line 9) | class c_config final {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/FortUpdaters/FortUpdaters.cpp
type TArray (line 8) | struct TArray
method TArray (line 13) | inline TArray()
method Num (line 19) | inline int Num() const
method T (line 24) | inline T& operator[](int i)
method T (line 29) | inline const T& operator[](int i) const
method IsValidIndex (line 34) | inline bool IsValidIndex(int i) const
type FString (line 45) | struct FString : private TArray<wchar_t>
method FString (line 47) | inline FString()
method IsValid (line 51) | inline bool IsValid() const
method wchar_t (line 56) | inline const wchar_t* c_str() const
method ToString (line 61) | std::string ToString() const
type FName (line 73) | struct FName
function DWORD (line 97) | DWORD FortUpdater::FindOffset(const char* Class, const char* varName)
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/FortUpdaters/FortUpdaters.h
function class (line 10) | class FortUpdater
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/Structs.h
function class (line 8) | class UClass {
function class (line 14) | class UObject {
function class (line 34) | class FUObjectItem {
function class (line 43) | class TUObjectArray {
function class (line 48) | class GObjects {
function T (line 69) | inline T& operator[](INT i) {
function BOOLEAN (line 73) | inline BOOLEAN IsValidIndex(INT i) {
type FString (line 83) | struct FString
function BOOLEAN (line 97) | inline BOOLEAN IsValid() {
function PWCHAR (line 101) | inline PWCHAR c_str() {
function class (line 106) | class FText {
type FVector (line 118) | typedef struct {
type FVector2D (line 122) | typedef struct {
type FRotator (line 126) | typedef struct {
type FMinimalViewInfo (line 132) | typedef struct {
type FMatrix (line 142) | typedef struct {
type FSceneViewProjectionData (line 146) | typedef struct {
type FBoxSphereBounds (line 153) | typedef struct {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/core/core.h
function namespace (line 35) | namespace Core {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/includes.h
type RGBA (line 43) | typedef struct
function class (line 51) | class Color
function class (line 125) | class Vector3
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/menu/menu.h
function namespace (line 7) | namespace Render {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/offsets/offsets.h
function namespace (line 7) | namespace Offsets {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/settings/settings.h
function namespace (line 8) | namespace SettingsHelper {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/util/util.h
function namespace (line 14) | namespace Util {
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/xor/xor.hpp
function const_atoi (line 12) | constexpr int const_atoi(char c)
class _Basic_XorStr (line 25) | class _Basic_XorStr
method ALWAYS_INLINE (line 31) | constexpr ALWAYS_INLINE _Basic_XorStr(value_type const (&str)[_length])
method c_str (line 37) | inline auto c_str() const
method str (line 44) | inline auto str() const
method ALWAYS_INLINE (line 74) | static ALWAYS_INLINE constexpr auto crypt(value_type c, size_t i)
method decrypt (line 79) | inline void decrypt() const
function _xor_ (line 139) | constexpr ALWAYS_INLINE auto _xor_(char const (&str)[_length])
function _xor_ (line 145) | constexpr ALWAYS_INLINE auto _xor_(wchar_t const (&str)[_length])
function _xor_ (line 151) | constexpr ALWAYS_INLINE auto _xor_(char16_t const (&str)[_length])
function _xor_ (line 157) | constexpr ALWAYS_INLINE auto _xor_(char32_t const (&str)[_length])
FILE: FortniteCheatSRCUpdateEveryUpdate/Header Files/xorstr.h
type unsigned_ (line 46) | struct unsigned_
type unsigned_ (line 50) | struct unsigned_
type unsigned_ (line 54) | struct unsigned_
type _ki (line 84) | struct _ki {
function XORSTR_FORCEINLINE (line 133) | XORSTR_FORCEINLINE void _crypt_256_single(const std::uint64_t* keys,
function _crypt_256 (line 145) | void _crypt_256(const std::uint64_t* keys,
function XORSTR_FORCEINLINE (line 150) | XORSTR_FORCEINLINE void _crypt_128_single(const std::uint64_t* keys,
function _crypt_128 (line 159) | void _crypt_128(const std::uint64_t* keys,
function XORSTR_FORCEINLINE (line 165) | XORSTR_FORCEINLINE constexpr void _copy() noexcept {
FILE: FortniteCheatSRCUpdateEveryUpdate/Helper/Helper.h
function class (line 9) | class Helper
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/FortUpdaters/FortUpdaters.cpp
type TArray (line 11) | struct TArray
method TArray (line 16) | inline TArray()
method Num (line 22) | inline int Num() const
method T (line 27) | inline T& operator[](int i)
method T (line 32) | inline const T& operator[](int i) const
method IsValidIndex (line 37) | inline bool IsValidIndex(int i) const
type FString (line 48) | struct FString : private TArray<wchar_t>
method FString (line 50) | inline FString()
method IsValid (line 54) | inline bool IsValid() const
method wchar_t (line 59) | inline const wchar_t* c_str() const
method ToString (line 64) | std::string ToString() const
type FName (line 76) | struct FName
function DWORD (line 100) | DWORD FortUpdater::FindOffset(const char* Class, const char* varName)
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/core/core.cpp
type Core (line 13) | namespace Core {
function BOOLEAN (line 39) | BOOLEAN GetTarget(FVector& out) {
function PVOID (line 90) | PVOID ProcessEventHook(UObject* object, UObject* func, PVOID params, P...
function PVOID (line 180) | PVOID CalculateSpreadHook(PVOID arg0, float* arg1, float* arg2) {
function INT (line 281) | INT GetViewPointHook(PVOID player, FMinimalViewInfo* viewInfo, BYTE st...
function VOID (line 346) | VOID ReloadHook(PVOID arg0, PVOID arg1) {
function BOOLEAN (line 364) | BOOLEAN Initialize() {
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/menu/menu.cpp
function ToggleButton (line 25) | void ToggleButton(const char* str_id, bool* v)
function VOID (line 59) | VOID AddMarker(ImGuiWindow& window, float width, float height, float* st...
function FLOAT (line 79) | FLOAT GetDistance(ImGuiWindow& window, float width, float height, float*...
function LRESULT (line 96) | __declspec(dllexport) LRESULT CALLBACK WndProcHook(HWND hWnd, UINT msg, ...
function ImGuiWindow (line 122) | ImGuiWindow& BeginScene() {
function VOID (line 138) | VOID EndScene(ImGuiWindow& window) {
function VOID (line 294) | VOID AddLine(ImGuiWindow& window, float width, float height, float a[3],...
function HRESULT (line 315) | __declspec(dllexport) HRESULT PresentHook(IDXGISwapChain* swapChain, UIN...
function HRESULT (line 856) | __declspec(dllexport) HRESULT ResizeHook(IDXGISwapChain* swapChain, UINT...
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/offsets/offsets.cpp
type Offsets (line 9) | namespace Offsets {
type Engine (line 12) | namespace Engine {
type World (line 13) | namespace World {
type Level (line 18) | namespace Level {
type GameInstance (line 22) | namespace GameInstance {
type Player (line 26) | namespace Player {
type Controller (line 30) | namespace Controller {
type PlayerController (line 36) | namespace PlayerController {
type Pawn (line 41) | namespace Pawn {
type PlayerState (line 45) | namespace PlayerState {
type Actor (line 49) | namespace Actor {
type Character (line 54) | namespace Character {
type SceneComponent (line 58) | namespace SceneComponent {
type StaticMeshComponent (line 63) | namespace StaticMeshComponent {
type SkinnedMeshComponent (line 68) | namespace SkinnedMeshComponent {
type FortniteGame (line 73) | namespace FortniteGame {
type FortPawn (line 74) | namespace FortPawn {
type FortPickup (line 80) | namespace FortPickup {
type FortItemEntry (line 84) | namespace FortItemEntry {
type FortItemDefinition (line 88) | namespace FortItemDefinition {
type FortPlayerStateAthena (line 93) | namespace FortPlayerStateAthena {
type FortWeapon (line 97) | namespace FortWeapon {
type FortHoagieVehicle (line 102) | namespace FortHoagieVehicle {
type FortWeaponItemDefinition (line 106) | namespace FortWeaponItemDefinition {
type FortProjectileAthena (line 110) | namespace FortProjectileAthena {
type FortBaseWeaponStats (line 114) | namespace FortBaseWeaponStats {
type BuildingContainer (line 118) | namespace BuildingContainer {
type UI (line 123) | namespace UI {
type ItemCount (line 124) | namespace ItemCount {
function BOOLEAN (line 129) | BOOLEAN Initialize() {
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/settings/settings.cpp
type SettingsHelper (line 13) | namespace SettingsHelper {
function VOID (line 14) | VOID SaveSettings() {
function VOID (line 26) | VOID ResetSettings() {
function VOID (line 115) | VOID Initialize() {
FILE: FortniteCheatSRCUpdateEveryUpdate/Source Files/util/Util.cpp
type Util (line 13) | namespace Util {
function VOID (line 25) | VOID CreateConsole() {
function BOOLEAN (line 32) | BOOLEAN MaskCompare(PVOID buffer, LPCSTR pattern, LPCSTR mask) {
function PBYTE (line 42) | PBYTE FindPattern(PVOID base, DWORD size, LPCSTR pattern, LPCSTR mask) {
function PBYTE (line 55) | PBYTE FindPattern(LPCSTR pattern, LPCSTR mask) {
function VOID (line 62) | VOID Free(PVOID buffer) {
function GetObjectFirstName (line 66) | std::wstring GetObjectFirstName(UObject* object) {
function GetObjectName (line 78) | std::wstring GetObjectName(UObject* object) {
function BOOLEAN (line 93) | BOOLEAN GetOffsets(std::vector<Offsets::OFFSET>& offsets) {
function PVOID (line 131) | PVOID FindObject(LPCWSTR name) {
function VOID (line 149) | VOID ToMatrixWithScale(float* in, float out[4][4])
function VOID (line 191) | VOID MultiplyMatrices(float a[4][4], float b[4][4], float out[4][4]) {
function VOID (line 205) | VOID GetBoneLocation(float compMatrix[4][4], PVOID bones, DWORD index,...
function VOID (line 217) | VOID GetViewProjectionMatrix(FSceneViewProjectionData* projectionData,...
function BOOLEAN (line 232) | BOOLEAN ProjectWorldToScreen(float viewProjection[4][4], float width, ...
function VOID (line 254) | VOID CalculateProjectionMatrixGivenViewHook(FMinimalViewInfo* viewInfo...
function BOOLEAN (line 261) | BOOLEAN WorldToScreen(float width, float height, float inOutPosition[3...
function BOOLEAN (line 265) | BOOLEAN LineOfSightTo(PVOID PlayerController, PVOID Actor, FVector* Vi...
function FMinimalViewInfo (line 269) | FMinimalViewInfo& GetViewInfo() {
function FVector (line 273) | FVector* GetPawnRootLocation(PVOID pawn) {
function Normalize (line 282) | float Normalize(float angle) {
function VOID (line 290) | VOID CalcAngle(float* src, float* dst, float* angles) {
function BOOLEAN (line 305) | BOOLEAN Initialize() {
FILE: FortniteCheatSRCUpdateEveryUpdate/dllmain.cpp
function VOID (line 10) | VOID Main() {
function BOOL (line 29) | BOOL APIENTRY DllMain(HMODULE module, DWORD reason, LPVOID reserved) {
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui.cpp
type ImGui (line 678) | namespace ImGui
function ImVec2 (line 862) | ImVec2 ImLineClosestPoint(const ImVec2& a, const ImVec2& b, const ImVec2...
function ImTriangleContainsPoint (line 876) | bool ImTriangleContainsPoint(const ImVec2& a, const ImVec2& b, const ImV...
function ImTriangleBarycentricCoords (line 884) | void ImTriangleBarycentricCoords(const ImVec2& a, const ImVec2& b, const...
function ImVec2 (line 895) | ImVec2 ImTriangleClosestPoint(const ImVec2& a, const ImVec2& b, const Im...
function ImStricmp (line 911) | int ImStricmp(const char* str1, const char* str2)
function ImStrnicmp (line 918) | int ImStrnicmp(const char* str1, const char* str2, size_t count)
function ImStrncpy (line 925) | void ImStrncpy(char* dst, const char* src, size_t count)
function ImStrlenW (line 947) | int ImStrlenW(const ImWchar* str)
function ImWchar (line 954) | const ImWchar* ImStrbolW(const ImWchar* buf_mid_line, const ImWchar* buf...
function ImFormatString (line 999) | int ImFormatString(char* buf, size_t buf_size, const char* fmt, ...)
function ImFormatStringV (line 1013) | int ImFormatStringV(char* buf, size_t buf_size, const char* fmt, va_list...
function ImU32 (line 1027) | ImU32 ImHash(const void* data, int data_size, ImU32 seed)
function ImTextCharFromUtf8 (line 1076) | int ImTextCharFromUtf8(unsigned int* out_char, const char* in_text, cons...
function ImTextStrFromUtf8 (line 1134) | int ImTextStrFromUtf8(ImWchar* buf, int buf_size, const char* in_text, c...
function ImTextCountCharsFromUtf8 (line 1153) | int ImTextCountCharsFromUtf8(const char* in_text, const char* in_text_end)
function ImTextCharToUtf8 (line 1169) | static inline int ImTextCharToUtf8(char* buf, int buf_size, unsigned int c)
function ImTextCountUtf8BytesFromChar (line 1206) | static inline int ImTextCountUtf8BytesFromChar(unsigned int c)
function ImTextStrToUtf8 (line 1215) | int ImTextStrToUtf8(char* buf, int buf_size, const ImWchar* in_text, con...
function ImTextCountUtf8BytesFromStr (line 1231) | int ImTextCountUtf8BytesFromStr(const ImWchar* in_text, const ImWchar* i...
function ImVec4 (line 1245) | ImVec4 ImGui::ColorConvertU32ToFloat4(ImU32 in)
function ImU32 (line 1255) | ImU32 ImGui::ColorConvertFloat4ToU32(const ImVec4& in)
function ImU32 (line 1265) | ImU32 ImGui::GetColorU32(ImGuiCol idx, float alpha_mul)
function ImU32 (line 1273) | ImU32 ImGui::GetColorU32(const ImVec4& col)
function ImVec4 (line 1281) | const ImVec4& ImGui::GetStyleColorVec4(ImGuiCol idx)
function ImU32 (line 1287) | ImU32 ImGui::GetColorU32(ImU32 col)
function FILE (line 1348) | FILE* ImFileOpen(const char* filename, const char* mode)
function LowerBound (line 1412) | static ImVector<ImGuiStorage::Pair>::iterator LowerBound(ImVector<ImGuiS...
type StaticFunc (line 1437) | struct StaticFunc
method PairCompareByID (line 1439) | static int PairCompareByID(const void* lhs, const void* rhs)
function SetCursorPosYAndSetupDummyPrevLine (line 1744) | static void SetCursorPosYAndSetupDummyPrevLine(float pos_y, float line_h...
function ImGuiID (line 1886) | ImGuiID ImGuiWindow::GetID(const char* str, const char* str_end)
function ImGuiID (line 1894) | ImGuiID ImGuiWindow::GetID(const void* ptr)
function ImGuiID (line 1902) | ImGuiID ImGuiWindow::GetIDNoKeepAlive(const char* str, const char* str_end)
function ImGuiID (line 1909) | ImGuiID ImGuiWindow::GetIDFromRectangle(const ImRect& r_abs)
function SetCurrentWindow (line 1922) | static void SetCurrentWindow(ImGuiWindow* window)
function ImGuiID (line 1955) | ImGuiID ImGui::GetHoveredID()
function IsWindowContentHoverable (line 1968) | static inline bool IsWindowContentHoverable(ImGuiWindow* window, ImGuiHo...
function ImVec2 (line 2144) | ImVec2 ImGui::CalcItemSize(ImVec2 size, float default_x, float default_y)
function ImGuiContext (line 2203) | ImGuiContext* ImGui::GetCurrentContext()
function ImGuiContext (line 2217) | ImGuiContext* ImGui::CreateContext(void* (*malloc_fn)(size_t), void(*fre...
function ImGuiIO (line 2236) | ImGuiIO& ImGui::GetIO()
function ImGuiStyle (line 2241) | ImGuiStyle& ImGui::GetStyle()
function ImDrawData (line 2247) | ImDrawData* ImGui::GetDrawData()
function ImDrawList (line 2262) | ImDrawList* ImGui::GetOverlayDrawList()
function ImDrawListSharedData (line 2267) | ImDrawListSharedData* ImGui::GetDrawListSharedData()
function SettingsHandlerWindow_ReadLine (line 2556) | static void SettingsHandlerWindow_ReadLine(ImGuiContext*, ImGuiSettingsH...
function SettingsHandlerWindow_WriteAll (line 2566) | static void SettingsHandlerWindow_WriteAll(ImGuiContext* imgui_ctx, ImGu...
function ImGuiWindowSettings (line 2677) | ImGuiWindowSettings* ImGui::FindWindowSettings(ImGuiID id)
function ImGuiWindowSettings (line 2686) | static ImGuiWindowSettings* AddWindowSettings(const char* name)
function LoadIniSettingsFromDisk (line 2696) | static void LoadIniSettingsFromDisk(const char* ini_filename)
function ImGuiSettingsHandler (line 2707) | ImGuiSettingsHandler* ImGui::FindSettingsHandler(const char* type_name)
function LoadIniSettingsFromMemory (line 2718) | static void LoadIniSettingsFromMemory(const char* buf_readonly)
function SaveIniSettingsToDisk (line 2769) | static void SaveIniSettingsToDisk(const char* ini_filename)
function SaveIniSettingsToMemory (line 2786) | static void SaveIniSettingsToMemory(ImVector<char>& out_buf)
function MarkIniSettingsDirty (line 2809) | static void MarkIniSettingsDirty(ImGuiWindow* window)
function ChildWindowComparer (line 2818) | static int ChildWindowComparer(const void* lhs, const void* rhs)
function AddWindowToSortedBuffer (line 2829) | static void AddWindowToSortedBuffer(ImVector<ImGuiWindow*>& out_sorted_w...
function AddDrawListToDrawData (line 2846) | static void AddDrawListToDrawData(ImVector<ImDrawList*>* out_render_list...
function AddWindowToDrawData (line 2879) | static void AddWindowToDrawData(ImVector<ImDrawList*>* out_render_list, ...
function AddWindowToDrawDataSelectLayer (line 2890) | static void AddWindowToDrawDataSelectLayer(ImGuiWindow* window)
function SetupDrawData (line 2918) | static void SetupDrawData(ImVector<ImDrawList*>* draw_lists, ImDrawData*...
function LogRenderedText (line 3123) | static void LogRenderedText(const ImVec2* ref_pos, const char* text, con...
function ImVec2 (line 3351) | ImVec2 ImGui::CalcTextSize(const char* text, const char* text_end, bool ...
function ImGuiWindow (line 3408) | static ImGuiWindow* FindHoveredWindow(ImVec2 pos)
function IsKeyPressedMap (line 3445) | static bool IsKeyPressedMap(ImGuiKey key, bool repeat)
function ImVec2 (line 3557) | ImVec2 ImGui::GetMousePos()
function ImVec2 (line 3563) | ImVec2 ImGui::GetMousePosOnOpeningCurrentPopup()
function ImVec2 (line 3581) | ImVec2 ImGui::GetMouseDragDelta(int button, float lock_threshold)
function ImGuiMouseCursor (line 3601) | ImGuiMouseCursor ImGui::GetMouseCursor()
function ImVec2 (line 3664) | ImVec2 ImGui::GetItemRectMin()
function ImVec2 (line 3670) | ImVec2 ImGui::GetItemRectMax()
function ImVec2 (line 3676) | ImVec2 ImGui::GetItemRectSize()
function ImRect (line 3682) | static ImRect GetVisibleRect()
function CloseInactivePopups (line 3782) | static void CloseInactivePopups(ImGuiWindow* ref_window)
function ImGuiWindow (line 3814) | static ImGuiWindow* GetFrontMostModalRootWindow()
function ClosePopupToLevel (line 3824) | static void ClosePopupToLevel(int remaining)
function BeginChildEx (line 3981) | static bool BeginChildEx(const char* name, ImGuiID id, const ImVec2& siz...
function CheckStacksSize (line 4073) | static void CheckStacksSize(ImGuiWindow* window, bool write)
type ImGuiPopupPositionPolicy (line 4087) | enum ImGuiPopupPositionPolicy
function ImVec2 (line 4093) | static ImVec2 FindBestWindowPosForPopup(const ImVec2& ref_pos, const ImV...
function SetWindowConditionAllowFlags (line 4153) | static void SetWindowConditionAllowFlags(ImGuiWindow* window, ImGuiCond ...
function ImGuiWindow (line 4160) | ImGuiWindow* ImGui::FindWindowByName(const char* name)
function ImGuiWindow (line 4167) | static ImGuiWindow* CreateNewWindow(const char* name, ImVec2 size, ImGui...
function ImVec2 (line 4216) | static ImVec2 CalcSizeAfterConstraint(ImGuiWindow* window, ImVec2 new_size)
function ImVec2 (line 4246) | static ImVec2 CalcSizeContents(ImGuiWindow* window)
function ImVec2 (line 4254) | static ImVec2 CalcSizeAutoFit(ImGuiWindow* window, const ImVec2& size_co...
function GetScrollMaxX (line 4278) | static float GetScrollMaxX(ImGuiWindow* window)
function GetScrollMaxY (line 4283) | static float GetScrollMaxY(ImGuiWindow* window)
function ImVec2 (line 4288) | static ImVec2 CalcNextScrollFromScrollTargetAndClamp(ImGuiWindow* window)
function ImGuiCol (line 4306) | static ImGuiCol GetWindowBgColorIdxFromFlags(ImGuiWindowFlags flags)
function CalcResizePosSizeFromAnyCorner (line 4315) | static void CalcResizePosSizeFromAnyCorner(ImGuiWindow* window, const Im...
type ImGuiResizeGripDef (line 4329) | struct ImGuiResizeGripDef
function ImRect (line 4344) | static ImRect GetBorderRect(ImGuiWindow* window, int border_n, float per...
function ImFont (line 5265) | static ImFont* GetDefaultFont()
function SetCurrentFont (line 5271) | static void SetCurrentFont(ImFont* font)
type ImGuiStyleVarInfo (line 5388) | struct ImGuiStyleVarInfo
function ImGuiStyleVarInfo (line 5416) | static const ImGuiStyleVarInfo* GetStyleVarInfo(ImGuiStyleVar idx)
function ImVec2 (line 5605) | ImVec2 ImGui::GetWindowPos()
function SetWindowScrollY (line 5612) | static void SetWindowScrollY(ImGuiWindow* window, float new_scroll_y)
function SetWindowPos (line 5619) | static void SetWindowPos(ImGuiWindow* window, const ImVec2& pos, ImGuiCo...
function ImVec2 (line 5647) | ImVec2 ImGui::GetWindowSize()
function SetWindowSize (line 5653) | static void SetWindowSize(ImGuiWindow* window, const ImVec2& size, ImGui...
function SetWindowCollapsed (line 5694) | static void SetWindowCollapsed(ImGuiWindow* window, bool collapsed, ImGu...
function ImVec2 (line 5791) | ImVec2 ImGui::GetContentRegionMax()
function ImVec2 (line 5800) | ImVec2 ImGui::GetContentRegionAvail()
function ImVec2 (line 5812) | ImVec2 ImGui::GetWindowContentRegionMin()
function ImVec2 (line 5818) | ImVec2 ImGui::GetWindowContentRegionMax()
function ImDrawList (line 5854) | ImDrawList* ImGui::GetWindowDrawList()
function ImFont (line 5860) | ImFont* ImGui::GetFont()
function ImVec2 (line 5870) | ImVec2 ImGui::GetFontTexUvWhitePixel()
function ImVec2 (line 5885) | ImVec2 ImGui::GetCursorPos()
function ImVec2 (line 5980) | ImVec2 ImGui::GetCursorStartPos()
function ImVec2 (line 5986) | ImVec2 ImGui::GetCursorScreenPos()
function ImGuiStorage (line 6080) | ImGuiStorage* ImGui::GetStateStorage()
function ImGuiID (line 7038) | ImGuiID ImGui::GetID(const char* str_id)
function ImGuiID (line 7043) | ImGuiID ImGui::GetID(const char* str_id_begin, const char* str_id_end)
function ImGuiID (line 7048) | ImGuiID ImGui::GetID(const void* ptr_id)
function DataTypeFormatString (line 7108) | static inline void DataTypeFormatString(ImGuiDataType data_type, void* d...
function DataTypeFormatString (line 7116) | static inline void DataTypeFormatString(ImGuiDataType data_type, void* d...
function DataTypeApplyOp (line 7134) | static void DataTypeApplyOp(ImGuiDataType data_type, int op, void* value...
function DataTypeApplyOpFromText (line 7153) | static bool DataTypeApplyOpFromText(const char* buf, const char* initial...
function GetMinimumStepAtDecimalPrecision (line 7265) | static float GetMinimumStepAtDecimalPrecision(int decimal_precision)
function SliderBehaviorCalcRatioFromValue (line 7289) | static inline float SliderBehaviorCalcRatioFromValue(float v, float v_mi...
type ImGuiPlotArrayGetterData (line 8042) | struct ImGuiPlotArrayGetterData
method ImGuiPlotArrayGetterData (line 8047) | ImGuiPlotArrayGetterData(const float* values, int stride) { Values = v...
function Plot_ArrayGetter (line 8050) | static float Plot_ArrayGetter(void* data, int idx)
function InputTextCalcTextLenAndLineCount (line 8319) | static int InputTextCalcTextLenAndLineCount(const char* text_begin, cons...
function ImVec2 (line 8333) | static ImVec2 InputTextCalcTextSizeW(const ImWchar* text_begin, const Im...
type ImGuiStb (line 8378) | namespace ImGuiStb
function STB_TEXTEDIT_STRINGLEN (line 8381) | static int STB_TEXTEDIT_STRINGLEN(const STB_TEXTEDIT_STRING* obj) ...
function ImWchar (line 8382) | static ImWchar STB_TEXTEDIT_GETCHAR(const STB_TEXTEDIT_STRING* obj, in...
function STB_TEXTEDIT_GETWIDTH (line 8383) | static float STB_TEXTEDIT_GETWIDTH(STB_TEXTEDIT_STRING* obj, int lin...
function STB_TEXTEDIT_KEYTOTEXT (line 8384) | static int STB_TEXTEDIT_KEYTOTEXT(int key) { return key >= 0x10000...
function STB_TEXTEDIT_LAYOUTROW (line 8386) | static void STB_TEXTEDIT_LAYOUTROW(StbTexteditRow* r, STB_TEXTEDIT_...
function is_separator (line 8399) | static bool is_separator(unsigned int c) { return ImCharIsSpace(c) || ...
function is_word_boundary_from_right (line 8400) | static int is_word_boundary_from_right(STB_TEXTEDIT_STRING* obj, int ...
function STB_TEXTEDIT_MOVEWORDLEFT_IMPL (line 8401) | static int STB_TEXTEDIT_MOVEWORDLEFT_IMPL(STB_TEXTEDIT_STRING* obj, i...
function is_word_boundary_from_left (line 8403) | static int is_word_boundary_from_left(STB_TEXTEDIT_STRING* obj, int i...
function STB_TEXTEDIT_MOVEWORDRIGHT_IMPL (line 8404) | static int STB_TEXTEDIT_MOVEWORDRIGHT_IMPL(STB_TEXTEDIT_STRING* obj, ...
function STB_TEXTEDIT_MOVEWORDRIGHT_IMPL (line 8406) | static int STB_TEXTEDIT_MOVEWORDRIGHT_IMPL(STB_TEXTEDIT_STRING* obj, ...
function STB_TEXTEDIT_DELETECHARS (line 8411) | static void STB_TEXTEDIT_DELETECHARS(STB_TEXTEDIT_STRING* obj, int pos...
function STB_TEXTEDIT_INSERTCHARS (line 8426) | static bool STB_TEXTEDIT_INSERTCHARS(STB_TEXTEDIT_STRING* obj, int pos...
function InputTextFilterCharacter (line 8518) | static bool InputTextFilterCharacter(unsigned int* p_char, ImGuiInputTex...
function CalcMaxPopupHeightFromItemCount (line 9335) | static float CalcMaxPopupHeightFromItemCount(int items_count)
function Items_ArrayGetter (line 9486) | static bool Items_ArrayGetter(void* data, int idx, const char** out_text)
function Items_SingleStringGetter (line 9494) | static bool Items_SingleStringGetter(void* data, int idx, const char** o...
function ImU32 (line 9984) | static inline ImU32 ImAlphaBlendColor(ImU32 col_a, ImU32 col_b)
function ColorPickerOptionsPopup (line 10171) | static void ColorPickerOptionsPopup(ImGuiColorEditFlags flags, const flo...
function RenderArrow (line 10421) | static void RenderArrow(ImDrawList* draw_list, ImVec2 pos, ImVec2 half_s...
function RenderArrowsForVerticalBar (line 10433) | static void RenderArrowsForVerticalBar(ImDrawList* draw_list, ImVec2 pos...
function OffsetNormToPixels (line 11032) | static float OffsetNormToPixels(const ImGuiColumnsSet* columns, float of...
function PixelsToOffsetNorm (line 11037) | static float PixelsToOffsetNorm(const ImGuiColumnsSet* columns, float of...
function GetColumnsRectHalfWidth (line 11042) | static inline float GetColumnsRectHalfWidth() { return 4.0f; }
function GetDraggedColumnOffset (line 11044) | static float GetDraggedColumnOffset(ImGuiColumnsSet* columns, int column...
function GetColumnWidthEx (line 11086) | static float GetColumnWidthEx(ImGuiColumnsSet* columns, int column_index...
function ImGuiColumnsSet (line 11153) | static ImGuiColumnsSet* FindOrAddColumnsSet(ImGuiWindow* window, ImGuiID...
function ImGuiPayload (line 11613) | const ImGuiPayload* ImGui::AcceptDragDropPayload(const char* type, ImGui...
function SetClipboardTextFn_DefaultImpl (line 11706) | static void SetClipboardTextFn_DefaultImpl(void*, const char* text)
function SetClipboardTextFn_DefaultImpl (line 11735) | static void SetClipboardTextFn_DefaultImpl(void*, const char* text)
function ImeSetInputScreenPosFn_DefaultImpl (line 11755) | static void ImeSetInputScreenPosFn_DefaultImpl(int x, int y)
function ImeSetInputScreenPosFn_DefaultImpl (line 11771) | static void ImeSetInputScreenPosFn_DefaultImpl(int, int) {}
type Funcs (line 11791) | struct Funcs
method NodeDrawList (line 11793) | static void NodeDrawList(ImGuiWindow* window, ImDrawList* draw_list, c...
method NodeWindows (line 11862) | static void NodeWindows(ImVector<ImGuiWindow*>& windows, const char* l...
method NodeWindow (line 11871) | static void NodeWindow(ImGuiWindow* window, const char* label)
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui.h
type ImDrawChannel (line 53) | struct ImDrawChannel
type ImDrawCmd (line 54) | struct ImDrawCmd
type ImDrawData (line 55) | struct ImDrawData
type ImDrawList (line 56) | struct ImDrawList
type ImDrawListSharedData (line 57) | struct ImDrawListSharedData
type ImDrawVert (line 58) | struct ImDrawVert
type ImFont (line 59) | struct ImFont
type ImFontAtlas (line 60) | struct ImFontAtlas
type ImFontConfig (line 61) | struct ImFontConfig
type ImColor (line 62) | struct ImColor
type ImGuiIO (line 63) | struct ImGuiIO
type ImGuiOnceUponAFrame (line 64) | struct ImGuiOnceUponAFrame
type ImGuiStorage (line 65) | struct ImGuiStorage
type ImGuiStyle (line 66) | struct ImGuiStyle
type ImGuiTextFilter (line 67) | struct ImGuiTextFilter
type ImGuiTextBuffer (line 68) | struct ImGuiTextBuffer
type ImGuiTextEditCallbackData (line 69) | struct ImGuiTextEditCallbackData
type ImGuiSizeCallbackData (line 70) | struct ImGuiSizeCallbackData
type ImGuiListClipper (line 71) | struct ImGuiListClipper
type ImGuiPayload (line 72) | struct ImGuiPayload
type ImGuiContext (line 73) | struct ImGuiContext
type ImU32 (line 76) | typedef unsigned int ImU32;
type ImGuiID (line 77) | typedef unsigned int ImGuiID;
type ImWchar (line 78) | typedef unsigned short ImWchar;
type ImGuiCol (line 80) | typedef int ImGuiCol;
type ImGuiCond (line 81) | typedef int ImGuiCond;
type ImGuiKey (line 82) | typedef int ImGuiKey;
type ImGuiMouseCursor (line 83) | typedef int ImGuiMouseCursor;
type ImGuiStyleVar (line 84) | typedef int ImGuiStyleVar;
type ImDrawCornerFlags (line 85) | typedef int ImDrawCornerFlags;
type ImDrawListFlags (line 86) | typedef int ImDrawListFlags;
type ImGuiColorEditFlags (line 87) | typedef int ImGuiColorEditFlags;
type ImGuiColumnsFlags (line 88) | typedef int ImGuiColumnsFlags;
type ImGuiDragDropFlags (line 89) | typedef int ImGuiDragDropFlags;
type ImGuiComboFlags (line 90) | typedef int ImGuiComboFlags;
type ImGuiFocusedFlags (line 91) | typedef int ImGuiFocusedFlags;
type ImGuiHoveredFlags (line 92) | typedef int ImGuiHoveredFlags;
type ImGuiInputTextFlags (line 93) | typedef int ImGuiInputTextFlags;
type ImGuiSelectableFlags (line 94) | typedef int ImGuiSelectableFlags;
type ImGuiTreeNodeFlags (line 95) | typedef int ImGuiTreeNodeFlags;
type ImGuiWindowFlags (line 96) | typedef int ImGuiWindowFlags;
type ImU64 (line 100) | typedef unsigned __int64 ImU64;
type ImU64 (line 102) | typedef unsigned long long ImU64;
function ImVec2 (line 109) | struct ImVec2
function ImVec4 (line 119) | struct ImVec4
function namespace (line 131) | namespace ImGui
type ImGuiWindowFlags_ (line 528) | enum ImGuiWindowFlags_
type ImGuiInputTextFlags_ (line 558) | enum ImGuiInputTextFlags_
type ImGuiTreeNodeFlags_ (line 582) | enum ImGuiTreeNodeFlags_
type ImGuiSelectableFlags_ (line 606) | enum ImGuiSelectableFlags_
type ImGuiComboFlags_ (line 614) | enum ImGuiComboFlags_
type ImGuiFocusedFlags_ (line 625) | enum ImGuiFocusedFlags_
type ImGuiHoveredFlags_ (line 634) | enum ImGuiHoveredFlags_
type ImGuiDragDropFlags_ (line 649) | enum ImGuiDragDropFlags_
type ImGuiKey_ (line 668) | enum ImGuiKey_
type ImGuiCol_ (line 694) | enum ImGuiCol_
type ImGuiStyleVar_ (line 751) | enum ImGuiStyleVar_
type ImGuiColorEditFlags_ (line 780) | enum ImGuiColorEditFlags_
type ImGuiMouseCursor_ (line 810) | enum ImGuiMouseCursor_
type ImGuiCond_ (line 825) | enum ImGuiCond_
type ImGuiStyle (line 838) | struct ImGuiStyle
type ImGuiIO (line 876) | struct ImGuiIO
function namespace (line 993) | namespace ImGui
function ShowTestWindow (line 1000) | static inline void ShowTestWindow() { return ShowDemoWindow(); }
function IsRootWindowFocused (line 1001) | static inline bool IsRootWindowFocused() { return IsWindowFocused(ImGui...
function IsRootWindowOrAnyChildFocused (line 1002) | static inline bool IsRootWindowOrAnyChildFocused() { return IsWindowFoc...
function SetNextWindowContentWidth (line 1003) | static inline void SetNextWindowContentWidth(float w) { SetNextWindowCo...
function IsRootWindowOrAnyChildHovered (line 1006) | static inline bool IsRootWindowOrAnyChildHovered() { return IsItemHover...
function AlignFirstTextHeightToWidgets (line 1007) | static inline void AlignFirstTextHeightToWidgets() { AlignTextToFramePa...
function IsItemHoveredRect (line 1010) | static inline bool IsItemHoveredRect() { return IsItemHovered(ImGuiHove...
function IsPosHoveringAnyWindow (line 1011) | static inline bool IsPosHoveringAnyWindow(const ImVec2&) { IM_ASSERT(0)...
function IsMouseHoveringAnyWindow (line 1012) | static inline bool IsMouseHoveringAnyWindow() { return IsWindowHovered(...
function IsMouseHoveringWindow (line 1013) | static inline bool IsMouseHoveringWindow() { return IsWindowHovered(ImG...
type T (line 1033) | typedef T value_type;
type value_type (line 1034) | typedef value_type* iterator;
type value_type (line 1035) | typedef const value_type* const_iterator;
function value_type (line 1044) | inline value_type& operator[](int i) { IM_ASSERT(i < Size); return Data[...
function value_type (line 1045) | inline const value_type& operator[](int i) const { IM_ASSERT(i < Size); ...
function clear (line 1047) | inline void clear() { if (Data) { Size = Capacity = 0; I...
function iterator (line 1048) | inline iterator begin() { return Data; }
function iterator (line 1050) | inline iterator end() { return Data + Size; }
function value_type (line 1052) | inline value_type& front() { IM_ASSERT(Size > 0); return Data[0]; }
function value_type (line 1053) | inline const value_type& front() const { IM_ASSERT(Size > 0); return Dat...
function value_type (line 1055) | inline const value_type& back() const { IM_ASSERT(Size > 0); return Data...
function _grow_capacity (line 1058) | inline int _grow_capacity(int sz) const { int new_capac...
function resize (line 1060) | inline void resize(int new_size) { if (new_size > Capaci...
function resize (line 1061) | inline void resize(int new_size, const T& v) { if (new_s...
function reserve (line 1062) | inline void reserve(int new_capacity)
function push_back (line 1074) | inline void push_back(const value_type& v) { if (Size ==...
function pop_back (line 1075) | inline void pop_back() { IM_ASSERT(Size > 0); Size--; }
function push_front (line 1076) | inline void push_front(const value_type& v) { if (Size =...
function iterator (line 1078) | inline iterator erase(const_iterator it) { IM_ASSERT(it >= D...
function iterator (line 1079) | inline iterator insert(const_iterator it, const value_type& ...
function contains (line 1080) | inline bool contains(const value_type& v) const { const ...
type ImGuiOnceUponAFrame (line 1088) | struct ImGuiOnceUponAFrame
type ImGuiTextFilter (line 1101) | struct ImGuiTextFilter
function is_blank (line 1114) | static bool is_blank(char c) { return c == ' ' || c == '\t'; }
function trim_blanks (line 1115) | void trim_blanks() { while (b < e && is_blank(*b)) b++; while (e > b&& i...
function Clear (line 1127) | void Clear() { InputBuf[0] = 0; Build(); }
type ImGuiTextBuffer (line 1132) | struct ImGuiTextBuffer
function empty (line 1141) | bool empty() { return Buf.Size <= 1; }
function clear (line 1142) | void clear() { Buf.clear(); Buf.push_back(0); }
function reserve (line 1143) | void reserve(int capacity) { Buf.reserve(capacity); }
function Pair (line 1157) | struct ImGuiStorage
function Clear (line 1172) | void Clear() { Data.clear(); }
type ImGuiTextEditCallbackData (line 1199) | struct ImGuiTextEditCallbackData
type ImGuiSizeCallbackData (line 1228) | struct ImGuiSizeCallbackData
function Clear (line 1237) | struct ImGuiPayload
function IsDataType (line 1253) | bool IsDataType(const char* type) const { return DataFrameCount != -1 &&...
type ImColor (line 1281) | struct ImColor
function operator (line 1290) | inline operator ImU32() const { return ImGui::ColorConvertFloat4ToU32(Va...
function ImGuiListClipper (line 1311) | struct ImGuiListClipper
type ImDrawIdx (line 1353) | typedef unsigned short ImDrawIdx;
type ImDrawVert (line 1358) | struct ImDrawVert
type ImDrawChannel (line 1374) | struct ImDrawChannel
type ImDrawCornerFlags_ (line 1380) | enum ImDrawCornerFlags_
type ImDrawListFlags_ (line 1393) | enum ImDrawListFlags_
function ImDrawList (line 1405) | struct ImDrawList
function ImVec2 (line 1433) | inline ImVec2 GetClipRectMin() const { const ImVec4& cr = _ClipRectSta...
function PathClear (line 1457) | inline void PathClear() { _Path.resize(0); }
function PathLineTo (line 1458) | inline void PathLineTo(const ImVec2& pos) { _Path.push_back(pos); }
function PathLineToMergeDuplicate (line 1459) | inline void PathLineToMergeDuplicate(const ImVec2& pos) { if (_Path....
function PathFillConvex (line 1460) | inline void PathFillConvex(ImU32 col) { AddConvexPolyFilled(_Path.Da...
function PrimWriteVtx (line 1486) | inline void PrimWriteVtx(const ImVec2& pos, const ImVec2& uv, ImU32 ...
function PrimWriteIdx (line 1487) | inline void PrimWriteIdx(ImDrawIdx idx) { *_IdxWritePtr = idx; _IdxW...
function PrimVtx (line 1488) | inline void PrimVtx(const ImVec2& pos, const ImVec2& uv, ImU32 col) ...
function Clear (line 1494) | struct ImDrawData
type ImFontConfig (line 1509) | struct ImFontConfig
type ImFontGlyph (line 1532) | struct ImFontGlyph
type ImFontAtlas (line 1548) | struct ImFontAtlas
function GetBit (line 1586) | struct GlyphRangesBuilder
function SetBit (line 1591) | void SetBit(int n) { UsedChars[n >> 3] |= 1 << (n & 7); }
function AddChar (line 1592) | void AddChar(ImWchar c) { SetBit(c); }
function CustomRect (line 1619) | const CustomRect* GetCustomRectByIndex(int index) const { if (index < 0)...
type ImFont (line 1644) | struct ImFont
type ImFontGlyph (line 1688) | typedef ImFontGlyph Glyph;
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_draw.cpp
function PathBezierToCasteljau (line 895) | static void PathBezierToCasteljau(ImVector<ImVec2>* path, float x1, floa...
function ImFont (line 1465) | ImFont* ImFontAtlas::AddFont(const ImFontConfig* font_cfg)
function Decode85Byte (line 1496) | static unsigned int Decode85Byte(char c) { return c >= '\\' ? c - 36 : c...
function Decode85 (line 1497) | static void Decode85(const unsigned char* src, unsigned char* dst)
function ImFont (line 1509) | ImFont* ImFontAtlas::AddFontDefault(const ImFontConfig* font_cfg_template)
function ImFont (line 1525) | ImFont* ImFontAtlas::AddFontFromFileTTF(const char* filename, float size...
function ImFont (line 1546) | ImFont* ImFontAtlas::AddFontFromMemoryTTF(void* ttf_data, int ttf_size, ...
function ImFont (line 1558) | ImFont* ImFontAtlas::AddFontFromMemoryCompressedTTF(const void* compress...
function ImFont (line 1570) | ImFont* ImFontAtlas::AddFontFromMemoryCompressedBase85TTF(const char* co...
function ImFontAtlasBuildMultiplyCalcLookupTable (line 1622) | void ImFontAtlasBuildMultiplyCalcLookupTable(unsigned char out_table[...
function ImFontAtlasBuildMultiplyRectAlpha8 (line 1631) | void ImFontAtlasBuildMultiplyRectAlpha8(const unsigned char table[256...
function ImFontAtlasBuildWithStbTruetype (line 1639) | bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas)
function ImFontAtlasBuildRegisterDefaultCustomRects (line 1832) | void ImFontAtlasBuildRegisterDefaultCustomRects(ImFontAtlas* atlas)
function ImFontAtlasBuildSetupFont (line 1838) | void ImFontAtlasBuildSetupFont(ImFontAtlas* atlas, ImFont* font, ImFontC...
function ImFontAtlasBuildPackCustomRects (line 1852) | void ImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas, void* pack_cont...
function ImFontAtlasBuildRenderDefaultTexData (line 1878) | static void ImFontAtlasBuildRenderDefaultTexData(ImFontAtlas* atlas)
function ImFontAtlasBuildFinish (line 1917) | void ImFontAtlasBuildFinish(ImFontAtlas* atlas)
function ImWchar (line 1941) | const ImWchar* ImFontAtlas::GetGlyphRangesDefault()
function ImWchar (line 1951) | const ImWchar* ImFontAtlas::GetGlyphRangesKorean()
function ImWchar (line 1963) | const ImWchar* ImFontAtlas::GetGlyphRangesChinese()
function ImWchar (line 1977) | const ImWchar* ImFontAtlas::GetGlyphRangesJapanese()
function ImWchar (line 2042) | const ImWchar* ImFontAtlas::GetGlyphRangesCyrillic()
function ImWchar (line 2055) | const ImWchar* ImFontAtlas::GetGlyphRangesThai()
function ImFontGlyph (line 2236) | const ImFontGlyph* ImFont::FindGlyph(ImWchar c) const
function ImVec2 (line 2346) | ImVec2 ImFont::CalcTextSizeA(float size, float max_width, float wrap_wid...
function ImAcos01 (line 2634) | static inline float ImAcos01(float x)
function stb_decompress_length (line 2710) | static unsigned int stb_decompress_length(unsigned char *input)
function stb__match (line 2717) | static void stb__match(unsigned char *data, unsigned int length)
function stb__lit (line 2726) | static void stb__lit(unsigned char *data, unsigned int length)
function stb_adler32 (line 2757) | static unsigned int stb_adler32(unsigned int adler32, unsigned char *buf...
function stb_decompress (line 2788) | static unsigned int stb_decompress(unsigned char *output, unsigned char ...
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_impl_dx11.cpp
type VERTEX_CONSTANT_BUFFER (line 43) | struct VERTEX_CONSTANT_BUFFER
function ImGui_ImplDX11_RenderDrawLists (line 51) | void ImGui_ImplDX11_RenderDrawLists(ImDrawData* draw_data)
function IsAnyMouseButtonDown (line 238) | static bool IsAnyMouseButtonDown()
function IMGUI_API (line 254) | IMGUI_API LRESULT ImGui_ImplWin32_WndProcHandler(HWND hwnd, UINT msg, WP...
function ImGui_ImplDX11_CreateFontsTexture (line 311) | static void ImGui_ImplDX11_CreateFontsTexture()
function ImGui_ImplDX11_CreateDeviceObjects (line 370) | bool ImGui_ImplDX11_CreateDeviceObjects()
function ImGui_ImplDX11_InvalidateDeviceObjects (line 465) | void ImGui_ImplDX11_InvalidateDeviceObjects()
function ImGui_ImplDX11_Init (line 484) | bool ImGui_ImplDX11_Init(void* hwnd, ID3D11Device* device, ID3D11Devi...
function ImGui_ImplDX11_Shutdown (line 523) | void ImGui_ImplDX11_Shutdown()
function ImGui_ImplDX11_NewFrame (line 532) | void ImGui_ImplDX11_NewFrame()
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_impl_dx11.h
type ID3D11Device (line 14) | struct ID3D11Device
type ID3D11DeviceContext (line 15) | struct ID3D11DeviceContext
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_internal.h
type ImRect (line 39) | struct ImRect
type ImGuiColMod (line 40) | struct ImGuiColMod
type ImGuiStyleMod (line 41) | struct ImGuiStyleMod
type ImGuiGroupData (line 42) | struct ImGuiGroupData
type ImGuiMenuColumns (line 43) | struct ImGuiMenuColumns
type ImGuiDrawContext (line 44) | struct ImGuiDrawContext
type ImGuiTextEditState (line 45) | struct ImGuiTextEditState
type ImGuiMouseCursorData (line 46) | struct ImGuiMouseCursorData
type ImGuiPopupRef (line 47) | struct ImGuiPopupRef
type ImGuiWindow (line 48) | struct ImGuiWindow
type ImGuiWindowSettings (line 49) | struct ImGuiWindowSettings
type ImGuiLayoutType (line 51) | typedef int ImGuiLayoutType;
type ImGuiButtonFlags (line 52) | typedef int ImGuiButtonFlags;
type ImGuiItemFlags (line 53) | typedef int ImGuiItemFlags;
type ImGuiSeparatorFlags (line 54) | typedef int ImGuiSeparatorFlags;
type ImGuiSliderFlags (line 55) | typedef int ImGuiSliderFlags;
function namespace (line 61) | namespace ImGuiStb
function ImCharIsSpace (line 98) | static inline bool ImCharIsSpace(int c) { return c == ' ' || c == '...
function ImIsPowerOfTwo (line 99) | static inline bool ImIsPowerOfTwo(int v) { return v != 0 && (v & (v...
function ImUpperPowerOfTwo (line 100) | static inline int ImUpperPowerOfTwo(int v) { v--; v |= v >> 1; v |...
function ImMin (line 138) | static inline int ImMin(int lhs, int rhs) { return lhs < rhs ? lhs : ...
function ImMax (line 139) | static inline int ImMax(int lhs, int rhs) { return lhs >= rhs ? lhs :...
function ImMin (line 140) | static inline float ImMin(float lhs, float rhs) { return lhs < rhs ? lh...
function ImMax (line 141) | static inline float ImMax(float lhs, float rhs) { return lhs >= rhs ? l...
function ImVec2 (line 142) | static inline ImVec2 ImMin(const ImVec2& lhs, const ImVec2& rhs) { retur...
function ImVec2 (line 143) | static inline ImVec2 ImMax(const ImVec2& lhs, const ImVec2& rhs) { retur...
function ImClamp (line 144) | static inline int ImClamp(int v, int mn, int mx) { return (v < mn) ? ...
function ImClamp (line 145) | static inline float ImClamp(float v, float mn, float mx) { return (v < ...
function ImVec2 (line 146) | static inline ImVec2 ImClamp(const ImVec2& f, const ImVec2& mn, ImVec2 m...
function ImSaturate (line 147) | static inline float ImSaturate(float f) { return (f < 0.0f) ? 0.0f : (f...
function ImSwap (line 148) | static inline void ImSwap(int& a, int& b) { int tmp = a; a = b; b = tm...
function ImSwap (line 149) | static inline void ImSwap(float& a, float& b) { float tmp = a; a = b; ...
function ImLerp (line 150) | static inline int ImLerp(int a, int b, float t) { return (int)(a + (b...
function ImLerp (line 151) | static inline float ImLerp(float a, float b, float t) { return a + (b -...
function ImVec2 (line 152) | static inline ImVec2 ImLerp(const ImVec2& a, const ImVec2& b, float t) {...
function ImVec2 (line 153) | static inline ImVec2 ImLerp(const ImVec2& a, const ImVec2& b, const ImVe...
function ImVec4 (line 154) | static inline ImVec4 ImLerp(const ImVec4& a, const ImVec4& b, float t) {...
function ImLengthSqr (line 155) | static inline float ImLengthSqr(const ImVec2& lhs) { return lhs.x*lhs.x...
function ImLengthSqr (line 156) | static inline float ImLengthSqr(const ImVec4& lhs) { return lhs.x*lhs.x...
function ImInvLength (line 157) | static inline float ImInvLength(const ImVec2& lhs, float fail_value) { ...
function ImFloor (line 158) | static inline float ImFloor(float f) { return (float)(int)f; }
function ImVec2 (line 159) | static inline ImVec2 ImFloor(const ImVec2& v) { return ImVec2((float)(in...
function ImDot (line 160) | static inline float ImDot(const ImVec2& a, const ImVec2& b) { return a....
function ImVec2 (line 161) | static inline ImVec2 ImRotate(const ImVec2& v, float cos_a, float sin_a)...
function ImLinearSweep (line 162) | static inline float ImLinearSweep(float current, float target, float sp...
function ImVec2 (line 163) | static inline ImVec2 ImMul(const ImVec2& lhs, const ImVec2& rhs) { retur...
type ImNewPlacementDummy (line 167) | struct ImNewPlacementDummy {}
function delete (line 169) | inline void operator delete(void*, ImNewPlacementDummy, void*) {}
type ImGuiButtonFlags_ (line 178) | enum ImGuiButtonFlags_
type ImGuiSliderFlags_ (line 195) | enum ImGuiSliderFlags_
type ImGuiColumnsFlags_ (line 200) | enum ImGuiColumnsFlags_
type ImGuiSelectableFlagsPrivate_ (line 210) | enum ImGuiSelectableFlagsPrivate_
type ImGuiSeparatorFlags_ (line 219) | enum ImGuiSeparatorFlags_
type ImGuiLayoutType_ (line 226) | enum ImGuiLayoutType_
type ImGuiAxis (line 232) | enum ImGuiAxis
type ImGuiPlotType (line 239) | enum ImGuiPlotType
type ImGuiDataType (line 245) | enum ImGuiDataType
type ImGuiDir (line 252) | enum ImGuiDir
function ImRect (line 264) | struct IMGUI_API ImRect
function Contains (line 282) | bool Contains(const ImVec2& p) const { return p.x >= Min.x && p.y...
function Contains (line 283) | bool Contains(const ImRect& r) const { return r.Min.x >= Min.x &&...
function Overlaps (line 284) | bool Overlaps(const ImRect& r) const { return r.Min.y < Max.y &&...
function Add (line 285) | void Add(const ImVec2& p) { if (Min.x > p.x) Min.x = p.x; ...
function Add (line 286) | void Add(const ImRect& r) { if (Min.x > r.Min.x) Min.x = r.Min.x;...
function Expand (line 287) | void Expand(const float amount) { Min.x -= amount; Min.y -= amo...
function Expand (line 288) | void Expand(const ImVec2& amount) { Min.x -= amount.x; Min.y -= a...
function Translate (line 289) | void Translate(const ImVec2& v) { Min.x += v.x; Min.y += v.y; Max...
function ClipWith (line 290) | void ClipWith(const ImRect& r) { Min = ImMax(Min, r.Min); Max = I...
function ClipWithFull (line 291) | void ClipWithFull(const ImRect& r) { Min = ImClamp(Min, r.Min, r....
function Floor (line 292) | void Floor() { Min.x = (float)(int)Min.x; Min.y = (float)(int)Min...
function FixInverted (line 293) | void FixInverted() { if (Min.x > Max.x) ImSwap(Min.x, Max.x); if ...
type ImGuiColMod (line 298) | struct ImGuiColMod
function ImGuiStyleMod (line 305) | struct ImGuiStyleMod
type ImGuiGroupData (line 315) | struct ImGuiGroupData
function ImGuiMenuColumns (line 329) | struct IMGUI_API ImGuiMenuColumns
function ImGuiTextEditState (line 343) | struct IMGUI_API ImGuiTextEditState
type ImGuiSettingsHandler (line 378) | struct ImGuiSettingsHandler
type ImGuiMouseCursorData (line 391) | struct ImGuiMouseCursorData
type ImGuiPopupRef (line 401) | struct ImGuiPopupRef
type ImGuiColumnData (line 412) | struct ImGuiColumnData
function Clear (line 422) | struct ImGuiColumnsSet
function ImDrawListSharedData (line 453) | struct IMGUI_API ImDrawListSharedData
function ClearFreeMemory (line 468) | struct ImDrawDataBuilder
function Clear (line 506) | void Clear()
type ImGuiItemFlags_ (line 696) | enum ImGuiItemFlags_
function ImGuiDrawContext (line 709) | struct IMGUI_API ImGuiDrawContext
function ImGuiWindow (line 772) | struct IMGUI_API ImGuiWindow
function namespace (line 875) | namespace ImGui
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_xorstr.h
type unsigned_ (line 63) | struct unsigned_
type unsigned_ (line 67) | struct unsigned_
type unsigned_ (line 71) | struct unsigned_
type _ki (line 101) | struct _ki {
function XORSTR_FORCEINLINE (line 150) | XORSTR_FORCEINLINE void _crypt_256_single(const std::uint64_t* keys,
function _crypt_256 (line 162) | void _crypt_256(const std::uint64_t* keys,
function XORSTR_FORCEINLINE (line 167) | XORSTR_FORCEINLINE void _crypt_128_single(const std::uint64_t* keys,
function _crypt_128 (line 176) | void _crypt_128(const std::uint64_t* keys,
function XORSTR_FORCEINLINE (line 182) | XORSTR_FORCEINLINE constexpr void _copy() noexcept {
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/stb_rect_pack.h
type stbrp_context (line 74) | typedef struct stbrp_context stbrp_context;
type stbrp_node (line 75) | typedef struct stbrp_node stbrp_node;
type stbrp_rect (line 76) | typedef struct stbrp_rect stbrp_rect;
type stbrp_coord (line 79) | typedef int stbrp_coord;
type stbrp_coord (line 81) | typedef unsigned short stbrp_coord;
type stbrp_rect (line 106) | struct stbrp_rect
type stbrp_node (line 166) | struct stbrp_node
type stbrp_context (line 172) | struct stbrp_context
function STBRP_DEF (line 218) | STBRP_DEF void stbrp_setup_heuristic(stbrp_context *context, int heuristic)
function STBRP_DEF (line 230) | STBRP_DEF void stbrp_setup_allow_out_of_mem(stbrp_context *context, int ...
function STBRP_DEF (line 250) | STBRP_DEF void stbrp_init_target(stbrp_context *context, int width, int ...
function stbrp__skyline_find_min_y (line 283) | static int stbrp__skyline_find_min_y(stbrp_context *c, stbrp_node *first...
type stbrp__findresult (line 334) | typedef struct
function stbrp__findresult (line 340) | static stbrp__findresult stbrp__skyline_find_best_pos(stbrp_context *c, ...
function stbrp__findresult (line 436) | static stbrp__findresult stbrp__skyline_pack_rectangle(stbrp_context *co...
function rect_height_compare (line 519) | static int rect_height_compare(const void *a, const void *b)
function rect_width_compare (line 530) | static int rect_width_compare(const void *a, const void *b)
function rect_original_order (line 541) | static int rect_original_order(const void *a, const void *b)
function STBRP_DEF (line 554) | STBRP_DEF void stbrp_pack_rects(stbrp_context *context, stbrp_rect *rect...
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/stb_textedit.h
type StbUndoRecord (line 300) | typedef struct
type StbUndoState (line 309) | typedef struct
type STB_TexteditState (line 318) | typedef struct
type StbTexteditRow (line 361) | typedef struct
function stb_text_locate_coord (line 395) | static int stb_text_locate_coord(STB_TEXTEDIT_STRING *str, float x, floa...
function stb_textedit_click (line 455) | static void stb_textedit_click(STB_TEXTEDIT_STRING *str, STB_TexteditSta...
function stb_textedit_drag (line 464) | static void stb_textedit_drag(STB_TEXTEDIT_STRING *str, STB_TexteditStat...
type StbFindState (line 484) | typedef struct
function stb_textedit_find_charpos (line 494) | static void stb_textedit_find_charpos(StbFindState *find, STB_TEXTEDIT_S...
function stb_textedit_clamp (line 555) | static void stb_textedit_clamp(STB_TEXTEDIT_STRING *str, STB_TexteditSta...
function stb_textedit_delete (line 569) | static void stb_textedit_delete(STB_TEXTEDIT_STRING *str, STB_TexteditSt...
function stb_textedit_delete_selection (line 577) | static void stb_textedit_delete_selection(STB_TEXTEDIT_STRING *str, STB_...
function stb_textedit_sortselection (line 594) | static void stb_textedit_sortselection(STB_TexteditState *state)
function stb_textedit_move_to_first (line 604) | static void stb_textedit_move_to_first(STB_TexteditState *state)
function stb_textedit_move_to_last (line 615) | static void stb_textedit_move_to_last(STB_TEXTEDIT_STRING *str, STB_Text...
function is_word_boundary (line 627) | static int is_word_boundary(STB_TEXTEDIT_STRING *str, int idx)
function stb_textedit_move_to_word_previous (line 633) | static int stb_textedit_move_to_word_previous(STB_TEXTEDIT_STRING *str, ...
function stb_textedit_move_to_word_next (line 648) | static int stb_textedit_move_to_word_next(STB_TEXTEDIT_STRING *str, int c)
function stb_textedit_prep_selection_at_cursor (line 666) | static void stb_textedit_prep_selection_at_cursor(STB_TexteditState *state)
function stb_textedit_cut (line 675) | static int stb_textedit_cut(STB_TEXTEDIT_STRING *str, STB_TexteditState ...
function stb_textedit_paste (line 686) | static int stb_textedit_paste(STB_TEXTEDIT_STRING *str, STB_TexteditStat...
function stb_textedit_key (line 706) | static void stb_textedit_key(STB_TEXTEDIT_STRING *str, STB_TexteditState...
function stb_textedit_flush_redo (line 1070) | static void stb_textedit_flush_redo(StbUndoState *state)
function stb_textedit_discard_undo (line 1077) | static void stb_textedit_discard_undo(StbUndoState *state)
function stb_textedit_discard_redo (line 1099) | static void stb_textedit_discard_redo(StbUndoState *state)
function StbUndoRecord (line 1119) | static StbUndoRecord *stb_text_create_undo_record(StbUndoState *state, i...
function STB_TEXTEDIT_CHARTYPE (line 1143) | static STB_TEXTEDIT_CHARTYPE *stb_text_createundo(StbUndoState *state, i...
function stb_text_undo (line 1164) | static void stb_text_undo(STB_TEXTEDIT_STRING *str, STB_TexteditState *s...
function stb_text_redo (line 1233) | static void stb_text_redo(STB_TEXTEDIT_STRING *str, STB_TexteditState *s...
function stb_text_makeundo_insert (line 1285) | static void stb_text_makeundo_insert(STB_TexteditState *state, int where...
function stb_text_makeundo_delete (line 1290) | static void stb_text_makeundo_delete(STB_TEXTEDIT_STRING *str, STB_Texte...
function stb_text_makeundo_replace (line 1300) | static void stb_text_makeundo_replace(STB_TEXTEDIT_STRING *str, STB_Text...
function stb_textedit_clear_state (line 1311) | static void stb_textedit_clear_state(STB_TexteditState *state, int is_si...
function stb_textedit_initialize_state (line 1328) | static void stb_textedit_initialize_state(STB_TexteditState *state, int ...
FILE: FortniteCheatSRCUpdateEveryUpdate/imgui/stb_truetype.h
function my_stbtt_initfont (line 254) | void my_stbtt_initfont(void)
function my_stbtt_print (line 266) | void my_stbtt_print(float x, float y, char *text)
function main (line 299) | int main(int argc, char **argv)
function main (line 340) | int main(int arg, char **argv)
type stbtt_uint8 (line 392) | typedef unsigned char stbtt_uint8;
type stbtt_int8 (line 393) | typedef signed char stbtt_int8;
type stbtt_uint16 (line 394) | typedef unsigned short stbtt_uint16;
type stbtt_int16 (line 395) | typedef signed short stbtt_int16;
type stbtt_uint32 (line 396) | typedef unsigned int stbtt_uint32;
type stbtt_int32 (line 397) | typedef signed int stbtt_int32;
type stbtt__buf (line 465) | typedef struct
type stbtt_bakedchar (line 479) | typedef struct
type stbtt_aligned_quad (line 495) | typedef struct
type stbtt_packedchar (line 525) | typedef struct
type stbtt_pack_context (line 532) | typedef struct stbtt_pack_context stbtt_pack_context;
type stbtt_fontinfo (line 533) | typedef struct stbtt_fontinfo stbtt_fontinfo;
type stbrp_rect (line 535) | typedef struct stbrp_rect stbrp_rect;
type stbtt_pack_range (line 569) | typedef struct
type stbtt_pack_context (line 622) | struct stbtt_pack_context {
type stbtt_fontinfo (line 656) | struct stbtt_fontinfo
type stbtt_vertex (line 759) | typedef struct
type stbtt__bitmap (line 837) | typedef struct
function stbtt_uint8 (line 988) | static stbtt_uint8 stbtt__buf_get8(stbtt__buf *b)
function stbtt_uint8 (line 995) | static stbtt_uint8 stbtt__buf_peek8(stbtt__buf *b)
function stbtt__buf_seek (line 1002) | static void stbtt__buf_seek(stbtt__buf *b, int o)
function stbtt__buf_skip (line 1008) | static void stbtt__buf_skip(stbtt__buf *b, int o)
function stbtt_uint32 (line 1013) | static stbtt_uint32 stbtt__buf_get(stbtt__buf *b, int n)
function stbtt__buf (line 1023) | static stbtt__buf stbtt__new_buf(const void *p, size_t size)
function stbtt__buf (line 1036) | static stbtt__buf stbtt__buf_range(const stbtt__buf *b, int o, int s)
function stbtt__buf (line 1045) | static stbtt__buf stbtt__cff_get_index(stbtt__buf *b)
function stbtt_uint32 (line 1059) | static stbtt_uint32 stbtt__cff_int(stbtt__buf *b)
function stbtt__cff_skip_operand (line 1071) | static void stbtt__cff_skip_operand(stbtt__buf *b) {
function stbtt__buf (line 1087) | static stbtt__buf stbtt__dict_get(stbtt__buf *b, int key)
function stbtt__dict_get_ints (line 1102) | static void stbtt__dict_get_ints(stbtt__buf *b, int key, int outcount, s...
function stbtt__cff_index_count (line 1110) | static int stbtt__cff_index_count(stbtt__buf *b)
function stbtt__buf (line 1116) | static stbtt__buf stbtt__cff_index_get(stbtt__buf b, int i)
function stbtt_uint16 (line 1142) | static stbtt_uint16 ttUSHORT(stbtt_uint8 *p) { return p[0] * 256 + p[1]; }
function stbtt_int16 (line 1143) | static stbtt_int16 ttSHORT(stbtt_uint8 *p) { return p[0] * 256 + p[1]; }
function stbtt_uint32 (line 1144) | static stbtt_uint32 ttULONG(stbtt_uint8 *p) { return (p[0] << 24) + (p[1...
function stbtt_int32 (line 1145) | static stbtt_int32 ttLONG(stbtt_uint8 *p) { return (p[0] << 24) + (p[1] ...
function stbtt__isfont (line 1150) | static int stbtt__isfont(stbtt_uint8 *font)
function stbtt_uint32 (line 1162) | static stbtt_uint32 stbtt__find_table(stbtt_uint8 *data, stbtt_uint32 fo...
function stbtt_GetFontOffsetForIndex_internal (line 1175) | static int stbtt_GetFontOffsetForIndex_internal(unsigned char *font_coll...
function stbtt_GetNumberOfFonts_internal (line 1194) | static int stbtt_GetNumberOfFonts_internal(unsigned char *font_collection)
function stbtt__buf (line 1210) | static stbtt__buf stbtt__get_subrs(stbtt__buf cff, stbtt__buf fontdict)
function stbtt_InitFont_internal (line 1223) | static int stbtt_InitFont_internal(stbtt_fontinfo *info, unsigned char *...
function STBTT_DEF (line 1334) | STBTT_DEF int stbtt_FindGlyphIndex(const stbtt_fontinfo *info, int unico...
function STBTT_DEF (line 1431) | STBTT_DEF int stbtt_GetCodepointShape(const stbtt_fontinfo *info, int un...
function stbtt_setvertex (line 1436) | static void stbtt_setvertex(stbtt_vertex *v, stbtt_uint8 type, stbtt_int...
function stbtt__GetGlyfOffset (line 1445) | static int stbtt__GetGlyfOffset(const stbtt_fontinfo *info, int glyph_in...
function STBTT_DEF (line 1468) | STBTT_DEF int stbtt_GetGlyphBox(const stbtt_fontinfo *info, int glyph_in...
function STBTT_DEF (line 1485) | STBTT_DEF int stbtt_GetCodepointBox(const stbtt_fontinfo *info, int code...
function STBTT_DEF (line 1490) | STBTT_DEF int stbtt_IsGlyphEmpty(const stbtt_fontinfo *info, int glyph_i...
function stbtt__close_shape (line 1502) | static int stbtt__close_shape(stbtt_vertex *vertices, int num_vertices, ...
function stbtt__GetGlyphShapeTT (line 1519) | static int stbtt__GetGlyphShapeTT(const stbtt_fontinfo *info, int glyph_...
type stbtt__csctx (line 1758) | typedef struct
function stbtt__track_vertex (line 1772) | static void stbtt__track_vertex(stbtt__csctx *c, stbtt_int32 x, stbtt_in...
function stbtt__csctx_v (line 1781) | static void stbtt__csctx_v(stbtt__csctx *c, stbtt_uint8 type, stbtt_int3...
function stbtt__csctx_close_shape (line 1798) | static void stbtt__csctx_close_shape(stbtt__csctx *ctx)
function stbtt__csctx_rmove_to (line 1804) | static void stbtt__csctx_rmove_to(stbtt__csctx *ctx, float dx, float dy)
function stbtt__csctx_rline_to (line 1812) | static void stbtt__csctx_rline_to(stbtt__csctx *ctx, float dx, float dy)
function stbtt__csctx_rccurve_to (line 1819) | static void stbtt__csctx_rccurve_to(stbtt__csctx *ctx, float dx1, float ...
function stbtt__buf (line 1830) | static stbtt__buf stbtt__get_subr(stbtt__buf idx, int n)
function stbtt__buf (line 1844) | static stbtt__buf stbtt__cid_get_glyph_subrs(const stbtt_fontinfo *info,...
function stbtt__run_charstring (line 1873) | static int stbtt__run_charstring(const stbtt_fontinfo *info, int glyph_i...
function stbtt__GetGlyphShapeT2 (line 2133) | static int stbtt__GetGlyphShapeT2(const stbtt_fontinfo *info, int glyph_...
function stbtt__GetGlyphInfoT2 (line 2150) | static int stbtt__GetGlyphInfoT2(const stbtt_fontinfo *info, int glyph_i...
function STBTT_DEF (line 2163) | STBTT_DEF int stbtt_GetGlyphShape(const stbtt_fontinfo *info, int glyph_...
function STBTT_DEF (line 2171) | STBTT_DEF void stbtt_GetGlyphHMetrics(const stbtt_fontinfo *info, int gl...
function STBTT_DEF (line 2184) | STBTT_DEF int stbtt_GetGlyphKernAdvance(const stbtt_fontinfo *info, int...
function STBTT_DEF (line 2214) | STBTT_DEF int stbtt_GetCodepointKernAdvance(const stbtt_fontinfo *info,...
function STBTT_DEF (line 2221) | STBTT_DEF void stbtt_GetCodepointHMetrics(const stbtt_fontinfo *info, in...
function STBTT_DEF (line 2226) | STBTT_DEF void stbtt_GetFontVMetrics(const stbtt_fontinfo *info, int *as...
function STBTT_DEF (line 2233) | STBTT_DEF void stbtt_GetFontBoundingBox(const stbtt_fontinfo *info, int ...
function STBTT_DEF (line 2241) | STBTT_DEF float stbtt_ScaleForPixelHeight(const stbtt_fontinfo *info, fl...
function STBTT_DEF (line 2247) | STBTT_DEF float stbtt_ScaleForMappingEmToPixels(const stbtt_fontinfo *in...
function STBTT_DEF (line 2253) | STBTT_DEF void stbtt_FreeShape(const stbtt_fontinfo *info, stbtt_vertex *v)
function STBTT_DEF (line 2263) | STBTT_DEF void stbtt_GetGlyphBitmapBoxSubpixel(const stbtt_fontinfo *fon...
function STBTT_DEF (line 2282) | STBTT_DEF void stbtt_GetGlyphBitmapBox(const stbtt_fontinfo *font, int g...
function STBTT_DEF (line 2287) | STBTT_DEF void stbtt_GetCodepointBitmapBoxSubpixel(const stbtt_fontinfo ...
function STBTT_DEF (line 2292) | STBTT_DEF void stbtt_GetCodepointBitmapBox(const stbtt_fontinfo *font, i...
type stbtt__hheap_chunk (line 2301) | typedef struct stbtt__hheap_chunk
type stbtt__hheap (line 2306) | typedef struct stbtt__hheap
function stbtt__hheap_free (line 2335) | static void stbtt__hheap_free(stbtt__hheap *hh, void *p)
function stbtt__hheap_cleanup (line 2341) | static void stbtt__hheap_cleanup(stbtt__hheap *hh, void *userdata)
type stbtt__edge (line 2351) | typedef struct stbtt__edge {
type stbtt__active_edge (line 2357) | typedef struct stbtt__active_edge
function stbtt__active_edge (line 2379) | static stbtt__active_edge *stbtt__new_active(stbtt__hheap *hh, stbtt__ed...
function stbtt__active_edge (line 2401) | static stbtt__active_edge *stbtt__new_active(stbtt__hheap *hh, stbtt__ed...
function stbtt__fill_active_edges (line 2426) | static void stbtt__fill_active_edges(unsigned char *scanline, int len, s...
function stbtt__rasterize_sorted_edges (line 2470) | static void stbtt__rasterize_sorted_edges(stbtt__bitmap *result, stbtt__...
function stbtt__handle_clipped_edge (line 2576) | static void stbtt__handle_clipped_edge(float *scanline, int x, stbtt__ac...
function stbtt__fill_active_edges_new (line 2613) | static void stbtt__fill_active_edges_new(float *scanline, float *scanlin...
function stbtt__rasterize_sorted_edges (line 2788) | static void stbtt__rasterize_sorted_edges(stbtt__bitmap *result, stbtt__...
function stbtt__sort_edges_ins_sort (line 2885) | static void stbtt__sort_edges_ins_sort(stbtt__edge *p, int n)
function stbtt__sort_edges_quicksort (line 2903) | static void stbtt__sort_edges_quicksort(stbtt__edge *p, int n)
function stbtt__sort_edges (line 2966) | static void stbtt__sort_edges(stbtt__edge *p, int n)
type stbtt__point (line 2972) | typedef struct
function stbtt__rasterize (line 2977) | static void stbtt__rasterize(stbtt__bitmap *result, stbtt__point *pts, i...
function stbtt__add_point (line 3034) | static void stbtt__add_point(stbtt__point *points, int n, float x, float y)
function stbtt__tesselate_curve (line 3042) | static int stbtt__tesselate_curve(stbtt__point *points, int *num_points,...
function stbtt__tesselate_cubic (line 3063) | static void stbtt__tesselate_cubic(stbtt__point *points, int *num_points...
function stbtt__point (line 3107) | static stbtt__point *stbtt_FlattenCurves(stbtt_vertex *vertices, int num...
function STBTT_DEF (line 3184) | STBTT_DEF void stbtt_Rasterize(stbtt__bitmap *result, float flatness_in_...
function STBTT_DEF (line 3196) | STBTT_DEF void stbtt_FreeBitmap(unsigned char *bitmap, void *userdata)
function STBTT_DEF (line 3246) | STBTT_DEF void stbtt_MakeGlyphBitmapSubpixel(const stbtt_fontinfo *info,...
function STBTT_DEF (line 3265) | STBTT_DEF void stbtt_MakeGlyphBitmap(const stbtt_fontinfo *info, unsigne...
function STBTT_DEF (line 3275) | STBTT_DEF void stbtt_MakeCodepointBitmapSubpixel(const stbtt_fontinfo *i...
function STBTT_DEF (line 3285) | STBTT_DEF void stbtt_MakeCodepointBitmap(const stbtt_fontinfo *info, uns...
function stbtt_BakeFontBitmap_internal (line 3296) | static int stbtt_BakeFontBitmap_internal(unsigned char *data, int offset...
function STBTT_DEF (line 3342) | STBTT_DEF void stbtt_GetBakedQuad(stbtt_bakedchar *chardata, int pw, int...
type stbrp_coord (line 3370) | typedef int stbrp_coord;
type stbrp_context (line 3383) | typedef struct
type stbrp_node (line 3389) | typedef struct
type stbrp_rect (line 3394) | struct stbrp_rect
function stbrp_init_target (line 3400) | static void stbrp_init_target(stbrp_context *con, int pw, int ph, stbrp_...
function stbrp_pack_rects (line 3411) | static void stbrp_pack_rects(stbrp_context *con, stbrp_rect *rects, int ...
function STBTT_DEF (line 3440) | STBTT_DEF int stbtt_PackBegin(stbtt_pack_context *spc, unsigned char *pi...
function STBTT_DEF (line 3471) | STBTT_DEF void stbtt_PackEnd(stbtt_pack_context *spc)
function STBTT_DEF (line 3477) | STBTT_DEF void stbtt_PackSetOversampling(stbtt_pack_context *spc, unsign...
function stbtt__h_prefilter (line 3489) | static void stbtt__h_prefilter(unsigned char *pixels, int w, int h, int ...
function stbtt__v_prefilter (line 3551) | static void stbtt__v_prefilter(unsigned char *pixels, int w, int h, int ...
function stbtt__oversample_shift (line 3613) | static float stbtt__oversample_shift(int oversample)
function STBTT_DEF (line 3626) | STBTT_DEF int stbtt_PackFontRangesGatherRects(stbtt_pack_context *spc, c...
function STBTT_DEF (line 3655) | STBTT_DEF int stbtt_PackFontRangesRenderIntoRects(stbtt_pack_context *sp...
function STBTT_DEF (line 3738) | STBTT_DEF void stbtt_PackFontRangesPackRects(stbtt_pack_context *spc, st...
function STBTT_DEF (line 3743) | STBTT_DEF int stbtt_PackFontRanges(stbtt_pack_context *spc, unsigned cha...
function STBTT_DEF (line 3779) | STBTT_DEF int stbtt_PackFontRange(stbtt_pack_context *spc, unsigned char...
function STBTT_DEF (line 3791) | STBTT_DEF void stbtt_GetPackedQuad(stbtt_packedchar *chardata, int pw, i...
function stbtt_int32 (line 3826) | static stbtt_int32 stbtt__CompareUTF8toUTF16_bigendian_prefix(stbtt_uint...
function stbtt_CompareUTF8toUTF16_bigendian_internal (line 3869) | static int stbtt_CompareUTF8toUTF16_bigendian_internal(char *s1, int len...
function STBTT_DEF (line 3876) | STBTT_DEF const char *stbtt_GetFontNameString(const stbtt_fontinfo *font...
function stbtt__matchpair (line 3897) | static int stbtt__matchpair(stbtt_uint8 *fc, stbtt_uint32 nm, stbtt_uint...
function stbtt__matches (line 3946) | static int stbtt__matches(stbtt_uint8 *fc, stbtt_uint32 offset, stbtt_ui...
function stbtt_FindMatchingFont_internal (line 3976) | static int stbtt_FindMatchingFont_internal(unsigned char *font_collectio...
function STBTT_DEF (line 3992) | STBTT_DEF int stbtt_BakeFontBitmap(const unsigned char *data, int offset,
function STBTT_DEF (line 3999) | STBTT_DEF int stbtt_GetFontOffsetForIndex(const unsigned char *data, int...
function STBTT_DEF (line 4004) | STBTT_DEF int stbtt_GetNumberOfFonts(const unsigned char *data)
function STBTT_DEF (line 4009) | STBTT_DEF int stbtt_InitFont(stbtt_fontinfo *info, const unsigned char *...
function STBTT_DEF (line 4014) | STBTT_DEF int stbtt_FindMatchingFont(const unsigned char *fontdata, cons...
function STBTT_DEF (line 4019) | STBTT_DEF int stbtt_CompareUTF8toUTF16_bigendian(const char *s1, int len...
Condensed preview — 46 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (1,318K chars).
[
{
"path": "FortniteCheatSRCUpdateEveryUpdate/DiscordHook/Discord.cpp",
"chars": 4768,
"preview": "/*\n\n\n*/\n#include <cstdint>\n#include <Windows.h>\n#include \"../Helper/Helper.h\"\n#include \"Discord.h\"\n\n#define DEVELOPER\n\nu"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/DiscordHook/Discord.h",
"chars": 5212,
"preview": "/*\n\n\n*/\n#pragma once\n\n#define DISCORD Discord::Instance()\n\nclass Discord\n{\n\n\npublic:\n\n\n // **************************"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.filters",
"chars": 4010,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project ToolsVersion=\"4.0\" xmlns=\"http://schemas.microsoft.com/developer/msbui"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.user",
"chars": 170,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project ToolsVersion=\"Current\" xmlns=\"http://schemas.microsoft.com/developer/m"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.vcxproj",
"chars": 12066,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project DefaultTargets=\"Build\" xmlns=\"http://schemas.microsoft.com/developer/ms"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/FortniteCheatSRCUpdateEveryUpdate.vcxproj.user",
"chars": 227,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<Project ToolsVersion=\"Current\" xmlns=\"http://schemas.microsoft.com/developer/m"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/Config/Archivex.h",
"chars": 596,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n\r\ntemplate <typename Stream>\r\nclass ArchiveX final {\r\npu"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/Config/Config.h",
"chars": 2241,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n\r\n#include <filesystem>\r\n\r\nclass c_config final {\r\npubli"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/FortUpdaters/FortUpdaters.cpp",
"chars": 4574,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#include \"FortUpdaters.h\"\r\n\r\ntemplate<class T>\r\nstruct TArray\r\n{\r\n\tfri"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/FortUpdaters/FortUpdaters.h",
"chars": 612,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n#include <Windows.h>\r\n#include <iostream>\r\n#include <str"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/Structs.h",
"chars": 2362,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n#include \"includes.h\"\r\n\r\nclass UClass {\r\npublic:\r\n\tBYTE "
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/core/core.h",
"chars": 987,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n#include \"../includes.h\"\r\n\r\n// BODY\r\n#define BONE_HEAD_I"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/includes.h",
"chars": 3781,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n#pragma once\n\n#define _CRT_SECURE_NO_WARNINGS\n\n#include <stdio.h>\n#include"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/menu/menu.h",
"chars": 108,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n\r\nnamespace Render {\r\n\tbool Initialize();\r\n}"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/offsets/offsets.h",
"chars": 2112,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n#include \"../Header Files/includes.h\"\r\nnamespace Offsets"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/settings/settings.h",
"chars": 160,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n#include <wtypes.h>\r\n\r\nnamespace SettingsHelper {\r\n\tVOID"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/util/util.h",
"chars": 3015,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n#include \"../includes.h\"\r\n#define PI (3.141592653589793f"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/xor/xor.hpp",
"chars": 4660,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n\r\n#include <string>\r\n#include <utility>\r\n\r\nnamespace\r\n{\r"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Header Files/xorstr.h",
"chars": 7898,
"preview": "#ifndef JM_XORSTR_HPP\n#define JM_XORSTR_HPP\n\n#include <immintrin.h>\n#include <cstdint>\n#include <cstddef>\n#include <util"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Helper/Helper.cpp",
"chars": 1766,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#include <cstdlib>\r\n#include <Windows.h>\r\n#include \"Helper.h\"\r\n\r\n\r\nvoi"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Helper/Helper.h",
"chars": 886,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#pragma once\r\n\r\n#include <vector>\r\n\r\nclass Helper\r\n{\r\npublic:\r\n ///"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/Config/Config.cpp",
"chars": 1892,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n#include <fstream>\n#include <ShlObj.h>\n#include \"../../Header Files/Confi"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/FortUpdaters/FortUpdaters.cpp",
"chars": 4705,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n\r\n#include \"../../Header Files/FortUpdaters/FortUpdaters.h\"\r\n#include "
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/core/core.cpp",
"chars": 15685,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n#include \"../../Header Files/menu/menu.h\"\r\n#include \"../../Header File"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/menu/menu.cpp",
"chars": 37456,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n#include \"../../Header Files/menu/menu.h\"\n#include \"../../Header Files/in"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/offsets/offsets.cpp",
"chars": 4785,
"preview": "/*\n\nVisual#9999\n*/\n\n#include \"../../Header Files/xorstr.h\"\n#include \"../../imgui/imgui_xorstr.h\"\n#include \"../Header Fil"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/settings/settings.cpp",
"chars": 4567,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n#include \"../../Header Files/includes.h\"\n#include \"../../Header Files/Con"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/Source Files/util/Util.cpp",
"chars": 10716,
"preview": "/*\n\nVisual#9999\n\n*/\n\n#include \"../../Header Files/includes.h\"\n#include \"../../DiscordHook/Discord.h\"\n#include \"../../Hea"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/dllmain.cpp",
"chars": 618,
"preview": "/*\r\n\r\nVisual#9999, Updated by bunyip24#9999 \r\n*/\r\n\r\n#include \"Header Files/includes.h\"\r\n#include \"Header Files/menu/menu"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/Instructions.txt",
"chars": 21,
"preview": "/*\r\n\r\nVisual#9999\r\n*/"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/LICENSE.txt",
"chars": 1101,
"preview": "/*\n\nVisual#9999\n*/\nThe MIT License (MIT)\n\nCopyright (c) 2014-2019 Omar Cornut\n\nPermission is hereby granted, free of cha"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imconfig.h",
"chars": 2939,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n\n//----------------------------------------------------------------------"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui.cpp",
"chars": 499707,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n// dear imgui, v1.54 WIP\n// (main code and documentation)\n\n// Call and rea"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui.h",
"chars": 152934,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n// dear imgui, v1.54 WIP\n// (headers)\n\n// See imgui.cpp file for documenta"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_draw.cpp",
"chars": 123872,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n// dear imgui, v1.54 WIP\n// (drawing and font code)\n\n// Contains implemen"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_impl_dx11.cpp",
"chars": 32455,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n// ImGui Win32 + DirectX11 binding\n// In this binding, ImTextureID is use"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_impl_dx11.h",
"chars": 1488,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n// ImGui Win32 + DirectX11 binding\n// In this binding, ImTextureID is use"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_internal.h",
"chars": 59238,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n\n// dear imgui, v1.54 WIP\n// (internals)\n\n// You may use this file to debu"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/imgui_xorstr.h",
"chars": 8520,
"preview": "#pragma once\n/*\n * Copyright 2017 - 2018 Justas Masiulis\n *\n * Licensed under the Apache License, Version 2.0 (the \"Lice"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/stb_rect_pack.h",
"chars": 16428,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n// stb_rect_pack.h - v0.10 - public domain - rectangle packing\n// Sean Bar"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/stb_textedit.h",
"chars": 45677,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n// [ImGui] this is a slightly modified version of stb_truetype.h 1.9. Thos"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/imgui/stb_truetype.h",
"chars": 141066,
"preview": "/*\n\nVisual#9999, Updated by bunyip24#9999 \n*/\n// stb_truetype.h - v1.14 - public domain\n// authored from 2009-2016 by Se"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate/spoofinternal.asm",
"chars": 434,
"preview": "PUBLIC RetSpoofStub\n \n.code\n \nRetSpoofStub PROC\n pop r11\n add rsp, 8\n mov rax, [rsp + 24]\n \n mov r1"
},
{
"path": "FortniteCheatSRCUpdateEveryUpdate.sln",
"chars": 1519,
"preview": "\r\nMicrosoft Visual Studio Solution File, Format Version 12.00\r\n# Visual Studio Version 16\r\nVisualStudioVersion = 16.0.3"
},
{
"path": "LICENSE",
"chars": 12355,
"preview": "“Commons Clause” License Condition v1.0\nCopyright Visual9999 2020-2021\n\nThe Software is provided to you by the Licensor "
},
{
"path": "README.md",
"chars": 427,
"preview": "### THIS REP IS NOT SUPPORTED ANYMORE, JUST SEMI-UPDATES, UPDATE DISCORD HOOK SIG AND OTHER SIGS/OFFSETS THEN IT WORKS\n\n"
}
]
About this extraction
This page contains the full source code of the Visual9999/FortniteCheatSRCUpdateEveryUpdate GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 46 files (1.2 MB), approximately 374.6k tokens, and a symbol index with 790 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.