Jump to content

SR Revised V1.3.900 (2022 August 8th)


Recommended Posts

Antimagic: Didn't I just say? Non-Detection protects against True Sight and Detect Invisibility. Though the vanilla (i.e. non-modded) version of this spell only gave the Non-Detection opcode (which was essentially protection against detection for the Stealth/Hide in Shadows class ability), SR's Non-Detection gives blanket immunity to illusion-detecting/dispelling spells such as True Sight. Without illusion-dispellers, and without anti-magic, you have no real way of countering this combo. Meanwhile, the AI just cheats and targets you through improved invisibility anyways. Screw that.

No, you're wrong. That's not how it works. SR ND/vanila SI:Div protect II from being dispelled... but anyone who has Detect Invisible or True Seeing active can target the II enemy, even when II is not dispelled. This makes things more nuanced: ND protects II and ensures that it is still valuable, because the invisible person still gets a 4-point AC boost against regular attacks etc. Meanwhile, even though True Sight doesn't eliminate that, it does eliminate the AC bonus with respect to the True Sight caster, and allows the caster to target the invisible person (with antimagic, or whatever).

 

GoW/ZoSA: Not quite. If that were the case, the original Zone of Sweet Air resource, SPPR318, should simply be a clone of Gust of Wind, SPPR218, and then be subsequently disabled. That is not the case on either counts. The original spell is enabled for clerics while the new level 2 spell is enabled for druids, and it is not quite the same spell.

Then maybe Demi intended that clerics have one spell and Druids have another? Certainly GoW seems more druid-y than cleric-y... I don't recall what Demi's intent was. It might be in one of the threads around here.

 

Insects: Of course - the spells were already designed to some extent with that in mind, but they specified the wrong resource. Instead of Fire Shield (and other similar spells) protecting against the secondary effect that's actually the spell that causes damage and spell disruption, it specifies the primary spell. This means if you target a Fire Shielded creature with Insect Plague, for example, the entire spell dies and none of the insects spread to other creatures. If, on the other hand, you target another creature NEARBY the Fire Shielded creature and the insects spread to them, they're not protected against it.

Ah, easy fix then.

 

Vampiric effects: No, it's pretty easy on non-EE games, too, via race-targeted "cast spell at target" .effs, and I've already done it.

I don't follow. Can you elaborate? I was thinking you would have to patch the .CRE files with 206 immunity, or something.

 

Spell Immunity: I don't like it because Secret Word et. al. target Spell Immunity when it should be a Breach that dispels their effects for the most part. Also, the inconsistency of the AI needlessly casting stuff it shouldn't have access to is a little perturbing, too. SRb15 (and prior versions) already replaces two of them to begin with with other spells, but it did not finish the job with the others.

Eh, whether it's to your taste, this is very much what Demi intended, and part of what (IMHO) makes SR good. Look at it from the perspective of someone making a mod like this: the SI spell(s) is trash, it doesn't exist in PnP, it makes for stupid cheesy gameplay, we want to remove it. But, objection: SCS AI utilizes it. So what do we do? An elegant solution: let the AI do what the AI needs to do, but present the player with a spell list that excludes the trash. Move the basic functions - thematic categorical magical protection - to more suitable spells.

 

tl;dr: SR's treatment of the SI:x effects can maybe be refined a bit, but overall it's gotta remain.

 

IMHO the SI thing really falls into the category of your personal preferences, like the other stuff in your "glaring problems" list. I haven't touched on that stuff because I wanted to clarify some things about the list of bugs first.

Link to comment

Antimagic: So that must be what opcode 193 does, right? DLTCEP does not make that clear at all. Very well - that particular feature will be relegated back to something you can enable via SCS if you desire. Thanks!

 

GoW/ZoSA: Don't know. I separated them into two different spells, where Gust of Wind is a druid spell at 2nd casting level that acts as it was described, while Zone of Sweet Air is a cleric spell at 3rd casting level that acts as a short term (5 rounds) aura effect that keeps clearing cloud effects.

 

Vampiric Effects: Sorry, I got my methods confused. Rather, on Larloch's Minor Drain, for example, you should use an .eff file (opcode 177) that targets a race (ids file 4 with whatever race you're immunizing against - entry 7, for example, is illusory creatures) as the first opcodes of the spell. The actual referenced .eff should then be Protection from Spell (opcode 206) that specifies the base spell resource (in this case, SPWI119). The reason the specified .eff has to be first in SPWI119 is so that the creature is protected against the rest of the spell effects - if it was the last opcode, the rest of the spell would be applied before the immunity would take place.

 

Spell Immunity: Yeah, I guess.

Edited by Bartimaeus
Link to comment

 

