• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Durante for PC Gamer: Why PC games should never become universal 'apps'

dr_rus

Member
These aren't calls for users to do anything. These are calls for developers to change their practices. These articles aren't really aimed at end users.

Best thing a user could do is complain loud and vocally that they don't want UWP support.

What practices? Most developers will do what their publisher will require of them. I highly doubt that any publisher but MS will ever require to use UWP exclusively as that makes no sense from any point of view for an independent 3rd party.

WinStore in its current form will fail, make no mistake about that. And UWP is the least of its problems really as it would've failed even without it most likely.
 

Krejlooc

Banned
I broadly agree with all of what you are saying, although Apple are also conspicuous by their absence. They're both members of the Khronos group, but seemingly not participating in Vulkan.

Suffice to say everything I say about Microsoft goes double for Apple. Apple should be extending Vulkan, you're absolutely right. And there is much criticism about them not.

My understanding that because Vulkan is implemented at a third party driver level, Microsoft are powerless to stop it being used on Windows computers without adding additional restrictions to how third party drivers function, whereas Apple are already operating a closed system, and as such they would need to actively support it for it to be implemented on OSX (and iOS is obviously locked down even further).

This is an interesting project, mind.

It's not just about supporting vulkan through driver support. Visual Studio is the defacto standard IDE for development these days. They offer excellent DirectX project templates straight out of the box in VS13, but nothing for Vulkan. There are many small things microsoft could do to make overtures towards Vulkan like they do DX, but they don't.
 

Krejlooc

Banned
What practices? Most developers will do what their publisher will require of them. I highly doubt that any publisher but MS will ever require to use UWP exclusively as that makes no sense from any point of view for an independent 3rd party.

WinStore in its current form will fail, make no mistake about that. And UWP is the least of its problems really as it would've failed even without it most likely.

That's the hope, at least. But there are very real reasons why, were the store to gain even the slightest traction, it'd make decisions hard on developers. For instance, in a fit of irony, were you to want to create a program for both the windows store and, say, Steam or GOG or whatever, you'd need to create two different builds - a UWP build and a Win32 build. Suppose that becomes prohibitive for whatever reason, perhaps because of disparaging feature sets. As a publisher you could find yourself in a situation where you are deciding which version to support - one that comes in the store bundled into every instance of the OS, or one that requires outside installation of a third party application in the first place.

These are scary propositions.
 

LewieP

Member
It's not just about supporting vulkan through driver support. Visual Studio is the defacto standard IDE for development these days. They offer excellent DirectX project templates straight out of the box in VS13, but nothing for Vulkan. There are many small things microsoft could do to make overtures towards Vulkan like they do DX, but they don't.

Right, I was mainly contrasting the different in significance with Microsoft's and Apple's non-participation. But you raise an excellent point in an area of support that is lacking from Microsoft.
 

Krejlooc

Banned
Right, I was mainly contrasting the different in significance with Microsoft's and Apple's non-participation. But you raise an excellent point in an area of support that is lacking from Microsoft.

Well there is a natural significance to Microsoft's inaction compared to apple - Microsoft owns the PC OS market, apple does not. Were the roles reversed, you bet people would be railing against apple (harder).
 

dr_rus

Member
this is totally the opposite for me because. PC gaming was always about user control, be it config.sys editing in the old days or game INis. Or great stuff like fixing physics in Bioshock 1 with a tool so they run with 60fps+.
We should never allow someone to take that away from us, thus not support it.
Well, PC gaming isn't going anywhere just yet. The choice you have now is between a usual PC gaming (Steam, Gog, mods, injectors, etc.) and the same PC gaming plus MS's UWP AAA games. As I've said I choose the second option as I think that it actually makes PC gaming better, not worse. Obviously if MS will want to enforce any kind of restriction on the usual Win32 PC gaming side this will be a big problem and this deserve to be discussed right now before it happened. But if we assume that the current situation with UWP won't go anywhere further then I'm kinda ok with it - I'll be able to play MS exclusive games and I'll still use Steam/Gog for anything else just as before. This adds value to the platform.

