Packets

Packets (also known as Client/Server Messages) are used to communicate between the server and client. MapleStory would be nothing without them, as you won't see mobs, can't get to a new map and see no other people nor NPCs, because all these things are handled on the server side.

MapleStory packets are encrypted with AES and has an other encryption over that. The AES encryption needs 2 IVs (Initializing Vectors) (one for the server messages, and one for the client messages) which are generated and sent by the server on the very first packet, which isn't encrypted. These IVs are modified when a packet is sent or received by a different function, that uses 4 defined bytes for the new IV calculation.

Server messages
Server messages are sent from the server to the client.

Server message headers
A couple notes about private servers identifying these headers:
 * Vana uses "SMSG_" as identifier (used to use "SEND_", but this has changed because of a better identification of where the packet goes to).
 * Odin uses "SEND_".

Header list
]]
 * Connection Handshake
 * Enter map
 * Show Player
 * Remove Player
 * Show NPC
 * Remove NPC
 * Guilds
 * [[Server Message: Alliances|Alliances
 * Autoban Message

Client messages
Client messages are sent from the client to the server.

Client message headers
A couple notes about private servers identifying these headers:
 * Vana uses "CMSG_" as identifier (used to use "RECV_", but this has changed because of a better identification of where the packet goes to).
 * Odin uses "RECV_".

Header list

 * Enter map
 * Use admin command
 * Player chat
 * Group chat (eg. buddy, guild and party chat)
 * Pet chat
 * Admin command log
 * Move player
 * Move mob
 * Move NPC