Jump to content

Caster kits with alternative spellcasting rules


Recommended Posts

Success!  Sort of.  A bit.  I tried to keep tabs on your INT score by assigning it to the Tracking stat; and have a repeating effect use opcode 326 to filter for your tracking stat and then your INT stat, and every time it found a discrepancy it would 1) wipe out your INT-based bonus slots; 2) apply new ones based on your new INT score; and 3) set the Tracking stat to equal your new INT score.  This way it can keep tabs on your score and adjust your spell slots as often as once every 6 seconds; but there would be very little processing overhead because most of the time your INT and tracking scores would match, so nothing would happen.

The method is sound, I think, but I could not for the life of me get it working.

What I have now is s simplified version that simply checks your INT every time you have an 8-hour rest, and adjust your bonus spell slots as appropriate.  This once per day approach sort of makes sense; after all your spellcasting slots measure how many times you can cast spells per day; what use is it to get a bonus spell slot when you drink a Potion of Genius, only to have it disappear an hour later and leave you with the same overall number of spells to cast that day? 

I might put a bit more work into this: I could patch every .SPL file that changes your INT score to do this adjustment once, at the time your score changes.  But it would not make the reverse adjustment until your rest.  So e.g. drinking a Potion of Genius would give you some extra spell slots that would last the whole day; I don't know if that would make them "OP" or "finally useful."  Consider the alternative: if your INT is damaged by a Mind Flayer, you would lose spellcasting slots immediately, and you could not regain them until the next day, even if you cured the INT drain.  That's not so nice!

It might be worth considering how this sort of thing works for other classes.  With TnB's "Ability Score-based Bonus Spell Slots," you get an extra spell slot as soon as your INT or CHA stat increases... but you have to memorize something in that slot, which means you have to rest before you can use it.  So maybe I should leave this as it is now, in which bonus spell slots for high INT don't appear until after you rest. 

Link to comment
1 hour ago, Endarire said:

What’s the closest method to 2E RAW?

In 2E wizards do not get bonus spells slots for high INT, period, end of story. Also, 2E has no kit or class like this, casting prepared spells interchangeably and thus interacting differently with any (purely hypothetical) stat-based bonus spells than a normal wizard (hypothetically) does. We are far, far away from standard 2E here. 

The main concern is, if someone plays with Tome & Blood’s Stat-Based Bonus Spells, then wizards with high INT can cast 7 low-level spells per day instead of 5; sorcerers can spontaneously cast 8 low-level spells per day instead of 6. If the Arcanist does not have a similar bump for high stats and is limited to only 5 spells per day, then this kit is suddenly at quite a disadvantage. 

Right now I’m leaning toward matching TnB’s wizard bonus slots. That would give you a 2-spell bump for spells up to 6th-level and 1 bonus 7th-level spell (albeit at 25 INT). So 7 low-level casting slots. This bonus would be  only for casting slots - high INT would not allow you to memorize more spells. (I could very, very easily apply INT bonuses to memorization slots, giving you a wider variety of spells to cast at any moment, and not apply bonuses to how many times you can cast spells each day. That would be a useful bonus... but I think players really love having tons of casting slots. So all of this work I’ve done (and whined about) has been geared toward applying the bonus to extra casts per day instead of memorized spells.)

Having 7 casts per level would make the Arcanist, just as it is without any stat-based bonuses, strictly superior to mages. So you could argue in favor of limiting them to 1 fewer casting slot - 4 vs. 5 without stat bonuses, and/or 6 vs. 7 with stat bonuses. But given that Arcanists will get less benefit from Rings of Wizardry and the like (see earlier posts), I think giving them the full +2 bonus is okay. 

As a reminder, the TnB bonus spells look like this:

  • INT 13: +1 1st-level spell
  • INT 14: +2 1st-level spells
  • INT 15: +1 2nd-level spell
  • INT 16: +2 2nd-level spells
  • INT 17: +1 3rd-level spell
  • INT 18: +2 3rd-level spells
  • INT 19: +1 4th-level spell
  • INT 20: +2 4th-level spells
  • INT 21: +1 5th-level spell
  • INT 22: +2 5th-level spells
  • INT 23: +1 6th-level spell
  • INT 24: +2 6th-level spells
  • INT 25: +1 7th-level spell

