[1.13c] A5Q1 Please help with Infinite Larzuk socketing code
Moderators: Nefarius, Havvoric
-
- Posts: 16
- Joined: Wed Feb 25, 2015 6:33 pm
[1.13c] A5Q1 Please help with Infinite Larzuk socketing code
Hello,
I am looking to edit what I believe is the D2Client.dll in order to force Larzuk to socket items infinitely after completing the quest A5Q1. I found a good post on an old thread and Necropolis pointed out that it could be accomplished by NOPing a few lines of code. However, the code I'm seeing when I open the D2Client.dll does not appear similar to the code he referred to. I'm guessing this is due to differences in game versions. If there is someone out there that can translate for me which lines I need to edit in 1.13c code, I would be grateful.
I also have a question about client vs server side .dlls. To accomplish this effect, would I need to edit both the server and client side D2Client.dll files? Or in this case, would I need to edit more than one type of .dll?
Would it be against protocol to ask if there is a .dll available (1.13c) for download somewhere that already has this effect coded?
Please excuse any ridiculous questions. I am, after all, just a newb. Thank you for any help.
EDIT: Oh.My.God. I just spent a bit (just an hour) messing with D2/Olly and I had no idea it would be this involved. In the whole of Diablo 2, I am looking to alter just the one aspect (Infinite socketing at Larzuk), but even that bit of coding is more work than I am looking to do. I really don't want to spend the time it takes to go through coding tutorials and dig around this forum for bits of alien jargon to change just that one little detail in 1 or 2 little .dll's. I'll leave that to the pros. If anyone out there is looking for some freelance Diablo 2 LOD 1.13c coding work, name your price and maybe we can do business. I should tell you that I would like the result to work for multiple clients on the same server (TCP/IP). If anything I said is against the forum rules/etiquette, I do apologize. I'll check back here for a couple more days to look for replies. After that, I'm out. You all take care and I hope this forum lives a long life. Good to know there is a population that still loves this game as much as I do. Thank you.
Joe
I am looking to edit what I believe is the D2Client.dll in order to force Larzuk to socket items infinitely after completing the quest A5Q1. I found a good post on an old thread and Necropolis pointed out that it could be accomplished by NOPing a few lines of code. However, the code I'm seeing when I open the D2Client.dll does not appear similar to the code he referred to. I'm guessing this is due to differences in game versions. If there is someone out there that can translate for me which lines I need to edit in 1.13c code, I would be grateful.
I also have a question about client vs server side .dlls. To accomplish this effect, would I need to edit both the server and client side D2Client.dll files? Or in this case, would I need to edit more than one type of .dll?
Would it be against protocol to ask if there is a .dll available (1.13c) for download somewhere that already has this effect coded?
Please excuse any ridiculous questions. I am, after all, just a newb. Thank you for any help.
EDIT: Oh.My.God. I just spent a bit (just an hour) messing with D2/Olly and I had no idea it would be this involved. In the whole of Diablo 2, I am looking to alter just the one aspect (Infinite socketing at Larzuk), but even that bit of coding is more work than I am looking to do. I really don't want to spend the time it takes to go through coding tutorials and dig around this forum for bits of alien jargon to change just that one little detail in 1 or 2 little .dll's. I'll leave that to the pros. If anyone out there is looking for some freelance Diablo 2 LOD 1.13c coding work, name your price and maybe we can do business. I should tell you that I would like the result to work for multiple clients on the same server (TCP/IP). If anything I said is against the forum rules/etiquette, I do apologize. I'll check back here for a couple more days to look for replies. After that, I'm out. You all take care and I hope this forum lives a long life. Good to know there is a population that still loves this game as much as I do. Thank you.
Joe
- Necrolis
- Throne
- Posts: 9125
- Joined: Sat Mar 25, 2006 1:22 pm
- Location: The Land of the Dead
- Contact:
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing
The code for this is in both D2Client and D2Game. D2Client controls the menu entry, D2Game controls the server checks to allow the menu entry to work. The easiest way is to actually not out the state completion on the server so that using the reward never completes the quest.
I can find the edits, but I won't have time to test them out, so if the dlls work, cool, else someone else will need to help.
EDIT: nopping out this code should do it:
https://www.dropbox.com/s/d4v9twtygv0oz ... e.rar?dl=0
I can find the edits, but I won't have time to test them out, so if the dlls work, cool, else someone else will need to help.
EDIT: nopping out this code should do it:
Code: Select all
6FCE075D |> \8BC7 MOV EAX,EDI
6FCE075F |. 8BFD MOV EDI,EBP
6FCE0761 |. E8 5A7EF9FF CALL D2Game.6FC785C0
Netiquette, Do you USE it?!?! | Nefarius' Fixed TXT Files | Terms Of Service
Blackened | Day of Death | D2GFEx
"What was yours is mine. Your land, your people, and now your life." - Lim-Dul, the Necromancer
Judgement is Final, Death is Eternal
-
- Posts: 16
- Joined: Wed Feb 25, 2015 6:33 pm
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing
Holy crap! It's like christmas morning! Hahaha. I woke up and checked this thread and found this. Seriously, I thought for sure I'd hear crickets. Necrolis, you're the man. I tested it and it works exactly the way I needed it to. Exactly like you said it would. I'm just stoked right now. Do you want money for your time and effort? I'll PM you. Thank you!Necrolis" wrote:The code for this is in both D2Client and D2Game. D2Client controls the menu entry, D2Game controls the server checks to allow the menu entry to work. The easiest way is to actually not out the state completion on the server so that using the reward never completes the quest.
I can find the edits, but I won't have time to test them out, so if the dlls work, cool, else someone else will need to help.
EDIT: nopping out this code should do it:https://www.dropbox.com/s/d4v9twtygv0oz ... e.rar?dl=0Code: Select all
6FCE075D |> \8BC7 MOV EAX,EDI 6FCE075F |. 8BFD MOV EDI,EBP 6FCE0761 |. E8 5A7EF9FF CALL D2Game.6FC785C0
Joe
- devurandom
- Angel
- Posts: 897
- Joined: Sat Mar 07, 2015 9:07 pm
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing
Code: Select all
[1.13d] infinite larzuk socketing
D2Game.dll
6FC94F9D 8BC7 MOV EAX,EDI <----NOP
6FC94F9F 8BFD MOV EDI,EBP <----NOP
6FC94FA1 E8 1A72FAFF CALL 6FC3C1C0 <----NOP
Anyone have some pointers on how to change the results so it always gives 2 sockets on magical items. With this item type you have a 50-50 chance of 1-2 sockets.
Assembly Reference | 1.13d Code Edits | UVLoD | BaseMod Plugin
Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..
Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing
Check code above the address you posted
Nop out push ebx...mov esi, eax and change esi to number of socket you want to (untested)
Code: Select all
.text:6FC94F02 loc_6FC94F02: ; CODE XREF: sub_6FC94900+5FBj
.text:6FC94F02 114 push ebx
.text:6FC94F03 118 call D2Common_10549
.text:6FC94F08 114 mov ecx, eax
.text:6FC94F0A 114 call GetRandom_6FC21180
.text:6FC94F0F 114 inc eax
.text:6FC94F10 114 mov esi, eax
.text:6FC94F12
.text:6FC94F12 loc_6FC94F12: ; CODE XREF: sub_6FC94900+5DEj
.text:6FC94F12 ; sub_6FC94900+5E3j ...
.text:6FC94F12 114 push esi ; a11
.text:6FC94F13 118 push ebx ; a10
.text:6FC94F14 11C call D2Common_AddSocketToItem_10749
.text:6FC94F19 11C push ebp
My CE Tools:
D2 Offset Calculator
D2 Offset Calculator
- devurandom
- Angel
- Posts: 897
- Joined: Sat Mar 07, 2015 9:07 pm
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing
Lolet ........ A big thank you for pointing me to the right section !!!
Below is the working code edit - optimized.
TESTED
EDIT#3: previous CE worked 40-50 times correct. but failed on magic Legendary Mallet.. giving 1-2 sockets. This update Fixes that.
Below is the working code edit - optimized.
TESTED
Code: Select all
Larzuk Socketing - always give 2 sockets on magical items.
(Instead of 50-50 chance of 1-2 sockets)
[1.13d] D2Game.dll - 74EFB
code section
6FC94EF8 83FE 02 CMP ESI,2
6FC94EFB 7C 05 JL SHORT 6FC94F02
6FC94EFD BE 02000000 MOV ESI,2
6FC94F02 53 PUSH EBX ; /Arg1
6FC94F03 E8 D457F9FF CALL <JMP.&D2Common.#10549> ; \D2Common.#10549
6FC94F08 8BC8 MOV ECX,EAX
6FC94F0A E8 71C2F8FF CALL 6FC21180
6FC94F0F 40 INC EAX
6FC94F10 8BF0 MOV ESI,EAX
change
6FC94EFB 7C 05 JL SHORT 6FC94F02
.....
6FC94F10 8BF0 MOV ESI,EAX
to
6FC94EFB 74 15 JE SHORT 6FC94F12
....
6FC94F10 90 NOP
6FC94F11 90 NOP
EDIT#3: previous CE worked 40-50 times correct. but failed on magic Legendary Mallet.. giving 1-2 sockets. This update Fixes that.
Assembly Reference | 1.13d Code Edits | UVLoD | BaseMod Plugin
Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..
Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
Hello !Necrolis wrote: ↑Tue Mar 03, 2015 3:45 pm...
EDIT: nopping out this code should do it:https://www.dropbox.com/s/d4v9twtygv0oz ... e.rar?dl=0Code: Select all
6FCE075D |> \8BC7 MOV EAX,EDI 6FCE075F |. 8BFD MOV EDI,EBP 6FCE0761 |. E8 5A7EF9FF CALL D2Game.6FC785C0
Can someone translate me this CE as a 'search and replace' form please ?
Like this exemple:
Code: Select all
"Level Cap" ;it's hardcoded so you can't gain more than one level from this quest
D2Game.dll - 5BFF8
6FC7BFF8 3BDD CMP EBX,EBP
6FC7BFFA 7E 04 JLE SHORT D2Game.6FC7C000
TO
6FC7BFF8 3BDD CMP EBX,EBP
6FC7BFFA EB 04 JMP SHORT D2Game.6FC7C000
;This will remove the level cap
Thank you in advance
Want to play but not enought time to drop good stuff and raise decent level ? Try Casual Nostalgia !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
- HarvestWombs
- Arch-Angel
- Posts: 1019
- Joined: Wed May 25, 2011 11:50 pm
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
He already said to nop the selected addresses. Meaning you go to the location specified and edit it, so that all of those locations are NOP
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
My knowlege is very limited, I only know how to hex the DLL with hworks32 for now, not all this ASM stuff
It's why I asked that.
It's why I asked that.
Want to play but not enought time to drop good stuff and raise decent level ? Try Casual Nostalgia !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
- HarvestWombs
- Arch-Angel
- Posts: 1019
- Joined: Wed May 25, 2011 11:50 pm
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
Then why don't you Youtube some basics using olly?
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
I'll try. But last time, I feel lost in the middle of the ocean
Want to play but not enought time to drop good stuff and raise decent level ? Try Casual Nostalgia !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
- devurandom
- Angel
- Posts: 897
- Joined: Sat Mar 07, 2015 9:07 pm
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
This is a good place to start, give it a week or so.
https://d2mods.info/resources/diablo_ii ... 0v2.01.htm
https://d2mods.info/resources/diablo_ii ... 0v2.01.htm
Assembly Reference | 1.13d Code Edits | UVLoD | BaseMod Plugin
Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..
Fiat paper money is the most elaborate and well devised form of slavery the world has ever seen..
Re: [1.13c] A5Q1 Please help with Infinite Larzuk socketing code
Thank you Devurandom, I'll try to go further again in this file
Want to play but not enought time to drop good stuff and raise decent level ? Try Casual Nostalgia !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !
More infos here : viewtopic.php?f=5&t=63800
CHEERS !