Jump to content

SR Revised V1.3.900 (2022 August 8th)


Recommended Posts

22 minutes ago, morpheus562 said:

CheckSpellState(LastSeenBy(Myself),PROTECTION_FROM_MAGICAL_WEAPONS)

In my SR+SCS install, PfMW does not set this spellstate. It has 328 effects setting

  • PRIORITY_BREACH
  • PRIORITY_DISPEL
  • BUFF_PRO_WEAPONS

Maybe your script is not seeing any conditions valid for casting Breach; but the parts of your script checking for valid attack targets are seeing that Kahrk is protected; so they don't Breach and they don't attack either.

In my BGEE install with only SCS v33, PfMW has 328 effects setting both "PROTECTION_FROM_MAGICAL_WEAPONS" and "BUFF_PRO_WEAPONS."

In my BG2EE install with only SR 4b18, PfMW only sets "BUFF_PRO_WEAPONS." Good thing I looked at others, because PfNW also sets "BUFF_PRO_WEAPONS," as well as "PROTECTION_FROM_NORMAL_WEAPONS."

In my completely unmodded SoD game, PfNW sets both "BUFF_PRO_WEAPONS," as well as "PROTECTION_FROM_NORMAL_WEAPONS;" PfMW only sets BUFF_PRO_WEAPONS."

So it seems that the general rule is, vanilla PfMW only sets the "BUFF_PRO_WEAPONS" spellstate; SR does not change this. SCS adds the "PROTECTION_FROM_MAGICAL_WEAPONS" spellstate, but only if it does not detect SR.

So the takeaway is, your script should check for a combination of

CheckSpellState(LastSeenBy(Myself),BUFF_PRO_WEAPONS)
!CheckSpellState(LastSeenBy(Myself),PROTECTION_FROM_NORMAL_WEAPONS)

...and then it should work across all combinations of vanilla/SR/SCS.

Link to comment

Finally since I'm here thinking about a stuff and adding stuff to my Random Tweaks mod, @Bartimaeus have you had any thoughts about Spirit Ward, the shaman-only spell? It currently just seems like a worse ProEvil... desperately in need of being more useful. -2 AC vs. fey/elementals/spectral undead is awfully limited... why only spectral undead? And what do fey and elementals have to do with it (in this cosmology)? 

"Spirit Ward" is pretty evocative, I feel like it should be more interesting spell.

Link to comment
54 minutes ago, subtledoctor said:

In my SR+SCS install, PfMW does not set this spellstate. It has 328 effects setting

  • PRIORITY_BREACH
  • PRIORITY_DISPEL
  • BUFF_PRO_WEAPONS

Maybe your script is not seeing any conditions valid for casting Breach; but the parts of your script checking for valid attack targets are seeing that Kahrk is protected; so they don't Breach and they don't attack either.

In my BGEE install with only SCS v33, PfMW has 328 effects setting both "PROTECTION_FROM_MAGICAL_WEAPONS" and "BUFF_PRO_WEAPONS."

In my BG2EE install with only SR 4b18, PfMW only sets "BUFF_PRO_WEAPONS." Good thing I looked at others, because PfNW also sets "BUFF_PRO_WEAPONS," as well as "PROTECTION_FROM_NORMAL_WEAPONS."

In my completely unmodded SoD game, PfNW sets both "BUFF_PRO_WEAPONS," as well as "PROTECTION_FROM_NORMAL_WEAPONS;" PfMW only sets BUFF_PRO_WEAPONS."

So it seems that the general rule is, vanilla PfMW only sets the "BUFF_PRO_WEAPONS" spellstate; SR does not change this. SCS adds the "PROTECTION_FROM_MAGICAL_WEAPONS" spellstate, but only if it does not detect SR.

So the takeaway is, your script should check for a combination of



CheckSpellState(LastSeenBy(Myself),BUFF_PRO_WEAPONS)
!CheckSpellState(LastSeenBy(Myself),PROTECTION_FROM_NORMAL_WEAPONS)

...and then it should work across all combinations of vanilla/SR/SCS.

