Главная » Чиним старые игры » Quake

Quake

Раздел: Чиним старые игры Автор: Dant Дата: 24 августа 2021 Обновление: 24 августа 2021

Мало какая игра, вышедшая больше двадцати лет назад, может похвастаться тем, что она все еще представляет интерес в наше время. Quake, безусловно, является одним из наиболее заметных представителей подобной категории игр.

Quake стал одним из первых трехмерных шутеров, в котором враги были выполнены из полигонов, а не из спрайтов. Разумеется, это сказалось на системных требованиях, ведь тогда почти все компьютерные игры просчитывались с помощью центрального процессора. Первоначальное издание было рассчитано на запуск из-под MS-DOS и не поддерживало графические ускорители. Спустя полгода после выхода Quake разработчики из idSoftware выложили две новые версии движка, GLQuake и WinQuake, которые поддерживали Windows 95 и использовали возможности API Win32.

WinQuake визуально ничем не отличался от порта для MS-DOS и все так же продолжал просчитываться силами центрального процессора, а вот GLQuake стал поддерживать зарождавшиеся на тот момент графические ускорители через библиотеку OpenGL. И как следует из названия, Quake работал на подобном ускорителе в разы быстрее, чем на процессоре, и даже поддерживал сглаживание текстур (что на тот момент было последним писком моды), примитивные тени под персонажами и прозрачную воду, однако в нем из-за технических ограничений ускорителей того времени отсутствовали или неправильно работали некоторые эффекты из оригинальной MS-DOS-версии.

Менее чем через год для Quake были выпущены два дополнения, Mission Pack №1: Scourge of Armagon и Mission Pack № 2: Dissolution of Eternity.

24 июня 2016 года, к двадцатому юбилею игры, разработчиками из MachineGames было выпущено новое официальное дополнение под названием Dimension of the Past.

19 августа 2021 года в честь двадцатипятилетнего юбилея Nightdive Studios выпустили переиздание Quake: Enhanced для современных ПК, содержащее в себе новый эпизод, Dimension of the Machine, различные графические улучшения, поддержку официальных дополнений и многое другое.

На данный момент существует три варианта запуска Quake (от простого к сложному): через переиздание Quake: Enhanced, через любой Source port движок или через эмулятор DOSBox.

Существующие издания

Издание Год Платформа Примечания
Quake (Shareware) 1996 ПК Первоначальное издание, в котором доступен лишь первый эпизод, версия игры — 1.00.
Quake 1996 ПК Полное издание игры на CD-ROM, версия игры — 1.01.
Quake Mission Pack №1: Scourge of Armagon 1997 ПК Официальное дополнение от Hipnotic Software.
Quake Mission Pack №2: Dissolution of Eternity 1997 ПК Официальное дополнение от Rogue Entertainment.
Quake 1997 Sega Saturn Четыре секретных уровня заменены на новые, отсутствует мультиплеер, использует движок SlaveDriver;
Quake 64 1998 Nintendo 64 Вырезано шесть уровней и локация выбора сложности, вырезан кооператив, но присутствует Deathmatch на два игрока, новое музыкальное сопровождение, новая карта для Deathmatch.
Quake Mobile 2005 Мобильные телефоны и PDA Порт для Samsung Nexus, LG VX360 и PDA, версия игры — Quake v.1.09 GL 1.00, музыка отсутствует.
Quake: Dimension of the Past 2016 ПК Официальное дополнение от MachineGames в честь ХХ юбилея игры.
Quake: Enhanced 2021 ПК, PlayStation 4, Xbox One, Switch Переиздание от Nightdive Studios в честь ХV юбилея игры, содержит Scourge of Armagon, Dissolution of Eternity и Dimension of the Past, а также новое дополнение Dimension of the Machine, поддержка мультиплеера, кооператива и сплитскрина, добавлены достижения и облачные сохранения.

Доступность в цифровых магазинах

Сервис Версия Особенности
Steam Quake: Enhanced
  • Переиздание Quake: Enhanced;
  • Содержит музыку и все дополнения;
  • Включает старые версии игры;
Good Old Games (GOG) Quake: The Offering
  • Включает основную игру и два дополнения;
  • Поставляется вместе с GLQuake и эмулятором DOSBox;
  • Музыка присутствует для всех трех версий игры, но в виде образов компакт-дисков: для ее правильной работы требуется монтировать образ на виртуальный привод;
  • The Elder Scrolls: Arena и The Elder Scrolls Chapter II: Daggerfall в качестве подарка;
  • Включает цифровое руководство;

