AX Classic EqEmulator Forums

Source and database discussion for AX_Classic


It is currently Mon Sep 25, 2017 4:06 am

All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 11 posts ] 


 Post subject: How to run Titanium or Underfoot with Linux and Wine
PostPosted: Sat Jan 03, 2009 11:11 pm 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
Here's an outline of what I did to get Wine and Titanium to work - I got this info from the posts at WineHQ forums ;
- Uninstall all Wine versions you have running
- Download and place this dll in your Everquest client directory
note: I don't know that the latter dll works - I have posted it so you have more options - the WineHQ forums post is not in sync with us anymore.
- Download and place this ini file in your Everquest client directory (overwrite what you have).
- Download/unpack the source Wine Version 1.1.12
You need to add a line to one of the files in /wine-1.1.12/dlls/d3d9/device.c;
On around line 198, just before "return hrc;" add this new line:
Code:
pCaps->MaxVertexBlendMatrices=0x4;
Now save, then go back to "/wine-1.1.12/" and run "./configure" , then "make", and finally, su to root and run "make install".

EDIT: SEE UPDATED POST FOR WINE 1.4x, 1.5x VERSIONS AT BOTTOM OF THIS THREAD


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Mon Sep 07, 2009 8:50 pm 
Joined: Fri Sep 04, 2009 10:33 pm
Posts: 5
Location: Ak'anon
Offline
    Here's what I did with wine version 1.1.29 and Kubuntu 9.04 (jaunty):
  1. Download and unzip/untar the source for the latest wine.
  2. I'm not sure if you still need to add the pCaps->MaxVertexBlendMatrices=0x4; line into device.c, but I did anyway before line 367.
  3. If you don't have all the -dev packages (headers) for wine's dependencies, you'll need to fetch them from the repositories. There are quite a few of them for this version of wine, but the warnings that running ./configure produces will point you to the dependencies you need. Of note, though, is that configure won't warn you if you don't have the libasound2-dev package (ALSA headers) -- be sure you have that one installed. Another tricky one is libmpg123 -- jaunty's version is too low to compile wine 1.1.29. I ended up grabbing the source from mpg123's website and running configure and make and just putting the .h and .so files where they belonged (/usr/lib and /usr/include) without touching the binaries already installed.
  4. Run "./configure" then "make depend && make" then "sudo make install".
  5. Run wine notepad.exe to test out the wine environment. If Notepad comes up, you're successful.
  6. Install Everquest Titanium (wine "d:\setup.exe").
  7. Grab the DLL linked in angelox's post above. and put into the EverQuest directory.
  8. Either get the ini file linked in the post above, or make the following changes to your eqclient.ini's Defaults section: VertexShaders=TRUE and TextureCache=FALSE. (I've not tested if these settings are still necessary.) If you grab the linked file, be sure to change the screen resolution settings to match your settings, and be aware that spell effects and sound are turned off in that file.
  9. Be sure to edit eqhost.txt to point to login.axclassic.com:5999.
  10. Start AXClassic EQ with something like: wine "C:\Program Files\Sony\EverQuest\eqgame.exe" patchme
There's no need to download the AXClassic Launcher from the login website. I think it's .NET anyway and therefore won't work with wine.

I have a sound card with a Sound Blaster/Audigy chipset, and in order to get old world zone music to play, I have to enable the ALSA hardware MIDI synth.

I have to turn off keyboard key repeat, otherwise the arrow keys are rubbish for turning your character. I've not looked into the possibility of turning off repeat only for left and right arrows or A/D.

Mouselook is a bit odd -- the mouse will only turn you a short distance before hitting a "brick wall" and you can't look further. I didn't find a fix for it, but turning the mouselook sensitivity up helps.

I have an AMD dual core processor, and apparently that causes some strange speed wonkiness with the client. I have to bind it to a single core only. (Although, I still have some occasional speed changes.)

My starteq shell script looks like:
Code:
#!/bin/sh
# if you don't have the script's cwd set, you get XML errors
cd ~/.wine/drive_c/Program\ Files/Sony/EverQuest

# turn off key repeat
xset r off

# this loads the soundfont for MIDI. 8MBGMSFX.SF2 should be on your sound card's driver disc, or google
asfxload -V 100 ~/8MBGMSFX.SF2

# bind to one core of the processor and launch.
# The client will spew a lot of errors, especially every time you target a mob, hence the stdout/stderr redirect.
# You probably want to leave off the 2>/dev/null until you're satisfied everything is working.
taskset -c 0 wine "C:\Program Files\Sony\EverQuest\eqgame.exe" patchme 2>/dev/null

# unload the soundfont and free the RAM on quit
asfxload --clear=yes

# turn key repeat back on
xset r on


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Thu Apr 28, 2011 5:00 pm 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
Here's something I did with my Ubuntu;
I was thinking, since I only need this fix for EqEmu, I would try and get two Wines installed: one with the fix and one without.
I noticed the wine-1.2.2 that comes with this distro installs to a different area from my wine-1.1.12 source install.
I compiled my wine-1.1.12, renamed the executable "wine12", then installed wine-1.2.2 from the package manager, placed a shortcut to the wine-1.2.2 executable from /usr/bin/ to /usr/local/bin/, now they both work:
Code:
angelox@drake:~$ wine --version
wine-1.2.2
angelox@drake:~$ wine12 --version
wine-1.1.12
Change the shortcut to eqemu client to wine12 executable and it loads as it should, the rest of the apps will work with the newer, unchanged wine.

