subtledoctor Posted March 11, 2021 Share Posted March 11, 2021 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. Quote Link to comment
subtledoctor Posted March 11, 2021 Share Posted March 11, 2021 @DavidNYC 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. Quote Link to comment
subtledoctor Posted March 11, 2021 Share Posted March 11, 2021 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. Quote Link to comment
morpheus562 Posted March 11, 2021 Share Posted March 11, 2021 (edited) 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 March 11, 2021 by morpheus562 Quote Link to comment
Bartimaeus Posted March 11, 2021 Author Share Posted March 11, 2021 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! ) 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, . 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? Quote Link to comment
morpheus562 Posted March 11, 2021 Share Posted March 11, 2021 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, . 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. Quote Link to comment
morpheus562 Posted March 11, 2021 Share Posted March 11, 2021 @Bartimaeus Are spell descriptions accurate as far as what takes down Dispel Screen? If I launch a spell thrust, will it take it down? Also, do Spell Deflections block friendly spells or just enemy spells? Quote Link to comment
Bartimaeus Posted March 11, 2021 Author Share Posted March 11, 2021 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. Quote Link to comment
morpheus562 Posted March 11, 2021 Share Posted March 11, 2021 (edited) 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 March 11, 2021 by morpheus562 Quote Link to comment
DavidNYC Posted March 11, 2021 Share Posted March 11, 2021 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. Quote Link to comment
DavidNYC Posted March 12, 2021 Share Posted March 12, 2021 (edited) 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 March 12, 2021 by DavidNYC Quote Link to comment
subtledoctor Posted March 12, 2021 Share Posted March 12, 2021 3 hours ago, DavidNYC said: fyi, I tweak my game to allow friendly, single-target spells through Spell Deflection by setting their power to 0. Yeah, me too, it’s in my Random Tweaks mod (around line 400) Quote Link to comment
Bartimaeus Posted March 12, 2021 Author Share Posted March 12, 2021 (edited) 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 March 12, 2021 by Bartimaeus Quote Link to comment
morpheus562 Posted March 12, 2021 Share Posted March 12, 2021 (edited) 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 March 12, 2021 by morpheus562 Quote Link to comment
Bartimaeus Posted March 12, 2021 Author Share Posted March 12, 2021 (edited) Sorry, I had initially missed that part and ninja-ed an edit in for the previous post! Edited March 12, 2021 by Bartimaeus Quote Link to comment
Recommended Posts
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.