Skip to content
MPGHThe Dark Arts
/
RegisterLog in
Forum
Community
What's NewLatest posts across the boardTrendingHottest threads right nowSubscribedThreads you follow
Discussion
GeneralIntroductionsEntertainmentDebate FortFlaming & Rage
Board
News & AnnouncementsMPGH TimesSuggestions & HelpGiveaways
More Sections
Art & Graphic DesignProgrammingHackingCryptocurrency
Hacks & Cheats
Games
ValorantCS2 / CS:GOCall of Duty / WarzoneFortniteApex LegendsEscape From Tarkov
+14 moreLeague of LegendsGTA VMinecraftRustROTMGBattlefieldTroveBattleOnCombat ArmsCrossFireBlackshotRuneScapeDayZDead by Daylight
Resources
Game Hacking TutorialsReverse EngineeringGeneral Game HackingAnti-CheatConsole Game Hacking
Tools
Game Hacking ToolsTrainers & CheatsHack/Release NewsNew
Submit a release →Share your cheat, tool, or config with the community.
AINEW
AI Tools
General & DiscussionPrompt EngineeringLLM JailbreaksHotAI Agents & AutomationLocal / Open Models
AI × Gaming
AI Aimbots & VisionML Anti-CheatGame Bots & Automation
Create
AI Coding / Vibe CodingAI Art & MediaAI Voice & TTS
The AI frontier →Where game hacking meets modern machine learning. Jump in.
Marketplace
Buy & Sell
SellingBuyingTradingUser Services
Trust & Safety
Middleman LoungeMarketplace TalkVouch Copy Profiles
Money
Cryptocurrency TalkCurrency ExchangeWork & Job Offers
Start selling →List accounts, services, and goods. Use the middleman to trade safe.
MPGH The Dark Arts

A community for offensive security research, reverse engineering, and AI.

Community

ForumMarketplaceSearch

Account

RegisterLog in

Legal

Privacy PolicyForum RulesHelp & FAQ
© 2026 MPGH · All rights reserved.Built by the community, for the community. For educational purposes onlyContent is shared for security research and education — we don't condone illegal use. You're responsible for complying with applicable laws. Use at your own risk.
Home › Forum › MultiPlayer Game Hacks & Cheats › Battlefield Hacks & Cheats › Battlefield 2 Hacks & Cheats › Bone ESP

LightbulbBone ESP

Posts 1–2 of 2 · Page 1 of 1
mw2tuber
mw2tuber
Bone ESP
Screen shot: http://img209.imageshack.us/img209/507/screen007tg6.png

 
PT 1
void bone_esp(CPlayer *LocalPlayer, CPlayer *target, int bonenumber, vec3_t output, vec3_t vp, vec3_t vr, vec3_t vu, vec3_t vf)
{
D3DXMATRIX bone;
vec3_t vecbone, bonelocal, dot;
float fov, hfov, screenx, screeny;

if(!badptr(target->Info->PlayerInfo->soldier_skeleton3p))
{
bone = target->Info->PlayerInfo->soldier_skeleton3p->matrices[bonenumber];
D3DXMatrixMultiply(&bone, &bone, &target->Info->PlayerInfo->BodyMatrix);
VectorSet(vecbone,bone._41,bone._42,bone._43);
VectorSubtract(vp,vecbone,bonelocal);
}

dot[0] = -DotProduct(bonelocal,vr);
dot[1] = DotProduct(bonelocal,vu);
dot[2] = DotProduct(bonelocal,vf);

fov = LocalPlayer->FOV;
hfov = fov*(1.25f + ((1.1-fov)/10));

screenx = oViewport.Width/2 + dot[0] / dot[2] / tan(hfov/2) * oViewport.Width/2;
screeny = oViewport.Height/2 - dot[1] / dot[2] / tan(hfov/2) * oViewport.Width/2;

output[0] = screenx;
output[1] = screeny;
output[2] = 0;
}


Initializing
 
