PEAK
This package has been deprecated and may no longer be maintained. We recommend looking for an alternative.
Install with App

Details

Latest version
0.8.6
Last Updated
First Uploaded
Downloads
36
Likes
0
Size
3MB
Dependants

Categories

Tags

Deprecated

PEAK Twitch Integration

A PEAK-specific Twitch integration that runs entirely inside the game. It does not require a chat bot, companion application, or the external Stream Hub.

Current features

  • Click the small Twitch logo at the top-right of PEAK's main menu to open the integration window.
  • Link the broadcaster account with Twitch's Device Code OAuth flow.
  • Connect directly to Twitch EventSub and receive custom Channel Points redemption events while PEAK is running.
  • Store OAuth credentials encrypted for the current Windows account and refresh them automatically.
  • Enable or disable feature modules from the integration window.
  • Use PEAK Voice Balance as the first module, including RNNoise, per-player automatic loudness leveling, a peak limiter, and one shared 0-200% output level.
  • Automatically create and manage a [PEAK] Cannon Launch reward with mandatory player-name input.
  • Launch the exact matching player, including the streamer, and refund invalid or unavailable targets.
  • Optionally look at a nearby teammate and press U to shove them about one metre and knock them over.
  • Enable the local Developer Tools test-bot spawner for repeatable shove testing without another player.

The main-menu integration window now uses an opaque dark-green background and high-contrast text.

Installation

  1. Install BepInEx-BepInExPack_PEAK through Thunderstore or r2modman.
  2. Remove the older standalone PeakVoiceBalance mod if it is installed. Running both would process voices twice.
  3. Import PeakTwitchIntegration-0.8.6.zip as a local mod and start PEAK through Modded.
  4. Click the small Twitch logo in PEAK's main menu.

For a manual install, copy plugins/PeakTwitchIntegration.dll and plugins/librnnoise-0.dll into BepInEx/plugins/PeakTwitchIntegration/.

Linking Twitch

Twitch requires every application to have its own public Client ID. No client secret is needed or accepted by this mod.

  1. Register a Twitch application in the Twitch Developer Console and configure it as a public client for Device Code authentication.
  2. Copy its Client ID into the field in PEAK's Twitch Integration window.
  3. Select CONNECT.
  4. Open the activation page shown by the mod, enter the displayed code, and approve channel:manage:redemptions.
  5. PEAK reconnects the saved account automatically on later starts.

Version 0.8.6 needs the manage permission to create the Cannon Launch reward and to refund failed launches. Teammate Push and Developer Tools do not read Twitch chat and add no OAuth permission. If version 0.4.0 or older was already linked, Twitch asks for one new authorization; the Client ID does not change.

The OAuth token and rotating refresh token are protected with Windows DPAPI for the currently signed-in Windows user. FORGET SAVED ACCOUNT removes the stored authorization. Twitch is connected only while PEAK is open.

Menu access

  • In the main menu, click the small Twitch logo in the top-right corner.
  • During a run, press Escape and choose TWITCH INTEGRATION in PEAK's pause menu.
  • Both entries open the same live settings. Escape closes the integration window first and leaves the pause menu open.

Voice Balance behavior

  • Every incoming remote voice has independent RNNoise and loudness state.
  • Speech is moved toward a target of -18 dBFS within configured gain limits.
  • Loud transients are limited before PEAK plays them.
  • By default, non-zero individual player sliders are treated as 100%; 0% remains mute.
  • PEAK's distance, obstruction, muffling, reverb, cinematics, and global voice volume remain intact.
  • The existing VOICE BALANCE row in PEAK's player-volume menu remains available.

Only the listener needs Voice Balance. It never changes or transmits the listener's own microphone audio.

Cannon Launch behavior

  • On connection, the mod creates or updates [PEAK] Cannon Launch on the linked broadcaster channel.
  • The default cost is 1000 Channel Points. Existing configurations are migrated once, and the global cooldown remains disabled.
  • Launch power defaults to 2000 and can be adjusted from 250 to 5000 in the in-game window.
  • The selected player sees a large game-styled countdown: green 3, yellow 2, then red 1.
  • A compact lower-left popup identifies the triggered Twitch reward during the countdown and launch.
  • Launches remain mostly vertical but include a gentle forward component in the selected player's facing direction.
  • Viewer input is matched case-insensitively against exact PEAK/Photon player names. A leading @ is accepted.
  • Unknown, missing, ambiguous, dead, or unavailable targets cancel the redemption and refund the points.
  • The launch itself uses PEAK's existing multiplayer RPC, so it reaches the selected player without teleporting them into a physical cannon.
  • Fall damage is suppressed only for the launch's first genuine landing. Any later fall uses PEAK's normal damage rules immediately. For a remote player's countdown and no-fall-damage guarantee, that player must also have this mod installed; the launch itself still reaches vanilla clients.
  • Disabling the module disables the reward. A normal disconnect or game shutdown also attempts to disable it; after a crash, Twitch may leave it enabled until the next connection.

Teammate Push behavior

  • Enable or disable TEAMMATE PUSH in the in-game Twitch Integration window.
  • Look directly at a living teammate within the hard maximum of 1.5 metres and press U.
  • The default forward force is now 400, twice the previous default.
  • The lobby host can adjust the shared force from 200 to 800 in the integration window. The value is synchronized through the Photon room to every player using version 0.8.5 or newer.
  • Non-host players see the active value but cannot change it while they are in the room.
  • The target is knocked over for about 1.1 seconds and pushed backward in the local player's viewing direction.
  • The pushed player receives up to eight seconds of fall-damage protection. It ends immediately on the first genuine landing, so a later fall uses PEAK's normal damage again.
  • The key, range, preferred host force, upward lift, and protection duration can also be adjusted in the generated BepInEx configuration.
  • The target does not need the mod for the shove itself because it uses PEAK's existing multiplayer RPC. The target does need the mod for fall-damage protection.
  • Teammate Push is entirely in-game; there are no Twitch chat commands or additional Twitch scopes.

Developer Tools

  • Open the DEVELOPER TOOLS tab in the main-menu or Escape-menu integration window.
  • Inside a multiplayer room, only Photon's lobby host can enable or use the test-bot spawner. Non-host controls and the F8 hotkey are blocked.
  • If the local player loses the host role, any existing local test bot and its HUD are removed immediately.
  • Enable PUSH TEST BOT, then press F8 during a playable level or use SPAWN / REPLACE TEST BOT.
  • One stationary local test dummy is spawned in front of the player; spawning again replaces it.
  • A second copy of PEAK's own stamina bar appears above the normal player bar and follows the dummy's stamina and all standard debuff segments.
  • Its label shows stamina and injury numerically. New injury damage flashes red as DAMAGE +N%, making fall-damage tests unambiguous.
  • Walk within 1.5 metres, look directly at the dummy, and press the configured Teammate Push key (U by default).
  • The developer dummy intentionally receives no Teammate Push fall protection, while real pushed players keep the configured protection.
  • REMOVE TEST BOT cleans it up. Developer test bots are also removed when the mod shuts down.
  • The dummy is a local PEAK Character/Ragdoll test object, not a real Photon account. It does not occupy a lobby slot and other players do not see it.

Configuration and compatibility

The generated configuration file is:

BepInEx/config/com.local.peaktwitchintegration.cfg

Built against PEAK Steam build 24961053 and BepInEx-BepInExPack_PEAK-5.4.75301.

License

The mod source is released under the MIT License. The included RNNoise binary is redistributed under the BSD 3-Clause license; see THIRD-PARTY-LICENSES.md.

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