diff --git a/FFXIVClassic Map Server/packets/receive/LangaugeCodePacket.cs b/FFXIVClassic Map Server/packets/receive/LangaugeCodePacket.cs new file mode 100644 index 00000000..021c2ca3 --- /dev/null +++ b/FFXIVClassic Map Server/packets/receive/LangaugeCodePacket.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FFXIVClassic_Map_Server.packets.receive +{ + class LangaugeCodePacket + { + public bool invalidPacket = false; + public uint languageCode; + + public LangaugeCodePacket(byte[] data) + { + using (MemoryStream mem = new MemoryStream(data)) + { + using (BinaryReader binReader = new BinaryReader(mem)) + { + try{ + binReader.ReadUInt32(); + languageCode = binReader.ReadUInt32(); + } + catch (Exception){ + invalidPacket = true; + } + } + } + } + } +} diff --git a/FFXIVClassic Map Server/packets/receive/_0x07Packet.cs b/FFXIVClassic Map Server/packets/receive/_0x07Packet.cs new file mode 100644 index 00000000..f4091f25 --- /dev/null +++ b/FFXIVClassic Map Server/packets/receive/_0x07Packet.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FFXIVClassic_Map_Server.packets.receive +{ + class _0x07Packet + { + public bool invalidPacket = false; + public uint timestamp; + public uint unknown; + + public _0x07Packet(byte[] data) + { + using (MemoryStream mem = new MemoryStream(data)) + { + using (BinaryReader binReader = new BinaryReader(mem)) + { + try{ + timestamp = binReader.ReadUInt32(); + unknown = binReader.ReadUInt32(); + } + catch (Exception){ + invalidPacket = true; + } + } + } + } + } +} diff --git a/FFXIVClassic Map Server/packets/send/_0x02Packet.cs b/FFXIVClassic Map Server/packets/send/_0x02Packet.cs new file mode 100644 index 00000000..64621176 --- /dev/null +++ b/FFXIVClassic Map Server/packets/send/_0x02Packet.cs @@ -0,0 +1,32 @@ +using FFXIVClassic_Lobby_Server.packets; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FFXIVClassic_Map_Server.packets.send +{ + class _0x02Packet + { + public const ushort OPCODE = 0x0002; + public const uint PACKET_SIZE = 0x30; + + public static SubPacket buildPacket(uint playerActorId, int val) + { + byte[] data = new byte[PACKET_SIZE - 0x20]; + + using (MemoryStream mem = new MemoryStream(data)) + { + using (BinaryWriter binWriter = new BinaryWriter(mem)) + { + binWriter.Seek(8, SeekOrigin.Begin); + binWriter.Write((UInt32)playerActorId); + } + } + + return new SubPacket(OPCODE, playerActorId, playerActorId, data); + } + } +}