Home of Gamehacking - Archiv
CE Script bei Tastendruck ausführen - Druckversion

+- Home of Gamehacking - Archiv (http://archiv-homeofgamehacking.de)
+-- Forum: Gamehacking (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=3)
+--- Forum: Gamehacking (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=6)
+--- Thema: CE Script bei Tastendruck ausführen (/showthread.php?tid=1502)



CE Script bei Tastendruck ausführen - DarkLevi - 06.06.2013

Hallo Leute,

ich komme gerade an einem Punkt nicht weiter und hoffe auf eure Hilfe.
Es geht darum ein CheatEngine-AutoAssemble-Script zu schreiben dass wenn aktiviert, eine aktion ausführt wenn eine bestimme Taste gedrückt wird. Genauer:

Das Geld wird in [ecx+04] gespeichert.

Nun möchte ich dass wenn bsp: "Q" gedrückt wird, "add [ecx+04],3E8" ausgeführt wird.

Mein bisheriger Versuchsaufbau:

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048) //2kb should be enough
label(notpressed)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
exit:
pushad
pushfd

push '0x51'
call GetAsyncKeyState

shr ax,#15
cmp ax,1
jne notpressed

add [ecx+04],3E8

notpressed:
//cleanup
popfd
popad

originalcode:
dec ebp
pop edx
nop 
add [ebx],al

jmp exit

"FC3_d3d11.dll":
jmp newmem
returnhere:



 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"FC3_d3d11.dll":
dec ebp
pop edx
nop 
add [ebx],al
//Alt: db 4D 5A 90 00 03


Naja ihr könnt euch sicher schon denken das dass nicht funktioniert :blush:

Bitte gebt mir doch eine kurze Info wie sowas realisierbar ist.

ps: ich möchte mir das eeeeeewige pointergesuche ersparen deswegen das irgendwie als code verwirklichen

Danke
DarkLevi

EDIT: das Keypress-Framework habe ich von hier: http://cheatengine.org/keypresstut.php


RE: CE Script bei Tastendruck ausführen - Acubra - 07.06.2013

Hey,
kann es sein das der originalcode nur ausgeführt wird wenn du Geld ausgibst? Wenn ja, dann ist es klar das das Spiel nicht auf den Tastendruck reagiert. Du musst bei solchen Geschichten sichergehen, dass der Code, welcher prüft ob eine Taste gedrückt wurde, ständig ausgeführt wird. Wenn nicht, dann wird er nur ausgeführt wenn die jeweilige Aktion (in dem Fall Geld ausgeben) ausgeführt wird. Du kannt ja mal Q gedrückt lassen, während du etwas kaufst. Dann sollte sich dein Geld vermehren.


RE: CE Script bei Tastendruck ausführen - DarkLevi - 07.06.2013

Hi,

danke für deine Antwort. Diesen Gedanken hatte ich auch schon, weswegen ich "FC3_d3d11.dll" statt "FC3_d3d11.dll+XXXXXX" im Code versucht habe.

Das andere hatte einwandfrei funktioniert (Taste drücken beim Einkaufen).

Auf jeden Fall hast du mein Problem auf den Punkt gebracht. Wie kann ich denn den Code so einfügen dass dieser während der Laufzeit ständig ausgeführt wird?


RE: CE Script bei Tastendruck ausführen - iNvIcTUs oRCuS - 07.06.2013

Dürfte bei diesem Spiel mehr oder weniger schwierig werden...
Soweit ich mich noch drann erinnern kann wurden Geldrelevante Routinen nur aufgerufen wenn...
- man Geld bekommt, oder oder aufsammelt
- man Geld ausgiebt
- man ins Menü wechselt um sich anzuzeigen wieviel Geld einem momentan zur Verfügung steht

Also entweder Du findest bei diesem Spiel eine Routine die permanent durchlaufen wird, in dieser Du aber auch die Geldadresse ausfiltern kannst.
Oder Du realisierst das Ganze doch per Pointer. Da könnte man theorethisch auch eine X-Beliebige Subroutine nehmen die permanent aufgerufen wird, denn per Pointer sollte die Geldaddy einwandfrei zu identifizieren sein...

Oder Du realisierst das so das bei jedem Aufruf des Menüs ein bestimmter Betrag hinzuaddiert wird. So hab ich das auch in meinen Trainern realisiert.


RE: CE Script bei Tastendruck ausführen - DarkLevi - 08.06.2013

Vielen Dank für deine Antwort.

(07.06.2013, 17:44)sILeNt heLLsCrEAm schrieb: Oder Du realisierst das so das bei jedem Aufruf des Menüs ein bestimmter Betrag hinzuaddiert wird. So hab ich das auch in meinen Trainern realisiert.

Das ist ja mal eine geile Idee. Dass ich da nicht selber draufgekommen bin *facepalm*.

MfG und vielen lieben Dank
DarkLevi


RE: CE Script bei Tastendruck ausführen - bundy19871 - 16.03.2019

die einfachste methode ist sich ein pointer zu suchen von der gewünschten taste selbst!! also scan die taste einfach nicht gedrückt ist 0 und bei gedrückter taste ist der wert 80h.dann füge man den pointer in sein script ein. wenn taste gedrückt dann soll das passieren was man will fertig ganz easy.


beispiel:


newmem:
cmp [wunschtaste adressepointer],80
jne originalcode
wünschcode
jmp returnhere




das selbe gilt für die die das ganze mit dem controller realisieren wollen das ganze natürlich blos mit anderen werten.
diese methode nennt sich jokercommand und ich kenne die aus der playstation 2 hacking scene und bewert sich auch heute noch hier