コード例 #1
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, id);
     Helper.WriteU8(s, objectType);
     Helper.WriteU32(s, objectKey);
     Helper.WriteU32(s, oasisName);
 }
コード例 #2
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());
        }
コード例 #3
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);
     }
 }
コード例 #4
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, unk1);
     Helper.WriteU32(s, unk2);
     Helper.WriteU8(s, unk3);
     Helper.WriteU8(s, unk4);
 }
コード例 #5
0
ファイル: GR5_Survey.cs プロジェクト: Aquilabot/GRPBackendWV
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mId);
     Helper.WriteU8(s, mWeight);
     Helper.WriteString(s, mSurveyTrigger);
     Helper.WriteString(s, mSurveyURL);
 }
コード例 #6
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, Id);
     Helper.WriteU8(s, AbilityUpgradeType);
     Helper.WriteU8(s, CompatibleAbilityType);
     Helper.WriteU32(s, ModifierListID);
 }
 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);
 }
コード例 #8
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);
 }
コード例 #9
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);
 }
コード例 #10
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);
 }
コード例 #11
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()));
        }
コード例 #12
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, InventoryID);
     Helper.WriteU32(s, PersonaID);
     Helper.WriteU8(s, ItemType);
     Helper.WriteU32(s, ItemID);
     Helper.WriteU32(s, OasisName);
     Helper.WriteFloat(s, IGCPrice);
     Helper.WriteFloat(s, GRCashPrice);
 }
コード例 #13
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ID);
     Helper.WriteU32(s, m_StoreItemID);
     Helper.WriteU32(s, m_AssetId);
     Helper.WriteU8(s, m_Layout);
     Helper.WriteU8(s, m_Action);
     Helper.WriteU32(s, m_OasisName);
     Helper.WriteString(s, m_Criteria);
 }
コード例 #14
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mID);
     Helper.WriteU32(s, mOasisNameID);
     Helper.WriteU32(s, mOasisDescriptionID);
     Helper.WriteU32(s, mClassRequired);
     Helper.WriteU8(s, mFlags);
     Helper.WriteU8(s, mIsLoop);
     Helper.WriteU8(s, mCategory);
     Helper.WriteU8(s, mIsAutoAccept);
 }
コード例 #15
0
ファイル: GR5_Invitee.cs プロジェクト: Aquilabot/GRPBackendWV
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, PersonaID);
     Helper.WriteString(s, PersonaName);
     Helper.WriteU8(s, PersonaStatus);
     Helper.WriteU32(s, AvatarPortraitID);
     Helper.WriteU32(s, AvatarDecoratorID);
     Helper.WriteU32(s, AvatarBackgroundColor);
     Helper.WriteU8(s, CurrentCharacterID);
     Helper.WriteU8(s, CurrentCharacterLevel);
 }
コード例 #16
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, Id);
     Helper.WriteU8(s, Type);
     Helper.WriteU8(s, Tier);
     Helper.WriteU8(s, ClassID);
     Helper.WriteU8(s, UnlockLevel);
     Helper.WriteU8(s, InsertSlots);
     Helper.WriteU32(s, AssetKey);
     Helper.WriteU32(s, ModifierListId);
 }
コード例 #17
0
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            unk1.toBuffer(m);
            Helper.WriteString(m, unk2);
            Helper.WriteU8(m, unk3);
            Helper.WriteU8(m, unk4);
            Helper.WriteU8(m, unk5);
            return(m.ToArray());
        }
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, unk1);
     Helper.WriteString(s, unk2);
     Helper.WriteU8(s, unk3);
     Helper.WriteU32(s, unk4);
     Helper.WriteU32(s, unk5);
     Helper.WriteU32(s, unk6);
     Helper.WriteU8(s, unk7);
     Helper.WriteU8(s, unk8);
 }
コード例 #19
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mRewardID);
     Helper.WriteU32(s, mRewardItem);
     Helper.WriteU8(s, mRewardType);
     Helper.WriteU8(s, mIsUniqueReward);
     Helper.WriteU32(s, mAchievementID);
     Helper.WriteU32(s, mAchievementGroupID);
     Helper.WriteU32(s, mAchievementPoints);
     Helper.WriteU32(s, mClassID);
     Helper.WriteU32(s, mClassLevel);
 }
 public void toBuffer(Stream s)
 {
     foreach (uint u in unk1)
     {
         Helper.WriteU32(s, u);
     }
     Helper.WriteU8(s, unk2);
     foreach (uint u in unk3)
     {
         Helper.WriteU32(s, u);
     }
 }
コード例 #21
0
        public override byte[] ToBuffer()
        {
            MemoryStream m = new MemoryStream();

            Helper.WriteU32(m, resultCode);
            Helper.WriteU32(m, (uint)ticketBuffer.Length);
            foreach (byte b in ticketBuffer)
            {
                Helper.WriteU8(m, b);
            }
            return(m.ToArray());
        }
コード例 #22
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mID);
     Helper.WriteU32(s, mMissionArcId);
     Helper.WriteU32(s, mMissionId);
     Helper.WriteU32(s, mOrder);
     Helper.WriteU8(s, mCompleteRequired);
     Helper.WriteU32(s, mStartTime);
     Helper.WriteU32(s, mEndTime);
     Helper.WriteU32(s, mTimeLimit);
     Helper.WriteU32(s, mSKUId);
 }
