User Tools

Site Tools


games:linux:rt4_client_runescape_530

Information

  • RT4 Client 1)
  • These notes provide a game client for 2009Scape

Prerequisites

Resources

Notes

Dependencies

sudo dnf install git java-openjdk java-17-openjdk-headless

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

Disable Tweening

sed -i 's/USE_TWEENING = true/USE_TWEENING = 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 'USE_TWEENING'

Build

cd ~/'Projects/RT4-Client/src' && JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'clean' --no-daemon && JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'jar' --no-daemon

Settings

localhost

mkdir -p ~/'Projects/RT4-Client/conf' && nano ~/'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 Update

mkdir -p ~/'Projects/RT4-Client/scripts' && nano ~/'Projects/RT4-Client/scripts/client-update.sh' && chmod +x ~/'Projects/RT4-Client/scripts/client-update.sh'
#!/bin/bash

git -C ~/'Projects/RT4-Client/src' reset --hard
git -C ~/'Projects/RT4-Client/src' pull origin 'master' --rebase

sed -i 's/USE_TWEENING = true/USE_TWEENING = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java'

cd ~/'Projects/RT4-Client/src'
JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'clean' --no-daemon
JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'jar' --no-daemon

notify-send -i ~/'Projects/RT4-Client/src/client/src/main/resources/saradomin.png' '2009Scape RT4 Client update complete'

# End

Desktop Launcher

2009Scape (localhost)

mkdir -p ~/'.local/share/applications/' ~/'Projects/RT4-Client/cache' && nano ~/'.local/share/applications/2009Scape-localhost.desktop' && sed -i '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/bash' -c "cd ~/'Projects/RT4-Client/src/client' && mesa_glthread='false' vblank_mode='3' java -Dsun.java2d.uiScale='1' --add-exports='java.desktop/sun.awt=ALL-UNNAMED' -DclientFps='140' -DclientHomeOverride=$HOME'/Projects/RT4-Client/cache/' -Djava.io.tmpdir=$HOME'/Projects/RT4-Client/cache/' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'"
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;Client-Notes;Server-Notes;

[Desktop Action HiDPI]
Exec='/bin/bash' -c "cd ~/'Projects/RT4-Client/src/client' && mesa_glthread='false' vblank_mode='3' java -Dsun.java2d.uiScale='2' --add-exports='java.desktop/sun.awt=ALL-UNNAMED' -DclientFps='140' -DclientHomeOverride=$HOME'/Projects/RT4-Client/cache/' -Djava.io.tmpdir=$HOME'/Projects/RT4-Client/cache/' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'"
Name=Client (HiDPI)

[Desktop Action Server]
Exec='/bin/bash' -c "ptyxis --standalone --title='2009Scape Server — ' -- ~/'Projects/2009Scape-Server/scripts/localhost-server-start.sh'"
Name=Launch Local Server

[Desktop Action Saves]
Exec='/bin/bash' -c "~/'Projects/2009Scape-Server/scripts/localhost-save-backup.sh'"
Name=Save Data Back-up

[Desktop Action Server-Update]
Exec='/bin/bash' -c "ptyxis --standalone --title='2009Scape Server Updater — ' -- ~/'Projects/2009Scape-Server/scripts/localhost-server-update.sh'"
Name=Update Local Server

[Desktop Action Client-Update]
Exec='/bin/bash' -c "ptyxis --standalone --title='2009Scape RT4 Client Updater — ' -- ~/'Projects/RT4-Client/scripts/client-update.sh'"
Name=Update Client

[Desktop Action Client-Notes]
StartupNotify=false
Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/games:linux:rt4_client_runescape_530'"
Name=Client Notes

[Desktop Action Server-Notes]
StartupNotify=false
Exec='/bin/bash' -c "gio open 'https://wiki.realmofespionage.xyz/servers:linux:games:2009scape_localhost'"
Name=Server Notes

# End

Quick Commands

Execute

