goatcorp / FFXIVQuickLauncher

Custom launcher for FFXIV
https://goatcorp.github.io/
GNU General Public License v3.0
2.79k stars 326 forks source link

Can XIVLauncher support local proxy? #1609

Open huaxianyan opened 1 month ago

huaxianyan commented 1 month ago

Update disclaimer

What happened, what did not, what did you want to happen?

For some reasons, it is difficult to access GitHub directly in certain regions. XIVLauncher requests GitHub to check for updates every time it starts before entering the main page, so I often encounter timeouts when checking for updates, which prevents me from using XIVLauncher.

Could you please add a feature to XIVLauncher that allows it to use a local proxy, so that it can use the local proxy specifically when checking for updates to help complete the network request?

If possible, it would be even better if XIVLauncher could also use the local proxy when updating game patches!

Version

Standard version (Windows, Lutris)

Platform

Windows

reiichi001 commented 1 month ago

XIVLauncher goes to our private VPS proxy first, which is backed by CloudFlare. (More specific here). This is what the launcher will use to check for program updates.

Some assets will be proxied and cached where possible, with github as a fallback. Typically though, Dalamud will be cached so that users don't go to GitHub for them. Assets like the .NET 8 runtime will go to Microsoft directly. DalamudAssets will usually go to GitHub, but this is not updated as often. For general use, the only asset that I know will hit GitHub directly is wine-xiv, which is only used by XIVLauncher.Core for Linux users.

As XIVLauncher and related projects are .NET applications, they should inherit the Windows proxy settings already. Otherwise, you probably will want to use a VPN instead of a proxy.

Patch files come from Square Enix and we do not have control over their servers or locations. If you're trying to obtain patches for client that uses a regional variant (Global, China, Korea) that does not match your own, they may be blocked by your ISP on purpose. A VPN will get around this.

huaxianyan commented 1 month ago

My current solution to this problem is to enable the system proxy while using XIVLauncher and then disable it after successfully entering the main interface. Due to my personal usage habits, I prefer not to keep the system proxy enabled all the time, as it might cause unnecessary programs to use the proxy. That's why I raised this issue, hoping that XIVLauncher could use a proxy independently, allowing for a one-time setup that would work permanently.

Thank you for clarifying now I have a better understanding of how it works. I apologize for raising this issue out of selfishness and personal laziness.

However, if possible, I still hope the development team can consider it.