I think this could be really cool too.
Probably the easiest way to set it up would be using an Elo system, as they use in chess.
It's well documented and easy enough to implement. Good players gain less points from beating lower ranked players, and conversely, lower ranked players gain more points for beating higher ranked players than they do lower ones.
Edit to take into account Conrad's post:
(2010.Jun.28 08:02 PM)Conrad1103 Wrote: i hadnt thought about candies. but maybe they SHOULD count if you use them in a fight. if someone had 1000 candies...the fact is....they CAN whip yer arse...therefore, they should be ranked higher. once their candies are used up and they cant use them anymore, then they will drop in rank accordingly.
Something like the Elo rating would handle this nicely. Once your candy is out, and you are sitting at an artificially high skill rating, you would lose more points against people who are "less" skilled than you, bringing you back down to where you belong quickly.