You are viewing a potentially older version of this package. View all versions.
zealsprince-Malfunctions-1.5.5 icon

Malfunctions

Adds random malfunctions to the ship and intends to improve the core game loop with interesting new events.

Date uploaded 9 months ago
Version 1.5.5
Download link zealsprince-Malfunctions-1.5.5.zip
Downloads 33067
Dependency string zealsprince-Malfunctions-1.5.5

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
xilophor-LethalNetworkAPI-3.3.1 icon
xilophor-LethalNetworkAPI

A library/API to allow developers to easily add networking to their mods.

Preferred version: 3.3.1

README

Malfunctions

The ship has experienced its fair share of crews and their eventual expiration. Even though it's stood for long, it's got some scratches of its own and they're showing more and more as the days go on.

This mod adds random malfunctions to the ship and intends to improve the core game loop with interesting new metagame events.

Events

Route Table Offset / Navigation Malfunction

This malfunction appears after the ship goes back into orbit. It overwrites all routing commands and steers the ship to a random moon at no cost. No information about the moon or the weather is given to the players forcing them to possibly go on a tough expedition.

A warning is given after the ship enters orbit. The terminal routing will be blocked until the ship leaves the rerouted planet.

Atomic Misalignment / Teleporter Malfunction

This malfunction causes teleporters to become temporarily disabled during an expedition.

It has a high chance of happening moments after landing but can also happen over the course of an expedition at a random moment. A warning after triggering is given to all players.

Electromagnetic Disturbance / Communication Malfunction

This malfunction causes the communication and map systems to fail during an expedition. Teleporters are still functional but target players at random. Use with caution.

Ship terminal and map displays are either disabled immediately or after a random interval. Walkie talkies lose functionality as well. A warning after triggering is given to all players.

Crackdown Protocol / Door Malfunction

This malfunction causes the ship to go into a lockdown, causing the door to remain closed until 10pm. The door controls are disabled as well.

The malfunction triggers randomly over the course of a day if it's active. A warning after triggering is given to all players.

Core Surge / Power Malfunction

This malfunction causes the ship to lose power to all its primary systems. This means batteries can not be recharged, doors can't be closed, the map can't be used, players can't be teleported and the terminal remains disabled. Furthermore, there might not be enough energy left to take off with only the emergency autopilot being the last option.

This is the worst type of malfunction.

To add onto that, no warning is given with this malfunction. The only solution to restore power is to use the remainder to launch back into orbit, possibly only through the autopilot reserves.

Mechanics

Though the chance of malfunctions occurring is completely random, there are a few parameters that influence when they occur:

Chances & Penalty

The company likes its employees in one piece and while it does maintain your ship, incurring extra casualties is certainly removing it from that maintenance budget.

In general the idea for malfunctions was that over the course of 2 in game weeks of each 4 days, there is about a 25% chance of a malfunction being encountered by default statistically speaking. This percentage has changed with the amount of additional malfunction mechanics I have added to this mod and as such overall default chances have been adjusted accordingly.

There is no weighted system in place meaning they are fully random. Due to it being pure randomness, you can have a run with back-to-back malfunctions. The likelihood of this happening are less than a percent though. Additionally, if a malfunction of a type was triggered it can not be triggered the next day.

To make malfunctions feel less random at times and more as a punishing mechanic, a penalty mechanic was added: Not recovering bodies by default doubles the chance of a malfunction happening. This is why by default the chances of a malfunction happening are very low.

Keep in mind this is a bit of a spoiler if you're wanting to go in completely blind!

Malfunction probabilities:
  • Navigation: 7.5%
  • Teleporter: 7.5%
  • Distortion: 5.0%
  • Door: 3.0%
  • Power: 1.5%

Passed Days

Each malfunction has a configuration parameter to gatekeep them from happening early on in runs and as such feeling overwhelming.

Once again, this might be a spoiler if you want to be surprised

Malfunctions required passed days:
  • Navigation: 3 (Week 2)
  • Teleporter: 11 (Week 4)
  • Distortion: 3 (Week 2)
  • Door: 7 (Week 3)
  • Power: 11 (Week 4)

Suggestions

Want to suggest new features or tweaks for this mod? Feel free to open up a suggestion issue on the GitHub repository!

Furthermore there is an official mod release thread on the Lethal Company Modding Discord!

CHANGELOG

Changelog

1.10.0

  • Fix Power Malfunction not triggering on Experimentation
  • Fix disabled Spark VFXs still triggering light

1.9.3

  • Bump version number to indicate v66 compatibility

