randomuserhi-ShooterBugFix icon

ShooterBugFix

Actually fixed for real this time!

Last updated 2 months ago
Total downloads 525
Total rating 0 
Categories Client Mods
Dependency string randomuserhi-ShooterBugFix-0.0.5
Dependants 2 other packages depend on this package

This mod requires the following mods to function

BepInEx-BepInExPack_GTFO-3.2.1 icon
BepInEx-BepInExPack_GTFO

BepInEx pack for GTFO. Preconfigured and includes Unity Base DLLs.

Preferred version: 3.2.1

README

Causes

Shooter bug and other related RayCast issues such as C-Foam going through doors and Mines not killing players are caused by a Unity bug detailed here: https://issuetracker.unity3d.com/issues/raycasts-fail-to-hit-collider-when-there-is-a-different-gameobject-with-a-collider-very-far-away-in-the-scene

This bug happens as a result of projectiles with colliders falling out of bounds and travelling super far away as a result causing the above Unity bug to occure.

Any object with a collider that can travel out of bounds can cause this bug, but the worst offender are gun magazines as these persist through level restarts, and thus continue to fall even during lobby screen.

  • This is why switching gun loadout in lobby can sometimes fix this bug as it will destroy all magazines generated from your previously equipped gun.

What this plugin does

Since this bug can happen due to ANY object with a collider travelling far, its hard to pin-point it to a single object. (A player throwing a glowstick down elevator hole can induce the bug if the level is played long enough). As a result a simple fix such as disabling gun magazines isn't as viable.

For this reason, this plugin prior-level start will check ALL objects with a collider and destroy any too far from world origin. During gameplay, it checks every 1 hour (configurable). To prevent hiccups during combat, if a check needs to be performed, it will ask the player to manually trigger one.

To manually trigger a check, simply type "cull" (configurable) in chat.

Host issues

This plugin only culls objects for the local player, this means that if someone else has become shooter-bugged this plugin will not save them unless they have it installed as well. As a result, if host gets shooter bugged and as a result C-foam stops colliding with doors (I believe this is host-side calculated) then there is nothing you can do. In general it is best for either everyone to have this mod installed, or restart the game / switch loadouts between expeditions.

  • The culling process will mention how many objects were culled, so you could possibly warn other players in the lobby that they may get bugged soon if the mod reports that it culled an item for you.

Possible changes (But I'm too lazy to implement)

  • Once I confirm all potential causes, the cull can be reduced to only check the problematic objects, as of now it will check all.