View Single Post
  #1  
Old 11-20-2010, 08:02 PM
cadiz cadiz is offline
Kobold

cadiz's Avatar

Join Date: Nov 2009
Location: Dublin, Ireland
Posts: 101
Default [Guide] EQ under wine (Fedora LINUX 14+ 32 or 64bit)

I wanted to create a separate thread for this since the other helpful guide by mgellan is targeted towards Ubuntu, this one is specific to the Fedora Linux Distribution which is what I prefer.

Just a quick breakdown, there are a few reasons why wine will not run unpatched EQ/titanium for P99:

• There is a change to directx.c which needs to be made in the wine source code which fixes a crash when you enter world
• There is a modified DLL file which is required to fix some model/texture issues

I've taken the liberty of modifying the wine source code to include the code fix needed and building Fedora packages for those interested. Using binary system packages is much cleaner and easier than compiling/maintaining your own wine source code installation - below is a guide on how to get it working.

Here are the steps for a Fedora 14+ 32bit or 64bit installation:

• This assumes a Fedora 14 or 15 32 or 64bit installation. It's possible that it may work for earlier versions or other RPM distributions like OpenSuSE, there are no promises.
• This assumes you do not have wine installed already, if you do you need to remove the distribution packages via yum erase wine-*
• All commands in italics should be run as your normal user in a terminal window except for the ones noted to be run as the root user (package installation)

1) Install wine dependencies (if you don't have them)
note: run this command as the root user
yum install liberation-narrow-fonts nss-mdns openldap pulseaudio-libs liberation-sans-fonts

2) Download all of the rpms listed below, placing them in the same directory (you only need the x86_64 if you're running 64bit Fedora like me) You can paste the wget links below directly into the terminal.

http://funcamp.net/w/rpm/wine-1.3.6/i386/ (32bit and 64bit required)
http://funcamp.net/w/rpm/wine-1.3.6/noarch/ (32bit and 64bit required)
http://funcamp.net/w/rpm/wine-1.3.6/x86_64/ (64bit only required)

Download paste for 32 and 64bit Installation
wget http://funcamp.net/w/rpm/wine-1.3.6/i386/{wine-1.3.6-1.fc14.i386.rpm,wine-alsa-1.3.6-1.fc14.i386.rpm,wine-capi-1.3.6-1.fc14.i386.rpm,wine-cms-1.3.6-1.fc14.i386.rpm,wine-core-1.3.6-1.fc14.i386.rpm,wine-devel-1.3.6-1.fc14.i386.rpm,wine-esd-1.3.6-1.fc14.i386.rpm,wine-jack-1.3.6-1.fc14.i386.rpm,wine-ldap-1.3.6-1.fc14.i386.rpm,wine-nas-1.3.6-1.fc14.i386.rpm,wine-openal-1.3.6-1.fc14.i386.rpm,wine-oss-1.3.6-1.fc14.i386.rpm,wine-pulseaudio-1.3.6-1.fc14.i386.rpm,wine-twain-1.3.6-1.fc14.i386.rpm,wine-wow-1.3.6-1.fc14.i386.rpm}

Download paste for 32 and 64bit Installation
wget http://funcamp.net/w/rpm/wine-1.3.6/noarch/{wine-common-1.3.6-1.fc14.noarch.rpm,wine-courier-fonts-1.3.6-1.fc14.noarch.rpm,wine-desktop-1.3.6-1.fc14.noarch.rpm,wine-fonts-1.3.6-1.fc14.noarch.rpm,wine-marlett-fonts-1.3.6-1.fc14.noarch.rpm,wine-small-fonts-1.3.6-1.fc14.noarch.rpm,wine-symbol-fonts-1.3.6-1.fc14.noarch.rpm,wine-system-fonts-1. 3.6-1.fc14.noarch.rpm}

Download paste for 64bit Installation ONLY
wget http://funcamp.net/w/rpm/wine-1.3.6/x86_64/{wine-1.3.6-1.fc14.x86_64.rpm,wine-alsa-1.3.6-1.fc14.x86_64.rpm,wine-capi-1.3.6-1.fc14.x86_64.rpm,wine-cms-1.3.6-1.fc14.x86_64.rpm,wine-core-1.3.6-1.fc14.x86_64.rpm,wine-devel-1.3.6-1.fc14.x86_64.rpm,wine-esd-1.3.6-1.fc14.x86_64.rpm,wine-jack-1.3.6-1.fc14.x86_64.rpm,wine-ldap-1.3.6-1.fc14.x86_64.rpm,wine-nas-1.3.6-1.fc14.x86_64.rpm,wine-openal-1.3.6-1.fc14.x86_64.rpm,wine-oss-1.3.6-1.fc14.x86_64.rpm,wine-pulseaudio-1.3.6-1.fc14.x86_64.rpm,wine-twain-1.3.6-1.fc14.x86_64.rpm,wine-wow-1.3.6-1.fc14.x86_64.rpm}


3) change to the directory where you downloaded the RPMs
cd <download directory>

