Игры

Материал из ALT Linux Wiki

Игры в Linux, в том числе из Windows

В последние годы всё больше игр, без проблем запускающихся в Линуксе, множится на Стиме, приложение для которого в Альт-репозиториях наличествует. И всё же куда больше там хороших игр без поддержки Linux, а ещё остаются неохваченными иные источникии — такие как Эпики, Юбики, ГОГи да Электроискусники (для которых попросту нет штатного linux-приложения), а также игры, уже установленные на компьютер под Windows (вне зависимости от источника установки).

Давайте попытаемся исправить сложившееся положение и как-то приумножить коллекцию домашних развлечений.

Площадки

Galaxy of Gamers

Игры без DRM, активации, обязательного подключения к интернету: приобрёл, поставил — пользуйся. Работает прямо из браузера, в линуксе обходясь без лончера.

Линукс-игры поставляются в виде шелл-инсталляторов (по сути, архив с баш-скриптом в заголовке) и умолчально ставятся в ~/GOG Games/, а после просто работают.

Скачанные Windows-игры отказались ставиться через WINE — надо разбираться. Однако будучи установленными в винде, вполне себе стартуют посредством вайна — как минимиу «Кибирь: былой мир (пролог)» (Syberia TWBP) и «Hellpoint: The Thespian Feast». Правда, у обеих столь вымороченное управление, что ну бы их лесом. Хотя Кибирь внешне здорово похожа на ностальгический «BioShock: Infinite»…

Epic Games Store

Для этого «игрушечного магазина» существует «героический» графический клиент к «легендарному» питоньему лончеру командной строки (входит в комплект, доустанавливать не требуется). Кто бы ещё взялся собрать его в репозиторий (а то столько игрушек на раздачах-распродажах отловлено — жаба душит и хомяк гложет на Стиме заново их покупать, а без родного «пускача» ни вайном, ни протоном запускаться они не хотят).

На скорую руку пока сделал так:

  • скачал с гит-хаба и распаковал архив HeroicGamesLauncher'а;
  • от рута исполнил шаги из хвоста файлика HeroicGamesLauncher-main/README.md (предварительно установив требующийся для оного npm) — но не все, а только эти:
    • установил foreman командой npm i -g foreman,
    • из каталога с заготовкой лончера запустил npm install
    • и собрал бинарники командой npm run dist
    …на выходе получив дебиановский пакет HeroicGamesLauncher-main/dist/heroic_1.1.1_amd64.deb,
  • каковой перепаковал под Альта командой epm repack heroic_1.1.1_amd64.deb;
  • поставил результирующий heroic-1.1.1-alt1.repacked.with.epm.2.x86_64.rpm — как-то работает.

Из промежуточных итогов

  • Alan Wake на 64-битном вайне вполне ожидаемо не завёлся (см. таблицу ниже), на протоне тоже не захотел.
  • Inside из лончера работать не желает, а вот из ком.строки вайном таки запускается.
  • Just Cause 4 и Watch Dogs тоже не фурычат, вайном из ком.строки же требуют эпик-лончера.

В общем, приобретённые игры видит и устанавливает, но пока не запускает. Глубже не копал: опробую повдумчивей — допишу, что вышло.

Electronic Arts и Ubisoft Connect

Даже намёток linux-клиента, увы, не просматривается. А ведь у Юбиков перманентная распродажа всякой вкуснятины.

Nvidia Geforce Now

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

Есть как платная подписка (999 рублей в месяц), так и бесплатная (с очередями).

Для запуска GeForce Now в ALT Linux достаточно браузера Chromium и расширения для смены user-agent (например User-Agent Switcher for Chrome).

