Page 1 of 4 1 2 3 4 LastLast
Results 1 to 15 of 58

Thread: All-Time Alternate History Roster Mod

  1. #1
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    All-Time Alternate History Roster Mod

    This is a roster mod that adjusts the Lahman database, for historic game play. All players in the Lahman database have had their batting, fielding, and pitching statistics adjusted to be both year and park neutral. Players have also had their team names removed from their record so that the AI will not have any artificial bias toward drafting players that historically played on the AI's team.

    The method that I used to adjust the players stats is as follows. I first found the league totals, in every category, for each league in each year. These totals were then converted, for each season, to a 162 game average for the league. using the overall 162 game average for each stat, the year by year stats were then compared to generate an overall factor for each season played in each year. Several key statistics were given specific factors, and the other statistics use the overall factor as a modifier. Each players individual stats were then multiplied by the appropriate factor based on the stat lines year and league.

    For fielding, the stats were also broken down by position, so that there are separate multipliers for each position for each season.

    The key statistics that were given individual attention include: For batting; Runs, Hits, Home Runs, RBIs, Walks, and Strikeouts. For Fielding; Putouts, Assists, and Double Plays. For Pitching; Wins, Losses, Hits, Earned Runs, Walks, Strikeouts, and Runs.

    This modification consists of three files; Batting.csv, Fielding.csv, and Pitching.csv, which need to be placed in the ..\Baseball 2007\lahman53_csv folder. Be sure to back up the exiting files first! Baseball Mogul reads these files at the beginning of every game, so if you want to be able to use the default Lahman rosters again, you must back up the existing files first. After you have made copies of the three files, simply drop the new batting, fielding and pitching.csv files into the ..\Baseball 2007\lahman53_csv folder and start a new game of Baseball Mogul.
    Attached Files Attached Files
    Last edited by ohms_law; 03-12-2007 at 03:34 AM.

  2. #2
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Methodology

    Baseball Mogul builds its database based on the Lahman database. I've taken the primary files that generate players: Batting.csv, Fielding.csv, and Pitching.csv, and modified the stats in all of them.

    Step 1: Condense stats
    Lahman stores all of the stats for each player according to season, and broken up by team (if the player was on more than one team during a season). Since the intent of this modification is to give players neutral stats for the game to build their profile with, we don't need this split in the data files. Therefore, step one is to condense every players stats into a single line for each season that they played in.

    Step 2: League Totals
    The next step involves finding the total number of occurrences each year, league wide, for key stats. As mentioned above, the key stats include: For batting; Runs, Hits, Home Runs, RBIs, Walks, and Strikeouts. For Fielding; Putouts, Assists, and Double Plays. For Pitching; Wins, Losses, Hits, Earned Runs, Walks, Strikeouts, and Runs. The key stats from each player that played in each league, each season, are added together to find these totals.

    Step 3: League Averages
    Step 3 involves finding the single game averages each year for the key stats that we got totals for above. As it turns out, the number of games each team plays per season is the largest statistically significant factor between performances. Compared to the number of games played per season, other factors are so insignificant as to be negligible compared to the number of games each team plays year to year (the differential is by an order of magnitude. Factors based on games played are 100 times larger than the largest park factor). So, I've compiled a list with the number of games that each team played in each season of baseball. This list was used as the divisor for each statistical total which was found above in order to find a 1 game average for the statistic during each season.

    Step 4: 162 game league averages
    Now that there are single game averages available, it's fairly straightforward to find the 162 game season average for every year, for each league. The number of games actually played during the season provides a general factor for most stats. With specific averages available for the key stats, the single game averages are turned into 162 game averages and compared to the overall factor to provide a specific rate factor for that particular statistic. This provides multipliers to use against each actual statistic, most of which are between 0 and 2 (above 1 adds to the real stat, below 1 subtracts).

    Step 5: Multiply each players actual statistics by factor
    Every players actual statistics are then multiplied by the factor found above. All stats are adjusted. The key statistics are adjusted by the key factor, and the other stats (except pitchers ERA's and OBAs) are all multiplied by the general factor for that season, in that league.

    Using the above methodology, every players stats are adjusted to what they probably would be had the player played in a neutral park, 162 game season at some theoretical neutral year. The bonus that this provides is that, since the game defaults to settings of 100% for specific events (Hits, Runs, Home Runs, etc...), the statistics that are used to generate a players predicted stats are already adjusted to work within those settings. As detailed below, it seems to provide more realistic results.

    Enjoy!
    Last edited by ohms_law; 03-12-2007 at 04:08 AM.

  3. #3
    Join Date
    Jun 2002
    Location
    Issaquah, WA
    Posts
    3

    Re: All-Time Alternate History Roster Mod

    nice work ohms

  4. #4
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Thanks. It looks like a couple of other people are looking it over right now. Hopefully I'll get some decent feedback, because I don't think that it's really finished yet.

    For one thing, the dead-ball era doesn't seem to extend as far out as it should, although I'm continuing to test that... 1 out of 5 games had it actually go too long, so it may just be some randomness and game effects going on. I havent decided yet.
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

  5. #5
    Join Date
    Jun 2002
    Location
    Issaquah, WA
    Posts
    3

    Re: All-Time Alternate History Roster Mod

    I *might* download this later tonight when I get home. I rarely have time to mess with mods anymore as well as my own league (AGML) but this type of work makes this game one of the best on the market.

  6. #6
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Well, if you can, I'd appreciate whatever feedback you can think of.
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

  7. #7
    Join Date
    Dec 2006
    Location
    Pangea
    Posts
    6,985

    Re: All-Time Alternate History Roster Mod

    I just downloaded it will play from 01 to 06 then play it and see

  8. #8
    robinhoodnik Guest

    Re: All-Time Alternate History Roster Mod

    Ye gads! Kid Nichols did WHAT?!

    EDIT: One thing that I've never seen mentioned, that has an effect on modern players, is the labor stoppages. There have been a lot of lost seasons because of the uncertainty and strikes. I don't know exactly how you'd go about adjusting for that right off, but it should be taken into account as well.

  9. #9
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Nichols numbers (along with every who played prior to 1901) are way screwed up due to the procedures that I used. The 19th century stats are pretty outlandish, but it does actually start the 1901-1920 period off pretty darn correctly. High averages (probably slightly too high), lots of base running, and pitching. Very little power.
    I've considered clearing all their numbers before starting in 1901, but I'm not really sure what effect that will have. I guess I'll try it. Means that many of the 19th century guys wont be in the hall but... eh...

    Good point regarding the strike years. I'll have to look into that, and think about it some. What years were strike years, exactly?
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

  10. #10
    Join Date
    Jun 2001
    Location
    Northern Virginia, USA
    Posts
    3,686

    Re: All-Time Alternate History Roster Mod

    Quote Originally Posted by ohms_law View Post
    Good point regarding the strike years. I'll have to look into that, and think about it some. What years were strike years, exactly?
    '72, '81, and '94.
    New to Baseball Mogul? Need player pics for your historic league? Don't like the default generics? Check out my picture libraries at Baseball SimCentral.

    Visit my website (click on my name and scroll down) if SimCentral isn't working.

  11. #11
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Thanks. I looked it up, and 95 was shortened as well by late completion of the CBA. I'm in the process of doing V2 right now, with tighter yearly rates and actual park rates, vs. the team rate thing that I was doing before. I'll have to detail my new methodology later today; it's both simpler and more complex at the same time.
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

  12. #12
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Haha! I fixed it...
    I'll be posting an update to this whole thread, hopefully later on today.
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

  13. #13
    Join Date
    Jun 2001
    Location
    Setec Astronomy
    Posts
    3,430

    Re: All-Time Alternate History Roster Mod

    No time to dl the mog file right now, but this is very cool stuff.

    If you're re-doing the stats, you could use the new Lahman DB (5.4).

    Clay
    Clay Dreslough, Sports Mogul Inc.
    cjd at sportsmogul dot com / blog / twitter

    Forum Rules
    Bug reports and roster corrections: support@sportsmogul.com

  14. #14
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    Yup, I am. I just need to finish pitchers right now, and it'll be (re)done. Then, I can redo the thread with examples and everything.
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

  15. #15
    Join Date
    Jun 2006
    Location
    Edison, NJ
    Posts
    15,878

    Re: All-Time Alternate History Roster Mod

    ah yah. Finally finished with everything. Now I've just gotta play test it for a while...
    You insist that there is something a machine cannot do. If you will tell me precisely what it is that a machine cannot do, then I can always make a machine which will do just that! -J. von Neumann

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •