Offline

Hello everyone! I'm wanting to do a personal fictional sports league project (may post about it here if I get it off the ground, who knows). However, I don't really know how to "simulate" it. I don't really want to just pick and choose what happens, because I feel like that loses a bit of immersion.
So, I'm coming to these forums to ask how you simulate your leagues! Do you have a spreadsheet formula? Do you use a video game as a stand in? (i.e. OOTP, FOF, etc.) Do you do something else entirely? Feel free to share here! And also feel free to nerd out: the more nitty gritty you get into how the sausage is made, the more informative it is!
Offline

It all really depends on what sport you are looking to simulate. If you're looking at doing Baseball, Hockey or Football, then OOTP/FHM/FOF would be the best way to go, especially given how much freedom you have when it comes to implementing your designs into the game while you simulate it to make it more immersive.
If it's more of a niche sport or one that doesn't have it's own dedicated simulation game or even a fictional sport entirely (which is where I'm at, but I'm in the same boat of "will I ever get it off the ground or not" lol), then xkoranate would be the way to go. It may just be the bare bones results, but you can still simulate hundreds of different sports/events, then you can incorporate those results into your storylines, which you'd have a bit more creative freedom over too compared to the storylines generated in those simulation games.
Offline

~Bear wrote:
Hello everyone! I'm wanting to do a personal fictional sports league project (may post about it here if I get it off the ground, who knows). However, I don't really know how to "simulate" it. I don't really want to just pick and choose what happens, because I feel like that loses a bit of immersion.
So, I'm coming to these forums to ask how you simulate your leagues! Do you have a spreadsheet formula? Do you use a video game as a stand in? (i.e. OOTP, FOF, etc.) Do you do something else entirely? Feel free to share here! And also feel free to nerd out: the more nitty gritty you get into how the sausage is made, the more informative it is!
There are definitely many ways to go about it. For me in my hockey leagues, I've developed my own system using parts of Veras' original spreadsheet layout for roster management, Xkoranate for simulation, and some added randomness with random.org or wheel of names for events or decisions.
I like having full control of the rosters and storyline so I do all of that in Sheets. Every person in the series is tracked by age/season. I've tweaked my own system for manual player progression (based on a random yearly draw) with a forced age regression at 32. My player rating is 1-10 with some superstars exceeding the maximum in the 11-14 range, and very rarely a generational talent might hit 20ish. (Bill Bronkowski in the THL being this primary exception, he hit 22 OVR at one point!) Players have an OVR rating and a POT potential rating. If they reach their potential, they cannot go below that number until their Age 32 regression. Most players typically have a higher potential than their starting OVR but some have a lower, which acts more like a floor, they might start out good and regress to the mean and just be a decent serviceable player. The random yearly draw is on a -2 thru +2 model, with players under 32 in the minors having a -1 thru +3 potential draw for development purposes. Basically I'll pull a whole column of generated numbers for each team and then adjust each player's OVR based on his age or POT rating. It's a little bit of work to do it all manually but it goes fairly quickly and I enjoy it. I have started employing the same system for coaches.
My team OVR scores are calculated by Total Roster OVR + Average Individual Position OVRs (G, F, D) + Average Total Coaching OVR. These numbers are set for each season, with some trade exceptions, and are the numbers I input into Xkoranate for simulation of the season and playoffs. All of that info goes into the spreadsheet and then I have a word doc where I write everything out and flesh out any storylines before posting. Obviously Photoshop is a big part of my series for graphics.
Also if you've never used Xkoranate, there's a painful lack of documentation about it but it does the job once you figure it out. One thing I've done is when simulating the season, I'll add 5-10 points above and below the highest and lowest ranked teams in the team adjustment panel to add more parity to the results.

Offline

welcome back to the boards, ~bear!
I've touched on this before, but since you wanted details, I figured I can go deeper. granted, pretty much everything in my system is custom coded, so it may not be of much use to you unless you know or are willing to learn how to code, but maybe some of it will at least point you in the right direction.
like steel, I keep track of full rosters for every team in the ndl. that said, if you're concerned about being able to even get started, it may be easier to only keep track of a few star players on each team and fill in the gaps when necessary. I know some others' leagues on the boards are run like this; maybe one of those creators can give you a better sense of how they run things.
for player progression, every player gets two major rating adjustments per year. the first is based primarily on age, with younger players getting a boost from development and older players taking a hit due to, well, getting older. that sets the player's expected rating going into the year, and then they get another, almost purely random, rating modifier. That modifier accounts for things like injuries and breakout seasons. (there's also a smaller version of this modifier for playoff series.) also like steel, my rating scale was also supposed to go from 1-10, but quickly got out of hand; now about 20 years in, my best player (minnesota's kevin simmons) is at about 17 while most bench players are between 8.5 and 9. The random modifier also tends to fall between -2 and +2, but there's no bounds on it; I've seen it get close to ±4 on extremely rare occasions. it's also worth noting that for dashball specifically, every player gets separate offensive and defensive ratings; this may or may not be necessary for you depending on what sport you're doing.
for the actual game simulation, I wrote that program myself. it basically generates random numbers over and over again and compares them against the ratio of one team's offensive rating and the other team's defensive rating to see whether the offense scores or not, then assigns it a point value (2, 3, or 5) and also ticks a random amount of time off the clock. if this is confusing, know that this is honestly a really silly and complicated way to do it, but I wrote this years ago before I really knew what I was doing. I have a spreadsheet set up so that I can plug the teams' ratings into it and it'll run the simulator program over and over again and give me a result of each game on the schedule. having scores for every game isn't super important for the regular season but is very helpful for the playoffs. when I'm writing, I have the structure of knowing how the game has to end but the freedom to pick any number of ways to get there. that might or might not fit your style depending on how you feel about your creative writing skills.
beyond that, I mostly just have a buttload of spreadsheets. my master spreadsheet contains a total of 24 tabs. 16 of them are for each team's roster (as well as GM, head coach, etc), plus one for free agents. one is sort of a quick reference to get a snapshot of each team's rating and salary situation as well as some global variables like the current salary cap. then there's the one that runs the simulation, two containing every game result at the major and minor league level, one that pulls from the team spreadsheets to make it easier for me to assign awards, one with the results of every year's draft, another with every expansion draft, and one to track future draft picks that have been traded between teams. oh, and then I have a bunch of extra spreadsheets that contain, among other things, snapshots of historical rosters, every trade that's ever been made, and every player I've ever mentioned in the official canon. once again, feel free to not get into this level of detail, especially if you want to post more frequently than my current rate of about once a year or so :p
I think that's just about everything but it's getting late here on canon coast so I may have forgot something. if I remember I'll come back and make an update. in any case, I hope this helped, and let me know if you have any questions. good luck getting your show on the road!
Last edited by ItDoesntMatter (Yesterday 12:02 am)