Патчи

Для Quake было выпущено два официальных патча. Первый обновлял игру до версии 1.06, а второй — до версии 1.08. Данные патчи уже установлены во всех современных цифровых изданиях.

Quake: Enhanced

Quake: Enhanced — официальное переиздание игры, приуроченное к двадцатипятилетию игры. Оно сделано с учетом современных систем и отличается следующими особенностями:

  • Поддержка любых разрешений и частоты кадров;
  • Различные графические улучшения: мягкие динамические тени, улучшенная система освещения, новые трехмерные модели, размытие в движении, плавная анимация. Часть новых эффектов можно отключить в настройках;
  • Присутствует вся музыка, которая ранее отсутствовала ввиду лицензионных ограничений;
  • Меню поддерживает управление через мышь;
  • Есть поддержка кооператива и мультиплеера (требует регистрации в сервисе Bethesda.net);
  • В мультиплеер добавлены боты;
  • Реализован сплитскрин для кооператива и мультиплеера (до четырех игроков на одном экране);
  • Добавлена поддержка геймпадов и прицеливание через гироскопы;
  • Возможность совместной игры между ПК и консольными версиями;
  • Содержит Scourge of Armagon, Dissolution of Eternity и Dimension of the Past, а также новый эпизод Dimension of the Machine, разработанный MachineGames;
  • Появилась возможность выбора эпизодов через меню игры;
  • Установка официальных дополнений (модов) от разработчиков через Bethesda Store (требует регистрации в сервисе Bethesda.net). Первым таким дополнением является набор уровней из версии Quake 64, в который включено музыкальное сопровождение за авторством Обри Ходжеса;
  • Возможность запуска старых версий игры (в комплект поставки входят MS-DOS-версия quake.exe, а также glquake.exe, Winquake.exe, qwcl.exe, glqwcl.exe и соответствующие .pak-файлы;
  • Сохранена совместимость с другими Source port движками;
  • Добавлены достижения и облачные сохранения;
  • Есть перевод на русский язык;

Впрочем, у этой версии есть ряд недостатков (источник):

  • Новая версия использует движок KEX engine, ввиду этого появились те или иные отличия в физике игры. Например, в режиме Always Run персонаж движется вперед немного быстрее, а назад — несколько медленее, чем в других версиях, поэтому его лучше выключить;
  • Сложность Nightmare стала несколько легче из-за изменения в отчислении очков здоровья;
  • Возможные вылеты из-за багов в реализации поддержки библиотеки Vulkan;
  • Новые баги, которых не было в оригинале;
  • Некоторые уровни немного изменены или дополнены (например, в e2m6 в начало добавлен вырезанный сегмент);
  • Мультиплеер в новой версии работает только через серверы Bethesda.net;
  • Повышенная задержка в управлении на клавиатуре и мышке;
  • Прицеливание на геймпаде реализовано достаточно криво;
  • Старые сохранения от GLQuake и других версий не поддерживаются;
  • Несмотря на почтенный возраст игры, переиздание имеет достаточно высокие системные требования и может не запуститься на относительно старых ПК;
  • Моды, сделанные под возможности Source-движков, в новом переиздании не работают (но моды, не выходящие за рамки возможностей оригинального движка, поддерживаются);
  • Дополнения, установленные через Bethesda Store, для работы требуют подключения к интернету (разработчики обещают исправить этот недостаток в будущих обновлениях);
  • В новом движке реализована неотключаемая телеметрия: на серверы Bethesda.net отсылаются данные о местоположении пользователя, введеных командах в консоль и передвижении по меню;

Не исключено, что многие перечисленные проблемы будут исправлены в последующих обновлениях, как это было в случае с переизданиями Doom 1 и 2.

Quake через Source ports

21 декабря 1999 года главный программист Quake, Джон Кармак, выложил исходный код игры в публичный доступ под лицензией GPL 2.0, после чего различные любители по всему миру стали создавать новые версии движков, так называемые Source ports, содержавшие те или иные улучшения или изменения.

Несмотря на то, что GLQuake и WinQuake появились более двадцати лет назад, они все еще запускаются на последних ОС Windows, однако в ряде случаев они могут работать с ошибками, да и в GLQuake, как уже писалось выше, отсутствуют некоторые графические эффекты.

Наиболее актуальными движками для одиночной игры являются Mark V, QuakeSpasm, vkQuake и DarkPlaces. Для установки любого движка достаточно поместить его .exe и прочие сопутствующие файлы в корневую папку с игрой.

QuakeSpasm

QuakeSpasm является наиболее популярным современным движком на OpenGL. В графическом плане он похож на оригинальную MS-DOS-версию, при этом в нем присутствуют все вырезанные эффекты. Помимо этого в нем исправлены некоторые баги оригинальной игры, добавлена интерполяция анимации (в оригинале она была «рваной»), поддержка музыки в формате .ogg и геймпадов от Xbox.

У данного движка есть разновидность, QuakeSpasm Spiked. Основные ее особенности: снятие ограничение максимальной частоты кадров и поддержка модов большего размера.

vkQuake

vkQuake основан на коде QuakeSpasm, но при этом использует современную библиотеку Vulkan. В довесок ко всем плюсам QuakeSpasm, в нем снято ограничение по количеству кадров и реализована отрисовка подводных преломлений как в изначальной MS-DOS-версии игры (данный эффект есть и в QuakeSpasm, но он выглядит не настолько достоверно).

DarkPlaces

DarkPlaces добавляет в игру огромное количество современных эффектов, существенно меняющих внешний вид игры: динамическое освещение, динамические тени, улучшенные частицы, карты рельефа (Bump Mapping), Bloom, интерполяцию анимации и так далее. Само собой, подобные нововведения сильно преображают игру и придутся по вкусу далеко не всем.

Внимание: новые версии находятся в разделе Latest development autobuild release.

Mark V

Mark V существует в двух версиях: Mark V и Mark V WinQuake.

Mark V использует библиотеку DirectX9 и отлично подходит для старых встроенных видеокарт от Intel и AMD. Подобно QuakeSpasm, этот движок старается соответствовать виду MS-DOS-версии, и в нем правильно работают все вырезанные эффекты. В отличие от других движков, многие его особенности можно настроить из-под самой игры. Кроме того, он поддерживает мышку в меню, интерполяцию анимации (в отличие от вышеупомянутых движков, ее можно отключить), музыку в формате .mp3, различные режимы отображения интерфейса, разную «постановку» оружия.

Mark V WinQuake, подобно MS-DOS и WinQuake-версиям, работает в программном режиме и задействует видеокарту лишь для вывода изображения. В графическом плане он практически полностью — если не полностью — повторяет MS-DOS-версию, включая все ее недостатки, отсутствующие в современных движках Quake, использующих 3D-ускорение («дрожание» вершин полигонов, более примитивное «пиксельное» освещение, искривление текстур из-за отсутствия коррекции перспективы).

Настройка Mark V через меню

Экран Options содержит стандартные настройки, которые встречаются в оригинальном Quake и других движках:

  • Screen Size: последние два значения на шкале меняют внешний вид строки состояния (статус бар) с частичного на полный, остальные уменьшают видимое экранное пространство (что в наши дни давно не актуально).
  • Gamma: в данном случае — настройка яркости. Ее лучше уменьшить до минимальных значений — именно так выглядит изображение в оригинальном Quake.
  • External Music: воспроизводить музыку из внешних .mp3-файлов или же использовать музыку со вставленного в привод оригинального компакт-диска.
  • Always Run: постоянный бег, без необходимости зажимать соответствующую клавишу.
  • Mouse Look: обзор с помощью мыши.
  • Invert Mouse: меняет верх и низ местами.
  • Lookspring: при движении камера будет возвращаться в исходное положение.

Вкладка Preferences содержит эксклюзивные настройки для Mark VMark V WinQuake часть настроек недоступна; Quake Default означает, что настройка будет соответствовать стандартному Quake):

  • Crosshair: тип прицела — в виде плюса или точки.
  • Weapon Draw: меняет положение оружия на экране. Вариант Gansta меняет положение на более современное.
  • Invisibility: отображения оружия в режиме невидимости (игровой бонус).
  • View Blends: использовать или нет специальный фильтр под водой, а также при подбирании оружия/патронов.
  • Bobbing: качание оружия при перемещении персонажа.
  • Fleshblend: отрисовка ореолов вокруг некоторых источников, как в GLQuake. При включении этой настройки будет отключено динамическое освещение, поэтому лучше оставить Quake Default.
  • Stain Maps: отрисовка черных следов от выстрелов на поверхностях объектов.
  • Startdemos: воспроизведение демо-записей при запуске игры.
  • Server Aim: автоприцеливание.
  • Draw Clock: отображение текущего времени прохождения уровня.
  • Autoscale: размеры интерфейса. Если ни один из вариантов не подходит, установить в User Cvar Control и настроить параметр через config.cfg (см. ниже).
  • Status Bar: режимы отображения строки состояния.
  • Effects: включение/выключение интерполяции анимации (Jerky) и отрисовки улучшеных частиц (JoeQuake).
  • Set FitzQuake: выставить все настройки как в движке FitzQuake, на котором основан Mark V.
  • Set Mark V: сброс настроек.

