Jump to content

Hakeashar / Nishruu


Luke

Recommended Posts

Summon Nishruu ("spwi624.spl") and Summon Hakeashar ("spwi719.spl") summon two particular creatures that "... are immune to magic (except for Death Spell), and magic will actually heal it."

Having said that, their script contains the following block

Spoiler
// From "nishru01.bcs"

IF
	OR(3)
		SpellCastOnMe([ANYONE],CLERIC_DISPEL_MAGIC)  // SPPR303.SPL (Dispel Magic)
		SpellCastOnMe([ANYONE],WIZARD_REMOVE_MAGIC)  // SPWI302.SPL (Remove Magic)
		SpellCastOnMe([ANYONE],WIZARD_TRUE_DISPEL_MAGIC)  // SPWI326.SPL (Dispel Magic)
THEN
	RESPONSE #100
		Kill(Myself)
END

 

which suggests that Dispel Magic is also meant to kill them.

The problem is that the aforementioned block will never fire because the listed SPLs all use Ability Target 4... And script trigger "SpellCastOnMe()" ignores such Ability Target...

I can easily provide a fix (by adding a new entry to "specific.ids" for instance, and updating all Dispel Magic files accordingly) but I'm unsure about developer intent... Are they meant to be killed by Dispel Magic spells/abilities or not...?

Edited by Luke
Link to comment

There are some cases in which the current implementation can work. An AI script casting Dispel/Remove Magic with the nishruu as target will do it, because scripts override the spell's own targeting rules. Alternately, including Dispel/Remove Magic and a creature-targeted spell in a sequencer gives you a sequencer ability that targets a creature, and that can kill a nishruu if you target it.

Still, it's an overall broken implementation. I'm in for this fix.

Link to comment
16 hours ago, RoyalProtector said:

I think aTweaks restores that vulnerability too. Or was it CDTweaks? One of them... just so you know.

aTweaks.

15 hours ago, jmerry said:

There are some cases in which the current implementation can work. An AI script casting Dispel/Remove Magic with the nishruu as target will do it, because scripts override the spell's own targeting rules. Alternately, including Dispel/Remove Magic and a creature-targeted spell in a sequencer gives you a sequencer ability that targets a creature, and that can kill a nishruu if you target it.

Yeah, you're right.

The problem is when the player casts those spells directly...

14 hours ago, CamDawg said:

Yes, this should be fixed.

Should I make them vulnerable to just those 3 SPLs or should I include all SPL/ITM files that use op58 (f.i. Arrow of Dispelling, Golden Axe +1, ANTI_MAGIC_ZONE, "RAVAG01.ITM", etc...)?

Guess the latter...?

Edited by Luke
Link to comment
15 hours ago, jmerry said:

Though maybe more than just those three - inquisitor Dispel Magic should work just as well as the mage and priest versions.

As well as Yeslick's own Dispel Magic innate ability ("spin112.spl")...

Link to comment

OK, here is another inconsistency:

on BG games (and according to spell description), only the Hakeashar is supposed to drain both item charges and spell charges, whereas on IWD both creatures are supposed to drain both item charges and spell charges.

Should the BG Nishruu description be updated to state that this creature drains item charges...? Or is it correct that this creature on BG games is only supposed to drain spell charges...?

Link to comment

This is a bit puzzling actually.

Both the Nishruu and the Hakeashar use the same weapon (nishruu.itm), which both drains charges and removes spells. In oBG2 Summon Nishruu is described as draining both charges and spells. BD intentionally changed the description of Summon Nishruu at some point to remove the mention of charge draining, but didn't change the actual spell (Nishruu definitely drain charges in BG2EE, I've just checked directly). The BD change clearly happened after IWDEE's spell resources were cloned from BG2EE, so IWDEE has the unchanged description.

My inclination would be to say that the description change was erroneous and revert BG(2)EE to the old description (we can steal it from IWDEE). But I'd be interested if @CamDawgor someone has inside information here.

Link to comment

Looking into the string history, both of these descriptions were imported from BG2 (where they mentioned item and spell draining), and then the BG/BG2 Nishruu description got updated a little after to remove the item bit. (The dates this far back get generalized to "nine years ago" and while I can see specific edit dates, I don't have a specific import date.)

What I suspect happened was that, since we were starting from the oBG2 codebase (specifically ToB), someone pointed out that the nishruu item didn't actually drain item charges since op243 isn't functional. The translation team noted that this affects the nishruu item and updated the BG and BG2 descriptions accordingly. Sometime later op243 gets fixed, but no one remembers to go back and add this bit back to the Nishruu description. I cannot remember any conscious decision to change their behavior other than 'op243 should work' (since this is the only place it's used). Had we only wanted it to work for Haks, we would have made them a separate attack item as part of the ticket.

The upshot of all of this is that we should simply update BG/BG2's Summon Nishruu description to include the bit about draining items, since it's the intended behavior.

Link to comment
5 minutes ago, CamDawg said:

The upshot of all of this is that we should simply update BG/BG2's Summon Nishruu description to include the bit about draining items, since it's the intended behavior.

OK, will do.

Link to comment

@CamDawg

I've just noticed these creatures are also immune to elemental damage (acid, cold, fire, etc...). Is this intended...?

I mean, if such damage comes from a spell, then yes (in any case, this is already achieved by having 100% magic resistance...) But should they be immune to something such as a Bullet of Fire +1...?

Edited by Luke
Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...