It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
high rated
Hi, all! I'm new to the Terraria scene, and now that I can get a Steam-less copy I jumped all over that sucker.

In an effort to help any troubled users about the process of how to get this up and running, here's a short guide on installing the game on Ubuntu 14.04+Arch and the server on Ubuntu 14.04 server. I look forward to actually native ports in the future, but hopefully this can help some people in the meantime.

=======Ubuntu 14.04=======

1) If you don't have one already, you need a 32-bit wine environment. By default, Ubuntu will set up a 64-bit one. To do so, remove any .wine folder that you have in your home directory (one can balance two wine folders but I'm keeping it simple). Then create the new 32-bit environment with this command in the terminal:

WINEARCH=win32 winecfg

This will create your new profile. Close out the winecfg dialogue when it pops up. Keep your terminal open for later steps.

2) Download and install Terraria. It will install the XNA framework for you. This will all run mostly smoothly, but there will be errors near the end. This is alright, just click through them and finish the install. Don't play just yet.

3) Download MS's .NET 4 from here: http://www.microsoft.com/download/en/details.aspx?id=17718 and put it in your home directory. Go back to your terminal and copy/paste this in:

wine reg delete "HKLM\\Software\\Microsoft\\NET Framework Setup\\NDP\\v4" /f

It should say 'success' or something similar. Then install .NET 4 with this command:

wine dotNetFx40_Full_x86_x64.exe

After that's complete, run this command:

wine reg add "HKLM\\Software\\Microsoft\\NET Framework Setup\\NDP\\v4\\Full" /v Install /t REG_DWORD /d 0001 /f

Now you're ready to play. When you launch Terraria there will likely be an error message... just click 'OK' and get to playing.

=======Arch Linux (2014-10-05)=======

You can follow all the above Ubuntu steps, but be sure you have 32-bit libraries installed. If you're on an Nvidia graphics card, see lib32-nvidia-libgl (or lib32-nvidia304.xx-libgl or whichever version you need), if you're on Intel or open-source AMD, see lib32-mesa-libgl.

Also be sure you have 32 bit audio libs installed: install lib32-alsa-lib and lib32-alsa-plugins.

=======Ubuntu 14.04 Standalone Server=======

For a comprehensive setup involving init.d scripts and proper user management, see here:

http://www.nooblet.org/blog/2013/installing-tshock-terraria-server-on-debian-wheezy/

This is written for Debian Wheezy but works splendidly on Ubuntu 14.04.

I opted to run it as a normal user as I'm not concerned about security and system adaptability, this is merely a small game to run internally. So here's a quick and dirty way of getting it up and running:

# Install dependancies
sudo apt-get update && apt-get install unzip \
mono-runtime libmono-system-core4.0-cil libmono-sqlite4.0-cil libmysql-cil-dev \
libmono-system-runtime-serialization4.0-cil libmono-web4.0-cil libmono-system-xml-linq4.0-cil

# Create Terraria dir in ~
mkdir ~/Terraria

# Download TShock (open source alternative - GPLv3) or use Terraria's official server:
# Latest TShock is located: https://github.com/NyxStudios/TShock/releases/latest
# Terraria's server is included in the install directory in .wine, e.g.
# /home/$USER/.wine/drive_c/GOG Games/Terraria/TerrariaServer.exe
# Whichever you use, put the TerrariaServer.exe into ~/Terraria

Start the server with:

mono TerrariaServer.exe

and you should be golden. Be sure to edit the config files that spawn after first launch.

-----------------------------------------------
Sources:

https://appdb.winehq.org/objectManager.php?sClass=version&iId=29123&iTestingId=84711
http://www.nooblet.org/blog/2013/installing-tshock-terraria-server-on-debian-wheezy/
Post edited October 06, 2014 by Chauncellor
So I can't just whack it with Wine and hope for the best?

