Both sides previous revisionPrevious revisionNext revision | Previous revision |
games:wine:guild_wars_2 [2022/10/01 08:44] – [Information] Sean Rhone | games:wine:guild_wars_2 [2024/08/13 16:14] (current) – removed Sean Rhone |
---|
====== Information ====== | |
| |
* [[https://www.guildwars2.com|Guild Wars 2]] | |
* Standalone | |
* 64-bit | |
* :!: 2022/10/01: This does not work as-is with Wine Staging as it needs a patch ((''fixme:vulkan:X11DRV_vkCreateWin32SurfaceKHR Application requires child window rendering, which is not implemented yet'')), therefore either a custom Wine package is needed, Lutris, or Steam/Proton (TODO: Get the actual issue report URL for it) | |
| |
===== Wine Resources ===== | |
| |
* [[https://appdb.winehq.org/objectManager.php?sClass=application&iId=14130|WineHQ AppDB]] | |
* [[https://lutris.net/games/guild-wars-2/|Lutris]] | |
| |
===== Prerequisites ===== | |
| |
* [[distros:fedora_workstation_gnome|Fedora Workstation]] | |
* :!: [[notes:wine|Wine]] ((GW2 benefits from Esync significantly)) | |
| |
===== Notes ===== | |
| |
* ''-dx9single'' reduces performance when Esync is enabled by at least 15 FPS | |
| |
====== Install ====== | |
| |
===== Guild Wars 2 ===== | |
| |
* Install to default directory when prompted ((''C:\Program Files\Guild Wars 2'')) | |
* Log-in when launcher progresses enough | |
* Ideally save the username and password, and enable Auto-play | |
* Close the launcher | |
| |
mkdir -p ~/'Wine Prefixes' ~/'Downloads/Guild Wars 2' && wget -O ~/'Downloads/Guild Wars 2/Gw2Setup.exe' 'https://account.arena.net/content/download/gw2/win/64' && WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' WINEARCH='win64' wine ~/'Downloads/Guild Wars 2/Gw2Setup.exe' | |
| |
===== Restore Gw2.dat ===== | |
| |
* This expects ''Gw2.dat'' in the ''~/Downloads/Guild Wars 2'' folder | |
| |
mv ~/'Downloads/Guild Wars 2/Gw2.dat' ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && sync | |
| |
===== Wine Configuration ===== | |
| |
* At 4K native resolution, use a virtual desktop of ''2560×1440'' and ''192'' dpi | |
* At 1080p native resolution, use a virtual desktop of ''1280x720'' and default ''96'' dpi | |
* [x] Automatically capture the mouse in full-screen windows | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winecfg | |
| |
===== Clean-up ===== | |
| |
**** | |
| |
rm -Rf ~/'Downloads/Guild Wars 2' ~/'Desktop/Guild Wars 2.desktop' && sync | |
| |
====== DXVK ====== | |
| |
===== Information ===== | |
| |
* https://github.com/doitsujin/dxvk | |
* https://github.com/Sporif/dxvk-async | |
| |
* D3D11 to Vulkan | |
* Async | |
| |
===== Download ===== | |
| |
* https://github.com/Sporif/dxvk-async/releases | |
| |
===== Install ===== | |
| |
**** | |
| |
rm -rf '/tmp/dxvk-'* && cd '/tmp' && tar -xvzf ~/'Downloads/dxvk-'*'.tar.gz' && chmod +x '/tmp/dxvk-'*'/setup_dxvk.sh' && cd ~ && WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' '/tmp/dxvk-'*'/setup_dxvk.sh' install && rm -rf '/tmp/dxvk-'* && cd ~ && mkdir -p ~/'Wine Prefixes/Guild Wars 2/dxvk_state_cache' && sync | |
| |
====== Desktop Launcher ====== | |
| |
===== Initial ===== | |
| |
**** | |
| |
rm -Rf ~/'.local/share/applications/wine/Programs/Guild Wars 2' && mkdir -p ~/'.local/share/applications/wine/Programs/Guild Wars 2' | |
| |
===== Guild Wars 2 ===== | |
| |
nano ~/'.local/share/applications/wine/Programs/Guild Wars 2/Guild Wars 2.desktop' | |
| |
<code> | |
[Desktop Entry] | |
Name=Guild Wars 2 | |
Comment=Guild Wars 2 is an online role-playing game with fast-paced action combat, a rich and detailed universe of stories, awe-inspiring landscapes to explore, two challenging player vs. player modes—and no subscription fees! | |
Categories=Game;AdventureGame;RolePlaying | |
Exec=env MESA_SHADER_CACHE_DIR='/home/CHANGEME/Wine Prefixes/Guild Wars 2' DXVK_STATE_CACHE_PATH='/home/CHANGEME/Wine Prefixes/Guild Wars 2/dxvk_state_cache' WINEPREFIX='/home/CHANGEME/Wine Prefixes/Guild Wars 2' wine '/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin | |
Type=Application | |
StartupNotify=true | |
Path=/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2 | |
Icon=1431_Gw2-64.0 | |
Actions=Kill;Update;Repair;Cache; | |
| |
[Desktop Action Kill] | |
Exec=env WINEPREFIX='/home/CHANGEME/Wine Prefixes/Guild Wars 2' wineserver -k | |
Name=Force-close | |
| |
[Desktop Action Update] | |
Exec=env MESA_SHADER_CACHE_DIR='/home/CHANGEME/Wine Prefixes/Guild Wars 2' DXVK_STATE_CACHE_PATH='/home/CHANGEME/Wine Prefixes/Guild Wars 2/dxvk_state_cache' WINEPREFIX='/home/CHANGEME/Wine Prefixes/Guild Wars 2' wine '/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -image | |
Name=Update Game Data | |
| |
[Desktop Action Repair] | |
Exec=env MESA_SHADER_CACHE_DIR='/home/CHANGEME/Wine Prefixes/Guild Wars 2' DXVK_STATE_CACHE_PATH='/home/CHANGEME/Wine Prefixes/Guild Wars 2/dxvk_state_cache' WINEPREFIX='/home/CHANGEME/Wine Prefixes/Guild Wars 2' wine '/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -repair | |
Name=Check and Repair Data | |
| |
[Desktop Action Cache] | |
Exec=bash -c "rm -Rf ~/'Wine Prefixes/Guild Wars 2/mesa_shader_cache/'* ~/'Wine Prefixes/Guild Wars 2/dxvk_state_cache/'* ~/'Wine Prefixes/Guild Wars 2/drive_c/users/'$USER'/Application Data/Guild Wars 2/Coherent Dumps/'* ~/'Wine Prefixes/Guild Wars 2/drive_c/windows/temp/'* ~/'Wine Prefixes/Guild Wars 2/drive_c/users/'$USER'/Temp/'* && sync" | |
Name=Cache Clean-up</code> | |
| |
sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/wine/Programs/Guild Wars 2/Guild Wars 2.desktop' | |
| |
===== Steam Launcher ===== | |
| |
* Guild Wars 2 | |
| |
Guild Wars 2 | |
| |
nano ~/'Wine Prefixes/Guild Wars 2/steam-launcher.sh' && chmod +x ~/'Wine Prefixes/Guild Wars 2/steam-launcher.sh' | |
| |
<code> | |
#!/bin/sh | |
| |
# Environment Variables | |
export MESA_SHADER_CACHE_DIR=~/'Wine Prefixes/Guild Wars 2' | |
export DXVK_STATE_CACHE_PATH=~/'Wine Prefixes/Guild Wars 2/dxvk_state_cache' | |
export WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' | |
| |
# Working Directory | |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' | |
| |
# Launch | |
wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin | |
| |
# End</code> | |
| |
====== Quick Commands ====== | |
| |
===== Winecfg ===== | |
| |
**** | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winecfg | |
| |
===== Winetricks ===== | |
| |
**** | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winetricks | |
| |
===== Registry Editor ===== | |
| |
**** | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' regedit | |
| |
===== Kill ===== | |
| |
**** | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wineserver -k | |
| |
===== Execute ===== | |
| |
==== Guild Wars 2 ==== | |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && | |
| |
GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3,cpu4+cpu5+cpu6+cpu7;cpu8+cpu9+cpu10+cpu11,cpu12+cpu13+cpu14+cpu15;GPU-load,requested-VRAM+VRAM-usage;fps,API-thread-offloaded-slots+API-thread-direct-slots+API-thread-num-syncs' | |
| |
DXVK_HUD=full | |
| |
MESA_SHADER_CACHE_DIR=~/'Wine Prefixes/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'Wine Prefixes/Guild Wars 2/dxvk_state_cache' WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin | |
| |
<code>-dx9single</code> | |
| |
<code>-forwardrenderer</code> | |
| |
<code>-maploadinfo</code> | |
| |
==== Updater ==== | |
| |
**** | |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && MESA_SHADER_CACHE_DIR=~/'Wine Prefixes/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'Wine Prefixes/Guild Wars 2/dxvk_state_cache' WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -image && sync | |
| |
==== Repair ==== | |
| |
**** | |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && MESA_SHADER_CACHE_DIR=~/'Wine Prefixes/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'Wine Prefixes/Guild Wars 2/dxvk_state_cache' WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -repair && sync | |
| |
===== File Manager ===== | |
| |
==== Root ==== | |
| |
**** | |
| |
gio open ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' | |
| |