|
You last visited: Today at 05:35
Advertisement
Wo ist der fehler? Solitär hack
Discussion on Wo ist der fehler? Solitär hack within the AutoIt forum part of the Coders Den category.
03/03/2013, 15:07
|
#1
|
elite*gold: 0
Join Date: Aug 2010
Posts: 11
Received Thanks: 1
|
Wo ist der fehler? Solitär hack
hallo liebes team.
ich suche jetzt schon wieder so lange nach dem fehler und finde ihn einfach nicht ._. der wert will sich im spiel nicht verändern obwohl der pointer stimmt.
Code:
#RequireAdmin
;#include <NomadMemory.au3>
#include <MemoryPointer.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
;~ SetPrivilege("SeDebugPrivilege", 1)
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Solitär Hack", 290, 100, 0, 0) ;121
$Input1 = GUICtrlCreateInput("", 8, 8, 121, 21)
$Button1 = GUICtrlCreateButton("Hack Points", 136, 6, 80, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Freeze Points Ingame", 136, 32, 140, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
$Offset1=0x10
$Offset2=0x58
$Offset3=0x68
$Offset4=0x244
$MO=_MemoryOpen(ProcessExists("Solitaire.exe"))
$Baseadress=_MemoryGetBaseAddress($MO)
$1=_MemoryRead($Baseadress+0x000bb0e8, $MO)
While 1
$msg = GUIGetMsg()
Select
Case $msg = -3
Exit
Case $Button1
$write = _MemoryWrite($1, $MO, GUICtrlRead($Input1), 'dword')
Case $Button2
$Read = _MemoryRead($1, $MO, 'dword')
AdlibRegister($write = _MemoryWrite($1, $MO, $Read, 'dword'), 100)
EndSelect
WEnd
MFG Trible22
|
|
|
03/03/2013, 15:16
|
#2
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,142
|
Du definierst Offsets, aber verwendest sie überhaupt nicht.
Poste am besten mal nen Screenshot des Pointers in CE.
|
|
|
03/03/2013, 15:37
|
#3
|
elite*gold: 0
Join Date: Aug 2010
Posts: 11
Received Thanks: 1
|
Quote:
Originally Posted by -STORM-
Du definierst Offsets, aber verwendest sie überhaupt nicht.
Poste am besten mal nen Screenshot des Pointers in CE.
|
hmm sieht der code besser aus?
Code:
#RequireAdmin
;#include <NomadMemory.au3>
#include <MemoryPointer.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
;~ SetPrivilege("SeDebugPrivilege", 1)
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Solitär Hack", 290, 100, 0, 0) ;121
$Input1 = GUICtrlCreateInput("", 8, 8, 121, 21)
$Button1 = GUICtrlCreateButton("Hack Points", 136, 6, 80, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Freeze Points Ingame", 136, 32, 140, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
$Offset1=0x10
$Offset2=0x58
$Offset3=0x68
$Offset4=0x244
$MO=_MemoryOpen(ProcessExists("Solitaire.exe"))
$1=_MemoryRead(0x000bb0e8, $MO)
While 1
$msg = GUIGetMsg()
Select
Case $msg = -3
Exit
Case $Button1
$write = _MemoryWrite($1, $MO, GUICtrlRead($Input1), 'dword')
Case $Button2
$Read = _MemoryRead($1+$Offset1+$Offset2+$Offset3+$Offset4, $MO, 'dword')
AdlibRegister($write = _MemoryWrite($1, $MO, $Read, 'dword'), 100)
EndSelect
WEnd
Screenshot :
|
|
|
03/03/2013, 19:12
|
#4
|
elite*gold: 124
Join Date: Dec 2009
Posts: 2,114
Received Thanks: 3,142
|
Zum besseren Verständnis verzichte ich erstmal darauf, Funktionen wie MemoryPointerRead/-Write zu verwenden, obwohl das Beispiel dadurch natürlich unnötig lang ist.
Die Addresse im Kommentar stammt vom Screenshot. Bis auf die Baseaddresse verändern die sich wohl bei jedem Spielstart. Die Kommentare dienen also nur dazu, das Script besser mit dem Screenshot zu vergleichen.
Code:
Func _ReadPoints()
$PID = ProcessExists("solitaire.exe") ;// Prozess finden - nicht sinnvoll, falls Solitaire mehrfach geöffnet ist
$open = _MemoryOpen($PID) ;// Prozess Handle öffnen
$Process_Base = _MemoryModuleGetBaseAddress($PID, "solitaire.exe") ;// Adresse auf Screenshot nicht angezeigt
$Pointer_Base = $ProcessBase + 0xBB0E8 ;// Adresse auf Screenshot nicht angezeigt
$Pointer_Address1 = _MemoryRead($Pointer_Base, $open) ;// 0x54CEF0
$Pointer_Address2 = _MemoryRead($Pointer_Address1 + 0x10, $open) ;// 0x662A210
$Pointer_Address3 = _MemoryRead($Pointer_Address2 + 0x58, $open) ;// 0xFF5F0
$Pointer_Address4 = _MemoryRead($Pointer_Address3 + 0x68, $open) ;// 0x54A080
$Pointer_Address5 = $Pointer_Address4 + 0x244 ;// 0x54A2C4 (PointsAddress !)
$Points_Value = _MemoryRead($Pointer_Address5, $open)
_MemoryClose($open) ;// Process Handle wieder schließen
Return $Points_Value
EndFunc
Func _WritePoints($Points_newValue)
$PID = ProcessExists("solitaire.exe") ;// Prozess finden - nicht sinnvoll, falls Solitaire mehrfach geöffnet ist
$open = _MemoryOpen($PID) ;// Prozess Handle öffnen
$Process_Base = _MemoryModuleGetBaseAddress($PID, "solitaire.exe") ;// Adresse auf Screenshot nicht angezeigt
$Pointer_Base = $ProcessBase + 0xBB0E8 ;// Adresse auf Screenshot nicht angezeigt
$Pointer_Address1 = _MemoryRead($Pointer_Base, $open) ;// 0x54CEF0
$Pointer_Address2 = _MemoryRead($Pointer_Address1 + 0x10, $open) ;// 0x662A210
$Pointer_Address3 = _MemoryRead($Pointer_Address2 + 0x58, $open) ;// 0xFF5F0
$Pointer_Address4 = _MemoryRead($Pointer_Address3 + 0x68, $open) ;// 0x54A080
$Pointer_Address5 = $Pointer_Address4 + 0x244 ;// 0x54A2C4 (PointsAddress !)
_MemoryWrite($Pointer_Address5, $open, $Points_newValue)
_MemoryClose($open) ;// Process Handle wieder schließen
Return 1
EndFunc
Außerdem wird Adlibregister so wohl nicht funktionieren. Für Solitär ist ein Einfrieren des Wertes vermutlich aber sowieso nicht nötig.
Edit:
Mir ist noch aufgefallen, dass das GUI so wohl nicht funktioniert.
Verwende Switch statt Select (Select wird nur einmal durchlaufen trotz While-Schleife -> nach einem geklickten Button passiert nichts mehr, Switch wird immer wieder in der While-Schleife durchlaufen), schreib die zu überprüfende Variable hinter die Switch-Anweisung und schreib jeweils zur den zu überprüfenden Wert hinter die Cases. Sähe dann so aus:
Code:
$msg = GUIGetMsg()
Switch $msg
Case -3
Exit
Case $Button1
;// Anweisungen für Button1
Case $Button2
;// Anweisungen für Button2
EndSwitch
|
|
|
 |
Similar Threads
|
(Need Help) Solitär hack
03/03/2013 - AutoIt - 5 Replies
Hallo liebe epvp mitglieder.
ich habe ein Problem mit meinem Code, könntet ihr euch den mal anschauen und mir sagen was ich falsch gemacht habe.
ich habe heute angefange mit autoit also bitte nicht gleich los flamen. :)
#RequireAdmin
#include <NomadMemory.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
|
Solitär hacken
10/30/2012 - .NET Languages - 1 Replies
Aaaaalso.. ich weiß wie ich nen pointer mit cheatengine rausfinden kann. Also ich öffne Solitär mach ein paar punkte gib bei Cheat engine die punkte ein un auf first scan. Dann mache ich nochmal ein paar Punkte und klicke auf next scan. So die adresse wo jetzt kommt ist der pointer oder? Also wenn ich da die Value veränder wird es bei mir auch in Solitär geändert. Sooo... wenn ich jetzt aber den Basepointer rausfinden will(den brauch ich doch oder? weil wenn man solitär schließt und wieder...
|
Autoit(Solitär) pointer
04/10/2012 - AutoIt - 5 Replies
Hallo erstmal.
Ich habe mal eine Frage.
Ich habe ungefähr vor 2 Tagen mit Pointern angefangen
und habe ein problem mit Pointer.au3 Befehl:
_MemoryPointerRead ($iv_Address, $ah_Handle, $av_Offset, $sv_Type = 'dword')
So habe ich es bis jetzt aufgebaut:
#include <Pointer.au3>
$adresse = 0x006360F4
Global $Offset =
|
Solitär Cheat
06/06/2011 - General Coding - 6 Replies
Hallo,
Ich hab ne Frage, und zwar hab ich hir ein hammer tutorial für ein Solitär Cheat
gefunden. Ich hab jetzt folgendes problem, Teil 1. mit Cheatengine funktioniert
bei mir, Teil 2. mit C++ nicht. Ich habe C++ 2005 & 2010 Express die leider als freeware keine MFC-Anwendungen enthalten. Zumindest habe ich das tutorial befolgt und keine MFC-Anwendungen gefunden und Wikipedia bestätigt das.
Kann man den Solitär Cheat auch ohne eine MFC-Anwendung Schreiben?
Ich will mir nicht umbedingt...
|
Solitär Hack [Ger]
05/04/2010 - General Coding - 1 Replies
Hi,
ich versuche gerade das Tutorial "Gamehacking Howto I" mit .net durchzuarbeiten. Aber irgendwie bekomme ich das nicht hin. Ich muss jetzt nur noch irgndwie den wert der Adresse "solitaire.exe+97074" auslesen und da weiß ich nicht wie ich das machen soll.
|
All times are GMT +1. The time now is 05:35.
|
|