public void HandlePlayerChangeDifficulty(Parser packet) { var type = (DifficultyChangeType)packet.ReadInt32(); WriteLine("Change Type: " + type); switch (type) { case DifficultyChangeType.PlayerDifficulty1: { var difficulty = packet.ReadByte(); WriteLine("Player Difficulty: " + difficulty); break; } case DifficultyChangeType.SpellDuration: { var duration = packet.ReadInt32(); WriteLine("Spell Duration: " + duration); break; } case DifficultyChangeType.Time: { var time = packet.ReadInt32(); WriteLine("Time: " + time); break; } case DifficultyChangeType.MapDifficulty: { var difficulty = (MapDifficulty)packet.ReadInt32(); WriteLine("Map Difficulty: " + difficulty); break; } } }
public void HandleContactList(Parser packet) { var flags = (ContactListFlag)packet.ReadInt32(); WriteLine("List Flags: " + flags); var count = packet.ReadInt32(); WriteLine("Count: " + count); for (var i = 0; i < count; i++) { var guid = packet.ReadGuid(); WriteLine("GUID: " + guid); var cflags = (ContactEntryFlag)packet.ReadInt32(); WriteLine("Flags: " + cflags); var note = packet.ReadCString(); WriteLine("Note: " + note); if (!cflags.HasFlag(ContactEntryFlag.Friend)) continue; ReadSingleContactBlock(packet, true); } }
public void HandleGetEvent(Parser packet) { WriteLine("EventID: " + packet.ReadInt32()); if (packet.GetSize() == 8) WriteLine("unk: " + packet.ReadInt32()); }
public void HandleClientChatMessage(Parser packet) { var type = (ChatMessageType)packet.ReadInt32(); WriteLine("Type: " + type); var lang = (Language)packet.ReadInt32(); WriteLine("Language: " + lang); switch (type) { case ChatMessageType.Whisper: { var to = packet.ReadCString(); WriteLine("Recipient: " + to); goto default; } case ChatMessageType.Channel: { var chan = packet.ReadCString(); WriteLine("Channel: " + chan); goto default; } default: { var msg = packet.ReadCString(); WriteLine("Message: " + msg); break; } } }
public void HandleInstanceDifficulty(Parser packet) { var diff = (MapDifficulty)packet.ReadInt32(); WriteLine("Instance Difficulty: " + diff); var unk2 = packet.ReadInt32(); WriteLine("Player Difficulty: " + unk2); }
public void ReadWorldStateBlock(Parser packet) { var fieldId = packet.ReadInt32(); WriteLine(" Field: " + fieldId); var fieldVal = packet.ReadInt32(); WriteLine(" Value: " + fieldVal); WriteLine(""); }
public void HandleGameObjectQueryResponse(Parser packet) { var entry = packet.ReadEntry(); WriteLine("Entry: " + entry.Key); if (entry.Value) return; var type = (GameObjectType)packet.ReadInt32(); WriteLine("Type: " + type); var dispId = packet.ReadInt32(); WriteLine("Display ID: " + dispId); var name = new string[4]; for (var i = 0; i < 4; i++) { name[i] = packet.ReadCString(); WriteLine("Name " + i + ": " + name[i]); } var iconName = packet.ReadCString(); WriteLine("Icon Name: " + iconName); var castCaption = packet.ReadCString(); WriteLine("Cast Caption: " + castCaption); var unkStr = packet.ReadCString(); WriteLine("Unk String: " + unkStr); var data = new int[24]; for (var i = 0; i < 24; i++) { data[i] = packet.ReadInt32(); WriteLine("Data " + i + ": " + data[i]); } var size = packet.ReadSingle(); WriteLine("Size: " + size); var qItem = new int[6]; for (var i = 0; i < 6; i++) { qItem[i] = packet.ReadInt32(); WriteLine("Quest Item " + i + ": " + qItem[i]); } //SQLStore.WriteData(SQLStore.GameObjects.GetCommand(entry.Key, type, dispId, name[0], iconName, // castCaption, unkStr, data, size, qItem)); }
public void HandleSetDifficulty(Parser packet) { var difficulty = (MapDifficulty)packet.ReadInt32(); WriteLine("Difficulty: " + difficulty); if (Packet.Direction != Direction.Server) return; var unkByte = packet.ReadInt32(); WriteLine("Unk Int32 1: " + unkByte); var inGroup = packet.ReadInt32(); WriteLine("In Group: " + inGroup); }
public void HandleInitializeFactions(Parser packet) { var flags = packet.ReadInt32(); WriteLine("Flags: 0x" + flags.ToString("X8")); for (var i = 0; i < 128; i++) { var sFlags = (FactionFlag)packet.ReadByte(); WriteLine("Faction Flags " + i + ": " + sFlags); var sStand = packet.ReadInt32(); WriteLine("Faction Standing " + i + ": " + sStand); } }
public void HandleEventInviteAlert(Parser packet) { WriteLine("EventID: " + packet.ReadInt64()); WriteLine("EventName: " + packet.ReadString()); WriteLine("EventTime: " + packet.ReadTime()); WriteLine("EventFlags: " + packet.ReadInt32()); WriteLine("EventType: " + packet.ReadInt32()); WriteLine("DungeonID: " + packet.ReadInt32()); WriteLine("unk: " + packet.ReadInt32()); WriteLine("InviteID: " + packet.ReadInt64()); WriteLine("InviteStatus: " + packet.ReadInt8()); WriteLine("Mod_Type: " + packet.ReadInt8()); WriteLine("unk: " + packet.ReadInt32()); WriteLine("Inviter_1: " + packet.ReadPackedGuid()); WriteLine("Inviter_2: " + packet.ReadPackedGuid()); }
public void HandleCommandCalendar(Parser packet) { WriteLine("unk: " + packet.ReadInt32() + "(unused)"); WriteLine("unk: " + packet.ReadInt8() + "(unused)"); WriteLine("unk: " + packet.ReadString()); packet.ReadEnum<CalendarResponseResult>("Result"); }
public void HandleClientChatMessage(Parser packet) { var type = (ChatMessageType)packet.ReadInt32(); WriteLine("Type: " + type); ReadEnum<Language>("Language"); switch (type) { case ChatMessageType.Whisper: { CString("Recipient"); goto default; } case ChatMessageType.Channel: { CString("Channel"); goto default; } default: { CString("Message"); break; } } }
//[Parser(OpCodes.SMSG_INIT_WORLD_STATES)] public void SMSG_INIT_WORLD_STATES(Parser packet) { var mapId = packet.ReadInt32(); WriteLine("Map ID: " + mapId); var zoneId = packet.ReadInt32(); WriteLine("Zone ID: " + zoneId); var areaId = packet.ReadInt32(); WriteLine("Area ID: " + areaId); var numFields = packet.ReadInt16(); WriteLine("Field Count: " + numFields); for (var i = 0; i < numFields; i++) ReadWorldStateBlock(packet); }
public void HandleGroupInvite(Parser packet) { var name = packet.ReadCString(); WriteLine("Name: " + name); var unkint = packet.ReadInt32(); WriteLine("Unk Int32: " + unkint); }
public void HandleDestructibleBuildingDamage(Parser packet) { var goGuid = packet.ReadPackedGuid(); WriteLine("GO GUID: " + goGuid); var vehGuid = packet.ReadPackedGuid(); WriteLine("Vehicle GUID: " + vehGuid); var plrGuid = packet.ReadPackedGuid(); WriteLine("Player GUID: " + plrGuid); var dmg = packet.ReadInt32(); WriteLine("Damage: " + dmg); var spellId = packet.ReadInt32(); WriteLine("Spell ID: " + spellId); }
public void HandleSetActiveVoiceChannel(Parser packet) { var chanId = packet.ReadInt32(); WriteLine("Channel ID: " + chanId); var name = packet.ReadCString(); WriteLine("Channel Name: " + name); }
public void HandleGossipPoi(Parser packet) { var flags = packet.ReadInt32(); WriteLine("Flags: 0x" + flags.ToString("X8")); Float("X"); Float("Y"); var icon = (GossipPoiIcon)packet.ReadInt32(); WriteLine("Icon: " + icon); var data = packet.ReadInt32(); WriteLine("Data: " + data); var iconName = packet.ReadCString(); WriteLine("Icon Name: " + iconName); }
public static void ReadSetInfo(Parser packet) { packet.ReadPackedGuid("SetID"); packet.ReadInt32("Index"); packet.ReadString("SetName"); packet.ReadString("SetIcon"); for (var j = 0; j < 19; j++) packet.ReadPackedGuid("Item GUID"); }
public void HandleSenddCalendar(Parser packet) { var inviteCount = packet.ReadInt32("InviteCount"); for (var i = 0; i < inviteCount; ++i) { UInt64("EventID"); UInt64("InviteID"); UInt8("InviteStats"); UInt8("Mod_Type"); UInt8("Invite_Type"); ReadPackedGuid("InvitedBy"); WriteLine(""); } var EventCount = packet.ReadInt32("EventCount"); for (var i = 0; i < EventCount; ++i) { UInt64("EventID"); CString("EventName"); UInt32("EventModFlags"); PackedTime("EventDate"); UInt32("EventFlags"); UInt32("DungeonID"); UInt64("unk"); ReadPackedGuid("InvitedBy"); WriteLine(""); } Time("CurrentUnixTime"); ReadPackedTime("CurrentPacketTime"); var InstanceResetCount = packet.ReadInt32("InstanceResetCount"); for (var i = 0; i < InstanceResetCount; ++i) { UInt32("MapID"); UInt32("Difficulty"); Time("ResetTime"); UInt64("RaidID"); WriteLine(""); } Time("BaseTime"); var RaidResetCount = packet.ReadInt32("RaidResetCount"); for (var i = 0; i < RaidResetCount; ++i) { UInt32("MapID"); Time("ResetTime"); UInt32("NegativeOffset"); WriteLine(""); } var Counter = packet.ReadInt32(); WriteLine("Counter: " + Counter + "(Never seen this larger than 0)"); }
public void AccountDataTimes(Parser packet) { Time("Time"); Byte("Unk(byte)"); int mask = packet.ReadInt32("Mask"); for (int i = 0; i < NUM_ACCOUNT_DATA_TYPES; ++i) { if ((mask & (1 << i)) != 0) packet.ReadTime(((AccountDataType)i).ToString()); } }
public void ReadSingleContactBlock(Parser packet, bool onlineCheck) { var status = (ContactStatus)packet.ReadByte(); WriteLine("Status: " + status); if (onlineCheck && status != ContactStatus.Online) return; UInt32("AreaID"); UInt32("Level"); var clss = (Class)packet.ReadInt32(); WriteLine("Class: " + clss); }
public void HandleAddEvent(Parser packet) { WriteLine("Name: " + packet.ReadString()); WriteLine("Description: " + packet.ReadString()); WriteLine("Type: " + packet.ReadInt8()); WriteLine("Repeat_Option: " + packet.ReadInt8()); WriteLine("maxSize: " + packet.ReadInt32()); WriteLine("dungeonID: " + packet.ReadInt32()); WriteLine("time: " + packet.ReadPackedTime()); WriteLine("lockoutTime: " + packet.ReadInt32()); WriteLine("flags: " + packet.ReadInt32()); var inviteCount = packet.ReadInt32("inviteCount"); WriteLine(""); WriteLine("Invited Players"); for (var i = 0; i < inviteCount; ++i) { WriteLine(" PlayerGuid: " + packet.ReadPackedGuid()); WriteLine(" inviteStatus: " + packet.ReadInt8()); WriteLine(" modType: " + packet.ReadInt8()); WriteLine(""); } }
public void HandleAddEvent(Parser packet) { CString("Name"); CString("Description"); UInt8("Type"); UInt8("Repeat_Option"); UInt32("maxSize"); UInt32("dungeonID"); ReadPackedTime("time"); UInt32("lockoutTime"); UInt32("flags"); var inviteCount = packet.ReadInt32("inviteCount"); WriteLine(""); WriteLine("Invited Players"); for (var i = 0; i < inviteCount; ++i) { ReadPackedGuid(" PlayerGuid"); UInt8(" inviteStatus"); UInt8(" modType"); WriteLine(""); } }
public void HandleGossipMenu(Parser packet) { packet.ReadInt64("Guid: "); packet.ReadCString("Gossip Text: "); packet.ReadInt32("Unk: "); packet.ReadInt32("Unk: "); var QuestAmount = packet.ReadByte(); WriteLine("Quest Amount: " + QuestAmount); for (int i = 0; i < QuestAmount; i++) { packet.ReadInt32("Quest ID: " + i); packet.ReadInt32("Unknown: " + i); packet.ReadInt32("Unknown: " + i); packet.ReadInt32("Unknown: " + i); packet.ReadByte("Unknown: " + i); packet.ReadCString("Quest Title: " + i); } }
public void HandleQuestCompleted(Parser packet) { var questId = packet.ReadInt32(); WriteLine("Quest ID: " + questId); WriteLine("Reward:"); var xp = packet.ReadInt32(); WriteLine("XP: " + xp); var money = packet.ReadInt32(); WriteLine("Money: " + money); var honor = packet.ReadInt32(); if (honor < 0) WriteLine("Honor: " + honor); var talentpoints = packet.ReadInt32(); if (talentpoints < 0) WriteLine("Talentpoints: " + talentpoints); var arenapoints = packet.ReadInt32(); if (arenapoints < 0) WriteLine("Arenapoints: " + arenapoints); }
public void HandleVoiceRosterUpdate(Parser packet) { var unk64 = packet.ReadInt64(); WriteLine("Unk Int64: " + unk64); var chanId = packet.ReadInt16(); WriteLine("Channel ID: " + chanId); var chanName = packet.ReadCString(); WriteLine("Channel Name: " + chanName); var key = Encoding.UTF8.GetString(packet.ReadBytes(16)); WriteLine("Encryption Key: " + key); var ip = packet.ReadInt32(); WriteLine("Voice Server IP: " + ip); var count = packet.ReadByte(); WriteLine("Player Count: " + count); var leaderGuid = packet.ReadGuid(); WriteLine("Leader GUID: " + leaderGuid); var leaderFlags = packet.ReadByte(); WriteLine("Leader Flags: 0x" + leaderFlags.ToString("X2")); var unk = packet.ReadByte(); WriteLine("Unk Byte 1: " + unk); for (var i = 0; i < count - 1; i++) { var guid = packet.ReadGuid(); WriteLine("Player GUID: " + guid); var idx = packet.ReadByte(); WriteLine("Index: " + idx); var flags = packet.ReadByte(); WriteLine("Flags: 0x" + flags.ToString("X2")); var unk2 = packet.ReadByte(); WriteLine("Unk Byte 2: " + unk2); } }
public void UnlearnSpell(Parser packet) { var count = packet.ReadInt32(); WriteLine("Count: " + count); for (var i = 0; i < count; i++) { var spellId = packet.ReadInt32(); WriteLine("Spell ID " + i + ": " + spellId); } }
public void ReadAuraUpdateBlock(Parser packet) { ReadByte("Slot"); var id = packet.ReadInt32(); WriteLine("Spell: " + id); if (id <= 0) return; var flags = (AuraFlag)packet.ReadByte(); WriteLine("Flags: " + flags); Byte("unk"); Byte("Level"); Byte("Charges"); if (!flags.HasFlag(AuraFlag.NotCaster)) ReadPackedGuid("Caster GUID"); if (!flags.HasFlag(AuraFlag.Duration)) return; UInt32("Max Duration"); UInt32("Duration"); }
public void HandleSetFactionStanding(Parser packet) { ReadSingle("unk(Float)"); Byte("unk(unit8)"); var amount = packet.ReadInt32(); WriteLine("Count: " + amount); for (int i = 0; i < amount; i++) { UInt32("FactionListID"); UInt32("Standing"); } }
public void HandleTutorialFlag(Parser packet) { var flag = packet.ReadInt32(); WriteLine("Flag: 0x" + flag.ToString("X8")); }