Jump to content

SR Revised V1.3.900 (2022 August 8th)


Recommended Posts

Issue a pull request and we can release it as b16.

I think it's worth tackling the bit about some AoE spells not being blocked by Spell Deflection, first.

 

On that: Bartimeus has opined that Spell Deflection should not block AoE HLAs, because, I guess, they are HLA super spells. I don't really buy that. IMHO "blocks AoE magical effects" should mean "blocks AoE magical effects."

 

What I could buy is an argument that spells which bypass MR should also bypass Spell Deflection. I actually don't really buy this, but I am aware of my (possibly irrational) antipathy toward MR, which might be blinding me. So it might be worth a conversation if anyone wants to try to sell me on it. Ditto for HLAs.

 

Thanks, Subtledoctor. Question: what is the new Greater/Whirlwind stuff in spell_rev\lib\kreso_hla.tph for?

Dunno. I haven't touched that file as far as I know. Is it part of the "Revised Warrior HLAs" component? I have the very vaguest memory of Demi turning the Whirlwind HLAs into something more like a sustained Gust of Wind ability...

 

You wanna know what's amazing? I haven't played BG2 in so long that I did a test install of my SR build on it, and I was baffled and had no memory of that component existing. Was like "wtf I've never seen this before!" Serious question: why does that component exist? Shouldn't that stuff be in Kit Revisions? (But maybe the answer is "no" because KR is dead in the water...)

 

Also, your d5_set_spell_schools calls for "d5/dvscrlmap.2da", but d5/ is obviously not Spell Revisions.

The file is created in the code and then copied over as it is patched. My rough understanding is, creating it in the code involves the assumption of a virtual directory. The "d5/" directory doesn't actually (and need no actually" exist anywhere. That's the extent of my understanding - I parroted this from code in another mod.

 

Generally, I tried to use my own modder prefix where I added stuff. I don't think a mod needs to be monolithic in its use of prefixes; check out Refinements or Faiths & Powers for an example of multiple prefixes being used in a collaboration. Or, I assume, Tweaks Anthology. Not many things here bear the "d5" stamp, but for those that do, I want it to be clear that any issues arising related to those few items can be brought to my attention, and hopefully I can help make troubleshooting/fixing things easier.

Link to comment

 

Issue a pull request and we can release it as b16.

I think it's worth tackling the bit about some AoE spells not being blocked by Spell Deflection, first.

 

If it's not ready for testing, that's fine. If it is, we should release a new beta. We don't want people going to your repo and downloading your master branch.

 

 

Also, your d5_set_spell_schools calls for "d5/dvscrlmap.2da", but d5/ is obviously not Spell Revisions.

The file is created in the code and then copied over as it is patched. My rough understanding is, creating it in the code involves the assumption of a virtual directory. The "d5/" directory doesn't actually (and need no actually" exist anywhere. That's the extent of my understanding - I parroted this from code in another mod.

 

Yes, this should work fine. Most of the time, we call out those inlined files by naming them ~.../inlined/blahblah~ so when you see something that interacts with it, you can tell that it's not looking for something in the file system.
Link to comment

Ignore what I said about the HLA thing - I appear to have compared the wrong two versions of the file and got confused. As for why it's here...I believe it's actually a kreso addition in one of his last betas.

 

Spell Deflection is limited by level, though. Minor Spell Deflection, for example, only blocks up to...I think 4th level, right? That's the basis I'm going by, as I think of HLAs as level 10 spells, which is beyond the normal limits of standard protection spells like Spell Deflection. I wonder how P&P would handle epic spells - would they really be deflected the same as any other 9th level spells? Feels like there should be a difference between your standard Power Word Kill and a Hellball, no?

 

Got it. Since the code is borrowed from whatever this d5 is, we might as well keep it that way.

 

For the AoE SD problem, I was thinking we could just side-step the entire issue of the renaming function by separating the self/single-targeted stuff from the AoE stuff to begin with and just putting the AoE stuff in a dv-prefixed .spl, and then adding that dv-prefixed spell to the AoE SD list. This would only be necessary for the handful of spells that actually need it (Chain Lightning, Wail of the Banshee, Fireburst, and Gust of Wind, I believe - False Dawn and Repulsion still cannot be deflected, I don't think, because of how they send out a once per round spell pulse that would trigger Spell Deflection each time and waste huge amounts of charges).

Edited by Bartimaeus
Link to comment

It took just a couple of extra subspells and effects, but Fire Shield is now fixed for enemies to damage you but for you to not damage yourself.

 

notepad%2B%2B_2018-10-23_07-23-35.png

 

Rather extensively tested, too. I could've just reverted this back to vanilla behavior, but I do truly hate your own AoE spells accidentally triggering your own "on hit"-effects like Fire Shield (and especially Prismatic Mantle, which can straight up kill you if accidentally misfired). Now Mestil's...

 

Also, figured out an alternative implementation of Chain Lightning that will guarantee full damage even if the target is initially friendly. Yay.

Edited by Bartimaeus
Link to comment

If it's not ready for testing, that's fine. If it is, we should release a new beta. We don't want people going to your repo and downloading your master branch.

Sorry, I've only been hesitating because a) life; and b) this is all my own work, separate and apart from Mad_Mate's dev commits in his github account, which had reproduced all of kreso's changes between b14 and b15 and then, I believe, added just a few of my fixes so far. I can:

 

1) Just do a pull request from my monolithic rev 7 and you can sort out the changes and decide what you want to accept; or

 

2) Fork Mad_Mate's latest version, see where he's up to as far as adding fixes, and then add all of my fixes on top of that, in several commits, and then do a pull request with the result of that.

 

I'm honestly not savvy enough with Github to know whether (2) will be any better than (1) for your purposes. I can do (1) in a minute; (2) will take longer because it involves doing stuff, and: life.

Link to comment

I wonder how P&P would handle epic spells - would they really be deflected the same as any other 9th level spells? Feels like there should be a difference between your standard Power Word Kill and a Hellball, no?

3rd edition D&D (which I guess is the relevant baseline for NWN) offers Spell Immunity, which works on AoE but is gated by level ( maximum 8th level for the 8th-level version, maximum 9th level for an Epic version) and Spell Turning, which isn’t gated by level but only works on single-target spells. At least in the core rules, there’s no way to give yourself immunity to epic-level AoE.

Link to comment

So, in other words, get the relevant type of damage resistance if you want to resist epic level spells. Hmm. Which would you prefer for SCS?

Qua SCS author, I don't care: I work with the system I'm given. (And since I don't myself use SR, I don't have a dog in the fight.)

 

But if you want my advice as an author of AI, my guess, from a tactical point of view, is that making ordinary spell-deflection-type spells blocked by Spell Deflection - even by the lowest-level version - makes spell-protection spells a bit overpowered. I'd be inclined to advise either leaving HLA AoE unblocked by Spell Deflection, or else gating it so only the most powerful such spells - Spell Trap, say - actually protect from HLAs. (I haven't thought too much about the technical implementability of that, though.) But I'd also advise that it won't make a huge difference either way.

 

For what it's worth, SCS v32 will use single-target spells against Spell-Deflection-protected opponents provided (a) the spell is two levels or more below the maximum level the mage can cast (so level 9 mages will use level 1-3 single-target spells to use up Spell Deflection, but won't waste L4 or L5 spells); (b) the spell isn't breach. I don't bother checking Spell Deflection for AoE spells, partly because it's a bit fiddly since the NWN component is optional, mostly because with AoE spells you've got a reasonable chance of hitting other people (and in solo play, AoE spells are less valuable anyway so you might as well use them to burn through Spell Deflection). My feeling is that if HLAs were blocked by Spell Deflection, that would probably lead to slightly silly behavior, so if you want that as a tie-break, it's probably better to make HLAs not blocked by Spell Deflection. (Especially as I'm not likely to further update SCS to reflect SR updates until there's an official v4.) But I don't think it's a big deal.

Link to comment

Remember that Spell Trap uses the Deflection opcode now. I surely think Spell Trap should absorb an HLA spell. (If you play with the rule "Deflection/Trap blocks AoE spells" and you play with Spell Trap blocking targeted HLAs like Implosion, why would it not also block a Dragon's Breath?)

 

Exempting HLAs from the AOE code is not a good solution IMHO. Rather, if you want thrm to bypass Deflections, simply set their power level to 10. Or, set it to 9, and see Wail of the Banshee to 8 (I think that's the only 9th-level AoE spell...?) and set lower-level deflections to block 8th-level spells max, while allowing Spell Trap to block 9th-level spells. (Or not.)

Link to comment

No problem for me, since basilisks have been completely replaced with greater wolfweres since basilisks were just a straight up...inoptimal choice for a variety of reasons...though I think the replacement GWs are a touch weak right now. And subtledoctor opted to disable MS9 for players for non-Revised SR entirely instead, although I wonder if enemies will still be creating basilisks via SCS still using that spell, hidden as it is from players.

 

HLAs: I actually was thinking of other HLAs not being blocked as well - however, since other HLAs are currently blocked, it really doesn't make sense that the AoE ones shouldn't be as well. The general discussion of whether HLAs should be blocked at all is a discussion that can definitely be had, but is moot to the current problem, since the majority already are.

 

Thanks for the information, DavidW. Worst case scenario, it's pretty easy to change them to 0 if necessary.

Edited by Bartimaeus
Link to comment

Subtledoctor: When I try to install your branch, it throws up this error from the main component on a ToBEx game:

 

[spell_rev/lib/d5_set_spell_schools.tpa] PARSE ERROR at line 53 column 8-20

Near Text: OUTER_SNPRINT

GLR parse error

 

[spell_rev/lib/d5_set_spell_schools.tpa] ERROR at line 53 column 8-20

Near Text: OUTER_SNPRINT

Parsing.Parse_error

ERROR: parsing [spell_rev/lib/d5_set_spell_schools.tpa]: Parsing.Parse_error

Error Uninstalling [sPELL_REV/SPELL_REV.TP2] component 0:

Parsing.Parse_error

Link to comment

I was not - I was using 24000, looks like updating to 24600 fixed it.

 

Dragon's Breath is another one of those that has problems being in the AoE SD component, although like Wail of the Banshee, only cosmetically. Dragon's Breath graphic will not play correctly upon casting: instead, it will wait until the fireball has already exploded, then create a duplicate of the graphic for however many people are hit. See here:

 

https://dl.dropboxusercontent.com/s/x10z7g8kyfx74vp/2018-10-24_08-25-30.mp4

 

So another case of needing a separate subspell for the AoE effects.

 

(P.S. I was chunked immediately after the ending of this video. :p)

 

(edit): Earthquake seems to have quite the undocumented saving throw penalty in SR. Immediately upon casting Earthquake, those within its area of effect must save vs. death at a -6 penalty or receive a -20 penalty to saving throws vs. breath for 2 rounds. Why is this significant? Exactly two rounds later, you must save vs. breath at a -4 penalty to avoid dying 25% of the time...only, with that -20 breath penalty, that's a little harder than it sounds if you land on that 25%. Seems a bit crazy to me.

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...