DevBug blog

О Linux, Java, разработке ПО и не только

EVE and Debian

С момента обещания о написании статьи про запуск EVE в Debian прошло много времени. За это время многое изменилось как в Debian, так и в самой EVE: вышел релиз Lenny, а мир EVE, в свою очередь может похвастаться выходом нового пата Apocrypha. Что нового в Debian и в EVE читаем на официальных сайтах.

Итак, что мы имеем:

Linux debian 2.6.26-1-amd64  x86_64 GNU/Linux

Клиент EVE Apocrypha

Wine 1.0.1-1.

Что необходимо:
-DirectX
-Установленные драйвера для Вашей видео карты.
Кроме того, желательно заранее скопировать себе из папки Windows\System32 все .dll файлы. Да, все скопированные файлы нам не понадобятся, но чтобы потом не бегать не искать у соседей и не качать из интернета необходимые .dll лучше скопировать себе.
Итак устанавливаем для начала Wine:

 aptitude install wine

После установки от имени Вашего пользователя запускаем настройку Wine:
winecfg

В появившемся окне в закладке «Приложения» внизу окна выбираем версию Windows «Windows XP»

Теперь запасаемся терпением и открываем закладку «Библиотеки»
Здесь нам необходимо будет указать какие библиотеки (из DirectX или из Wine) необходимо использовать: сторонние( native) и встроенные(builtin).

“d3d8″=”builtin”

“d3d9″=”builtin”
“d3dim”=”native”
“d3drm”=”native”
“d3dx8″=”native”
“d3dx9_24″=”native”
“d3dx9_25″=”native”
“d3dx9_26″=”native”
“d3dx9_27″=”native”
“d3dx9_28″=”native”
“d3dx9_29″=”native”
“d3dx9_30″=”native”
“d3dx9_31″=”native”
“d3dx9_32″=”native”
“d3dx9_33″=”native”
“d3dx9_34″=”native”
“d3dx9_35″=”native”
“d3dx9_36″=”native”
“d3dxof”=”native”
“dciman32″=”native”
“ddrawex”=”native”
“devenum”=”native”
“dinput”=”builtin”
“dinput8″=”builtin”
“dmband”=”native”
“dmcompos”=”native”
“dmime”=”native”
“dmloader”=”native”
“dmscript”=”native”
“dmstyle”=”native”
“dmsynth”=”native”
“dmusic”=”native”
“dmusic32″=”native”
“dnsapi”=”native”
“dplay”=”native”
“dplayx”=”native”
“dpnaddr”=”native”
“dpnet”=”native”
“dpnhpast”=”native”
“dpnlobby”=”native”
“dsound”=”builtin”
“dswave”=”native”
“dxdiagn”=”native”
“mscoree”=”native”
“msdmo”=”native”
“qcap”=”native”
“quartz”=”native”
“streamci”=”native”

Кроме того, для файлов mscoree.dll и streamci.dll выставляем режим «родной» и копируем их из Windows\System32 в ~wine/drive_C/windows/system32

Далее открываем закладку «Графика» и устанавливаем галочки по вкусу. У меня данное окно выглядит как на рисунке

НО!: в данной закладке обязательно включаем Вершинные шейдеры, а также Pixel Shader, иначе клиент выдаст ошибку о том, что Ваше оборудование не обладает минимальными системными требованиями.

В закладке «Аудио» выбираем аудио драйвер для Вашей звуковой карточки.

Нажимаем «Применить» и закрываем окно настройки Wine.
Далее устанавливаем DirectX:

$ wine /путь_к_DirectX/DXSETUP.exe 

Как обычно соглашаемся с лицензионным соглашением и нажимаем кнопку «Далее». В принципе установка DirectX должна пройти без нареканий. Но как говориться, в каждом правиле бывают свои исключения. Если все же произошла ошибка при установке, то смотрим .log файл, стараемся выяснить чем вызвана ошибка и постараться ее исправить.

После успешной установки DirectX пробуем запустить EVE:

wine /путь_к_EVE/eve.exe 


Вполне возможно, что с первого раза клиент не запуститься, т.к не будет хватать парочки библиотек (у меня почему-то потерялась библиотека d3d9.dll и еще какая-то, к сожалению название не запомнил). В таком случае в консоли смотрим какой библиотеки не хватает и копируем ее из WINDOWS\system32 в ~wine/drive_C/windows/system32

Кроме того может возникнуть ошибка подобного рода:

err:ole:CoGetClassObject no class object {9a5ea990-3034-4d6f-9128-01f3c61022bc}
 could be created for context 0x1 


В таком случае снова открываем окно настройки вайна:

winecfg 


и в закладке «Графика» отключаем все шейдеры. Да-да отключаем и пробуем запустить клиент заново. Клиент при запуске должен будет ругнуться на неподходящие системные требования. После чего снова открываем настройки вайна и включаем шейдеры. (по крайней мере мне такая махинация помогла).

Что бы в EVE был звук и папки WINDOWS\system32 копируем все библиотеки, начинающиеся с dm
.dll.

Ну вот вроде бы и все. Удачных полетов.

upd: Недавно выплыла проблема при запуске игры:
err:module:import_dll Library DNSAPI.dll (which is needed by
 L”Z:\media\media\Games\EVE\bin\vivoxsdk.dll”) not found

err:module:import_dll Library vivoxsdk.dll (which is needed by
 L”Z:\media\media\Games\EVE\bin\_vivox.dll”) not found

err:module:import_dll Library DNSAPI.dll (which is needed by 
L”Z:\media\media\Games\EVE\bin\vivoxsdk.dll”) not found

err:module:import_dll Library vivoxsdk.dll (which is needed 
by L”Z:\media\media\Games\EVE\bin\_vivox.dll”) not found

err:module:import_dll Library DNSAPI.dll (which is needed by
 L”Z:\media\media\Games\EVE\bin\vivoxsdk.dll”) not found

err:module:import_dll Library vivoxsdk.dll (which is needed by 
L”Z:\media\media\Games\EVE\bin\_vivox.dll”) not found

err:module:import_dll Library DNSAPI.dll (which is needed by
 L”Z:\media\media\Games\EVE\bin\vivoxsdk.dll”) not found

err:module:import_dll Library vivoxsdk.dll (which is needed by 
L”Z:\media\media\Games\EVE\bin\_vivox.dll”) not found


В итоге появлялась заставка игры, а сама игра не загружалась. Для решения данной проблемы делаем следующее:
1. Копируем из папки Windows/system32 вышеперечисленные файлы в /home/user/.wine/drive_c/Windows/system32
2. Редактируем файлик: nano -w /home/lex/.wine/user.reg
В конец файла добавляем строчки:
[Software\Wine\Direct3D]

“DirectDrawRenderer”=“opengl”

“OffscreenRenderingMode”=“fbo”

“PixelShaderMode”=“enabled”

“VertexShaderMode”=“hardware”

“VideoMemorySize”=“256”

Значение “VideoMemorySize”=“256” выставляем в зависимости от памяти вашей видеокарточки
 

comments powered by Disqus