This is a basic guide to getting FFXI running on Linux.


Get Wine/Lutris

*You can play the game just fine with wine standalone, but I still find myself using Lutris for the added convenience.

  1. Install wine (or wine-staging), winetricks and Lutris
  2. https://www.gloriouseggroll.tv/how-to-get-out-of-wine-dependency-hell/
    Get as many of these as you can. Often installing Lutris will pull many of them in with it. Also make sure you have packages for Vulkan support (for DXVK), ie. vulkan-headers, vulkan-tools, spirv-tools

Setting up your prefix, installing components

  1. Launch Lutris, click the plus icon to add a game. Click "Add locally installed game", fill in Name, set runner to Wine. In the "Game options" tab, set Wine Prefix to where you'd like the game to be installed. In the "Runner options" tab, change Wine version if you want. I recommend either the default from your distro (ie. System), or whatever Lutris considers the default, or the newest wine-ge version which can be found by clicking the box/lighter icon next to "Wine" under "Runners" in Lutris' left pane. Save.
  2. Highlight your newly added game in the Lutris menu, then click the wine glass below and select "Wine configuration" to set up the directories in your prefix. Once the Wine configuration window shows up, press OK.
  3. Now, in your terminal, type*:
    WINEPREFIX=(path to FFXI prefix ie. /home/me/Games/FFXI/) winetricks dotnet462 gdiplus
    and go through any installers that pop up.

*This step may only be required if you intend to use Windower, which is covered in the old version of this guide (below)


Installing and updating FFXI

  1. Highlight FFXI in Lutris, click the wine glass again and select "Run EXE inside Wine prefix". Select your FFXI installer EXE. Make sure the destination folder is the prefix's C:\ drive, ie C:\FFXI_SETUP
  2. Right click and configure FFXI, set the executable under "Game Options" to the extracted installer. Tick the boxes for FFXI and PlayOnline only. FFXI's installer may take a long time or appear to have frozen, but give it a while
  3. Once it's done installing, change the executable to polboot.exe from FFXI's install directory and launch POL. Update the launcher, sign in, update the game. Gamepad settings can be set through the "Config" option on the title screen.
  4. Run the /FINAL FANTASY XI/ToolsXX/FINAL FANTASY XI CONFIG.exe for your region for any other settings changes.

Do I need dgvoodoo or d8vk?

If you notice FFXI is hammering one of your CPU cores at a time rather than spreading the load evenly, then yes. I've noticed this on versions of Wine around 8.0 and lower. I haven't encountered this issue on Wine 9.0, so if you need to set either of these up, refer to the old version of this guide (below) or another guide (or a Lutris installer script, which can be found by searching the game's title on Lutris's website).


I'm getting weird sound crackling/popping?

This happens on some Wine versions, for reasons I don't know. I've noticed it's more likely to occur on wine-staging and Lutris versions of Wine. Try vanilla wine if you can, or proton.


Other basic troubleshooting advice

Try different wine versions, try different dxvk versions, try toggling Esync and/or Fsync on and off, try dgvoodoo or d8vk, update your video drivers/move to a distro with more recent video drivers. If using Windower, install it directly to drive_c/Windower rather than under Program Files, or it may not be able to launch the game.


OLD GUIDE BEGINS HERE


Installing wine and lutris

  1. Get all the optional wine dependencies you can: https://www.gloriouseggroll.tv/how-to-get-out-of-wine-dependency-hell/ including the 32bit ones, if you're on arch/manjaro you might need to enable multilib for this.
  2. Make sure you get spirv-tools, vulkan-headers and vulkan-tools too. Also gamemode and lib32-gamemode
  3. Install wine-staging, winetricks-git, lutris

