Announcement
Collapse
No announcement yet.
[HL2 Engine] Engine Chams - even better then the D3D ones
Collapse
X
-
PikachuMaster
-
Originally posted by PikachuMaster View Postreupload please , cant download materials.lolmaoman: Germans are born with a lifetime x22 login engraved into their birth certificates. True story.
Comment
-
big sorry for bumping this old thread, but I'm really interested in this topic.
I changed to OB SDK to hack DoD:S, so I wanted to get off from D3D for just using chams..
this is my snippit for this..
Code:CVMTHookManager gDrawModelExHook; int __stdcall new_DrawModelEx( ModelRenderInfo_t &pInfo ) { if(var.vis_chams == 0) return 0; if(g_pTextureRed == NULL) g_pTextureRed = g_pMaterialSystem->FindMaterial("models\\textures\\Red", TEXTURE_GROUP_MODEL); if(g_pTextureYellow == NULL) g_pTextureYellow = g_pMaterialSystem->FindMaterial("models\\textures\\Yellow", TEXTURE_GROUP_MODEL); else { if(g_pTextureYellow->GetMaterialVarFlag(MATERIAL_VAR_IGNOREZ) == FALSE) g_pTextureYellow->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, TRUE); } if(g_pTextureBlue == NULL) g_pTextureBlue = g_pMaterialSystem->FindMaterial("models\\textures\\Blue", TEXTURE_GROUP_MODEL); if(g_pTextureGreen == NULL) g_pTextureGreen = g_pMaterialSystem->FindMaterial("models\\textures\\Green", TEXTURE_GROUP_MODEL); else { if(g_pTextureGreen->GetMaterialVarFlag(MATERIAL_VAR_IGNOREZ) == FALSE) g_pTextureGreen->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, TRUE); } if(g_pTextureWhite == NULL) g_pTextureWhite =g_pMaterialSystem->FindMaterial("models\\textures\\White", TEXTURE_GROUP_MODEL); if(g_pTextureWhite2 == NULL) g_pTextureWhite2 = g_pTextureWhite; else { if(g_pTextureWhite2->GetMaterialVarFlag(MATERIAL_VAR_IGNOREZ) == FALSE) g_pTextureWhite2->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, TRUE); } gDrawModelExHook.UnHook(); if( pInfo.pModel ) { const char* pszModelName = g_pModelInfo->GetModelName(pInfo.pModel); if(strstr(pszModelName, "models/player")) { IMaterial* pTexture = g_pTextureWhite; IMaterial* pWallHackTexture = g_pTextureWhite2; CBaseEntity* pModelEntity = (CBaseEntity*)g_pEntList->GetClientEntity(pInfo.entity_index); if(pModelEntity) { player_info_t pinfo; //int iLifestate = *(int*)((DWORD)pModelEntity + 0x87); if( pModelEntity->IsAlive() && g_pEngine->GetPlayerInfo(pInfo.entity_index, &pinfo)) { //int iTeam = *(int*)((DWORD)pModelEntity + 0x90); if(pModelEntity->GetTeamNumber() == 2) { pTexture = g_pTextureRed; pWallHackTexture = g_pTextureYellow; } else if(pModelEntity->GetTeamNumber() == 3) { pTexture = g_pTextureBlue; pWallHackTexture = g_pTextureGreen; } } else { pTexture = g_pTextureWhite; pWallHackTexture = g_pTextureWhite2; } } else { if(strstr(pszModelName, "models/player/german_")) { pTexture = g_pTextureRed; pWallHackTexture = g_pTextureYellow; } if(strstr(pszModelName, "models/player/american_")) { pTexture = g_pTextureBlue; pWallHackTexture = g_pTextureGreen; } } g_pModelRender->ForcedMaterialOverride(pWallHackTexture); g_pModelRender->DrawModelEx(pInfo); g_pModelRender->ForcedMaterialOverride(pTexture); } else { g_pModelRender->ForcedMaterialOverride(NULL); } } int iRet = g_pModelRender->DrawModelEx(pInfo); g_pModelRender->ForcedMaterialOverride(NULL); gDrawModelExHook.ReHook(); return iRet; }
thanks in advice
Comment
-
But with correct index ofc. Fire up Olly and get it at DOD:S, idk it since i dont have DOD:S :/lolmaoman: Germans are born with a lifetime x22 login engraved into their birth certificates. True story.
Comment
-
Originally posted by Lawgiver View PostPlease get DOD:S, it's so fun game to rage. X(lolmaoman: Germans are born with a lifetime x22 login engraved into their birth certificates. True story.
Comment
-
IMaterial* red = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_red_small", "Model textures");
IMaterial* blue = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_blue_dead", "Model textures");
IMaterial* white = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_tick", "Model textures");
IMaterial* yellow = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_hostage_small", "Model textures");
IMaterial* green = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_radio_ring", "Model textures");
Read the posts first please
also I still cannot see the logic in why I'd want engine chams over d3d
Comment
-
Originally posted by entername View PostIMaterial* red = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_red_small", "Model textures");
IMaterial* blue = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_blue_dead", "Model textures");
IMaterial* white = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_tick", "Model textures");
IMaterial* yellow = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_hostage_small", "Model textures");
IMaterial* green = WHATEVER.m_pMaterialSystem->FindMaterial("materials\\sprites\\player_radio_ring", "Model textures");
Read the posts first please
also I still cannot see the logic in why I'd want engine chams over d3d
Comment
-
Originally posted by demize View Postcan someone PLEASE just fucking post the materials? kthx
Originally posted by entername View Postalso I still cannot see the logic in why I'd want engine chams over d3dlolmaoman: Germans are born with a lifetime x22 login engraved into their birth certificates. True story.
Comment
-
Originally posted by Scenetic View PostD3D Is like the best ever. xD
also the outcome is the same...the different models are drawnn with a colored textures...doesn't matter if you use d3d or engine chams...at the end it gets drawn with d3d neverthelessI 0x90 you!
Comment
-
Originally posted by aVitamin View Postyeye...keep dreamin'...try to change the textures colors depending on lifestate, hp, friendssystem using pure d3d hookenz...
also the outcome is the same...the different models are drawnn with a colored textures...doesn't matter if you use d3d or engine chams...at the end it gets drawn with d3d neverthelesslolmaoman: Germans are born with a lifetime x22 login engraved into their birth certificates. True story.
Comment
-
Originally posted by aVitamin View Postlifestate, hp, friendssystem
also the outcome is the same...the different models are drawnn with a colored textures...doesn't matter if you use d3d or engine chams...at the end it gets drawn with d3d nevertheless
Also this gets patched by pure :anim22:
Originally posted by mencore View PostQuit raging. Attached them to aVitamins post.
If you dont like/want/know/your religion says you cant/ to hook D3D and want to keep your hack as pure enginehook.
Comment
-
Originally posted by fibre View Postyou figure out how to log the values yet
Needa get / make / get help with a d3d logger.
Comment
-
Originally posted by Lawgiver View PostIts really easy. :o
I have nothing close to a logger.
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
Do i have to use that "blabla.Hook()" & "blabla.UnHook()" for getting this code working?[Ĺ.Ğ.Ś] san-gohan: speed hack name hi please ?
Critycal /vH: auschwitz hook v88 heil hitler edition
[Ĺ.Ğ.Ś] san-gohan has changed name to [Ĺ.Ğ.Ś] san-gohan auschwitz
___________________________________________
Hellhound: Dont u dare troll me.
ШΛLL-Ε: and why/how would u know
Hellhound: coz
Hellhound: lawgiver
Hellhound: is my
Hellhound: sex buddy
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
well, i saw it in another snippet too, for FrameStageNotify. and i know it's not needed for FrameStageNotify, so i thought maybe i didn't have to do it[Ĺ.Ğ.Ś] san-gohan: speed hack name hi please ?
Critycal /vH: auschwitz hook v88 heil hitler edition
[Ĺ.Ğ.Ś] san-gohan has changed name to [Ĺ.Ğ.Ś] san-gohan auschwitz
___________________________________________
Hellhound: Dont u dare troll me.
ШΛLL-Ε: and why/how would u know
Hellhound: coz
Hellhound: lawgiver
Hellhound: is my
Hellhound: sex buddy
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
wtf you can unhook but you cant hook???
how is that possible?
Code:#define HOOK_FUNCTION(FUNKTIONSPOINTER,R?CKGABE,PARAMETER,ORIGINAL,ZIEL) \ try \ { \ FUNKTIONSPOINTER = (R?CKGABE (__stdcall*)PARAMETER)DetourFunction((PBYTE)ORIGINAL,(PBYTE)ZIEL); \ m_pConLog->Write(true,FOREGROUND_GREEN | FOREGROUND_INTENSITY,"[HOOKED (DETOURED)]:\n\t%s to %s from [%X] to [%X]",#FUNKTIONSPOINTER,#ZIEL,ORIGINAL,ZIEL); \ } \ catch (...) \ { \ m_pConLog->Error("Failed to hook %s to %s",#FUNKTIONSPOINTER,#ZIEL); \ } HOOK_FUNCTION(m_pHooks->m_pDrawModelEx,int,(ModelRenderInfo_t&),dwVTableMRender[19],nDrawModelEx);
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
hmm , not working on CSS , i m using TGS Basehook wich already have DrawModelEx Hooked ..
DrawModelEx :
Code:int __stdcall nDrawModelEx( ModelRenderInfo_t &pInfo ) { if(g_pTextureRed == NULL) g_pTextureRed = m_pMaterialSystem->FindMaterial("models\\textures\\Red", TEXTURE_GROUP_MODEL); if(g_pTextureYellow == NULL) g_pTextureYellow = m_pMaterialSystem->FindMaterial("models\\textures\\Yellow", TEXTURE_GROUP_MODEL); else { if(g_pTextureYellow->GetMaterialVarFlag(MATERIAL_VAR_IGNOREZ) == FALSE) g_pTextureYellow->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, TRUE); } if(g_pTextureBlue == NULL) g_pTextureBlue = m_pMaterialSystem->FindMaterial("models\\textures\\Blue", TEXTURE_GROUP_MODEL); if(g_pTextureGreen == NULL) g_pTextureGreen = m_pMaterialSystem->FindMaterial("models\\textures\\Green", TEXTURE_GROUP_MODEL); else { if(g_pTextureGreen->GetMaterialVarFlag(MATERIAL_VAR_IGNOREZ) == FALSE) g_pTextureGreen->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, TRUE); } if(g_pTextureWhite == NULL) g_pTextureWhite = m_pMaterialSystem->FindMaterial("models\\textures\\White", TEXTURE_GROUP_MODEL); if(g_pTextureWhite2 == NULL) g_pTextureWhite2 = g_pTextureWhite; else { if(g_pTextureWhite2->GetMaterialVarFlag(MATERIAL_VAR_IGNOREZ) == FALSE) g_pTextureWhite2->SetMaterialVarFlag(MATERIAL_VAR_IGNOREZ, TRUE); } gDrawModelExHook.Unhook(); if( pInfo.pModel ) { const char* pszModelName = m_pModelinfo->GetModelName(pInfo.pModel); if(strstr(pszModelName, "models/player")) { IMaterial* pTexture = g_pTextureWhite; IMaterial* pWallHackTexture = g_pTextureWhite2; CBaseEntity* pModelEntity = (CBaseEntity*)m_pEntList->GetClientEntity(pInfo.entity_index); if(pModelEntity) { player_info_t pinfo; int iLifestate = *(int*)((DWORD)pModelEntity + 0x87); if( iLifestate == LIFE_ALIVE && m_pEngine->GetPlayerInfo(pInfo.entity_index, &pinfo)) { int iTeam = *(int*)((DWORD)pModelEntity + 0x90); if(iTeam == 2) { pTexture = g_pTextureRed; pWallHackTexture = g_pTextureYellow; } else if(iTeam == 3) { pTexture = g_pTextureBlue; pWallHackTexture = g_pTextureGreen; } } else { pTexture = g_pTextureWhite; pWallHackTexture = g_pTextureWhite2; } } else { if(strstr(pszModelName, "models/player/t_")) { pTexture = g_pTextureRed; pWallHackTexture = g_pTextureYellow; } if(strstr(pszModelName, "models/player/ct_")) { pTexture = g_pTextureBlue; pWallHackTexture = g_pTextureGreen; } } m_pModelRender->ForcedMaterialOverride(pWallHackTexture); pDrawModelEx(pInfo); m_pModelRender->ForcedMaterialOverride(pTexture); } else { m_pModelRender->ForcedMaterialOverride(NULL); } } int iRet = pDrawModelEx(pInfo); m_pModelRender->ForcedMaterialOverride(NULL); gDrawModelExHook.ReHook(); return iRet; //return pDrawModelEx( pInfo ); }
Code:if( m_pModelRender == NULL ) { m_pModelRender = ( IVModelRender* )g_pEngineFactory( "VEngineModel012", NULL ); LOG_INTERFACE( m_pModelRender ); if( m_pModelRender ) { CVTableHook m_vModelRender; DWORD *pdwModelRender = ( DWORD* )*( DWORD* )m_pModelRender; *( DWORD* )&pDrawModelEx = m_vModelRender.Create( pdwModelRender, 19, ( DWORD )nDrawModelEx ); } }
IP: 93.127.228.26
Mail: [email protected]
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
I Did , but prolly if the models wouldn't there wouldn't it return invisible models or purple shits?IP: 93.127.228.26
Mail: [email protected]
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
@ hellhound, try updating to new css netvars bra
THESE ARE OLD in the code posted.
Code:int iLifestate = *(int*)((DWORD)pModelEntity + 0x87); if( iLifestate == LIFE_ALIVE && m_pEngine->GetPlayerInfo(pInfo.entity_index, &pinfo)) { int iTeam = *(int*)((DWORD)pModelEntity + 0x90);
Comment
-
Re: [HL2 Engine] Engine Chams - even better then the D3D ones
Originally posted by jesusjuice View Post@ hellhound, try updating to new css netvars bra
THESE ARE OLD in the code posted.
Code:int iLifestate = *(int*)((DWORD)pModelEntity + 0x87); if( iLifestate == LIFE_ALIVE && m_pEngine->GetPlayerInfo(pInfo.entity_index, &pinfo)) { int iTeam = *(int*)((DWORD)pModelEntity + 0x90);
thanks for posting but look @ the date :DIP: 93.127.228.26
Mail: [email protected]
Comment
Comment