diff --git a/README.md b/README.md index b7346c3..e7976dd 100644 --- a/README.md +++ b/README.md @@ -53,9 +53,7 @@ Other Atelier 801 games have very similar structures to Transformice, and so thi - Nekodancer - Fortoresse -Dead Maze has a client verification template, however it should not be ciphered when used. Additionally it includes the bottom 16 bits of the `getTimer()` function in the data, but I don't believe that matters for our purposes. - -The rest of the games do not have client verification templates, and thus none will be traced out. +Transformice and Dead Maze are the only games that have client verification templates. And so for the others, no client verification template will be traced out. To obtain the secrets to a particular game, its name should be supplied to the `game` loader parameter. For instance, here is how you would do so using the `leak-secrets.py` script: diff --git a/src/leakers/DeadMazeLeaker.as b/src/leakers/DeadMazeLeaker.as index 1f0bb34..2409165 100644 --- a/src/leakers/DeadMazeLeaker.as +++ b/src/leakers/DeadMazeLeaker.as @@ -1,7 +1,7 @@ package leakers { public class DeadMazeLeaker extends Leaker { public function DeadMazeLeaker() { - super("http://www.deadmaze.com/alpha/deadmeat.swf", true, false); + super("http://www.deadmaze.com/alpha/deadmeat.swf", true); } } } diff --git a/src/leakers/Leaker.as b/src/leakers/Leaker.as index dbe2e06..202678f 100644 --- a/src/leakers/Leaker.as +++ b/src/leakers/Leaker.as @@ -49,14 +49,12 @@ package leakers { private var game_url: String; private var has_verification: Boolean; - private var is_verification_ciphered: Boolean; - public function Leaker(game_url: String, has_verification: Boolean = false, is_verification_ciphered: Boolean = false) { + public function Leaker(game_url: String, has_verification: Boolean = false) { super(); this.game_url = game_url; this.has_verification = has_verification; - this.is_verification_ciphered = is_verification_ciphered; } public function leak_secrets() : void { @@ -631,11 +629,9 @@ package leakers { data.readUnsignedByte(); data.readUnsignedByte(); - if (this.is_verification_ciphered) { - var key: * = key_from_name(VERIFCATION_TOKEN + "", this.packet_key_sources); + var key: * = key_from_name(VERIFCATION_TOKEN + "", this.packet_key_sources); - data = xxtea_decipher(data, key); - } + data = xxtea_decipher(data, key); var client_verification_template: * = ""; while (data.bytesAvailable) { diff --git a/src/leakers/TransformiceLeaker.as b/src/leakers/TransformiceLeaker.as index 9db4c99..567a72a 100644 --- a/src/leakers/TransformiceLeaker.as +++ b/src/leakers/TransformiceLeaker.as @@ -1,7 +1,7 @@ package leakers { public class TransformiceLeaker extends Leaker { public function TransformiceLeaker() { - super("http://www.transformice.com/Transformice.swf", true, true); + super("http://www.transformice.com/Transformice.swf", true); } } }