You are viewing a potentially older version of this package. View all versions.
mrov-WeatherRegistry-0.1.14 icon

WeatherRegistry

A mod for controlling the game's weather system.

Date uploaded 2 months ago
Version 0.1.14
Download link mrov-WeatherRegistry-0.1.14.zip
Downloads 9345
Dependency string mrov-WeatherRegistry-0.1.14

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
mrov-MrovLib-0.2.3 icon
mrov-MrovLib

Common methods for my mods.

Preferred version: 0.2.3

README

WeatherRegistry

A Lethal Company mod for controlling game's weather system.

Features

  • A system for registering custom weathers and weather effects
  • Weight-based weather selection system
  • Level-based weather filtering system

i don't want to work on readme, i'll list it later

Weight-based weather selection system

Contrary to the vanilla algorithm, this mod uses a weight-based system for selecting weathers. You can set the weights based on 3 criteria:

  1. Level weight: the weight of the weather based on specific level
  2. Weather-to-weather weight: the weight of the weather based on the previous weather
  3. Default weight: the base weight of the weather

During the weather selection process, the algorithm will try to apply the weights in the order listed above.

to do

  • [ ] Add matching via LLL tags
  • [ ] Add an option for weather creators to add their configs to the Registry
  • [ ] Save generated weather data to save file
  • [ ] fix the bugs

License

This project is licensed under GNU Lesser General Public License v3.0.

Credits

This project uses LethalCompanyTemplate, licensed under MIT License.

This project uses code from WeatherTweaks, licensed under CC BY-NC-ND 4.0

This project uses code from LethalLib, licensed under MIT License.

This project uses code from LethalLevelLoader, licensed under MIT License.

This project uses code from LC-SimpleWeatherDisplay, licensed under MIT License.

CHANGELOG

0.1.23

  • fixed an issue with 6 weather on Experimentation (thanks: _v0xx_, giosuel!)

0.1.22

  • changed how override weathers are logged

0.1.21

  • added level placeholders for config entries:
    • All: all levels
    • Modded/Custom: all modded levels
    • Vanilla: all vanilla levels
    • Company: the company level

0.1.20

  • fixed an issue with StartOfRound.OnDisable not disabling WorldObjects (thanks, _v0xx_!)

0.1.19

  • fixed null references when resolving SelectableLevels names

0.1.18

  • added ShipLanding event

0.1.17

  • updated MrovLib's ConfigHandler implementation (sorry for that!)
  • changed the way ship's map screen displays planet info

0.1.16

  • WeatherRegistry's scrap value/amount multipliers will be prioritized
  • added MapScreenUpdated event

0.1.15

  • fixed StartOfRound.OnDisable patch not firing correctly

0.1.14

  • improved resolving planet and weather names that have spaces in them

0.1.13

  • fixed SetupFinished event firing correctly

0.1.12

  • fixed an issue with Nuget propagating wrong LC dependency version further (thanks, giosuel)

0.1.11

  • MrovLib is now a required dependency
  • WeatherChanged event is now properly invoked when new weathers are picked

0.1.10

  • fixed an issue with randomWeathers having multiple entries of the same modded weather (thanks, xuxiaolan)

0.1.9

  • added config options to disable logging startup logs & weather selection logs

0.1.8

  • optimized the weight-picking algorithm (thanks, whitespike)
  • changed some logs

0.1.7

  • LevelWeights and WeatherWeights config options are now functional
  • redid the ConfigHandler completely (it's cursed)
  • added a set of defaults for vanilla weather>weather transitions (this requires testing and feedback!)
  • changed some logs
  • weights are now clamped between 0 and 10000
  • added new options for weather makers: DefaultLevelWeights and DefaultWeatherToWeatherWeights

0.1.6

  • fixed an error with config strings not being resolved correctly (thanks, xuxiaolan)
  • changed some logs

0.1.5

  • changed the scale of weather multipliers from (0,10000) to (0,100)

0.1.4

  • added ScrapAmountMultiplier, ScrapValueMultiplier config options
  • added LevelWeights and WeatherWeights config options (they don't do anything yet)
  • fixed an error with WeatherRegistry not disabling registered weathers' effects when leaving lobby (thanks: endoxicom, xuxiaolan, lunxara)

0.1.3

  • (hopefully) fixed an error with WeatherRegistry not disabling registered weathers' effects when leaving lobby (thanks, endoxicom)

0.1.2

  • fixed an error with WeatherRegistry crashing when there were more than 1 weather to register (thanks, xuxiaolan)

0.1.1

  • fixed an issue with LethalLib weathers not being registered correctly on modded moons
  • fixed an issue with WeatherRegistry weathers being destroyed on joining lobbies
  • (hopefully) fixed a Dictionary issue with modded weathers on clients
  • renamed events: setupFinished -> SetupFinished, weatherChanged -> WeatherChanged
  • added DisableAllWeathers event
  • added WeatherController for changing weathers
  • changed some logs
  • changed possibleWeathers table to be sorted using enum values
  • changed WeatherRegistry to forcefully remove all "None" weather entries from randomWeathers

0.1.0

Please re-generate your configs!

  • added a check to SunAnimator to verify if custom weather has an animator bool defined (thanks, PureFPSZac)
  • added a check to SunAnimator to honor the blacklist setting (although the result should be virtually the same)
  • possibleWeathers table displayed during startup is now sorted correctly
  • fixed the default filtering options not having a semicolon at the end
  • added an option to blacklist vanilla weathers from happening on selected moons

0.0.5

  • added an check to SunAnimator to check if there are any sun animator clips (thanks, finembelli)

0.0.4

  • fixed an error with WeatherRegistry keeping references to previous lobby weathers
  • changed weather fields

0.0.3

  • added config options for setting the default weights and level filtering
  • fixed an issue with LethalLib hard dependency
  • added an event system

0.0.2

  • fixed an error preventing people from joining online lobbies

0.0.1

  • hello! 👋