Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
games:wine:guild_wars_2 [2019/05/15 21:38] – Sean Rhone | games:wine:guild_wars_2 [2023/09/27 04:42] – Sean Rhone |
---|
====== Information ====== | ====== Information ====== |
| |
* Guild Wars 2 ((https://www.guildwars2.com)) | * [[https://www.guildwars2.com|Guild Wars 2]] |
| * Standalone |
* 64-bit | * 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://appdb.winehq.org/objectManager.php?sClass=application&iId=14130|WineHQ AppDB]] |
| * [[https://lutris.net/games/guild-wars-2/|Lutris]] |
| |
===== Prerequisites ===== | ===== Prerequisites ===== |
| |
* [[distros:fedora_workstation_gnome | Fedora Workstation]] | * [[distros:fedora_workstation_gnome|Fedora Workstation]] |
| * :!: [[notes:wine|Wine]] ((GW2 benefits from Esync significantly)) |
| |
===== Notes ===== | ===== Notes ===== |
| |
* If using an Esync build of Wine, ''-dx9single'' is not needed and will lower performance | * ''-dx9single'' reduces performance when Esync is enabled by at least 15 FPS |
* GW2 failed to start with Wine 4.7 on Fedora 30 on 2019/05/15; TODO: test openSUSE | |
| |
====== Install ====== | ====== Install ====== |
* Install to default directory when prompted ((''C:\Program Files\Guild Wars 2'')) | * Install to default directory when prompted ((''C:\Program Files\Guild Wars 2'')) |
* Log-in when launcher progresses enough | * Log-in when launcher progresses enough |
* Select AUTO-PLAY and close the launcher | * 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 explorer /desktop='GW2','1280x720' ~/'Downloads/Guild Wars 2/Gw2Setup.exe' | mkdir -p ~/'.wine' ~/'Downloads/Guild Wars 2' && wget -O ~/'Downloads/Guild Wars 2/Gw2Setup.exe' 'https://account.arena.net/content/download/gw2/win/64' && WINEPREFIX=~/'.wine/Guild Wars 2' WINEARCH='win64' wine ~/'Downloads/Guild Wars 2/Gw2Setup.exe' |
| |
===== Restore Gw2.dat ===== | ===== Restore Gw2.dat ===== |
* This expects ''Gw2.dat'' in the ''~/Downloads/Guild Wars 2'' folder | * 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 | mv ~/'Downloads/Guild Wars 2/Gw2.dat' ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && sync |
| |
===== Sandbox ===== | ===== 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' winetricks sandbox && sync | WINEPREFIX=~/'.wine/Guild Wars 2' winecfg |
| |
===== Virtual Desktop ===== | ===== Clean-up ===== |
| |
* Needed to prevent the launcher from eating resources and essentially locking up the system | |
* 2375x1410 suites a 4K screen well at 192 dpi | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winetricks vd=2375x1410 | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winetricks vd=1280x720 | |
| |
===== Gallium Nine ===== | |
| |
**** | **** |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winecfg | rm -Rf ~/'Downloads/Guild Wars 2' ~/'Desktop/Guild Wars 2.desktop' && sync |
| |
===== Video Memory ===== | ====== Libraries ====== |
| |
* 8192MB | ===== DXVK ===== |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine reg add 'HKCU\Software\Wine\Direct3D' /v 'VideoMemorySize' /t 'REG_SZ' /d '8192' /f | * https://github.com/doitsujin/dxvk/actions ((need to be signed into GitHub, and select the latest ''master'' artifacts package)) |
| |
===== DPI ===== | ls ~/'Downloads/dxvk-master-'*'.zip' && rm -Rf '/tmp/dxvk-master' && mkdir -p '/tmp/dxvk-master' && unzip ~/'Downloads/dxvk-master-'*'.zip' -d '/tmp/dxvk-master/' && cp --backup '/tmp/dxvk-master/x64/'*'.dll' ~/'.wine/Guild Wars 2/drive_c/windows/system32/' && cp --backup '/tmp/dxvk-master/x32/'*'.dll' ~/'.wine/Guild Wars 2/drive_c/windows/syswow64/' && WINEPREFIX=~/'.wine/Guild Wars 2' winetricks 'd3d9=native' 'd3d10core=native' 'd3d11=native' 'dxgi=native' && mkdir -p ~/'.wine/Guild Wars 2/dxvk_shader_cache' && sync |
| |
* 192 dpi | |
* This affects cursor size, launcher size, and UI/HUD scaling | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine reg add 'HKLM\System\CurrentControlSet\Hardware Profiles\Current\Software\Fonts' /v 'LogPixels' /t 'REG_DWORD' /d '192' /f | |
| |
===== Mouse Capture ===== | |
| |
* winecfg -> Graphics -> Automatically capture the __m__ouse in full-screen windows | |
* :!: This is required in-game if using an emulated desktop at all | |
* TODO: Why are there two methods here? | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine reg add 'HKCU\Software\Wine\X11 Driver' /v 'GrabFullscreen' /t 'REG_SZ' /d 'Y' /f | |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winetricks grabfullscreen=y | |
| |
===== Clean Up ===== | |
| |
**** | |
| |
rm -Rf ~/'Downloads/Guild Wars 2' ~/'Desktop/Guild Wars 2.desktop' && sync | |
| |
====== Desktop Launcher ====== | ====== Desktop Launcher ====== |
[Desktop Entry] | [Desktop Entry] |
Name=Guild Wars 2 | 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 | Categories=Game;AdventureGame;RolePlaying |
Exec=env WINEDEBUG='-all' 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 | Exec='/bin/bash' -c "cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_shader_cache' WINEPREFIX=~/'.wine/Guild Wars 2' wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin" |
Type=Application | Type=Application |
StartupNotify=true | StartupNotify=true |
Path=/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2 | Icon=1431_Gw2-64.0 |
Icon=0637_Gw2-64.0 | StartupWMClass=gw2-64.exe |
Actions=Kill;Update;Repair;Cache; | Actions=Cache;Kill;Update;Repair;Notes; |
| |
| [Desktop Action Cache] |
| Exec='/bin/bash' -c "rm -Rf ~/'.wine/Guild Wars 2/mesa_shader_cache/'* ~/'.wine/Guild Wars 2/dxvk_shader_cache/'* && sync && notify-send 'The Guild Wars 2 cache has been cleaned.'" |
| Name=Cache Cleanup |
| |
[Desktop Action Kill] | [Desktop Action Kill] |
Exec=env WINEPREFIX='/home/CHANGEME/Wine Prefixes/Guild Wars 2' wineserver -k | Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Guild Wars 2' wineserver --kill" |
Name=Force-close | Name=Force-close |
| |
[Desktop Action Update] | [Desktop Action Update] |
Exec=env WINEDEBUG='-all' 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 | Exec='/bin/bash' -c "cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_shader_cache' WINEPREFIX=~/'.wine/Guild Wars 2' wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -image" |
Name=Update Game Data | Name=Update Game Data |
| |
[Desktop Action Repair] | [Desktop Action Repair] |
Exec=env WINEDEBUG='-all' 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 | Exec='/bin/bash' -c "cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_shader_cache' WINEPREFIX=~/'.wine/Guild Wars 2' wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -repair" |
Name=Check and Repair Data | Name=Repair Game Data |
| |
[Desktop Action Cache] | [Desktop Action Notes] |
Exec=bash -c "rm -Rf ~/'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" | StartupNotify=false |
Name=Cache Clean-up</code> | Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/games:wine:guild_wars_2'" |
| Name=Installation Notes |
| |
| # End</code> |
| |
| ===== Steam Launcher ===== |
| |
| * Guild Wars 2 |
| |
| Guild Wars 2 |
| |
| nano ~/'.wine/Guild Wars 2/steam-launcher.sh' && chmod +x ~/'.wine/Guild Wars 2/steam-launcher.sh' |
| |
| <code> |
| #!/bin/sh |
| |
| # Environment Variables |
| export MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' |
| export DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_state_cache' |
| export WINEPREFIX=~/'.wine/Guild Wars 2' |
| |
| # Working Directory |
| cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' |
| |
| # Launch |
| wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin |
| |
sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/wine/Programs/Guild Wars 2/Guild Wars 2.desktop' | # End</code> |
| |
====== Quick Commands ====== | ====== Quick Commands ====== |
**** | **** |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winecfg | WINEPREFIX=~/'.wine/Guild Wars 2' winecfg |
| |
===== Winetricks ===== | ===== Winetricks ===== |
**** | **** |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' winetricks | WINEPREFIX=~/'.wine/Guild Wars 2' winetricks |
| |
===== Registry Editor ===== | ===== Registry Editor ===== |
**** | **** |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' regedit | WINEPREFIX=~/'.wine/Guild Wars 2' regedit |
| |
===== Kill ===== | ===== Kill ===== |
**** | **** |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wineserver -k | WINEPREFIX=~/'.wine/Guild Wars 2' wineserver --kill |
| |
===== Execute ===== | ===== Execute ===== |
==== Guild Wars 2 ==== | ==== Guild Wars 2 ==== |
| |
**** | cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_shader_cache' WINEPREFIX=~/'.wine/Guild Wars 2' WINEDEBUG='' wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && | |
| |
WINEDEBUG='-all' | |
| |
GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3;GPU-load,requested-VRAM+VRAM-usage;fps' | |
| |
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>-dx9single</code> |
**** | **** |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -image && sync | cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_shader_cache' WINEPREFIX=~/'.wine/Guild Wars 2' WINEDEBUG='' wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -image |
| |
==== Repair ==== | ==== Repair ==== |
**** | **** |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -repair && sync | cd ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Guild Wars 2' DXVK_STATE_CACHE_PATH=~/'.wine/Guild Wars 2/dxvk_shader_cache' WINEPREFIX=~/'.wine/Guild Wars 2' WINEDEBUG='' wine ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -repair |
| |
===== File Manager ===== | ===== File Manager ===== |
**** | **** |
| |
gio open ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' | gio open ~/'.wine/Guild Wars 2/drive_c/Program Files/Guild Wars 2' |