コード例 #23
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, PersonaID);
     Helper.WriteU32(s, ClassID);
     Helper.WriteU32(s, PEC);
     Helper.WriteU32(s, Level);
     Helper.WriteU32(s, UpgradePoints);
     Helper.WriteU32(s, CurrentLevelPEC);
     Helper.WriteU32(s, NextLevelPEC);
     Helper.WriteU8(s, FaceID);
     Helper.WriteU8(s, SkinToneID);
     Helper.WriteU8(s, LoadoutKitID);
 }
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, PersonaID);
     Helper.WriteU32(s, unk2);
     Helper.WriteU32(s, unk3);
     Helper.WriteU32(s, unk4);
     Helper.WriteU32(s, unk5);
     Helper.WriteU32(s, unk6);
     Helper.WriteU32(s, unk7);
     Helper.WriteU8(s, unk8);
     Helper.WriteU8(s, unk9);
     Helper.WriteU8(s, unk10);
 }
コード例 #25
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ArchetypeID);
     Helper.WriteU32(s, m_WeaponID);
     Helper.WriteFloat(s, m_InitialHealth);
     Helper.WriteFloat(s, m_InitialArmor);
     Helper.WriteU32(s, m_BankNumber);
     Helper.WriteU32(s, m_IndexInBank);
     Helper.WriteFloat(s, m_WpnDmgMultiplier);
     Helper.WriteFloat(s, m_WpnDispersionMultiplier);
     Helper.WriteFloat(s, m_WpnBloomMultiplier);
     Helper.WriteU8(s, m_WpnBurstCount);
     Helper.WriteFloat(s, m_WpnBurstDelay);
 }
コード例 #26
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, unk1);
     Helper.WriteU32(s, unk2);
     Helper.WriteFloat(s, unk3);
     Helper.WriteFloat(s, unk4);
     Helper.WriteU32(s, unk5);
     Helper.WriteU32(s, unk6);
     Helper.WriteFloat(s, unk7);
     Helper.WriteFloat(s, unk8);
     Helper.WriteFloat(s, unk9);
     Helper.WriteU8(s, unk10);
     Helper.WriteFloat(s, unk11);
 }
コード例 #27
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, m_ItemID);
     Helper.WriteU8(s, m_ItemType);
     Helper.WriteString(s, m_ItemName);
     Helper.WriteU8(s, m_DurabilityType);
     Helper.WriteBool(s, m_IsInInventory);
     Helper.WriteBool(s, m_IsSellable);
     Helper.WriteBool(s, m_IsLootable);
     Helper.WriteBool(s, m_IsRewardable);
     Helper.WriteBool(s, m_IsUnlockable);
     Helper.WriteU32(s, m_MaxItemInSlot);
     Helper.WriteU32(s, m_GearScore);
     Helper.WriteFloat(s, m_IGCValue);
     Helper.WriteU32(s, m_OasisName);
     Helper.WriteU32(s, m_OasisDesc);
 }
コード例 #28
0
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mID);
     Helper.WriteString(s, mCriteria);
     Helper.WriteU32(s, mOasisName);
     Helper.WriteU32(s, mOasisDescription);
     Helper.WriteU32(s, mOasisRequirement);
     Helper.WriteU32(s, mOasisDebrief);
     Helper.WriteU8(s, mMinLevel);
     Helper.WriteU8(s, mMaxLevel);
     Helper.WriteU8(s, mMinParty);
     Helper.WriteU8(s, mCommandoRequired);
     Helper.WriteU8(s, mReconRequired);
     Helper.WriteU8(s, mSpecialistRequired);
     Helper.WriteU8(s, mFlags);
     Helper.WriteU32(s, mAssetId);
 }
コード例 #29
0
ファイル: RMCPacket.cs プロジェクト: Aquilabot/GRPBackendWV
        public byte[] ToBuffer()
        {
            MemoryStream result = new MemoryStream();

            byte[] buff = header.ToBuffer();
            Helper.WriteU32(result, (uint)(buff.Length + 9));
            byte b = (byte)proto;

            if (isRequest)
            {
                b |= 0x80;
            }
            Helper.WriteU8(result, b);
            Helper.WriteU32(result, callID);
            Helper.WriteU32(result, methodID);
            result.Write(buff, 0, buff.Length);
            return(result.ToArray());
        }
コード例 #30
0
ファイル: GR5_Unlock.cs プロジェクト: Aquilabot/GRPBackendWV
 public void toBuffer(Stream s)
 {
     Helper.WriteU32(s, mID);
     Helper.WriteU32(s, mUnlockItem);
     Helper.WriteU8(s, mUnlockType);
     Helper.WriteU32(s, mClassID1);
     Helper.WriteU32(s, mLevel1);
     Helper.WriteU32(s, mClassID2);
     Helper.WriteU32(s, mLevel2);
     Helper.WriteU32(s, mClassID3);
     Helper.WriteU32(s, mLevel3);
     Helper.WriteU32(s, mAchievementID);
     Helper.WriteU32(s, mAchievementWallID);
     Helper.WriteU32(s, mFactionPoint1);
     Helper.WriteU32(s, mFactionPoint2);
     Helper.WriteU32(s, mFactionPoint3);
     Helper.WriteU32(s, mFactionPoint4);
     Helper.WriteU32(s, mFactionPoint5);
 }