IMPORTANT How to run Windia on Linux/Steam Deck

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
Steam Deck users: Simply run the patcher in gaming mode. Should work out of the box with 0 configuration.

WYCysLC.png


Windia on Linux!
Note: In theory, this should work on Mac OS X as well. OS X is not free software and I don't own a Mac, use at your own risk.

Windia is the first ever v83 (now, v84) private server with native WINE compatibility.

Guide is aimed at:
Arch Linux and distros based on it (e.g. Antergos and Manjaro)
Ubuntu/Mint
Red Hat distros (e.g. RHEL, Fedora, CentOS)

-

Pre-requirements:
WINE. I recommend using Proton or Lutris instead of WINE itself, to make the entire process much easier.

Before starting, update your system.
Code:
// Ubuntu
sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autoremove

// Arch
// Note: Enable multilib repository beforehand!
sudo pacman -Syyu

// Red Hat
sudo yum update

WINE is required for the patcher and the client.
Install wget to download the patcher as well.

Download the Windia Patcher to a folder.

Code:
mkdir ~/home/Desktop/windia
cd ~/home/Desktop/Windia
wget "https://patcher.windia.me/downloads/WindiaPatcher.exe" -O "Windia Patcher.exe"

Install all the Wine dependencies

Code:
// Arch
sudo pacman -S wine giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse libgpg-error lib32-libgpg-error alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo sqlite lib32-sqlite libxcomposite lib32-libxcomposite libxinerama lib32-libgcrypt libgcrypt lib32-libxinerama ncurses lib32-ncurses opencl-icd-loader lib32-opencl-icd-loader libxslt lib32-libxslt libva lib32-libva gtk3 lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader

// Ubuntu
sudo apt-get install wine

// RHEL based distros
sudo dnf install winehq-stable

Run the patcher with WINE and run it as you normally would on Windows

Code:
wine Windia\ Patcher.exe

After patching, you can run the game directly through:
Code:
wine Windia.exe

If it works, cool; have fun!

If it doesn't work, configure WINE like so:
These are my settings and it works,

Code:
winecfg

45v5fn6.png


Common issues:
"it doesn't launch the patcher or the client!"
Try WINE version 6,21. and use a 32 bit wineprefix. I recommend using Lutris' version of it - just make sure to not enable DXVK!

"overlays don't display" (such as FPS display, expedition stats, etc) -
Contact me and we'll troubleshoot the bug.

"stack overflow" -
Custom resolution might break. Open `windia.ini` and set the resolution to 800x600.
If you really want to use 720p, use WINE virtual desktop. `winecfg` -> Graphics -> Virtual Desktop -> input 1280x720.

"stack overflow" if the above solution doesn't work, or "d3d adapter out of memory" -
Run `wine regedit`, navigate to `HKEY_CURRENT_USER/Software/Wine/Direct3D`, create a string named VideoMemorySize and enter your GPU's VRAM in megabytes.
mJkPWQU.png


"font looks awful" -
WINE doesn't arrive with Microsoft fonts, which MapleStory utilizes.
Follow this: https://wiki.archlinux.org/index.php/Wine#Fonts
Or https://askubuntu.com/a/219795
 
Last edited:

Llama

New member
May 2, 2020
2
1
0
Hey threre! This isn't working for me on:
Arch Linux 5.6.5,
Wine Staging 5.7
Nvidia 1080
Intel i5-8700k

  1. I installed all of the dependencies, no problem.
  2. Ran Patcher.exe which also completed no problem.
  3. Attempted to run which failed.
  4. Installed relevant winetricks packages. (Everything that starts with d3d, except for d3dxof and dotnet20sp2).
  5. Configured wine w/winecfg to exactly match OP. Including d3d8 (native, builtin).

Output from wine attempting to run Windia.exe:
Code:
000b:fixme:winediag:__wine_start_process Wine Staging 5.7 is a testing version containing experimental patches.
000b:fixme:winediag:__wine_start_process Please mention your exact version when filing bug reports on winehq.org.
0014:fixme:heap:RtlSetHeapInformation 0x570000 0 0x22e3b0 4 stub
0019:fixme:process:SetProcessShutdownParameters (00000380, 00000000): partial stub.
0032:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0035:fixme:process:SetProcessShutdownParameters (00000380, 00000000): partial stub.
 

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
Hey threre! This isn't working for me on:
Arch Linux 5.6.5,
Wine Staging 5.7
Nvidia 1080
Intel i5-8700k

  1. I installed all of the dependencies, no problem.
  2. Ran Patcher.exe which also completed no problem.
  3. Attempted to run which failed.
  4. Installed relevant winetricks packages. (Everything that starts with d3d, except for d3dxof and dotnet20sp2).
  5. Configured wine w/winecfg to exactly match OP. Including d3d8 (native, builtin).

