eolib 1.1.1__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.
Files changed (431) hide show
  1. eolib/__about__.py +1 -1
  2. eolib/protocol/_generated/coords.py +10 -6
  3. eolib/protocol/_generated/emote.py +1 -1
  4. eolib/protocol/_generated/map/emf.py +113 -109
  5. eolib/protocol/_generated/map/map_graphic_layer.py +13 -9
  6. eolib/protocol/_generated/map/map_graphic_row.py +16 -12
  7. eolib/protocol/_generated/map/map_graphic_row_tile.py +10 -6
  8. eolib/protocol/_generated/map/map_item.py +22 -18
  9. eolib/protocol/_generated/map/map_legacy_door_key.py +10 -6
  10. eolib/protocol/_generated/map/map_npc.py +19 -15
  11. eolib/protocol/_generated/map/map_sign.py +18 -14
  12. eolib/protocol/_generated/map/map_tile_spec_row.py +16 -12
  13. eolib/protocol/_generated/map/map_tile_spec_row_tile.py +10 -6
  14. eolib/protocol/_generated/map/map_warp.py +16 -12
  15. eolib/protocol/_generated/map/map_warp_row.py +16 -12
  16. eolib/protocol/_generated/map/map_warp_row_tile.py +10 -6
  17. eolib/protocol/_generated/net/char_item.py +10 -6
  18. eolib/protocol/_generated/net/client/account_agree_client_packet.py +18 -12
  19. eolib/protocol/_generated/net/client/account_create_client_packet.py +38 -32
  20. eolib/protocol/_generated/net/client/account_request_client_packet.py +7 -3
  21. eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +13 -7
  22. eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +7 -3
  23. eolib/protocol/_generated/net/client/attack_use_client_packet.py +10 -6
  24. eolib/protocol/_generated/net/client/bank_add_client_packet.py +10 -6
  25. eolib/protocol/_generated/net/client/bank_open_client_packet.py +7 -3
  26. eolib/protocol/_generated/net/client/bank_take_client_packet.py +10 -6
  27. eolib/protocol/_generated/net/client/barber_buy_client_packet.py +13 -9
  28. eolib/protocol/_generated/net/client/barber_open_client_packet.py +7 -3
  29. eolib/protocol/_generated/net/client/board_create_client_packet.py +18 -12
  30. eolib/protocol/_generated/net/client/board_open_client_packet.py +7 -3
  31. eolib/protocol/_generated/net/client/board_remove_client_packet.py +10 -6
  32. eolib/protocol/_generated/net/client/board_take_client_packet.py +10 -6
  33. eolib/protocol/_generated/net/client/book_request_client_packet.py +8 -4
  34. eolib/protocol/_generated/net/client/byte_coords.py +10 -6
  35. eolib/protocol/_generated/net/client/chair_request_client_packet.py +21 -14
  36. eolib/protocol/_generated/net/client/character_create_client_packet.py +26 -20
  37. eolib/protocol/_generated/net/client/character_remove_client_packet.py +10 -6
  38. eolib/protocol/_generated/net/client/character_request_client_packet.py +8 -2
  39. eolib/protocol/_generated/net/client/character_take_client_packet.py +7 -3
  40. eolib/protocol/_generated/net/client/chest_add_client_packet.py +10 -6
  41. eolib/protocol/_generated/net/client/chest_open_client_packet.py +7 -3
  42. eolib/protocol/_generated/net/client/chest_take_client_packet.py +10 -6
  43. eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +10 -6
  44. eolib/protocol/_generated/net/client/citizen_open_client_packet.py +7 -3
  45. eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +7 -3
  46. eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +22 -16
  47. eolib/protocol/_generated/net/client/citizen_request_client_packet.py +10 -6
  48. eolib/protocol/_generated/net/client/connection_accept_client_packet.py +13 -9
  49. eolib/protocol/_generated/net/client/connection_ping_client_packet.py +5 -4
  50. eolib/protocol/_generated/net/client/door_open_client_packet.py +7 -3
  51. eolib/protocol/_generated/net/client/emote_report_client_packet.py +7 -3
  52. eolib/protocol/_generated/net/client/face_player_client_packet.py +7 -3
  53. eolib/protocol/_generated/net/client/global_close_client_packet.py +5 -4
  54. eolib/protocol/_generated/net/client/global_open_client_packet.py +5 -4
  55. eolib/protocol/_generated/net/client/global_player_client_packet.py +5 -4
  56. eolib/protocol/_generated/net/client/global_remove_client_packet.py +5 -4
  57. eolib/protocol/_generated/net/client/guild_accept_client_packet.py +8 -4
  58. eolib/protocol/_generated/net/client/guild_agree_client_packet.py +41 -30
  59. eolib/protocol/_generated/net/client/guild_buy_client_packet.py +10 -6
  60. eolib/protocol/_generated/net/client/guild_create_client_packet.py +22 -16
  61. eolib/protocol/_generated/net/client/guild_junk_client_packet.py +7 -3
  62. eolib/protocol/_generated/net/client/guild_kick_client_packet.py +10 -6
  63. eolib/protocol/_generated/net/client/guild_open_client_packet.py +7 -3
  64. eolib/protocol/_generated/net/client/guild_player_client_packet.py +18 -12
  65. eolib/protocol/_generated/net/client/guild_rank_client_packet.py +14 -10
  66. eolib/protocol/_generated/net/client/guild_remove_client_packet.py +7 -3
  67. eolib/protocol/_generated/net/client/guild_report_client_packet.py +10 -6
  68. eolib/protocol/_generated/net/client/guild_request_client_packet.py +18 -12
  69. eolib/protocol/_generated/net/client/guild_take_client_packet.py +34 -7
  70. eolib/protocol/_generated/net/client/guild_tell_client_packet.py +10 -6
  71. eolib/protocol/_generated/net/client/guild_use_client_packet.py +7 -3
  72. eolib/protocol/_generated/net/client/init_init_client_packet.py +19 -15
  73. eolib/protocol/_generated/net/client/item_drop_client_packet.py +12 -8
  74. eolib/protocol/_generated/net/client/item_get_client_packet.py +7 -3
  75. eolib/protocol/_generated/net/client/item_junk_client_packet.py +7 -3
  76. eolib/protocol/_generated/net/client/item_use_client_packet.py +7 -3
  77. eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +13 -7
  78. eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +7 -3
  79. eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +10 -6
  80. eolib/protocol/_generated/net/client/locker_add_client_packet.py +10 -6
  81. eolib/protocol/_generated/net/client/locker_buy_client_packet.py +5 -4
  82. eolib/protocol/_generated/net/client/locker_open_client_packet.py +7 -3
  83. eolib/protocol/_generated/net/client/locker_take_client_packet.py +10 -6
  84. eolib/protocol/_generated/net/client/login_request_client_packet.py +14 -8
  85. eolib/protocol/_generated/net/client/marriage_open_client_packet.py +7 -3
  86. eolib/protocol/_generated/net/client/marriage_request_client_packet.py +16 -10
  87. eolib/protocol/_generated/net/client/message_ping_client_packet.py +5 -4
  88. eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +14 -10
  89. eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +10 -6
  90. eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +10 -6
  91. eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +8 -4
  92. eolib/protocol/_generated/net/client/party_accept_client_packet.py +10 -6
  93. eolib/protocol/_generated/net/client/party_remove_client_packet.py +7 -3
  94. eolib/protocol/_generated/net/client/party_request_client_packet.py +10 -6
  95. eolib/protocol/_generated/net/client/party_take_client_packet.py +7 -3
  96. eolib/protocol/_generated/net/client/player_range_request_client_packet.py +8 -4
  97. eolib/protocol/_generated/net/client/players_accept_client_packet.py +7 -3
  98. eolib/protocol/_generated/net/client/players_list_client_packet.py +5 -4
  99. eolib/protocol/_generated/net/client/players_request_client_packet.py +5 -4
  100. eolib/protocol/_generated/net/client/priest_accept_client_packet.py +7 -3
  101. eolib/protocol/_generated/net/client/priest_open_client_packet.py +7 -3
  102. eolib/protocol/_generated/net/client/priest_request_client_packet.py +13 -7
  103. eolib/protocol/_generated/net/client/priest_use_client_packet.py +8 -4
  104. eolib/protocol/_generated/net/client/quest_accept_client_packet.py +33 -26
  105. eolib/protocol/_generated/net/client/quest_list_client_packet.py +7 -3
  106. eolib/protocol/_generated/net/client/quest_use_client_packet.py +10 -6
  107. eolib/protocol/_generated/net/client/range_request_client_packet.py +15 -9
  108. eolib/protocol/_generated/net/client/refresh_request_client_packet.py +5 -4
  109. eolib/protocol/_generated/net/client/shop_buy_client_packet.py +10 -6
  110. eolib/protocol/_generated/net/client/shop_create_client_packet.py +10 -6
  111. eolib/protocol/_generated/net/client/shop_open_client_packet.py +7 -3
  112. eolib/protocol/_generated/net/client/shop_sell_client_packet.py +10 -6
  113. eolib/protocol/_generated/net/client/sit_request_client_packet.py +21 -14
  114. eolib/protocol/_generated/net/client/spell_request_client_packet.py +10 -6
  115. eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +10 -6
  116. eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +19 -15
  117. eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +13 -9
  118. eolib/protocol/_generated/net/client/spell_use_client_packet.py +7 -3
  119. eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +32 -21
  120. eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +7 -3
  121. eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +7 -3
  122. eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +10 -6
  123. eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +10 -6
  124. eolib/protocol/_generated/net/client/talk_admin_client_packet.py +7 -3
  125. eolib/protocol/_generated/net/client/talk_announce_client_packet.py +7 -3
  126. eolib/protocol/_generated/net/client/talk_msg_client_packet.py +7 -3
  127. eolib/protocol/_generated/net/client/talk_open_client_packet.py +7 -3
  128. eolib/protocol/_generated/net/client/talk_player_client_packet.py +7 -3
  129. eolib/protocol/_generated/net/client/talk_report_client_packet.py +7 -3
  130. eolib/protocol/_generated/net/client/talk_request_client_packet.py +7 -3
  131. eolib/protocol/_generated/net/client/talk_tell_client_packet.py +13 -7
  132. eolib/protocol/_generated/net/client/talk_use_client_packet.py +7 -3
  133. eolib/protocol/_generated/net/client/trade_accept_client_packet.py +8 -4
  134. eolib/protocol/_generated/net/client/trade_add_client_packet.py +7 -3
  135. eolib/protocol/_generated/net/client/trade_agree_client_packet.py +7 -3
  136. eolib/protocol/_generated/net/client/trade_close_client_packet.py +5 -4
  137. eolib/protocol/_generated/net/client/trade_remove_client_packet.py +7 -3
  138. eolib/protocol/_generated/net/client/trade_request_client_packet.py +8 -4
  139. eolib/protocol/_generated/net/client/walk_action.py +13 -9
  140. eolib/protocol/_generated/net/client/walk_admin_client_packet.py +7 -3
  141. eolib/protocol/_generated/net/client/walk_player_client_packet.py +7 -3
  142. eolib/protocol/_generated/net/client/walk_spec_client_packet.py +7 -3
  143. eolib/protocol/_generated/net/client/warp_accept_client_packet.py +10 -6
  144. eolib/protocol/_generated/net/client/warp_take_client_packet.py +10 -6
  145. eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +68 -45
  146. eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +10 -6
  147. eolib/protocol/_generated/net/client/welcome_request_client_packet.py +7 -3
  148. eolib/protocol/_generated/net/item.py +10 -6
  149. eolib/protocol/_generated/net/server/account_reply_server_packet.py +88 -57
  150. eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +7 -3
  151. eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +27 -21
  152. eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +7 -3
  153. eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +49 -36
  154. eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +33 -27
  155. eolib/protocol/_generated/net/server/arena_accept_server_packet.py +21 -15
  156. eolib/protocol/_generated/net/server/arena_drop_server_packet.py +6 -5
  157. eolib/protocol/_generated/net/server/arena_spec_server_packet.py +25 -19
  158. eolib/protocol/_generated/net/server/arena_use_server_packet.py +7 -3
  159. eolib/protocol/_generated/net/server/attack_error_server_packet.py +5 -4
  160. eolib/protocol/_generated/net/server/attack_player_server_packet.py +10 -6
  161. eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +36 -32
  162. eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +7 -3
  163. eolib/protocol/_generated/net/server/avatar_change.py +53 -38
  164. eolib/protocol/_generated/net/server/avatar_change_type.py +1 -1
  165. eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +10 -6
  166. eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +22 -18
  167. eolib/protocol/_generated/net/server/bank_open_server_packet.py +13 -9
  168. eolib/protocol/_generated/net/server/bank_reply_server_packet.py +10 -6
  169. eolib/protocol/_generated/net/server/barber_agree_server_packet.py +10 -6
  170. eolib/protocol/_generated/net/server/barber_open_server_packet.py +7 -3
  171. eolib/protocol/_generated/net/server/big_coords.py +10 -6
  172. eolib/protocol/_generated/net/server/board_open_server_packet.py +19 -15
  173. eolib/protocol/_generated/net/server/board_player_server_packet.py +12 -6
  174. eolib/protocol/_generated/net/server/board_post_listing.py +17 -11
  175. eolib/protocol/_generated/net/server/book_reply_server_packet.py +17 -12
  176. eolib/protocol/_generated/net/server/cast_accept_server_packet.py +19 -15
  177. eolib/protocol/_generated/net/server/cast_reply_server_packet.py +28 -24
  178. eolib/protocol/_generated/net/server/cast_spec_server_packet.py +16 -12
  179. eolib/protocol/_generated/net/server/chair_close_server_packet.py +10 -6
  180. eolib/protocol/_generated/net/server/chair_player_server_packet.py +13 -9
  181. eolib/protocol/_generated/net/server/chair_remove_server_packet.py +10 -6
  182. eolib/protocol/_generated/net/server/chair_reply_server_packet.py +13 -9
  183. eolib/protocol/_generated/net/server/character_base_stats.py +22 -18
  184. eolib/protocol/_generated/net/server/character_base_stats_welcome.py +22 -18
  185. eolib/protocol/_generated/net/server/character_details.py +42 -36
  186. eolib/protocol/_generated/net/server/character_elemental_stats.py +22 -18
  187. eolib/protocol/_generated/net/server/character_map_info.py +70 -64
  188. eolib/protocol/_generated/net/server/character_player_server_packet.py +10 -6
  189. eolib/protocol/_generated/net/server/character_reply_server_packet.py +108 -79
  190. eolib/protocol/_generated/net/server/character_secondary_stats.py +19 -15
  191. eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +19 -15
  192. eolib/protocol/_generated/net/server/character_selection_list_entry.py +34 -28
  193. eolib/protocol/_generated/net/server/character_stats_equipment_change.py +16 -12
  194. eolib/protocol/_generated/net/server/character_stats_info_lookup.py +25 -21
  195. eolib/protocol/_generated/net/server/character_stats_reset.py +31 -27
  196. eolib/protocol/_generated/net/server/character_stats_update.py +22 -18
  197. eolib/protocol/_generated/net/server/character_stats_welcome.py +34 -30
  198. eolib/protocol/_generated/net/server/chest_agree_server_packet.py +8 -4
  199. eolib/protocol/_generated/net/server/chest_close_server_packet.py +13 -6
  200. eolib/protocol/_generated/net/server/chest_get_server_packet.py +14 -10
  201. eolib/protocol/_generated/net/server/chest_open_server_packet.py +11 -7
  202. eolib/protocol/_generated/net/server/chest_reply_server_packet.py +17 -13
  203. eolib/protocol/_generated/net/server/chest_spec_server_packet.py +5 -4
  204. eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +7 -3
  205. eolib/protocol/_generated/net/server/citizen_open_server_packet.py +24 -18
  206. eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +7 -3
  207. eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +7 -3
  208. eolib/protocol/_generated/net/server/citizen_request_server_packet.py +7 -3
  209. eolib/protocol/_generated/net/server/connection_player_server_packet.py +10 -6
  210. eolib/protocol/_generated/net/server/dialog_entry.py +24 -17
  211. eolib/protocol/_generated/net/server/dialog_quest_entry.py +10 -6
  212. eolib/protocol/_generated/net/server/door_close_server_packet.py +7 -3
  213. eolib/protocol/_generated/net/server/door_open_server_packet.py +8 -4
  214. eolib/protocol/_generated/net/server/effect_admin_server_packet.py +16 -12
  215. eolib/protocol/_generated/net/server/effect_agree_server_packet.py +10 -6
  216. eolib/protocol/_generated/net/server/effect_player_server_packet.py +10 -6
  217. eolib/protocol/_generated/net/server/effect_report_server_packet.py +5 -4
  218. eolib/protocol/_generated/net/server/effect_spec_server_packet.py +44 -33
  219. eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +17 -13
  220. eolib/protocol/_generated/net/server/effect_use_server_packet.py +21 -14
  221. eolib/protocol/_generated/net/server/emote_player_server_packet.py +10 -6
  222. eolib/protocol/_generated/net/server/equipment_change.py +20 -16
  223. eolib/protocol/_generated/net/server/equipment_character_select.py +19 -15
  224. eolib/protocol/_generated/net/server/equipment_map_info.py +23 -19
  225. eolib/protocol/_generated/net/server/equipment_paperdoll.py +50 -46
  226. eolib/protocol/_generated/net/server/equipment_welcome.py +49 -45
  227. eolib/protocol/_generated/net/server/face_player_server_packet.py +10 -6
  228. eolib/protocol/_generated/net/server/global_backfill_message.py +13 -7
  229. eolib/protocol/_generated/net/server/group_heal_target_player.py +13 -9
  230. eolib/protocol/_generated/net/server/guild_accept_server_packet.py +7 -3
  231. eolib/protocol/_generated/net/server/guild_agree_server_packet.py +22 -16
  232. eolib/protocol/_generated/net/server/guild_buy_server_packet.py +8 -4
  233. eolib/protocol/_generated/net/server/guild_create_server_packet.py +25 -19
  234. eolib/protocol/_generated/net/server/guild_kick_server_packet.py +5 -4
  235. eolib/protocol/_generated/net/server/guild_member.py +17 -11
  236. eolib/protocol/_generated/net/server/guild_open_server_packet.py +7 -3
  237. eolib/protocol/_generated/net/server/guild_rank_server_packet.py +13 -9
  238. eolib/protocol/_generated/net/server/guild_reply_server_packet.py +46 -31
  239. eolib/protocol/_generated/net/server/guild_report_server_packet.py +44 -42
  240. eolib/protocol/_generated/net/server/guild_request_server_packet.py +10 -6
  241. eolib/protocol/_generated/net/server/guild_sell_server_packet.py +7 -3
  242. eolib/protocol/_generated/net/server/guild_staff.py +13 -7
  243. eolib/protocol/_generated/net/server/guild_take_server_packet.py +7 -3
  244. eolib/protocol/_generated/net/server/guild_tell_server_packet.py +17 -13
  245. eolib/protocol/_generated/net/server/init_ban_type.py +1 -1
  246. eolib/protocol/_generated/net/server/init_init_server_packet.py +186 -124
  247. eolib/protocol/_generated/net/server/init_reply.py +3 -0
  248. eolib/protocol/_generated/net/server/item_accept_server_packet.py +7 -3
  249. eolib/protocol/_generated/net/server/item_add_server_packet.py +16 -12
  250. eolib/protocol/_generated/net/server/item_agree_server_packet.py +8 -4
  251. eolib/protocol/_generated/net/server/item_drop_server_packet.py +19 -15
  252. eolib/protocol/_generated/net/server/item_get_server_packet.py +13 -9
  253. eolib/protocol/_generated/net/server/item_junk_server_packet.py +13 -9
  254. eolib/protocol/_generated/net/server/item_kick_server_packet.py +10 -6
  255. eolib/protocol/_generated/net/server/item_map_info.py +16 -12
  256. eolib/protocol/_generated/net/server/item_obtain_server_packet.py +10 -6
  257. eolib/protocol/_generated/net/server/item_remove_server_packet.py +7 -3
  258. eolib/protocol/_generated/net/server/item_reply_server_packet.py +97 -74
  259. eolib/protocol/_generated/net/server/item_spec_server_packet.py +5 -4
  260. eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +7 -3
  261. eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +16 -12
  262. eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +10 -6
  263. eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +7 -3
  264. eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +5 -4
  265. eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +11 -3
  266. eolib/protocol/_generated/net/server/level_up_stats.py +22 -18
  267. eolib/protocol/_generated/net/server/locker_buy_server_packet.py +10 -6
  268. eolib/protocol/_generated/net/server/locker_get_server_packet.py +14 -10
  269. eolib/protocol/_generated/net/server/locker_open_server_packet.py +11 -7
  270. eolib/protocol/_generated/net/server/locker_reply_server_packet.py +14 -10
  271. eolib/protocol/_generated/net/server/locker_spec_server_packet.py +7 -3
  272. eolib/protocol/_generated/net/server/login_reply.py +6 -0
  273. eolib/protocol/_generated/net/server/login_reply_server_packet.py +77 -50
  274. eolib/protocol/_generated/net/server/map_drain_damage_other.py +13 -9
  275. eolib/protocol/_generated/net/server/map_file.py +7 -3
  276. eolib/protocol/_generated/net/server/marriage_open_server_packet.py +7 -3
  277. eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +21 -14
  278. eolib/protocol/_generated/net/server/message_accept_server_packet.py +13 -9
  279. eolib/protocol/_generated/net/server/message_close_server_packet.py +5 -4
  280. eolib/protocol/_generated/net/server/message_open_server_packet.py +7 -3
  281. eolib/protocol/_generated/net/server/message_pong_server_packet.py +5 -4
  282. eolib/protocol/_generated/net/server/music_player_server_packet.py +7 -3
  283. eolib/protocol/_generated/net/server/nearby_info.py +26 -22
  284. eolib/protocol/_generated/net/server/npc_accept_server_packet.py +13 -9
  285. eolib/protocol/_generated/net/server/npc_agree_server_packet.py +16 -12
  286. eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +10 -6
  287. eolib/protocol/_generated/net/server/npc_junk_server_packet.py +7 -3
  288. eolib/protocol/_generated/net/server/npc_killed_data.py +28 -24
  289. eolib/protocol/_generated/net/server/npc_map_info.py +16 -12
  290. eolib/protocol/_generated/net/server/npc_player_server_packet.py +27 -21
  291. eolib/protocol/_generated/net/server/npc_reply_server_packet.py +22 -18
  292. eolib/protocol/_generated/net/server/npc_spec_server_packet.py +10 -6
  293. eolib/protocol/_generated/net/server/npc_update_attack.py +22 -18
  294. eolib/protocol/_generated/net/server/npc_update_chat.py +15 -11
  295. eolib/protocol/_generated/net/server/npc_update_position.py +13 -9
  296. eolib/protocol/_generated/net/server/online_player.py +26 -20
  297. eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +19 -15
  298. eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +9 -5
  299. eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +16 -12
  300. eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +15 -9
  301. eolib/protocol/_generated/net/server/party_add_server_packet.py +7 -3
  302. eolib/protocol/_generated/net/server/party_agree_server_packet.py +10 -6
  303. eolib/protocol/_generated/net/server/party_close_server_packet.py +5 -4
  304. eolib/protocol/_generated/net/server/party_create_server_packet.py +10 -5
  305. eolib/protocol/_generated/net/server/party_exp_share.py +16 -12
  306. eolib/protocol/_generated/net/server/party_list_server_packet.py +10 -5
  307. eolib/protocol/_generated/net/server/party_member.py +20 -16
  308. eolib/protocol/_generated/net/server/party_remove_server_packet.py +7 -3
  309. eolib/protocol/_generated/net/server/party_reply_server_packet.py +32 -21
  310. eolib/protocol/_generated/net/server/party_request_server_packet.py +13 -9
  311. eolib/protocol/_generated/net/server/party_target_group_server_packet.py +8 -4
  312. eolib/protocol/_generated/net/server/players_agree_server_packet.py +7 -3
  313. eolib/protocol/_generated/net/server/players_list.py +17 -13
  314. eolib/protocol/_generated/net/server/players_list_friends.py +17 -13
  315. eolib/protocol/_generated/net/server/players_list_server_packet.py +9 -3
  316. eolib/protocol/_generated/net/server/players_net242_server_packet.py +7 -3
  317. eolib/protocol/_generated/net/server/players_ping_server_packet.py +7 -3
  318. eolib/protocol/_generated/net/server/players_pong_server_packet.py +7 -3
  319. eolib/protocol/_generated/net/server/players_remove_server_packet.py +7 -3
  320. eolib/protocol/_generated/net/server/players_reply_server_packet.py +9 -3
  321. eolib/protocol/_generated/net/server/priest_open_server_packet.py +7 -3
  322. eolib/protocol/_generated/net/server/priest_reply_server_packet.py +7 -3
  323. eolib/protocol/_generated/net/server/priest_request_server_packet.py +10 -6
  324. eolib/protocol/_generated/net/server/pub_file.py +10 -6
  325. eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +33 -30
  326. eolib/protocol/_generated/net/server/quest_list_server_packet.py +39 -28
  327. eolib/protocol/_generated/net/server/quest_progress_entry.py +23 -17
  328. eolib/protocol/_generated/net/server/quest_report_server_packet.py +14 -9
  329. eolib/protocol/_generated/net/server/range_reply_server_packet.py +7 -3
  330. eolib/protocol/_generated/net/server/recover_agree_server_packet.py +13 -9
  331. eolib/protocol/_generated/net/server/recover_list_server_packet.py +10 -6
  332. eolib/protocol/_generated/net/server/recover_player_server_packet.py +10 -6
  333. eolib/protocol/_generated/net/server/recover_reply_server_packet.py +21 -17
  334. eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +19 -15
  335. eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +7 -3
  336. eolib/protocol/_generated/net/server/server_settings.py +25 -21
  337. eolib/protocol/_generated/net/server/shop_buy_server_packet.py +13 -9
  338. eolib/protocol/_generated/net/server/shop_craft_item.py +13 -9
  339. eolib/protocol/_generated/net/server/shop_create_server_packet.py +16 -12
  340. eolib/protocol/_generated/net/server/shop_open_server_packet.py +23 -17
  341. eolib/protocol/_generated/net/server/shop_sell_server_packet.py +13 -9
  342. eolib/protocol/_generated/net/server/shop_sold_item.py +10 -6
  343. eolib/protocol/_generated/net/server/shop_trade_item.py +16 -12
  344. eolib/protocol/_generated/net/server/sit_close_server_packet.py +10 -6
  345. eolib/protocol/_generated/net/server/sit_player_server_packet.py +14 -10
  346. eolib/protocol/_generated/net/server/sit_remove_server_packet.py +10 -6
  347. eolib/protocol/_generated/net/server/sit_reply_server_packet.py +14 -10
  348. eolib/protocol/_generated/net/server/skill_learn.py +25 -21
  349. eolib/protocol/_generated/net/server/spell_error_server_packet.py +5 -4
  350. eolib/protocol/_generated/net/server/spell_player_server_packet.py +10 -6
  351. eolib/protocol/_generated/net/server/spell_request_server_packet.py +10 -6
  352. eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +20 -16
  353. eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +25 -21
  354. eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +22 -18
  355. eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +10 -6
  356. eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +7 -3
  357. eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +17 -11
  358. eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +10 -6
  359. eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +7 -3
  360. eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +21 -14
  361. eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +10 -6
  362. eolib/protocol/_generated/net/server/talk_admin_server_packet.py +13 -7
  363. eolib/protocol/_generated/net/server/talk_announce_server_packet.py +13 -7
  364. eolib/protocol/_generated/net/server/talk_list_server_packet.py +10 -5
  365. eolib/protocol/_generated/net/server/talk_msg_server_packet.py +13 -7
  366. eolib/protocol/_generated/net/server/talk_open_server_packet.py +10 -6
  367. eolib/protocol/_generated/net/server/talk_player_server_packet.py +10 -6
  368. eolib/protocol/_generated/net/server/talk_reply_server_packet.py +10 -6
  369. eolib/protocol/_generated/net/server/talk_request_server_packet.py +13 -7
  370. eolib/protocol/_generated/net/server/talk_server_server_packet.py +7 -3
  371. eolib/protocol/_generated/net/server/talk_spec_server_packet.py +7 -3
  372. eolib/protocol/_generated/net/server/talk_tell_server_packet.py +13 -7
  373. eolib/protocol/_generated/net/server/trade_admin_server_packet.py +7 -3
  374. eolib/protocol/_generated/net/server/trade_agree_server_packet.py +10 -6
  375. eolib/protocol/_generated/net/server/trade_close_server_packet.py +7 -3
  376. eolib/protocol/_generated/net/server/trade_item_data.py +22 -16
  377. eolib/protocol/_generated/net/server/trade_open_server_packet.py +20 -14
  378. eolib/protocol/_generated/net/server/trade_reply_server_packet.py +7 -3
  379. eolib/protocol/_generated/net/server/trade_request_server_packet.py +11 -7
  380. eolib/protocol/_generated/net/server/trade_spec_server_packet.py +7 -3
  381. eolib/protocol/_generated/net/server/trade_use_server_packet.py +7 -3
  382. eolib/protocol/_generated/net/server/walk_close_server_packet.py +5 -4
  383. eolib/protocol/_generated/net/server/walk_open_server_packet.py +5 -4
  384. eolib/protocol/_generated/net/server/walk_player_server_packet.py +13 -9
  385. eolib/protocol/_generated/net/server/walk_reply_server_packet.py +20 -14
  386. eolib/protocol/_generated/net/server/warp_agree_server_packet.py +29 -20
  387. eolib/protocol/_generated/net/server/warp_create_server_packet.py +7 -3
  388. eolib/protocol/_generated/net/server/warp_player_server_packet.py +7 -3
  389. eolib/protocol/_generated/net/server/warp_request_server_packet.py +33 -26
  390. eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +7 -3
  391. eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +7 -3
  392. eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +7 -3
  393. eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +7 -3
  394. eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +7 -3
  395. eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +158 -147
  396. eolib/protocol/_generated/net/spell.py +10 -6
  397. eolib/protocol/_generated/net/three_item.py +10 -6
  398. eolib/protocol/_generated/net/version.py +13 -9
  399. eolib/protocol/_generated/net/weight.py +10 -6
  400. eolib/protocol/_generated/pub/ecf.py +21 -17
  401. eolib/protocol/_generated/pub/ecf_record.py +36 -32
  402. eolib/protocol/_generated/pub/eif.py +21 -17
  403. eolib/protocol/_generated/pub/eif_record.py +130 -126
  404. eolib/protocol/_generated/pub/enf.py +21 -17
  405. eolib/protocol/_generated/pub/enf_record.py +72 -68
  406. eolib/protocol/_generated/pub/esf.py +21 -17
  407. eolib/protocol/_generated/pub/esf_record.py +106 -102
  408. eolib/protocol/_generated/pub/server/__init__.py +30 -0
  409. eolib/protocol/_generated/pub/server/drop_file.py +81 -0
  410. eolib/protocol/_generated/pub/server/drop_npc_record.py +116 -0
  411. eolib/protocol/_generated/pub/server/drop_record.py +149 -0
  412. eolib/protocol/_generated/pub/server/inn_file.py +81 -0
  413. eolib/protocol/_generated/pub/server/inn_question_record.py +119 -0
  414. eolib/protocol/_generated/pub/server/inn_record.py +383 -0
  415. eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +107 -0
  416. eolib/protocol/_generated/pub/server/shop_craft_record.py +110 -0
  417. eolib/protocol/_generated/pub/server/shop_file.py +81 -0
  418. eolib/protocol/_generated/pub/server/shop_record.py +253 -0
  419. eolib/protocol/_generated/pub/server/shop_trade_record.py +157 -0
  420. eolib/protocol/_generated/pub/server/skill_master_file.py +81 -0
  421. eolib/protocol/_generated/pub/server/skill_master_record.py +224 -0
  422. eolib/protocol/_generated/pub/server/skill_master_skill_record.py +336 -0
  423. eolib/protocol/_generated/pub/server/talk_file.py +81 -0
  424. eolib/protocol/_generated/pub/server/talk_message_record.py +90 -0
  425. eolib/protocol/_generated/pub/server/talk_record.py +145 -0
  426. eolib/protocol/protocol_enum_meta.py +1 -3
  427. eolib/protocol/pub/server/__init__.py +8 -0
  428. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/METADATA +5 -3
  429. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/RECORD +431 -412
  430. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/WHEEL +1 -1
  431. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -94,16 +94,20 @@ class LockerGetServerPacket(Packet):
