@ charleswatkins:
I have level requirements for getting Sorcery/Channeling2 (level 3+) or Chenneling2 or Tutor (level 5+), plus the chances are lower (and only apply if it the unit was chosen to learn something the first time).
The first level has a high chance of working, but if used on large stacks it isn't likely that everyone of them will learn a sphere. Also, like everything else in this mod, it relies on a random number generator that seems to clump similar numbers together causing trends where Govannon is very effective for a long time and then very ineffective for a while (not that hat is unrealistic). Yeah, he can keep trying to teach the same unit over and over. I was too lazy to try to develop a system for tracking which unit were "better students," and I don't really think it would have been an improvement anyway.
Level 2 is all that matters, not level 3. If I go passive, I may change it so that he can train at level 1, but become far more successful with levels 2 and 3. I may even make training the second level sphere possible if the Tutor has the third level already.
Well, Firebows and Royals guards start with the needed promotions (I gave Royal Guards channeling2 mostly for this reason). Other than that, yeah you need to get channeling2/sorcery from the spell before having a chance to get tutor or channeling3.
However, the check that determines if a unit can get channeling3 or tutor comes right after the code that gives out the promotions, and the check to see if a unit can get channeling2/sorcery comes after the first promotion is granted; if you are lucky, a unit can get Sorcery and Channeling 1, 2, and 3 (or tutor) all at once.
The reason I'm thinking of a passive implementation isn't so that Govannon would get used more as an Archmage, but to reduce micromanagement. Also, a passive effect not controlled by the player just seems more in line with his flavor, imho, since he is opposed to hierarchies determining who can and who can't teach magic. Also, it would mean smaller, less cluttered files/civilopedia, which could get rather unwieldy if I add all of my ideas, especially if I try to update the pedia too.
Yeah, that type of mistake is to be expected, when you copy and paste all the spells and don't make any new textkeys. If I go the passive route none of that will matter.
@ xienwolf: I did it by unit
combats (not unitclasses or promoions), making UNITCOMBAT_ADEPT, UNITCOMBAT_DISCIPLE, and UNITCOMBAT_ANIMAL
ineligible, not making only the other unitcombats eligible; units without unitcombats (workers, settlers, Great people, Loki) can still be taught. Actually, Animals and Disciples were ineligible already.
And I probably will make it so the sphere he teaches is randomly determined for each unit, with the probability tied to the number of promotions he has in each sphere. I'll make is so that he can train a sphere while knowing only level 1, but isn't likely to succeed. The next two levels make it more likely, and level 3 of a sphere makes it possible (but not particularly likely) that he will teach levels a second level spell. I'll also tie the chances to the Level that the Tutor is at, or maybe xp instead; if you want to, you'll be able to specialize Tutors in one sphere but give them lots of combat promotions to make it almost certain that they will train that sphere. I'm also thinking that I may remove the level restrictions but make it so that the chances of training a unit are dependent on the strength and experience, probably so that he is more likely to try to train weaker units (especially workers) but that low experience units would be less likely to successfully learn (you might have to keep him away from all those pesky little peasants he cares so much for if you want him to train your armies
). I may remove the inability to train arcane units too, or make it so that he will only teach them the Tutor promotion; since his opposes the Mage Guilds on the grounds that they suppress arcane knowledge, it wouldn't make sense for him to focus on training their students, but he would try to convince them to join him in spreading magic to everyone.