WineHQ
Category: Main Games Action Games Terraria Latest

Terraria

The latest version of Terraria on Steam.


Application Details:

Version: Latest
License: Retail
URL: http://www.terraria.org/
Votes: 4
Latest Rating: Gold
Latest Wine Version Tested: 4.18

Maintainers: About Maintainership

Link Steam Store Page

Test Results

Selected Test Results

What works

Everything, but some dependencies must be installed first.

What does not

.NET framework and XNA Framework do not install themselves on startup.

Workarounds

If the game does not open, you are most likely missing the .NET framework and XNA framework.
You can manually install them or use winetricks to do it in a more simple manner:

Install package "winetricks" and run (no root):
winetricks dotnet40
winetricks xna40
Launch the executable as normal.

What was not tested

Multiplayer, Terraria Server

Hardware tested

Graphics:

  • GPU: Nvidia
  • Driver: proprietary

Additional Comments

selected in Test Results table below
Operating systemTest dateWine versionInstalls?Runs?Used
Workaround?
RatingSubmitter
CurrentManjaro LinuxNov 05 20194.18Yes Yes YesGoldCodian 
ShowUbuntu 18.04 "Bionic" amd64 (+variants like Kubuntu)Jun 03 20194.9Yes No NoGarbageAaron Franke 
ShowUbuntu 17.04 "Zesty" amd64 (+ variants like Kubuntu)May 10 20172.8Yes Yes SilverAlexis B. 
ShowArch Linux x86_64Jul 12 20151.7.47Yes Yes NoSilverBrottweiler 
ShowArch Linux x86_64Jun 16 20151.7.44Yes Yes SilverBrottweiler 

Known Bugs

Bug # Description Status Resolution Other apps affected
34375 Terraria: Toggling fullscreen retains "Always On Top" flag UNCONFIRMED View
38890 Terraria - terraria.exe crashes on startup NEW View

Show all bugs

HowTo / Notes

Installation Guide (not using winetricks)

Step 1: Install Steam from the Website.

 msiexec /i SteamInstall.msi

For issues related to Steam visit it's wine page: http://appdb.winehq.org/objectManager.php?sClass=application&iId=1163

Step 2: Download and install Terraria. This will install XNA Redist as well.

Step 3: Exit Steam.

Step 4: Install .NET 4 from the Full Installer from: http://www.microsoft.com/download/en/details.aspx?id=17718

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

Step 5: Start steam and run Terraria

Installation Guide (using winetricks)
Note 1: As WineHQ AppDB standards for test results do not allow platinum rating for applications that require using winetricks to install native dlls; if you submit a test result, please rate it gold and write in the description that winetricks was used.

Note 2: It is always recommended to run the latest and greatest version of wine, that said these steps should work with the most recent stable release of wine, 1.6.


Step 1: Install Microsoft .NET Framework 4.0 and Microsoft XNA Framework Redistributable 4.0

winetricks dotnet40
winetricks xna40


Step 2: Install Steam

winetricks --no-isolate steam


Step 3: Run Terraria

As part of the above installation of Steam it should install the latest updates for Steam and then ask you to log in. If it does not you will need to launch Steam and log in.  Once you log in, install Terraria and run it as you normally would. It should not prompt you to install XNA as it was installed in step 1 above.
Known issues and fixes

Connecting to multiplayer servers:

Open a terminal and run the following command(replace $SERVER with the address of the multiplayer server): 
ssh -L 7777:$SERVER:7777 localhost -N
It'll open a local port forward. Let it keep running. Then, on Terraria, connect to 127.0.0.1:7777. It will fool Terraria into connecting locally and work around the "Requesting tile data..." problem.

Stuttering sound issue:

If you ran into the stuttering sound issue, all you need to do is install some missing audio codecs using winetricks. Run the following command:

winetricks dirac directmusic dmsynth dsound ffdshow icodecs l3codecx

Unhandled exception; Could not find a Direct3D device that supports the XNA Framework Reach profile:

If you run into this issue attempt running in a virtual desktop.  Run winecfg and in the graphics tab check Emulate a virtual desktop and then enter the size you desire.

Comments

The following comments are owned by whoever posted them. WineHQ is not responsible for what they say.

Music
by Allen on Thursday October 24th 2019, 11:15
Install "faudio" from winetricks can make the music work.
Install instructions
by Alistair Leslie-Hughes on Tuesday July 2nd 2019, 21:32
Create a new win32 Prefix
install xna40 via winetricks
Update
by Andy Mender on Wednesday July 29th 2015, 15:44
Setup: Arch Linux with wine 1.7.47-1, winetricks 20150706-1, q4wine 1.1_r2-1 and kernel 4.1.2-2-ARCH.

2. wine-mono from official repositories not needed.

3. xna40 from winetricks not needed (Steam will install it correctly)

4. dotnet40 from winetricks needed (required by native xna40).

3. Sound does not work out-of-the-box.
RE: Update
by Brottweiler on Wednesday July 29th 2015, 15:45
Sound worked for me out of the box, what are you using? Pulse? JACK?
RE: Update
by Andy Mender on Wednesday July 29th 2015, 16:07
I use standard alsa and jack for headphones.

I just realized I have 32-bit and 64-bit libraries for pulseaudio installed, but without pulseaudio itself.
RE: Update
by Brottweiler on Wednesday July 29th 2015, 16:23
Yeah, I used to have just JACK and ALSA. Steam doesn't like it, most games dont like it. WINE hates it. I installed Pulse, I can use it with JACK, so I'm fine. You're gonna need pulse.
RE: Update
by Andy Mender on Wednesday July 29th 2015, 16:34
Native dotnet40 (installed through winetricks) collided with all other Steam games I had installed (most notably with The Witcher: Enhanced Edition).

I will test Terraria once I have time to set up a clean WINE prefix and will then double-post with results.

Thanks for help!
Joining a Server
by Chiitoo on Sunday July 19th 2015, 15:36
While hosting a server not working isn't new with this version, is it actually possible to /join/ a server?

I've not looked into it much yet, but the game crashes for me right when it gets done with loading all the resources (another player on the server actually saw my character standing around for several seconds, though I never get to even see the world).

The only error in terminal is:

err:eventlog:ReportEventW L"Application: Terraria.exe\nFramework Version: v4.0.30319\nDescription: The process was terminated due to an internal error in the .NET Runtime at IP 791CB8C4 (79140000) with exit code 80131506.\n"

and the backtrace is of not much use:

0x7bc7f97d DbgBreakPoint+0x1 in ntdll: ret
RE: Joining a Server
by Brottweiler on Sunday July 19th 2015, 16:17
You can join a server via IP, yes. I can join my own localhosted server running TDSM.
RE: Joining a Server
by Chiitoo on Sunday July 19th 2015, 16:20
Many thanks for the confirmation!

I'll keep on keeping on with it.
RE: Joining a Server
by Chiitoo on Monday July 20th 2015, 9:38
Seems that installing dotnet45 instead of dotnet40 (via winetricks) did the 'trick' for me. I thought I tried letting Terraria set it up for me, but it seemed to only install xna... It may be that I had installed dotnet40 before that, which could have messed it up.

Got rather confused with all I tried while sleepy. I'll perhaps try tracking it down better at some point!
map does not show
by JoSch on Saturday May 23rd 2015, 6:16
Hi, I'm running ubuntu 14.04 with wine 1.6.2 and the GOG version of Terraria 1.2.4. Terraria runs just fine except for the server and the map. The server is not a big problem because I just run a windows machine on qemu which then runs the server. But not having a map is quite the bummer. Here is what happens:

When I enter a game (no matter whether local or multiplayer) then I can neither see the map nor do my tab or M key do anything. Leaving the game and going into the global options reveals that the map is deactivated. So I activate the map and enter the game again. Sometimes when I do this, I can see the map in the upper right corner for the fraction of a second but then it vanishes without coming back. Going into the global settings again after that shows that the map disabled itself. Repeating this process leads to the same results.

Does anybody experience a similar issue?
RE: map does not show
by Kruno on Saturday July 11th 2015, 5:48
I hope it's not too late, but this issue is mostly caused by lack of enough system resources. You can try setting the lighting to "Retro" or "Trippy" which might help, so as turning all of the graphic heavy options off too.
RE: map does not show
by JoSch on Saturday July 11th 2015, 5:59
It's probably not because of a lack of resources because I got 12G of memory and a 2.7GHz CPU. Plus, when I boot windows on the same system, then the map perfectly shows. Thus it's likely a wine problem.

