Starting from the next Server Restart following this post, a change to the PWO Battle System will be live. If all goes well, it will now be impossible for the same Status Ailment to take effect on a Pokémon already afflicted with it.
In recent discussions on the Forum, a number of you complained about the Sleep effect being overpowered as it can be repeatedly inflicted. Sleep is guaranteed to last at least one turn if effective on a Pokémon, but the claim was that it could be used on an already sleeping Pokémon to reset the timer. This claim took some of us Staff by surprise, as we believed the server already had checks to prevent multiple application of the same Status. However, I did not observe such a check on analysing the code earlier today.
Ever resourceful, I took matters into my own hands. Should all work as intended, the behaviour in battle now should be, whenever a new Status is attempted to be applied to a Pokémon, it is compared to their existing Status. If an attack tries to give a Pokémon a Status Ailment or change it already has, you will be shown the appropriate "already affected" message; and the Status will not be reapplied.
Example: Try to confuse a Pidgey that already is confused, and you'll now see "Pidgey is already Confused!" and we won't try to Confuse again. Jigglypuff tries to send you to sleep twice? Same thing again, only the message will say "...is already asleep!" This applies to all currently supported Status Ailments, in the same way as official games if I recall correctly. So if your Pokémon seems to sleep forever and it's not a Snorlax... perhaps you should seek medical attention for it, or check it's not had its mind damaged by darker forces... kekeke...
As always, please inform us if you observe any bugs or unexpected behaviour with this change.