This is a complete rewrite of the addon, since it was the first script I'd ever written for this game and was actually kind of a disaster mess internally.
100+ new horns.
Significantly better performance. Low-end rigs should struggle less on populated (and loud) servers.
Minor visual tweaks. Try a hellhorn!
Removed many redundant commands and cvars.
The new horn_preferexpansions cvar prevents the base 300-ish horns from being randomly selected, but still allows them to be manually picked. Good for themed servers.
New antispam system gradually muffles players who lean on the horn. The old, explosive system is still available with horn_explode On.
Favored horns have been reworked: they now have their own command, and accept single horns as well as ranges (e.g. favehorn 68 70 418-422). When you don't have a horn explicitly selected, random-select will pick only your favored horns.
horn_unleashhell can, uh, actually be turned off. And doesn't freak out if you turn it on multiple times. Oops.
HORNMOD_Horns() and HORNMOD_HellHorns() getters for use in companion scripts. Eat your heart out, Eldog.