The BepInEx console will not appear when launching like it does for other games on Thunderstore (you can turn it back on in your BepInEx.cfg file). If your PEAK crashes on startup, add -dx12 to your launch parameters.

Vasodilation
Like the heat pack, whenever you sprint, you resist cold affliction. Keep moving to keep warm!
By tony4twenty
Last updated | a week ago |
Total downloads | 9416 |
Total rating | 1 |
Categories | Mods Quality Of Life All Clients |
Dependency string | tony4twenty-Vasodilation-1.2.1 |
Dependants | 5 other packages depend on this package |
This mod requires the following mods to function

BepInEx-BepInExPack_PEAK
BepInEx pack for PEAK. Preconfigured and ready to use.
Preferred version: 5.4.75301README
🥶 Vasodilation
Sprint to stay warm.
This mod gives your character a survivalist edge for the Alpines — whenever you sprint, you resist cold affliction. Keep moving to keep warm! - Cold reduction is minor — it won’t make you invincible, just buy you time. Only activates when the player has cold affliction.
Not just the Alpines but even at night when its start to get cold in Ascent 5!
Find the mod in the Peak Modding Discord under #mod-releases to discuss mod related topics like issues/reports/appreciation
💡 What It Does
- 🏃 Sprinting reduces Cold over time — applied once per second.
- 🌡️ Automatically adds a cold resistance effect exactly like heat packs.
🛡️ Host-Controlled Multiplayer
- ✅ Host has mod → Clients with the mod get the effect using the host’s config.
- ❌ Host doesn’t have mod → Nobody gets the effect (even if clients have it).
- 🔁 Host migration → New host republishes config automatically and the loop restarts.
- 🔒 Fair by design → No client-side advantage in lobbies where the host doesn’t approve.
⚙️ Configuration (BepInEx)
A config file is created on first run:
BepInEx/config/tony4twentys.Vasodilation.cfg
General
ColdPerSecond = -0.06
— Per-second Cold adjustment while sprinting (negative reduces Cold).TickSeconds = 1.0
— How often the effect is applied.ColdGateOn = 0.025
— Minimum Cold required to start applying the effect.ColdGateOff = 0.0
— Minimum Cold required to continue applying once started.
In multiplayer, clients always use the host’s values above. Client local values are ignored.
Debug
-
VerboseLogs = false
— Whentrue
, logs:- host/client role on join,
- config publish/receive,
- tick send/receive and whether a tick was applied or skipped (with reasons).
📦 Installation
- Download the mod manually and extract the files
- Drop the
.dll
into your/PEAK/BepInEx/plugins/
folder - Launch the game and the config will be generated automatically
🔥 Or use the Thunderstore Mod Manager for 1-click install 🔥
- Supports BepInEx
- Safe for singleplayer and host-approved multiplayer
🔥 How It Works (Behind the Scenes)
-
Host config broadcast
The host publishes a compact string (ColdPerSecond|TickSeconds|GateOn|GateOff
) to the room propertyVASO_CFG_V1
. Clients read this on join and whenever it changes, so everyone uses the host’s values. -
Per-player ticks via Photon events
The host sends a tiny RaiseEvent (code 113) everyTickSeconds
, targeted to each actor. This avoids PhotonView hacks and scene-load stalls. -
Local gating on the client
On receive, the client checksisSprinting
and current Cold >gateOff
. Only then is the effect applied — no effect when you’re not sprinting or when Cold is already low. -
Effect application
AppliesPeak.Afflictions.Affliction_AdjustColdOverTime
withstatusPerSecond = ColdPerSecond
forTickSeconds
, repeating while you keep sprinting and the gate allows it. -
Optional detailed logging
SetDebug.VerboseLogs = true
to log host/client role, config publish/receive, tick send/receive, and apply/skip reasons.
If the host doesn’t have the mod, no one gets the effect, even if a client does.
🔍 Troubleshooting
-
Client not getting the effect?
- Make sure the host has the mod.
- Set
VerboseLogs = true
on both host & client, sprint in a cold area for ~10s, then checkBepInEx/LogOutput.log
.- Host should show:
"[Vaso] Sent tick -> actor X"
. - Client should show:
"Tick applied"
or"Tick ignored"
plus sprinting/cold details.
- Host should show:
-
Values not matching?
- Clients always adopt the host’s config via room property sync. Change the host’s config and re-enter the room.
👑 Credits
Author - mod created by tony4twenty
Check out my other PEAK mods
Stay fast. Stay warm. Stay alive.