Diablo 1 Hellfire Mod Diablo 1 HD Hellfire Mod - Awake
Diablo 1 Hellfire Mod - Forum Awakening Mod
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Diablo 1 Modding attempt : "Berserk" skill

 
Post new topic   Reply to topic    Diablo 1 HD Hellfire Mod - Awake Forum Index -> Offtopic
View previous topic :: View next topic  
Author Message
Ogodei



Joined: 11 Jul 2014
Posts: 104

PostPosted: 08 Jun, 2015 11:47    Post subject: Diablo 1 Modding attempt : "Berserk" skill

Hello guys. Recently I started to follow some tutorials (or, i should say, Code editing notes) found on Khanduras.net which report the various code edits made during the development of "Diablo The Dark" mod. I focused my attention on the "berserk" skill (they call it "Charm", though) . I managed to follow the instructions in order to make the affected monsters ("Charmed",as they say) to be friendly towards me, but they keep attacking each other. If I follow the instructions to set the "charmed" monsters to be friendly towards one another, the game crashes as soon as I set foot in a dungeon level, no matter which. Here is what i've done :

A) These are the lines i managed to modify, as the Notes report :

Characters are no longer a possible target for Charmed monsters, as is already the case for Golems:

file offset 0003BCFA

:0043C8FA F6C408 test ah, 08
:0043C8FD 7508 jne 0043C907 jmp for Charmed monsters
:0043C8FF A820 test al, 20
:0043C901 0F851F010000 jne 0043CA26 jmp for Golem

changed into
:0043C8FA A920080000 test eax, 00000820
:0043C8FF 0F8521010000 jne 0043CA26 jmp for Golem and Charmed monsters
:0043C905 9090 2*nop


B) This is what causes the game to crash, and I really don't know why :

Golems and Charmed monsters are no longer a possible target for Golems and Charmed monsters:

file offset 0003BE90

:0043CA90 010000 ...
:0043CA93 8B869C000000 mov eax, dword ptr [esi+0000009C]
:0043CA99 A820 test al, 20
:0043CA9B 753F jne 0043CADC
:0043CA9D F6C408 test ah, 08
:0043CAA0 753A jne 0043CADC

changed into
:0043CA90 8B869C000000 mov eax, dword ptr [esi+0000009C]
:0043CA96 A920080000 test eax, 00000820
:0043CA9B 754E jne 0043CAEB jmp for Golem and Charmed monsters
:0043CA9D 9090909090 5*nop


file offset 0003BECC

:0043CACC 8B4DE4 mov ecx, dword ptr [ebp-1C]
:0043CACF E89DFDFFFF call 0043C871 check for "Golem Shooter"
:0043CAD4 85C0 test eax, eax
:0043CAD6 0F84DF000000 je 0043CBBB if not, dont target this monster
:0043CADC 8B869C000000 mov eax, dword ptr [esi+0000009C]
:0043CAE2 A820 test al, 20
:0043CAE4 7512 jne 0043CAF8
:0043CAE6 F6C408 test ah, 08
:0043CAE9 750D jne 0043CAF8
:0043CAEB F68724DD690020 test byte ptr [edi+0069DD24], 20
:0043CAF2 0F84C3000000 je 0043CBBB

changed into
:0043CACC ...
:0043CADC F68724DD690020 test byte ptr [edi+0069DD24], 20
:0043CAE3 0F84D2000000 je 0043CBBB
:0043CAE9 EB0D jmp 0043CAF8 target Golem or Charmed monsters
:0043CAEB F68724DD690020 test byte ptr [edi+0069DD24], 20
:0043CAF2 0F85C3000000 jne 0043CBBB dont target Golem or Charmed monsters
:0043CAF8


Anyone's got an idea about how to correctly set these modifications? And, in case you're not familiar with Hellfire modding (I'm working on HF v1.01) could you please suggest me how to recreate the Berserk(or "Charm") spell in Diablo 1?
Back to top
View user's profile Send private message
Noktis
Site Admin


Joined: 29 Jan 2008
Posts: 1230
Location: Polska

PostPosted: 08 Jun, 2015 12:34    Post subject:

Try this http://www.thedark5.com/forum/forum_posts.asp?TID=611

_________________
Diablo 1 Mod | Diablo 1 Hellfire | Path of Exile | I don't speak English
Back to top
View user's profile Send private message Visit poster's website
Ogodei



Joined: 11 Jul 2014
Posts: 104

PostPosted: 08 Jun, 2015 13:46    Post subject:

Mmmmh, I think this is more difficult than I thought . For now i managed to follow Labiri's tutorial on how to add more free space. Maybe it will be useful for this spell...
Back to top
View user's profile Send private message
Ogodei



Joined: 11 Jul 2014
Posts: 104

PostPosted: 09 Jun, 2015 9:15    Post subject:

Solved , the [...] reported in the code i copied are meant to be replaced with nop's [90's]. I asked for help in TheHell forum, and a member suggested me to try this way.

I will post the modified code here, in case someone else wants to have friendly monsters.

step 1) Offset 0003BCFA
you have to start from F6 and overwrite as follows :
A9 20 08 00 00 0F 85 21 01 00 00 90 90 --> with this edit, you are telling Charmed monsters not to attack you

step 2) Offset 0003BE90
you have to start from "01 00 00" :
Find "75 3F" and replace it with "75 4E"

Offset 0003BECC
Here you have to start from "8B 4D E4" and overwrite everything with "90" until you find "8B 86 9C" ;
After you've found it, you'll have to overwrite as follows

"F6 87 24 DD 69 00 20 0F 84 D2 00 00 00 EB 0D F6 87 24 DD 69 00 20 0F 85 C3 00 00 00"
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Diablo 1 HD Hellfire Mod - Awake Forum Index -> Offtopic All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group
phpBB SEO