94
94
  writer (EoWriter): The writer that the data will be serialized to.
95
95
  data (LockerGetServerPacket): The data to serialize.
96
96
  """
97
- if data._taken_item is None:
98
- raise SerializationError("taken_item must be provided.")
99
- ThreeItem.serialize(writer, data._taken_item)
100
- if data._weight is None:
101
- raise SerializationError("weight must be provided.")
102
- Weight.serialize(writer, data._weight)
103
- if data._locker_items is None:
104
- raise SerializationError("locker_items must be provided.")
105
- for i in range(len(data._locker_items)):
106
- ThreeItem.serialize(writer, data._locker_items[i])
97
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
98
+ try:
99
+ if data._taken_item is None:
100
+ raise SerializationError("taken_item must be provided.")
101
+ ThreeItem.serialize(writer, data._taken_item)
102
+ if data._weight is None:
103
+ raise SerializationError("weight must be provided.")
104
+ Weight.serialize(writer, data._weight)
105
+ if data._locker_items is None:
106
+ raise SerializationError("locker_items must be provided.")
107
+ for i in range(len(data._locker_items)):
108
+ ThreeItem.serialize(writer, data._locker_items[i])
109
+ finally:
110
+ writer.string_sanitization_mode = old_string_sanitization_mode
107
111
 
108
112
  @staticmethod
109
113
  def deserialize(reader: EoReader) -> "LockerGetServerPacket":
@@ -85,13 +85,17 @@ class LockerOpenServerPacket(Packet):
85
85
  writer (EoWriter): The writer that the data will be serialized to.
86
86
  data (LockerOpenServerPacket): The data to serialize.
87
87
  """