Настройка Mark V через config.cfg

После первого запуска игры в папке <путь к игре>/id1/ появится файл config.cfg, который можно открыть с помощью любого текстового редактора — в нем содержатся все настройки. У каждого Mission Pack есть свой собственный config.cfg, который лежит в соответствующей папке (hipnotic или rogue).

Игру также можно настраивать напрямую из консоли — она вызывается с помощью клавиши тильды (~). Почти все сделанные подобным образом изменения сохраняются в файл config.cfg.

  • gl_texturemode: фильтрация текстур. GL_NEAREST — сглаживание отключено (как в оригинальном Quake), GL_LINEAR_MIPMAP_LINEAR — сглаживание текстур с помощью трилинейной фильтрации с использованием MipMaps (в этом случае обязательно включить следующую настройку).
  • gl_texture_anisotropy: анизотропная фильтрация текстур. Работает только если включен GL_LINEAR_MIPMAP_LINEAR. Обязательно выставить в 16.
  • vid_multisample (0/2/4/8): экранное MSAA-сглаживание.
  • gl_subdivide_size: значение 32 позволяет убрать швы на поверхности лавы и неба.
  • r_mirroralpha (0.0 - 1.0): степень отражения для стеклянных поверхностей. В оригинальном Quake значение равно 1.0 (отражения отключены).
  • r_lavaalpha (0.0 - 1.0): степень прозрачности лавы. В оригинальном Quake значение равно 1.0 (лава непрозрачна).
  • r_slimealpha (0.0 - 1.0): степень прозрачности слизи. В оригинальном Quake значение равно 1.0 (слизь непрозрачна).
  • r_wateralpha (0.0 - 1.0): степень прозрачности воды. В оригинальном Quake значение равно 1.0 (вода непрозрачна).
  • r_waterripple (0/1): покачивание поверхности воды. В оригинальном Quake этот эффект отсутствует.
  • r_waterwarp (0/1): эффект подводного преломления. В оригинальном Quake включен.
  • r_waterwarp_amp: амплитуда подводного преломления. Меньшее значение — большая амплитуда. На высоких разрешениях эффект может вызвать неприятные ощущения, поэтому рекомендую поставить значение 250.
  • r_waterwarp_cycle (0 - ?): скорость цикла подводного преломления. Также влияет на степень искажения изображения при горизонтальных поворотах камеры. На высоких разрешениях эффект может вызвать неприятные ощущения, поэтому рекомендую поставить значение 2.
  • r_waterwarp_downscale (0/1): уменьшение разрешения кадра под водой (подобно оригинальному Quake).
  • r_shadows (0/1/2/3): тени под моделями врагов (впервые появились в GLQuake). 1 — прозрачные тени, 2 — непрозрачные, 3 — экспериментальные тени с самозатенением (эксклюзив Mark V, не рекомендуются). Данную настройку надо прописывать в файле autoexec.cfg, иначе она сбросится при последующих запусках.
  • scr_conalpha (0.0 - 1.0): степень прозрачности консоли.
  • scr_conscale (1.0 - ?): увеличение размеров консоли.
  • scr_menuscale (1.0 - ?): увеличение размеров экранного интерфейса.
  • fov: угол обзора.

