Jump to content

'Spell Immunity: Evocation' is broken?


Recommended Posts

Ok... I protected my sorc with Spell Immunity: Evocation but at least following spells were able to hurt him:

- Fireball

- Cloudkill

- Deathfog


Unless I read the spell descriptions wrong fifty times in a row, all of those three are described as evocation spells. Am I missing something here? :D:)


Version of the game: BG2 with TOB installed, patched with latest official TOB patch

Mods: Tested with and without BG2 fixpack. No other mods.

Link to comment

I believe, though I'm not absolutely certain, that Spell Immunity:{x} will only protect against spells targeted at the character, not area-effect spells such as you've listed.


Someone smarter than me in the ways of the game engine should be able to confirm this.

Link to comment

There're a few area of effect spells that will punch through spell protections of this kind (mostly, casters are not protected from their own spells).


This is slightly less straightforward than spell-level-immunity stuff, though - because Spell Immunity states that it protects against all spells of a given school and it's never provided any "protection" from self only buffs or a good many other harmless spells either.


The only real fix would be adding a whole dumb pile of specific spell immunities to each spell-immunity-subspell (there are forty-two transmutation spells off of the wizard and cleric lists alone!).


It's not difficult to change, it's just questionable whether or not the consistent fix is worth it, I think.

Link to comment

Yea I guess you're right.... I really thought I found a cheap way to protect my sorc from bunch of spells without any hassle. I guess it was too good to be true. I'll just stick to 'protect from fire/acid/whatever' spells before blasting/gassing places. The spell description should still warn 'won't protect from area effect damage spells'.

Link to comment

Such fix IS worth it. It's one of the most notable things in my to-be-fixed-for-my-next-game list. Especailly since that immunities ARE bugged - they do protect from hostile area affecting spells. So, if you're going to fix that it'll be good.

Link to comment

It'd have to be stress-tested: I've never had any luck picking out the threshold of active effects where the game starts to slow to a damaging degree (by which I mean variables don't always get set and menu-based spells like Spell Immunity don't always complete).


It seems to vary, a lot, and moreso with items than spells.


Ascension Irenicus would probably be an acceptible acid test - I've no time for it this week, but I ought to next week, if someone else hasn't checked first :D


The way spell immunity works now isn't ideal; we just have to be careful we don't knead worse bugs into the fixings. Road to hell and all that.

Link to comment

I must say I second Ardanis fully here about this. The protection from a school of magic shouldn't make a difference between AOE and non AOE spells.


I am no modder so I don't want to put the burden on anybody, especially on Nythrun who is already working so hard (thanks!). Just wanted to say my 2 cents... :D

Link to comment

I hate these spells; they already horribly break everything, so we may as well break them some more.


The engine can handle appropriately massive effect lists; there shouldn't be that many spells to add, however (only cloud- and trap-projectile spells of the appropriate school).

Link to comment
All spells of this school will not be able to harm or aid the caster for the duration of this spell. This includes all spells from this school, including any priest spells that might benefit the caster.


In the case of evocation, it's only fifty-five spells off of the wizard and cleric lists:


SPPR206.SPL  // Flame Blade
SPPR207.SPL  // Good Berries 
SPPR213.SPL  // Spiritual Hammer 
SPPR214.SPL  // Draw Upon Holy Might 
SPPR412.SPL  // Holy Power 
SPPR503.SPL  // Flame Strike 
SPPR603.SPL  // Blade Barrier 
SPPR603D.SPL // Blade Barrier 
SPPR609.SPL  // False Dawn 
SPPR612.SPL  // Bolt of Glory 
SPPR614.SPL  // Sol's Searing Orb 
SPPR698.SPL  // Blade Barrier 
SPPR698D.SPL // Blade Barrier 
SPPR705.SPL  // Fire Storm 
SPPR707.SPL  // Sunray 
SPPR725.SPL  // Globe of Blades 
SPPR725D.SPL // Globe of Blades 
SPPR730.SPL  // Aura of Flaming Death 
SPPR730D.SPL // Aura of Flaming Death 
SPPR951D.SPL // Fire Shield (Blue) 
SPPR952D.SPL // Fire Shield (Red) 
SPWI112.SPL  // Magic Missile 
SPWI114.SPL  // Shield 
SPWI118.SPL  // Chromatic Orb 
SPWI213.SPL  // Stinking Cloud 
SPWI215.SPL  // Web 
SPWI217.SPL  // Agannazar's Scorcher 
SPWI304.SPL  // FireBall 
SPWI308.SPL  // Lightning Bolt 
SPWI325.SPL  // Melf's Minute Meteors 
SPWI403.SPL  // Fire Shield (Blue) 
SPWI403D.SPL // Fire Shield (Blue) 
SPWI404.SPL  // Ice Storm 
SPWI418.SPL  // Fire Shield (Red) 
SPWI418D.SPL // Fire Shield (Red) 
SPWI420.SPL  // Minor Sequencer 
SPWI420D.SPL // Minor Spell Sequencer 
SPWI502.SPL  // Cloud Kill 
SPWI503.SPL  // Cone of Cold 
SPWI518.SPL  // Phantom Blade 
SPWI523.SPL  // Sunfire 
SPWI614.SPL  // Death Fog 
SPWI615.SPL  // Chain Lightning 
SPWI617.SPL  // Contingency 
SPWI710.SPL  // Spell Sequencer 
SPWI712.SPL  // Delayed Blast Fireball 
SPWI716.SPL  // Mordenkainen's Sword 
SPWI809.SPL  // Spell Trigger 
SPWI810.SPL  // Incendiary Cloud 
SPWI818.SPL  // Bigby's Clenched Fist 
SPWI908.SPL  // Chain Contingency 
SPWI911.SPL  // Meteor Swarm 
SPWI915.SPL  // Black Blade of Disaster 
SPWI918.SPL  // Bigby's Crushing Hand 
SPWI925.SPL  // Comet


Comet is skippable (Fixpack makes it schoolless), Fireshield/Blade Barrier subspells are skippable, Ice Storm is skippable (unless I'm misremembering, but it didn't bypass caster immunity when I tested the spell level immunity stuff), and there's several single target spells that would only have to be prevented in case of the bounce opcodes.


Immunity Invocation is actually used a bit in the game's mage scripts, and of course they happily fire off their faux-contingencies and such without ever checking to see if they've a spell immunity active, so there's something to consider there too (need detectable spells plz!) - cowenf01.bcs, cowenf02.bcs, dragbrow.bcs, mage14a.bcs, mage14b.bcs, mage14m.bcs, mage14t.bcs, mage16a.bcs, mage16b.bcs, mage16m.bcs.


Goes without saying that this will muss Tactics and its ilk.

Link to comment
Guest Nythrun@work

So I'm the only one who gets a noticable > half second of lag from from equipping something simple like this, then?

COPY_EXISTING ~amul04.itm~ ~override~
 READ_LONG  0x6a "eo"
 READ_SHORT 0x70 "gc"
 FOR ("i" = 0x0; "i" < 0x200; "i" += 0x1) BEGIN
INSERT_BYTES "eo" 0x30
WRITE_SHORT  ("eo" + 0x00) 0x6
WRITE_BYTE   ("eo" + 0x02) 0x1
WRITE_LONG   ("eo" + 0x04) 0x12
WRITE_LONG   ("eo" + 0x08) 0x1
WRITE_BYTE   ("eo" + 0x0c) 0x2
WRITE_BYTE   ("eo" + 0x12) 0x64
SET "gc" += 0x01
 INSERT_BYTES ("eo" + ("gc" * 0x30)) 0x30
 WRITE_SHORT  ("eo" + 0x00) 0x8e
 WRITE_BYTE   ("eo" + 0x02) 0x1
 WRITE_LONG   ("eo" + 0x08) 0x3
 WRITE_BYTE   ("eo" + 0x0c) 0x2
 WRITE_BYTE   ("eo" + 0x12) 0x64
 WRITE_BYTE   ("eo" + 0x0d) 0x3
 WRITE_SHORT 0x70 ("gc" + 0x1)

Link to comment


This topic is now archived and is closed to further replies.

  • Create New...