Как установить doom на linux

Обновлено: 18.05.2024

Что то недавно захотелось поиграть в классику, поэтому решил установить первый и второй DOOM в Ubuntu Linux. Собственно как это всё установить я вам и расскажу.

Итак, начнём. Для начала нам нужен движок DOOM. Благо не нужно изобретать велосипед и пытаться эмулировать Windows 98, уже есть готовые движки для Ubuntu. Один из самых популярных и функциональных - Skulltag. На нём и остановимся.

Установка Skulltag

В начале я пытался что то компилировать, Skulltag постоянно жаловался на отсутствующие библиотеки, в общем проблем было много. Но совершенно случайно я узнал, что уже есть репозиторий данной программы с готовыми для установки пакетами. В общем поняв, что я зря мучился весь вечер, я без проблем установил Skulltag.


DOOM, Quake, Return to Castle Wolfenstien, Heretic, Hexen - эти игры знает каждый, кто увлекался компьютерными играми в 90-х. Компания Id Software является родоначальником жанра шутер от первого лица. Её игры всегда отличались технологичностью и качеством, а в качестве основного графического API всегда и везде использовался OpenGL. Но компания знаменита не только этим. Она знаменита также тем, что открыла исходный код почти всех версий своего игрового движка под свободной лицензией GNU GPL, что позволило портировать эти замечательные игры на великое множество платформ, а также внести очень много улучшений. Поэтому эти движки будут актуальны ещё очень много лет. Ну и разумеется - компания не обходила стороной операционную систему GNU/Linux, и предоставляла инсталяторы своих игр под эту систему. При этом ресурсы игры использовались общие, и игра одинаково хорошо работала как в Linux, так и Windows. Однако на современных версиях Linux, запуск игр с оригинальных инсталяторов затруднён. И дальше я объясню почему. А также расскажу как поиграть в шедевры своего времени на современном Линуксе.

Первым делом, хочу внести ясность: для игры вам необходимы оригинальные файлы ресурсов целевой игры (текстуры, модели и так далее). Где их взять? С вашей честно купленной версии игры, например под Windows. Хотя конечно не каждый человек покупает лицензионные игры, и точно знает другие способы раздобыть эти файлы. Так или иначе - они вам нужны. Движок у описанных игр открытый и свободный, а всё остальное - защищено авторским правом. Далее я напишу какие именно файлы необходимы.

Wolfenstein 3D


Начну с самой первой известной игры от Id Software. Предлагаю вам два движка для этой игры - классический Wolf4sdl и современный, активно развивающийся Ecwolf. В первом случае вы получите оригинальную игру, без каких-либо изменений. Во втором случае - сможете играть в более комфортном разрешении экрана. Движок Wolf3sdl есть в стандартных репозиториях большинства дистрибутивов, однако его использование затруднено. Поэтому предлагаю вам скачать архив с исполняемыми файлами движка, распаковать их в нужную вам директорию, где будет лежать игра. Версий игр несколько, несколько вариантов игровых архивов и соотвественно - разные исполняемые файлы для них. Потому если у вашей игры архивы с расширением .Wl6 - используйте соответствующий исполняемый файл. Итак. Для игры вам необходимы архивы ресурсов, в формате WL6, WL1, SDM, SOD или WL6A. Обратите внимание, что имена архивов, вместе с расширением, должны быть написаны маленькими буквами (не MAPHEAD.WL6, а maphead.wl6). Скопируйте все игровые архивы в каталог с исполняемыми файлами Wolf4sdl. И запустите соответствующий бинарник.



Движок Ecwoolf в настоящее время активно развивается. Для него автор поддерживает репозитории для Ubuntu, которые указаны на этой странице. Я же опишу способ сборки движка из исходного кода, в данном случае - на Debian 8. Сперва установим необходимые сборочные зависимости:

sudo apt-get install cmake g++ libsdl1.2-dev libsdl-mixer1.2-dev zlib1g-dev libbz2-dev mercurial make libjpeg-dev libgtk2.0-dev libsdl-net1.2-dev