In my case the problem went away and I can now see the map by upgrading to wine 1.7.38
Stuttering sound issue
by Tyler Adam on Sunday July 6th 2014, 19:26
The known issues section suggests installing a list of codecs to fix the stuttering sound issue, however this was not enough to fix the problem for me, and I wanted to share with anyone who might also have this problem.

What did fix the problem for me was, after installing the codecs, running winecfg. Go to the Libraries tab and edit both "dsound" and "dswave" to be "builtin, then native." Sound works smoothly for me after this.
Graphics Corruption
by Drake on Monday June 16th 2014, 18:09
i.imgur.com/V16hcfj.png

I get this when I install. I install exactly the same was as directed, but I do have to install the Windows XML libs so the installer will work. Everything seems to install nicely, but getting in game yields this result every time. Tried changing resolution, changing multicored lighting off or different values, different in-game lighting modes, etc.

Not sure what the problem is or how to solve it. Any help much appreciated.
RE: Graphics Corruption
by Joshua on Monday June 16th 2014, 19:28
This almost looks video card related, can you give us some details on what distribution, graphics card, driver version, kernel version, etc? Do you get graphics glitches in other games or just terraria? Is it only wine or does it effect non-wine programs?
RE: Graphics Corruption
by Drake on Monday June 16th 2014, 19:40
Sure:

OS X 10.9.3
Intel HD 4000

I've only ever seen graphics corruption like this with Terraria. Obviously the Intel integrated solutions aren't great, but the 4000 is worlds ahead of previous models. As with all graphics cards on Apple OS's, the drivers are as up to date as they can be given that I'm on the most recent patch.

Further, I've been able to play Terraria in the past with no problems (over the course of several years and 5 major OS updates).

In general, I'm fairly tech savvy so (hopefully) it's not something stupid that I'm missing. I've given a few Wine options a shot like emulating a virtual desktop and changing Windows version.

The only other noteworthy thing is that I'm using Wineskin so I'm doing it with GUI, rather than command line Wine.
RE: Graphics Corruption
by Drake on Monday June 16th 2014, 19:44
RE: Graphics Corruption
by Joshua on Tuesday June 17th 2014, 20:10
What version of wine is wineskin using and can you verify what if any DLL Overrides are in use? This should be listed in winecfg for the wineprefix it's running from.

Installing some of the d3d dlls may be of use also, such as: winetricks d3dx9
RE: Graphics Corruption
by Drake on Wednesday June 18th 2014, 12:14
Using the latest Wine- 1.7.18.

I also tried installing some of the d3d's. Started off with _36 and then the full d3dx9 when that didn't work.

I've been steadily adding to overrides trying to sort the problem as it continued to not work, so what I have now is way overkill. To start I just had the .dll's listed in the instructions. Now:

atl100, atl80, atl90
d3d8, d3d9, d3dim, d3drm, d3dx8, all d3dx9_, d3dxof
dciman32
ddrawex
devenum
dinput
dinput8
dmband
dmcompos
dmime
dmloader
dmscript
dmstyle
dmsynth
dmusic
dmusic32
dnsapi
dplay
dplayx
dpnaddr
dpnet
dpnhpast
dpnlobby
dsound
dswave
dwrite
dxdiag.exe
dxdiagn
gameoverlayrenderer(disabled)
mscoree
msdmo
msvcm80
msvcm90
msvcm100
msvcp100, 80, 90
msvcr100, 80, 90
msxlm3
qcap
quartz
streamci
vcomp, vcomp100, vcomp90
Terraria Fails on startup
by Joseph Andersen on Friday April 11th 2014, 8:50
I am running:
wine 1.6.1
Ubuntu 13.10.


I installed a clean 32 bit .wine prefix, with wine set to act as Win 7 (I have tried xp as well). Then installed xna40 (XNA Framework 4.0) and dotnet40 (MS.NET 4.0).

After that I installed steam using winetricks

"env WINEPREFIX="~/,wine winetricks --no-isolate steam"

Then installed terraria as I normally would.
When instillation is finished I'll click play, and for a split second i'll get the Preparing to launch terraria prompt and it goes away and terraria does not launch.

The terminal displays this:

me:dwmapi:DwmSetWindowAttribute (0x8013c, 2, 0x33e554, 4) stub
fixme:dwmapi:DwmSetWindowAttribute (0x8013c, 3, 0x33e560, 4) stub
fixme:dwmapi:DwmSetWindowAttribute (0x8013c, 4, 0x33e550, 4) stub
err:module:import_dll Library mscoree.dll (which is needed by L"C:\\Program Files\\Steam\\SteamApps\\common\\Terraria\\Terraria.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"C:\\Program Files\\Steam\\SteamApps\\common\\Terraria\\Terraria.exe" failed, status c0000135

I have tried re-installing everything multiple times and I cant seem to find anyone who is having this same problem. Help??
RE: Terraria Fails on startup
by Joshua on Saturday April 12th 2014, 17:17
This could indicate an issue with your dotnet installation or a missing override(?):

err:module:import_dll Library mscoree.dll (which is needed by L"C:\\Program Files\\Steam\\SteamApps\\common\\Terraria\\Terraria.exe") not found

Which should be resolved with a fresh prefix, you might try using another prefix with something like:
export WINEPREFIX=~/terraria
winetricks -q --no-isolate steam dotnet40 xna40
RE: Terraria Fails on startup
by iive on Friday May 30th 2014, 19:06
You must install "dotnet40" first and only then setup "xna40".

I tested if terraria runs with the default mono. Installed it in steam. At first run, the game started its own xna40 installer, then it died with missing mscoree.dll . After installing winetrick dotnet40, the xna40 setup claimed it had already been installed and refused to run. The game kept dying with the same missing library.

Then I redid it, following the instructions literally and it worked.
RE: Terraria Fails on startup
by Drake on Tuesday June 10th 2014, 1:52
I'm having this same problem. I'm following the instructions literally. The only noteworthy thing is that my Wine throws a "start.exe" crash when installing dotnet 40- though it still claims to install correctly. Not sure what to do- this is completely clean prefix.
RE: Terraria Fails on startup
by Drake on Tuesday June 10th 2014, 12:55
I solved this by installing xmxsl3 for the .NET installer to function correctly, and getting a native Windows user's mscoree.dll and inserting it into the windows/system32 folder directly after starting the .NET installer (but prior to actually doing anything with it) per instructions I found in the appdb page for .NET.

Now I've just got some graphics corruption in game to sort out.
RE: Terraria Fails on startup
by iive on Wednesday June 11th 2014, 4:35
That's kind of strange. Are you sure you are using the latest winetricks?

I have no idea what might go wrong for you. I compile my own wine, I built it with prelink support. I did install in clean wineprefix and from the looks of it, it seems that gecko and mono engines were not installed (mono is .net implementation).
RE: Terraria Fails on startup
by iive on Wednesday June 11th 2014, 4:40
Forgot to say. Don't change the emulated windows. Leave it to winxp. Win7 have more features and not all of them are implemented.
RE: Terraria Fails on startup
by Drake on Friday June 13th 2014, 0:13
Here's a screenshot of what I'm getting, from another user over at the Terraria home forums:

i.imgur.com/V16hcfj.png

I'm franky baffled, no idea where to go from here. I've tried multiple times, clean prefixes all of them.
RE: Terraria Fails on startup
by Drake on Sunday June 15th 2014, 17:29
Not really sure where to go from here. Never seen graphics corruption like this before, and not sure what to do about it.
RE: Terraria Fails on startup
by Drake on Sunday June 15th 2014, 17:30
Not sure where to go from here- never seen graphics corruption like this, and not sure how to diagnose/treat it.
terraria crashes when pressing keys—sometimes
by nskaran on Sunday March 23rd 2014, 14:34
hello! apologies for my previous question; i resolved it. now i am able to open Terraria, and even to play for a bit, but sometimes i try to press a key and i get the "Terraria has encountered a problem and needs to close." i can't figure out why this only happens sometimes. the Terminal output when the problem starts is "wine: Unhandled page fault on write access to 0x6b32c2c8 at address 0x6318f27 (thread 006b), starting debugger..."

in any case, here is the debugger output: pastebin.com/EjG0HxaQ

does anyone have an idea for what to do? is this an established problem? i haven't been able to find a similar bug report, unless the crash during windowed to fullscreen mode is a related bug. (i tried enabling "emulate a virtual desktop" in case that was it, but it doesn't seem to have helped.)
RE: terraria crashes when pressing keys—sometimes
by Joshua on Sunday March 23rd 2014, 15:22
Noticed gameoverlay listed in the debug you posted, try disabling the in game overlay in steam and see if that helps
RE: terraria crashes when pressing keys—sometimes
by nskaran on Sunday March 23rd 2014, 15:44
ah, i think that fixed the problem! thanks so much.
RE: terraria crashes when pressing keys—sometimes
by Brennan on Sunday April 6th 2014, 1:14
Go to your Libraries section in the Wine config, and add "gameoverlayrenderer" as an override. Set it to "disabled". This will kill the Steam overlay ingame but will fix the problem.
problem installing on 32bit wineprefix
by nskaran on Sunday March 23rd 2014, 13:24
hello! i've been trying to get Terraria to work for a while. i installed a new version of wine, created a 32-bit wineprefix, installed Steam—everything works fine. when i try to install Terraria, it stops loading at about halfway through the setup process, when it's allocating space. i have to force quit, and after that i'm unable to even start Steam—it gives me "fixme:heap:HeapSetInformation 0x0 1 0x0 0" and then goes back to the command prompt.