Vampiric Effects: Sorry, I got my methods confused. Rather, on Larloch's Minor Drain, for example, you should use an .eff file (opcode 177) that targets a race (ids file 4 with whatever race you're immunizing against - entry 7, for example, is illusory creatures) as the first opcodes of the spell. The actual referenced .eff should then be Protection from Spell (opcode 206) that specifies the base spell resource (in this case, SPWI119). The reason the specified .eff has to be first in SPWI119 is so that the creature is protected against the rest of the spell effects - if it was the last opcode, the rest of the spell would be applied before the immunity would take place.

 

This is also used by Wisp for his RR Poison Weapon/Paralytic Toxin.....

 

To be precise, this is also needed in EE games if you want to use a custom string..... Otherwise, opcode #324 is hardcoded to display "Unaffected by effects from [resource]"

Link to comment

How would I? What you reported to me in PMs were for my own versions of the spells - I don't even remember what b15's Polymorph Self/Shapechange really look like, :p. Anything I did to shapeshifts (or polymorphs) really fall under design changes.

I see.....

 

Anyway, you may wanna add at least these two:

 

1) Polymorph Self: Ogre Mage

 

The sprite isn't wielding any weapon (no weapon animation: this is probably due to the fact that he's supposed to wield COMPS01 or COMPS02 or something like that.... The same holds for the Hobgoblins summoned by MS III......): its equipped weapon has no name; moreover, there is no inventory paperdoll;

 

2) Polymorph Self: Sword Spider

 

STR does not affect its damage and thac0 -> STR 17 should provide a bonus of 1 to thac0 and damage (this is due to the fact that the add_strength_bonus flag (bit 0) is not set to 1.......).

Edited by Luke
Link to comment

Free Action, Minor Globe of Invulnerability, and Globe of Invulnerability cause CTDs for non-EE users as a result of invalid opcodes.

Fixed locally. Let me know if you find any more such instances - most likely things kreso might have added are probably opcode 328 and 321.

 

EDIT - looks like it's just those three spells.

Edited by subtledoctor
Link to comment

(e): Okay, I get it now. SR completely screwed up what it called everything. For some reason, it called 15' 30', and that's where it all started going downhill from there. I'll have to re-review all that.

Well, remember two things:

 

1) The difference between radius and diameter. Your average large-scale spell is (in these games) roughly 15' radius/30' diameter. (Of course, PnP descriptions may differ and most spell descriptions simply use the PnP language, rather than accurately reporting the in-game areas of effect.) Some smaller explosions like SR Skull Trap are 10' radius/20' diameter. Other stuff is roughly 5' radius/10' diameter.

 

The visual range is 28' radius/56' diameter, so your average large explosion spell (Web, Fireball) covers roughly the space you can see in one direction.

 

2) Demi's first language is not English, so it's somewhat understandable if he mixed these up sometimes in spell descriptions.

Link to comment

 

How would I? What you reported to me in PMs were for my own versions of the spells - I don't even remember what b15's Polymorph Self/Shapechange really look like, :p. Anything I did to shapeshifts (or polymorphs) really fall under design changes.

I see.....

 

Anyway, you may wanna add at least these two:

 

1) Polymorph Self: Ogre Mage

 

The sprite isn't wielding any weapon (no weapon animation: this is probably due to the fact that he's supposed to wield COMPS01 or COMPS02 or something like that.... The same holds for the Hobgoblins summoned by MS III......): its equipped weapon has no name; moreover, there is no inventory paperdoll;

 

2) Polymorph Self: Sword Spider

 

STR does not affect its damage and thac0 -> STR 17 should provide a bonus of 1 to thac0 and damage (this is due to the fact that the add_strength_bonus flag (bit 0) is not set to 1.......).

 

 

As of the version I released in the the first post, Ogre Mage's sprite seems to have the sword correctly, and the Hobgoblin Archers seem to have their bows (although the Hobgoblin Priest doesn't seem to be wielding a weapon - not sure what type of weapons that sprite supports - will have to experiment...and yeah, the Archer seems to still be using the wrong sword, bah humbug). Nothing can be done about the paperdoll problem for the Ogre Mage form, though I was thinking removing the form itself entirely for the time being since I'm not sure that I particularly care for it. The Sword Spider form also seems to already have their strength bonus.

 

@Projectile Sizes: Yeah. Well, whatever: I'll just leave it as-is for the time being. Will probably eventually want to go back to calling Fireball a 15' radius and going from there, though, since that's what both BG2 and BG2:EE call it by default.

Edited by Bartimaeus
Link to comment

Gust of Wind/Zone of Sweet Air inconsistencies - either separate them into two different spells (pulse-like effect that lasts a few rounds for Zone a la True Seeing?), or make them the same.

 

Dispel Magic/Remove Magic inconsistencies. In vanilla, Dispel Magic is the one that targets everyone, Remove Magic is the one that targets only enemies, and SR tried to merge them into all being Remove Magic while calling all of them Dispel Magic, but it's all messed up, since both (arcane) spells are now called Dispel Magic, you can still learn both (but their scrolls don't stack), and the original functions of both are still in effect (and the Cleric and innates versions of Dispel Magic don't all act the same). Remove Magic is friendlier to AI (who may have bad targeting that can accidentally lead to them to hitting themselves if they cast Dispel Magic instead of Remove Magic) - therefore, probably make Remove Magic the default, but actually do it correctly.

So, some digging through the forum suggests that Demi & kreso intended for ZoSA/GoW to be separate spells for druids/clerics, respectively, and for clerics to use the old-school Dispel Magic while the arcane version becomes Remove Magic.

 

I have to say I agree with Bartimaeus in questioning the wisdom of that. I'm loath to make any changes that are contrary to Demi's wishes, but I think the Dispel Magic thing in particular needs to be made consistent. I never saw anyone actually explain the rationale for making the divine version different. And I don't see the point - priests have access to Break Enchantment and can use it to remove allies' debuffs.

 

So, I'm inclined to simply have both the divine and arcane versions of the spell both act as Remove Magic, i.e. only affect enemies.

 

The duplicate spells issue is a bit complicated, but I think a solution might be:

- Overwrite sppr303.spl with spwi302, with conversion to divine type

- Use spwi302.spl exclusively for mages

- Add spwi323 to hidespl.2da

- Overwrite scrl1e.itm with scrla7.itm. Both scrolls will still be available in stores etc. but they will have the same resource in their 147 effects, meaning you cannot learn the spell twice as described above.

 

Leaving the question about what to do about Inquisitors. Frankly, I'm inclined to leave Inquisitors' Dispel as a vanilla Dispel effect, different from the spells that casters can use. The idea is, this warrior is perfectly wiling to cancel out magical effects on both the enemy and himself and his allies, because he is confident that he can prevail when such evil magicks are no longer in play. Conceptually approaching something like Antimagic Shell. This would also make it a unique kit ability, rather than "dur, this warrior can cast a wizard spell."

 

I don't particularly care about GoW/ZoSA. SR gives druids a cool new spell, I don't see that as a reason to mess with the vanilla cleric spell (except for the obvious one, that is sucks and nobody memorizes it). GoW is not great, but it's pretty darn good, and I'd be happy to overwrite ZoSA with it if people like that idea. Personally this doesn't affect me because my sphere system allocates divine spells. So I'm open to what others suggest.

Link to comment

Where I am so far:

 

 

the English ARCANE.TRA, which is already in UTF-8 format. It will produce garbage characters, since it's converted to UTF-8 a second time by the mod's HANDLE_CHARSET routine. The file should be converted to ANSI before installing the mod.

Fixed locally.

 

Un/Holy Word, among others such as Color Spray and possibly Dolorous Decay, should have its slow effect relegated to a secondary spell to properly work with the slow sectype (you don't want Haste canceling out confusion and blindness and such, right?).

Fixed locally. Omitted Dolorous Decay since that Slow effect represents physical impairment due to disease, not a magical Slow. And SPPR710 has no Slow effects.

Phantom Blade is missing its special effect.

Fixed locally.

"The spin203.spl issue is on line 2924 of /spell_rev/lib/kreso_eestatSR.tph. Should be changed from "spwi203" to "spin105".

Fixed locally.

Free Action, Minor Globe of Invulnerability, and Globe of Invulnerability cause CTDs for non-EE users as a result of invalid opcodes.

Fixed locally.

kreso_petrification.tph's is missing the "BUT_ONLY" flag in several places, causing many pointless overwrites.

Fixed locally.

Disintegrate has incorrect saving throw types for the last 2 headers (IIRC, it should be vs. breath, but it's vs. spell).

Fixed locally.

Tenser's Transformation issues that were discussed recently on the forums.

Fixed locally.

Divine Power has the same sort of problem regarding ApR as did Tenser's.

Fixed locally.

SPPR412 - Divine Power
It doesnt apply intended effects. I checked with NI, REMOVE Effects opcode (321) removes everyting spells changes.

Fixed locally. Also Mesthil's Acid Sheath.

Questions:

Spells not properly de-activated for the EEs (e.g. Protection from (Element), among other supposedly disabled spells - SR's hidespl.2da, in other words, is not working for the EEs...and I THINK needs updating for ToBEx games, too).

I looked at it, and it seems fine. Identical in format to hidespl.2da from the recent 2.5 patch. It has about 10 more entries than the one in BG2EE 2.5, but curiously, about 10 fewer entries than the one in IWDEE v2.5. If there are spells that should be hidden, but aren't, we'll need to identify them on a one-by-one basis to fix them.

IIRC, some of Enchanted Weapons' descriptions are messed up, Composite Long Bow +3 is not an option, and new to the EEs, Dart +3, Wakizashi +3, and Ninja-To +3 are not options.

Is it just me or should this spell simply be disabled in the EEs? The new 2.0 version is quite different, and very good, and not worth overwriting IMHO.

 

Btw whenever I write "fixed locally" above I mean the fix has been merged into my fork of SR - v4.15.3 as of this post - here:

https://github.com/subtledoctor/SpellRevisions

 

As I said, I'll wait until this has a bunch more fixes before merging back to the main branch. Next: tackling Dispel Magic, Insect spells, and kit abilities, plus these:

 

 

school errors:
1. Divine Power (SPPR412) should be Evocation casting graphics.
2. Negative Plane Protection (SPPR413) should be Alteration casting graphics.
3. Creeping Doom (SPPR717) should be Conjuration casting graphics.
4. Chaos Shield (SPWI222) and Improved Chaos Shield (SPWI723) should probably be Abjuration casting graphics, not Illusory (but maybe not, because Wild Magic be crazy? Interestingly, Nahal's is marked as Conjuration for both school and graphics).
5. Acid Fog (SPWI614) has the incorrect school (but correct exclusionary school and casting graphics, and I think the scroll is correct).
6. Mass Invisibility (SPWI721) has the incorrect school (but correct casting graphics and exclusionary school and scroll).
7. Incendiary Cloud (SPWI810) has the correct school, but incorrect casting graphics and exclusionary school (should be Enchanter, not Diviner). Furthermore, the scroll (SCRL9E) is restricting against Diviners instead of Enchanters.
Edited by subtledoctor
Link to comment

So, some digging through the forum suggests that Demi & kreso intended for ZoSA/GoW to be separate spells for druids/clerics, respectively, and for clerics to use the old-school Dispel Magic while the arcane version becomes Remove Magic.

 

I have to say I agree with Bartimaeus in questioning the wisdom of that. I'm loath to make any changes that are contrary to Demi's wishes, but I think the Dispel Magic thing in particular needs to be made consistent. I never saw anyone actually explain the rationale for making the divine version different. And I don't see the point - priests have access to Break Enchantment and can use it to remove allies' debuffs.

 

So, I'm inclined to simply have both the divine and arcane versions of the spell both act as Remove Magic, i.e. only affect enemies.

From this post, it seems Demi intended to change both the arcane and divine versions of Dispel Magic so that they function as Remove Magic (option 5).

 

The duplicate spells issue is a bit complicated, but I think a solution might be:

- Overwrite sppr303.spl with spwi302, with conversion to divine type

- Use spwi302.spl exclusively for mages

- Add spwi323 to hidespl.2da

- Overwrite scrl1e.itm with scrla7.itm. Both scrolls will still be available in stores etc. but they will have the same resource in their 147 effects, meaning you cannot learn the spell twice as described above.

If you're overwriting sppr303.spl at install-time, make sure to overwrite the description as well, since there are slight differences in the description formats between arcane and divine.

 

Leaving the question about what to do about Inquisitors. Frankly, I'm inclined to leave Inquisitors' Dispel as a vanilla Dispel effect, different from the spells that casters can use. The idea is, this warrior is perfectly wiling to cancel out magical effects on both the enemy and himself and his allies, because he is confident that he can prevail when such evil magicks are no longer in play. Conceptually approaching something like Antimagic Shell. This would also make it a unique kit ability, rather than "dur, this warrior can cast a wizard spell."

Yes, I would recommend leaving it alone. SR has not touched the Inquisitor's version up to this point, so no need to start now. In KR, they get a different version of the ability, anyway.

Link to comment

@ZoSA/GoW: The confusion here is why I opted to separate them completely and give them different effects. Either way works, but that's the way I've gone for the time being.

 

@Dispel/Remove Magic: My solution was a little different than yours (my mind is that as long as the two scrolls exist throughout the game, they should both be used, so why not have a Remove Magic that only affects enemies that has a smaller radius vs. a bigger radius Dispel Magic that affects everyone), but as long as it actually gets fixed, that's probably what's important.

 

@School errors: I completely forgot I reported those. I already fixed 'em for SRR, but I did not remember them for the bug list. Whoops, :p.

 

@Enchanted Weapon: Possibly. It cannot be used for non-EE games, though. I do not know how the "override weapon type" opcode (345) works, exactly - does it ONLY provide an enchantment bonus? (i.e. no THAC0/damage bonus?). If so, I would think SR's implementation would be preferred from a utilitarian point of view, ;).

 

@Hidespl: Are you sure? This is hidespl_bgee from b15, and this is hidespl from a clean install of BG2:EE 2.5.16.6.

 

(e): I've opted to heed subtledoctor's advice and restore the Spell Immunities for the AI. However, if you're of like-mindedness to myself, there is a little settings.ini option that should interest you, ;).

Edited by Bartimaeus
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...