VapuFastpit
Skips the pit stop wait and between-day transit, but keeps DaySummary and GameOver intact.
By Vapu
| Last updated | 7 hours ago |
| Total downloads | 17 |
| Total rating | 0 |
| Categories | Mods |
| Dependency string | Vapu-VapuFastpit-1.0.0 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2100README
VapuFastpit
A BepInEx mod for Gamble With Your Friends that removes the parts of the day-transition flow you have to sit through without actually adding any gameplay — while keeping the screens you genuinely want to see (DaySummary, GameOver) intact.
What it skips
- Pit stop / leave-casino countdown. The end-of-day trigger zone at the casino exit normally counts down for several seconds once all players are inside. This mod reduces that countdown to a fraction of a second and lets it fire as soon as one player is in the zone, so AFK or stuck teammates can't stall the day.
- Lose-scene pit jump. When you lose, the game loads
LoseStateScenewhich contains an actual pit you have to walk to and drop into before the GameOver screen appears. This mod automatically triggers the same SceneSwitcher the pit would have triggered, so the GameOver flow starts on its own. - GameOver result roll. The GameOver UI normally animates each line (title, day reached, per-player contributions, totals, ticket balance) with delays between segments. This mod feeds skip requests into the UI's own per-segment skip system so each phase completes instantly while still firing the callbacks that set the final values — you see the full result screen, just without the long buildup.
What it does NOT touch
Mirror.NetworkManager.ServerChangeScene— scene transitions are unmodified,LoseStateScenestill loads on a loss.SkipUI.SetSkippableForLocal— the DaySummary skip vote is not auto-cast, so the day-end summary screen behaves exactly as in vanilla.DaySummaryUIandGameManager.ShowDayStats()— the between-day summary is shown in full.EndingCutscene_Coinflip_Won,EndingCutscene_Coinflip_Lost,EndingCutscene_Debt_Paid— endgame cutscenes are unmodified.FollowUsSceneManager— the post-credits scene is unmodified.
Configuration
Settings are written to BepInEx/config/vapu.fastpit.cfg on first run.
| Section | Key | Default | Description |
|---|---|---|---|
Pit Stop |
CountdownSeconds |
0.2 |
Replacement for AllPlayersTriggerZone.delayBeforeEvent. 0 makes the trigger fire instantly. |
Pit Stop |
TriggerOnAnyPlayerInZone |
true |
If true, the zone fires when at least one player is inside instead of requiring all of them. |
GameOver |
AutoSkipAnimation |
true |
If true, GameOverUI's animated phases auto-complete via its own skip mechanism. |
GameOver |
AutoJumpInPit |
true |
If true, the host server auto-invokes the LoseStateScene SceneSwitcher on scene load, so nobody has to physically jump in the pit. Host-only effect. |
GameOver |
AutoJumpDelaySeconds |
1.5 |
Seconds to wait after LoseStateScene loads before auto-triggering the SceneSwitcher. Gives LoseInitializeRoutine and player spawn time to settle. |
Multiplayer
- The pit-stop countdown patch runs on the host (the trigger zone's logic only executes server-side after
OnStartClient). - The auto-jump-in-pit patch is gated by
NetworkServer.active, so only the host invokes it. Clients without the mod still see the result because the host callsGameManager.ShowGameOverStats()→RpcPlayGameOverFeedback→GameOverUI.Show()on every client. - The GameOver animation skip is local to each client. Install the mod on every machine that should see the fast version.
Requirements
- Gamble With Your Friends (Steam, Unity 6000.x, Mirror Networking)
- BepInEx 5.4.x (BepInExPack)
Installation
Thunderstore Mod Manager / r2modman
Use Import local mod in the manager and select the release zip.
Manual
Drop VapuFastpit.dll into …/BepInEx/plugins/VapuFastpit/.
Build from source
dotnet build -c Release
The project targets netstandard2.1. It references the BepInEx core DLLs and the game's Assembly-CSharp.dll / Mirror.dll / UnityEngine.*.dll — adjust the BepInExCore and GameManaged paths in VapuFastpit.csproj to match your install.
How it works internally
| Hook | Type | Effect |
|---|---|---|
AllPlayersTriggerZone.OnStartClient |
Postfix | Writes delayBeforeEvent and tightens colliderCheckInterval on every instance of the trigger zone as it comes online. |
AllPlayersTriggerZone.CheckPlayers |
Prefix (replaces) | Skips the "all players inside" requirement and starts the countdown as soon as one player is in the bounds. |
GameOverUI.Show |
Postfix | Starts a coroutine that keeps _pendingSegmentSkips topped up, so each WaitForSecondsOrSkip call consumes a skip and fires its end-state callback immediately. |
SceneManager.sceneLoaded (event) |
— | When LoseStateScene loads on the host, waits AutoJumpDelaySeconds, finds the scene's SceneSwitcher and calls ServerProgressSceneWithoutInteraction(). With GameManager.state == Lose (2) it routes into ShowGameOverStats(). |
License
MIT.