Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Warface RU EXTERNAL Sourse version 1
#1
Wybacz mi mój zły angielski   Cześć, Dzisiaj pokażę Część kodu, który został zaimplementowany Praca Prace są wykonywane 15.03.2017 Klient gry 07.03.2017   Czego potrzebujemy?   Klasy: IRender IGameFramework IActorSystem IGameRules IActor IEntity         Kod:   #define Irender_Adrs 0x198E990 #define IGameFramework_Adrs 0x1B33E68     Kod:   klasa IRender {public: char pad_0x0000 [0x1D0]; // 0x0000 D3DXMATRIX CameraMatrix; // 0x01D0 char pad_0x0210 [0xE34]; // 0x0210 D3DXVECTOR3 Camera_Pos; // 0x1044}; klasa IGameFramework {public: char pad_0x0000 [0x4B0]; // 0x0000 DWORD GetIActorSystem; // IActorSystem * GetIActorSystem; // 0x04B0 char pad_0x04B4 [0x15C]; // 0x04B4 DWORD GetIGameRules; // IGameRules * GetIGameRules; // 0x0610}; klasa IActorSystem {public: char pad_0x0000 [0x2C]; // 0x0000 int ActorCount; // 0x002C}; klasa IGameRules {public: char pad_0x0000 [0x4]; // 0x0000}; klasa IActor {public: char pad_0x0000 [0x8]; // 0x0000 IEntity * GetEntity; // 0x0008 char pad_0x000C [0x7B4]; // 0x000C Vector3 Pos; // 0x07C0}; class IEntity {public: char pad_0x0000 [0x4]; // 0x0000};   Kod W2S:     Kod:   bool WorldToScreen (D3DXVECTOR3 origin, D3DXVECTOR3 i out) {D3DXMATRIX temp; Wskaźnik DWORD = Pamięć. ReadMem <DWORD> (Irender_Adrs); IRender GetRender = Pamięć. ReadMem <IRender> (Wskaźnik); D3DXMatrixTranspose (& temp, & GetRender. CameraMatrix); D3DXVECTOR3 translationVector = D3DXVECTOR3 (temp. _41, temp. _42, temp. _43); D3DXVECTOR3 up = D3DXVECTOR3 (temp. _21, temp. _22, temp. _23); D3DXVECTOR3 right = D3DXVECTOR3 (temp. _11, temp. _12, temp. _13); float w = D3DXVec3Dot (& tłumaczenieVector & origin) + temp. _44; if (w <1,29f) {out. x = 0; na zewnątrz. y = 0; return false; } Float y = D3DXVec3Dot (& up, & origin) + temp. _24; float x = D3DXVec3Dot (& right, & origin) + temp. _14; na zewnątrz. x = (WP. W / 2) * (1 + (x / w)); //WP.W-Screening out out. y = (WP. H / 2) * (1 - (y / w)); //WP.H - Wysokość ekranu zwraca true; };   Kod Pseudocode CreateIActorIterator:     Kod:   int __thiscall sub_12ECE80 (int this, int a2) {int v2; // edi @ 1 int v3; // ecx @ 1 int result; // eax @ 2 int v5; // esi @ 2 // this - IActorSystem // a2 - Actor v2 = this; v3 = * (_DWORD *) (to + 80); if (* (_DWORD *) (v2 + 76) == v3) {wynik = pod_AAD8F0 (16, 1); v5 = wynik; if (! result) {v5 = 0; goto LABEL_8; } * (_DWORD *) result = & off_17B9304; * (_DWORD *) (wynik + 8) = 0; * (_DWORD *) (wynik + 4) = v2; * (_DWORD *) (wynik + 8) = * (_DWORD *) (v2 + 36); } else {v5 = * (_DWORD *) (v3 - 4); wynik = v3 - 4; * (_DWORD *) (v2 + 80) = v3 - 4; if (! v5) goto LABEL_8; * (_DWORD *) v5 = & off_17B9304; * (_DWORD *) (v5 + 8) = 0; * (_DWORD *) (v5 + 4) = v2; * (_DWORD *) (v5 + 8) = * (_DWORD *) (v2 + 36); } * (_DWORD *) (v5 + 12) = 0; result = (* (int (__thiscall **) (int)) (* (_DWORD *) v5 + 8)) (v5); LABEL_8: if (* (_DWORD *) a2) result = (* (int (**) (void)) (** (_DWORD **) a2 + 16)) (); // ActorId * (_DWORD *) a2 = v5; wynik zwrotu; }   Kod Pseudokod kodu GetTeam:     Kod:   int __thiscall sub_FC1110 (int to, unsigned int a2) {int v2; // eax @ 1 int v3; // esi @ 1 int v4; // ecx @ 1 bool v5; // zf @ 6 int result; // eax @ 11 // this - IGameRules // a2 - ActorId v2 = * (_DWORD *) (to + 180); v3 = to + 176; v4 = to + 176; if (! v2) {LABEL_9: v5 = v4 == v3; goto LABEL_10; } do {if (* (_DWORD *) (v2 + 16) <a2) {v2 = * (_DWORD *) (v2 + 12); } else {v4 = v2; v2 = * (_DWORD *) (v2 + 8); }} while (v2); v5 = v4 == v3; if (v4! = v3) {if (a2 <* (_DWORD *) (v4 + 16)) v4 = v3; goto LABEL_9; } LABEL_10: if (v5) result = 0; else result = * (_DWORD *) (v4 + 20); wynik zwrotu; }   W rezultacie zrobiłem to w ten sposób     Kod:   Ekran D3DXVECTOR3; IGameFramework GetGameFramework = Pamięć. ReadMem <
Reply
#2
Ale istnieje szczegółowy przewodnik, jak to wszystko zrobić, chcę się dowiedzieć, kto może pomóc
Reply
#3
W jaki sposób dokonałeś definicji wroga poprzez ReadProcessMemory? Kod: IActor GetActor = Pamięć. ReadMem (GetActorSystem, GetActorIterator (i)); // Super Secret Zaprojektowany przeze mnie klasę Napisz proszę
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)