• Please note: In an effort to ensure that all of our users feel welcome on our forums, we’ve updated our forum rules. You can review the updated rules here: http://forums.wolflair.com/showthread.php?t=5528.

    If a fellow Community member is not following the forum rules, please report the post by clicking the Report button (the red yield sign on the left) located on every post. This will notify the moderators directly. If you have any questions about these new rules, please contact support@wolflair.com.

    - The Lone Wolf Development Team

Modifying Divine Soul Sorcerer script for Theurgy Wizard

Hi,

I noticed the Theurgy Wizard doesn't have the Cleric spells listed aside from the chosen domain when adding spells to the spell book.

I found this script in the XGtE data packages that combines the two spell lists and makes them work with that archetype for the Sorcerer:
doneif (tagis[Helper.ShowSpec] = 0)
doneif (tagis[Helper.Disable] <> 0)

~these vars will hold the tag expressions for spells and cantrips
~ needed to pull cleric spells into the list as well as sorceror

var cantrip as string
var spell as string
var known as string

cantrip = hero.childfound[cHelpSor].field[cCnKnoExpr].text
spell = hero.childfound[cHelpSor].field[cSpKnoExpr].text
known = hero.childfound[cHelpSor].field[cSpellExpr].text

~ debug "Cantrip: " & cantrip
~ debug "Spell: " & spell
~ debug "Known Spells: " & known

~ now we modify the expression to also include the cleric spells

cantrip = replace(cantrip, "sClass.cHelpSor", "( sClass.cHelpSor | sClass.cHelpClr )", 1)
cantrip = replace(cantrip, "(sClassNot.cHelpSor)", "( sClassNot.cHelpSor | sClassNot.cHelpClr )", 1)

spell = replace(spell, "sClass.cHelpSor", "( sClass.cHelpSor | sClass.cHelpClr )", 1)
spell = replace(spell, "(sClassNot.cHelpSor)", "( sClassNot.cHelpSor | sClassNot.cHelpClr )", 1)

known = replace(known, "sClass.cHelpSor", "( sClass.cHelpSor | sClass.cHelpClr )", 1)
known = replace(known, "(sClassNot.cHelpSor)", "( sClassNot.cHelpSor | sClassNot.cHelpClr )", 1)

~ debug "Cantrip: " & cantrip
~ debug "Spell: " & spell
~ debug "Known Spells: " & known

~finally, we replace the expressions with the new ones

hero.childfound[cHelpSor].field[cCnKnoExpr].text = cantrip
hero.childfound[cHelpSor].field[cSpKnoExpr].text = spell
hero.childfound[cHelpSor].field[cSpellExpr].text = known
hero.childfound[cHelpSor].field[cSplBkExpr].text = known

I'm trying to figure out how to transform this script to work with the Theurgy archetype for the Wizard, but given that the Wizard uses a spellbook, I'm not sure where to look for guidance on that.

For example, I can see the cSplBkExpr is used in that script, which is as it was for the Divine Soul Sorcerer even though it doesn't use a Spellbook, but Copy/pasting and swapping cHelpSor for cHelpWiz doesn't work either.

I had expected some script to exist to do this after you obtain all the Cleric Domain specific spells in the Spellbook, but it seems there isn't one.
 
It's actually more complicated than that given that the ability to add any cleric spell is only supposed to happen *after* you learn all of your domain spells.

I'm not sure anyone would want to tackle that logic, because the script to adding the domain spells is already complicated and still only covers the domains in the PHB - it doesn't include any of the other domains that have come after that or any from the 3rd party materials.

I believe there is an adjustment "Add Spell Type to Class" that you can use on your character as a workaround. Add Cleric to Wizard and your spellbook will have all the spells from cleric available.

You can also try to copy the scripting in this adjustment.
 
Back
Top