Lethal Company
Install

Details

Last Updated
First Uploaded
Downloads
405
Likes
0
Size
41KB
Dependency string
Solon-Terminal_that_can_kill-1.5.0
Dependants
Terminal that can kill

TERMINAL THAT CAN KILL

Lethal Company BepInEx Version License

Language / Язык: English · Русский

TERMINAL THAT CAN KILL

Author: Solo00n

The ship and facility doors slam shut on anyone in the doorway, and the terminal stops disabling traps — it detonates mines and drives turrets berserk instead.

WHAT IT DOES

  • Deadly ship door — the hangar door crushes any player or monster standing in the opening when it closes (on the surface only).
  • Deadly facility doors — the big terminal-code security doors crush whoever is in the opening when they slam shut.
  • Remote mine detonation — entering a mine code blows it up instead of disabling it; a critical error chain-detonates nearby mines.
  • Turret rampage — entering a turret code sends it berserk (spins and fires at everyone); a critical error extends the rampage.
  • Hijacked traps — a trap can flip to your side: an allied turret behaves like a normal turret but cannot see players, and hunts monsters instead, and an allied mine can no longer be set off by the team and waits for a monster instead.
  • Turret head flip — after leaving berserk a turret smoothly turns its head 180° and rests facing the opposite way.
  • Barber-style death — door kills reuse the Barber (Clay Surgeon) death: the body is launched up and ragdolls.
  • Fully configurable — every mechanic can be tuned or turned off.

HOW IT WORKS

  • The kill zone is a thin oriented slab sitting in the doorway plane, not a proximity sphere — only someone standing in the opening is caught.
  • Ship door: detected via doorPower < 1 plus the ShipDoorClose animator state; the doorway is at a fixed world position (the ship never moves).
  • Facility doors: detected on the SetDoorOpen open→closed transition and processed frame by frame.
  • Traps use the vanilla synced RPCs (ExplodeMineServerRpc, EnterBerserkModeServerRpc) — no custom network objects.
  • Trap power is never forced, so power mods such as DefendFacility stay in charge of whether a trap is on; this mod only changes who it targets. Its mini turret is treated as the crew's own and is allied from the start.

MULTIPLAYER (HOST-AUTHORITATIVE)

Both the host and all clients must install the mod. It changes shared game rules, not one player's private state.

Players: each client only kills its own local player; KillPlayer syncs that death to everyone, so exactly one authoritative kill happens.
Monsters: only the host iterates and kills enemies (the host owns enemy AI), which syncs to clients.
Traps: mine and turret effects fire through the game's own server RPCs, so all clients see the same result.
Hijacks: the client that typed the code decides, then announces it on a vanilla RPC carrying a marker only this mod sends; everyone else obeys that marker and never rolls again, so no one can disagree — still no custom networking.

REQUIREMENTS

  • BepInEx 5.4.21+ (BepInEx-BepInExPack-5.4.2100)
  • Lethal Company V81

INSTALLATION

  • Mod manager (r2modman / Thunderstore Mod Manager): search for the mod and click Install.
  • Manual: install the BepInEx pack, then drop Solon.TerminalThatCanKill.dll into BepInEx/plugins/.

CONFIGURATION

File: BepInEx/config/Solon.TerminalThatCanKill.cfg (created on first launch).

KeyDefaultDescription
EnabledtrueMaster switch for the deadly-doors mechanic.
KillPlayerstrueKill players caught in a closing doorway.
KillMonstersfalseKill ship-capable monsters caught in a closing doorway.
AffectedDoorsBothShipDoor / TerminalDoors / Both.
SafeZoneSeconds5Grace period after landing during which doors do not kill.
DamageModeInstantKillInstantKill or DamageOverTime.
EnableRemoteControltrueDetonate/rampage traps instead of disabling them.
MineErrorChance0.15Chance a mine command detonates the mine instead of disarming it.
TurretErrorChance0.15Chance a turret command sends it berserk instead of disabling it.
TurretFlipOnBerserkExittrueTurret head turns 180° after leaving berserk.
EnableAlliedTrapstrueAllow a trap command to hijack the trap to your side.
AlliedChance0.25Chance a trap command hijacks the trap instead. Rolled per command.
AlliedDuration0Seconds a hijacked trap stays allied. 0 = permanent.
MiniTurretAlwaysAlliedtrueDefendFacility's mini turret is allied from the start and never needs hacking.
VerboseLoggingfalsePer-event diagnostics in the log, including the offset used to tune the kill zone.
Advanced tuning (zone size DoorwayThickness/Width/Height, close timings, PlayerDeathAnimationId, chain radius, rampage duration) lives in the Doors.Advanced and RemoteControl.Advanced sections; hijack tuning lives in AlliedTraps.

