Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

This forum is for members to post news that will be displayed on the main page / news portal, any news relating to Diablo 2 Mod Making including mod and patch releases amongst other similar subjects.

Moderator: AdiTT

User avatar
Nizari
Senior Moderator
Crusader
Posts: 65
Joined: Fri Feb 16, 2018 11:39 pm
Poland

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Nizari » Fri May 04, 2018 6:44 pm

I'm glad to see it works well.
In case some of you would need to prevent the goblins spawning as champions or unique monsters on nightmare and hell, here is a fix of boss pick for D2Game in 1.10 and 1.13c versions, it will make levels.txt choose a boss from umon fields on all difficulties:

1.10

Code: Select all

6FC62441  |. 8A41 6D        MOV AL,BYTE PTR DS:[ECX+6D]
6FC62444  |. 84C0           TEST AL,AL
6FC62446  |. 0F85 AD000000  JNZ D2Game.6FC624F9
TO

Code: Select all

6FC62441   90               NOP
6FC62442   90               NOP
6FC62443   90               NOP
6FC62444   90               NOP
6FC62445   90               NOP
6FC62446   90               NOP
6FC62447   90               NOP
6FC62448   90               NOP
6FC62449   90               NOP
6FC6244A   90               NOP
6FC6244B   90               NOP
1.13c

Code: Select all

6FCFF4BF   8A48 6D          MOV CL,BYTE PTR DS:[EAX+6D]
6FCFF4C2   84C9             TEST CL,CL
6FCFF4C4   75 5D            JNZ SHORT D2Game.6FCFF523
TO

Code: Select all

6FCFF4BF      90            NOP
6FCFF4C0      90            NOP
6FCFF4C1      90            NOP
6FCFF4C2      90            NOP
6FCFF4C3      90            NOP
6FCFF4C4      90            NOP
6FCFF4C5      90            NOP

User avatar
Truedat775
Posts: 39
Joined: Fri Mar 02, 2018 9:14 am
Contact:
United States of America

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Truedat775 » Sat May 05, 2018 8:22 pm

Very nice work.

User avatar
Darkquake
Posts: 27
Joined: Tue Feb 20, 2018 3:38 pm
Australia

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Darkquake » Tue May 08, 2018 12:03 pm

Hi just want to give some feedback on what I think are bugs.

1. Goblins that aren't killed and escape leave behind a "filled space" of sorts. Completely un-passable empty space. The work around for this go to town and wait a little and it despawns.
2. Goblins that spawn in packs with auras will have an active aura even after escape while in the "filled space" form. Same work around as bug 1.
3. Goblins minions that spawn as part of a pack will leash indefinitely and will never escape while not in close proximity of the boss or the bosses filled space.

Obviously not making them boss packs will get around the aura's and leashing bug. But if anyone wants to use it with boss packs it can be a problem.
I make things? I make things.
Image
https://www.moddb.com/mods/darkquake

User avatar
Nizari
Senior Moderator
Crusader
Posts: 65
Joined: Fri Feb 16, 2018 11:39 pm
Poland

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Nizari » Wed May 09, 2018 9:48 am

