Basketball GM is a single-player basketball management simulation game. Set your roster, make trades, draft prospects, manage your finances, and try to build a dynasty. Play it in your browser now, completely 100% free!
One of the fun things about Basketball GM is that you can view the entire source code to the game, which opens up a level of modding and customization that is matched by few other games. Furthermore, you can even get your improvements included in the game itself. As you can see, that has resulted in a nice trickle of improvements from the community, including a recent PR from icedjuro which added the annual ratings change to player pages:
But what I’m actually here to talk about is some work that nicidob recently did on game simulation realism. If you play through seasons quickly you won’t even notice this stuff. But if you look a little more in detail at player stats and box scores, you’ll probably appreciate these subtle improvements..
In PR 272, nicidob a look at the shot locations data based on player positions in BBGM. He found that there were some big gaps between BBGM and the NBA, most noticeably:
As you can see in the figure below, it is much more accurate after his adjustments.
You know how sometimes you’re comfortably winning in a video game, and then the AI starts basically cheating in a desperate attempt to catch up and make the game interesting? Video games take it a little far sometimes, but the same thing does also happen in reality. Here’s some evidence from the NBA. Teams play better when they’re losing, and worse when they’re winning. In terms of magnitude, a 10 point margin influences performance by about the same amount as home court advantage.
Basketball GM does have some logic to rest stars when a blowout occurs. But besides that, current score margin had no impact on game simulation. This resulted in more blowouts in BBGM, which is no fun.
In PR 276, nicidob addressed this by adding a factor based on the current score margin to game simulation. The end result is closer games, without actually changing a team’s overall winning percentage. This isn’t saying “good teams win more” or anything like that, it’s just saying “games tend to be closer, because teams adjust how they play when they’re winning or losing”.
You can see how the distribution of margin of victory has changed in the figure below.
In PR 273, nicidob made some adjustments to how fatigue is calculated in game simulation. Since fatigue is one of the primary factors the coach uses to influence substitutions, this produced some changes in how playing time is distributed. The most noticeable impact is that good players play a bit more. This is possibly the biggest of the three changes in terms of gameplay, because it will result in your top players being a little more important and your depth being a little less important.