COMPATIBILITY

  • Works on vanilla and modded moons (LethalLevelLoader) — doors are found dynamically, no hard-coded scenes.
  • Fair AI replaces the turret AI; the mod detects it and hands the turrets over, enforcing the hijack inside Fair AI's own pipeline so an allied turret never targets or damages players.
  • No custom network objects; relies on vanilla RPCs — low conflict risk with other terminal mods.
  • If another mod also patches the terminal code function, set EnableRemoteControl = false to avoid overlap.

BUILD

dotnet build LethalDoors.csproj -c Release

Output: bin/Release/Solon.TerminalThatCanKill.dll. Game assemblies are referenced via the LethalCompany.GameLibs.Steam NuGet package as compile-only (PrivateAssets="all") — no game files are distributed.

CREDITS

  • Solo00n — author.
  • Built on BepInEx and HarmonyX.
  • Inspiration: Lethal Doors by saint_kendrick (ship-door approach), RemoteMineDetonation by jacksonb-cs (terminal detonation idea) and AlliedDefenses by Remilulz91 (the idea of turning traps against the monsters). Implementation here is written from the game's own code, not taken from those mods.
  • Licensed under MIT.

TERMINAL THAT CAN KILL

Автор: Solo00n

Двери корабля и комплекса захлопываются насмерть на том, кто стоит в проёме, а терминал больше не отключает ловушки — вместо этого он детонирует мины и сводит турели с ума.

ЧТО ДЕЛАЕТ МОД

  • Смертельная дверь корабля — рампа раздавливает игрока или монстра в проёме при закрытии (только на поверхности).
  • Смертельные двери комплекса — большие двери с кодом раздавливают того, кто стоит в проёме при захлопывании.
  • Удалённая детонация мин — ввод кода мины взрывает её вместо отключения; при критической ошибке детонируют соседние мины.
  • Бешенство турели — ввод кода турели вводит её в берсерк (крутится и стреляет по всем); ошибка продлевает раж.
  • Захваченные ловушки — с некоторым шансом ловушка переходит на вашу сторону: союзная турель работает как обычная, но не видит игроков — и охотится на монстров, а союзная мина больше не срабатывает на команду и ждёт монстра.
  • Разворот головы турели — после берсерка турель плавно поворачивает голову на 180° и остаётся смотреть в другую сторону.
  • Смерть как у Barber — смерть от двери повторяет смерть от Barber (Clay Surgeon): тело подбрасывает вверх.
  • Полная настройка — любую механику можно подстроить или выключить.

КАК ЭТО РАБОТАЕТ

  • Зона поражения — тонкая ориентированная «плита» в плоскости проёма, а не сфера: убивает только того, кто стоит в проёме.
  • Дверь корабля: определяется по doorPower < 1 плюс состоянию аниматора ShipDoorClose; проём в фиксированной точке мира (корабль не двигается).
  • Двери комплекса: ловятся на переходе SetDoorOpen открыта→закрыта и обрабатываются покадрово.
  • Ловушки используют ванильные синхронизированные RPC (ExplodeMineServerRpc, EnterBerserkModeServerRpc) — без своих сетевых объектов.
  • Питание ловушек мод не трогает, поэтому моды питания вроде DefendFacility остаются главными в вопросе «включена ли ловушка»; этот мод меняет только цель. Её мини-турель считается своей и союзна с самого начала.

МУЛЬТИПЛЕЕР (HOST-AUTHORITATIVE)

Мод должен стоять и у хоста, и у всех клиентов. Он меняет общие правила игры, а не приватное состояние одного игрока.

