1. Hello!

    First of all, welcome to MapleLegends! You are currently viewing the forums as a guest, so you can only view the first post of every topic. We highly recommend registering so you can be part of our community.

    By registering to our forums you can introduce yourself and make your first friends, talk in the shoutbox, contribute, and much more!

    This process only takes a few minutes and you can always decide to lurk even after!

    - MapleLegends Administration-
  2. Experiencing disconnecting after inserting your login info? Make sure you are on the latest MapleLegends version. The current latest version is found by clicking here.
    Dismiss Notice

Installing ML on Linux Guide (updated)

Discussion in 'Guides' started by halfwaysleet, Aug 10, 2021.

Tags:
  1. halfwaysleet
    Offline

    halfwaysleet Master Chronos

    90
    26
    111
    May 21, 2018
    Male
    6:14 AM
    halfway
    Thief
    24
    This is an updated guide that will hold your hand through the process of installing MapleLegends on a Linux OS with Wine.

    Wine makes it possible to run Windows programs alongside any Unix-like operating system, particularly Linux. At its heart, Wine is an implementation of the Windows Application Programing Interface (API) library, acting as a bridge between the Windows program and Linux. Think of Wine as a compatibility layer, when a Windows program tries to perform a function that Linux doesn't normally understand, Wine will translate that program's instruction into one supported by the system.

    Step 1: Installing a 32-bit version of wine:​
    Type the following commands line by line into your terminal:
    Code:
    $ sudo apt update -y && sudo apt upgrade -y
    $ sudo apt install wine
    Code:
    $ sudo rm -rf ~/.wine
    WARNING: The above command removes everything you have installed under Wine. Make sure you move your stuff aside first! If this is your first time using wine you have nothing to worry about.
    Code:
    $ export WINEARCH=win32
    $ winecfg
    Set "Windows Version" to Windows 98 and press OK.

    Step 2: Installing and setting up Winetricks: no longer needed as of 11/02/22
    Code:
    $ sudo apt install winetricks
    $ winetricks
    Select the default wineprefix > Install a Windows DLL or component...
    Select the following:

    (d3dx9_26, d3dx9_28, d3dx9_31, d3dx9_35, d3dx9_39, d3dx9_42, d3dx9_43, vcrun6sp6)

    Then hit OK.
    If you get a sha256sum mismatch! error, refer to error 1 at the end of this guide.

    Step 2: Downloading MapleLegends files & DLL:
    First you need to download the latest version of ML's mac files, you can do that by Clicking here.
    (Make sure you download the wineskins version, not the crossover version!)

    After you're done installing the game files, open it, open the MapleLegends2020.pkg folder and extract payload to a place of your choice.
    (I suggest creating a folder called MapleLegends in the home directory for easy access)
    After you're done extracting payload, make sure to rename it to payload.xar or it won't unpack properly.
    upload_2021-8-10_17-29-46.png

    After you're done you can right click on it and select "extract here".
    Once payload is fully extracted, open the folder and go to Payload > Applications > MapleLegends.app > drive_c. Copy the MapleLegends folder from there and paste it into the main MapleLegends folder where you first extracted payload for easy access.

    Now you need to download two extra DLLs for ML to work properly:
    http://www.mediafire.com/?bvt20olayvfbgw7 FOR ws2_32.dll
    http://www.mediafire.com/?7c9tee7fhvebopc FOR ws2help.dll

    After you have finished downloading them, make sure you paste them into the following location:
    home (ctrl + h to view hidden files) > .wine > drive_c > windows > system32
    paste those two files (ws2_32.dll & ws2help.dll) inside system32.
    MAKE SURE YOU CLICK REPLACE AND NOT SKIP WHEN THE FILE CONFLICT MESSAGE APPEARS!

    Step 3:
    Launching MapleLegends:
    (if you want to launch it with Lutris instead, skip to the end of the guide)
    Code:
    $ cd /home/<username>/MapleLegends/MapleLegends && wine ./MapleLegends.exe
    (or whichever location you saved the game files in)
    (Remember to press alt + enter if you have wine set to emulate a viirtual desktop to get rid of the blue background)


    Optional:
    - Setting up a bash script: (recommended)
    Open gedit or your preferred text editor and type in the following:
    Then save it as MapleLegends.sh and type the following command into your terminal:
    Code:
    $ chmod +x MapleLegends.sh
    Now you can launch the game simply by typing:
    Code:
    $ ./MapleLegends.sh
    You can also set it to open with a keyboard shortcut by assigning a key to that terminal command.
    upload_2021-8-15_19-24-21.png


    - Running Multiple Clients (optional)
    Type the following into your terminal
    Code:
    $ winecfg
    Click Graphics, then untick "Emulate a virtual desktop" (note that you won't be able to run the clients in 1366x768 resolution)
    After you disabled that option you'll be able to run multiple clients without having to create multiple wine prefixes.

    - Running ML with Lutris (optional)
    First we have to download Lutris:
    Code:
    $ sudo apt install lutris
    $ lutris
    Click the '+' sign at the top left corner to add a new game.
    Under Game info:
    - Name it MapleLegends.
    - Set Wine as the Runner.
    Under Game options:
    - Next to the Executable, click browse and select the executable from the MapleLegends folder that we extracted from Payload.
    Make sure you select MapleLegends.exe NOT ._MapleLegends.exe
    - Next to Working Directory, click browse and point it to the same folder.
    - Set the Prefix architecture to 32-bit.
    It should look something like this:
    upload_2021-8-10_17-56-44.png
    Under Runner options:
    - Disable Enable DXVK/VKD3D.
    - Enable Windowed (virtual desktop).
    Under System options:
    - Next to Default installation folder, set it to the same location as the working directory.
    - Enable Disable Lutris Runtime.

    Press save.
    Open Lutris, select MapleLegends and press Play.

    - Allowing your cursor to leave the client (lutris) (optional)
    Wine Configuration > Graphics > Untick "Automatically capture the mouse in full-screen windows"

    - Running Multiple 1366x768 Clients (lutris) (optional)
    Make a copy of your '.wine' folder in the home directory and name it: '.wine2'.
    In lutris configurations under Game options set the Wine prefix to the copied .wine directory (.wine2).
    You will now be able to run another emulated virtual desktop to sustain 1366x768 Clients. You can run one instance of the game from the terminal, and another from lutris with a different wine prefix set, or both of them from lutris but you have to make a new game copy inside lutris and specify different wine prefixes.
    (note that you have to have 'Emulate a virtual Desktop' enabled in the wine configs, refer to error number 1)

    Errors:
    1- If you get a sha256sum mismatch error upon trying to install vcrun6sp6, do the following:
    Code:
    $ sudo apt-get remove winetricks
    $ wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
    $ chmod +x winetricks
    $ sudo mv -v winetricks /usr/local/bin
    Then repeat Step 2 without reinstalling winetricks.

    1- If you have a dual monitor setup and don't want your client to misbehave if you accidentally alt + enter, or if 1366x768 resolution doesn't work, type:
    Code:
    $ winecfg
    Click Graphics, then tick "Emulate a virtual desktop"

    2- If clicking the Play button on lutris doesn't work, type the following line in your terminal and try again:
    Code:
    $ pkill wine
    A special thanks to Cak33, this guide would not have been possible without his help.
     

    Attached Files:

    • Great Work Great Work x 11
  2. LoghainAblar
    Offline

    LoghainAblar Red Snail

    8
    1
    16
    Apr 6, 2021
    2:14 AM
    Page, I/L Arch Mage
    137
    So I installed linux mint on a secondary laptop to see if i could troubleshoot someone on discord (not needed at the end). From winetricks i only installed vcrun6sp6, other than that my wineprefix should be similar.

    Everything works, including multiclieting on 1366x768 without virtual desktop. I then tried to replicate the process on my main laptop to get the HD multiclienting but it didn't work. Any ideas of why it works on one laptop and not the other? See edit.

    EDITED:
    So I included a 1366x768 resolution with xrandr in my main laptop, and although it still can't fullscreen at that resolution i can now multiclient on it as well, the solution is literally the same as in windows lmao. In the secondary laptop it worked out of the box because its native resolution is 1366x768, but like in windows just having that resolution as an option is enough for the client to launch successfully.

    [​IMG]
     
    • Like Like x 1
    • Great Work Great Work x 1
  3. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    Its my first time seeing it worked without virtual desktop, so I'm not sure whats going on. But do try enabling it to see if it works on yr main laptop
     
  4. anonymiza
    Offline

    anonymiza Red Snail

    9
    3
    16
    Apr 23, 2018
    Male
    7:14 PM
    barydos
    Fantastic guide! I was able to get it up and running first go.

    However, there seems to be one or two issues (minor), not sure if anyone else is facing this.
    FYI I'm on Ubuntu 20.04

    The minor one to begin with, sometimes I noticed some slow keyboard response (wired mode). So while I'm walking a distance (holding arrow key) and then switch directions, it's like there's a minor delay on occasion before switching over.
    ^Scratch that - it seems fine now.

    The other one is that basically when I switch to full-screen (whether manually or by alt+enter), the screen blacks out as if it's switching to full-screen mode. But then the screen returns to normal but without Maple anywhere in sight. It's just my browser (and stuff I had opened before) - except now my mouse becomes invisible and I can't click anything.
    If I move my mouse around, it seems like it can hover around the edges to make my taskbar visible, and I can see my taskbar apps enlarge on hover, but I can't click!
    I have to forcefully power off my PC and turn it on to get it working.
    I can confirm this does not appear to be an issue if I press alt + enter when I'm not on Maple.

    Has anyone else experienced this?
     
  5. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    maple crashed once for me after I pressrd alt enter and try to go fullscreen. seems fine after that tho. im on mint 20.2.
    also side note. if i go full screen, maple will be minimized instantly. i'll need to alt tab back to it, and enjoy the fullscreen

    not sure if it works, but u may try pressing ctrl + alt + backspace instead of forcefully powering off yr pc
     
    • Useful Useful x 1
  6. anonymiza
    Offline

    anonymiza Red Snail

    9
    3
    16
    Apr 23, 2018
    Male
    7:14 PM
    barydos
    Thanks, didn't know about that shortcut. I had to go and enable it - nice workaround if I ever get stuck.

    Hopefully, sooner or later the fullscreen issue self-resolves on my machine, so far no success

    edit: One other thing I observed - I can edit the settings for window size + skip wizet animation. But I noticed when I have window mode set to false, it never actually starts up as full-screen...:unsure:
     
  7. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    as usual, support for wine is kinda like juz praying it would work. Fullscreen works for me, juz gotta alt tab back into it, tho I didnt try starting with window mode = false.
    cant tell if its a window DM being incompatible or wat tho, since I didn't install other DMs to play around with.
     
  8. LeonardoJF
    Offline

    LeonardoJF Zakum

    1,882
    347
    460
    Jun 16, 2021
    Male
    Rio grande do Sul - BR
    6:14 AM
    ItzLeo
    Paladin
    200
    Favela
    i got a notebook with linux and its horrible, change linux for windows 10 was alot easy than instal lol
     
  9. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    preference i guess. its harder to install but i find ML loads alot faster on linux
     
  10. OP
    OP
    halfwaysleet
    Offline

    halfwaysleet Master Chronos

    90
    26
    111
    May 21, 2018
    Male
    6:14 AM
    halfway
    Thief
    24
    Try going into your wine configurations by typing
    Code:
    $winecfg
    click on graphics and tick emulate a virtual desktop enviroment.
     
    • Useful Useful x 1
  11. anonymiza
    Offline

    anonymiza Red Snail

    9
    3
    16
    Apr 23, 2018
    Male
    7:14 PM
    barydos
    Thanks for touching base on discord mate.
    I did your little trick here and it's a great workaround - it goes all funky with the blue background, but as long as I double click the old school window bar I can maximise it decently.

    FYI, seems like the issue I'm having only takes place when my computer is connected to 2 monitors (27" with a 15.6" lol).
    I tested and it seems while in single-monitor mode, there is no issue - how bizarre!
     
    • Like Like x 2
  12. Sumi
    Offline

    Sumi Blue Snail

    2
    0
    2
    Dec 28, 2021
    Male
    4:14 AM
    I did the workaround and the game itself starts and works, but after 3 or 4 minutes later game crashes, no error message appears.
    Crash always happens, both full screen, windowed mode and virtual desktop mode.

    Possibly a driver issue/some hardware incompatibility, i think.

    Edit: I should emphasize that the Wine that I'm using is one of the latest staging versions because I'm using a rolling release distro, this Wine branch is common for constantly breaking after every update, so this is something that should be pointed out in this guide.
     
  13. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    don't use the wine provided by your package manager - rather use the wine builds provided by lutris. This way, regardless of whatever wine-staging updates you get, you will always run the exact version of wine you have selected in lutris
     
  14. snowydave
    Offline

    snowydave Blue Snail

    2
    1
    13
    Aug 20, 2018
    Male
    5:14 AM
    Nerp
    Magician
    What version of wine should I be using? I'm also on a rolling release distro and I'm having issues with the game hanging when I try to launch. I've tried a few different versions of wine, though they've all been very recent (i.e. the 7.0 RC's from the past two weeks).

    (Will edit this with more details later)
     
  15. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    I have success with wine 6.0.2, lutris-fshack-6.21 & wine-ge-7.0R3

    currently im using wine-ge-7.0R3 with no issue, on mint 20.2

    do make sure u replace the 2 dlls - very important
     
  16. snowydave
    Offline

    snowydave Blue Snail

    2
    1
    13
    Aug 20, 2018
    Male
    5:14 AM
    Nerp
    Magician
    Just managed to get it working with wine 6.0.2. It worked after I enabled virtual desktop with `winecfg`...

    I should point out that I've been pulling my hair out trying to deal with the following getting printed several times before the process stops:

    ```
    0024: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.
    0024: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.
    0024: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.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahCloseSocketHandle' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahCreateSocketHandle' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahCloseHandleHelper' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahOpenCurrentThread' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahCloseThread' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahQueueUserApc' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    0024:err:module:find_forwarded_export function not found for forward 'ws2_32.WahCompleteRequest' used by L"C:\\windows\\system32\\WS2HELP.dll". If you are using builtin L"WS2HELP.dll", try using the native one instead.
    ```

    Having just managed to get the client running while still getting this output, I see that this was a red herring all along...

    For reference, I made a brand new wineprefix, set to win98 with winecfg, installed exactly the dll's listed in OP, copied the two DLLs into system32, and then (after staring at OP some more) set the virtual desktop settings in winecfg.
     
    • Like Like x 1
  17. ONASSIS
    Offline

    ONASSIS Mushmom

    51
    8
    55
    Oct 9, 2019
    Male
    5:14 AM
    cojs
    Bowman
    29
    Can you explain please?
     
  18. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    wine 7.0.0 stable has been released so. alot of things has been simplified, and i have personally tested it.

    Do the following:
    1. create your wine prefix
    2. replace ws2_32.dll & ws2help.dll in the system32 folder

    thats it.
    what used to be required, but not anymore:
    1. any sort of winetricks.
    2. changing to windows 98.

    what some people might need, and some might not:
    1. enable virtual desktop
     
    • Informative Informative x 2
  19. Daydreamer
    Offline

    Daydreamer Headless Horseman

    705
    243
    376
    Jul 8, 2017
    Male
    2:14 AM
    I/L Arch Mage
    With WINE 7.2, I did not need to install anything with Winetricks but did need to set the version to win98 with winecfg. Audio isn't working for me right now but I think it's because I'm missing a 32-bit mp3 codec-- not sure on that.

    Edit: I was missing lib32-libpulse (32-bit pulseaudio libraries)
     
  20. Cak33
    Offline

    Cak33 Headless Horseman

    819
    342
    371
    Oct 24, 2019
    Male
    5:14 PM
    NotCut3
    Hero
    172
    Active
    hmm, interesting. maybe coz im using lutris to manage my wine env, hence they may have included some extra libraries for me.
    I did not state in the earlier post but, I am also not enforcing 32-bit env, so its currently on the default 64-bit env
     

Share This Page