They are absolutely not meant to spawn as bosses or champions for obvious logical reasons, to make it happen, a modder has to fix levels.txt boss pickup table with code edits posted in here by me as a small bonus. However, if someone decides to spawn them as bosses anyway, then it is not of my concern if some bugs exists, thus I do ignore 2. and 3 (anyway, filling the goblin's noaura column in monstats.txt could be a fix for 2.)
About 1. - unfortunately thats how the game works, after the escape goblin still exists for a while (on another layer) before it gets completly erased. Erasure takes place once you are 2-3 screens away from it and/or after entering a different map level (i.e. cave)

User avatar
jetaman
Hosted Forum Moderator
Champion of the Light
Posts: 300
Joined: Sat Jul 18, 2015 7:00 pm
Location: Ukraine
Ukraine

Hand-picked

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by jetaman » Wed May 09, 2018 9:50 am

Maybe we can ask Kingpin and Ogodei to code new goblin-specific AI and behaviour for Dreamlands. This way we can fix all bugs and allow them to be bosses. What do you think?

User avatar
Nizari
Senior Moderator
Crusader
Posts: 65
Joined: Fri Feb 16, 2018 11:39 pm
Poland

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Nizari » Wed May 09, 2018 10:50 am

In my personal opinion there is not much sense in spawning goblin as a boss. It is a non fighting monster, allowing him to have affixes such as extra strong or mana burn wouldn't make any sense.
I can imagine someone may want that to happen. However, the fact it can spawn as boss/champion is a bug in the first place. Following this, I wouldn't call someting a "bug to be fixed" while it is a consequence of something that is not supposed to happen.
New AI could be requested, but dreamlands would limit the full goblin version to 1.10 only. One of the main concepts of this plugin was to avoid all code edits at all cost to make it available for everyone on every game version :-|

User avatar
Darkquake
Posts: 27
Joined: Tue Feb 20, 2018 3:38 pm
Australia

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Darkquake » Mon May 28, 2018 7:26 pm

So... noob question. I'm playing on 1.13c and I open D2Game.dll in OllyDbg that's fine. When I go to find addresses for mentioned to fix the spawn bug all of my addresses are way bigger. Swapping to absolute addresses doesn't do it either. Do I need to add an offset to the addresses somehow?

Edit a month later. For those of you like me who tried to find answers only to be greated with dead links or completly missing pages. You can actually make this change with any hex editor thanks to having the exact hex values.
I make things? I make things.
Image
https://www.moddb.com/mods/darkquake

User avatar
juliocpaes
Posts: 7
Joined: Sun Feb 18, 2018 5:24 pm
Brazil

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by juliocpaes » Fri Jun 01, 2018 2:53 am

congratulations for the plugins ! great contribution !

User avatar
Kaladann
Posts: 62
Joined: Fri Oct 23, 2015 1:15 am
Location: France
France

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Kaladann » Tue Sep 25, 2018 2:38 pm

Wow, incredible addition !

:headbang:
Want to play but not enought time to drop good stuff and raise decent level ? Try Casual Nostalgia !
ImageMore infos here : viewtopic.php?f=5&t=63800
CHEERS !

Grimz
Posts: 14
Joined: Tue Apr 12, 2016 10:59 pm

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Grimz » Thu Oct 11, 2018 5:02 am

jessedazebra wrote:
Fri May 04, 2018 6:27 pm
Thanks for the plugin, these goblins are really entertaining :D
Combined it with Gem Bag plugin, works just fine.

what the hell version of d2 is this...
it looks like d3 lol... so good!!!

User avatar
ShakaLaka
Posts: 8
Joined: Sun Jan 13, 2019 1:18 pm
Germany

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by ShakaLaka » Mon Jan 14, 2019 2:26 am

A big thank you.

If I understand it correctly: The pauses can't be made longer without them dissapearing faster, and the disappearing is completly random? After a little bit of testing, one Rune Hoarder escaped almost instantly without me changing the AI.

Edit: After some testing, Adding additional monsters to a map with low sparsePopulate seem to lower the monster density. Can someone confirm or contradict? My test was a comparison of the two:
NumMon = 1 and mon1 = zombie1
vs
NumMon = 10 and mon1-10 = zombie1, gildedbaron1, gildedbaron1, gelatinoussirebig1, gemhoarder1, treasuregoblin1, gildedbaron1, gildedbaron1, gildedbaron1, gildedbaron1 (or something similar)

User avatar
Nizari
Senior Moderator
Crusader
Posts: 65
Joined: Fri Feb 16, 2018 11:39 pm
Poland

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Nizari » Mon Jan 14, 2019 2:54 am

The dissapearance ratio is controllable to a degree, as you can set the percentage chance of this to happen. However, it's still just a percentage chance, an RNG. Think of it this way: if you toss a gaming cube, you have only ~16,66% chances to hit 6, but it doesn't mean you won't succed on a first try or won't succed after 20 tries.

Yes, monsters using sparse populate are counted normally in the map density. To understand why this happen, you need to know exactly what sparse populate does: it decreases the chance of monster being spawned on a tile, while still counting it among the monsters that are choosen to spawn on a map

User avatar
ShakaLaka
Posts: 8
Joined: Sun Jan 13, 2019 1:18 pm
Germany

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by ShakaLaka » Thu Jan 24, 2019 4:01 pm

Thats what I was scared of. Made a few more tests to be sure, counted the number of monsters in a specific area of Blood Moor.
Testing hidden as small font because most people do not want to read it anyway.
Counting 1 ||| nummon = 1, mon1 = zombie ||| Number of monsters counted: 23, 26, 20-22 (2 were on the edge of my chosen area) |||average = 23,3333
Counting 2 ||| nummon = 5, mon = zombie, and the 4 different Goblins with SparsePopulate = 5, 1, 5, 5 (Sparsepopulate should have been 1, but since goblins didn't matter this didn't matter as well) ||| "Rarity" value was supposed to be the same for both, zombies and goblins. Instead, i made an error and the Rarity of Zombies was 1 while the Rarity of Goblins was 2. ||| Number of monsters counted: 1, 5, 2, 5, 2, 0, 0 (+1 Goblin), 3, 1, 0, 5 (finally again!) (+2 Goblins), 2 (+2 Goblins) ||| average = 2,1666 ||| The expectation was 1/9 of 23,333 = 2.5926 (1/9 = Number of Zombie Entries * Zombie Rarity / Number of all Entries * Corresponding Rarities)
Counting 3 ||| nummon = 5, same as above, but with Goblin Rarity = 1 instead of 2 (therefore now same as zombie Rarity) ||| Number of monsters counted: 3 (+1 Goblin), 6, 2, 6 (+2 Goblins), 5-6, 5 (+1 Goblin) ||| average = 4,5833 ||| The expectation was 1/5 of 23,333 = 4,6666
So it worked as expected, adjusting MonDen shouldn't be too hard to keep it close to the original. I hope MonDen has no quirks.

Conlusion: If you have 5 monsters in one area, and add 4 Goblins to it, the MonDen needs to be theoretically increased by a factor of 9/5 7/5 (if the rarity of the monster is 2 and the rarity of the goblin is 1), if the density is supposed to stay the same. NumMon needs to be increased from 3 or whatever the value was, to 9. If the original value was 3, it results in no longer only 3 different kind of monsters be chosen for the level. Which might be an unwanted effect, but I don't think there is a workaround for that. Some of it was tested and some of it was my conclusion but without explicit testing.

Edit: I've got a new question. Is it possible to make the goblin attackable during his escape (animation)? I have not worked with monster animations before, and after searching through .cof (Coffee CofEditor), skills.txt, and other .txt files I have not found the thing that makes him untargetable. I'm kinda not expecting this to work because the sequence has two parts (escape/ invisibility), but since I don't even know how to make him attackable during the whole sequence, maybe there is something else I don't know about.

(On a side note: skills.txt in "Do it yourself - All goblins separated" seems broken; and the get hit/ waiting animation of Gelantinous & Gem Hoarder were not transparent here, but it was easy fixible with the Coffee CofEditor. I don't know if Gem Hoarder is supposed to be transparent or not)

User avatar
prawn
Junior Member
Paladin
Posts: 106
Joined: Sat Oct 27, 2012 12:21 am
Great Britain

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by prawn » Sun Jan 27, 2019 12:16 pm

I have got all the goblins working as they should! great work Nizari / Jetaman thanks very much

User avatar
prawn
Junior Member
Paladin
Posts: 106
Joined: Sat Oct 27, 2012 12:21 am
Great Britain

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by prawn » Tue Jan 29, 2019 9:59 pm

Not sure about this - maybe I have looked at too many goblins but for some reason when any type of goblin spawns in nightmare or hell they are not using state 184 so they get the animation error.In normal they are fine. Any help appreciated cheers!

User avatar
Nizari
Senior Moderator
Crusader
Posts: 65
Joined: Fri Feb 16, 2018 11:39 pm
Poland

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by Nizari » Wed Jan 30, 2019 1:03 am

You have to fill nightmare and hell MonProp fields in the same way as they are done for norm.

User avatar
prawn
Junior Member
Paladin
Posts: 106
Joined: Sat Oct 27, 2012 12:21 am
Great Britain

Re: Nizari's & Jetaman's Treasure Goblin Plugin [all versions]

Post by prawn » Wed Jan 30, 2019 8:58 pm

Thanks -sorry that was simple! Can't believe I missed that !

Post Reply

Return to “Member news”