Игроки: каждый клиент убивает только своего локального игрока; KillPlayer синхронизирует смерть на всех — ровно одно авторитетное убийство.
Монстры: перебирает и убивает врагов только хост (владеет ИИ), что синхронизируется клиентам.
Ловушки: эффекты мин и турелей идут через серверные RPC самой игры, поэтому итог одинаков у всех.
Захват: решает клиент, который ввёл код, и объявляет об этом ванильным RPC с меткой, которую шлёт только этот мод; остальные подчиняются метке и не перебрасывают — разойтись невозможно, и своей сети по-прежнему не нужно.

ЗАВИСИМОСТИ

  • BepInEx 5.4.21+ (BepInEx-BepInExPack-5.4.2100)
  • Lethal Company V81

УСТАНОВКА

  • Через менеджер (r2modman / Thunderstore Mod Manager): найти мод и нажать Install.
  • Вручную: установить BepInEx-пак, затем положить Solon.TerminalThatCanKill.dll в BepInEx/plugins/.

НАСТРОЙКА

Файл: BepInEx/config/Solon.TerminalThatCanKill.cfg (создаётся при первом запуске).

КлючПо умолчаниюОписание
EnabledtrueГлавный выключатель механики смертельных дверей.
KillPlayerstrueУбивать игроков в закрывающемся проёме.
KillMonstersfalseУбивать монстров (способных войти в корабль) в проёме.
AffectedDoorsBothShipDoor / TerminalDoors / Both.
SafeZoneSeconds5Безопасный период после посадки, пока двери не убивают.
DamageModeInstantKillInstantKill или DamageOverTime.
EnableRemoteControltrueДетонация/раж ловушек вместо отключения.
MineErrorChance0.15Шанс, что команда подорвёт мину, а не обезвредит её.
TurretErrorChance0.15Шанс, что команда отправит турель в берсерк, а не выключит её.
TurretFlipOnBerserkExittrueРазворот головы турели на 180° после берсерка.
EnableAlliedTrapstrueРазрешить захват ловушки на свою сторону.
AlliedChance0.25Шанс, что команда захватит ловушку. Бросается на каждую команду.
AlliedDuration0Сколько секунд ловушка союзная. 0 = навсегда.
MiniTurretAlwaysAlliedtrueМини-турель DefendFacility союзная сразу и не требует взлома.
VerboseLoggingfalseПодробные логи, включая смещение для настройки зоны убийства.
Тонкая настройка (размеры зоны DoorwayThickness/Width/Height, тайминги закрытия, PlayerDeathAnimationId, радиус цепи, длительность ража) — в разделах Doors.Advanced и RemoteControl.Advanced; настройки захвата — в AlliedTraps.

СОВМЕСТИМОСТЬ

  • Работает на ванильных и модовых лунах (LethalLevelLoader) — двери находятся динамически, без хардкода сцен.
  • Fair AI полностью заменяет ИИ турелей; мод определяет его и отдаёт турели ему, встраивая взлом уже внутрь его логики — союзная турель не целится в игроков и не наносит им урона.
  • Не создаёт своих сетевых объектов, опирается на ванильные RPC — низкий риск конфликтов.
  • Если другой мод тоже патчит функцию кода терминала — поставьте EnableRemoteControl = false.

СБОРКА

dotnet build LethalDoors.csproj -c Release

Результат: bin/Release/Solon.TerminalThatCanKill.dll. Сборки игры подключены через NuGet-пакет LethalCompany.GameLibs.Steam только для компиляции (PrivateAssets="all") — файлы игры не распространяются.

БЛАГОДАРНОСТИ

  • Solo00n — автор.
  • Построено на BepInEx и HarmonyX.
  • Идеи: Lethal Doors от saint_kendrick (подход к двери корабля), RemoteMineDetonation от jacksonb-cs (детонация из терминала) и AlliedDefenses от Remilulz91 (идея обращать ловушки против монстров). Реализация здесь написана по коду самой игры, а не взята из этих модов.
  • Лицензия MIT.
Thunderstore development is made possible with ads. Please consider making an exception to your adblock.