Создаём необходимые директории и скачиваем исходный код:

Конфигурируем и собираем:

cd ecwolf
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DGPL=ON ..
make

Для запуска игры необходимы файлы ecwolf, ecwolf.pk3 и оригинальные файлы игры. У меня при игре в окне не захватывается мышь (возможно у вас всё будет работать), потому я запускаю игру в полном экране с моим родным разрешением экрана командой:

./ecwolf --fullscreen --res 1360 768

находясь в каталоге с игрой. Просмотреть список доступных опций можно командой:

DOOM, DOOM 2, Final DOOM, Ultimate DOOM


DOOM использует архивы в формате WAD, в которых содержатся все ресурсы игры. Допустим вы хотите поиграть в оригинальный первый DOOM. Вам необходим файл doom.wad. Далее дело за игровым движком. Я буду использовать PrBoom+, который есть в репозиториях большинства дистрибутивов. Установка для Debian/Ubuntu:

sudo apt install prboom

Обратите внимание, что он рекомендует установить некие Freedoom и Freedoom2. Это свободные клоны оригинального Дума, которые тоже весьма интересны. Если хотите - можете установить их тоже. После установки движка, нужно скопировать doom.wad в директорию /usr/share/games/doom. Сделать это можно двумя способами: открыв файловый менеджер с правами администратора, либо через консоль. В первом случае:

sudo cp -r /путь/к/wad-файлу /usr/share/games/doom

Несмотря на то, что ярлык PrBoom+ появится в списке программ, по умолчанию он будет запускать первый попавшийся WAD-файл. Потому если вы скачали Freedoom - будет запускаться он. Чтобы запустить оригинальный DOOM с вашего WAD-файла, откройте терминал и введите:

prboom -iwad doom.wad

И всё. При желании вы можете создать ярлыки на рабочем столе, где вписать соответствующую команду на запуск. Аналогичная операция производится с Doom 2 и дополнениями для них.


Heretic и Hexen


sudo apt install doomsday

WAD-файлы как и прежде нужно закинуть в директорию /usr/share/games/doom. Далее запускаем из терминала doomsday. Откроется консоль, где командой load имяигры вы можете запустить нужную игру. К примеру

Либо же запустить по методу PrBoom:

doomsday -iwad heretic.wad

Quake, Quake 2 и Quake 3 Arena


Для Quake 1 вам понадобится движок Darkplaces, который всё также можно установить из репозиториев вашего дистрибутива. Далее вам потребуются файлы pak0.pak и pak1.pak с диска Quake (ну или откуда-нибудь ещё). Создайте где-нибудь каталог id1 (например в

/Games/quake/id1). В каталог id1 положите pak-файлы. Далее в директории quake создайте текстовый файл quake.sh со следующим содержимым:

Сохраните и дайте ему права на выполнение (либо в свойствах файла, либо через консоль командой chmod +x quake.sh). Запустите полученный скрипт и. наслаждайтесь игрой! Также хочу обратить ваше внимание на то, что если вы скопируете только pak-файлы - в игре не будет музыки, которая в оригинале грузилась с диска. Поэтому если она вам нужна - скопируйте каталог SOUND с диска к pak-файлам.

Для Quake 2 понадобится движок Yamagi. Установка:

sudo apt install yamagi-quake2

С диска с игрой необходимы все pak-файлы, который находятся в каталоге baseq2, а также каталоги music, video и players. Всё это необходимо скопировать в /usr/lib/yamagi-quake2/baseq2. Не знаю как будет у вас, но у меня исполняемый файл quake2 не хотел запускаться из терминала. Потому я создал ярлык, в котором прописал следующую команду (будет работать и через терминал):

И игра будет полностью работоспособной.

Далее у нас Quake 3 Arena. Для него нужен движок ioquake3, который, как вы уже наверно догадались, тоже есть в репозиториях большинства дистрибутивов :) Ставим:

sudo apt install ioquake3

Далее нам необходимы pak-файлы третей Кваки, которые нужно скопировать в /usr/lib/ioquake3/baseq3. Далее из терминала запустить ioquake3 и играть.


