Cross Server Portals Continued
Valheim 1.0 continuation of lunar91's Cross Server Portals. Link servers and local worlds through portals.
模組介紹 作者原文
Cross Server Portals Continued
Connect Valheim servers and local worlds through ordinary portals.
Community-maintained fork: This project is a Valheim 1.0-compatible continuation of
lunar91/lunarbin's Cross Server Portals.
The original design and implementation belong to lunar91 and contributors. This fork is
distributed under the same GPL-3.0 license and is not an official lunar91 release.
Recommended companion: PortalPass
For seamless travel between password-protected servers, pair this mod with
PortalPass
(source on GitHub). PortalPass is an
optional client-only companion that supplies passwords from a private file the
player controls, so cross-server portal trips do not stop at a password prompt.
It never records or learns passwords automatically.
Compatibility
- Valheim 1.0 / dedicated server network version 39
- BepInExPack Valheim 5.4.2350 or newer compatible release
- Install on every client and server participating in cross-server travel
The plugin GUID and DLL name remain unchanged so existing configuration is retained when
upgrading from the original mod. Remove the original DLL before installing this package;
do not run both versions together.
Installation
Copy ValheimCrossServerPortals.dll into BepInEx/plugins/CrossServerPortals/ on each
client and server.
Portal tags
Use one of these formats:
SourceTag|server.example.com:2456|TargetTag
SourceTag|192.0.2.10:2456
SourceTag|[2001:db8::10]:2456|TargetTag
SourceTag|world:My Local World|TargetTag
- SourceTag identifies the departure portal.
- TargetTag is optional. On arrival, the mod looks for either that ordinary tag or a
cross-server portal whose source tag matches it.
- A server address without a port uses Valheim's default port, 2456.
- IPv6 addresses with a port must use brackets.
- world: destinations switch to a local world by name.
Cross-server portals ignore Valheim's ordinary item teleport restrictions, matching the
behavior of the original mod.
Configuration
- PreserveStatusEffects — preserve effects such as rested and wet across a mod-driven transfer.
- RecolorPortalGlyphs / CustomPortalGlyphColor — identify cross-server portals visually.
- RecolorPortalEffects / CustomPortalEffectColor — customize their particle effects.
- PromptBeforeTeleport — request confirmation before leaving the current server.
- RequireAdminToRename — server-synchronized restriction for cross-server portal tags.
- LockAdminConfig — lock synchronized administrator configuration.
What changed in this continuation
- Restored Valheim 1.0 compatibility using the new flattened portal-list API.
- Replaced asynchronous thread-pool delays with Unity coroutines.
- Preserved the calculated safe exit position after the destination finishes loading.
- Limited periodic portal enumeration to servers and compare portals by stable ZDO ID.
- Reworked portal-tag validation for safer DNS, port, world-name, and IPv6 handling.
- Updated deprecated particle-system calls and improved null safety.
- Added repeatable Linux builds, parser tests, CI, and -ready packaging.
See CHANGELOG.md for release history and docs/PUBLISHING.md
for maintainer release instructions.
Building
Set VALHEIM_GAME_PATH to a Valheim installation containing BepInEx, then:
dotnet test tests/CrossServerPortals.Tests.csproj
dotnet build CrossServerPortals.csproj -c Release
dotnet msbuild CrossServerPortals.csproj -t:Package -p:Configuration=Release
The -ready archive is written to artifacts.
Credits and license
- lunar91 — original author and architecture
- Wacky-Mole — original admin permission work
- ServerSync — server-authoritative configuration
Licensed under GPL-3.0. Git history from the upstream repository is preserved.
安裝與使用 安裝:BepInEx 外掛
- 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
- 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
- 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
- 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。
帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。 多人連線時,主機與所有用戶端需要安裝一致的模組。
下面這些內容需要先安裝,否則該模組不會生效: