April 14, 2006

Old Loki Games Under New(ish) Linux


Technical Tidbits
I've recently acquired a bunch of Loki releases, so I thought I'd post a few notes on how I got them working under my Slackware 9.1 Linux box (A7V333, XP2100+, nVidia Ti4200, sb Live!).
My OS' configuration : 2.4.31 kernel. Sound is configured with OSS emulation, video uses nVidia's 7676 graphics module.
Need help using Slack9.1 & nVidia cards?




Releases that "just work"
With the following games, I was able to simply run the install script then use  loki_update  from a console to update them, and they worked "out of the box".

Descent 3
Eric's Ultimate Solitaire
Railroad Tycoon II
MythII Soulblighter (see note below)
Sim City 3000 Unlimited
Heavy Metal FAKK2

It is important to install the latest version of loki_update prior to installing any of your games. You'll need v1.0.13 of loki_update (see next paragraph) to make these games happen, a full release is now available as a seperate download.
You may as well download & install the loki_uninstall software from them, while you are at it.
Alternately, if you've already installed any Linux game released since UT2003, then you've probably already got the latest version.


Releases that do not "just work"
Heavy Gear II
Heretic2
Sid Meier's Alpha Centauri
Heroes of Might and Magic III



Before I explain specific issues, let's address the   loki_update   problem you'll encounter.
There is a tool called   loki_update  . It comes on some Loki releases, but they are a tad old, and they will self-install if you do not already have a copy. I believe version 1.0.13 is the last release, but so far, I have acquired no Loki software that installs this version. This is a problem, because if you've already got a previous version (less than 1.0.12), it will try and update itself  to version 1.0.12. It will fail, because there is no GPG signature file available for download.

If you don't have a newer game on your system, the installer is offered as a stand-alone installation from here. Download and install both the   loki_update   and   loki_uninstall   software available, the installation process for each of these is straightforward.

Now go install each of your Loki releases. When you're done, you will want/need to update them. From a console in X, run

loki_update
which will present you with a list of games it has found. It will ask you choose which games you want to patch. Once you've made your selection, it will present a popup window stating that it is attempting to connect to a file server. At this point I click the "choose" button on the bottom left, and then (for the Loki games) select "sunsite.dk" or "ftp.planetmirror.com", because I find them the fastest, but the program will automatically work its way through the available mirrors if you leave it alone (if you want to upgrade UT2003, choose the "...epicgames..." selection). It will download the files and do its thing, but will eventually hang when trying to confirm the GPG signature of the file. It is hanging because it is trying to get a GPG confirmation key from the Lokigames website, but I don't believe they've supported this since their bankruptcy. You can click "cancel" on the bottom left of the popup window, and it will give up on the GPG confirmation, then finish installing the update.



Games loki_update 1.0.13 Works On
*******************************************

UT2003
Descent 3
Eric's Ultimate Solitaire
Railroad Tycoon II
MythII Soulblighter
Heavy Metal FAKK2 (no updates available online, but there is an update. See below)



Games loki_update 1.0.13 Does Not Work On
*****************************************************
Sid Meier's Alpha Centauri (smac)
Heroes of Might and Magic III
Heretic2
   The problem with updating each of these games is that it cannot verify the patch data. It returns an error, something like
loki_patch --verify patch.dat
The workaround    I've stumbled upon    is to run   loki_update   & choose to update one game at a time. When it fails, it will leave the downloaded files in
    ~/.loki/loki_update/tmp/
So, to update SMAC for instance, from the    ~/.loki/loki_update/tmp/    directory run the SMAC install file with a couple of switches to retain the unarchived data in a newly created directory:
     ./smac-6.0a-x86.run   --keep   --target ./smacfiles
Puts all the pertinent data into the current directory under
     smacfiles/
Now, you'll need a different version of loki_patch.    I got it here    . I know absolutely nothing about it, good/bad/ugly. It apparently worked for me. Download it and replace original copy in
  ~/.loki/loki_update/tmp/smacfiles/bin/Linux/x86/loki_patch
