I have never gotten an NPC to cast a spell unless it was in their spell list. Also, that should be NPCRef.cast 0Heal Player. You should also rename 0Heal and 0goldbonus to something that doesn't start with a number. When an item or spell starts with a number in a script, the game thinks it's supposed to look for a FormID. Since 0Heal and 0goldbonus are definitely not FormIDs, the game tends not to do anything with them. Rename them to something like AHeal and Agoldbonus. Also, what exactly is 0goldbonus? Is it a Leveled List, Miscellaneous Object, custom item or something else?
Thank you! That makes sense, considering some of the trouble I've been having. I usually use the initials of the mod as a prefix to an ID, but in this case, I used 0 because I had so many things going on, I wanted them to be easily accessible. Guess that won't work so well.
Yes, 0goldbonus is a levelled list of different gold amounts to simulate a random quantity.
Oh, I got the scripts for the gold to work. I just cut out all the IF statementts and made it non-dependant on the PC's fame/infamy score. Not what I wanted, but I think the Resulting Script box of the Topic tab won't take long scripts. If I just shorten it to a couple lines like,
player.additem 0goldbonus 1
ModPCFame 1
Then it works suitably enough. Now I will change the spell names, add it to the spell lists, and use NPCRef.cast SpellID Player and see how that works.
Thank you both so much for your help. I'll let you know here how it turns out. Hopefully, it'll work well.