Return to Castle Wolfenstein


Эту игру можно установить либо с официального инсталятора, либо - используя свободный движок IORTCW, который основан на Ioquake3. Однако на современных Линуксах, запустить игру с помощью официального установщика - тот ещё геморрой. Во первых, игра требует устаревшую библиотеку libstdc++, во-вторых - есть серьёзные проблемы со звуком (его может вообще не быть). Поэтому данный способ я рассматривать не буду. Но дам ссылку на статью, где он описывается. Мы же пойдём более лёгким путём. Нам потребуется движок Iortcw. К сожалению, в репозиториях Debian и Ubuntu его нет (хотя я планирую добавить его в свои репозитории), потому будем собирать движок из исходного кода. Это совсем несложно. Для начала установим необходимые зависимости:

sudo apt install build-essential libsdl2-dev git

Создадим каталог для сборки и скачаем исходный код:

Собирать будем singleplayer-режим.

И производим сборку:

В каталоге Build появится директория release-linux-x86_64. В ней будет директория main, в которую вам надо скопировать все ресурсы игры (если не будете собирать multiplayer-режим - то не копируйте pak-файлы с префиксом mp). И запустить файл iowolfsp. Приятной игры!



DOOM 3 и DOOM 3 BFG Edition


DOOM 3 будем ставить двумя способами: сперва из оригинального инсталятора от Id Software. Так как скорость его скачивания с FTP-сервера компании просто невероятно низкая - скачиваем его отсюда. Далее даём ему права на выполнение:

и запускаем установку:

После установки, как обычно, нужно скопировать файлы ресурсов игры в нужную директорию. Нам нужны pak-файлы, находящиеся в каталоге base на диске с игрой, или в установленной Windows-версии (если таковая имеется). Копируйте эти файлы в /usr/local/games/doom3/base. Затем надо изменить права доступа на них ( ВНИМАНИЕ : если описанные выше игры у вас плохо работают и не запускаются - возможно изменение прав доступа исправит проблему):

sudo chmod -R 777 /usr/local/games/doom3/base/pak00*.pk4

Всё. Можно играть. В меню приложений должен быть ярлык doom3.

Но Doom 3 не был бы Думом, если бы для него не существовало свободного движка. Он есть. И зовётся dhewm 3. Однако в репозиториях Debian и Ubuntu его нет, потому либо качаем собранный мной бинарник (собран в Debian 8, но будет работать в Ubuntu 16.04 и Mint 18), либо - собираем сами:

Ставим необходимые сборочные зависимости:

sudo apt install build-essential git
cmake libsdl2-dev libopenal-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev

Получаем последнюю версию исходного кода и приступаем к сборке:

После сборки появится исполняемый файл dhewm3. Короме него будет нужна директория base, в которой должен лежать файл default.cfg. В эту директорию скопируйте ресурсы игры (pak-файлы). Кроме dhwm3 и директории base больше ничего не нужно. Можете удалить. Запустите dhwm3 и играйте.


Doom 3 BFG Edition - это переиздание Doom 3 для современных версий Windows, включающее в себя дополнение Resurection of Evil и первые две части Дума. Спустя некоторое время после релиза игры, разработчики по традиции открыли исходный код движка. В результате родился движок RBDOOM3-BFG, который помимо полной поддержки Linux может похвастаться наличием 64-х битной поддержки, улучшенной отрисовкой теней и многим другим. Движок находится в активном развитии, потому рекомендую вам собрать последнюю версию из исходного кода. Если не хотите - вот собранный мной бинарник ( примечание : в будущем эти движки будут добавлены в мои репозитории). Остановлюсь на сборке из исходного кода. Сперва устанавливаем сборочные зависимости:

sudo apt install build-essential cmake libsdl2-dev libopenal-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev git

FreeDoom

FreeDoom — бесплатный порт легендарного 3D шутера от первого лица Doom 2 под Linux. Графика практически идентична оригинальному Doom II. Вы играете за морпеха и должны спасти Землю от нашествия монстров.