88
- if data._locker_coords is None:
89
- raise SerializationError("locker_coords must be provided.")
90
- Coords.serialize(writer, data._locker_coords)
91
- if data._locker_items is None:
92
- raise SerializationError("locker_items must be provided.")
93
- for i in range(len(data._locker_items)):
94
- ThreeItem.serialize(writer, data._locker_items[i])
88
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
89
+ try:
90
+ if data._locker_coords is None:
91
+ raise SerializationError("locker_coords must be provided.")
92
+ Coords.serialize(writer, data._locker_coords)
93
+ if data._locker_items is None:
94
+ raise SerializationError("locker_items must be provided.")
95
+ for i in range(len(data._locker_items)):
96
+ ThreeItem.serialize(writer, data._locker_items[i])
97
+ finally:
98
+ writer.string_sanitization_mode = old_string_sanitization_mode
95
99
 
96
100
  @staticmethod
97
101
  def deserialize(reader: EoReader) -> "LockerOpenServerPacket":
@@ -95,16 +95,20 @@ class LockerReplyServerPacket(Packet):
95
95
  writer (EoWriter): The writer that the data will be serialized to.
96
96
  data (LockerReplyServerPacket): The data to serialize.
97
97
  """
98
- if data._deposited_item is None:
99
- raise SerializationError("deposited_item must be provided.")
100
- Item.serialize(writer, data._deposited_item)
101
- if data._weight is None:
102
- raise SerializationError("weight must be provided.")
103
- Weight.serialize(writer, data._weight)
104
- if data._locker_items is None:
105
- raise SerializationError("locker_items must be provided.")
106
- for i in range(len(data._locker_items)):
107
- ThreeItem.serialize(writer, data._locker_items[i])
98
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
99
+ try:
100
+ if data._deposited_item is None:
101
+ raise SerializationError("deposited_item must be provided.")
102
+ Item.serialize(writer, data._deposited_item)
103
+ if data._weight is None:
104
+ raise SerializationError("weight must be provided.")
105
+ Weight.serialize(writer, data._weight)
106
+ if data._locker_items is None:
107
+ raise SerializationError("locker_items must be provided.")
108
+ for i in range(len(data._locker_items)):
109
+ ThreeItem.serialize(writer, data._locker_items[i])
110
+ finally:
111
+ writer.string_sanitization_mode = old_string_sanitization_mode
108
112
 
109
113
  @staticmethod
110
114
  def deserialize(reader: EoReader) -> "LockerReplyServerPacket":
@@ -81,9 +81,13 @@ class LockerSpecServerPacket(Packet):
81
81
  writer (EoWriter): The writer that the data will be serialized to.
82
82
  data (LockerSpecServerPacket): The data to serialize.
83
83
  """