По желанию можно установить более четкий шрифт (создать в папке <путь к игре>/id1/ папку gfx и положить туда этот файл), а также текстуры повышенного разрешения (закинуть в папку <путь к игре>/id1/). Источник.

Quake через DosBox

Первоначальное издание Quake, рассчитанное на работу в MS-DOS, можно запустить в эмуляторе DOSBox. Разумеется, при этом игра будет иметь все ограничения, присущие данной версии, но зато она будет иметь первозданный вид.

1. Скачиваем эмулятор DOSBox с официального сайта, устанавливаем и затем запускаем его.
2. Сперва в DOSBox нужно смонтировать папку, в которой находится игра. Для этого в окне эмулятора пишем команду mount c <путь к игре>, например mount c d:/Games/Quake. В случае успеха в окне появится сообщение Drive C is mounted as local directory <путь к игре>.
3. Необязательно: для работы музыки нужно смонтировать игровой диск (пункт 3а) или его образ в формате CUE/BIN (пункт 3б).
3а. Монтирование привода осуществляется командой mount d f:\ -t cdrom или mount d f:\ -t cdrom -usecd 0 -noioctl, где f:\ — буква привода.
3б. Образ диска монтируется командой imgmount d <путь к .cue-файлу> -t cdrom, например imgmount d c:\Quake.cue -t cdrom.
4. Перемещаемся в папку с игрой с помощью команды С: . В случае успеха Z:\> сменится на C:\>
5. Для запуска игры вводим Quake.exe. После запуска в консоли может отобразиться надпись MSCDEX not loaded — в этом случае просто нажимаем на любую кнопку. Переход в полноэкранный режим осуществляется с помощью комбинации Alt + Enter.

