RoundsPatchFpsFix
Combat optimizer & modpack safety engine for ROUNDS! Fixes mouse aim & bot bugs, eliminates audio/GC lag, and auto-patches critical crashes in popular mods (RWF, WWC, UnboundLib, Cards+, ModdingUtils).
CHANGELOG
Changelog
All notable changes to RoundsPatchFpsFix will be documented in this file.
[1.0.7] - 2026-10-19
Fixed & Improved
- 100% Native Mouse Cursor Aiming (
BotSafetyFixPatch&GeneralInput):- Fixed root cause where presence of default
PlayerAPIcomponent on human player prefabs caused players to be falsely classified as AI bots and assigned dummy controller devices (InputDevice.Null). - Corrected
IsAI()bot detection to strictly check enabled AI state andPlayerAIBase. - Enforced
Device = nullfor keyboard/mouse players, enabling vanillaGeneralInput.UpdateandAim.Updateto natively compute 1:1 mouse tracking with native projectile arc compensation across Sandbox, Lobby, Online, and Bot matches.
- Fixed root cause where presence of default
- Bullet Collision & Damage Fix (
RayCastTrailNonAllocPatch&ModSafetyFixesPatch):- Restored 100% vanilla
RayCastTrail.Update()physics pipeline, eliminating the bug where bullets passed through players and bots without dealing damage. - Preserved full mod compatibility with projectile hooks (MMHOOK, Cards+, GunProjectileSizePatch, DemonicPact).
- Removed problematic
ClientSideBlock.ProjectileHitPatchguard that caused projectile hit cancellation during map transitions.
- Restored 100% vanilla
- Community Mod Safety & Crash Prevention Overhaul:
- Eliminated HarmonyX recursive reflection traps during assembly loading.
- Added re-entrancy guards and isolated exception handling for all auxiliary mod patches (RWF, Will's Wacky Cards, UnboundLib, Cards Plus, ModdingUtils, Demonic Pact, Deck Customization).
- Fixed
PlayerPatchFullResetnull player/data NRE in ModdingUtils and Demonic Pact during match resets. - Ensured reliable late-binding patch application in plugin
Start()lifecycle without startup hangs.
[1.0.6] - 2026-10-19
Fixed
- Clean Thunderstore Package: Removed auxiliary assemblies from archive to comply with Thunderstore automated validator rules. Auxiliary dependencies are resolved dynamically in-memory.
- Auxiliary Mod Safety Guards: Added safety patches for
RoundsToggleEffectsModandBetterChat.EvaluateCanSeeGroupto prevent non-matching sequence and null reference exceptions.
[1.0.5] - 2026-10-18
Added & Optimized (Engine Bottleneck Elimination Overhaul)
- Sonigon Audio Voice Limiter (
AudioConcurrencyLimiterPatch):- Limits identical Sonigon
SoundEventtriggers during intense bullet storms and explosions to max 2 plays per 40ms window. - Prevents audio DSP buffer overruns, sound distortion/crackling, and cuts audio CPU load by ~80% during heavy firefights.
- Limits identical Sonigon
- RayCastTrail Zero-Allocation Physics (
RayCastTrailNonAllocPatch):- Replaced vanilla
Physics2D.RaycastAll,CircleCastAll,Concat, andToArrayinRayCastTrail.Update()with static non-alloc buffers (RaycastNonAllocandCircleCastNonAlloc). - Eliminates over 4,800 heap allocations per second during bullet hell exchanges, dramatically reducing Mono GC heap pressure.
- Replaced vanilla
- Bullet Trail Vertex & Lifetime Clamp (
TrailRendererOptimizationPatch):- Clamps
TrailRenderer.timeon fast projectiles to a reasonable maximum of 0.20s and enforces a minimum vertex distance of 0.1m. - Reduces dynamic mesh vertex generation and draw call CPU costs by up to 70% with zero loss in visual trail clarity.
- Clamps
- Arena Debris & Decal Purge (
DecalCleanupPatch):- Automatically purges lingering wall hit debris, broken box pieces, and expired impact objects between rounds and points.
- Ensures FPS stays rock-solid in round 5 just as in round 1 without progressive match slowdown.
- Sandbox & Lobby Input Control (
BotSafetyFixPatch):- Fixed Sandbox
Spacejumping: initialSpacepress spawns the player once, while subsequent presses jump normally without spawning duplicate players. - Fixed Lobby
SpaceReadyUp: pressingSpacecleanly toggles ReadyUp on the keyboard player without spawning extra players or double-toggling. - Fixed Bot
RReadyUp: pressingRcleanly readies up all bot players without double-toggle cancellation. - Debounced
Bbot spawning (0.4s cooldown) to prevent accidental multiple bot spawns on single keypress. - Fixed UnboundLib
AssignColorIDnegative index crash (IndexOutOfRangeException).
- Fixed Sandbox
- Expanded In-Game MODS Configuration:
- Added discrete toggles for Audio Voice Limiter, RayCast Non-Alloc, Bullet Trail Clamping, and Debris Purge inside the single clean FpsFix menu.
- Set
QualitySettings.vSyncCount = 0to permanently eliminate sudden 30 FPS half-refresh rate drops.
- Mod Safety & Auto-Stub Engine (
ModSafetyFixesPatch&AssemblyResolve):- Automatically resolves missing external assemblies like
LocalZoom.dllfrom embedded memory resources to prevent Mono JIT crashes in dependent mods (e.g. Will's Wacky Cards). - Protected
WWC.MonoBehaviours.PlasmaWeapon_Mono.UpdateChargeBar()from throwing infiniteNullReferenceExceptionloops when picking Plasma Shotgun. - Protected
ClientSideBlock.ProjectileHitPatch.HitPrefixagainst null map transitions.
- Automatically resolves missing external assemblies like
[1.0.4] - 2026-10-18
Fixed & Improved (Combat FPS & Bot Stability Overhaul)
- Eliminated 30 FPS Degradation Bug:
- Restored Box2D solver iterations to stable 8 velocity / 3 position and kept autoSyncTransforms active.
- Enabled smooth 60 FPS pacing to prevent shared 15W TDP Intel iGPU packages from thermal power-throttling the CPU down to 1.4 GHz.
- Combat Garbage Collection Pausing:
- Automatically freezes Mono Garbage Collection (
GarbageCollector.GCMode = Disabled) during active combat rounds to eliminate mid-battle micro-stutters.
- Automatically freezes Mono Garbage Collection (
- Combat Log Spam Suppression:
- Silenced bullet debug logging during active firefights to eliminate synchronous disk I/O stalls in BepInEx and Proton/Wine.
- Bot Spawn Safeguard & Debounce:
- Fixed rapid bot spawning bursts when pressing
Bby adding debouncing. - Sanitized missing
PlayerActionsandInputDevice.Nullto permanently resolveNullReferenceExceptioncrashes inRoundsWithFriendsandPlayerAssigner.
- Fixed rapid bot spawning bursts when pressing
[1.0.3] - 2026-10-18
Fixed
- In-Game MODS tab registration.
[1.0.2] - 2026-10-18
Fixed
- Physics autoSyncTransforms stability fix and zero OnGUI overhead.
[1.0.1] - 2026-10-18
Added
- Initial in-game configuration menu support.
[1.0.0] - 2026-10-18
Added
- Initial release of high-FPS combat pipeline for ROUNDS.