Posts tagged "Game Simulation"


Holds and blown saves in ZenGM Baseball

Until this update, ZenGM Baseball did not track blown saves (BS) or holds (HLD). Now it does.

You might be surprised to know that blown saves and holds are not "official" stats, and there are not agreed upon definitions for those stats, and different sources handle them differently. For that reason, I am writing this blog post to explain exactly how it works in ZenGM Baseball.

Read more...


Neutral site for playoff/finals games

This is yet another blog post to explain a minor new feature!

In the NFL, the Super Bowl is played at a neutral site, so neither team gets a home field advantage.

A few years ago, I added a similar feature to FBGM, so that in FBGM the championship game has no home field advantage.

The problem was, this wasn't exposed in the UI anywhere, so it wasn't clear what was happening except for people who very carefully pay attention to the changelog. Some people were even manually turning off the home field advantage before playing the championship game, even though that was not necessary because it was already silently happening behind the scenes.

Read more...


Basketball game clock rewrite

The play-by-play in BBGM has always been a little weird. If you looked at it closely, you would notice some strange and unrealistic things related to the game clock. Today a bunch of that is fixed. Here's a list of some of the changes you might notice:

Read more...


Several small Football GM stat/simulation improvements

Simulated sports can never be exactly the same as real sports, but the closer it gets, the better. So when you notice something weird in the stats or in the play-by-play log, please let me know. That's how I found out about all these little issues in Football GM that I just fixed in version 2023.06.21.1277:

Read more...


Game simulation settings for all games

There have been settings in Basketball GM to let you make leaguewide changes to game simulation - like changing the pace of games, the number of three pointers, etc. Now that same feature is here for the other sports too!

Want to simulate 1930s football, before they really figured out this newfangled "forward pass" thing? Turn up interceptions, and turn down the passing rate, yards, and completion factors.

Or 1980s hockey with crazy scoring? Turn up pace and turn down saves.

Or baseball in the dead-ball era? Turn down power and fly balls.

Or whatever you want. It's your league!

Here's what the settings look like in Football GM:

Read more...


Players act differently when they're in foul trouble

There are many ways in which my video games differ from reality. One is fouling in Basketball GM. In real life, everybody knows about foul trouble. If a player gets too many fouls too early, his coach might sub him out. If he stays in the game, he's probably going to try to avoid fouling by being less aggressive on defense. Common sense stuff.

Until today, none of that was in BBGM. Players would play with the same level of aggression regardless of the foul situation, and substitution patterns had nothing to do with fouls. The end result was that foul outs were more common in BBGM than in real life. Especially really early foul outs. It's really frustrating when it's game 7 of the finals and your star decides to foul out in the 2nd quarter while your coach does nothing about it!

Well, that's not going to happen any more, because now BBGM knows about foul trouble.

Read more...


I rewrote the football game simulation engine to fix weird bugs and improve penalties

One frustrating thing about Football GM, both for me and for users of the game, is all the game simluation bugs. There are fewer than there used to be. I try to track them down and fix them when people report them to me. But sometimes, that doesn't work very well.

Like I got a bug report that sometimes the ball carrier would cross the first down line, fumble, the offense recovers the fumble behind the first down line, and yet it still counted as a first down.

I investigated it, found the part of the code that was doing the wrong thing, and... I couldn't fix it. The bug was ultimately caused not by a little typo or mistake, but a fundamental problem in how game simulation worked. Specifically, the problem was that there was no sense of history. All of the "state" of the game (possession, down, distance, score, etc.) was stored just once. As the game progressed, state was updated. But what if you need to go backwards? Like the aforementioned first down line example. Or, even more troubling, penalties. With penalties, there is always the possibility that anything that happens in the game could be reversed. I had some hacky code to handle some of that, but it was limited, mostly by the fundamental problem mentioned above.

Read more...


No more hard cutoff in three point shooting tendency

August 11, 2021-

You may have noticed a funny thing about the number of three pointers that certain players take. There was a hard cutoff at about 35 in the 3 point rating. Slightly above that cutoff and players would take a few three pointers per game. Slightly below and players would take none. This has never made any sense.

It was particularly annoying for players barely above the cutoff, since they are bad three point shooters, so you don't actually want them taking a bunch of threes. That puts you in a situation where you may be hoping a player's three point rating does not improve, so they can stay below the cutoff rather than chucking up a bunch of inefficient shots.

Now, finally, that hard cutoff is gone. The number of three point shots is now continuous. Players with ratings from 35-45 will shoot fewer three pointers (most noticeable towards the lower end of that range), and players with ratings below 35 will shoot more. Not a lot, but more than the 0 they shot previously.

Some people may think a better solution would be a more fundamental change in how shot selection works, and they might be right. The advantage of what I did here is that it's a quick little fix that mostly leaves the game alone, except to address this one annoying issue.


Several Football GM updates, including improved player and team ovr formulas

Football GM has long deserved some updates to the core of the game. Here are some.

First, and most importantly, there are new player ovr formulas for all positions. In my opinion, this was the biggest problem with FBGM. Too many players would consistently overperform or underperform their ovr rating, which made the game feel random and unpredicatable. That's especially bad in a football game, where the small number of games per season and single elimination playoffs already makes it pretty unpredictable.

Read more...


New feature in God Mode to select the winner of a game before it's played

I just added a fun new feature to leagues with God Mode enabled. Now you can determine who wins a game before you sim it.

On the Live Sim page you can set the winner of any of today's games:

Read more...


The Elam Ending comes to BBGM

If you watched the 2020 NBA All-Star Game or The Basketball Tournament, you're familiar with the Elam Ending, an exciting and creative new idea in the basketball world. If not, check out this great introduction by Zach Lowe, which was how I first heard of it a few years ago.

The basic idea is pretty simple. Instead of a game ending when time runs out, have it end when a team hits a target score. But how do you pick the target score, so it doesn't come really early or late? You start a game like normal, play up until you hit some time limit, and then set the target to be "the leading team's score, plus some extra amount". For example, say with 4 minutes left in the 4th quarter in a 93-90 game, suddenly the clock disappears and it becomes "first to 101 wins".

There's a lot of advantages to this system. No parade of free throws as the losing team fouls to catch up - with the Elam Ending, fouls never help you. No endless timeouts to save precious seconds on the clock - with the Elam Ending, there is no clock. No boring ending with the winning team just trying to run out the clock - with the Elam Ending, you can't win by doing nothing, you need to hit that target score.

It's such a clear and obvious improvement that it went from some random guy's crazy idea to the NBA All-Star Game in a matter of years. And now it's reached yet another milestone: the Elam Ending is in Basketball GM!

Read more...


Three improvements to game simulation realism

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:

Read more...


Game simulation improvements and tweaks to ovr (beta)

Update 2019-11-13 - Everything in this blog post is now officially released! The original blog post follows:

I just updated the beta site yet again. Most of the game simulation and stat changes were already released there, I just hadn't written a blog post about it. But now that I'm also making some minor changes to the ovr formula, I figured I should blog too.

So here are all the changes in the beta:

Read more...