Posts tagged "Bug Fix"
The finances revamp from a couple months ago went pretty smoothly. Old leagues got upgraded to the new system, the new system generally worked as intended, and people seemed to like it.
But after a little while, I got a bug report from someone claiming that progs are too large now, that something about the effect of coaching spending must be different.
My initial reaction was to not believe it. I mean, I wrote the code, I know how it works, I know it's supposed to not be literally exactly the same as before, but any difference should be so small you can't notice it. So I figured it was just some psychological trick, like you get particularly lucky/unlucky due to random chance, and then you assume it happened because of this other thing that you know happened. Perfectly normal. People do that all the time.
But I kept getting reports like this, maybe once per week. I became at least slightly concerned that this was a real bug.
Then I saw a comment by legendary BBGM user (and sometimes BBGM dev) nicidob saying he thinks something is wrong too.
TLDR: nicidob was actually wrong, the thing he noticed was just random variation. But everyone else was correct. There was indeed a bug that made coaching and health spending more powerful than they were previously. That is now fixed. Read on if you want the details.
There are plenty of bugs in my game. Usually it's something like "when I click on X it shows an error message" or "when I change two settings at the same time, it breaks" or "the simulation is doing really stupid stuff". Usually bugs are not very fun, they're just annoying. Maybe the funniest bug previously was when the effect of OL was reversed in Football GM, so playing a bunch of kickers at OL made your team dominate. The problem was that, in addition to being funny, it was also a game-breaking bug. Too serious to truly be funny.
Now I think I have seen (and fixed!) a funnier bug. This is a bug in ZenGM Hockey that only rarely happens. It's so rare that in the 2+ years ZenGM Hockey has existed, nobody ever noticed it. But recently it was noticed for the first time... when it happened with 8 seconds left in game 7 of the conference finals in a multiplayer league!
This isn't that important of a bug fix, and I bet most people won't notice either way. But it does need a bit of explanation to make sense, so here is a blog post!
Some people reported performance issues in my games recently. After debugging I found that there is indeed a serious performance bug in some situations. For example, viewing the standings page and auto playing a season took 3x as long as it did a couple weeks ago. That's pretty bad!
After looking in my past commits to identify exactly when the slowdown started, I found it happened when I upgraded @rollup/plugin-commonjs from version 21 to 22. That's a package used in compiling JS for production. Annoyingly, it's only used in production mode and not in dev mode, which makes it harder for me to notice a bug like this. But for this package to cause a slowdown is strange... it feels more like something that should either work fine or completely break, not cause a performance issue. So while I could stop here, switch back to the old version, and call it a day... let's go further.
Previously, some of you had noticed something strange about team construction and game simulation in Football GM. If you made a team of all one type of player, that team would actually perform pretty well, usually making the playoffs. Obviously that doesn't make any sense.
Looking at it more closely, I noticed that only passing stats were behaving strangely. A team of all kickers was horrible at running and at stopping the run. But they were incredible at passing! So I took a look at the passing code. Turns out the problem was just a small typo. The effects of pass blocking and pass rushing were reversed for calculating the completion percentage and distance of passes. My bad. Small fix.
But this is actually really important, and not just for silly things like a team of all kickers!
When I make a small improvement to Basketball GM, it feels silly to write a whole blog post about it. But if I don't, some people will never realize what happened. So maybe this is a good idea: a single blog post explaining several recent small improvements.