
MonstersGordion
Configurable monster spawning inside the Company building on 71-Gordion: timers, weights, caps, floor balance, outdoor/indoor pools. Integrates with ToilHead, StarlancerAIFix and BCME.MONSTERS GORDION
Language / Язык: English · Русский

MONSTERS GORDION
Author: Solo00n
The Company building on 71-Gordion is no longer safe — vanilla monsters now spawn and hunt inside it, on timers, weights and caps you control.
WHAT IT DOES
- Monsters on the Company moon — enemies spawn inside the building on the interior navmesh, the one place the game never threatens you.
- Timed weighted spawning — a random interval between a min and max, then a weighted-random pick from every enemy you enabled.
- Reachability-checked points — connected-region analysis plus a path check, so nothing spawns on roofs, shelves or in pits it cannot leave.
- Floor balance — a configurable split between the ship-landing level and the basement, instead of everything piling into the larger lower floor.
- Indoor / outdoor pools — each spawn rolls which pool to draw from, so dogs, giants and Old Birds actually appear alongside interior enemies.
- Per-enemy control — every spawnable type gets
Enabled,SpawnWeight,MinSpawnCountandMaxSpawnCount. - Blacklist or whitelist — restrict the whole moon to a chosen set, optionally stripping enemies other mods spawn as well.
- Self-healing — stranded enemies are teleported back, idle ones are nudged, and any type that keeps dying instantly is auto-disabled instead of spammed.
MONSTERS
Enabled by default: every interior enemy — Bracken, Thumper, Hoarding Bug, Snare Flea, Bunker Spider, Coil-Head, Ghost Girl, Spore Lizard, Nutcracker, Jester, Masked, Hygrodere, Butler, Barber, Maneater — plus Stingray, Tulip Snake, the bee swarms, and the outdoor threats that path correctly indoors: Baboon Hawk, Eyeless Dog, Forest Keeper, Old Bird and Giant Kiwi. Nest-requiring enemies get their nest placed automatically.
Monsters that need extra work to function on this moon, made to work here and toggleable in the config:
- Feiopar — the mod grows dead trees on the interior navmesh so it can climb, perch and pounce as it does outdoors.
- Earth Leviathan — the Company floor is registered as a surface it may breach, so it erupts indoors instead of circling below forever.
- Cadaver Bloom — planted as standalone corpse traps that burst and give chase, with no dungeon required.
- Kidnapper Fox — vain shrouds are grown on the moon so it has cover and survives.
Cadaver Growths is intentionally left disabled: it hard-requires a generated dungeon, which the Company building is not. Use the Cadaver Bloom traps instead.
HOW IT WORKS
- Landing is detected by polling
StartOfRound.shipHasLandedrather than hooking the doors sequence, so other mods cannot starve the trigger. - The interior navmesh is triangulated, welded into connected regions and anchored, then every spawn point and patrol node must have a complete path to that anchor.
- The Company building has no vanilla interior AI nodes, so the mod generates its own patrol nodes tagged for both indoor and outdoor lookups.
- Spawned enemies are flagged as outdoor enemies: the game gates targeting behind
player.isInsideFactory != enemy.isOutside, and players in the Company building are not flagged as being in a factory, so without this no enemy could ever chase or kill you. - Enemies are created through
RoundManager.SpawnEnemyGameObject— the game's own spawn path, no custom network objects.
MULTIPLAYER (HOST-AUTHORITATIVE)
Only the host needs this mod. Clients receive the enemies through the game's own netcode.
Spawning: the host alone runs the spawner and owns enemy AI; every spawn goes through the vanilla server spawn call and replicates to all clients.
Clients: need NavMeshInCompanyRedux so the interior navmesh matches, but not this mod.
Cleanup: when the ship leaves, the host despawns what it created, so nothing leaks between landings.
REQUIREMENTS
- BepInEx 5.4.21+ (
BepInEx-BepInExPack-5.4.2305) - NavMeshInCompanyRedux (
TRizzle-NavMeshInCompanyRedux) — provides the interior navmesh everything spawns on - Lethal Company V81
INSTALLATION
- Mod manager (r2modman / Thunderstore Mod Manager): search for the mod and click Install; dependencies are pulled in automatically.
- Manual: install the BepInEx pack and NavMeshInCompanyRedux, then drop
MonstersGordion.dllintoBepInEx/plugins/.
CONFIGURATION
File: BepInEx/config/Timofey.MonstersGordion.cfg (created on first launch, applied on game restart).
| Key | Default | Description |
|---|---|---|
GlobalCap | 5 | Maximum enemies alive at once on the moon. |
MinSpawnInterval | 15 | Minimum delay between spawn attempts, in seconds. |
MaxSpawnInterval | 45 | Maximum delay between spawn attempts, in seconds. |
RespawnOnLoad | true | Wipe existing enemies and repopulate on every landing. |
DebugMode | false | Verbose logging of every spawn decision. |
UpperFloorSpawnShare | 70 | Percent of spawns placed at the ship-landing level. |
OutsideEnemyShare | 50 | Percent chance to draw from the outdoor enemy pool. |
OldBirdUpperFloorOnly | true | Keep the Old Bird on the upper floor, where it has room. |
AllowHarmlessCreatures | true | Master switch for the Manticoil and the Roaming Locust swarm. |
EarthLeviathanFloorEmerge | true | Let the worm breach up through the building floor. |
CoilHeadTurretChance | 25 | Percent chance a Coil-Head spawns with a ToilHead turret. |
ManticoilTurretChance | 25 | Same, for the Manticoil. |
MaskedTurretChance | 0 | Same, for the Masked. |
FeioparDeadTrees | true | Grow dead trees so Feiopar can stalk and pounce. |
CadaverBloomTraps | true | Plant standalone Cadaver Bloom traps, no dungeon needed. |
VainShroudIterations | 0 | Vain shroud density for the Kidnapper Fox; 0 is automatic. |
ExcludedEnemies | | Comma-separated list of enemy names to exclude. |
ExcludedEnemiesIsWhitelist | false | Flip that list into an allow-list instead. |
ForeignEnemies | RemoveExcluded | Apply the list to enemies other mods spawn as well. |
CountForeignEnemies | true | Other mods' enemies count toward the caps. |
TreatEnemiesAsOutside | true | Required for enemies to be able to target players. |
Every spawnable enemy also gets its own section —[Enemy.Flowerman],[Enemy.Bunker Spider]and so on — withEnabled,SpawnWeight,MinSpawnCountandMaxSpawnCount.MaxSpawnCountdefaults high, soGlobalCapis the only limit until you cap a type yourself. Further tuning (MinDistanceFromPlayers,AINodeCount,RequireIndoorPoints,MaintenanceInterval) lives in theAdvancedsection.
INTEGRATIONS AND COMPATIBILITY
- ToilHead — per-enemy turret chances for Coil-Head, Manticoil and Masked, including the Slayer variants.
- StarlancerAIFix — detected automatically; its AI fix applies to spawned enemies, and this mod's interior node assignment runs afterwards.
- BrutalCompanyMinus (ExtraReborn) — shares one enemy budget through
CountForeignEnemies, so the two never stack past your cap. - All integrations are resolved at runtime by reflection, so the mod runs with or without them and never hard-depends on their versions.
- Modded enemies appear in the config automatically but stay disabled until you enable them.
BUILD
dotnet build MonstersGordion.csproj -c Release
Output: bin/Release/netstandard2.1/MonstersGordion.dll. Game assemblies are referenced through the LethalCompany.GameLibs.Steam NuGet package as compile-only (PrivateAssets="all") — no game files are distributed.
CREDITS
- Solo00n — author.
- Built on BepInEx and HarmonyX.
- Requires NavMeshInCompanyRedux by T-Rizzle for the interior navmesh.
- Vain shroud technique inspired by FoxLover by ButteryStancakes.
- Licensed under MIT.
MONSTERS GORDION
Автор: Solo00n
Здание Компании на 71-Гордион больше не безопасно — внутри него теперь появляются и охотятся ванильные монстры, а таймеры, веса и лимиты полностью в ваших руках.
ЧТО ДЕЛАЕТ МОД
- Монстры на луне Компании — враги появляются внутри здания на интерьерном навмеше, в единственном месте, где игра никогда не угрожает.
- Спавн по таймеру с весами — случайный интервал между минимумом и максимумом, затем взвешенный выбор из всех включённых врагов.
- Проверка достижимости точек — анализ связных областей и проверка пути, поэтому никто не появится на крыше, полке или в яме, откуда не выбраться.
- Баланс по этажам — настраиваемое распределение между уровнем посадки корабля и подвалом, вместо скатывания всех спавнов на просторный нижний этаж.
- Пулы улицы и помещения — каждый спавн решает, из какого пула брать врага, поэтому собаки, гиганты и Old Bird появляются наравне с интерьерными.
- Настройка каждого монстра — у любого типа есть
Enabled,SpawnWeight,MinSpawnCountиMaxSpawnCount. - Чёрный или белый список — можно ограничить всю луну выбранным набором, при желании удаляя и тех, кого спавнят другие моды.
- Самовосстановление — застрявшие враги телепортируются обратно, замершие получают новую цель, а тип, который постоянно умирает мгновенно, отключается вместо бесконечного спама.
МОНСТРЫ
Включены по умолчанию: все интерьерные враги — Bracken, Thumper, Hoarding Bug, Snare Flea, Bunker Spider, Coil-Head, Ghost Girl, Spore Lizard, Nutcracker, Jester, Masked, Hygrodere, Butler, Barber, Maneater — плюс Stingray, Tulip Snake, рои пчёл и уличные угрозы, которые корректно ходят внутри: Baboon Hawk, Eyeless Dog, Forest Keeper, Old Bird и Giant Kiwi. Тем, кому нужно гнездо, мод ставит его автоматически.
Монстры, которым для работы на этой луне нужна дополнительная механика, реализованная модом и настраиваемая в конфиге:
- Feiopar — мод выращивает мёртвые деревья на интерьерном навмеше, чтобы он забирался, сидел в засаде и прыгал, как на улице.
- Earth Leviathan — пол здания регистрируется как поверхность, сквозь которую можно вынырнуть, поэтому червь атакует внутри, а не кружит под полом.
- Cadaver Bloom — высаживается как самостоятельная ловушка-труп, которая раскрывается и бросается в погоню, без всякого данжена.
- Kidnapper Fox — на луне выращиваются вайншрауды, чтобы лисе было где прятаться и она выживала.
Cadaver Growths намеренно оставлен выключенным: ему жёстко нужен сгенерированный данжен, которым здание Компании не является. Используйте ловушки Cadaver Bloom.
КАК ЭТО РАБОТАЕТ
- Посадка определяется опросом
StartOfRound.shipHasLanded, а не хуком на последовательность дверей, поэтому другие моды не могут перехватить триггер. - Интерьерный навмеш триангулируется, сшивается в связные области и получает якорь, после чего каждая точка спавна и каждая нода патруля обязаны иметь полный путь до этого якоря.
- В здании Компании нет ванильных интерьерных AI-нод, поэтому мод создаёт свои, помеченные тегами и для внутреннего, и для внешнего поиска.
- Заспавненные враги помечаются как уличные: игра разрешает выбор цели по условию
player.isInsideFactory != enemy.isOutside, а игрок в здании Компании не считается находящимся на фабрике, поэтому без этого ни один враг не смог бы преследовать и убивать. - Враги создаются через
RoundManager.SpawnEnemyGameObject— штатный путь спавна самой игры, без собственных сетевых объектов.
МУЛЬТИПЛЕЕР (HOST-AUTHORITATIVE)
Мод нужен только хосту. Клиенты получают врагов через штатный неткод игры.
Спавн: спавнер работает только у хоста, он же владеет ИИ врагов; каждый спавн идёт через ванильный серверный вызов и реплицируется всем клиентам.
Клиенты: им нужен NavMeshInCompanyRedux, чтобы навмеш совпадал, но сам этот мод не нужен.
Очистка: при отлёте корабля хост удаляет созданных им врагов, поэтому между вылетами ничего не накапливается.
ЗАВИСИМОСТИ
- BepInEx 5.4.21+ (
BepInEx-BepInExPack-5.4.2305) - NavMeshInCompanyRedux (
TRizzle-NavMeshInCompanyRedux) — даёт интерьерный навмеш, на котором всё спавнится - Lethal Company V81
УСТАНОВКА
- Через менеджер (r2modman / Thunderstore Mod Manager): найти мод и нажать Install, зависимости подтянутся сами.
- Вручную: установить BepInEx-пак и NavMeshInCompanyRedux, затем положить
MonstersGordion.dllвBepInEx/plugins/.
НАСТРОЙКА
Файл: BepInEx/config/Timofey.MonstersGordion.cfg (создаётся при первом запуске, применяется после перезапуска игры).
| Ключ | По умолчанию | Описание |
|---|---|---|
GlobalCap | 5 | Максимум одновременно живых врагов на луне. |
MinSpawnInterval | 15 | Минимальная задержка между попытками спавна, в секундах. |
MaxSpawnInterval | 45 | Максимальная задержка между попытками спавна, в секундах. |
RespawnOnLoad | true | Очищать врагов и заселять луну заново при каждой посадке. |
DebugMode | false | Подробный лог каждого решения спавнера. |
UpperFloorSpawnShare | 70 | Процент спавнов на уровне посадки корабля. |
OutsideEnemyShare | 50 | Процент шанса взять врага из уличного пула. |
OldBirdUpperFloorOnly | true | Держать Old Bird на верхнем этаже, где ему есть где развернуться. |
AllowHarmlessCreatures | true | Общий выключатель для Manticoil и роя саранчи. |
EarthLeviathanFloorEmerge | true | Разрешить червю выныривать сквозь пол здания. |
CoilHeadTurretChance | 25 | Процент шанса, что у Coil-Head будет турель от ToilHead. |
ManticoilTurretChance | 25 | То же самое для Manticoil. |
MaskedTurretChance | 0 | То же самое для Masked. |
FeioparDeadTrees | true | Выращивать мёртвые деревья, чтобы Feiopar охотился из засады. |
CadaverBloomTraps | true | Высаживать самостоятельные ловушки Cadaver Bloom без данжена. |
VainShroudIterations | 0 | Густота вайншраудов для лисы; 0 означает автоматический режим. |
ExcludedEnemies | | Список имён врагов через запятую для исключения. |
ExcludedEnemiesIsWhitelist | false | Превратить этот список в белый список. |
ForeignEnemies | RemoveExcluded | Применять список и к врагам, которых спавнят другие моды. |
CountForeignEnemies | true | Враги других модов учитываются в лимитах. |
TreatEnemiesAsOutside | true | Обязательно, чтобы враги могли выбирать игроков целью. |
У каждого спавнящегося врага есть своя секция —[Enemy.Flowerman],[Enemy.Bunker Spider]и так далее — с параметрамиEnabled,SpawnWeight,MinSpawnCountиMaxSpawnCount. ЗначениеMaxSpawnCountпо умолчанию высокое, поэтому единственным ограничением остаётсяGlobalCap, пока вы сами не ограничите конкретный тип. Тонкая настройка (MinDistanceFromPlayers,AINodeCount,RequireIndoorPoints,MaintenanceInterval) находится в разделеAdvanced.
ИНТЕГРАЦИИ И СОВМЕСТИМОСТЬ
- ToilHead — отдельные шансы турели для Coil-Head, Manticoil и Masked, включая варианты Slayer.
- StarlancerAIFix — определяется автоматически; его фикс применяется к заспавненным врагам, а назначение интерьерных нод этим модом выполняется после него.
- BrutalCompanyMinus (ExtraReborn) — делит общий лимит врагов через
CountForeignEnemies, поэтому суммарная популяция не превысит ваш кап. - Все интеграции определяются в рантайме через рефлексию, поэтому мод работает и с ними, и без них, и не привязан жёстко к их версиям.
- Модовые враги появляются в конфиге автоматически, но остаются выключенными, пока вы сами их не включите.
СБОРКА
dotnet build MonstersGordion.csproj -c Release
Результат: bin/Release/netstandard2.1/MonstersGordion.dll. Сборки игры подключены через NuGet-пакет LethalCompany.GameLibs.Steam только для компиляции (PrivateAssets="all") — файлы игры не распространяются.
БЛАГОДАРНОСТИ
- Solo00n — автор.
- Построено на BepInEx и HarmonyX.
- Требуется NavMeshInCompanyRedux от T-Rizzle для интерьерного навмеша.
- Идея выращивания вайншраудов вдохновлена модом FoxLover от ButteryStancakes.
- Лицензия MIT.