LobbyGlitchFix
Fixes the lobby glitch that causes multiplayer games to get stuck on the results screen.
About this mod Author’s original text
Garfield Kart Furious Racing Lobby Glitch Fix
This mod fixes the _lobby glitch_ bug in Garfield Kart Furious Racing multiplayer games.
Installation
Only the multiplayer host needs to install the mod.
- Go to
- Install the mod using one of the common mod managers (e.g. r2modman, see pinned in
Manually
- Install BepInEx into the Garfield Kart game root folder
- Grab latest 5.x release from
- More info:
- Download the latest GKFRLobbyGlitchFix.dll from the releases page.
- Copy it into /BepInEx/plugins/
- If you did everything right, you will see "lobby glitch fix" in the Online Multiplayer menu title:
Example file structure:
C:\Program Files (x86)\Steam\steamapps\common\Garfield Kart - Furious Racing
├───BepInEx
│ ├───cache
│ ├───config
│ ├───core
│ ├───patchers
│ └───plugins
| └───GKFRLobbyGlitchFix.dll
├───Garfield Kart Furious Racing_Data
└───MonoBleedingEdge
Background
What's the lobby glitch?
What some circles call the "lobby glitch" happens semi-rarely in multiplayer games. When it happens, you get stuck on the race results screen instead of going to the next track after the countdown. You can't exit the game normally, but have to force quit and restart the game.
Why does it happen?
Garfield Kart has special timers that take care of countdowns, such as:
- END_OF_RACE: 20s countdown after the first player finishes, after which the race ends for everyone and the results screen shows.
- RESULTS: 10s countdown on the results screen, after which the game goes to the next track (or the podium scene).
Side note: the countdown display only activates when there are 15s left, so the 20s END_OF_RACE countdown doesn't show for the first 5s.
The game can only have one such timer active. The game ignores new timers if one is already active.
The lobby glitch happens due to a race condition (pun intended):
- Whenever a player finishes, the END_OF_RACE timer is triggered again. Not just for 1st place. Usually, it doesn't actually start, because the END_OF_RACE timer from 1st place is already active.
- After the END_OF_RACE timer finishes, it moves to the results screen, which triggers the RESULTS timer on entering.
- If a player finishes exactly when the END_OF_RACE timer finishes, but before the RESULTS timer is started, it will trigger another END_OF_RACE timer (which now starts since no other timer is active).
- This second END_OF_RACE timer now blocks the RESULTS timer from starting, so the results screen never ends. When the second END_OF_RACE timer finishes, it does not trigger the RESULTS timer again, because the game is already in the results menu.
You can observe this behavior in the game: the countdown on the results screen starts at 15s instead of 10s (because it's actually the 20s END_OF_RACE countdown again, with the display kicking in at 15s).
The race condition risk increases if there are players with slow connections. The game waits for a synchronization point (all players received results from master client) before it shows the results. This makes it much more likely for another player to cross the finish line inbetween the two timers.
Log sequence when the glitch doesn't happen
| Log event | Comment |
|-------|---------|
| InGameGameMode.OnLocalHumanDriverRaceEnded | 1st place crosses finish line |
|StartTimer(END_OF_RACE) - active timer: NONE | END_OF_RACE timer starts. No other timer is active. |
|Active timer now: END_OF_RACE | Game has accepted END_OF_RACE timer|
| InGameGameMode.OnLocalHumanDriverRaceEnded | Another player crosses finish line (before the countdown is done) |
| StartTimer(END_OF_RACE) - active timer: END_OF_RACE, time left: 3.1504045s | Another END_OF_RACE timer starts, but the first one is still active for 3s
Install & use Install: follow the bundled instructions
- Unzip the archive from playbuff and read the bundled readme / instructions first.
- Most mods rely on the game's mod loader — the usual route is a community mod manager (such as r2modman): pick this game, install, and it handles the loader and dependencies.
- For a manual install, put the mod files into the matching Mod / plugins folder inside the game directory.
- Launch the game to confirm it loaded; mods with listed dependencies need those installed as well.
Install locations vary a lot between mods — the bundled readme is the most reliable guide.
Install these first, or the mod will not work: