Skip to forum content

You are not logged in. Please login or register.


forums.pvpgn.pro → [EN] The Source Code → D2GS and mod

Pages 1

You must login or register to post a reply

RSS topic feed

Posts: 23

1

Topic: D2GS and mod

Hello greetings to the whole community.

I have spent many years dedicated to this game and its emulator, but now I have a problem with my mod.

Everything works perfectly in open, but when I install the dll of my mod "D2GS" does not recognize it and it does not work.

How should it be done so that "D2GS" recognizes the mod and its dll. ???

Use D2cs 1.13d and the latest version of PvPgn pro.

Thanks and greetings to all.

2

Re: D2GS and mod

What Mod? What DLL? Send here the D2GS Error Logs...

3

Re: D2GS and mod

Feofilaktt wrote:

What Mod? What DLL? Send here the D2GS Error Logs...


There is no error, the server works perfectly, simply the dll does not work in batle.net closed

Dll = BaseMod.dll + BaseMod.ini  = no work

In open or single player it works well.

PvPgn,D2CS,D2dbs, D2gs - works perfectly = You can play perfectly, but the mod does not work because it does not load the mod dll.

A fellow from years ago called VillagueIdiot, in version 1.10 I modified the d2gs to make the dll work, but this champion disappeared and I can't get in touch with him, to explain how he did it. sad

4

Re: D2GS and mod

I understand, D2GS really isn't calling this DLL, because in open mode D2GS is not used to manage, so it should work normally with your Local Diablo 2. Already in closed mode who manages is D2GS itself that is not prepared to call your DLL.

5

Re: D2GS and mod

I don't think that basemod supports D2GS... You'll have to mod the game by yourself.

6

Re: D2GS and mod

Feofilaktt wrote:

I understand, D2GS really isn't calling this DLL, because in open mode D2GS is not used to manage, so it should work normally with your Local Diablo 2. Already in closed mode who manages is D2GS itself that is not prepared to call your DLL.

Exactly, what I want is to know how to make D2gs call the dll to compile it or in your case someone who knows how to do it, I would greatly appreciate it.

hehpe wrote:

I don't think that basemod supports D2GS... You'll have to mod the game by yourself.

All the mods are supported by d2gs, I know from experience since 1.09, what I don't know how it is done and as I commented above the partner who made it "VillagueIdiot" for a long time that nothing is known about him.
One thing is that D2gs loads an .mpq file and another very different is that it loads a Dll.
Thx

The only thing I pretend to know is how D2gs does to call the DLL
When I built AragorMod in version 1.09, when it was updated at 1.11 and later at 1.12 the modifications in the D2gs and close realm were made by "VillagueIdiot" and I do not have the source code sad

Of there is that it asks for help to be able to realize it myself or in his case somebody that would like to help me. xD

7 (edited by hehpe 31.08.2019 10:20)

Re: D2GS and mod

Basemod was created by @devurandom from PK ... I had a talk about that recently with him and he said

 I think you have to use a different loader to load basemod than the one that comes packaged with it.

So you'll need the source to change the loader(game.exe) which is not included by the creator. That's why I said it's better to make your mod by yourself if you have any c++ /asm knowlegde.
As for the mod you're trying to run most of the plugins for 1.10 modding are not available for 1.13. That's the other reason you might not be able to port your mod to 1.13.

8

Re: D2GS and mod

hehpe wrote:

I think you have to use a different loader to load basemod than the one that comes packaged with it.


In his last article, the mod worked perfectly in all versions, as he commented in his FK post.
PK forum --->viewtopic.php?t=65492 ^^

As you can see in this image, running in version 1.13d.

The problem is simple! does anyone know how to add a dll to D2GS?
Because the rest of the functions of the dll do work, color, animate, etc ........

9 (edited by hehpe 01.09.2019 01:25)

Re: D2GS and mod

zysus wrote:

.....

You still don't get what I am trying to explain to you... You don't modify the D2GS to run custom mods or dll's. Basemod.dll is compilation of code plugins but uses game.exe as a loader and that's why you can't use it with D2GS.  I guess you're trying to use basemod with custom dll's on your d2gs.
You need to find the plugins that you want to use and then add them in D2template and patch/make your own dll's in visual studio.

10

Re: D2GS and mod

hehpe wrote:
zysus wrote:

.....

You still don't get what I am trying to explain to you... You don't modify the D2GS to run custom mods or dll's. Basemod.dll is compilation of code plugins but uses game.exe as a loader and that's why you can't use it with D2GS.  I guess you're trying to use basemod with custom dll's on your d2gs.
You need to find the plugins that you want to use and then add them in D2template and patch/make your own dll's in visual studio.

Ahhhhhhhhh !! That is something else, in your previous post I did not understand.
In a nutshell, what I have to do is not to modify the D2gs, but to modify the fog.dll or the win.dll so that it calls the functions of the game.exe of basemod.dll, that way it will load the modifications made in the dlls of the game. And so you don't have to play the D2gs ......

Thank you, now I will get to it.

11

Re: D2GS and mod

Rename warden.dll to basemod.dll

That should get the D2GS to load in your new .DLL

or modify D2Win.dll to load your custom .DLL

Check out Diablo09.com and join our Diablo II Private Server!

12

Re: D2GS and mod

Kieran wrote:

Rename warden.dll to basemod.dll

That should get the D2GS to load in your new .DLL

How is it? Could you explain this action better?

13

Re: D2GS and mod

Kieran wrote:

Rename warden.dll to basemod.dll

That should get the D2GS to load in your new .DLL

It doesn't work that way, Parts of the file works, new animated colors, weapons and items etc, new portals and automatic collection do not work, however in single player everything works perfectly

Kieran wrote:

modify D2Win.dll to load your custom .DLL

Some tutorial explaining how to add xxx.dll - xxx.ini - xxx.exe ??? to D2Win.dll for D2gs to load it automatically

14 (edited by hehpe 04.09.2019 00:19)

Re: D2GS and mod

As I said countless times you can't use the custom dll function of basemod in D2GS. You can get the mods you want by using D2template or hex edit.
Check this code editing guide: https://drive.google.com/file/d/1ive9gV … 5q29r/view

15

Re: D2GS and mod

zysus wrote:
Kieran wrote:

Rename warden.dll to basemod.dll

That should get the D2GS to load in your new .DLL

It doesn't work that way, Parts of the file works, new animated colors, weapons and items etc, new portals and automatic collection do not work, however in single player everything works perfectly

Kieran wrote:

modify D2Win.dll to load your custom .DLL

Some tutorial explaining how to add xxx.dll - xxx.ini - xxx.exe ??? to D2Win.dll for D2gs to load it automatically

You have to enable warden of course.

Check out Diablo09.com and join our Diablo II Private Server!

16

Re: D2GS and mod

Kieran wrote:

You have to enable warden of course.

Activating warden is a problem since it expels you from the game every 10 seconds and does not let initialize the d2cs

Another solution is to modify the fog dll and add the execution code of the xxx.dll file .................

What I'm trying, if I solve it, I'll leave here the way to do it. although modification of the code is needed so that in theory it works.

I also receive suggestions on modifying the xD code

17

Re: D2GS and mod

zysus wrote:
Kieran wrote:

You have to enable warden of course.

Activating warden is a problem since it expels you from the game every 10 seconds and does not let initialize the d2cs

Another solution is to modify the fog dll and add the execution code of the xxx.dll file .................

What I'm trying, if I solve it, I'll leave here the way to do it. although modification of the code is needed so that in theory it works.

I also receive suggestions on modifying the xD code

Sorry you misunderstood me, rename basemod.dll to warden.dll and then activate warden.

It then loads in basemod

Check out Diablo09.com and join our Diablo II Private Server!

18

Re: D2GS and mod

Kieran wrote:

Sorry you misunderstood me, rename basemod.dll to warden.dll and then activate warden.

It then loads in basemod


Sorry you misunderstood me:
if I do that the D2CS server does not start, it always remains in queue of 1 waiting.





----------------------------------------------------------------------
]Is it possible to load a dll from d2gs.script????????????????
----------------------------------------------------------------------

Added: 08.09.2019 14:46

There are functions that are not executed.

19

Re: D2GS and mod

zysus wrote:
Kieran wrote:

Sorry you misunderstood me, rename basemod.dll to warden.dll and then activate warden.

It then loads in basemod


Sorry you misunderstood me:
if I do that the D2CS server does not start, it always remains in queue of 1 waiting.





----------------------------------------------------------------------
]Is it possible to load a dll from d2gs.script????????????????
----------------------------------------------------------------------

Added: 08.09.2019 14:46

There are functions that are not executed.


Any advance? I found a D2GS that runs D2mod.dll, but I still only try to include BaseMod in D2GS. If possible of course.

20 (edited by lseekio 05.01.2020 02:25)

Re: D2GS and mod

Feofilaktt wrote:

Any advance? I found a D2GS that runs D2mod.dll, but I still only try to include BaseMod in D2GS. If possible of course.


The latest released version of BaseMod will work in D2GS, just use the modified D2Win.dll loader for D2GS.  Most features are working, but haven't tested everything yet.  I saw a post in PK discord.  I found out there's an undocumented fix or workaround for GambleRefresh with D2GS because of a custom packet ?. 

BaseMod.ini

[GambleRefresh]
Enabled=1
ItemCount=24
FixGamble=1

21

Re: D2GS and mod

lseekio wrote:

The latest released version of BaseMod will work in D2GS, just use the modified D2Win.dll loader for D2GS.  Most features are working, but haven't tested everything yet.  I saw a post in PK discord.  I found out there's an undocumented fix or workaround for GambleRefresh with D2GS because of a custom packet ?.

I try to use D2GS 1.13c with the latest BaseMod.DLL and load it through D2Win.DLL, but this log occurs and does not create game, it is loading and returns to the menu.

2020/1/5 12:23:33.427 [critical] @: exception 0xC0000005 occured in sys packet handling 00020B69
2020/1/5 12:23:33.428 [critical] @: packet data dump: 6b

Single player works perfectly.

Has your error occurred to you?

22

Re: D2GS and mod

