Автор Тема: Запуск Civilization 3 под Wine [Решено]  (Прочитано 3792 раз)

Оффлайн snowman-fedya

  • Постоялец
  • ***
  • Сообщений: 209
Запуск Civilization 3 под Wine [Решено]
« : 11 Октября 2021, 22:19:48 »
Решил тряхнуть стариной, поставить и поиграть, однако трях не удался. На экране нет отрисовки части изображения:

причём временами изображение становится правильным:

но потом опять фон становится чёрным, играть нельзя
Matuntu-B64-12-20, wine ставил разные, везде один и тот же эффект.
На Рунту 16.04 + Мате всё работало без проблем. Страшно буду благодарен за полезный совет, где копать.

Оффлайн ivm

  • Ветеран
  • *****
  • Сообщений: 3072
  • Что бы ни случилось, всё будет хорошо!
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #1 : 12 Октября 2021, 00:06:23 »
Есть такое дело. Сколько ни пытался обновить Matuntu-X64, в которой в вайне установлена программа, Любое обновление приводило к утрате работоспособности программы. Благо дело у меня есть бекап раздела с этой системой и я смог её восстановить. После нескольких вариантов оставил всё как было. Распаковал из бекапа на раздел другого компьютера и не обновляю эту систему.

Оффлайн snowman-fedya

  • Постоялец
  • ***
  • Сообщений: 209
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #2 : 12 Октября 2021, 01:41:46 »
Есть такое дело. Сколько ни пытался обновить Matuntu-X64, в которой в вайне установлена программа, Любое обновление приводило к утрате работоспособности программы. Благо дело у меня есть бекап раздела с этой системой и я смог её восстановить. После нескольких вариантов оставил всё как было. Распаковал из бекапа на раздел другого компьютера и не обновляю эту систему.
Ну, у меня выделять целую машину для поиграть в циву-3 жирновато будет. Запускать под виртуалкой -- тоже оверкилл, да и тормозить будет, она сама по себе игра неторопливая. Должно же быть какое-то решение, причём скорее всего, простое, просто неочевидное. Как-то с библиотеками, с directx поиграться... было бы время...

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4788
  • Да будет свет!
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #3 : 12 Октября 2021, 02:19:02 »
Проблемы этой игры после обновления известны, но решение так и не найдено.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн snowman-fedya

  • Постоялец
  • ***
  • Сообщений: 209
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #4 : 12 Октября 2021, 13:16:25 »
Проблемы этой игры после обновления известны, но решение так и не найдено.
совсем печально. и ведь работало под 16.04 нормально. что же поменялось-то?

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4788
  • Да будет свет!
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #5 : 12 Октября 2021, 13:23:05 »
совсем печально. и ведь работало под 16.04 нормально. что же поменялось-то?
Если бы система ради сохранения игры не обновлялась, ничего бы не поменялось  :)
Делай с нами, делай как мы, делай лучше нас!

Оффлайн snowman-fedya

  • Постоялец
  • ***
  • Сообщений: 209
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #6 : 13 Октября 2021, 23:15:50 »
совсем печально. и ведь работало под 16.04 нормально. что же поменялось-то?
Если бы система ради сохранения игры не обновлялась, ничего бы не поменялось  :)
я оценил ваш юмор, но занудно скажу, что спрашивал совсем о другом. любая регрессия восстановима, и если понять, что вызывает "чёрный ландшафт", то можно сделать что-то для исправления, ну хотя бы попытаться. ну а говорить -- мол, "хотел играть так не обновлялся бы"... скажем так, некузяво

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4788
  • Да будет свет!
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #7 : 13 Октября 2021, 23:49:42 »
любая регрессия восстановима, и если понять, что вызывает "чёрный ландшафт", то можно сделать что-то для исправления, ну хотя бы попытаться
Насчёт "восстановимости" любой регрессии не соглашусь. Со своими вопросами о регрессии Civilization 3 советую обратиться к разработчику игры или в специализированное сообщество.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн snowman-fedya

  • Постоялец
  • ***
  • Сообщений: 209
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #8 : 17 Октября 2021, 17:58:15 »
Регрессия в либе gdi32.dll.so где-то в районе 2.7 версии wine стала приводить к black terrain -- чёрному игровому поле (кроме фигурок юнитов, который отрисовывались нормально).

Разборки кода приведены тут: https://bugs.winehq.org/show_bug.cgi?id=41930 впрочем, никто особо не стал это исправлять.

Ну и не патчить же самому код wine и не пересобирать (хотя тру линуксоид пойдёт этим путём).

Не тру (вроде меня) сравнит патченую либу и не патченую и выяснит, что разница в одном месте: код 6383 меняется на 0114. Сравнив две либы от разных версий wine, я увидел ту же разницу, только адрес был другой. Поэтому я поставил произвольную версию wine (5.0 взял для простоты), нашёл там gdi32.dll.so и хексэдитом поменял первое вхождение 6383 на 0114, после чего Цива 3 заработала правильно. Проверять на других версиях уже лениво. Наверное, это будет работать на всех вайнах, где эта либа в формате эльфа, в свежих вайнах есть тенденция перевести всё в формат PE и там уже вряд ли такая замена прокатит.

Надеюсь, это будет полезно ещё кому-то.

Всем поучаствовавшим в обсуждении большое спасибо. Я бы запостил это в обсуждение, но тему прикрыли :(

Оффлайн snowman-fedya

  • Постоялец
  • ***
  • Сообщений: 209
Re: Запуск Civilization 3 под Wine [Решено]
« Ответ #9 : 17 Октября 2021, 20:17:36 »
Проверено под wine 6.18 staging, замена в gdi32.so сработала и отрисовка terrain как положено. Поиграю, посмотрю, нет ли глюков, мало ли на что ещё такой метод может подействовать...

Есть падение. Но непонятно от чего, ранее такое тоже случалось...
« Последнее редактирование: 17 Октября 2021, 23:17:07 от snowman-fedya »