Crossroads » BLOG » Об играх » SWTOR. Установка на Linux

SWTOR. Установка на Linux

  • Dislike
  • 0
  • Like
Star Wars the Old Republic — достаточно старая, но всё ещё популярная MMO в жанре RPG. Изначально игра распространялась по подписке и в последствии перешла на модель «Free to Play». Но в каноническое понятия f2p игра вписывается с большим количеством оговорок, так как в полном объёме она доступна только подписчикам и с рядом ограничений тем, кто был подписчиком на момент выхода последних сюжетных дополнений. Остальные же могут играть в неё бесплатно, но с серьёзными ограничениями и прогресс доступен только в пределах основной сюжетной линии, до 50-го уровня. На сегодня их 70.

Игра написана и официально поддерживается только для операционных систем Windows начиная с Windows 7. Для установки игры на Linux нам потребуется современный 64-х битный дистрибутив, Wine-Staging, Winetricks и умение работать в Linux на уровне пользователя. В официальной базе Wine для игры версии 5.Х рекомендуется Wine-Staging версии 3.8. То есть доподлинно известно, что эта версия игры идеально работает с этой версией Wine. Игра периодически обновляется, Wine тоже. В данном примере я буду устанавливать игру на Wine версии 3.18.

Если у вас уже установлен Wine, то убедитесь в то, что установлена именно Staging версия, в противном случае замените. Более подробно об установке и настройках Wine можно почитать по этой ссылке. После того, как Wine и 32-х битные библиотеки установлены и готовы к работе, приступаем к установке самой игры.

Создаём префикс Wine для SWTOR:
WINEPREFIX=~/SWTOR


Таким образом в каталоге Home была создана папка SWTOR. Укажите свой путь, если хотите установить префикс в другое место. ОС у нас 64-х битная, соответственно и префикс Wine был создан 64-х битный. С помощью команды «winecfg» открываем настройки Wine для нашего префикса.
WINEPREFIX=~/SWTOR winecfg


Единственное, что тут имеет смысл поменять — это во вкладке «Staging» включить CSMT. Опция спорная, но в ряде случаев даёт прирост производительности. SWTOR, похоже, тот самый случай. Опции ниже — на ваше усмотрение и лучше их не трогать до запуска самой игры. В эти настройки всегда можно вернуться позже.

Далее, с помощью Winetricks устанавливаем некоторые библиотеки, такие как поддержка Сети, VC Runtime и прочее.
Похоже, что данный шаг на сборках Staging 4.20 и новее больше не требуется. Установка же vcrun2008 вообще вызывает ошибку в загрузчике.
WINEPREFIX=~/SWTOR winetricks vcrun2008 msls31 winhttp


Процесс займёт какое-то время в зависимости от скорости вашего ПК и соединения с Интернетом.

По завершении процесса можно устанавливать саму игру. Имеется ввиду, что мы уже скачали установщик и он лежит в папке ~/Downloads.

WINEPREFIX=~/SWTOR wine ~/Downloads/SWTOR_setup.exe


Используется путь по умолчанию, так как мы уже расположили весь префикс там, где нам удобно. Однако, если игра у вас надолго, то имеет смысл разместить префикс отдельно от файлов игры (устанавливать игру на диск Z). Wine развивается и изменяется. Иногда возникает необходимость в полной замене префикса. После завершения установки загрузчика запускаем его.
WINEPREFIX=~/SWTOR wine "/home/user/SWTOR/drive_c/Program Files (x86)/Electronic Arts/BioWare/Star Wars - The Old Republic/launcher.exe"


То есть WINEPREFIX=~/SWTOR wine и путь до «launcher.exe». Скорее всего вылетит ошибка. Но этим самым в папке «Star Wars - The Old Republic» был создан файл «launcher.settings». Даже если загрузчик запустился, то закрываем его и правим «launcher.settings» по адресу ~/SWTOR/drive_c/Program Files (x86)/Electronic Arts/BioWare/Star Wars - The Old Republic.

В нём ищем параметр "PatchingMode": и приводим всю строку к следующему виду:
, "PatchingMode": "{ \"swtor\": \"SSN\" }"


Далее ищем "bitraider_disable": и меняем значение «false» на «true».
, "bitraider_disable": true


Сохраняем изменения и запускаем загрузчик снова.
WINEPREFIX=~/SWTOR wine "/home/user/SWTOR/drive_c/Program Files (x86)/Electronic Arts/BioWare/Star Wars - The Old Republic/launcher.exe"


На этот раз всё должно работать и можно вводить свои данные авторизации. Загрузчик скачает и установит саму игру, что займёт время.

Создайте bash-скрипт для запуска загрузчика, чтоб не вводить каждый раз команду в терминал. Пример содержимого скрипта:
#! /bin/bash
WINEPREFIX=~/SWTOR wine "/home/user/SWTOR/drive_c/Program Files (x86)/Electronic Arts/BioWare/Star Wars - The Old Republic/launcher.exe"


По окончании установки можно запускать саму игру.

Если у вас проблемы с разрешением экрана (интерфейс, чат и прочее выводится в нормальном соотношении сторон, текстуры персонажей и всего остального растянуты), то в настройках Wine для префикса игры включите «виртуальный десктоп» с родным разрешением вашего монитора. После чего всё должно выглядеть как надо. В сборках с патчем Proton Fullscreen Hack проблем с соотношением сторон не будет.

***
Если вы хотите использовать локальную сборку, то добавляйте полный путь до бинарников WINE вместо команды "wine". Готовые сборки можно найти здесь. Там же описана установка DXVK в префикс. SWTOR работает идеально с D9VK.
В команду запуска так же следует добавить следующее: WINEESYNC=1 WINEFSYNC=1 (Если ядро не поддерживает Fsync, то будет использоваться Esync. Сборка WINE так же должна поддерживать Fsync. Минимальная версия WINE - 4.11). Для карт nVidia: __GL_THREADED_OPTIMIZATIONS=1. Для карт AMD и Intel: mesa_glthread=true. Игра - 32-х битная. На случай вылетов из-за ошибки памяти добавьте следующее: WINE_LARGE_ADDRESS_AWARE=1 (сборка Wine должна поддерживать данное решение). Последний шаг опциональный, так как мне не известны случаи, когда SWTOR вылетала по причинам, касательным этой опции. Сборки WINE по ссылке выше поддерживают всё, что здесь перечислено.
Опция "CSMT" в настройках Staging всё так же не рекомендуется, по прошествии времени. Но и видимых проблем в этой, отдельно взятой игре, тоже не вызывает.
Like Dislike

___
Tatyana K.



Article is edited by: Blacksmith - 21-04-2024, 12:48
Reason: Процесс установки отредактирован под более свежую версию WINE.


Tags: Linux, Wine, Wine Games


 
  • Creative Commons Licence
  • Norton Safeweb
  • Website Uptime Monitoring By ServiceUptime.com