Skip to content

Latest commit

 

History

History
42 lines (35 loc) · 1.91 KB

README.md

File metadata and controls

42 lines (35 loc) · 1.91 KB

mudclient177-deob-teavm

A minimally edited deob of mudclient177 with changes made to support TeaVM for web browser use.

Building:

Tested with OpenJDK 11.

  $ mvn clean package
  $ cd target/ && unzip mudclient-1.0-SNAPSHOT.war
  $ cd teavm/ && patch < ../../classes.patch # `data=` to `data.set()` and `WebSocket.send(Int8Array)` instead of String
  $ cd ../ && st -p 1337 # or any other webserver; go to index.html

The relevant files to host are ./target/index.html, ./target/cache/ and ./target/teavm (optionally ./target/favicon.ico).

Usage:

http://.../index.html#[members],[ip address],[port],[RSA Exponent],[RSA Modulus],[disable opcode obfuscation]

  • [members]
    • pass any value other than "members" to load a free to play configuration
  • [ip address]
    • an IPv4 address where the RSC177 compatible WebSocket server is hosted
  • [port]
    • network port number (e.g. 43594)
  • [RSA Exponent]
  • [RSA Modulus]
    • These two are used together to encrypt password, unique to each server
  • [disable opcode obfuscation]
    • Pass the value "true" to disable opcode obfuscation

Changes from vanilla:

  1. Many fields are named
  2. Three new command line arguments to help facilitate changing the client's endpoint
  3. Removed AWT, replaced with Canvas and DOM events
  4. Removed java Socket, replaced with Socket shim utilizing teavm WebSocket