User Tools

Site Tools


games:old_school_runescape

This is an old revision of the document!


Information

  • Old School RuneScape 1)

Notes

  • -Dsun.java2d.opengl=true enables Hardware-acceleration via OpenGL, but as of 2018/10/10, this is broken with Intel Graphics on multiple computers 2) and as of 2019/10/24, has significantly worse performance on a i5-4278U CPU
  • jagexappletviewer.jar from OldSchool.msi is used because it allows the copyright footer bar to be removed upon logging in 3) 4)
  • :!: The copyright footer is not hidden with OpenJDK 12, 13, and presumably any JRE newer than 11, regardless of where the jagexappletviewer.jar comes from 5)

Install

Dependencies

  • wmctrl is used to toggle between windowed and fullscreen states

Fedora Workstation

  • p7zip-plugins is needed to extract jagexappletviewer.jar from OldSchool.msi later 6) 7)
  • Last tested: 2019/10/24 with Fedora Workstation 31
sudo dnf install java-11-openjdk wmctrl && sync

Ubuntu

  • Last tested: 2019/10/22 with Ubuntu 19.10
sudo apt install openjdk-11-jre wmctrl && sync

openSUSE Tumbleweed

  • Last tested: N/A
sudo zypper install java-11-openjdk wmctrl && sync

Set Default Java

sudo update-alternatives --config 'java'

Old School RuneScape

rm -Rf ~/'runescape/oldschool' '/tmp/oldschool' && mkdir -p ~/'runescape/oldschool' '/tmp/oldschool' && wget -O '/tmp/oldschool/OldSchool.msi' 'http://www.runescape.com/downloads/oldschool.msi' && 7z e -o'/tmp/oldschool/OldSchool-msi' -y '/tmp/oldschool/OldSchool.msi' && 7z e -o'/tmp/oldschool/rslauncher-cab' -y '/tmp/oldschool/OldSchool-msi/rslauncher.cab' && cp '/tmp/oldschool/rslauncher-cab/JagexAppletViewerJarFile'* ~/'runescape/oldschool/jagexappletviewer.jar' && wget -O ~/'runescape/oldschool/jagexappletviewer.png' 'https://lh3.googleusercontent.com/WLvp10q8TwtyVgMsYL7gW0c7NVG5vnFcRNS7oQtTnSyWbM9kgo_MS8QZa3bsylNgZDba' && rm -Rf '/tmp/oldschool' && sync

Desktop Launcher

Old School RuneScape

  • :!: Change opengl and uiScale flags as-needed
  • :!: opengl needs to be enabled if using a screen depth of 30/10-bit color
mkdir -p ~/'.local/share/applications' && nano ~/'.local/share/applications/Old School RuneScape.desktop'
[Desktop Entry]
Name=Old School RuneScape
Comment=Relive the challenging levelling system and risk-it-all PvP of the biggest retro styled MMO. Play with millions of other players in this piece of online gaming heritage where the community controls the development so the game is truly what you want it to be!
Categories=Game;Java;AdventureGame;RolePlaying
Exec='/usr/bin/java' -Duser.home='/home/CHANGEME/runescape/oldschool' -Djava.class.path='/home/CHANGEME/runescape/oldschool/jagexappletviewer.jar' -Dcom.jagex.config='http://oldschool.runescape.com/jav_config.ws' -Dhttps.protocols='TLSv1.2' -Xms'768M' -Xmx'768M' -Dsun.java2d.opengl='false' -Dsun.java2d.uiScale='2' 'jagexappletviewer' 'oldschool'
Type=Application
StartupNotify=true
Path=/home/CHANGEME/runescape/oldschool
Icon=/home/CHANGEME/runescape/oldschool/jagexappletviewer.png
StartupWMClass=jagexappletviewer
Actions=NoGL;Screen;Update;Cache;

[Desktop Action GL]
Exec='/usr/bin/java' -Duser.home='/home/CHANGEME/runescape/oldschool' -Djava.class.path='/home/CHANGEME/runescape/oldschool/jagexappletviewer.jar' -Dcom.jagex.config='http://oldschool.runescape.com/jav_config.ws' -Dhttps.protocols='TLSv1.2' -Xms'768M' -Xmx'768M' -Dsun.java2d.opengl='true' -Dsun.java2d.uiScale='2' 'jagexappletviewer' 'oldschool'
Name=Start with OpenGL acceleration

[Desktop Action Screen]
StartupNotify=false
Exec='/usr/bin/wmctrl' -r 'Old School RuneScape' -b toggle,fullscreen -F
Name=Toggle Fullscreen/Windowed

[Desktop Action Update]
StartupNotify=false
Exec='/bin/bash' -c "notify-send 'Updating the Old School RuneScape client, please wait...' && rm -Rf '/tmp/oldschool' && mkdir -p '/home/CHANGEME/runescape/oldschool' '/tmp/oldschool' && wget -q -O '/tmp/oldschool/OldSchool.msi' 'http://www.runescape.com/downloads/oldschool.msi' && 7z e -o'/tmp/oldschool/OldSchool-msi' -y '/tmp/oldschool/OldSchool.msi' && 7z e -o'/tmp/oldschool/rslauncher-cab' -y '/tmp/oldschool/OldSchool-msi/rslauncher.cab' && cp '/tmp/oldschool/rslauncher-cab/JagexAppletViewerJarFile'* '/home/CHANGEME/runescape/oldschool/jagexappletviewer.jar' && rm -Rf '/tmp/oldschool' && sync && notify-send 'The Old School RuneScape client has been updated!'"
Name=Update Client

