LavaGang / MelonLoader

The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono
https://discord.gg/2Wn3N2P
Apache License 2.0
2.24k stars 460 forks source link

[Bug]: tried to use melonloader 0.6.0, it says "failed to download Cpp2IL" #428

Open Xeov opened 1 year ago

Xeov commented 1 year ago

All of the following criteria must be met

All of the following are optional to answer

Describe the issue.

i tried to use melonloader 0.6.0 and it said "failed to download cpp2il". i download the cpp2il netframework zip thing and put it in C:\Program Files (x86)\Steam\steamapps\common\BloonsTD6\MelonLoader\Dependencies\Il2CppAssemblyGenerator opened btd6 and got same error

log file

Did you attach your log file?

sunyudai commented 1 year ago

I am facing the same issue right now.

This also appears to be a duplicate of issue 401: https://github.com/LavaGang/MelonLoader/issues/401 - however on 401 a log file was not provided, and the stated fix in that thread - downgrading to 0.6.0 - does not resolve this for me.

I was also able to get a log, see attached.

Notable bits of the stack trace:

System.AggregateException: One or more errors occurred. (The SSL connection could not be established, see inner exception.) ---> System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception. ---> System.Security.Authentication.AuthenticationException: Authentication failed because the remote party sent a TLS alert: 'ProtocolVersion'. ---> System.ComponentModel.Win32Exception (0x80090326): The message received was unexpected or badly formatted.

[...]

at MelonLoader.Il2CppAssemblyGenerator.Extensions.DownloadFile(HttpClient client, String url, String dest) in D:\a\MelonLoader\MelonLoader\Dependencies\Il2CppAssemblyGenerator\Extensions.cs:line 10 at MelonLoader.Il2CppAssemblyGenerator.FileHandler.Download(String url, String destination) in D:\a\MelonLoader\MelonLoader\Dependencies\Il2CppAssemblyGenerator\FileHandler.cs:line 34

sunyudai commented 1 year ago

Latest.log Now with 100% more attached logfiles!

sunyudai commented 1 year ago

Additional things tried: Enabling TLS 1.3 and SSL 3.0. Same result, no notable changes in log file.

sunyudai commented 1 year ago

O.6.0 and 0.6.1 show same behavior.

Downgrading to 0.5.7 appears to successfully download, but fails on the step "[Info] [Program] Outputting as Stub ("Dummy") DLL Files to C:\Program Files[...]"

Further down, it also throws an exception "[ERROR] System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies."

Log here: Latest.log

sunyudai commented 1 year ago

Got it! This was a proxy configuration issue. Solved by running via CMD (as Administrator) the following two commands (separately):

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f

Source for those commands was https://learn.microsoft.com/en-US/troubleshoot/developer/browsers/connectivity-navigation/how-to-reset-proxy-settings

H8DCarnifeX commented 3 months ago

Got it! This was a proxy configuration issue. Solved by running via CMD (as Administrator) the following two commands (separately):

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f

Source for those commands was https://learn.microsoft.com/en-US/troubleshoot/developer/browsers/connectivity-navigation/how-to-reset-proxy-settings

still doesnt work for me the last command doesnt go through and shows a error tried to circumvent it by downloading and installing the cpp2il manually, but melonloader still wants to connect via socket and shows the same error.. yay

why is there no full offline installer, because its using some sort of third party stuff?

EDIT: ok didnt gave up, so i added the start parameters(don't use this on first launch): --melonloader.disablestartscreen --melonloader.agfoffline --quitfix

now melonloaders says: [12:27:56.152] [Il2CppAssemblyGenerator] [ERROR] F:\FOLDER\GAME\MelonLoader\Dependencies\Il2CppAssemblyGenerator\Cpp2IL_2022.1.0-pre-release.8.zip does not Exist! [12:27:56.153] [INTERNAL FAILURE] Failed to Process Cpp2IL!

(*redacted)

the zip it tried to download is called: Cpp2IL-2022.1.0-pre-release.8-Windows-Netframework472.zip the zip it wants to load is called: Cpp2IL_2022.1.0-pre-release.8.zip (https://github.com/SamboyCoding/Cpp2IL/releases/download/2022.1.0-pre-release.8/Cpp2IL-2022.1.0-pre-release.8-Windows-Netframework472.zip) So i changed the zip-filename.

Now its stating "Il2CppAssemblyUnhollower0.4.18.0.zip" doesnt exist.. So i had to search for it on google, found it, had to rename it again, because of a single "" underline mismatch. (https://github.com/knah/Il2CppAssemblyUnhollower/releases/tag/v0.4.18.0)

ML failed to find: UnityDependencies_2019.4.40.zip

Yea, guess it will go the same route.. k, lets go - way harder to find, even when its from the same author (https://github.com/LavaGang/Unity-Runtime-Libraries/blob/master/2019.4.40.zip) had to rename again as usual..

Seems its now running properly. Maybe thats helpful for anyone else, not being able to fix it with the cmd-line fix above.

samlinehan0 commented 2 weeks ago

Anyone finding this later on, try running as administrator.