Prerequisites
Notes

This is for private server use
-
Dependencies
-
jogl was removed and eventually re-added for
15.0 2)
su -
pkg install git openjdk17 openjdk25 alsa-plugins wmctrl-fork
Download Source
cd ~ && mkdir -p ~/'Projects' && rm -Rf ~/'Projects/RT4-Client/src' && git clone --branch 'master' --depth '1' --recurse-submodules 'https://gitlab.com/2009scape/rt4-client.git' ~/'Projects/RT4-Client/src' && sync
Build
Settings
sed -i -e 's/USE_TWEENING = true/USE_TWEENING = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java' && sed -i -e 's/BILINEAR_MINIMAP = true/BILINEAR_MINIMAP = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java' && sed -i -e 's/USE_SHIFT_CLICK = true/USE_SHIFT_CLICK = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java' && sed -i -e 's/MOUSEWHEEL_ZOOM = true/MOUSEWHEEL_ZOOM = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java'
cat ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java' | grep 'public static boolean'
Build
cd ~/'Projects/RT4-Client/src' && JAVA_HOME='/usr/local/openjdk17' _JAVA_OPTIONS="--enable-native-access='ALL-UNNAMED'" ~/'Projects/RT4-Client/src/gradlew' 'clean' --no-daemon && JAVA_HOME='/usr/local/openjdk17' _JAVA_OPTIONS="--enable-native-access='ALL-UNNAMED'" ~/'Projects/RT4-Client/src/gradlew' 'jar' --no-daemon
Settings
localhost
mkdir -p ~/'Projects/RT4-Client/conf' && ee ~/'Projects/RT4-Client/conf/localhost.json'
{
"ip_management": "localhost",
"ip_address": "localhost",
"world": 1,
"server_port": 43594,
"wl_port": 43595,
"js5_port": 43595,
"mouseWheelZoom": false,
"pluginsFolder": "null"
}
Scripts
Client Start
mkdir -p ~/'Projects/RT4-Client/scripts' ~/'Projects/RT4-Client/cache' && ee ~/'Projects/RT4-Client/scripts/client-start.sh' && chmod +x ~/'Projects/RT4-Client/scripts/client-start.sh'
#!/bin/sh
cd ~/'Projects/RT4-Client/src/client'
export JAVA_HOME='/usr/local/openjdk25'
export _JAVA_OPTIONS="-Dsun.java2d.uiScale='1' --enable-native-access='ALL-UNNAMED' -Djava.net.preferIPv6Addresses='false' -Djava.io.tmpdir='$HOME/Projects/RT4-Client/cache/' -DclientHomeOverride='$HOME/Projects/RT4-Client/cache/' -Djogamp.gluegen.UseTempJarCache='false' -Djogl.disable.opengles='true' -Dsun.java2d.opengl='true'"
java -DclientFps='60' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'
# End
~/'Projects/RT4-Client/scripts/client-start.sh'
HiDPI
mkdir -p ~/'Projects/RT4-Client/scripts' ~/'Projects/RT4-Client/cache' && ee ~/'Projects/RT4-Client/scripts/client-hidpi-start.sh' && chmod +x ~/'Projects/RT4-Client/scripts/client-hidpi-start.sh'
#!/bin/sh
cd ~/'Projects/RT4-Client/src/client'
export JAVA_HOME='/usr/local/openjdk25'
export _JAVA_OPTIONS="-Dsun.java2d.uiScale='2' --enable-native-access='ALL-UNNAMED' -Djava.net.preferIPv6Addresses='false' -Djava.io.tmpdir='$HOME/Projects/RT4-Client/cache/' -DclientHomeOverride='$HOME/Projects/RT4-Client/cache/' -Djogamp.gluegen.UseTempJarCache='false' -Djogl.disable.opengles='true' -Dsun.java2d.opengl='true'"
java -DclientFps='60' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'
# End
~/'Projects/RT4-Client/scripts/client-hidpi-start.sh'
Client Update
mkdir -p ~/'Projects/RT4-Client/scripts' && ee ~/'Projects/RT4-Client/scripts/client-update.sh' && chmod +x ~/'Projects/RT4-Client/scripts/client-update.sh'
#!/bin/sh
git -C ~/'Projects/RT4-Client/src' reset --hard
git -C ~/'Projects/RT4-Client/src' pull origin 'master' --rebase
sed -i -e 's/USE_TWEENING = true/USE_TWEENING = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java'
sed -i -e 's/BILINEAR_MINIMAP = true/BILINEAR_MINIMAP = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java'
sed -i -e 's/USE_SHIFT_CLICK = true/USE_SHIFT_CLICK = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java'
sed -i -e 's/MOUSEWHEEL_ZOOM = true/MOUSEWHEEL_ZOOM = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java'
cd ~/'Projects/RT4-Client/src'
export JAVA_HOME='/usr/local/openjdk17'
~/'Projects/RT4-Client/src/gradlew' 'clean' --no-daemon
~/'Projects/RT4-Client/src/gradlew' 'jar' --no-daemon
unset 'JAVA_HOME'
notify-send -i ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' -t '3000' '2009Scape RT4 Client update complete'
# End
~/'Projects/RT4-Client/scripts/client-update.sh'
Commands
Desktop Launcher
2009Scape (localhost)
mkdir -p ~/'.local/share/applications' && ee ~/'.local/share/applications/2009Scape-localhost.desktop' && sed -i -e 's/'CHANGEME'/'$USER'/g' ~/'.local/share/applications/2009Scape-localhost.desktop' && update-desktop-database --quiet ~/'.local/share/applications'
[Desktop Entry]
Name=2009Scape
Categories=Game;
Exec='/bin/sh' -c "~/'Projects/RT4-Client/scripts/client-start.sh'"
Type=Application
StartupNotify=false
Icon=/home/CHANGEME/Projects/RT4-Client/src/client/src/main/resources/saradomin.png
Actions=HiDPI;Server;Saves;Server-Update;Client-Update;Notes;
[Desktop Action HiDPI]
Exec='/bin/sh' -c "~/'Projects/RT4-Client/scripts/client-hidpi-start.sh'"
Name=Launch in High-DPI
[Desktop Action Server]
Exec='/bin/sh' -c "xfce4-terminal --minimize -T '2009Scape [Server]' -I ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' -e ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh'"
Name=Server - Start
[Desktop Action Saves]
Exec='/bin/sh' -c "~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh'"
Name=Save Data Back-up
[Desktop Action Server-Update]
Exec='/bin/sh' -c "xfce4-terminal -T '2009Scape [Updater]' -I ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' -e ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh'"
Name=Server Update
[Desktop Action Client-Update]
Exec='/bin/sh' -c "xfce4-terminal -T 'RT4 Client [Updater]' -I ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' -e ~/'Projects/RT4-Client/scripts/client-update.sh'"
Name=Client Update
[Desktop Action Notes]
Exec='/bin/sh' -c "gio open 'https://wiki.realmofespionage.xyz/servers:bsd:games:2009scape_localhost' 'https://wiki.realmofespionage.xyz/games:bsd:rt4_client_runescape_530'"
Name=Install Notes
# End
xfce4-panel -r
TODO
wmctrl -r 'rt4-client.rt4-client' -x -e '0,0,250,780,510'
wmctrl -r 'rt4-client.rt4-client' -x -e '0,1130,250,780,510'
wmctrl -r 'rt4-client.rt4-client' -x -b 'toggle,fullscreen'