diff options
Diffstat (limited to 'doc/inter_server_packet.txt')
-rw-r--r-- | doc/inter_server_packet.txt | 152 |
1 files changed, 122 insertions, 30 deletions
diff --git a/doc/inter_server_packet.txt b/doc/inter_server_packet.txt index 253280326..de2cf0ee9 100644 --- a/doc/inter_server_packet.txt +++ b/doc/inter_server_packet.txt @@ -2,26 +2,28 @@ S map鯖=>inter鯖 R inter鯖=>map鯖 パケット長リスト -R 3800-388f - -1,-1,27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 35,-1,11,15, 34,29, 7,-1, 0, 0, 0, 0, 0, 0, 0, 0, - 10,-1,15, 0, 79,17, 7,-1, 0,-1,-1,-1, 14,67,186,-1, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 11,-1, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -S 3000-308f - -1,-1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 6,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 72, 6,52,14, 10,29, 6,-1, 34, 0, 0, 0, 0, 0, 0, 0, - -1, 6,-1, 0, 55,17, 6,-1, 14,-1,-1,-1, 14,19,186,-1, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 48,14,-1, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, +R 3800-389f + -1,-1,27, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3800- + -1, 7, 0, 0, 0, 0, 0, 0, -1,11, 0, 0, 0, 0, 0, 0, // 3810- + 35,-1,35,15, 34,29, 7,-1, 0, 0, 0, 0, 0, 0, 0, 0, // 3820- + 10,-1,15, 0, 79,19, 7,-1, 0,-1,-1,-1, 14,67,186,-1, // 3830- + 9, 9,-1, 0, 0, 0, 0, 0, 7,-1,-1,-1, 11,-1, 0, 0, // 3840- + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3850- + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3860- + 0, 0, 0, 0, 0, 0, 0, 0, -1, 7, 0, 0, 0, 0, 0, 0, // 3870- + 11,-1, 7, 3, 0, 0, 0, 0, -1, 7, 3, 0, 0, 0, 0, 0, // 3880- + 31,51,51,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3890- +S 3000-309f + -1,-1, 7, 0, -1, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3000- + 6,-1, 0, 0, 0, 0, 0, 0, 10,-1, 0, 0, 0, 0, 0, 0, // 3010- + 72, 6,52,14, 34,53, 6,-1, 34, 0, 0, 0, 0, 0, 0, 0, // 3020- + -1, 6,-1, 0, 55,19, 6,-1, 14,-1,-1,-1, 18,19,186,-1, // 3030- + 5, 9, 0, 0, 0, 0, 0, 0, 6,-1,10,10, 10, 0, 0, 0, // 3040- + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3050- + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3060- + 6, 0, 0, 0, 0, 0, 0, 0, 10,-1, 0, 0, 0, 0, 0, 0, // 3070- + 48,14,-1, 6, 0, 0, 0, 0, -1,12,-1,12, 0, 0, 0, 0, // 3080- + 31,51,51,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3090- @@ -44,6 +46,12 @@ R 3802 <src-nick>.24B <flag>.B flag=0 送信完了 flag=1 送信失敗(どのmap鯖にもそんな人いません) flag=2 送信失敗(ignoreされた) +S 3004 <len>.w <account_id>.l { <name>.32B <value>.l }.36B* + アカウント変数データ送信 +R 3804 <len>.w <account_id>.l { <name>.32B <value>.l }.36B* + アカウント変数データ通知 +S 3005 <account_id>.l + アカウント変数データ要求 S 3010 <account_id>.l 倉庫データ要求 R 3810 <len>.w <account_id>.l <storage>.?B @@ -53,6 +61,16 @@ S 3011 <len>.w <account_id>.l <storage>.?B R 3811 <account_id>.l <flag>.b 倉庫データ保存終了 flag=0 成功(現在の仕様では必ず0なので、返信を待たなくてもいい) +S 3018 <account_id>.l <guild_id>.l + ギルド倉庫データ要求 +R 3818 <len>.w <account_id>.l <guild_id>.l <storage>.?B + ギルド倉庫データ受信 + guild_id=0ならギルドが存在しないのでデータ受信失敗 +S 3019 <len>.w <account_id>.l<guild_id>.l <storage>.?B + ギルド倉庫データ送信&保存要求 +R 3819 <account_id>.l<guild_id>.l <flag>.b + ギルド倉庫データ保存終了 + flag=0 成功、flag=1 失敗(失敗の場合ギルドが存在しないことなので、返信を待たなくてもいい) S 3020 <account_id>.l <party_name>.24B <nick_name>.24B <map_name>.16B <level>.w パーティ作成要求 @@ -69,7 +87,7 @@ R 3821 <len>.w <struct party>.?B (要求してきたマップ鯖へ) S 3022 <party_id>.l <account_id>.l <nick>.24B <map_name>.16B <level>.w パーティ追加要求 -R 3822 <party_id>.l <account_id>.l <fail>.B +R 3822 <party_id>.l <account_id>.l <fail>.B <nick>.24B パーティ追加通知(要求してきたマップ鯖へ) fail=00で成功、fail=01で失敗 (成功時はこの直後に全鯖にパーティ情報が送られる) @@ -80,13 +98,13 @@ R 3823 <party_id>.l <account_id>.l <exp>.w <item>.w <fail>.B fail=0x00 パーティ設定変更完了 fail=0x01 expの変更失敗 fail=0x10 itemの変更失敗 -S 3024 <party_id>.l <account_id>.l +S 3024 <party_id>.l <account_id>.l <nick>.24B パーティ脱退要求 R 3824 <party_id>.l <account_id>.l <nick>.24B パーティ脱退通知(全マップ鯖へ) -S 3025 <party_id>.l <account_id>.l <map_name>.16B <online>.B <level>.w +S 3025 <party_id>.l <account_id>.l <map_name>.16B <online>.B <level>.w <nick>.24B パーティマップ更新/オンライン要求 -R 3825 <party_id>.l <account_id>.l <map_name>.16B <online>.B <level>.w +R 3825 <party_id>.l <account_id>.l <map_name>.16B <online>.B <level>.w <nick>.24B パーティマップ更新通知(全マップ鯖へ) S 3026 <party_id>.l パーティ解散要求(送られることはないと思われる) @@ -151,7 +169,7 @@ R 383B <len>.w <guild_id>.l <position>.l <struct guild_position>.?B ギルド役職変更通知 S 303C <guild_id>.l <skill_num>.l <account_id>.l ギルドスキル割り振り -R 383C <guild_id>.l <skill_num>.l <account_id>.l +R 383C <guild_id>.l <skill_num>.l <account_id>.l <flag>.l ギルドスキル割り振り(skill_num==0で失敗) S 303D <guild_id1>.l <guild_id2>.l <account_id1>.l <account_id2>.l <flag>.B ギルド同盟/敵対要求 @@ -168,17 +186,58 @@ S 303F <len>.w <guild_id>.l <dummy>.l <emblem_data>.?B ギルドエンブレム変更要求 dummyは0固定 R 383F <len>.w <guild_id>.l <dummy>.l <emblem_data>.?B ギルドエンブレム変更通知 -(以下、ギルド系追加予定) - +S 3040 <castle_id>.w <index>.B + ギルド城データ要求 +R 3840 <castle_id>.w <index>.B <value>.l + ギルド城データ要求返信 +S 3041 <castle_id>.w <index>.B <value>.l + ギルド城データ変更要求 +R 3841 <castle_id>.w <index>.B <value>.l + ギルド城データ変更通知 +R 3842 <len>.w { <guild_castle>.?B }.?B + ギルド城データ一括送信 +S 3048 <char_id>.l + メールBOX更新要求 +R 3848 <account>.l <flag>.B + メールが送れたかどうかの応答 +S 3049 <len>.w <struct mail_data>.?B + メール送信 +R 3849 <len>.w <store>.l <char_name>.24B { <struct mail_data>.?B }.?B* + メール一覧送信 +S 304a <char_id>.l <mail_num>.l + メールの削除要求 +R 384a <len>.w <struct mail_data>.?B + 新着メール通知 +S 304b <char_id>.l <mail_num>.l + メールの選択受信 +R 384b <len>.w <struct mail_data>.?B + 指定されたメールの送信 +S 304c <char_id>.l <mail_num>.l + メールに添付されたもの受信 +R 384c <account>.l <mail_num>.l <flag>.B + メールの削除通知 +R 384d <len>.w <account>.l <zeny>.l <struct item>.?B + 指定されたメールに添付されていた物の情報送信 +S 3070 <limit>.l + キャラ鯖の制限人数の変更送信 +S 3078 <account_id>.l <char_id>.l + ステータス異常データ要求 +R 3878 <len>.w <account_id>.l { <type>.w <val1>.l <val2>.l <val3>.l <val4>.l <tick>.l }.22B* + ステータス異常データ受信 +S 3079 <len>.w <account_id>.l <char_id>.l { <type>.w <val1>.l <val2>.l <val3>.l <val4>.l <tick>.l }.22B* + ステータス異常データ保存要求 +R 3879 <account_id>.l <flag>.B + ステータス異常データ保存終了 + flag=0 成功(現在の仕様では必ず0なので、返信を待たなくてもいい) S 3080 <account_id>.l <char_id>.I <pet_type>.w <pet_lv>.w <pet_egg_id>.w - <pet_equip>.w <pet_intimate>.w <pet_hungry>.w <rename_flag>.B <incuvate>.B + <pet_equip>.w <pet_intimate>.w <pet_hungry>.w <rename_flag>.B <incubate>.B <pet_name>.24B ペット生成要求 R 3880 <account_id>.l <fail>.B <pet_id>.l ペット生成成功可否 fail=00 ペット生成成功 fail=01 失敗(pet_idはゴミ) -S 3081 <account_id>.l <char_id>.I <pet_id>.l +S 3081 <account_id>.l <char_id>.l <pet_id>.l ペットデータ要求 R 3881 <len>.w <account_id>.l <fail>.B <struct s_pet>.?B ペットデータ受信 @@ -201,4 +260,37 @@ R 3883 <flag>.b flag=1 失敗(pet_idに当たるデータがない場合の物ですが既にデータが いないと言うことは削除する必要がないことにもなりますので 意味はありません) - +S 3088 <len>.w <account_id>.l <char_id>.l <struct mmo_homunstatus>.?B + ホム生成要求 +R 3888 <len>.w <account_id>.l <incubate>.B <struct mmo_homunstatus>.?B + ホムデータ受信 +S 3089 <account_id>.l <char_id>.l <homun_id>.w + ホムデータ要求 +R 3889 <account_id>.l <flag>.B + ホムデータ保存終了 +S 308a <len>.w <account_id>.l <struct mmo_homunstatus>.?B + ホムデータ保存要求 +R 388a <flag>.B + ホムデータ削除終了 +S 308b <account_id>.l <char_id>.l <homun_id>.w + ホムデータ削除要求 +S 3090 <account_id>.l <target_name>.24B <flag>.B + target_nameの位置要求 + flag=0 @where + flag=1 @jumpto +R 3890 <account_id>.l <target_name>.24B <flag>.B + target_nameの位置要求 +S 3091 <account_id>.l <target_name>.24B <flag>.B <map_name>.16B <x>.w <y>.w + target_nameの位置応答 +R 3891 <account_id>.l <target_name>.24B <flag>.B <map_name>.16B <x>.w <y>.w + target_nameの位置応答 +S 3092 <account_id>.l <target_name>.24B <map_name>.16B <flag>.B <x>.w <y>.w + target_nameを指定位置に移動要求 + flag=0 あなたに逢いたい + flag=1 @recall +R 3892 <account_id>.l <target_name>.24B <map_name>.16B <flag>.B <x>.w <y>.w + target_nameを指定位置に移動通知 +S 3093 <len>.w <account_id>.l <message>.?B + account_idにmessageを送信 +R 3893 <len>.w <account_id>.l <message>.?B + account_idにmessageを送信 |