That's the hope, at least. But there are very real reasons why, were the store to gain even the slightest traction, it'd make decisions hard on developers. For instance, in a fit of irony, were you to want to create a program for both the windows store and, say, Steam or GOG or whatever, you'd need to create two different builds - a UWP build and a Win32 build. Suppose that becomes prohibitive for whatever reason, perhaps because of disparaging feature sets. As a publisher you could find yourself in a situation where you are deciding which version to support - one that comes in the store bundled into every instance of the OS, or one that requires outside installation of a third party application in the first place.

These are scary propositions.

I don't think that such issues will arise in case of WinStore getting the slightest traction. Steam is obviously a bigger gaming platform and EA/Ubi/Blizzard will obviously still want to use their own distribution. EA has abandoned Steam for its own Origin so where does that puts WinStore in the equation? The need to support two builds is why the WinStore won't really get much support as well.

MS is making the same mistake every time. Instead of providing something which will be able to use the already existing ecosystem and improve on it they build an incompatible platform thinking that it will succeed just because it was build by MS. This way of thinking is something which is a leftover from Win95/98 days and it won't ever work in the modern world. They will either have to change according to what market desire or abandon the platform again as they've done countless times already in the last several years. And with each such abandonment the chances of success for the next platform from them are getting smaller.
 

Krejlooc

Banned
I don't think that such issues will arise in case of WinStore getting the slightest traction. Steam is obviously a bigger gaming platform and EA/Ubi/Blizzard will obviously still want to use their own distribution. EA has abandoned Steam for its own Origin so where does that puts WinStore in the equation? The need to support two builds is why the WinStore won't really get much support as well.

Sure, if we're thinking solely about PC games, there are obvious and more attractive solutions out there that makes the thought of the Win Store ever being popular seem silly.

But what about applications besides gaming? What is the great central third party store out there for enterprise solutions? It's not hard to imagine a time when people go to the Windows Store to buy or install, say, video editing software, or office applications. Things of that sort. The Win Store can gain popularity without games being the first products to bring people in.
 

LewieP

Member
Well there is a natural significance to Microsoft's inaction compared to apple - Microsoft owns the PC OS market, apple does not. Were the roles reversed, you bet people would be railing against apple (harder).

True enough. I wonder if as a consequence we are going to see increasing numbers of Windows/Linux games on Steam rather than Windows/OSX/Linux, assuming there is no cheap/easy/practical way to ship games using Vulkan for OSX.

Even Blizzard are dropping OSX support for Overwatch, and presumably other future titles.

Clearly Apple are more interested in gaming on OSX going hand in hand with gaming on iOS (via Metal), which I can see making a degree of sense given their customer base: it's not like there are huge numbers of gaming enthusiasts using Apple computers for their primary gaming device.
 

Zaptruder

Banned
The fundamental problem for MS is that they want them Apple dollars. Plebian users that just want things to work and not think about technical stuff.

Problem is Apple is already making those apple dollars, sealed up those Apple customers.

They've got the Windows platform... and if they want windows customers, they'll need to build for them, not Apple customers.
 

Krejlooc

Banned
True enough. I wonder if as a consequence we are going to see increasing numbers of Windows/Linux games on Steam rather than Windows/OSX/Linux, assuming there is no cheap/easy/practical way to ship games using Vulkan for OSX.

Even Blizzard are dropping OSX support for Overwatch, and presumably other future titles.

Clearly Apple are more interested in gaming on OSX going hand in hand with gaming on iOS (via Metal), which I can see making a degree of sense given their customer base: it's not like there are huge numbers of gaming enthusiasts using Apple computers for their primary gaming device.

My personal belief is that Apple's eventual push into VR will force them to adopt Vulkan. At least that's my hope.
 

TBiddy

Member
For instance, in a fit of irony, were you to want to create a program for both the windows store and, say, Steam or GOG or whatever, you'd need to create two different builds - a UWP build and a Win32 build.

Has it been confirmed, that you can't release an UWA on both the Windows Store and Steam at the same time, or is this just speculation?
 
Great article Durante.
IMO, PC gaming's appeal is built on interoperability and freedom. Some people might only do it because they want console-beating graphics, but I suspect that's just a small part of the appeal for the majority.

