I run duracoat in my shop for sling hardware. Good stuff but it will chip/scratch even with the finest surface prep. Finishes will wear out, all of them. Some, like plating, take longer. Anything spray-on is going to wear. To stop wear, stop using/carrying the gun!
Now...here is the problem with some of the finishes. If it's an ultra hard two part finish, it will chip. If it's a soft one part/bake on, it will scratch (or when baked to super hard, become brittle and chip). There really is no happy medium when it comes to something that is applied atop metals.
Anyone who has seen my duty guns can attest to how finishes wear out and just how fast they can wear. I use krylon on my AR because I can touch it up as needed and realistically I just don't care how it looks, just how it functions.
Bakes on that I like: Duracoat works nicely, the Brownells labeled brand is nice too. (Wheeler gun coat was unsat on one of my guns FYI)
2 parts that I use and like: Duracoat ONLY.
Barring this, I like plating and other metal treatments that actually are part of the metal, not something atop it...
My two cents, 0.00000603003004050 after taxes
Andy