Setting up your prefix, installing components

  1. Launch lutris, click the plus icon to add a game/prefix. Fill in the name, change the architecture (Game Options tab) to 64bit (I haven't tested 32bit myself), set a folder for the prefix to live in. Save.
  2. Highlight your newly added game in the lutris menu, then click the wine glass below and select Wine configuration to generate some stuff.
  3. Exit back out to lutris, right click your game, configure. Go to the Runner Options tab, enable DVXK, disable VKD3D, disable D3D extras, disable NVAPI, leave esync on for now. Change Wine Version to System (might not matter but it's what I did).
  4. In the System Options tab, enable Feral Gamemode. Save and back out.
  5. Now, through your terminal, type:

WINEPREFIX=(path to the folder you set for the prefix earlier) winetricks dotnet40 dotnet452 dotnet48 arial gdiplus fontsmooth=rgb

and go through any installers that pop up.


Installing and updating FFXI

  1. Download the setup the same way you would as if you were on Windows, from the official POL site. I like to save it to "drive_c" of the prefix's folders.
  2. Once it's done, go back to lutris, right click your game, configure, Game Options and set the "Executable" line to the setup exe
  3. Save, back out, right click your game and Play. I like to make a new folder within drive_c for it to extract the installer to ie drive_c/XISetup
  4. Once it's done, change the Executable again, this time to the installer you just extracted. Hit Play again, tick all 3 and get installing. The FFXI section of the installer might seem like it's hanging but it should eventually finish. Check with htop or some other hardware monitor if you want, the installer's probably maxing one of your CPU cores out. Just let it do its thing.
  5. Now change the executable to polboot.exe from the FFXI install directory and hit Play to launch POL. Update the launcher, sign in, update the game like you would on windows.

Setting up Windower, dgVoodoo and gamepad stuff

  1. Download Windower 4, save and install it the same way you installed stuff in the last section, via lutris. You should install it straight to its own folder under your C drive and not in Program Files, or it may cause issues. After installing it, run it once by pointing lutris to windower.exe instead of the installer to generate directories and stuff. Edit your profile to manually select your game's region, then launch POL through it once and close back to lutris.
  2. Now you gotta get something to fix keyboard inputs ingame, because they're broken with Windower. Download this lua from the Windower discord: https://cdn.discordapp.com/attachments/338713865812574219/907688771036782652/linuxfix.lua save it to (your windower install folder)/Addons/linuxfix and add the following to the bottom of your init .txt in (your windower install folder)/Scripts:

You no longer need to use Discord spyware, linuxfix is now available from within Windower's Addons menu itself if needed.

  1. Go to http://dege.freeweb.hu/dgVoodoo2/dgVoodoo2/ and get D3DCompiler_47 and dgVoodoo v2.64 (specifically 2.64). Extract both.
  2. Copy D3DCompiler_47.dll to drive_c/windows/syswow64 for your 64bit prefix. Replace if one already exists.
  3. From the dgVoodoo folder you want to take the .exe and the .conf file from the main folder, as well as the D3D8.dll from the MS/x86/ subfolder and copy all three to your "PlayOnline/SquareEnix/PlayOnlineViewer" folder where you installed the game.
  4. Now launch the dgvoodoo exe through lutris to change some settings.

    - Check the config folder/running instance section is pointing to the same folder you just copied all this stuff to, your PlayOnlineViewer folder

    - Untick "Capture Mouse"

    - Change "Adapter(s) to use" to your GPU

    - In the directX tab, leave the watermark checked so you can see if dgvoodoo is working (it'll show up once you're ingame if it's working, you can disable it afterwards), change VRAM to the highest setting it'll let you, save and close. You can mess with the filtering and antialiasing options here later.

  5. Time to set some DLL overrides. Highlight your game/prefix in lutris and click the wine glass and choose Wine Configuration again. Head to the libraries tab. gdiplus (native) and mscoree (native) should already be there. There might be a third "winemenubuilder (disabled)" one as well, as far as I'm aware you can remove this without issue. Now we're gonna add 2 more overrides. Find d3d8 in the dropdown menu above the list, click add, then edit it to "Native then Builtin". Just setting it to "Native" may cause problems with XI's config tool. Next add d3dcompiler_47 and set it to Native. Apply and exit.
  6. Now for gamepad setup. You might want to check your controller is detected by wine first by doing the same thing you did to get to Wine Configuration but clicking Wine Control Panel and then Game Controllers instead. Go to the Test Joystick tab and check that everything is detected. Now point lutris to the PlayOnline/SquareEnix/FINAL FANTASY XI/Tools(your region)/FINAL FANTASY XI Config.exe file and launch it. You can change your graphical settings here too, later. Go into gamepad settings and set your controller up as you would on Windows. Save and exit.

Launching the game, troubleshooting framerate stutters

  1. Point to the Windower exe again, and launch it. You should be done, now! Unless you're having graphical stutters, in which case...
  2. There's two causes I've come across for this. One that I've heard is a problem for others, and one that was my problem. The former is the game polling for a gamepad that isn't connected. If you have gamepads enabled in FFXI's config application but none connected, that could be a cause. The latter problem was having esync enabled. For some people esync seems to smooth the game out, but for me it had the opposite effect. You can disable it in Runner Options, where we set some stuff earlier. Going into the System Options tab and adding the environment variable "DXVK_HUB" and setting the value to "full" (no quotation marks) can give you a helpful overlay ingame for troubleshooting.

Good luck! The game should run quite smoothly now with minimal choppiness. There'll be a little when DXVK has to compile shaders for areas it hasn't seen yet, but that should be a one-time affair. Remember to shut the game down legitimately to save your in-game settings, closing it through lutris' "Stop" won't save them.


A BRIEF THIRD GUIDE BECAUSE WINE IS A FICKLE BEAST

This is a quick reminder to myself for troubleshooting reasons, for setting up FFXI with no Windower, and without lutris.

  1. The wine version used here is 8.0, the current stable version on Debain Bookworm at time of writing.
  2. Create your prefix, install FFXI.
  3. Install DXVK by copying the DLLs as mentioned on the github page. Yes, copy the 32bit DLLs to syswow64 and the 64bit ones to system32. Add the overrides mentioned on the same page.
  4. Run 'winetricks d3dcompiler_43 d3dcompiler_47' in the prefix. Maybe copying the d3dcompiler_47.dll from the dgvoodoo website and manually adding the override works too, but I didn't do that this time.
  5. Get specifically dgvoodoo version 2.64 as per the old guide. I tried a newer version and it didn't work. Copy the exe, the config file and the MS/x86/D3D8.dll file to 'SquareEnix/FINAL FANTASY XI'. You don't need to copy anything to the PlayOnlineViewer folder. Add the override (native, builtin) for d3d8.
  6. Configure dgvoodoo, disabling capture mouse, selecting your graphics card, setting video memory.
  7. Launch the game. If all is well, you should see the dgvoodoo watermark once ingame (not in PlayOnline) if you left it on, and any DXVK_HUD options you have enabled.
Edit
Pub: 23 Feb 2022 02:06 UTC
Edit: 23 Apr 2024 00:57 UTC
Views: 5548