games:old_school_runescape
This is an old revision of the document!
Table of Contents
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
Copyright Footer
- The copyright footer is not hidden with OpenJDK 12, 13, and presumably any JRE newer than 11 if
jagexappletviewer.jar
comes fromOldSchool.msi
5) - The copyright footer is only hidden with
jagexappletviewer.jar
fromOldSchool.dmg
if-Djava.system.class.loader=app.systemclassloader
is set on both macOS and Linux hosts 6)
Install
Dependencies
wmctrl
is used to toggle between windowed and fullscreen states
Fedora Workstation
- Last tested: 2019/11/01 with Fedora Workstation 31 and OpenJDK 13
sudo dnf install java-latest-openjdk wmctrl && sync
Ubuntu
- Last tested: 2019/10/22 with Ubuntu 19.10
- TODO: Update the OpenJDK version and test with the new applet source
sudo apt install openjdk-11-jre wmctrl && sync
openSUSE Tumbleweed
- Last tested: N/A
- TODO: Update the OpenJDK version and test with the new applet source
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.dmg' 'https://www.runescape.com/downloads/OldSchool.dmg' && 7z e -o'/tmp/oldschool/OldSchool-dmg' -y '/tmp/oldschool/OldSchool.dmg' && cp '/tmp/oldschool/OldSchool-dmg/jagexappletviewer.jar' ~/'runescape/oldschool/jagexappletviewer.jar' && cp '/tmp/oldschool/OldSchool-dmg/OSRS.icns' ~/'runescape/oldschool/OSRS.icns' && rm -Rf '/tmp/oldschool' && sync
Desktop Launcher
Old School RuneScape
- Change
opengl
anduiScale
flags as-needed
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' -Djava.system.class.loader='app.systemclassloader' -Dswing.crossplatformlaf='com.sun.java.swing.plaf.gtk.GTKLookAndFeel' -Dsun.java2d.opengl='false' -Dsun.java2d.uiScale='1' 'jagexappletviewer' 'oldschool' Type=Application StartupNotify=true Path=/home/CHANGEME/runescape/oldschool Icon=/home/CHANGEME/runescape/oldschool/OSRS.icns StartupWMClass=jagexappletviewer Actions=GL;Screen;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' -Djava.system.class.loader='app.systemclassloader' -Dswing.crossplatformlaf='com.sun.java.swing.plaf.gtk.GTKLookAndFeel' -Dsun.java2d.opengl='true' -Dsun.java2d.uiScale='1' '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 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
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'
Testing
jagexappletviewer.jar
jagexappletviewer.jar
has varying filesizes depending on where it's sourced from, along with different functionality depending on the host operating system 9)
Windows
- Extracts
jagexappletviewer.jar
fromOldSchool.msi
and requires7z
- Places it at
~/Downloads/windows-jagexappletviewer.jar
rm -Rf '/tmp/oldschool' && mkdir -p '/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'* ~/'Downloads/windows-jagexappletviewer.jar' && rm -Rf '/tmp/oldschool' && sync
macOS
- Extracts
jagexappletviewer.jar
fromOldSchool.dmg
and requires7z
- Places it at
~/Downloads/macos-jagexappletviewer.jar
rm -Rf '/tmp/oldschool' && mkdir -p '/tmp/oldschool' && wget -O '/tmp/oldschool/OldSchool.dmg' 'http://www.runescape.com/downloads/OldSchool.dmg' && 7z e -o'/tmp/oldschool/OldSchool-dmg' -y '/tmp/oldschool/OldSchool.dmg' && cp '/tmp/oldschool/OldSchool-dmg/jagexappletviewer.jar' ~/'Downloads/macos-jagexappletviewer.jar' && rm -Rf '/tmp/oldschool' && sync
Generic
- Places it at
~/Downloads/generic-jagexappletviewer.jar
wget -O ~/'Downloads/generic-jagexappletviewer.jar' 'http://oldschool.runescape.com/downloads/jagexappletviewer.jar' && sync
Android
- TODO
am start -n 'com.jagex.oldscape.android/.AndroidLauncher'
am force-stop 'com.jagex.oldscape.android'
Windows
Create Directory
- Alternatively, use Explorer to make the
runescape
folder in theUser
folder andrunescape\oldschool
if not exist %UserProfile%"\runescape\oldschool" mkdir %UserProfile%"\runescape\oldschool"
start %UserProfile%"\runescape"
Java
- Download the Windows
.zip
of the latest Java package from https://jdk.java.net/ - Extract the root folder from the archive and drop it in the
runescape
folder - Folder structure should be
%UserProfile%\runescape\jdk-14
javaw.exe
should exist at%UserProfile%\runescape\jdk-14\bin\javaw.exe
jagexappletviewer.jar
- Extract it from the macOS
Oldschool.dmg
installer - Should reside at
%UserProfile%\runescape\oldschool\jagexappletviewer.jar
Batch File
- Should reside at
%UserProfile%\runescape\osrs.cmd
- The usual command-line arguments above can be tossed in or altered as-needed
cd "jdk-"*"\bin" start javaw.exe -Djava.system.class.loader="app.systemclassloader" -Duser.home="..\..\oldschool" -Djava.class.path="..\..\oldschool\jagexappletviewer.jar" -Dcom.jagex.config="http://oldschool.runescape.com/jav_config.ws" -Dhttps.protocols="TLSv1.2" -Xms"768M" -Xmx"768M" -Dsun.java2d.uiScale="1" "jagexappletviewer" "oldschool"
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
5)
last tested 2019/10/22
6)
this flag doesn't work with the
jagexappletviewer.jar
from OldSchool.msi
7)
only
7z
can do this properly and not 7za
, cabextract
, nor unar
8)
this is expected to already be installed from the Fedora prerequisite
9)
see the copyright footer notes above
10)
no idea what this version actually is or what platform it's for
/var/www/wiki/data/attic/games/old_school_runescape.1576159735.txt.gz · Last modified: 2019/12/12 11:08 (external edit)