Phoenix/ GTE emulator code help.
Hello,
I was trying to understand all of this code , can anybody help me ?
What is for ?
Can anybody pro about this help me ?
Code:
ServerMessage Message = new ServerMessage(531u);
what is 531u for ? I'm already know what is u means and i want to know what is 531 for .
THanks :)
Re: Phoenix/ GTE emulator code help.
ServerMessage reads the incoming/outgoing messages (GTE > Communication > Headers -folder), in GTE this is;
Code:
public const int int_182 = 531;
Because GTE uses a deobfuscated source int_182 is visible, which would normally show something like Outgoing.SupportTool (if 531 is the packetID for the support/mod tool).
The ServerMessage reads the incoming packet (clicking supporttool) and shows the outgoing packet (the support tool itself, as designed inside the swf)
Hopefully I was a little bit helpful :P
Re: Phoenix/ GTE emulator code help.
Quote:
Originally Posted by
HabMoon
ServerMessage reads the incoming/outgoing messages
(GTE > Communication > Headers -folder), in GTE this is;
Code:
public const int int_182 = 531;
Because GTE uses a deobfuscated source int_182 is visible, which would normally show something like Outgoing.SupportTool (if 531 is the packetID for the support/mod tool).
The ServerMessage reads the incoming packet (clicking supporttool) and shows the outgoing packet (the support tool itself, as designed inside the swf)
Hopefully I was a little bit helpful :P
:blink: Ya , You help me a bit :)
I got some question.
First, Can I create my own packet ? (Design the box)
Second, How can I get incoming packet ? Is it possible to get incoming packet from client ?
Re: Phoenix/ GTE emulator code help.
Quote:
Originally Posted by
Stevehabbz
:blink: Ya , You help me a bit :)
I got some question.
First, Can I create my own packet ? (Design the box)
Second, How can I get incoming packet ? Is it possible to get incoming packet from client ?
Packets are usually described from the Serverside view. So incoming means from client to server. Outgoing means from server to client.
Every packet that is being send from the client to the server can be logged (Which you should enable manually).
You cannot create your own custom packets. The only thing you can do is sending a packet to the client with a certain header value (Often called identifier / header id) and a certain body (The message). The client then checks that in its own list of headers what packet you just send. Then it reads the body and then knows what to show.
In theory it is possible to modify the Habbo.swf to add custom packets and thus being able to trigger certain features by sending a custom created packet however, nobody has ever tried that.
Here is a packet that sends a alert with a certain message to the client:
Code:
this.response.start(1548);
this.response.appendString(this.message);
What this does it 'starts' a new packet.
Then it adds a string to the packet and then it sends the packet to the client.
What the client does is:
What header is it? Oh it is header 1548 then that means I must use that certain class (class can be instantiated to create a new something in this case class alert).
Because the class has its own structure it knows it should read a string.
Then when the string has been read it knows what to do, in this case show a new alert box and the message is the string we just send.
I'm not sure what parts you're willing to learn. If you could just post here I'll tell you what I know :):
Re: Phoenix/ GTE emulator code help.
Quote:
Originally Posted by
The General
Packets are usually described from the Serverside view. So incoming means from client to server. Outgoing means from server to client.
Every packet that is being send
from the client to the server can be logged (Which you should enable manually).
You cannot create your own custom packets. The only thing you can do is sending a packet to the client with a certain header value (Often called identifier / header id) and a certain body (The message). The client then checks that in its own list of headers what packet you just send. Then it reads the body and then knows what to show.
In theory it is possible to modify the Habbo.swf to add custom packets and thus being able to trigger certain features by sending a custom created packet
however, nobody has ever tried that.
Here is a packet that sends a alert with a certain message to the client:
Code:
this.response.start(1548);
this.response.appendString(this.message);
What this does it 'starts' a new packet.
Then it adds a string to the packet and then it sends the packet to the client.
What the client does is:
What header is it? Oh it is header 1548 then that means I must use that certain class (class can be instantiated to create a new something in this case class alert).
Because the class has its own structure it knows it should read a string.
Then when the string has been read it knows what to do, in this case show a new alert box and the message is the string we just send.
I'm not sure what parts you're willing to learn. If you could just post here I'll tell you what I know :):
What do you mean with class ?
Did you mean create a new class called 'alert' ?
I got many question about this. did you had skype or facebook ?
Re: Phoenix/ GTE emulator code help.
A class is something that can be instatiated to create a new object. Like a class chair. A chair has a certain color and a certain height for example. You can then create a new object from the class chair. Now every object has its own properties in this case if we instantiate two chairs we can give them their own properties (eg: a blue and a red chair).
Now every packet has its own class in the Habbo.swf in which it holds that data that is being send and received from the server. For example to property message for the class alert will be set when it is send to the client and then displays the alert box.
Code:
public class _-3Yn implements _-62S {
private var _-E8:String = "";
public function flush():Boolean{
return (true);
}
public function parse(_arg1:_-0TQ):Boolean{
this._-E8 = _arg1.readString();
return (true);
}
public function get _-4Bm():String{
return (this._-E8);
}
}
The parse function sets the property message to the value that is being read as string. Now all property names, classes, namespaces etc. have been obfuscated so it is harder for us to understand what's going on but the _-E8 property is the message property.
If you could point directly out what you want to know it would be easier for me to write it down.