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.
Quads Portal Hub
Portals you can actually use: press E on a portal and pick where it goes from a list.
| Date uploaded | 2 days ago |
| Version | 1.2.1 |
| Download link | Quads_Lab-Quads_Portal_Hub-1.2.1.zip |
| Downloads | 93 |
| Dependency string | Quads_Lab-Quads_Portal_Hub-1.2.1 |
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.2351README
๐ PortalHub
Version 1.2.1 ยท all the mods ยท install it from Thunderstore (r2modman, Thunderstore Mod Manager) or the in-game mod manager (F7)
Press E on a portal and pick where it goes from a list of every portal in the world: nearest first, searchable, with favourites. Every portal shows on the map with lines between linked ones. One click links it both ways, and no more matching names on two portals. (Install it on the host too.)
๐ธ Screenshots
Pick where a portal goes from the list: names, lands, distances
Good to know
- E on any portal opens the PortalHub menu instead of the game's name box (press Shift+E for the game's own name box).
- Protected areas: a portal inside someone else's switched-on ward can't be relinked or renamed by you, and "link it back" leaves such a
portal as it is (you get a one-way link). The host checks this, whatever a player's game says. With
HideWardedPortalson (the host's choice), those portals also stay out of your list and map.
Known clashes
- XPortal (
yay.spikehimself.xportal) links portals its own way and skips the game's portal pairing that PortalHub's links rely on (they would stop working after a restart), and both want E. With XPortal installed, PortalHub stands down (it says so in the log): use one or the other.
๐ How it works
Portals you can actually use: press E on a portal and pick where it goes from a list.
What is in it
- The list shows every portal in the world, nearest first, with its biome and distance. Search it, sort it by name, or star the ones you use most to keep them at the top.
- One click links this portal to the one you pick, and (by default) links that one back, so there is no more matching names on both ends.
- Every portal shows on the map with its name, and the big map draws a line from each portal to where it goes (an arrow when it only goes one way). A Map button next to each portal in the menu opens the map at that spot.
- Look at a portal and it tells you where it goes.
- Rename a portal right in the menu. Portals you never choose a destination for work the old way, by matching names, so nothing you built breaks.
- Teleport rules are unchanged: you still cannot carry ores or other blocked items through a portal.
- Needs to be installed on the host's game (and on yours to use the menu). Players without it can still walk through linked portals.
โจ๏ธ Keys
| Key | What it does |
|---|---|
| E at a portal | Open the portal menu and choose where it goes |
โ๏ธ Settings
In BepInEx/config/com.quad.portalhub.cfg (made the first time the game runs with the mod).
General
| Setting | Default | What it does |
|---|---|---|
Enabled |
true |
Use the portal menu when you press E on a portal. (Off: portals work like in the base game.) In multiplayer the server's value applies. |
HideWardedPortals |
false |
Leave portals inside someone else's protected area (a switched-on ward you are not on) out of each player's list and map, and refuse links to them. (Portals in such an area can never be changed by others either way.) In multiplayer the server's value applies. |
ShowDestinationOnHover |
true |
When you look at a portal, show where it goes. |
Map
| Setting | Default | What it does |
|---|---|---|
ShowPortals |
true |
Show every portal on the map with its name. |
ShowLinks |
true |
On the big map, draw a line from each portal to where it goes (an arrow if it only goes one way). |
Menu
| Setting | Default | What it does |
|---|---|---|
LinkBothWays |
true |
Picking a destination also links that portal back to this one. |
Favorites |
`` | Portals you starred (managed by the menu; you do not need to edit this). |
๐ฅ Playing together
See who needs which mod on the front page.
๐ค Made with AI
Made with the help of Claude (Anthropic), with Claude Code: designed, written and checked together, and tried in the game.
๐ Changes
- 1.2.1 A new id, com.quad.portalhub (it was com.dhack.portalhub): your settings move over by themselves the first time it starts, and the old settings file is kept as a backup. Restart the game after this update. If an old copy is still installed beside it, this one stands down and says which file to delete, so the two never both run. The DLL now says it was made with AI, as Thunderstore asks.
- 1.2.0 Fix: anyone could relink a portal inside someone else's protected area, and "link it back" changed the other portal even in someone's base. The host now checks the wards itself and refuses to change a portal in a switched-on ward you are not on; linking to such a portal only goes one way. A new host setting, HideWardedPortals (off by default), keeps those portals out of other players' lists and maps. In multiplayer the server decides Enabled and HideWardedPortals. With XPortal installed PortalHub now stands down (the two undo each other's links). The menu uses the game's font.
- Fix: away from portals, PortalHub looked for portals nearby every frame; it now looks once a second.
- Fix: after restarting the game, linked portals sent you to a random place (the game renumbers everything when a world loads, and links were saved by number). Each portal now keeps its own id, so links and starred portals survive restarts. Links made with the old version are cleared once: link your portals again in the menu. Also: the last world's portals no longer show on a new world's map, and a newly built portal no longer lists itself as a destination.
- Portals now show on the map with their names, and the big map draws a line (with an arrow if one-way) between linked portals. Rename a portal inside the menu. The list warns when linking back would replace another portal's link.
CHANGELOG
1.4.3
- Settings: edits to the config file now apply while the game runs (a server owner no longer has to restart), and a server's admins can change the server's settings from their own game with Configuration Manager, where other players see them greyed out. Your config file always keeps your own values while you play on a server (saving it there could write the server's in). Players on an older version still get the server's settings.
1.4.2
- Its windows no longer fill the log with "The LiberationSans SDF Font Asset was not found": each text is given the game's font before it starts (it looked for TextMeshPro's default font, which the game doesn't have, every time a text was made). Nothing changes on screen.
1.4.1
- Fix: a portal could be linked one way into someone else's protected area, so anyone could walk into their base through it. The host now refuses a link to a portal in a switched-on ward you are not on, whatever HideWardedPortals says (that setting now only hides those portals from the list and map). Links that already lead into a protected area their maker may not enter (a ward built or switched on since) are dropped, and the portal goes back to pairing by name. Links made with an older version didn't record who made them, so they are left as they are. Fix: a portal renamed at the moment the host saved its link or id could lose the new name: the host now asks the game that holds the portal to save them (as the game does with its own portal links), and saves them itself only when nobody else holds it, or after a few seconds for a player with an older PortalHub. The host's portal pass every 5 seconds no longer searches the whole portal list once for each linked portal.
1.4.0
- Now in your language: English, Russian, German, Chinese (Simplified), Portuguese (Brazil), Spanish, French, Polish and Turkish, following the game's own Language setting. The game's own names are used for its things (items, creatures, lands, stations). The translations were made with AI: to correct a line, or add a language, put a file in BepInEx/config/translations/com.quad.portalhub/ named after the game's name for the language (German.json...) with only the lines you change, copied from translations/English.json on GitHub. The host's two refusals (a portal in someone's ward, a one-way link) reach each player in their own language. Players on a server should update together: a player on an older version sees those two as a key name. The narrow buttons on each portal's row shrink their words to fit.
1.3.0
- The portal menu now looks like part of the game: the crafting screen's wood panel, the game's buttons, fonts and scrollbar, and the game's own text boxes for the name and search (E and Tab type in them). Long portal lists scroll smoothly. E or Tab closes the menu as they close a chest, and the E that closes it no longer opens it again. The link lines on the big map are part of the map now: they stay under the portal icons and move and hide with it.
1.2.2
- A clearer page: what it does, who needs it in multiplayer, how it gets on with other mods, and where to report a bug. The game itself is unchanged.
1.2.1
- A new id, com.quad.portalhub (it was com.dhack.portalhub): your settings move over by themselves the first time it starts, and the old settings file is kept as a backup. Restart the game after this update. If an old copy is still installed beside it, this one stands down and says which file to delete, so the two never both run. The DLL now says it was made with AI, as Thunderstore asks.
1.2.0
- Fix: anyone could relink a portal inside someone else's protected area, and "link it back" changed the other portal even in someone's base. The host now checks the wards itself and refuses to change a portal in a switched-on ward you are not on; linking to such a portal only goes one way. A new host setting, HideWardedPortals (off by default), keeps those portals out of other players' lists and maps. In multiplayer the server decides Enabled and HideWardedPortals. With XPortal installed PortalHub now stands down (the two undo each other's links). The menu uses the game's font.
Earlier
-
Fix: away from portals, PortalHub looked for portals nearby every frame; it now looks once a second.
-
Fix: after restarting the game, linked portals sent you to a random place (the game renumbers everything when a world loads, and links were saved by number). Each portal now keeps its own id, so links and starred portals survive restarts. Links made with the old version are cleared once: link your portals again in the menu. Also: the last world's portals no longer show on a new world's map, and a newly built portal no longer lists itself as a destination.
-
Portals now show on the map with their names, and the big map draws a line (with an arrow if one-way) between linked portals. Rename a portal inside the menu. The list warns when linking back would replace another portal's link.