Hello guys, a lot of people hate me those days, so I want to give you something, I offer here: All credits to ItachiKM and LittleJ
- #1.0 Crypto files, packet explaination.
- #2.0 Tutorials how to use this, and how to create your own Emu from scratch
- #3.0 Packetlogger (for logging the packets)
- #4.0 Packet scouter (for analyzing packets)
#1.0 Crypto files
- ServerMessage.cs
I hope I don't have to explain this, just the new serverMessage class, with the new HabboEncoding.Code:using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace INSERTYOURNAMESPACEHERE { public class ServerMessage { private static StringBuilder s; public ServerMessage(int Header) { s = new StringBuilder(); s.Append(HabboEncoding.cypherShort(Header)); } public void AppendInt32(int i) { s.Append(HabboEncoding.cypherInt(i)); } public void AppendString(string e) { s.Append(HabboEncoding.cypherShort(e.Length)); s.Append(e); } public void AppendMegaString(string e) { s.Append(HabboEncoding.cypherInt(e.Length)); s.Append(e); } public void AppendBoolean(bool b) { s.Append((char)(b ? 1 : 0)); } public void AppendBreak() { s.Append((char)255 + (char)255 + (char)255 + (char)255); } public void Append(object e) { s.Append(HabboEncoding.cypherShort(e.ToString().Length)); s.Append(e.ToString()); } public override string ToString() { StringBuilder u = new StringBuilder(); u.Append(HabboEncoding.cypherShort(0)); u.Append(HabboEncoding.cypherShort(s.Length)); u.Append(s); return u.ToString(); } } // HabboEncoding by LittleJ public static class HabboEncoding { public static string cypherShort(int v) // str len, packet len, packet header -- b64 { string t = ""; t += (char)((v >> 8) & 0xFF); t += (char)((v >> 0) & 0xFF); return t; } public static string cypherInt(int v) { string t = ""; t += (char)((v >> 24) & 0xFF); t += (char)((v >> 16) & 0xFF); t += (char)((v >> 8) & 0xFF); t += (char)((v >> 0) & 0xFF); return t; } public static int decypherInt(string v) { if ((v[0] | v[1] | v[2] | v[3]) < 0) return -1; return ((v[0] << 24) + (v[1] << 16) + (v[2] << 8) + (v[3] << 0)); } public static int decypherShort(string v) { if ((v[0] | v[1]) < 0) return -1; return ((v[0] << 8) + (v[1] << 0)); } } }
-Policy
Example of packet:Code:<?xml version="1.0" encoding="UTF-8"?> <cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLo cation="http://www.adobe.com/xml/schemas/PolicyFileSocket.xsd"> <allow-access-from domain="images.habbo.com" to-ports="993,25001-25010,38101,40001,40002,30000-30100"/> <allow-access-from domain="*.sulake.com" to-ports="993,25001-25010,38101,40001,40002,30000-30100"/> <allow-access-from domain="habbo.hs.llnwd.net" to-ports="993,25001-25010,38101,40001,40002,30000-30100"/> </cross-domain-policy>
[0][0][2][3]Ë
The 2 is the length, and the packet is 971, so the code will be:
ServerMessage Login = new ServerMessage(971);
SendMessage(Login);
More explaination soon :-)
#2 - Tutorials
How to create your own emulator:
- Sorry, made a mistake, thread will be too long, sorry, check the tutorial section in a few minutes I'll post a tutorial.
#3 - Packetlogger
Note: you must edit the host file yourself, program won't edit it for some reason.
http://www.mediafire.com/?9b5mifpmlf6fmf1
#4 - Packet scout
LittleJ Packet Scout R4 [JAVA]
The swf version (noted on thread):
RELEASE63-201111161159-434670831.







