Official site anti-cheat Ultra Core Protector

Home Download F.A.Q. Addons Monitor Forum Support Advertise English version site UCP Anti-Cheat  Russian version site UCP Anti-Cheat
Ultra Core Protector - is the client-server anti-cheat freeware, for server protection from unscrupulous players.

Abilities Supported games  
Half-Life
Condition Zero
Counter-Strike 1.6
Day of Defeat
Adrenaline Gamer
Team Fortress Classic
Counter-Strike Source
MU Online
Ragnarok Online
Half-Life 2 Deathmatch
Adrenaline Gamer 2
Team Fortress 2
CSGO: 3D Box ESP Source Code

void Draw3DBox(CBaseEntity *pEntity, float x0, float y0, float x1, float y1)
{
ICollideable* coll = pEntity->GetCollideable();

int iScreenWidth, iScreenHeight;
I::Engine()->GetScreenSize(iScreenWidth, iScreenHeight);

Vector min = coll->OBBMins();
Vector max = coll->OBBMaxs();

Vector corners[8] =
{
Vector(min.x,min.y,min.z),
Vector(min.x,max.y,min.z),
Vector(max.x,max.y,min.z),
Vector(max.x,min.y,min.z),
Vector(min.x,min.y,max.z),
Vector(min.x,max.y,max.z),
Vector(max.x,max.y,max.z),
Vector(max.x,min.y,max.z)
};

float ang = pEntity->GetEyeAngles()->y;

for (int i = 0; i <= 7; i++) corners[i].Rotate2D(ang); Vector _corners[8]; for (int i = 0; i <= 7; i++) W2S(*pEntity->GetOrigin() + corners[i], _corners[i]);

for (int i = 0; i <= 7; i++) { x0 = (int)(min(x1, _corners[i].x)); y0 = (int)(min(y1, _corners[i].y)); x1 = (int)(max(x1, _corners[i].x)); y1 = (int)(max(y1, _corners[i].y)); } static Color col; switch (*pEntity->GetTeamNum())
{
case 2:
col = *pEntity->GetTeamNum() == 2 ? SSDK::Color(247, 180, 20) : SSDK::Color(32, 180, 57);
break;
case 3:
col = *pEntity->GetTeamNum() == 2 ? SSDK::Color(240, 30, 35) : SSDK::Color(63, 72, 205);
break;
default:
break;
}

for (int i = 1; i <= 4; i++) { I::MatSurface()->DrawLine((int)(_corners[i - 1].x), (int)(_corners[i - 1].y), (int)(_corners[i % 4].x), (int)(_corners[i % 4].y));
I::MatSurface()->DrawLine((int)(_corners[i - 1].x), (int)(_corners[i - 1].y), (int)(_corners[i + 3].x), (int)(_corners[i + 3].y));
I::MatSurface()->DrawLine((int)(_corners[i + 3].x), (int)(_corners[i + 3].y), (int)(_corners[i % 4 + 4].x), (int)(_corners[i % 4 + 4].y));
}
}

And some fixed version:
if (Vars.Visuals.3dbox)
{

ICollideable* coll = Entity->GetCollideable();

Vector min = coll->OBBMins();
Vector max = coll->OBBMaxs();

Vector corners[8] =
{
Vector(min.x,min.y,min.z),
Vector(min.x,max.y,min.z),
Vector(max.x,max.y,min.z),
Vector(max.x,min.y,min.z),
Vector(min.x,min.y,max.z),
Vector(min.x,max.y,max.z),
Vector(max.x,max.y,max.z),
Vector(max.x,min.y,max.z)
};

float ang = Entity->GetEyeAngles().y;

for (int i = 0; i <= 7; i++) corners[i].Rotate2D(ang); Vector _corners[8]; for (int i = 0; i <= 7; i++) D::WorldToScreen(Entity->GetOrigin() + corners[i], _corners[i]);

int x1 = iScreenWidth * 2, y1 = iScreenHeight * 2, x2 = -iScreenWidth, y2 = -iScreenHeight;

for (int i = 0; i <= 7; i++) { x1 = (int)(min(x1, _corners[i].x)); y1 = (int)(min(y1, _corners[i].y)); x2 = (int)(max(x2, _corners[i].x)); y2 = (int)(max(y2, _corners[i].y)); } int diff = x2 - x1; int diff2 = y2 - y1; static Color col; if (Entity->IsVisible(8))
col = Entity->GetTeam() == 2 ? Color(200, 60, 60) : Color(84, 167, 255);
else
col = Entity->GetTeam() == 2 ? Color(232, 209, 32) : Color(72, 219, 75);

for (int i = 1; i <= 4; i++) { D::DrawLine((int)(_corners[i - 1].x), (int)(_corners[i - 1].y), (int)(_corners[i % 4].x), (int)(_corners[i % 4].y), col); D::DrawLine((int)(_corners[i - 1].x), (int)(_corners[i - 1].y), (int)(_corners[i + 3].x), (int)(_corners[i + 3].y), col); D::DrawLine((int)(_corners[i + 3].x), (int)(_corners[i + 3].y), (int)(_corners[i % 4 + 4].x), (int)(_corners[i % 4 + 4].y), col); }