Patch 2.0
For this round of patch notes, our Live Ops producer Kevin included a little more insight about our approach and journey to solve this round of issues. As always, we appreciate hearing from players with information that helps us improve the game. If you encounter an issue, please submit a bug report here!
- Fixed the problem where Contracts were sometimes not progressing when players joined an in-progress game.
- Dev note: Whew, this was a tough one that took us a long time to track down. The breakthrough came from a comment we found from ScatteringSky in our discord, who said contracts always seemed to progress if they were joining from the Hideout, and only failed when they were joining directly from a previous match. This gave us the hint to compare those two different flows. We were looking for a problem where the match progress data was not being created properly, and it always seemed to be. But it turns out that in the specific flow of finishing a match and then joining another match that was in-progress actually deleted the progress data after it was created. So it wasn’t a failure to create the data, but a specific situation that deleted it at the last second.It always helps to get reports from players that include exact steps we can copy to reproduce the bug. So, thanks, ScatteringSky!
- Fixed another bunch of issues that could cause players to get stuck in the Match Lobby or Next Match screen while a match started and could be heard in the background.
- Dev note: You might ask why this one keeps coming up and why it’s so hard to fix. Well, multiplayer games are really complicated, and this specific situation is the confluence of events that is the most complicated of all. Up to eight players are all trying to connect to the same server and loading the match content (the level, the ball types, etc) into memory, while finding out information about other players in the match so they can load those players' equipment, while also telling the server what equipment they have. If at any point one of those players fails to load something, we need to figure out why. Did they disconnect, and we need to find a replacement? If so, can we do it in time before the match starts, or should we start looking for a backfill? How long do we wait until we the determine the player has disconnected? Maybe they are just taking a long time to load, and if we wait long enough they will eventually join. Should we tell the other players to start playing the introduction sequence while we wait? Furthermore, what if one of those players lost a message from the server they’re trying to connect to, and are stuck waiting for something that will never come? Or what if they get some of the messages but not all of them, so they can get stuck in an in-between state?For each of these fixes, we simulate different kinds of failures to discover new ways that the process could break. This takes time and effort and creativity, but ultimately when we correct them, it makes the system more reliable. However, due to the number of items in play with this particular issue, we wouldn’t be surprised if there were more we haven’t anticipated yet, so keep those reports coming!
- Fixed an issue where Crew Contracts could change after the player left a group with Crew Members.
- Dev note: Our Crew Contracts system has had some bugs, but we’re making progress! It’s a complicated system that combines issues with Contracts, Crews, and time (in that we select different Crew Contracts every week for each Crew), and these situations can be tricky to replicate in a testing environment, which is why we’re again so grateful to players who have provided information that helps us replicate them. Thanks for your patience as we continue to track these down and fix them!
- Just checking to see who reads the Patch Notes: Starting immediately, you’ll be able to enjoy Happy Hours from 9:00 a.m. to 12:00 p.m. UTC every weekday this week, Monday through Friday. During Happy Hours, you’ll earn Bonus XP for every KO you make in Street Play and League Play!
- Fixed an issue where players could pass through or become stuck in thin parts of the environment if they were thrown in Ballform, but jump out of Ballform before hitting the underside of a bus stop, a bridge, or a low ceiling.
- Dev note: We’re sure you’ve seen bugs like this in other games, but Knockout City is special in that when you turn into a ball, we treat you like a ball, and the physics engine simulates you as if you were a ball, which is different than simulating a Brawler. Switching between those two modes on the fly can cause all kinds of fun surprises!
- Fixed an issue where the Matchmaking popup could be stuck on screen saying “Waiting for Players” after the player joined a match in progress.
- Dev note: This little popup is on the hook for telling you what’s going on with what we call the “match flow,” which is all the things that could be happening to you when you’re looking for a match, finding one, being told to join a server, telling the server you’re joining a server, being told that the server has heard that you’re joining a server… you get the idea. You wouldn’t believe how many meetings we’ve had about this one little popup, but we’re hoping that’s all in the past now!
- Fixed an issue where a player joining a Private Match while the group is still in the team selection screen can end up in the match on a team that would not score points, and another issue where if one player failed to join a Private Match, other players could not select a team.
- Dev note: Remember all that stuff I said about how complicated it was to get everybody to join a match? Eventually we need to get them to pick a team, too! It adds an extra step that requires its own synchronization of all players involved.
- Prevented players from performing a fake throw that looked like a real throw when done simultaneously while jumping.
- Dev note: Another player report led to this fix. We want to be sure that players with sharp eyes can figure out if their opponent is trying to fake them out, but we don’t want to make it impossible!