I have managed, previously using Red Hat 8, and latterly on SuSE 8.2, to get TTD to run with the patch. Here's a brief how-to:
- Ensure Wine is installed. Versions up to 20041201 or after 20050531 (lastest CVS snapshot) work.
- Copy the necessary TTD files to ~/.wine/fake_windows i.e. where your virtual C: drive for Wine resides, or to some other directory that can be reached by Wine. Ensure files are in a writable directory.
- Install TTDPatch 2.01 alpha 46 or higher
- To start TTD, simply run (from the TTD directory), wine ttdpatchw.exe
and that should be it!
If TTDPatch shows a warning and wants you to press "Y" to continue, you must add the "-y" option to the command line or "alwaysyes on" to the configuration file since Wine does not accept console input directly.
Normally, TTDPatch 2.5 and up should run fine without any registry entries, as long as registry.ini (automatically created if missing) is correct. This is the preferred way of starting TTDPatch on Wine, but if you do need to use the TTD registry keys, the following may serve as template for the entry in ~/.wine/system.reg:
[Software\\\\FISH Technology Group\\\\Transport Tycoon Deluxe] 1074205274 "DisplayModeNumber"=dword:00000003 "ForceDIBSection"=dword:00000000 "FullScreen"=dword:00000001 "HDPath"="C:\\\\MPS\\\\TTWin95\\\\" "Installed"=dword:00000003 "Language"=dword:00000000 "MidiType"=dword:00000001 "MousePointer"=dword:00000000 "RetraceSync"=dword:00000000 "SafeMode"=dword:00000000 "UpdateMode"=dword:00000001
(change the HDPath as appropriate if that isn't where you installed TTD)
- 1 If you are trying this method, let us know how you did
- 1.1 OpenSuSE 10.2
- 1.2 Ubuntu Linux 5.10 ("Breezy Badger"), kernel 2.6.12, alpha 68, Fujitsu
- 1.3 Ubuntu Linux 5.10 (on vmware player) kernel 2.6.12, alpha 66c, wine 9.3 (winehq deb) eis_os
- 1.4 Gentoo Linux 1.4, kernel 2.6.1, alpha 16, alpha 18, Han
- 1.5 Fedora Core 1, alpha 11 and alpha 14, Dave
- 1.6 Debian unstable, kernel 2.6.2, Wine 20040213, TTDPatch 2.0.1 alpha 16, Robert Norris
- 1.7 Mandrake 9.0, Wine 20040309, TTDPatch 2.0.1 alpha 24, Owen Rudge
- 1.8 RedHat 8.0, Wine 20030115, TTDPatch 2.0.1 Alpha 25, Phil Veale
- 1.9 Gentoo Linux kernel 2.6.8
- 1.10 FreeBSD 5.3
If you are trying this method, let us know how you did
Works fine on OpenSUSE 10.2 (and below) with Wine 0.9.20 and above - only, since Wine 0.9.30 (inclusive) the fullscreen switch doesn't work anymore. According to Wine Weekly News a large scale change in D3D code took place around the 0.9.29+ versions.
Ubuntu Linux 5.10 ("Breezy Badger"), kernel 2.6.12, alpha 68, Fujitsu
Game works fine, but there is no audio at all. A lack of MIDI is understandable (as I do not have any MIDI sequencers available), but the loss of sound effects is a mystery...
Ubuntu Linux 5.10 (on vmware player) kernel 2.6.12, alpha 66c, wine 9.3 (winehq deb) eis_os
No audio, mci errors, Game seems to works fine, the mouse works abit odd because of double emulation. Versionsinfo collecting works, the keyboard handling on console is broken, starteing with wineconsole (keyboard input will work) but will not start the overlay file.
Gentoo Linux 1.4, kernel 2.6.1, alpha 16, alpha 18, Han
This works fine with Gentoo Linux 1.4 with kernel 2.6.1. Much easier than Winex, and works just as good.
And indeed, music is not working (I play without anyway, and if I wanted it, I'd play MP3s). Stations are fine with me.
Fedora Core 1, alpha 11 and alpha 14, Dave
[This has been fixed in alpha 16. This was due to the ttdpatchw.exe file being malformed enough that wine couldn't run it.]
If you are suffering segfaults, or getting error=21, you need to disable prelinking and exec-shield.
Disable prelinking by editing /etc/sysconfig/prelink in the obvious place, and then running prelink -ua to remove prelink information. Disable exec-shield by changing the value in /proc to 0 (hint: find /proc -name exec-shield).
Debian unstable, kernel 2.6.2, Wine 20040213, TTDPatch 2.0.1 alpha 16, Robert Norris
- I had to do LANG=en_US, because my machine uses the C locale by default. No big deal.
- Sound effects work, music doesn't. Wine spits out errors about their being no MCI handler for type "MUSIC". I added a line to system.ini using Wine's "mciseq.drv", which silenced the errors, but still gave no music. Installing dxmci.dll causes a rather spectacular crash.
Mandrake 9.0, Wine 20040309, TTDPatch 2.0.1 alpha 24, Owen Rudge
- Sound effects work, music doesn't. Wine spits out errors about their being no MCI handler for type "MUSIC". I don't have MIDI working under Linux without using something like Timidity anyway.
- If the game runs in full screen, I can't move the mouse, and I have to kill X remotely to get out of it.
RedHat 8.0, Wine 20030115, TTDPatch 2.0.1 Alpha 25, Phil Veale
It Works :)
At first it worked absolutely perfectly, with the exception of music. After playing around with the registry settings a bit trying to get it to work though, I seem to have broken it. I also managed to get this working on WineX and there are some screenshots here: TTDWinexPhil
I managed to get KMidi to play the TTD Midi files, but on trying to run Wine at the same time the system starts to lock up, it runs out of memory or something. So trying this is not recommened.
Wine, unlike WineX, doesn't draw this in a window - it just draws over the top 640x480 of the screen. I just hit CTRL-ALT-MINUS and X resizes to fit.
It all plays really quite well.
Gentoo Linux kernel 2.6.8
Works great using standard Wine. Here's some proof: screenshot. It's windowed here but it also runs fullscreen without problems. In fact, it's running really smooth.
The fact that the music didn't work (I didn't even bother to try music, by the way) was solved by downloading JFS's mp3 files which still have the old synthetic midi sound just like back in the old days when I first played TTDX.
(note: still running, now on kernel 2.6.9 with xorg instead of X11)
Works great using wine 20041201 from ports, was using patch 2.0.1 alpha 41.
Not linux, but didn't see point in listing it elsewhere.