Trying to sell PC gamers a "simpler" locked-down app-store system will be about as successful as selling self-driving electric cars to gearheads.
Simple, console-style locked-down systems are fine and have their advantages, but it's just not what PC gaming is about. And the complexity of PC setups means that a simplified one-size-fits-all approach just doesn't work.

I don't like wanting games to fail, but I hope Quantum Break gets hit by the sort of technical issues that are usually fixed (while waiting for a patch) by simple file hacks, forcing graphics card settings in the control panel and/or 3rd party tweaks. That probably won't happen since MS will be turning their QA dials up to 11 and making sure patch certification is instant for their in-house UWP tech demo.
 

Krejlooc

Banned
Has it been confirmed, that you can't release an UWA on both the Windows Store and Steam at the same time, or is this just speculation?

You can't put Win32 applications on The Windows Store. You can't install UWA applications through steam.
 

Krejlooc

Banned
If Steam wishes, though, they can support UWA.

This relies on the user enabling sideloading from within the WinStore, something a user cannot enable from within steam. This is a logistical nightmare where it's conceivable that users would buy UWA from steam and not know how to install them on the windows store.

And it's an inelegant work around at best. For being "universal applications" they sure have a lot of restrictions and don't work well with many things.
 

TBiddy

Member
This relies on the user enabling sideloading from within the WinStore, something a user cannot enable from within steam. This is a logistical nightmare where it's conceivable that users would buy UWA from steam and not know how to install them on the windows store.

And it's an inelegant work around at best. For being "universal applications" they sure have a lot of restrictions and don't work well with many things.

I'm just pointing out, that your statement wasn't entirely true. This discussion is already heated enough - there's no need to use arguments that aren't true.
 

Krejlooc

Banned
I'm just pointing out, that your statement wasn't entirely true. This discussion is already heated enough - there's no need to use arguments that aren't true.

My statement is entirely true. Steam cannot install UWA right now. You cannot put a UWA on steam, there is no way to currently do it.
 

Keasar

Member
UWA sounds like the biggest pile of crap since GFWL.

I wanted to really play games like Scalebound and Quantum Break, but I don't wanna deal with Windows 10 and Windows Store again, nor support this bullshit.
 

TBiddy

Member
My statement is entirely true. Steam cannot install UWA right now. You cannot put a UWA on steam, there is no way to currently do it.

If you remove all context from the discussion, then yes. But in the context of the discussion, with limitations from Microsoft etc., the argument didn't make sense, since "every store and every developer" (as MS put it) can support UWA if they wish. Since UWA isn't really a thing yet/hasn't taken off, it's not surprising that Steam doesn't support it yet.

Whether or not they ever will is a good question - I doubt it - but they have the oppurtunity, hence the reason the argument doesn't make sense on it's own, except when you start moving the goalposts. It's not a limitation in UWA.
 

Krejlooc

Banned
If you remove all context from the discussion, then yes

The context of the discussion is that if you want to support steam and the MS store, right now, you need two different builds. No amount of technicality makes this incorrect. This is what you responded to, this is the reality of the situation. And beyond the mere hypothetical "is it possible??" type situation you are proposing, there are more barriers in place then steam not supporting UWA. The nature of side loading UWA itself presents a barrier.

No, this is not untrue. You're being so disingenuous it's laughable.
 
UWA sounds like the biggest pile of crap since GFWL.

I wanted to really play games like Scalebound and Quantum Break, but I don't wanna deal with Windows 10 and Windows Store again, nor support this bullshit.

Really depends in what sector, gaming sure its too limited in other sectors
like phone / tablet it should make my life easier as a developer given the
code once run everywhere matra. Haven't worked with it long enough to be sure dabble in
some small personal projects.
 

riflen

Member
You're both right. Steam does not support UWA distribution at the moment.
Valve could do, but to get the games to install, the user will have to enable side loading in Win 10, a process during which they will be warned on how dangerous it is.

Then every time they buy a OWA game from the Steam store they will be shown a scary dialogue saying they're installing potentially dangerous software.

Microsoft could clear all this up and maybe they will lay out plans to do so at //build, but right now, it's shitty for developers and customers. Not to mention OWA does not even have feature parity with the API it's replacing.
 

Krejlooc

Banned
Really depends in what sector, gaming sure its too limited in other sectors
like phone / tablet it should make my life easier as a developer given the
code once run everywhere matra.

