ZeroK-RTS / Zero-K-Infrastructure

Website, lobby launcher and server, steam deployment, .NET based tools and other vital parts of Zero-K infrastructure
GNU General Public License v3.0
53 stars 52 forks source link

Mono users cannot download from rapid #2856

Closed GoogleFrog closed 2 years ago

GoogleFrog commented 2 years ago

wrapper_error.txt

The solution so far is to have them use proton.

Zero-K.exe Error: 0 : Error reading version list from https://repos.springrts.com/zk: System.Net.WebException: Error: SecureChannelFailure (The authentication or decryption has failed.) ---> System.IO.IOException: The authentication or decryption has failed. ---> System.IO.IOException: The authentication or decryption has failed. ---> Mono.Security.Protocol.Tls.TlsException: The authentication or decryption has failed.

Porkch0p commented 2 years ago

After a quick packet capture it appears to be an extension of the #2852 TLS issues. At least one method for making TLS requests to rapid appears to not be using TLSv1.2 yet. One of (maybe all if no side effects are expected) the remaining connection methods for PlasmaDownloader may still need to explicitly request the higher version for compatibility.

78.46.21.29 TLSv1   Alert (Level: Fatal, Description: Protocol Version)
Licho1 commented 2 years ago

this is fixed in master?

Licho1 commented 2 years ago

or maybe even in deployed version just not updated for them?

Porkch0p commented 2 years ago

I figured this might be needing DownloadFileASync to be given the same patch that DownloadFile was given, but infolog appears to be showing issues with DownloadFile again, which was already patched and deployed afaik.

Interestingly I've tested a bit with @Anarchid's experimental mono kickstart package on Linux and the infolog doesn't appear to show the same issue.

Anarchid commented 2 years ago

Interestingly I've tested a bit with @Anarchid's experimental mono kickstart package on Linux and the infolog doesn't appear to show the same issue.

Noone told me about that! Did it work!?

The monokickstart build should be packaging some fresher version of mono present on my machine, which seems to work with normal Chobby.exe without any issues.

Porkch0p commented 2 years ago

Seems promising. I dropped the contents of it over a Zero-K Portable zip from itch, and using Manjaro I'm able to run the game using Zero-K.bin.x86_64. I've really only tested getting into skirmishes on downloaded maps, but that much seems stable and without infolog spam.

Anarchid commented 2 years ago

Seems promising. I dropped the contents of it over a Zero-K Portable zip from itch, and using Manjaro I'm able to run the game using Zero-K.bin.x86_64. I've really only tested getting into skirmishes on downloaded maps, but that much seems stable and without infolog spam.

Sounds good. Perhaps it can be done on an industrial scale, then, that is, packaged into the itch.

Porkch0p commented 2 years ago

The client also auto-updated itself to 1.10.1.1 for zk:stable and zk-menu:stable, so that functionality seems to be working too.

Porkch0p commented 2 years ago

Managed to trim the list of included dll files to about a third of the original, and still launch the game. Will send the list to @Anarchid on Discord.

Successfully created a new user account, and spectated an online game with the shortened list of files.

The original pack does seem to be missing one .dll to allow opening links in the browser, which should also be added before being used in an itch build.

Error opening URL http://zero-k.info/mediawiki/index.php?title=Manual : Cannot find the specified file
  at System.Diagnostics.Process.StartWithShellExecuteEx (System.Diagnostics.ProcessStartInfo startInfo)
  at System.Diagnostics.Process.Start () 
  at (wrapper remoting-invoke-with-check) System.Diagnostics.Process.Start()
  at System.Diagnostics.Process.Start (System.Diagnostics.ProcessStartInfo startInfo)
  at System.Diagnostics.Process.Start (System.String fileName) 
  at ChobbyLauncher.ChobbylaLocalListener.Process (ChobbyLauncher.OpenUrl args) 
Anarchid commented 2 years ago

The original pack does seem to be missing one .dll to allow opening links in the browser, which should also be added before being used in an itch build.

Non-opening links has been an issue for me on full scale mono for a while; likely it fails to find xdg-open or some such - i think this will need a code fix

Anarchid commented 2 years ago

Made a ticket for the url issue: https://github.com/ZeroK-RTS/Zero-K-Infrastructure/issues/2857

Porkch0p commented 2 years ago

This problem (or one like it, no infologs as of yet) seems to be surfacing for players running Ubuntu+Steam. https://zero-k.info/Forum/Thread/35042 The kickstart loader hasn't caused reports from itch users afaik, may be safe to deploy to steam.

Licho1 commented 2 years ago

fixed in current version