OldSchoolHack

Register / Login English

Chams Problem


icon Chams Problem #1

Join Date: Apr 2013

Posts: 22

Hi,
da die Methode mit NumVertices und primCount in meinem Fall für 300 verschiedene Skins zu zeitafwändig ist und mit stripes es überhaupt nicht geklappt hat, hab ich nach einer Alternative gesucht und eine gefunden.
TEXT Code:
  1. //DIP-hook
  2. DWORD dwRet_addr = ( DWORD ) _ReturnAddress();
  3. // actors
  4. if ( dwRet_addr == 0x761142 )
  5. {
  6. pDevice->SetRenderState(D3DRS_ZENABLE,false);
  7. //...
  8. }

Wie funktioniert das? Hab keine Erklärung dazu gefunden.


/e hat sich erledigt :>

Last edited by capo1337 (Sun 26. May 2013, 00:26)

Reason: no reason given

icon #2

Join Date: Apr 2013

Posts: 22

Tie kriege ich es noch hin, dass die Texturen heller dargestellt werden?
das benutze ich bisher:
TEXT Code:
  1. pDevice->SetRenderState(D3DRS_ZENABLE,false);
  2. pDevice->SetRenderState(D3DRS_FILLMODE,D3DFILL_SOLID);
  3. pDevice->SetTexture( 0, texRed);
  4. pDevice->DrawIndexedPrimitive(Type,BaseVertexIndex, MinVertexIndex, NumVertices, startIndex,primCount);
  5. pDevice->SetRenderState(D3DRS_ZENABLE,true);
  6. pDevice->SetRenderState(D3DRS_FILLMODE,D3DFILL_SOLID);
  7. pDevice->SetTexture( 0, texGreen);
icon #3

Join Date: Jan 2012

Posts: 9

User-Rating:

2 positive
0 negative
Schau dir von der Only registered and activated users can see links.-Funktion mal die Only registered and activated users can see links. "D3DRS_LIGHTING" und "D3DRS_AMBIENT" an. Das sollte das sein, wonach du suchst.
Btw ist nach deinem Call zu DrawIndexedPrimitive die Zeile mit dem "D3DRS_FILLMODE" nicht nötig, weil sich States nicht zurücksetzen und der Fillmode ja schon von deinem vorherigen SetRenderState-Aufruf auf Solid ist.
icon #4

Join Date: Apr 2013

Posts: 22

hab das oben hinzugefügt:
TEXT Code:
  1. pDevice->SetRenderState(D3DRS_LIGHTING,false);
  2. pDevice->SetRenderState(D3DRS_AMBIENT,txtWhite);
hat jedoch nix genützt, wie krieg es hin, dass die Spieler immer gleich hell sichtbar sind?
icon #5

Join Date: Dec 2011

Posts: 97

User-Rating:

2 positive
0 negative
Ein Kleiner ausschnitt aus meinem Alten CS:GO Hack:

TEXT Code:
  1. if(Terrorist){
  2. pDevice->SetRenderState(D3DRS_ZENABLE, false);
  3. pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
  4. pDevice->SetPixelShader(Yellow);
  5. pDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
  6. pDevice->SetRenderState(D3DRS_ZENABLE, true);
  7. pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
  8. pDevice->SetPixelShader(Red);
  9. }

Villeicht hilfts was.

MfG
icon #6

Join Date: Jun 2011

Posts: 490

User-Rating:

12 positive
0 negative
Pixelshader sind immer hell, aber ich denke mal er will Texturen benutzen weil die einfach schöner aussehen und die sind z.b. im Schatten dann dunkler, dass wird ja hier das Problem sein.

__________________

http://www10.pic-upload.de/30.04.12/j9dbc34bxdg.jpg
icon #7

Join Date: Apr 2013

Posts: 22

@vedel dein Bespiel kenn ich, habs auch ausprobiert, doch dannach buggte die Darstellung in meinem Spiel total.

hab dann das hier gefunden

ist aber nicht optimal finde ich, einige Objekte (Autos, halbdurchsichtige Wände,Rauch..) werden im Fordergrund gezeichnet und man sieht dann den Spieler nicht, viellecht weiß jemand warum
TEXT Code:
  1. if(chams)
  2. {
  3. pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_SOLID );
  4.  
  5. pDevice->SetRenderState( D3DRS_ZENABLE, false );
  6. pDevice->SetRenderState( D3DRS_PATCHEDGESTYLE, D3DPATCHEDGE_CONTINUOUS );
  7. pDevice->SetPixelShader( shaRed );
  8. pDevice->DrawIndexedPrimitive( Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount );
  9.  
  10. // actor infront wall
  11. pDevice->SetPixelShader( shaGreen );
  12. pDevice->SetRenderState( D3DRS_ZENABLE, true );
  13. pDevice->DrawIndexedPrimitive( Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount );
  14. pDevice->SetPixelShader( NULL );
  15. return pDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_SOLID );
  16. }
