Valheim
0 of 0

File information

Last updated

Original upload

Created by

Nekres

Uploaded by

Nekres

Virus scan

Safe to use

Tags for this mod

About this mod

Ability to customize various aspects of using portals such as disabling the black transition screen or manipulating load times.
Improves teleportation logic further by making short distance portals always instantaneous and calculating a destination angle as reflection of the angle at which the entrance portal was crossed.

Requirements
Permissions and credits
Changelogs
Donations
A BepInEx/HarmonyX mod for Valheim.

Immersive Portals reduces the artificial waiting time from using portals. It does so by implementing a custom teleportation method.

It calculates a destination position based off of the player's position and rotation when entering the portal giving a mostly smooth transition.



Configuration

Default teleport speed settings try to be as save as possible for the average user to avoid collision logic not being loaded on arrival.
If you believe your PC has enough power to savely go even faster you have to adjust the configs yourself!


The config file will be auto-generated on game start. To change it I highly recommend installing BepInEx.ConfigurationManager. It allows you to change the config while In-Game. This is especially good for fitting the config 'ConsiderAreaLoadedAfterSeconds' to your loading times!

-----------------------------------------------------------------------------------------------------------

[General]

## Enables the black transition screen when teleporting to distant portals outside the loaded area.
# Setting type: Boolean
# Default value: true
EnablePortalBlackScreen = true

## Nexus mod ID. Required for 'Nexus Update Check' (mod).
# Setting type: Int32
# Default value: 268
NexusID = 268

[TimeManipulation]

## Indicates a threshold in seconds after which an area should be considered sufficiently loaded (ie. lazy approach) to allow the teleportation to end prematurely.
# Setting type: Double
# Default value: 3.75
ConsiderAreaLoadedAfterSeconds = 3.75

## Decreases the artificial minimum teleportation duration hardcoded by the developers (Iron Gate). 100% indicates removal of the minimum wait time and means that the only condition for arrival is the area load state. Value will be clamped in the range 0-100.
# Setting type: Int32
# Default value: 50
DecreaseMinLoadTimeByPercent = 50

## Multiplier of the speed in which the teleport time increases until the artificial minimum duration is reached. Value will be clamped in the range 1-10.
# Setting type: Int32
# Default value: 3
MultiplyDeltaTimeBy = 3

-----------------------------------------------------------------------------------------------------------



Installation

Recommended: Install via Vortex (aka. Nexus Mod Manager).
Manual:
1. Extract the mod archive (.zip).
2. Find the subfolder called "ImmersivePortals" and move the entire folder to your BepInEx plugin folder. (..\Valheim\BepInEx\plugins)




Notes

PCs using older hardware may encounter popping in of objects.
You can reduce this by adjusting the configurations and enabling the black screen fade. Black screen won't affect overall teleportation speed.
The teleportation speeds up after the black screen is fully opaque.

When I say "speeding up" what I really mean is decreasing the artificial minimum load time of the teleportation duration set by the developers (Iron Gate). The developers have hardcoded in arbitrary high numbers that keep you in the teleport black screen to make sure you do not see objects popping in. However, those numbers end up creating uneccessary down time for most users with modern computers. This mod reduces this minimum teleportation time by a customizable percentage (default 50%).




Todo

⬜ - render destination view. 50%
✅ - Make it so player is frozen until flooring has been detected (fix for low-end hardware taking too long to load floor to stand on.)  
✅ - add config to fallback to loadscreen when exit portal is outside active area (fix low-end hardware, avoid pop-in of objects.)



References

- Source code