initial commit cloning rt4 client and making a small cosmetic tweak
This commit is contained in:
commit
1c2489ce06
61
README.md
Normal file
61
README.md
Normal file
@ -0,0 +1,61 @@
|
||||
[Fork of Pazaz/RT4-Client](https://github.com/pazaz/rt4-client)
|
||||
|
||||
## Goals
|
||||
|
||||
* Identify all classes
|
||||
* Create new static classes by grouping related members
|
||||
* Identify all methods
|
||||
* Identify all fields
|
||||
* Identify all local variables
|
||||
* Remove any remaining obfuscation (possibly none left)
|
||||
* Fix poor decompiler behavior (fernflower)
|
||||
* Replace magic numbers and bitmasks with named final fields
|
||||
* Refactor code to improve behavior/readability
|
||||
* Modernize code/libraries (High DPI support, modern refresh rates, ...)
|
||||
* Support existing servers via global config flags that adjust packet behaviors
|
||||
* Organize classes into packages
|
||||
|
||||
OpenRS2 annotations are left in the source to build a deob map from, in case some of my changes aren't desirable.
|
||||
That mapping can be used to generate a new deob with everything renamed for you.
|
||||
|
||||
## Instructions
|
||||
|
||||
Build requirements:
|
||||
* Java 8+
|
||||
|
||||
Runtime requirements:
|
||||
* SD: Java 8+
|
||||
* HD on Windows, use Java 15 or lower. There is a JOGL issue on 16+ related to how they grab the WGL context from the window.
|
||||
* HD on Linux: Java 8+
|
||||
* HD on macOS: Not possible yet on latest macOS. Might work for earlier OS versions.
|
||||
|
||||
```
|
||||
git clone https://github.com/Pazaz/RT4-Client.git
|
||||
cd RT4-Client
|
||||
./gradlew run
|
||||
```
|
||||
|
||||
You will be connected to a test server automatically.
|
||||
This server is provided by 2009scape for their own internal developments.
|
||||
|
||||
## Deviations
|
||||
|
||||
Configurable:
|
||||
- Packet behaviors to make it compatible with existing servers
|
||||
- View distance in HD
|
||||
- Bilinear map filtering in HD/SD
|
||||
- Tweening enabled by default (existed in client)
|
||||
- Shift-click behavior on inventory items enabled by default (existed in client)
|
||||
|
||||
Unconfigurable:
|
||||
- JOGL was updated to 2.4.0
|
||||
- Update/render loop was decoupled to tick indepedently from each other
|
||||
- Camera panning input rewritten to use render loop timing
|
||||
- Varp array size was extended to 3500 instead of 2500
|
||||
- Mouse wheel camera movement (click middle button and move mouse)
|
||||
- Render FPS is set to your monitor's refresh rate
|
||||
|
||||
## Libraries Used
|
||||
|
||||
- JOGL/Gluegen 2.4.0rc
|
||||
- Google Gson 2.9.0
|
0
build.gradle
Normal file
0
build.gradle
Normal file
51
client/build.gradle
Normal file
51
client/build.gradle
Normal file
@ -0,0 +1,51 @@
|
||||
plugins {
|
||||
id 'java'
|
||||
id 'application'
|
||||
id 'org.jetbrains.kotlin.jvm' version '1.4.10'
|
||||
}
|
||||
|
||||
mainClassName = 'rt4.client'
|
||||
version = '1.0.0'
|
||||
|
||||
sourceCompatibility = 1.8
|
||||
targetCompatibility = 1.8
|
||||
|
||||
compileJava.options.encoding = 'UTF-8'
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
options.encoding = 'UTF-8'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly project(':deob-annotations')
|
||||
implementation project(':signlink')
|
||||
|
||||
implementation 'lib:gson'
|
||||
implementation 'lib:gluegen-rt'
|
||||
implementation 'lib:gluegen-rt-natives-windows-amd64'
|
||||
implementation 'lib:gluegen-rt-natives-windows-i586'
|
||||
implementation 'lib:gluegen-rt-natives-linux-amd64'
|
||||
implementation 'lib:gluegen-rt-natives-linux-i586'
|
||||
implementation 'lib:gluegen-rt-natives-macosx-universal'
|
||||
implementation 'lib:gluegen-rt-natives-android-aarch64'
|
||||
implementation 'lib:gluegen-rt-natives-linux-aarch64'
|
||||
|
||||
implementation 'lib:jogl-all'
|
||||
implementation 'lib:jogl-all-natives-linux-aarch64'
|
||||
implementation 'lib:jogl-all-natives-windows-amd64'
|
||||
implementation 'lib:jogl-all-natives-windows-i586'
|
||||
implementation 'lib:jogl-all-natives-linux-amd64'
|
||||
implementation 'lib:jogl-all-natives-linux-i586'
|
||||
implementation 'lib:jogl-all-natives-macosx-universal'
|
||||
implementation 'lib:jogl-all-natives-android-aarch64'
|
||||
|
||||
runtime 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10'
|
||||
}
|
||||
|
||||
jar {
|
||||
manifest {
|
||||
attributes 'Main-Class': "$mainClassName"
|
||||
}
|
||||
from { configurations.compileClasspath.collect { it.isDirectory() ? it : zipTree(it) } }
|
||||
duplicatesStrategy = DuplicatesStrategy.INCLUDE
|
||||
}
|
BIN
client/build/classes/java/main/plugin/Plugin.class
Normal file
BIN
client/build/classes/java/main/plugin/Plugin.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/PluginInfo.class
Normal file
BIN
client/build/classes/java/main/plugin/PluginInfo.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/PluginRepository.class
Normal file
BIN
client/build/classes/java/main/plugin/PluginRepository.class
Normal file
Binary file not shown.
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/API$1.class
Normal file
BIN
client/build/classes/java/main/plugin/api/API$1.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/API.class
Normal file
BIN
client/build/classes/java/main/plugin/api/API.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/FontColor.class
Normal file
BIN
client/build/classes/java/main/plugin/api/FontColor.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/FontType.class
Normal file
BIN
client/build/classes/java/main/plugin/api/FontType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/MiniMenuAction.class
Normal file
BIN
client/build/classes/java/main/plugin/api/MiniMenuAction.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/MiniMenuEntry.class
Normal file
BIN
client/build/classes/java/main/plugin/api/MiniMenuEntry.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/MiniMenuType.class
Normal file
BIN
client/build/classes/java/main/plugin/api/MiniMenuType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/Privileges.class
Normal file
BIN
client/build/classes/java/main/plugin/api/Privileges.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/SpritePNGLoader.class
Normal file
BIN
client/build/classes/java/main/plugin/api/SpritePNGLoader.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/SpritePixels.class
Normal file
BIN
client/build/classes/java/main/plugin/api/SpritePixels.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/TextModifier.class
Normal file
BIN
client/build/classes/java/main/plugin/api/TextModifier.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/plugin/api/WindowMode.class
Normal file
BIN
client/build/classes/java/main/plugin/api/WindowMode.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AbstractWorld.class
Normal file
BIN
client/build/classes/java/main/rt4/AbstractWorld.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AnimBase.class
Normal file
BIN
client/build/classes/java/main/rt4/AnimBase.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AnimFrame.class
Normal file
BIN
client/build/classes/java/main/rt4/AnimFrame.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AnimFrameset.class
Normal file
BIN
client/build/classes/java/main/rt4/AnimFrameset.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AreaSound.class
Normal file
BIN
client/build/classes/java/main/rt4/AreaSound.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AreaSoundManager.class
Normal file
BIN
client/build/classes/java/main/rt4/AreaSoundManager.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ArrayUtils.class
Normal file
BIN
client/build/classes/java/main/rt4/ArrayUtils.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AttachLocRequest.class
Normal file
BIN
client/build/classes/java/main/rt4/AttachLocRequest.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AudioChannel.class
Normal file
BIN
client/build/classes/java/main/rt4/AudioChannel.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/AudioThread.class
Normal file
BIN
client/build/classes/java/main/rt4/AudioThread.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BasType.class
Normal file
BIN
client/build/classes/java/main/rt4/BasType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BasTypeList.class
Normal file
BIN
client/build/classes/java/main/rt4/BasTypeList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Base37.class
Normal file
BIN
client/build/classes/java/main/rt4/Base37.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BrokenInputStream.class
Normal file
BIN
client/build/classes/java/main/rt4/BrokenInputStream.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BrokenOutputStream.class
Normal file
BIN
client/build/classes/java/main/rt4/BrokenOutputStream.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BrowserControl.class
Normal file
BIN
client/build/classes/java/main/rt4/BrowserControl.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Buffer.class
Normal file
BIN
client/build/classes/java/main/rt4/Buffer.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BufferedFile.class
Normal file
BIN
client/build/classes/java/main/rt4/BufferedFile.class
Normal file
Binary file not shown.
Binary file not shown.
BIN
client/build/classes/java/main/rt4/BufferedSocket.class
Normal file
BIN
client/build/classes/java/main/rt4/BufferedSocket.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ByteArray.class
Normal file
BIN
client/build/classes/java/main/rt4/ByteArray.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ByteArrayNode.class
Normal file
BIN
client/build/classes/java/main/rt4/ByteArrayNode.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ByteArrayNodeSecondary.class
Normal file
BIN
client/build/classes/java/main/rt4/ByteArrayNodeSecondary.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Bzip2DState.class
Normal file
BIN
client/build/classes/java/main/rt4/Bzip2DState.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Bzip2Decompressor.class
Normal file
BIN
client/build/classes/java/main/rt4/Bzip2Decompressor.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Cache.class
Normal file
BIN
client/build/classes/java/main/rt4/Cache.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Camera.class
Normal file
BIN
client/build/classes/java/main/rt4/Camera.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ChangeLocRequest.class
Normal file
BIN
client/build/classes/java/main/rt4/ChangeLocRequest.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/CharUtils.class
Normal file
BIN
client/build/classes/java/main/rt4/CharUtils.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Chat.class
Normal file
BIN
client/build/classes/java/main/rt4/Chat.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Cheat.class
Normal file
BIN
client/build/classes/java/main/rt4/Cheat.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ClanChat.class
Normal file
BIN
client/build/classes/java/main/rt4/ClanChat.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ClanMember.class
Normal file
BIN
client/build/classes/java/main/rt4/ClanMember.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ClientProt.class
Normal file
BIN
client/build/classes/java/main/rt4/ClientProt.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ClientScript.class
Normal file
BIN
client/build/classes/java/main/rt4/ClientScript.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ClientScriptList.class
Normal file
BIN
client/build/classes/java/main/rt4/ClientScriptList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/CollisionMap.class
Normal file
BIN
client/build/classes/java/main/rt4/CollisionMap.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ColorImageCache.class
Normal file
BIN
client/build/classes/java/main/rt4/ColorImageCache.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ColorImageCacheEntry.class
Normal file
BIN
client/build/classes/java/main/rt4/ColorImageCacheEntry.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ColorUtils.class
Normal file
BIN
client/build/classes/java/main/rt4/ColorUtils.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Component.class
Normal file
BIN
client/build/classes/java/main/rt4/Component.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/ComponentPointer.class
Normal file
BIN
client/build/classes/java/main/rt4/ComponentPointer.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/CreateManager.class
Normal file
BIN
client/build/classes/java/main/rt4/CreateManager.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Cross.class
Normal file
BIN
client/build/classes/java/main/rt4/Cross.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Cs1ScriptRunner.class
Normal file
BIN
client/build/classes/java/main/rt4/Cs1ScriptRunner.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/CursorType.class
Normal file
BIN
client/build/classes/java/main/rt4/CursorType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/CursorTypeList.class
Normal file
BIN
client/build/classes/java/main/rt4/CursorTypeList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/DateUtil.class
Normal file
BIN
client/build/classes/java/main/rt4/DateUtil.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/DeadClass.class
Normal file
BIN
client/build/classes/java/main/rt4/DeadClass.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/DelayedStateChange.class
Normal file
BIN
client/build/classes/java/main/rt4/DelayedStateChange.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/DirectByteArray.class
Normal file
BIN
client/build/classes/java/main/rt4/DirectByteArray.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/DisplayMode.class
Normal file
BIN
client/build/classes/java/main/rt4/DisplayMode.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Entity.class
Normal file
BIN
client/build/classes/java/main/rt4/Entity.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/EnumStringEntry.class
Normal file
BIN
client/build/classes/java/main/rt4/EnumStringEntry.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/EnumType.class
Normal file
BIN
client/build/classes/java/main/rt4/EnumType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/EnumTypeList.class
Normal file
BIN
client/build/classes/java/main/rt4/EnumTypeList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Environment.class
Normal file
BIN
client/build/classes/java/main/rt4/Environment.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Equipment.class
Normal file
BIN
client/build/classes/java/main/rt4/Equipment.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Find.class
Normal file
BIN
client/build/classes/java/main/rt4/Find.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Flames.class
Normal file
BIN
client/build/classes/java/main/rt4/Flames.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FloType.class
Normal file
BIN
client/build/classes/java/main/rt4/FloType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FloTypeList.class
Normal file
BIN
client/build/classes/java/main/rt4/FloTypeList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FluType.class
Normal file
BIN
client/build/classes/java/main/rt4/FluType.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FluTypeList.class
Normal file
BIN
client/build/classes/java/main/rt4/FluTypeList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FogManager.class
Normal file
BIN
client/build/classes/java/main/rt4/FogManager.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Font.class
Normal file
BIN
client/build/classes/java/main/rt4/Font.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FontMetricsList.class
Normal file
BIN
client/build/classes/java/main/rt4/FontMetricsList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/Fonts.class
Normal file
BIN
client/build/classes/java/main/rt4/Fonts.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FrameBuffer.class
Normal file
BIN
client/build/classes/java/main/rt4/FrameBuffer.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/FriendsList.class
Normal file
BIN
client/build/classes/java/main/rt4/FriendsList.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GameCanvas.class
Normal file
BIN
client/build/classes/java/main/rt4/GameCanvas.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GameShell.class
Normal file
BIN
client/build/classes/java/main/rt4/GameShell.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlAlphaSprite.class
Normal file
BIN
client/build/classes/java/main/rt4/GlAlphaSprite.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlBoundingBox.class
Normal file
BIN
client/build/classes/java/main/rt4/GlBoundingBox.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlBuffer.class
Normal file
BIN
client/build/classes/java/main/rt4/GlBuffer.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlCleaner.class
Normal file
BIN
client/build/classes/java/main/rt4/GlCleaner.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlFont.class
Normal file
BIN
client/build/classes/java/main/rt4/GlFont.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlIndexedSprite.class
Normal file
BIN
client/build/classes/java/main/rt4/GlIndexedSprite.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlModel.class
Normal file
BIN
client/build/classes/java/main/rt4/GlModel.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlModel_Class23.class
Normal file
BIN
client/build/classes/java/main/rt4/GlModel_Class23.class
Normal file
Binary file not shown.
BIN
client/build/classes/java/main/rt4/GlRaster.class
Normal file
BIN
client/build/classes/java/main/rt4/GlRaster.class
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user