Changelog
1.2.7
- Fixed ally transport (under
AllyMode = AllTamedNearby, AllTamedExceptNamed, or OnlyNamed)
sweeping up a tamed creature that was actively following a DIFFERENT nearby player, not the one
using the portal (reported via Discord: this got a player's own follower "yoinked" through a
portal someone else used, leaving that player's own teleport stuck until they relogged). Only
FollowingOnly ever checked whose custody a creature was in - now every mode does, without
changing FollowingOnly's own behavior.
1.2.6
- Documentation only, no code changes: updated the mod description to mention translation support
and the custom "Vikings don't run" message; added a README note that the SearchRadius settings
(Allies/Carts/Enemies) are NOT server-synced, only your own local config value counts; added a
troubleshooting section about duplicate YamlDotNet.dll copies from other mods potentially
conflicting with the ValheimModding-YamlDotNet dependency.
1.2.5
- YamlDotNet (needed for the translation support added in 1.2.2) is no longer bundled inside this
mod's own package - it's now a proper Thunderstore dependency on the official
ValheimModding-YamlDotNet package, which your mod manager installs automatically. Fixes a
potential conflict where a different mod's own bundled YamlDotNet.dll could end up sitting next
to ours with a different version, which .NET's assembly probing could pick either of
unpredictably. No functional change if you're just using this mod through a mod manager.
1.2.4
- PreventTeleportWhileChased now shows its own "Vikings don't run!" message when it blocks a portal
jump, instead of vanilla's generic "can't teleport this" text (which was misleading here - nothing
in your inventory is actually the problem). Localized the same way as the mod's other messages
(translatable via a TeleportEverything.<Language>.yml file).
1.2.3
- Fixed tamed Loxes never qualifying for transport under
AllyMode = FollowingOnly, even when
right next to you. Vanilla itself never lets you give a Lox a "follow" command in the first place
(unlike Wolves/Boars), so the follow-state check the mod used could never be true for one - it
wasn't reading anything wrong, the flag genuinely never gets set. Non-commandable creatures like
the Lox now qualify under FollowingOnly based on being tamed and nearby instead, without needing
to switch the whole mode to AllTamedNearby (which would've also swept up every other tamed
creature nearby, not just the Lox).
1.2.2
- Documentation only: added a "Translations" section to the README explaining how to add a
TeleportEverything.<Language>.yml file, and included a ready-to-copy
TeleportEverything.English.yml.template file in the package with all translatable keys and
their default English text.
1.2.1
- Fixed tamed allies (e.g. wolves) sometimes disappearing after teleporting with you in multiplayer
("MOB DISAPPEARED" in the log) even though they were correctly recognized as following - the
creature's ownership handoff to the new zone didn't always finish propagating before its old zone
unloaded, especially with several allies teleporting in the same frame. The mod now retries
finding the creature for a short grace period instead of giving up on the first check.
- Carts now stay outside Sunken Crypts instead of being teleported in - the dungeon interior was too
cramped for the physics used to reattach a cart, which could launch you or the cart violently.
This only applies to Sunken Crypts specifically; other portal/dungeon transport is unaffected.
- Cart transport into other dungeons no longer auto-reattaches on arrival - the cart is placed safely
nearby instead, and you reattach it by hand. Prevents the same physics launch issue in tighter
dungeon spaces.
- Added optional
BlockCartsWithRestrictedItems: prevents teleporting with a cart entirely if it
contains restricted items, instead of just taxing/leaving the cart behind.
- Split cart tax config into
TaxCartRestrictedItemsPortals and TaxCartRestrictedItemsDungeons for
separate control over portal vs. dungeon entrance cart taxation.
- Stone Portals no longer take a transport toll on restricted items, matching their vanilla
"allow everything" behavior.
- Added translation support via LocalizationManager: hover text and transport messages can now be
overridden by placing a
TeleportEverything.<Language>.yml file anywhere under your BepInEx
folder (e.g. TeleportEverything.German.yml). English is the built-in default.
- Fixed log spam from the restricted-item check firing every frame instead of only when relevant.
1.2.0
- Added
TransportCheatTierItems (default true): also bypasses vanilla's tool-tier 1000+ portal
block, which turned out to also apply to at least one legitimate Ashlands boss-drop material, not
just debug/cheat items as intended. On by default, matching this mod's whole point - set to false
to restore vanilla's original behavior for these items specifically.
1.1.9
- Whenever a teleport is blocked by a restricted or cheat-tier item, the exact item name is now
always logged automatically - no config needed. Makes it possible to tell from the log alone
which specific item is causing a blocked portal use, even if it's a completely different mod
restricting it.
1.1.8
- Fixed FollowingOnly ally transport unreliably leaving tamed creatures behind in multiplayer even
though they were visibly following you - the check read a local, per-client AI field that only
the current ZDO owner of that creature ever actually updates, so it could stay stale/null on
your own client depending on who owned it. Now reads the creature's synced "follow" ZDO field
instead, which is reliable regardless of who currently owns its AI.
1.1.7
- Fixed a packaging bug:
upload_to_thunderstore.py zipped the DLL from bin/Debug/ instead of
bin/Release/, so every version since 1.1.3 actually shipped the same stale 1.1.3 binary despite
the correct manifest/changelog - reported by a user seeing "wrong version" after updating. No
functional code changes beyond what 1.1.4-1.1.6 already described - this is those changes,
finally packaged correctly, republished as 1.1.7 since Thunderstore doesn't allow overwriting an
existing version.
1.1.6
- Ally/enemy transport: hardened the ownership handoff for transported creatures - the ZDO
ownership claim now also gets pushed to the server/other clients immediately instead of waiting
for the next normal sync tick, closing a race window that was more likely the more creatures got
teleported together in the same moment (suspected cause of an occasional report of a single
transported animal disappearing when several were teleported at once, with no such issue ever
reported for exactly one). Added always-on diagnostic logging that names the exact creature,
where it was placed, and how long ago if this ever happens again, to confirm or rule this out for
good.
1.1.5
- Fixed the README's config table breaking apart on the Thunderstore/Nexus page (a stray paragraph
was inserted in the middle of the table, which cut it off right before the Enemies section -
TakeEnemiesWithYou and the rest of the Enemies/Portal settings were still real config options,
just missing from the page). No code changes.
1.1.4
- Fixed dragged-along enemies (TakeEnemiesWithYou) having the same "placed before the dungeon
finished generating" issue that allies had in 1.1.2 - they're now precisely re-placed with a real
floor check once the teleport (and dungeon generation) is fully done, instead of just once
immediately.
1.1.3
- Fixed allies being left behind on ordinary player-built portal teleports too (not just dungeons):
the hover text's ally count was scanned from the portal's own position, but the actual transport
scanned from the player's position instead - usually close enough not to matter, but a portal can
be activated from several meters away, so an ally within range of one reference point but not the
other could be counted in the hover text and then not actually come along. Both now consistently
scan from the portal's position.
1.1.2
- Fixed allies sometimes not actually arriving when teleporting into a dungeon (Troll caves, Sunken
Crypts, etc.) via a rune stone, even though the log showed them as transported. Dungeon interiors
are generated procedurally right after the teleport, so an ally placed at the raw target position
immediately could end up in not-yet-generated space with no ground under it. Allies are now
precisely re-placed with a real floor check once the teleport fully completes and the destination
is guaranteed ready - the same two-phase approach already used for attached carts.
1.1.1
- Fixed the transport toll being charged on dungeon rune-stone teleports (Troll caves, Sunken
Crypts, etc.) as well, even though no portal was involved - it now only applies to actual
player-built portal teleports.
- Fixed the portal's ambient sound: with the default sound volume it could keep playing no matter
how far you were from the portal, and with the volume turned down it would still let a brief blip
through as you approached before going silent again. Both were caused by directly overwriting the
portal's audio volume on a timer, fighting against the game's own proximity-based fade instead of
scaling it - now the game's normal "only audible when close" fade is left untouched and just
scaled by the configured volume.
1.1.0
- Cart transport is no longer beta - fixed vanishing on longer/sloped teleports and now
auto-reattaches to the player on arrival.
TransportCarts replaced by TransportCartsMode
(Disabled/Enabled/OnlyDungeons - the last only allows cart transport via dungeon rune stones).
- The exit point is now pushed 3m further forward automatically whenever a cart is attached, so it
doesn't clip into walls near tight portal placements.
- Added ally/enemy allow-block lists by creature name (
AllyMaskMode/AllyTransportMask,
EnemiesMaskMode/EnemiesTransportMask).
- Added
PreventTeleportWhileChased ("Vikings don't run") - optionally blocks portal use while a
hostile creature is actively targeting you.
- Added portal sound volume and configurable transport messages (none/top-left/centered).
- Balance-affecting settings now sync from a dedicated server to every connecting client
automatically.
1.0.0
- Initial release: portal-restricted item transport (with optional toll), attached cart transport
(beta), configurable ally transport modes with per-species opt-out, and optional enemy transport.