the only way i've been able to get Steam working again is to uninstall and reinstall. does anyone have any idea what's going on and what i should do? thanks!
RE: problem installing on 32bit wineprefix
by nskaran on Sunday March 23rd 2014, 14:24
never mind about this problem! i'm not sure what fixed it, but i was able to install fine. the only problem now is that it crashes very easily—i will make a different thread for that.
Can't host server
by Josh Ventura on Saturday February 15th 2014, 18:27
I get a segmentation fault every time I try to start the server. Only in the server (TerrariaServer.exe), not in Terraria itself. Has anyone successfully hosted, or is everyone just joining?

Joining for me works fine; I didn't even need the tile data fix. Or I don't remember applying it when I was going down the laundry list of winetricks commands to make the game work in the first place.
Terraria can't find matching timezone??
by Andre Couto Gimael on Thursday January 23rd 2014, 10:09
When trying to run Terraria, when launching from steam the app is supposedly working, and visible in the system monitor, but nothing happens.

I've tried running it straight from the .exe, here's what I got:

fixme:ntdll:find_reg_tz_info Can't find matching timezone information in the registry for bias 180, std (d/m/y): 16/02/2014, dlt (d/m/y): 19/10/2014

Unhandled Exception:
System.NotSupportedException: Can't get timezone name.
at System.CurrentSystemTimeZone..ctor (Int64 lnow) [0x00000] in :0
at System.TimeZone.get_CurrentTimeZone () [0x00000] in :0
at System.DateTime.get_Now () [0x00000] in :0
at Microsoft.Xna.Framework.Game..ctor () [0x00000] in :0
at Terraria.Main..ctor () [0x00000] in :0
at Terraria.Program.Main (System.String[] args) [0x00000] in :0
[ERROR] FATAL UNHANDLED EXCEPTION: System.NotSupportedException: Can't get timezone name.
at System.CurrentSystemTimeZone..ctor (Int64 lnow) [0x00000] in :0
at System.TimeZone.get_CurrentTimeZone () [0x00000] in :0
at System.DateTime.get_Now () [0x00000] in :0
at Microsoft.Xna.Framework.Game..ctor () [0x00000] in :0
at Terraria.Main..ctor () [0x00000] in :0
at Terraria.Program.Main (System.String[] args) [0x00000] in :0

Do you guys have any idea what I could do to get it running?
RE: Terraria can't find matching timezone??
by Andre Couto Gimael on Thursday January 23rd 2014, 10:12
I forgot to mention I'm using Wine 1.7.11
RE: Terraria can't find matching timezone??
by Andre Couto Gimael on Monday January 27th 2014, 11:18
I got it now. The system timezone has to be set to UTC... the clock can be set to anything. I've installed it properly by doing it like this:
Installed wine 1.7
Installed winetricks
Installed dotnet40 and xna40 to the same x86 wineprefix
(like env WINEDEBUG="fixme-all" WINEPREFIX=~/.wsteam WINEARCH=win32 winetricks dotnet40 xna40)
Installed steam to the same wineprefix WITH NO ISOLATE
(like env WINEDEBUG="fixme-all" WINEPREFIX=~/.wsteam winetricks --no-isolate steam)
Installed and ran Terraria just fine.
Just watch out if you want to switch to full screen.
I'm running Linux Mint 16 KDE, and when I switched to full screen without setting the game resolution to be the same as my native resolution, it glitched pretty hard.

