eolib 1.1.0__py3-none-any.whl → 1.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- eolib/__about__.py +1 -1
- eolib/encrypt/encryption_utils.py +8 -0
- eolib/protocol/_generated/coords.py +10 -6
- eolib/protocol/_generated/emote.py +1 -1
- eolib/protocol/_generated/map/emf.py +113 -109
- eolib/protocol/_generated/map/map_graphic_layer.py +13 -9
- eolib/protocol/_generated/map/map_graphic_row.py +16 -12
- eolib/protocol/_generated/map/map_graphic_row_tile.py +10 -6
- eolib/protocol/_generated/map/map_item.py +22 -18
- eolib/protocol/_generated/map/map_legacy_door_key.py +10 -6
- eolib/protocol/_generated/map/map_npc.py +19 -15
- eolib/protocol/_generated/map/map_sign.py +18 -14
- eolib/protocol/_generated/map/map_tile_spec_row.py +16 -12
- eolib/protocol/_generated/map/map_tile_spec_row_tile.py +10 -6
- eolib/protocol/_generated/map/map_warp.py +16 -12
- eolib/protocol/_generated/map/map_warp_row.py +16 -12
- eolib/protocol/_generated/map/map_warp_row_tile.py +10 -6
- eolib/protocol/_generated/net/char_item.py +10 -6
- eolib/protocol/_generated/net/client/account_agree_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/account_create_client_packet.py +41 -32
- eolib/protocol/_generated/net/client/account_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/attack_use_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/bank_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/bank_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/bank_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/barber_buy_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/barber_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/board_create_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/board_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/board_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/board_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/book_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/byte_coords.py +10 -6
- eolib/protocol/_generated/net/client/chair_request_client_packet.py +24 -14
- eolib/protocol/_generated/net/client/character_create_client_packet.py +29 -20
- eolib/protocol/_generated/net/client/character_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/character_request_client_packet.py +11 -2
- eolib/protocol/_generated/net/client/character_take_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/chest_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/chest_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/chest_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/citizen_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +25 -16
- eolib/protocol/_generated/net/client/citizen_request_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/connection_accept_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/connection_ping_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/door_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/emote_report_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/face_player_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/global_close_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/global_open_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/global_player_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/global_remove_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/guild_accept_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/guild_agree_client_packet.py +44 -30
- eolib/protocol/_generated/net/client/guild_buy_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_create_client_packet.py +25 -16
- eolib/protocol/_generated/net/client/guild_junk_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/guild_kick_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/guild_player_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/guild_rank_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/guild_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/guild_report_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_request_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/guild_take_client_packet.py +37 -7
- eolib/protocol/_generated/net/client/guild_tell_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/init_init_client_packet.py +23 -15
- eolib/protocol/_generated/net/client/item_drop_client_packet.py +15 -8
- eolib/protocol/_generated/net/client/item_get_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/item_junk_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/item_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/locker_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/locker_buy_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/locker_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/locker_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/login_request_client_packet.py +17 -8
- eolib/protocol/_generated/net/client/marriage_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/marriage_request_client_packet.py +19 -10
- eolib/protocol/_generated/net/client/message_ping_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +17 -10
- eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/party_accept_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/party_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/party_request_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/party_take_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/player_range_request_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/players_accept_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/players_list_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/players_request_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/priest_accept_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/priest_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/priest_request_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/priest_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/quest_accept_client_packet.py +36 -26
- eolib/protocol/_generated/net/client/quest_list_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/quest_use_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/range_request_client_packet.py +18 -9
- eolib/protocol/_generated/net/client/refresh_request_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/shop_buy_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/shop_create_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/shop_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/shop_sell_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/sit_request_client_packet.py +24 -14
- eolib/protocol/_generated/net/client/spell_request_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +22 -15
- eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/spell_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +35 -21
- eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/talk_admin_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_announce_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_msg_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_player_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_report_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_tell_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/talk_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_accept_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/trade_add_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_agree_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_close_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/trade_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_request_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/walk_action.py +13 -9
- eolib/protocol/_generated/net/client/walk_admin_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/walk_player_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/walk_spec_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/warp_accept_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/warp_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +71 -45
- eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/welcome_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/item.py +10 -6
- eolib/protocol/_generated/net/server/account_reply_server_packet.py +91 -57
- eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +30 -21
- eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +52 -36
- eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +36 -27
- eolib/protocol/_generated/net/server/arena_accept_server_packet.py +24 -15
- eolib/protocol/_generated/net/server/arena_drop_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/arena_spec_server_packet.py +28 -19
- eolib/protocol/_generated/net/server/arena_use_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/attack_error_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/attack_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +39 -32
- eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/avatar_change.py +53 -38
- eolib/protocol/_generated/net/server/avatar_change_type.py +1 -1
- eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +25 -18
- eolib/protocol/_generated/net/server/bank_open_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/bank_reply_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/barber_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/barber_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/big_coords.py +10 -6
- eolib/protocol/_generated/net/server/board_open_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/board_player_server_packet.py +15 -6
- eolib/protocol/_generated/net/server/board_post_listing.py +17 -11
- eolib/protocol/_generated/net/server/book_reply_server_packet.py +20 -12
- eolib/protocol/_generated/net/server/cast_accept_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/cast_reply_server_packet.py +31 -24
- eolib/protocol/_generated/net/server/cast_spec_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/chair_close_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/chair_player_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/chair_remove_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/chair_reply_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/character_base_stats.py +22 -18
- eolib/protocol/_generated/net/server/character_base_stats_welcome.py +22 -18
- eolib/protocol/_generated/net/server/character_details.py +42 -36
- eolib/protocol/_generated/net/server/character_elemental_stats.py +22 -18
- eolib/protocol/_generated/net/server/character_map_info.py +70 -64
- eolib/protocol/_generated/net/server/character_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/character_reply_server_packet.py +111 -79
- eolib/protocol/_generated/net/server/character_secondary_stats.py +19 -15
- eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +19 -15
- eolib/protocol/_generated/net/server/character_selection_list_entry.py +34 -28
- eolib/protocol/_generated/net/server/character_stats_equipment_change.py +16 -12
- eolib/protocol/_generated/net/server/character_stats_info_lookup.py +25 -21
- eolib/protocol/_generated/net/server/character_stats_reset.py +31 -27
- eolib/protocol/_generated/net/server/character_stats_update.py +22 -18
- eolib/protocol/_generated/net/server/character_stats_welcome.py +34 -30
- eolib/protocol/_generated/net/server/chest_agree_server_packet.py +11 -4
- eolib/protocol/_generated/net/server/chest_close_server_packet.py +16 -5
- eolib/protocol/_generated/net/server/chest_get_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/chest_open_server_packet.py +14 -7
- eolib/protocol/_generated/net/server/chest_reply_server_packet.py +20 -13
- eolib/protocol/_generated/net/server/chest_spec_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/citizen_open_server_packet.py +27 -18
- eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/citizen_request_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/connection_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/dialog_entry.py +24 -17
- eolib/protocol/_generated/net/server/dialog_quest_entry.py +10 -6
- eolib/protocol/_generated/net/server/door_close_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/door_open_server_packet.py +11 -4
- eolib/protocol/_generated/net/server/effect_admin_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/effect_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/effect_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/effect_report_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/effect_spec_server_packet.py +47 -33
- eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +20 -13
- eolib/protocol/_generated/net/server/effect_use_server_packet.py +24 -14
- eolib/protocol/_generated/net/server/emote_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/equipment_change.py +20 -16
- eolib/protocol/_generated/net/server/equipment_character_select.py +19 -15
- eolib/protocol/_generated/net/server/equipment_map_info.py +23 -19
- eolib/protocol/_generated/net/server/equipment_paperdoll.py +50 -46
- eolib/protocol/_generated/net/server/equipment_welcome.py +49 -45
- eolib/protocol/_generated/net/server/face_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/global_backfill_message.py +13 -7
- eolib/protocol/_generated/net/server/group_heal_target_player.py +13 -9
- eolib/protocol/_generated/net/server/guild_accept_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_agree_server_packet.py +25 -16
- eolib/protocol/_generated/net/server/guild_buy_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_create_server_packet.py +28 -19
- eolib/protocol/_generated/net/server/guild_kick_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/guild_member.py +17 -11
- eolib/protocol/_generated/net/server/guild_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_rank_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/guild_reply_server_packet.py +49 -31
- eolib/protocol/_generated/net/server/guild_report_server_packet.py +47 -42
- eolib/protocol/_generated/net/server/guild_request_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/guild_sell_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_staff.py +13 -7
- eolib/protocol/_generated/net/server/guild_take_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_tell_server_packet.py +20 -13
- eolib/protocol/_generated/net/server/init_ban_type.py +1 -1
- eolib/protocol/_generated/net/server/init_init_server_packet.py +190 -124
- eolib/protocol/_generated/net/server/init_reply.py +3 -0
- eolib/protocol/_generated/net/server/item_accept_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/item_add_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/item_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/item_drop_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/item_get_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/item_junk_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/item_kick_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/item_map_info.py +16 -12
- eolib/protocol/_generated/net/server/item_obtain_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/item_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/item_reply_server_packet.py +100 -74
- eolib/protocol/_generated/net/server/item_spec_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +14 -3
- eolib/protocol/_generated/net/server/level_up_stats.py +22 -18
- eolib/protocol/_generated/net/server/locker_buy_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/locker_get_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/locker_open_server_packet.py +14 -7
- eolib/protocol/_generated/net/server/locker_reply_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/locker_spec_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/login_reply.py +6 -0
- eolib/protocol/_generated/net/server/login_reply_server_packet.py +80 -50
- eolib/protocol/_generated/net/server/map_drain_damage_other.py +13 -9
- eolib/protocol/_generated/net/server/map_file.py +7 -3
- eolib/protocol/_generated/net/server/marriage_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +24 -14
- eolib/protocol/_generated/net/server/message_accept_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/message_close_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/message_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/message_pong_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/music_player_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/nearby_info.py +26 -22
- eolib/protocol/_generated/net/server/npc_accept_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/npc_agree_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/npc_junk_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/npc_killed_data.py +28 -24
- eolib/protocol/_generated/net/server/npc_map_info.py +16 -12
- eolib/protocol/_generated/net/server/npc_player_server_packet.py +30 -21
- eolib/protocol/_generated/net/server/npc_reply_server_packet.py +25 -18
- eolib/protocol/_generated/net/server/npc_spec_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/npc_update_attack.py +22 -18
- eolib/protocol/_generated/net/server/npc_update_chat.py +15 -11
- eolib/protocol/_generated/net/server/npc_update_position.py +13 -9
- eolib/protocol/_generated/net/server/online_player.py +26 -20
- eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +12 -5
- eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +18 -9
- eolib/protocol/_generated/net/server/party_add_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/party_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/party_close_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/party_create_server_packet.py +13 -5
- eolib/protocol/_generated/net/server/party_exp_share.py +16 -12
- eolib/protocol/_generated/net/server/party_list_server_packet.py +13 -5
- eolib/protocol/_generated/net/server/party_member.py +20 -16
- eolib/protocol/_generated/net/server/party_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/party_reply_server_packet.py +35 -21
- eolib/protocol/_generated/net/server/party_request_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/party_target_group_server_packet.py +11 -4
- eolib/protocol/_generated/net/server/players_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_list.py +17 -13
- eolib/protocol/_generated/net/server/players_list_friends.py +17 -13
- eolib/protocol/_generated/net/server/players_list_server_packet.py +12 -3
- eolib/protocol/_generated/net/server/players_net242_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_ping_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_pong_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_reply_server_packet.py +12 -3
- eolib/protocol/_generated/net/server/priest_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/priest_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/priest_request_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/pub_file.py +10 -6
- eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +36 -30
- eolib/protocol/_generated/net/server/quest_list_server_packet.py +42 -28
- eolib/protocol/_generated/net/server/quest_progress_entry.py +23 -17
- eolib/protocol/_generated/net/server/quest_report_server_packet.py +17 -9
- eolib/protocol/_generated/net/server/range_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/recover_agree_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/recover_list_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/recover_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/recover_reply_server_packet.py +24 -17
- eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/server_settings.py +25 -21
- eolib/protocol/_generated/net/server/shop_buy_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/shop_craft_item.py +13 -9
- eolib/protocol/_generated/net/server/shop_create_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/shop_open_server_packet.py +26 -17
- eolib/protocol/_generated/net/server/shop_sell_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/shop_sold_item.py +10 -6
- eolib/protocol/_generated/net/server/shop_trade_item.py +16 -12
- eolib/protocol/_generated/net/server/sit_close_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/sit_player_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/sit_remove_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/sit_reply_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/skill_learn.py +25 -21
- eolib/protocol/_generated/net/server/spell_error_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/spell_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/spell_request_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +23 -16
- eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +28 -21
- eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +25 -18
- eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +20 -11
- eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +24 -14
- eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_admin_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_announce_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_list_server_packet.py +14 -5
- eolib/protocol/_generated/net/server/talk_msg_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_open_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_reply_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_request_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_server_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/talk_spec_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/talk_tell_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/trade_admin_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/trade_close_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_item_data.py +22 -16
- eolib/protocol/_generated/net/server/trade_open_server_packet.py +23 -14
- eolib/protocol/_generated/net/server/trade_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_request_server_packet.py +14 -7
- eolib/protocol/_generated/net/server/trade_spec_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_use_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/walk_close_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/walk_open_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/walk_player_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/walk_reply_server_packet.py +23 -14
- eolib/protocol/_generated/net/server/warp_agree_server_packet.py +32 -20
- eolib/protocol/_generated/net/server/warp_create_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/warp_player_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/warp_request_server_packet.py +36 -26
- eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +161 -147
- eolib/protocol/_generated/net/spell.py +10 -6
- eolib/protocol/_generated/net/three_item.py +10 -6
- eolib/protocol/_generated/net/version.py +13 -9
- eolib/protocol/_generated/net/weight.py +10 -6
- eolib/protocol/_generated/pub/ecf.py +21 -17
- eolib/protocol/_generated/pub/ecf_record.py +36 -32
- eolib/protocol/_generated/pub/eif.py +21 -17
- eolib/protocol/_generated/pub/eif_record.py +130 -126
- eolib/protocol/_generated/pub/enf.py +21 -17
- eolib/protocol/_generated/pub/enf_record.py +72 -68
- eolib/protocol/_generated/pub/esf.py +21 -17
- eolib/protocol/_generated/pub/esf_record.py +106 -102
- eolib/protocol/_generated/pub/server/__init__.py +30 -0
- eolib/protocol/_generated/pub/server/drop_file.py +81 -0
- eolib/protocol/_generated/pub/server/drop_npc_record.py +116 -0
- eolib/protocol/_generated/pub/server/drop_record.py +149 -0
- eolib/protocol/_generated/pub/server/inn_file.py +81 -0
- eolib/protocol/_generated/pub/server/inn_question_record.py +119 -0
- eolib/protocol/_generated/pub/server/inn_record.py +383 -0
- eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +107 -0
- eolib/protocol/_generated/pub/server/shop_craft_record.py +110 -0
- eolib/protocol/_generated/pub/server/shop_file.py +81 -0
- eolib/protocol/_generated/pub/server/shop_record.py +253 -0
- eolib/protocol/_generated/pub/server/shop_trade_record.py +157 -0
- eolib/protocol/_generated/pub/server/skill_master_file.py +81 -0
- eolib/protocol/_generated/pub/server/skill_master_record.py +224 -0
- eolib/protocol/_generated/pub/server/skill_master_skill_record.py +336 -0
- eolib/protocol/_generated/pub/server/talk_file.py +81 -0
- eolib/protocol/_generated/pub/server/talk_message_record.py +90 -0
- eolib/protocol/_generated/pub/server/talk_record.py +145 -0
- eolib/protocol/protocol_enum_meta.py +1 -3
- eolib/protocol/pub/server/__init__.py +8 -0
- eolib/py.typed +0 -0
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/METADATA +8 -6
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/RECORD +433 -413
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/WHEEL +1 -1
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
|
|
13
13
|
from .....data.eo_reader import EoReader
|
14
14
|
|
15
15
|
class MarriageReplyServerPacket(Packet):
|
16
|
+
"""
|
17
|
+
Reply to client Marriage-family packets
|
18
|
+
"""
|
16
19
|
_byte_size: int = 0
|
17
20
|
_reply_code: MarriageReply = None # type: ignore [assignment]
|
18
21
|
_reply_code_data: 'MarriageReplyServerPacket.ReplyCodeData' = None
|
@@ -84,13 +87,17 @@ class MarriageReplyServerPacket(Packet):
|
|
84
87
|
writer (EoWriter): The writer that the data will be serialized to.
|
85
88
|
data (MarriageReplyServerPacket): The data to serialize.
|
86
89
|
"""
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
90
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
91
|
+
try:
|
92
|
+
if data._reply_code is None:
|
93
|
+
raise SerializationError("reply_code must be provided.")
|
94
|
+
writer.add_short(int(data._reply_code))
|
95
|
+
if data._reply_code == MarriageReply.Success:
|
96
|
+
if not isinstance(data._reply_code_data, MarriageReplyServerPacket.ReplyCodeDataSuccess):
|
97
|
+
raise SerializationError("Expected reply_code_data to be type MarriageReplyServerPacket.ReplyCodeDataSuccess for reply_code " + MarriageReply(data._reply_code).name + ".")
|
98
|
+
MarriageReplyServerPacket.ReplyCodeDataSuccess.serialize(writer, data._reply_code_data)
|
99
|
+
finally:
|
100
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
94
101
|
|
95
102
|
@staticmethod
|
96
103
|
def deserialize(reader: EoReader) -> "MarriageReplyServerPacket":
|
@@ -119,10 +126,9 @@ class MarriageReplyServerPacket(Packet):
|
|
119
126
|
return f"MarriageReplyServerPacket(byte_size={repr(self._byte_size)}, reply_code={repr(self._reply_code)}, reply_code_data={repr(self._reply_code_data)})"
|
120
127
|
|
121
128
|
ReplyCodeData = Union['MarriageReplyServerPacket.ReplyCodeDataSuccess', None]
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
"""
|
129
|
+
"""
|
130
|
+
Data associated with different values of the `reply_code` field.
|
131
|
+
"""
|
126
132
|
|
127
133
|
class ReplyCodeDataSuccess:
|
128
134
|
"""
|
@@ -166,9 +172,13 @@ class MarriageReplyServerPacket(Packet):
|
|
166
172
|
writer (EoWriter): The writer that the data will be serialized to.
|
167
173
|
data (MarriageReplyServerPacket.ReplyCodeDataSuccess): The data to serialize.
|
168
174
|
"""
|
169
|
-
|
170
|
-
|
171
|
-
|
175
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
176
|
+
try:
|
177
|
+
if data._gold_amount is None:
|
178
|
+
raise SerializationError("gold_amount must be provided.")
|
179
|
+
writer.add_int(data._gold_amount)
|
180
|
+
finally:
|
181
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
172
182
|
|
173
183
|
@staticmethod
|
174
184
|
def deserialize(reader: EoReader) -> "MarriageReplyServerPacket.ReplyCodeDataSuccess":
|
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
|
|
12
12
|
from .....data.eo_reader import EoReader
|
13
13
|
|
14
14
|
class MessageAcceptServerPacket(Packet):
|
15
|
+
"""
|
16
|
+
Large message box
|
17
|
+
"""
|
15
18
|
_byte_size: int = 0
|
16
19
|
_messages: list[str] = None # type: ignore [assignment]
|
17
20
|
|
@@ -79,14 +82,19 @@ class MessageAcceptServerPacket(Packet):
|
|
79
82
|
writer (EoWriter): The writer that the data will be serialized to.
|
80
83
|
data (MessageAcceptServerPacket): The data to serialize.
|
81
84
|
"""
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
if
|
85
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
86
|
+
try:
|
87
|
+
writer.string_sanitization_mode = True
|
88
|
+
if data._messages is None:
|
89
|
+
raise SerializationError("messages must be provided.")
|
90
|
+
if len(data._messages) != 4:
|
91
|
+
raise SerializationError(f"Expected length of messages to be exactly 4, got {len(data._messages)}.")
|
92
|
+
for i in range(4):
|
93
|
+
writer.add_string(data._messages[i])
|
88
94
|
writer.add_byte(0xFF)
|
89
|
-
writer.
|
95
|
+
writer.string_sanitization_mode = False
|
96
|
+
finally:
|
97
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
90
98
|
|
91
99
|
@staticmethod
|
92
100
|
def deserialize(reader: EoReader) -> "MessageAcceptServerPacket":
|
@@ -107,8 +115,7 @@ class MessageAcceptServerPacket(Packet):
|
|
107
115
|
data._messages = []
|
108
116
|
for i in range(4):
|
109
117
|
data._messages.append(reader.get_string())
|
110
|
-
|
111
|
-
reader.next_chunk()
|
118
|
+
reader.next_chunk()
|
112
119
|
reader.chunked_reading_mode = False
|
113
120
|
data._byte_size = reader.position - reader_start_position
|
114
121
|
return data
|
@@ -10,6 +10,9 @@ from .....data.eo_writer import EoWriter
|
|
10
10
|
from .....data.eo_reader import EoReader
|
11
11
|
|
12
12
|
class MessageCloseServerPacket(Packet):
|
13
|
+
"""
|
14
|
+
Server is rebooting
|
15
|
+
"""
|
13
16
|
_byte_size: int = 0
|
14
17
|
|
15
18
|
@property
|
@@ -60,9 +63,11 @@ class MessageCloseServerPacket(Packet):
|
|
60
63
|
writer (EoWriter): The writer that the data will be serialized to.
|
61
64
|
data (MessageCloseServerPacket): The data to serialize.
|
62
65
|
"""
|
63
|
-
|
64
|
-
|
66
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
67
|
+
try:
|
65
68
|
writer.add_string("r")
|
69
|
+
finally:
|
70
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
66
71
|
|
67
72
|
@staticmethod
|
68
73
|
def deserialize(reader: EoReader) -> "MessageCloseServerPacket":
|
@@ -79,8 +84,7 @@ class MessageCloseServerPacket(Packet):
|
|
79
84
|
old_chunked_reading_mode: bool = reader.chunked_reading_mode
|
80
85
|
try:
|
81
86
|
reader_start_position: int = reader.position
|
82
|
-
|
83
|
-
reader.get_string()
|
87
|
+
reader.get_string()
|
84
88
|
data._byte_size = reader.position - reader_start_position
|
85
89
|
return data
|
86
90
|
finally:
|
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
|
|
11
11
|
from .....data.eo_reader import EoReader
|
12
12
|
|
13
13
|
class MessageOpenServerPacket(Packet):
|
14
|
+
"""
|
15
|
+
Status bar message
|
16
|
+
"""
|
14
17
|
_byte_size: int = 0
|
15
18
|
_message: str = None # type: ignore [assignment]
|
16
19
|
|
@@ -70,9 +73,13 @@ class MessageOpenServerPacket(Packet):
|
|
70
73
|
writer (EoWriter): The writer that the data will be serialized to.
|
71
74
|
data (MessageOpenServerPacket): The data to serialize.
|
72
75
|
"""
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
77
|
+
try:
|
78
|
+
if data._message is None:
|
79
|
+
raise SerializationError("message must be provided.")
|
80
|
+
writer.add_string(data._message)
|
81
|
+
finally:
|
82
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
76
83
|
|
77
84
|
@staticmethod
|
78
85
|
def deserialize(reader: EoReader) -> "MessageOpenServerPacket":
|
@@ -10,6 +10,9 @@ from .....data.eo_writer import EoWriter
|
|
10
10
|
from .....data.eo_reader import EoReader
|
11
11
|
|
12
12
|
class MessagePongServerPacket(Packet):
|
13
|
+
"""
|
14
|
+
#ping command reply
|
15
|
+
"""
|
13
16
|
_byte_size: int = 0
|
14
17
|
|
15
18
|
@property
|
@@ -60,9 +63,11 @@ class MessagePongServerPacket(Packet):
|
|
60
63
|
writer (EoWriter): The writer that the data will be serialized to.
|
61
64
|
data (MessagePongServerPacket): The data to serialize.
|
62
65
|
"""
|
63
|
-
|
64
|
-
|
66
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
67
|
+
try:
|
65
68
|
writer.add_short(2)
|
69
|
+
finally:
|
70
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
66
71
|
|
67
72
|
@staticmethod
|
68
73
|
def deserialize(reader: EoReader) -> "MessagePongServerPacket":
|
@@ -79,8 +84,7 @@ class MessagePongServerPacket(Packet):
|
|
79
84
|
old_chunked_reading_mode: bool = reader.chunked_reading_mode
|
80
85
|
try:
|
81
86
|
reader_start_position: int = reader.position
|
82
|
-
|
83
|
-
reader.get_short()
|
87
|
+
reader.get_short()
|
84
88
|
data._byte_size = reader.position - reader_start_position
|
85
89
|
return data
|
86
90
|
finally:
|
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
|
|
11
11
|
from .....data.eo_reader import EoReader
|
12
12
|
|
13
13
|
class MusicPlayerServerPacket(Packet):
|
14
|
+
"""
|
15
|
+
Sound effect
|
16
|
+
"""
|
14
17
|
_byte_size: int = 0
|
15
18
|
_sound_id: int = None # type: ignore [assignment]
|
16
19
|
|
@@ -78,9 +81,13 @@ class MusicPlayerServerPacket(Packet):
|
|
78
81
|
writer (EoWriter): The writer that the data will be serialized to.
|
79
82
|
data (MusicPlayerServerPacket): The data to serialize.
|
80
83
|
"""
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
85
|
+
try:
|
86
|
+
if data._sound_id is None:
|
87
|
+
raise SerializationError("sound_id must be provided.")
|
88
|
+
writer.add_char(data._sound_id)
|
89
|
+
finally:
|
90
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
84
91
|
|
85
92
|
@staticmethod
|
86
93
|
def deserialize(reader: EoReader) -> "MusicPlayerServerPacket":
|
@@ -73,27 +73,32 @@ class NearbyInfo:
|
|
73
73
|
writer (EoWriter): The writer that the data will be serialized to.
|
74
74
|
data (NearbyInfo): The data to serialize.
|
75
75
|
"""
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
if
|
76
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
77
|
+
try:
|
78
|
+
if data._characters_count is None:
|
79
|
+
raise SerializationError("characters_count must be provided.")
|
80
|
+
writer.add_char(data._characters_count)
|
81
|
+
writer.string_sanitization_mode = True
|
82
|
+
writer.add_byte(0xFF)
|
83
|
+
if data._characters is None:
|
84
|
+
raise SerializationError("characters must be provided.")
|
85
|
+
if len(data._characters) > 252:
|
86
|
+
raise SerializationError(f"Expected length of characters to be 252 or less, got {len(data._characters)}.")
|
87
|
+
for i in range(data._characters_count):
|
88
|
+
CharacterMapInfo.serialize(writer, data._characters[i])
|
86
89
|
writer.add_byte(0xFF)
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
90
|
+
if data._npcs is None:
|
91
|
+
raise SerializationError("npcs must be provided.")
|
92
|
+
for i in range(len(data._npcs)):
|
93
|
+
NpcMapInfo.serialize(writer, data._npcs[i])
|
94
|
+
writer.add_byte(0xFF)
|
95
|
+
if data._items is None:
|
96
|
+
raise SerializationError("items must be provided.")
|
97
|
+
for i in range(len(data._items)):
|
98
|
+
ItemMapInfo.serialize(writer, data._items[i])
|
99
|
+
writer.string_sanitization_mode = False
|
100
|
+
finally:
|
101
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
97
102
|
|
98
103
|
@staticmethod
|
99
104
|
def deserialize(reader: EoReader) -> "NearbyInfo":
|
@@ -116,8 +121,7 @@ class NearbyInfo:
|
|
116
121
|
data._characters = []
|
117
122
|
for i in range(data._characters_count):
|
118
123
|
data._characters.append(CharacterMapInfo.deserialize(reader))
|
119
|
-
|
120
|
-
reader.next_chunk()
|
124
|
+
reader.next_chunk()
|
121
125
|
npcs_length = int(reader.remaining / 6)
|
122
126
|
data._npcs = []
|
123
127
|
for i in range(npcs_length):
|
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
|
|
13
13
|
from .....data.eo_reader import EoReader
|
14
14
|
|
15
15
|
class NpcAcceptServerPacket(Packet):
|
16
|
+
"""
|
17
|
+
Nearby NPC killed by player and you leveled up
|
18
|
+
"""
|
16
19
|
_byte_size: int = 0
|
17
20
|
_npc_killed_data: NpcKilledData = None # type: ignore [assignment]
|
18
21
|
_experience: int = None # type: ignore [assignment]
|
@@ -98,15 +101,19 @@ class NpcAcceptServerPacket(Packet):
|
|
98
101
|
writer (EoWriter): The writer that the data will be serialized to.
|
99
102
|
data (NpcAcceptServerPacket): The data to serialize.
|
100
103
|
"""
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
104
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
105
|
+
try:
|
106
|
+
if data._npc_killed_data is None:
|
107
|
+
raise SerializationError("npc_killed_data must be provided.")
|
108
|
+
NpcKilledData.serialize(writer, data._npc_killed_data)
|
109
|
+
if data._experience is None:
|
110
|
+
raise SerializationError("experience must be provided.")
|
111
|
+
writer.add_int(data._experience)
|
112
|
+
if data._level_up is None:
|
113
|
+
raise SerializationError("level_up must be provided.")
|
114
|
+
LevelUpStats.serialize(writer, data._level_up)
|
115
|
+
finally:
|
116
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
110
117
|
|
111
118
|
@staticmethod
|
112
119
|
def deserialize(reader: EoReader) -> "NpcAcceptServerPacket":
|
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
|
|
13
13
|
from .....data.eo_reader import EoReader
|
14
14
|
|
15
15
|
class NpcAgreeServerPacket(Packet):
|
16
|
+
"""
|
17
|
+
Reply to request for information about nearby NPCs
|
18
|
+
"""
|
16
19
|
_byte_size: int = 0
|
17
20
|
_npcs_count: int = None # type: ignore [assignment]
|
18
21
|
_npcs: list[NpcMapInfo] = None # type: ignore [assignment]
|
@@ -31,7 +34,7 @@ class NpcAgreeServerPacket(Packet):
|
|
31
34
|
def npcs(self) -> list[NpcMapInfo]:
|
32
35
|
"""
|
33
36
|
Note:
|
34
|
-
- Length must be
|
37
|
+
- Length must be 252 or less.
|
35
38
|
"""
|
36
39
|
return self._npcs
|
37
40
|
|
@@ -39,7 +42,7 @@ class NpcAgreeServerPacket(Packet):
|
|
39
42
|
def npcs(self, npcs: list[NpcMapInfo]) -> None:
|
40
43
|
"""
|
41
44
|
Note:
|
42
|
-
- Length must be
|
45
|
+
- Length must be 252 or less.
|
43
46
|
"""
|
44
47
|
self._npcs = npcs
|
45
48
|
self._npcs_count = len(self._npcs)
|
@@ -82,15 +85,19 @@ class NpcAgreeServerPacket(Packet):
|
|
82
85
|
writer (EoWriter): The writer that the data will be serialized to.
|
83
86
|
data (NpcAgreeServerPacket): The data to serialize.
|
84
87
|
"""
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
88
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
89
|
+
try:
|
90
|
+
if data._npcs_count is None:
|
91
|
+
raise SerializationError("npcs_count must be provided.")
|
92
|
+
writer.add_char(data._npcs_count)
|
93
|
+
if data._npcs is None:
|
94
|
+
raise SerializationError("npcs must be provided.")
|
95
|
+
if len(data._npcs) > 252:
|
96
|
+
raise SerializationError(f"Expected length of npcs to be 252 or less, got {len(data._npcs)}.")
|
97
|
+
for i in range(data._npcs_count):
|
98
|
+
NpcMapInfo.serialize(writer, data._npcs[i])
|
99
|
+
finally:
|
100
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
94
101
|
|
95
102
|
@staticmethod
|
96
103
|
def deserialize(reader: EoReader) -> "NpcAgreeServerPacket":
|
@@ -107,7 +114,7 @@ class NpcAgreeServerPacket(Packet):
|
|
107
114
|
old_chunked_reading_mode: bool = reader.chunked_reading_mode
|
108
115
|
try:
|
109
116
|
reader_start_position: int = reader.position
|
110
|
-
data._npcs_count = reader.
|
117
|
+
data._npcs_count = reader.get_char()
|
111
118
|
data._npcs = []
|
112
119
|
for i in range(data._npcs_count):
|
113
120
|
data._npcs.append(NpcMapInfo.deserialize(reader))
|
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
|
|
11
11
|
from .....data.eo_reader import EoReader
|
12
12
|
|
13
13
|
class NpcDialogServerPacket(Packet):
|
14
|
+
"""
|
15
|
+
NPC chat message
|
16
|
+
"""
|
14
17
|
_byte_size: int = 0
|
15
18
|
_npc_index: int = None # type: ignore [assignment]
|
16
19
|
_message: str = None # type: ignore [assignment]
|
@@ -87,12 +90,16 @@ class NpcDialogServerPacket(Packet):
|
|
87
90
|
writer (EoWriter): The writer that the data will be serialized to.
|
88
91
|
data (NpcDialogServerPacket): The data to serialize.
|
89
92
|
"""
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
93
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
94
|
+
try:
|
95
|
+
if data._npc_index is None:
|
96
|
+
raise SerializationError("npc_index must be provided.")
|
97
|
+
writer.add_short(data._npc_index)
|
98
|
+
if data._message is None:
|
99
|
+
raise SerializationError("message must be provided.")
|
100
|
+
writer.add_string(data._message)
|
101
|
+
finally:
|
102
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
96
103
|
|
97
104
|
@staticmethod
|
98
105
|
def deserialize(reader: EoReader) -> "NpcDialogServerPacket":
|
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
|
|
11
11
|
from .....data.eo_reader import EoReader
|
12
12
|
|
13
13
|
class NpcJunkServerPacket(Packet):
|
14
|
+
"""
|
15
|
+
Clearing all boss children
|
16
|
+
"""
|
14
17
|
_byte_size: int = 0
|
15
18
|
_npc_id: int = None # type: ignore [assignment]
|
16
19
|
|
@@ -78,9 +81,13 @@ class NpcJunkServerPacket(Packet):
|
|
78
81
|
writer (EoWriter): The writer that the data will be serialized to.
|
79
82
|
data (NpcJunkServerPacket): The data to serialize.
|
80
83
|
"""
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
85
|
+
try:
|
86
|
+
if data._npc_id is None:
|
87
|
+
raise SerializationError("npc_id must be provided.")
|
88
|
+
writer.add_short(data._npc_id)
|
89
|
+
finally:
|
90
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
84
91
|
|
85
92
|
@staticmethod
|
86
93
|
def deserialize(reader: EoReader) -> "NpcJunkServerPacket":
|
@@ -154,30 +154,34 @@ class NpcKilledData:
|
|
154
154
|
writer (EoWriter): The writer that the data will be serialized to.
|
155
155
|
data (NpcKilledData): The data to serialize.
|
156
156
|
"""
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
157
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
158
|
+
try:
|
159
|
+
if data._killer_id is None:
|
160
|
+
raise SerializationError("killer_id must be provided.")
|
161
|
+
writer.add_short(data._killer_id)
|
162
|
+
if data._killer_direction is None:
|
163
|
+
raise SerializationError("killer_direction must be provided.")
|
164
|
+
writer.add_char(int(data._killer_direction))
|
165
|
+
if data._npc_index is None:
|
166
|
+
raise SerializationError("npc_index must be provided.")
|
167
|
+
writer.add_short(data._npc_index)
|
168
|
+
if data._drop_index is None:
|
169
|
+
raise SerializationError("drop_index must be provided.")
|
170
|
+
writer.add_short(data._drop_index)
|
171
|
+
if data._drop_id is None:
|
172
|
+
raise SerializationError("drop_id must be provided.")
|
173
|
+
writer.add_short(data._drop_id)
|
174
|
+
if data._drop_coords is None:
|
175
|
+
raise SerializationError("drop_coords must be provided.")
|
176
|
+
Coords.serialize(writer, data._drop_coords)
|
177
|
+
if data._drop_amount is None:
|
178
|
+
raise SerializationError("drop_amount must be provided.")
|
179
|
+
writer.add_int(data._drop_amount)
|
180
|
+
if data._damage is None:
|
181
|
+
raise SerializationError("damage must be provided.")
|
182
|
+
writer.add_three(data._damage)
|
183
|
+
finally:
|
184
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
181
185
|
|
182
186
|
@staticmethod
|
183
187
|
def deserialize(reader: EoReader) -> "NpcKilledData":
|
@@ -86,18 +86,22 @@ class NpcMapInfo:
|
|
86
86
|
writer (EoWriter): The writer that the data will be serialized to.
|
87
87
|
data (NpcMapInfo): The data to serialize.
|
88
88
|
"""
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
89
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
90
|
+
try:
|
91
|
+
if data._index is None:
|
92
|
+
raise SerializationError("index must be provided.")
|
93
|
+
writer.add_char(data._index)
|
94
|
+
if data._id is None:
|
95
|
+
raise SerializationError("id must be provided.")
|
96
|
+
writer.add_short(data._id)
|
97
|
+
if data._coords is None:
|
98
|
+
raise SerializationError("coords must be provided.")
|
99
|
+
Coords.serialize(writer, data._coords)
|
100
|
+
if data._direction is None:
|
101
|
+
raise SerializationError("direction must be provided.")
|
102
|
+
writer.add_char(int(data._direction))
|
103
|
+
finally:
|
104
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
101
105
|
|
102
106
|
@staticmethod
|
103
107
|
def deserialize(reader: EoReader) -> "NpcMapInfo":
|
@@ -17,6 +17,9 @@ from .....data.eo_writer import EoWriter
|
|
17
17
|
from .....data.eo_reader import EoReader
|
18
18
|
|
19
19
|
class NpcPlayerServerPacket(Packet):
|
20
|
+
"""
|
21
|
+
Main NPC update message
|
22
|
+
"""
|
20
23
|
_byte_size: int = 0
|
21
24
|
_positions: list[NpcUpdatePosition] = None # type: ignore [assignment]
|
22
25
|
_attacks: list[NpcUpdateAttack] = None # type: ignore [assignment]
|
@@ -128,27 +131,33 @@ class NpcPlayerServerPacket(Packet):
|
|
128
131
|
writer (EoWriter): The writer that the data will be serialized to.
|
129
132
|
data (NpcPlayerServerPacket): The data to serialize.
|
130
133
|
"""
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
writer.
|
149
|
-
|
150
|
-
|
151
|
-
|
134
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
135
|
+
try:
|
136
|
+
writer.string_sanitization_mode = True
|
137
|
+
if data._positions is None:
|
138
|
+
raise SerializationError("positions must be provided.")
|
139
|
+
for i in range(len(data._positions)):
|
140
|
+
NpcUpdatePosition.serialize(writer, data._positions[i])
|
141
|
+
writer.add_byte(0xFF)
|
142
|
+
if data._attacks is None:
|
143
|
+
raise SerializationError("attacks must be provided.")
|
144
|
+
for i in range(len(data._attacks)):
|
145
|
+
NpcUpdateAttack.serialize(writer, data._attacks[i])
|
146
|
+
writer.add_byte(0xFF)
|
147
|
+
if data._chats is None:
|
148
|
+
raise SerializationError("chats must be provided.")
|
149
|
+
for i in range(len(data._chats)):
|
150
|
+
NpcUpdateChat.serialize(writer, data._chats[i])
|
151
|
+
writer.add_byte(0xFF)
|
152
|
+
reached_missing_optional = data._hp is None
|
153
|
+
if not reached_missing_optional:
|
154
|
+
writer.add_short(cast(int, data._hp))
|
155
|
+
reached_missing_optional = reached_missing_optional or data._tp is None
|
156
|
+
if not reached_missing_optional:
|
157
|
+
writer.add_short(cast(int, data._tp))
|
158
|
+
writer.string_sanitization_mode = False
|
159
|
+
finally:
|
160
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
152
161
|
|
153
162
|
@staticmethod
|
154
163
|
def deserialize(reader: EoReader) -> "NpcPlayerServerPacket":
|