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
@@ -15,6 +15,9 @@ from .....data.eo_writer import EoWriter
|
|
15
15
|
from .....data.eo_reader import EoReader
|
16
16
|
|
17
17
|
class CharacterReplyServerPacket(Packet):
|
18
|
+
"""
|
19
|
+
Reply to client Character-family packets
|
20
|
+
"""
|
18
21
|
_byte_size: int = 0
|
19
22
|
_reply_code: CharacterReply = None # type: ignore [assignment]
|
20
23
|
_reply_code_data: 'CharacterReplyServerPacket.ReplyCodeData' = None
|
@@ -92,49 +95,55 @@ class CharacterReplyServerPacket(Packet):
|
|
92
95
|
writer (EoWriter): The writer that the data will be serialized to.
|
93
96
|
data (CharacterReplyServerPacket): The data to serialize.
|
94
97
|
"""
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
98
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
99
|
+
try:
|
100
|
+
writer.string_sanitization_mode = True
|
101
|
+
if data._reply_code is None:
|
102
|
+
raise SerializationError("reply_code must be provided.")
|
103
|
+
writer.add_short(int(data._reply_code))
|
104
|
+
if data._reply_code == 0:
|
105
|
+
if data._reply_code_data is not None:
|
106
|
+
raise SerializationError("Expected reply_code_data to be None for reply_code " + CharacterReply(data._reply_code).name + ".")
|
107
|
+
elif data._reply_code == CharacterReply.Exists:
|
108
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataExists):
|
109
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataExists for reply_code " + CharacterReply(data._reply_code).name + ".")
|
110
|
+
CharacterReplyServerPacket.ReplyCodeDataExists.serialize(writer, data._reply_code_data)
|
111
|
+
elif data._reply_code == CharacterReply.Full:
|
112
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataFull):
|
113
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataFull for reply_code " + CharacterReply(data._reply_code).name + ".")
|
114
|
+
CharacterReplyServerPacket.ReplyCodeDataFull.serialize(writer, data._reply_code_data)
|
115
|
+
elif data._reply_code == CharacterReply.Full3:
|
116
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataFull3):
|
117
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataFull3 for reply_code " + CharacterReply(data._reply_code).name + ".")
|
118
|
+
CharacterReplyServerPacket.ReplyCodeDataFull3.serialize(writer, data._reply_code_data)
|
119
|
+
elif data._reply_code == CharacterReply.NotApproved:
|
120
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataNotApproved):
|
121
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataNotApproved for reply_code " + CharacterReply(data._reply_code).name + ".")
|
122
|
+
CharacterReplyServerPacket.ReplyCodeDataNotApproved.serialize(writer, data._reply_code_data)
|
123
|
+
elif data._reply_code == CharacterReply.Ok:
|
124
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataOk):
|
125
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataOk for reply_code " + CharacterReply(data._reply_code).name + ".")
|
126
|
+
CharacterReplyServerPacket.ReplyCodeDataOk.serialize(writer, data._reply_code_data)
|
127
|
+
elif data._reply_code == CharacterReply.Deleted:
|
128
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataDeleted):
|
129
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataDeleted for reply_code " + CharacterReply(data._reply_code).name + ".")
|
130
|
+
CharacterReplyServerPacket.ReplyCodeDataDeleted.serialize(writer, data._reply_code_data)
|
131
|
+
elif data._reply_code == 7:
|
132
|
+
if data._reply_code_data is not None:
|
133
|
+
raise SerializationError("Expected reply_code_data to be None for reply_code " + CharacterReply(data._reply_code).name + ".")
|
134
|
+
elif data._reply_code == 8:
|
135
|
+
if data._reply_code_data is not None:
|
136
|
+
raise SerializationError("Expected reply_code_data to be None for reply_code " + CharacterReply(data._reply_code).name + ".")
|
137
|
+
elif data._reply_code == 9:
|
138
|
+
if data._reply_code_data is not None:
|
139
|
+
raise SerializationError("Expected reply_code_data to be None for reply_code " + CharacterReply(data._reply_code).name + ".")
|
140
|
+
else:
|
141
|
+
if not isinstance(data._reply_code_data, CharacterReplyServerPacket.ReplyCodeDataDefault):
|
142
|
+
raise SerializationError("Expected reply_code_data to be type CharacterReplyServerPacket.ReplyCodeDataDefault for reply_code " + CharacterReply(data._reply_code).name + ".")
|
143
|
+
CharacterReplyServerPacket.ReplyCodeDataDefault.serialize(writer, data._reply_code_data)
|
144
|
+
writer.string_sanitization_mode = False
|
145
|
+
finally:
|
146
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
138
147
|
|
139
148
|
@staticmethod
|
140
149
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket":
|
@@ -185,10 +194,9 @@ class CharacterReplyServerPacket(Packet):
|
|
185
194
|
return f"CharacterReplyServerPacket(byte_size={repr(self._byte_size)}, reply_code={repr(self._reply_code)}, reply_code_data={repr(self._reply_code_data)})"
|
186
195
|
|
187
196
|
ReplyCodeData = Union['CharacterReplyServerPacket.ReplyCodeDataExists', 'CharacterReplyServerPacket.ReplyCodeDataFull', 'CharacterReplyServerPacket.ReplyCodeDataFull3', 'CharacterReplyServerPacket.ReplyCodeDataNotApproved', 'CharacterReplyServerPacket.ReplyCodeDataOk', 'CharacterReplyServerPacket.ReplyCodeDataDeleted', 'CharacterReplyServerPacket.ReplyCodeDataDefault', None]
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
"""
|
197
|
+
"""
|
198
|
+
Data associated with different values of the `reply_code` field.
|
199
|
+
"""
|
192
200
|
|
193
201
|
class ReplyCodeDataExists:
|
194
202
|
"""
|
@@ -216,7 +224,11 @@ class CharacterReplyServerPacket(Packet):
|
|
216
224
|
writer (EoWriter): The writer that the data will be serialized to.
|
217
225
|
data (CharacterReplyServerPacket.ReplyCodeDataExists): The data to serialize.
|
218
226
|
"""
|
219
|
-
writer.
|
227
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
228
|
+
try:
|
229
|
+
writer.add_string("NO")
|
230
|
+
finally:
|
231
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
220
232
|
|
221
233
|
@staticmethod
|
222
234
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataExists":
|
@@ -268,7 +280,11 @@ class CharacterReplyServerPacket(Packet):
|
|
268
280
|
writer (EoWriter): The writer that the data will be serialized to.
|
269
281
|
data (CharacterReplyServerPacket.ReplyCodeDataFull): The data to serialize.
|
270
282
|
"""
|
271
|
-
writer.
|
283
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
284
|
+
try:
|
285
|
+
writer.add_string("NO")
|
286
|
+
finally:
|
287
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
272
288
|
|
273
289
|
@staticmethod
|
274
290
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataFull":
|
@@ -320,7 +336,11 @@ class CharacterReplyServerPacket(Packet):
|
|
320
336
|
writer (EoWriter): The writer that the data will be serialized to.
|
321
337
|
data (CharacterReplyServerPacket.ReplyCodeDataFull3): The data to serialize.
|
322
338
|
"""
|
323
|
-
writer.
|
339
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
340
|
+
try:
|
341
|
+
writer.add_string("NO")
|
342
|
+
finally:
|
343
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
324
344
|
|
325
345
|
@staticmethod
|
326
346
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataFull3":
|
@@ -372,7 +392,11 @@ class CharacterReplyServerPacket(Packet):
|
|
372
392
|
writer (EoWriter): The writer that the data will be serialized to.
|
373
393
|
data (CharacterReplyServerPacket.ReplyCodeDataNotApproved): The data to serialize.
|
374
394
|
"""
|
375
|
-
writer.
|
395
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
396
|
+
try:
|
397
|
+
writer.add_string("NO")
|
398
|
+
finally:
|
399
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
376
400
|
|
377
401
|
@staticmethod
|
378
402
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataNotApproved":
|
@@ -442,19 +466,22 @@ class CharacterReplyServerPacket(Packet):
|
|
442
466
|
writer (EoWriter): The writer that the data will be serialized to.
|
443
467
|
data (CharacterReplyServerPacket.ReplyCodeDataOk): The data to serialize.
|
444
468
|
"""
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
469
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
470
|
+
try:
|
471
|
+
if data._characters_count is None:
|
472
|
+
raise SerializationError("characters_count must be provided.")
|
473
|
+
writer.add_char(data._characters_count)
|
474
|
+
writer.add_char(0)
|
475
|
+
writer.add_byte(0xFF)
|
476
|
+
if data._characters is None:
|
477
|
+
raise SerializationError("characters must be provided.")
|
478
|
+
if len(data._characters) > 252:
|
479
|
+
raise SerializationError(f"Expected length of characters to be 252 or less, got {len(data._characters)}.")
|
480
|
+
for i in range(data._characters_count):
|
481
|
+
CharacterSelectionListEntry.serialize(writer, data._characters[i])
|
456
482
|
writer.add_byte(0xFF)
|
457
|
-
|
483
|
+
finally:
|
484
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
458
485
|
|
459
486
|
@staticmethod
|
460
487
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataOk":
|
@@ -477,8 +504,7 @@ class CharacterReplyServerPacket(Packet):
|
|
477
504
|
data._characters = []
|
478
505
|
for i in range(data._characters_count):
|
479
506
|
data._characters.append(CharacterSelectionListEntry.deserialize(reader))
|
480
|
-
|
481
|
-
reader.next_chunk()
|
507
|
+
reader.next_chunk()
|
482
508
|
data._byte_size = reader.position - reader_start_position
|
483
509
|
return data
|
484
510
|
finally:
|
@@ -531,18 +557,21 @@ class CharacterReplyServerPacket(Packet):
|
|
531
557
|
writer (EoWriter): The writer that the data will be serialized to.
|
532
558
|
data (CharacterReplyServerPacket.ReplyCodeDataDeleted): The data to serialize.
|
533
559
|
"""
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
560
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
561
|
+
try:
|
562
|
+
if data._characters_count is None:
|
563
|
+
raise SerializationError("characters_count must be provided.")
|
564
|
+
writer.add_char(data._characters_count)
|
565
|
+
writer.add_byte(0xFF)
|
566
|
+
if data._characters is None:
|
567
|
+
raise SerializationError("characters must be provided.")
|
568
|
+
if len(data._characters) > 252:
|
569
|
+
raise SerializationError(f"Expected length of characters to be 252 or less, got {len(data._characters)}.")
|
570
|
+
for i in range(data._characters_count):
|
571
|
+
CharacterSelectionListEntry.serialize(writer, data._characters[i])
|
544
572
|
writer.add_byte(0xFF)
|
545
|
-
|
573
|
+
finally:
|
574
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
546
575
|
|
547
576
|
@staticmethod
|
548
577
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataDeleted":
|
@@ -564,8 +593,7 @@ class CharacterReplyServerPacket(Packet):
|
|
564
593
|
data._characters = []
|
565
594
|
for i in range(data._characters_count):
|
566
595
|
data._characters.append(CharacterSelectionListEntry.deserialize(reader))
|
567
|
-
|
568
|
-
reader.next_chunk()
|
596
|
+
reader.next_chunk()
|
569
597
|
data._byte_size = reader.position - reader_start_position
|
570
598
|
return data
|
571
599
|
finally:
|
@@ -602,7 +630,11 @@ class CharacterReplyServerPacket(Packet):
|
|
602
630
|
writer (EoWriter): The writer that the data will be serialized to.
|
603
631
|
data (CharacterReplyServerPacket.ReplyCodeDataDefault): The data to serialize.
|
604
632
|
"""
|
605
|
-
writer.
|
633
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
634
|
+
try:
|
635
|
+
writer.add_string("OK")
|
636
|
+
finally:
|
637
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
606
638
|
|
607
639
|
@staticmethod
|
608
640
|
def deserialize(reader: EoReader) -> "CharacterReplyServerPacket.ReplyCodeDataDefault":
|
@@ -117,21 +117,25 @@ class CharacterSecondaryStats:
|
|
117
117
|
writer (EoWriter): The writer that the data will be serialized to.
|
118
118
|
data (CharacterSecondaryStats): The data to serialize.
|
119
119
|
"""
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
120
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
121
|
+
try:
|
122
|
+
if data._min_damage is None:
|
123
|
+
raise SerializationError("min_damage must be provided.")
|
124
|
+
writer.add_short(data._min_damage)
|
125
|
+
if data._max_damage is None:
|
126
|
+
raise SerializationError("max_damage must be provided.")
|
127
|
+
writer.add_short(data._max_damage)
|
128
|
+
if data._accuracy is None:
|
129
|
+
raise SerializationError("accuracy must be provided.")
|
130
|
+
writer.add_short(data._accuracy)
|
131
|
+
if data._evade is None:
|
132
|
+
raise SerializationError("evade must be provided.")
|
133
|
+
writer.add_short(data._evade)
|
134
|
+
if data._armor is None:
|
135
|
+
raise SerializationError("armor must be provided.")
|
136
|
+
writer.add_short(data._armor)
|
137
|
+
finally:
|
138
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
135
139
|
|
136
140
|
@staticmethod
|
137
141
|
def deserialize(reader: EoReader) -> "CharacterSecondaryStats":
|
@@ -118,21 +118,25 @@ class CharacterSecondaryStatsInfoLookup:
|
|
118
118
|
writer (EoWriter): The writer that the data will be serialized to.
|
119
119
|
data (CharacterSecondaryStatsInfoLookup): The data to serialize.
|
120
120
|
"""
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
121
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
122
|
+
try:
|
123
|
+
if data._max_damage is None:
|
124
|
+
raise SerializationError("max_damage must be provided.")
|
125
|
+
writer.add_short(data._max_damage)
|
126
|
+
if data._min_damage is None:
|
127
|
+
raise SerializationError("min_damage must be provided.")
|
128
|
+
writer.add_short(data._min_damage)
|
129
|
+
if data._accuracy is None:
|
130
|
+
raise SerializationError("accuracy must be provided.")
|
131
|
+
writer.add_short(data._accuracy)
|
132
|
+
if data._evade is None:
|
133
|
+
raise SerializationError("evade must be provided.")
|
134
|
+
writer.add_short(data._evade)
|
135
|
+
if data._armor is None:
|
136
|
+
raise SerializationError("armor must be provided.")
|
137
|
+
writer.add_short(data._armor)
|
138
|
+
finally:
|
139
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
136
140
|
|
137
141
|
@staticmethod
|
138
142
|
def deserialize(reader: EoReader) -> "CharacterSecondaryStatsInfoLookup":
|
@@ -156,34 +156,40 @@ class CharacterSelectionListEntry:
|
|
156
156
|
writer (EoWriter): The writer that the data will be serialized to.
|
157
157
|
data (CharacterSelectionListEntry): The data to serialize.
|
158
158
|
"""
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
159
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
160
|
+
try:
|
161
|
+
writer.string_sanitization_mode = True
|
162
|
+
if data._name is None:
|
163
|
+
raise SerializationError("name must be provided.")
|
164
|
+
writer.add_string(data._name)
|
165
|
+
writer.add_byte(0xFF)
|
166
|
+
if data._id is None:
|
167
|
+
raise SerializationError("id must be provided.")
|
168
|
+
writer.add_int(data._id)
|
169
|
+
if data._level is None:
|
170
|
+
raise SerializationError("level must be provided.")
|
171
|
+
writer.add_char(data._level)
|
172
|
+
if data._gender is None:
|
173
|
+
raise SerializationError("gender must be provided.")
|
174
|
+
writer.add_char(int(data._gender))
|
175
|
+
if data._hair_style is None:
|
176
|
+
raise SerializationError("hair_style must be provided.")
|
177
|
+
writer.add_char(data._hair_style)
|
178
|
+
if data._hair_color is None:
|
179
|
+
raise SerializationError("hair_color must be provided.")
|
180
|
+
writer.add_char(data._hair_color)
|
181
|
+
if data._skin is None:
|
182
|
+
raise SerializationError("skin must be provided.")
|
183
|
+
writer.add_char(data._skin)
|
184
|
+
if data._admin is None:
|
185
|
+
raise SerializationError("admin must be provided.")
|
186
|
+
writer.add_char(int(data._admin))
|
187
|
+
if data._equipment is None:
|
188
|
+
raise SerializationError("equipment must be provided.")
|
189
|
+
EquipmentCharacterSelect.serialize(writer, data._equipment)
|
190
|
+
writer.string_sanitization_mode = False
|
191
|
+
finally:
|
192
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
187
193
|
|
188
194
|
@staticmethod
|
189
195
|
def deserialize(reader: EoReader) -> "CharacterSelectionListEntry":
|
@@ -87,18 +87,22 @@ class CharacterStatsEquipmentChange:
|
|
87
87
|
writer (EoWriter): The writer that the data will be serialized to.
|
88
88
|
data (CharacterStatsEquipmentChange): The data to serialize.
|
89
89
|
"""
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
90
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
91
|
+
try:
|
92
|
+
if data._max_hp is None:
|
93
|
+
raise SerializationError("max_hp must be provided.")
|
94
|
+
writer.add_short(data._max_hp)
|
95
|
+
if data._max_tp is None:
|
96
|
+
raise SerializationError("max_tp must be provided.")
|
97
|
+
writer.add_short(data._max_tp)
|
98
|
+
if data._base_stats is None:
|
99
|
+
raise SerializationError("base_stats must be provided.")
|
100
|
+
CharacterBaseStats.serialize(writer, data._base_stats)
|
101
|
+
if data._secondary_stats is None:
|
102
|
+
raise SerializationError("secondary_stats must be provided.")
|
103
|
+
CharacterSecondaryStats.serialize(writer, data._secondary_stats)
|
104
|
+
finally:
|
105
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
102
106
|
|
103
107
|
@staticmethod
|
104
108
|
def deserialize(reader: EoReader) -> "CharacterStatsEquipmentChange":
|
@@ -131,27 +131,31 @@ class CharacterStatsInfoLookup:
|
|
131
131
|
writer (EoWriter): The writer that the data will be serialized to.
|
132
132
|
data (CharacterStatsInfoLookup): The data to serialize.
|
133
133
|
"""
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
134
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
135
|
+
try:
|
136
|
+
if data._hp is None:
|
137
|
+
raise SerializationError("hp must be provided.")
|
138
|
+
writer.add_short(data._hp)
|
139
|
+
if data._max_hp is None:
|
140
|
+
raise SerializationError("max_hp must be provided.")
|
141
|
+
writer.add_short(data._max_hp)
|
142
|
+
if data._tp is None:
|
143
|
+
raise SerializationError("tp must be provided.")
|
144
|
+
writer.add_short(data._tp)
|
145
|
+
if data._max_tp is None:
|
146
|
+
raise SerializationError("max_tp must be provided.")
|
147
|
+
writer.add_short(data._max_tp)
|
148
|
+
if data._base_stats is None:
|
149
|
+
raise SerializationError("base_stats must be provided.")
|
150
|
+
CharacterBaseStats.serialize(writer, data._base_stats)
|
151
|
+
if data._secondary_stats is None:
|
152
|
+
raise SerializationError("secondary_stats must be provided.")
|
153
|
+
CharacterSecondaryStats.serialize(writer, data._secondary_stats)
|
154
|
+
if data._elemental_stats is None:
|
155
|
+
raise SerializationError("elemental_stats must be provided.")
|
156
|
+
CharacterElementalStats.serialize(writer, data._elemental_stats)
|
157
|
+
finally:
|
158
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
155
159
|
|
156
160
|
@staticmethod
|
157
161
|
def deserialize(reader: EoReader) -> "CharacterStatsInfoLookup":
|
@@ -172,33 +172,37 @@ class CharacterStatsReset:
|
|
172
172
|
writer (EoWriter): The writer that the data will be serialized to.
|
173
173
|
data (CharacterStatsReset): The data to serialize.
|
174
174
|
"""
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
175
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
176
|
+
try:
|
177
|
+
if data._stat_points is None:
|
178
|
+
raise SerializationError("stat_points must be provided.")
|
179
|
+
writer.add_short(data._stat_points)
|
180
|
+
if data._skill_points is None:
|
181
|
+
raise SerializationError("skill_points must be provided.")
|
182
|
+
writer.add_short(data._skill_points)
|
183
|
+
if data._hp is None:
|
184
|
+
raise SerializationError("hp must be provided.")
|
185
|
+
writer.add_short(data._hp)
|
186
|
+
if data._max_hp is None:
|
187
|
+
raise SerializationError("max_hp must be provided.")
|
188
|
+
writer.add_short(data._max_hp)
|
189
|
+
if data._tp is None:
|
190
|
+
raise SerializationError("tp must be provided.")
|
191
|
+
writer.add_short(data._tp)
|
192
|
+
if data._max_tp is None:
|
193
|
+
raise SerializationError("max_tp must be provided.")
|
194
|
+
writer.add_short(data._max_tp)
|
195
|
+
if data._max_sp is None:
|
196
|
+
raise SerializationError("max_sp must be provided.")
|
197
|
+
writer.add_short(data._max_sp)
|
198
|
+
if data._base is None:
|
199
|
+
raise SerializationError("base must be provided.")
|
200
|
+
CharacterBaseStats.serialize(writer, data._base)
|
201
|
+
if data._secondary is None:
|
202
|
+
raise SerializationError("secondary must be provided.")
|
203
|
+
CharacterSecondaryStats.serialize(writer, data._secondary)
|
204
|
+
finally:
|
205
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
202
206
|
|
203
207
|
@staticmethod
|
204
208
|
def deserialize(reader: EoReader) -> "CharacterStatsReset":
|