Great job Smogon! First, I'd like to thank darkartisan for finally fleshing something like this out. Second, I'd like to add something. Please stop me if this has already been said in some fashion:
Is anyone here familiar with a game called Battletech (either the tabletop or the Firestorm arcade system, as well as Mechwarrior)? Being an avid fan myself, I think a system used in that game could help end/help with discussion on move accuracy, and spamming prevension: the heat gauge. Battletech is essentially robot combat. When you first pick up the game, you are set on BASIC, a mode where your goal is simple: move and shoot. However, once that becomes familiar, you are presented with heat management. Basically put, a gauge display, when you fire your weapons, will start to fill. The more weapons you fire at a time, the higher it goes. If the gauge reaches 100%, your 'Mech shuts down, and you are a sitting duck. This element forces advanced level players to make wise shots, and not put their weapons in a cluster of death, rather making them fire with a few weapons at a time.
Where am I going with this? It's simple. On higher difficulty settings, you could implement a gauge that, when full, would significantly hamper the abilities of a Pokemon in question. Each move could be assigned a Battle Value. This way OHKO's, while inaccurate, would also have a catastrophic toll on the fighter, while Tackle could be spammed, doing low damage for low toll. In addition, fatigue, if implemented, could add a Battle Value Multiplier, much like the loss of Heat Sinks on a 'Mech. Too many strong blows to your Pokemon could spell higher costs in move usage.
Also, has anyone brought up reload bars for moves? Just another thought (I've got Battletech on the brain, but it might spark something???).
I'd love to get on board with this. I've got friends who are artists, friends who are studying for programming careers (our group project for IB CAS hours is making Flash games for elementary school instruction). I myself am a ametuer spriter, and can help in any way needed. Thanks for taking the time to read this. I'm sorry about the length...get in contact via PM if you want some more contributions!