Games

From Segfault
Jump to navigation Jump to search

Doom 3

Doom 3

Duke Nukem

DOSBox

While starting up DUKE3D.EXE the SoundFX card would not be recognized and exits with:

Error initializing sound

The trick is to start SETUP.EXE instead and configure the SoundFX card with the "correct parameters". If configured incorrectly, SETUP.EXE will report:

Sound blaster not responding on selected port

We can look at the DOSBox configuration first:

$ grep -A4 ^sbt ${HOME}/.config/dosbox/dosbox-staging.conf 
sbtype  = sb16
sbbase  = 220
irq     = 7
dma     = 1
hdma    = 5

...and then use these settings to configure the soundcard with SETUP.EXE, resulting in something like the following:

$ cat DUKE3D.CFG 
[...]
BlasterAddress = 0x220
BlasterType = 6
BlasterInterrupt = 7
BlasterDma8 = 1
BlasterDma16 = 5

EDuke32

The setup is pretty straightfoward:[1]

git clone https://voidpoint.io/terminx/eduke32.git eduke32-git
cd eduke32-git

sudo dnf install g++ nasm mesa-libGL-devel mesa-libGLU-devel SDL2-devel SDL2_mixer-devel alsa-lib-devel libvorbis-devel libvpx-devel gtk2-devel flac flac-devel
make -j$(getconf _NPROCESSORS_CONF) RELEASE=0

Maybe download the Polymost High Resolution Pack, and then:

./eduke32 -grp ~/Downloads/duke3d_hrp.zip

Motocross Madness

An old copy of Motocross Madness was present and Wine was already installed.

Running from a (noexec mounted) NFS share would not work:

$ wine /mnt/nfs/MCM/mcm.exe                                      # Do not call wine32[2]
err:virtual:map_file_into_view failed to set 00000007 protection on file map, noexec filesystem?
err:module:import_dll Loading library kvdd.dll (which is needed by L"Z:\\mnt\\nfs\\MCM\\mcm.exe") failed (error c000007b).
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\mnt\\nfs\\MCM\\mcm.exe" failed, status c0000135

So let's install a minimum copy, with all the executables installed locally:

NFSDIR=/mnt/nfs/MCM

sudo mkdir -m0755 /opt/MCM && cd /opt/MCM
for f in ${NFSDIR}/*; do sudo ln -sv "${f}"; done
for f in `ls *.dll *.exe`; do sudo rm -f "${f}" && sudo cp -ivp ${NFSDIR}/"${f}" .; done

If needed, install the registry patch (and backup the registry before):

regedit -E ~/registry.txt
regedit motocmad.reg
regedit -E ~/registry_mcm.txt

See also: WineHQ: Motocross Madness 2 1.0

Deponia

Detonation plan

Deponia has this weird bug in that the magnets in the blasting plan[3] can sometimes no longer be moved.[4] The solution appears to be:

  1. . Save the game
  2. . End the game
  3. . Open the saved game with a hexeditor and change a certain string:
$ cd ~/.local/share/Daedalic\ Entertainment/Deponia/Savegames/
$ ls -htrgo save*
-rw-r-----. 1 632K Mar  6  2018 savegame00.dat
-rw-r-----. 1 637K Mar  8  2018 savegame01.dat
-rw-r-----. 1 722K Nov 17  2021 savegame02.dat

$ hexedit savegame02.dat

Press:

TAB - to switch to ASCII mode
/   - to search for "sprengplan_reset"

The hex representation for that would be:

73 70 72 65 6E 67 70 6C 61 6E 5F 72 65 73 65 74 00 6D 11 00 00 3B 00 00 00 FF FF FF FF 00

This needs to be changed to:

73 70 72 65 6E 67 70 6C 61 6E 5F 72 65 73 65 74 00 6D 11 00 00 3B 00 00 00 FF FF FF FF 01

Press:

CTRL+X - to save the file and exit the editor

Start Deponia, load the saved game. Now the detonation plan should work.

Another solution suggests to disable the detonation plan altogether:[5]

TAB - to switch to ASCII mode
/   - to search for "Wartenummer_2_genommen"

The hex representation for that would be:

00 5D 11 00 00 10 00 00 00 FF FF FF FF 00 12 00 00 00

This needs to be changed to:

00 5D 11 00 00 10 00 00 00 FF FF FF FF 01 12 00 00 00 

Press:

CTRL+X - to save the file and exit the editor

Start Deponia, load the saved game. The detonation plan is still not working, but it is not needed anymore.

Half Life

Can be played via Steam even on Linux. Oh, and this version even supports cheat codes:[6]

sv_cheats 1  - enable cheats
god          - god mode
impulse 101  - all weapons, all ammo
notarget     - nobody attacks you
noclip       - fly around the level
give item_?? - gives the thing requested, e.g. item_healthkit or item_longjump, etc.

Quake

Quake

Unreal Tournament

Unreal Tournament

References