public void toBuffer(Stream s)
 {
     foreach (uint u in unk1)
     {
         Helper.WriteU32(s, u);
     }
 }
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, id);
     Helper.WriteU32(s, xp);
     Helper.WriteU32(s, level);
     Helper.WriteU32(s, weaponClass);
 }
예제 #3
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, id);
     Helper.WriteU8(s, objectType);
     Helper.WriteU32(s, objectKey);
     Helper.WriteU32(s, oasisName);
 }
예제 #4
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mID);
     Helper.WriteU32(s, mLootID);
     Helper.WriteU32(s, mLootItemSku);
     Helper.WriteU32(s, mPercentage);
 }
예제 #5
0
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU32(m, (uint)weapons.Count);
            foreach (GR5_Weapon w in weapons)
            {
                Helper.WriteU32(m, w._listIndex);
                w.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)unk1.Count);
            foreach (Unknown1 u in unk1)
            {
                Helper.WriteU32(m, u._listIndex);
                u.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)unk2.Count);
            foreach (Unknown1 u in unk2)
            {
                Helper.WriteU32(m, u._listIndex);
                u.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)components.Count);
            foreach (GR5_Component c in components)
            {
                Helper.WriteU32(m, c._listIndex);
                c.toBuffer(m);
            }
            return(m.ToArray());
        }
예제 #6
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ID);
     Helper.WriteU32(s, m_Category);
     Helper.WriteU32(s, m_SubCategory);
     Helper.WriteU32(s, m_Flags);
     Helper.WriteU32(s, m_Level);
     Helper.WriteU32(s, m_AchievementPoints);
     Helper.WriteU32(s, m_Icon);
     Helper.WriteString(s, m_Expression);
     Helper.WriteU32(s, m_OasisNameID);
     Helper.WriteU32(s, m_OasisDescriptionID);
     Helper.WriteU32(s, m_StartDate);
     Helper.WriteU32(s, m_EndDate);
     Helper.WriteU8(s, m_MinLevel);
     Helper.WriteU8(s, m_MaxLevel);
     Helper.WriteU8(s, m_CommandoRequired);
     Helper.WriteU8(s, m_ReconRequired);
     Helper.WriteU8(s, m_SpecialistRequired);
     Helper.WriteU8(s, m_MinPartySize);
     Helper.WriteU32(s, m_AchievementGroupID);
     Helper.WriteU32(s, (uint)m_RewardIDVector.Count);
     foreach (uint u in m_RewardIDVector)
     {
         Helper.WriteU32(s, u);
     }
 }
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU32(m, count);
            return(m.ToArray());
        }
예제 #8
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mId);
     Helper.WriteU8(s, mWeight);
     Helper.WriteString(s, mSurveyTrigger);
     Helper.WriteString(s, mSurveyURL);
 }
예제 #9
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ID);
     Helper.WriteU32(s, m_SKUModifierID);
     Helper.WriteU32(s, m_TimeStart);
     Helper.WriteU32(s, m_TimeExpired);
 }
예제 #10
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, Id);
     Helper.WriteU8(s, AbilityUpgradeType);
     Helper.WriteU8(s, CompatibleAbilityType);
     Helper.WriteU32(s, ModifierListID);
 }
예제 #11
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ID);
     Helper.WriteU32(s, m_Type);
     Helper.WriteU32(s, m_TID);
     Helper.WriteU32(s, m_Value);
 }
 public void toBuffer(Stream s)
 {
     for (int i = 0; i < 4; i++)
     {
         Helper.WriteU32(s, unk1[i]);
     }
 }
예제 #13
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, unk1);
     Helper.WriteU32(s, unk2);
     Helper.WriteU8(s, unk3);
     Helper.WriteU8(s, unk4);
 }
예제 #14
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, uiId);
     Helper.WriteU32(s, uiParentId);
     Helper.WriteU32(s, uiType);
     Helper.WriteU32(s, uiValue);
 }
예제 #15
0
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU32(m, (uint)unk1.Count);
            foreach (GR5_AdContainer u in unk1)
            {
                u.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)unk2.Count);
            foreach (GR5_AdServer u in unk2)
            {
                u.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)unk3.Count);
            foreach (Unknown u in unk3)
            {
                u.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)unk4.Count);
            foreach (GR5_AdRecommender u in unk4)
            {
                u.toBuffer(m);
            }
            return(m.ToArray());
        }
예제 #16
0
        private static void SendReplyPacket(UdpClient udp, QPacket p, RMCPacket rmc, ClientInfo client, RMCPacketReply reply, bool useCompression)
        {
            QPacket np = new QPacket(p.toBuffer());

            np.flags = new List <QPacket.PACKETFLAG>()
            {
                QPacket.PACKETFLAG.FLAG_NEED_ACK
            };
            np.m_oSourceVPort      = p.m_oDestinationVPort;
            np.m_oDestinationVPort = p.m_oSourceVPort;
            np.m_uiSignature       = client.IDsend;
            np.uiSeqId++;
            MemoryStream m = new MemoryStream();

            Helper.WriteU8(m, (byte)rmc.proto);
            Helper.WriteU8(m, 0x1);
            Helper.WriteU32(m, rmc.callID);
            Helper.WriteU32(m, rmc.methodID | 0x8000);
            byte[] buff = reply.ToBuffer();
            m.Write(buff, 0, buff.Length);
            buff = m.ToArray();
            m    = new MemoryStream();
            Helper.WriteU32(m, (uint)buff.Length);
            m.Write(buff, 0, buff.Length);
            np.payload     = m.ToArray();
            np.payloadSize = (ushort)np.payload.Length;
            WriteLog("send response packet");
            Send(udp, np, client);
            WriteLog("Response Data Content : \n" + reply.ToString());
        }
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU32(m, (uint)amm_playlists.Count);
            foreach (GR5_AMM_Playlist l in amm_playlists)
            {
                l.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)amm_maps.Count);
            foreach (GR5_AMM_Map l in amm_maps)
            {
                l.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)amm_gamemodes.Count);
            foreach (GR5_AMM_GameMode l in amm_gamemodes)
            {
                l.toBuffer(m);
            }
            Helper.WriteU32(m, (uint)amm_gamedetails.Count);
            foreach (GR5_AMM_GameDetail l in amm_gamedetails)
            {
                l.toBuffer(m);
            }
            return(m.ToArray());
        }
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, weaponID);
     Helper.WriteU32(s, classTypeID);
     Helper.WriteU32(s, weaponType);
     Helper.WriteU32(s, equippableClassTypeID);
     Helper.WriteU32(s, flags);
 }
예제 #19
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ItemID);
     Helper.WriteU32(s, m_AssetKey);
     Helper.WriteU32(s, m_ModifierList);
     Helper.WriteU32(s, m_Type);
     Helper.WriteString(s, m_Name);
 }
예제 #20
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ModifierID);
     Helper.WriteU8(s, m_ModifierType);
     Helper.WriteU8(s, m_PropertyType);
     Helper.WriteU8(s, m_MethodType);
     Helper.WriteString(s, m_MethodValue);
 }
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, componentID);
     Helper.WriteU32(s, componentKey);
     Helper.WriteU8(s, componentType);
     Helper.WriteU32(s, boneStructure);
     Helper.WriteU32(s, modifierListID);
 }
예제 #22
0
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU32(m, unk1);
            Helper.WriteStringList(m, unk2);
            return(m.ToArray());
        }
        public override byte[] ToBuffer()
        {
            MemoryStream result = new MemoryStream();

            Helper.WriteU32(result, sourcePID);
            Helper.WriteU32(result, targetPID);
            return(result.ToArray());
        }
예제 #24
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, Id);
     Helper.WriteU8(s, SlotCount);
     Helper.WriteU8(s, ClassID);
     Helper.WriteU8(s, AbilityType);
     Helper.WriteU32(s, ModifierListId);
 }
예제 #25
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, Id);
     Helper.WriteU8(s, Type);
     Helper.WriteU32(s, AssetKey);
     Helper.WriteU32(s, ModifierListID);
     Helper.WriteU8(s, CharacterID);
 }
예제 #26
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, (uint)list.Count);
     foreach (GR5_AdStaticList a in list)
     {
         a.toBuffer(s);
     }
 }
예제 #27
0
        public byte[] toBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU8(m, m_oSourceVPort.toByte());
            Helper.WriteU8(m, m_oDestinationVPort.toByte());
            byte typeFlag = (byte)type;

            foreach (PACKETFLAG flag in flags)
            {
                typeFlag |= (byte)((byte)flag << 3);
            }
            Helper.WriteU8(m, typeFlag);
            Helper.WriteU8(m, m_bySessionID);
            Helper.WriteU32(m, m_uiSignature);
            Helper.WriteU16(m, uiSeqId);
            if (type == PACKETTYPE.SYN || type == PACKETTYPE.CONNECT)
            {
                Helper.WriteU32(m, m_uiConnectionSignature);
            }
            if (type == PACKETTYPE.DATA)
            {
                Helper.WriteU8(m, m_byPartNumber);
            }
            byte[] tmpPayload = payload;
            if (tmpPayload != null && tmpPayload.Length > 0)
            {
                if (usesCompression)
                {
                    uint   sizeBefore = (uint)tmpPayload.Length;
                    byte[] buff       = Helper.Compress(tmpPayload);
                    byte   count      = (byte)(sizeBefore / buff.Length);
                    if ((sizeBefore % buff.Length) != 0)
                    {
                        count++;
                    }
                    MemoryStream m2 = new MemoryStream();
                    m2.WriteByte(count);
                    m2.Write(buff, 0, buff.Length);
                    tmpPayload = m2.ToArray();
                    tmpPayload = Helper.Encrypt(Global.keyDATA, tmpPayload);
                }
                else
                {
                    MemoryStream m2 = new MemoryStream();
                    m2.WriteByte(0);
                    m2.Write(tmpPayload, 0, tmpPayload.Length);
                    tmpPayload = m2.ToArray();
                    tmpPayload = Helper.Encrypt(Global.keyDATA, tmpPayload);
                }
            }
            if (flags.Contains(PACKETFLAG.FLAG_HAS_SIZE))
            {
                Helper.WriteU16(m, (ushort)tmpPayload.Length);
            }
            m.Write(tmpPayload, 0, tmpPayload.Length);
            return(AddCheckSum(m.ToArray()));
        }
예제 #28
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, ArmorTierID);
     Helper.WriteU32(s, (uint)Inserts.Count);
     foreach (GR5_ArmorInsertSlot a in Inserts)
     {
         a.toBuffer(s);
     }
 }
예제 #29
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_MethodId);
     Helper.WriteU32(s, m_Checksum);
     Helper.WriteU32(s, m_Property);
     Helper.WriteU32(s, m_Version);
     Helper.WriteU32(s, m_Size);
     Helper.WriteU32(s, m_OriginalSize);
 }
예제 #30
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_PlayerID);
     Helper.WriteU32(s, (uint)m_StatisticVector.Count);
     foreach (GR5_InstancedStatistic i in m_StatisticVector)
     {
         i.toBuffer(s);
     }
 }