Output from wine attempting to run Windia.exe:
Code:
000b:fixme:winediag:__wine_start_process Wine Staging 5.7 is a testing version containing experimental patches.
000b:fixme:winediag:__wine_start_process Please mention your exact version when filing bug reports on winehq.org.
0014:fixme:heap:RtlSetHeapInformation 0x570000 0 0x22e3b0 4 stub
0019:fixme:process:SetProcessShutdownParameters (00000380, 00000000): partial stub.
0032:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0035:fixme:process:SetProcessShutdownParameters (00000380, 00000000): partial stub.
Latest anticheat update was causing issues under WINE. I just pushed an update which should fix this crash. Can you try it again?
 

Llama

New member
May 2, 2020
2
1
0
Wow, yea of course! Can I just run Patcher.exe again or should I wipe the whole folder? Also, do I need to download a new Patcher.exe?

Huge shoutouts to the epic Linux support in this thread
 
  • Like
Reactions: shavit

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
Wow, yea of course! Can I just run Patcher.exe again or should I wipe the whole folder? Also, do I need to download a new Patcher.exe?

Huge shoutouts to the epic Linux support in this thread
The same patcher will work! Just run it through mono and it'll be fine
I test on Manjaro rather than vanilla Arch but I don't think there will be any difference
 

woshiyaohui

New member
Jun 1, 2020
5
2
3
Hi,

Thank you for the guide and appreciate your work.

I am able to run perfectly with the resolution of 800x600 which i set in windia.ini. However, seems like i am still getting stack overflow with the resolution 1280x720 (i have tried to set in both windia.ini and winecfg Virtual Desktop). I have tried the stack overflow methods above as well

Error: err:seh:setup_exception_record stack overflow 816 bytes in thread 0504 eip 7bc70c2f esp 00221000 stack 0x220000-0x221000-0x320000

Below provided Neofetch for your references.

https://ibb.co/pyjptpy

It is okay to run under 800x600 resolution. Would be great if possible to run in 1280x720.
 

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
Hi,

Thank you for the guide and appreciate your work.

I am able to run perfectly with the resolution of 800x600 which i set in windia.ini. However, seems like i am still getting stack overflow with the resolution 1280x720 (i have tried to set in both windia.ini and winecfg Virtual Desktop). I have tried the stack overflow methods above as well

Error: err:seh:setup_exception_record stack overflow 816 bytes in thread 0504 eip 7bc70c2f esp 00221000 stack 0x220000-0x221000-0x320000

Below provided Neofetch for your references.

https://ibb.co/pyjptpy

It is okay to run under 800x600 resolution. Would be great if possible to run in 1280x720.
I haven't been able to debug this bug unfortunately. I do know that using WINE's virtual desktop (through winecfg) with 1280x720 as the setting seems to fix this issue, at least on my Manjaro VM. Could you try that?
 

woshiyaohui

New member
Jun 1, 2020
5
2
3
Yup. I did the configuration as well. Unfortunately, i am still getting stack overflow. The screenshot below shows the configuration for both windia.exe and Virtual desktop resolution through winecfg.


Its okay and thank you for your assisting. I will keep 800x600 resolution for now until i found the solution.
 

Parsifal

New member
Jun 12, 2021
2
0
0
Hi shavit,

I installed wine-staging and all the deps, followed your settings in winecfg, installed all the mentioned dlls through winetricks. However, the client wouldn't launch.

My system setup is:
5.12.10-arch1-1
wine-staging 6.10-1
NVIDIA GeForce GTX 960M
Intel(R) Core(TM) i5-6300HQ

And the console output I got is:
002c:fixme:winediag:LdrInitializeThunk wine-staging 6.10 is a testing version containing experimental patches. 002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org.
0104:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 0129FEF8
0100:fixme:secur32:get_cipher_algid unknown algorithm 23
0100:fixme:secur32:get_mac_algid unknown algorithm 200, cipher 23
0100:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFA, 00ABFEA4
010c:fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot
010c:err:winediag:wined3d_dll_init Setting multithreaded command stream to 0.
010c:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0174:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 0443FEF8
Woah, you can see this text! It means one of two things..
1. You run Windia on WINE. That's cool. I implemented the compatibility layer for you sweetheart.
2. You're allocating a console to the client. If you follow 2 and you're a malicious user, please consider to *not* be doing anything malicious. Windia is a passion project of mine. If you find any vulnerability, report it to me and I'll reward you appropriately. Have fun <3

Any suggestion?
 

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
Hi shavit,

I installed wine-staging and all the deps, followed your settings in winecfg, installed all the mentioned dlls through winetricks. However, the client wouldn't launch.

