====== Information ======
* RT4 Client ((https://gitlab.com/2009scape/rt4-client))
* These notes provide a game client for 2009Scape
* Last tested commit: [[https://gitlab.com/2009scape/rt4-client/-/commit/cd081deb896dc7280da547220074375bb9150a21|cd081deb]]
===== Prerequisites =====
* [[windows:10|Windows 10 (21H2)]]
* [[windows;11_ltsc|Windows 11 (24H2)]] ((:!: 2025/04/03: Known issue with HD Fullscreen causing out-of-range resolution switch))
===== Resources =====
* [[https://cdn.2009scape.org/wiki/quest_guides/quest_guides|Quest Guides]]
* [[https://cdn.2009scape.org/wiki/quest_guides/quest_experience_by_skill|Quest Experience by Skill]]
===== Notes =====
* :!: This is for private server use
* See [[servers:windows:games:2009scape_localhost|2009Scape localhost Server]] to set-up a server
====== Dependencies ======
* https://gitlab.com/2009scape/rt4-client#instructions
===== Git =====
* https://gitforwindows.org/
* Last tested: ''Git-2.49.0-64-bit.exe''
* No components required
* Git from the command line and also from 3rd-party software
===== Java =====
* https://learn.microsoft.com/en-us/java/openjdk/download#openjdk-21
* Last tested: ''microsoft-jdk-21.0.7-windows-x64.msi''
* Entire feature install of ''Microsoft Build of OpenJDK''
==== 17 ====
* https://learn.microsoft.com/en-us/java/openjdk/download#openjdk-17
* Last tested: ''microsoft-jdk-17.0.15-windows-x64.msi''
* 2025/04/03: Required for [[#build1|building]] ((17 for [[https://gitlab.com/2009scape/rt4-client/-/blob/master/gradle/wrapper/gradle-wrapper.properties?ref_type=heads#L3|Gradle 7.4.2]] requirement; client runs 21+))
* All secondary features manually-marked unavailable ((only need the binary files present))
====== Download Source ======
* https://gitlab.com/2009scape/rt4-client/-/commits/master?ref_type=HEADS
"%ProgramFiles%\Git\bin\git.exe" clone --branch "master" --depth "1" --recurse-submodules "https://gitlab.com/2009scape/rt4-client.git" "%UserProfile%\Projects\RT4-Client\src"
====== Build ======
===== Settings =====
* ''USE_TWEENING'' = Animation Smoothing (disabling fixes certain animations)
"notepad.exe" "%UserProfile%\Projects\RT4-Client\src\client\src\main\java\rt4\GlobalConfig.java"
public static boolean USE_SHIFT_CLICK = false;
public static boolean USE_TWEENING = false;
public static boolean BILINEAR_MINIMAP = false;
public static boolean MOUSEWHEEL_ZOOM = false;
false;
===== Build =====
CD "%UserProfile%\Projects\RT4-Client\src" && SET "JAVA_HOME=%ProgramFiles%\Microsoft\jdk-17.0.15.6-hotspot" && "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "clean" --no-daemon
CD "%UserProfile%\Projects\RT4-Client\src" && SET "JAVA_HOME=%ProgramFiles%\Microsoft\jdk-17.0.15.6-hotspot" && "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "jar" --no-daemon
====== Settings ======
* Last commit: [[https://gitlab.com/2009scape/rt4-client/-/commit/4377d4958e1ccc9b97c6c99b9e2a9df8dfbae5e5|September 25, 2022]] ''4377d495''
* [[https://gitlab.com/2009scape/rt4-client/-/commits/master/client/config.json?ref_type=heads|New commits check]]
* [[https://gitlab.com/2009scape/rt4-client/-/blob/master/client/config.json?ref_type=heads|Upstream client/config.json]] ([[https://gitlab.com/2009scape/rt4-client/-/raw/master/client/config.json?ref_type=heads|raw]])
MKDIR "%UserProfile%\Projects\RT4-Client\conf"
"notepad.exe" "%UserProfile%\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 ======
****
MKDIR "%UserProfile%\Projects\RT4-Client\scripts"
===== Client Start =====
"notepad.exe" "%UserProfile%\Projects\RT4-Client\scripts\client-start.bat"
@echo off
CD "%UserProfile%\Projects\RT4-Client\src\client"
START "" "javaw.exe" -Dsun.java2d.uiScale="1" --add-exports="java.desktop/sun.awt=ALL-UNNAMED" -jar "%UserProfile%\Projects\RT4-Client\src\client\build\libs\client-1.0.0.jar" --config "%UserProfile%\Projects\RT4-Client\conf\localhost.json"
:: End
"%UserProfile%\Projects\RT4-Client\scripts\client-start.bat"
==== High DPI ====
"notepad.exe" "%UserProfile%\Projects\RT4-Client\scripts\client-hidpi-start.bat"
@echo off
CD "%UserProfile%\Projects\RT4-Client\src\client"
START "" "javaw.exe" -Dsun.java2d.uiScale="2" --add-exports="java.desktop/sun.awt=ALL-UNNAMED" -jar "%UserProfile%\Projects\RT4-Client\src\client\build\libs\client-1.0.0.jar" --config "%UserProfile%\Projects\RT4-Client\conf\localhost.json"
:: End
"%UserProfile%\Projects\RT4-Client\scripts\client-hidpi-start.bat"
===== Client Update =====
"notepad.exe" "%UserProfile%\Projects\RT4-Client\scripts\client-update.bat"
@echo off
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\RT4-Client\src" reset --hard
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\RT4-Client\src" pull origin "master" --rebase
"notepad.exe" "%UserProfile%\Projects\RT4-Client\src\client\src\main\java\rt4\GlobalConfig.java"
CD "%UserProfile%\Projects\RT4-Client\src"
SET "JAVA_HOME=%ProgramFiles%\Microsoft\jdk-17.0.15.6-hotspot"
CALL "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "clean" --no-daemon
CALL "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "jar" --no-daemon
:: End
"%UserProfile%\Projects\RT4-Client\scripts\client-update.bat"
====== Launcher Shortcuts ======
===== Icon =====
* Convert source ''saradomin.png'' to ''saradomin.ico'', save to ''ext'' folder ((Windows can't use ''.png'' as icons; [[https://www.gimp.org/|GIMP]] converts easily))
* [[https://www.gimp.org/downloads/|GIMP]]
* ''Ctrl-Shift-E'' (Export As)
MKDIR "%UserProfile%\Projects\RT4-Client\ext"
"%LocalAppData%\Programs\GIMP 3\bin\gimp-3.exe" "%UserProfile%\Projects\RT4-Client\src\client\src\main\resources\saradomin.png"
..\..\..\..\..\ext\saradomin.ico
===== Desktop =====
* Right-click Desktop -> New -> Shortcut
==== Client ====
"%UserProfile%\Projects\RT4-Client\scripts\client-start.bat"
2009Scape
"%UserProfile%\Projects\RT4-Client\ext\saradomin.ico"
==== High DPI ====
"%UserProfile%\Projects\RT4-Client\scripts\client-hidpi-start.bat"
2009Scape (HiDPI)
"%UserProfile%\Projects\RT4-Client\ext\saradomin.ico"
===== Start Menu =====
* Right-click -> New -> Shortcut
MKDIR "%AppData%\Microsoft\Windows\Start Menu\Programs\2009Scape"
"explorer.exe" "%AppData%\Microsoft\Windows\Start Menu\Programs\2009Scape"
==== Client ====
"%UserProfile%\Projects\RT4-Client\scripts\client-start.bat"
2009Scape (localhost)
"%UserProfile%\Projects\RT4-Client\ext\saradomin.ico"
==== High DPI ====
"%UserProfile%\Projects\RT4-Client\scripts\client-hidpi-start.bat"
2009Scape (HiDPI)
"%UserProfile%\Projects\RT4-Client\ext\saradomin.ico"
==== Update ====
"%UserProfile%\Projects\RT4-Client\scripts\client-update.bat"
Client Updater
==== Commits Check ====
"https://gitlab.com/2009scape/rt4-client/-/commits/master?ref_type=HEADS"
Updates Check (Client)
==== Install Notes ====
"https://wiki.realmofespionage.xyz/games;windows;rt4_client_runescape_530"
Install Notes (Client)
====== Quick Commands ======
===== Execute =====
****
CD "%UserProfile%\Projects\RT4-Client\src\client" && "java.exe" -Dsun.java2d.uiScale="1" --add-exports="java.desktop/sun.awt=ALL-UNNAMED" -jar "%UserProfile%\Projects\RT4-Client\src\client\build\libs\client-1.0.0.jar" --config "%UserProfile%\Projects\RT4-Client\conf\localhost.json"
==== High DPI ====
****
CD "%UserProfile%\Projects\RT4-Client\src\client" && "java.exe" -Dsun.java2d.uiScale="2" --add-exports="java.desktop/sun.awt=ALL-UNNAMED" -jar "%UserProfile%\Projects\RT4-Client\src\client\build\libs\client-1.0.0.jar" --config "%UserProfile%\Projects\RT4-Client\conf\localhost.json"
==== Java 17 ====
****
CD "%UserProfile%\Projects\RT4-Client\src\client" && "%ProgramFiles%\Microsoft\jdk-17.0.15.6-hotspot\bin\java.exe" -XX:+"UseSerialGC" -Xms"2G" -Xmx"2G" -Dsun.java2d.uiScale="1" --add-exports="java.desktop/sun.awt=ALL-UNNAMED" -jar "%UserProfile%\Projects\RT4-Client\src\client\build\libs\client-1.0.0.jar" --config "%UserProfile%\Projects\RT4-Client\conf\localhost.json"
==== Flags ====
****
-DclientFps="120"
===== Update =====
* https://gitlab.com/2009scape/rt4-client/-/commits/master?ref_type=HEADS
"%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\RT4-Client\src" reset --hard && "%ProgramFiles%\Git\bin\git.exe" -C "%UserProfile%\Projects\RT4-Client\src" pull origin "master" --rebase
"notepad.exe" "%UserProfile%\Projects\RT4-Client\src\client\src\main\java\rt4\GlobalConfig.java"
CD "%UserProfile%\Projects\RT4-Client\src" && SET "JAVA_HOME=%ProgramFiles%\Microsoft\jdk-17.0.15.6-hotspot" && "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "clean" --no-daemon && "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "jar" --no-daemon
===== gradlew =====
* Lists available ''gradlew'' commands
* ''tasks --all'' for more Tasks
* ''gradlew.bat --stop'' to stop Gradle daemons in-lieu of ''--no-daemon''
CD "%UserProfile%\Projects\RT4-Client\src" && SET "JAVA_HOME=%ProgramFiles%\Microsoft\jdk-17.0.15.6-hotspot" && "%UserProfile%\Projects\RT4-Client\src\gradlew.bat" "tasks" --no-daemon
===== File Manager =====
==== Root ====
****
"explorer.exe" "%UserProfile%\Projects\RT4-Client\src"
==== Plugins ====
* [[https://gitlab.com/2009scape/rt4-client/-/tree/master/plugin-playground/src/main?ref_type=heads|Upstream Plugins]]
* [[#build1|Compiled]] with Client
* Enable by setting ''pluginsFolder'' to ''plugins'' in [[#settings|json conf]]
* [[https://gitlab.com/2009scape/rt4-client/-/blob/master/plugin-playground/src/main/kotlin/BasicInputQOL/plugin.kt?ref_type=heads|BasicInputQOL]] provides mouse-wheel control ((both zoom (hold Ctrl or Shift) **and** camera rotation movement (wheel-hold); neither are available by-default without the plugin enabled, but Bank mouse wheel scroll seemingly doesn't rely on this plugin))
"explorer.exe" "%UserProfile%\Projects\RT4-Client\src\client\plugins"