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 [2022/08/30 22:22] – Sean Rhone |
---|
====== Information ====== | ====== Information ====== |
| |
* Guild Wars 2 ((https://www.guildwars2.com)) | * [[https://www.guildwars2.com|Guild Wars 2]] |
| * Standalone |
* 64-bit | * 64-bit |
| * :!: 2022/08/30: This does not work as-is with Wine Staging as it needs a patch ((''029c:fixme:vulkan:X11DRV_vkCreateWin32SurfaceKHR Application requires child window rendering, which is not implemented yet'')) |
| |
| ===== 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 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 ===== | ===== Restore Gw2.dat ===== |
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 Prefixes/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 Prefixes/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 ===== | ====== DXVK ====== |
| |
* 8192MB | ===== Information ===== |
| |
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 |
| * https://github.com/Sporif/dxvk-async |
| |
===== DPI ===== | * D3D11 to Vulkan |
| * Async |
| |
* 192 dpi | ===== Download ===== |
* 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 | * https://github.com/Sporif/dxvk-async/releases |
| |
===== Mouse Capture ===== | ===== Install ===== |
| |
* 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 | 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 ====== | ====== Desktop Launcher ====== |
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! | 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=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 | Type=Application |
StartupNotify=true | StartupNotify=true |
Path=/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2 | Path=/home/CHANGEME/Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2 |
Icon=0637_Gw2-64.0 | Icon=1431_Gw2-64.0 |
Actions=Kill;Update;Repair;Cache; | Actions=Kill;Update;Repair;Cache; |
| |
| |
[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=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 | 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=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 | Name=Check and Repair Data |
| |
[Desktop Action Cache] | [Desktop Action Cache] |
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" | 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> | Name=Cache Clean-up</code> |
| |
sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/wine/Programs/Guild Wars 2/Guild Wars 2.desktop' | 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 ====== | ====== Quick Commands ====== |
| |
==== Guild Wars 2 ==== | ==== Guild Wars 2 ==== |
| |
**** | |
| |
cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && | cd ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' && |
| |
WINEDEBUG='-all' | 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' |
| |
GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3;GPU-load,requested-VRAM+VRAM-usage;fps' | DXVK_HUD=full |
| |
WINEPREFIX=~/'Wine Prefixes/Guild Wars 2' wine ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2/Gw2-64.exe' -autologin | 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>-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 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 ==== | ==== 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 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 ===== | ===== File Manager ===== |
| |
gio open ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' | gio open ~/'Wine Prefixes/Guild Wars 2/drive_c/Program Files/Guild Wars 2' |
| |