Далее, заходим в параметры этого расширения и в Custom User-Agents в поле New user-agent name пишем Chrome OS, а в поле New user-agent string пишем Mozilla/5.0 (X11; CrOS aarch64 13099.85.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.110 Safari/537.36.

Теперь заходим в раздел Permanent Spoof List, там указываем домен play.geforcenow.com и в User-Agent String выбираем добавленный User-Agent Chrome OS.

Теперь заходим на сайт https://play.geforcenow.com/ регистрируемся и играем.

Из того, что я тестировал (League of Legends, Fortnite) работает нормально, ну тут уже в зависимости от интернета. По словам разработчиков, минимальная скорость интернета должна быть не менее 15 мбит/сек, а оптимальная 25 мбит/сек.

WINE

Вайн-префикс по сути — каталог с игрой, подготовленный к запуску вайном определённой архитектуры (32- или 64-разрядным). Настраивается командой:

$ WINEARCH=win32 (или win64, параметр необязателен) WINEPREFIX="/путь/к/каталогу игры" winecfg

Её результатом в каталоге игры создаются подкаталоги /dosdevices, /drive_c и файлы .update-timestamp, system.reg, user.reg, userdef.reg — то есть, если игра уже настроена на неподходящую архитектуру (к примеру, при запуске из командной строки ругается wine 64-bit application not supported in 32-bit prefix), достаточно все их удалить и перезапустить команду выше.

После этого сразу можно пробовать запустить игру командой $ wine (или wine64) <exe-файл> прямо из её каталога, но для современных видеокарт предварительно лучше заменить 3D-библиотеки на таковые от вулкана.

Крайне досадно, что в Альте нельзя поставить WINE обеих архитектур вместе — пакеты конфликтуют. Разработчики других дистрибутивов как-то с этим справляются.

Альтернативы

  • Протон, которым и запускаются многие игры из Стима — переработанный компанией Гейба Ньюэлла WINE.
    Тоже неплохо бы пересобрать отдельным пакетом в репозиторий (образец спек-файла).
  • Лютрис, входящий в состав репозитория, однако не запускающий у меня на момент написания статьи ни одной игрушки/лончера (хотя с мест докладывают, что кое-где как-то работает) — требуется вдумчиво рихтовать рашпилем.
    Собственно, даже не альтернатива, поскольку сам паразитирует на вайне, протоне и других «игрозапускалках» — просто не определился, куда его приткнуть в рамках этой статьи.
  • PlayOnLinux

VULKAN

Дабы добиться максимального разгона игр, имеет смысл заменить некоторые 3D-библиотеки WINE на «вулканические».

  1. Содержимое каталога из скачанного архива распаковать в доступное всем локальным игроманам место (у меня это /opt/dxvk).
  2. Непосредственно из вайн-префикса игры, которую хочется подразогнать:

Добавление произвольной игры в библиотеку Steam

Из стим-лончера:

  1. «|+| ДОБАВИТЬ ИГРУ» в нижнем левом углу окна → «Добавить стороннюю игру…»«ОБЗОР», тип файла сменить на «все», выбрать ехе-шник из вайн-префикса.
  2. ПКМ по добавленной игре → «Свойства…» → вкладка «Совместимость» → принудительно «опротонить» последней версией.
  3. Дополнительно можно настроить запуск игры через оптимизатор (ПКМ по игре → «Свойства…» → вкладка «SHORTCUT» → в «ПАРАМЕТРЫ ЗАПУСКА» вставить gamemoderun %command%).

Итого

Опробованные игры
Наименование Примечание
Alan Wake В 32-битном вайне вполне играбельно. Жаль, нельзя иметь Оби Вана (оба вайна). Возможно, удастся через протон завести родную игру из Стима — осталось поймать распродажу.
Assassin's Creed: Black Flag
Assassin's Creed: Odyssey Даже на вулкане (у меня GTX-1060) тормозит несусветно. Неиграбельно вообще. Надо поковыряться — а вдруг.
Assassin's Creed: все прочие Пока не пробовал.
Control[1] Вполне бодренько, по-киношному (25..30 кадр/сек) на средних настройках в QuadHD.
Cyber Hunter Родной стимовский. Стреляется на стартовом экране с «неизвестной ошибкой».
Destiny 2 Оттуда же, но ни встроенным протоном, ни внешним вайном ни в какую, да ещё и без какой-либо диагностики.
Hard Reset Ставится прямо из Стима, остаётся включить совместимость по последнему протону — и алга!
Just Cause 4 Тормозит подобно Assassin's Creed: Odyssey.
Rage 2[1][2] Под вайном в QuadHD бегает шустренько без вулканизации.
Wolfenstein: Old Blood Под вайном в QuadHD без нареканий и вулканизации.
Wolfenstein: New Order Пока только в планах.
Wolfenstein: New Colossus[1][3] Под вайном летает даже без вулканизации.

Добавленный в библиотеку Стима, вылетает с ошибкой «Could not write crush dump».

Wolfenstein: Young Blood Никак: возможно, лицензионный заработал бы.

Недозамечательности

  1. 1,0 1,1 1,2 Не переносит переключения между приложениями в полноэкранном режиме — либо полностью выходить из игры через меню, либо запускать её в окне.
  2. Если звук по HDMI (к примеру, наушники воткнуты в один из мониторов), при запуске игры перепрыгивает на HDMI без индекса.
  3. Не переключается в разрешение кроме исходного — поморгает и возвращается.
    Звук после манипуляций с разрешением отстаёт секунды на три — лечится лишь рестартом игры.

Ссылки