Lethal Company
You are viewing a potentially older version of this package. View Latest Version
Install with App

Details

Date Uploaded
Downloads
861
Size
5MB

Paul Miller Bug

A client-side Lethal Company mod (BepInEx 5) that replaces the Hoarding Bug's (Loot Bug's) noises with 6 custom clips.

Whenever a Hoarding Bug makes noise — its calm chitter or its angry/attack screeching — it will play one of your 6 clips instead, in 3D at the bug's position, through the bug's own voice AudioSource. No networking code: every player who wants to hear it installs it themselves, and the bug will sound normal to players without the mod.

Requirements

  • Lethal Company with BepInEx 5 installed (e.g. via r2modman / Thunderstore Mod Manager, or a manual BepInEx install).

Install

Manual

  1. Extract this zip so the folder structure lands in your game folder: BepInEx/plugins/PaulMillerBug/ should contain PaulMillerBug.dll and bug1.wav … bug6.wav. The game folder is the one containing Lethal Company.exe.
  2. Launch the game. Check BepInEx/LogOutput.log for Paul Miller Bug lines confirming clips loaded.

r2modman / Thunderstore Mod Manager

Create a manual install: put PaulMillerBug.dll + bug1.wav…bug6.wav into a folder named PaulMillerBug inside your profile's BepInEx/plugins/, or use "Import local mod" if available. A Thunderstore manifest.json is included in the plugin folder for repackaging (note: Thunderstore packages also need an icon.png at package root — add a 256x256 PNG of your choice if you upload it; no icon is bundled here).

How it works

On load, the plugin loads every bug*.wav / bug*.mp3 / bug*.ogg next to the DLL. When a Hoarding Bug spawns (HoarderBugAI.Start), and once when clip loading finishes for bugs already spawned, it replaces that bug's sound fields:

  • chitterSFX (AudioClip[], the calm/normal chitter) → all loaded clips
  • angryScreechSFX (AudioClip[], angry/attacking screech) → all loaded clips
  • angryVoiceSFX (AudioClip, angry voice) → one random loaded clip per bug
  • hitPlayerSFX (AudioClip, hit-player sound) → one random loaded clip per bug

The game itself picks a random clip from those arrays when the bug vocalises, so each noise is a random one of the 6. bugFlySFX (the wing-flight loop) is intentionally left unchanged — it's not a vocal noise.

Because bugs only vocalise from those fields, field replacement is the whole mechanism; there is no death/kill detection in this mod.

Swapping / adding sounds

Drop any .wav, .mp3, or .ogg files named bug* (e.g. bug7.wav, bug-cool.ogg) into BepInEx/plugins/PaulMillerBug/, delete/replace the ones you don't want, and restart the game. WAV (44100 Hz, 16-bit) is the most reliable; the bundled files are in that format.

Config

Created after first launch at BepInEx/config/com.kale.paulmillerbug.cfg:

  • Enabled (default true) — turn the replacement off without uninstalling.
  • Volume (default 1.0, 0–2) — multiplier applied once per bug to its voice AudioSources when clips are applied. Restart to re-apply.

Notes / limitations

  • Client-side only. Other players don't need it, and it doesn't change what they hear.
  • Built against the publicised Lethal Company v49 game libraries (LethalAPI.GameLibs 49.0.0 on NuGet). If a future game update renames the HoarderBugAI sound fields, the log will show replacement failures and the mod will need an update.
  • Bundled clips: bug1 2.72s, bug2 4.28s, bug3 5.38s, bug4 5.38s, bug5 8.33s, bug6 5.28s.

Building from source

Source is in source/PaulMillerBug/ (Plugin.cs, PaulMillerBug.csproj, nuget.config):

dotnet build -c Release

Requires the .NET SDK and internet access to NuGet (BepInEx feed + nuget.org). Output: bin/Release/netstandard2.1/PaulMillerBug.dll. See the comment in the .csproj for why GameLibs is referenced the way it is.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.