Lethal Company
You are viewing a potentially older version of this package. View Latest Version
Install with App

Details

Date Uploaded
14 hours ago
Downloads
47
Size
51KB

TolerableFog

Foggy moons are a lot more bearable when you can tune the fog. The host controls how dense the fog is in each weather, how dense the drifting fog is, and how strongly flashlights light up the fog. Every client uses the host's values while in that lobby.

Settings

Config file: BepInEx/config/bobabulkerENTERPRISE.TolerableFog.cfg

Fog strength: one setting per weather

The [Strength] section has one setting per weather: None, Rainy, Stormy, Foggy, Flooded, Eclipsed and DustClouds (range 0 - 2). 1 is vanilla, 0 removes the fog, above 1 is denser. Only the setting of the weather that is active applies.

Setting Default
Strength / None 0.2
Strength / Rainy 0.2
Strength / Stormy 0.2
Strength / Foggy 0.2
Strength / Flooded 0.2
Strength / Eclipsed 0.2
Strength / DustClouds 0.2

The strength applies to all fog except drifting fog and steam leaks:

  • the Foggy weather's fog
  • the natural fog of the moon: fog boxes placed in the scene, and the scene's global fog
  • indoor (facility) fog and per-area fog triggers

Drifting fog (dust storms and rolling fog banks, including the dust-cloud weather's own fog) is controlled separately by MovingFog / Strength, in every weather.

Modded weathers (WeatherRegistry)

If WeatherRegistry is installed, every modded weather it registers gets its own Strength setting in the [Strength (Modded)] section (same meaning and range as above, default 1). The settings appear once WeatherRegistry has finished setting up for the lobby, so they show up in the config file after your first lobby with that weather pack. The host's values apply to everyone, just like the vanilla weathers. WeatherRegistry is not required; without it, a modded weather uses the None strength.

When several weathers are active at once (combined weathers), their strengths are multiplied.

Settings for every weather

Setting Default Range Effect
MovingFog / Strength 0.5 0 - 2 Strength of the drifting fog that moves around a moon. 1 is vanilla, 0 removes it, above 1 is denser. Independent of the weather strengths.
Flashlight / Reflection 0.1 0 - 2 1 is vanilla. 0 makes flashlight and helmet-light beams invisible in fog.
SteamLeak / Strength 0.4 0 - 2 How dense the fog from burst steam valves is. 1 is vanilla, 0 removes the steam fog. The visor condensation effect and the steam particles are not changed.
SteamLeak / Size 0.6 0 - 1 How large the steam fog can grow after a valve bursts. 1 is vanilla, 0 means it never grows.

The defaults are tuned to make fog easier to see through. Setting every strength to 1, Reflection to 1 and the steam settings to 1 restores vanilla behaviour.

Multiplayer

Everyone in the lobby needs the mod and CSync. The host's settings are the only ones that apply. A client receives them when joining; the client's own config file and LethalConfig values are kept aside, have no effect while in that lobby, and return when the client leaves. Changes the host makes while playing apply live to everyone.

Compatibility

  • Fix Camera Resolutions: its HDRP / Fog Rendering Method (Hide, Disable, ForceDisable) is overridden so it cannot remove fog the host has configured. Its other options are untouched.
  • Other mods: mods that rewrite fog or weather values after this mod runs may override its effect.

In-game menu (optional)

If LethalConfig is installed, the settings appear as sliders and changes apply immediately, with no restart. While you are a client in someone else's lobby the sliders are locked, because the host's values are in effect. LethalConfig is not required; without it you can still edit the config file, and changes are picked up while the game is running.

Development

dotnet build -c Release builds the plugin and also writes the Thunderstore package to bin/Thunderstore/netstandard2.1/. This README is for GitHub; the page shown on Thunderstore is THUNDERSTORE.md (packaged as the zip's README.md). Debug output uses LogDebug; set LogLevels = All in BepInEx.cfg to see it.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.