That was the missing key! I added in the spellstate for PfMW and it works appropriately now. Time to test with a cleaner install of everything, but it looks promising. Prismatic Mantle and Absolute Immunity also had their respective spellstates removed. I will go back through with my ai scripts mod and reset these appropriately so they can be tracked as before.

Edited by morpheus562
Link to comment
4 hours ago, subtledoctor said:

1) Why did Kahrk cast Nondetection if he was not invisible? That makes little sense... though I guess ND is a long-duration buff, so SCS is likely to have it pre-cast, and if he decides to go invisible during the fight it would be helpful. But as things stand, it is of no value.  (Though, with Tome & Blood installed, Nondetection will actually protect his Mirror Images from being removed. So it's almost like SCS works better with my mod than without! :O )

Eh, pretty sure that happens with SRR's Non-Detection, too, since SRR's Non-Detection protects (and has always protected) against True Seeing, Oracle, and Detect Illusion, :p.

So...if you use the CTRL+R cheat on Kahrk while your characters are doing nothing (CTRL+R heals but also strips effects such as buffs), do they immediately start casting at him?

Link to comment
46 minutes ago, Bartimaeus said:

Eh, pretty sure that happens with SRR's Non-Detection, too, since SRR's Non-Detection protects (and has always protected) against True Seeing, Oracle, and Detect Illusion, :p.

So...if you use the CTRL+R cheat on Kahrk while your characters are doing nothing (CTRL+R heals but also strips effects such as buffs), do they immediately start casting at him?

Issue seems to be that the normal spellstate tracking for PfMW, Prismatic Mantle, and Absolute Immunity was not being added in an SCS + SR(R) install, so normal script tracking wasn't working. It does get added (or not removed) in a standard SCS v33 install, but for some reason is not present when SR(R) joins the party. Either way, my scripts will install the appropriate spell tracking to ensure it all works.

Link to comment

They are accurate, but what you stated is not. For example, arcane.tra (which sets all the descriptions for spells) lists the following spells that Spell Thrust dispels:

"The spell protection spells dispelled by Spell Thrust are: Minor Spell Deflection, Non-Detection, Minor Globe of Invulnerability, Spell Deflection, and Spell Shield."

No mention of Dispelling Screen. I recall that I once upon a time reported that SCS was erroneously re-writing anti-magic spell descriptions to state they dispelled Dispelling Screen, but I guess it has not been fixed yet. Odd: I thought I'd also done a workaround to prevent it from happening specifically for SRR. One should also note that Spell Thrust never works on friendlies.

As for spells in general vs. spell deflection, yes, friendly spells do trigger the spell deflection - EXCEPT for self-cast spells. Spell deflection will not work if you cast a Fireball at yourself (or anything else), but if you have one your other spellcasters cast it at you, then it should.

Link to comment
1 hour ago, Bartimaeus said:

They are accurate, but what you stated is not. For example, arcane.tra (which sets all the descriptions for spells) lists the following spells that Spell Thrust dispels:

"The spell protection spells dispelled by Spell Thrust are: Minor Spell Deflection, Non-Detection, Minor Globe of Invulnerability, Spell Deflection, and Spell Shield."

No mention of Dispelling Screen. I recall that I once upon a time reported that SCS was erroneously re-writing anti-magic spell descriptions to state they dispelled Dispelling Screen, but I guess it has not been fixed yet. Odd: I thought I'd also done a workaround to prevent it from happening specifically for SRR. One should also note that Spell Thrust never works on friendlies.

As for spells in general vs. spell deflection, yes, friendly spells do trigger the spell deflection - EXCEPT for self-cast spells. Spell deflection will not work if you cast a Fireball at yourself (or anything else), but if you have one your other spellcasters cast it at you, then it should.

Just checked my spellbook, and it is showing as you describe above. I was looking at the online reference for SR. For spell deflection, does it block beneficial friendly spells (i.e. bless, aid, etc.)? Also, does SCS patch Breach to be able to target liches and raksasha or is that skipped due to SCS

Edited by morpheus562
Link to comment
7 hours ago, subtledoctor said:

it occurs to me these .BAM files should really have modder prefixes if they are being copied into the game.  If you don't have a reserved prefix and don't want to bother, I'm happy to use mine... your call.

@subtledoctorIt doesn't really matter, but I use "dk" even if you just want to keep track of my 'originals' with a consistent id before using something else in the end.

Link to comment
3 hours ago, Bartimaeus said:

As for spells in general vs. spell deflection, yes, friendly spells do trigger the spell deflection - EXCEPT for self-cast spells. Spell deflection will not work if you cast a Fireball at yourself (or anything else), but if you have one your other spellcasters cast it at you, then it should.

I saw these posts immediately above mine and, fyi, I tweak my game to allow friendly, single-target spells through Spell Deflection by setting their power to 0.

Spoiler


ACTION_FOR_EACH file IN
      sppr107 // pfEvil
     sppr103 sppr215 sppr315 sppr401 // cleric cure
     sppr117 sppr217 sppr323 sppr419 sppr524 // druid restoration
     sppr201 // aid
     sppr202 // barkskin
     sppr210 // resist elements
     sppr307 spwi410 // break enchantment
     sppr403 // free action
     sppr404 // neutralize poison
     sppr409 // death ward
     sppr413 // negative plane protection
     sppr417 sppr713 // restorations
     sppr507 // champion strength
     sppr520 sppr521 sppr522 sppr523// PfElemental (new priest) [and deprecated priest (fire, cold, elec, acid)]
     sppr607 // heal
     sppr619 sppr711 // regeneration (druid & cleric)
     ohtyr1 // Exaltation/Acclamation (priest of tyr)
    
     // do NOT do non-detection, MAGICATTACK need correct power
     // spwi310 // non-detection

     spwi206 // invisibility    
     spwi311 // pfMissiles (COMBATPROTECTIONS, ok power 0)
     spwi405 // improved invisibility    
     spwi414 // spirit armor
     spwi426 // PfElementalEnergy
     spwi319 spwi320 spwi512 spwi517 // PfElementalEnergy subspells (fire, cold, elec, acid)
     spwi606 // pfMagicEnergy
     spwi625 // stone to flesh
     spwi802 // mind blank (SPECIFICPROTECTIONS, ok power 0)
    
     /* Explicitly don't include spells like Otiluke spwi413 cast against allies & enemies.
             Must handle power individually in the spell.
             Don't need spells cast only on self, including potion spells like potn10.spl (invis) */

BEGIN
    COPY_EXISTING_REGEXP GLOB ~%file%.spl~ ~override~
        LPF ALTER_EFFECT INT_VAR power=0 END
    BUT_ONLY
END

 

Edited by DavidNYC
Link to comment
7 hours ago, morpheus562 said:

Just checked my spellbook, and it is showing as you describe above. I was looking at the online reference for SR. For spell deflection, does it block beneficial friendly spells (i.e. bless, aid, etc.)? Also, does SCS patch Breach to be able to target liches and raksasha or is that skipped due to SCS

Beneficial area of effect spells such as Bless: no. Single-target benificial spells such as Aid: yes. The reason for this inconsistency is technical (although it could be fixed so that beneficial AoE spells are caught for Spell Deflection too...but why bother when literally nobody wants that?). I strongly recommend @subtledoctor's component if you want to change it so ALL beneficial spells go through: I prefer this approach as well, but have kept the default behavior of SR.

I believe SCS' Breach change applies even if you have SR installed. I could be wrong, but I believe SRR also replicates that change anyways even if it does not...but I don't remember for absolute certain.

Edited by Bartimaeus
Link to comment
4 minutes ago, Bartimaeus said:

Beneficial area of effect spells such as Bless: no. Single-target benificial spells such as Aid: yes. The reason for this inconsistency is technical (although it could be fixed so that beneficial AoE spells are caught for Spell Deflection too...but why bother when literally nobody wants that?). I strongly recommend @subtledoctor's component if you want to change it so ALL beneficial spells go through: I prefer this approach as well, but have kept the default behavior of SR.

I think I'll write the scripts to default to encompass the most users, but I do like what @subtledoctor is doing. Does the SCS breach component get installed with spell revisions? I'll have to tweak the scripts one way or another if liches/raksasha are or aren't immune to it.

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