Player Pain Sounds

版本 v1.0.7·更新於 2025-12-29

Customize the player injury and death sounds with your own audio files

模組介紹 作者原文

Player Pain Sounds Plugin

A BepInEx plugin for H3VR that replaces the default player injury and death sounds with customizable sound packs.

There is also a last stand feature for playing a dramatic sound or music when at low health. By default this health percentage is 25%.

The game must boot up at least once with a detectable OuchPack for it to be selectable from the configuration file.

Features

  • Replaces both player injury and death sounds with custom sound packs
  • Adds 3D impact sounds that play at the exact point of damage on the player's body
  • Independent toggle to enable or disable regular pain sounds (other sounds continue to play)
  • Optional overlap prevention to ensure only one pain sound plays at a time
  • Support for multiple sound packs with in-game configuration menu
  • Configurable volume control for all sound categories
  • Runtime configuration via ConfigurationManager
  • Sound selection based on damage amount:
  • Low damage (≤5% max health): pain_low sounds
  • Medium damage (5–20% max health): pain_default sounds
  • High damage (≥20% max health): pain_high sounds
  • (NEW) Plays dedicated fall pain sounds when landing hard via fall_low / fall_high categories (fall sounds disabled by default). Configuration settings exist to line up NGA's Fall Damage Mod ( settings with this mod for damage to actually register if you desire that.
  • (NEW) Invincibility-aware sounds:
  • invincible_pain for pain while invincible (no fallback if missing)
  • invincible_impact for impacts while invincible (no fallback if missing)
  • Toggle to allow fall sounds while invincible (default off)
  • Last stand looping sound when health is below 25%
  • Critical health alert sound when health dips below 25%

Sound Pack Structure

Required sound categories (minimum for pack to work):

  • pain_default: General injury sounds
  • death: Played when the player dies

Optional sound categories:

  • pain_high: High damage sounds (played when damage is ≥ 20% of max health)
  • pain_low: Low damage sounds (played when damage is ≤ 5% of max health)
  • (NEW) fall_high: Falls from very high heights (at or above the high fall speed threshold). If missing, falls back to pain_high, then pain_default.
  • (NEW) fall_low: Softer falls that still exceed the low fall speed threshold. If missing, falls back to pain_low, then pain_default.
  • last_stand: Looping sound played when health is below 25% (like a heartbeat)
  • critical_health: Alert sound that plays once when you go below 25% health, like the HEV suit in Half Life.
  • impact_default: Default sound for any impacts against the player, the hit you receive before pain registers
  • impact_bullet: For bullet and projectile impacts.
  • (NEW) invincible_pain: Pain sounds used only when player is invincible
  • (NEW) invincible_impact: Impact sounds used only when player is invincible

If optional pain categories are missing, the plugin will fall back to using pain_default sounds.

If optional impact categories are missing, the plugin will fall back to impact_default. If impact_default is missing, no impact sound will play.

The directory names (pain_default, death, impact_bullet, etc.) must match exactly, but the sound files themselves can be named anything as long as they are WAV or OGG files.

Packaging

When packaging your sound pack:

  • Create a zip file named AuthorName-YourModName-1.0.0.zip
  • Put your OuchPack folder inside a plugins folder at the root of the zip
  • Include manifest.json, README.md, and icon.png at the root of the zip

Example of what your zip should contain:

AuthorName-YourModName-1.0.0.zip

├─ plugins/

│ └─ OuchPack/

│ └─ YourSoundPack/

│ ├─ pain_default/

│ │ ├─ sound1.wav

│ │ └─ sound2.ogg

│ └─ death/

│ ├─ sound1.wav

│ └─ sound2.ogg

├─ manifest.json

├─ README.md

└─ icon.png

When installed, it will be extracted to your plugins folder like this:

BepInEx/plugins/

AuthorName-YourModName/

OuchPack/

YourSoundPack/

pain_default

安裝與使用 安裝:BepInEx 外掛

  1. 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
  2. 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
  3. 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
  4. 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。

帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。

前置依賴

下面這些內容需要先安裝,否則該模組不會生效:

BepInEx-BepInExPack_H3VR

檔案與校驗

檔案名稱
Player_Pain_Sounds-1.0.7.zip
檔案大小
94.0 KiB