mkdir -p ~/'Projects/RT4-Client/cache' && cd ~/'Projects/RT4-Client/src/client' && mesa_glthread='false' vblank_mode='3' java -Dsun.java2d.uiScale='1' -XX:+UseSerialGC -Xms1G -Xmx4G --add-exports='java.desktop/sun.awt=ALL-UNNAMED' -DclientFps='120' -DclientHomeOverride=$HOME'/Projects/RT4-Client/cache/' -Djava.io.tmpdir=$HOME'/Projects/RT4-Client/cache/' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'

High DPI

  • -Dsun.java2d.uiScale=2
mkdir -p ~/'Projects/RT4-Client/cache' && cd ~/'Projects/RT4-Client/src/client' && mesa_glthread='false' vblank_mode='3' java -Dsun.java2d.uiScale='2' -XX:+UseSerialGC -Xms1G -Xmx4G --add-exports='java.desktop/sun.awt=ALL-UNNAMED' -DclientFps='120' -DclientHomeOverride=$HOME'/Projects/RT4-Client/cache/' -Djava.io.tmpdir=$HOME'/Projects/RT4-Client/cache/' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'

Testing

GDK_BACKEND='x11' GDK_SCALE='2'
GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3;API-thread-offloaded-slots+API-thread-direct-slots+API-thread-num-syncs;fps'
mesa_glthread='true'
vblank_mode='0'
-DclientFps='999'

FPS

  • Uncapped/999 FPS limit
  • vblank_mode=0
  • GDK_BACKEND=x11
mkdir -p ~/'Projects/RT4-Client/cache' && cd ~/'Projects/RT4-Client/src/client' && GDK_BACKEND='x11' GALLIUM_HUD='cpu0+cpu1+cpu2+cpu3;API-thread-offloaded-slots+API-thread-direct-slots+API-thread-num-syncs;fps' mesa_glthread='false' vblank_mode='0' java -Dsun.java2d.uiScale='1' -XX:+UseSerialGC -Xms1G -Xmx4G --add-exports='java.desktop/sun.awt=ALL-UNNAMED' -DclientFps='999' -DclientHomeOverride=$HOME'/Projects/RT4-Client/cache/' -Djava.io.tmpdir=$HOME'/Projects/RT4-Client/cache/' -jar ~/'Projects/RT4-Client/src/client/build/libs/client-'*'.jar' --config ~/'Projects/RT4-Client/conf/localhost.json'

Update

git -C ~/'Projects/RT4-Client/src' reset --hard && git -C ~/'Projects/RT4-Client/src' pull origin 'master' --rebase && cd ~/'Projects/RT4-Client/src' && sed -i 's/USE_TWEENING = true/USE_TWEENING = false/g' ~/'Projects/RT4-Client/src/client/src/main/java/rt4/GlobalConfig.java' && cd ~/'Projects/RT4-Client/src' && JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'clean' --no-daemon && JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'jar' --no-daemon && cd ~ && sync
~/'Projects/RT4-Client/scripts/client-update.sh'
ptyxis --standalone --title='2009Scape RT4 Client Updater — ' -- ~/'Projects/RT4-Client/scripts/client-update.sh'

gradlew

  • Lists available gradlew commands
  • tasks --all for more Tasks
  • gradlew.bat --stop to stop Gradle daemons in-lieu of --no-daemon
cd ~/'Projects/RT4-Client/src' && JAVA_HOME='/usr/lib/jvm/jre-17-openjdk' ~/'Projects/RT4-Client/src/gradlew' 'tasks' --no-daemon

Git

git -C ~/'Projects/RT4-Client/src' fsck --full --strict
git -C ~/'Projects/RT4-Client/src' gc --aggressive --prune='all'

File Manager

Root

gio open ~/'Projects/RT4-Client/src'
2)
17 for Gradle requirement; 21 is system-wide F41
C:/www/wiki/data/pages/games/linux/rt4_client_runescape_530.txt · Last modified: by Sean Rhone