|
||||
|
|
OOTP Mods - Database Tools Do you need to take a dump? SQL gurus welcome |
|
Thread Tools |
11-16-2019, 04:32 AM | #1 |
Major Leagues
|
Help for Custom Historical League
Hello! I have an idea for a league that would use historical players. I'm trying to figure out the best way to implement this idea and would appreciate advice and suggestions.
I would like to have the best players in baseball history compete against each other. There are many different ways to do this, of course, including built-in methods like the "All Time Greatest" Quickstart and random debut, but none of the ways that I have seen quite do it for me. I want ratings to be based on real-life seasons. I want the very best players (like Walter Johnson and Mike Schmidt) to play their many great seasons, and I want the shooting stars (like Roger Maris and Doc Gooden) to play their few extraordinary seasons. My idea is to run the league for a pre-determined number of seasons, to gather a set of great players and their prime seasons, to shuffle these players and assign them to draft pools (or, to put it another way, to determine each season's draft pool prior the start of the game), to let teams retain players with multiple prime seasons, and (this won't make sense yet) to loop a player's career. Pre-determined number of seasons. The number of seasons also serves as a hard cap on the number of seasons of a player's career that can be played. So the number should be large enough to span the primes of the best players, roughly 15-20 seasons. As the number of seasons gets larger, talent gets more diffuse and chances increase that elite careers will not overlap. For instance, at 40 seasons there is a reasonable chance that Ted Williams would never get to face Randy Johnson. A set of great players and their prime seasons. This set would have players with an extended prime (1952-64 Mickey Mantle), players with single great seasons (1976 Mark Fidrych), and players with multiple non-consecutive great seasons (1985, 1987, and 1989 Bret Saberhagen). Gathering this set will be time-consuming, but I've already coded a short and dirty program that takes player-seasons sorted by single-season WAR (downloaded from FanGraphs) and sorts the best seasons into draft pools. Manually editing is unavoidable, but this provides a good rough draft. Let teams retain players with multiple prime seasons. If a player drafts Honus Wagner, they get to keep Honus Wagner. Other teams will have to plug their shortstop hole with short-lived stars like 1965 Zoilo Versalles and 2001 Rich Aurilia. Loop a player's career. This requires a longer explanation. Let's say we're playing 15 seasons, and let's take Mickey Mantle and his 13 prime seasons (1952-64). In which of the 15 draft pools can he be assigned? If I want to cover all of his 13 great seasons, then he would have to be placed in the draft pool for one of the first three seasons. Anything later, and the end of his career would be cut off. But if I put Mantle, and players like Mantle, in the earliest draft pools—well, the draft pools would be incredibly front-loaded. Also, players would be aging in parallel. By the time we got to the 15th season, teams would be full of aging superstars who've lost a step and want to move to first base. The solution? Loop careers. Assign Mantle to any of the 15 draft pools. Let's say he gets assigned to season 10's draft pool. That means he plays his 1952 season in season 10, '53 in season 11, '54 in season 12, ... and '57 in season 15—then loop his 1958 season back to season 1. That is, a team would draft 1958-64 Mantle in season 1 and have him for seven seasons. Mantle then is out of the game for two seasons. A new 1952-57 Mantle then appears in the draft pool for season 10, when a new team can draft him. Looping careers like this allows for a high density of talent and an even balance of great players. Okay. So that's the idea. The tricky part is implementation. Unfortunately, I spent way too much time writing and revising everything above, and now I'm sleepy. I'll be back tomorrow.
__________________
Graphics on Google Drive Commissioner, Great Lakes Baseball League Cincinnati Packers, American Circuit Athletic Bilbao, UEBA Papeete Black Pearls, Pacific Baseball Federation |
11-16-2019, 06:31 PM | #2 |
Major Leagues
|
Implementation!
My first thought was that I could simply import historical players. Take the Mickey Mantle example above. I could import his 1958 season in year 1, then retire him after his 1964 season in year 7, then in year 10 import a second Mickey Mantle at his 1952. Easy peasy, right? The snag is players with non-consecutive seasons that I want to be played consecutively. Take Ted Williams and his three lost years due to World War II. I would want him to play his 1939-42 seasons, then skip immediately to his 1946 season. If I import 1939 Ted Williams, what is the best way to handle his player when we reach 1943? One way that I can think of handling this is to use the export/import roster functions in between seasons and code a script that updates the ratings outside of OOTP. I would need to have gathered all the ratings beforehand, probably by creating a dummy league, importing the relevant player seasons, and exporting the rosters. I think this would work, but I'm not terribly familiar with export/import rosters so I'm wondering if there are any pitfalls to this approach. Ideally, I would be able to set up a false historical database for those 15 years. Then everything would be completely automated after setup, which I like because it seems a much more stable setup. But if I'm reading things on these boards correctly, this is an option that would have been available prior to OOTP 19 but that is now unavailable. So this is where I'm at right now. I think that I see a route to accomplish this, but I'm not fluent in the ins and outs of the historical database and I would greatly appreciate a second set of eyes on this.
__________________
Graphics on Google Drive Commissioner, Great Lakes Baseball League Cincinnati Packers, American Circuit Athletic Bilbao, UEBA Papeete Black Pearls, Pacific Baseball Federation |
Bookmarks |
|
|