Yeah, that mantra isn't true. It's "code once, run on any windows platform."

You want "code once, run anywhere?" Go SDL 2.0 + Vulkan.

https://www.youtube.com/watch?v=MeMPCSqQ-34#t=21m09s

There you go. Coded once, ran on Windows, OSX, and iOS. Absolutely no changes to the code base.
 
You're both right. Steam does not support UWA distribution at the moment.
Valve could do, but to get the games to install, the user will have to enable side loading in Win 10, a process during which they will be warned on how dangerous it is.

Then every time they buy a OWA game from the Steam store they will be shown a scary dialogue saying they're installing potentially dangerous software.

Microsoft could clear all this up and maybe they will lay out plans to do so at //build, but right now, it's shitty for developers and customers. Not to mention OWA does not even have feature parity with the API it's replacing.

Maybe whitelist uwa installed via steam and other trusted storefronts.
But then you will have fear that maybe microsoft will revoke steam whitelist entry.
 

Krejlooc

Banned
Maybe whitelist uwa installed via steam and other trusted storefronts.
But then you will have fear that maybe microsoft will revoke steam whitelist entry.

well that sounds like a ton of fun for developers. Want to sell your UWA application on steam? Just petition microsoft to whitelist your product to be sideloaded! Totally empowering the dev here, right?
 

Caayn

Member
well that sounds like a ton of fun for developers. Want to sell your UWA application on steam? Just petition microsoft to whitelist your product to be sideloaded! Totally empowering the dev here, right?
No, have Steam whitelisted as a trusted source. So that devs won't have to approach Microsoft to have their UWA application whitelisted for Steam.

The idea isn't that crazy, in fact I find it quite good.
 
well that sounds like a ton of fun for developers. Want to sell your UWA application on steam? Just petition microsoft to whitelist your product to be sideloaded! Totally empowering the dev here, right?

Best scenario off course would be complete freedom to install on the users computer.
Like currently with win32. It was just a suggestion for UWA installation from other storefronts. To stop the it bad to sideload app message.

Maybe im also part of the problem given i won't buy pc games that are
not on steam. You could make the best game ever but if its not on steam i wont buy it.
 

Krejlooc

Banned
No, have Steam whitelisted as a trusted source. So that devs won't have to approach Microsoft to have their UWA application whitelisted for Steam.

The idea isn't that crazy, in fact I find it quite good.

And if I want to start a business selling PC games myself? Like GOG did? I'm at the mercy of Microsoft whitelisting me? You don't see how that's a problem? Where microsoft becomes a gatekeeper to easy installation of every UWA?

Why do we need that at all?
 

wazoo

Member
Maybe im also part of the problem given i won't buy pc games that are
not on steam. You could make the best game ever but if its not on steam i wont buy it.

you are not part of the problem, because this is only related to you. it will hurt if you made your steam preferences an obligation to others.
 

dr_rus

Member
Has it been confirmed, that you can't release an UWA on both the Windows Store and Steam at the same time, or is this just speculation?

You can't because Valve won't allow it. There is zero to gain for them from this.

Sure, if we're thinking solely about PC games, there are obvious and more attractive solutions out there that makes the thought of the Win Store ever being popular seem silly.

But what about applications besides gaming? What is the great central third party store out there for enterprise solutions? It's not hard to imagine a time when people go to the Windows Store to buy or install, say, video editing software, or office applications. Things of that sort. The Win Store can gain popularity without games being the first products to bring people in.

Eh, I think I would be ok with getting apps from WinStore. Most of UWP gaming limitations do not apply to regular programs. So this would be ok I think. Then again something like Adobe Cloud will still run outside of WinStore most likely as will a lot of system level applications which won't even be able to exist inside the UWP sandbox. So even this isn't something which will be able to fully capture the market for MS either.
 

TBiddy

Member
No, this is not untrue. You're being so disingenuous it's laughable.

What's up with the negativity? Your posts are laden with them, as soon as people disagree with you. I don't think your argument holds - there's no need to be condescending, because you think otherwise.

You're both right. Steam does not support UWA distribution at the moment.
Valve could do, but to get the games to install, the user will have to enable side loading in Win 10, a process during which they will be warned on how dangerous it is.

Microsoft could clear all this up and maybe they will lay out plans to do so at //build, but right now, it's shitty for developers and customers. Not to mention OWA does not even have feature parity with the API it's replacing.

I think the whole side-loading part will be changed (or at least made simpler). But we will see at //build, what happens next. MS has shown a lot of willingness to open up in the later years, which is also required in order for them to keep on top.

Unfortunately there aren't really any competition in neither the OS-market or the API-market right now.

You can't because Valve won't allow it. There is zero to gain for them from this.

That wasn't really the question, though. The question was whether or not is against the ToS to have your UWA on several stores at once.
 

Krejlooc

Banned
What's up with the negativity? Your posts are laden with them, as soon as people disagree with you. I don't think your argument holds - there's no need to be condescending, because you think otherwise.

Probably because people don't like being told they're lying or ignorant, especially when I've seen the style of your posts for 3 topics now on this subject.
 

blu

Wants the largest console games publisher to avoid Nintendo's platforms.
Great articles, as usual by Durante. People will call me extreme, but the only way for Microsoft to fix their Store and UWA is to simply not sell games here but elsewhere. Steam, Origin, Uplay, GOG. You have 4 places to sell your games.

Comply to standard or leave. That's simple as that. No more of your anti consumer bullshit and anti PC gaming practices.
In the context of ms, this sentence carries oh so much irony..
 

dr_rus

Member
That wasn't really the question, though. The question was whether or not is against the ToS to have your UWA on several stores at once.

Who cares about MS's ToS? They can allow or disallow it all they want. The real question here is why would anyone support a WinStore app format beside MS? I see zero reasons for anyone to do it at the moment.
 

TBiddy

Member
Probably because people don't like being told they're lying or ignorant, especially when I've seen the style of your posts for 3 topics now on this subject.

If you have anything to say, then say it, instead of trying to hide it like that.

Who cares about MS's ToS? They can allow or disallow it all they want. The real question here is why would anyone support a WinStore app format beside MS? I see zero reasons for anyone to do it at the moment.

Q1: Anyone who has intentions of using the UWP I'd say. The question was whether or not it was allowed to have your UWA on both Steam, GoG and Win10 Store at the same time.

Q2: I agree. There's no real reason to use it right now. It might change, or it might not, but I don't see it ever taking off.
 
great article by Durante, I gained a lot from reading it.

I figured that Microsoft was angling for something like this since the Windows 10 giveaway, but trying to implement their 3E strategy in a way that puts ALL their competitors at a disadvantage is just evil.

