Совсем недавно, почему-то вспомнил про серию "Петька и Василий Иванович". К своему удивлению, обнаружил, что первую и вторую часть портировали на android.
Решил поставить себе на ПК. Под wine он отлично поставился, но первая проблема, это отсутствие кодека для видео. Надо скачать iv5setup.exe . Но тут есть хитрость, есть ставить все компоненты, то инсталляция завершится неудачей. Для Петьки нужен только ir32_32.dll, так что если выбрать в инсталляторе только версию 3, то всё будет хорошо.
Для запуска Петьки без диска можно скопировать все полезные файлы с дисков (*.STR, intro.avi, Disk{1..3}.id).
Перед запуском ещё лучше установить в winecfg виртуальный рабочий стол, игра запускается в разрешении 640x480 и может попортить разрешение рабочего стола.
И вот Петька запустился - и звук есть и не тормозит, но есть один сильный косяк с отрисовкой некоторых объектов - кажется, что не работает прозрачность -
Я долго игрался с параметрами wine касающимися direct3d и directdraw, но ничего путного не вышло.
Потом решил, была не была, спрошу в теме на 4pda про Петьку, так как её курирует предствитель разработчиков, а на android Петька запускается через wine (exagear от Eltechs).
Оказалось, что они таки фиксили этот баг и правки есть в репозитории https://github.com/Eltechs/wine/tree/exagear_petka
Оставалось только скомпилировать wine из их репозитория и проверить результат.
Как лучше компилировать wine и, в частности, как компилировать 32-битную версию на 64-битной ОС описано тут http://wiki.winehq.org/BuildingWine
Я выбрал метод с chroot, как менее затратный.
Т.е. делаем chroot и заходим в него.
Версия wine в гит репе - 1.6, соответственно если в репах дистрибутива есть такая версия, то зависимости для сборки можно поставить пакетным менеджером. Хотя думаю и от другой версии тоже вполне себе подойдет, может придётся доставить пару пакетов, или изменить их версии. Но проще сделать chroot с подходящим дистрибутивом, я выбрал Ubuntu Trusty.
Т.о. в другой консоли копируем в chroot файл /etc/apt/sources.list:
После установки игра, в отличии от прошлых попыток отказалась запускаться с ошибкой dsound.
Решается быстро через winetricks (но не факт, что правильно :-) )
Ииииииии....
И всё хорошо -
Wine сам сделает ярлык типо ~/.local/share/applications/wine/Programs/BUKA/S.K.I.F/Petka.desktop, можно его скопировать на рабочий стол и сделать исполняемым, в ярлыке уже прописан правильный Path, но надо поправить Exec, так как в моём случае путь к вайну не был абсолютным.
В идеале, было бы круто написать скрипт для playonlinux и попросить их ещё собирать wine у себя. Может, если будет время и желание ;-)
Будем надеятся, что для запуска скоро выходящего Red Comrades Save the Galaxy: Reloaded всё это не понадобится и он будет нативным, благодаря Unity (новость).
P.S.
На всякий случай - скомпилированный wine, для Петьки положил сюда. (Должен работать как минимум на Ubuntu 14.04)
Решил поставить себе на ПК. Под wine он отлично поставился, но первая проблема, это отсутствие кодека для видео. Надо скачать iv5setup.exe . Но тут есть хитрость, есть ставить все компоненты, то инсталляция завершится неудачей. Для Петьки нужен только ir32_32.dll, так что если выбрать в инсталляторе только версию 3, то всё будет хорошо.
Для запуска Петьки без диска можно скопировать все полезные файлы с дисков (*.STR, intro.avi, Disk{1..3}.id).
Перед запуском ещё лучше установить в winecfg виртуальный рабочий стол, игра запускается в разрешении 640x480 и может попортить разрешение рабочего стола.
И вот Петька запустился - и звук есть и не тормозит, но есть один сильный косяк с отрисовкой некоторых объектов - кажется, что не работает прозрачность -
Я долго игрался с параметрами wine касающимися direct3d и directdraw, но ничего путного не вышло.
Потом решил, была не была, спрошу в теме на 4pda про Петьку, так как её курирует предствитель разработчиков, а на android Петька запускается через wine (exagear от Eltechs).
Оказалось, что они таки фиксили этот баг и правки есть в репозитории https://github.com/Eltechs/wine/tree/exagear_petka
Оставалось только скомпилировать wine из их репозитория и проверить результат.
Как лучше компилировать wine и, в частности, как компилировать 32-битную версию на 64-битной ОС описано тут http://wiki.winehq.org/BuildingWine
Я выбрал метод с chroot, как менее затратный.
Т.е. делаем chroot и заходим в него.
Версия wine в гит репе - 1.6, соответственно если в репах дистрибутива есть такая версия, то зависимости для сборки можно поставить пакетным менеджером. Хотя думаю и от другой версии тоже вполне себе подойдет, может придётся доставить пару пакетов, или изменить их версии. Но проще сделать chroot с подходящим дистрибутивом, я выбрал Ubuntu Trusty.
Т.о. в другой консоли копируем в chroot файл /etc/apt/sources.list:
sudo cp /etc/apt/sources.list /srv/chroot/ubuntu_i386/etc/apt/В моём случае, после правки /etc/apt/sources.list:
sed -i 's/^# deb-src/deb-src/g' /etc/apt/sources.listКлонируем себе репу (или скачиваем архив):
apt-get build-dep wine1.6
git clone -b exagear_petka --single-branch https://github.com/Eltechs/wine.git wineИ компилируем:
mkdir wine32 wine_petkaТеперь можно забрать с chroot "установленный" wine.
cd wine32
../wine/configure --prefix=/
make -j5
make install DESTDIR=/srv/wine_petka/
cp -r /srv/chroot/ubuntu_i386/srv/wine_petka /some/games/И уже у себя в системе (установочный диск (образ или папка) в моем случае в wine видна как E:, хотя можно прописать и unix путь, но тогда, кажется, в реестре wine у игры пропишется не правильная буква диска, но тут это не принципиально, так как игра всё равно не хотела запускаться с диском):
mkdir /some/games/wine_petka1
WINEPREFIX=/some/games/wine_petka1 wine_petka/bin/winecfg
WINEPREFIX=/some/games/wine_petka1 wine_petka/bin/wine ~/Загрузки/iv5setup.exe
WINEPREFIX=/some/games/wine_petka1 wine_petka/bin/wine E:\\SETUP.EXE
После установки игра, в отличии от прошлых попыток отказалась запускаться с ошибкой dsound.
Решается быстро через winetricks (но не факт, что правильно :-) )
WINEPREFIX=/some/games/wine_petka1 WINE=/some/games/wine_petka/bin/wine winetricks dsoundОпять копируем файлы для запуска без диска, заходим в папку с игрой и запускаем:
cd /some/games/wine_petka1/drive_c/Program\ Files/SKIF/Petka
WINEPREFIX=/some/games/wine_petka1 /media/WD1001FALS_1TB/games/wine_petka/bin/wine Petka.exe
Ииииииии....
И всё хорошо -
Wine сам сделает ярлык типо ~/.local/share/applications/wine/Programs/BUKA/S.K.I.F/Petka.desktop, можно его скопировать на рабочий стол и сделать исполняемым, в ярлыке уже прописан правильный Path, но надо поправить Exec, так как в моём случае путь к вайну не был абсолютным.
В идеале, было бы круто написать скрипт для playonlinux и попросить их ещё собирать wine у себя. Может, если будет время и желание ;-)
Будем надеятся, что для запуска скоро выходящего Red Comrades Save the Galaxy: Reloaded всё это не понадобится и он будет нативным, благодаря Unity (новость).
P.S.
На всякий случай - скомпилированный wine, для Петьки положил сюда. (Должен работать как минимум на Ubuntu 14.04)
Комментарии