84
- if data._locker_max_items is None:
85
- raise SerializationError("locker_max_items must be provided.")
86
- writer.add_char(data._locker_max_items)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._locker_max_items is None:
87
+ raise SerializationError("locker_max_items must be provided.")
88
+ writer.add_char(data._locker_max_items)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
87
91
 
88
92
  @staticmethod
89
93
  def deserialize(reader: EoReader) -> "LockerSpecServerPacket":
@@ -15,5 +15,11 @@ class LoginReply(IntEnum, metaclass=ProtocolEnumMeta):
15
15
  WrongUserPassword = 2
16
16
  Ok = 3
17
17
  Banned = 4
18
+ """
19
+ The official client won't display a message until the connection from the server is closed
20
+ """
18
21
  LoggedIn = 5
19
22
  Busy = 6
23
+ """
24
+ The official client won't display a message until the connection from the server is closed
25
+ """
@@ -89,33 +89,39 @@ class LoginReplyServerPacket(Packet):
89
89
  writer (EoWriter): The writer that the data will be serialized to.
90
90
  data (LoginReplyServerPacket): The data to serialize.
91
91
  """
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 == LoginReply.WrongUser:
96
- if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataWrongUser):
97
- raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataWrongUser for reply_code " + LoginReply(data._reply_code).name + ".")
98
- LoginReplyServerPacket.ReplyCodeDataWrongUser.serialize(writer, data._reply_code_data)
99
- elif data._reply_code == LoginReply.WrongUserPassword:
100
- if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataWrongUserPassword):
101
- raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataWrongUserPassword for reply_code " + LoginReply(data._reply_code).name + ".")
102
- LoginReplyServerPacket.ReplyCodeDataWrongUserPassword.serialize(writer, data._reply_code_data)
103
- elif data._reply_code == LoginReply.Ok:
104
- if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataOk):
105
- raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataOk for reply_code " + LoginReply(data._reply_code).name + ".")
106
- LoginReplyServerPacket.ReplyCodeDataOk.serialize(writer, data._reply_code_data)
107
- elif data._reply_code == LoginReply.Banned:
108
- if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataBanned):
109
- raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataBanned for reply_code " + LoginReply(data._reply_code).name + ".")
110
- LoginReplyServerPacket.ReplyCodeDataBanned.serialize(writer, data._reply_code_data)
111
- elif data._reply_code == LoginReply.LoggedIn:
112
- if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataLoggedIn):
113
- raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataLoggedIn for reply_code " + LoginReply(data._reply_code).name + ".")
114
- LoginReplyServerPacket.ReplyCodeDataLoggedIn.serialize(writer, data._reply_code_data)
115
- elif data._reply_code == LoginReply.Busy:
116
- if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataBusy):
117
- raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataBusy for reply_code " + LoginReply(data._reply_code).name + ".")
118
- LoginReplyServerPacket.ReplyCodeDataBusy.serialize(writer, data._reply_code_data)
92
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
93
+ try:
94
+ writer.string_sanitization_mode = True
95
+ if data._reply_code is None:
96
+ raise SerializationError("reply_code must be provided.")
97
+ writer.add_short(int(data._reply_code))
98
+ if data._reply_code == LoginReply.WrongUser:
99
+ if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataWrongUser):
100
+ raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataWrongUser for reply_code " + LoginReply(data._reply_code).name + ".")
101
+ LoginReplyServerPacket.ReplyCodeDataWrongUser.serialize(writer, data._reply_code_data)
102
+ elif data._reply_code == LoginReply.WrongUserPassword:
103
+ if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataWrongUserPassword):
104
+ raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataWrongUserPassword for reply_code " + LoginReply(data._reply_code).name + ".")
105
+ LoginReplyServerPacket.ReplyCodeDataWrongUserPassword.serialize(writer, data._reply_code_data)
106
+ elif data._reply_code == LoginReply.Ok:
107
+ if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataOk):
108
+ raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataOk for reply_code " + LoginReply(data._reply_code).name + ".")
109
+ LoginReplyServerPacket.ReplyCodeDataOk.serialize(writer, data._reply_code_data)
110
+ elif data._reply_code == LoginReply.Banned:
111
+ if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataBanned):
112
+ raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataBanned for reply_code " + LoginReply(data._reply_code).name + ".")
113
+ LoginReplyServerPacket.ReplyCodeDataBanned.serialize(writer, data._reply_code_data)
114
+ elif data._reply_code == LoginReply.LoggedIn:
115
+ if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataLoggedIn):
116
+ raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataLoggedIn for reply_code " + LoginReply(data._reply_code).name + ".")
117
+ LoginReplyServerPacket.ReplyCodeDataLoggedIn.serialize(writer, data._reply_code_data)
118
+ elif data._reply_code == LoginReply.Busy:
119
+ if not isinstance(data._reply_code_data, LoginReplyServerPacket.ReplyCodeDataBusy):
120
+ raise SerializationError("Expected reply_code_data to be type LoginReplyServerPacket.ReplyCodeDataBusy for reply_code " + LoginReply(data._reply_code).name + ".")
121
+ LoginReplyServerPacket.ReplyCodeDataBusy.serialize(writer, data._reply_code_data)
122
+ writer.string_sanitization_mode = False
123
+ finally:
124
+ writer.string_sanitization_mode = old_string_sanitization_mode
119
125
 
120
126
  @staticmethod
121
127
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket":
@@ -156,10 +162,9 @@ class LoginReplyServerPacket(Packet):
156
162
  return f"LoginReplyServerPacket(byte_size={repr(self._byte_size)}, reply_code={repr(self._reply_code)}, reply_code_data={repr(self._reply_code_data)})"
157
163
 
158
164
  ReplyCodeData = Union['LoginReplyServerPacket.ReplyCodeDataWrongUser', 'LoginReplyServerPacket.ReplyCodeDataWrongUserPassword', 'LoginReplyServerPacket.ReplyCodeDataOk', 'LoginReplyServerPacket.ReplyCodeDataBanned', 'LoginReplyServerPacket.ReplyCodeDataLoggedIn', 'LoginReplyServerPacket.ReplyCodeDataBusy', None]
159
- ReplyCodeData.__doc__ = \
160
- """
161
- Data associated with different values of the `reply_code` field.
162
- """
165
+ """
166
+ Data associated with different values of the `reply_code` field.
167
+ """
163
168
 
164
169
  class ReplyCodeDataWrongUser:
165
170
  """
