Basketball GM is a completely free sports management simulation game. You are the general manager of a basketball team, tasked with building your roster to compete for a championship while managing your finances. As of now, your goal can be whatever you want: winning the most championships, making the most profit, developing players from rookies to stars, etc. You can make an unlimited number of different leagues from the dashboard, each one with a different set of random players.

User Interface

From within a league, the most important user interface element is the Play Menu, which you can access with the big blue Play button at the top of the screen. Any context-dependent action, like playing a game or moving from one phase to another, is done from the Play Menu. Everything else about the user interface should (hopefully) be self-explanitory.

Gameplay Overview

Each season of the game is divided into several phases:

League Rules

League rules are generally modeled on the NBA, but simplified.

Salary cap

The salary cap is $60 million. This is a soft cap, in the sense that even if you are over the salary cap, you can still:

Contracts

The maximum contract amount is $20 million per year and the maximum contract length is 5 years.

The minimum contract amount is $500 thousand per year and the minimum contract length is 1 year (or, until the end of the season, if the season is already in progress).

When a contract expires, you have the opportunity to negotiate a new contract with the player. If you don't come to an agreement, the player becomes a free agent. This is important because, based on the salary cap rules, you can go over the cap to resign your own players but you can't go over the cap to sign a free agent.

Roster

The maximum roster size is 15. You can never exceed this, except during the draft. But right after that, you'll have to release or buy out enough players to get under the limit.

The minimum roster size is 5. You must be above this limit to play games.

Player Ratings

Player ratings for a variety of categories (shooting, rebounding, passing, dribbling, etc.) are on a scale from 0-100. The whole scale is used, so a typical value for a rating is 50. Roughly, the overall (average) player ratings mean:

However, the overall ratings aren't a guarantee of performance. The particular mix of ratings plays into success (e.g. a short player having a 100 shot blocking rating doesn't do much), as do a player's teammates (e.g. a good rebounder doesn't help your team as much if you already have a few other good rebounders).

How does it work?

There are no accounts, no passwords, no nothing. All the game data is stored locally on your computer using IndexedDB. This has advantages and disadvantages. The main advantage is that it is really cheap to run this game, since simulations can occur in your web browser rather than a central server; this is what allows the game to be free and unlimited. The two main disadvantages are (1) doing simulations in your web browser incurs some performance restrictions (but it's not that bad), and (2) since the games are stored on your computer and not on a server, you can't access the same leagues on different computers (eventually this will be possible though).

Performance

Game simulation can be taxing on your computer, particularly as additional seasons are simulated and the database grows. There are a couple of tricks you can use to speed this up:

  1. Don't open multiple windows/tabs viewing while you are simulating games. If you do, then all of the windows will try to update their content every day, which takes valuable computing resources away from actually simulating the games.
  2. Don't have a complicated page (such as the league dashboard) open when you simulate games. As the simulation progresses, the content of whatever you're viewing updates each day. If you're viewing something complex, this can be a little slow. For the fastest performance, view something old like the standings from a previous season which does not have to update ever.

Customized rosters

By default, all players are completely randomly generated. Click here for more info about custom rosters.

Make Basketball GM better!

Basketball GM is open source. That means you can copy/edit/improve/redistribute the game. The code is on GitHub, avaliable under the GNU Affero General Public License. If you want to help make Basketball GM better, there are tons of ways you can help. You can start hacking on anything you want or send me an email if you want to discuss things first.

Still not sure about something?

If you have a question or think you found a bug or you want to request a feature, either send an email (commissioner@basketball-gm.com) or submit an issue on GitHub.