Assembler zu C++

Diskutiere Assembler zu C++ im Developer Network Forum im Bereich Hardware & Software Forum; Hi Will aus einem Spiel eine Variable Filtern, welche immer an anderer Stelle zu finden ist. Ich hab die Lösung in Assembler inkl einer kleinen...
  • Assembler zu C++ Beitrag #1
Niemand!

Niemand!

Bekanntes Mitglied
Dabei seit
18.03.2005
Beiträge
343
Reaktionspunkte
0
Ort
Schweiz
Hi
Will aus einem Spiel eine Variable Filtern, welche immer an anderer Stelle
zu finden ist. Ich hab die Lösung in Assembler inkl einer kleinen Beschreibung,
weiss damit aber nichts anzufangen, da ich kein Assembler kann. Es macht,
denke ich auch nicht Sinn, Assembler wegen sowas kleinem zu lernen oder?

005181D0 Lua_UnitHealth proc near

0051822A call GetObjectByGUID
0051826F mov edx, [esi+110h]
00518275 mov eax, [edx+40h] ; health

---

005182E0 Lua_UnitHealthMax proc near

00518339 call GetObjectByGUID
00518345 mov eax, [eax+110h]
0051834B mov ecx, [eax+58h] ; health max

jeder NPC/PC wird von der gleichen Basis Struktur abgeleitet, an der Stelle +0x110 befindet sich in dieser ein Zeiger zu einer weiteren Struktur mit den Werten für Health bei 0x40 und HealthMax bei 0x58. Da die Objekte beim einloggen jedes mal neu angelegt werden und somit sich an einer anderen Adressen befinden, speichert das Spiel einen GUID Wert von z.B. Target/Player/Merchant/Pet usw. an festen Stellen ab und wandelt ihn dann in den Zeiger zu dem Objekt mit der Hilfe von GetObjectByGUID um.

Ziel ist es, die zwei vars mit C++ auszulesen. Also das auslesen usw ist kein
Problem, sondern an die gültige Adresse zu kommen.
Vielen Dank schon mal!
 
  • Assembler zu C++ Beitrag #2
G

Gast53986

Guest
es währe vielleicht besser diese frage in einem gamehackingforum wie z.B. http://gghz.de zu stellen.
 
  • Assembler zu C++ Beitrag #3
Niemand!

Niemand!

Bekanntes Mitglied
Dabei seit
18.03.2005
Beiträge
343
Reaktionspunkte
0
Ort
Schweiz
Thx
Hab die Frage dort gestellt. Aber hoffe nicht auf allzuschnelle Antwort.
Scheint nicht sooo aktiv zu sein.
 
  • Assembler zu C++ Beitrag #4
G

Gast53986

Guest
die sind zwar nicht so aktiv wie powerforen, aber mit einer schnellen antwort kannst du rechnen
 
  • Assembler zu C++ Beitrag #5
Niemand!

Niemand!

Bekanntes Mitglied
Dabei seit
18.03.2005
Beiträge
343
Reaktionspunkte
0
Ort
Schweiz
Lol die haben das gleich geclosed wegen:
"Manipulation in Multiplayer spielen".
Ram auslesen hat überhaupt nichts mit manipulieren zu tun! :mek:
 
  • Assembler zu C++ Beitrag #6
Ultimate Construct

Ultimate Construct

Bekanntes Mitglied
Dabei seit
19.06.2006
Beiträge
4.137
Reaktionspunkte
0
  • Assembler zu C++ Beitrag #7
N

nic_power

Senior Moderator
Dabei seit
27.12.2000
Beiträge
7.838
Reaktionspunkte
2
Hallo,

Jeder der RAM auslesen will hat damit auch was vor ... willst du nur zahlen angucken oder was ? :lach:
Es ist die Eigenschaft eines jeden Programms das Du auf Deinem Recher laufen hast, "RAM auszulesen". Und nicht nur das es schreibt sogar in der Regel ins RAM!

Niemand! schrieb:
Ziel ist es, die zwei vars mit C++ auszulesen. Also das auslesen usw ist kein
Problem, sondern an die gültige Adresse zu kommen.
Vielen Dank schon mal!
Das Hauptproblem dürfte sein, die aktuelle Adresse auf das Objekt mit den Daten zu bekommen, da Du diese zur Laufzeit des Programms ermitteln musst.

Code:
0051822A call GetObjectByGUID
Ruft die Routine auf, die Dir den Pointer auf die Struktur mit den gewünschten Daten liefert.

Code:
0051826F mov edx, [esi+110h]
Am Offset 110 (hex) steht der Pointer auf eine weitere Struktur.
[/code]

Code:
00518275 mov eax, [edx+40h] ; health
Liefert aus dieser neuen Struktur von Offset 40 (hex) den Wert (den Du nun manipulieren und zurückschreiben kannst).

Was aus dem Code meiner Meinung nicht hervorgeht ist, wie Du an die Basisstruktur kommst (sprich: mit was mus "GetObjectByGUID" aufgerufen werden).