@@ -187,7 +192,11 @@ class LoginReplyServerPacket(Packet):
187
192
  writer (EoWriter): The writer that the data will be serialized to.
188
193
  data (LoginReplyServerPacket.ReplyCodeDataWrongUser): The data to serialize.
189
194
  """
190
- writer.add_string("NO")
195
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
196
+ try:
197
+ writer.add_string("NO")
198
+ finally:
199
+ writer.string_sanitization_mode = old_string_sanitization_mode
191
200
 
192
201
  @staticmethod
193
202
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket.ReplyCodeDataWrongUser":
@@ -239,7 +248,11 @@ class LoginReplyServerPacket(Packet):
239
248
  writer (EoWriter): The writer that the data will be serialized to.
240
249
  data (LoginReplyServerPacket.ReplyCodeDataWrongUserPassword): The data to serialize.
241
250
  """
242
- writer.add_string("NO")
251
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
252
+ try:
253
+ writer.add_string("NO")
254
+ finally:
255
+ writer.string_sanitization_mode = old_string_sanitization_mode
243
256
 
244
257
  @staticmethod
245
258
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket.ReplyCodeDataWrongUserPassword":
@@ -309,19 +322,22 @@ class LoginReplyServerPacket(Packet):
309
322
  writer (EoWriter): The writer that the data will be serialized to.