And thank you, community, for having answered ! Oh, wait...
no one did.
No audio on Terraria
by Wine Fan on Thursday December 19th 2013, 16:34
I have successfully been able to run terraria in wine 1.7.8 There is one problem, i have no sound output from the game. I directed wine to my speakers (they work i tested them) and the test speaker button outputs a sound, but not the game. If i switch to wine 1.3.24 i get sound from the game, but the graphics are very glitchy. Any info as to how i can fix this problem?
Error, Please help
by Not telling you on Tuesday November 26th 2013, 10:31
When i click on play nothing happens at all.
I have everything installed correctly and am running wine 1.7
RE: Error, Please help
by Soulcage on Tuesday November 26th 2013, 21:10
I'm also having this problem on archlinux 64bit using 32bit prefix, Playonlinux does work though.
RE: Error, Please help
by alec on Wednesday November 27th 2013, 18:13
me too same problem nothing happens, also os version is Mac OS X 10.9. Wine version 1.6-rc5 with wine bottler
RE: Error, Please help
by Joshua on Sunday December 1st 2013, 19:00
Could you please articulate on the problem? Is there any error message output ( aka in the terminal ) when you try to run the game? Does this occur for all games or just Terraria( Have you tried other games? If not, please do to make sure it's not a 'steam' issue )?
RE: Error, Please help
by Not telling you on Tuesday December 3rd 2013, 11:38
Alright this works for the binding of issac so its not a steam-only problem and no error message at all.

Thank you for helping by the way.
RE: Error, Please help
by Joshua on Saturday December 7th 2013, 10:54
Did you install .NET40 using winetricks?
RE: Error, Please help
by Not telling you on Monday December 9th 2013, 6:53
Yes
RE: Error, Please help
by Not telling you on Thursday December 12th 2013, 8:49
Ok I have good and bad news.

By reinstalling everything terraria works but now when I want to create my character the game crashes and displays on error (Wine error).
RE: Error, Please help
by Kai Blaschke on Friday December 13th 2013, 4:56
This is due to an unimplmented BCrypt function, which is being called from somewhere within the .NET 4.0 framework to check if the system must use only crypto algorithms allowed by the FIPS standards.

Bug 32194 ( bugs.winehq.org/show_bug.cgi?id=32194 ) mentions the problem, I posted a small patch there which implements a simple stub for the missing function. After applying the patch, Terraria worked flawlessly for me.
RE: Error, Please help
by Chiitoo on Monday December 30th 2013, 6:27
Teegrins!


Looking at your following posts, this might not be applicable at all, but your initial description (including the no error messages at all later on) is so similar that I'll just leave this here.


Using nvidia-drivers (that is, the proprietary drivers), the game would not run, and since it had been quite a while since I last played it, I had forgotten which prefix I had it running on, and probably deleted my maps and characters at some point due to forgetting where I put them, oops, but I digress!

It took me quite a lot of fiddling around with dotNet, thinking it's that where the problem lied, but when I ran Terraria.exe directly from under steamapps/common/terraria, I noticed it would actually produce a segmentation fault, while launching via Steam would only give the stub, fixme:thread:SetThreadStackGuarantee, and nothing more.

An old Intel-based laptop I tested then would actually get complains about the GPU and some dotNet related things would also appear, as it normally should. All that prompted me to test different drivers from nvidia on the other box, and with 304.116 and/or 304.117 Terraria would run again.

It does not run with either 319.76 nor 331.20.

As this is on x86_64, I guess it could be a combination of something like the x86-libs which Gentoo currently has around the tree, or it's something particular in the drivers, and should be looked more into...
RE: Error, Please help
by Chiitoo on Tuesday January 14th 2014, 7:15
A follow-up: nvidia-drivers-331.38 seem to have this issue fixed (that, or a combination of it with xorg-server-1.14.5, which was updated to 1.15.0 at the same time).
Can't use multiplayer workaround
by Bruno on Tuesday November 5th 2013, 9:31
Using "ssh -L 7777:$SERVER:7777 localhost -N" with openssh-server installed does not work for me as it always gives "Permission denied, please try again." after entering password, can't find a solution to that problem.
I have played using this workaround on other PC before and everything went flawless, but now it just fails.
Are there any solutions other than using ssh?
RE: Can't use multiplayer workaround
by Jacob on Thursday July 3rd 2014, 8:53
Are you putting sudo in front of the ssh? If so it would be root not your user. Also the password with the normal ssh without sudo is your login password for your account
RE: Can't use multiplayer workaround
by Jacob on Thursday July 3rd 2014, 8:53
Are you putting sudo in front of the ssh? If so it would be root not your user. Also the password with the normal ssh without sudo is your login password for your account
Works, quite nice
by Colin Crowley on Saturday November 2nd 2013, 2:41
Worth note, the instructions I found for making the two requisites install nicely asked me to copy over a DLL from my Windows computer. Worked like a dream, but it made Terraria fail to run. Redid the entire prefix for good measure without that DLL substitution, turns out that was indeed the issue.

Also, I checked a bit. Seems the multiplayer issue arises only on large worlds for me. Small ones work fine without the ssh workaround. Not sure about medium. As of now, I haven't found a way to run it as a server successfully though.
RE: Works, quite nice
by Evan Goers on Saturday November 2nd 2013, 23:55
Check out TShock(tshock.co/). It's what I used to run a server on my hardware. You need to extract the archive somewhere and use Mono to run the exe file. Note that in Linux, Mono is very memory intensive so it will end up using about 3 or 4 times as much memory as the server would in Windows, so this is why it will likely use up over 500MB of ram.
Multiplayer
by Felix Hellmann on Saturday October 19th 2013, 9:17
Some reports state working Multyplayer.
How did you do that? Who hosted? Lan or Internet? What did you do to make it work?

I always get stuck on "Requesting Tile Data".
RE: Multiplayer
by Evan Goers on Saturday October 19th 2013, 15:01
Open a terminal and run the following command(replace $SERVER with the multiplayer server address):
ssh -L 7777:$SERVER:7777 localhost -N

It'll open a local port forward. Let it keep running. Then, on Terraria, connect to 127.0.0.1:7777. It will fool Terraria into connecting locally and work around the "Requesting tile data..." problem.
RE: Multiplayer
by Felix Hellmann on Sunday October 20th 2013, 3:27
Thanks this works.
RE: Multiplayer
by Xylemon on Sunday October 27th 2013, 1:11
It's strange because I've only ever had .NET 4.0 or 4.5 installed and MP has worked fine. I can't tell if it's the latest version of Wine or just luck. However, if this workaround also fixes MP then it should be on this page instead of just in a thread.
RE: Multiplayer
by Xylemon on Sunday October 27th 2013, 1:14
Ignore my comment above for I just released it is mentioned on the page.
Multi-Player
by Andrew on Sunday October 6th 2013, 17:14
Trying the game again since the 1.2 patch dropped, and still unable to utilize multi-player. Has anyone had any success recently? Wine has improved considerably with dotnet40 support, but I still get the Loading Tile error when connecting to someone else, and the TerrariaServer.exe crashes when I try to host.

If anyone can successfully use multiplayer with 1.2, I'd love additional assistance.
RE: Multi-Player
by Ben on Sunday October 6th 2013, 22:44
Multiplayer with the default server is as far as I know...Not possible right now. However, you can use an alternative server called "TShock" (tshock.co/xf/) which is quite powerful and has the blessing of the developer of Terraria.

Check out this guide to get it working on the Mac (tshock.co/xf/index.php?threads/installing-tshock-on-mac-os-x-its-possible.2110/).

One thing I noticed is that If it hangs on the "Saving world. Momentary lag might result from this." message then it has crashed and the log file should say the exact issue. What worked for me was this command in Terminal:

ulimit -Hn 2048; ulimit -Sn 1024

And then everything worked great after that. Currently hosting a local server this way with a port mapping program called "Port Map" (www.codingmonkeys.de/portmap/) with a buddy. He plays on PC and I'm playing using my wine wrapper. Enjoy.
RE: Multi-Player
by Andrew on Monday October 7th 2013, 19:54
Thank you for the reply. I'll try out TShock when I'm home tomorrow night and see if it works. Any ideas on how to connect to someone else's game or a public game?
RE: Multi-Player
by Andrew on Thursday October 10th 2013, 14:55
Thank you again for your help with this. Haven't had someone try to connect yet, but I can run the TShock server and log into it myself. Much further along than I could get before.

Would still be nice to join someone else's game, but I'll make do. Again, thank you.
RE: Multi-Player
by Ben on Thursday October 10th 2013, 17:13
Glad you got it working. Works great for me, however I get a rather annoying 10 FPS drop every few minutes.

by lahtis on Monday February 18th 2013, 12:47
works fine. Im install the game using this video help www.youtube.com/watch?v=qD-H2UfxkO8
No sound
by Terseus on Saturday January 5th 2013, 5:55
After installing Terraria with .NET 4.0 and XNA, I have no sound and the music meter of Terraria is stuck at 0%.

Unfortunately the "Fixing non-working audio" instructions are not aplicable anymore since the used options does not exist in the current version of wine (1.5.21).

I also tried modifying the DirectSound registry keys DefaultSampleRate and DefaultBitsPerSample to 44100 and 16 respectively to no avail.

Any help would be appreciated.
RE: No sound
by Terseus on Saturday January 5th 2013, 7:36
I find the problem, it is related to the bug bugs.winehq.org/show_bug.cgi?id=31568

I solved it with adding the necessary class registry keys mentioned in the bug report.

If anyone have the same problem can reproduce the fix with the following commands:
1. wine reg add "HKLM\\Software\\Classes\\CLSID\\{3eda9b49-2085-498b-9bb2-39a6778493de}" /d "XNA Audio2 (manual)"
2. wine reg add "HKLM\\Software\\Classes\\CLSID\\{3eda9b49-2085-498b-9bb2-39a6778493de}\\InProcServer32" /d "C:\\windows\\system32\\XAudio2_6.dll"
3. wine reg add "HKLM\\Software\\Classes\\CLSID\\{3eda9b49-2085-498b-9bb2-39a6778493de}\\InProcServer32" /v "ThreadingModel" /t REG_SZ /d "Both"

Hope this help someone.
RE: No sound
by Joshua on Saturday April 20th 2013, 16:08
Thank you, I'm adding that bug to the list.
RE: No sound
by Bruno Finger on Wednesday April 17th 2013, 18:55
Try to install these codecs using winetricks, it worked perfeclty for me:

winetricks dirac directmusic dmsynth dsound ffdshow icodecs l3codecx
error
by Liam Dawe on Tuesday January 1st 2013, 9:33
I seem to get this error when trying to run it: pastebin.com/1bEf0uRX
RE: error
by Bruno Finger on Wednesday April 17th 2013, 18:56
Try the new installation guide posted, the one about winetricks.

Also, are you using a 64-bits wine prefix?
I have a workaround
by Peter on Tuesday October 2nd 2012, 11:41
I put it in a Text doucment because its long
Not working..
by Samuel on Saturday June 30th 2012, 19:31
Following the guide by Tom Geiger, and terraria gets going but it then pops up with this: pastebin.com/TQMW1rc2
Multiplayer issues?!
by Joshua on Tuesday December 27th 2011, 11:37
Multiplayer seems to work fine for me, minus the whole hosting a server. But there are ways around this, like using TShock ( mono compatible server ) -> github.com/TShock/TShock/downloads
RE: Multiplayer issues?!
by PLL on Tuesday December 27th 2011, 15:31
I can confirm this. Using latest wine, multiplayer works perfectly.

Creating a server gets stuck, even if you run terrariaserver.exe, it seems to be some issue with .NETv4
RE: Multiplayer issues?!
by Xpander on Wednesday December 28th 2011, 12:06
not working for me with latest wine.. or u are using git version?
1.3.35 still has the same "requesting tile data" bug.
RE: Multiplayer issues?!
by Joshua on Wednesday December 28th 2011, 13:21
you can not connect to any multiplayer servers?
RE: Multiplayer issues?!
by Xpander on Wednesday December 28th 2011, 13:43
can only into my own. via localhost.
RE: Multiplayer issues?!
by Joshua on Wednesday December 28th 2011, 16:07
just for kicks see if you can connect to 2dforts.dyndns.org port 7777
RE: Multiplayer issues?!
by Xpander on Wednesday December 28th 2011, 16:19
hmm i can... also can few more from www.terrariaonline-servers.com/ - strange thing is that i can get into those which sending world data slowly..or i see the % going up slowly.. most servers have it pretty much instantly and then stuck at requesting tile data...
RE: Multiplayer issues?!
by Joshua on Wednesday December 28th 2011, 17:36
try creating a new character and then connecting?
RE: Multiplayer issues?!
by Xpander on Wednesday December 28th 2011, 17:39
done that allready with no help.
i guess its something odd with my router or routing.
RE: Multiplayer issues?!
by Feilen on Wednesday December 28th 2011, 18:43
Woo! Found a (really sort of stupid) hack to get around it.

Since it works when it thinks it's connecting locally, just use

ssh -L localhost:7777:(server to connect to):7777 localhost

Then just connect to localhost in Terraria.
RE: Multiplayer issues?!
by Xpander on Thursday December 29th 2011, 2:37
lol genious :D works like a charm
RE: Multiplayer issues?!
by Andrew on Wednesday October 2nd 2013, 2:13
Can you clarify this a little bit? I'm not really family with server connection.

When I enter what you have listed I get "ssh: connect to host localhost port 22: Connection refused"
Problems
by Cory on Friday December 23rd 2011, 22:25
I followed the install instructions, but when I try to install .NET on the wrapper it says I already have an equal or better version so I can't. I checked, and it is there, but I still can't open Terraria... Help?
RE: Problems
by Pontus Carlsson on Saturday December 24th 2011, 4:30
You need to remove the register entry for .NET Framework 4 to be able to install it.

Also, a heads up to everyone; Make sure you use WINEARCH=win32, Terraria doesn't play nice with x86_64.
RE: Problems
by PLL on Monday December 26th 2011, 2:40
This happened to me when I was running default wine under 64bits.

recreate your prefix with

WINEARCH=win32 and follow the instructions.
Multiplayer strangely working!
by Pontus Carlsson on Monday December 19th 2011, 12:53
Right, so I most like everybody else encountered a stall on the "Reading data tiles.".

In my attempt to resolve this I first of all attempted to fix the NtQueryInformationThread call 16, however this isn't the issue behind it since it's merely just a `useless' information piece in XNA (Man can I express myself or what?).

Anyway! Now to the real discovery; I decided to attempt to debug the application, however. In winedbg the issue can't be reproduced!

So, somehow `magically' multiplayer works in winedbg;
winedbg "C:\Program Files\Terraria\Terraria.exe"
Then continue by pressing 'c' and enjoy!

PS. If anyone could clear out what exactly differs in execution between wine and winedbg I'd be glad to debug it and find the real issue.
RE: Multiplayer strangely working!
by Xpander on Tuesday December 20th 2011, 10:09
still doesnt work for me :(
and what u mean by pressing c? in terminal?
in terminal it just types c then..or u mean ctrl+c?
either way..it doesnt work for me...strange.
RE: Multiplayer strangely working!
by Chiitoo on Tuesday December 20th 2011, 12:46
It's a command for the debugger to (c)ontinue running the program.
Note the 'winedbg' command instead of 'wine'.

I don't know why I haven't tried winedbg myself, or did I... I think I did a good while ago, but can't really remember what happened.

Will try (again) when I have the time to!
RE: Multiplayer strangely working!
by Evan Goers on Tuesday December 20th 2011, 10:20
What happens if you run it in regular wine and use 'pkill -CONT terraria.exe' when it hangs?
RE: Multiplayer strangely working!
by Xpander on Tuesday December 20th 2011, 13:57
actually i got it working with winedbg command somehow.
but after 5 minutes i lost connection.. will test some more when i have time.
RE: Multiplayer strangely working!
by Evan Goers on Tuesday December 20th 2011, 20:31
Yes but what happens when you do what I said instead of using winedbg?

...
RE: Multiplayer strangely working!
by Xpander on Wednesday December 21st 2011, 4:08
nothing happens. still the same message "requesting tile data"
RE: Multiplayer strangely working!
by Pontus Carlsson on Thursday December 22nd 2011, 11:47
Yes, I seem to experience similar issues as well.

Ocasionally this works flawless, ocasionally it doesn't at all.
Last night for example it worked for 25 minutes, then I couldn't reconnect to that server at all anymore without retrieving the same horrible message over and over again. Which makes me think this might either be an internal condition in the TCP/IP stack of the Wine implementation or it could be a cache somewhere.

However I did find a reflector decompiled version of Terraria which might help sheed some light over the situation, or at least help find which call is causing this random happenstance.
RE: Multiplayer strangely working!
by Chiitoo on Wednesday December 21st 2011, 11:42
Tried this myself and no difference for me with either dedicated server or Host & Play.

How do you exactly run it?

You mention winedbg "C:\Program Files\Terraria\Terraria.exe" but at least for me, Terraria is at "steam\steamapps\common\terraria", and it cannot be started in any way other than via steam (even if I have steam running).

This is one of the reasons why I dislike steam. I mean strongly dislike. Borderline hate it...

But I digress.
That rant doesn't belong here. ^^;
RE: Multiplayer strangely working!
by Pontus Carlsson on Thursday December 22nd 2011, 11:51
As Steam doesn't work for me in Wine what so ever due to some hardware related jibberish I was forced to use the cracked steam_api.dll. Which in turn allows me to place Terraria wherever the hell I want more or less.

For those interested, here's my /usr/local/bin/terraria I use to start the game with;

WINEARCH=win32 winedbg "C:\Program Files\Terraria\Terraria.exe" /dev/null

Where c^M is Ctrl+v followed by a gentle touch on the enter button.
(Read gentle as "Strike the bloody thing with all power you possess.")
RE: Multiplayer strangely working!
by Chiitoo on Friday December 23rd 2011, 11:59
Ah yes, I was thinking this was the case.

I don't think for me it's even actually debugging Terraria.exe since it's a different process from Steam.exe which would obviously explain why my results differ.

Thanks for posting your findings!
RE: Multiplayer strangely working!
by Pontus Carlsson on Saturday December 24th 2011, 3:46
Steam.exe is a wrapper for the actual executables. You'll find the clean Terraria.exe inside of your Steam folder. I believe it's gamedata\common or something if I'm not misremembering myself.

I'd love to debug it properly myself, however winedbg is far to different from gdb for me to be able to utilize it.

Reflector doesn't seem to work on Wine either so can't decompile it without a Windows machine at hands.

Merry christmas!
RE: Multiplayer strangely working!
by Evan Goers on Saturday December 24th 2011, 3:52
Actually IIRC terraria.exe will inform you to run it from Steam.
RE: Multiplayer strangely working!
by Pontus Carlsson on Saturday December 24th 2011, 4:30
Nope, my friend runs Terraria this way to utilize AKM and there's no complaining there.
RE: Multiplayer strangely working!
by Pontus Carlsson on Saturday December 24th 2011, 4:37
I found a decompiled version of Terraria; github.com/Deathly/TerrariaAPI/tree/master/Terraria

This repos will probably be removed and reported soon so if someone intends to use this information either clone it or work fast.
Possibly the issue;
by Pontus Carlsson on Sunday December 25th 2011, 5:43
Right, I spent some time debugging it last night and here's what "Requesting Tile Data" get's stuck on;

0031:Call ntdll.wine_server_release_fd(000006a4,00000034) ret=7dada950
0031:Ret ntdll.wine_server_release_fd() retval=00000000 ret=7dada950
0031:Ret ws2_32.WSAConnect() retval=ffffffff ret=04600eac
0031:Call KERNEL32.GetLastError() ret=79162510
0031:Ret KERNEL32.GetLastError() retval=0000274d ret=79162510
0031:Call KERNEL32.FormatMessageW(00003200,00000000,0000274d,00000000,0a6fddd8,00000101,00000000) ret=046010ef
0031:Ret KERNEL32.FormatMessageW() retval=00000014 ret=046010ef
0031:Call KERNEL32.GetLastError() ret=79162510
0031:Ret KERNEL32.GetLastError() retval=0000274d ret=79162510
0031:Call KERNEL32.VirtualAlloc(0d856000,00010000,00001000,00000004) ret=79143409
0031:Ret KERNEL32.VirtualAlloc() retval=0d856000 ret=79143409
0031:Call KERNEL32.RaiseException(e0434352,00000001,00000005,0a6fdf8c) ret=791cac08
0009:Ret KERNEL32.WaitForDebugEvent() retval=00000001 ret=7ecf4ce5
0009:Call KERNEL32.GetThreadContext(000000d4,7ed258a0) ret=7ecf4aff
0009:Ret KERNEL32.GetThreadContext() retval=00000001 ret=7ecf4aff
0009:Call KERNEL32.SetThreadContext(000000d4,7ed258a0) ret=7ecf59e5
0009:Ret KERNEL32.SetThreadContext() retval=00000001 ret=7ecf59e5
0009:Call KERNEL32.ContinueDebugEvent(00000029,00000031,80010001) ret=7ecf4d84
0009:Ret KERNEL32.ContinueDebugEvent() retval=00000001 ret=7ecf4d84
0009:Call KERNEL32.WaitForDebugEvent(0032dde8,ffffffff) ret=7ecf4ce5
0031:Call KERNEL32.GetLastError() ret=791f5aa7
0031:Ret KERNEL32.GetLastError() retval=0000274d ret=791f5aa7
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=0000274d ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=0000274d ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=0000274d ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=7919bfe1
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=7919bfe1
0031:Call ntdll.RtlAllocateHeap(00110000,00000000,00000168) ret=7919bf7e
0031:Ret ntdll.RtlAllocateHeap() retval=001c1c78 ret=7919bf7e
0031:Call ntdll.RtlTryEnterCriticalSection(0018dc14) ret=79141d85
0031:Ret ntdll.RtlTryEnterCriticalSection() retval=00000001 ret=79141d85
0031:Call ntdll.RtlUnwind(0a6fe200,7919ca58,0a6fde30,00000000) ret=79141f30
0031: eax=00000000 ebx=00000000 ecx=01009220 edx=0a6fd938 esi=00000001 edi=0a6fde30 ebp=0a6fd7d8 esp=0a6fd7cc ds=002b es=002b fs=0063 gs=006b flags=00000246
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Call KERNEL32.GetLastError() ret=790703b8
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=790703b8
0031:Ret ntdll.RtlUnwind() retval=00000000 ret=79141f30
0031: eax=00000000 ebx=00000000 ecx=01009220 edx=0a6fd938 esi=00000001 edi=0a6fde30 ebp=0a6fd7d8 esp=0a6fd7cc ds=002b es=002b fs=0063 gs=006b flags=00000246
0031:Call KERNEL32.GetLastError() ret=7919c04f
0031:Ret KERNEL32.GetLastError() retval=00000000 ret=7919c04f
0031:Call ntdll.RtlFreeHeap(00110000,00000000,001c1c78) ret=7919c036
0031:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7919c036
0031:Call KERNEL32.GetCurrentThreadId() ret=791cd92a
0031:Ret KERNEL32.GetCurrentThreadId() retval=00000031 ret=791cd92a
0031:Call ws2_32.WSAConnect(000006a4,0d740208,00000010,00000000,00000000,00000000,00000000) ret=04600eac
0031:Call ntdll.wine_server_handle_to_fd(000006a4,00000001,0a6fdee8,00000000) ret=7dada637
0031:Ret ntdll.wine_server_handle_to_fd() retval=00000000 ret=7dada637

If my eyes don't lie this is basically an infinte loop based on a condition that never changes more or less. WSAConnect returns error with errno 0x0000274d (WSAECONNREFUSED), however this seems slightly off since gaming works on LAN and not WAN. So I'd say this has something to do with routing, but that's just a guess.

The real code for this looks;
if ((!clientSock.locked && !disconnect) && clientSock.networkStream.DataAvailable)
{
clientSock.locked = true;
clientSock.networkStream.BeginRead(clientSock.readBuffer, 0,
clientSock.readBuffer.Length,
new AsyncCallback(clientSock.ClientReadCallBack),
clientSock.networkStream);
}

Where clientSock is an instance of the internal class ClientSock() (found here: raw.github.com/Deathly/TerrariaAPI/master/Terraria/ClientSock.cs)

This isn't a solution but hopefully it'll help someone else along the way.
Multiplayer support
by Renato Alves on Saturday December 10th 2011, 7:47
According to your report Multiplayer should be functional but I haven't been able to connect to any server. One exception was a TerrariaServer running on the same machine inside a virtual machine where the connection from the game was done on localhost:7777.

In external connections it displays the message "Requesting tile data" and just sits there indefinitely.

Does anyone experiences this? Suggestions to workaround this issue?
RE: Multiplayer support
by Chiitoo on Monday December 12th 2011, 12:28
Almost everyone seem to indeed rate it 'Gold' still, even though the Multiplayer part is not working, which makes it... not gold.

I haven't yet looked into it too much, but I did manage to connect to a server with the "relay" debug channel enabled. As one might guess, FPS would be too low to even think of actually doing anything (Around 1 or less frames per second).

Without "relay" it sits at "Requesting tile data" for me too, and what comes to hosting, the server application seems to run even worse than before (just a quick try: seems to stall when selecting a world, when in the past, I could actually set up the server and connect to it myself). Using "Host & Play" from the game menu, there is behaviour that I think was there not before, i.e., it seems to try to open the server application, but they fail.

Will try to look into it, but I doubt I can find out anything useful.
RE: Multiplayer support
by Xpander on Monday December 12th 2011, 14:01
what you mean by relay debug channel?
i have same problem cant connect to mp servers.
winedebug=+relay ? or something?
RE: Multiplayer support
by Chiitoo on Monday December 12th 2011, 14:23
Yes, exactly.

Just a while ago, I was testing it by redirecting the output into a file (makes the application run faster), but then I would not be able to get on the server again... weirdness! :S
RE: Multiplayer support
by Chiitoo on Tuesday December 20th 2011, 19:14
A little follow up on this: When I tested it again, I could confirm that it would only work when the debugging info went to the terminal, slowing the game down a lot and indeed if I redirect it to a file, thus speeding up the game, it just wont work every time I tried so it wasn't just one time.

Seems quite bizarre how slowing down the application allows something like that to work...
RE: Multiplayer support
by Renato Alves on Monday December 12th 2011, 18:15
The server is known to be buggy in Wine. It doesn't require Steam so you can launch it from the terminal directly. Use winecommand though or you won't be able to interact with it.
You can also download the standalone server from the official terraria website.

Following some of my tests I can now share a story of success, although I do not understand the reasons. If someone could reproduce it would be a good start to get some setup specific issues out of the way.

So I started by setting up a Terraria server in a machine running windows 7. If I connect to the machine directly I get the "Requesting tile data" message and nothing else. Still, the fact that I could connect to the virtualmachine in my previous test got me thinking... What if I can make the remote server look as if it was local to wine and the game? An hour later or so I had setup an SSH server on windows and I was forwarding the port (other tunneling software should work too). To my surprise the "Requesting tile data" message vanished in a second and I was in-game. The connection worked flawlessly as if I was playing locally, no lag or anything.

For SSH server I used an old version of CopSSH that you can still find for free in the web, newer versions are paid. Also tried freesshd but couldn't get it to run as it always complained that I didn't have admin rights even when running as admin (windows 7).

This was all with wine 1.3.34 and the normal install procedure.

Obviously this won't work for most servers as you are not allowed to create tunnels, but it should provide a good starting point to understand why does the game work if the connection is made to localhost but doesn't if done directly to a remote host.

Let me know how it goes for you.
RE: Multiplayer support
by Renato Alves on Monday December 12th 2011, 18:16
I meant wineconsole not winecommand.
RE: Multiplayer support
by Xpander on Thursday December 15th 2011, 18:19
i tested through hamachi. friend of mine hosted a server and we were in hamachi with direct tunnel and i was trying to connect but the same issue "requesting tile data" then i downloaded standalone server from the webpage..and started my server. i could join into my own via localhost or 127.0.0.1 but not with my hamachi ip or with my public ip.
if i joined with hamachi ip r public ip the server just crashed. or if someone else tryed to connect my server, the server crashed after message "someone connected..."
no further ideas
RE: Multiplayer support
by David Kowis on Friday October 11th 2013, 16:36
You can do ssh tunneling.

ssh localhost -L 7777:destinationserver:7777

Worked great for me :) It's an odd thing to work around, but this worked stupidly easy.
New Wine update prevents audio fix
by Hoot215 on Saturday December 3rd 2011, 17:15
Previously, I was able to fix my crackling audio by going into the winecfg audio tab, and setting hardware acceleration to emulation. However, as of Wine 1.3.28, most of the settings in the audio tab were removed (Including the hardware acceleration setting). As a result, I now have extremely annoying crackling audio that prevents me from enjoying the game. Does anyone know how to fix this?
RE: New Wine update prevents audio fix
by Joshua on Monday December 5th 2011, 19:02
you can use winetricks to turn sound to emulation, just do
winetricks dsoundhw=Emulation
RE: New Wine update prevents audio fix
by Hoot215 on Tuesday December 6th 2011, 18:24
Unfortunately that didn't seem to help... the sound is still crackling like mad. Thanks anyway though. I'm really not sure what could be causing it... unless it's the fact that I'm on a 64-bit system? I've heard that might affect it.
RE: New Wine update prevents audio fix
by Hoot215 on Wednesday December 7th 2011, 16:33
Actually never mind... just like my previous case a couple of posts down, my sound randomly started working again (That other one was from a while ago, I don't even remember posting it). Guess I should have tested a bit more before I posted. Sorry for the useless posts :)

NOTE: For anyone having the issue that I had, try restarting your computer. It seemed to work for me.
Registry hack to stop install popup?
by Jen on Thursday November 17th 2011, 14:24
I got Terraria working fine, but there was a registry hack to keep Steam from trying to install .NET again. Anyone remember what it was? I had to redo that wineprefix, so I can't remember what needed to be edited to stop the popup.
RE: Registry hack to stop install popup?
by Joshua on Thursday November 17th 2011, 20:58
wine reg add "HKLM\\Software\\Microsoft\\NET Framework Setup\\NDP\\v4\\Full" /v Install /t REG_DWORD /d 0001 /f
RE: Registry hack to stop install popup?
by Jen on Thursday November 17th 2011, 21:02
Awesome, thanks!

by Evilandi666 on Saturday August 6th 2011, 18:29
Did Anyone tried it on a Intel GMA 4500MHD?

It should work (on Windows) but in wine it always fails with "no suitable card found". XNA Wiki says, 4500MHD should meet the requirements...

anyone tried it or has an idea?
RE:
by Raffaele on Wednesday October 19th 2011, 8:03
I think wine works well with Nvidia/Ati cards... Often works also with other cards, but not always :)
RE:
by lis82 on Friday June 8th 2012, 3:59
Just install driconf and enable S3TC texture compression.
No sound
by Hoot215 on Thursday August 4th 2011, 16:58
Help! I have no sound in Terraria (Other than that it works fine). I've set my sound to Emulation instead of Full, made sure that the sample rate is at 44100, and set the bits per sample to 16, and I still have no sound. Looking at all the posts, I tried to install lib32-pulse and lib32-alsa-plugins, but I can't seem to find them (They're not in the repositories)
Running Kubuntu 11.04 x86_64.
RE: No sound
by Hoot215 on Sunday August 7th 2011, 15:25
Actually, scratch that. My sound randomely started working again. (Hardware emulation at full)
No network
by Filipe Teixeira on Wednesday July 20th 2011, 3:28
Attention: No Network mode working! I saw the people giving gold rate, I didn't have notice one of the most important part from game not working.

Tried with all version since .19 to .24
RE: No network
by Gareth Schakel on Saturday May 11th 2013, 3:00
There is actually a way to get it working, it's just obnoxious, you need to set up either an SSH tunnel connection or a proxy so that localhost:7777 goes to the server you want to play on!
Was having trouble getting Terraria working on Arch
by John Koelndorfer on Friday June 17th 2011, 20:16
My fix for Arch on x86_64 was to install the lib32-libpulse and lib32-alsa-plugins packages -- once I did this, Terraria started!

I was pulling my hair out for days trying to figure out why I could not get this working. I am ecstatic!
No sound?
by Lars-Philip on Monday June 6th 2011, 12:54
Some test results say sound works, some say it doesn't. Well, it doesn't work here. I've pretty much followed Geiger's guide, the .NET Framework won't install because of the HRESULT error mentioned. Then I copied the whole shebang into the Terraria folder and it starts. Although it gives out the following error:

"Error parsing:
C:/windows/Microsoft .NET Framework/Framework/v4.0.30319/config/machine.config
Parser returned error 0x80004005"

But then Terraria starts just fine, I can play, but no sound.
RE: No sound?
by Tom Geiger on Tuesday June 7th 2011, 13:55
What version of wine are you running?

From an Audio- side, I'm not running pulse. You might want to try that.

(E.g. turning off pulseaudio)

Sound works for me perfectly.
RE: No sound?
by Robert "Vulpes" Gladson on Wednesday June 8th 2011, 0:14
I too am experiencing no sound. It was difficult enough to get the game running. It runs like crap in a virtual machine. Why the hell didn't they make a portable version in the first place? But I digress, yeah no sound using XP mode on a fresh registry Wine 1.3.21 with mono 2.10 installed.
RE: No sound?
by Joshua on Friday June 10th 2011, 14:48
I just tested this and there seems to be a bug that this game requires your soundcard to be set to 44100. You should be able to change this setting either in the .asoundrc located in your home folder or in the alsa.conf located in /usr/share/alsa, what I did was edit the alsa.conf and set the default rate for dmix devices to 44100 because that is typically how I access my sound
RE: No sound?
by Joshua on Friday June 10th 2011, 19:35
Actually, just setting audio in winecfg to Emulation and 44100khz worked
RE: No sound?
by Lars-Philip on Saturday June 11th 2011, 9:46
Yep, that works! Cheers!
Hosting Multiplayer
by Joshua on Sunday June 5th 2011, 17:00
Has anyone had any success in hosting a Terraria Multiplayer game?
For Russian users:
by Stanislav Oskolkov on Thursday June 2nd 2011, 13:07
For Russian users:

Лучше заранее убедиться, что ваша видео-карта поддерживается и может работать с XNA (Это касается и Windows-пользователей)
Список здесь:
www.xnawiki.com/index.php?title=Graphics_card_compatibility
(Стоит заметить, что, если карты в списке поддерживаемых нет то это ещё не значит, что она не может работать с XNA. Но если ваша карта в списке неподдерживаемых — увы, с ней вам поиграть в «Террарию» не светит)

Пункт 0, только для пользователей MacOS (На Linux не требуется):
0a: macports
0b: набираем в консоли
sudo port install winetricks
sudo port install wine-devel

Пункт 1:
Устанавливаем Wine и Winetricks (если не установился автоматом и если они у вас до сих пор не установлены) — крайне желательно, последних версий.

Пункт 2:
Устанавливаем Steam (можно через web-сайт). Как вариант — можно запустить уже установленный (даже в Windows, если у вас есть доступ к папке с ним). При установке Steam'а, он может начать обновляться, но зависнуть или вылететь в процессе обновления. Просто запустите Steam, он дообновится сам. После обновления — залогиньтесь.

Пункт 3:
Устанавливаем Terraria через Steam и пробуем запустить. Steam так же сам должен начать установку XNA (если он у вас к этому моменту ещё не установлен) во время установки или запуска игры. Если игра не запустится, перейдите к следующему пункту.

Пункт 4:
Выйдите из Steam'а

Пункт 5:
Запустите игру через консоль (терминал):

cd

Например: cd .wine/drive_c/Program Files/Steam/steamapps/common/terraria
(Чтобы перейти в папку с игрой)

wine Terraria.exe
После этого должно появиться сообщение, что вам нужен установленный Mono для Windows

Пункт 6:
Запускаем Winetricks и устанавливаем Mono 2.10 и 2.8 + Так же может понадобиться установка xact и xinput
( Если вы пользуетесь графической оболочкой последних версий Winetricks'а, то нужные пункты будут в меню «Select the default wineprefix» -> «Install a Windows DLL or component» )

Пункт 7а:
Скачиваем .NET 4 отсюда:
www.microsoft.com/downloads/en/details.aspx?familyid=0a391abd-25c1-4fc0-919f-b21f31ab88b7

И устанавливаем. Вручную, запуская файл с помощью Wine'а или
Через консоль:
wine dotNetFx40_Full_x86_x64.exe
(Вместо dotNetFx40_Full_x86_x64.exe может быть полный путь до файла установки. Не забудьте «взять» его в кавычки, если в пути у вас присутствуют пробелы, или ставить знак "\" перед каждым пробелом)

Установка, скорее всего, прервётся и нужно будет её повторять до тех пор, пока установщик не предложит восстановить установленную программу (пункт «Repair» в установщике). Соглашаемся на восстановление, ждём около полминуты и, если процесс «зависнет», «убиваем» его. Нужные нам компоненты уже должны были быть установлены.

Пункт 7б:
Если появляется сообщение что NET уже установлен, то придётся запись о его установке стереть вручную в реестре.
Запускаем regedit
Через консоль:
wine regedit
( Так же можно найти regedit.exe и запустить его вручную. Он, обычно, на виртуальном «Диске C:». Полный путь, обычно, примерно такой: '/home//.wine/dosdevices/c:/windows/regedit.exe' )
и удаляем следующий нод (пункт):
HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v4
Затем возвращаемся к Пункту 7а

Пункт 8:
Возможно (А, возможно, и нет), потребуется скопировать нужные файлы библиотеки в папку с игрой.
Нужные файлы называются
Accessibility.dll, System.configuration.dll, System.dll, System.Drawing.dll, System.Windows.Forms.dll, System.Windows.Forms.DataVisualization.dll and System.XML.dll
(если лишних 200 мегабайт не жалко, можете скопировать всё)
И находятся они в папке
/windows/Microsoft.NET/Framework/v4.0.30319/
на «виртуальном» «Диске C»
(Или же можно попробовать «стащить» их из реально установленной Windows)

Через консоль скопировать можно так:
cd
например: cd .wine/drive_c/Program Files/Steam/steamapps/common/terraria
cp ~/.wine/drive_c/windows/Microsoft.NET/Framework/v4.0.30319/* .

Стоит заметить, что в будущем, при установке обновлённых версий 4-го .NET, название папки, откуда брать файлы, может несколько поменяться.

Пункт 9:
Запускаем Steam, логинимся, запускаем игру.
При этом может появиться окошко с ошибкой, но, после его закрытия, игра через несколько секунд все равно запустится.

Пункт 10: Если ничего не получается, попробуйте сделать всё заново.

С «пираткой» почти всё то же самое, только XNA придётся устанавливать вручную и пути несколько поменяются.

PS Это адаптация английской инструкции и некоторых советов
PPS Игра хорошая, мне не жалко было «отдать» за неё 10 «баксов»
UPDATE: Step by Step Guide
by Tom Geiger on Wednesday May 25th 2011, 5:06
Step by Step Guide from a wiped .wine directory:

tom-geiger.de/?p=163
RE: UPDATE: Step by Step Guide
by John Moffatt on Wednesday May 25th 2011, 18:16
Tom, I simply cannot get .net 4.0 to install via the standalone version. Any tips?
RE: UPDATE: Step by Step Guide
by Edvin on Wednesday May 25th 2011, 20:43
Got it to work on Ubuntu 10.10 with wine 1.3.19

.NET Installer failed with 0x80070643, but all needed files were installed.
RE: UPDATE: Step by Step Guide
by Xavier Penragon on Thursday May 26th 2011, 3:32
Works great on wine 1.3.20 after fixing the register (as described in your step-by-step guide) so it'll install .NET 4

I don't have any sound however.
Geiger's Method
by paulguy on Tuesday May 24th 2011, 12:38
Followed as exactly as possible once, tried some other things, just couldn't make it work reliably. I think we'll just need to wait for .NET 4 to reliably install and run in Wine before we have any hope of this working for most people.
RE: Geiger's Method
by Tom Geiger on Tuesday May 24th 2011, 12:45
Can you tell me the exact points you're getting errors?

I'm constantly updating things, and I hope I can get a virtual machine set up to recreate the process for installing step by step.

It's running on 2 64Bit and my Laptop, which is x86, going to try it from a clean VM once I find the time for it.
RE: Geiger's Method
by paulguy on Tuesday May 24th 2011, 13:37
Pretty much everything works as you said it would, up until running the game creates an unhandled page fault error and crashes. I tried it a couple more times, and those times I can't remember what I did differently, but XNA won't install, which hasn't happened doing anything else before. This is way too random.
RE: Geiger's Method
by Tom Geiger on Tuesday May 24th 2011, 13:41
After getting .NET to run, the installer from Steam installed XNA fine for me. After that I got the game to run after copying mscorlib.dll into the same directory as Terraria.exe.

Updated some stuff in the original Blog post about this and I'll try to install it from a clean setup to get a Howto together.

My best guess right now is that it's the setups doing weird stuff. :-/

by Evilandi666 on Monday May 23rd 2011, 11:27
Why do you open a new Version?

See Update 17-5-2011, Steam should also have this Version.

See also here for a HowTo:
www.terrariaonline.com/threads/terraria-macos-and-linux.1397/page-2#post-85844
(Works for some people, but for most it won't work.)

It's disappointing that people can't read before they post...

by Evilandi666 on Friday May 20th 2011, 17:54
Follow this Guide www.terrariaonline.com/threads/terraria-macos-and-linux.1397/page-2#post-85844

Seems to be working for some people, for me it does not.
RE:
by Cless on Saturday May 21st 2011, 4:03
Tried it on debian squeeze but doesn't work.
Didn't work for me
by paulguy on Saturday May 21st 2011, 4:09
Doesn't work for me. The person's report is rather crap and hard to work from. He didn't specify his Wine version and he didn't get it working from a clean prefix, so it's pretty useless. Someone needs to work on getting this working from an empty prefix and develop a proper howto from an empty prefix to a properly running game I'd do it but I honestly don't know much about Windows and Wine.
RE: Didn't work for me
by Someone on Monday May 23rd 2011, 18:08
Here's what I did to get the game working. Starting from a clean prefix in wine v1.3.20

1. In regedit delete HKLM\Software\Microsoft\NET Framework Setup\NDP\v4
dotNetFX40_Full_x86_x64.exe wouldn't even attempt to install until I deleted that. It was telling me I already had it installed.

2. Install dotNetFX40_Full_x86_x64.exe
www.microsoft.com/downloads/en/details.aspx?familyid=0a391abd-25c1-4fc0-919f-b21f31ab88b7
The install will fail, but all the files you need will be put in.

3. Install xnafx40_redist.msi
www.microsoft.com/downloads/en/details.aspx?familyid=a88c6dec-aeae-42cd-a108-d35c013c3b97

4. Install Terraria

5. Copy all the files from .wine/drive_c/windows/Microsoft.NET/Framework/v4.0.30319 to your Terraria directory

6. Play the game
RE: Didn't work for me
by Evilandi666 on Tuesday May 24th 2011, 10:05
You forgot msxml3, dotNetFX40_Full_x86_x64.exe does not even start without it.

But for me it does not work, Terraria always says
[...]
fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Game"
fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework"
fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Graphics"
fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Xact"
fixme:shell:URL_ParseUrl failed to parse L"Microsoft.Xna.Framework.Input.Touch"
fixme:shell:URL_ParseUrl failed to parse L"System.Drawing"

Unhandled Exception: fixme:advapi:RegisterTraceGuidsW
[...]
It worked for me!
by Joshua on Wednesday May 25th 2011, 10:06
That did it for me, I did however swap a few steps around:

1. wine msiexec /i xnafx40_redist.msi
2. wine reg delete "HKLM\Software\Microsoft\NET Framework Setup\NDP\v4" /f
3. wine dotNetFx40_Client_setup.exe
4. winetricks corefonts
5. wine msiexec /i SteamInstall.msi
6. Installed Terraria via Steam, steam will try to install dot net and it fails..
7. Copy over Accessibility.dll, System.configuration.dll, System.dll, System.Drawing.dll, System.Windows.Forms.dll, and System.XML.dll from C:\windows\Microsoft.NET\Framework\v4.0.30319 into the c:\Program Files\Steam\steamapps\common\terraria folder
8. Play!
RE:
by Ferg on Saturday May 21st 2011, 7:03
RE:
by paulguy on Saturday May 21st 2011, 7:05
Try getting it working in a clean prefix, and noting the steps you took, and what version of Wine. If you don't want to risk breaking your current install, just create a different WINEPREFIX outside of ~/.wine.
Mono
by paulguy on Friday May 20th 2011, 4:51
Tried Mono 2.10, and it gets a bit further, in that it actually throws an exception, which I guess is about not being able to load XNA 4. Installing XNA 4 on Mono 2.10 seems to work, but it doesn't load at runtime due to native assemblies.
Back