Запуск игры World of Tanks под ОС Linux: сборка wine с нуля
Необходимо отметить, что рассматриваемый способ относится к так называемым Debian-based дистрибутивам операционной системы GNU/Linux, в частности, к Kubuntu — одной из наиболее простых в освоении и работе системе этого семейства. Основное ее отличие от Ubuntu только в используемой среде рабочего стола: KDE вместо Gnome3 или Unity. Однако это не окажет существенного влияния, если вы попытаетесь следовать данной инструкции в окружении того же Gnome, XFCE, LXDE и т.д. Использование конкретной оболочки — дело вкуса и ваш личный выбор, а удобство, как известно, — дело привычки.
Все описанное ниже предполагает наличие элементарных знаний ОС GNU/Linux: что такое домашний каталог, для чего нужен терминал (или командная строка), кто такие sudo, root и что они могут, и так далее. Эти знания позволят вам всегда иметь актуальные версии программного обеспечения, гибко следовать изменениям, избегать несовместимости программного и аппаратного обеспечения, устранять ошибки самостоятельно путем наложения патчей и многое другое. К тому же хорошо собранный wine позволяет в той или иной степени успешно запускать и другие Windows-приложения и игры.
Для запуска понадобится wine — своеобразная прослойка между Windows-приложением и системными вызовами ОС GNU/Linux.
Зайдите на http://www.winehq.org/, справа вы увидите блок Latest Releases, в нем две строки: Stable и Development. Первая — это стабильный релиз wine, второй — это последний доступный на текущий момент. Какой выбрать — решать вам, но все же лучше использовать Development-версию, так как в ней могут быть добавлены новые возможности, улучшена прежняя функциональность и программы могут работать быстрее.
Далее необходимо скачать winetricks от Dan Kegel — это скрипт, или командный сценарий, который позволит существенно упростить установку некоторых компонентов wine и дальнейшую его настройку.
Зайдите на http://wiki.winehq.org/winetricks_ru и, следуя инструкциям, сохраните себе скрипт в домашний каталог. Не забудьте присвоить ему атрибут «исполняемый», для этого откройте терминал и выполните команду chmod +x winetricks. После этого его можно запускать как из командной строки, так и просто двойным кликом, скрипт имеет довольно дружелюбный к пользователю интерфейс.
Существует проблема с raw input API в wine, которая приводит к невозможности управления курсором в игре. Для устранения этой проблемы нужно применить патч к wine от Vincas Miliūnas.
Чтобы немного поднять производительность (количество FPS в игре), можно использовать еще один патч, который расположен Здесь
Для установки необходимо проделать следующие шаги:
Распаковать скачанный архив в отдельную папку.
Положить оба файла патча в эту папку.
Запустить терминал, зайти в каталог с распакованными файлами. Перемещение по каталогам осуществляется командой cd, кнопка Tab помогает не дописывать названия каталогов полностью.
Применить оба патча (скачанных ранее) командой patch -p1 < имя_файла.patch. Последовательность патчей значения не имеет.
Выполнить команду ./tools/make_requests (чтобы учитывались изменения, внесенные патчами).
Опционально: выполнить команды autoheader и autoconf, но все работает и без них.
ВАЖНО! У wine довольно много зависимостей. Чтобы поставить их все сразу автоматически, выполните команду sudo apt-get build-dep wine и согласитесь с тем, что будет предложено.
Сконфигурировать wine командой sudo ./configure. Дополнительные параметры конфигурирования понадобятся, только если будут ошибки при запуске игры.
После завершения вы должны увидеть что-то похожее на "configure: Finished. Do 'make' to compile Wine".
Начать сборку командой sudo make -j4, где -j4 является количеством одновременно работающих задач. Если у вас многоядерный процессор, можно изменить этот параметр (увеличить на несколько единиц) и добиться более быстрой сборки (тестировалось на Intel Core i7, ОС видит 8 ядер (4 физических + технология Hyper-Threading), собирается за пару минут при -j8).
После сборки вы увидите сообщение Wine build complete. Выполнить команду sudo make install.
По завершении предыдущей команды перезагрузить wine командой wineboot. При этом программа попросит установить Wine Mono и Wine Gecko — установите.
Чтобы игра запустилась, необходимо с помощью winetricks поставить некоторые компоненты. Выполните команду: winetricks d3dx9_36 vcrun2008 corefonts msxml3 wininet ie7. Это позволит запустить не только саму игру, но и лончер (WOTLauncher.exe) для проверки наличия и установки обновлений игры.
Ну и, наконец, зайдите в папку с установленной игрой, запустите WorldOfTanks.exe и играйте.
Некоторые особенности описанного выше способа:
На wine 1.5.8 (последняя версия на момент написания статьи) режим артиллерии работает без переназначения клавиш (по клавише Shift).
Файл конфигурации игры лежит в домашнем каталоге в .wine/drive_c/users/имя_пользователя/Application Data/Wargaming.net/WorldOfTanks/preferences.xml, разрешение экрана можно менять как из настроек самой игры, так и редактируя этот файл в разделе Device preferences. Если вы настроили игру так, что появились проблемы с запуском — просто удалите этот файл, игра при повторном запуске создаст его заново с параметрами по умолчанию.
Игра в режиме полного экрана (fullscreen) под GNU/Linux сворачивается и разворачивается некорректно. Для удобства можно использовать другой виртуальный рабочий стол (не отдельный X-сервер!) и запускать игру в оконном режиме, что позволяет легко переключаться на другие рабочие столы и не закрывать игру каждый раз. Функция виртуальных рабочих столов доступна в подавляющем большинстве современных дистрибутивов.
Звук работает отлично.
ВНИМАНИЕ! Дополнение только для тех, кто является владельцем видеокарты NVIDIA (или ноутбука с такой видеокартой) с технологией Optimus.
Что представляет собой эта технология? В системе имеется две видеокарты: встроенная в мат.плату (как правило, Intel HD Graphics 3000, предназначенная для экономии заряда батареи), и дискретная (динамически подключаемая) видеокарта, призванная обеспечить производительность в требовательных к обработке видеоприложениях. К сожалению, несмотря на наличие драйверов для Optimus-видеокарт под Linux на официальном сайте, попытка установить эти драйвера приводит к падению X-сервера и общей некорректной работе системы. В связи с этим группой энтузиастов был дан старт проекту http://bumblebee-project.org/, который вполне успешно позволяет использовать технологию Optimus. Инструкция по установке Bumblebee, к сожалению, выходит за рамки данного руководства, однако существует команда для оптимальной работы World Of Tanks (которая не особо отличается от традиционного запуска иры под wine):
optirun -c proxy wine /путь_до_папки_с_игрой/World_of_Tanks/WorldOfTanks.exe
Просто создайте ярлык запуска игры с этой командой, чтобы не запускать каждый раз через терминал. Небольшое пояснение относительно параметров: optirun — это сам Bumblebee, -c proxy — это способ «общения» дискретной и встроенной видеокарт, при котором значения FPS наибольшие, т.к. обработка ресурсоемких видеопроцессов идет на мощной дискретной видеокарте, а встроенная в этом случае только отвечает за вывод на дисплей.
Источник: worldoftanks.ru