310
323
  data (LoginReplyServerPacket.ReplyCodeDataOk): The data to serialize.
311
324
  """
312
- if data._characters_count is None:
313
- raise SerializationError("characters_count must be provided.")
314
- writer.add_char(data._characters_count)
315
- writer.add_char(0)
316
- writer.add_byte(0xFF)
317
- if data._characters is None:
318
- raise SerializationError("characters must be provided.")
319
- if len(data._characters) > 252:
320
- raise SerializationError(f"Expected length of characters to be 252 or less, got {len(data._characters)}.")
321
- for i in range(data._characters_count):
322
- if i > 0:
325
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
326
+ try:
327
+ if data._characters_count is None:
328
+ raise SerializationError("characters_count must be provided.")
329
+ writer.add_char(data._characters_count)
330
+ writer.add_char(0)
331
+ writer.add_byte(0xFF)
332
+ if data._characters is None:
333
+ raise SerializationError("characters must be provided.")
334
+ if len(data._characters) > 252:
335
+ raise SerializationError(f"Expected length of characters to be 252 or less, got {len(data._characters)}.")
336
+ for i in range(data._characters_count):
337
+ CharacterSelectionListEntry.serialize(writer, data._characters[i])
323
338
  writer.add_byte(0xFF)
324
- CharacterSelectionListEntry.serialize(writer, data._characters[i])
339
+ finally:
340
+ writer.string_sanitization_mode = old_string_sanitization_mode
325
341
 
326
342
  @staticmethod
327
343
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket.ReplyCodeDataOk":
@@ -344,8 +360,7 @@ class LoginReplyServerPacket(Packet):
344
360
  data._characters = []
345
361
  for i in range(data._characters_count):
346
362
  data._characters.append(CharacterSelectionListEntry.deserialize(reader))
347
- if i + 1 < data._characters_count:
348
- reader.next_chunk()
363
+ reader.next_chunk()
349
364
  data._byte_size = reader.position - reader_start_position
350
365
  return data
351
366
  finally:
@@ -380,7 +395,11 @@ class LoginReplyServerPacket(Packet):
380
395
  writer (EoWriter): The writer that the data will be serialized to.
381
396
  data (LoginReplyServerPacket.ReplyCodeDataBanned): The data to serialize.
382
397
  """