Realistically, I don’t know if it’s possible to reach 25 INT. Most likely you’ll be looking at +2 bonus spells of ~1st- through 5th-level. 

Final point: everything conveyed here with regard to Arcanists and stat-based bonuses/bonus slot items is going to apply equally to the Revised Bards in Might & Guile. 

Edited by subtledoctor
Link to comment

Okay, I've uploaded version 0.3.  This adds support for ability score-based bonus spell slots, which will appear the next day as discussed above. 

It also moves much of the semi-spontaneous hybrid spellcasting system to portable functions, which are now shared by Might & Guile.

Finally, a new feature: the mod will automatically detect whether the kit being installed will share an IDS value with the Abjurer, Conjurer, or Diviner mage kits; if so, a blank dummy kit will be installed in the trouble spot, and then the Arcanist will be installed in the next (safe) position.  This function is also portable; the two relevant functions are here.  The .tpa file containing them simply needs to be included (I do it in the ALWAYS block), and then before installing the kit simply type

LAF check_kit_conflict END

Easy-peasy.  I'm pretty sure the problem only affects arcane caster kits, but realistically, to be on the completely safe side this should probably be used in every kit mod out there.

Link to comment

@subtledoctor
Greetings!

May we get an option in this mod to have Edwin be an Arcanist?  I imagined Edwin to be sly enough and the Red Wizards to be too blinded by pride or simply indifferent to object to someone in their ranks who wasn't technically a Wizard but who was so close in function that it didn't matter.  We also learned in BGII that Edwin was on bad terms with the Red Wizards for not paying his tithes:  Perhaps he thought that he could escape payment because he wasn't technically a Wizard by profession, but was merely an honorary Red Wizard by title.

Link to comment

I opened a bug in Github. with mana sorcerer , its seems that once you get higher levels and have many effects running on you , there is ~6 seconds delay after each spell cast - which I think is related to D5mplz running . in early BG1 / SOD it's ~2 seconds delay , but later in BG2/TOB ~6 after each spell cast makes it almost unplayable . one last observation . it might also amplified by the D5_STATS eff constant evaluating ability changes from Might and guile .

 

Link to comment

What kind of hardware are you on? On my ancient, anemic iPad (A7 processor, 1GB RAM), there is a ~20-second freeze when d5mplz runs the first time, but then it seems to get cached in memory or something because it is instantaneous every time after that. (Until the app has to restart, then the freeze happens once again.)

On my 2017 Core i5 laptop with 8GB RAM, I’ve never seen the freeze.

Link to comment

I'm running the game on very strong desktop (core I7 , 32Gig ram ,etc..) . d5mplz  does not seems to be cached . the two changes I can think might be related are:

1.for some reason the D5_stats does not get applied to my main char on a new game . I have to manually copy it from anther char using shadow keeper .

2.I modified the QD_SPLsrcknw.2da to have more known spell .

I really like the spell point approch , to the point mana_sorcerer become my go to mod . I cant think about going back to spell slot  : ) . 

is there anything you think I can do (bg2.ini ? ) to make sure the script is cached ? 

 

Link to comment

It's not a script, it's just a spell.  That spell happens to have several hundred effects (I think about 600), which is why it can cause a freeze while it processes.  But it still shouldn't be that troublesome.  Your computer (presumably with Windows) is much more powerful than my (MacOS) laptop; so I can't think why that should give you trouble, unless there are OS-level differences in how the game engine handles spells? 

In any event, it is by design and there's not much to be done about it.  That is the underlying method that allows spontaneous casting to work.  There are no shortcuts I can take... :(

Link to comment

Thanks I appreciate the response . I'll try to uninstall the mana sorcerer individual components and install tome & blood to see if there any difference . one last question , this mod works perfectly (~0.5 second delay) until mid - end of bg2 where the delay increase tenfold . I know you usually play bg1 and was wondering if you or anyone else were able to play with mana sorcerer this late in the game . just trying to understand if the is inherent issue or should I go the rabbit hole of figuring out what effect on my char are contributing to the increase in slow down

 

