by Clay Dreslough, Baseball Mogul Lead Designer
Baseball Mogul 2010 includes a custom proprietary database with over 24 megabytes of historical data, including complete player statistics from the 19th Century through the most recent season.
When you start a new game in any season before the current year, Baseball Mogul knows exactly where everyone played in every season. Therefore, Baseball Mogul automatically creates accurate rosters for each team.
However, when starting a new game in the current season, the Baseball Mogul Database doesn't have data for off-season moves. It also doesn't have data for any players with no major league playing time.
Therefore, Baseball Mogul includes a "roster file". For the 2009 season, this file is called "2009-Rosters.csv" (it can be found inside the "Players" folder inside Baseball Mogul's "Input" folder. You can access these folders from inside Baseball Mogul by choosing "Open Game Folder" from the Help Menu. We have done our best to update this file, but you may wish to edit this file after you have installed the game in order to achieve greater accuracy (or to add players that we omitted).
"2009-Rosters.csv" can be found in the 'Players' folder inside the 'Input' folder of your Baseball Mogul 2007 installation. If you used the default installation folder, this will be c:/Sports Mogul/Baseball 2010/Input/Players/2009-Rosters.csv. This file is loaded whenever you choose to start a New Game. This is sometimes referred to simply as the "Roster File".
The 'csv' in "Rosters2009.csv" stands for 'Comma Separated Values'. We recommend Microsoft Excel for editing this file format. But you can also use a text editor like Wordpad.
If you find a player on the wrong team when you start a new game of Baseball Mogul, open the Roster File and find the line for that player. The first column contains 'Lahman Player IDs': the first 5 letters of the last name, followed by the first 2 letter of the first name, plus 2 numbers to differetiate this player from any previous players in baseball history with a similar name.
For example, Pepper Martin (OF and 3B for the 1930's Cardinals) is 'martipe01'. Pedro Martinez (P for the Expos, Red Sox and Mets) is 'martipe02'.
Once you find the right player ID, change the entry in the 'Team' column (if you are unsure of the correct abbreviation, look for another player in the Roster File on that team).
Using the Roster File to Add Contract Data
For EXISTING players, Baseball Mogul only reads the first 5 columns of the Roster File:
| Column | Description |
| #PlayerID | The Lahman ID (found in Master.csv in the Lahman53 folder) |
| Year | For modern players, enter the current season (e.g. 2009). If you wish to add historical players, enter the year from which you would like to "teleport" the player. |
| Team | Baseball Mogul's 3-letter abbreviation (found in the 'teamIDBR' column of Teams.csv in the Lahman53 folder) |
| Salary | The per-year average salary of this player's current contract |
| Years | Remaining years in the player's current contract |
Players without major league experience don't have an entry in the Sean Lahman Baseball Database. Therefore, to be included in a new game of Baseball Mogul, rookies need to have their own line in 2009-Rosters.csv.
Step 1
The first column is the rookie's 'Lahman ID'. Since players without MLB playing time are not in the Lahman ID, you will have to create a NEW 'Lahman ID' for such players. We recommend the same format as for existing players, but use '51' as the last 2 digits to prevent any conflicts with existing players.
For example, a rookie named Clay Dreslough would be 'dreslcl51'.
Step 2
In the 2nd column, enter '2009'. In the 3rd column ("Team"), enter the abbreviation for the organization you want the player to belong to (e.g. "ARI", "ATL", etc.). If the player is a free agent, enter 'FREEAGENT'.
Step 3
You must enter a 'First Name', 'Last Name' and 'Position' column for rookies. Without these fields, Baseball Mogul will not create a new player.
(If one of these fields is missing AND the LahmanID column doesn't match a real player, this line will be ignored. If the LahmanID matches a real player AND these three columns are filled, TWO players will be created. One will be a rookie with the data indicated, and one will be the actual historical player).
Step 4 (Optional)
Enter salary and contract length for this player. If you enter '0' in these fields, the player will be given a standard minor league contract.
Step 5 (Optional) Complete the remaining fields. For rookies, Baseball Mogul reads all columns in the file. If any of these columns are blank, Baseball Mogul will guess at the value or determine it randomly.
| Column | Description |
| Age | Player's age in years on Opening Day |
| Bats | 'R' for Righty; 'L' for Lefty; 'S' for Switch-Hitter |
| Throws | 'R' for Righty; 'L' for Lefty |
| Overall | The player's current "Overall" talent level Guidelines for rating minor league players |
| Peak | The player's projected "Peak" talent level Guidelines for rating minor league players |
| Injured | The numbers of days, from the start of the season, that the player is on the disabled list (this is zero' by default). |
Daric Barton is the top-rated catcher in the A's organization.
Following steps 1 through 4 we enter the following data:
bartoda51,2006,OAK,0,0,Daric,Barton,20,C
Continuing, we know that Barton bats and throws left-handed.
Barton isn't expected to play in the majors until 2007, so his current 'OVERALL' rating is probably about '75'.
MiLB.com ranked Barton as the #40 prospect in all of baseball. Baseball Prospectus ranked him at #9. The Hardball Times ranked him at #14.
Averaging these 3 rankings puts Barton at #21 — good enough for an '88' Overall Rating according to our Player Rating Guide.
Finally, we find a quote by Billy Beane saying the A's are moving Barton to first base. So we change his position entry to '1B/C'.
Our final line is:
bartoda51,2006,OAK,0,0,Daric,Barton,20,1B/C,L,L,75,90
The Roster File provides an easy way to add rookies to Baseball Mogul when you have basic data about a player.
If you wish to add more biographical detail, such as the player's hometown, height, weight, birthday, nickname, etc., you will need to edit the 'Master.csv' file in the 'Players' folder inside Baseball Mogul's 'Input' folder. Simply add a line with the same 'Lahman ID' you created in the Roster File (e.g. "dreslcl51'). Then fill as many of the remaining columns as you would like. Adding Statistical Projections
If you wish to enter detailed performance projections, such as to specify that a player hits a lot of triples, or strikes out rarely, you should add a line for the player in the Batting.csv, Pitching.csv and Fielding.csv files (these are located in the 'Players' folder inside Baseball Mogul's 'Input' folder).As with Master.csv, you put the Lahman ID at the beginning of the line. The 'Year' column should equal the year you are starting the game (e.g. 2009) and the 'Stint' column should say 'P' (this indicates that the stats entered are PROJECTED major-league stats). Note that data entered in Master.csv, Batting.csvs, Pitching.csv or Fielding.csv will OVERRIDE any data entered in the Roster File.
The roster file also lets you incorporate players from baseball history into your database.
Instead of entering the current season in the 2nd column, enter the year from which you would like to access the player.
For example, the following line will go to 1927 and get Babe Ruth, and place him on the Boston Red Sox:
ruthba01,1927,BOS