Also, what if a madman like I is on Fedora?
People are making this too complicated, both you and the Mac guy and everyone else. You should first give a rough but precise overview, like this:
- Wine version 1.7.24 (that's the one I used, others will probably work as well)
- Winetricks msxml3 dotnet40
- Additional tweaks if they apply

That's enough information for anyone who has at least some experience with Wine, all the clutter around it is just drowning the message. Following that you can then go ahead and write a more detailed explanation or link to articles explaining how to use Wine. Have some trust in your readers.
avatar
HiPhish: People are making this too complicated, both you and the Mac guy and everyone else. You should first give a rough but precise overview, like this:
- Wine version 1.7.24 (that's the one I used, others will probably work as well)
- Winetricks msxml3 dotnet40
- Additional tweaks if they apply

That's enough information for anyone who has at least some experience with Wine, all the clutter around it is just drowning the message. Following that you can then go ahead and write a more detailed explanation or link to articles explaining how to use Wine. Have some trust in your readers.
Well, I'm sorry that I'm trying to help, but I've found that Terraria has consistently been a pain in the ass to get working every time I try, on Debian, Arch, and Ubuntu. Using winetricks was not working properly for me for installing dotnet40, hence the reg tweaks. Consider that other people might be having the same issue and that we're all not spending 24/7 trying to get this rather lackluster runtime environment to work properly. Combine that with a truly lack of concise information on the matter and that's what inspired me to write a quick doc for others to get, because it took me longer than usual to get running.

But hey, you can just tell me how useless my attempts are. That's cool, too.
Post edited October 06, 2014 by Chauncellor
I'm not saying they are useless, I'm saying it can be approved on. A sort of tiered solution, giving the overview first, and if that doesn't work or isn't enough you can list additional steps down the line.
I got the game working in PlayOnLinux on OpenSUSE 13.1. The Terraria install script that ships with PlayOnLinux can't be used since it expects the Steam version. Instead I selected the option to install an unlisted game. Choose a 32 bit Wineprefix with a recent Wine version. When the checkboxes appeared about which POL scripts you want to start, I chose POL_Install_xinput and POL_Install_xna40. These installation scripts take care of installing the required frameworks as described how to do manually above.

With that setup I was able to run the game but I couldn't connect to a multiplayer server. I solved the problem with an SSH hack I found on WineHQ. Start the SSH Daemon on your system (in Opensuse it can be done via the System Services / Runlevel option in Yast, start sshd). There's no reason to open the SSH firewall port since you're going to connect to it locally.

I created a bash file terraria.sh:
ssh -L 7777:$1:7777 localhost -N

And I can then connect to the server with
sh terraria.sh IP-ADDRESS
giving it the IP address of the server. I had to enter my user's password afterwards.
Inside Terraria then connect to 127.0.0.1
Post edited October 09, 2014 by Kobold
It was always very easy for me to get the steam version running in wine but I had problems with the gog one (and of course I prefer it), so your guide is very welcome. I'll try it soon, thanks!
avatar
Kobold: I got the game working in PlayOnLinux on OpenSUSE 13.1. The Terraria install script that ships with PlayOnLinux can't be used since it expects the Steam version. Instead I selected the option to install an unlisted game. Choose a 32 bit Wineprefix with a recent Wine version. When the checkboxes appeared about which POL scripts you want to start, I chose POL_Install_xinput and POL_Install_xna40. These installation scripts take care of installing the required frameworks as described how to do manually above.

With that setup I was able to run the game but I couldn't connect to a multiplayer server. I solved the problem with an SSH hack I found on WineHQ. Start the SSH Daemon on your system (in Opensuse it can be done via the System Services / Runlevel option in Yast, start sshd). There's no reason to open the SSH firewall port since you're going to connect to it locally.

I created a bash file terraria.sh:
ssh -L 7777:$1:7777 localhost -N

And I can then connect to the server with
sh terraria.sh IP-ADDRESS
giving it the IP address of the server. I had to enter my user's password afterwards.
Inside Terraria then connect to 127.0.0.1
Work perfect for me! thanks !