player.removespell 00012fcdand I'm met with the response
Spell 'flames' not found in Prisoner. I can double-check that that's the correct ID, by typing
player.hasspell 00012fcdwhich gets me
Prisoner HasSpell >> 1.00Incredibly frustrating.
I've tried writing a script to do the same thing, and put it on an activator, but it just fails silently. Is there a way to programmatically enumerate all the spells known by an actor?
Another test: Created an esm that adds Sparks to the player actor. With that enabled,
player.removespell 0002dd2agives the same error as with attempting to remove Flames and Healing. Attempting to remove a spell from an NPC who starts with that spell also produces the same error message. However, giving that NPC a spell with addspell (just to make a change to the NPC, so that they're sure to be added to your save file as being changed), creating an esp that removes a different spell from that NPC, and loading up the save will cause that NPC to no longer have the spell you removed with the esp, but they still have the spell added by the console command... Unlike changes made in an esp to the player's spellbook.
Except now, if I create a new character, save, then turn on a plugin that removes Flames and Healing from the player actor, it works. Same with a plugin that adds spells to the player actor, such as sparks. But it still doesn't work for my older saves, even if I load them up (with or without the plugin), resave them, and try loading them with the plugin. Further testing has yet to reveal what causes the player to no longer be affected by changes to the player actor in a loaded plugin. I've tried leveling skills, getting relevant perks, etc. to no effect. So maybe changes to the player actor now apply retroactively to the player, for characters created as of some patch or another. Or maybe it's something else. I don't know at this point, but the inconsistent behavior is very frustrating.
