Ok, sorry for spamming you. Id like to stress that I'm not trying to criticize you work, which I think is really coll, and you should just tell me to stop if you want! My problem here is that I really, really like what you're trying to do - I guess I just don't really agree with how it's implemented.
I like the idea that the promotions for the military units should be changed, but there's also other units that lose their ability to gain non-military promotions now, e.g. apostles, spies and scouts.
A suggestion (mind you, from a lua noob - it may not be as simple as it sounds).
The way it's implemented right now is - AFAIK - that you A) keep all vanilla promotions in the database, B) Prevent units from being promoted by removing the promotion action and C) automatically assign veterancy levels to units.
With v 1.24 you made a small change to the code so that certain units like apostles, spies etc. wont get veterancy levels.
Could this check for unit types be moved to the part of the code where standard promotions are chosen, i.e. so that you can chose promotions for the units you check for (e.g. apostles, spies, ...) while all other still have the ability to promote removed?
Just a thought...
\Skodkim