You are viewing a potentially older version of this package. View all versions.
PEAKMODDERFIREMAPLEJUMPER-RandomDynamite-1.7.0 icon

RandomDynamite

Drops 1-10 vanilla dynamite above the players at a random height, scattered wide and raining down over a few seconds. F8 toggles, F9 drops a burst now. Its own dynamite skip the heavy explosion VFX to save framerate. Client-side.

Date uploaded a month ago
Version 1.7.0
Download link PEAKMODDERFIREMAPLEJUMPER-RandomDynamite-1.7.0.zip
Downloads 230
Dependency string PEAKMODDERFIREMAPLEJUMPER-RandomDynamite-1.7.0

This mod requires the following mods to function

BepInEx-BepInExPack_PEAK-5.4.75301 icon
BepInEx-BepInExPack_PEAK

BepInEx pack for PEAK. Preconfigured and ready to use.

Preferred version: 5.4.75301

README

Random Dynamite

A client-side PEAK troll mod. It drops vanilla dynamite above the players.

Key Action
F8 Toggle the auto-spawner on/off (rebindable)
F9 Drop one burst right now, whether or not the spawner is on (rebindable)

Every toggle and manual burst shows an on-screen message ("Random Dynamite: ON / OFF / dropping N dynamite"). You also get a "Random Dynamite ready" message when you join a room.

Only you need the mod installed. The dynamite is a normal vanilla item spawned through Photon, so everyone in the lobby sees it and gets blown up as usual.

How it behaves

  • While enabled, a burst spawns every 25-70 seconds (random).
  • Each burst contains 1-10 dynamite.
  • Each piece spawns above a randomly chosen player, at a random height of 6-16 m, with a horizontal scatter of up to 14 m, so a burst covers a wide area rather than landing in one clump.
  • A burst is not dropped in a single frame - its dynamite rain down over 3 seconds, so it arrives as a rolling shower instead of everything appearing and exploding at once.
  • The dynamite is dropped as a physics object and its fuse is lit, so it falls onto the player and explodes.
  • Dynamite spawned by this mod has its smoke, sparks and explosion visuals turned off on your client only, so a burst of 10 doesn't tank your framerate. It still falls, lights, explodes, and hurts exactly like real dynamite. Dynamite from the game itself is untouched.
  • Each dynamite gets a slightly different fuse, so a burst goes off as a rolling barrage instead of everything detonating on the same frame.
  • Toggling it on drops a burst immediately.
  • Works anywhere you are in a session - the airport/start area and all the way up the mountain - not just one area. It does nothing in the main menu (not in a room yet).
  • Works whether or not you are the lobby host.

Config

The config file is created at BepInEx/config/liam.RandomDynamite.cfg and can also be edited live from the in-game BepInEx configuration manager.

Setting Default Description
General / Toggle Key F8 Toggles the auto-spawner.
General / Manual Burst Key F9 Drops one burst on demand.
General / Enabled On Start false Start already enabled.
Spawn / Interval Min-Max (s) 25 - 70 Time between bursts.
Spawn / Count Min-Max 1 - 10 Dynamite per burst.
Spawn / Height Min-Max 6 - 16 Spawn height above a player.
Spawn / Spread Radius 14 Horizontal scatter in metres.
Spawn / Burst Spread Time (s) 3 How long a burst takes to drop all of its dynamite. 0 drops everything at once.
Spawn / Burst Immediately On Enable true Drop a burst as soon as it turns on.
Spawn / Include Local Player true Also drop dynamite above yourself.
Spawn / Only Above Alive Players true Skip knocked-out players.
Spawn / Light Fuses true Light the fuse as soon as it spawns.
Messages / Show Messages true Show the on/off and burst notices.
Messages / Use Game Notifications true Prefer PEAK's own popup, else a small overlay.
Messages / Message Duration (s) 3 Overlay message lifetime.
Messages / Persistent Indicator false Keep "Random Dynamite: ON" in the corner while enabled.
Effects / Suppress Smoke On Mod Dynamite true No smoke trail on the dynamite this mod spawned.
Effects / Suppress Sparks On Mod Dynamite true No burning spark particles on the dynamite this mod spawned.
Effects / Explosion Detail Minimal Minimal = explosion sound, damage and knockback only, no visual objects. Particles = keeps the fireball and smoke, drops the 13 animated orbs. Full = untouched, same as vanilla.
Effects / Fuse Jitter Min-Max (x) 0.8 - 1.6 Fuse multiplier range used when Randomise Fuse is on.
Effects / Max Live Mod Dynamite 20 Skip a burst if this many of ours are still un-exploded.
Debug / Verbose Logging true Log each spawn, fuse jitter and burst result.

