OpenNXT - RS3 919
A RS3 RSPS framework targeted at NXT, the goal is to stay up-to-date with RS3
Discord
We have a Discord server you can join! https://discord.gg/u5p4w3zjjx
Tooling
One of the goals of this project is to have all necessary tools built-in. This includes the client downloader, client and launcher patcher, cache downloaders et cetera.
Tools can be executed through the command line with the following parameters: run-tool
You can create your tools easily by creating a new class in com.opennxt.tools.impl
. Your class must extend from base class com.opennxt.tools.Tool
. Tools are registered automatically using classpath scanning.
Updating
To update OpenNXT to a new version:
- Download the latest clients using
run-tool client-downloader
- Download the latest cache using
run-tool cache-downloader
- Patch the latest clients using
run-tool client-patcher
- Update the
build
field in./data/config/server.toml
If the version you are updating to is not yet supported by OpenNXT OR you want to contribute to the project's networking-related code and implementations, it is highly recommended you also fulfil these steps:
- In
com.opennxt.net.login.LoginEncoder
, replaceRS3_MODULUS
with theold login
key printed by the patcher. - Create a new directory:
./data/prot/[new version]/
, replacing[new version]
with the server version. - Open the win64.exe client in Ghidra, and run the Ghidra NXT Auto Refactoring Script. For more information on how to install and use this tool you can visit my Rune-Server thread.
- Run the script and use the data it prints to the console to populate the files in
./data/prot/[version]/*.toml
. The tool does not printclientProtNames
. Those, you will have to do manually. - Populate the packet fields using files in the
./data/prot/[version]/[(client/server)prot]
directories
Setup
To set the project up:
-
Generate your server's RSA keys:
run-tool rsa-key-generator
-
Download the latest RS clients:
run-tool client-downloader
⚠️ Latest clients might not be compatible with this repository. Please ensure this repository version matches the version of your clients. -
Put the original launcher in:
./data/launcers/win/origina.exe
(can be found atC:\Program Files\Jagex\RuneScape Launcher\RuneScape.exe
) -
Create a configuration file
./data/config/server.toml
. Configure the following fields:hostname = "127.0.0.1" configUrl = "http://127.0.0.1/jav_config.ws?binaryType=2"
configUrl
is the URL the launcher will get thejav_config.ws
from.hostname
is the IP your server runs on -
Patch the client and launchers using
run-tool client-patcher
-
Download the latest cache using
run-tool cache-downloader
-
Wait until this framework progresses further