2 июня 2011 2.06.11 13 40K

Установка и запуск игры Terraria на MacOS и Linux (через Wine)

+4

Установка и запуск игры Terraria в Linux (через Wine)

Доброго времени суток! Как оказалось, пользователей различных дистрибутивов Linux, пытающихся запустить «Террарию» в «бутылке» довольно много. И, естественно, далеко не у всех это получается. Основной причиной (помимо лени) является необходимость предварительной установки Microsoft .Net Framework 4-й версии и Microsoft же XNA (Крайне желательно, тоже 4-й версии). Впрочем, очень многие windows-пользователи так же ноют по поводу «не запускается» игра (использующие, в основном, пиратские копии игры, но не догадывающиеся сами установить .NET и XNA).

Лучше заранее убедиться, что ваша видео-карта поддерживается и может работать с XNA (Это касается и Windows-пользователей)
Список здесь:
www.xnawiki.com/index.php?title=Graphics_card_compatibility
(Стоит заметить, что, если карты в списке поддерживаемых нет то это ещё не значит, что она не может работать с XNA. Но если ваша карта в списке неподдерживаемых — увы, с ней вам поиграть в «Террарию» не светит)

Итак, по пунктам (щёлкаем на спойлер):

Пункт 0, только для пользователей MacOS (На Linux не требуется):
0a: macports
0b: набираем в консоли

sudo port install winetrickssudo port install wine-devel

Пункт 1:
Устанавливаем Wine и Winetricks (если не установился автоматом и если они у вас до сих пор не установлены) — крайне желательно, последних версий.

Пункт 2:
Устанавливаем Steam (можно через web-сайт). Как вариант — можно запустить уже установленный (даже в Windows, если у вас есть доступ к папке с ним). При установке Steam'а, он может начать обновляться, но зависнуть или вылететь в процессе обновления. Просто запустите Steam, он дообновится сам. После обновления — залогиньтесь.

Пункт 3:
Устанавливаем Terraria через Steam и пробуем запустить. Steam так же сам должен начать установку XNA (если он у вас к этому моменту ещё не установлен) во время установки или запуска игры. Если игра не запустится, перейдите к следующему пункту.

Пункт 4:
Выйдите из Steam'а

Пункт 5:
Запустите игру через консоль (терминал):

cd <Путь до папки с игрой — У вас он может отличаться>

Например: cd .wine/drive_c/Program Files/Steam/steamapps/common/terraria
(Чтобы перейти в папку с игрой)

wine Terraria.exe
После этого должно появиться сообщение, что вам нужен установленный Mono для Windows

