• 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.

[1.10 Code Editing] -> Max Resis verändern, kann jemand meinen Code checken?

Surtur

Mitglied
Registriert
18 Mai 2004
Beiträge
369
Würde sich jemand dazu bereit erklären, ich würde nämlich gerne Chaos' Post ergänzen, der mir auch schon sehr geholfen hat. Oder lohnt sich das garnicht, da alle Modder, die neu anfangen (sprich: die Einzigen, die davon profitieren), sowieso 1.11b modden ?

Was solls, geschrieben ist er eh, also post ich ihn mal hier rein.
Die entscheidenden Threads im PK:

http://phrozenkeep.planetdiablo.gamespy.com/forum/viewtopic.php?t=50676
http://phrozenkeep.planetdiablo.gamespy.com/forum/viewtopic.php?t=19653&highlight=


Die Zusammenhänge:
D2Client.dll :
Originally posted by Myhrginoc
This is the client side code, which limits display values to the range -100 to +95. To eliminate these caps, just NOP the six instructions after the ADD EBP,4B. You need to keep the ADD because the value stored in maxres by ItemStatCost is not the displayed value---when stored maxres = 0 then you see 75%.

Code:
6FAD0C87   |>  83C5 4B                   |ADD EBP,4B                                       ;  Default case of switch 6FAD0C79
6FAD0C8A   |.  83FD 5F                   |CMP EBP,5F
6FAD0C8D   |.  7C 05                     |JL SHORT D2Client.6FAD0C94
6FAD0C8F   |.  BD 5F000000               |MOV EBP,5F
6FAD0C94   |>  83FE 9C                   |CMP ESI,-64
6FAD0C97   |.  7F 05                     |JG SHORT D2Client.6FAD0C9E
6FAD0C99   |.  BE 9CFFFFFF               |MOV ESI,-64
D2Game.dll
Originally posted by pmpch
Here are some Cap Locations for 1.10. Others and myself have been waiting for these, impatiently. Credits go to Jarulf. Tnx alot.

I've done some testing and they seem to work as expected. One thing remains. In the character window it will still show 95 as MAX RES even if it is lower. I guess this is a flag somewhere in d2client.dll.

Jarulf schrieb:
Code:
- MAX RESISTANCE CAP (which is 95 now) 

:6FCBFC23 83F85F cmp eax, 0000005F 
:6FCBFC26 7C05 jl 6FCBFC2D 
:6FCBFC28 B85F000000 mov eax, 0000005F

Originally posted by Jarulf


Also, the cap on 75% for poison length reduction (and probably magic as it should have no +max resistance) is located here:

:6FCBFC08 B84B000000 mov eax, 0000004B

For the others, this is it:

:6FCBFC20 83C04B add eax, 0000004B

eac is here the stats +max resistance, just fetched.



Die normalen maximalen Widerstände (75) verändern: (frei übersetzt von mir selbst xD)
Veränderungen in D2Game.dll (mit Ollydbg):

Offset 8FC20 (d.h. 6FCBFC20 - das Base-Offset der 1.10 D2game.dll: 6FC30000 ) : ADD EAX,4B

Ändere 4B (was die Dezimalzahl 75 ist) in einen Wert, der dir passt. In meinem Fall 41, was die Dezimalzahl 65 ist.

Für den Charscreen: (in D2client.dll):


Offset: 30C87 (das ist 6FAD0C87 - 6FAA0000 ), :
Add EDP, 4B
Wieder 4B in den gewünschten Wert ändern (ist bei mir natürlich wieder 41).

Wollt ihr jetzt die maximal erreichbaren Widerstände (also mit +Max Resi Items) ändern, müsst ihr noch Folgendes machen:


In diesem Teil der D2Game.dll


:6FCBFC23 83F85F cmp eax, 0000005F
:6FCBFC26 7C05 jl 6FCBFC2D
:6FCBFC28 B85F000000 mov eax, 0000005F

die 5F in einen gewünschten Wert ändern, in meinem Fall 50 = 80 als Dezimalzahl.


... und in D2Client.dll:


6FAD0C8A |. 83FD 5F |CMP EBP,5F
6FAD0C8D |. 7C 05 |JL SHORT D2Client.6FAD0C94
6FAD0C8F |. BD 5F000000 |MOV EBP,5F

Ebenfalls 5F ändern
 
du kannst gerne was ergänzen, überhaupt kein Problem
gib mir den text und ich kopiers rein
ob das noch jemand benutzt weiß ich allerdings nicht, geb ich keine garantie drauf :D


das ganze auf funktionalität testen müsste aber jemand anders...
 
Hm, ich hab extra die Zusammenhänge gepostet, dann sollten die Änderungen glaub ganz gut nachvollziehbar sein, vielleicht ist also eine Funktionalitätsprüfung garnicht nötig, ich bin mir nur immer so unsicher (außerdem hab ich sone Art Prüfung natürlich schon gemacht - die Charscreensachen sind natürlich leicht zu testen und es schien mir auch, als hätte ich nach der Änderung mehr Elementarschaden einstecken müssen - Ähnliches haben mir meine ersten Tester berichtet).

Und wenns keiner mehr nutzt ... vielleicht kann man dann die Sache trotzdem mit meiner Beschreibung in einem Thread drunter in Chaos Thread posten, damit nicht jeder Anfänger Stundenlang Threads mit toten Links und Tutoriale durchwühlen muss, um ein paar simple Änderungen in Ollydbg und Hexedit durchzuführen (man merkt vielleicht, so gings mir nämlich - und wenn ich eins nicht leiden kann, dann mehrere Seiten Threads im Keep durchzuarbeiten, die mir die Suchfunktion ausgespuckt hat, nur um herauszufinden, dass keiner seine Lösung am Ende gepostet hat...)
 
kk, ich schreibs rein


btw, vielleicht gibts ja doch noch welche denen es was bringt ;)
wenn ergänzungen da sind die es augenscheinlich wert sind gebracht zu werden tu dir keinen zwang an sie zu posten
is besser als nix tun, so wecken wir hier wenigstens ansatzweise den Anschein, dass hier noch was los sei :lol:
 
Ich will ja wirklich keine zusätzliche Arbeit machen, aber die Zusammenhänge sind eher für die "Prüfer", der Übersicht halber wäre es vielleicht besser, wenn nur die einzelnen Änderungen selbst (ab da:

Die normalen maximalen Widerstände (75) verändern: (frei übersetzt von mir selbst xD))
im Thread wären und der Rest höchstens als Link.

Vielleicht könnte man auch noch die erklärten Basics von OllyDbg verlinken, weil der Rest des Threads ja mit Hexedit gemacht ist.

Danke ;)

Achja, und wenn ich schon beim Extrawürste erfragen bin, wäre es vielleicht möglich, meinen Namen zu ändern ? Mein India Account ist ziemlich alt und es ist vielleicht bissie verwirrend, wenn ich sonst überall - vor allem als RoS-Modder - Surtur bin...
 
kommt davon wenn man nur c+p macht ohne groß nachzudenken :wand: :hammer: :D

das mit dem Namen werd ich mal weiterleiten, das nächste mal dafür einfach nen grünen anschreiben ;)
 
Zurück
Oben