TriBlades3-Server_Modifier icon

Server Modifier

Mod designed to provide methods for modifying game experiments. (Experimental Research til v1.0.0)

Last updated 10 months ago
Total downloads 1388
Total rating 1 
Categories Server-side
Dependency string TriBlades3-Server_Modifier-0.6.1
Dependants 2 other packages depend on this package

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
AinaVT-LethalConfig-1.3.4 icon
AinaVT-LethalConfig

Provides an in-game config menu for players to edit their configs, and an API for other mods to use and customize their entries.

Preferred version: 1.3.4

README

Server Modifier

This mod is designed around providing methods to customize your experience playing Lethal Company, making the game easier or harder depending on the preference of your group.

:warning: This is experimental as I am very new at modding. Expect plenty of bugs. Most stable version is version 0.4, as 0.5 introduces day manipulation. Do not have friends I can consistently test update on, so updates are testing on single player until able to meet for multiplayer rounds.

Requirements

This mod uses BepInEx and Lethal Config as requirements. The mod is currently being tested on version 47 of Lethal Company. Currently unaware of any mods that conflict with this mod.

Usage

This mod adds UI elements to adjust elements before launching a save file.

Quota

These elements adjust how the quota is calculated for each round. This is normally a value calculated based on the amount of excess profit you have and the number of fulfilled quotas.

Component Value Type Short
Function Enum Function to calculate the quota
Start Value Float The quota value at the start of a new game
Rate Value Float The rate to change quota
Randomness Float The amount to randomly influence the quota

There are currently three types of functions that can be selected:

  1. Default - The default function for calculating the quota. All other values are ignored.
  2. Linear - Applies the linear function $quota = start + (rate * completed) + (randomness * U[-1, 1])$
  3. Exponential - Applies the exponential function $quota = start * e^(rate * completed) + (randomness * U[-1, 1])$

In these equations, start is "Start Value", rate is "Rate Value", randomness is "Randomness", U[a,b] is the uniform distribution between a and b, and e is Euler's number.

Overtime

These elements adjust how overtime is calculated at the end of each round. This is normally a calculation based on the amount of excess profit you have and the number of days between when you turn in the quota and the deadline.

Component Value Type Short
Excess Scalar Float The amount to multiply excess profit by
Early Scalar Float The amount to multiply the number of days early by

The overtime is calculated as $overtime = (excess * excessScalar) + (early * earlyScalar)$, where excess is the amount of excess profit, early is the number of days early, excessScalar is "Excess Scalar", and earlyScalar is "Early Scalar". The default for the game is $excessScalar = 0.2$ and $earlyScalar = 15.0$.

Days

These elements adjust how many days are in a round. Normally the game is split into segments of 3 days for scrap collection at a set time rate and 1 day for submitting the scrap to the company.

:warning: Recommended to adjust values on new saves: In testing, the day and time calculations performed by the game are very sensitive. Changing these values can have uninteded consequences on how the game progresses (skipping days, always on deadline, etc.). Therefore, it is recommended to make a new save file when adjusting these values. These features are the newest features, meaning they are also the most unstable (won't crash the game, though produces interesting results sometime).

Component Value Type Short
Days Remaining Int The number of days for collecting scrap

The Days Remaining is set as a max of 9 days. Reading accounts of other mods attempting to adjust the number of days, weird things tended to happen to the company and enemy spawn when the number of days exceeded 10.

Company Buying Rate

These elements adjust how much the company buys scrap for.

Component Value Type Short
Function Enum Function to calculate the buying rate
Final Rate Float The final rate to buy scrap
Rate Decrease Float The rate to decrease the buying rate per remaining day
Randomness Float The amount to randomly influence the buying rate

There are currently three types of functions that can be selected:

  1. Default - The default function for calculating the buying rate. All other values are ignored.
  2. Linear - Applies the linear function $buyback = final + (rate * remaining) + (randomness * U[-1, 1])$
  3. Exponential - Applies the exponential function $buyback = final * e^(rate * remaining) + (randomness * U[-1, 1])$

In these equations, final is "Final Rate", rate is "Rate Decrease", randomness is "Randomness", U[a,b] is the uniform distribution between a and b, and e is Euler's number.