Other Server Portal Structures

Pitri

Official Terrarian
Hey, Terrarians. Hey dev team (heh, I hope you aren't too busy to read this).

Over the years I compiled a small list of features I wish many games had as their supported vanilla content. One of those features applies to games which allow the 24/7 world server model, like Terraria does: Server portals, a structure which can be used to jump from server to server or locally from world to world.

Because Terraria's core system decouples players from worlds, the idea of having multiple worlds and jumping inbetween them is nothing unusual. But I would love it, if we had some kind of structure that would automate the switching process. This idea would de-centralize the Terraria experience a bit more, and I would definitely consider it a system element, so I would totally be okay if it wouldn't be craftable.

Core Idea:
- A new structure, either some kind of (magic?) portal or a teleporter, or something else that fits the Terraria style.
- Structure can be opened for configuration. Allows to enter IP address, port and potentially a way to authenticate yourself (which will be needed if the server has joining restrictions, like a password).
- For authentication, either the locally entered target server password should be encrypted/hashed (so other players can't retrieve it) or the target server should have this server in some kind of whitelist.
- Upon activation, the client will exit the server/world and begin joining the new server/world (the portal provided authentication happens in the background). There is no need to appear at a certain position, the world spawn is totally fine.
- It should support at least support [server -> server] and [local world -> local world] transportation.

Nice to have:
- The structure should have different skins, one for each furniture style. That way it could be integrated nicely into a build, no matter the building style. It should fit futuristic just as well as medieval.
- It should only trigger on direct player input (by explicitely clicking on it, for instance), since changing the server/world is a massive intervention of gameplay.
- Alternatively, the possibility to trigger it with wires should be opt-in by the server config and/or the player settings.
- A visual way to tell apart if it would lead to a server or a local world. Maybe also displaying the server address or world name if you get close?
- A visual way to tell if the target world exists or the server is online (maybe with a ping to the server, either periodically or when the portal chunk gets loaded).
- Support for [world -> server] and [server -> world] transportation. That way you could build a local hub world for your favorite servers and they could provide a personal and private portal back to your local world (if the name matches. like "Main Base" or "World Hub", idk).
- A point where the item could become regularly available (and still somewhat make sense) could be after defeating martian madness, since they clearly figured out long-distance travel. Or just keep it so you have to cheat it in via inventory or world editors.
- Checking if you can join the server (enough free slots, authentication matches) BEFORE it disconnects you from the current server.

In conclusion: With those portals, community server clusters could offer a nicely supported interface for hopping between worlds (instead of something like "type /mining to join the mining world"), and players like could connect their multiple relevant worlds to their main bases.
I don't know if the feature would be worth the effort of diving (potentially very deep) into the net code, but it would be amazing to be included in the game. Just to have the possibility for ingame server change without forcing it upon players.

index.php

This is an example of a connected structure, which includes all 4 transporation cases. It almost looks like some kind of state machine. :D
 

Attachments

  • terraria_world_portal.png
    terraria_world_portal.png
    99 KB · Views: 336
Last edited:
Back
Top Bottom