Link to comment

Don't go down the rabbit hole, I don't think.  Other effects should not be making this spell freeze longer.  Like, the repeating .eff from SoB stat bonuses should not have any effect on how long the engine takes to process d5mplz.spl.  They are two separate things occurring in the engine; the former happens instantaneously and should not change the latter.  There may be other things going on - if you are playing large battles with lots of spells flying, and those spells have lots of effects, then each one can separately cause a short freeze that, taken all together, might make the game appear to be choppy.  But the effects of all those spells are not actually combining; each one is only creating a very small bit of chop.  (This is different from scripts; with spells, the game slows down its own framerate to accommodate everything the spells do; scripts OTOH run at the same speed no matter what, and if too much scripted stuff needs to happen in any given second, the game will blow by it and simply fail to process some of the script.

So I'm not totally sure if that one spell is getting worse later in the game; most of its ~600 effects don't do anything, the only ones that actually need to be processed are the ones for the spells you have actually learned.  If you have learned a lot of spells by the late game, then maybe it would be substantially slower at that point?  You said you altered splsrckn.2da... do you have more known spells than a standard sorcerer?  If you have a ton of known spells, that could slow it down.

And reinstalling with the new version won't change this.  Like I said, processing all those effects is how the mod is designed. 

EDIT - okay, I just did a little test.  I created a Mana Sorcerer and leveled up to 17 with the console.  I had 5/5/4/4/4/3/3/2 known spells, 30 total.  With 30 known spells, there is about a 1/4-second delay when I cast anything.  Just enough to be noticeable.  The normal total max known spells is 5 per spell level - so 45 total. That might make the delay a bit longer, but hopefully not too much.  (I didn't level up to 30 to try.)  If you have 60 or 80 known spells... then I suppose it could start to have some real effect. 

I'll think about whether I can improve the efficiency here; I didn't realize it was that noticeable even on good hardware.  (I had been planning to make Kelsey into a Mana Sorcerer in my current game on my super-old-and-busted iPad... sounds like that isn't a very good idea.) 

Link to comment
Just now, subtledoctor said:

Don't go down the rabbit hole, I don't think.  Other effects should not be making this spell freeze longer.  Like, the repeating .eff from SoB stat bonuses should not have any effect on how long the engine takes to process d5mplz.spl.  They are two separate things occurring in the engine; the former happens instantaneously and should not change the latter.  There may be other things going on - if you are playing large battles with lots of spells flying, and those spells have lots of effects, then each one can separately cause a short freeze that, taken all together, might make the game appear to be choppy.  But the effects of all those spells are not actually combining; each one is only creating a very small bit of chop.  (This is different from scripts; with spells, the game slows down its own framerate to accommodate everything the spells do; scripts OTOH run at the same speed no matter what, and if too much scripted stuff needs to happen in any given second, the game will blow by it and simply fail to process some of the script.

So I'm not totally sure if that one spell is getting worse later in the game; most of its ~600 effects don't do anything, the only ones that actually need to be processed are the ones for the spells you have actually learned.  If you have learned a lot of spells by the late game, then maybe it would be substantially slower at that point?  You said you altered splsrckn.2da... do you have more known spells than a standard sorcerer?  If you have a ton of known spells, that could slow it down.

And reinstalling with the new version won't change this.  Like I said, processing all those effects is how the mod is designed. 

EDIT - okay, I just did a little test.  I created a Mana Sorcerer and leveled up to 17 with the console.  I had 5/5/4/4/4/3/3/2 known spells, 30 total.  With 30 known spells, there is about a 1/4-second delay when I cast anything.  Just enough to be noticeable.  The normal total max known spells is 5 per spell level - so 45 total. That might make the delay a bit longer, but hopefully not too much.  (I didn't level up to 30 to try.)  If you have 60 or 80 known spells... then I suppose it could start to have some real effect. 

I'll think about whether I can improve the efficiency here; I didn't realize it was that noticeable even on good hardware.  (I had been planning to make Kelsey into a Mana Sorcerer in my current game on my super-old-and-busted iPad... sounds like that isn't a very good idea.) 

Thanks for bringing this to my attention, at any rate.  This has been helpful.

 

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