Steam Deck and WoW

If this is true I look forward to playing WoW on my steam deck. I’m not sure exactly how much content I’d be willing to do while playing it like that… but I’d certainly use it.

It’s one of the few things that actually runs on Metal, Most companies don’t care about getting games to run on Mac and to this day most people still don’t know why blizzard even bothers but I digress (Keep in mind that some of blizzards newer titles just plain don’t run on Mac either)

It really isn’t, Linux is still so insignifigant market share wise for personal use that there is no point even trying to say that, I can count on one hand the amount of actual linux users I come across in a YEAR.

Quite frankly and quite plainly it just isn’t user friendly, While I have experience with it and use it in an enterprise format even I wont use it at home because at the end of the day End users want something simple, Plug it in, Turn it on and it just plain works and that is something that much to my dismay Apple does do well, But Microsoft also does really well and Linux does not.

It’s Lack of friendly ecosystems and lack of large scale deployment means your often having to deal with snaggling little problems and constantly finding alternatives that wont be anywhere near as polished or friendly as big name products that run on Windows or MacOS.

As for SteamOS and Proton? Valve has spend a VERY long time in Dev to get it working and running smoothly and even then, It’s not smooth a lot of the time and there are a not small amount of people that bought a steamdeck just to wack windows on it, Much Like I have.

I’m curious, what game/program made you install Windows? That was my original plan was to dual boot, but with how well every title I’ve tried works I just don’t see the need anymore personally.

Yes I have done that before. I might just do it again as I have more that one HD. Itll be a matter of how much time I spend setting it up as right now Im pretty deep into transmog farming at a more meticulous or…zealous level than I usually am for some reason.

I used Yumi for Mint and Ubuntu but I am now aware of Etcher. I guess its preferences but I saw someone mention ventoy or something over Etcher or anything else really where the article says to use Etcher.

Theres alot going on in the world of Linux so Ill just assume it was a debate that boiled down to preference mostly.

Either way thank you for that link. Ill end up dual booting sooner than later. Apparently from youtube videos my only real hardware snag might well be my Nvidia GPU. Ironic as I almost decided to go AMD at the time over Nvidia.

As far as games go for me its the flexibility to play what I want really. I understand though it isnt that simple.

I play a wide variety of games though my games are either very largely on Steam or Blizzard titles.

I think even Doom 2016 and Doom Eternal are through Steam though that might not matter.

If I dual boot though it wont matter either. If it doesnt work in Linux…Ill just switch. Linux is interesting to me and outside of the hassle of choosing my OS on boot up its fine.

Ive also seen mention of UEFI BIOS and I think I have that but not sure how much of an issue that really is.

1 Like

The lack of interest in Metal is unfortunate to me. It’s not all that different from Vulkan except that it’s slightly higher level, less verbose, and a bit easier to work with in most respects… I would understand more if Metal were Mac-exclusive but porting your game to it also gets you a massive install base of iPhone, iPad, and Apple TV users — even if you’re just looking at iPhones, 240 million were sold just last year alone vs. 107 million Nintendo Switches sold since 2017. While these devices don’t make sense for every AAA game to target, they’re all more capable than the Switch (which has the hardware of a midrange 2014 Android phone), so anything that’s gotten a Switch port could’ve also had a macOS/iOS/tvOS port.

And yeah you’re right, Linux isn’t going to see a rapid increase in usership any time soon but I’m cheering for every move that makes a rapid increase more likely. Valve has done some great work with the Deck, SteamOS, and Proton.

Linux support for Windows VR games is practically nonexistent. I’d happily run some flavor of Linux on my custom built gaming tower if I could, but I play modded PC Beat Saber almost daily so I’m stuck with Windows.

Yeah but I imagine most people didn’t buy the steam deck in order to run VR games lol. Why I was curious what game on the deck made them swap from SteamOS on the deck to Windows. The steamOS on the deck is incredibly granular and nice imo, on the fly frame limiter/refresh rate, the quick resume is years ahead of Windows’s standby. So I was just really curious what would make someone swap.

Oh yeah for sure, I was speaking more in the greater context of Linux gaming.

I get a lot more FPS on linux vs windows when playing WoW. My machine isnt a slouch either

Wonder how long it will be until we start seeing threads on here complaining about controller users bricking high keys and people asking Blizzard for something in the player tooltip about their chosen input method?

If only POSIX actually worked that way (FWIW Windows is technically POSIX compliant too, which tells you how bad POSIX can be).

What POSIX covers:

  • File IO
  • Sockets
  • Threading
  • Some Synchronization
  • C strings

