diff --git a/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj b/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
index 90fcbbe0..27a9891d 100644
--- a/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
+++ b/FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
@@ -130,6 +130,7 @@
+
diff --git a/FFXIVClassic Map Server/PacketProcessor.cs b/FFXIVClassic Map Server/PacketProcessor.cs
index da8591ec..f14e048c 100644
--- a/FFXIVClassic Map Server/PacketProcessor.cs
+++ b/FFXIVClassic Map Server/PacketProcessor.cs
@@ -178,7 +178,8 @@ namespace FFXIVClassic_Lobby_Server
case 0x0002:
subpacket.debugPrintSubPacket();
- client.queuePacket(SendMessagePacket.buildPacket(player.actorID, player.actorID, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "-------- Login Message --------\nWelcome to the 1.0 Dev Server"), true, false);
+ client.queuePacket(_0x2Packet.buildPacket(player.actorID), true, false);
+
Server.GetWorldManager().DoLogin(player.getActor());
diff --git a/FFXIVClassic Map Server/WorldManager.cs b/FFXIVClassic Map Server/WorldManager.cs
index d161efcf..1145f418 100644
--- a/FFXIVClassic Map Server/WorldManager.cs
+++ b/FFXIVClassic Map Server/WorldManager.cs
@@ -457,9 +457,7 @@ namespace FFXIVClassic_Map_Server
player.zone = zone;
zone.addActorToZone(player);
- //Send packets
- player.playerSession.queuePacket(DeleteAllActorsPacket.buildPacket(player.actorId), true, false);
- player.playerSession.queuePacket(_0x2Packet.buildPacket(player.actorId), true, false);
+ //Send packets
player.sendZoneInPackets(this, 0x1);
player.playerSession.clearInstance();
player.sendInstanceUpdate();
diff --git a/FFXIVClassic Map Server/actors/chara/player/Player.cs b/FFXIVClassic Map Server/actors/chara/player/Player.cs
index cc8264b0..40fd941b 100644
--- a/FFXIVClassic Map Server/actors/chara/player/Player.cs
+++ b/FFXIVClassic Map Server/actors/chara/player/Player.cs
@@ -482,7 +482,6 @@ namespace FFXIVClassic_Map_Server.Actors
public void sendZoneInPackets(WorldManager world, ushort spawnType)
{
queuePacket(SetMapPacket.buildPacket(actorId, zone.regionId, zone.actorId));
- // queuePacket(_0x2Packet.buildPacket(actorId));
queuePacket(SetMusicPacket.buildPacket(actorId, zone.bgmDay, 0x01));
queuePacket(SetWeatherPacket.buildPacket(actorId, SetWeatherPacket.WEATHER_CLEAR));
diff --git a/FFXIVClassic Map Server/packets/receive/_0x02ReceivePacket.cs b/FFXIVClassic Map Server/packets/receive/_0x02ReceivePacket.cs
new file mode 100644
index 00000000..b1c7cdc7
--- /dev/null
+++ b/FFXIVClassic Map Server/packets/receive/_0x02ReceivePacket.cs
@@ -0,0 +1,34 @@
+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 _0x02ReceivePacket
+ {
+ bool invalidPacket = false;
+ uint unknown;
+
+ public _0x02ReceivePacket(byte[] data)
+ {
+ using (MemoryStream mem = new MemoryStream(data))
+ {
+ using (BinaryReader binReader = new BinaryReader(mem))
+ {
+ try
+ {
+ binReader.BaseStream.Seek(0x14, SeekOrigin.Begin);
+ unknown = binReader.ReadUInt32();
+ }
+ catch (Exception)
+ {
+ invalidPacket = true;
+ }
+ }
+ }
+ }
+ }
+}