m039 30.01.2010 15:15
Linux Games — Через wine к PlayOnLinux - Знакомство
Идея программы распространения скриптов настройки wine программ мне кажется крайне интересна. Справляется ли с этой задачей playonlinux? Отчасти. Но если даже и не справляется и является скромным проектом, то это не плохой старт для тех, кто может подхватить этот проект.
Playonlinux - программа использующая много скриптов, написанных на shell-e, которые автоматизируют установку игр под wine-ом. Так-же можно сказать, это shell программа, иногда использующая интерфейс через python(Жесть). Для ознакомления со списком игр, загляните сюда.
Саму программу можно скачать используя менеджер пакетов дистрибутива или с домашней странички проекта.
Зелененьким советую заглянуть на страничку мануала, на ней подробна описана установка игры. Все не на русском, но многое количества картинок сделают свое дело.
Теперь перехожу к более интересному. Сначала хочу описать сам алгоритм или способ работы программы, т.е. как все происходит, чему и будет посвящен этот пост. Потом посмотрим.
Принцип работы программы очень прост, потому что не использует большего чем представляет wine.
При первом запуске wine создает префикс. Для иллюстрации можете выполнить:
1 |
|
<�Один нюанс, новичку нужно будет скачать wine и все соответствующее. Данная программ все сделает автоматически, можно даже выбрать версию wine. Всё как говориться, храниться в одном месте - огромный плюс данной программы.>
После можете посмотреть, что именно создалось в папке ".wine" и поймете, что это маленький слепок системы windows, достаточной для работы wine.
На домашней страничке очень все добротно объясненно, самое главное это два рисунка:
Способ wine-ом: конфигурация хранится в .wine, а сама программа или игрушка установлена на жестком диске.
Способ playonlinux-ом: для каждой отдельной игрушки создается свой префикс. <�Т.е. если например будет установлена игрушка "Пингвин", то установится в "~/.PlayOnLinux/wineprefix/Пингвин".>
На ум приходят аналогия с программой q4wine. Программа playonlinux, а потом уже q4wine используют систему понятий префикса. Смысл всего происходящего таков, что игрушка будет храниться в одной папке со всеми присущими ей конфигурациями.
А если посмотрите даже в скрипт, который находится на странице поста про q4wine, то заметите, что есть такая переменная как WINEPREFIX. Так вот, можете в консоли попробовать, что-нибудь "WINEPREFIX=~/.wine0 winecfg", после чего создаться каталог .wine0 со всеми файлами конфигурации.
Также, на рисунках этого нет, но есть каталог ~/.PlayOnLinux/WineVersions со всеми версиями wine. И уже установленной игрушке можно будет выбрать другую версию из имеющего списка(в котором есть и системная).
Недостаток, который присущ многим скриптам в PlayOnLinux и до которого сразу и не догадаешься. Все скрипты наедятся, что вы установите игрушку в каталог "C:/Program Files/"(также думаю, проблема может возникнуть, если установить в "C:/Программы"), но я мне кажется ни у одного меня домашний каталог не резиновый. Плюс в этом есть, если что-то не понравилось сносишь папку находящуюся в "~/.PlayOnLinux/wineprefix/" и все как бы чисто, но естественно удалять лучше через саму программу playonlinux. Минус это огромный размер занимаемых игр.
Если не рассматривать playonlinux как программу установки игр, то можно сделать всё вручную, испльзуя сайт winehq.org. И тогда, я разбивал свой жесткий диск, что бы получился раздел , отведенный под игры или файлы занимающие много места. После чего спокойно запускаешь "wine /media/cdrom/setup.exe" и делаешь все по инструкции. На выходе при таком раскладе получиться, что вся конфигурация игрушки хранится в ~/.wine, а сама игрушка установлена на так называемом диске Z:, т.е. вне папки ~/.wine.
Что же предлагает playonlinux, он говорит примерно, если у вас мало места на разделе /home, то попробуйте сделать символьные ссылки на другие разделы. Во общем старается любыми способами сделать так, что бы игра установилась в каталог ~/.PlayOnLinux. Оно отчасти верно, потому что данные установки были приняты разработчиками проекта. Скрипт, который я отправил на верификацию, устанавливал игру в любой каталог, но при этом были строчки в скрипте, которые не использовали установленный API (по-человечески, я менял переменную в конфигурационном файле с помощью sed-a и еще использовал программу regedit). На, что мне очень лояльно посоветовали убрать это, либо спросить на форуме. Так, что если это кому то проблема, всегда можно договориться. :)
Так, что в эту копилку игр под названием playonlinux все подряд не попадает, что хорошо и нет. По мне так хорошо, но иногда хочется чего-нибудь новенького.
Идея этого проекта замечательная, а вот реализация всех функций и api мне очень не понравилось, если не сочтете данный топик угнетающим, то вторым постом напишу почему мне не понравилось писать скрипт.
За кадром остались незначительные соображения по поводу: маков, установки приложений(а не игр), рассмотрение расширений, пару слов о состоянии форума playonlinux, аналогия с djl и внештатный обмен не верифицированными скриптами.
garillka 30.01.2010 15:19 #
+ -3 -
пробовал, но все таки играть в игрушки под wine какое извращение.
Есть такие игры как braid, plants vs zombies, world of goo(который уже нативный), dyson, про которые так не скажешь :)
Ну я пробовал играть в king bounty, FOnline, ничего хорошего из этого не получилось.
А вот quake3 или world of goo совсем другое дело.
А вот quake3 или world of goo совсем другое дело.
В точку, я скрипт делал для kings bounty.
Но т.к. я поклонник казуальных игр, по мне вайн супер. Да и интерес к играм у меня закончился где-то 2003 году. А если сейчас посмотреть на стоимость игрушекп под оффтопик, то я не удивлюсь если линуксу всеми силами помещают нормально поиграть в новые игры. :)
Но т.к. я поклонник казуальных игр, по мне вайн супер. Да и интерес к играм у меня закончился где-то 2003 году. А если сейчас посмотреть на стоимость игрушекп под оффтопик, то я не удивлюсь если линуксу всеми силами помещают нормально поиграть в новые игры. :)
я не удивлюсь если линуксу всеми силами помещают нормально поиграть в новые игры. :)
Щито простите?
Отсутствие под линуксом самого популярного графического API? OpenGL в области игростроения уже чорт знает сколько бьётся в агонии только из-за id Software, а так значительная часть игр использует Direct3D
Вообще дело не в этом, дело в том что никто не хочет вкладывать усилия в портирование игр из-за мифического одного процента геймеров (с учётом популярности приставок, наверное, уже десятой или сотой доли процента геймеров)
Вообще дело не в этом, дело в том что никто не хочет вкладывать усилия в портирование игр из-за мифического одного процента геймеров (с учётом популярности приставок, наверное, уже десятой или сотой доли процента геймеров)
вот не надо тут. OpenGL в отличие от директикса куда более широко применяется. От свистоперделок, до игр. Алсо, труъ-девелоперы делают игры на двух бэкендах
От свистоперделок, до игр
Ну можно назвать хотя бы десять OpenGL игр, вышедших за 2009 год?
Алсо, труъ-девелоперы делают игры на двух бэкендах
Например? Epic Games, увы, забили на OpenGL для PC ещё с Unreal Tournament 3.
Ну можно назвать хотя бы десять OpenGL игр, вышедших за 2009 год?
не могу, не настолько игрок
Например
half-life?
не могу, не настолько игрок
Дело в том, что их практически нет. Из крупных фирм выпуском OpenGL игр занимается только id Software, у которой дела с лицензированием движка идут не очень хорошо
half-life?
Да, а вот Unreal поддерживал ещё Glide и S3 Metal. К выходу UT2004 осталась поддержка только Direct3D и OpenGL (ну ещё софтварный рендерер). Правда, всё это было давно. Сейчас ни Half-life 2, ни Unreal Tournament 3 на ПК используют только Direct3D.
ну спор не могу продолжать, ибо нет такой матчасти. В любом случае ОпенГЛ - наше всйо, опенсурс, еба!
Что-то в этом сообщении ассоциируется у меня со спорами x264 vs Theora.
Извините.
Извините.
Блжад, и правда.
Вопрос OpenGL-кунам: там до сих пор нет нативного рендера текста?
Вопрос OpenGL-кунам: там до сих пор нет нативного рендера текста?
По теме — PlayOnLinux полезен только своими зубодробительными скриптами для установки/работы некоторых игр, а в остальном все эти визарды только мешают
Там еще плюс, что для разных приложений можно использовать разные версии wine.
Ну пытался играть я в FOnline в последней версии wine, и там постоянно исчезали фреймы, приходилось играть на ощупь, потом вычитал что в такой то версии wine с этим все нормально, поставил playonlinux и с помощью него нужную версию wine и стало лучше. Но все равно с достаточной периодичностью игра вылетала.
В принципе это можно вообще не делать. ИМХО играть в игры лучше на нативной платформе.
Конечно лучше. Только нативных игр очень мало, а хороших нативных игр — единицы.
Имхо, на данном этапе это не более чем ещё одна ненужная надстройка над wine: игры, поддерживаемые POL, как правило прекрасно заводятся без бубнов и в чистом wine.
для меня PlayOnLinux - хорош именно своими скриптами запуска программ:
#!/bin/bash
# переписываем переменную $PATH для запуска программы из под другой версии wine
PATH="$HOME/.PlayOnLinux/WineVersions/1.1.33/usr/bin/:$PATH"
# изменяем переменную $WINEPREFIX
export WINEPREFIX="$HOME/.PlayOnLinux/wineprefix/1c_77"
export WINEDEBUG="-all"
# переходим в каталог с программой и запускаем ее
cd "$HOME/.PlayOnLinux/wineprefix/1c_77/drive_c/Program Files/1Cv77/BIN"
wine "$HOME/.PlayOnLinux/wineprefix/1c_77/drive_c/Program Files/1Cv77/BIN/1cv7.exe" $@
Причем после установки и тестирования программы в PlayOnLinux - можно сделать капсулу с запускающем скриптом ... работающей и без установленного в системе wine
и еще серьезный (+) - можно произвольно патчить вайн под конкретную программу и запускать только с ней (использовал для запуска fallout 3)
#!/bin/bash
# переписываем переменную $PATH для запуска программы из под другой версии wine
PATH="$HOME/.PlayOnLinux/WineVersions/1.1.33/usr/bin/:$PATH"
# изменяем переменную $WINEPREFIX
export WINEPREFIX="$HOME/.PlayOnLinux/wineprefix/1c_77"
export WINEDEBUG="-all"
# переходим в каталог с программой и запускаем ее
cd "$HOME/.PlayOnLinux/wineprefix/1c_77/drive_c/Program Files/1Cv77/BIN"
wine "$HOME/.PlayOnLinux/wineprefix/1c_77/drive_c/Program Files/1Cv77/BIN/1cv7.exe" $@
Причем после установки и тестирования программы в PlayOnLinux - можно сделать капсулу с запускающем скриптом ... работающей и без установленного в системе wine
и еще серьезный (+) - можно произвольно патчить вайн под конкретную программу и запускать только с ней (использовал для запуска fallout 3)
После 2-го был еще такой как Fallout: Brotherhood of Steel, который не пришей пизде рукав непонятно к чему вообще относится.
Ну молодец, обгадил BoS :) Ну и что, что она менее «ролевая», чем фоллаут. В своём жанре она просто шикарная.
http://en.wikipedia.org/wiki/Tactical_role-playing_game
http://en.wikipedia.org/wiki/Tactical_role-playing_game