Пункт 6:
Запускаем Winetricks и устанавливаем Mono 2.10 и 2.8 + Так же может понадобиться установка xact и xinput
( Если вы пользуетесь графической оболочкой последних версий Winetricks'а, то нужные пункты будут в меню «Select the default wineprefix» -> «Install a Windows DLL or component» )

Пункт 7а:
Скачиваем .NET 4 отсюда:
www.microsoft.com/downloads/en/details.aspx?familyid=0a391abd-25c1-4fc0-919f-b21f31ab88b7

И устанавливаем. Вручную, запуская файл с помощью Wine'а или
Через консоль:
wine dotNetFx40_Full_x86_x64.exe
(Вместо dotNetFx40_Full_x86_x64.exe может быть полный путь до файла установки. Не забудьте «взять» его в кавычки, если в пути у вас присутствуют пробелы, или ставить знак "\" перед каждым пробелом)

Установка, скорее всего, прервётся и нужно будет её повторять до тех пор, пока установщик не предложит восстановить установленную программу (пункт «Repair» в установщике). Соглашаемся на восстановление, ждём около полминуты и, если процесс «зависнет», «убиваем» его. Нужные нам компоненты уже должны были быть установлены.

Пункт 7б:
Если появляется сообщение что NET уже установлен, то придётся запись о его установке стереть вручную в реестре.
Запускаем regedit
Через консоль:
wine regedit
( Так же можно найти regedit.exe и запустить его вручную. Он, обычно, на виртуальном «Диске C:». Полный путь, обычно, примерно такой: '/home/<Имя пользователя>/.wine/dosdevices/c:/windows/regedit.exe' )
и удаляем следующий нод (пункт):
HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v4
Затем возвращаемся к Пункту 7а

Пункт 8:
Возможно (А, возможно, и нет), потребуется скопировать нужные файлы библиотеки в папку с игрой.
Нужные файлы называются
Accessibility.dll, System.configuration.dll, System.dll, System.Drawing.dll, System.Windows.Forms.dll, System.Windows.Forms.DataVisualization.dll and System.XML.dll
(если лишних 200 мегабайт не жалко, можете скопировать всё)
И находятся они в папке
/windows/Microsoft.NET/Framework/v4.0.30319/
на «виртуальном» «Диске C»
(Или же можно попробовать «стащить» их из реально установленной Windows)

Через консоль скопировать можно так:
cd <папка с игрой>
например: cd .wine/drive_c/Program Files/Steam/steamapps/common/terraria
cp ~/.wine/drive_c/windows/Microsoft.NET/Framework/v4.0.30319/* .

Стоит заметить, что в будущем, при установке обновлённых версий 4-го .NET, название папки, откуда брать файлы, может несколько поменяться.

Пункт 9:
Запускаем Steam, логинимся, запускаем игру.
При этом может появиться окошко с ошибкой, но, после его закрытия, игра через несколько секунд все равно запустится.

Пункт 10: Если ничего не получается, попробуйте сделать всё заново.

С «пираткой» почти всё то же самое, только XNA придётся устанавливать вручную и пути несколько поменяются.

Вся работа, на самом деле, сводится только к установке Wine+Winetricks, Steam, .Net 4, XNA 4, xact, xinput и самой игры, а также копировании нескольких файлов из каталога в каталог. Не намного сложнее и дольше, чем в Windows.
Сама игра после установки идёт без проблем. Мультиплеерная составляющая так же работает замечательно (Однако, при создании сервера могут возникнуть проблемы).

Игра хорошая, мне не жалко было «отдать» за неё 10 «баксов»

PS Спасибо уважаемому Тому Гейгеру за внятную инструкцию на английском (хоть и с некоторыми недочётами), ссылка на которую написана ниже
tom-geiger.de/?p=163
PPS Как вариант — игру можно запускать в виртуальной машине с Windows.


Лучшие комментарии

Спасибо чувак, один бы я еще долго додумывал, как террарию на убунту запихнуть
Как вариант — игру можно запускать в виртуальной машине с Windows.
Мне это кажется оптимальным вариантом для запуска игр на лине. Ибо с вайном порой приходится потрахаться даже при наличии полной пошаговой инструкции.
Ура, игра обновилась до 1.0.3

Нововведения и исправления:
+ Новые предметы:
Black Lens (Чёрные Линзы)
Sunglasses (солнцезащитные очки)
Jungle Armor (Броня Джунглей — заменяет собой Кобальтовую)
И ещё один предмет для заклинателей — Иди и найди его!
* Исправлена ошибка с распространением семян в Джунглях
* Исправлен баг с артефактом «Облако в Бутылке». Теперь персонаж не получает ранения, падая с большой высоты, если у поверхности он применил этот артефакт (артефакт стал корректно сбрасывать дистанцию падения)
* Уменьшили общую защиту Molten armor
* Meteor armor сбрасывает стоимость использования Space Gun до 0
* Для некоторых магических предметов увеличен урон
* И некоторые другие
Ну, ничего лучше Win XP для пользовательского сегмента Microsoft ещё не придумала.
Но вопрос немного о другом был. Впрочем, уже не важно

Чувак, а обязательно покупать игру? Или достаточно иметь исходники?

А минусить-то чего?! 0о
Не нравится — не читайте.

Если вас интересуют только игры — покупайте приставки.
Да и на Linux-системах, и на Mac сейчас появляется всё больше игр. Правда, в первую очередь, это кросс-платформенные проекты, но от этого никому не хуже. Где-то натыкался на ссылку, что игроков в Minecraft, играющих под Linux около 8-10% от общего числа
мда-уж, самый отстойные системы, хотя вру, это системы не для игр, так что они норм :3
Не всегда. Производительность игр, как правило, в виртуалке заметно ниже, да и далеко не все запустятся. Иногда и с Wine'ом проблем нет. А в некоторых случаях игру можно запустить только под невиртуализированной Windows (Чаще всего — из за всяких защит и ограничений). Впрочем, ситуация начинает меняться.
Читай также