CrewMonitors
4-panel crew OpenBodyCams stack: body/map/external cycle, click-to-focus radar, OBC-matched screens.CrewMonitors
Lethal Company BepInEx mod that adds a fixed 4-panel crew monitor stack on the ship wall. Each panel shows OpenBodyCams body cams (and map / external views via the cycle button).
Thunderstore: MrGlim-CrewMonitors
Source: lc-mods/CrewMonitors
Game: Lethal Company (BepInEx)
Networking: Install with OpenBodyCams on host and clients for monitor feeds. This is display QoL on top of OpenBodyCams — no extra host-only gate beyond OBC itself.
Requirements
- BepInEx Pack
- Zaggy1024-OpenBodyCams (hard dependency)
OpenBodyCams notes
- If you use LethalLib, OpenBodyCams may require buying the antenna ship upgrade before body cams work.
- GeneralImprovements “better monitors” remaps which panel OpenBodyCams claims; this mod skips any renderer already owned by an OpenBodyCams body cam and never steals
Cube.001(OBC’s default main panel). - This mod does not change OpenBodyCams quality settings (e.g.
HorizontalResolution); configure those in the OpenBodyCams profile. - Screen look matches OpenBodyCams MonitorEmissiveColor. ScreenBrightness only scales night-vision fill on crew body cams (keeps interior feeds from going milky).
Behavior
- Always 4 panels (default
MaxMonitors=4, vertical stack). Living players fill from the bottom up. Empty slots stay Off (black). There is no round-robin duplication past 4 players. - By default (
PreferReuseVanillaScreens=false) leaves vanilla door/internal cams alone and clones SingleScreen panels on the main monitor wall (Cube.001), flush via localBounds depth +WallInset. - Cycle button (bottom-right of each panel): grey bezel cylinder with a white face. Uses the vanilla hand cursor. Cycle order per panel:
- Off → player0 body → player0 map → player1 body → player1 map → … → External → Off
- Hover a panel: transparent cursor (no hand icon clutter). Tooltip shows the player name (and “Map” when on map feed). Tooltip is hidden for Off / External.
- Click a panel: focuses the ship main radar / teleporter target on that panel’s assigned player (
mapScreen.SwitchRadarTargetAndSync). The other crew panels keep their own players. - Optional world-space TMP nameplates under each monitor (
ShowNameplates). AlwaysShowMonitors=truekeeps all panel meshes visible; empty / Off slots stay black rather than hiding the frame.
Config (BepInEx/config/com.benhough.lethal.CrewMonitors.cfg)
| Option | Default | Description |
|---|---|---|
| Enabled | true | Master toggle |
| MaxMonitors | 4 | Slots (1–8); default stack is 4 |
| IncludeLocalPlayer | true | Include yourself in assignments |
| CloneSpacing | 0.42 | Local spacing on the Cube.001 wall plane |
| CloneScaleFactor | 0.60 | Panel size knob (localScale = SingleScreen.localScale * (CloneScaleFactor * 2.0 / 0.6); 0.6 ≈ prior good tile size) |
| WallInset | 0.55 | Flush inset into the wall along the thin depth axis |
| GridHorizontalOffset | 3.68 | Grid shift along wall-plane horizontal |
| GridVerticalOffset | -0.45 | Grid shift along wall-plane vertical |
| GridYawDegrees | 20 | Panel rotation around local Z (degrees) |
| GridColumns | 1 | Columns in the clone grid (1 = vertical stack) |
| RefreshSeconds | 1.0 | Re-assign interval (seconds) |
| PreferReuseVanillaScreens | false | Reuse whitelisted unused ship screens first (default: clone grid only) |
| ShowNameplates | true | Player name under monitor |
| AlwaysShowMonitors | true | Keep all panels visible; empty slots Off (black), no round-robin |
| ScreenBrightness | 0.2 | Night-vision fill scale only (1.0 = stock OBC); emissive uses OBC MonitorEmissiveColor |
Install
- Install BepInEx Pack for Lethal Company.
- Install dependency Zaggy1024-OpenBodyCams from Thunderstore.
- Install MrGlim-CrewMonitors via Thunderstore / r2modman / Gale, or drop
CrewMonitors.dllintoBepInEx/plugins/.
AI disclosure
This mod was made with the help of generative AI. The code and this README were produced with an AI coding agent, directed by the author (MrGlim / Ben Hough). The Thunderstore package is listed in the AI Generated category.
License
MIT
Building
dotnet build -c Release. Lethal Company, Unity and BepInEx assemblies come from NuGet reference packages (LethalCompany.GameLibs.Steam, BepInEx.Core, UnityEngine.Modules), so no game DLLs live in this repo. OpenBodyCams.dll (from Zaggy1024-OpenBodyCams) is not included either: the csproj expects it at refs/OpenBodyCams/OpenBodyCams.dll in the repository root (the ModRefsDir property). Put a copy there, pass -p:ModRefsDir=<folder>/ pointing at your r2modman/Gale profile's plugin folder, or change the HintPath.