icon #8

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
solltest bevor du die renderstates und pixelshader umstellst deren originalwerte speichern und nachdem du gezeichnet hast die ursprünglichen werte wiederherstellen.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #9

Join Date: Apr 2013

Posts: 22

würde das bei meinem Problem helfen, oder meinst du vedels Beispiel?
icon #10

Join Date: Dec 2011

Posts: 97

User-Rating:

2 positive
0 negative
Meine Code: 
TEXT Code:
  1. IDirect3DPixelShader9 *Yellow = NULL;
  2.  

TEXT Code:
  1. HRESULT GenerateShader(IDirect3DDevice9 *pD3Ddev, IDirect3DPixelShader9 **pShader, float r, float g, float b, bool setzBuf) {
  2.    char szShader[ 256 ];
  3.    ID3DXBuffer *pShaderBuf = NULL;
  4.    if (setzBuf){
  5.        sprintf_s( szShader, "ps_3_0\ndef c0, %f, %f, %f, %f\nmov oC0,c0\nmov oDepth, c0.x", r, g, b, 1.0f );
  6. }
  7.    else{
  8.        sprintf_s( szShader, "ps_3_0\ndef c0, %f, %f, %f, %f\nmov oC0,c0", r, g, b, 1.0f );
  9. }
  10.    D3DXAssembleShader(szShader, (strlen(szShader)+1), NULL, NULL, 0, &pShaderBuf, NULL );
  11.    if(FAILED(pD3Ddev->CreatePixelShader((const DWORD*)pShaderBuf->GetBufferPointer(), pShader)) )return E_FAIL;
  12.    return S_OK;
  13. }

TEXT Code:
  1. GenerateShader(pDevice, &Yellow, 1.0, 1.0f, 0.0f, false);

TEXT Code:
  1. HRESULT WINAPI hkDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE PrimType, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount){
  2. if(menu.ChamState == true){
  3. if(Terrorist){
  4. pDevice->SetRenderState(D3DRS_ZENABLE, false);
  5. pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
  6. pDevice->SetPixelShader(Yellow);
  7. pDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
  8. pDevice->SetRenderState(D3DRS_ZENABLE, true);
  9. pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
  10. pDevice->SetPixelShader(Red);
  11. }
  12.  
  13. if(CounterTerrorist){
  14. pDevice->SetRenderState(D3DRS_ZENABLE, false);
  15. pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
  16. pDevice->SetPixelShader(Green);
  17. pDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
  18. pDevice->SetRenderState(D3DRS_ZENABLE, true);
  19. pDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
  20. pDevice->SetPixelShader(Blue);
  21. }
  22. }
  23. return pDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
  24. }

Jetzt sollte es Funktionieren (also mein dreck)

...
schick mal bitte n Screen Shot von deinen "BUGS"
Last edited by vedel (Tue 11. Jun 2013, 23:13)

Reason: no reason given

icon #11

Join Date: Apr 2013

Posts: 22

@vedel:
wenn du darauf bestehst
Only registered and activated users can see links.
wie gesagt, es buggt damit total

icon #12

Join Date: Dec 2011

Posts: 97

User-Rating:

2 positive
0 negative
Welches game soll das sein?^^
Naja villeicht hast du die falschen models.
icon #13

Join Date: Jun 2011

Posts: 490

User-Rating:

12 positive
0 negative
Es sieht schwer danach aus, als hättest du ienfach die falschen strides, Numvertices, Primcounts rausgesucht.

__________________

http://www10.pic-upload.de/30.04.12/j9dbc34bxdg.jpg
icon #14

Join Date: Apr 2013

Posts: 22

@Mantarochen
nein, denn wenn ich statt SetPixelShader SetTexture benutze siehts so aus:
Only registered and activated users can see links.
doch wie gesagt sind die Spieler dann im Schatten kaum sichtbar
CPP Code:
  1. pDevice->SetRenderState(D3DRS_LIGHTING,false);
  2. pDevice->SetRenderState(D3DRS_AMBIENT,txtWhite);
das hat nix gebracht
diesen teil hab ich einfach oben drangetan, war doch richtig, oder?
Last edited by capo1337 (Thu 13. Jun 2013, 00:59)

Reason: no reason given

icon #15

Join Date: Jun 2011

Posts: 490

User-Rating:

12 positive
0 negative
Die chams sehen für texturechams aber schwer lahm aus, da sind ja überhaupt keine Texturen vorhanden. Mag aber auch an GTA San Andreas selbst liegen.

__________________

http://www10.pic-upload.de/30.04.12/j9dbc34bxdg.jpg