A 377 client written in Kotlin. Originally based on Promises/refactored-client-377, fully converted to Kotlin with deobfuscation and engine improvements.
Find a file
2026-05-07 16:08:09 -04:00
config chore: saner defaults for config 2026-04-02 19:16:41 -04:00
gradle/wrapper chore: update ci 2026-04-02 18:27:29 -04:00
META-INF feat: sound 2026-03-08 15:58:40 -04:00
src fix: stop dumping objects lol 2026-05-07 15:49:00 -04:00
.gitignore fix: stop dumping objects lol 2026-05-07 15:49:00 -04:00
.gitlab-ci.yml fix: package collision 2026-05-07 16:08:09 -04:00
.ignore bunch of fixes 2024-04-20 02:29:08 +02:00
build.gradle Add Kotlin Gradle plugin (migration Phase 1) 2026-04-02 21:21:28 -04:00
gradlew Add Kotlin Gradle plugin (migration Phase 1) 2026-04-02 21:21:28 -04:00
gradlew.bat chore: update ci, update sound system 2026-04-02 18:26:52 -04:00
README.md chore: fix link 2026-04-03 11:30:40 -04:00
settings.gradle Add Kotlin Gradle plugin (migration Phase 1) 2026-04-02 21:21:28 -04:00

RS377-Kt

A 377 client written in Kotlin. Originally based on Promises/refactored-client-377, fully converted to Kotlin with deobfuscation and engine improvements.


Client Config

Copy config/EXAMPLE-client-config.yaml to config/client-config.yaml and edit as needed. The config file is not tracked by git.

Running

Windows: Double-click run.bat

Linux: Run ./run.sh

macOS: Double-click run.command. If macOS blocks it with an unverified developer warning, run:

xattr -d com.apple.quarantine /path/to/run.command

RSA Login Encryption (Optional)

RSA encrypts the login block between client and server. Disabled by default — both sides must match.

In config/client-config.yaml, set the modulus from the server's mix rsa.keygen output:

rsa:
  rsaEnabled: true
  rsaPub: 65537
  rsaModulus: <decimal modulus from server>