The timer system for VGC really NEEDS to be fixed. At the moment, when someone times out, the game will auto select the first move slot for each pokemon. This is a good idea, because that is how it works on the DS games as well. However, because of the nature of showdown's platform, people are much more likely to leave battles prematurely, or close the window without forfeiting. This is an issue for this current system because an opponent can leave, and you still have to finish the battle with the "AI" auto-selecting the moves. On the DS games, if someone were to let their timer run out every turn, they would eventually run out of "my time" and would lose the battle. Because showdown has not properly implemented that system, the battle can continue on much longer than it should. For example, I just had a battle where I was in a PP war with an opponent, Snorlax vs Drifblim. My snorlax had more total PP than their Drifblim, so they decided to leave. However, they went offline instead of moving on to another battle. Presumably by closing the window without forfeiting first. Because of that, I was forced to continue the PP war, despite my opponent recognizing their defeat and leaving the battle. The left in turn 21, and the battle ended in turn 40. Worse still is that because the had left, I had to wait 60 seconds for every turn to go through. My suggestion would be to make it so, if an opponent is not in the room, the timer will DQ them. Its one thing if they take too long to plan out their moves, but if they are not even there, it is ridiculous that the battle should have to continue.
http://replay.pokemonshowdown.com/gen7vgc2017-623468996