Archives by Day

About Judy

As WP's managing editor, I edit review and preview articles, attempt to keep up with the frantic pace of Rainier's news posts, and keep our reviewers on deadline, which is akin to herding cats. When I have a moment to myself and don't have my nose in a book, I like to play action/RPG, adventure and platforming games.

Advertising

As an Amazon Associate, we earn commission from qualifying purchases.





'Call of Duty' & 'United Offensive' - Linux Update Patches Available NOW

by Judy on Dec. 20, 2004 @ 5:42 p.m. PST

Activision has released new Linux patches for Infinity Ward's WW2 based FPS Call of Duty and its expansion pack, Grey Matter's 'United Offensive.' The Call of Duty patch brings your retail game to v1.5 while the United Offensive will become v1.51. Read more for download links ...

Get the Call of Duty v1.5 Linux update patches off WP (31/195mb)

Get the CoD: UO v1.51 Linux update patches off WP (150/370mb)

Call of Duty Linux server v1.5

!! IMPORTANT !!
Call of Duty(tm) Linux Server is NOT SUPPORTED by Activision(r) Customer Support. Please do not call with any questions related to this free beta product. There are other channels to aid you listed at the bottom of this document.

=============================

1. Introduction

This document explains how to install the Call of Duty(tm) Linux server version 1.5. Installation from scratch and upgrading an existing installation are both covered.

Usage is very similar to Call of Duty(tm) and Return to Castle Wolfenstein(tm)... many of the console commands, command lines, and cvars are identical.

MOD USERS: PLEASE READ...
It is recommended that any user modifications that have been installed to the Call of Duty(tm) directory be removed before installing this package. These modifications are not supported by Activision(r) and may not be compatible with some of the new features that are included.

IF YOU HAVE A PROBLEM WITH "LIBSTDC++.SO.5" ...
(This is a frequent-enough problem to merit discussion in the introduction.)

If you are reading this, it's probably because you tried to start your Linux server and saw this message:

./cod_lnxded: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

COD is a C++ program built with gcc 3.2.3, which means it needs a system library specific to gcc 3.2. Older Linux systems won't have this installed, and we're starting to see newer Linux distributions that don't have this either, since they are supplying an incompatible gcc 3.4 version. The good news is that you can drop the needed library into your system without breaking anything else.

Here is the library you need, if your Linux distribution doesn't supply it:
http://icculus.org/updates/cod/gcc3-libs.tar.bz2

You want to unpack that somewhere that the dynamic linker will see it (if you are sure it won't overwrite any files, you can even use /lib).

The brave can put it in the same directory as the game and run the server like this:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./cod_lnxded

Now the server will start.

2. Installation From Scratch

There are two server packages...a "small" and "large" version. The size difference is because small version requires a program named xdelta. The xdelta program is shipped with many Linux distros, and can be found here: http://freshmeat.net/projects/xdelta/

The large version doesn't need xdelta.

- Get the retail Call of Duty(tm) discs.
- Copy the contents of Disc One's "Setup/Data" directory to wherever you installed the Call of Duty(tm) Linux server. There should be a "localization.txt" file in the root of this directory, and a "main" subdirectory).
- Copy the contents of Disc Two's "Setup/Data" directory to your server (should be just a "main" directory...add it to the contents of the previous disc's "main").
- Alternately, you may install on Windows(r) and copy the installed game to your Linux system, but many will opt to skip this step since the data files are uncompressed and easily accessible on the discs. Final installation size is around 1.2 gigabytes.
- Unpack this archive in the root of the newly-copied tree, so "cod_lnxded" is in the same directory as "localization.txt" and "game.mp.i386.so" is in the "main" directory, etc. This may overwrite some files; this is normal.
- (If you have the "large" package, skip this step.) If you have the "small" package, you now need to patch some files. The command line looks something like:
cd /where/i/copied/callofduty
xdelta patch pak0.pk3.xdelta main/pak0.pk3 tmp.bin
mv tmp.bin main/pak0.pk3
...if this doesn't work, you should get the "large" package and unpack it like you did the small package, and it'll give you the same results. Either way, it's now safe to delete the pak0.pk3.xdelta file.
- Now, run the server:
cd /where/i/copied/callofduty
./cod_lnxded

