|
Post by Ian Noble on Mar 26, 2017 14:06:54 GMT
Sim Engine Unlocked
It's taken ten years of D5 but I've finally figured out how to manipulate some of the sim engine's abilities!
The most immediate change that's going to happen is for assist totals to be made realistic. It's always been a huge annoyance for me (and everyone) that league leaders in assists per game don't reach much higher than 8.0apg. I've figured out how to make that figure around 10.0apg, with an accompanying realistic drop off for all the players in the league, and I will be implementing that change immediately.
I'll be tinkering with the file outside of D5's sims and will update this thread if any other changes are made.
|
|
|
Post by Alex English on Mar 26, 2017 14:28:35 GMT
This is you messing with the programming of the sim engine?
It will be interesting to see how playing around with it affects the results of the games, beyond just the player statistics. If you can get some could modding going on though, then this sounds really cool and promising for your long term D5 plans. Improving NBA Live's sim engine to do what you want sounds a hundred times easier than building your own from scratch.
|
|
|
Post by Hanamichi Sakuragi on Mar 26, 2017 14:32:24 GMT
I am hoping for a more steady process if possible. If my instinct is right, you will work around numbers, right? So, it could take some tries to figure it out?
Happy for you Ian. Thanks!
|
|
|
Post by Ian Noble on Mar 26, 2017 14:41:16 GMT
I am hoping for a more steady process if possible. If my instinct is right, you will work around numbers, right? So, it could take some tries to figure it out? Happy for you Ian. Thanks! Yes, I'm simulating full seasons over and over again to make sure that not only the league leaders, but also the general distribution is realistic.
|
|
|
Post by Ian Noble on Mar 26, 2017 18:57:16 GMT
This is you messing with the programming of the sim engine? I'm not changing the underlying logic, just analysing some of the variables that guide the sim engine's logic and observing the effects to pursue greater realism. It's interesting how it works: 1) gamescores seem to be calculated based upon the sum of a team's ratings and how that team's ratings are affected by their opponent. 2) player statistics are then distributed using an algorithm after the score / rebounds / assists etc. have been decided depending upon each player's specific ratings. It's a sensible method really. In the short term it is easier than making my own sim engine, but that's still an aim. The next question is: what needs to be changed other than assists? I had thought for accounting for the increase in 3PT shooting but those amounts seem to be already directly controlled by a player rating which controls the percentage of their shots taken that are 3s which Walt already programs into his rating changes.
|
|
Deleted
Posts: 0
May 7, 2024 7:16:54 GMT
|
Post by Deleted on Mar 26, 2017 19:32:07 GMT
This is you messing with the programming of the sim engine? I'm not changing the underlying logic, just analysing some of the variables that guide the sim engine's logic and observing the effects to pursue greater realism. It's interesting how it works: 1) gamescores seem to be calculated based upon the sum of a team's ratings and how that team's ratings are affected by their opponent. 2) player statistics are then distributed using an algorithm after the score / rebounds / assists etc. have been decided depending upon each player's specific ratings. It's a sensible method really. In the short term it is easier than making my own sim engine, but that's still an aim. The next question is: what needs to be changed other than assists? I had thought for accounting for the increase in 3PT shooting but those amounts seem to be already directly controlled by a player rating which controls the percentage of their shots taken that are 3s which Walt already programs into his rating changes. Whiteside shoots 3s. A focus on trying to make players who will never take an NBA 3 pointer to stop taking 1 or 2 a game in the sim could be fruitful. I've noticed it with other players as well even though Walt rates their 3p as low as possible.
|
|
|
Post by Shaquille O'Neal on Mar 26, 2017 20:34:32 GMT
please fix the 20mpg bug of some of our starters.
|
|
|
Post by Alex English on Mar 26, 2017 20:41:43 GMT
please fix the 20mpg bug of some of our starters. This may or may not be a bug. The player could just be in foul trouble. Ian Noble 's boxscores don't list personal fouls though, so we don't know. It could be a good thing to add.
|
|
|
Post by Ian Noble on Mar 26, 2017 20:46:18 GMT
please fix the 20mpg bug of some of our starters. Is this a problem? All your starters average over 35 minutes per game.
|
|
|
Post by Andrei Kirilenko on Mar 26, 2017 21:14:17 GMT
When you used to do full game videos for the playoffs back in the day... was that theoretically getting different results than putting it through the automated sim?
|
|
|
Post by Ian Noble on Mar 26, 2017 21:21:02 GMT
When you used to do full game videos for the playoffs back in the day... was that theoretically getting different results than putting it through the automated sim? You mean wayyy back 8 or 9 years ago? From what I remember it did inflate stats to watch the final quarter of games.
|
|
|
Post by Shaquille O'Neal on Mar 26, 2017 21:28:01 GMT
please fix the 20mpg bug of some of our starters. Is this a problem? All your starters average over 35 minutes per game. Mike Conley was averaging 27mpg and shooting less than 10fgs in some games after D-wade got injured which was since february 4. Conley never went beyond 30 minutes. you can check on it. I also had this issue before during the previous seasons, my temporary solution on this was adjusting my bench a bit and sometimes it worked for me.
|
|
|
Post by Shaquille O'Neal on Mar 26, 2017 21:29:26 GMT
please fix the 20mpg bug of some of our starters. This may or may not be a bug. The player could just be in foul trouble. Ian Noble 's boxscores don't list personal fouls though, so we don't know. It could be a good thing to add. so Mike Conley is always on foul trouble since February 4? He is averaging 27mpg since D-wade got taken out of the lineup. this might be a bug.
|
|
|
Post by Ian Noble on Mar 26, 2017 21:47:36 GMT
Is this a problem? All your starters average over 35 minutes per game. Mike Conley was averaging 27mpg and shooting less than 10fgs in some games after D-wade got injured which was since february 4. Conley never went beyond 30 minutes. you can check on it. I also had this issue before during the previous seasons, my temporary solution on this was adjusting my bench a bit and sometimes it worked for me. There are two sections I've found that relate to rotations and playing time but they affect all teams, so it could be something I tinker with but it does feel like a bit more of a niche area to investigate.
|
|
|
Post by Hanamichi Sakuragi on Mar 26, 2017 23:23:36 GMT
Mike Conley was averaging 27mpg and shooting less than 10fgs in some games after D-wade got injured which was since february 4. Conley never went beyond 30 minutes. you can check on it. I also had this issue before during the previous seasons, my temporary solution on this was adjusting my bench a bit and sometimes it worked for me. There are two sections I've found that relate to rotations and playing time but they affect all teams, so it could be something I tinker with but it does feel like a bit more of a niche area to investigate. I am interested to know how the rotations and playing time works. If we get a little bit of idea on how it works, it will make depth charts more interesting.
|
|
|
Post by Ian Noble on Mar 27, 2017 8:56:37 GMT
There are two sections I've found that relate to rotations and playing time but they affect all teams, so it could be something I tinker with but it does feel like a bit more of a niche area to investigate. I am interested to know how the rotations and playing time works. If we get a little bit of idea on how it works, it will make depth charts more interesting. Good point! One set of variables I've seen so far affect how often bench players play depending upon the game score, like if a team is down 20 points, more benchers play because the starters aren't getting the job done. I'll post some of it here when I get home.
|
|
|
Post by Hanamichi Sakuragi on Mar 27, 2017 9:29:57 GMT
I am interested to know how the rotations and playing time works. If we get a little bit of idea on how it works, it will make depth charts more interesting. Good point! One set of variables I've seen so far affect how often bench players play depending upon the game score, like if a team is down 20 points, more benchers play because the starters aren't getting the job done. I'll post some of it here when I get home. MUCH APPRECIATED!! So, we can assume that if in a game were in the difference was 20 and the Starters played 38+ minutes, the game was not lopsided until the last few minutes?
|
|
|
Post by Ian Noble on Mar 27, 2017 9:51:31 GMT
Good point! One set of variables I've seen so far affect how often bench players play depending upon the game score, like if a team is down 20 points, more benchers play because the starters aren't getting the job done. I'll post some of it here when I get home. MUCH APPRECIATED!! So, we can assume that if in a game were in the difference was 20 and the Starters played 38+ minutes, the game was not lopsided until the last few minutes? yeah that might be an assumption you could make I guess
|
|
|
Post by Ian Noble on Mar 27, 2017 19:58:17 GMT
Good point! One set of variables I've seen so far affect how often bench players play depending upon the game score, like if a team is down 20 points, more benchers play because the starters aren't getting the job done. I'll post some of it here when I get home. MUCH APPRECIATED!! So, we can assume that if in a game were in the difference was 20 and the Starters played 38+ minutes, the game was not lopsided until the last few minutes? See what you can make of this stuff (the comments come after the double backslashes //) START_PCT_DOWN_BY_20{0.6f, 0.2f, 0.2f, 0.0f, 0.0f} //60% starter plays START_PCT_DOWN_BY_15{0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //70% starter plays START_PCT_DOWN_BY_10{0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //80% starter plays START_PCT_DOWN_BY_5 {0.8f, 0.2f, 0.0f, 0.0f, 0.0f} //90% starter plays START_PCT_SCORE_TIED{0.8f, 0.2f, 0.0f, 0.0f, 0.0f} //90% starter plays START_PCT_UP_BY_5 {0.8f, 0.2f, 0.0f, 0.0f, 0.0f} //90% starter plays START_PCT_UP_BY_10 {0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //80% starter plays START_PCT_UP_BY_15 {0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //80% starter plays START_PCT_UP_BY_20 {0.6f, 0.2f, 0.1f, 0.0f, 0.0f} //70% starter plays
BENCH_DEPTH_DOWN_BY_20{1, 9, 15, 25, 25, 25} BENCH_DEPTH_DOWN_BY_15{1, 14, 30, 30, 20, 5} BENCH_DEPTH_DOWN_BY_10{10, 30, 30, 24, 5, 1} BENCH_DEPTH_DOWN_BY_5 {20, 30, 30, 14, 5, 1} BENCH_DEPTH_SCORE_TIED{15, 48, 20, 15, 1, 1} BENCH_DEPTH_UP_BY_5 {20, 30, 29, 15, 5, 1} BENCH_DEPTH_UP_BY_10 {10, 30, 29, 25, 5, 1} BENCH_DEPTH_UP_BY_15 {1, 9, 20, 30, 30, 10} BENCH_DEPTH_UP_BY_20 {1, 1, 14, 14, 20, 50}
|
|
|
Post by Ian Noble on Mar 27, 2017 20:05:39 GMT
The only changes I've made today are to two very minor variables.
Every now and then, for no reason at all, the sim engine would completely ignore what I'd told it to use as a lineup and start whoever the hell it liked because of these two variables:
PERCENT_PERIOD1_ALTERNATE_LINEUP {2} PERCENT_PERIOD2_ALTERNATE_LINEUP {4}
I've now set those values to zero which, bizarrely, still doesn't stop it happening - but it does happen even less than the tiny amount it was happening.
|
|
Deleted
Posts: 0
May 7, 2024 7:16:54 GMT
|
Post by Deleted on Mar 27, 2017 20:15:06 GMT
The only changes I've made today are to two very minor variables. Every now and then, for no reason at all, the sim engine would completely ignore what I'd told it to use as a lineup and start whoever the hell it liked because of these two variables: PERCENT_PERIOD1_ALTERNATE_LINEUP {2} PERCENT_PERIOD2_ALTERNATE_LINEUP {4} I've now set those values to zero which, bizarrely, still doesn't stop it happening - but it does happen even less than the tiny amount it was happening. Rest!
|
|
|
Post by Ian Noble on Mar 27, 2017 20:21:04 GMT
The only changes I've made today are to two very minor variables. Every now and then, for no reason at all, the sim engine would completely ignore what I'd told it to use as a lineup and start whoever the hell it liked because of these two variables: PERCENT_PERIOD1_ALTERNATE_LINEUP {2} PERCENT_PERIOD2_ALTERNATE_LINEUP {4} I've now set those values to zero which, bizarrely, still doesn't stop it happening - but it does happen even less than the tiny amount it was happening. Rest! que?
|
|
Deleted
Posts: 0
May 7, 2024 7:16:54 GMT
|
Post by Deleted on Mar 27, 2017 20:22:43 GMT
Its the sim engines way of giving some players the day off
|
|
|
Post by Ian Noble on Mar 27, 2017 20:39:54 GMT
Its the sim engines way of giving some players the day off Roger that
|
|
|
Post by Hanamichi Sakuragi on Mar 28, 2017 3:49:05 GMT
MUCH APPRECIATED!! So, we can assume that if in a game were in the difference was 20 and the Starters played 38+ minutes, the game was not lopsided until the last few minutes? See what you can make of this stuff (the comments come after the double backslashes //) START_PCT_DOWN_BY_20{0.6f, 0.2f, 0.2f, 0.0f, 0.0f} //60% starter plays START_PCT_DOWN_BY_15{0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //70% starter plays START_PCT_DOWN_BY_10{0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //80% starter plays START_PCT_DOWN_BY_5 {0.8f, 0.2f, 0.0f, 0.0f, 0.0f} //90% starter plays START_PCT_SCORE_TIED{0.8f, 0.2f, 0.0f, 0.0f, 0.0f} //90% starter plays START_PCT_UP_BY_5 {0.8f, 0.2f, 0.0f, 0.0f, 0.0f} //90% starter plays START_PCT_UP_BY_10 {0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //80% starter plays START_PCT_UP_BY_15 {0.7f, 0.2f, 0.1f, 0.0f, 0.0f} //80% starter plays START_PCT_UP_BY_20 {0.6f, 0.2f, 0.1f, 0.0f, 0.0f} //70% starter plays
BENCH_DEPTH_DOWN_BY_20{1, 9, 15, 25, 25, 25} BENCH_DEPTH_DOWN_BY_15{1, 14, 30, 30, 20, 5} BENCH_DEPTH_DOWN_BY_10{10, 30, 30, 24, 5, 1} BENCH_DEPTH_DOWN_BY_5 {20, 30, 30, 14, 5, 1} BENCH_DEPTH_SCORE_TIED{15, 48, 20, 15, 1, 1} BENCH_DEPTH_UP_BY_5 {20, 30, 29, 15, 5, 1} BENCH_DEPTH_UP_BY_10 {10, 30, 29, 25, 5, 1} BENCH_DEPTH_UP_BY_15 {1, 9, 20, 30, 30, 10} BENCH_DEPTH_UP_BY_20 {1, 1, 14, 14, 20, 50} One thing. It seems like the Quarter doesn't matter? So even though it is only happening in the 1st quarter, the bench will still takeover. What is the meaning of the decimal numbers in the {}?
|
|
|
Post by Ian Noble on Mar 28, 2017 8:15:14 GMT
What is the meaning of the decimal numbers in the {}? Those are tendencies, if you know what I mean?
|
|