4) Install the packages via RPM
note: run this command as the root user
rpm -ivh --nodeps *.rpm

5) Initialize wine for the first time
if you have an existing ~/.wine directory then back it up first
mv ~/.wine ~/.wine-backup

winecfg
press ok to install gecko engine and whatever else comes up
when it's finished, click the audio tab to use either pulseaudio (default) or another sound subsystem like alsa/oss.

6) Copy your everquest program files into the wine directory
let's assume it's in a directory named 'everquest'
cp -Rv everquest ~/.wine/drive_c/Program\ Files\

7) Download and copy the modified DLL file which fixes the textures issue some people experience
DLL file courtesy of angeliqe

cd ~/.wine/drive_c/Program\ Files\everquest
wget http://funcamp.net/w/d3dx9_30.dll


8) Add wine to your yum.conf exclude list so the distribution updates do not replace them
echo "exclude=wine-*" >> /etc/yum.conf

9) Run the game!
wine ~/.wine/drive_c/Program\ Files\everquest/eqgame.exe patchme
disable windowing effects like compiz for best results

10) Startup (optional)

Create a script to start everquest:
cat > eq.sh << EOF
#!/bin/sh
# start everquest
cd ~/.wine/drive_c/Program\ Files/everquest ; taskset -c 0 wine eqgame.exe patchme
EOF

(hit enter)

Make the script executable
chmod +x eq.sh

Add the script to your path:
echo 'alias eq="~/eq.sh"' >> ~/.bashrc
source ~/.bashrc

You can now create a link or desktop icon pointing to eq.sh to launch the game
You can also run eq in a console to launch the game

Errors and Caveats:
Fullscreen - I've had some issues with mouse control in full screen mode but I was able to tweak the WindowedWidth and WindowedHeight settings of my eqclient.ini to closely match my desktop resolution for the same affect. This seems to be a common problem on all Linux distributions, when I find a fix I'll update the guide but don't hold your breath [You must be logged in to view images. Log in or Register.]
Sound - To enable sound run winecfg and click on the audio tab, then click ok. This will enable sound if it doesn't work at first run.
Yum Warnings - This may just be because of my testing/building but I had rpmdb complain about "missing requires" for a few packages after installing the modified wine package set.
To fix this I reinstalled the complainers:
note: run this command as the root user
yum reinstall esound-libs jack-audio-connection-kit

winecfg errors out on first run
If you get the following error ::

/usr/bin/winecfg: /usr/bin/wine: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
/usr/bin/winecfg: line 29: /usr/bin/wine: Success

You are most likely running a 64bit distribution without a 32bit GLIBC
To fix ::

yum whatprovides */lib/ld-linux.so.2 | grep glib
glibc-2.13.90-9.i686 : The GNU libc libraries
arm-gp2x-linux-glibc-2.3.6-9.fc15.noarch : Cross Compiled GNU C Library targeted
glibc-2.14-5.i686 : The GNU libc libraries

Now, pick the latest version and install it
yum install glibc-2.14-5.i686

No OpenGL Error

Application tried to create a window, but no driver could be loaded.
Unknown error (127).
err:d3d_caps:WineD3D_CreateFakeGLContext Failed to create a window.
err:d3d:InitAdapters Failed to get a gl context for default adapter
Direct3D9 is not available without OpenGL.

You are most likely running a 64bit distribution and you need to install 32bit video drivers

yum install xorg-x11-drv-intel.i686 mesa-libGL mesa-dri-drivers.i686

eqclient.ini - It's a safe bet to make sure your eqclient.ini is set to start in windowed mode first.

[Defaults]
WindowedMode=TRUE
[VideoMode]
Width=1600
Height=900
FullscreenRefreshRate=0
FullscreenBitsPerPixel=32
WindowedWidth=1600 <--- set to horizontal desktop resolution
WindowedHeight=850 <--- set to vertical desktop resolution (i subtract -50 pixels so I can see my taskbar in XFCE)

Additional eqclient.ini settings - use these if you have texture/shading issues
[Defaults]
APVOptimizations=TRUE
DisableWestBugFix=1
Sound=TRUE
TextureQuality=1
VertexShaders=0
20PixelShaders=0
14PixelShaders=0
1xPixelShaders=0
MultiPassLighting=FALSE
UseLitBatches=FALSE
WindowedMode=TRUE
TextureCache=FALSE
DoProperTinting=FALSE


Here are some screenshots of it working. I've been running in 16:9 windowed mode so I can do other stuff when nothing is happening in the game. Tested in gameplay with my Rogue and Enchanter.

(windowed mode, testing things out)

[You must be logged in to view images. Log in or Register.]


(compiz/expose feature, working on other stuff)

[You must be logged in to view images. Log in or Register.]
__________________
Prexus: (00-04) <Clan nan Dreolan>
Cadiz (70 NEC) epic 1.0
Grumplescratch (65 WAR) epic 1.0
Tzartole (62 MNK) epic 1.0
Last edited by cadiz; 07-01-2012 at 08:19 PM.. Reason: unneeded space in pasted wget commands
Reply With Quote