Archives by Day

About Rainier

PC gamer, WorthPlaying EIC, globe-trotting couch potato, patriot, '80s headbanger, movie watcher, music lover, foodie and man in black -- squirrel!

Advertising

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





'CoD: United Offensive' - v1.51b Linux Update Patches Available NOW

by Rainier on March 30, 2005 @ 6:27 p.m. PST

Activision has released new Linux patches for Infinity Ward's WW2 based FPS Call of Duty: United Offensive. The patch brings your dedicated server to v1.51b and closes some exploits, fixed MG42 bug, other crashes. Read more for download links ...

Get the CoD: UO v1.51b Linux Server off WP (145/360mb)

1. Introduction

This document explains how to install the Call of Duty(tm): United Offensive(tm) Linux server version 1.51b. Please note that version 1.5 of the Call of Duty(tm) Linux Server must already be installed.

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:

./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

IMPORTANT NOTE: Version 1.5 of the Call of Duty(tm) Linux Server must already be installed. The Call of Duty(tm) server package is separate from United Offensive(tm), which is this package.

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 separately 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.5 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/uo" directory to wherever you your server's new "uo" directory, which was created when copying Disc One.
- 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 (COD1.5 plus UO) is around 2.2 gigabytes.
- 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.

IMPORTANT NOTE: Version 1.5 of the Call of Duty(tm) Linux Server must already be installed. The Call of Duty(tm) server package is separate from United Offensive(tm), which is this package.

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 separately 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!
- Upgrade to COD 1.5 if you haven't already. This is a different package, and beyond the scope of this documentation.
- 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 re-adding your mods one by one to see if any are incompatible with the new patch.

4. Upgrading a COD:UO 1.51 Linux server

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. If you've already correctly patched to 1.51, then there's no difference between these packages beyond download size.

- 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 used the "small" package, 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 re-adding your mods one by one to see if any are incompatible with the new patch.

5. Support Channels

There are a LOT of knobs to tweak to customize and automate your server, but it is beyond the scope of this documentation. Please refer to the admin manuals for any Quake 3(tm) based Multiplayer game (including Quake 3 Arena(tm), Return to Castle Wolfenstein(tm), etc) for specifics.

There is a mailing list for discussion and support of Call of Duty(tm) and Call of Duty(tm): United Offensive(tm) Linux servers. Hundreds of experienced server admins and even some of the game's developers monitor this list, and are eager to help with politely asked questions. Send a blank email to cod-subscribe@icculus.org to get on the list, and list archives can be seen
at:

http://icculus.org/cgi-bin/ezmlm/ezmlm-cgi?38

Bug reports should NOT be sent to the list. We have a web-based bugtracking system for this. If you don't report bugs there, we don't promise to even be aware of them, let alone fix them! You can find the bug tracker here: https://bugzilla.icculus.org/

6. FreeBSD users

This server is known to work on FreeBSD with the Linux binary compatibility layer. If it doesn't, we consider it a bug and appreciate the report since we won't necessarily be testing on FreeBSD ourselves. Please note, that as of version 1.4, the server requires that you use the linux_base-8 package for binary compatibility (it has a C++ runtime library we now need that previous linux_base packages don't supply...alternately, see notes about libstdc++ in this document's introduction if you can't or won't update linux_base).


7. 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.
1.51b : Closed some exploits, fixed MG42 bug, other crashes.

// end of README ...

blog comments powered by Disqus