My system setup is:
5.12.10-arch1-1
wine-staging 6.10-1
NVIDIA GeForce GTX 960M
Intel(R) Core(TM) i5-6300HQ

And the console output I got is:
002c:fixme:winediag:LdrInitializeThunk wine-staging 6.10 is a testing version containing experimental patches. 002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org.
0104:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 0129FEF8
0100:fixme:secur32:get_cipher_algid unknown algorithm 23
0100:fixme:secur32:get_mac_algid unknown algorithm 200, cipher 23
0100:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFA, 00ABFEA4
010c:fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot
010c:err:winediag:wined3d_dll_init Setting multithreaded command stream to 0.
010c:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
0174:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 0443FEF8
Woah, you can see this text! It means one of two things..
1. You run Windia on WINE. That's cool. I implemented the compatibility layer for you sweetheart.
2. You're allocating a console to the client. If you follow 2 and you're a malicious user, please consider to *not* be doing anything malicious. Windia is a passion project of mine. If you find any vulnerability, report it to me and I'll reward you appropriately. Have fun <3

Any suggestion?
Can you try Lutris' patched WINE 5.0?
 

Parsifal

New member
Jun 12, 2021
2
0
0
Can you try Lutris' patched WINE 5.0?
now it just gets slightly different...

000b:fixme:winediag:start_process Wine TkG 5.0 is a testing version containing experimental patches. 000b:fixme:winediag:start_process Please don't report bugs about it on winehq.org and use https://github.com/Tk-Glitch/PKGBUILDS/issues instead. 0018:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\NDIS": 00000001 000f:fixme:service:scmdatabase_autostart_services Auto-start service L"NDIS" failed to start: 731 Wine cannot find the ncurses library (libncurses.so.5). 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0009:err:ntlm:ntlm_LsaApInitializePackage no NTLM support, expect problems 002f:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 00EFFF14 0009:fixme:secur32:schannel_get_cipher_algid unknown algorithm 23 0009:fixme:secur32:schannel_get_mac_algid unknown algorithm 200, cipher 23 0009:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFA, 0032FE94
0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:toolhelp:CreateToolhelp32Snapshot Unimplemented: heap list snapshot 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation returning fake driver list 0031:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION 004b:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFA, 03DFFF14 Woah, you can see this text! It means one of two things.. 1. You run Windia on WINE. That's cool. I implemented the compatibility layer for you sweetheart. 2. You're allocating a console to the client. If you follow 2 and you're a malicious user, please consider to *not* be doing anything malicious. Windia is a passion project of mine. If you find any vulnerability, report it to me and I'll reward you appropriately. Have fun <3
 

peoreas

New member
Jul 4, 2021
1
0
0
I am on Arch and I managed to start the client and successfully logged in, however, the client would hang after I entered the PIC.

Using Wine 6.12
 

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
I am on Arch and I managed to start the client and successfully logged in, however, the client would hang after I entered the PIC.

Using Wine 6.12
WINE 6 or above is currently not supported due to cross-platform compatibility concerns in regards to OpenSSL.
The issue will be resolved in an upcoming update. For now, please use WINE version 5
 

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
I am on Arch and I managed to start the client and successfully logged in, however, the client would hang after I entered the PIC.

Using Wine 6.12
I am happy to announce that I have figured out a solution for this bug. The next client update will resolve it, stay tuned!
 

Sumi

New member
Dec 30, 2021
3
1
3
game works without workarounds (Wine 5.0 and 6.0), but I've noticed that the backgrounds strongly decreases the performance, i also experienced crashes when speaking with NPCs in certain areas, and that crash seems to be more frequent with backgrounds enabled for some reason.

There's a minor issue with the launcher in Wine 6.0 and above (I guess) or 64-bit prefixes, I'm not 100% sure, sometimes crashes at startup, I don't know if these crashes happens in Window
 
  • Like
Reactions: shavit

shavit

/dev/null
Staff member
Oct 19, 2019
1,701
827
113
game works without workarounds (Wine 5.0 and 6.0), but I've noticed that the backgrounds strongly decreases the performance, i also experienced crashes when speaking with NPCs in certain areas, and that crash seems to be more frequent with backgrounds enabled for some reason.

There's a minor issue with the launcher in Wine 6.0 and above (I guess) or 64-bit prefixes, I'm not 100% sure, sometimes crashes at startup, I don't know if these crashes happens in Window
I'm aware that it runs without any workarounds - but one of the steps in the guide is crucial to enable some of the performance patches on Windia, and that is using winecfg to override the d3d8 library. I will figure out a solution for this in the future so that overriding winecfg is not necessary.
Could you provide feedback on performance after applying the winecfg edit?