Архитектурно FreeDoom состоит из двух частей. Это FreeDoom IWAD и игровой движок. IWAD это специальный файл, который содержит все данные для игры — уровни, текстуры, звуки и так далее. Игровой движок представляет собой всю программную часть игры.

Атмосфера и графика оригинальной игры во FreeDoom сохранена.

Установка FreeDoom в Ubuntu Linux

Чтобы получить рабочую (играбельную) версию FreeDoom в Ubuntu Linux нужно установить пакеты freedoom (это IWAD) и prboom (это и есть игровой движок). Для этого выполните в терминале команду:

У меня при установке prboom появилась какая-то небольшая ошибка, но пакет все равно установился, и никаких проблем с игрой я не заметил (в Ubuntu 12.10).

Для запуска FreeDoom выполните команду: freedoom.
Возможно, вам понадобиться дополнительная информация по опциям prboom. Получить справку можно, выполнив: man prboom.


Scythe2.wad MAP30.

The Classic PC Doom game is a master-work of game design. It is a first-person shooter that other games such as Halo copied, but they can not do as well as this classic game, since 1993, it has dominated the first-person shooter market. No other game has the atmosphere and game-play that classic PC Doom has. The Prboom source port is the best for playing Doom on PC.

Install Doom on Linux

Type this command to install Doom and all needed files right away.

$ sudo apt-get install chocolate-doom doom-wad-shareware prboom-plus freedoom

The Doom IWADS, freedoom.wad, doom1.wad live in the /usr/share/games/doom folder. If you own a copy of Doom or Doom2, then copy the doom.wad and doom2.wad into this folder and then they will be accessible to prboom and chocolate-doom.

/Documents$ ls /usr/share/games/doom/ doom1.wad freedoom.wad prboom.wad

Prboom Plus is an enhanced version of Prboom with extra features. The Prboom+ source port has many useful features for recording demos, as well as many features that benefit all Doomers in general. Install it on Ubuntu thusly.

$ sudo apt-get install prboom-plus

This will also install Freedoom, giving the player a full IWAD with 30 maps to slaughter through.

The old vanilla Doom executable would show a flashing floppy disk icon when there was disk activity. Do any modern source ports use this feature or is it a bit superfluous in these days of super fast 7200 rpm SATA2 drives and computers with an I7 CPU? I miss that feature from the days of playing vanilla Doom on a 486 sx33 with 4MB of RAM. Those were the days, we could never have imagined that we would be playing Doom on our phones. Or on a Android tablet. The great game has come so far in these modern times with Gzdoom and Chocolate Doom we have a wide choice if we want either accelerated graphics and 3d models or just classic vanilla Doom gaming. The Chocolate Doom game has a game engine that closely replicates the behavior of the vanilla Doom engine as closely as possible.

Classic Doom E1M1.

Classic Doom E1M1.

Set a custom resolution for prboom

To set a custom resolution for prboom; open the

/.prboom/prboom.cfg file with vim.tiny and change the video resolution to the values you desire. Below is an example. set the screen_width and screen_height to the proper resolution of your monitor.

This will fix the resolution of prboom. This is how I always fix it.

Install a map editor

Install a nice map editor for Linux and start making levels for Doom.

The Eureka map editor for Linux is a good way to make awesome maps for this old game.

This is not too hard to use and would allow a user to make whatever they want.

So get cracking and make a cool map today!

Install gzdoom by typing sudo apt install gzdoom . This is a very good source port that supports mods like Ultimate Torment and Torture. And looks very good running on a good GPU. it also supports some build engine features like 3D floors and movable 3D floors using portals. As well as ACS scripting to create cool effects.

Running this command will return quite a lot of Doom packages available for Linux.

As well as a few unrelated packages, but there are a lot of Doom source ports for Linux. Proving that this game is never going to die. But I wish that they would release a new Doom game with the same story as the 1993 version, and updated versions of the same maps. Would be cool to see the Tei Tenga planet and the Doom alpha content.

Читайте также: