Ejemplo n.º 1
0
 void IClientPacket.ExecutePacket(AsyncConnection connection, ByteBuffer packet)
 {
     connection.SendPacket(new SMsg_0x25ACBEF4());
     connection.SendPacket(new SMsg_0x35BEBAA5());
     connection.SendPacket(new SMsg_0x04CCE2BB());
     connection.SendPacket(new SMsg_0x4BD75535());
 }
Ejemplo n.º 2
0
 public static void ClientSignatureResponse(AsyncConnection con, string objectName, uint id, string signature)
 {
     TORLog.Info("ClentSignatureResponse: " + objectName + "@" + id + " = " + signature);
     if (objectName == "OmegaServerProxyObjectName")
     {
         con.SendPacket(new SMsg_ServerSignatureResponse(0x5050, "u796", "userentrypoint13", "9cf74d45:1a6cc459:6fa57dc2"));
         con.SendPacket(new SMsg_XMLSettings());
     }
 }
Ejemplo n.º 3
0
        void IClientPacket.ExecutePacket(AsyncConnection connection, ByteBuffer packet)
        {
            uint objid = packet.ReadObjectIDRev();

            packet.ReadByte();
            uint charid = packet.ReadUInt();

            TORLog.Info("CharacterSelectRequest@" + objid + " - " + charid);
            connection.SendPacket(new SMsg_CharacterSelectResponse(objid));
            connection.SendPacket(new SMsg_CharacterCurrentMap(objid, "ord_main", "4611686019802843831"));
            connection.SendPacket(new SMsg_CharacterAreaEnter(objid));
            connection.SendPacket(new SMsg_CharacterAreaServerSpec(objid, "ord_main", "4611686019802843831"));
        }
Ejemplo n.º 4
0
        void IClientPacket.ExecutePacket(AsyncConnection connection, ByteBuffer packet)
        {
            uint objid = packet.ReadObjectIDRev();

            TORLog.Info("CharacterListRequest@" + objid);
            connection.SendPacket(new SMsg_CharacterListResponse(objid));
        }
Ejemplo n.º 5
0
        public static void RequestServerSignature(AsyncConnection con, string objectName)
        {
            uint   responseid = 0;
            string data1      = "";
            string data2      = "userentrypoint13";
            string sig        = "";

            switch (objectName)
            {
            case "timesource":
                responseid = 0x010006;
                data1      = "timesource";
                sig        = "462a9d1f";
                break;

            case "biomon":
                responseid = 0x02505e;
                data1      = "sp1u796[biomonserver:biomon]sylar501.biomon";
                sig        = "389fc8f0:9adcb7e6";
                break;

            case "worldserver":
                responseid = 0x035059;
                data1      = "sp2u796[WorldServer:worldserver]sylar501.worldserver";
                sig        = "51e518d9:92367cb3:29f2db17";
                break;

            case "gamesystemsserver":
                responseid = 0x05505a;
                data1      = "sp3u796[GameSystemsServer:gamesystemsserver]sylar501.gamesystemsserver";
                sig        = "450a2825";
                break;

            case "chatgateway":
                responseid = 0x06505c;
                data1      = "sp4u796[ChatGateway:chatgateway]sylar501.chatgateway";
                sig        = "900005df";
                break;

            case "auctionserver":
                responseid = 0x07505b;
                data1      = "sp5u796[AuctionServer:auctionserver]sylar501.auctionserver";
                sig        = "9ce839f7";
                break;

            case "mailserver":
                responseid = 0x085058;
                data1      = "sp6u796[Mail:mailserver]sylar501.mailserver";
                sig        = "9759aa23";
                break;

            case "trackingserver":
                responseid = 0x09505d;
                data1      = "sp7u796[TrackingServer:trackingserver]sylar501.trackingserver";
                sig        = "c5b320c1:8cebf93e";
                break;

            case "areaserver":
                responseid = 0x046953;
                data1      = "sp8u796[AreaServer-ord_main-4611686019802843831-1-:areaserver]sylar501.areaserver";
                sig        = "91ac5777:62060b0:29f2db17";
                break;

            default:
                TORLog.Error("Unknown server signature for " + objectName);
                return;
            }
            con.SendPacket(new SMsg_ServerSignatureResponse(responseid, data1, data2, sig));
        }
Ejemplo n.º 6
0
 public static void RequestClientSignature(AsyncConnection con, string objectName, uint id)
 {
     con.SendPacket(new SMsg_ClientSignatureRequest(objectName, id));
     TORLog.Info("RequestClientSignature: " + objectName + "@" + id);
 }
Ejemplo n.º 7
0
        void IClientPacket.ExecutePacket(AsyncConnection connection, ByteBuffer packet)
        {
            uint   id      = packet.ReadObjectIDRev();
            int    namelen = packet.ReadInt();
            string name    = "";

            for (int i = 0; i < namelen; i++)
            {
                name += (char)packet.ReadByte();
            }
            packet.ReadInt(); packet.ReadInt();
            packet.ReadInt();

            uint CHARSPEC1 = packet.ReadUInt();
            byte CHARSPEC2 = (byte)packet.ReadByte();

            packet.ReadBytes(36);

            uint   CHARSPECAPP1 = packet.ReadUInt();
            uint   CHARSPECAPP2 = packet.ReadUInt();
            uint   CHARSPECAPP3 = packet.ReadUInt();
            ushort CHARSPECAPP4 = packet.ReadUShort();

            packet.ReadByte(); // separator

            byte[] classBytes = packet.ReadBytes(8);
            Array.Reverse(classBytes);
            ulong classNodeRefId = BitConverter.ToUInt64(classBytes, 0);

            Console.WriteLine("----- Creating Character -----");
            Console.WriteLine("Name = " + name);
            Console.WriteLine("Class ID = " + classNodeRefId);
            Console.WriteLine("App1 = " + CHARSPECAPP1);
            Console.WriteLine("App2 = " + CHARSPECAPP2);
            Console.WriteLine("App3 = " + CHARSPECAPP3);
            Console.WriteLine("App4 = " + CHARSPECAPP4);

            /*byte[] known_offs = new byte[] { 84, 88, 91, 92, 95, 96, 100, 104, 107, 108, 112 };
             * long originalPositon = packet.Position;
             * byte[] thispkt = packet.ReadBytes((int)(packet.Length - packet.Position));
             * packet.Position = originalPositon;
             *
             * if (lastpacket != null)
             * {
             *
             *  for (byte i = 0; i < thispkt.Length; i++)
             *  {
             *      if (lastpacket[i] != thispkt[i] && !known_offs.Contains<byte>(i))
             *          Console.WriteLine("Data differs at " + i + " : " + lastpacket[i] + " => " + thispkt[i]);
             *  }
             * }
             *
             * lastpacket = thispkt;*/

            Character c = new Character()
            {
                //APP1 = CHARSPECAPP1,
                //APP2 = CHARSPECAPP2,
                //APP3 = CHARSPECAPP3,
                //APP4 = CHARSPECAPP4,
                AreaSpec = TORBusiness.Data.MapAreas.PCShip_XSFreighter,
                Class    = (CharacterClass)classNodeRefId,
                Level    = 44,
                Name     = name,
                spec2    = CHARSPEC1,
                spec3    = CHARSPEC2,
            };

            packet.ReadBytes(78);
            packet.ReadByte();
            byte appDataCount = (byte)packet.ReadByte();

            c.Appearance = new Tuple <byte, byte> [appDataCount];
            packet.ReadByte();
            Console.WriteLine("appearance entries: " + appDataCount);
            for (int i = 0; i < appDataCount; i++)
            {
                byte[] data = packet.ReadBytes(4);
                c.Appearance[i] = new Tuple <byte, byte>(data[0], data[3]);
                Console.WriteLine("Appearance = " + data[3]);
            }

            Program.LastCreatedChar = c;

            connection.SendPacket(new SMsg_CharacterCreateResponse(id, name, 0x07));
        }