Если игра работает слишком быстро, нажать несколько раз комбинацию Ctrl + F11 (Ctrl + F12 — для ускорения). Переход в полноэкранный режим осуществляется с помощью комбинации Alt + Enter.

Вышеописанные действия можно значительно упростить, прописав в отдельный файл конфигурации все необходимые команды:

1. Переходим в папку c:/Users/<имя пользователя>/AppData/Local/DOSBox/, предварительно включив отображение скрытых папок, либо нажимаем на «Пуск» и в поиске пишем %APPDATA%, затем выходим на один уровень вверх и заходим в папку Local/DOSBox/.
2. Создаем копию файла dosbox-0.74.conf, переименовываем его в quake.conf и затем открываем в любом текстовом редакторе.
3. Переходим к разделу [autoexec] (находится в самом низу), прописываем в нем все необходимые команды и затем сохраняем файл:

[autoexec]
mount c d:/Games/Quake
С:
Quake.exe
4 Переходим в папку, в которой установлен DOSBox, создаем ярлык для DOSBox.exe и переименовываем его в Quake.
5 Нажимаем на ярлык правой кнопкой мыши и выбираем «Свойства», после чего в поле «Объект» в самом конце прописываем путь к конфигурационному файлу через ключ -conf и нажимаем на кнопку «Применить»:

D:\DOSBox-0.74\DOSBox.exe -conf "c:\Users\D\AppData\Local\DOSBox\arena.conf"

Запуск дополнений

Примечание: в Quake: Enhanced выбор эпизодов реализован в меню игры.

Дополнения Scourge of Armagon и Dissolution of Eternity запускаются ключами -game hipnotic и -game rogue соответственно. Для этого достаточно создать ярлык на используемый движок игры (quakespasm.exe, mark_v.exe, winquake.exe или любой другой) и в поле «Объект» в самом конце строки дописать нужный ключ, например:

D:\Games\Quake\mark_v.exe -game hipnotic

Дополнение Dimension of the Past

Примечание: входит в Quake: Enhanced, поэтому для этой версии ничего устанавливать не нужно.

Dimension of the Past — бесплатное полуофициальное дополнение от MachineGames, приуроченное к двадцатому юбилею игры. Содержит десять новых одиночных уровней и новую карту для мультиплеера.

1. Скачиваем архив с дополнением.
2. Создаем в папке с игрой (в которой находится папка id1) папку dopa и распаковываем в нее содержимое архива.
3. Запуск дополнения осуществляется с ключом -game dopa.

Неработающая музыка

Примечание: для переиздания Quake: Enhanced данная проблема неактуальна.

В первоначальном издании Quake музыка воспроизводилась напрямую с установочного диска. В некоторых цифровых магазинах она полностью отсутствует ввиду правовых ограничений. В GoG она включена, но поставляется в виде дисковых образов, которые надо монтировать на виртуальный привод.

К счастью, все современные движки игры поддерживают воспроизведение музыки из .ogg или .mp3-файлов. Музыку можно сконвертировать самому, а можно скачать набор музыкальных файлов в двух форматах по следующим ссылкам (источник):

  • Quake — папку music скопировать в папку <путь к игре>/id1/.
  • Scourge of Armagon — папку music скопировать в папку <путь к игре>/hipnotic/.
  • Dissolution of Eternity — папку music скопировать в папку <путь к игре>/rogue/.