Page 1 of 21

BaseMod Plugin

Posted: Wed Oct 03, 2018 8:02 pm
by devurandom
==============
BaseMod Plugin
==============
[v1.13.6] Update 2


Supports: Diablo II versions 1.13c, 1.13d, 1.14d & D2SE


- UberQuests & World Event
- Minions for UberQuest & World Event
- AutoGoldPickup with Sound and In Town options
- Custom Red Portals from Cube
- Gamble Refresh
- Merc Mod - Hireling can equip boots, gloves, belt, amulet and one ring
- Options for Rogue Hireling to equip cross bows and Amazon Bows
- Bypass 25 FPS limit for single player
- Ctrl Left Click Item extended to Inventory, Stash, Cube & Ground Drop
- Shift Left Click Beltable Item extended to Stash & Cube
- CPU Fix - with option to disable
- Animated Life/Mana Orbs Support (see docs)
- Animated Inventory Items support
- Option for Linear Magic Find Drop Rates
- Extended Objects - starts at ID#586
- Extended Levels support [255 levels]
- Extended Sounds & Music support
- All Missing SuperUniques can be spawned - not map based
- Nilathek Portal Fix
- Fix for Shadow Master - disappears much less for most maps
- Fix for NecroMancer revives so they don't wander off
- HyperJoin - fast loading for multiplayer
- MultiCopy Enabled
- Enable Ladder Only RuneWords in SP games
- Start game with nopickup console option
- Players X can be specified before startup
- Players 127 patch
- Set Language (requires preinstalled Language files to work)
- Secret Cow level can be entered even if Cow King has been killed
- Allow user to load 3 extra Dlls
- Supports Loading PlugY as an extra Dll
- Ethereal Armor Socket Bug Fix
- Display Item Level and Item Max Sockets
- CustomStringTable for storage and use of UTF8 strings in the game.
- Load a Custom Mpq file if present
- MPQINI Uses MPQ bin file for Ini Options
- Dynamic Health Bar
- Patch for the Treasure Goblin plugin
- CharmZone
- Anya Bug Fix
- Perfect Drops, a Drop Mod feature for item collectors
- Infinite Quest Rewards with Charge Gold from Akara, Charsi, Larzuk and Anya


Plugin can be renamed to yourmodname.dll. For that you'll need to figure out
how to change BaseMod.dll string in Game.exe Loader to yourmodname.dll.
Or use a separate loader to accomplish the same thing.


Should work with PlugY, but don't enable the same features in both plugins at the same time.
Choose one or the other.


=======
Credits
=======

KingPin
Necrolis
Nefarius
Lolet
Whist
Mnw1995
Misiek1294
Ogodei
Dav92
AFJ666


Thanks to Kaladann [Casual Nostalgia] for initial testing and suggestions.
Thanks to DarkQuake [Grail] for followup testing and suggestions.
Thanks to Zekken [Content Update Mod] for testing pre-release versions.

https://www.moddb.com/mods/basemod

Re: BaseMod Plugin

Posted: Thu Oct 04, 2018 7:31 pm
by Kaladann
Hello, nice to see it released !
Will test it soon :)

Cheerz !

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 1:57 am
by ocarinas
Doesn't work for me.
I've 1.13d installed, so I copied 1.13d loader and both dll and ini to Diablo II directory, run the game and nothing changes (fps still capped at 25)
And can this be used on server?

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 2:56 am
by Darkquake
ocarinas wrote:
Fri Oct 05, 2018 1:57 am
I've 1.13d installed, so I copied 1.13d loader and both dll and ini to Diablo II directory, run the game and nothing changes (fps still capped at 25)
Override the default game.exe with the one from within your appropriate loader file.

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 3:17 am
by ocarinas
Darkquake wrote:
Fri Oct 05, 2018 2:56 am
Override the default game.exe with the one from within your appropriate loader file.
I did that, and it doesn't work.
Does it work for you?

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 5:16 am
by Darkquake
Yeah, it works perfectly for me. Sorry to seem picky, but to clarify you have BaseMod.dll, BaseMod.ini and Loaders/1.13d/game.exe in the main directory of D2?

What if you use ingame command /fps what values do you get? How about turning on one of the other options like autogoldpickup to see if it's only the fps bypass having issues?

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 5:43 am
by ocarinas
I just reinstalled the game, and it works now.

Still want to know if the plugin can be used on server.

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 9:03 am
by devurandom
Yes it can be used with server.. how ever you want to use it.

Some features that I can think of like extended levels & animated inventory, I think would require
you to use the plugin on the client side as well.

:)

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 9:10 am
by jessedazebra
Hello, this is some great stuff right here :D
I just loaded it with plugy and d2se and it works just fine, thanks!
I'll give some feedback later I guess.
PS.I have a question about Animated Inventory thing: will it work for animated life/mana orbs or it's just for inventory graphics?

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 9:14 am
by devurandom
Hello, Thanks for the feed back.
Animated inventory would only work for inventory graphics, as far as I know. - Its also untested by anyone yet.

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 9:51 am
by jessedazebra
Yea, inv graphics use frames and it works as intended, so I'm not surprised orbs doesn't work this way.
pic
I've seen some people made animated orbs work, and there's C++ code of this somewhere on this site, so it would be really cool to have this feature in your plugin. And stuff like buff icons and this
Just a suggestion ;)
Thanks again for the plugin, I hope to see more cool features in the future, good luck.

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 11:19 am
by devurandom
Thanks again for the feedback/suggestions and testing animated inventory. :cool:
Not familiar with animated Orb code/buff icons. Would like to implement 24 bit images. But what tools can make 24 Bit DC6 images? or use .BMP or other image format instead ??

rereading that post it seems they used bitmap image, but not sure??

Re: BaseMod Plugin

Posted: Fri Oct 05, 2018 11:59 am
by jessedazebra
I'm not sure as well. D6Creator won't let to use more than 8-bit colors if I'm not mistaken. I guess Sven's GlideWrapper supports something like 32-bit, at least I could use every color I wanted with this plugin.
Example: teal color name on GC
But I couldn't find any tool that could use 24-bit colors with DC6 file format.
I also asked OP from that topic about his code, but seems like he just dissapeared, idk.

Re: BaseMod Plugin

Posted: Wed Oct 10, 2018 5:26 pm
by JayBrainDead
Great work Devu. I added it to a fresh install of 1.14d and everything I was able to test worked flawlessly :)

I dont know if you are still looking for suggestions but here are a few simple ones I could think of that could make the world event much more customizable.

<spoiler>
A unique prefix requirement ( The stone of jordan = 122 or custom item = xxx ) for the World event trigger
Potential to allow someone to create an entirely new story line to get said object

A factor of multiplication for the trigger ( 1 Item = 100 SoJ sold ) It is not necessary since you can enable autosoj if you want it to spawn every time you trigger it
but it it still a prettier solution since it doesnt spam the chat and rewards you with an instant screen shake

Also assuming you borrowed some code from plugy for the Uber tristram the minions wont spawn but there are examples of people working with the source code of plugy
that managed to make uber minions / any monster spawn arround bosses, maybe a similar approach could work
</spoiler>

As is it the Base mod tackles the most common requests from new modders to code editing in one clean solution. :good:

Re: BaseMod Plugin

Posted: Sat Oct 13, 2018 3:39 am
by devurandom
Thanks for the suggestions ;)

Actually nothing is borrowed from PlugY. I set out from the beginning to code independently from that.
Most/all of the code is copy/paste from my own mod. Uber Tristram minions can be softcoded with missiles.txt and monprop.txt.

Update:

@JayBrainDead
made some changes in your request. Lowered the MaxItems sold requirement to just 1 so you'd get instant trigger on item. Also coded in so you can specify only one type of Unique Item for triggering World Event. And fixed some bugs in World Event where it was using the wrong variable name.

New Additions for 1.04
- Nilathek Portal Fix
- Fix for Shadow Master - disappears much less for most maps
- Fix for NecroMancer revives so they don't wander off
- Option for Custom Mpq file
- Updates for World Event Trigger

Re: BaseMod Plugin

Posted: Sun Oct 14, 2018 4:43 pm
by Kaladann
Nice additions, cheerz !

Re: BaseMod Plugin

Posted: Sun Oct 14, 2018 5:43 pm
by thaison
Can you extend state.txt?. Thanks

Re: BaseMod Plugin

Posted: Sun Oct 14, 2018 10:06 pm
by devurandom
Thinking i'll pass on that for now.

Re: BaseMod Plugin

Posted: Fri Oct 19, 2018 6:08 am
by Ap0calypse
I'm very impressed with the results! The gold autopick doesn't insist on picking gold after character is full, and everything else I tested worked great!


I'd like to suggest a port from uvlod custom portals (so we can use it on 1.13c and other versions), 2-3 in each act, so modders can add more end game events :-)

I'm in love with you guys work, really really amazing!



edit: an ethereal socketing bug fix would be great too! :P

Re: BaseMod Plugin

Posted: Fri Oct 19, 2018 7:36 am
by devurandom
Thanks for checking it out.. and suggestions.

Not sure if/when i'll add custom portals but maybe. one thing to note is its definitely not compatible with PlugY, red portals (uber portals)

It would be good to add ethereal socket fix to basemod. First though, I'd like replace my (old) crappy assembly patches in d2common into shiny looking C functions.

Right now I don't have time. I have to take a break D2 modding obsession to, deal with backlogged stuff in real life.. :(

Re: BaseMod Plugin

Posted: Tue Oct 23, 2018 11:27 am
by jessedazebra
Well, in the newer version Players command at the startup and missing SuperUniques don't work anymore.
Just tested it with 1.03 version and all this stuff works as intended. In the Inner Cloister there's no Flamespike anymore, but some random champions pack.
Pic

Also, I enabled ExtendLevels and tried to make a new level by using levels.txt and lvlmaze.txt and everything worked absolutely fine.
Another picture

PS.Nihlathak Portal Fix works as well.

Re: BaseMod Plugin

Posted: Tue Oct 23, 2018 12:46 pm
by huohuowu2
If you add high resolution like D2ExpResd.ll ,this will be very great.

Re: BaseMod Plugin

Posted: Tue Oct 23, 2018 1:04 pm
by jessedazebra
huohuowu2 wrote:
Tue Oct 23, 2018 12:46 pm
If you add high resolution like D2ExpResd.ll ,this will be very great.
You can try to get this plugin work with D2MultiRes via plugy, I think it might work. Just make sure you have 1.13c version, since multires works only on 1.12 and 1.13c.

Re: BaseMod Plugin

Posted: Tue Oct 23, 2018 8:27 pm
by devurandom
Hey thanks for the feedback, finding those problems. ;)

1.05 fixes bug from reusing ModIni string for ModMpq string in CustomMpq code.

Re: BaseMod Plugin

Posted: Wed Oct 24, 2018 4:08 am
by ocarinas
Ability to load extra dlls like d2mods system will be very useful