Здравствуйте форумчане! Я думаю не секрет (для тех, кто пытался играть в сие чудо СНГшного игропрома на Linux), что сохранения в MoW:AS2 под Wine, в Linux не работают в принципе: при любой попытке сохранения игра нагло выплёвывает на юзера ошибку следующего содержания:
Program will be terminated
APP_ERROR: Resource
'Путь/к/файлу/сохранения.jpg' is not a valid supported image (eBitmapImageStd.cpp, 95)
EIP=7bc12517 [render_material load]
EAX=079ffc28 EBX=31e85620 ECX=0000000c EDX=079ffca0
ESI=31e855a8 EDI=31e855a0 ESP=079ffc28 EBP=079ffc7c
>
img.std.get_surface(Путь/к/файлу/сохранения.jpg)
Суть состоит в том, что при сохранении игра делает скрин и попытавшись его прочитать (или во время создания скриншота) по какой-то причине не может произвести операции над файлами с кодировкой MPEG (jpg, bmp, png и т.п.).
Покопавшись в интернете и включив интуицию, я выдвинул несколько версий, касаемо возникновения ошибки:
- Ошибка возникает из-за DirectX. В её пользу говорит то, что при переключении с дефолтного для игры dx11 на dx9 проблема исчезает (но исчезает возможность игры по сети, ибо для смены библиотеки нужно откатывать версию игры аж на 5 лет патчей)
- Ошибка возникает из-за встроенного в игру Bandicam или Xvid, т.к. возможно игра читает изображения через них
- Ошибка возникает из-за какой-то внутренней проблемы движка (Самый худший вариант ибо тогда исправить ошибку практически невозможно, но т.к. на Вин10 игра спокойно работает есть шанс, что причина кроется всё-же в 1 или 2)
И собственно я хотел бы узнать: кто-нибудь обходил данную ошибку? откуда она может быть - DirectX, Xvid, Bandicam (может кто из формучан разбирается в API dx и может сказать хотя бы его ли это вызов)? что значат все эти EAX, ESI и т.п.
Ну и естественно другие предложения по исправлению бага приветствуются, за исключением советов типа: «поставь Вин второй системой и не парься» - это и так очевидно, но «мы лёгких путей не искали»)))