Running on Linux

serinar16

Dalayan Beginner
If you're like me, you only grudgingly use Windows. Theoretically, we have always had the ability to play SOD on Linux (using Wine), but I've never tried it. Till today.

It does work, amazingly well in fact! So much so that, once I've had a chance to test drive it and work out bugs, I'll put together an installer, as there are a few dependencies.

For folks wanting to play with it, here's the setup that worked for me:

--------------------------------
- Distro: Sabayon 8 (very similar to Gentoo, works off the same ebuilds, but it's binary). Should work with more common variants too

- Wine 1.5.13

- Official SOE "live" installer: http://everquest.station.sony.com (free, but must create/use a station account)

- Current SoD patcher
--------------------------------

1) Install the following packages from your favorite package manager: wine, mono, cabextract

2) Install the winetricks package from your favorite package manager, or get it from http://wiki.winehq.org/winetricks. It was in Entropy for Sabayon users. :)

The remaining steps DO NOT need root privilege.

3) Run "winetricks directx9". It will download some stuff and walk you through a simple installer

4) Run "winetricks corefonts". Must have cabextract installed or it will fail

5) Run "wine (path to EQ_setup.exe downloaded from SOE)". This requires a Station account, and will download 7+GB of data. Grab a beer or 2.

6) When the install finishes, QUIT. DO NOT RUN THE GAME.

7) Run "wine (path to SoD patcher)". Browse to your EQ installation directory, by default, this will be ~/.wine/drive_c/Program Files (x86)/Sony Online Entertainment/Installed Games/Everquest.

8) Let SoD patcher do its thing. Uncheck the box to run in EQW (I haven't tried this, may or may not work).

9) Initially, the game will start in full-screen mode, which ran very poorly for me. Manage to click the buttons somehow, then quit out. Go into your EQ installation folder, find eqclient.exe and change "WindowedMode=TRUE". You can also change Width and Height under VideoMode too if you wish - I found that to be the most reliable means of changing resolution anyway. Turn on any models you want too, though you can always run "wine eqoptions.exe" to alter those.

10) Re-run "wine sodpatcher.exe" (this is how you should always start SoD). For me, after I did this, I got a bunch of "String not Found" errors on the buttons. The solution is to quit, and re-run the patcher, opting to do a full-repatch of all files.

From there, everything worked great for me! As I said, if this is truly workable, I will put together a nice script to step through the process, verify dependencies and automate as much as I can.

Serinar
 
Stickied for future Linux users! Throwing you a bit of fame, and will throw more when the awesome sounding installer is done!
 
Cool, thanks man! I have a basic version working now, but I'd like to automate it a bit more. There are some things I can't do like downloading the EQLive EXE directly, but it will grab the SoD patcher if it needs to.

For automation, would it be possible to have a few flags added to the patcher?

1) Pass a directory as a command line option to avoid having to Browse
2) Have something like --no-eqw to automatically uncheck the EQW box
3) Maybe a --patch-now flag to bounce it right into "Patch and Run" mode, again, saving some steps.

I'll spin up a couple VMs this week for testing. If anyone is interested in doing early beta testing, send me a PM and I'll give you what I have.
 
I'd appreciate if you could put the source for this up somewhere like Github so I can compile it and potentially make it available for download on the main site.
 
It will be a Ruby script, and will be open source of course! :) I could always compile it to an EXE if I had to, but most Linux users should have Ruby.

I ran all night, 2 boxing, and it runs FAR better than Windows. The only minor issues I found were that repeated switching of chars on an account (using /quit) resulted in the game locking up every 5 or so times, but was fixed by closing and just restarting that window. There were also minor texture issues on things like wall seams, but I hardly noticed. CPU runs far cooler and graphics are much smoother.
 
Nope, no winetricks for .NET. In fact, the only reason mono is even needed is because wintricks complains without it.
 
