Closed ApeironTsuka closed 2 years ago
Was fine when I first installed things through Lutris a couple weeks ago but now experiencing this after updates around 6.1.
OS: Arch Linux Wine: lutris-GE-Proton7-7-X86-64
You cannot change the wine runner in Lutris without it breaking SSL/TLS support, unfortunately.
If you did that, you'll need to make a new prefix and migrate your FFXIV install and plugin settings.
If you'd like to install XIVLauncher using a different version of wine, please save and adjust the script below. (It should be saved as a .yml file, but github doesn't allow uploading those as attachments). You can then use Lutris from your terminal of choice like lutris -i script.yml
to run the installer. (swap esync for fsync if you have a supported kernel too)
game_slug: final-fantasy-xiv-online
name: FINAL FANTASY XIV Online
year: 2014
runner: wine
slug: final-fantasy-xiv-online-xivlauncher
version: XIVLauncher
description: >-
The script automates installing Final Fantasy XIV by Square Enix using XIVLauncher, a community-created third party launcher with additional features and addons.
The source code can be found on GitHub at: https://github.com/goatcorp/FFXIVQuickLauncher
The default installation settings should work for most Linux users without modification, but additional support can be found in the XIVLauncher Discord.
Big thanks to the people who've helped us play this game in the best conditions on Linux.
This install script is maintained by the XIVLauncher dev team. Please contact us in our discord server if you'd like an edit. https://discord.gg/3NMcUV5
notes: >-
Open a free Final Fantasy XIV Online account here: https://freetrial.finalfantasyxiv.com
This install script is maintained by the XIVLauncher dev team. Please contact us in our discord server if you'd like an edit. https://discord.gg/3NMcUV5
This release uses Wine 7.1 and will install the current release of XIVLauncher, which may auto-update to a later release. Dalamud will be downloaded, installed, and updated via XIVLauncher if enabled.
Please note that changing the version of Wine after installing with this script may break your wine prefix. If you're looking to update your current prefix with a newer version of wine, please backup your game install and config and make a new prefix instead. See our migration guide on https://goatcorp.github.io/faq/xl_troubleshooting for steps on how to move/copy FFXIV, character config, and your plugins/settings.
If you have a Steam Service Account, you'll need to install Windows Steam into your prefix and ensure that it's started in order to login. You will need to have already linked your Steam Account to your Square Enix ID on a Windows machine prior. There is no workaround for Wine users at this time.
We do not directly support ACT or other addon applications in this prefix and you are best off asking their support channels for assistance if you want to use both together.
If you have a fsync-capable kernel, it's highly recommended to go into your Lutris settings for FFXIV and turn on fsync support. We've opted to keep this off by default as it's not included in older kernels and some popular distributions don't include the patches in their kernels. It is highly recommended to keep esync on at a minimum, as long as your kernel supports it.
If you want to limit your FPS, please adjust the DXVK_FRAME_RATE environment variable instead of using FFXIV's built-in frame limiter. It will cause stuttering in game on Linux.
script:
custom-name: Final Fantasy XIV Online - XIVLauncher
files:
- launchersetup: >-
https://kamori.goats.dev/Proxy/Update/Release/Setup.exe
game:
arch: win64
exe: >-
drive_c/users/$USER/AppData/Local/XIVLauncher/XIVLauncher.exe
prefix: $GAMEDIR
installer:
- task:
arch: win64
description: Creating Wine prefix
install_gecko: false
install_mono: false
name: create_prefix
prefix: $GAMEDIR
- task:
arch: win64
key: background
name: set_regedit
path: HKEY_CURRENT_USER\Control Panel\Colors\
prefix: $GAMEDIR
type: REG_SZ
value: 0 0 0
- task:
app: dotnet48 vcrun2019 win10
description: Installing .NET 4.8, could take time 10-20 mn, please wait...
name: winetricks
prefix: $GAMEDIR
- task:
args: /s
executable: launchersetup
name: wineexec
- task:
arch: win64
key: HideWineExports
name: set_regedit
path: HKEY_CURRENT_USER\Software\Wine
prefix: $GAMEDIR
type: REG_SZ
value: "Y"
- execute:
command >-
mkdir -p "$GAMEDIR"/drive_c/users/$USER/AppData/Roaming/XIVLauncher
- execute:
command: >-
mkdir -p "$GAMEDIR"/drive_c/users/$USER/Documents/My\ Games/FINAL\ FANTASY\ XIV\ -\ A\ Realm\ Reborn
- execute:
command: >-
echo -e "<FINAL FANTASY XIV Config File>\n\n<Cutscene Settings>\nCutsceneMovieOpening 1" > $GAMEDIR/drive_c/users/$USER/Documents/My\ Games/FINAL\ FANTASY\ XIV\ -\ A\ Realm\ Reborn/FFXIV.cfg
- execute:
command: >-
echo -e "<FINAL FANTASY XIV Boot Config File>\n\n<Version>\nBrowser 1\nStartupCompleted 1" > $GAMEDIR/drive_c/users/$USER/Documents/My\ Games/FINAL\ FANTASY\ XIV\ -\ A\ Realm\ Reborn/FFXIV_BOOT.cfg
system:
env:
DXVK_FRAME_RATE: 0
XL_WINEONLINUX: true
__GL_SHADER_DISK_CACHE: 1
__GL_SHADER_DISK_CACHE_PATH: $GAMEDIR
pulse_latency: true
wine:
esync: true
version: lutris-7.1-x86_64
Reinstalled and updated gshade and I've got everything working again, so thanks! When I did this initially the default wine version lutris gives you didn't seem to be working so I landed on the GE version, but everything seems to be fine now.
When I did this initially the default wine version lutris gives you
Someone had broken the script we have Lutris publish and it was set to use lutris-wine-7.2-fshack despite the number of lines I had in the description and technical notes begging other users not to touch it without checking with us first on discord.
~10 hours ago, my request for a rollback was approved and published.
It's now locked to the last edit I made because lowering the bar was the only way to stop other users from breaking it.
12:42:34.527 | INF [PLUGINR] Fetching repo: https://kamori.goats.dev/Plugin/PluginMaster
--------------------------------
12:42:34.528 | ERR [PLUGINR] PluginMaster failed: https://kamori.goats.dev/Plugin/PluginMaster
System.Net.Http.HttpRequestException: An attempt was made to access a socket in a way forbidden by its access permissions. (kamori.goats.dev:443)
--------------------------------
12:42:34.528 | ERR [PLUGINR] PluginMaster failed: https://kamori.goats.dev/Plugin/PluginMaster
---> System.Net.Sockets.SocketException (10013): An attempt was made to access a socket in a way forbidden by its access permissions.
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
System.Net.Http.HttpRequestException: An attempt was made to access a socket in a way forbidden by its access permissions. (kamori.goats.dev:443)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
---> System.Net.Sockets.SocketException (10013): An attempt was made to access a socket in a way forbidden by its access permissions.
at System.Net.Sockets.Socket.<ConnectAsync>g__WaitForConnectWithCancellation|283_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.DefaultConnectAsync(SocketsHttpConnectionContext context, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
at System.Net.Http.ConnectHelper.ConnectAsync(Func`3 callback, DnsEndPoint endPoint, HttpRequestMessage requestMessage, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.<ConnectAsync>g__WaitForConnectWithCancellation|283_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.<ConnectAsync>g__WaitForConnectWithCancellation|283_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnectionPool.DefaultConnectAsync(SocketsHttpConnectionContext context, CancellationToken cancellationToken)
at System.Net.Http.ConnectHelper.ConnectAsync(Func`3 callback, DnsEndPoint endPoint, HttpRequestMessage requestMessage, CancellationToken cancellationToken)
at System.Net.Http.ConnectHelper.ConnectAsync(Func`3 callback, DnsEndPoint endPoint, HttpRequestMessage requestMessage, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
at Dalamud.Plugin.Internal.Types.PluginRepository.ReloadPluginMasterAsync() in C:\goatsoft\companysecrets\dalamud\Plugin\Internal\Types\PluginRepository.cs:line 88
at Dalamud.Plugin.Internal.Types.PluginRepository.ReloadPluginMasterAsync() in C:\goatsoft\companysecrets\dalamud\Plugin\Internal\Types\PluginRepository.cs:line 88
OS: Windows 10
I'm able to access the specified address in Firefox (lists all available plugins), however, in-game it gives me this error. XIV Launcher is allowed through the firewall, and it's excluded from my VPN tunnel, so I'm unsure what may be causing this problem. (I'm unsure if I should've opened a new issue for this, since it's not the exact same error.)
This is a problem with your antivirus. Please check the faq.
It's not a problem with my antivirus. Nothing related to XIV Launcher is flagged as a virus, and excluding relevant folders from said antivirus also didn't change anything.
We see this message multiple times a week in our Discord, and it's always the antivirus. They don't flag it visibly all the time and they lie to you.
If it's BitDefender, you have to manually exclude it from the "firewall" portion of the program. It will not tell you about it.
Edit: Nevermind.
Depending on the antivirus software, it can include its own firewall (bitdefender is a common offender, which is why it was mentioned).
If your AV doesn't roll its own, then it likely uses Windows Firewall, which can sometimes block XIVLauncher, but this is rare. Usually a reboot fixes things, in that case. Otherwise, you'd want to open your Windows Firewall settings and either remove old XIVLauncher entries and relaunch, or adjust existing entries as needed and then relaunch.
Turning off my VPN fixed the issue, though, I'd rather not have to turn off my VPN just for Dalamud to fetch plugins. I thought excluding XIV Launcher's exe would be enough, but it apparently isn't.
Try excluding ffxiv_dx11.exe.
That didn't seem to work, unfortunately. I've excluded everything that I'm aware of from my VPN tunnel and for some reason it still won't fetch plugins. Thank you for the suggestion, though.
The plugin list is through Dalamud.Injector.exe
Excluding both Dalamud injectors also didn't do much. I've excluded those as well as every .exe involved with XIV Launcher & Dalamud, as well as the game's .exe's. Ultimately this may be an issue with my VPN, and not Dalamud. Thank you for taking the time to help me anyhow.
Closing due to inactivity. If you're still having issues, please reopen this issue.
OS: Debian Linux Wine: lutris-GE-Proton7-6 (also tested lutris-7.1 and a wine-staging 6.23 I had laying around).
Google isn't super helpful here. Closest I could find was something not working with TLS 1.3 but I can't find anything specific to Wine/Proton about TLS issues. Repo works via Chrome (says via QUIC), wget, and Firefox (says via TLS 1.3), so it shouldn't be an issue with native libraries.