[Desktop Action Cache]
StartupNotify=false
Exec='/bin/bash' -c "rm -Rf '/home/CHANGEME/runescape/oldschool/jagexcache' '/home/CHANGEME/runescape/oldschool/jagexappletviewer.preferences' '/home/CHANGEME/runescape/oldschool/jagex_cl_oldschool_LIVE.dat' '/home/CHANGEME/runescape/oldschool/random.dat' '/home/CHANGEME/runescape/oldschool/'*'.log' '/home/CHANGEME/runescape/oldschool/.java' '/tmp/oldschool' && sync && notify-send 'The Old School RuneScape cache has been cleaned.'"
Name=Cache Cleanup
sed -i 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/Old School RuneScape.desktop'

Quick Commands

Clear Cache

rm -Rf ~/'runescape/oldschool/jagexcache' ~/'runescape/oldschool/jagexappletviewer.preferences' ~/'runescape/oldschool/jagex_cl_oldschool_LIVE.dat' ~/'runescape/oldschool/random.dat' '/tmp/oldschool' && sync

Update Applet

mkdir -p ~/'runescape/oldschool' '/tmp/oldschool' && wget -O '/tmp/oldschool/OldSchool.msi' 'http://www.runescape.com/downloads/oldschool.msi' && 7z e -o'/tmp/oldschool/OldSchool-msi' -y '/tmp/oldschool/OldSchool.msi' && 7z e -o'/tmp/oldschool/rslauncher-cab' -y '/tmp/oldschool/OldSchool-msi/rslauncher.cab' && cp '/tmp/oldschool/rslauncher-cab/JagexAppletViewerJarFile'* ~/'runescape/oldschool/jagexappletviewer.jar' && wget -O ~/'runescape/oldschool/jagexappletviewer.png' 'https://lh3.googleusercontent.com/WLvp10q8TwtyVgMsYL7gW0c7NVG5vnFcRNS7oQtTnSyWbM9kgo_MS8QZa3bsylNgZDba' && rm -Rf '/tmp/oldschool' && sync

Desktop Launcher Icon

Icons

Command

wget -O ~/'runescape/oldschool/jagexappletviewer.png' 'https://lh3.googleusercontent.com/WLvp10q8TwtyVgMsYL7gW0c7NVG5vnFcRNS7oQtTnSyWbM9kgo_MS8QZa3bsylNgZDba'

Execute

Old School RuneScape

  • See Java Flags for flags that can be added to this
cd ~/'runescape/oldschool' && java -Duser.home='.' -Djava.class.path='jagexappletviewer.jar' -Dcom.jagex.config='http://oldschool.runescape.com/jav_config.ws' -Dhttps.protocols='TLSv1.2' -Dsun.java2d.opengl='false' -Dsun.java2d.uiScale='1' 'jagexappletviewer' 'oldschool'
-XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:+AlwaysPreTouch -Xms'512M' -Xmx'512M' -XX:-UseBiasedLocking -XX:+DisableExplicitGC
-XX:+UseNUMA

File Manager

Root

gio open ~/'runescape/oldschool'

Android

  • TODO
am start -n 'com.jagex.oldscape.android/.AndroidLauncher'
am force-stop 'com.jagex.oldscape.android'

macOS

  • need macOS dmg .jar
  • Need OpenJDK 13 or something in the ~/runescape folder
  • OpenJDK 9 had GPU usage and lower FPS
  • Need
    -Djava.system.class.loader='app.systemclassloader'
rm -Rf ~/'runescape/oldschool' && mkdir -p ~/'runescape/oldschool' && curl 'http://oldschool.runescape.com/downloads/jagexappletviewer.jar' -o ~/'runescape/oldschool/jagexappletviewer.jar' && curl 'https://lh3.googleusercontent.com/WLvp10q8TwtyVgMsYL7gW0c7NVG5vnFcRNS7oQtTnSyWbM9kgo_MS8QZa3bsylNgZDba' -o ~/'runescape/oldschool/jagexappletviewer.png' && sync
#!/usr/bin/env zsh

cd ~/'runescape/oldschool'
~/'runescape/jdk-13.0.1.jdk/Contents/Home/bin/java' -Djava.system.class.loader='app.systemclassloader' -Duser.home='.' -Djava.class.path='jagexappletviewer.jar' -Dcom.jagex.config='http://oldschool.runescape.com/jav_config.ws' -Dhttps.protocols='TLSv1.2' -Xms'768M' -Xmx'768M' -Dsun.java2d.opengl='false' -Dsun.java2d.uiScale='2' 'jagexappletviewer' 'oldschool'
2)
does some weird tiling thing and is unplayable
4)
the previously used direct-link jagexappletviewer.jar can be found here
5)
last tested 2019/10/22
6)
only 7z can do this properly and not 7za, cabextract, nor unar
7)
this is expected to already be installed from the Fedora prerequisite
games/old_school_runescape.1572491229.txt.gz · Last modified: 2019/10/30 23:07 by Sean Rhone