- When you see "Started tty console (use +set ttycon 0 to disable)", the server has started, but you need to start a map before the server will accept connections. At this point, type:

map mp_chateau

("mp_chateau" being a given map's name).

- Now you should see your server in the in-game browser. You will now want to customize your server, but that is beyond the scope of this document.

3. Upgrading an existing COD Linux server

This assumes you have a functioning COD server. You should be able to upgrade from any previous version directly to 1.5.

If you aren't sure of your server's state, or want to be safe, you should start with section 2 of this document ("INSTALLATION"), above, and ignore this section.

There are two patch packages...a "small" and "large" version. The size difference is because small version requires a program named xdelta. The xdelta program is shipped with many Linux distros, and can be found here: http://freshmeat.net/projects/xdelta/

The large version doesn't need xdelta.

- Shutdown your existing COD server if it is currently running.
- Make a backup of your existing COD server's directory, just in case.
- Remove any mods you've installed. Incompatible mods left in an upgraded server are among the most frequent bug reports!
- Unpack this archive in the root of the newly-copied tree, so "cod_lnxded" is in the same directory as "localization.txt" and "game.mp.i386.so" is in the "main" directory. It may overwrite files; this is normal.
- (If you have the "large" package, skip this step.) If you have the "small" package, and haven't done so in previous patches, you now need to patch pak0.pk3. This only needs to be done once! If you've done it for a previous patch, attempting to do so again will fail!
The command line looks something like:
cd /where/i/copied/callofduty
xdelta patch pak0.pk3.xdelta main/pak0.pk3 tmp.bin
mv tmp.bin main/pak0.pk3
...if this doesn't work, you should get the "large" package and unpack it like you did the small package, and it'll give you the same results. Either way, it's now safe to delete the .xdelta file.
- Now the server can be restarted, and should function as before, except with the new patch fixes and features. You should experiment with readding your mods one by one to see if any are incompatible with the new patch.

Call Of Duty: United Offensive v1.51

!! IMPORTANT !!
Call of Duty(tm): United Offensive(tm) Linux Server is NOT SUPPORTED by Activision(r) Customer Support. Please do not call with any questions related to this free beta product. There are other channels to aid you listed at the bottom of this document.

1. Introduction

This document explains how to install the Call of Duty(tm): United Offensive(tm) Linux server version 1.51.

Usage is very similar to Call of Duty(tm) and Return to Castle Wolfenstein(tm)... many of the console commands, command lines, and cvars are identical.

MOD USERS: PLEASE READ...
It is recommended that any user modifications that have been installed to the Call of Duty(tm) directory be removed before installing this package. These modifications are not supported by Activision(r) and may not be compatible with some of the new features that are included.

IF YOU HAVE A PROBLEM WITH "LIBSTDC++.SO.5" ...

If you are reading this, it's probably because you tried to start your Linux server and saw this message:

./coduo_lnxded: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

COD:UO is a C++ program built with gcc 3.2.3, which means it needs a system library specific to gcc 3.2. Older Linux systems won't have this installed, and we're starting to see newer Linux distributions that don't have this either, since they are supplying an incompatible gcc 3.4 version. The good news is that you can drop the needed library into your system without breaking anything else.

Here is the library you need, if your Linux distribution doesn't supply it:
http://icculus.org/updates/cod/gcc3-libs.tar.bz2

You want to unpack that somewhere that the dynamic linker will see it (if you are sure it won't overwrite any files, you can even use /lib).

The brave can put it in the same directory as the game and run the server like this:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./coduo_lnxded

Now the server will start.

2. Installation From Scratch

There are two server packages...a "small" and "large" version. The size difference is because the small version requires a program named xdelta. The xdelta program is shipped with many Linux distros, and can be found seperately here: http://freshmeat.net/projects/xdelta/

The large version doesn't need xdelta.

- Get the retail Call of Duty(tm): United Offensive(tm) discs.
- Copy the contents of Disc One's "Setup/Data" directory to wherever you installed the Call of Duty(tm) 1.41 Linux server. There should be a "localization.txt" file in the root of this directory, and a "main" subdirectory).
- Copy the contents of Disc Two's "Setup/Data" directory to your server (should be just a "uo" directory...add it to the contents of the previous disc's "uo").
- Alternately, you may install on Windows(r) and copy the installed game to your Linux system, but many will opt to skip this step since the data files are uncompressed and easily accessible on the discs.
- Unpack this archive in the root of the newly-copied tree, so "coduo_lnxded" is in the same directory as "localization.txt" and "game.mp.uo.i386.so" is in the "uo" directory, etc.
- (If you have the "large" package, skip this step.) If you have the "small" package, you now need to patch some files. The command line looks something like:
cd /where/i/copied/callofduty
xdelta patch pakuo00.pk3.xdelta uo/pakuo00.pk3 tmp.bin
mv tmp.bin uo/pakuo00.pk3
xdelta patch pakuo01.pk3.xdelta uo/pakuo01.pk3 tmp.bin
mv tmp.bin uo/pakuo01.pk3
...these commands won't output anything unless there is a problem. If the patching doesn't work, you should get the "large" package and unpack it like you did the small package, and it'll give you the same results. Either way, it's now safe to delete the .xdelta files and reclaim about 100 megabytes of disk space.
- Now, run the server:
cd /where/i/copied/callofduty
./coduo_lnxded

- When you see "Started tty console (use +set ttycon 0 to disable)", the server has started, but you need to start a map before the server will accept connections. At this point, type:

map mp_cassino

("mp_cassino" being a given map's name).

- Now you should see your server in the in-game browser. You will now want to customize your server, but that is beyond the scope of this document.

3. Upgrading a COD:UO 1.41 Linux server

This assumes you have a functioning 1.41 server (the letter afterwards, i.e. - "1.41e" is irrelevant for this discussion).

If you aren't sure of your server's state, or want to be safe, you should start with section 2 of this document ("INSTALLATION"), above, and ignore this section.

There are two server packages...a "small" and "large" version. The size difference is because small version requires a program named xdelta. The xdelta program is shipped with many Linux distros, and can be found seperately here: http://freshmeat.net/projects/xdelta/

The large version doesn't need xdelta.

- Shutdown your existing COD:UO server if it is currently running.
- Make a backup of your existing COD:UO server's directory, just in case.
- Remove any mods you've installed. Incompatible mods left in an upgraded server are among the most frequent bug reports!
- Unpack this archive in the root of the newly-copied tree, so "coduo_lnxded" is in the same directory as "localization.txt" and "game.mp.uo.i386.so" is in the "uo" directory. It will overwrite several files.
- (If you have the "large" package, skip this step.) If you have the "small" package, you now need to patch some files. The command line looks something like:
cd /where/i/copied/callofduty
xdelta patch pakuo00.pk3.xdelta uo/pakuo00.pk3 tmp.bin
mv tmp.bin uo/pakuo00.pk3
xdelta patch pakuo01.pk3.xdelta uo/pakuo01.pk3 tmp.bin
mv tmp.bin uo/pakuo01.pk3
...these commands won't output anything unless there is a problem. If the patching doesn't work, you should get the "large" package and unpack it like you did the small package, and it'll give you the same results. Either way, it's now safe to delete the .xdelta files and reclaim about 100 megabytes of disk space.
- Now the server can be restarted, and should function as before, except with the new patch fixes and features. You should experiment with readding your mods one by one to see if any are incompatible with the new patch.

CHANGELOG:
1.41 : Initial release
1.41a : Removed glibc 2.3 dependency, fixed a memcpy() overlap, changed README to unix endlines.
1.41b : Fixed crash on startup some admins were seeing (we blew the stack with a couple large, stack-allocated arrays).
1.41c : Fixed a different crash on startup some admins were seeing (we blew the stack here, too), and fixed the "51230 files in pk3 files" console message to not grow incorrectly on map load.
1.41d : Fixed heavy CPU loads on empty servers when vehicles were present.
1.41e : Uninitialized memory fixes (jeep crash fix).
1.51 : Linux server to match Windows 1.51 patch, updated README to comment on installation vs patching and other topics.

blog comments powered by Disqus