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

macOS Experience

Discussion in 'General Discussion' started by Hito, Jun 10, 2019.

  1. Hito
    Offline

    Hito Stone Golem

    126
    51
    141
    May 4, 2017
    Straya
    7:36 AM
    Ainu
    Hermit
    95
    Galaxy
    Hello everyone,

    I am thinking of returning to MapleLegends. I posted a while ago that I was leaving because I didn't find the reliance on people having umpteen mules, the fact that HP washing is even turned on and allowable, and leeching to be a rather fun experience however I think I am wearing myself thin on other servers that remove these aspects of the game as they have less content. The removal of those things is great, not having things to do beyond endlessly grind is not. MapleLegends shines for its content, party quests, maps, and community. It makes being at a natural disadvantage for not HP washing, and not having a mule for every single skill in the game tolerable.

    There's one kicker though, I'm on macOS. Before the regular train of "mac sucks windows is good" (which is a very silly argument in both directions for an incredible amount of reasons), I hope this can be an intelligent discussion rather than flame wars on operating system types by people who don't have systems-programming or operating systems experience etc. So, I want to say that the macOS experience I had on Legends wasn't very good.

    First of all, the resolution lock at 800x600 isn't great. My main monitor is 2560x1440. 800x600 on that is so small it's hard to read text in Legends and what not without leaning and hunching over. I could use dxwnd to scale the client up say 20% (as I do on other servers I've tried). That's a good fix for the game (as I know it works) but the Wineskin bundle provided blocks the use of start.exe – that is not default behaviour and has either been intentionally added or was already present in the boilerplate used before Legends makes it's own Wineskin. Simply enabling start.exe would alleviate a lot of those woes, even though other servers provide variable window sizes for MapleStory e.g. 1280x720 where you can actually see more of the game at once (which would be great but is far more a development effort) simply allowing the use of start.exe would allow people on high resolution monitors to scale up the game.

    Secondly, the Wineskin bundle provided relies on XQuartz to function properly – as far as I know having tested 3-4 other servers macOS's default drivers work perfectly fine, and XQuartz is highly inefficient to the point where CPU utilisation peaks as high as 80% for Legends, sitting around 60% usually with CPU core temperatures of 90C from usual idle of 70C. Meaning things run hot, those numbers are far too high for the type of application this is (it shouldn't ramp up the CPU that much leading to hot temperatures, regardless of cooling ramping the CPU up that high is for things like other high-computation operations). Thermally throttling a CPU for hours on end just to play is not good for the longevity of hardware and it also means clock slowdown can occur. I think some optimisations could be made to the Wineskin wrapper being used here, or at least open sourcing the wrapper in-use itself (there is nothing worth privatising the wrapper for) to allow for community improvements. The Wineskin wrapper is not MapleLegends-core, it's just a preconfigured Wine setup for running the game.

    Overall, the Wineskin wrapper runs resource hungry (more hungry than say League, or Heroes of the Storm, or CS:GO, etc) and restrictively on macOS. This is due to the Wineskin wrapper in use, not the operating system.

    I don't want to devalue the effort gone into supporting multiple operating systems but it is known that people use macOS and so I feel if the devotion to supporting it is continuing (as it has for years) that the extra margin of effort to make that experience good is of great value; I personally won't be playing until those two things are met and the argument of downloading and installing Windows is moot because I don't want to partition 50 GiB of drive space and have to literally shut down everything I am doing, load a new operating system to do one thing, and then do the reverse when I am done playing. Sometimes I play while watching videos, I'll have to install my password manager and secure Windows to signin to those accounts. What if I want to do some project work and have a quick 30 minute break for Maple in-between? I'll have to spend 5 minutes getting into Maple, and 5 minutes back out. Imagine if you could not multitask at all; that's what installing Windows to play Legends would be like.

    What are you thoughts?
     
    Last edited: Jun 10, 2019
  2. akashsky
    Offline

    akashsky Horntail

    2,037
    851
    495
    Jun 10, 2017
    Male
    United States
    4:36 PM
    Disparity
    Corsair
    200
    Pasta
    Welcome back to leechland and mulestory. Anyways, I kinda disagree with it ruining the game, but thats a topic for another thread.

    One thing that I have tried to get the resolution a bit better is to change the resolution setting of my laptop. For example, I actually had the same issue as you on my new windows laptop - the maplelegends client is so small because my screen resolution is 1980x1080, so what I did to fix this is lower it to like 1600x900 via my settings.

    That made the game appear decently sized to me. Alternatively, is there not a full screen mode for mac? If you need to watch videos and play at the same time perhaps invest in a shitty second laptop to use as a second monitor?
     
  3. Motto
    Offline

    Motto Skelegon

    1,068
    1,139
    428
    Jun 30, 2018
    Male
    Mars
    1:36 AM
    PogShad Motto
    Islander
    201
    I'm a MacOS user here, been around since 2017... and still strongly say the work put behind the wrapper is well good enough.

    I'd like an explanation regarding this... as I hop between Distros, Windows and MacOS pretty regularly... and I'm interested in what you're going to say about this.

    I can't say the same for me.

    More likely it was added to fix the problem with hackers, running .exe randomly on a virtual machine to run just a game... what would you think would go wrong here?
    So it's a fail-safe provided to help against people thinking the MacOS is not hacker-proof ( and makes it quite more harder for them to do such things on MacOS tbh )

    I think I've never seen servers running on something different from Wineskin, provide some example that I could look up, and tell you it's actually Wineskin.


    How is it possible to compare games ... of which ENGINES are completely developed for multiple Operating Systems, be compared to a 2003 game, which with the v62 version would be stuck at 2006/7 rule of thumb operating systems.
    It's like comparing why some games don't run on Windows 7, given they ran perfectly fine on Windows 2000 and Windows XP.

    To be fair, I've never had problems with the MacOS port we have here, it's stable, doesn't give many problems ( if not the first times after a big patch )

    I don't want to be mean but.
    To be honest we brought ourselves to this shit situation in the first place.
    I'm not sure about you, but I'm running on a 2013 Macbook pro, and playing this game while having a chat on Discord, listening to Spotify, doing some coding+compiling on another workspace screen just makes the laptop go on 99% CPU usage at all times, with 8GB of ram being eaten alive like a fucking bowl of rice right in front of persons deprived of food for a week.

    Bringing back to what I've said before, we can't be here cutting stones and saying "that game works better than this game" because well... this game is so old, the engine to run it is just a shit hole, and I'm sure NiseNise did his best to make it even work well.
    Whatever solution you have, from other servers as well, in regards to performance boosting for the game on MacOS, gladly up to a nice discussion about it.

    But just bish-bashing the how it's made, without actually trying to fix it, and giving a nice result report regarding the fix... it's inefficient.
    I've tried before to increase the size of the window while in windowed, the problem starts at how the game is implemented into the virtual machine, it is supposed to work in full screen, when windowed it'll stuck to the size given (800x600)
    I've actually tested and performed a change to the resolution using something I've found on other servers... But yeah it's like 15 minutes of work just to increase those 10 pixels of a game that won't really change much.

    Another thing I've seen you write is "My main monitor is 2560x1440", I'm not sure of what Apple device you're talking here, because I'm thinking right now you use a mac mini, or something like that...
    If not, and you're just running your macboook pro to a de-attached display, I'd just decrease the laptop resolution size to make the game look "big" while the main monitor stays it's normal size.

    That's what I've normally done when I actually played the game, because running Discord, the game, a youtube video all on the 13" laptop screen was just trash.

    Have fun, and hope you'll come back to give us some help regarding fixes to the virtual machine.
     
    • Great Work Great Work x 1
  4. OP
    OP
    Hito
    Offline

    Hito Stone Golem

    126
    51
    141
    May 4, 2017
    Straya
    7:36 AM
    Ainu
    Hermit
    95
    Galaxy
    I've been using macOS (lower case m) since 2012 when it was still OS X. I'd have to disagree on the wrapper specs.

    There are a few discussion topics on the internet that people who don't know much about tend to have very tribal opinions on: Windows vs Mac, and Apple vs Samsung. "Windows sucks because it can get viruses", "Macs suck because they are expensive and cannot play games". Both of these statements are idiotic and essentially all discussion on this topic in most forums is done by people who don't understand how an operating system, software works or general computer science.

    "Windows sucks because it can get viruses". So can macOS, less people use it. Why develop malicious software for a smaller target audience? Windows also has a notably terrible API that makes it easier to exploit but that does not mean macOS cannot be exploited also.

    "Macs suck because they are expensive and cannot play games". Macs are expensive yes, I've personally – literally – never had a single problem with the 3 I've owned since 2012 which means no time spent with support, goofing around trying to fix things etc. Also, a strict and small list of hardware support keeps resource consumption low which is why these systems can run on typically leaner hardware. DirectX is developed by Microsoft. Most games use DirectX. Of course games companies are going to choose a software ecosystem that provides both the operating system AND graphics library AND can be run on any hardware. No games company is going to develop OpenGL (free software) to further graphics development there.

    That's about all I have to say on non-nerdy topics related to this.

    I do socket programming in C with the Linux kernel (winapi's is very similar) for fun, and for some projects. Enforcing security on the client at the expense of the server is never the right thing to do if the client is manipulating a server. It's much easier to simply reject malformed packets at the server than to cover the umpteen ways by which a client can circumvent whatever checks at balances you put in there – and most of the time, it just makes things annoying and crushes legitimate use cases.

    Why would virtualisation be a problem here? Only Neckson enforced the one-client rule which either had to have clever workarounds to circumvent or virtualisation as a friendlier, albeit more resource hungry, alternative.

    Also, start.exe is specifically for launching bash scripts or non-target applications for the Wineskin wrapper.

    No it's not. That's a straw-man argument. MapleStory was created in 2003, this version patched to 2006/2007, you'd expect it to run less resource hungry given computational resources back then were literally magnitudes lower than today. Which would perform faster, a consumer computer from 2006/2007 or 2019?

    The entire point of Wine is to provide an abstracted winapi to non-Windows system. It's literally the entire point. Games that don't run on Windows 7 that do run on 2000 or XP don't because the winapi they are trying to access is either depreciated, or mismatched. In version X doing ABC operations are supported then in version Y only B and C may be supported while A drops. This is why Wine allows you to select your target Windows version to select the winapi you want to expose. This entire point you've made is moot.

    It's not stable, I constantly have to reinstall the game when it self-borks after a few times running doing nothing other than opening the game and playing, no tweaks.

    2017 Macbook Pro. Discord. VSCode. Spotify. Docker. Vagrant. Brave Browser.

    Non-MapleLegends = 65C at the CPU, 10% utilisation.
    With MapleLegends = 95C at the CPU, 80% utilisation. It's MapleLegends, very easy to see the processes consuming it all.

    I'm not making any comments without suggestions; unsure how you came to that conclusion given I literally said if it were open sourced then anyone could help improve it and that enabling start.exe in the Wineskin wrapper would alleviate the entirety of my first concern with the wrapper.

    Asus MG279Q. I'm not going to change my resolution and destroy any ability to do anything else just to play MapleLegends, like I said before I do other things also and having to mess around with resizing literally every single window after increasing the resolution when done is not a suggestion.

    Wine is not a virtual machine. It exposes the winapi to programs. It does not virtualise anything.
     
    Last edited: Jun 12, 2019
  5. Nise
    Offline

    Nise Supervisor Staff Member Supervisor Game Moderator

    2,059
    693
    500
    Jul 5, 2017
    Male
    Korea
    8:36 AM
    NoraONE
    Corsair
    189
    Sweetdreams
    I'm sorry to hear your Mac OS experience wasn't great. But before I go on, I'd just like to rehash some key points that not everyone might be aware of:
    - We have no Mac-specific dev on our team. All our compatibility efforts are undertaken by GMs, such as myself and Ry, who aren't necessarily from a computer science/tech-related background. (with that said, we highly encourage people to apply for this, as we are always looking for valuable additions to the staff team).
    - MapleStory was not meant to be played on a Mac. After many many years of bootcamping to play MapleStory, I can tell you that even with bootcamp, MapleStory just doesn't play that great on a out-of-the-box consumer level Mac.

    Can confirm that nothing has been changed LOL this is default behavior from the winehq provided version of wine.

    This is a Apple-caused issue I believe. While we do strongly urge people to install the ML provided xQuartz, a lot of players are able to (and should be able to) play from the Mac driver. I have been told of instances where players can't, but that seems to be an inconsistency caused by wineskin/mac OS innately. *shrug*

    Yea no doubt that wineskin is a resource hungry thing. I've seen people do just a wine installation and run its with slightly less resources being used, but when users have a hard time with wineskin wrappers already and we have to help troubleshoot with that... I'm not sure how easy it would be to make that transition to a full wine install opposed to a wineskin wrapper.
     
    • Like Like x 2

Share This Page