Home of Gamehacking - Archiv
TrainMe 0.2 - Druckversion

+- Home of Gamehacking - Archiv (http://archiv-homeofgamehacking.de)
+-- Forum: Sonstiges (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=5)
+--- Forum: Sonstiges (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=42)
+--- Thema: TrainMe 0.2 (/showthread.php?tid=625)

Seiten: 1 2


TrainMe 0.2 - maluc - 22.11.2011

Hier wurde der Schwierigkeitsgrad etwas angehoben.
Auf VM, Self Debug, Anti Debug u.s.w... habe ich verzichtet.

Ziel ist es, das Player immer 100% hat.
> TrainMe2.zip <

MfG


RE: TrainMe 0.2 - Acubra - 23.11.2011

Hey,
ich habs mir kurz angeguckt, bin aber nicht weit gekommen. Sieht auf jeden Fall ziemlich schwer aus.


RE: TrainMe 0.2 - maluc - 24.11.2011

Lustig. Happy
Diesmal fand iBree es zu einfach.

Was ich dir schreiben kann...
...vergiss CE/MHS u.s.w..
Nimm den Olly.
Am besten gleich den 2er.
Der kann auch SSE richtig darstellen. Wink

MfG





RE: TrainMe 0.2 - iNvIcTUs oRCuS - 24.11.2011

Soweit ich weiß kann Cheat Engine sehr wohl SSE darstellen. MHS hat damit aber auch in der aktuellen Version 6.1 Probleme...

Mit Cheat Engine kriegste auch sowas hin...
Aber ich habe dennoch Olly verwendet...
Hier meine Lösung...

...Original Code...[code=ASM]0040166C - A1 04 30 40 00 - mov eax,[00403004][/code]

...Patched Code...[code=ASM]0040166C - E9 8F ED FF FF - jmp 00400400[/code]

...Codecave...[code=ASM]00400400 - C7 46 18 00 00 C8 42 - mov [esi+18],42C80000
00400407 - F3 0F 10 5E 18 - movss xmm3,[esi+18]
0040040C - A1 04 30 40 00 - mov eax,[00403004]
00400411 - E9 5B 12 00 00 - jmp 00401671
[/code]

grEEtZ sILeNt heLLsCrEAm

Übrigens... Witzige Messagebox Wink So ein Haufen Hühner eliminiert heute :rolleyes:
Noch etwas - Die oben gezeigte Lösung ist nur ein Teil... Schaut einfach mal was passiert wenn alle Enemy Balken auf 0 sind Wink
Ihr könnt auch mal euren Kopp anstrengen... Der Rest ist aber eigentlich ganz simpel... Da gibts jede Menge Lösungswege...


RE: TrainMe 0.2 - maluc - 24.11.2011

(24.11.2011, 02:17)sILeNt heLLsCrEAm schrieb: Soweit ich weiß kann Cheat Engine sehr wohl SSE darstellen. MHS hat damit aber auch in der aktuellen Version 6.1 Probleme...
Selbstverständlich hast du Recht.
Mit "vergiss CE/MHS" meinte ich das Werte finden.
Ich behaupte jetzt mal einfach, das man die Player Werte damit nie finden wird.
Olly findet diese auch nicht. Aber!
Man kann sich gemütlich die Dec Funktion anschauen.

Ziel war es, es so zu programmieren wie es in heutigen Spielen vorkommen kann.

MfG

EDIT
@sILeNt heLLsCrEAm
Verdammt, du bist schon sehr nah an einer guten Lösung.
Aber... Du sorgst z.Z. nur dafür das die Bar voll bleibt.
Gestorben wird immer noch. Wink

EDIT 2
Ach ups...
Das ist nur ein Teil der Lösung. Smiling




RE: TrainMe 0.2 - iNvIcTUs oRCuS - 24.11.2011

Ja, wie ich schon sagte ist das nur ein Teil einer möglichen Lösung. Die Codeinjektion hab ich ja in der Nähe des schreibenden Befehls gemacht. Die Routine wird aber nicht mehr aufgerufen sobald die Balken alle auf Null sind.
Mit Cheat Engine findet man die Werte schon, das Problem ist aber diese eindeutig und bzw. oder zu jeder Zeit eindeutig zuzuordnen. Die Balken haben einen vollen Wert von 100, Float wohlgemerkt.
Aber wie gesagt kann man diese nicht immer eindeutig zuordnen weil sich die Adressen untereinander ändern wenn z.b. das Programm nicht mehr den Focus hat. Bin mir jetz nicht ganz sicher aber ich glaube das passierte auch schon bei jedem Klick auf den Decrement Button.

Deswegen sagte ich ja auch... Witzige Message Box - God kills a chicken sag ich da nur Wink


RE: TrainMe 0.2 - maluc - 24.11.2011

Gut erkannt... :@
...immer wenn es den Focus verliert geht Player wandern.

Da müsste eigentlich "Kitten" stehen. :blush:


RE: TrainMe 0.2 - iNvIcTUs oRCuS - 24.11.2011

(24.11.2011, 05:40)maluc schrieb: Da müsste eigentlich "Kitten" stehen. :blush:
Stimmt... Weiß net wie ich auf Chicken kam :blush:


Hier noch ne andere Lösung...
...Original Bytes...[code=ASM]0040160F - F3 0F 11 5E 2C - MOVSS DWORD PTR DS:[ESI+2C],XMM3[/code]
...Patched Bytes...[code=ASM]0040160F - E9 EC ED FF FF - JMP 00400400[/code]
...Codecave...[code=ASM]00400400 - 83 7E 10 01 - CMP DWORD PTR DS:[ESI+10],1
00400404 - 75 06 - JNE SHORT 0040040C
00400406 - 0F 58 DA - ADDPS XMM3,XMM2
00400409 - 0F 57 D2 - XORPS XMM2,XMM2
0040040C - F3 0F 11 5E 2C - MOVSS DWORD PTR DS:[ESI+2C],XMM3
00400411 - E9 FE 11 00 00 - JMP 00401614[/code]

Sagen wir mal so... Es ist ein Lösungsansatz... Cool
Diese Lösung ist noch nicht zu 100% funktionabel weil die Message Box manchmal noch erscheinen kann. Da bin ich mir jetzt aber nicht sicher ob das auch so sein muss...?! Dem bin ich aber nicht weiter nachgegangen... Aber wie Acubra muss ich ich zumindest auch sagen das diese TrainMe im Gegensatz zur ersten schon schwieriger ist. Alleine schon der Einsatz eines echten Debuggers, wie z.b. Olly, dürfte viele abschrecken.

Ich würde mich freuen wenn Du mal ein, wenn auch nur kurz und knappes, Tutorial zu einer TrainMe machen könntest die vielleicht eine deiner angedeuteten Techniken (VM, Self Debug, Anti Debug...) beinhaltet. Mit VM's habe ich ja nun noch nie was am Hut gehabt...


RE: TrainMe 0.2 - maluc - 25.11.2011

(24.11.2011, 14:58)sILeNt heLLsCrEAm schrieb: Ich würde mich freuen wenn Du mal ein, wenn auch nur kurz und knappes, Tutorial zu einer TrainMe machen könntest die vielleicht eine deiner angedeuteten Techniken (VM, Self Debug, Anti Debug...) beinhaltet. Mit VM's habe ich ja nun noch nie was am Hut gehabt...
Hab eigentlich keine weiteren TrainMe's geplant.
Bei Gelegenheit könnt ich dir ein Beispiel für eine VM schreiben.
Wäre aber wieder nur in Assembler.

Die Meldung kommt nur wenn erkannt wurde das du betrügst.

MfG

PS: 100.0 ist aber nicht Health. Wink




RE: TrainMe 0.2 - iNvIcTUs oRCuS - 25.11.2011

(25.11.2011, 10:19)maluc schrieb: PS: 100.0 ist aber nicht Health. Wink

Nö, ich weiß... 500 Float ist der richtige Wert.
Aber der Balken geht ja nur von 0 - 100...
Hauptsache der Balken ist voll... Cool