Update lfs-uefi hint
[linux_from_scratch_hints.git] / tacops.txt
blobbbce6494926a413a8af895817aeab9491bbeb1b8
1 TITLE:          Tactical Ops: Assault on Terror
2 LFS VERSION:    Any that uses glibc 2.3.x
3 AUTHOR:         Gard Spreemann <g_spreemann@yahoo.com>
4 DATE:           2003-10-23
5 LICENSE:        GNU Free Documentation License version 1.2
6 SYNOPSIS:       Install, update and play "Tactical Ops: Assault on Terror" on an
7                 LFS system using glibc 2.3.x.
8 PRIMARY URL:    http://gspr.dyndns.org/~gspr/lfs-hints/tacops.txt
10 DESCRIPTION:
11 Background:
12 Tactical Ops ("TacOps" from now on) was originally an Unreal Tournament mod, but
13 is today a standalone game using the Unreal Tournament engine. Luckily, this
14 makes it playable under GNU/Linux. Support for this is rather good (see
15 http://www.icculus.org/~ravage/tacops/), but systems that use glibc 2.3.x
16 (for which the Linux installer and updaters were not compiled) will run into
17 problems with the straightforward approach described on the previously mentioned
18 page. I thought I'd explain a quick and easy way to get it working.
19 If you don't know what TacOps is, check out http://www.tactical-ops.to - it is a
20 great game.
22 The problem:
23 The installer needs Wine to unpack certain files, and comes with
24 a precompiled Wine for this purpose. The problem is that this Wine is linked
25 to an older glibc, and will not work with glibc 2.3.x. The problem is
26 described at http://icculus.org/~ravage/tacticalops/faq.html where a solution
27 is also presented. However, this solution did not work for me. If it works for
28 you, then you don't need to read on.
30 PREREQUISITES:
31 * TacOps retail(!) CD
32 * XFree86 with OpenGL support
33 * GNU/Linux system with glibc 2.3.x
34 * Basic tools, such as wget
36 HINT:
37 Notes:
38 Whatever you do related to this hint is your own responsibility. If your hard
39 drive gets wiped, or your computer explodes, that is your own responsibility.
40 I have no responsibility for whatever damages may result from following this
41 hint. Nor am I affiliated with the TacOps developers or Icculus.
43 I. Installing Wine:
44   1)    We need a Wine linked against our own glibc. If you do not already have
45         Wine installed, compile and install it now. Follow the documentation at
46         http://winehq.org or the Wine hint if you are in doubt about what to do.
47   2)    Make sure root has a working Wine configuration. As root, try:
48          wine notepad
49         If you get an error message about /root/.wine not being available, you
50         need to set up a working Wine configuration for root. This is described
51         in the good documentation provided at http://winehq.org.
53 II. Downloading, fixing and running the installer:
54   1)    First, you will obviously need the TacOps Linux installer. Get it at
55         http://icculus.org/~ravage/tacticalops/files/tacticalops-3.1.5-install
56         -x86.run (one line).
57   2)    Mount the TacOps CD wherever you wish, e.g:
58          mount /dev/cdrom /mnt/cdrom
59   3)    Extract the files from the installer:
60          sh ./tacticalops-3.1.5-install-x86.run --keep
61         The installer will fail right away with a pretty segfault if X is not
62         available, but not to worry, the contents of the intaller is now
63         available to us (hence the --keep option). If X is available, the
64         installer will start - just exit it.
65   4)    Enter the directory created by the command in the previous step:
66          cd tacticalops-3.1.5-install
67         From here on, you have two options; your choice will depend on
68         whether X is available for the installation or not. The "b" option is
69         untested by me, and is only for those who do not have X available
70         during the install. If you're going to follow the "b" option, you still
71         need to do step 5. If you are a newbee, it is preferable not to follow
72         the "b" option.
73   5)    This is where this hint and the FAQ differ. Why? Simply because the
74         FAQ's way didn't work for me. I might have done stuff the wrong way,
75         but hey...
76         Enter the Wine directory in the dir created by the installer in step 3:
77          cd wine
78         Now, for each of the binary files here, locate your system-wide Wine's
79         equivalent. Not all files are available system-wide, but the ones that
80         are, you delete from the installer's wine dir and replace with symlinks
81         to their system-wide equivalents. At least "wine" and "wineserver"
82         should be available, or something is severely wrong with your Wine
83         installation.
84         The installer will now use your system-wide Wine, linked against
85         your glibc, which is what we want.
86   5b)   __Only if X is not available during the install! UNTESTED!__
87         The console installer itself, unlike the graphical installer, needs
88         patching to work with glibc 2.3 as well. Enter the console installer's
89         directory and remove the installer:
90          cd setup.data/bin/Linux/x86
91          rm setup
92         Download a working (hopefully) console installer to that directory, and
93         make it executable:
94          wget http://zerowing.idsoftware.com/linux/setup-RH9/setup
95          chmod 755 setup
96         Let's hope it works... If not, try the regular way, using the X-based
97         installer. I'd appreciate feedback on this, by the way.
98   6)    If you did not follow the "b" option, make sure X is available to the
99         installer - this is vital! In the top level directory of the
100         tacticalops-3.1.5-install dir, run the installer:
101          SETUP_CDROM=/path/to/cd ./setup.sh
102         Install the game. If you see errors regarding the extraction of the
103         files then Wine is not doing its thing correctly, or you didn't properly
104         mount the CD, or the CD is damaged.
106 III. Downloading the patches and patching the game:
107   1)    Did you think you were done? Oh no! We're now moving into territory
108         which, at the time of writing, was not covered by the Icculus FAQ.
109         You may delete the directory created in step II.3.
110         Download each and every Linux patch for the game, from 3.3.2 and up to
111         the latest one. At the time of writing, you would be getting these
112         patches:
113         http://icculus.org/~ravage/tacticalops/files/tacticalops-3.3.2-x86.run
114         http://icculus.org/~ravage/tacticalops/files/tacticalops-3.4.0-x86.run
115   2)    The patches too need to some patching to work with glibc 2.3.x. They
116         do not need Wine though.
117         Extract the contents of the first patch (not inside the TacOps dir):
118          sh ./tacticalops-3.3.2-x86.run --keep
119         The patch will segfault "nicely". Enter the dir left by the patch:
120          cd tacticalops-3.3.2
121         Enter the subdirectory in which the patcher program is located:
122          cd bin/Linux/x86
123         Remove the glibc 2.3 incompatible patcher:
124          rm loki_patch
125         Download the glibc 2.3 compatible patcher:
126          wget http://gspr.dyndns.org/~gspr/lfs-hints/files/loki_patch
127         (It would be very nice if someone could mirror this, as my connection is
128         not too fast, and the site from which I got the file is even slower).
129         Make it executable:
130          chmod 755 loki_patch
131   3)    Return to the top level directory (tacticalops-3.3.2) and run:
132          ./update.sh
133         It should patch your game nicely.
134   4)    Repeat step 2 and 3 for each patch up the chain. You must make sure to
135         apply every patch in the chain.
136   5)    Run the game. It damn well better work.
138 CHANGELOG:
139 [2003-09-01]
140   * First version.
141 [2003-09-02]
142   * Minor grammatical and spelling errors corrected.
143   * Other minor changes.
144 [2003-10-22]
145   * Adapted the hint to the new format.
146   * Seems I had accidentally removed the loki_patch file from my server. It's
147     back now.
148 [2003-10-23]
149   * Some more adaption for the new format. Hopefully everything is ok now.
151 -------
152 I hope this hint was of some help.
153 Thanks to the Icculus people for making TacOps and so many other nice games work
154 with Linux. And of course thanks to the LFS people!