games:old_school_runescape
This is an old revision of the document!
Table of Contents
Information
- Old School RuneScape 1)
Prerequisites
Notes
Performance
-Dsun.java2d.opengl=trueenables Hardware-acceleration via OpenGLThis is known to be broken with Intel graphics on multiple computers 2)
There is no known configuration where
-Dsun.java2d.opengl=trueoffers a performance benefit- On macOS, using the official
.dmgto install OSRS results in the worst possible performance due to a mix of forced GPU acceleration and Retina with Java 8, and it is recommended to manually install OSRS and to use the latest OpenJDK package available instead to workaround this -Dsun.java2d.uiScaleat 2 and higher improves performance, along with lowering overall texture quality
Copyright Footer
The copyright footer is not hidden with OpenJDK 12, 13, and presumably any JRE newer than 11 if
jagexappletviewer.jarcomes fromOldSchool.msi5)The copyright footer is only hidden with
jagexappletviewer.jarfromOldSchool.dmgif-Djava.system.class.loader=app.systemclassloaderis set on both macOS and Linux hosts 6)
Install
wmctrlis used to toggle between windowed and fullscreen states
sudo dnf install java-latest-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
openglanduiScaleflags 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' -Djdk.tls.client.protocols='TLSv1.2' -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=Screen;Cache; [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.jarhas varying filesizes depending on where it's sourced from, along with different functionality depending on the host operating system 9)
Windows
- Extracts
jagexappletviewer.jarfromOldSchool.msiand 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.jarfromOldSchool.dmgand 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
runescapefolder in theUserfolder andrunescape\oldschool
if not exist %UserProfile%"\runescape\oldschool" mkdir %UserProfile%"\runescape\oldschool"
start %UserProfile%"\runescape"
Java
- Download the Windows
.zipof the latest Java package from https://jdk.java.net/ - Extract the root folder from the archive and drop it in the
runescapefolder - Folder structure should be
%UserProfile%\runescape\jdk-14 javaw.exeshould exist at%UserProfile%\runescape\jdk-14\bin\javaw.exe
jagexappletviewer.jar
- Extract it from the macOS
Oldschool.dmginstaller - 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
~/runescapefolder - 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.msi7)
only
7z can do this properly and not 7za, cabextract, nor unar8)
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
/srv/www/wiki/data/attic/games/old_school_runescape.1585046629.txt.gz · Last modified: (external edit)
