Post: Exelo Wallhack - Overflow Issues
12-12-2017, 02:50 AM #1
(adsbygoogle = window.adsbygoogle || []).push({}); Hey Guys, I have rewritten the ESP function I think Exelo created? I am having issues with overflow though. Has anyone experienced this or would like to help me out?

    gettargets()
{
self endon( "esp_end" );
for(;Winky Winky
{
self.esp = spawnstruct();
self.esp.targets = [];

a = 0;
i = 0;

while(i < level.players.size)
{
go_create = 0;
if(self != level.players[i])
{
if(level.teambased && getdvar("g_gametype") != "dm" && self.pers["team"] != level.players[i].pers["team"])
{
go_create = 1;
}
else if(!(level.teambased) && getdvar("g_gametype") == "dm")
{
go_create = 1;
}

if(go_create == 1)
{
self.esp.targets[a] = spawnstruct();
self.esp.targets[a].player = level.players[i];
self.esp.targets[a].hudbox = self createbox(self.esp.targets[a].player.origin);
self thread monitortarget(self.esp.targets[a]);
self thread waitdestroy_espbox(self.esp.targets[a]);
a++;
}
}
wait .05;
i++;
}
level waittill("connected", player);
self notify("UpdateTarget_ESPWallHack");
}

}

monitortarget(target)
{
self endon("UpdateTarget_ESPWallHack");
self endon("esp_end");

for(;Winky Winky
{
target.hudbox destroy();
h_pos = target.player.origin;

if((bullettracepassed(self gettagorigin("j_head"), target.player gettagorigin("j_head"), 0, self)) && (distance(self.origin, target.player.origin) <= 999999))
{
target.hudbox = self createbox(h_pos);
target.hudbox.color = (1, 0, 0);
}
else
{
target.hudbox = self createbox(h_pos);
}

if(!(isalive(target.player)))
{
target.hudbox destroy();
}
wait 0.01;
}
}

waitdestroy_espbox(target)
{
self waittill("UpdateTarget_ESPWallHack");
target.hudbox destroy();

}

disableesp()
{
self notify("esp_end");

i = 0;
while(i < self.esp.targets.size)
{
self.esp.targets[i].hudbox destroy();
i++;
}
}

createBox(pos) {
shader = newClientHudElem(self);
shader.sort = 0;
shader.archived = false;
shader.x = pos[0];
shader.y = pos[1];
shader.z = pos[2] + 30;
shader setShader(level.esps, 6, 6);
shader setWaypoint(true, true);
shader.alpha = 0.80;
shader.color = (0.302, 0.035, 0.373);
return shader;
}
12-29-2017, 09:33 AM #20
Originally posted by Patrick View Post
I'm Extinct, I posted the code before.


pffft prove it you wannabe
12-29-2017, 11:29 AM #21
Ha, you are very critical with code I can see. I am very interested in seeing what you feel is not so poorly coded. I thought the use of a foreach coupled with getEntityNumber was pretty clever and efficient, I do not see a way to optimize the createBox function though. Why not redo the entire thing an show us what you feel is proper? I am sure you are busy with other things now, but I see benefit I suppose. I really wish i could create and make use of classes instead of having to use all this linear functional stuff.. I am hating GSC because it is reverting my brain back to bad form.

On a side note, does anyone know how to do live memory dumps during game play? I have seen people create RTM tools but again all of this stuff is copy and pasted crap over and over. I would like to map out the addresses.... which now that I think about it... does anyone have an address mapping of BO2? I feel like there should be a more formal location to store this sort of knowledge.
12-29-2017, 02:57 PM #22
Patrick
League Champion
Originally posted by OfficialCoolJay View Post
pffft prove it you wannabe


shh he doesn't know that! :kappa:
12-29-2017, 03:01 PM #23
Patrick
League Champion
Originally posted by thagh05t View Post
Ha, you are very critical with code I can see. I am very interested in seeing what you feel is not so poorly coded. I thought the use of a foreach coupled with getEntityNumber was pretty clever and efficient, I do not see a way to optimize the createBox function though. Why not redo the entire thing an show us what you feel is proper? I am sure you are busy with other things now, but I see benefit I suppose. I really wish i could create and make use of classes instead of having to use all this linear functional stuff.. I am hating GSC because it is reverting my brain back to bad form.

On a side note, does anyone know how to do live memory dumps during game play? I have seen people create RTM tools but again all of this stuff is copy and pasted crap over and over. I would like to map out the addresses.... which now that I think about it... does anyone have an address mapping of BO2? I feel like there should be a more formal location to store this sort of knowledge.


I don't know anything todo with overriding memory but maybe serious can help you, but yeah if you want/need help with gsc hit me up on skype, Extinctxo
12-29-2017, 08:08 PM #24
anthonything
Space Ninja
Originally posted by thagh05t View Post
Ha, you are very critical with code I can see. I am very interested in seeing what you feel is not so poorly coded. I thought the use of a foreach coupled with getEntityNumber was pretty clever and efficient, I do not see a way to optimize the createBox function though. Why not redo the entire thing an show us what you feel is proper? I am sure you are busy with other things now, but I see benefit I suppose. I really wish i could create and make use of classes instead of having to use all this linear functional stuff.. I am hating GSC because it is reverting my brain back to bad form.

On a side note, does anyone know how to do live memory dumps during game play? I have seen people create RTM tools but again all of this stuff is copy and pasted crap over and over. I would like to map out the addresses.... which now that I think about it... does anyone have an address mapping of BO2? I feel like there should be a more formal location to store this sort of knowledge.


You can do a live memory dump with NetCheat or an external tool using CCAPI libraries. There are some address pages around places but most are un sorted and just random stuff. If you want specific addresses you probably will have to do it yourself. I am pretty sure the redboxes function can be redone sorta like this:

    
CreateBox( target )
{
headicon = newClientHudElem(self);
headicon.archived = 1;
headicon.x = 8;
headicon.y = 8;
headicon.z = 8;
headicon.alpha = 0.8;
headicon setshader( "hud_remote_missile_target", 10, 10 );

headicon setwaypoint( 1 );
headicon settargetent( target );
return headicon;
}

ToggleRedboxes()
{
self.redboxes = !(isdefined(self.redboxes) && self.redboxes);
if(self.redboxes)
self thread RedBoxThread();
}

RedBoxThread()
{
self endon("disconnect");

while(self.redboxes)
{
foreach(player in level.players)
{
if(player == self || level.teambased && player.team == self.team)
continue;
player thread MakeRedBox( self );
}
wait 1;
}
self notify("rbx_off");
}

MakeRedBox( owner )
{
if(!isdefined(self.rboxes))
self.rboxes = [];

Index = owner GetEntityNumber();

if(isdefined( self.rboxes[ Index ] ))
return;

self.rboxes[ Index ] = owner CreateBox( self );

self.rboxes[ Index ] thread OnDisconnectedRBFix( owner );

while( isdefined(owner.redboxes) && owner.redboxes && isAlive(self))
wait .0125;

self.rboxes[ Index ] Destroy();
self.rboxes[ Index ] = undefined;
}

OnDisconnectedRBFix( owner )
{
owner endon("rbx_off");
owner waittill("disconnect");
self Destroy();
}


You will need to change the 'z' component of the boxes to make them match their chests or whatever. If you want to implement where it turns green, just thread a function for each player that waits until they can see you and toggles the color.
12-29-2017, 08:12 PM #25
Good deal, I will look around for a memory analysis tool... may just have to hammer one out. Most of the API documentation is vague though so I have my work cut out for me. Again thank you all. I think we can mark this thread as resolved or close it. The information you all provided me was insightful enough for me to get this up and running with very few lines of code and no overflow.
12-29-2017, 08:16 PM #26
anthonything
Space Ninja
Originally posted by thagh05t View Post
Good deal, I will look around for a memory analysis tool... may just have to hammer one out. Most of the API documentation is vague though so I have my work cut out for me. Again thank you all. I think we can mark this thread as resolved or close it. The information you all provided me was insightful enough for me to get this up and running with very few lines of code and no overflow.


Best documentation you will get is from Extinct. Hes about the only person left coding GSC. The zeroy and codengine stuff is mostly wrong. Im sure he can help with most of your questions.

The following 2 users say thank you to anthonything for this useful post:

OfficialCoolJay, Patrick

Copyright © 2024, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo