Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
ValheimBattleRoyale
Server-authoritative Battle Royale safe zones for Valheim with shrinking circles, synchronized timers, map overlays and configurable zone damage.
By Xtasy
| Date uploaded | a week ago |
| Version | 0.3.6 |
| Download link | Xtasy-ValheimBattleRoyale-0.3.6.zip |
| Downloads | 15 |
| Dependency string | Xtasy-ValheimBattleRoyale-0.3.6 |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.
Preferred version: 5.4.2350README
Valheim Battle Royale
Battle Royale safe-zone system for Valheim dedicated servers and clients.
Requirements
- Valheim
- BepInExPack for Valheim
- The mod must be installed on the server and every participating client.
- Administrative actions are validated by the server. Add administrators to the Valheim server admin list.
Features
- Server-authoritative match and zone state.
- Configurable match-start countdown.
- Current safe zone and next safe zone displayed on the large map and minimap.
- Server-synchronized waiting and shrinking timers.
- Smooth movement and shrinking of the safe zone.
- Configurable initial radius and next-zone radius multiplier.
- Optional requirement that the next circle is fully inside the current circle.
- Configurable direct HP loss outside the safe zone.
- Zone damage bypasses armor, blocking and elemental fire resistance.
- Hot-reloadable BepInEx configuration.
- Console commands for administrative control.
- Automatic English and Russian localization.
Map controls
Open the large map before using the mouse controls.
Shift + Left Click
- If no current zone exists: creates the initial zone using
InitialRadius. - If a current zone exists: assigns the next zone.
- Reassigning NEXT while the waiting timer is active keeps its radius and restarts the waiting timer.
- Once shrinking has started, assigning or moving a zone is blocked until the shrink finishes.
Ctrl + Left Click
- Cancels NEXT while it is still in the waiting phase.
- If there is no NEXT, cancels the current/start zone.
- Cancellation is blocked once shrinking has started.
Match control
F7 — start/stop match request from an administrator client.
Default match start countdown: 10 seconds.
Console commands
br help
br start
br stop
br toggle
br status
br zone <x> <z> [radius]
br next <x> <z> [radius]
br here [radius]
br nexthere [radius]
br cancelnext
Examples:
br here 3000
br nexthere
br nexthere 750
br next 1200 -500 600
When the radius for NEXT is omitted, the server calculates it from:
CurrentRadius × NextRadiusMultiplier
subject to MinimumRadius.
Configuration
Default values:
[Controls]
StartHotkey = F7
[Match]
StartCountdown = 10
[Zone]
InitialRadius = 3000
NextRadiusMultiplier = 0.5
MinimumRadius = 25
WaitBeforeShrink = 300
ShrinkDuration = 180
RequireNextZoneInsideCurrent = true
[Damage]
OutsideDamage = 10
DamageInterval = 2
[UI]
ShowHud = true
OutsideDamage is direct HP loss per tick while outside the safe zone. It is intentionally separate from normal fire damage so Fire Resistance does not reduce Battle Royale zone damage.
Installation
- Install BepInExPack for Valheim.
- Put
ValheimBattleRoyale.dllintoBepInEx/plugins/ValheimBattleRoyale/. - Install the mod on the dedicated server and participating clients.
- Start the game/server once to generate the configuration.
- Configure the generated BepInEx config as required.
- Restart or use the mod's config hot reload behavior for supported settings.
Notes
This is an early version. Test updates on a non-production world/server before using them for an event.
CHANGELOG
Changelog
1.0.0
Added
- Server-controlled Battle Royale match system.
- Configurable match start countdown.
- Automatic PvP for all players when the match starts.
- Automatic PvP disable when the match stops.
- PvP is continuously enforced while a Battle Royale match is active.
- Late joiners automatically enter PvP after receiving the active match state.
- Initial and next safe zones.
- Configurable initial radius, next-zone multiplier and minimum radius.
- Configurable delay before shrinking and shrink duration.
- Optional requirement that the next zone fits completely inside the current zone.
- Smooth synchronized interpolation of safe-zone center and radius.
- Current and next safe-zone circles on the world map and minimap.
- Administrator map controls for creating, moving and cancelling zones.
- Server-authorized outside-zone damage for remote players.
- Zone damage bypasses armor, blocking and elemental resistances.
- Normal Valheim death handling for lethal zone damage.
- Cosmetic burning effect outside the safe zone.
- TextMeshPro HUD using Valheim's native
Valheim-Norseboldfont asset. - Automatic English and Russian localization.
- HUD countdowns for match start, waiting phase and active shrinking.
- Outside-safe-zone warning.
- Runtime configuration reload.
- Server-side validation of administrator Battle Royale requests.
- Console commands for match and zone administration.
Fixed
- Fixed outside-zone damage not reducing health for remote/non-host players.
- Fixed lethal direct HP removal causing errors in Valheim's death pipeline.
- Fixed compatibility with Valheim builds where
GetServerPeerID()is private. - Fixed inconsistent Russian HUD glyphs caused by IMGUI font fallback.
- Fixed inconsistent title/timer font sizes.
- Removed deprecated TextMeshPro
enableWordWrappingusage.