User Tools

Site Tools


games:wine:old_school_runescape_jagex_launcher_c

Information

  • This allows running the Jagex Launcher and the C++ OSRS clients through wine
  • Jagex Launcher can be closed after pressing Play and the OSRS client window appears 3)

Prerequisites

Notes

  • On the first OSRS client launch, it may start an invisible game window; Close osclient.exe and re-launch it from Jagex Launcher 4)

Install

Initial

mkdir -p ~/'.wine' && WINEPREFIX=~/'.wine/Old School RuneScape' WINEARCH='win64' wineboot && WINEPREFIX=~/'.wine/Old School RuneScape' winetricks 'discord_game_sdk=disabled' && sync

Jagex Launcher

  • :!: You'll need to supply Jagex Launcher files as the installer doesn't work 5)
  • See Jagex Launcher Installer notes for installer testing

Google Drive

  • Google Drive link to a clean Jagex Launcher folder with SHA256
  • Use this if at all unsure
sha256sum ~/'Downloads/20240211-Jagex-Launcher.zip' | grep 'cd924d7b145349912879c429c44416403af5be494914d15446301b2e42cc4812' > '/dev/null' && unzip -b -o -qq ~/'Downloads/20240211-Jagex-Launcher.zip' -d ~/'.wine/Old School RuneScape/drive_c/Program Files' && sync

Manual

  • Expects something like ~/Downloads/20240211-Jagex-Launcher.zip with any date
  • The top-level of the archive should be the Jagex Launcher folder 6)
unzip -b -o -qq ~/'Downloads/'*'Jagex'*'Launcher.zip' -d ~/'.wine/Old School RuneScape/drive_c/Program Files' && sync
gio open ~/'.wine/Old School RuneScape/drive_c/Program Files'

Old School RuneScape

  • Update launcher if prompted, log-in, select OSRS → New Official Client → Install
mkdir -p ~/'.wine/Old School RuneScape/dxvk_shader_cache' && cd ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher' && MESA_SHADER_CACHE_DIR=~/'.wine/Old School RuneScape' DXVK_STATE_CACHE_PATH=~/'.wine/Old School RuneScape/dxvk_shader_cache' WINEPREFIX=~/'.wine/Old School RuneScape' wine ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe' --disable-gpu --disable-software-rasterizer

Clean Up

rm -f ~/'Downloads/Jagex Launcher Installer.exe' ~/'Downloads/'*'Jagex Launcher.zip' && cd ~ && sync

Settings

  • FpsLimit is ideal for Wayland sessions in order to prevent uncapped framerate and potential thermal-throttling
mkdir -p ~/'.wine/Old School RuneScape/drive_c/users/'$USER'/AppData/Local/Jagex/Old School Runescape' && nano ~/'.wine/Old School RuneScape/drive_c/users/'$USER'/AppData/Local/Jagex/Old School Runescape/preferences_client.dat'
DisplayBuildInfo 1
FpsLimit 74

Defaults

  • 1080p, fullscreen, max draw distance, MSAA x4, W416, Nearest-neighbour
  • Last updated: 2024/01/31
mkdir -p ~/'.wine/Old School RuneScape/drive_c/users/'$USER'/AppData/Local/Jagex/Old School Runescape' && nano ~/'.wine/Old School RuneScape/drive_c/users/'$USER'/AppData/Local/Jagex/Old School Runescape/preferences_client.dat'
AntiAliasingSampleLevel 2
Brightness 0
DefaultWorldId 416
DisplayBuildInfo 0
DisplayFps 0
DrawDistance 90
FpsLimit 74
Fullscreen 1
HideUserName 0
LastWorldId 416
MasterVolume 100
TitleVolume 100
UIQuality 0
WindowHeight 1080
WindowMode 2
WindowTopmost 0
WindowWidth 1920

Desktop Launcher

  • TODO: Kill and Cache clean-up is behind bash -c and presumably don't need CHANGEMEs; can be modernized like Exec
rm -f ~/'.local/share/applications/wine/Programs/OSClient.desktop' && mkdir -p ~/'.local/share/applications/wine/Programs/Jagex' && ln --symbolic --force '/dev/null' ~/'.local/share/applications/wine/Programs/OSClient.desktop' && nano ~/'.local/share/applications/wine/Programs/Jagex/Old School RuneScape.desktop' && sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/wine/Programs/Jagex/Old School RuneScape.desktop'
[Desktop Entry]
Name=Old School RuneScape
Categories=Game;AdventureGame;RolePlaying
Exec='/bin/bash' -c "cd ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Old School RuneScape' MESA_LOADER_DRIVER_OVERRIDE='zink' MESA_VK_WSI_PRESENT_MODE='immediate' WINEPREFIX=~/'.wine/Old School RuneScape' wine ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe' --disable-gpu --disable-software-rasterizer"
Type=Application
StartupNotify=true
Icon=D0C9_osclient.0
StartupWMClass=osclient.exe
Actions=Cache;Kill;Notes;

[Desktop Action Cache]
StartupNotify=false
Exec='/bin/bash' -c "rm -Rf '/home/CHANGEME/.wine/Old School RuneScape/drive_c/users/CHANGEME/AppData/Local/Jagex/Old School Runescape/'* '/home/CHANGEME/.wine/Old School RuneScape/drive_c/'*'.log' '/home/CHANGEME/.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.dxvk-cache' '/home/CHANGEME/.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/Games/Old School RuneScape/Client/osclient.dxvk-cache' '/home/CHANGEME/.wine/Old School RuneScape/drive_c/users/CHANGEME/AppData/Local/Jagex Launcher/logs/'* '/home/CHANGEME/.wine/Old School RuneScape/mesa_shader_cache'* && sync && notify-send 'The Old School RuneScape cache has been cleaned.'"
Name=Cache Cleanup

[Desktop Action Kill]
Exec='/bin/bash' -c "WINEPREFIX=~/'.wine/Old School RuneScape' wineserver --kill"
Name=Force-close

[Desktop Action Notes]
StartupNotify=false
Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/games:wine:old_school_runescape_jagex_launcher_c'"
Name=Installation Notes

# End

Icon

  • Requires wrestool
mkdir -p ~/'.local/share/icons/hicolor/64x64/apps' && cd ~/'.local/share/icons/hicolor/64x64/apps' && wrestool --output='D0C9_osclient.0.png' --extract --type='14' ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/Games/Old School RuneScape/Client/osclient.exe' && cd ~

Quick Commands

Winecfg

WINEPREFIX=~/'.wine/Old School RuneScape' winecfg

Winetricks

WINEPREFIX=~/'.wine/Old School RuneScape' winetricks

Registry Editor

WINEPREFIX=~/'.wine/Old School RuneScape' regedit

Kill

WINEPREFIX=~/'.wine/Old School RuneScape' wineserver --kill

Execute

Jagex Launcher

cd ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher' && PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Old School RuneScape' DXVK_STATE_CACHE_PATH=~/'.wine/Old School RuneScape/dxvk_shader_cache' WINEDEBUG='' WINEPREFIX=~/'.wine/Old School RuneScape' wine ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe' --disable-gpu --disable-software-rasterizer

Zink

  • MESA_LOADER_DRIVER_OVERRIDE=zink
  • MESA_VK_WSI_PRESENT_MODE=immediate
  • :!: This is required for GNOME on Wayland with Intel UHD 630 in order to workaround an odd 50 FPS limit 8)
cd ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher' && MESA_LOADER_DRIVER_OVERRIDE='zink' MESA_VK_WSI_PRESENT_MODE='immediate' PULSE_LATENCY_MSEC='400' MESA_SHADER_CACHE_DIR=~/'.wine/Old School RuneScape' DXVK_STATE_CACHE_PATH=~/'.wine/Old School RuneScape/dxvk_shader_cache' WINEDEBUG='' WINEPREFIX=~/'.wine/Old School RuneScape' wine ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/JagexLauncher.exe' --disable-gpu --disable-software-rasterizer

Troubleshooting

  • Wine's virtual desktop may be necessary with certain desktop/window managers and with Wayland
explorer /desktop='Jagex-Launcher','1280x720'

File Manager

Jagex Launcher

gio open ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/'

Old School RuneScape

gio open ~/'.wine/Old School RuneScape/drive_c/Program Files/Jagex Launcher/Games/Old School RuneScape/Client/'
3)
the log-in session carries over through world switches and even log-outs; Jagex Launcher only needs to be re-opened if you close the OSRS client window
4)
on Windows this seems to manifests as a visible game window that doesn't appear in the taskbar; OSRS defies typical window-management logic :p presumably when it tries to define a default window position on first-launch
5)
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
6)
should have file contents like 20240211-Jagex-Launcher.zip/Jagex Launcher/JagexLauncher.exe
7)
required to fix audio glitches present in music even on Fedora 38+ where PipeWire is used
8)
TODO: Figure out what this is about and if it affects other GPU vendors; this is also reproducible with Diablo II non-Resurrected when ran through a Glide-to-OpenGL wrapper
/var/www/wiki/data/pages/games/wine/old_school_runescape_jagex_launcher_c.txt · Last modified: 2024/04/16 00:02 by Sean Rhone