Royals on linux

Discussion in 'Tech Zone' started by EIegant, Jun 17, 2020.

  1. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    I'm in the process of developing a guide on how to run Royals on linux distributions, I've been able to get it to run stable on Xenial Ubuntu. However, I am in the process of trying to figure a way to get it to run through the linux beta on my pixelbook go. If anyone has any experience with either Ubuntu or Debian and would like to contribute how they got it running or downloaded, please feel free to post away.

    I have had great success with wine, however when I tried virtual box it seemed nearly impossible. Also, I've had 0 luck with gnome boxes. For now I'd like to experiment with wine. If anyone is truly interested in diving into this, feel free to pm me and I can set up a discord to compile ideas and possibilities.

    Happy Maple Days All!
     
    Hampa likes this.
  2. nahaut
    Offline

    nahaut Member

    Joined:
    Jun 19, 2020
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Country Flag:
    I am trying to run Royals on ubuntu 20.04. I can launch the client, but after 30 seconds, the client crash. The shell message say it's a stack overflow. Did you encounter this issue too / how did you resolve it? thanks :)
     
  3. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    yeah, so anytime its a stack overflow it tends to be an issue with a dll missing. I am not 100% certain which ones we are required as I blow when it comes to figuring out things like that and dont really have time to solve for it. Please dont quote me verbatim on that as I'm not 100% certain that is whats causing the issue. If you want to upload a video I can possibly take a look. Im assuming you are using wine tricks so it could also be a compatibility issue as well. These are the two places I ran into the most issues.
     
  4. nahaut
    Offline

    nahaut Member

    Joined:
    Jun 19, 2020
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Country Flag:
    Here is the output when I launch Maple Royals:

    Code:
    0009:err:winediag:MIDIMAP_drvOpen No software synthesizer midi port found, Midi sound output probably won't work.
    0009:err:seh:setup_exception_record stack overflow 308 bytes in thread 0009 eip 00000000 esp 002311fc stack 0x230000-0x231000-0x330000
    I don't think the first error is related to the second error? The first one appears exactly when the client launches.
    Everytime, after ~30 seconds (exactly when the flute of the main theme starts playing ahah), I get the second error. What's weird is that the music is still playing, but the client freezes.

    Do you remember which dll did you add? Obviously I added the ws2_32.dll and ws2help.dll. There are different versions of theses dll and with some of them the client doesn't launch at all.

    If you have the time, could you share your wineprefix configuration aswell as the additionnal dll's you installed? That way, I could try to replicate your results. I am running on Ubuntu focal btw. Thanks ! :)
     
  5. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    So I actually downloaded a bulk of dll's and I never went back and confirmed which were actually needed, I'll list em for you. Im on holiday visiting my parents for the next week, but I'll attach the dll's i downloaded and try to see if these fix it.

    I utilized these from another guide I found online.

    • d3dx11_42
    • d3dx11_43
    • d3dx9_26
    • d3dx9_28
    • d3dx9_31
    • d3dx9_35
    • d3dx9_39
    • d3dx9_42
    • d3dx9_43
    • dotnet20
    Depending on what version of wine, you may need to download mono210. This wasnt available in either wine 4 or 5 when I tried either versions.
     
  6. nahaut
    Offline

    nahaut Member

    Joined:
    Jun 19, 2020
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Country Flag:
    Yeah, I downloaded those dll too. I am using wine 5. I have the mono-complete package installed on my system? I guess the error is coming from somewhere else. Maybe the version of ws2_32 and ws2help I am using? I downloaded these from a guide, probably the same as yours.
    On another guide, the stack overflow issue is mentionned. Here is their proposed solution :

    "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.

    However, this did nothing, the error is still the present.
    I will try to replicate your config on a clean Xenial VM, to see if the issue is coming from my system.

    What is the version of wine you're using?
     
  7. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    I use 4.02, However im doing a fresh install and switching to 5. Im gonna try to replicate your issue. You could also try doing "sudo apt install software-properties-common" this will allow you to utilize common ppa's which could also be an issue with wine in general. (If you havent realized by now wine is a total pain in the rear to deal with and get working perfectly.)
     
  8. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    also in your winecfg, can you confirm what version of windows it is trying to utilize. I had issues when I had it on anything other than "windows 98"
     
  9. nahaut
    Offline

    nahaut Member

    Joined:
    Jun 19, 2020
    Messages:
    4
    Likes Received:
    0
    Gender:
    Male
    Country Flag:
    Ok so I tried with a xenial install, first with wine1.6 (not launching) then with wine 5 (launching but usual stack overflow).

    On my Focal install, I tried with wine 4.02 (inside a playonlinux virtual drive, because I didn't want to change my wine version :p), still the same error.

    I always set the version of windows to 98, I checked again and it is indeed using win98. I already had software-properties-common.
    Maybe it is a GPU issue? I have an integrated intel UHD620.

    What's even more frustrating is that if I am fast enough, I can log in fine and be in game. Still, this mysterious stack overflow happens after 30 sec.

    For now, I am out of ideas, so I will wait and see if you can replicate my issue.
     
  10. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    Sorry its taken me so long, I'm visiting my parents place and they live in the middle of no where with 1.5mbps down and like .3 so installing everything takes forever.

    What I'm using:
    • Ubuntu 16.04
    • KDE desktop (don't think this makes a difference but its just nicer to look at than xfce)
    • Wine 5.xx (Winetricks)
    Issues :
    • Mono will not download no matter how many times I try or how I try, via repository or direct github pull
    • Since I'm using crouton I'm limited to really only 1 version. I would love to be able to use Trusty or Bionic however I'm very constrained
    Currently working on :
    • Finding a way to force Mono to download
    • Then I'll recreate your scenario

    I'm fairly certain your issue has something to do with either something not being recognized as a 32bit system or in your winetricks or cfg its a random config/option that is preventing you from maintaining an open application. (It feels like a protective redundancy because its preventing info pull, especially if it constantly cuts out after 30 seconds.)

    Imma try to hit up a coffee shop tomorrow and I'll tinker with it with some better internet so It doesnt take 3 hours to download ubuntu alone.
     
    udim likes this.
  11. udim
    Offline

    udim Active Member

    Joined:
    Aug 10, 2019
    Messages:
    34
    Likes Received:
    3
    Gender:
    Male
    Country Flag:
    Hey, I was trying to install mapleroyals on my linux and got the exact same issues as nahaut gets
    stack overflow after 30 seconds

    I followed this guide - https://mapleroyals.com/forum/threads/how-to-play-mapleroyals-in-linux-using-wine.22254/

    Wine version - 3
    Ubuntu 18.04 (tried with 16 too)
    64bit machine (did the thing with WINEARCH=win32)

    Couple of things I have noticed:
    1. When starting mapleroyals with wine I get lots of errors like this:
    0009:err:module:find_forwarded_export function not found for forward 'ws2_32.WahCloseApcHelper' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0009:err:module:find_forwarded_export function not found for forward 'ws2_32.WahOpenApcHelper' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0009:err:module:find_forwarded_export function not found for forward 'ws2_32.WahOpenHandleHelper' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.​

    So in winecfg I added override for library ws2help to be native, but the results are the same

    2. A weird thing I have noticed - tried to disable mono210 (with winecfg -> Libraries tab) And no new error occurred, maybe the issue is that mono210 is not being loaded?
    I tried to switch mono210 to naive and then builin, Same results
    I also have tried to install mono-complete
    The mono thing is suspicious, nahaut, you should check this too

    3. Then I tried to disable all of the d3dx* and dotnet20 libraries, and the results are the same! without any new error

    So from here I can infer 2 things:
    1. The libraries not being loaded for some reason
    2. Maybe this is not an issue, and I haven't got to the part when mapleroyals need those libraries..

    Do you have any ideas about that?
     
    Last edited: Jun 27, 2020
  12. EIegant
    Offline

    EIegant Donator

    Joined:
    May 13, 2016
    Messages:
    194
    Likes Received:
    135
    Location:
    Getting carried somewhere
    Country Flag:
    IGN:
    Elegant
    Guild:
    Oblivion
    @udim Yeah, thats the issue I am running into. I'm trying to find a way to force mono210 to utilized. It's definitely the cause of most of our issues.
     
  13. udim
    Offline

    udim Active Member

    Joined:
    Aug 10, 2019
    Messages:
    34
    Likes Received:
    3
    Gender:
    Male
    Country Flag:
    need any help?
    what did you find out so far?

    btw, I didn't find mono210.dll on the internet. I found some resource that says that mono comes with wine by default, so I figured I don't have to do anything
    Unless you found dll I can install?
     
  14. Fishayyy
    Offline

    Fishayyy Member

    Joined:
    Aug 26, 2017
    Messages:
    20
    Likes Received:
    1
    Gender:
    Male
    Country Flag:
    IGN:
    Underfunded
    Level:
    106
    Was anyone able to ever figure this out? I have a laptop running Ubuntu 20.04 LTS and I've never really used Wine or POL before so I'm kinda lost with where to start.
     
  15. udim
    Offline

    udim Active Member

    Joined:
    Aug 10, 2019
    Messages:
    34
    Likes Received:
    3
    Gender:
    Male
    Country Flag:
    I didn't succeed with wine nor anyone else here.
    Maybe you should try any wine alternative
     
  16. Baaaax
    Offline

    Baaaax Active Member

    Joined:
    Nov 25, 2014
    Messages:
    35
    Likes Received:
    40
    Country Flag:
    IGN:
    Ralbert
    Level:
    89
    I had a quick look at this (more like a day), without doing too much debugging (I don't want to break any Royals terms and conditions and you can't attach a debugger 'normally' due to themida packing) I'm not sure how OP got 0.83 running for any longer than 30 seconds as it seems like its related to a system information check thats being set up from a virtual installation, most like Themida or something in which case the only person that can help is one of the developers. Funny because 0.62 clients work fine in WINE. So I wonder what was added post 0.62 into the client that broke WINE compatibility. I dropped down to nearly every wine version between the latest staging to 3.0 with no differences.

    *edit* I did some more digging and in my opinion it's most likely related to the client being packed with an older version of Themida that has broken compatibility with WINE. If we ever want to play on Linux, one of the developers will have to remove the broken/obfuscated code from Themida and repack for us. It's probably a client check that's had a bypass implemented at one point during server developments (i remember original 0.83 clients had to use a redir bypass or something similar to fool the client into connecting to their server's ip instead of Nexon's, so maybe it's something relating to that.)

    You can solve the sound errors and ws2_2.dll ws2help.dll errors by using ones version 6.1 and above, setting mode to Windows 7, downloading directxsound for any sound errors, ignore the midi error I don't think it has any relevance to Maplestory.

    KVM will probably work but with all the effort of setting that up to with native performance you may as well install a Windows partition :((( sad


    If the original poster could provide more information on HOW they supposedly got 0.83 running without client modifications, I would be extremely interested as would others.
     
    Last edited: Nov 29, 2020
    Myoni and Fishayyy like this.

Share This Page