| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| games:linux:wine:runescape_nxt_jagex_launcher [2024/08/06 17:27] – removed Sean Rhone | games:linux:wine:runescape_nxt_jagex_launcher [2025/09/11 06:43] (current) – external edit 127.0.0.1 |
|---|
| | ====== Information ====== |
| | |
| | * RuneScape ((http://www.runescape.com)) |
| | * NXT ((https://runescape.wiki/w/NXT)) |
| | * Jagex Launcher ((https://www.jagex.com/en-GB/launcher)) |
| | |
| | * This allows running the Jagex Launcher with Wine, and the RS3 NXT client natively |
| | * Jagex Launcher can be closed after pressing ''Play'' and the RuneScape client window appears ((the log-in session carries over through world switches and even log-outs; Jagex Launcher only needs re-opened if you close the RS client window)) |
| | |
| | ===== Prerequisites ===== |
| | |
| | * [[linux;distros;fedora_workstation_gnome|Fedora Workstation (GNOME)]] |
| | * [[notes:wine|Wine]] |
| | |
| | ===== Notes ===== |
| | |
| | * Once installed, be sure the game cache is fully-downloaded, and ideally toggle Options -> Textures between ''Compressed'' and ''Uncompressed'' for both caches ((2024/03/24: ''RuneScape'' folder is 10.9 GB)) |
| | |
| | ====== Disable Legacy GNOME Tray ====== |
| | |
| | * :!: Jagex Launcher sometimes has issues with being interacted with from GNOME tray with the AppIndicator/KStatusNotifierItem support for GNOME Shell extension ((this automatically installs on Fedora through Steam as a dep, and is included out-the-box with Ubuntu 23.10)) |
| | * Can be an issue on other desktop environments ((2023/12: Xfce on openSUSE TW seemed fine)) |
| | |
| | gnome-extensions disable 'ubuntu-appindicators@ubuntu.com' |
| | |
| | gnome-extensions disable 'appindicatorsupport@rgcjonas.gmail.com' |
| | |
| | ====== Dependencies ====== |
| | |
| | * :!: F40 requires installing ''openssl1.1'' RPM from F39 ([[https://discussion.fedoraproject.org/t/problems-playing-runescape-without-openssl-1-1/124701|thread]]) |
| | |
| | sudo dnf install 'openssl1.1.x86_64' && sync |
| | |
| | ====== Install ====== |
| | |
| | ===== Initial ===== |
| | |
| | **** |
| | |
| | mkdir -p ~/'.wine' && WINEPREFIX=~/'.wine/RuneScape' WINEARCH='win64' wineboot && sync |
| | |
| | ===== Jagex Launcher ===== |
| | |
| | * :!: You'll need to supply ''Jagex Launcher'' files as the installer doesn't work ((install Jagex Launcher on a Windows machine first, and then the ''Jagex Launcher'' folder in ''Program Files'' can be copied over as-is to the Wine prefix; you don't need to log-in but ideally run it once after installation for it to update to the latest version)) |
| | * See [[games;linux;wine;jagex_launcher|Jagex Launcher Installer]] notes for installer testing |
| | |
| | ==== Google Drive ==== |
| | |
| | * [[https://drive.google.com/file/d/1ycvSFHTCXNQ7kXnPTS8XHFg__qgfB2ti/view?usp=sharing|Google Drive]] link to a clean ''Jagex Launcher'' folder with SHA256 |
| | * Use this if at all unsure |
| | |
| | sha256sum ~/'Downloads/20240509-Jagex-Launcher.zip' | grep 'bc143b9cafbf6d735193d64e486be5015d4a4e857c61329e1a49f7143987789d' > '/dev/null' && unzip -b -o -qq ~/'Downloads/20240509-Jagex-Launcher.zip' -d ~/'.wine/RuneScape/drive_c/Program Files' && sync |
| | |
| | gio open ~/'.wine/RuneScape/drive_c/Program Files' |
| | |
| | ==== Manual ==== |
| | |
| | * Expects something like ''~/Downloads/20230920-Jagex-Launcher.zip'' with any date |
| | * The top-level of the archive should be the ''Jagex Launcher'' folder ((should have file contents like ''20240206-Jagex-Launcher.zip/Jagex Launcher/JagexLauncher.exe'')) |
| | |
| | unzip -b -o -qq ~/'Downloads/'*'Jagex'*'Launcher.zip' -d ~/'.wine/RuneScape/drive_c/Program Files' && sync |
| | |
| | gio open ~/'.wine/RuneScape/drive_c/Program Files' |
| | |
| | ===== RuneScape ===== |
| | |
| | ==== Jagex Launcher ==== |
| | |
| | * Update launcher if prompted, log-in, select RuneScape -> Install |
| | * Fully-exit Jagex Launcher after installation |
| | |
| | mkdir -p ~/'.wine/RuneScape/dxvk_shader_cache' && cd ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher' && MESA_SHADER_CACHE_DIR=~/'.wine/RuneScape' DXVK_STATE_CACHE_PATH=~/'.wine/RuneScape/dxvk_shader_cache' WINEPREFIX=~/'.wine/RuneScape' wine ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe' --disable-gpu --disable-software-rasterizer |
| | |
| | ==== RuneScape ==== |
| | |
| | * [[#version_check|Version-check]] occasionally, as this currently expects ''runescape-launcher_2.2.11_amd64.deb'' |
| | * Last tested: 2024/04/03 on Fedora 39 |
| | |
| | cd ~ && rm -Rf ~/'.runescape' ~/'.wine/RuneScape/Jagex/launcher' ~/'.wine/RuneScape/Jagex/updater' ~/'.wine/RuneScape/Jagex/RuneScape/GlobalSettings.jcache' ~/'.wine/RuneScape/Jagex/RuneScape/Settings.jcache' ~/'.wine/RuneScape/Jagex/RuneScape/ShaderManager.jcache' ~/'.local/share/icons/hicolor/'*'/apps/runescape.png' ~/'.local/share/applications/RuneScape.desktop' '/tmp/runescape' && mkdir -p ~/'.wine/RuneScape/Jagex/updater' '/tmp/runescape' && wget -O '/tmp/runescape/runescape-launcher-amd64.deb' 'https://content.runescape.com/downloads/ubuntu/pool/non-free/r/runescape-launcher/runescape-launcher_2.2.11_amd64.deb' && unar -o '/tmp/runescape' '/tmp/runescape/runescape-launcher-amd64.deb' && unar -o '/tmp/runescape' '/tmp/runescape/runescape-launcher-amd64/data.tar.xz' && cp '/tmp/runescape/data/usr/bin/runescape-launcher' '/tmp/runescape/data/usr/share/games/runescape-launcher/runescape' ~/'.wine/RuneScape/Jagex/updater' && cp -R '/tmp/runescape/data/usr/share/icons' ~/'.local/share' && ls ~/'.wine/RuneScape/Jagex/updater/runescape' ~/'.wine/RuneScape/Jagex/updater/runescape-launcher' > '/dev/null' && rm -Rf '/tmp/runescape' && ln --backup --symbolic --force ~/'.wine/RuneScape/Jagex/updater/runescape-launcher' ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher/Games/RuneScape/RuneScape.exe' && sync |
| | |
| | ===== runescape-launcher ===== |
| | |
| | * Minor changes to the current ''runescape-launcher'' from ''2.2.10'' ((the launcher is changed to run ''runescape'' from it's working directory instead of in ''/usr/share/..'')) |
| | * :!: Choose a graphics preset below to paste under ''# Custom'' and above ''unset XMODIFIERS'' |
| | |
| | nano ~/'.wine/RuneScape/Jagex/updater/runescape-launcher' |
| | |
| | <code> |
| | #!/bin/sh |
| | |
| | if [ -z $1 ]; then |
| | configURI=http://www.runescape.com/k=5/l=\$\(Language:0\)/jav_config.ws |
| | else |
| | configURI=$1 |
| | shift |
| | fi |
| | |
| | export SDL_VIDEO_X11_WMCLASS="RuneScape" |
| | |
| | # Audio |
| | #export SDL_AUDIODRIVER='pipewire' |
| | export PULSE_LATENCY_MSEC='400' |
| | export SDL_AUDIODRIVER='pulseaudio' |
| | export PULSE_PROP_OVERRIDE="application.name='RuneScape' application.icon_name='runescape' media.role='game'" |
| | |
| | # Display Server |
| | #export SDL_VIDEODRIVER='wayland' |
| | export SDL_VIDEODRIVER='x11' |
| | |
| | # Custom |
| | |
| | unset XMODIFIERS |
| | ~/'.wine/RuneScape/Jagex/updater/runescape' --configURI $configURI $@</code> |
| | |
| | ==== Modern Open/Mesa Graphics ==== |
| | |
| | * AMD Radeon RX 6600 XT |
| | * Intel UHD Graphics 630 |
| | |
| | <code> |
| | # Modern Open/Mesa Graphics |
| | export MESA_SHADER_CACHE_DIR=~/'Jagex' |
| | export MESA_GL_VERSION_OVERRIDE='4.6COMPAT' |
| | export MESA_NO_ERROR='1' |
| | export mesa_glthread='true' |
| | export MESA_DISK_CACHE_SINGLE_FILE='1' |
| | export MESA_DISK_CACHE_DATABASE='1'</code> |
| | |
| | ==== Zink ==== |
| | |
| | * https://docs.mesa3d.org/drivers/zink.html |
| | |
| | <code> |
| | # Zink |
| | export MESA_SHADER_CACHE_DIR=~/'Jagex' |
| | export MESA_LOADER_DRIVER_OVERRIDE='zink' |
| | export GALLIUM_DRIVER='zink'</code> |
| | |
| | ==== Old Intel Graphics ==== |
| | |
| | * Intel GMA 4500MHD |
| | |
| | * :!: This hasn't been tested since 2019 |
| | * The graphics-related environment variables are for a Intel GMA 4500MHD GPU that barely reports OpenGL 2.0 |
| | * :!: ''MESA_GLSL_VERSION_OVERRIDE'' is required, and ''130'' is the lowest NXT will allow |
| | * :!: ''MESA_GL_VERSION_OVERRIDE'' can be ''2.1'', but ''renderer'' in dev console doesn't expose GL extensions ((it's unknown if this causes any issues or improves anything)) |
| | * :!: This computer required graphics settings to be Low for any kind of playable FPS |
| | |
| | <code> |
| | # Old Intel Graphics |
| | export MESA_SHADER_CACHE_DIR=~/'Jagex' |
| | export MESA_GLSL_VERSION_OVERRIDE='130' |
| | export MESA_GL_VERSION_OVERRIDE='3.0' |
| | export mesa_glthread='true'</code> |
| | |
| | ==== NVIDIA Proprietary ==== |
| | |
| | * :!: Expects use of the NVIDIA proprietary driver and not ''nouveau'' |
| | |
| | <code> |
| | # NVIDIA Proprietary |
| | export __GL_SHADER_DISK_CACHE_PATH=~/'Jagex' |
| | export __GL_THREADED_OPTIMIZATIONS='1'</code> |
| | |
| | ==== Debugging ==== |
| | |
| | <code>export MESA_DEBUG='1'</code> |
| | |
| | <code>export LIBGL_DEBUG='verbose'</code> |
| | |
| | ==== More Environment Variables ==== |
| | |
| | * See [[notes:wine]] |
| | * https://docs.mesa3d.org/envvars.html |
| | |
| | ===== Clean Up ===== |
| | |
| | **** |
| | |
| | rm -f ~/'Downloads/Jagex Launcher Installer.exe' ~/'Downloads/'*'Jagex Launcher.zip' && cd ~ && sync |
| | |
| | ====== Settings ====== |
| | |
| | ===== Game ===== |
| | |
| | ==== Music Player ==== |
| | |
| | * See [[notes:runescape_music|RuneScape Music]] |
| | |
| | ==== Camera ==== |
| | |
| | * https://old.reddit.com/r/runescape/comments/b5ga9y/resetdefault_camera_zoom_possible/ejdplsy/ |
| | * https://sqlitebrowser.org/dl/ |
| | |
| | * DB Browser for SQLite -> ''Settings.jcache'' |
| | * Browse Data -> Table: vt-varc -> KEY 1971 -> DATA |
| | * Set ''DATA'' for KEY ''1971'' to NULL and restart client to have default camera distance ((the default value as of 2022/09/27 is ''4730'')) |
| | * In-game -> Settings -> Gameplay -> General -> Game Interaction -> [x] Lock zoom to prevent accidental changes |
| | |
| | sudo dnf install 'sqlitebrowser' -y |
| | |
| | sqlitebrowser ~/'Jagex/RuneScape/Settings.jcache' |
| | |
| | ===== Developer Console ===== |
| | |
| | ==== GNOME Keybind ==== |
| | |
| | * Press ''Alt'' + ''~'' to access the console in-game |
| | * This needs ran with GNOME since it binds Alt + ~ by-default |
| | |
| | gsettings set 'org.gnome.desktop.wm.keybindings' 'switch-group' "['disabled']" |
| | |
| | === Keybind Reset === |
| | |
| | **** |
| | |
| | gsettings reset 'org.gnome.desktop.wm.keybindings' 'switch-group' |
| | |
| | ==== Commands ==== |
| | |
| | * Type ''help'' to see commands |
| | * :!: FPS from ''displayfps'' being displayed lowers performance noticeably; it may be better to use ''GALLIUM_HUD'' if possible for performance statistics |
| | |
| | help |
| | |
| | displayfps |
| | |
| | renderer |
| | |
| | ===== Volume ===== |
| | |
| | ==== Information ==== |
| | |
| | * Runescape's volume was lower than average with PulseAudio |
| | * The following commands boosts RS's volume past 100% |
| | * :!: This expects PulseAudio to be used ((PipeWire on Fedora 36 seems to have expected volume by-default)) |
| | * 2023/08/24: This was required on openSUSE TW |
| | |
| | ==== Get Index ==== |
| | |
| | * :!: If playing audio from another source, remove ''grep'', and ''Properties'' will present ''Runescape'' for the correct sink |
| | |
| | pactl list sink-inputs | grep '#' |
| | |
| | ==== Set Volume ==== |
| | |
| | **** |
| | |
| | pactl set-sink-input-volume 'x' '155%' |
| | |
| | ===== Ping ===== |
| | |
| | nano '/tmp/rs3-ping.sh' && chmod +x '/tmp/rs3-ping.sh' && '/tmp/rs3-ping.sh' |
| | |
| | <code> |
| | for world in {1..141}; |
| | do |
| | res=$(ping world${world}.runescape.com -c 1 2>&0 | grep "time=" | cut -d' ' -f 8,9 | cut -d'=' -f 2) && echo World ${world}: ${res}; |
| | done</code> |
| | |
| | ====== Desktop Launcher ====== |
| | |
| | <code>mkdir -p ~/'.local/share/applications/wine/Programs/Jagex' && nano ~/'.local/share/applications/wine/Programs/Jagex/RuneScape.desktop'</code> |
| | |
| | <code> |
| | [Desktop Entry] |
| | Name=RuneScape |
| | Categories=Game;AdventureGame;RolePlaying |
| | Exec='/bin/bash' -c "cd ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher' && MESA_SHADER_CACHE_DIR=~/'.wine/RuneScape' WINEPREFIX=~/'.wine/RuneScape' wine ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe' --disable-gpu --disable-software-rasterizer" |
| | Type=Application |
| | StartupNotify=true |
| | Icon=runescape |
| | StartupWMClass=RuneScape |
| | Actions=Kill;Cache;Notes; |
| | |
| | [Desktop Action Kill] |
| | Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/RuneScape' wineserver --kill && killall -9 'rs2client' 'runescape' 'runescape-launcher'" |
| | Name=Force-close |
| | |
| | [Desktop Action Cache] |
| | Exec='/bin/bash' -c "rm -Rf ~/'.runescape' ~/'.wine/RuneScape/Jagex/mesa_shader_cache' ~/'.wine/RuneScape/Jagex/GLCache' ~/'.wine/RuneScape/Jagex/launcher/instance.lock' ~/'.wine/RuneScape/Jagex/RuneScape/ShaderManager.jcache' '/tmp/runescape' && sync && notify-send 'The RuneScape cache has been cleaned.'" |
| | Name=Cache Clean-up |
| | |
| | [Desktop Action Notes] |
| | StartupNotify=false |
| | Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/games:wine:runescape_jagex_launcher'" |
| | Name=Installation Notes |
| | |
| | # End</code> |
| | |
| | ====== Quick Commands ====== |
| | |
| | ===== Winecfg ===== |
| | |
| | **** |
| | |
| | <code>WINEPREFIX=~/'.wine/RuneScape' winecfg</code> |
| | |
| | ===== Winetricks ===== |
| | |
| | **** |
| | |
| | <code>WINEPREFIX=~/'.wine/RuneScape' winetricks</code> |
| | |
| | ===== Registry Editor ===== |
| | |
| | **** |
| | |
| | <code>WINEPREFIX=~/'.wine/RuneScape' regedit</code> |
| | |
| | ===== Kill ===== |
| | |
| | **** |
| | |
| | <code>WINEPREFIX=~/'.wine/RuneScape' wineserver --kill && killall' -9 'rs2client' 'runescape' 'runescape-launcher'</code> |
| | |
| | ===== Execute ===== |
| | |
| | ==== Jagex Launcher ==== |
| | |
| | <code>cd ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher' && </code> |
| | |
| | <code>MESA_SHADER_CACHE_DIR=~/'.wine/RuneScape' WINEPREFIX=~/'.wine/RuneScape' wine ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe'</code> |
| | |
| | ==== Troubleshooting ==== |
| | |
| | * Wine's virtual desktop may be necessary with certain desktop/window managers and with Wayland |
| | |
| | <code>WINEDEBUG=''</code> |
| | |
| | <code>explorer /desktop='Jagex-Launcher','1280x720'</code> |
| | |
| | <code>--disable-gpu --disable-software-rasterizer</code> |
| | |
| | ===== Jagex Launcher symlink ===== |
| | |
| | **** |
| | |
| | ln --backup --symbolic --force ~/'Jagex/updater/runescape-launcher' ~/'.wine/Jagex Launcher/drive_c/Program Files/Jagex Launcher/Games/RuneScape/RuneScape.exe' |
| | |
| | ==== Installer Version Check ==== |
| | |
| | * https://github.com/flathub/com.jagex.RuneScape/blob/master/com.jagex.RuneScape.json#L87 |
| | |
| | * https://content.runescape.com/downloads/ubuntu/pool/non-free/r/runescape-launcher/runescape-launcher_2.2.12_amd64.deb ((this should ''404''; if it doesn't then there's an updated package and the notes are referencing an older version number)) |
| | |
| | ===== File Manager ===== |
| | |
| | ==== Jagex Launcher ==== |
| | |
| | **** |
| | |
| | gio open ~/'.wine/RuneScape/drive_c/Program Files/Jagex Launcher/' |
| | |
| | ==== Cache ==== |
| | |
| | * All the ''.jcache'' files can be backed-up and restored, but ideally exclude ''GlobalSettings.jcache'', ''ObjCache.jcache'', and ''ShaderManager.jcache'' ((2024/04/04: Full cache is around ''11.3 GB'')) |
| | |
| | <code>mkdir -p ~/'Jagex/RuneScape' && gio open ~/'Jagex/RuneScape/'</code> |
| |