You are viewing a potentially older version of this package. View all versions.
SillySquad-Selenes_Choice-1.0.0 icon

Selenes Choice

Too Many Moons To Choose From? I Got you ;)

Date uploaded a month ago
Version 1.0.0
Download link SillySquad-Selenes_Choice-1.0.0.zip
Downloads 175
Dependency string SillySquad-Selenes_Choice-1.0.0

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
Sigurd-CSync-5.0.1 icon
Sigurd-CSync

Configuration file syncing library for BepInEx.

Preferred version: 5.0.1
IAmBatby-LethalLevelLoader-1.2.4 icon
IAmBatby-LethalLevelLoader

A Custom API to support the manual and dynamic integration of all forms of custom content in Lethal Company. (v50 Compatible)

Preferred version: 1.2.4

README

Selene is the Greek Goddess of the moon.

Selene's Choice keeps every run unique while also making the game more difficult

This is achieved by shuffling around the moons and only providing the crew with 3 moons. (Configurable value)

The first moon that is picked by the shuffle is guaranteed to be free, the ship will also route to it automatically.

The other moons are completely random (excluding the company of course, that will always be there.)

All moons that were not picked by the shuffle will be hidden from the terminal and have their routes locked.

Shuffling Occurs when...

A new lobby is opened (The shuffle seed is based on the lobbyID)

The crew is ejected (The shuffle seed is the lobbyID plus the number of times the crew has been ejected)

Then either...

Everyday (The shuffle seed will be the previous level's seed)

Or...

On a new Quota (The shuffle will be the lobbyID plus the new quota amount)

By default the shuffle will occur daily, this is configurable.

All players require the mod.

If you find any bugs it will be faster to tell me on discord tbh.

Tips are always appreciated <3 <3 <3 <3 <3 https://ko-fi.com/impulsivelass

CHANGELOG

1.5.7

  • On joining, only the host sets the current moon, clients will already inherit the current moon from the host from vanilla.

1.5.6

  • Fixed the ship not auto-routing after a reset.

1.5.5

  • Changed how routing to moons automatically is coded, this now allows it to be animated and is synced again through vanilla calls.

(old was calling changelevel and changeplanet) (new is calling just changelevelserverrpc)

1.5.0

  • When joining a save that is not brand new, the ship will not auto route to the "safety moon", it will remain on the moon you left off on.

  • Added new configuration options for moon discounts, you can set the min and max % of the route price on selected moons that will be taken off.

1.4.5

  • Because The story log moons are a specific set list, they are now directly written into the exclusion list. A new configuration boolean has been added to determine if they should be excluded from the shuffle. (Default: true)

  • The story log moons are now completely untouched by this mod.

  • Added a configuration option to always have clear weather on the ‘safety moon’. (Default: false)

  • All shuffles now include a 2-second wait for Terminal Formatter.

  • If both the clear 'safety moon' weather and the ‘New Moons Only on New Quota’ options are set to true, a method has been added that sets the last saved ‘safety moon’ to have clear weather. This ensures that the ‘safety moon’ will never automatically change its weather, even if you only have a shuffle on quota.

Note: Despite the waits for Terminal Formatter, it may still load too soon. This will be addressed in a future update by mrov.

1.4.0

  • The seed used for moon selection, which was previously saved to the host, is now saved to the specific save file itself. This means that the seed now will remain consistent with each individual save file, allowing for seamless switching between saves while maintaining the last loaded moons for each save !!

  • Added another config list, it is treated the exact same as the blacklist but the default moons for the setting are from Rosie's Moons, which now need story logs in order to unlock.

  • Some classes were made into singletons.

  • The wait time for the Terminal formatter has been reduced from 3 seconds to 2 seconds, which should still provide ample time for processing.

1.3.6

  • Added a slight delay at the start of the match to allow Terminal Formatter to load.

1.3.5

  • Fixed inconsistence join seed.

  • If there are no paid moons left, the count for them will roll over into the random moon count.

1.3.0

  • Added config for a set # of paid moons to have included. (If there is 0 when it gives the moons it will just not add those)

!!! DELETE YOUR OLD CONFIG !!!

1.2.0

  • Added a 'treasurelist'

  • Treasurelist moons are always hidden but can be routed to.

  • Config to enable a bonus for treasurelisted moons and the multiplier. (default: 1.25 times scrap)

  • Reworked the logic on a client joining so that it directly waits until after data is processed before proceeding. This should further safeguard against desyncs on join.

1.1.0

  • Refactored out all instances of the mod's deadname.

  • Split the moon count config in two. Now you can set the amount of free moons and the extra moons that can either be free or paid separately.

  • Added an IgnoreList to the config, these moons will be unaffected by the shuffle, always visible and routable.

  • Added a BlackList to the config, these moons will be unaffected by the shuffle, never visible or routable.

  • The code no longer uses the exact moon list ###s, instead it will first autocorrect those to a dynamic range before using them. (Free is 1 to # of free moons) (Extra is 0 to # of total moons after the free ones are accounted for) (I couldn't just use the AcceptableBaseRange since the values can change throughout a playthrough (Think permanent moons))

  • When there are 0 days left until the quota is due, the daily shuffle will send the ship to Gordion instead of the "safety moon."

  • The lists that I use now strictly exclude moons by name. Since it no longer uses the Company tag, Sector-0 from Rosie's moons is no longer excluded by default.

  • Added a whole bunch of logs to track difference things, I forgor which ones were in 1.0.0 but rn logs track:

  1. All levels that are listed. (excludes the Ignore and Blacklist)
  2. How many of those levels have a price of 0 and are therefore part of the free list.
  3. If the current list of all levels or all free levels changes, the log will declare what it is set to now and what it used to be.
  4. Logs the seed put into the respective random generator.
  5. What the "safety moon" is.
  6. Whenever the host has a new value set for the two variables that are sent to players that just joined.
  7. When the host and client respectively receive transmitted data.
  • I also added some more comments to the code to explain what the stuffs is doing.

!!! DELETE YOUR OLD CONFIG !!!

1.0.0

  • Initial Release