Запуск System Shock 2 под Linux'ом

Автор LongShad, 29 августа 2010 20:11:02

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

LongShad

Решил попробовать эту игру. Скачал образ. Установка проходила параллельно на Linux и на Windows XP. Версия Wine - 1.1.42. Рабочее окружение - Gnome.
Сначала была проблема с монтированием mdf-образа. Хоть в сети написано что это делается так:
mount -o loop,iocharset=utf8 -t iso9660 ~/images/GameImage01.mdf /mnt
У меня сообщает что тип файловой системы не совпадает:
Цитироватьmount: wrong fs type, bad option, bad superblock on /dev/loop0,      missing codepage or helper program, or other error      In some cases useful info is found in syslog - try      dmesg | tail  or so
Пришлось ставить из репозитория mdf2iso, чтобы сконвертировать mdf-файл в iso-образ. Он, в свою очередь, прекрасно монтируется таким образом:
mount -o loop ~/файл.iso /mnt
Запустил autorun.exe, нажал кнопки Proceed и Install. Во время установки wine что-то непоравильно работал с окнами. Диалог "Эта игра не поддерживает Win2000, хотите продолжить?", в wine появлялся на заднем плане, в то время как на Windows он правильно. Пришлось переключать окна Alt-Tab, чтобы найти этот диалог, а не думать что установка зависла. Во остальном дальше все нормально. В конце установщик предлагает зарегистрировать игру, запуская EREGIP.EXE с диска. В Windows все нормально, в Wine окно с просьбой о регистрации не появилось, а процесс eregip.exe не отвечал. Пришлось убить его и установка завершилась успешно.
Запуск игры, разумеется, на обоих компьютерах ни к чему не приводит.
Качаю комплексный патч с исправлением ошибок, ddfix и WidescreenMod. Ставлю все компоненты патча. На Windows проблем нет. На Linux - бяки.
Там в качестве оконного менеджера выбран compiz и при запуске shock2.exe все окна переходят в режим обзора (уменьшаются в размерах). Окно игры появляется как обычное окно, но не раскрытое на весь экран. В итоге нижняя часть экрана почти не видна, только чуть-чуть видна кнопка "Exit". Мышь мигает при перемещении, также как в Thief DP и Gold. Увеличивал разрешение экрана, но игра все равно запускалась в 640x480. Попробовал удалить WidescreenMod, не помогло.
ddfix стоит той же версии, что на Thief Gold, но там он работает нормально. Даже настройки скопировал, без изменений. Оказалось дело в оконном менеджере compiz. Если запустить менеджер по умолчанию:
metacity --replace
Игра запускается! Без глюков!
Вот и приходится перед запуском Шока менять оконный менеджер.
Сейчас не знаю кому жаловаться - в Wine, ddfix или авторам compiz. Думаю, последнее.

Сейчас проблема такова. Если разрешение 640x480, невозможно выйти в главное меню (игра зависает, пока не нажмешь Esc снова), как раньше было с Thief Gold без ddfix.
Если выбрать любое разрешение больше, игра начинает тормозить. С расширением 800x600 тормоза минимальны, но монитор ругается на неподдерживаемое разрешение. Из-за этого после возвращения в игру появляется шикарная надпись на полэкрана. С большими разрешениями играть невозможно.
Зато видео воспроизводится, в отличие от Thief Gold. Попробую еще с опциями ddfix.ini повозиться.
Обновление:
Ух ты! А ddfix, оказывается и не включен! В shock2.exe есть 2 строки ddraw.dll, а не ddfix.dll.
Поменял. Поставил версию 1.4.5. Теперь при опции
UseCompatibleZBuffer=1
игра вылетает при загрузке сохранения или начале новой игры.
А при
UseCompatibleZBuffer=0
зависает (на любых разрешениях).
Вернул 1.3.11b. Стала загружаться, но те же тормоза. В списке доступных разрешений в Options - только 640x480.
Так как же все-таки заставить игру работать быстрее на высоких разрешениях?
Поскольку shock2.exe уже пропатченный и работает через ddfix, решил еще раз запустить compiz вместо metacity. Теперь игра нормально раскрывается на весь экран и, не поверите, на 1280x1024 стала работать почти без тормозов. Правда иногда случаются приступы тормознутости и появился еще один баг. Иногда при выходе в главное меню compiz "не понимает где мы сейчас находимся":
- Показывает игру, но находимся в главном меню.
- Не успевает показать меню (черный экран).
- Показывает меню, но при выходе из меню игру не показывает.
В общем, от времени удержания клавиши Esc зависит то - полностью или нет мы попадем в главное меню. Если Esc быстро нажать, то картинка остается как в игре. Если чуть-дольше - то черный экран. Если держать Esc как надо, появится главное меню. Если передержать Esc (перегруз) я снова попадаю в игру. Аналогично с выходом из главного меню :biggrin:.
В общем, на данный момент намного комфортнее играть в Windows, чем через Wine со всякими Компизами.
[Исправлено: LongShad, 29 авг. 2010 22:41]