| Last updated | 3 days ago |
| Total downloads | 654 |
| Total rating | 5 |
| Categories | Mods Server-side Client-side Mistlands Update Hildir's Request Update Ashlands Update Bog Witch Update |
| Dependency string | Azumatt-PortalPreload-1.0.0 |
| Dependants | 4 other packages depend on this package |
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.2333README
Portal Preload
See your portal destination ahead of time. This mod preloads the area around your portal's destination as you approach, renders a live preview window through the portal, and optionally speeds up the teleportation itself.
Required to be installed on the server and all clients.
Disclaimer
- This mod has been very lightly tested as volunteers have been able to test with me. Please forgive me for any bugs you
might experience.
- The mod won't break your save, but could cause weird behavior in multiplayer settings. Hopefully I have dodged most of that.
- Just like below, the mod currently supports portal_wood and portal_stone from the base game. One better than the other due to mesh differences.
I have been sitting on this mod for awhile now. I have decided to "finish" and upload it. Please make backups of your server and world/characters just in case I'm wrong. I will begin making gradual improvements to this overtime as time and my own ability allows.
Features
Live Portal Preview
A circular window appears on the portal's surface showing a real-time view of the destination. The preview uses the player's eye position to create a natural parallax "window into another room" effect as you move around the portal.
- Renders only when viewing from the front of the portal within 12 meters
- When multiple portals are nearby, only the closest one renders live; others display their last cached frame
- Camera collision detection prevents the preview from clipping into terrain or structures at the destination
- 512x512 render texture with 2x antialiasing
Destination Zone Preloading
When you walk within 15 meters of a portal, the mod begins loading the zones around the destination. The loading radius scales with your distance to the portal:
| Distance to Portal | Zone Radius | Area Loaded |
|---|---|---|
| 5m or less | 3 zones (7x7) | ~448m x 448m |
| 5m - 10m | 2 zones (5x5) | ~320m x 320m |
| 10m - 15m | 1 zone (3x3) | ~192m x 192m |
Zone loading ramps up gradually to try and avoid frame stutter. Objects near the destination are instantiated in small batches (15 per frame) spread across multiple frames.
Faster Teleportation
When the destination area is already preloaded, the mod skips vanilla's initial 2-second wait and completes the teleport as soon as the terrain is ready underfoot -- typically 0.5 to 3 seconds. If terrain takes too long (>5 seconds), it falls back to vanilla behavior. This feature can be disabled independently of preloading.
Supported Portal Types
portal_wood(Wood Portal)portal_stone(Stone Portal) [the preview is a bit small for this, will work on a custom mesh or something at a later date]
Configuration
Config file: BepInEx/config/Azumatt.PortalPreload.cfg
| Option | Default | Description |
|---|---|---|
| EnablePreloading | On | Enables portal destination zone preloading. (recommended to keep on, because, that's kinda the point of the mod) |
| EnableFasterTeleport | On | Enables accelerated teleportation when the destination is preloaded. (Recommended to disable if you're having issues) |
Multiplayer / Dedicated Server
The mod works in singleplayer, and on dedicated servers. It's been very lightly tested in multiplayer, so forgive me for any bugs.
- In singleplayer, portal proximity state is set directly on local ZDOs with no network overhead.
- On dedicated servers, clients send RPC messages when entering or leaving portal range. The server tracks a per-portal player-nearby counter (supporting multiple players near the same portal) and periodically scans for portals that need their zones kept active.
- Each client loads its own destination preview independently.
Installation
- Install BepInEx.
- Place the mod DLL in
BepInEx/plugins/. - Launch the game. A config file will be generated on first run.
Support & Community
Need Help?
- Discord servers (see below)
- Include
LogOutput.logfrom BepInEx folder when reporting bugs
Author: Azumatt
Discord: Azumatt#2625 Steam: https://steamcommunity.com/id/azumatt/