You know, about 3 years ago, I found no need to have .NET on any computers I had running SoD. Are you sure .NET is even still necessary?
 
The only reason I list it as a prereq is because winetricks complained to me about it when installing DirectX 9. Whether it's a fatal error or not I don't know, but in the interest of making the process as foolproof as possible, I figured it's worth including.
 
To my knowledge, the only thing that required .NET years ago was the old SOD patcher. They changed that and afterwards I never had an issue running it in Ubuntu. I've always installed via cd's though...
 
get the following error
------------------------------

Shards of Dalaya Linux Installer v0.1
-------------------------------------

Checking for required packages...
All good!
Checking executable versions...
All good!
Validating EQLive executable...
ERROR: the Everquest Live executable had an incorrect checksum. Please download it from http://everquest.station.sony.com.


and yes, i downloaded from sony's website several times, i'm boggled
 
this is what I get

./sod_stuff.sh: line 25: ubuntu.2012-12-02/ERRORS: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/uname_-a: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/lspci: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/lsmod: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/wine_--version: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/dmesg_|_grep_agpgart: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/glxinfo_|_grep_version: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/glxinfo_|_grep_direct: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/glxinfo_|_grep_rendering: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/dpkg_-l_|_grep_ia32-libs: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/dpkg_-l_|_grep_nvidia: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/dpkg_-l_|_grep_fglrx: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/dpkg_-l_|_grep_nouveau: Permission denied
./sod_stuff.sh: line 31: ubuntu.2012-12-02/grep_-B2_'Module_class:_X.Org_Video_Driver'__var_log_Xorg.0.log: Permission denied
cp: cannot create regular file `ubuntu.2012-12-02/etc/debian_version': Permission denied
cp: cannot stat `/etc/ubuntu_version': No such file or directory
cp: cannot create regular file `ubuntu.2012-12-02/etc/X11/xorg.conf': Permission denied
cp: cannot create regular file `ubuntu.2012-12-02/var/log/Xorg.0.log': Permission denied
tar: ubuntu.2012-12-02.tar: Cannot open: Permission denied
tar: Error is not recoverable: exiting now
 
OK, two quick things on this, I apologize I missed a previous post! I try to watch this forums closely, but obviously I missed one.

The invalid checksum may be because the EQ folks released a new client on their website and the checksum changed. Easy enough for me to validate - the trickier bit is whether the new client will still work. That said, I'll update the checksum in a few minutes here - at which point you can download the new sod-installer and it should hopefully work.

The second one is stranger - what is "sod_stuff.sh"? It looks like you're not in the right groups to run some of those commands. You may need to run as root by the looks of it. That said, I don't know what that .sh file is. If you run the script I've got posted a few lines above, you should (hopefully) have better luck.
 
OK yep, SOE updated their client. I hope it still works ok! I did update the checksum to allow it - download the updated script and let me know how it works.
 
]The second one is stranger - what is "sod_stuff.sh"? .
It's a shell script for problem installs I wrote like 4 years ago. There used to be some debish distros with 3d driver issues and it was mainly to tell me if that occured. Also, for really terrible boards with onboard intel graphics chips and sometimes lib32 issues.

He shouldn't need to use it anymore. I should probably get my login from rari reset and deprecate the page. I don't see why he can't run it into /tmp.

