Skip to content

SaltedByte/nopitstops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

No Pit Stops

A BepInEx 5 mod for Gamble With Your Friends (Unity Mono, Mirror multiplayer) that cuts the dead time between rounds:

  • Auto-skips the post-day stats, ending sequences, and "Follow Us" screen by automatically casting your skip vote the moment the existing in-game vote opens.
  • Shortens the trigger-zone countdowns (the 3-second waits at the car / pit-entry) to a configurable fraction of a second.
  • Lowers the "all players in zone" gate to a configurable percent — or just one player — so a single AFK friend can't stall the whole lobby.
  • Hard-skips the loss "pit" cutscene on a full loss, dropping you straight back into Home.
  • Adds a "Give Up Day" button to the in-game escape menu with a unanimous-by-default vote.
  • Shows on-screen toast notifications every time a skip event fires, so you can see what the mod is doing in real time.

⚠️ Multiplayer note: all "host-side" features below (countdown shortening, player threshold, pit skip, Give Up vote tally) only have an effect when the lobby host has the mod installed. If everyone in your friend group runs the mod, everything works for everyone. The auto-vote on the existing SkipUI is the one feature that works per-client.


Installation (end users)

Step 1 — install BepInEx 5

  1. Download BepInEx 5.4.23.5 (win x64) from the official releases page (BepInEx_win_x64_5.4.23.5.zip or newer 5.x).
  2. Extract the zip directly into your game folder. Find it via Steam → right-click Gamble With Your FriendsManageBrowse local files. After extraction, the folder should contain a BepInEx/ directory and a winhttp.dll next to Gamble With Your Friends.exe.
  3. Launch the game once from Steam, wait until you reach the main menu, then quit. This generates the BepInEx/config/ folder and confirms BepInEx loaded successfully (you can verify by checking BepInEx/LogOutput.log for Chainloader started).

Step 2 — install No Pit Stops

  1. Download the latest release zip (NoPitStops-x.y.z.zip) from the releases page.
  2. Extract it directly into your game folder. The contents are structured as BepInEx/plugins/NoPitStops/NoPitStops.dll, so extracting at the game root drops the DLL into the right place.
  3. Launch the game. You should see a toast in the top-right of your screen reading "No Pit Stops loaded — 7/7 patches active".

Step 3 — verify it's working

Press F8 anywhere in the game — a toast saying F8 self-test — mod is alive should pop up. If you see it, the mod is installed correctly. If you don't, check BepInEx/LogOutput.log for errors and see Troubleshooting below.


Configuration

After your first launch with the mod, edit <game>/BepInEx/config/com.saltedbyte.nopitstops.cfg to tune behavior. All settings are hot-reloadable on the next launch.

Section Setting Default Description
AutoVote Enabled true Auto-cast your skip vote when the in-game SkipUI appears.
AutoVote DelaySeconds 0.5 Wait this long before voting, so you can see the bar appear.
Hotkeys EnableF9ForceVote true F9 force-sends a skip vote on any visible SkipUI (debug fallback).
FastCountdown Enabled true Shorten the trigger-zone countdowns. Host-side only.
FastCountdown Seconds 0.25 Countdown duration once threshold met. Min 0.05s, only ever shortens.
PlayerThreshold Enabled true Override the "every player in zone" requirement. Host-side only.
PlayerThreshold PercentRequired 0.5 Fraction of players needed in the zone (0–1). Always rounds up; min 1.
PlayerThreshold SoloTrigger false If true, only 1 player needed. Overrides PercentRequired.
SkipPit Enabled true Hard-skip the LoseStateScene cutscene. Host-side only.
GiveUp Enabled true Show the "GIVE UP DAY" button in the in-game escape menu.
GiveUp Threshold 1.0 Fraction of players required to vote yes (0–1). 1.0 = unanimous. Always rounds up; min 1.
UI ShowToasts true Display in-game toast notifications when skip events fire.

Troubleshooting

Symptom Likely cause Fix
No "No Pit Stops loaded" toast on launch BepInEx didn't load Check that winhttp.dll is in your game folder next to the .exe. Re-do step 1 of installation.
Toast appears but F8 does nothing Plugin loaded but Update isn't running Should not happen — paste the contents of BepInEx/LogOutput.log.
Mod loads (7/7 patches) but countdowns aren't shortened in MP You're not the host These features are server-side only. Ask the host to install the mod, or host yourself.
Give Up vote sent but day never ends The host doesn't have the mod The vote message goes nowhere if no one's listening server-side. Host needs the mod.
Pit cutscene plays despite SkipPit = true You're not the host Same — host-side only.

For anything else, attach <game>/BepInEx/LogOutput.log when reporting an issue. The log shows which patches applied, when handlers registered, and every skip event as it fires.


Building from source

You need .NET 8 SDK on Windows.

# Clone, then from the repo root:
dotnet build src\NoPitStops.csproj -c Release

The build automatically copies the resulting DLL into <game>\BepInEx\plugins\NoPitStops\. The game's install path is hard-coded in src/NoPitStops.csproj — adjust the <GameDir> property if your install lives elsewhere.

Producing a distribution zip

.\scripts\Build-Release.ps1

This builds the project in Release mode and writes a versioned zip (e.g. dist/NoPitStops-0.8.0.zip) ready to upload. The zip's internal layout is BepInEx/plugins/NoPitStops/..., so users extract directly into their game folder.

Project layout

  • src/ — plugin source + csproj
  • src/Patches/ — Harmony patches, one file per game class hooked
  • src/GiveUp/ — the in-game vote system (custom Mirror NetworkMessages)
  • src/UI/ — Unity UI components for the in-menu Give Up button
  • tools/ — BepInEx zip + ILSpy (gitignored beyond placeholders)
  • notes/ — design notes, hook targets, decompiled Assembly-CSharp.dll (gitignored)
  • dist/ — release zips (gitignored)
  • scripts/ — build/release helpers

Distribution

Grab the latest NoPitStops-<version>.zip from the Releases page and extract it into your game folder. Friends can do the same — verify with F8 in-game.

To produce a fresh zip from source, run scripts/Build-Release.ps1; the output lands in dist/.


License

MIT © SaltedByte.


Credits

  • Built on BepInEx and HarmonyX.
  • Networked vote system uses Mirror's NetworkMessage API directly (no weaver).
  • Decompilation done with ILSpy.

About

Skip the dead time between rounds in Gamble With Your Friends.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors