一回の_SENDALLで送られる文字列を"パケット"と呼ぶ。
パケットの先頭は以下の3Byteである必要がある。
| 1byte目 | 必ず'@' |
| 2byte目 | 送り先のPlayer番号に128を足したもの |
| 3byte目 | プロトコルのVersion*64に下記のパケットフラグを足したもの |
なお、現在のVersionは1である。
1回に送られるパケットの役割は3バイトめの下4Bitに収められたパケットフラグで決まる。
受け取った側はこのパケットフラグを見て4バイト目以降に収められたデータを解釈する必要がある。
パケットフラグ一覧は以下のとおり
| 値 | 名前 | 説明 | 引数 | 必要Version |
| 1 | OK | 要求に対し了解したことを伝える | 1 | |
| 2 | NG | 要求を拒絶することを伝える | 失敗した理由を先頭に数字1Byte+文字列 | 1 |
| 3 | Connect | 接続を要求する | 1 | |
| 4 | Disconnect | 接続の切断を要求する | 1 | |
| 5 | Ping | 通信の往復にかかる時間を測定する | 送信時の_TICKS | 1 |
| 15 | App | 通信確立後上位のプロトコルが使用している | 1 |
接続が確立していない場合はConnect以外のすべてのパケットは無視するかNGを返すかしなくてはならない。
エラー時にNGの次に来る1Byteの数字は以下のとおり。エラーコードに続く文字列は下記を参考に適当に決めること
| エラーコード(10進) | 受信したメッセージ | 意味 |
| 1 | Connect | 受信したソケットはサーバではないので接続は受けられない |
| 2 | Connect | 受信したソケットはサーバだがすでに他のPlayerと接続している |
| 3 | Connect | 受信したソケットはサーバで、かつ接続可能な状態だが気に食わないから拒否った |
| 17 | Disconnect | そもそもアンタとは接続してないから切断しろといわれても困る |
| 33 | Ping | アンタとは接続してないからPingに答えるわけには行かない |