PT 2
if(boneesp == true)
{
bone_esp(pLocalPlayer,pPlayer,1,bone1,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,2,bone2,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,3,bone3,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,4,bone4,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,5,bone5,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,6,bone6,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,7,bone7,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,8,bone8,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,9,bone9,viewpoint,vr ight,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,10,bone10,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,11,bone11,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,12,bone12,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,13,bone13,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,14,bone14,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,15,bone15,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,16,bone16,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,17,bone17,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,18,bone18,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,19,bone19,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,20,bone20,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,21,bone21,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,22,bone22,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,23,bone23,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,24,bone24,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,25,bone25,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,26,bone26,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,27,bone27,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,28,bone28,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,29,bone29,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,30,bone30,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,31,bone31,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,32,bone32,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,33,bone33,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,34,bone34,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,35,bone35,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,36,bone36,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,37,bone37,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,38,bone38,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,39,bone39,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,40,bone40,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,41,bone41,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,42,bone42,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,43,bone43,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,44,bone44,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,45,bone45,viewpoint, vright,vup,vforward);
bone_esp(pLocalPlayer,pPlayer,46,bone46,viewpoint, vright,vup,vforward);

EnemyBones1[0].x = bone1[0];
EnemyBones1[0].y = bone1[1];
EnemyBones1[1].x = bone2[0];
EnemyBones1[1].y = bone2[1];

EnemyBones2[0].x = bone2[0];
EnemyBones2[0].y = bone2[1];
EnemyBones2[1].x = bone3[0];
EnemyBones2[1].y = bone3[1];

EnemyBones3[0].x = bone3[0];
EnemyBones3[0].y = bone3[1];
EnemyBones3[1].x = bone4[0];
EnemyBones3[1].y = bone4[1];

EnemyBones4[0].x = bone4[0];
EnemyBones4[0].y = bone4[1];
EnemyBones4[1].x = bone5[0];
EnemyBones4[1].y = bone5[1];

EnemyBones5[0].x = bone6[0];
EnemyBones5[0].y = bone6[1];
EnemyBones5[1].x = bone7[0];
EnemyBones5[1].y = bone7[1];

EnemyBones6[0].x = bone7[0];
EnemyBones6[0].y = bone7[1];
EnemyBones6[1].x = bone8[0];
EnemyBones6[1].y = bone8[1];

EnemyBones7[0].x = bone8[0];
EnemyBones7[0].y = bone8[1];
EnemyBones7[1].x = bone9[0];
EnemyBones7[1].y = bone9[1];

EnemyBones8[0].x = bone9[0];
EnemyBones8[0].y = bone9[1];
EnemyBones8[1].x = bone10[0];
EnemyBones8[1].y = bone10[1];

EnemyBones9[0].x = bone11[0];
EnemyBones9[0].y = bone11[1];
EnemyBones9[1].x = bone1[0];
EnemyBones9[1].y = bone1[1];

EnemyBones10[0].x = bone11[0];
EnemyBones10[0].y = bone11[1];
EnemyBones10[1].x = bone6[0];
EnemyBones10[1].y = bone6[1];

EnemyBones11[0].x = bone11[0];
EnemyBones11[0].y = bone11[1];
EnemyBones11[1].x = bone12[0];
EnemyBones11[1].y = bone12[1];

EnemyBones12[0].x = bone12[0];
EnemyBones12[0].y = bone12[1];
EnemyBones12[1].x = bone13[0];
EnemyBones12[1].y = bone13[1];

EnemyBones13[0].x = bone13[0];
EnemyBones13[0].y = bone13[1];
EnemyBones13[1].x = bone14[0];
EnemyBones13[1].y = bone14[1];

EnemyBones14[0].x = bone13[0];
EnemyBones14[0].y = bone13[1];
EnemyBones14[1].x = bone30[0];
EnemyBones14[1].y = bone30[1];

EnemyBones15[0].x = bone14[0];
EnemyBones15[0].y = bone14[1];
EnemyBones15[1].x = bone15[0];
EnemyBones15[1].y = bone15[1];

EnemyBones16[0].x = bone15[0];
EnemyBones16[0].y = bone15[1];
EnemyBones16[1].x = bone16[0];
EnemyBones16[1].y = bone16[1];

EnemyBones17[0].x = bone16[0];
EnemyBones17[0].y = bone16[1];
EnemyBones17[1].x = bone17[0];
EnemyBones17[1].y = bone17[1];

EnemyBones18[0].x = bone17[0];
EnemyBones18[0].y = bone17[1];
EnemyBones18[1].x = bone18[0];
EnemyBones18[1].y = bone18[1];

EnemyBones19[0].x = bone18[0];
EnemyBones19[0].y = bone18[1];
EnemyBones19[1].x = bone19[0];
EnemyBones19[1].y = bone19[1];

EnemyBones20[0].x = bone19[0];
EnemyBones20[0].y = bone19[1];
EnemyBones20[1].x = bone21[0];
EnemyBones20[1].y = bone21[1];

EnemyBones21[0].x = bone19[0];
EnemyBones21[0].y = bone19[1];
EnemyBones21[1].x = bone24[0];
EnemyBones21[1].y = bone24[1];

EnemyBones22[0].x = bone19[0];
EnemyBones22[0].y = bone19[1];
EnemyBones22[1].x = bone27[0];
EnemyBones22[1].y = bone27[1];

EnemyBones23[0].x = bone21[0];
EnemyBones23[0].y = bone21[1];
EnemyBones23[1].x = bone22[0];
EnemyBones23[1].y = bone22[1];

EnemyBones24[0].x = bone22[0];
EnemyBones24[0].y = bone22[1];
EnemyBones24[1].x = bone23[0];
EnemyBones24[1].y = bone23[1];

EnemyBones25[0].x = bone24[0];
EnemyBones25[0].y = bone24[1];
EnemyBones25[1].x = bone25[0];
EnemyBones25[1].y = bone25[1];

EnemyBones26[0].x = bone25[0];
EnemyBones26[0].y = bone25[1];
EnemyBones26[1].x = bone26[0];
EnemyBones26[1].y = bone26[1];

EnemyBones27[0].x = bone27[0];
EnemyBones27[0].y = bone27[1];
EnemyBones27[1].x = bone28[0];
EnemyBones27[1].y = bone28[1];

EnemyBones28[0].x = bone28[0];
EnemyBones28[0].y = bone28[1];
EnemyBones28[1].x = bone29[0];
EnemyBones28[1].y = bone29[1];

EnemyBones29[0].x = bone30[0];
EnemyBones29[0].y = bone30[1];
EnemyBones29[1].x = bone31[0];
EnemyBones29[1].y = bone31[1];

EnemyBones30[0].x = bone31[0];
EnemyBones30[0].y = bone31[1];
EnemyBones30[1].x = bone32[0];
EnemyBones30[1].y = bone32[1];

EnemyBones31[0].x = bone32[0];
EnemyBones31[0].y = bone32[1];
EnemyBones31[1].x = bone33[0];
EnemyBones31[1].y = bone33[1];

EnemyBones32[0].x = bone33[0];
EnemyBones32[0].y = bone33[1];
EnemyBones32[1].x = bone34[0];
EnemyBones32[1].y = bone34[1];

EnemyBones33[0].x = bone34[0];
EnemyBones33[0].y = bone34[1];
EnemyBones33[1].x = bone36[0];
EnemyBones33[1].y = bone36[1];

EnemyBones34[0].x = bone34[0];
EnemyBones34[0].y = bone34[1];
EnemyBones34[1].x = bone39[0];
EnemyBones34[1].y = bone39[1];

EnemyBones35[0].x = bone34[0];
EnemyBones35[0].y = bone34[1];
EnemyBones35[1].x = bone42[0];
EnemyBones35[1].y = bone42[1];

EnemyBones36[0].x = bone36[0];
EnemyBones36[0].y = bone36[1];
EnemyBones36[1].x = bone37[0];
EnemyBones36[1].y = bone37[1];

EnemyBones37[0].x = bone37[0];
EnemyBones37[0].y = bone37[1];
EnemyBones37[1].x = bone38[0];
EnemyBones37[1].y = bone38[1];

EnemyBones38[0].x = bone39[0];
EnemyBones38[0].y = bone39[1];
EnemyBones38[1].x = bone40[0];
EnemyBones38[1].y = bone40[1];

EnemyBones39[0].x = bone40[0];
EnemyBones39[0].y = bone40[1];
EnemyBones39[1].x = bone41[0];
EnemyBones39[1].y = bone41[1];

EnemyBones40[0].x = bone42[0];
EnemyBones40[0].y = bone42[1];
EnemyBones40[1].x = bone43[0];
EnemyBones40[1].y = bone43[1];

EnemyBones41[0].x = bone43[0];
EnemyBones41[0].y = bone43[1];
EnemyBones41[1].x = bone44[0];
EnemyBones41[1].y = bone44[1];

EnemyBones42[0].x = bone15[0];
EnemyBones42[0].y = bone15[1];
EnemyBones42[1].x = bone45[0];
EnemyBones42[1].y = bone45[1];

EnemyBones43[0].x = bone31[0];
EnemyBones43[0].y = bone31[1];
EnemyBones43[1].x = bone45[0];
EnemyBones43[1].y = bone45[1];

EnemyBones44[0].x = bone45[0];
EnemyBones44[0].y = bone45[1];
EnemyBones44[1].x = bone46[0];
EnemyBones44[1].y = bone46[1];
}


