Terraria

Terraria

View Stats:
13 Dec 19, 2020 @ 12:23pm
PSA: You should host via TerrariaServer.exe
Do not use host & play.

I can't count the number of times I've had to tell people this. Instead, I thought, I'd just post a brief public service announcement detailing the quick and dirty reasons why, in no particular order, that you should consider using the dedicated server binaries instead.
    [1] Adding people on Steam is no longer a requirement to play.

    [2] Steam connection issues are eliminated from the equation.

    [3] You have fine control over some key configuration elements.
There are ever only two reasons you should consider not doing this.
    [1a] You do not have access to your router (default gateway).

    [2a] You are not intending for your playthrough to have any semblance of permanence.
Allow me to drill down on these points and elaborate, briefly.

1) Having to add people and keep them on your friends list for them to play with you is an absolutely redundant way of doing things. I personally only add people after playing with them a bit, so having to constantly add and then remove people that don't really jive with me is a waste of time. It's easier to hand out your DNS / IP and just roll.

2) The amount of people who are experiencing issues with steam relay servers / connection lost issues is staggering. Hosting with the binaries eliminates the usage of these services, also reducing bandwidth throughput overhead and latency.

3) Having fine control of your configuration is a must. You can greatly increase the performance of the server by hosting this way. Two key configuration elements that come to mind are slowliquids and npcstream. By properly setting these two elements, you can reduce NPC jitter and mitigate the devastating effect that mass liquid movements can have on the general netplay experience. As a bonus, players who have a limited upload throughput will greatly benefit from these changes, moving the experience from nigh unplayable to serviceable. Also, as a bonus, you can IP ban people using the banlist.txt file.

Now, this certainly isn't for everyone. Sometimes you simply shouldn't bother with it at all. I'll detail why.

1a) If you lack the ability or permission to access your gateway, this simply isn't an option, realistically. Otherwise, you'd have to set up VPN solutions with other players and that pretty much directly violates #1 as well as opening you up to security issues. I don't recommend it.

2a) If you're not experiencing any issues, and do not intend to have a lasting playthrough, host and play should be fine. It will still be patently inferior to a properly configured and managed server, but it will be alright, I suppose.

As an addendum, if you insist upon using the archaic friends method, you can still enforce a configuration while using steam services. There is a particular batch file that can be modified to your liking that exist in the Terraria base directory, by default. The file in question is start-server-steam-friends.bat.



Hosting using TerrariaServer.exe

[A1] Access your default gateway. I recommend running an ipconfig /all in your command prompt and searching for your "default gateway" on the list. This address may be input in your browser of choice, and will often ask you to authenticate. Typically, unmanaged / unconfigured routers will use a default username. Most of them will have their password listed on the side, as well. Keep in mind, you're only accessing this to head over to the port forwarding section. I recommend asking the person paying the bills prior to doing this.

[B1] Open port 7777 TCP for your IPv4 address (again, listed under ipconfig /all, or you could head over to ipchicken if you're lazy).

[C1] Run TerrariaServer.exe and ensure that it is allowed through your firewall (typically you will be prompted when it attempts to broker an outgoing connection).

[D1] Configure the values in serverconfig.txt to your liking. You can set all sorts of neat things in there, but for the purposes of this tutorial, you should focus on performance related parameters, listed above.

[E1] If you're feeling particularly cheeky, you can modify start-server.bat to your liking. I personally have several consecutive configurations with their own batch files, since I have run many servers in the past.

[F1] To connect to the server, you will use 127.0.0.1 (or your LAN IPv4 address, whichever you prefer) and everyone else will use your WAN address (for the lazy, just use https://www.ipchicken.com/). I personally use a DNS address that resolves to my address, but that's outside the scope of this tutorial (https://www.noip.com/ offers these services for free).

And that's about it. It always seemed like a waste to not use the binaries that come bundled with the game by default. I'll keep this open for questions, as long as there are responses. Happy Earth murdering!
Last edited by 13; Dec 19, 2020 @ 12:53pm
< >
Showing 1-5 of 5 comments
Ninshu Dec 19, 2020 @ 1:57pm 
its quicker&easier to use steamhost. its not worth it imo.
tbh most people who will read this are kids who won't understand half of the terms here anyway
Alucard † Dec 19, 2020 @ 2:09pm 
I prefer the quicker host and play when doing playthroughs with my friend.

Havent encountered any connectivity issues so far.
13 Dec 19, 2020 @ 2:30pm 
Originally posted by Ninshu-EX:
its quicker&easier to use steamhost. its not worth it imo.

I appreciate your response. This was covered underneath point 2a, though. There's also an addendum that further reinforces this, as there are batch files pre-made and included with Terraria that facilitate single click world configuration with the lobby system, using the console. It facilitates the usage of the configuration file whilst retaining the lobby joining system of Steam, including joining and inviting people via steam services. In my opinion, there's little reason NOT to use it. But perhaps going to an installation folder is too out of the way for some people, I suppose.

Originally posted by Ninshu-EX:
tbh most people who will read this are kids who won't understand half of the terms here anyway

As with my previous thread, I'm quite aware of this. I appreciate the reiteration, though. I'm just hoping that the few people who do have issues / wish to host decent servers with longevity in mind consider this.

Originally posted by ⎛ Alucard ⎞ ✟:
I prefer the quicker host and play when doing playthroughs with my friend.

Havent encountered any connectivity issues so far.

That's understandable. I know a lot of people typically just use their friends list and the convenient steam relay services to broker connections. However, I personally find having to add people to join them inconvenient, especially when interacting with people for the first time. Personally, I only really want connect with people if I find them likable.

Also, for those of us who run tight networks with quality of service, traffic shaping, and quotas in mind, any bandwidth reduction that we can possibly squeeze out is very valuable. TerrariaServer.exe, when not deployed with the lobby flag, is patently more efficient bandwidth wise (provided proper configuration is observed).
Last edited by 13; Dec 19, 2020 @ 2:33pm
Orvusaria May 25, 2023 @ 6:26pm 
This helped me be able to play with my friends on terraria after literally struggling because the steam kept kicking them after 10 min of playing
13 May 25, 2023 @ 6:35pm 
Glad to hear it - enjoy your play through!
< >
Showing 1-5 of 5 comments
Per page: 1530 50

Date Posted: Dec 19, 2020 @ 12:23pm
Posts: 5