nobugs

v1.0.0·Updated 2026-08-15

Removes bugs

About this mod Machine translation

PEAK NoBugs

A BepInEx 5 plug-in for the game PEAK that removes all insects (spiders, scorpions, beetles, swarms, antlions) from the level so that players with entomophobia can play with peace of mind.

Only effective against "Insects". Non-insect environmental hazards such as zombies, ravens, snowmen, and jellyfish are not within the scope of this plug-in (the game itself has its own corresponding switch).

Supported insects

| Insect | Default | Description |

|---|---|---|

| Spider Spider | Removed | No longer rappels from the ceiling and grabs the player |

| Scorpion | Removed | No longer poisoned/knocked back |

| Beetle | Removed | No longer pushes players upward |

| BeeSwarm | Removed | Beehive no longer spawns swarms (prevents spawning at source) |

| Antlion | Removed | Sandpit no longer swallows players |

| FrogTongue | Reserved | Amphibians, not counted as insects, will not be removed by default |

Each insect can be turned on and off individually in the configuration file.

Install

Prerequisite: BepInEx 5 has been installed in the game directory (this project is compiled based on 5.4.23).

  • Compile this project (see "Build" below) to get bin/Debug/netstandard2.1/nobugs.dll.
  • Copy nobugs.dll to the game’s plug-in directory:

/steamapps/common/PEAK/BepInEx/plugins/nobugs.dll

  • Start the game and the following should appear in the log:

[Info: nobugs] PEAK NoBugs v1.0.0 loaded, insect cleaning enabled.

Configuration

The configuration file is in /BepInEx/config/nobugs.cfg and can be modified at any time to take effect after restarting the game:

[Bugs]

Whether to remove spiders

RemoveSpiders = true

Whether to remove scorpions

RemoveScorpions = true

Whether to remove beetles

RemoveBeetles = true

Whether to remove the swarm

RemoveBees = true

Whether to remove antlions

RemoveAntlions = true

Whether to remove frog tongue (non-insects, off by default)

RemoveFrogTongues = false

[General]

true = destroy the bug object directly (more thorough); false = only hide and disable its behavior (more secure online)

DestroyObjects = true

Implementation principle

Patches at the insect's respective life cycle entry point via Harmony. Decompilation analysis specific to the game (see agent.md):

  • Spider.Start / Spider.Scan / SpiderTrigger.OnTriggerEnter

——Prevent spiders from registering with SpiderManager and block rappelling;

  • Mob.Start (Postfix, judged by type at runtime) - Remove Scorpion / Beetle / FrogTongue (all three inherit Mob, but do not override Start);
  • Scorpion.InflictAttack / Beetle.InflictAttack - double insurance, no damage will be caused even if the object remains;
  • Beehive.Init - Set spawnBees to false to prevent the network from generating bee colonies from the source (cleaner than destroying them afterwards to avoid redundant Photon network objects);
  • BeeSwarm.Start - removes a bee swarm that already exists in the scene/save;
  • Antlion.Start - remove antlion.

Each target uses the double insurance of "prevent spawning + blocking damage" to avoid differences in loading order.

Why can’t we just change the Hazard switch that comes with the game?

Although Hazard_Spiders / Hazard_Beetles / Hazard_Scorpions / Hazard_Bees are defined in RunSettings, reverse analysis confirmed that these enumeration values ​​have never been read by any insect code except for registering default values; only Antlion and FrogTongue actually self-check the switch. The "Bug Phobia" mode that comes with the game only replaces the bug model with other shapes, and the behavioral damage still exists. So a patch is necessary to actually remove it.

Online precautions

The generation and status of bugs are controlled by the homeowner (MasterClient):

  • If only the client installs this plug-in, local bugs will be destroyed, but the status may be inconsistent with that of the homeowner;
  • It is recommended that homeowners also install it, or set DestroyObjects to false (to only hide and disable it) to reduce the risk of online desynchronization …

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.

Dependencies

Install these first, or the mod will not work:

BepInEx-BepInExPack_PEAK

File & checksum

Filename
nobugs-1.0.0.zip
File size
14.9 KiB