Install (R2ModMan)

  1. In R2ModMan, select the Random dynamite profile.
  2. Install BepInExPack_PEAK if it isn't already installed.
  3. Go to Settings → Import local mod (or the profile's "Install from file") and pick Liam-RandomDynamite-1.7.0.zip.
  4. Launch PEAK, join a lobby and press F8.

If it doesn't seem to work

Press F8 (not another key) while in a lobby. You should see "Random Dynamite: ON". If nothing appears, check BepInEx/LogOutput.log - this version logs the resolved prefab name, room state and burst results, which makes it easy to see what is happening.

Warning

This spawns explosives on top of your friends. Use it on people who are okay with being trolled, and expect to get kicked from lobbies that don't appreciate it.

CHANGELOG

1.7.0

  • Fixed the 1.6.0 explosion fix, which was a silent no-op. 1.6.0 stripped the explosion prefab with Object.Destroy, but Unity refuses to remove a component that another component declares as a requirement, and VFX_DynamiteExplosion hits that twice:

    • ExplosionEffectOptimizer has [RequireComponent(typeof(ExplosionEffect))]
    • ParticlePlatformSettings requires its ParticleSystem

    Both destroys were rejected, Player.log recorded Can't remove ExplosionEffect (Script) because ExplosionEffectOptimizer (Script) depends on it, and 1.6.0 detonated exactly like vanilla. It even logged "3 visual components removed" because it counted attempts rather than results.

  • Visual components are now deactivated instead of destroyed. Switching off the GameObject does not care about [RequireComponent], and ExplosionEffect.Start never runs on an inactive object, so no orbs are ever created. This is what actually removes the cost.

  • Fixed a second bug the prefab dump exposed. RemoveAfterSeconds.seconds defaults to 5, but the randomised fuse can run to 8. A shared stripped copy would therefore destroy itself before the dynamite reached it, and Object.Instantiate on a dead reference means the explosion silently never happens. Each dynamite now gets its own copy whose lifetime is raised above the worst-case fuse.

  • Added a self-check that reports how many ExplosionEffect components are still active on the copy, and warns if the strip did not take. The 1.6.0 bug would have been caught immediately by this line.

  • The startup dump now searches children for the ExplosionEffect, so the orb count is actually reported (it silently found nothing in 1.6.0), and it logs each explosion AudioSource's spatialBlend, which confirms building a copy 100 km below the map cannot be heard.

1.6.0

  • Reworked the explosion optimisation away from Harmony-patching ExplosionEffect.Start, and towards swapping the explosionPrefab reference on dynamite this mod spawns.
  • Added Effects / Explosion Detail: Minimal, Particles or Full.
  • Removed Effects / Suppress Explosion Effect On Mod Dynamite, which blocked the explosion outright and left dynamite frozen and lit in mid-air forever.
  • The explosion strip itself did not work. See 1.7.0.

1.5.0

  • Bursts are no longer a tight clump. The horizontal scatter was only 5 m, so every piece landed on top of each other. Now 14 m.
  • A burst now rains down over 3 seconds instead of appearing all in one frame, so it arrives as a rolling shower.
  • Much less frequent. Bursts were every 8-20 s. Now every 25-70 s.
  • Toggling it off cancels a half-finished burst, and leaving a room discards anything still queued.

1.4.0

  • Reduced the explosion orb count for dynamite this mod spawned, and randomised the fuse (0.8x - 1.6x).
  • Added a Max Live Mod Dynamite safety cap (default 20).

1.3.0

  • Smoke suppression for mod-spawned dynamite. Vanilla dynamite is unaffected.

1.2.0

  • Fixed the dynamite not working. It now unfreezes the spawned item (SetKinematicNetworked(false)) so it actually falls, and lights the fuse (LightFlare()) so it detonates reliably.
  • The dynamite prefab name is resolved from the loaded game data at runtime.

1.1.0

  • Added a manual burst key (F9) and on-screen messages.

1.0.0

  • Initial release. F8 toggles the spawner, random bursts of 1-10 dynamite.