*** Polygonic Layer プロトコル仕様(テスト版) *** 非常にシンプルな手順で通信しています。 接続ポートを指定できる telnetクライアントなどがあれば 接続できますので、実際に試してみるとよいでしょう。 ・基本的なところ  漢字コードは ShiftJIS 、改行は LF (0x0a) です。  受け取ったデータは全てバッファ上で連結し、改行をもって  データの区切りとします(TCP的なデータの区切りは無視)。 ・接続〜入室  TCP 接続: port9000 で接続する       応答 "Welcome to Polygonic Layer!"  名前: NAMExxxx で名前を設定     応答 "NAME:OK"     ※スキップすると "userX" となる(Xは番号)  フェアリー:P3DPUT でフェアリーのP3Dデータの転送開始        これに続けてP3Dデータを全て送信する        応答 "P3DPUT:OK" ないし "P3DPUT:error"  ルーム: ROOMxxxx で入室      応答 "ROOM:now checking backlog..."      応答 ※サーバー側に ROOM名.txt があれば、それが送られてくる      応答 ※過去ログが最大で20行送られてくる      応答 "ROOM:OK" ・入室後に使用可能なコマンド  【チャット関連】    発言: TALKxxxx    参加者一覧: USER    ※USER:ST     (ユーザー情報)     USER:ED    名前変更: NAMExxxx    ルーム変更: ROOMxxxx    愛を送る: LOVEaa/aa:aa(bbb.bbb.bbb.bbb)    ※aa/aa:aa=相手の入室時刻, bbb.bbb.bbb.bbb=相手のIPアドレス     どちらも USER コマンドで調査可能    室内の発言を取得: LISTEN    ※これをしない限り誰の発言もこちらに届きません。     LISTEN:ST     (発言内容など)     LISTEN:ED  【P3D関連】    室内のフェアリーのP3D取得: P3DGET    ※以下の形でデータが送られてきます。     P3DGET:ST     (ユーザー番号)     (p3dデータの HML003 〜 HML_END まで)     ※ユーザー数だけ繰り返し     P3DGET:ED    特定のフェアリーのP3D取得: P3DGETx    ※通常のP3DGETと同じ形でデータが送られてきます。 P3DGET:ST     x(ユーザー番号)     (p3dデータの HML003 〜 HML_END まで)     P3DGET:ED    室内のフェアリーのポーズ取得: GET    ※base64っぽい形式でデータが送られてきます。     GET:ST     (下で解説している形式のデータ)     GET:ED     時刻(3)・番号(3)・座標(4*3)・間接角(3*4*パーツ数)が1行で。     時刻:3桁の10進数。1=1/40秒。999の次は0に戻る。     番号:ユーザー番号。3桁の10進数。P3DGETの時の番号に対応。     座標:4文字のbase64文字で表される24bitの符号付き整数*3。xxxxyyyyzzzz     間接角:3文字のbase64文字で表される18bitの符号無し整数*4。wwwxxxyyyzzz         0 〜 262143 = -1 〜 1 に対応(なんでこんな妙な(^^;         これが、パーツ数の分だけ並ぶ。    自フェアリーのモーション変更: MCx.y    ※x=モーションNo.     y=ループ回数     変更可能なら即時に実行されます。     変更不能なら無視されます。     応答 "MC:OK" ないし "MC:error" ・切断(入室後でも入室前でも有効)  切断: BYE で切断     応答 "BYE:logout" ・実装予定    HEIGHTxxxx でフェアリーの身長(cm)を設定    応答 "HEIGHT:OK" ないし "HEIGHT:error"    WEIGHTxxxx でフェアリーの体重(g)を設定    応答 "WEIGHT:OK" ないし "WEIGHT:error"    FNAMExxxx でフェアリーの名前を設定    応答 "FNAME:OK"    FMURLxxxx でモデルデータのURLを設定    応答 "FMURL:OK"    ※P3DPUT以外は設定しなくてもフェアリーは入室できる     (身長・体重はデフォルト値に設定)    フェアリー一覧: P3DUSER    自フェアリーのモーション登録: MSx.y    ※x=モーションNo.     y=ループ回数     登録されたモーションは順番に実行されます。