Feofilaktt wrote:
2020/1/5 12:23:33.427 [critical] @: exception 0xC0000005 occured in sys packet handling 00020B69
2020/1/5 12:23:33.428 [critical] @: packet data dump: 6b

Has your error occurred to you?

I haven't seen that error.  but I have these options disabled in basemod d2gs for testing with server:

[RedPortals]              ; conflict with PlugY ASM in d2gs
[WorldEvent]             : conflict with Plugy ASM in d2gs
[ExtraDll1]                 ; doesn't work in d2gs
[ExtraDll2]                 ; doesn't work in d2gs
[ExtraDll3]                 ; doesn't work in d2gs
[PlayersX]                 
[ExtendLevels]
[ExtendObjects]
[ExtendSounds]
[MapAutoRegen]
[Players127]
[GoblinPatch]


D2-200105.txt

---------------------------------------------------------------
AATWEO Realm startup at 2020-01-05 14:19:13.626
---------------------------------------------------------------
14:19:13.626  ------------------------------------------------------
14:19:13.626  2020-01-05 14:19:13
14:19:13.626  Diablo II Game Server running under Windows XP (Version 5.010)
14:19:13.636  Application Path: C:\Documents and Settings\Administrator\Desktop\D2GS
14:19:13.646  Local IP: 192.168.1.133
14:19:13.646  Computer name: AATWEO
14:19:13.646  ------------------------------------------------------
14:19:13.646  
14:19:13.646  imagehlp.dll loaded for better stack crawls.
14:19:13.726  BaseMod Installing Patches
14:19:13.726  MPQ Loaded
14:19:13.726  BaseMod Installing PatchesEx
14:19:13.726  BaseMod.dll Loaded

23 (edited by tmuhlhausen 09.02.2020 08:41)

Re: D2GS and mod

hehpe wrote:

Basemod was created by @devurandom from PK ... I had a talk about that recently with him and he said

 I think you have to use a different loader to load basemod than the one that comes packaged with it.

So you'll need the source to change the loader(game.exe) which is not included by the creator. That's why I said it's better to make your mod by yourself if you have any c++ /asm knowlegde.
As for the mod you're trying to run most of the plugins for 1.10 modding are not available for 1.13. That's the other reason you might not be able to port your mod to 1.13.


The game.exe for basemod already has been edited to load BaseMod.dll but its not relevant really because its not able to be used with D2SE without editing. D2SE use's its own edited version of game.exe to inject plugY and any other dlls added so you would basically have to combine the additions into one game.exe easiest way to put it. did you mean the D2GS.exe needs to be edited to inject BaseMod.dll?

Im thinking its just simply getting D2GS to inject the dll. Ive been testing this for 2 days solid now and have no problem with basemod in single or multiplayer while its being injected through the D2SE_SETUP.ini inside my specific mod folder Rewakening.. its only for bnet which leads me to think the D2GS.EXE just simply needs to duplicate the process the client is running and the only difference is no basemod in the D2GS folder.

I inject it into game.exe using D2SE_SETUP.ini like this

#BaseMod
ModDll1=BaseMod.dll

Added: 09.02.2020 00:30

zysus wrote:

Ahhhhhhhhh !! That is something else, in your previous post I did not understand.
In a nutshell, what I have to do is not to modify the D2gs, but to modify the fog.dll or the win.dll so that it calls the functions of the game.exe of basemod.dll, that way it will load the modifications made in the dlls of the game. And so you don't have to play the D2gs ......

Thank you, now I will get to it.

The game.exe (if you have the ones that are in the current Basemod release folder as i do) there should be 3 in the basemod directory under Loaders\Game_exe\


https://forums.pvpgn.pro/uploads/images/2020/02/09/loaders.gif


This you probably already know. These are where basemod is being injected through but simply to get it to work fully on a a pvpgn server and i say fully because some features are obvisouly loading like the gamble refresh button is there and lets you click it, but nothing happens. D2GS has to also inject Basemod on the server side While D2SE injects it client side in order for it to work on pvpgn servers. this is how i see it from my perspective i may be wrong

Server model has to Match the Client Model and its why features only work offline and not on the pvpgn server. Because D2GS is essentially created from diablo 2's Game.exe consider it a modifed game.exe and they both operate in the same ways just coded differently

But in theory if its excuted on the server it may not even need to be on the client pc, Basemod that is and that is if someone can manage to get D2GS to inject basemod.. if you can do it to game.exe why not also in D2GS.exe is the question

Added: 09.02.2020 01:13

Well... with some testing.. I tried replacing the D2Win.dll in my D2GS directory with the one included in the BaseMod folder "\Loaders\D2Win_dll\1.13c\D2Win.dll" and added the BaseMod.dll and ini file into the D2GS Directory as well and it seems autopickup is now working too and it was not before when it should have been but gamble refresh is not. about to test full merc equip. One of these 2 changes or both enabled the auto gold pickup and maybe more functions

Posts: 23

Pages 1

You must login or register to post a reply

Who now at forum

Currently view post: 1 guest, 0 registered users

forums.pvpgn.pro → [EN] The Source Code → D2GS and mod