Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
games:old_school_runescape [2019/11/01 13:21] – Sean Rhone | games:old_school_runescape [2020/03/24 06:44] – [Performance] Sean Rhone |
---|
| |
* Old School RuneScape ((http://oldschool.runescape.com)) | * Old School RuneScape ((http://oldschool.runescape.com)) |
| |
| ===== Prerequisites ===== |
| |
| * [[distros:fedora_workstation_gnome|Fedora Workstation]] |
| |
===== Notes ===== | ===== 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 ((does some weird tiling thing and is unplayable)) and as of 2019/10/24, has significantly worse performance on a i5-4278U CPU | ==== Performance ==== |
| |
| * ''-Dsun.java2d.opengl=true'' enables Hardware-acceleration via OpenGL |
| * :!: This is known to be broken with Intel graphics on multiple computers ((does some weird tiling thing and is unplayable)) |
| * :!: There is no known configuration where ''-Dsun.java2d.opengl=true'' offers a performance benefit |
| * :!: On macOS, using the official ''.dmg'' to 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.uiScale'' at 2 and higher improves performance, along with lowering overall texture quality |
| |
==== Copyright Footer ==== | ==== Copyright Footer ==== |
| |
====== Install ====== | ====== Install ====== |
| |
===== Dependencies ===== | |
| |
* ''wmctrl'' is used to toggle between windowed and fullscreen states | * ''wmctrl'' is used to toggle between windowed and fullscreen states |
| |
==== Fedora Workstation ==== | |
| |
* ''p7zip-plugins'' is needed to extract ''jagexappletviewer.jar'' from ''OldSchool.dmg'' later ((only ''7z'' can do this properly and **not** ''7za'', ''cabextract'', nor ''unar'')) ((this is expected to already be installed from the Fedora prerequisite)) | * ''p7zip-plugins'' is needed to extract ''jagexappletviewer.jar'' from ''OldSchool.dmg'' later ((only ''7z'' can do this properly and **not** ''7za'', ''cabextract'', nor ''unar'')) ((this is expected to already be installed from the Fedora prerequisite)) |
| |
* Last tested: 2019/11/01 with Fedora Workstation 31 and OpenJDK 13 | |
| |
sudo dnf install java-latest-openjdk wmctrl && sync | sudo dnf install java-latest-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 ==== | ==== Set Default Java ==== |
**** | **** |
| |
rm -Rf ~/'runescape/oldschool' '/tmp/oldschool' && mkdir -p ~/'runescape/oldschool' '/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' ~/'runescape/oldschool/jagexappletviewer.jar' && cp '/tmp/oldschool/OldSchool-dmg/OSRS.icns' ~/'runescape/oldschool/OSRS.icns' && rm -Rf '/tmp/oldschool' && sync | 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 ====== | ====== Desktop Launcher ====== |
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! | 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 | 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='2' 'jagexappletviewer' 'oldschool' | 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 | Type=Application |
StartupNotify=true | StartupNotify=true |
Icon=/home/CHANGEME/runescape/oldschool/OSRS.icns | Icon=/home/CHANGEME/runescape/oldschool/OSRS.icns |
StartupWMClass=jagexappletviewer | StartupWMClass=jagexappletviewer |
Actions=GL;Screen;Cache; | Actions=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='2' 'jagexappletviewer' 'oldschool' | |
Name=Start with OpenGL acceleration | |
| |
[Desktop Action Screen] | [Desktop Action Screen] |
| |
gio open ~/'runescape/oldschool' | 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 ((see the [[#copyright_footer|copyright footer notes]] above)) |
| |
| === Windows === |
| |
| * Extracts ''jagexappletviewer.jar'' from ''OldSchool.msi'' and requires ''7z'' |
| * 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'' from ''OldSchool.dmg'' and requires ''7z'' |
| * 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 === |
| |
| * Downloads ''jagexappletviewer.jar'' directly with ''wget'' ((no idea what this version actually is or what platform it's for)) |
| * Places it at ''~/Downloads/generic-jagexappletviewer.jar'' |
| |
| wget -O ~/'Downloads/generic-jagexappletviewer.jar' 'http://oldschool.runescape.com/downloads/jagexappletviewer.jar' && sync |
| |
===== Android ===== | ===== Android ===== |
| |
am force-stop 'com.jagex.oldscape.android' | am force-stop 'com.jagex.oldscape.android' |
| |
| ===== Windows ===== |
| |
| ==== Create Directory ==== |
| |
| * Alternatively, use Explorer to make the ''runescape'' folder in the ''User'' folder and ''runescape\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 |
| |
| <code> |
| 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"</code> |
| |
===== macOS ===== | ===== macOS ===== |