Nic
 
  • Assembler zu C++ Beitrag #8
G

Gast53986

Guest
wusste nicht von welchen spiel du redest, war mir sonst klar das das nur in die hose geht. sind halt nur singleplayercheater. hättest die forenregeln (der gghz) lesen sollen, selber schuld.
 
  • Assembler zu C++ Beitrag #9
Niemand!

Niemand!

Bekanntes Mitglied
Dabei seit
18.03.2005
Beiträge
343
Reaktionspunkte
0
Ort
Schweiz
Also, ich habe nie behauptet, ich würde was am RAM manipulieren und
ich habe das auch tatsächlich nicht vor!!
Ich brauch Informationen vom
Spiel, damit ich weiss, welche Tasten ich simulieren soll.
Es wird weder am Code, noch im Ram, noch an einer Datei oder gar an Pakets
100% NICHTS manipuliert!
N I C H T S !
Deshalb ist das *close* auch nicht gerechtfertigt.
Danke, dass das jetzt alle begriffen haben :)
Ich habe das Spiel bewusst nicht erwähnt, weil es mir um den Grundsatz geht.
Es geht mir nicht genau um dieses Spiel, sondern um das Problem grundsätzlich.
Ich werde demnach weiter suchen und lernen.
Thx für ihre Antworten.

Edit: Ihr werdet mich auch nie in einem Multiplayer Spiel Cheaten sehen.
 
  • Assembler zu C++ Beitrag #10
Ultimate Construct

Ultimate Construct

Bekanntes Mitglied
Dabei seit
19.06.2006
Beiträge
4.137
Reaktionspunkte
0
Also, ich habe nie behauptet, ich würde was am RAM manipulieren und
ich habe das auch tatsächlich nicht vor!!
Ich brauch Informationen vom
Spiel, damit ich weiss, welche Tasten ich simulieren soll.
Es wird weder am Code, noch im Ram, noch an einer Datei oder gar an Pakets
100% NICHTS manipuliert!
N I C H T S !
Deshalb ist das *close* auch nicht gerechtfertigt.
Danke, dass das jetzt alle begriffen haben :)
Ich habe das Spiel bewusst nicht erwähnt, weil es mir um den Grundsatz geht.
Es geht mir nicht genau um dieses Spiel, sondern um das Problem grundsätzlich.
Ich werde demnach weiter suchen und lernen.
Thx für ihre Antworten.

Edit: Ihr werdet mich auch nie in einem Multiplayer Spiel Cheaten sehen.

Und wer beweist mir das ? Außerdem kann man WoW nur online spielen , und du willst dein zeug da ja mal testen , so wie es jeder mensch auf der welt tut . ( Oder testet ihr eure eigenen gemachten sachen nie ?)
 
  • Assembler zu C++ Beitrag #11
G

Gast53986

Guest
es geht nicht um das manipulieren, genau das machen wir ja auch (IM SINGLEPLAYER) nur ein bot ist auch ein "unnormaler vorteil" den man auch als cheaten bezeichnen muss, da es ja auch nicht im spiel vorgesehen ist. nur weil wow verdammt langweilig ist heißt das nicht das man sich die arbeit von einem bot abnehmen lassen sollte, auch wenn man ihn selber programmiert.
 
  • Assembler zu C++ Beitrag #12
Niemand!

Niemand!

Bekanntes Mitglied
Dabei seit
18.03.2005
Beiträge
343
Reaktionspunkte
0
Ort
Schweiz
Und wer beweist mir das ? Außerdem kann man WoW nur online spielen , und du willst dein zeug da ja mal testen , so wie es jeder mensch auf der welt tut . ( Oder testet ihr eure eigenen gemachten sachen nie ?)

Man kann WoW auf dem eigenen Privat Server spielen.
Beweisen? Ich übernehme hier die Verantwortung.
Wenn jemand in einem Waffengeschäft eine Knarre kauft und damit jemand
tötet, wird ja auch nicht der Waffenhändler festgenommen und bestraft :ja:
 
  • Assembler zu C++ Beitrag #13
B

^bart

Bekanntes Mitglied
Dabei seit
07.11.2006
Beiträge
784
Reaktionspunkte
0
Man kann WoW auf dem eigenen Privat Server spielen.
Beweisen? Ich übernehme hier die Verantwortung.
Wenn jemand in einem Waffengeschäft eine Knarre kauft und damit jemand
tötet, wird ja auch nicht der Waffenhändler festgenommen und bestraft :ja:

Aber was willst du auf einem Server, wo du ganz alleine spielst?

Außerdem ist ein Privatserver bei WoW nach meinem Wissen auch illegal, da es kein von Blizzard ( oder wem auch immer :confused: ) bereitgestellter Server ist.
 
Thema:

Assembler zu C++

ANGEBOTE & SPONSOREN

https://www.mofapower.de/

Statistik des Forums

Themen
213.180
Beiträge
1.579.174
Mitglieder
55.879
Neuestes Mitglied
stonetreck
Oben