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!
In sports games like Madden and NBA 2k, teams generally have a rating on a 0-100 scale. Basketball GM never had a similar feature… until today! Now you can view team ratings on the Roster and Power Rankings pages. Eventually I hope to put them in even more places.
So, how are the team ratings generated?
Earlier this week I added a bunch of advanced stats to Basketball GM. Well, now there's even more.
Team Advanced Stats: Go to Team Stats and switch from Team to Advanced to view stats like Pythagorean wins and losses and offensive and defensive ratings. Basketball-Reference.com has a good glossary of terms if you don't know what some of the stats are.
Player Win Shares and Ratings: Player pages and the Player Stats page now show offensive and defensive ratings along with offensive win shares, defensive win shares, win shares, and win shares per 48 minutes.
Offensive rating is a metric of offensive performance, although you should probably also look at usage rate when evaluating it, otherwise you might think a low usage player like DeAndre Jordan is an offensive star. Defensive rating is a metric of defensive performance, although it has trouble assigning credit to individual players so it is inaccurate for good defenders on bad defensive teams and bad defenders on good defensive teams.
Win shares (WS) is a holistic stat that aims to condense a player's performance into one number, similar to PER. OWS is the offensive part, DWS is the defensive part, and WS/48 is win shares scaled per 48 minutes played, and a WS/48 of 0.100 is average.
However it is generally better than PER because PER is really stupid in some scenarios, such as high volume inefficient scorers. Check out this guy:
He's an inefficient volume scorer. PER thinks he's a star, but WS thinks he's just a little above average. WS seems more correct to me.
This presents an interesting opportunity for Basketball GM players! AI logic is heavily based on PER, but WS is often better than PER. Until I improve the AI, you can easily get a leg up by looking at players who are rated differently by PER and WS.
WS is not perfect though. The main problem is the same thing I mentioned about defensive rating: it will underrate good defenders on bad defensive teams, and it will overrate bad defenders on good defensive teams. So be careful or you might wind up signing the next Enes Kanter to a max contract!
I rolled out a few new features over the past week, all aimed at one goal: more stats. Ideally, Basketball GM should provide you with all the advanced stats available for real basketball leagues. It's not there yet, but it's closer. Here's what's new:
Team Opponent Stats: On the Team Stats page, you can now switch between team stats, opponent stats, and advanced stats. For seasons played before this update, the only opponent stats will be blocks and points, since those have both been recorded for a long time. Then in new seasons you play, you will get all opponent stats.
Team Playoff Stats: Team playoff stats were always recorded, but there was no easy way to view them. Now you can toggle between Playoffs and Regular Season from the Team Stats page, just like you've always been able to do for Player Stats. It's crazy this feature was missing for so long!
Player Advanced Stats: This is the real juicy part, more advanced stats! When I put PER in the game, I never intended for it to be the only advanced stat. I always wanted more, but performance was kind of shitty in general and I didn't want to add more stuff to slow it down. But now, with the glorious success of Project Iverson, I can add new features without too much concern for performance (don't worry, I benchmarked it and all these additional stats have very little performance impact).
Player advanced stats now sit in their own table, which you can view on player pages for individual players, or on the Player Stats page by switching "Per Game" to "Advanced". In addition to the old standbys, I added TS%, 3PAr, FTr, ORB%, DRB%, TRB%, AST%, STL%, BLK%, TOV%, and USG%. See Basketball-Reference.com for definitions, cause that's where I got them from. Most of these won't be available for past seasons because they are based on the team opponent stats described above, but some will be.
All the % stats (like ORB%) are calculated using the formulas at the page linked above, which means they are estimates. I could have stored data directly from game simulation to calculate real values, but I didn't do that. No real reason why. Arguments could be made either way, but at the end of the day I doubt it matters much.
Hopefully this is just the start of more advanced stats. I'd love to add a better holistic stat than PER, which is really not a good metric. What do you want to see next? Let me know on Reddit.