Hacker News new | ask | show | jobs
by sylware 924 days ago
And it seems proton is not open source and does contain copies of windows DLLs.

Shabby and extremely expensive mitigation to compensate for many, not all, game devs.

2 comments

What DLLs? Wine has DLLs but they're compiled from open source, unless you are downloading some installer with winetricks. What did Proton do?
If proton is open source, you would not need it, wine/vkd3d would be enough. I have a build of git wine/vkd3d, hardly anything works.

If wrong, why valve is not using directly wine/vkd3d and/or not backporting anything?

The SteamWorks SDK, an optional component if you want to use steam features like achievements, Steam friends in multiplayer, or DRM, is proprietary. But you can use Steamworks without Proton or Proton without Steamworks.

The rest of Proton is open source and is at its core a distribution of wine + dxvk.

You'll see DLLs with names like Windows DLLs, but they come from Wine, not Windows, and are reimplementations.

Probably not.

As you would not need proton but only wine/vkd3d. And I have a recent build of wine/vkd3d, hardly anything works.

Does it mean valve is not backporting in wine/vkd3d?

A lot of "works in proton but not wine" is to do with specific configuration of runtime dependencies or wine options. You can probably make all these things run in vanilla wine if you mess around with CLI opts and config files, but if you want the steam like "just works" experience you probably want a layer on top of wine. Lutris is a popular fully open tool for games that does this without needing Steam specifically.
So you mean that if I can extract the required fine tuning of wine/vkd3d from lutris I could run some games which would not run on a vanilla configured wine/vkd3k, just by the flick of some configuration I could run, cyberpunk 2077? apex legend? big games like that?
Yes.

Here's what Lutris does for cyberpunk for example: https://lutris.net/games/install/30805/view

Creating a few directories, installing a specific version of MFC and running galaxy with some flags to skip incompatable launcher updates.

This is this not using the plain and simple C vkd3d (dx12) from wine but valve c++ dxvk. I still dunno why valve has not the decency to backport that into vkd3d, at least we would not need an absurdely and grotestely massive and complex c++ compiler, but the worst: it is using a ton of copies of windows DLLs from winetricks (I am better off installing windows).

I guess the win64 gog galaxy client does update the game to its latest patch.

Come on, nobody has to be proud of that.