Trainer proggen
Übersicht

![]() |
Der EisvogelBetreff: Trainer proggen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo
Ich hatte langeweile, und dachte mir, ich progge jetzt mal nen Trainer. Toll. Jetzt ist der auch so gut wie fertig. Er läuft auf meinem Rechner. "Super" denke ich. Aber als ich dann auf nem anderen Rechner gestartet habe, ging nix mehr, weil alle mühesam rausgesuchten Variablen an einen anderen Stell im Spiecher liegen. Jetzt die Frage: Gibt es eine Funktion, die mir sagt wo der Speicherbereich von dem Prog, das ich "trainieren" will liegt? Ich habe es Schon mit "VirtualQueryEx" und "GetProcessWorkingSize" probiert, aber die geben an jedem Recher den gleichen Wert aus, und das brauch ich ja nicht. Es muss ja eine Funktion geben, die mir das macht. Denn zu dem Prog, das ich "trainieren" will gibt es ja schon Trainer, aber leider taugen die nix, weil sie nur 2 Funktionen haben. Ich hoffe ihr versteht was ich brauche, und wisst noch ne Möglichkeit. MfG Der Eisvogel |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du könntest das über diese Funktionen hier machen:
http://msdn.microsoft.com/en-u...80553.aspx http://msdn.microsoft.com/en-u...81674.aspx |
||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die hab ich ja schon.
Die verlange ja eine Adresse, aber die Adresse ist bei jedem PC anders. |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich würde mir mal das Programm anschauen und auch in dem Forum von denen etwas Lesen, die haben es eigentlich ziemlich gut erklärt.
Klick Das Programm nennt sich Cheat Engine und macht genau das was du machst, den Speicher ausslesen und darin nach Variablen suchen. mfg ichbin007 [Edit] Die Funktionen von ChristianK sind doch genau das was du brauchst |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit dem Programm habe ich die ganze Variablen ja gesucht, aber glaubst du ich hab Lust an jedem Rechner die Variablen neu zu suchen? Die Adressen ändern sich ja trotzdem. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die addresse von ReadProcMem sind immer relativ zum Programm, und somit auf jedem Rechner gleich.
Dein Freund wird wohl eine andere Version des Programms haben, oder das Programm ist schlau genug, sich nicht so einfach austricksen zu lassen. |
||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ne der hat die gleich Version. Die Trainer die nur 2 Funktionen haben, die schaffen es auf meinem und anderen Rechnern. Und irgendwie sind die Adressen nicht relativ, sonst wären sie ja nicht immer an anderer Stelle.
Ich will jetzt nicht arogant werden. |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
http://msdn.microsoft.com/en-us/library/ms680553(VS.85).aspx
"Reads data from an area of memory in a specified process." "A pointer to the base address in the specified process from which to read." Die Daten sind relativ zum Prozess. Wenn sie wo anders auftauchen, liegts daran, dass die Entwickler so schlau waren, die Daten nicht immer am selben ort zu speichern oder die Daten abhängig von irgendwelchen konfigurationen zu machen. |
||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Gut dann ist es halt relativ, aber wie schaffen die anderen Trainer es dann trotzdem die Variablen zu finden? | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sie werden das muster gefunden haben, nachdem der Prozess seine Daten anordnet, und sind in der Lage, dieses auszulesen. | ||
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zitat: Die Daten sind relativ zum Prozess. Wenn sie wo anders auftauchen, liegts daran, dass die Entwickler so schlau waren, die Daten nicht immer am selben ort zu speichern oder die Daten abhängig von irgendwelchen konfigurationen zu machen.
Ist bei den meisten Spielen so, du must dir dann wohl eine Funktion basteln die den Wert im Speicher automatisch finden kann. Anders wirst du wohl nicht ans Ziel kommen. Geht es bei dir jedes mal, auch wenn du das Spiel neu Startest ? mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
- Zuletzt bearbeitet von FWeinb am Di, Dez 23, 2008 14:46, insgesamt 3-mal bearbeitet
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Und wie kommt man an solche Sachen?
PS: Die Variablen ändern sich übrigens nicht nach jedem neustart des Progs, sondern nur wenn ich was instaliere oder so. [EDIT] @ich: ja es geht bei mir immer, es sei denn ich instaliere etwas. |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du must wie BtbN schon geschrieben hat das Muster in welchem die Entwickler die sachen Speichern finden.
mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die einfachste methode ist, dass das Spiel selbst pointer benutzt, um an die Daten zu kommen. So muss man die addresse finden, an der der pointer gespeichert ist. Diese addresse ist meist fix.
Komplizierter wirds, wenn sie absichtlich verschlüsseln/verstecken, damit eben es Trainer nicht so einfach haben. Und rate mal, wieso die funktion ReadPROCESSMemory heisst? Na, genau. Weils der speicher-bereich des Prozesses ist. |
||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja, aber warum änderen sich die Variablen nur wenn ich etwas instaliere und nicht wenn ich einfach das Spiel neu starte, oder den Rechner?
EDIT: Wie meinst du das mit den Pointern? |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
- Zuletzt bearbeitet von Der Eisvogel am Di, Dez 23, 2008 14:50, insgesamt einmal bearbeitet
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Woher soll ich wissen, wie das Spiel arbeitet? Etwas installieren modifiziert aber noch weniger den globalen Speicher als ein anderes Laufendes Programm. | ||
FWeinbehemals "ich" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
In solchen fällen hilft Wikipedia:
Zeiger_(Informatik) Zusammengefasst: Zitat: Mit Zeiger oder Pointer wird in der Informatik eine spezielle Variable bezeichnet, die auf eine andere Variable oder Funktion verweist. Der referenzierte Speicherbereich enthält entweder Daten (Objekt, Variable) oder Programmcode.
mfg ich |
||
"Wenn die Menschen nur über das sprächen, was sie begreifen, dann würde es sehr still auf der Welt sein." Albert Einstein (1879-1955)
"If you live each day as if it was your last, someday you'll most certainly be right." Steve Jobs |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Leider gibt es keine Pointer bei dem Prog. Mist! Dann versuch ich mal rauszubekommen wie die Variablen verteilt sind. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Woher willst du wissen, dass es da keine Pointer gibt? Hast du den Source? | ||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nö, aber ich habe keine gefunden. | ||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group