I do all of my Roblox game development on Linux and do not dual-boot, so I hope that the Wine and VM block can be lifted as soon as enough data is collected for the crash dumps.
This is not how anti-cheat works, as I attempted to explain. The issue is by far more complex.
I do know you’re probably just the messenger in this case, and I do appreciate the time you’re taking the time to respond to our concerns so quickly.
I do hope you and the staff team understand how difficult it is for us to understand how it wouldn’t be possible to simply ignore/leave Roblox on WINE out of initial analytics and logs from telemetry. If Roblox and/or Byfron is capable of detecting it is running under WINE, then it should be capable of determining whether the telemetry data is worthy of being sent.
I would imagine the process for determining if Roblox crashed is at minimal a entirely separate process within the Roblox application. Considering Roblox already has tools in place for determining if it is running under Wine, it should then be possible to perform a if not (isWine) then submitLogs() end
based on logs generated from the local application.
I entirely agree, rather than blocking Wine/Linux users from using Roblox, why not just disable telemetry or other features that Roblox doesn’t want on Linux for the time being, it makes not sense to block the entire user base.
Not a messenger but rather a developer who understands the passion of the community and attempts to give an explanation why it is not as simple as an if()
statement.
The Roblox client and Hyperion are decoupled. The crash uploader, which is part of the client, cannot determine why Hyperion caused the process to crash.
linux is such a small small minority
And as long as GNU/Linux based consoles such as Steam Deck, and more and more Windows users are getting annoyed and upset about Microsoft shoving their ads, telemetries, and sometimes removing useful toggles of features and customizations, Linux’s market share will keep going up, Few years ago it was only below 1%, after Valve released their Steam Deck with more influencers reviewing it, and Microsoft releasing Windows 11 with it’s own popups and requirements, it grew up closer, till nearly 2% as for today.
This seems to make sense considering Wine itself is simply an API implementation (and re-creation) rather than a full-fledged environment.
There are bound to be issues related to Wine (and in this case, in tandem with the Hyperion solution) because the client cannot run under Wine the same exact way it does under real Windows; all the implementation can do is attempt to provide the resources necessary for the program to run, let alone run well.
Wine also cannot replicate Windows 1-to-1, as some of the resources it uses are pulled from the UNIX system it runs on rather than its own collection thereof. One difference in the code implementation can make all the difference, particularly when something refuses to work properly. I would, however, still retain confidence in regard to the engineers behind the client. Acknowledging the functionality of Wine is enormous in comparison to ignoring it all together.
As for the telemetry? It doesn’t make sense to remove it since:
A) You’re not getting the information necessary, even if it would clog the feedback, and
B) information is key to solving issues regarding any program in general.
A program can’t be ghosted like this, otherwise it would be left out to dry. Feedback and/or telemetry are critical to getting a program to become stable. You’re basically requesting that it be left to the WineHQ team, which can be done but is by no means the most reliable option unless the maintainer doesn’t care.
This is exactly what seems to be the case here with the client, in my own eyes.
I do appreciate this explanation, as you are right in the fact we don’t know the whole process. I hope you didn’t take my previous thank you as sarcasm, I really did mean it considering a lot of these posts go unanswered for sometimes years due to the limited amount of resources Roblox possesses despite being such a massive community.
I do hope it is considered improving the logic of the crash uploader where it is capable of determining whether Wine is being ran or not. I don’t know exactly where the check is, but I do know the Roblox client as it stands does have the ability to determine if it is running under Wine or not.
Thank you, Blodau. You have identified the issue very well. As you suspected, one of the reasons Hyperion is not running on Wine is because we delve deeply into the internals of Windows.
There’s good telemetry solely for problem diagnosing, and there’s also bad telemetry that distributes any part of your personal data without any obvious consent, like crash dumps for example which can include personal data in it. Even if a program could automatically strip out certain regions of the dump with potentially personal data in it, Uploading crash memory dumps requires explicit consent from the user because it’s actually a violation of GDPR if a program decided to automatically upload crash memory dumps without any obvious user consent.
Of course. I would also like to see this as an option (or at least be transparent about the data sent). I personally don’t mind telemetry unless there’s nothing useful to the user that comes from it; this is the “bad” telemetry that you must be referring to. Not consenting the user or notifying them about the process is shady in of itself.
Under the GDPR, consent must be given if personal data is included in the crash dump. However, the client process dump does not contain any personal data.
Yes, this is actually a problem in the long time for ChromeOS and “WayDroid” that’s actually similar to the Apple Silicon + Rosetta thing. Power efficiency caused by CPU instructions translation.
Even then @FieryEvent you could install Houdini (for Intel CPUs) or libndk (for AMD CPUs) for running ARM binaries on Android natively, with the tradeoff as both of them are proprietary libraries if nothing else. (They are safe and contain no bad telemetries as I used them for years)
Is Hyperion a kernel-level anti cheat/tamper? If so, although I am not entirely sure, this could potentially further conflict with Wine support going forward.
Is there any potential conflict with Wine specifically? Will moderation action ever result if Wine is a cause of a detection in Hyperion?
I understand the above questions might not be answerable directly, but I do appreciate your transparency in this thread so far. This has been very enlightening for me personally.
Fortunately no. As far as I know, this is how Byfron itself has a toggle set in the compile time to enable WINE/Proton support. You still don’t have to use a Windows administrator account, while a kernel level anticheat requires it to launch.
The current version of Hyperion operates solely in user mode. This might change though.
That would be more correct to assume if Roblox was licensing it, but they own the company and the talent so the integration is completely vertical.
They could change the source code to remove these changes/optimizations or just simply not enable them, which is what I assume is happening right now (outside the “Wine is not supported” crash)
According to what the community knows, Hyperion also has various changes/optimizations with Wine in mind - will those continue to be supported as Wine support seems to be a goal (if I read the earlier replies correctly)?
Thank you for replying to my post. I appreciate the time you are putting in to answer our questions.
They bought the whole company… and to be honest they could even make the native Linux client with their resources and a bit of help from their Android team if they still deeply invested into the anti-cheat.
Don’t ever get misinformed, the marketshare for Desktop Linux will keep growing since the popularity of GNU/Linux-based consoles like Steam Deck and Microsoft still keep shoving their s*** in their OSes such as Windows 11 to keep forcing their users into their products.