Trades made after a player is a free agent no longer affect willingness to sign
You make some trades, clear some cap space, and then when you get to free agency, there he is! The savior of your franchise, willing to sign for $45M/year.
But you only cleared $40M in cap space! No big deal. One more trade to clear up the extra room and then... wait, now he's not willing to sign anymore? His mood decreased because he's "worried he'll be traded away"?
Until today's update, that was a really annoying thing that would sometimes happen. But not anymore!
Adding OL stats accidentally decreased the importance of OL
The offensive line stats recently added to FBGM have been very popular. They've also caused a bit of confusion for some people about if they changed the importance of OL in the game.
Previously, individual blocking matchups didn't exist, and instead it was some aggregate team-level "pass/run defense vs pass/run blocking" value. When adding OL stats I wanted them to be real, so I rewrote that code to simulate the blocking of individual OL so I could record PBW and RBW stats and have them actually be real meaningful things.
Updated FBGM award formulas
Okay this is like 3 updates in a row about FBGM awards which is kind of silly, but I think things are improving at least!
This update fixes two problems with the old awards system:
Previously most awards were based on AV, which is kind of weird in some situations.
The defensive awards were not based on AV, which meant you could have one defensive player win MVP but not even be in the top 10 for DPOY - very weird!
So, what's the problem with AV?
Offensive Player of the Year (OPOY) award in FBGM
Adding an OPOY award to FBGM is a commonly requested feature. Up until now I resisted because I thought OPOY was kind of a weird award. Usually the MVP is an offensive player, but then usually the OPOY is some other offensive player? But sometimes they are the same? Some weird logic in that award.
Well, as the guy writing the code for FBGM, I have the opportunity to make the logic whatever I want! So here's how it works:
Offensive line stats
Offensive line (OL) is an interesting position in football because it's extremely important but there are no traditioanl stats for OLs. Like if you go to the player page for an OL on espn.com you see literally no stats. There are some non-standard or advanced stats people use for OL, but they tend to be either qualitative or not very informative.
FBGM has never had OL stats. I did it this way because of what I wrote above - I felt like OL stats were kind of weird and uncommon, so nobody would miss them. But I was wrong about that. Many users have asked me for OL stats, and it does make sense that people want some way to get insight into what their OL are doing.
Well, now FBGM has OL stats! The stats I chose to include are pass block win rate (PBWR), run block win rate (RBWR), and sacks allowed.
Stat totals in the play-by-play
When viewing a live sim of a game (or when viewing a box score with a scoring summary, so in all the sports besides basketball) you will now see total values of key stats shown. For instance, when a player in ZenGM Baseball hits their 40th home run, it will say Home run (40) rather than just Home run.
The implementation is slightly different in all the sports.
New anti-tanking draft type: Carry-Over Lottery Allocation (COLA)
Tanking has been a big issue in the basketball world for many years, and it's probably never been more prominent than right now. This has led to many proposals to replace the draft lottery with a better system that discourages tanking. IMHO most of those ideas have serious flaws. The best one I've seen is called the Carry-Over Lottery Allocation (COLA), and now it's available in BBGM (and the other ZenGM games):

I want to explain more about how COLA works and how it's implemented in BBGM, but first I think I need to explain what it's trying to accomplish.
FBGM updates to keep you busy on Super Bowl bye week
Lately I've been working on a bunch of little improvements for FBGM and I'm releasing them all today, since there are no real football games today so maybe you are looking for something else to do :)
The new features fall into a few different categories:
Exporting player bio info is less confusing
This is a niche feature so probably not of interest to most people, but it needs a blog post to explain!
You can edit generated player biographical info (countries, names, colleges, etc.) by going to League Settings > Players > Biographical Info. There is a semi-nice UI to edit it there within the game, but you can also import/export biographical info.
Previously, if you clicked "Export" in a league with default settings, you'd get a blank file. The reason is that internally it only explicitly records settings that are different than default, to save space. So if your settings are all default, there is nothing to export.
2025 usage stats
Every year I post some usage stats here. Last year was a bit of an anomaly - for the first time ever, usage declined! Fortunately, that trend reversed itself this year and we are back to growth, setting new records in all of the usage metrics shown below. This is due in part to the mysterious bump in traffic on February 2, 2024 which wound up persisting throughout the entire year.
Some highlights from the full data below:
- Users spent 482 years playing ZenGM games in 2025, meaning that there were an average of 482 people playing one of my games throughout the entire year, 24/7/365
- 7 million leagues were created and 25 million seasons were simulated
- Overall usage was up 13% over last year and ZenGM Baseball grew the fastest at 26%, although in absolute numbers it's still much less popular than Basketball GM and Football GM
In other news, my 2nd son is also 1 month old today, which is why there haven't been many updates lately, just some small bug fixes. Hopefully soon I will get back to adding new features!
2025 usage stats: