Hi everyone, first time poster here. I just wanted to report in success on Linux running EQ, MacroQuest, and EQBC under Wine. This post isn't really a step-by-step tutorial, but I did want to post a few of the things I ran into and how I fixed them.
I know my way around the Linux command line but I'm an amateur with MQ. So, if I've left out some details or overlooked something please feel free to comment.
I started by reading thedank's excellent tutorial, which provided some good ideas and a solid way to install things using PlayOnLinux. Ultimately, however I had a few different needs so I went my own way. Also, now that the EQ client and Macroquest are 64-bit, some of the steps have changed from the original tutorial.
I opted for a command-line solution. I prefer to script everything where possible, as my memory for these types of details doesn't seem to last a week. As such, this post is probably going to appeal to more seasoned Linux users.
To start with, I'm using Arch Linux on an AMD Ryzen 7 5800X with an Nvidia 3080. I will admit this hardware is pretty forgiving and is probably masking several performance issues that I would notice on older kit, so YMMV. Also, this is also not a completely new Arch install, so there may be packages contributing to success that I inadvertently neglect to mention.
I needed to download the Very Vanilla ZIP file as I did not use the RG installer.
For Wine dependencies, I have 'wine-staging' from the Arch repo, as well as the latest 'wine-mono' and 'winetricks' packages installed.
[CODE lang="bash" title="Shell"]
$ pacman -Qe | grep wine
wine-mono 7.1.1-1
wine-staging 7.5-1
winetricks 20220328-1
$
[/CODE]
Also, I use the following nvidia packages. I use the LTS Arch kernel package, so I have the 'nvidia-lts' driver package. If you are not using the LTS kernel, you should have the 'nvidia' package instead.
[CODE lang="bash" title="Shell"]
$ pacman -Qe | grep nvidia
lib32-nvidia-utils 510.54-1
nvidia-container-toolkit 1.9.0-1
nvidia-lts 1:510.54-12
nvidia-prime 1.0-4
nvidia-settings 510.54-2
$
[/CODE]
When setting up a Wine prefix, I only had to use three winetricks packages to make the game work: 'corefonts', 'd3dx9', and 'd3dcompiler_43'. Adding a fourth, 'dxvk', can improve performance with the right hardware. The following command will create a new Wine prefix, and install these packages into it:
[CODE lang="bash" title="Shell"]
$ env WINEPREFIX=/opt/wine/mqeq winetricks corefonts d3dx9 d3dcompiler_43 dxvk
[/CODE]
This command will set up /opt/wine/mqeq as the Wine prefix and do the installation.
Next, just copy in the EQ directory:
[CODE lang="bash" title="Shell"]
$ cp /opt/games/everquest /opt/wine/mqeq/drive_c/eq
[/CODE]
This will copy your everquest directory to C:\eq inside of the Wine prefix. You can also run the installer here instead, just make sure to cancel it once it starts to install DirectX. To run the installer use:
Now, unzip the download Very Vanilla Macroquest into C:\mq:
[CODE lang="bash" title="Shell"]
$ unzip ~/Downloads/RedGuides_VeryVanilla.zip -d /opt/wine/mqeq/drive_c/mq
[/CODE]
Viola, everything is in place to run EQ with MQ on Wine.
Run MQ with this command:
[CODE lang="bash" title="Shell"]
$ env WINEPREFIX=/opt/wine/mqeq wine /opt/wine/mqeq/drive_c/mq/MacroQuest.exe
[/CODE]
and then run the Everquest launcher with this command:
[CODE lang="bash" title="Shell"]
$ env WINEPREFIX=/opt/wine/mqeq wine /opt/wine/mqeq/drive_c/mq/LaunchPad.exe --disable-gpu
[/CODE]
I found that --disable-gpu was necessary to properly run the launcher. If you want to run eqgame.exe directly, do not use this flag.
NOTE: There are a couple of extra things that need to be done before this will run well:
1. If wine complains about esync, you may have to set the environment variable WINEESYNC=1. I do this in my .bashrc.
2. There are a couple of issues with the default MacroQuest.ini file that cause problems under Wine. I have a saved ini file that I copy into the mq/config directory after unzipping the VV files, but if you don't have one just run MQ then run EQ and let it crash.
I hope this helps. As I mentioned, this post is not intended to be a replacement for any existing guide, it is merely my field notes from getting things to work on my particular configuration. My configuration is actually much more complicated than what I've shown here (I am using the bspwm window manager and have scripts to manage window placement, launching teams, etc.), but this should help the curious user get started.
One final note: Wine can be a finicky beast. If you need to kill processes that may be left behind for some reason, don't kill the wineserver process. Instead, use
I find Linux fun for the same reason I find MQ fun: The amount of control I get with Linux over my equivalent Windows installation made all of this worth it for me. Much like with many other things in life, often the journey can be even more fun than the destination!
EDIT: Added dxvk for performance.
I know my way around the Linux command line but I'm an amateur with MQ. So, if I've left out some details or overlooked something please feel free to comment.
I started by reading thedank's excellent tutorial, which provided some good ideas and a solid way to install things using PlayOnLinux. Ultimately, however I had a few different needs so I went my own way. Also, now that the EQ client and Macroquest are 64-bit, some of the steps have changed from the original tutorial.
I opted for a command-line solution. I prefer to script everything where possible, as my memory for these types of details doesn't seem to last a week. As such, this post is probably going to appeal to more seasoned Linux users.
To start with, I'm using Arch Linux on an AMD Ryzen 7 5800X with an Nvidia 3080. I will admit this hardware is pretty forgiving and is probably masking several performance issues that I would notice on older kit, so YMMV. Also, this is also not a completely new Arch install, so there may be packages contributing to success that I inadvertently neglect to mention.
I needed to download the Very Vanilla ZIP file as I did not use the RG installer.
For Wine dependencies, I have 'wine-staging' from the Arch repo, as well as the latest 'wine-mono' and 'winetricks' packages installed.
[CODE lang="bash" title="Shell"]
$ pacman -Qe | grep wine
wine-mono 7.1.1-1
wine-staging 7.5-1
winetricks 20220328-1
$
[/CODE]
Also, I use the following nvidia packages. I use the LTS Arch kernel package, so I have the 'nvidia-lts' driver package. If you are not using the LTS kernel, you should have the 'nvidia' package instead.
[CODE lang="bash" title="Shell"]
$ pacman -Qe | grep nvidia
lib32-nvidia-utils 510.54-1
nvidia-container-toolkit 1.9.0-1
nvidia-lts 1:510.54-12
nvidia-prime 1.0-4
nvidia-settings 510.54-2
$
[/CODE]
When setting up a Wine prefix, I only had to use three winetricks packages to make the game work: 'corefonts', 'd3dx9', and 'd3dcompiler_43'. Adding a fourth, 'dxvk', can improve performance with the right hardware. The following command will create a new Wine prefix, and install these packages into it:
[CODE lang="bash" title="Shell"]
$ env WINEPREFIX=/opt/wine/mqeq winetricks corefonts d3dx9 d3dcompiler_43 dxvk
[/CODE]
This command will set up /opt/wine/mqeq as the Wine prefix and do the installation.
Next, just copy in the EQ directory:
[CODE lang="bash" title="Shell"]
$ cp /opt/games/everquest /opt/wine/mqeq/drive_c/eq
[/CODE]
This will copy your everquest directory to C:\eq inside of the Wine prefix. You can also run the installer here instead, just make sure to cancel it once it starts to install DirectX. To run the installer use:
env WINEPREFIX=/opt/wine/mqeq wine ~/Downloads/EQ_Setup.exe using the correct location and filename for the downloaded installer.Now, unzip the download Very Vanilla Macroquest into C:\mq:
[CODE lang="bash" title="Shell"]
$ unzip ~/Downloads/RedGuides_VeryVanilla.zip -d /opt/wine/mqeq/drive_c/mq
[/CODE]
Viola, everything is in place to run EQ with MQ on Wine.
Run MQ with this command:
[CODE lang="bash" title="Shell"]
$ env WINEPREFIX=/opt/wine/mqeq wine /opt/wine/mqeq/drive_c/mq/MacroQuest.exe
[/CODE]
and then run the Everquest launcher with this command:
[CODE lang="bash" title="Shell"]
$ env WINEPREFIX=/opt/wine/mqeq wine /opt/wine/mqeq/drive_c/mq/LaunchPad.exe --disable-gpu
[/CODE]
I found that --disable-gpu was necessary to properly run the launcher. If you want to run eqgame.exe directly, do not use this flag.
NOTE: There are a couple of extra things that need to be done before this will run well:
1. If wine complains about esync, you may have to set the environment variable WINEESYNC=1. I do this in my .bashrc.
2. There are a couple of issues with the default MacroQuest.ini file that cause problems under Wine. I have a saved ini file that I copy into the mq/config directory after unzipping the VV files, but if you don't have one just run MQ then run EQ and let it crash.
- You may see some registry errors on launch. These can be resolved by putting the line DisableAppCompatCheck=true in the [MacroQuest] section of the MacroQuest.ini file.
- I also got immediate crashes when launching EQ under MQ2 the first time. Thanks to a post by njk70, I found out this was due to Dannet not running correctly under Wine. I had to make sure MQ2dannet=0 was set under the [Plugins] section of MacroQuest.ini. I don't have a solution for this yet, but EQBCS runs just fine under Wine. Launch it with:
env WINEPREFIX=/opt/wine/mqeq wine EQBCS.exefrom the mq directory in the Wine prefix.
I hope this helps. As I mentioned, this post is not intended to be a replacement for any existing guide, it is merely my field notes from getting things to work on my particular configuration. My configuration is actually much more complicated than what I've shown here (I am using the bspwm window manager and have scripts to manage window placement, launching teams, etc.), but this should help the curious user get started.
One final note: Wine can be a finicky beast. If you need to kill processes that may be left behind for some reason, don't kill the wineserver process. Instead, use
env WINEPREFIX=/opt/wine/mqeq wineserver -k to clean up.I find Linux fun for the same reason I find MQ fun: The amount of control I get with Linux over my equivalent Windows installation made all of this worth it for me. Much like with many other things in life, often the journey can be even more fun than the destination!
EDIT: Added dxvk for performance.
Last edited:


