Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem z hakowaniem Left 4 Dead 2: crash na zmianie mapy
#1
nie jestem pewien prefiksu ... może to powinno być "Pomoc" lub "Pytanie", idk: D   gra zawiesza się na zmianie mapy, kiedy czytam EntityList. Czy ktoś może wyjaśnić, co jest nie tak? Może ktoś też ma ten problem. Piszę bez SDK, ponieważ chcę mieć doświadczenie w pisaniu hacków bez uproszczenia. Mam swój własny hack w CS: GO, ale ta EntityList nie jak w CS: GO, więc mam problemy ... Teraz mam wskaźnik entityList i kilka przesunięć:     Kod:   dwEntitySize = 0x08; dwTeam = 0xE4; dwHealth = 0xEC; dwOrigin = 0x124; dwAngles = 0xC4; dwFlags = 0xF0;   gra zawiesza się zawsze na zmianie mapy, ale w grze działa idealnie   proces gry właśnie kończy się ładowanie mapy. żadnych problemów / błędów itp ... jestem całkowicie zdezorientowany shitty log (ostatnia iteracja):     Kod:   [02: 17.531] LOCALBASE: 49634020 [02: 17.532] entMax: 128 team: 2 vLocalOrigin: 2275.93 5170.15 448,03 [0,00 114,96 0,00] // entMax z * wskaźnika listy encji addr * + 4 (1 bajt, domyślam się, że lista encji rozmiar: entMax * dwEntitySize) [02: 17.532] [2] 492A3900 [02: 17.532] [3] 492A4C10 [02: 17.532] [4] 492C6860 [02: 17.532] [5] 492C7B70 [02: 17.532] [6] 492C8E80 [02: 17,533] [7] 492CA190 [02: 17,533] [8] 492CB4A0 [02: 17,533] [9] 492CC7B0 [02: 17,533] [10] 492CDAC0 [02: 17,533] [11] 4F9AE820 [02: 17,533 ] [12] 4F9AFB30 [02: 17,533] [13] 4F9B0E40 [02: 17,533] [14] 4F9B2150 [02: 17,533] [15] 4F9B3460 [02: 17,533] [16] 4F9B4770 [02: 17,533] [17] 4F9B5A80 [02: 17,533] [18] 4F9B6D90 [02: 17,533] [19] 4F9B80A0 [02: 17,533] [20] 4F9B93B0 [02: 17,534] [21] 4F9B A6C0 [02: 17,534] [22] 4F9BB9D0 [02: 17,534] [23] 4F9BCCE0 [02: 17,534] [24] 4F9BDFF0 [02: 17,534] [25] 4F9BF300 [02: 17,534] [27] 4F9C0610 [02: 17.534 ] [28] 4F9C1920 [02: 17,534] [29] 4F9C2C30 [02: 17,534] [30] 4F9C3F40 [02: 17,534] [31] 4F9C5250 [02: 17,534] [32] 4F9C6560 [02: 17,534] [36] 4B07EA50 [02: 17,534] [37] 4B07EA50 [02: 17,535] [38] 4B07EA50 [02: 17,535] [50] 4B07EA50 [02: 17,535] [59] 52A5EC00 [02: 17,535] [60] 4C2A1C70 [02: 17,535] [60] vyrigin: 0,00 0,00 0,00 // ten zespół średniej oceny struktury = 0 & health> 1 (1 health == death) [02: 17,535] [61] 4BD167A0 [02: 17,535] [62] 5182B2F0 i drugorzędny log, ostatnie 2 linie: [02: 01.41] entityBase: 4D7F0010 [02: 01.41] otrzymają zdrowie 4D7F0010. .. // ta wiadomość przed uzyskaniem zdrowia     Kod:   Silnik DWORD :: GetEntityBase (DWORD entityIndex) {DWORD m_EntityList = game -> Read (dwEntityList); // DWORD m_EntityList = * (DWORD *) (dwEntityList); if (m_EntityList! = NULL) {BYTE entityBase [5]; memcpy (entityBase, (LPCVOID) (m_EntityList + dwEntitySize * entityIndex), 5); // jakiś filtr ... ponieważ czasami pola 'zarezerwowane' otrzymały tę wartość zamiast 0x0 lub coś innego: D jeśli (* (DWORD *) (& entityBase)! = 0x01) {// 5 bajt oznacza poprawną strukturę, jeśli to == 0x01 jeśli (entityBase [4] == 0x01) {return * (DWORD *) (& entityBase); }}} Return NULL; }   więc gra spada, gdy odczytuję informacje (zdrowie / zespół itp.) ze struktury podczas ładowania nowego poziomu, chociaż adres struktury wydaje się być właściwy.-   może są tam ludzie, którzy wcześniej pracowali z tą grą. ps przepraszam za mój zły angielski Smile
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)