You are viewing a potentially older version of this package. View all versions.
Solon-ImprovedTABSlot-2.0.0 icon

ImprovedTABSlot

Lets Shovel, Ammo, Clipboard, Sticky note, Key, Shotgun & Knife into the v80 utility (Tab) slot. Host-authoritative, per-item config.

Date uploaded a day ago
Version 2.0.0
Download link Solon-ImprovedTABSlot-2.0.0.zip
Downloads 78
Dependency string Solon-ImprovedTABSlot-2.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

README

ImprovedTABSlot

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

A BepInEx mod for Lethal Company (v80+, "The Blooming Update", which added the utility slot). It lets items that the vanilla utility-slot blacklist normally rejects be carried in the Tab slot:

  • Shovel (and its reskins: Stop sign / Yield sign)
  • Ammo (shotgun shells)
  • Clipboard
  • Sticky note
  • Key
  • Shotgun (two-handed — see caveat)
  • Kitchen knife
  • Maneater (baby cave dweller) — opt-in, off by default

Each item can be toggled individually.

Multiplayer (host-authoritative)

Because a client-side "extra slot" can be a competitive advantage, the feature is host-authoritative: it stays inert on a client until the host confirms it also has the mod (via a Netcode named-message handshake). A lone modded client in a vanilla lobby gets no change; when the host has the mod, the utility slot uses the vanilla, fully-networked slot path (ItemOnlySlot, index 50) so all players stay in sync.

How it works

The blacklist lives in PlayerControllerB.FirstEmptyItemSlot, which routes a grabbed item to slot 50 only when !isScrap && !twoHanded && !disallowUtilitySlot. A Harmony Prefix reproduces that "return 50" branch for enabled items (when the slot is empty and the host has the mod), bypassing those gates. The Tab handler only toggles the active slot and never re-validates, so this covers both auto-pickup and Tab swapping.

Shotgun caveat: it's two-handed, so vanilla's two-handed switching lock still applies once it's in your hands (you must drop it to switch away).

Install

  1. Install BepInEx 5 (BepInExPack for Lethal Company).
  2. Put Iron.ImprovedTABSlot.dll in Lethal Company/BepInEx/plugins/.
  3. Launch once to generate BepInEx/config/Iron.ImprovedTABSlot.cfg.

Config (Iron.ImprovedTABSlot.cfg)

Section Key Default Meaning
General Enabled true Master switch.
Items ShovelKnife true Per-item toggles.
Items Maneater false Allow the Maneater (off by design).
Debug VerboseLogging false Log routed items + networking state.

Build

dotnet build -c Releasebin/Release/Iron.ImprovedTABSlot.dll. Game references come from the LethalCompany.GameLibs.Steam NuGet package (match the version to your build).

Compatibility

Only patches vanilla FirstEmptyItemSlot; doesn't touch ReservedItemSlotCore. If you run another utility-slot manager, watch for a Tab-keybind conflict.


ImprovedTABSlot — Русское описание

⤴ English

Мод на BepInEx для Lethal Company (v80+), позволяющий носить в Tab-слоте предметы, которые ваниль туда не пускает:

  • Лопата (и рероллы: Stop/Yield sign)
  • Патроны (для дробовика)
  • Планшет, Стикер, Ключ
  • Дробовик (двуручный — см. оговорку)
  • Кухонный нож
  • Манчер (детёныш cave dweller) — опция, по умолчанию выкл.

Каждый предмет включается отдельно.

Мультиплеер (host-authoritative)

Так как «лишний слот» на клиенте — это преимущество, фича управляется хостом: на клиенте она выключена, пока хост named-message'ем не подтвердит, что мод есть и у него. Одиночный клиент в ванильном лобби ничего не получает; когда мод у хоста — используется штатный сетевой путь слота (ItemOnlySlot, индекс 50), и все синхронизированы. Это и есть фикс правила Lethal Company про клиентское преимущество.

Как работает

«Чёрный список» — в PlayerControllerB.FirstEmptyItemSlot: предмет уходит в слот 50 только если !isScrap && !twoHanded && !disallowUtilitySlot. Harmony-Prefix повторяет ветку «вернуть 50» для включённых предметов (когда слот пуст и мод у хоста), обходя эти проверки. Клавиша Tab предмет не перепроверяет — покрыт и авто-подбор, и обмен по Tab.

Оговорка про дробовик: он двуручный, поэтому ванильная блокировка смены слота для двуручных сохраняется (чтобы переключиться назад — выбросить).

Установка

  1. Поставь BepInEx 5 (BepInExPack for Lethal Company).
  2. Положи Iron.ImprovedTABSlot.dll в Lethal Company/BepInEx/plugins/.
  3. Запусти раз — создастся BepInEx/config/Iron.ImprovedTABSlot.cfg.

Совместимость

Патчит только ванильный FirstEmptyItemSlot, ReservedItemSlotCore не трогает. Если стоит другой менеджер utility-слота — следи за конфликтом бинда Tab.

CHANGELOG

Changelog

2.0.0

  • Split: this mod is now the utility (Tab) slot ONLY. The belt-bag feature moved to a separate mod, ImprovedBeltBag. Renamed back to ImprovedTABSlot / Iron.ImprovedTABSlot (config file is now Iron.ImprovedTABSlot.cfg).
  • Networking: added host-authoritative gating so the mod gives no client-side advantage in a vanilla lobby — the utility-slot change only applies when the host has the mod.

1.3.0

  • Renamed to ImprovedTABSlot+Beltbag (Thunderstore package ImprovedTABSlot_Beltbag, assembly/plugin Iron.ImprovedTABSlot_Beltbag) to reflect that it covers both the utility slot and the belt bag. NOTE: the config file is now Iron.ImprovedTABSlot_Beltbag.cfg.
  • Added a Russian description to the README (rendered on the mod page).

1.2.1

  • Fix: the Maneater is no longer added to the belt bag. It's a live AI creature and the belt bag never runs its grab/equip path, so a bagged Maneater kept running its hidden body and desynced (appeared in the bag icon but stayed in the world and escaped). It is now supported only in the utility slot, whose grab path calls EquipItem and freezes the creature correctly.
  • [Items] Maneater now means "utility (Tab) slot only".

1.2.0

  • The Maneater (baby cave dweller) can now be enabled for the utility slot too, not just the belt bag, via a single [Items] Maneater toggle (default off) that governs both.
  • Removed the separate [BeltBag] AllowManeater (superseded by [Items] Maneater).

1.1.0

  • Belt Bag support: normally-blocked items (Shotgun and Kitchen knife — both scrap) can now be stored in the belt bag. Which items are allowed reuses the [Items] toggles.
  • Added [BeltBag] Enabled (default on) and [BeltBag] AllowManeater (default off).
  • Documented that, besides scrap, the only item-type the vanilla belt bag rejects is the Maneater / baby cave dweller (itemId 123984 / 819501).
  • Postfix on BeltBagItem.ItemInteractLeftRight; startup log now confirms both patches.

1.0.0

  • Initial release.
  • Allows Shovel, Ammo (shotgun shells), Clipboard, Sticky note, Key, Shotgun and Kitchen knife into the v80 vanilla utility slot.
  • Per-item toggles via BepInEx config.
  • Runtime auto-detection of the utility-slot validator method, with a config override (ValidatorMethodOverride) and a diagnostic member dump (DumpUtilityMembers) as fallbacks.