Revolution Emulator [C#, R63B, Encryption Cracked, DAO, Fluent NHibernate, Lua Plugin, Mono]

Status
Not open for further replies.

Zak

Posting Freak
Mar 12, 2011
848
453
Is it that hard to packetlog your own?

Nope not at all. It is impossible to do a packet log of ALL packets in 1 revision.

Itachi has a method of extracting them from a SWF, like he did for Neutrino.

But i may as well just form a team and packet log everything i can from 1 revision.
 

Adil

DevBest CEO
May 28, 2011
1,278
716
Nope not at all. It is impossible to do a packet log of ALL packets in 1 revision.

Itachi has a method of extracting them from a SWF, like he did for Neutrino.

But i may as well just form a team and packet log everything i can from 1 revision.
Opening up the swf, and searching for certain data will do the trick.
Although you need to hit the specific file containing all the headers :(
 
  • Like
Reactions: Zak

Zak

Posting Freak
Mar 12, 2011
848
453
I do not know much, but Itachi has his own secret ways haha.
 

Zak

Posting Freak
Mar 12, 2011
848
453
-- Update

Started Deciphering my Packet logs

Takes time Doing by hand and help of packet scout [Gotta split up each part of the bytes etc]

Code:
Packet Deciphering

Policy Request

Packet 4000 [ReadRelease]

[INT] > 32
[STRING] > RELEASE63-201205022303-217664704
[INT] > 0
[INT] > 0

Packet 1523 [Unknown] 

[INT] > 0
[STRING] > Le23a78433b294ff3bec74f189f773ec10001f568a777c811c94b6cb71524fa5564432256f346

Packet 3852 [Unknown]

[INT] > 0

Packet 2685 [Unknown0

[INT] > 0


Packet 3903 [Unknown/Login?]

[INT] > 5
[STRING] > Login
[INT] > 6
[STRING] > socket
[INT] > 14
[STRING] > client.auth_ok
[INT] > 0
[INT] > 0

Packet 3836 [Unknown]

[HEADER] > 3769
[INT] > 10
[STRING] > habbo_club
[HEADER] > 3934
[HEADER] > 1746

Packet 687 [Unknown]

NO STRUCTURE/JUST INVOKED

That's just half an hours work.
 

Zak

Posting Freak
Mar 12, 2011
848
453
To scout the headers Yeah.

I used that Nova program to log the packets.
 

Joopie

Active Member
Sep 13, 2011
135
65
To scout the headers Yeah.

I used that Nova program to log the packets.

I've become a huge fan of wireshark, As you can save the logs etc.
All the data you need is in there!

No host file required, Easy shit :D
 

Zak

Posting Freak
Mar 12, 2011
848
453
Cheers.

Thanks to some Packet structures from Mikkel

SSO has now Friends done

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RevEmu.Database.NHibernate.Sql.User;
using RevEmu.Requirements.Network;
using RevEmu.Revisions.R63B.Game.Habbo;
using RevPacketHandling.Interfaces;
using RevPacketHandling.Messages;

namespace RevEmu.Revisions.R63B.Packets.Events
{
    class SsoEvent : IMessageEvent
    {
        private int Id;

        public void Invoke(Session session, PacketEvent clientMessage)
        {
            // Auth ticket
            string Sso = clientMessage.ReadString();

            // Get User
            HabboSqlData habbo = new HabboDistributor().LoginHabbo(Sso); 
            
            // Get Packet Composer
            var composerBuilder = new PacketComposer();

            Id = habbo.GetID();

            #region Friends/FriendsBar
            // Friends bar Header
            composerBuilder.Init(321);

            /* Limits */
            composerBuilder.AppendInt32(100); // Amount of MAX_FRIENDS_NORMAL?
            composerBuilder.AppendInt32(100); // Amount of MAX_FRIENDS_NORMAL
            composerBuilder.AppendInt32(200); // Amount of MAX_FRIENDS_ HC?
            composerBuilder.AppendInt32(300); // Amount of MAX_FRIENDS_VIP?

            /* Categorys */
            composerBuilder.AppendInt32(0); // Amount of Category

            /* Friend Amount */
            composerBuilder.AppendInt32(1); // Amount of Friends
            #endregion

            #region Habbo Data
            /* UserData */

            FillInInformation(321);

            // Rest of Packet Data
            composerBuilder.AppendInt32(1); // ?
            composerBuilder.AppendInt32(0); // ?
            composerBuilder.AppendBoolean(true); // TODO: do the proper variable for this
            composerBuilder.AppendBoolean(false); // Is user in a room?
            composerBuilder.AppendInt32(100); // ?
            composerBuilder.AppendInt32(0); // ?
            composerBuilder.AppendBoolean(false);  // ?
            #endregion


        }

        public void FillInInformation(short HeaderID)
        {
            HabboSqlData habbo = new HabboDistributor().GetHabbo(Id);

            PacketComposer composerBuilder = new PacketComposer(HeaderID);

            composerBuilder.AppendInt32(habbo.GetID()); // Id of User.
            composerBuilder.AppendString(habbo.GetUsername()); // Name of User.
            composerBuilder.AppendString(habbo.GetFigure()); // Figure of user.
           
            composerBuilder.AppendString(habbo.GetMotto()); // Motto of user.
            composerBuilder.AppendString("Mikkel"); // Facebook Name TODO: email settings for this.
            composerBuilder.AppendString("createdon"); // What's this?
            
        }
    }
}

I've completed the ReadRelease the main static packet.
 

Joopie

Active Member
Sep 13, 2011
135
65
Cheers.

Thanks to some Packet structures from Mikkel

SSO has now Friends done

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RevEmu.Database.NHibernate.Sql.User;
using RevEmu.Requirements.Network;
using RevEmu.Revisions.R63B.Game.Habbo;
using RevPacketHandling.Interfaces;
using RevPacketHandling.Messages;
 
namespace RevEmu.Revisions.R63B.Packets.Events
{
    class SsoEvent : IMessageEvent
    {
        private int Id;
 
        public void Invoke(Session session, PacketEvent clientMessage)
        {
            // Auth ticket
            string Sso = clientMessage.ReadString();
 
            // Get User
            HabboSqlData habbo = new HabboDistributor().LoginHabbo(Sso);
           
            // Get Packet Composer
            var composerBuilder = new PacketComposer();
 
            Id = habbo.GetID();
 
            #region Friends/FriendsBar
            // Friends bar Header
            composerBuilder.Init(321);
 
            /* Limits */
            composerBuilder.AppendInt32(100); // Amount of MAX_FRIENDS_NORMAL?
            composerBuilder.AppendInt32(100); // Amount of MAX_FRIENDS_NORMAL
            composerBuilder.AppendInt32(200); // Amount of MAX_FRIENDS_ HC?
            composerBuilder.AppendInt32(300); // Amount of MAX_FRIENDS_VIP?
 
            /* Categorys */
            composerBuilder.AppendInt32(0); // Amount of Category
 
            /* Friend Amount */
            composerBuilder.AppendInt32(1); // Amount of Friends
            #endregion
 
            #region Habbo Data
            /* UserData */
 
            FillInInformation(321);
 
            // Rest of Packet Data
            composerBuilder.AppendInt32(1); // ?
            composerBuilder.AppendInt32(0); // ?
            composerBuilder.AppendBoolean(true); // TODO: do the proper variable for this
            composerBuilder.AppendBoolean(false); // Is user in a room?
            composerBuilder.AppendInt32(100); // ?
            composerBuilder.AppendInt32(0); // ?
            composerBuilder.AppendBoolean(false);  // ?
            #endregion
 
 
        }
 
        public void FillInInformation(short HeaderID)
        {
            HabboSqlData habbo = new HabboDistributor().GetHabbo(Id);
 
            PacketComposer composerBuilder = new PacketComposer(HeaderID);
 
            composerBuilder.AppendInt32(habbo.GetID()); // Id of User.
            composerBuilder.AppendString(habbo.GetUsername()); // Name of User.
            composerBuilder.AppendString(habbo.GetFigure()); // Figure of user.
         
            composerBuilder.AppendString(habbo.GetMotto()); // Motto of user.
            composerBuilder.AppendString("Mikkel"); // Facebook Name TODO: email settings for this.
            composerBuilder.AppendString("createdon"); // What's this?
           
        }
    }
}

I've completed the ReadRelease the main static packet.

U no send the packets from `FillInInformation` ??????
 

dominic

Active Member
Dec 16, 2011
175
84
Cheers.

Thanks to some Packet structures from Mikkel

SSO has now Friends done

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RevEmu.Database.NHibernate.Sql.User;
using RevEmu.Requirements.Network;
using RevEmu.Revisions.R63B.Game.Habbo;
using RevPacketHandling.Interfaces;
using RevPacketHandling.Messages;
 
namespace RevEmu.Revisions.R63B.Packets.Events
{
    class SsoEvent : IMessageEvent
    {
        private int Id;
 
        public void Invoke(Session session, PacketEvent clientMessage)
        {
            // Auth ticket
            string Sso = clientMessage.ReadString();
 
            // Get User
            HabboSqlData habbo = new HabboDistributor().LoginHabbo(Sso);
           
            // Get Packet Composer
            var composerBuilder = new PacketComposer();
 
            Id = habbo.GetID();
 
            #region Friends/FriendsBar
            // Friends bar Header
            composerBuilder.Init(321);
 
            /* Limits */
            composerBuilder.AppendInt32(100); // Amount of MAX_FRIENDS_NORMAL?
            composerBuilder.AppendInt32(100); // Amount of MAX_FRIENDS_NORMAL
            composerBuilder.AppendInt32(200); // Amount of MAX_FRIENDS_ HC?
            composerBuilder.AppendInt32(300); // Amount of MAX_FRIENDS_VIP?
 
            /* Categorys */
            composerBuilder.AppendInt32(0); // Amount of Category
 
            /* Friend Amount */
            composerBuilder.AppendInt32(1); // Amount of Friends
            #endregion
 
            #region Habbo Data
            /* UserData */
 
            FillInInformation(321);
 
            // Rest of Packet Data
            composerBuilder.AppendInt32(1); // ?
            composerBuilder.AppendInt32(0); // ?
            composerBuilder.AppendBoolean(true); // TODO: do the proper variable for this
            composerBuilder.AppendBoolean(false); // Is user in a room?
            composerBuilder.AppendInt32(100); // ?
            composerBuilder.AppendInt32(0); // ?
            composerBuilder.AppendBoolean(false);  // ?
            #endregion
 
 
        }
 
        public void FillInInformation(short HeaderID)
        {
            HabboSqlData habbo = new HabboDistributor().GetHabbo(Id);
 
            PacketComposer composerBuilder = new PacketComposer(HeaderID);
 
            composerBuilder.AppendInt32(habbo.GetID()); // Id of User.
            composerBuilder.AppendString(habbo.GetUsername()); // Name of User.
            composerBuilder.AppendString(habbo.GetFigure()); // Figure of user.
         
            composerBuilder.AppendString(habbo.GetMotto()); // Motto of user.
            composerBuilder.AppendString("Mikkel"); // Facebook Name TODO: email settings for this.
            composerBuilder.AppendString("createdon"); // What's this?
           
        }
    }
}

I've completed the ReadRelease the main static packet.
I'm glad, that I could help you. :)
 
  • Like
Reactions: Zak

Joopie

Active Member
Sep 13, 2011
135
65
ZAKKK ZAKKKKKK ZAAAAAAAAKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK

I THINK U LIKE MY PACKET LOGGER?!?!?!?!?!?!?!?

1336420403-D6r8BS.png
 

Zak

Posting Freak
Mar 12, 2011
848
453
Can it insert multiple bytes. For example.

4 Bytes + Header
[0][0][0][0]?%

If yes, HAND THAT SON OF A BITCH OVER.
 

Zak

Posting Freak
Mar 12, 2011
848
453
Ahhhhhhhhh.

Does this have a packet scout for the newest build?
 

Zak

Posting Freak
Mar 12, 2011
848
453
Not sure at all.

Getting Matty's Habbo.DLL from Mango, which contains every Packet, actually every packet from a R63A, so then i will only need to change a few structures, and loads of header id's.

Thanks to Matty for this, also got some tips of him last for improvements on my project.
 
Status
Not open for further replies.

Users who are viewing this thread

Top