Now go back to the directory
    ~/.loki/loki_update/tmp/smacfiles/
and run the updater in there
    sh ./update.sh
That's it. It should have updated itself now. Use the same technique to update Heroes3 and Heretic2, but bear the following in mind:
With Heroes3, you will be prompted to enter the path to the installation, and it has no default directory. Mine is in   /usr/local/games/Heroes3   , your's is probably similar.
With Heretic2, you will have to first upgrade to 1.0b, then redo it it for 1.0c, then redo it for the extra maps, in three separate steps.


  Other Issues with Game Installations
***********************************************
Heretic2
  Heretic2 installation is kinda borked. You can do the install, but the path to the binary executable got mixed up somehow. When you install the game, it will return an error message about not being able to find    bin/x86/heretic2  . Don't sweat it though, because everything else has been installed. Simply copy the binary into the correct hard drive directory and symlink it into /usr/bin.
cp  /cdrom/bin/x86/glibc-2.1/heretic2    /usr/local/games/heretic2/
ln  -s  /usr/local/games/heretic2/heretic2    /usr/local/bin
  Now run   loki_update  , compensating for the problems as issues in the previous paragraph.
  If you are using KDE (perhaps others?), the icon is also busted. From the install directory, open   /heretic2/icon.bmp    with the graphics program    xv    , then save it as a png format picture. When you go to define the icon, it will display two of them now. One is the broken   icon.xpm   , the other is our new    icon.png   . Only ours will work properly.

Heavy Gear II
  Heavy Gear II relies on an older version of true type fonts. When you first install Heavy Gear II, then try to run it ( from a console with the command   hg2  ), it returns an error message regarding    libttf.so.2   You will need to download and compile  freetype-1.3.1 . Download the file freetype-1.3.1.tar.gz, decompress & compile with the usual
./configure; make; make install
Finish with a symlink into /usr/lib
ln  -s   /usr/local/lib/libttf.so.2.2.0   /usr/lib/libttf.so.2
  Now Heavy Gear II will play. I am currently using Nvidia's 5336 modules, and they seem to work fine, but if you are getting segfaults at the end of the first round or when aborting, try running the game with the  -u  switch (see  hg -h  for information/help).
hg -u
Thanks Claire for pointing out that hg2 wasn't working perfectly, based on my original webpage.

Sid Meier's Alpha Centauri
  Greg L. pointed out that multiplayer internet play crashes hard as soon as it is selected. I do not know why... yet.

Sim City 3000 Unlimited
  Not a big deal, but perhaps a bit confusing for the first-time user. With a standard installation, the intro movie doesn't play for me. There is sound though, so you know that *something* is happening. Just hit enter and that'll take you to the main menu. Alternately, if you really want the intro movie, precede the call to   sc3u  with   SDL_VIDEO_YUV_HWACCEL=0  . So, from a console prompt, you'd invoke it like this:
SDL_VIDEO_YUV_HWACCEL=0   sc3u
and you can do this with the KDE menu editor as well, just use that line in the "Command" field.

Heavy Metal 200 FAKK2
  James C.G. pointed out that there is a patch for HMF2 called pak4.pk3. Good ol' Chunky at icculus fixed a bug that is apparently present. Click here to make it all better. Thanks James.

MythII Soulblighter
  You might experience some issues with the in-game movies in Myth2, some installations seem to go down cleanly, but then the game won't play. If that is the case, try moving into the myth2 directory and renaming the directory
  /cutscenes
to something else. This keeps the movies from playing, but may at least get the game rolling.
mv   /usr/local/games/myth2/cutscenes  
/usr/local/games/myth2/cutscenes_original
  I believe that after you've run the game successfully once, you can rename the directory back to  /cutscenes   and the movies will work properly.
mv   /usr/local/games/myth2/cutscenes_original   /usr/local/games/myth2/cutscenes


Others?
  I've got a few non-Lokigames games also, click here for a similar webpage.


HTH
I am   Dan