383
- writer.add_string("NO")
398
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
399
+ try:
400
+ writer.add_string("NO")
401
+ finally:
402
+ writer.string_sanitization_mode = old_string_sanitization_mode
384
403
 
385
404
  @staticmethod
386
405
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket.ReplyCodeDataBanned":
@@ -432,7 +451,11 @@ class LoginReplyServerPacket(Packet):
432
451
  writer (EoWriter): The writer that the data will be serialized to.
433
452
  data (LoginReplyServerPacket.ReplyCodeDataLoggedIn): The data to serialize.
434
453
  """
435
- writer.add_string("NO")
454
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
455
+ try:
456
+ writer.add_string("NO")
457
+ finally:
458
+ writer.string_sanitization_mode = old_string_sanitization_mode
436
459
 
437
460
  @staticmethod
438
461
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket.ReplyCodeDataLoggedIn":
@@ -484,7 +507,11 @@ class LoginReplyServerPacket(Packet):
484
507
  writer (EoWriter): The writer that the data will be serialized to.
485
508
  data (LoginReplyServerPacket.ReplyCodeDataBusy): The data to serialize.
486
509
  """
487
- writer.add_string("NO")
510
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
511
+ try:
512
+ writer.add_string("NO")
513
+ finally:
514
+ writer.string_sanitization_mode = old_string_sanitization_mode
488
515
 
489
516
  @staticmethod
490
517
  def deserialize(reader: EoReader) -> "LoginReplyServerPacket.ReplyCodeDataBusy":
@@ -83,15 +83,19 @@ class MapDrainDamageOther:
83
83
  writer (EoWriter): The writer that the data will be serialized to.
84
84
  data (MapDrainDamageOther): The data to serialize.
85
85
  """
86
- if data._player_id is None:
87
- raise SerializationError("player_id must be provided.")
88
- writer.add_short(data._player_id)
89
- if data._hp_percentage is None:
90
- raise SerializationError("hp_percentage must be provided.")
91
- writer.add_char(data._hp_percentage)
92
- if data._damage is None:
93
- raise SerializationError("damage must be provided.")
94
- writer.add_short(data._damage)
86
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
87
+ try:
88
+ if data._player_id is None:
89
+ raise SerializationError("player_id must be provided.")
90
+ writer.add_short(data._player_id)
91
+ if data._hp_percentage is None:
92
+ raise SerializationError("hp_percentage must be provided.")
93
+ writer.add_char(data._hp_percentage)
94
+ if data._damage is None:
95
+ raise SerializationError("damage must be provided.")
96
+ writer.add_short(data._damage)
97
+ finally:
98
+ writer.string_sanitization_mode = old_string_sanitization_mode
95
99
 
96
100
  @staticmethod
97
101
  def deserialize(reader: EoReader) -> "MapDrainDamageOther":
@@ -41,9 +41,13 @@ class MapFile:
41
41
  writer (EoWriter): The writer that the data will be serialized to.
42
42
  data (MapFile): The data to serialize.
43
43
  """
44
- if data._content is None:
45
- raise SerializationError("content must be provided.")
46
- writer.add_bytes(data._content)
44
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
45
+ try:
46
+ if data._content is None:
47
+ raise SerializationError("content must be provided.")
48
+ writer.add_bytes(data._content)
49
+ finally:
50
+ writer.string_sanitization_mode = old_string_sanitization_mode
47
51
 
48
52
  @staticmethod
49
53
  def deserialize(reader: EoReader) -> "MapFile":
@@ -81,9 +81,13 @@ class MarriageOpenServerPacket(Packet):
81
81
  writer (EoWriter): The writer that the data will be serialized to.
82
82
  data (MarriageOpenServerPacket): The data to serialize.
83
83
  """
84
- if data._session_id is None:
85
- raise SerializationError("session_id must be provided.")
86
- writer.add_three(data._session_id)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._session_id is None:
87
+ raise SerializationError("session_id must be provided.")
88
+ writer.add_three(data._session_id)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
87
91
 
88
92
  @staticmethod
89
93
  def deserialize(reader: EoReader) -> "MarriageOpenServerPacket":
@@ -87,13 +87,17 @@ class MarriageReplyServerPacket(Packet):
87
87
  writer (EoWriter): The writer that the data will be serialized to.
88
88
  data (MarriageReplyServerPacket): The data to serialize.
89
89
  """
