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

WatchOutBro

Per-enemy gag overlays with sound. Plus mandatory compliance training every level.

Date uploaded 5 months ago
Version 2.0.0
Download link watchoutbro-WatchOutBro-2.0.0.zip
Downloads 517
Dependency string watchoutbro-WatchOutBro-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

WatchOutBro

A gag mod that slaps a different out-of-place overlay onto your screen for every enemy that gets close. Loud, ugly, on purpose.

What you'll see

When an enemy is in range, an overlay appears with an icon + a "bro" message. Highest-priority reaction wins when multiple enemies are in range.

Enemy Reaction
Huntsman Giant shush face filling the screen, "be quiet bro..."
Reaper Skull, "duck bro", scream
Banger Explosion, "RUN BRO", alarm
Apex Predator Duck, "QUACK BRO"
Chef Knife, "skip lunch bro"
Mentalist Brain, "stay grounded bro"
Peeper Eye, "look away bro"
Hidden Question mark, "where bro??"
Floater / Robe Skull, "ghost bro"
Clown / Birthday Boy Skull, "not funny bro"
Headman "mind your head bro"
Trudge "walk faster bro"
Spewer "ew bro"
Bowtie "fancy bro"
Tick "bug spray bro"
Balloon "pop bro"
Gnome "tiny bro"
Shadow Child "lights on bro"
Cleanup Crew "tidy up bro"
Loom / Elsa / Heart Hugger / Oogly "weird bro"
Anything else The original cat photo + "watch out bro..."

Wolters Kluwer mandatory compliance training

Once per level, ~8 to 20 seconds after the level loads, a fake compliance modal appears in the centre of the screen with a "WK" logo and the message "MANDATORY COMPLIANCE TRAINING — Wolters Kluwer Inc." with an Acknowledge button that does nothing. There is no escape. There is only compliance.

Install

Use r2modman or Gale. Click "Install with Mod Manager" and pick a profile.

Multiplayer

The overlay is purely client-side — only players who install the mod see it. Hosts and lobbies do not need to enforce it.

Credits

  • Cat photo: the author's cat.
  • Idea: a Minecraft mod meme.
  • Wolters Kluwer is a real company. The "WK" logo in this mod is a procedurally generated parody and is not the real Wolters Kluwer trademark.

CHANGELOG

Changelog

3.0.1

Fixes

  • Game no longer freezes on level load. Diagnostic Harmony patches were dispatching pickup events on every fire — many "pickup"/"grab"/"collect" methods run every frame (e.g. Unity's OnTriggerEnter, IsPickupable()), which spammed the Goober counter into the thousands and spawned infinite duplicates. Diagnostic patches are now strictly log-only; narrowed keywords (pickup, shoot only); 50-patch cap per kind.
  • Mommy ASMR now plays on the main menu. SceneManager.activeSceneChanged doesn't fire for the scene already active when the plugin attaches — so the ambient loop never triggered on launch. Replaced with a 1Hz poll of SceneManager.GetActiveScene(); scene-name heuristic also recognises main.
  • Plugin compile fix. Config static class shadowed BaseUnityPlugin.Config (the inherited ConfigFile property) — renamed to ModConfig so dotnet build resolves correctly.

Goober — now actually wired

  • New PickupPatch.cs runs Harmony patches on a curated short list of likely method names (PhysGrabber.PickUpValuable, PhysGrabObject.OnGrab*, ValuableObject.OnPickUp, ItemAttributes.PickUp). Whichever resolves at runtime gets postfixed.
  • PickupRouter.OnRealPickup debounces same-instance pickups within a 0.6s window so multiple patched methods firing in one event count once.
  • Hard limits to keep the game playable even if the patch target is wrong:
    • 1s minimum gap between counted pickups
    • 500-pickup lifetime kill-switch with warning log
    • 100-duplicate hard cap per session (even with GooberDuplicate=true)
    • Self-duplicates excluded from re-counting
  • Clark trigger hard limits: 8s minimum gap between cameos, 50-fire lifetime cap.

Config defaults

  • GooberDuplicate default flipped to off — opt in once the pickup hook is verified working for your install.

3.0.0

Fixes

  • Per-enemy reactions actually trigger now. v2 substring-matched on the leaf GameObject name; spawned enemy components live on child objects so the parent prefab name was missed. v3 walks the entire transform-ancestor chain and matches against the joined string. Strips "(Clone)" suffix.
  • Diagnostic flag LogEnemyNames in BepInEx/config/watchoutbro.WatchOutBro.cfg dumps every distinct enemy's full ancestor chain + matched reaction key for tuning.

Features

  • Stacking overlays. Multiple enemies in range now show multiple stacked bubbles in the bottom-left (max 4), sorted by priority. Exclusive layouts (Huntsman shush, Wolters Kluwer modal) suppress the stack.
  • Voice + image drop-in folders. Drop OGG/WAV/MP3 into BepInEx/plugins/WatchOutBro/voices/ and PNG into BepInEx/plugins/WatchOutBro/images/ to override procedural placeholders. No rebuild needed.
  • Character cameos (overlay onto vanilla enemies/items, no new spawnable content):
    • Goobers — every valuable pickup increments a counter, plays goober_N.ogg (1..10) then goober_iquit.ogg, and spawns a visual duplicate of the same valuable at your feet (client-only, not net-synced).
    • Clark — picking up a high-value valuable (diamond / crown / jewel / gold / trophy / ruby / sapphire / emerald) flashes a Clark cameo and plays clark_pickup.ogg.
    • Mommy ASMR — ambient loop in menu / lobby / truck scenes. Drop mommy_asmr_loop.ogg to enable; otherwise silent.
    • Ulfric Stormcloak — random cameo on level load (5% chance, configurable).
    • Klonnku — re-skins the Gnome reaction.
    • Plonko — re-skins the Spewer reaction.
    • Dexter Morgan — re-skins the Chef reaction.
    • DIRCM (enemy) — re-skins the Trudge reaction with a nose-shaver icon.
    • DIRCM (weapon) — firing any gun flashes a cyan IR beam and plays dircm_fire.ogg (or a procedural whistle).
  • New procedural icons: NoseShaver, Beam. New procedural sound: IrBeam.
  • Pickup + gun-fire hooks use a diagnostic candidate-method scan; first launch logs which methods fired so the hook can be locked in a patch update if the heuristic missed.

Config

New BepInEx config keys in [Diagnostics], [Audio], [Gameplay] — see file in BepInEx/config/watchoutbro.WatchOutBro.cfg after first launch.

2.0.0

  • Per-enemy reactions: each enemy type now triggers its own overlay and message.
  • Wolters Kluwer compliance training modal once per level.
  • Procedural icons + sounds.

1.0.0

  • Initial release. Cat appears when enemy within 15 m.