That's basically what the old version did. Calculated ELO ratings for all players in a match based on the outcome and stored them locally, in a semi-encrypted way which had anti-tampering checks. The thing I was confused about was ratings starting at 0 instead of 1500 but I assume that just makes you earn rating really fast to start with? I haven't done arena in quite a while, does anyone know what the maximum rating gain from a match is?
Unfortunately data can only be stored client-side by an addon (unless it was to send it to an always-connected player via bnet, but that's not really a viable option). If anyone has any ideas for hack-proof methods of recording games within the limits of an addon then I'm listening but otherwise I think the only option is to not bother trying to make it secure and just let the user decide if they want to use it legitimately or not.
So here is the
calculator I used - it may answer some of your questions regarding higher rating gains. Basically you assign them a K value coefficient that scales down the more games they have played. Currently for chess the K threshhold is 50 games - Assuming skirmishes were popping very quickly and there was a large enough population to support them, such a K value threshhold would probably be appropriate. Basically you base it off how long you think should suffice as a "test" period - so that players will quickly achieve their actual play-strength rating rather quickly.
Now, on to the calculator itself. The first 12 empty textboxes are essentially irrelevant past the first one. In chess, it is more convenient to calculate your rating changes after a tournament has completed rather than after individual games - so the extra boxes are to put the ratings of all of your competitors.
"Total Score" is referring to how well you did against your opponents - 1 for a win, .5 for a draw, 0 for a loss. Since it is technically possible to draw in a skirmish, the draw outcome might be used somewhat for calculating skirmish rating changes. But frankly, to avoid exploitation, simply giving both teams a flat rating reduction (say, 5 points) might be more appropriate in those cases.
"Performance" - again, this is a chess thing that doesn't really matter for skirmishes. It proposes what your actual play-strength is (different from what your new rating will be).
"Current Rating" - this is where you would put the ratings of the team you are calculating the changing rating for. I think the United States Chess Federation starts every player at a "hidden" rating of about 1000, and causes their first 10 games to be a preliminary period before they achieve an actual rating.
"New Rating" - where the new rating of the player is calculated.
"#of Prior Games" - this calculates the hidden "k" value. The point at which the K value stops changing is at 50 games.
"Age" - irrelevant. It's hard to believe that it actually /is/ relevant for USCF calculations. I read a book about ELO ratings one summer. Like 1 in every 10,000 cases has to fall on Age to determine the base-line K value approximation.
"Show K/Bonus" - irrelevant.
Edit: the changes of rating are kind of steep with this calculator (A loss at 1500 rating versus another 1500 rated team yields a 23 point drop to 1477). So the outputs could probably be adjusted to be less harsh.