90
- if data._reply_code is None:
91
- raise SerializationError("reply_code must be provided.")
92
- writer.add_short(int(data._reply_code))
93
- if data._reply_code == MarriageReply.Success:
94
- if not isinstance(data._reply_code_data, MarriageReplyServerPacket.ReplyCodeDataSuccess):
95
- raise SerializationError("Expected reply_code_data to be type MarriageReplyServerPacket.ReplyCodeDataSuccess for reply_code " + MarriageReply(data._reply_code).name + ".")
96
- MarriageReplyServerPacket.ReplyCodeDataSuccess.serialize(writer, data._reply_code_data)
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
97
101
 
98
102
  @staticmethod
99
103
  def deserialize(reader: EoReader) -> "MarriageReplyServerPacket":
@@ -122,10 +126,9 @@ class MarriageReplyServerPacket(Packet):
122
126
  return f"MarriageReplyServerPacket(byte_size={repr(self._byte_size)}, reply_code={repr(self._reply_code)}, reply_code_data={repr(self._reply_code_data)})"
123
127
 
124
128
  ReplyCodeData = Union['MarriageReplyServerPacket.ReplyCodeDataSuccess', None]
125
- ReplyCodeData.__doc__ = \
126
- """
127
- Data associated with different values of the `reply_code` field.
128
- """
129
+ """
130
+ Data associated with different values of the `reply_code` field.
131
+ """
129
132
 
130
133
  class ReplyCodeDataSuccess:
131
134
  """
@@ -169,9 +172,13 @@ class MarriageReplyServerPacket(Packet):
169
172
  writer (EoWriter): The writer that the data will be serialized to.
170
173
  data (MarriageReplyServerPacket.ReplyCodeDataSuccess): The data to serialize.
171
174
  """
172
- if data._gold_amount is None:
173
- raise SerializationError("gold_amount must be provided.")
174
- writer.add_int(data._gold_amount)
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
175
182
 
176
183
  @staticmethod
177
184
  def deserialize(reader: EoReader) -> "MarriageReplyServerPacket.ReplyCodeDataSuccess":
@@ -82,14 +82,19 @@ class MessageAcceptServerPacket(Packet):
82
82
  writer (EoWriter): The writer that the data will be serialized to.
83
83
  data (MessageAcceptServerPacket): The data to serialize.
84
84
  """
85
- if data._messages is None:
86
- raise SerializationError("messages must be provided.")
87
- if len(data._messages) != 4:
88
- raise SerializationError(f"Expected length of messages to be exactly 4, got {len(data._messages)}.")
89
- for i in range(4):
90
- if i > 0:
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])
91
94
  writer.add_byte(0xFF)
92
- writer.add_string(data._messages[i])
95
+ writer.string_sanitization_mode = False
96
+ finally:
97
+ writer.string_sanitization_mode = old_string_sanitization_mode
93
98
 
94
99
  @staticmethod
95
100
  def deserialize(reader: EoReader) -> "MessageAcceptServerPacket":
@@ -110,8 +115,7 @@ class MessageAcceptServerPacket(Packet):
110
115
  data._messages = []
111
116
  for i in range(4):
112
117
  data._messages.append(reader.get_string())
113
- if i + 1 < 4:
114
- reader.next_chunk()
118
+ reader.next_chunk()
115
119
  reader.chunked_reading_mode = False
116
120
  data._byte_size = reader.position - reader_start_position
117
121
  return data
@@ -63,9 +63,11 @@ class MessageCloseServerPacket(Packet):
63
63
  writer (EoWriter): The writer that the data will be serialized to.
64
64
  data (MessageCloseServerPacket): The data to serialize.
65
65
  """
66
- old_writer_length: int = len(writer)
67
- if len(writer) == old_writer_length:
66
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
67
+ try:
68
68
  writer.add_string("r")
69
+ finally:
70
+ writer.string_sanitization_mode = old_string_sanitization_mode
69
71
 
70
72
  @staticmethod
71
73
  def deserialize(reader: EoReader) -> "MessageCloseServerPacket":
@@ -82,8 +84,7 @@ class MessageCloseServerPacket(Packet):
82
84
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
83
85
  try:
84
86
  reader_start_position: int = reader.position
85
- if reader.position == reader_start_position:
86
- reader.get_string()
87
+ reader.get_string()
87
88
  data._byte_size = reader.position - reader_start_position
88
89
  return data
89
90
  finally:
@@ -73,9 +73,13 @@ class MessageOpenServerPacket(Packet):
73
73
  writer (EoWriter): The writer that the data will be serialized to.
74
74
  data (MessageOpenServerPacket): The data to serialize.
75
75
  """
76
- if data._message is None:
77
- raise SerializationError("message must be provided.")
78
- writer.add_string(data._message)
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
79
83
 
80
84
  @staticmethod
81
85
  def deserialize(reader: EoReader) -> "MessageOpenServerPacket":
@@ -63,9 +63,11 @@ class MessagePongServerPacket(Packet):
63
63
  writer (EoWriter): The writer that the data will be serialized to.
64
64
  data (MessagePongServerPacket): The data to serialize.
65
65
  """
66
- old_writer_length: int = len(writer)
67
- if len(writer) == old_writer_length:
66
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
67
+ try:
68
68
  writer.add_short(2)
69
+ finally:
70
+ writer.string_sanitization_mode = old_string_sanitization_mode
69
71
 
70
72
  @staticmethod
71
73
  def deserialize(reader: EoReader) -> "MessagePongServerPacket":
@@ -82,8 +84,7 @@ class MessagePongServerPacket(Packet):
82
84
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
83
85
  try:
84
86
  reader_start_position: int = reader.position
85
- if reader.position == reader_start_position:
86
- reader.get_short()
87
+ reader.get_short()
87
88
  data._byte_size = reader.position - reader_start_position
88
89
  return data
89
90
  finally:
@@ -81,9 +81,13 @@ class MusicPlayerServerPacket(Packet):
81
81
  writer (EoWriter): The writer that the data will be serialized to.
82
82
  data (MusicPlayerServerPacket): The data to serialize.
83
83
  """
84
- if data._sound_id is None:
85
- raise SerializationError("sound_id must be provided.")
86
- writer.add_char(data._sound_id)
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
87
91
 
88
92
  @staticmethod
89
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
- if data._characters_count is None:
77
- raise SerializationError("characters_count must be provided.")
78
- writer.add_char(data._characters_count)
79
- writer.add_byte(0xFF)
80
- if data._characters is None:
81
- raise SerializationError("characters must be provided.")
82
- if len(data._characters) > 252:
83
- raise SerializationError(f"Expected length of characters to be 252 or less, got {len(data._characters)}.")
84
- for i in range(data._characters_count):
85
- if i > 0:
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
- CharacterMapInfo.serialize(writer, data._characters[i])
88
- if data._npcs is None:
89
- raise SerializationError("npcs must be provided.")
90
- for i in range(len(data._npcs)):
91
- NpcMapInfo.serialize(writer, data._npcs[i])
92
- writer.add_byte(0xFF)
93
- if data._items is None:
94
- raise SerializationError("items must be provided.")
95
- for i in range(len(data._items)):
96
- ItemMapInfo.serialize(writer, data._items[i])
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
- if i + 1 < data._characters_count:
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):