I mean, against Sony, sure, not that surprising a tactic (buy XB1 version, get PC version sounds like a good deal on paper - not too far removed from Cross Buy or Nintendo's heavily rumored NX plans), but if it damages other PC game storefronts' viability as well, AND the ability for end users to mod the product, then this is just them being pricks.
 

Costia

Member
Objective. Right....
UWAs cannot be distributed and installed easily without going through Microsoft as the gatekeeper.
Simply not true. Valve could install their certificate during steam's installation and distribute UWA's just like the windows store, without any MS gatekeeping. (My bet would be that valve wouldn't want to sign and take responsilbility for the games/software they sell on their store)
The unfair part is that the MS certificates and store come pre-installed with windows 10.
Lack of interoperability
From the tests i did, I didn't actually see any restrictions on interfering with the executable at runtime. Cheat engine works, WinDbg works, and as far as i can tell dll injection works as well.
A new API will require a new set of tools. Expecting the old set of tools to work, and when it fails claiming it's impossible seems like rushing to conclusions to me.
Another very common use of this type of interoperability: the overlays
Oh wait, he forgot to mention another very common use of this type of interoperability: malware and keyloggers. I would even argue that more people are negatively impacted by those than by the lack of an fps counter (assuming, for the sake of argument, those things are really impossible).

I see UWA as the xbox ecosystem on PC, in addition to the standard win32 API.
I can't imagine companies dumping 20 years worth of code to switch to a new, financialy unproven store/platform. And I can't see MS forcing devs to do that either, it's just not financially viable.
Maybe over a period of ~10 years, MS could decide to deprecate win32. But I expect that by then, either UWA will be changed to be more developer friendly, or it will be dumped in favor of another format (like linux's ELF, or something similar to android's VM).
I guess the biggest fear In this scenario would be that the vast majority of people wouldn't care about UWA's restrictions, and it will get adopted "as is" as standard. Personally, I don't see this happening.

Edit: UWA has it's negatives. But ithink that people are grossly over reacting.
 

TBiddy

Member
From the tests i did, I didn't actually see any restrictions on interfering with the executable at runtime. Cheat engine works, WinDbg works, and as far as i can tell dll injection works as well.
A new API will require a new set of tools. Expecting the old set of tools to work, and when it fails claiming it's impossible seems like rushing to conclusions to me.

For those of us with little to no experience with modding etc., does this mean that you can/should be able to mod the games, if you wish?
 

Krejlooc

Banned
and as far as i can tell dll injection works as well.

I'll give a specific example of a dll injection that does not work at the moment: VorpX. Which is a really, really funny example, because that means the Windows Store version of Minecraft cannot support one of the most popular VR mods around. Which is even funnier, because Microsoft is planning to create their own VR version of minecraft.

How curious.
 

Costia

Member
For those of us with little to no experience with modding etc., does this mean that you can/should be able to mod the games, if you wish?
Modding is a very broad term. This is specifically about changing things at run time.
For me it means that more digging is required.
The current ways of hooking don't work. It might be as easy as finding the new locations of the API calls, or it might be extremely hard if the VM is trying to obscure it.
I'll give a specific example of a dll injection that does not work at the moment: VorpX. Which is a really, really funny example, because that means the Windows Store version of Minecraft cannot support one of the most popular VR mods around. Which is even funnier, because Microsoft is planning to create their own VR version of minecraft.
How curious.
That's what i have tried:
http://www.neogaf.com/forum/showpost.php?p=195670118&postcount=2539

Edit: I am not a modder. Just an engineer.
 

TBiddy

Member
Modding is a very broad term. This is specifically about changing things at run time.
For me it means that more digging is required.
The current ways of hooking don't work. It might be as easy as finding the new locations of the API calls, or it might be extremely hard if the VM is trying to obscure it.

Thanks. This is interesting! Knowing Microsoft right, though, they aren't going to make it easy.
 

Krejlooc

Banned
That's what i have tried:
http://www.neogaf.com/forum/showpost.php?p=195670118&postcount=2539

Edit: I am not a modder. Just an engineer.

There is clearly more going on than being able to inject a DLL into address space. The limits of DLL injection in UWA aren't fully understood at the moment, but what's clear is that after getting your procs address, something is preventing specific function calls to pieces of hardware. These appear to be related to calls to the GPU in particular, and while it may not be a result of UWA singularly, other components of microsoft's development ecosystem might be at play.

This would be why, as an example, you couldn't generate the message box in minecraft, and why VorpX specifically doesn't work. Executing a breakpoint, yeah, that's something simple. But thus far the more interesting stuff can't be handled.
 

aeolist

Banned
steam selling UWAs is a red herring. you cannot use the steam overlay, steam streaming, steam controller, and probably a few other features i can't immediately remember with UWAs. there's no way they'd want to sell games like that, and microsoft promising UWA improvements will not include these things because it would break the sandbox that's part of UWP's fundamental design.

it's not happening.
 

Costia

Member
There is clearly more going on than being able to inject a DLL into address space. The limits of DLL injection in UWA aren't fully understood at the moment, but what's clear is that after getting your procs address, something is preventing specific function calls to pieces of hardware. These appear to be related to calls to the GPU in particular, and while it may not be a result of UWA singularly, other components of microsoft's development ecosystem might be at play.

This would be why, as an example, you couldn't generate the message box in minecraft, and why VorpX specifically doesn't work. Executing a breakpoint, yeah, that's something simple. But thus far the more interesting stuff can't be handled.
A messagebox call is a win32 API call..
 

Costia

Member
ok? You missed my point. You DEADBEEF'd, swell. Do something useful.
I didn't miss your point. There is more to it. I have said it myself as well, more digging is required.
Wha i meant by my reply is that the call to messagebox working/not working doesn't mean much.
My point was that saying it's outright impossible without any further testing is wrong.
 
Top Bottom