First of: Special.txt contains info about overtime bonuses, and only overtime bonuses. (Stuff that you gain for several rounds from units! ex: Royal Griffins - Cheer, Inquisitors - Holy Rage, Archmages - Magic Shield...)
Now on to the topic about medals. If you go to Editor and dig deeper you'll discover all existing Global Variables (GVs and only GVs are used as medal counters). You can also see that all Spells Cast and Units/Troops Killed are listed as global variables - This tells you that all spells and troop kills can be placed as requirements for medals (I think). What you will also notice is that only Talent Use as global variable is Magic Shield.
Now, the question is: Is it possible to add/manipulate any new global variables (for instance: prayer_used), how to do it, and will the game accept these new variables?
So far, everything seemed okay except when it's time to level up, game does nothing, which led me to believe that the problem was in the kb.exe (though I hope I'm wrong).
About +crit% and +res% with more attack or defense... I'll also try to help.