На днях нашел в шкафу диск с игрой
Return to Castle Wolfenstein и решил поиграть. Под Wine мне играть не понравилось и я решил собрать игру из исходников. Инструкций в интернете я не нашел по сборке, по-этому все пришлось делать самому.
1. Первое что нам нужно - это получить исходный код движка (собирать будем одиночную игру, многопользовательская собирается так же):
wget ftp://ftp.idsoftware.com/idstuff/source/RTCW-SP-GPL.zip
2. Теперь не плохо бы удовлетворить зависимости, но тут возникает проблема: я не знаю что необходимо, так как у меня много пакетов уже стоит. Если возникнут вопросы, то пишите в личку, я дополню это сообщение. Точно нужно это:
sudo aptitude install libxxf86dga-dev x11proto-xf86dga-dev
3. Дальше распаковываем архив с исходниками и идем в папку для сборки:
cd /home/user/RTCW-SP-GPL/src/unix/
4. Теперь выполняем команду для сборки и анализируем ее вывод:
./cons -- release
Если все пройдет успешно то получите папку с файлами "release-x86-Linux-2.1", но вся она нам не нужна. Из нее скопируйте папку с движком во временную папку:
mkdir /home/user/RTCW-full/
cp -r /home/user/RTCW-SP-GPL/src/unix/release-x86-Linux-2.1/full/unix/ /home/user/RTCW-full/
5. Теперь нам нужно скопировать дополнительные библиотеки:
cp -r /home/user/RTCW-SP-GPL/src/unix/release-x86-Linux-2.1/out/main/ /home/user/RTCW-full/
Теперь папка с игрой выглядит примерно так:
ls /home/user/RTCW-full/
asmlib.a ftol.o linux_common.c linux_glimp.o linux_local.h linux_snd.c matha.o snapvector.nasm snd_mixa.s unix_glw.h unix_net.c unix_shared.o
botlib.a inlinelib.a linux_common.o linux_joystick.c linux_qgl.c linux_snd.o matha.s snapvector.o splines.a unix_main.c unix_net.o wolfsp.x86
ftol.nasm jpeglib.a linux_glimp.c linux_joystick.o linux_qgl.o main qasm.h snd_mixa.o start_game.sh unix_main.o unix_shared.c
6. Теперь нам просто нужно скопировать ресурсы от win-версии игры в папку "main". После этого содержимое папки будет таким:
ls /home/user/RTCW-full/main/
cgamei386.so mp_pak0.pk3 mp_pak2.pk3 mp_pak4.pk3 mp_pakmaps1.pk3 mp_pakmaps3.pk3 mp_pakmaps5.pk3 pak0.pk3 save sp_pak2.pk3 sp_pak4.pk3 uii386.so
mp_bin.pk3 mp_pak1.pk3 mp_pak3.pk3 mp_pakmaps0.pk3 mp_pakmaps2.pk3 mp_pakmaps4.pk3 mp_pakmaps6.pk3 qagamei386.so sp_pak1.pk3 sp_pak3.pk3 sp_pak7.pk3
7. Скорей всего у вас не будет звука. Я создал скрипт для запуска игры в папке такого содержания (нашел где-то тут -
http://ubuntuforums.org/showthread.php?t=913457):
#!/bin/bash
export ETSDL_SDL_LIB="/usr/lib32/libSDL-1.2.so"
export SDL_AUDIODRIVER="alsa"
export LD_PRELOAD="${LD_PRELOAD}:/usr/lib32r/libpulsedsp.so"
./wolfsp.x86
Кажется все, теперь игра должна запускаться. Сохранения можно кинуть в папку "main", настройки лежат в папке там же или в папке "/home/user/wolf/main/".