While I was on my adventure to get EQ + MQ working in macos, I stumbled across something that I've been trying to do for a while: debug while running under wine. The solution still requires a VM, but only for visual studio. The trick here is that you want to set up remote debugging, but it's kind of a pain.
- Install visual studio in your VM of choice (I did it in parallels, but it should work in qemu or whatever else)
- Install wine, set up EQ+MQ as per regular wine installation instructions (I know there's at least one guide here on RG to do it, here's @Knightly's guide for a steam deck: Steam Deck Guide and here's another one: MQ + EQ Linux Guide)
- Next you want to install the remote debugging tools from microsoft into your prefix
- The general guide is here: Remote Debugging a C++ Project in Visual Studio
- The download you want is here: Download (Select AMD64). the 2026 version will work with 2022 and 2026, which are the only two versions of VS that work with MQ, so just grab 2026
- After that's installed, grab the webservices dll file from here: webservices.dll -- the site looks sketch, but it worked for me so it's probably okay. You'll want the 64 bit and 32 bit latest versions (10.0.18362.1)
- Copy those dll files into the installed remote debugger directories for each architecture. It should be something like this:
<prefix>/drive_c/Program Files/Microsoft Visual Studio 18.0/Common7/IDE/Remote Debugger/<arch>where arch is x86 or x64. - open up
winecfgfor your prefix, and in the Libraries tab, add a new override forwebservicesand importantly set it tonative(by clicking on edit), specifically without builtin, only native. - start up msvsmon.exe with wine in your prefix.
- Importantly, choose the correct version for which client you want to debug: x64 for live and x86 for emu
- I had to change it to do un-authenticated windows because I couldn't figure out the Administrator password in the wine install.
- In your VM, open up Visual Studio and select Debug -> Attach to Process...
- Change the connection type to Remote (Windows - No Authentication)
- Type in the IP of your host that is running wine (you might also need to set the port which is default 4026)
- the list of processes should pop up, and you can select eqgame or the launcher and hit Attach

