Alright, here's a preliminary release of my program. Keep in mind that right now
I don't yet endorse it to be usable for tournament Elo management, since I'm not confident enough it'll work. Consider this a beta. I'll post my own thread for this once I'm confident that it will work properly and as advertised for large tournaments. As far as I can tell, it does all work properly, but I want testing and feedback before I give it my seal of approval.
What you need: The program was tested on the latest version of Java. It should be compatible with Java 5 (1.5) and later, but as of now I provide no guarantees it will work except on the latest update of Java 6, which is compatible with all major platforms (Windows, Mac, etc.)
Download: EloCalc version 0.0.2
Install and run: Download the .zip file from the above link. Extract the .zip into its own folder (by default, Windows should unzip to a folder called EloCalc_0.0.2). There will be two files: EloCalc.jar and players.elo. Double-click EloCalc.jar to run the program. Do not edit players.elo; that file contains the data for players used by the program and any edits could corrupt it, rendering your data lost or unusable.
How to use:
Above is a picture of the program's interface. In the top left you can see the list of players, giving their tag and Elo rating. You can sort the list by clicking on either column header. The "Player" column will sort alphabetically by tags, and the "Elo" column will sort by Elo rating. The "Remove player" button removes the currently-selected player from the list.
Below that is how to add new players to the list. Fill in the player's name, tag/handle, and a base Elo rating if they have one. If you do not provide an Elo, the program will use the "Base value" you can see under the "Update by Tio File" section. Press the "Add player" button and the new player will be added to the list.
On the right side, in the section labeled "Update Matches" is a box labeled "K-Value." This is the k-value used by the Elo system for all matches the program simulates, and represents the maximum number of points a player can win or lose in any single match. Players rated close to each other will win or lose a similar number of points. However, if players are rated far apart, the higher-ranked player is at risk of losing far more points for losing, and gaining far fewer points for winning, and vice versa.
You can represent a single match in the "Single Match" section. From the drop-down boxes, select the players in the match, and choose which of them is the winner by clicking the appropriate radio button. Press "Update" to update the Elo ratings for these players as if the match had occurred. For example, if Dr. PeePee played SilentSpectre and won, select Dr. PeePee and SilentSpectre from the drop down lists, click Dr. PeePee's radio button, and press Update. Both players' Elos will change accordingly, and the changes will appear in the blank area above the Save button.
Below this section, you can provide the program a Tio file and have it update Elo ratings for every player involved in the tournament. Click the "Browse" button and select the appropriate Tio file, then hit "Update" below Browse. Any players not in the database will be added with a base Elo value determined by the box here, and then EloCalc will step through the tournament updating matches chronologically.
Press the Save button in the bottom-right to save the current data to the players.elo file mentioned earlier. The next time you open EloCalc, all of the players with their appropriate Elos will be automatically loaded, as well as the Base Elo and k-value you selected.
The About button in the top-right provides some information on the development of the program.
Known Issues:
Tio files with pools do not currently work. The fix should be pretty simple, but it will take a bit of time.
The drop-down boxes for updating single matches have odd visual behavior, such as their arrows disappearing and defaulting to the first value in the database after every change to the player list. Additionally, the boxes are ordered in terms of what order players were added.
The name sucks and I need a new one.
Usage Notes (IMPORTANT):
When using a Tio file, please ensure that the Name and Nickname fields of the Tio file exactly match the Name and Handle fields you used if you added any players with the Add player button of this program. Otherwise, the program may not be able to identify that two players are actually the same person.
Ideally, you could do nothing but add Tio files to use this program. Soon, when support for pools is added, this should be entirely doable. Using the single match updater is for people who may like to rate MMs (perhaps with a lower k-value than tournament matches) etc., or for people who do not have a Tio file for their tournament.
Do not use "odd" characters in player names. Particularly, avoid using commas for sure. Most other non-alphanumeric characters should work, but I only guarantee that alphanumeric characters, period, and space do.
Future Features:
Support for unique player ID numbers, as done in Tio, perhaps by the conventions mentioned in this thread.
Pools support, as already mentioned.
I'm also thinking of adding a match history list for each player, but that likely goes beyond the scope of the program as an Elo manager, and so it's unlikely that I'll add it.
If you find any bugs, let me know and I'll try to fix them. Say what you were doing, post a screenshot if you can, and I may ask for the contents of your players.elo file.