What POSIX does not cover:

  • 3d acceleration (Vulkan, DX12, Metal)
  • OS specific optimizations (this is an extremely deep topic, to the point Linux implemented a changes to allow them to emulate WaitForMultipleObjectsEx.)
  • Window management (x11, Wayland, WDM, WindowServer)
  • ABI (Win32, GCC pick a version, Mac ABI, System V ABI)
  • Standard system libraries (e.g. DLL hell issues)

Windows and Mac have very strict ABI rules, Windows more than Mac. But Linux only has one stable ABI: The kernel userspace ABI. So… what that means is that the most portable way to target linux is to not, you just target WINE (e.g. the extremely stable Win32 ABI) and then not deal with the rest. Because trying to deal with all the crazy that is all the different distros isn’t worth it. It’s much easier to go “We support windows, and if it works on WINE then great!”. Because the amount and cost of Linux support tickets vastly dwarfs other platforms in terms of percent of users.

So yeah Proton and Lutris are great, they make Linux gaming more approachable. They also most critically don’t cost blizz a dime. Whereas Native support would cost quite a lot. Particularly when they don’t support the Distro that some random user uses because they are on something like Debian Ancient that is somehow still in support.

PS: It’s worth noting that Linux is actually deliberately not POSIX compliant. This is due to a controversy around some silliness in the standard (I support Linux’s stance on this).

2 Likes

Look up Lutris and it has a list of games that they support. Theres a bunch on there. And each one tell you which dependencies etc that you will need.

Etcher is all I have ever used. Most of the others do write the image in dd format. If you ever need some help on any of this just reach out and I’ll help you.

I’m playing almost exclusively on steam deck since coming back last weekish.

There’s players who clear 15s and up using console port, and for mid level pvp I’m doing fine with it.

Yeah I’ve done a couple M+ on deck, it’s playable just fine imo. I wouldn’t be doing anything higher than a 15 personally on it, and only then with a group that I can talk to since typing takes so long.

Sorry it took a while to get back.

Is this because Linux is open sourced and different distributions change their system API subroutine headers?

So how do Proton and Lutris handle the differences from Linux distribution to Linux distribution?

API and ABI are different. API is the methods available for a developer to call. ABI is how they are called and that can be significantly different even if the method looks the same. In the unix world the only guarantee in many cases is that the API is stable. But the ABI is not. So if I have a binary compiled for say Ubuntu 22.04, there is no guarantee it will run on Alpine (definitely won’t) or Arch (probably won’t). Even within the same distro software compiled for 20.04 Ubuntu may have issues on 22.04 because of different package versions. If the package is managed by Canonical or packaged in a Snap it might work (good chance actually). But long story short it’s because Unix and Unix likes such as linux don’t value binary compatibility because traditionally it was a bad thing for them.

Because they are compiled from source for each by the distribution manager or via the install scripts. Just like WINE. WINE is aware of how to handle the windows binary format (PE)1 and load it so that Linux can run it (it is still x86 code after all, just the ABI it requires is different).

1Fun fact: PE and ELF (the current Linux/Unix binary format) share common ancestors and the kernels of both Windows and Linux support both formats. But deliberately won’t load them because they know they can’t run the other’s binary. Oh… and MacOS does its own thing… because of course it does.

Is the API suppose to be the way you normally access the ABI or are they different things entirely?

Say you have a Ubuntu 22.04 system and the compiler and run time libraries that go with it. If you write calls to the API in your program, compile it and link it to that run time library then would that match the Ubuntu 22.04 ABI? Or are the API and ABI unrelated?

Honestly Blizzard would be doing themselves a big favor and drop battle.net in favor of steam client.

API is the what you can call. ABI is the how you call it plus the API. So ABI is more expansive.

Correct

Ok now I think I understand. I worked for a computer manufacturer mostly on programs between the applications and OS like Compilers, Database systems and Transaction Processing systems.

At one point they were porting the OS from a company 64 bit processor to the 64 bit Itanium and there was an “All hands on deck” type of thing where we all went and worked on the OS.

Part of that involved working on system service routines which were mostly written in a home made C like system programming language or they were written in Assembler.

My guess is that when we compiled or assembled those system server routines we generated an ABI but we never called it an ABI. We just called it the object code generated when we compiled the system service routines.

Does that sound like what an ABI really is?

I miss when the WoW client was still capable of updating itself. I never used the launcher and just launched WoW directly until Blizz ripped that functionality out and required the bnet app to update the game.