_________________
"Damn my eyes! You're just another mirage!"
...Memories of 'a madman' from Oasis of Marr


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sun Nov 11, 2012 11:46 am 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
As an update to this, I just compiled and ran my good old Titanium with the latest Wine version 1.5.17.
It runs much improved from the old 1.2 version I was using - some nice things I noticed; I can use full window mode with out loosing or screwing up the mouse (Also can alternate from full to window mode and back without crashing), all shaders work, shadows, lights too.

I'm using the newest Ubuntu 12.10 - I did have to use the "pCaps->MaxVertexBlendMatrices=0x4;" entry so I could get the invisible model bug removed. I had to remove the installed Wine and compile from source.
You won't be able to find the spot where you used to enter the pCaps line but I found what I believe to be a good place for it;
in /wine-1.5.17/dlls/d3d9/directx.c
around line 382 or above this line entry
Code:
pCaps->MaxVertexShaderConst = min(D3D9_MAX_VERTEX_SHADER_CONSTANTF, pCaps->MaxVertexShaderConst);

add your line
Code:
pCaps->MaxVertexBlendMatrices=0x4;

You don't need install the Everquest client if you already have one installed somewhere - this is so for Windows or Linux. Just copy what you have over to where you'll be playing.
If you set up a multi-boot with Windows and Linux, you can use what you have straight out of the Windows directory.

EDIT: I just tried this with a wine version 1.4x and worked fine too. Wine 1.4.1 is latest stable release and easier to make dependencies.
Probably, in all these newer versions, You just have to find where the "pCaps->MaxVertex*" entries are (in directx.c), and add yours.

_________________
"Damn my eyes! You're just another mirage!"
...Memories of 'a madman' from Oasis of Marr


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sun Feb 10, 2013 1:21 pm 
Developer Team
Developer Team
Joined: Sun Jan 02, 2011 8:36 pm
Posts: 262
Offline
angelox wrote:

I'm using the newest Ubuntu 12.10 - I did have to use the "pCaps->MaxVertexBlendMatrices=0x4;" entry so I could get the invisible model bug removed. I had to remove the installed Wine and compile from source.
You won't be able to find the spot where you used to enter the pCaps line but I found what I believe to be a good place for it;
in /wine-1.5.17/dlls/d3d9/directx.c
around line 382 or above this line entry
Code:
pCaps->MaxVertexShaderConst = min(D3D9_MAX_VERTEX_SHADER_CONSTANTF, pCaps->MaxVertexShaderConst);

add your line
Code:
pCaps->MaxVertexBlendMatrices=0x4;



EDIT: I just tried this with a wine version 1.4x and worked fine too. Wine 1.4.1 is latest stable release and easier to make dependencies.
Probably, in all these newer versions, You just have to find where the "pCaps->MaxVertex*" entries are (in directx.c), and add yours.


How do you do this? is this before ./config or after.

_________________
Rathe GM, Ubuntu 12.04, Underfoot Client


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sun Feb 10, 2013 3:29 pm 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
Put this in before you start anything

_________________
"Damn my eyes! You're just another mirage!"
...Memories of 'a madman' from Oasis of Marr


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sun Feb 10, 2013 3:52 pm 
Developer Team
Developer Team
Joined: Sun Jan 02, 2011 8:36 pm
Posts: 262
Offline
K thanks thats what i figured

_________________
Rathe GM, Ubuntu 12.04, Underfoot Client


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sun Feb 10, 2013 8:45 pm 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
Here's something else you can install and try to add the missing dependences with;
"Synaptic Package Manager" should be in your software center.

_________________
"Damn my eyes! You're just another mirage!"
...Memories of 'a madman' from Oasis of Marr


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sun Feb 17, 2013 6:32 pm 
Developer Team
Developer Team
Joined: Sun Jan 02, 2011 8:36 pm
Posts: 262
Offline
Toogling the Mouselook under options cleared my "brick wall" Mouse and works well. Not sure how permanent it is though.

_________________
Rathe GM, Ubuntu 12.04, Underfoot Client


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Sat Apr 12, 2014 10:58 am 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
As an update to the d3dx9_30.dll method;
I finally realized I always carried this dll in my Everquest directory, and since I had installed Directx9c to my wine directory, the one in the Everquest directory was not working. Solution was to copy the fixed d3dx9_30.dll over to my ".wine/drive_c/windows/system32/ directory", and replace what I had there - if you want to keep the original dll, then rename it prior to copy.
If you don't have the fixed dll, you can get it from the downloads section of the forums.

I brought this up because I changed my 64 bit PC to 64 bit Ubuntu, which made it impossible to compile a custom working 32 bit wine for AXClassic play (wasted two days on that). Ubuntu does have a working 32 bit wine in their packages, just need to get the d3dx9_30.dll in the right place.

This worked with Underfoot and SoD, Titanium did not; I think there might be a cache or setting somewhere in the Titanium client that's not seeing the change.

_________________
"Damn my eyes! You're just another mirage!"
...Memories of 'a madman' from Oasis of Marr


Top
 Profile  
Reply with quote  

 Post subject: Re: How to run Titanium with Linux and Wine
PostPosted: Tue Apr 15, 2014 2:45 pm 
Developer Team
Developer Team
Joined: Sun Sep 16, 2007 10:16 am
Posts: 4113
Location: Cript of Nadox
Offline
angelox wrote:
This worked with Underfoot and SoD, Titanium did not; I think there might be a cache or setting somewhere in the Titanium client that's not seeing the change.

I found the solution to this, For Titanium's eqclient .ini, set "VertexShaders=0" (FALSE), and that should fix it.

_________________
"Damn my eyes! You're just another mirage!"
...Memories of 'a madman' from Oasis of Marr


Top
 Profile  
Reply with quote  

Display posts from previous:  Sort by  

Post new topic Reply to topic  [ 11 posts ] 

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group