Hello Please i need Help with my ESP. After installing esp deb my game not opening direct crashing.
Game i use is Forward Assualt ( its Unity Game )
here is all Code
Tweal.xm Code
[code]
#import "Macros.h"
#import "Vector3.h"
#import "esp.h"
#import "Obfuscate.h"
//добавление офсетов игрока
int get_Team(void *Player){
return *(int *)((uint64_t)Player + 0x19BC818);
}
float get_Health(void *Player){
return *(float *)((uint64_t)Player + 0x19BBE6C);
}
bool get_isMine(void *Player){
return *(bool *)((uint64_t)Player + 0x19980A8);
}
bool get_isLiving(void *Player){
return get_Health(Player) > 1;
}
bool IsCharacterDead(void *Player){
return get_Health(Player) < 1;
}
//добавление офсетов передвижения
void *(*Component$$get_transform)(void *component) = (void *(*)(void *))getRealOffset(0x27F82A0);
void (*Transform$$get_position_Injected)(void *Transform, Vector3 *outPosition) = (void (*)(void *, Vector3 *))getRealOffset(0x2828340);
// оффсет камеры
void *camera(){
void *(*get_main)() = (void *(*)())getRealOffset(0x27F6344);
return (void *) get_main();
}
//оффсет World to screen
Vector3 WorldToScreenPoint(void *transform, Vector3 test) {
Vector3 position;
void (*Camera$$WorldToViewport_Injected)(void *, Vector3, int, Vector3&) = (void (*)(void *,Vector3, int, Vector3&))getRealOffset(0x27F5D78);
Camera$$WorldToViewport_Injected(transform, test, 2, position);
return position;
}
Vector3 getPosition(void *component){
Vector3 out;
void *transform = Component$$get_transform(component);
Transform$$get_position_Injected(transform, &out);
return out;
}
struct enemy_t {
void *object;
Vector3 location;
Vector3 worldtoscreen;
bool dead;
float distance;
bool enemy;
bool visible;
float health;
};
void *myObject = NULL;
class EntityManager {
public:
std::vector<enemy_t *> *enemies;
EntityManager() {
enemies = new std::vector<enemy_t *>();
}
bool isEnemyPresent(void *enemyObject) {
for (std::vector<enemy_t *>::iterator it = enemies->begin(); it != enemies->end(); it++) {
if ((*it)->object == enemyObject) {
return true;
}
}
return false;
}
void removeEnemy(enemy_t *enemy) {
for (int i = 0; i < enemies->size(); i++) {
if ((*enemies)[i] == enemy) {
enemies->erase(enemies->begin() + i);
return;
}
}
}
void tryAddEnemy(void *enemyObject) {
if (isEnemyPresent(enemyObject)) {
return;
}
if (IsCharacterDead(enemyObject)) {
return;
}
enemy_t *newEnemy = new enemy_t();
newEnemy->object = enemyObject;
enemies->push_back(newEnemy);
}
void updateEnemies(void *enemyObject) {
for (int i = 0; i < enemies->size(); i++) {
enemy_t *current = (*enemies)[i];
if(IsCharacterDead(current->object)) {
enemies->erase(enemies->begin() + i);
}
if((get_Team(myObject) == get_Team(current->object))) {
enemies->erase(enemies->begin() + i);
}
}
}
void removeEnemyGivenObject(void *enemyObject) {
for (int i = 0; i < enemies->size(); i++) {
if ((*enemies)[i]->object == enemyObject) {
enemies->erase(enemies->begin() + i);
return;
}
}
}
std::vector<enemy_t *> *GetAllEnemies() {
return enemies;
}
};
static esp* es;
EntityManager *entityManager = new EntityManager();
//enemy_t *enemies = new enemy_t();
void(*old_Player_PPGKGAFINLF)(void *Player);
void Player_PPGKGAFINLF(void *Player){
entityManager->tryAddEnemy(Player);
entityManager->updateEnemies(Player);
std::vector<enemy_t *> *enemies = entityManager->GetAllEnemies();
std::vector<player_t *> *pplayers = nullptr;
UIWindow *main = [UIApplication sharedApplication].keyWindow;
void *mycam = camera();
if(get_isMine(Player)){
myObject = Player;
return;
}
if(myObject && get_Team(myObject) != get_Team(Player)){
Vector3 mPos = getPosition(myObject);
for(int i =0; i<entityManager->enemies->size(); i++){
(*enemies)[i]->location = getPosition((*enemies)[i]->object);
(*enemies)[i]->worldtoscreen = WorldToScreenPoint(mycam, (*enemies)[i]->location);
(*enemies)[i]->enemy = true;
(*enemies)[i]->health = get_Health((*enemies)[i]->object);
float xd = pow(mPos.x - (*enemies)[i]->location.x, 2);
float xd1= pow(mPos.y - (*enemies)[i]->location.y, 2);
float xd2 = pow(mPos.z - (*enemies)[i]->location.z, 2);
float dist = sqrt(xd + xd1 + xd2);
(*enemies)[i]->distance = dist;
if(!pplayers){
pplayers = new std::vector<player_t *>();
}
if(!enemies->empty()){
for(int i = 0; i < enemies->size(); i++) {
if([switches isSwitchOn:@"esp on/off"]){
if((*enemies)[i]->worldtoscreen.z > 0){
player_t *newplayer = new player_t();
Vector3 newvec = (*enemies)[i]->worldtoscreen;
newvec.y = fabsf(1-newvec.y);
float dx = 100.0f/(newvec.z/4);//main.frame.size.width/17.92
float dy = 200.0f/(newvec.z/4);//main.frame.size.width/4.14
float xxxx = (main.frame.size.width*newvec.x)-dx/2;
float yyyy = (main.frame.size.height*newvec.y)-dy/4;
newplayer->health = (*enemies)[i]->health;
newplayer->enemy = (*enemies)[i]->enemy;
newplayer->distance = (*enemies)[i]->distance;
newplayer->rect = CGRectMake(xxxx, yyyy, dx, dy);
newplayer->healthbar = CGRectMake(xxxx, yyyy, 1, dy);
newplayer->topofbox = CGPointMake(xxxx, yyyy);
pplayers->push_back(newplayer);
}
}
}
es.players = pplayers;
old_Player_PPGKGAFINLF(Player);
}
if([switches isSwitchOn:@"esp box"]){
es.espboxes = true;
}
else{
es.espboxes = false;
}
}
}
old_Player_PPGKGAFINLF(Player);
}
void (*old_Player_Destroy)(void *Player);
void Player_Destroy(void *Player){
entityManager->removeEnemyGivenObject(Player);
old_Player_Destroy(Player);
}
%ctor {
HOOK(0x19C5EB4, Player_PPGKGAFINLF, old_Player_PPGKGAFINLF);
HOOK(0x19CDCF0, Player_Destroy, old_Player_Destroy);
}
void setup(){
[switches addSwitch:@"esp on/off"
description:@"Teleport all enemies to you without them knowing"];
[switches addSwitch:@"esp box"
description:@"Teleport all enemies to you without them knowing"];
}
void setupMenu() {
[menu setFrameworkName:"UnityFramework"];
menu = [[Menu alloc]
initWithTitle:@"esp by rudolf"
titleColor:[UIColor whiteColor]
titleFont:@"Copperplate-Bold"
credits:@"This Mod Menu has been made by esp, do not share this without proper credits and my permission. \n\nEnjoy!"
headerColor:UIColorFromHex(0x000)
switchOffColor:[UIColor darkGrayColor]
switchOnColor:UIColorFromHex(0x00ADF2)
switchTitleFont:@"Copperplate-Bold"
switchTitleColor:[UIColor whiteColor]
infoButtonColor:UIColorFromHex(0xBD0000)
maxVisibleSwitches:4
menuWidth:360
menuIcon: @"i removed icon code it will make this post bigger"
menuButton: @"i removed icon code it will make this post bigger"];
setup();
}
static void didFinishLaunching(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef info) {
timer(5) {
UIWindow *main = [UIApplication sharedApplication].keyWindow;
es = [[esp alloc]initWithFrame:main];
setupMenu();
});
}
%ctor {
CFNotificationCenterAddObserver(CFNotificationCenterGetLocalCenter(), NULL, &didFinishLaunching, (CFStringRef)UIApplicationDidFinishLaunchingNotification, NULL, CFNotificationSuspensionBehaviorDeliverImmediately);
}
[/code]
vector3.h code
[code]
struct Vector3{
float x;
float y;
float z;
Vector3();
Vector3(float x, float y, float z);
~Vector3();
};
Vector3::Vector3() {}
Vector3::Vector3(float x, float y, float z) : x(x), y(y), z(z) {}
Vector3::~Vector3() {}
[/code]