Code:
 #!/bin/sh
 # written by the Lich Velleity Darkbloom of FWF
 # Boehm on the forums
 # 1. Copy and paste this into a file with a name like sodstuff.sh
 # 2. Put the file in your /tmp directory
 # 3. Do "chmod u+x sodstuff.sh" at a shell prompt
 # 4. then you can ./sodstuff.sh or "sh sodstuff.sh"
 # 5. If for some reason you copied this script on a windows box
 #    and opened it with a windows text editor. you will need to run 
 #    "sed 's/.$//' sodstuff.sh >> sodstuff2.sh"
 #    at a shell prompt to convert dos newlines to unix newlines  
 # Load hostname and date into memory.
 dir="$(hostname).$(date '+%Y-%m-%d')"
 # Create a master directory to store information called {hostname-date}
 # If the directory already exists or is corrupted stop the process.
 # Copy all errors into a file named ERRORS.
 if [ -e "${dir}" ]; then
  if [ ! -d "${dir}" ]; then
    echo "${dir} exists but is not a directory" >&2
    exit 1
  fi
 else
  mkdir "${dir}"
 fi
 exec >"${dir}/ERRORS" 2>&1
 # Run the named command and write the output to the directory created above
 run() 
 {
   cmd="$@"
   dst="${dir}/$(echo ${cmd} | tr ' /' '__')"
   sh -c "${cmd}" >"${dst}" 2>&1
 }
 run uname -a
 run lspci
 run lsmod
 run wine --version
 run  "dmesg | grep agpgart"
 run  "glxinfo | grep version"
 run  "glxinfo | grep direct"
 run  "glxinfo | grep rendering"
 run  "dpkg -l | grep ia32-libs"
 run  "dpkg -l  | grep nvidia"
 run  "dpkg -l | grep fglrx"
 run  "dpkg -l | grep nouveau"
 run  "grep -B2 'Module class: X.Org Video Driver' /var/log/Xorg.0.log"
 #--------------------------------------------------------------
 # Find a named file and copy it to the created directory 
 # keeping the path and permissions intact.
 f() 
 {
   fn="$(echo $1 | sed -e 's}^/}}')"
   dst="${dir}/$(dirname $(echo ${fn}))"
   mkdir -p "${dst}"
   cp "/${fn}" "${dst}"
 }
 f /etc/debian_version
 f /etc/ubuntu_version
 f /etc/X11/xorg.conf
 f /var/log/Xorg.0.log
 # Archive, compress, then delete the directory
 tar cf "${dir}.tar" "${dir}" && gzip "${dir}.tar" && rm -rf "${dir}"
 
Error when using the walk through

Command: wget --no-check-certificate https://github.com/fizzgig16/sod-installer/tarball/master -O - | tar xf --strip-components=1

Get the following error:
tar: --strip-components=1: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
--2013-02-15 12:29:41-- https://github.com/fizzgig16/sod-installer/tarball/master
Resolving github.com... 207.97.227.239
Connecting to github.com|207.97.227.239|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://nodeload.github.com/fizzgig16/sod-installer/legacy.tar.gz/master [following]
--2013-02-15 12:29:42-- https://nodeload.github.com/fizzgig16/sod-installer/legacy.tar.gz/master
Resolving nodeload.github.com... 207.97.227.252
Connecting to nodeload.github.com|207.97.227.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10774 (11K) [application/x-gzip]
Saving to: ‘STDOUT’

0% [ ] 0 --.-K/s in 0s


Cannot write to ‘-’ (Broken pipe).

Yes im a newb to linux, I have followed your install walkthrough on the wiki word for word up to this point and i can to get around it. Confirmed the site is up and the file still shows there.
 
ok did what you said now im getting a new error when i run the ruby command

~/sod $ ruby sod_install.rb
sod_install.rb:4: syntax error, unexpected '<'
<!DOCTYPE html>
^
sod_install.rb:5: syntax error, unexpected '<'
<html>
^
sod_install.rb:7: syntax error, unexpected '<'
<meta charset='utf-8'>
^
sod_install.rb:8: syntax error, unexpected '<'
<meta http-equiv="X-UA-Compatible" content="IE=edge">
^
sod_install.rb:8: syntax error, unexpected tIDENTIFIER, expecting $end
<meta http-equiv="X-UA-Compatible" content="IE=edge">

Did I miss a package or something somewhere, looks like it doesnt understand html
 
Check if the distro has a html parser for ruby and if it is installed. If it isn't, install it.

Also, which version of linux are you using?
 
Back
Top Bottom