Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post here about all aspects of D2 mod making whether it's information, problems or whatever. Please specify whether your post is relating to Classic D2 or the Expansion.

Moderator: Nizari

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Sat Apr 22, 2023 8:19 pm

This guide describes some of monumods.txt, shrines.txt and the baseids of monstats.txt. And also superuniques.


THANKS TO:
Nefarius for his monumod descriptions (https://d2mods.info/forum/viewtopic.php?t=42436)
Nefarius for his AI Compendium (https://d2mods.info/forum/viewtopic.php?t=36230), which describes wraith1, quillrat1, frogdemon1, necromage, evilhole1
The Amazon Basin for its various amassed descriptions.
Nagahaku for describing baseids corruptrogue3, maggotqueen1, hellbovine, fetish11, wraith1, plaguepoppy, cycleoflife, vinecreature, overseer1, both sandleaper1 behaviors; tokens pw, BH, GU; monumods shatter_on_death, light, poisonhit, additional description of rndname, compelling orb crash, partydead being given by Bone Wall and Bone Prison

[MONUMODS.TXT] Describes the various hardcoded unique monter mod rows.
[MONSTATS.TXT BASEID] A list specially hardcoded monstats.txt baseids, that provide inheritable behaviors.
[MONSTATS.TXT ROWS] A list of special behaviors that are hardcoded to specific monstats.txt rows
[SUPERUNIQUES.TXT] A list of hardcoded IDs and rows of superuniques.txt. Oddly, in some cases, the value of the ID column is used rather than row placement or name.
[TOKENS] A list of hardcoded tokens.
[PETTYPES.TXT]
[SHRINES.TXT] Describes a few hardcoded shrine rows which produce missiles, thereby giving some control.
[HIJACKING]

----------


[MONUMODS.TXT]

[none] ID=0
{what units gain this monumod?}

[rndname] ID=1
Nefarius wrote:
Mon Jan 08, 2007 8:16 pm
rndname gives the boss his random name, when none is set
·Automatically given when a monster spawns through levels.txt umon#
·Can be used to give pets random unique names
·Will not be transferred to a unique's minions, even if xfer=1 and the minions are themselves unique monsters

[hpmultiply] ID=2
Nefarius wrote:
Mon Jan 08, 2007 8:16 pm
hpmultiply multiplies hp, based on the values in MonUMod
{what units gain this monumod?}

[light] ID=3
Anything with a monumod also gains this monumod, including pets with a sumumod.
Adds 7 light radius to the monster.

[leveladd] ID=4
Nefarius wrote:
Mon Jan 08, 2007 8:16 pm
leveladd adds 3 to mLvl and updates experience
{what units gain this monumod?}

[strong][Extra Strong] ID=5
https://www.theamazonbasin.com/wiki/ind ... tra_Strong
Monster gains string.tbl:3205 beneath their NameStr.

[fast][Extra Fast] ID=6
https://www.theamazonbasin.com/wiki/ind ... Extra_Fast
Monster gains string.tbl:3206 beneath their NameStr.

[curse][Cursed] ID=7
https://www.theamazonbasin.com/wiki/ind ... tle=Cursed
Monster gains string.tbl:3207 beneath their NameStr.

[resist][Magic Resistant] ID=8
{}
Monster gains string.tbl:3208 beneath their NameStr.

[fire][Fire Enchanted] ID=9
Releases srvside & cltside missile ID=117 (monstercorpseexplode).
Releases ~five cltside missile ID=82 (fireexplosion).
Makes the corpse explosion/gibbing sound.
Also adds fire damage, scaling with the +% minion/champion/unique elem min/max dmg% rows.
Monster gains string.tbl:3209 beneath their NameStr.

[poisondead] ID=10, baseid=mummy1
Makes the monster produce a poison cloud on death. The missile is ID=115 (corpsepoisoncloud).

[durieldead] ID=11
Produces some weird blood graphics with white maggots in them, doesn't seem to use missiles at all.
After a delay, spawns a few hcIdx=227 (maggot) around the corpse, seems to spawn more as time goes on.
The maggot can be replaced with other monsters, but they are cltside only critters.

[bloodraven] ID=12, baseid=bloodraven
Changes the monster's name to Blood Raven, does not seem to xfer to minions.

[rage] ID=13
{???}
{what units gain this monumod?}

[spcdamage] ID=14
{???}
{what units gain this monumod?}

[partydead] ID=15
•If one monster in the party dies with this monumod, then the rest of the party also dies
•Bone Wall (srvdofunc=60) and Bone Prison (srvdofunc=62) apply this monumod to summons, with the creator sharing partydead with the main segment, and the side segments sharing partydead with the main segment (if main segment dies, the creator dies; if the side segments die, the main segment dies, but this does not kill the creator)

[champion] ID=16
Non-unique monsters gain string.tbl:3220 before their NameStr, as so: "(3220=Champion) (NameStr)"
[ghostly] ID=36
Non-unique monsters gain patchstring.tbl:1084 before their NameStr, as so: "(1084=Ghostly) (Namestr)"
[fanatic] ID=37
Non-unique monsters gain patchstring.tbl:1085 before their NameStr, as so: "(1085=Fanatic) (Namestr)"
[possessed] ID=38
Non-unique monsters gain patchstring.tbl:1086 before their NameStr, as so: "(1086=Possessed) (Namestr)"
[berserk] ID=39
Non-unique monsters gain patchstring.tbl:1087 before their NameStr, as so: "(1087=Berserker) (Namestr)"

Also see: https://www.theamazonbasin.com/wiki/index.php/Champion

[lightning][Lightning Enchanted] ID=17
Makes the monster release bolts when hit (but not on death): this is how scarabs release bolts. Produces 8 srvside missiles of ID=195 (lightunique) each time. Also applies a charged bolt-like srvdofunc which makes the missiles zig-zag. Also adds lightning damage, scaling with the +% minion/champion/unique elem min/max dmg% rows.
Monster gains string.tbl:3211 beneath their NameStr.

[cold][Cold Enchanted] ID=18
On death, monster releases the missile with ID=194 (coldunique). This missile has a nova-like srvdofunc applied to it, which makes it release a spread of 64 missiles. Also adds cold damage, scaling with the +% minion/champion/unique elem min/max dmg% rows.
Monster gains string.tbl:3210 beneath their NameStr.

[hireable] ID=19
{???}
{what units gain this monumod? presumably hirelings}

[scarab] ID=20, baseid=scarab1
·Activates each time a monster is put into animmode GH (hit recovery) or if the monster dies.
·Activation releases 8 srvside & cltside missiles of ID=225 (buglightning).
·Missiles are released in a pattern similar to (if not identical to) pclthitfunc=46,psrvhitfunc=38 (catapultchargedball).

[killself] ID=21
{???}
{what units gain this monumod?}

[questcomplete] ID=22
{???}
{what units gain this monumod?}

[thief] ID=24
See: https://www.purediablo.com/forums/threa ... -1-14d.29/
Monster gains string.tbl:3217 beneath their NameStr.

[manahit][Mana Burn] ID=25
{}
Monster gains string.tbl:3212 beneath their NameStr.

[teleport][Teleportation] ID=26
{}
Monster gains string.tbl:3214 beneath their NameStr.

[spectralhit][Spectral Hit] ID=27
{}
Monster gains string.tbl:3213 beneath their NameStr.

[stoneskin][Stone Skin] ID=28
{}
Monster gains string.tbl:3215 beneath their NameStr.

[multishot][Multiple Shots] ID=29
{}
Monster gains string.tbl:3216 beneath their NameStr.

[aura][Aura Enchanted] ID=30
{}
Monster gains string.tbl:3218 beneath their NameStr.

[poisonhit] ID=23, baseid=maggotqueen1
Adds poison damage, scaling with the +% minion/champion/unique elem min/max dmg% rows.
Also makes the monster periodically release 8 missiles around itself. The Maggot Queen and Achmel the Cursed use this.
The monster also produces 8 missiles on death, which spread out from its center.
The missile it produces is ID=321 (queenpoisoncloud); this missile is srvside only; the missile seems to use the same pathing and spawn location as the Scarab/Lightning monumods.
Gives 75% poison resistance.

[goboom] ID=31, baseid=firegolem
Explodes on death, dealing 100 physical and 100 fire damage.
Releases srvside missile ID=117 (monstercorpseexplode).
Releases ~five cltside missile ID=82 (fireexplosion).
Makes the corpse explosion/gibbing sound.
Unfortunately, Fire Enchanted uses the same missile ID, so this one can't be hijacked without messing up a functional monumod.

[firespike_explode] ID=32
Releases a cltside missile with a shortened Range (strangely, when set to Frozen Orb it spawns so many that the game freezes). The missile appears after 4 frames {at least on traps}. Uses ID=42 (explodingarrowexp).

[suicideminion_explode] ID=33, baseid=suicideminion1
Makes the monster explode like Suicide Minions on death.
Releases two srvside missiles with ID=428 (suicideiceexplode).
Also releases cltside missile ID=426 (suicidecorpseexplode) and cltside missile ID=428 (suicideiceexplode).
This is useful, since we can control the missiles, we can hijack this behavior with a missile of our own choice.

[ai_after_death] ID=34, baseid=reanimatedhorde1
Required for monsters to continue acting after death (Reanimated Hordes use this to self-resurrect).

[shatter_on_death] ID=35, baseid=frozenhorror1
Makes the monster cold-shatter on death. Does not seem to use the shatter state.
On death, releases different cltside missiles depending on monstats2.txt Height column:
	height=1 creates ID=272 (icebreaksmall)
	height=2 creates ID=273 (icebreakmedium)
	height=3 creates ID=274 (icebreaklarge)
	height=4 creates ID=275 (icebreaksmoke)
Note that these missiles have pclthitfunc=31, which works as follows:

Code: Select all

HitIceBreak - Create a missile with a forced animation rate value of 1, depending on the missile class used.
·         If “Missile” equals “icebreaksmall” then create “icebreaksmallmelt” (ID=344)
·         If “Missile” equals “icebreakmedium” then create “icebreaklargemelt” (ID=345)
·         If “Missile” equals “icebreaklarge” then create “icebreaklargemelt” (ID=345)
·         If “Missile” equals “catapult cold explosion” then create “icebreaklargemelt” (ID=345)
On death, also simultaneously releases cltside missile ID=275 (icebreaksmoke).

[worms_on_death] ID=40
Makes the boss spew out impregnate death effects constantly, as well as worms after death. Their corpse continues to spam the cltside death effects even after they die.
Releases cltside missiles of ID=115 (corpseexplosion) and ID=545 (pain worm appear).
{what units gain this monumod?}

[always_run_AI] ID=41
{???}
{what units gain this monumod? the countess does always run, but I'm not sure if she has this}

[lightningdeath] ID=42
On death, monster releases the missile with ID=90 (Nova). This missile has a nova-like function applied to it, which makes it release a spread of 64 missiles. It releases one srvside nova and three cltside novas. The first nova is released at frame 5 {at least on shadows}, the second at frame 6, and the last at frame 7. This monumod is very useful, you can clone Nova and attach the cloned Nova to the skill Nova, and then use whatever missile type you want and attach it to this monumod, which lets you create a new monumod of your choice. The only monsters that use this monumod are the Assassin Shadows, but you can just remove that or create a non-monumod simulation of it and apply it via ctc-on-death.

---

[MONSTATS.TXT BASEID]

[fallen1] ID=19
Regardless of mingrp-maxgrp settings, will only spawn 1, even if =0, although partymin-partymax works as usual.
{maybe has something to do with boss/rally mechanics of fallens, although I'm not noticing anything different}

[wraith1] ID=38
Can fly over things. Seems to have flying toggled on, even if flying=0.

[quillrat1] ID=63
allows quillrat AI to shoot additional missiles based on par3

[sandleaper1] ID=78
Cannot be revived, even if monstats.txt switchai=1 and monstats2.txt revive=1.
Gets knocked back when hit.

[scarab1] ID=91
applies scarab monumod

[mummy1] ID=96
applies poisondead monumod

[vulture1] ID=110
Becomes unselectable and gains increased Z-position when flying with AI=vulture.
Displays overlays.txt ID=146 (vulturedemonfeathers) on death.

[willowisp1] ID=118
Displays overlays.txt ID=184 (willowispdeath) on death.

[thornhulk1] ID=127
Displays overlays.txt ID=79 (thornedhulk_death) on death.

[bonefetish1] ID=212
Displays overlays.txt ID=188 (fetishdeath1) and ID=189 (fetishdeath2) on death.

[cantor1] ID=238
Displays overlays.txt ID=78 (zakarumpriest_death) on death.

[frogdemon1] ID=247
allows frogdemon AI to spawn on a different layer if SplEndGeneric and SplClientEnd are set up properly
Displays overlays.txt ID=82 (frogdemon_death) on death.

[tentacle1] ID=258
[tentaclehead1] ID=261
overlay ID=157 (tentacleheadbloodripple) appears on death; increases the meleerange of anyone that attempts to attack it {how does the connected death work? want to find a baseid that applies group death}

[maggotqueen1] ID=284
·Applies poisonhit monumod
·If monster is also a superunique, monster gains +75% poison resistance, which is in addition to the +75% poison resistance from poisonhit, and so gains +150% poison resistance.

[firegolem] ID=292
applies goboom monumod

[fingermage1] ID=302
{Attacks, maybe just A1, maybe other anims too} release target overlay fingermageflames (ID=169)

[doomknight1] ID=310
[doomknight2] ID=311
[doomknight3] ID=312
Displays overlays.txt ID=187 (undeadhorrordeath) on death.

[evilhole1] ID=321
unselectable

[dopplezon] ID=356
on death, produces cltside missile ID=328 (dopplezonexplode); works best if the missile is stationary

[megademon1] ID=360
[venomlord] ID=558
on death, produces {firey missile or overlay, ID unknown}

[necromage] ID=364
makes it so pets using NecroPet AI act as ranged attackers

[druidhawk] ID=419
Nagahaku wrote:
Tue Aug 22, 2023 6:41 am
I found another baseid has the same behavior: 'druidhawk', used by raven in vanilla.
also, it's better when used by pets with shadowmaster ai, if you want your pet walk through bars.
wraith1 base id shadowmaster ai pets won't play RN mode anim although you must give one to them or the anim would be lost, instead, they'll use WL mode with a faster animrate that looked like twitching, but druidhawk baseid doesn't have this problem.
[reanimatedhorde1] ID=436
applies ai_after_death monumod

[suicideminion1] ID=461
applies suicideminion_explode monumod

{[succubus1] ID=469, not tested}
[succubuswitch1] ID=474
Nagahaku wrote:
Tue Aug 22, 2023 6:41 am
and a simmilar hardcoded baseid brings glitches with shadowmaster ai pets is 'succubuswitch1', it will freeze when the pet goes into RN mode, won't clap her wings, looks like a sliding flight move. when giving it a new baseid, the anim turns normal, but would lose the specific death anim. I think maybe 'succubus1' baseid would be same as it since they're quite simmilar.
[frozenhorror1] ID=501
applies shatter_on_death monumod

[putriddefiler1] ID=546
PutridDefiler AI will not attempt to impregnate creatures with this baseid.

[painworm1] ID=551
PutridDefiler AI will not attempt to impregnate creatures with this baseid.

[andariel] ID=156
Turns the monster into a unique (random name and makes them pull from treasureclass3).
Drops two chipped gems and one normal gem and triggers the quest death.

[duriel] ID=211
Applies durieldead monumod.
Turns the monster into a unique and triggers the quest death.
{does it produce any missiles independent of durieldead monumod?}

[mephisto] ID=242
turns the monster into a unique and makes them drop Mephisto's Soulstone and triggers the quest death
{based off a mod i was playing, might transfer boss monumods to minions, or maybe minion versions of him are also uniques with their own random monumods. need to test}

[bloodraven] ID=267
applies bloodraven monumod, turns the monster into a unique and triggers the quest death

[diablo] ID=243
turns the monster into a unique and triggers the quest death

[baalcrab] ID=544
turns the monster into a unique and triggers the quest death

[hephasto] ID=409
turns the monster into a unique and triggers the quest death

[nihlathakboss] ID=526
turns the monster into a unique and triggers the quest death

[smith] ID=402
turns the monster into a unique

[izual] ID=256
turns the monster into a unique

[ancientbarb1] ID=540
turns the monster into a unique

[summoner] ID=250
turns the name golden

[radament] ID=229
turns the name golden, {maybe quest flag is tied to his baseid too; he drops book of skill once. or maybe its hardcoded to hcidx, didnt really test}

[compellingorb] ID=366
Gives a golden name/"random" name, but prevents the monster from dropping anything.

[plaguepoppy] ID=425
[cycleoflife] ID=426
[vinecreature] ID=427
On death, produces cltside missile ID=470 (vine beast death) and the sound ID=790 (druidpod_death_1; also includes 2-5 since they are a group).

[shadowwarrior] ID=417
[shadowmaster] ID=418
on death, produces overlay ID=272 (shadowwarriordeath)

[baalclone] ID=570
death is replaced with cltside missile ID=614 (baalclonedeath); corpse becomes invisible, but does exist {probably applies a corpse hiding state}

{mounting behavior of imps might be hardcoded to monstats id. saw cloned crush beasts/imps in talonrage's requiem of sorrows and they constantly glitched out, forming big stacks of imps underneath the crush beasts}

{check hydra, megademon, necromage, lightningspire, succubus, succubuswitch, overseer, minionspawner, evilhole, imp, catapult, ancientbarb death, painworm, putriddefiler, baaltentacle, baalclone, baalminion, izual, act boss death effects, firegolem, valkyrie, shadowwarriorappear/death overlays, baalthrone's baal_on_Throne, death_sentry overlay, }


---


[MONSTATS.TXT ROWS]

[corruptrogue3] Row 44
When a superunique has their Class=(monstats.txt Row 44, in vanilla corruptrogue3), the following behaviors apply:
On death, spawn four missiles of ID=291 (towermist).
{probably makes them cast their Skill1}

[sandleaper1] Row 78
Acts like the sandleaper1 baseid: cannot be revived, even if monstats.txt switchai=1 and monstats2.txt revive=1.

[maggot] Row 227
Spawned by the durieldead monumod, as cltside only critters.

[maggotqueen1] Row 284
Only maggotqueen that produces death animation. {graphics used?}
Only maggotqueen that produces death animation gore, using cltside missile ID=353 (queendeathcenter).

[vilechild1] Row 301
This monster ID will be spawned by the darkwanderer.

[doomknight3] Row 312
Synchronizes monstats2.txt S4v to S3v (such that the elemental hand balls of Oblivion Knights will look the same as the missile fired).

[compellingorb] Row 366
Causes a random crash if the baseid is not compellingorb, similar to the random nextinclass mismatch crash.

[hellbovine] Row 391
Monster can drop items from the set defined by sets.txt row 29 (in vanilla, that is Cow King's Leathers).

[fetish11] Row 407
Nagahaku wrote:
Wed Jul 05, 2023 4:27 am
Find another baseID: fetish11
monster with this baseid would drop the gidbin during the quest. if have it changed, no gidbin. 8-O
[minion1] Row 453
∙The Nihlathak AI will keep casting skill2 on monsters with baseid=minion1 until the monster gains the 'bloodlust' state

[overseer1] Row 479
If superuniques.txt class=overseer1, then it will release:
srvside: Shenk the Overseer's death effect, which randomly, periodically kills monsters around the death location in a large radius
cltside: missiles.txt ID=602 (overseercontrol)

[shadowmaster][shadowwarrior][valkyrie] Row {},{},{}
These monster IDs can be transformed into characters. Attempting to do this with any other ID will cause the monster to become invisible, unless the state has bossinv=1.

{
ancientbarb1: spawns with hardcoded gear
(NORMAL: ilvl=mlvl-7, vanilla=30)
magic Broad Sword
magic Field Plate
magic Tower Shield
magic plate boots aka Greaves
(NIGHTMARE)
magic Battle Sword (ilvl=mlvl-20, vanilla=48)
magic Sharktooth Armor (ilvl=mlvl-27, vanilla=41)
magic Pavise (ilvl=mlvl-25, vanilla=43)
magic War Boots (ilvl=mlvl-27,vanilla=41)
(HELL: ilvl=mlvl-12, vanilla=75)
magic Conquest Sword
magic Kraken Shell
magic Aegis
magic Myrmidon Greaves
ancientbarb2: spawns with hardcoded gear
(NORMAL: ilvl=mlvl-3, vanilla=34)
TWO magic Throwing Axe
magic gaunlets(H) aka Gauntlets
magic plate boots aka Greaves
(NIGHTMARE)
TWO magic Francisca (ilvl=19)
magic War Gauntlets (ilvl=27)
magic War Boots (ilvl=27)
(HELL)
TWO magic Flying Axes (ilvl=40)
magic Ogre Gauntlets (ilvl=71)
magic Myrmidon Greaves (ilvl=71)
ancientbarb3: spawns with hardcoded gear
(NORMAL: ilvl=mlvl-7, vanilla=30)
magic Voulge
magic Field Plate
magic Crown
(NIGHTMARE)
magic Bill (ilvl=50)
magic Sharktooth Armor (ilvl=41)
magic Grand Crown (ilvl=41)
(HELL: ilvl=mlvl-12, vanilla=75)
magic Colossus Voulge
magic Kraken Shell
magic Corona

NOTES:
•ancientbarbs ignore levelreq
•they reference their items via code (i.e. field plate is code=fld, so if you swap the codes of field plate and plate mail, then ancientbarb1 will have plate mail instead of field plate)
•you can equip them with an inventory but it will not override their items (my test was to give Hell Talic a scimitar on his larm and rarm, the result was he still had his conquest sword but also the scimitars)

{what gives them gear? their ID? is it their superunique id?}


---


[SUPERUNIQUES.TXT]

[The Countess] Row 6
She acts like a minion, but instead of being leashed to a boss, she is leashed to the location she spawns at.
Always runs.
She will cast monstats.txt Skill1 at the doorways.

[Baal Subject 1] hcIdx=61 (row does not matter, only the first instance of hcIdx=61 will be used)
Spawned on the first casting of missiles.txt psrvhitfunc=54, when used by the baalthrone monster.
{replace bishibosh with, to test behaviors}
[Baal Subject 2] hcIdx=62 (row does not matter, only the first instance of hcIdx=62 will be used)
Spawned on the second casting of missiles.txt psrvhitfunc=54, when used by the baalthrone monster.
{replace bishibosh with, to test behaviors}
[Baal Subject 3] hcIdx=63 (row does not matter, only the first instance of hcIdx=63 will be used)
Spawned on the third casting of missiles.txt psrvhitfunc=54, when used by the baalthrone monster.
{replace bishibosh with, to test behaviors}
[Baal Subject 4] hcIdx=64 (row does not matter, only the first instance of hcIdx=64 will be used)
Spawned on the fourth casting of missiles.txt psrvhitfunc=54, when used by the baalthrone monster.
{replace bishibosh with, to test behaviors}
Spawned on the fifth casting of missiles.txt psrvhitfunc=54, when used by the baalthrone monster.
[Baal Subject 5] hcIdx=65 (row does not matter, only the first instance of hcIdx=65 will be used)
{replace bishibosh with, to test behaviors}

---

[TOKENS]

[pw]
Nagahaku wrote:
Wed Aug 09, 2023 8:09 am
it's about the token 'PW', for pantherwomen and slingers, this token seems hardcoded to disable all death/dead cof modifications in act 2, and only in act 2.
i found this during my attempts to retrieve those catgirl's bloody death anim, which is already in their S8 but either disabled or mislead to S5. my cof modding fixed the anim easily in all other acts but act2, until i built another token to get it fully work.
[BH]
Nagahaku wrote:
Thu Nov 16, 2023 4:40 am
another token found: BH, for bigheads.
it would prevent you from targeting their A2 anim, you can't click them when they spraying orbs. the cof file also forbidden you doing this, but fixing cof alone won't work, you have to change the token as well.
[GU]
Nagahaku wrote:
Sun Dec 17, 2023 1:54 pm
found another token: GU for act2 hireling
similar as PW, it would forbidden cof fix for retrieving their bloody death anim in Act 2 and only in Act 2.



---

[PETTYPES.TXT]

[golem] {presumably row 3, not tested}
Required for Iron Golem memory to work.

[hireable] {presumably row 7, not tested}
Automatically applied to Hirelings.
Required for Hireling inventories.
If given to a pet, you will summon a hireling, with an equippable inventory.
{letting it die and reviving it will make it behave more properly; otherwise it wont have most of the hireling bonuses}
{investigate further; very weird}
{can we create a functional summonable hireling? probably would want to use shadowmasternoinit AI rather than hireable so that it can use all sorts of skills}
{how does it choose which hireling ID to use? i think initially it uses one based on clvl, so if clvl=99 then hireling uses high level hireling ID, but after being resurrected, it adjusts properly to the expected low level hireling ID. can we make it use any hireling ID, or will it always adjust to the first hireling, that is, the rogue?}

---

[SHRINES.TXT]

[Storm Shrine] aka [Fire Shrine]
Spawns a nova of 16 missiles around it. Seems to use the srvdofunc that makes Fire Towers shoot weirdly, where they shoot only in specific quadrants.
Missile has ID=62 (fireball).

[Exploding Shrine]
Spawns two missiles, one to the top right and one to the bottom left. Then spawns four more missiles, two to the bottom right of the previous missiles, and two to the top left of the previous missiles.
Missile has ID=45 (explosivepotion).

[Poison Shrine]
Spawns two missiles, one to the top right and one to the bottom left. Then spawns four more missiles, two to the bottom right of the previous missiles, and two to the top left of the previous missiles.
Missile has ID=48 (chokinggaspoition).

---

[HIJACKING]

Every monumod/shrine that produce missiles can be hijacked to do nearly any other behavior you can think of. This is because missiles are connected to almost everything. For example, you could make it so Exploding Shrines produce invisible monsters, which hit the player, which triggers one of many possible CTC skills (you can use tgtdo to make it so the player casts the spell). In this way, you can have hundreds of new shrine effects by randomizing the outcome with monprops, although these behaviors can only be spawned from the Storm, Exploding and Poison Shrines. Through monumods, scarab and poisondead and lightningdeath are ideal choices since their vanilla behaviors can be mostly simulated with monprops.
Last edited by Cypress on Sat Aug 03, 2024 3:58 pm, edited 67 times in total.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Fri Jun 02, 2023 5:50 pm

Hi, i found another monstats.txt hcidx
corruptrogue3
hcidx=45
this is the countess that spawns mist on death. if you move the countess to some other id, the mist would not appear unless you give her a death skill to simulate.
also, the countess' AI must be 'CorruptRogue' or she would not cast firewalls at the entrances of her chamber, and if my memory is correct, other AIs would not be functional and she would become a sitting duck, seems to be fixed to 'CorruptRogue' by the level scripts.

and another interesting one
sandmaggotqueen1
hcidx=284
this is the only maggot queen that would play the amazing death anim, which is dc6 instead of dcc, other queens would not apply this anim on death as i remembered

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Sun Jun 04, 2023 2:34 pm

Thanks Nagahaku! I've tested those out and found out a little more:
The Countess mist is spawned only by superunique corruptrogue3.
The Countess firewalls can be cast by any AI with the proper animations, as long as the superunique is defined in superuniques.txt row 6.
Maggotqueen1 also releases the gore missiles.

Thinking about it, there are quite a few monsters with special hardcoded death graphics that haven't been documented. I believe corruptrogues have it with their soul releasing, and oblivion knights with the fire effects, and so on. I'll have to see how many I can find and also need to document the IDs of the missiles or overlays they use to produce their special death effects.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Tue Jun 06, 2023 4:07 am

Cypress wrote:
Sat Apr 22, 2023 8:19 pm
She will cast monstats.txt Skill1 at the doorways.
Ah... that might be the reason why she became a sitting duck with the AI i gave her, its skill1 was a melee skill. :D
Cypress wrote:
Sun Jun 04, 2023 2:34 pm
The Countess mist is spawned only by superunique corruptrogue3.
and for this... i believe the row is the real key to the mist spawn, i tried to make a real unique countess in my mod, so i replaced this row with a new monster named 'countess' then moved 'corruptrogue3' elsewhere, and it worked.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Thu Jun 08, 2023 10:44 am

Yes, you're right, it requires both row 44 and for it to be a superunique. Thanks Nagahaku! It's weird that the Countess behaviors seem to be split up between being hardcoded to the superuniques ID and the monstats row.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Thu Jun 08, 2023 6:05 pm

Cypress wrote:
Thu Jun 08, 2023 10:44 am
weird that the Countess behaviors seem to be split up between being hardcoded to the superuniques ID and the monstats row.
I believe it's something related to the level map scripts, when i looked into the tile file, i saw some description about where to draw the firewall.
analyzing those scripts is beyond my current talents, maybe later i should study about them...

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Tue Jun 27, 2023 1:50 pm

another find... perhaps everybody has already known...
hellbovine, hcidx=391.
this would be the only monster that drops the Cow King set. so if a hellbovine spawns somewhere not the Moo Moo Farm, it would also have a chance to drop the Cow King set.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Tue Jun 27, 2023 10:48 pm

Great find Nagahaku! I've added it to the list. Also worth noting that the special cow-only set is defined by sets.txt row 29. So if you want to get rid of this cow-only set behavior, move Cow King's Leathers to another row and fill in row 29 with some undroppable junk set.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Wed Jul 05, 2023 4:27 am

Find another baseID: fetish11
monster with this baseid would drop the gidbin during the quest. if have it changed, no gidbin. 8-O

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Thu Jul 06, 2023 9:21 am

Cypress wrote:
Sat Apr 22, 2023 8:19 pm
[light] ID=3
{what units gain this monumod?}
I think it's all champion or unique monsters.
I tried to make my mod 'extra dark' so i removed almost every monster's light radius and made character's very small. but when i met some champions or unique monsters, they always have their own light radius, and the light color seems to be same as their random pallets. i think the radius is about 5 or 6, didn't test it, looks like that.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Fri Jul 07, 2023 10:24 pm

Nice finds Nagahaku! I added them to the list. Didn't do any testing on fetish11 to see if there's anything weird, so I quoted you instead. I did test out the light monumod though. Made an immobile claygolem and bloodgolem, gave the claygolem light monumod and modified the bloodgolem's light radius through monstats2. Also made them size 0 so that they stack and overlap each other's light radius, and made their lightradius of different colors. Then compared screenshots of no golem/clay golem/claygolem+bloodgolem to see the subtle differences between each image. From my testing and comparing, it appears that the monumod gives 7 light radius.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Sun Aug 06, 2023 4:14 am

Cypress wrote:
Sat Apr 22, 2023 8:19 pm
Instead, releases cltside missile with ID=345 (icebreaklargemelt)
i have tested this and found something funny.
shatter_on_death, or 'shatter' column in states.txt are linked with 3 missiles: ID=272/273/274, and which to choose is based on the size of the monster, might be monstats2's 'small' or 'large' column.
these missiles have pclthitfunc=31, which is hardcoded to direct them to melting missiles, and for the frozenhorror, since they are big enough, the shattering missile would be ID=274, and melting missile would be ID=345.
if you have the shattering missiles ID=272/273/274 modified, the graphic would be totally changed.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Sun Aug 06, 2023 5:51 pm

Nice find Nagahaku! I was never able to find the other linked missiles. I've updated the description with your findings and some extra stuff, like icebreaksmoke which is released at the same time on death and the D2R txt file guide description of clthitfunc=31 which releases the melting missiles.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Wed Aug 09, 2023 8:09 am

another find, maybe not so useful...
it's about the token 'PW', for pantherwomen and slingers, this token seems hardcoded to disable all death/dead cof modifications in act 2, and only in act 2.
i found this during my attempts to retrieve those catgirl's bloody death anim, which is already in their S8 but either disabled or mislead to S5. my cof modding fixed the anim easily in all other acts but act2, until i built another token to get it fully work.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Sun Aug 13, 2023 7:17 pm

Great find Nagahaku! I never noticed that the panthers don't have blood animations. And I also didn't know tokens could be hardcoded. It'd be interesting to see what it looks like when they spray out blood.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Tue Aug 22, 2023 6:41 am

Cypress wrote:
Sat Apr 22, 2023 8:19 pm
[wraith1]
allows it to walk through things
I found another baseid has the same behavior: 'druidhawk', used by raven in vanilla.
also, it's better when used by pets with shadowmaster ai, if you want your pet walk through bars.
wraith1 base id shadowmaster ai pets won't play RN mode anim although you must give one to them or the anim would be lost, instead, they'll use WL mode with a faster animrate that looked like twitching, but druidhawk baseid doesn't have this problem.

and a simmilar hardcoded baseid brings glitches with shadowmaster ai pets is 'succubuswitch1', it will freeze when the pet goes into RN mode, won't clap her wings, looks like a sliding flight move. when giving it a new baseid, the anim turns normal, but would lose the specific death anim. I think maybe 'succubus1' baseid would be same as it since they're quite simmilar.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Sat Aug 26, 2023 11:36 am

Awesome finds Nagahaku! Really cool to know that druidhawk works so well. Sounds like succubuswitch1 might have a hardcoded death overlay somewhere. I've added them to the list.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Tue Sep 19, 2023 1:39 pm

Hmmm, found some new baseid...
plaguepoppy, cycleoflife, vinecreature.
These 3 vines would apply the vine corpse missile on death, change the baseid and they would leave no corpse. State 'vinebeast' only simulate the walking effects of them, not death.
I believe this could be bypassed by creating a new token and give the death anim through token instead of baseid.
it's funny that the unused vinebeast baseid doesn't apply the death missile, perhaps it's NOT a vine but a flower, acrroding to the unused token XZ.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Tue Sep 19, 2023 11:34 pm

Hi Nagahaku, cool find! I found the missile it produces, ID=470 (vine beast death) and also the sound ID=790 (druidpod_death_1). If I remember correctly, vinebeast has its own death animation (a vine pod exploding), so it doesn't need the hardcoded missile death.

Using a token for the death animation would work, but you'd need to change the vine_beast state, since it has setfunc=11 which makes the pet invisible.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Mon Sep 25, 2023 5:06 pm

another row found.
overseer1, hcidx=479. Shenk the Overseer uses this row, it would trigger the bombardment event on death. if you move Shenk to other rows, no such event.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Tue Sep 26, 2023 11:19 am

Nagahaku, awesome find! Added to the list, also updated the related overseercontrol (cltside graphics part of Shenk's death) in the missile guide a bit.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Mon Oct 02, 2023 2:13 pm

another baseid found: sandleaper1
this would make the monster's corpse can't be targeted by 'Revive' and make it unable to be revived, even if you enabled all the related columns. change this baseid and you'll be able to revive a leaper.

User avatar
Cypress
Moderator
Champion of the Light
Posts: 493
Joined: Fri Dec 01, 2017 2:08 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Cypress » Wed Oct 04, 2023 11:59 am

Great find Nagahaku! It also seems to prevent reviving even if you change the baseid of sandleaper1, so it seems to also be hardcoded to the row as well.

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Wed Oct 04, 2023 4:31 pm

yeah, i believe blizzard did that because there's something buggy with pet AI when using skills like whirlwind or leap, when i tried to give a shadowmaster ai pet whirlwind or leap, the game randomly crash when they activate such skills...

User avatar
Nagahaku
Junior Member
Paladin
Posts: 156
Joined: Sat Nov 30, 2019 1:11 am

Re: Guide to Monumods, Shrine Missiles, Monstats HCIDX and Monstats Baseids

Post by Nagahaku » Thu Nov 16, 2023 4:40 am

another token found: BH, for bigheads.
it would prevent you from targeting their A2 anim, you can't click them when they spraying orbs. the cof file also forbidden you doing this, but fixing cof alone won't work, you have to change the token as well.

Post Reply

Return to “General Mod Making”