• Herzlich Willkommen!

    Nach der Schließung von inDiablo.de wurden die Inhalte und eure Accounts in dieses Forum konvertiert. Ihr könnt euch hier mit eurem alten Account weiterhin einloggen, müsst euch dafür allerdings über die "Passwort vergessen" Funktion ein neues Passwort setzen lassen.

    Solltet ihr keinen Zugriff mehr auf die mit eurem Account verknüpfte Emailadresse haben, so könnt ihr euch unter Angabe eures Accountnamens, eurer alten Emailadresse sowie eurer gewünschten neuen Emailadresse an einen Administrator wenden.

Skills per level up verändern

  • Ersteller Ersteller qwertz123
  • Erstellt am Erstellt am

qwertz123

Guest
Hi, hab eine zeit lang PlugY gespielt und fand es lustig, dass man sich da mehrere Skills pro Level Up einstellen konnte. Wollte nun selbst ein bisschen rummodden und wollte eben auch so was einbauen, aber nur wo? hab in keiner .kpq datei was gefunden wo man das ändern könnte.
Wisst ihr in welcher Datei das versteckt ist?
 
das ist code editing
also in keiner txt zu finden

wo das genau ist...
hm, keine ahnung in welcher dll
kommt auch auf die version an, in jeder is des ding an ner anderen stelle
 
Hab inzwischen auch schon festellen müssen, dass das nicht ganz so leicht ist.

Zum Thema Code editing der lvl-up sachen hab ich auf Phrozen Keep einen recht intressanten Thread gefunden (von dem ich rein garnichts verstanden hab :clown: )

Für Interresierte: http://phrozenkeep.planetdiablo.gam....php?t=12867&postdays=0&postorder=asc&start=0

Ich hab das jetzt so hingekriegt, dass ich ebenfalls auf Phrozen Keep eine bereits modifizierte D2Game.dll runtergeladen habe, bei der die Skills pro lvl-up bereits auf 2 festgelegt sind. Gibts leider nur für 1.10 :( aber naja, besser als garnichts ;)
 
Hm ok, Code Editing ist nicht ganz so leicht, zumal hier mehr geändert werden muss als ein paar Zahlen...

Die relevanten Posts für 1.11 sind auf Seite 3, nämlich der da :

Originally posted by Lurker
So my hex for 1.11 if anyone else needs it:
Change this:
Code:
6FCF7ADE   . 6A 00         PUSH 0
6FCF7AE0   . 53            PUSH EBX
6FCF7AE1   . 6A 05         PUSH 5
6FCF7AE3   . 56            PUSH ESI
6FCF7AE4   . E8 9F28F3FF   CALL <JMP.&D2Common.#10109>

Into this:
Code:
6FCF7ADE   . E9 1DFD0100    JMP D2Game.6FD17800
6FCF7AE3   > 56             PUSH ESI
6FCF7AE4   . E8 9F28F3FF    CALL <JMP.&D2Common.#10109>

Then you can insert your own code here:
Code:
6FD17800   > 6A 00          PUSH 0
6FD17802   . 6A [color=blue]xx[/color]          PUSH [color=blue]xx[/color]
6FD17804   . 6A 05          PUSH 5
6FD17806   .^E9 D802FEFF    JMP D2Game.6FCF7AE3

Just put the number of skillpoints you want to get at level up into xx (in hexadecimal of course).
Actually, i have left out the IMUL thing, because i don't know which registers are free to use (need one for the multiplication). I just simply pushed the number into the stack, it is practically the same as multiplicating 1 with it. ;) Correct me if i'm wrong!

Huge thanks to Myhrginoc!!!

... und der da:

Originally posted by Myhrginoc
If you gain more than one level at a time (killing Ancients, etc.) then you will still get only one level's skill points without the multiplication. Use the same logic as before:

Code:
6FD264CA       BA [color=darkblue]XX[/color]000000                MOV EDX,[color=darkblue]XX[/color]  <--- [i]your number here[/i]
6FD264CF       0FAFD7                     IMUL EDX,EDI
6FD264D2       6A 00                      PUSH 0
6FD264D4       52                         PUSH EDX

but use EBX instead of EDI as that is where the number of levels gained was put by the compiler this time around. (You can use EAX or ECX or EDX for your skpts/lvl constant, that all get trashed by d2common.10109.)

As for how I know to find this stuff, if you look at this code long enough you get to know certain patterns and how to search it. Not explicable as a step-by-step.

We strongly prefer people don't post consecutive messages, unless a lot of time (e.g. weeks) has elapsed. If nobody has answered your previous post, use the EDIT button and add your new content (or correct what changes).




So, kommen wir zu den Sachen, die du brauchst.

Dieses Tutorial hier verrät dir die Basics, ich habs auch nicht gelesen, um die meisten Änderungen nach Anleitung durchzuführen, musst du eigentlich nur wissen, dass du OllyDbg (Downloadlink stell ich unten rein) öffnen, dann auf View-> File und auf Rechtsklick --> Dissassemble gehen musst (bei File musst du natürlich die entsprechende .dll auswählen, hier ists D2Game.dll, zu finden im D2 Hauptverzeichnis)
Dann macht auf einmal auch das Codegewirr, was die da von sich geben, Sinn, denn dann sieht deine Datei genauso aus.

Jetzt sind da noch so komische Codes... "6FD264CA"
Um damit was anfangen zu können, öffnest du einfach den Windows Rechner (zu finden unter Zubehör), änderst seinen Anzeigemodus auf "wissenschaftlich" und wählst die Checkbox "Hex" .
So... jetzt nimmst du diesen Wert da oben minus den Grundwert dieser Dlls, zu finden im Tutorial, dass ich gepostet habe. Im Falle von D2Game.dll der Version 1.11b also 6FC20000.

Heraus kommt hier 1064CA. Jetzt machst du einen Rechtsklick und suchst nach dem Offset mit diesem Namen (Offsets sind diese Dinger, die du links in jeder Zeile siehst). Dort angekommen, solltest du den oben genannten Code finden.

Hm... ändern tust du die Sachen mit "assemble" und mit Rechtsklick, "save File" speicherst du die Sache ab. Ich würd mal sagen, viel Erfolg! xD

Vielleicht solltest du aber auch etwas Leichteres am Anfang machen zum Testen.
Etwas hieraus zum Beispiel : http://planetdiablo.eu/forum/showthread.php?s=&threadid=1038072&highlight=offset


Die Files gibbet hier:

http://phrozenkeep.18v.biz/dload.php?action=file&file_id=151
und hier
http://www.ollydbg.de/
 
Zurück
Oben