Then drawing

 
PT 3
if(boneesp == true)
{
pLine->Begin();
pLine->Draw(EnemyBones1, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones2, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones3, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones4, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones5, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones6, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones7, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones8, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones9, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones10, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones11, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones12, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones13, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones14, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones15, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones16, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones17, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones18, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones19, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones20, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones21, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones22, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones23, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones24, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones25, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones26, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones27, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones28, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones29, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones30, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones31, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones32, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones33, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones34, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones35, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones36, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones37, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones38, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones39, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones40, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones41, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones42, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones43, 2, Color);
pLine->End();
pLine->Begin();
pLine->Draw(EnemyBones44, 2, Color);
pLine->End();
}
#1 · 14y ago
F4B1
F4B1
fov = LocalPlayer->FOV;
hfov = fov*(1.25f + ((1.1-fov)/10));

What is that for? What is the use out of this? Im really new so please explain this to me.
#2 · 13y ago
Posts 1–2 of 2 · Page 1 of 1

Post a Reply

Similar Threads

  • Afg-bone-ESP-By sam22 in Battlefield Heroes Hacks
    5Last post 16y ago
  • BONE ESPBy yoda23456 in Battlefield Play4Free Hacks
    17Last post 15y ago
  • ESP BoneBy Awayk in Combat Arms BR Hack Coding/Source Code
    49Last post 14y ago
  • Bone ESP Code :DBy Acidblitz in Battlefield Play4Free Hacks
    8Last post 15y ago
  • ESP/Chams For BHD 1.5.0.5 Arugs 1.2m: UndetectedBy sf0d in General Game Hacking
    1Last post 17y ago

Tags for this Thread

#bf2#chams#models.