Valve Posted May 1, 2012 Share Posted May 1, 2012 It may be a little outdated, but it's for testing purposes :) /* Name: cZuBzix Copyright: 2011 Author: cZuBzix Date: 09-02-11 16:10 Description: Css Cheat Design */ #include <cstdlib> #include <iostream> #include <string> #include <cmath> #include "SDK.h" using namespace std; int main(int argc, char *argv[]) { system("title EnnionHack V1.0"); std::cout << " " << std::endl; std::cout << " EnnionHack V1.0" << std::endl; std::cout << " Copyright 2011" << std::endl; std::cout << " " << std::endl; std::cout << " " << std::endl; std::cout << " Credits:" << std::endl; std::cout << " " << std::endl; std::cout << " - cZuBzix" << std::endl; std::cout << " - Kevin@" << std::endl; std::cout << " " << std::endl; std::cout << " " << std::endl; std::cout << " Looking for Counter-Strike: Source HL2.EXE Window . . ." << std::endl; std::cout << " " << std::endl; std::cout << " " << std::endl; std::cout << " " << std::endl; std::cout << " EEEEEEEE HHHH HHHH 11111 0000" << std::endl; std::cout << " EEEE HHHH HHHH 111111 00 00" << std::endl; std::cout << " EEEEEEEE HHHHHHHHHH ==== 1111 00 00" << std::endl; std::cout << " EEEE HHHH HHHH 1111 00 00" << std::endl; std::cout << " EEEEEEEE HHHH HHHH 1111 () 0000" << std::endl; system("PAUSE>null"); return 0; { #undef GetAsyncKeyState #undef GetCursorPos bool hack; QAngle angles; bool EnemyVisible; C_BaseEntity *Target; /* Returns a specified column from a matrix3x4_t */ Vector MatrixColumn(const matrix3x4_t &Matrix, int Column) { return Vector(Matrix[0][Column], Matrix[1][Column], Matrix[2][Column]); } /* Returns a Vector of a bone; NOTE: Will return Vector() if it cannot get the bone, NOT SAFE */ bool GetBonePositions(IClientEntity* Entity, int Bone, Vector &vBone) { matrix3x4_t Matrix[128]; if(Bone < 0 || Bone >= 20 || !Entity || Entity->IsDormant() || !Entity->SetupBones(Matrix, 128, 0x00000100, 0)) return false; vBone = MatrixColumn(Matrix[bone], 3); return true; } DWORD *HookVFunc(DWORD *vtable, int index, DWORD *newFunction) { DWORD dwOldProt, *oldFunc; VirtualProtect(&vtable[index], 4, PAGE_EXECUTE_READWRITE, &dwOldProt); oldFunc=(DWORD*)vtable[index]; vtable[index]=(DWORD)newFunction; VirtualProtect(&vtable[index], 4, dwOldProt, &dwOldProt); return oldFunc; } void (__stdcall *oHudUpdate)(bool); void _stdcall xHudUpdate(bool bActive) { double DistHolder[1024]; C_BaseEntity *EntHolder[1024]; memset(DistHolder, 0, sizeof(DistHolder)); memset(EntHolder, 0, sizeof(EntHolder)); double Distance = 0; C_BaseEntity* ClosestTarget; bool EnemyVisible = false; Vector Predict; Predict.Init(0,0,0); trace_t Trace; Ray_t Ray; Ray.Init(0, 0); double smallestp; double smallesty; double Distance2 = 0; double Last; QAngle aimangles; aimangles.Init(0,0,0); matrix3x4_t Matrix[128]; matrix3x4_t pBoneToWorld; Vector num; num.Init(); HANDLE hnd = GetStdHandle(STD_OUTPUT_HANDLE); QAngle angleholder; angleholder.Init(); QAngle Botangles; Botangles.Init(0,0,0); Vector vectorholder; vectorholder.Init(); IClientEntity* MyEnt = NULL; IClientEntity* EnemyEnt = NULL; C_BaseEntity* MyBaseEnt = NULL; C_BaseEntity* EnemyBaseEnt = NULL; C_BaseEntity* Target = NULL; Vector playpos; playpos.Init(0,0,0); Vector playpos2; playpos2.Init(0,0,0); double xdist = 0; double ydist = 0; double zdist = 0; double xang = 0; double yang = 0; angles.x=0; angles.y=0; angles.z=0; if(GetAsyncKeyState(VK_INSERT)&1) { hack=!hack; if(hack && pEngineClient->IsInGame()) { ConMsg(0,"Aimbot turned on\n"); WriteText(hnd,"Aimbot turned on"); pEngineClient->SetRestrictClientCommands(false); pEngineClient->ClientCmd("sv_cheats 1;r_visualizetraces 1"); } if(!hack) { ConMsg(0,"Aimbot turned off\n"); WriteText(hnd,"Aimbot turned off"); pEngineClient->ClientCmd("r_visualizetraces 0"); } } if(!pEngineClient->IsInGame() && hack) { hack=false; WriteText(hnd,"Out of game or dead, aimbot turned off"); } if(!hack) { Target=NULL; MyEnt=NULL; MyBaseEnt=NULL; EnemyEnt=NULL; } else if(hack) { EnemyVisible = false; playpos2.Init(0,0,0); if(pEngineClient->IsInGame()) { ClosestTarget=NULL; Target=NULL; MyEnt=NULL; MyBaseEnt=NULL; EnemyEnt=NULL; EnemyBaseEnt=NULL; Distance = 0; Distance2 = 0; for(int i=2;i<=EntList->NumberOfEntities(true);i++) { EnemyEnt = EntList->GetClientEntity(i); MyEnt = EntList->GetClientEntity(1); MyBaseEnt = (C_BaseEntity*)MyEnt; EnemyVisible = false; if(EnemyEnt!=NULL) { EnemyBaseEnt = (C_BaseEntity*)EnemyEnt; if(EnemyBaseEnt->IsBot()) { if(EnemyBaseEnt->GetTeamNumber() != MyBaseEnt->GetTeamNumber()) { WriteText(hnd,"Target found"); if(GetBonePositions((IClientEntity*)EnemyBaseEnt,14,playpos2)){} if(GetBonePositions((IClientEntity*)MyBaseEnt,14,playpos)){} ClosestTarget = EnemyBaseEnt; if(ClosestTarget==NULL) continue; xdist = playpos2.x-playpos.x; ydist = playpos2.y-playpos.y; zdist = playpos2.z-playpos.z; if(xdist<0) { yang = ((atan(ydist/xdist)*57.29578)+180); } if(xdist>0) { yang = (atan(ydist/xdist)*57.29578); } xang = (atan(zdist/dist(playpos.x,playpos.y,playpos2.x,playpos2.y))*-57.29578); angles.Init(xang,yang,0); aimangles = MyBaseEnt->GetAbsAngles(); Botangles.Init(xang,yang,0); smallestp = abs(aimangles.x-Botangles.x); smallesty = abs(aimangles.y-Botangles.y); Distance2 = smallestp+smallesty; if(i==2) { Target = ClosestTarget; Distance = Distance2; } if(Distance2<Distance) { Distance = Distance2; Target = ClosestTarget; } if(GetBonePositions((IClientEntity*)Target,14,playpos2)){} if(GetBonePositions((IClientEntity*)MyBaseEnt,14,playpos)){} xdist = playpos2.x-playpos.x; ydist = playpos2.y-playpos.y; zdist = playpos2.z-playpos.z; if(xdist<0) { yang = ((atan(ydist/xdist)*57.29578)+180); } if(xdist>0) { yang = (atan(ydist/xdist)*57.29578); } xang = (atan(zdist/dist(playpos.x,playpos.y,playpos2.x,playpos2.y))*-57.29578); angles.Init(xang,yang,0); Ray.Init(playpos,playpos2); Tracer->TraceRay(Ray,MASK_SHOT,0,&Trace); } } } else if(EnemyEnt==NULL && i==EntList->NumberOfEntities(true)) { break; } } if(GetAsyncKeyState(VK_LBUTTON)) //Aimbot core code { if (playpos2.x+playpos2.y!=0) { WriteText(hnd,"Target is Visible"); pEngineClient->SetViewAngles(angles); WriteText(hnd,"Aiming..."); } } } } oHudUpdate(bActive); } int MainThread() { AllocConsole(); HANDLE hnd = GetStdHandle(STD_OUTPUT_HANDLE); while(!GetModuleHandle("engine.dll")) { Sleep(100); } WriteText(hnd,"Engine.dll module found"); //IVEngineClient CreateInterfaceFn pEngInt = (CreateInterfaceFn)GetProcAddress(GetModuleHandle("engine.dll"), "CreateInterface"); pEngineClient = (IVEngineClient *)pEngInt(VENGINE_CLIENT_INTERFACE_VERSION,NULL); //IEngineTrace CreateInterfaceFn TraceInt = (CreateInterfaceFn)GetProcAddress(GetModuleHandle("engine.dll"),"CreateInterface"); Tracer = (IEngineTrace *)TraceInt(INTERFACEVERSION_ENGINETRACE_CLIENT,NULL); while(!GetModuleHandle("gameui.dll")) { Sleep(100); } WriteText(hnd,"gameui.dll module found"); //IGameConsole CreateInterfaceFn ConCreateInterface = (CreateInterfaceFn)GetProcAddress(GetModuleHandle("gameui.dll"), "CreateInterface"); g_pIGameConsole = (IGameConsole *)ConCreateInterface(GAMECONSOLE_INTERFACE_VERSION, NULL); while(!GetModuleHandle("client.dll")) { Sleep(100); } WriteText(hnd,"client.dll module found"); //IClientEntityList CreateInterfaceFn EntListInt = (CreateInterfaceFn)GetProcAddress(GetModuleHandle("client.dll"), "CreateInterface"); EntList = (IClientEntityList *)EntListInt(VCLIENTENTITYLIST_INTERFACE_VERSION, NULL); //IBaseClientDLL CreateInterfaceFn IBaseInt = (CreateInterfaceFn)GetProcAddress(GetModuleHandle("client.dll"),"CreateInterface"); HudUpdateHook = (DWORD *)IBaseInt(CLIENT_DLL_INTERFACE_VERSION,NULL); oHudUpdate = (void (__stdcall *)(bool))HookVFunc(*(DWORD**)HudUpdateHook, 9,(DWORD*) &xHudUpdate); if(pEngineClient == NULL || g_pIGameConsole == NULL || EntList == NULL) { MessageBox(0,"Error","Error",0); return 0; } while(!pEngineClient->Con_IsVisible()) { g_pIGameConsole->Show(); } g_pIGameConsole->Clear(); ConMsg(0,"------------------------------\n| CSS Offline Aimbot Loaded |\n------------------------------\n\n"); while(1) //main aimbot loop { Sleep(50); } } BOOL WINAPI DllMain( HINSTANCE hinstDLL, DWORD dwReason, LPVOID lpReserved ) { if( dwReason == DLL_PROCESS_ATTACH ) { CreateThread( NULL, NULL, (LPTHREAD_START_ROUTINE)MainThread, NULL, NULL, NULL); } system("PAUSE"); return EXIT_SUCCESS, TRUE; } Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.