1.9.2

  • Bump version number to indicate v65 compatibility

1.9.1

  • Bump version number to indicate v64 compatibility

1.9.0

  • Add configuration options for disabling sparks or their sounds
  • Bump version number to indicate v61 compatibility

1.8.9

  • Fix Malfunctions triggering at the company

1.8.8

  • Bump version number to indicate v60 compatibility

1.8.7

  • Bump version number to indicate v56 compatibility

1.8.6

  • Bump version number to indicate v55 compatibility

1.8.5

  • Downgrade not finding lever/door object logging from error to warn levels

1.8.4

  • Fix Liquidation being a level that the navigation malfunction could route to

1.8.3

  • Patch for v50
  • Fix power malfunction showing lever jam tooltip incorrectly
  • Fix soft lock when resetting objects after Malfunctions

1.8.2

  • Fix README.md typos because apparently I can't spell anymore

1.8.1

  • Add plan for next major upcoming release to README.md
  • Fix network handlers registering twice
  • Fix network handler MALFUNCTION_POWER not being called on host causing issues in singleplayer

1.8.0

  • Switch network library from LC_API to LethalNetworkAPI

1.7.1

  • Fix README.md containing two sections for the door malfunction

1.7.0

  • Add network syncing to make sure no desyncs happen due to penalty mechanic
  • Add lever malfunction that will block take-off after a designated time until autopilot
  • Decouple reliance on matched configuration files using host as source of truth

1.6.0

  • Add support for WeatherTweaks
  • Add config option to allow consecutive malfunctions of the same type

1.5.6

  • Add banner image

1.5.5

  • Update plugin version identifier

1.5.4

  • Update README.md with new penalty and passed days mechanics

1.5.3

  • Fix #15: penalty desync by changing the order of operations and relying on the base game penalty calculation

1.5.2

  • Attempt to fix desync due to penalty calculating different amounts of bodies in the ship

1.5.1

  • Reduce elapsed days defaults by one day

1.5.0

  • Implement #12: Disable outdoor floodlights during power malfunction as per
  • Add penalty only option meaning malfunctions only happen when players are not recovered
  • Add functionality to lock malfunctions behind a certain amount of elapsed days
  • Tweak probabilities further

1.4.1

  • Fix #10: sparks were playing sound without spacialization meaning they could be heard everywhere
  • Fix sparks collision depth buffer issue causing the players HUD to effect their collision (could cause sparks to get stuck in the players vision)
  • Fix timed malfunctions triggering before the start of a mission if they were early in a day or past the previous level's take-off time of day

1.4.0

  • Make Power Malfunction have a chance at not being able to take-off until autopilot
  • Fix Navigation Malfunction causing the ship to get stuck
  • Fix Communication Malfunction not re-enabling the terminal
  • Make teleporter during communication outage teleport a random player

1.3.1

  • Fix the readme stating that the door malfunction opens at 11pm when in actuality it opens at 10pm

1.3.0

  • Add penalty mechanic
    • Not recovering a body multiplies the chance of encountering malfunctions
  • Add Door Malfunction
    • Has a chance of happening after 4 hours and beyond into the round
    • Causes doors to remain closed with door controls disabled until 10pm
  • Add Distortion Malfunction
    • Has a chance of happening immediately or after a random interval
    • Disables the map display, terminal and walkies

1.2.3

  • Fix #5: hangar door panel not reappearing after power malfunction ends
  • Add lighting, depth buffer physics and sounds to sparks effect

1.2.2

  • Make sparks look a little less like cheese balls
  • Refactor internal asset loading

1.2.1

  • Adjust default probabilities
  • Attempt fix for issue #2: Weather stuck on all maps after navigational malfunction

1.2.0

  • Add Power Malfunction
    • Notification plays while landing
    • Disables the map display, terminal, teleporters, charging station and door controls
  • Add Teleporter Malfunction
    • Has a chance of happening immediately or after a random interval
    • Blocks players from using any ship teleporter
    • Notification is broadcast once malfunction takes effect
  • Navigation Malfunction
    • Fix company building being a possible route
    • Fix notification playing when restarting a save

1.1.1

  • Add compatibility with Corporate Restructure (jamil.corporate_restructure)
  • Fix desync issue by binding to map seed with added daily UTC epoch

1.1.0

  • Navigation Malfunction
    • Improve notification text
    • Improve navigation map text
    • Add sparks to lever while active
    • Block the user from choosing a different moon until malfunction ends

1.0.0

  • Initial release with basic functionality