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
@@ -12,7 +12,7 @@ from .....data.eo_reader import EoReader
12
12
 
13
13
  class AvatarChange:
14
14
  """
15
- Information about a nearby player's appearance changing
15
+ Information about a nearby player's appearance changing
16
16
  """
17
17
  _byte_size: int = 0
18
18
  _player_id: int = None # type: ignore [assignment]
@@ -82,27 +82,31 @@ class AvatarChange:
82
82
  writer (EoWriter): The writer that the data will be serialized to.
83
83
  data (AvatarChange): The data to serialize.
84
84
  """
85
- if data._player_id is None:
86
- raise SerializationError("player_id must be provided.")
87
- writer.add_short(data._player_id)
88
- if data._change_type is None:
89
- raise SerializationError("change_type must be provided.")
90
- writer.add_char(int(data._change_type))
91
- if data._sound is None:
92
- raise SerializationError("sound must be provided.")
93
- writer.add_char(1 if data._sound else 0)
94
- if data._change_type == AvatarChangeType.Equipment:
95
- if not isinstance(data._change_type_data, AvatarChange.ChangeTypeDataEquipment):
96
- raise SerializationError("Expected change_type_data to be type AvatarChange.ChangeTypeDataEquipment for change_type " + AvatarChangeType(data._change_type).name + ".")
97
- AvatarChange.ChangeTypeDataEquipment.serialize(writer, data._change_type_data)
98
- elif data._change_type == AvatarChangeType.Hair:
99
- if not isinstance(data._change_type_data, AvatarChange.ChangeTypeDataHair):
100
- raise SerializationError("Expected change_type_data to be type AvatarChange.ChangeTypeDataHair for change_type " + AvatarChangeType(data._change_type).name + ".")
101
- AvatarChange.ChangeTypeDataHair.serialize(writer, data._change_type_data)
102
- elif data._change_type == AvatarChangeType.HairColor:
103
- if not isinstance(data._change_type_data, AvatarChange.ChangeTypeDataHairColor):
104
- raise SerializationError("Expected change_type_data to be type AvatarChange.ChangeTypeDataHairColor for change_type " + AvatarChangeType(data._change_type).name + ".")
105
- AvatarChange.ChangeTypeDataHairColor.serialize(writer, data._change_type_data)
85
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
86
+ try:
87
+ if data._player_id is None:
88
+ raise SerializationError("player_id must be provided.")
89
+ writer.add_short(data._player_id)
90
+ if data._change_type is None:
91
+ raise SerializationError("change_type must be provided.")
92
+ writer.add_char(int(data._change_type))
93
+ if data._sound is None:
94
+ raise SerializationError("sound must be provided.")
95
+ writer.add_char(1 if data._sound else 0)
96
+ if data._change_type == AvatarChangeType.Equipment:
97
+ if not isinstance(data._change_type_data, AvatarChange.ChangeTypeDataEquipment):
98
+ raise SerializationError("Expected change_type_data to be type AvatarChange.ChangeTypeDataEquipment for change_type " + AvatarChangeType(data._change_type).name + ".")
99
+ AvatarChange.ChangeTypeDataEquipment.serialize(writer, data._change_type_data)
100
+ elif data._change_type == AvatarChangeType.Hair:
101
+ if not isinstance(data._change_type_data, AvatarChange.ChangeTypeDataHair):
102
+ raise SerializationError("Expected change_type_data to be type AvatarChange.ChangeTypeDataHair for change_type " + AvatarChangeType(data._change_type).name + ".")
103
+ AvatarChange.ChangeTypeDataHair.serialize(writer, data._change_type_data)
104
+ elif data._change_type == AvatarChangeType.HairColor:
105
+ if not isinstance(data._change_type_data, AvatarChange.ChangeTypeDataHairColor):
106
+ raise SerializationError("Expected change_type_data to be type AvatarChange.ChangeTypeDataHairColor for change_type " + AvatarChangeType(data._change_type).name + ".")
107
+ AvatarChange.ChangeTypeDataHairColor.serialize(writer, data._change_type_data)
108
+ finally:
109
+ writer.string_sanitization_mode = old_string_sanitization_mode
106
110
 
107
111
  @staticmethod
108
112
  def deserialize(reader: EoReader) -> "AvatarChange":
@@ -137,10 +141,9 @@ class AvatarChange:
137
141
  return f"AvatarChange(byte_size={repr(self._byte_size)}, player_id={repr(self._player_id)}, change_type={repr(self._change_type)}, sound={repr(self._sound)}, change_type_data={repr(self._change_type_data)})"
138
142
 
139
143
  ChangeTypeData = Union['AvatarChange.ChangeTypeDataEquipment', 'AvatarChange.ChangeTypeDataHair', 'AvatarChange.ChangeTypeDataHairColor', None]
140
- ChangeTypeData.__doc__ = \
141
- """
142
- Data associated with different values of the `change_type` field.
143
- """
144
+ """
145
+ Data associated with different values of the `change_type` field.
146
+ """
144
147
 
145
148
  class ChangeTypeDataEquipment:
146
149
  """
@@ -176,9 +179,13 @@ class AvatarChange:
176
179
  writer (EoWriter): The writer that the data will be serialized to.
177
180
  data (AvatarChange.ChangeTypeDataEquipment): The data to serialize.
178
181
  """
179
- if data._equipment is None:
180
- raise SerializationError("equipment must be provided.")
181
- EquipmentChange.serialize(writer, data._equipment)
182
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
183
+ try:
184
+ if data._equipment is None:
185
+ raise SerializationError("equipment must be provided.")
186
+ EquipmentChange.serialize(writer, data._equipment)
187
+ finally:
188
+ writer.string_sanitization_mode = old_string_sanitization_mode
182
189
 
183
190
  @staticmethod
184
191
  def deserialize(reader: EoReader) -> "AvatarChange.ChangeTypeDataEquipment":
@@ -263,12 +270,16 @@ class AvatarChange:
263
270
  writer (EoWriter): The writer that the data will be serialized to.
264
271
  data (AvatarChange.ChangeTypeDataHair): The data to serialize.
265
272
  """
266
- if data._hair_style is None:
267
- raise SerializationError("hair_style must be provided.")
268
- writer.add_char(data._hair_style)
269
- if data._hair_color is None:
270
- raise SerializationError("hair_color must be provided.")
271
- writer.add_char(data._hair_color)
273
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
274
+ try:
275
+ if data._hair_style is None:
276
+ raise SerializationError("hair_style must be provided.")
277
+ writer.add_char(data._hair_style)
278
+ if data._hair_color is None:
279
+ raise SerializationError("hair_color must be provided.")
280
+ writer.add_char(data._hair_color)
281
+ finally:
282
+ writer.string_sanitization_mode = old_string_sanitization_mode
272
283
 
273
284
  @staticmethod
274
285
  def deserialize(reader: EoReader) -> "AvatarChange.ChangeTypeDataHair":
@@ -337,9 +348,13 @@ class AvatarChange:
337
348
  writer (EoWriter): The writer that the data will be serialized to.
338
349
  data (AvatarChange.ChangeTypeDataHairColor): The data to serialize.
339
350
  """
340
- if data._hair_color is None:
341
- raise SerializationError("hair_color must be provided.")
342
- writer.add_char(data._hair_color)
351
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
352
+ try:
353
+ if data._hair_color is None:
354
+ raise SerializationError("hair_color must be provided.")
355
+ writer.add_char(data._hair_color)
356
+ finally:
357
+ writer.string_sanitization_mode = old_string_sanitization_mode
343
358
 
344
359
  @staticmethod
345
360
  def deserialize(reader: EoReader) -> "AvatarChange.ChangeTypeDataHairColor":
@@ -8,7 +8,7 @@ from ....protocol_enum_meta import ProtocolEnumMeta
8
8
 
9
9
  class AvatarChangeType(IntEnum, metaclass=ProtocolEnumMeta):
10
10
  """
11
- How a player's appearance is changing
11
+ How a player's appearance is changing
12
12
  """
13
13
  Equipment = 1
14
14
  Hair = 2
@@ -93,12 +93,16 @@ class AvatarRemoveServerPacket(Packet):
93
93
  writer (EoWriter): The writer that the data will be serialized to.
94
94
  data (AvatarRemoveServerPacket): The data to serialize.
95
95
  """
96
- if data._player_id is None:
97
- raise SerializationError("player_id must be provided.")
98
- writer.add_short(data._player_id)
99
- reached_missing_optional = data._warp_effect is None
100
- if not reached_missing_optional:
101
- writer.add_char(int(cast(WarpEffect, data._warp_effect)))
96
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
97
+ try:
98
+ if data._player_id is None:
99
+ raise SerializationError("player_id must be provided.")
100
+ writer.add_short(data._player_id)
101
+ reached_missing_optional = data._warp_effect is None
102
+ if not reached_missing_optional:
103
+ writer.add_char(int(cast(WarpEffect, data._warp_effect)))
104
+ finally:
105
+ writer.string_sanitization_mode = old_string_sanitization_mode
102
106
 
103
107
  @staticmethod
104
108
  def deserialize(reader: EoReader) -> "AvatarRemoveServerPacket":
@@ -151,24 +151,28 @@ class AvatarReplyServerPacket(Packet):
151
151
  writer (EoWriter): The writer that the data will be serialized to.
152
152
  data (AvatarReplyServerPacket): The data to serialize.
153
153
  """
154
- if data._player_id is None:
155
- raise SerializationError("player_id must be provided.")
156
- writer.add_short(data._player_id)
157
- if data._victim_id is None:
158
- raise SerializationError("victim_id must be provided.")
159
- writer.add_short(data._victim_id)
160
- if data._damage is None:
161
- raise SerializationError("damage must be provided.")
162
- writer.add_three(data._damage)
163
- if data._direction is None:
164
- raise SerializationError("direction must be provided.")
165
- writer.add_char(int(data._direction))
166
- if data._hp_percentage is None:
167
- raise SerializationError("hp_percentage must be provided.")
168
- writer.add_char(data._hp_percentage)
169
- if data._dead is None:
170
- raise SerializationError("dead must be provided.")
171
- writer.add_char(1 if data._dead else 0)
154
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
155
+ try:
156
+ if data._player_id is None:
157
+ raise SerializationError("player_id must be provided.")
158
+ writer.add_short(data._player_id)
159
+ if data._victim_id is None:
160
+ raise SerializationError("victim_id must be provided.")
161
+ writer.add_short(data._victim_id)
162
+ if data._damage is None:
163
+ raise SerializationError("damage must be provided.")
164
+ writer.add_three(data._damage)
165
+ if data._direction is None:
166
+ raise SerializationError("direction must be provided.")
167
+ writer.add_char(int(data._direction))
168
+ if data._hp_percentage is None:
169
+ raise SerializationError("hp_percentage must be provided.")
170
+ writer.add_char(data._hp_percentage)
171
+ if data._dead is None:
172
+ raise SerializationError("dead must be provided.")
173
+ writer.add_char(1 if data._dead else 0)
174
+ finally:
175
+ writer.string_sanitization_mode = old_string_sanitization_mode
172
176
 
173
177
  @staticmethod
174
178
  def deserialize(reader: EoReader) -> "AvatarReplyServerPacket":
@@ -115,15 +115,19 @@ class BankOpenServerPacket(Packet):
115
115
  writer (EoWriter): The writer that the data will be serialized to.
116
116
  data (BankOpenServerPacket): The data to serialize.
117
117
  """
118
- if data._gold_bank is None:
119
- raise SerializationError("gold_bank must be provided.")
120
- writer.add_int(data._gold_bank)
121
- if data._session_id is None:
122
- raise SerializationError("session_id must be provided.")
123
- writer.add_three(data._session_id)
124
- if data._locker_upgrades is None:
125
- raise SerializationError("locker_upgrades must be provided.")
126
- writer.add_char(data._locker_upgrades)
118
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
119
+ try:
120
+ if data._gold_bank is None:
121
+ raise SerializationError("gold_bank must be provided.")
122
+ writer.add_int(data._gold_bank)
123
+ if data._session_id is None:
124
+ raise SerializationError("session_id must be provided.")
125
+ writer.add_three(data._session_id)
126
+ if data._locker_upgrades is None:
127
+ raise SerializationError("locker_upgrades must be provided.")
128
+ writer.add_char(data._locker_upgrades)
129
+ finally:
130
+ writer.string_sanitization_mode = old_string_sanitization_mode
127
131
 
128
132
  @staticmethod
129
133
  def deserialize(reader: EoReader) -> "BankOpenServerPacket":
@@ -98,12 +98,16 @@ class BankReplyServerPacket(Packet):
98
98
  writer (EoWriter): The writer that the data will be serialized to.
99
99
  data (BankReplyServerPacket): The data to serialize.
100
100
  """
101
- if data._gold_inventory is None:
102
- raise SerializationError("gold_inventory must be provided.")
103
- writer.add_int(data._gold_inventory)
104
- if data._gold_bank is None:
105
- raise SerializationError("gold_bank must be provided.")
106
- writer.add_int(data._gold_bank)
101
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
102
+ try:
103
+ if data._gold_inventory is None:
104
+ raise SerializationError("gold_inventory must be provided.")
105
+ writer.add_int(data._gold_inventory)
106
+ if data._gold_bank is None:
107
+ raise SerializationError("gold_bank must be provided.")
108
+ writer.add_int(data._gold_bank)
109
+ finally:
110
+ writer.string_sanitization_mode = old_string_sanitization_mode
107
111
 
108
112
  @staticmethod
109
113
  def deserialize(reader: EoReader) -> "BankReplyServerPacket":
@@ -91,12 +91,16 @@ class BarberAgreeServerPacket(Packet):
91
91
  writer (EoWriter): The writer that the data will be serialized to.
92
92
  data (BarberAgreeServerPacket): The data to serialize.
93
93
  """
94
- if data._gold_amount is None:
95
- raise SerializationError("gold_amount must be provided.")
96
- writer.add_int(data._gold_amount)
97
- if data._change is None:
98
- raise SerializationError("change must be provided.")
99
- AvatarChange.serialize(writer, data._change)
94
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
95
+ try:
96
+ if data._gold_amount is None:
97
+ raise SerializationError("gold_amount must be provided.")
98
+ writer.add_int(data._gold_amount)
99
+ if data._change is None:
100
+ raise SerializationError("change must be provided.")
101
+ AvatarChange.serialize(writer, data._change)
102
+ finally:
103
+ writer.string_sanitization_mode = old_string_sanitization_mode
100
104
 
101
105
  @staticmethod
102
106
  def deserialize(reader: EoReader) -> "BarberAgreeServerPacket":
@@ -81,9 +81,13 @@ class BarberOpenServerPacket(Packet):
81
81
  writer (EoWriter): The writer that the data will be serialized to.
82
82
  data (BarberOpenServerPacket): The data to serialize.
83
83
  """
84
- if data._session_id is None:
85
- raise SerializationError("session_id must be provided.")
86
- writer.add_int(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_int(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) -> "BarberOpenServerPacket":
@@ -66,12 +66,16 @@ class BigCoords:
66
66
  writer (EoWriter): The writer that the data will be serialized to.
67
67
  data (BigCoords): The data to serialize.
68
68
  """
69
- if data._x is None:
70
- raise SerializationError("x must be provided.")
71
- writer.add_short(data._x)
72
- if data._y is None:
73
- raise SerializationError("y must be provided.")
74
- writer.add_short(data._y)
69
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
70
+ try:
71
+ if data._x is None:
72
+ raise SerializationError("x must be provided.")
73
+ writer.add_short(data._x)
74
+ if data._y is None:
75
+ raise SerializationError("y must be provided.")
76
+ writer.add_short(data._y)
77
+ finally:
78
+ writer.string_sanitization_mode = old_string_sanitization_mode
75
79
 
76
80
  @staticmethod
77
81
  def deserialize(reader: EoReader) -> "BigCoords":
@@ -102,20 +102,25 @@ class BoardOpenServerPacket(Packet):
102
102
  writer (EoWriter): The writer that the data will be serialized to.
103
103
  data (BoardOpenServerPacket): The data to serialize.
104
104
  """
105
- if data._board_id is None:
106
- raise SerializationError("board_id must be provided.")
107
- writer.add_char(data._board_id)
108
- if data._posts_count is None:
109
- raise SerializationError("posts_count must be provided.")
110
- writer.add_char(data._posts_count)
111
- if data._posts is None:
112
- raise SerializationError("posts must be provided.")
113
- if len(data._posts) > 252:
114
- raise SerializationError(f"Expected length of posts to be 252 or less, got {len(data._posts)}.")
115
- for i in range(data._posts_count):
116
- if i > 0:
105
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
106
+ try:
107
+ writer.string_sanitization_mode = True
108
+ if data._board_id is None:
109
+ raise SerializationError("board_id must be provided.")
110
+ writer.add_char(data._board_id)
111
+ if data._posts_count is None:
112
+ raise SerializationError("posts_count must be provided.")
113
+ writer.add_char(data._posts_count)
114
+ if data._posts is None:
115
+ raise SerializationError("posts must be provided.")
116
+ if len(data._posts) > 252:
117
+ raise SerializationError(f"Expected length of posts to be 252 or less, got {len(data._posts)}.")
118
+ for i in range(data._posts_count):
119
+ BoardPostListing.serialize(writer, data._posts[i])
117
120
  writer.add_byte(0xFF)
118
- BoardPostListing.serialize(writer, data._posts[i])
121
+ writer.string_sanitization_mode = False
122
+ finally:
123
+ writer.string_sanitization_mode = old_string_sanitization_mode
119
124
 
120
125
  @staticmethod
121
126
  def deserialize(reader: EoReader) -> "BoardOpenServerPacket":
@@ -138,8 +143,7 @@ class BoardOpenServerPacket(Packet):
138
143
  data._posts = []
139
144
  for i in range(data._posts_count):
140
145
  data._posts.append(BoardPostListing.deserialize(reader))
141
- if i + 1 < data._posts_count:
142
- reader.next_chunk()
146
+ reader.next_chunk()
143
147
  reader.chunked_reading_mode = False
144
148
  data._byte_size = reader.position - reader_start_position
145
149
  return data
@@ -90,12 +90,18 @@ class BoardPlayerServerPacket(Packet):
90
90
  writer (EoWriter): The writer that the data will be serialized to.
91
91
  data (BoardPlayerServerPacket): The data to serialize.
92
92
  """
93
- if data._post_id is None:
94
- raise SerializationError("post_id must be provided.")
95
- writer.add_short(data._post_id)
96
- if data._post_body is None:
97
- raise SerializationError("post_body must be provided.")
98
- writer.add_string(data._post_body)
93
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
94
+ try:
95
+ writer.string_sanitization_mode = True
96
+ if data._post_id is None:
97
+ raise SerializationError("post_id must be provided.")
98
+ writer.add_short(data._post_id)
99
+ if data._post_body is None:
100
+ raise SerializationError("post_body must be provided.")
101
+ writer.add_string(data._post_body)
102
+ writer.string_sanitization_mode = False
103
+ finally:
104
+ writer.string_sanitization_mode = old_string_sanitization_mode
99
105
 
100
106
  @staticmethod
101
107
  def deserialize(reader: EoReader) -> "BoardPlayerServerPacket":
@@ -67,17 +67,23 @@ class BoardPostListing:
67
67
  writer (EoWriter): The writer that the data will be serialized to.
68
68
  data (BoardPostListing): The data to serialize.
69
69
  """
70
- if data._post_id is None:
71
- raise SerializationError("post_id must be provided.")
72
- writer.add_short(data._post_id)
73
- writer.add_byte(0xFF)
74
- if data._author is None:
75
- raise SerializationError("author must be provided.")
76
- writer.add_string(data._author)
77
- writer.add_byte(0xFF)
78
- if data._subject is None:
79
- raise SerializationError("subject must be provided.")
80
- writer.add_string(data._subject)
70
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
71
+ try:
72
+ writer.string_sanitization_mode = True
73
+ if data._post_id is None:
74
+ raise SerializationError("post_id must be provided.")
75
+ writer.add_short(data._post_id)
76
+ writer.add_byte(0xFF)
77
+ if data._author is None:
78
+ raise SerializationError("author must be provided.")
79
+ writer.add_string(data._author)
80
+ writer.add_byte(0xFF)
81
+ if data._subject is None:
82
+ raise SerializationError("subject must be provided.")
83
+ writer.add_string(data._subject)
84
+ writer.string_sanitization_mode = False
85
+ finally:
86
+ writer.string_sanitization_mode = old_string_sanitization_mode
81
87
 
82
88
  @staticmethod
83
89
  def deserialize(reader: EoReader) -> "BoardPostListing":
@@ -94,19 +94,24 @@ class BookReplyServerPacket(Packet):
94
94
  writer (EoWriter): The writer that the data will be serialized to.
95
95
  data (BookReplyServerPacket): The data to serialize.
96
96
  """
97
- if data._details is None:
98
- raise SerializationError("details must be provided.")
99
- CharacterDetails.serialize(writer, data._details)
100
- if data._icon is None:
101
- raise SerializationError("icon must be provided.")
102
- writer.add_char(int(data._icon))
103
- writer.add_byte(0xFF)
104
- if data._quest_names is None:
105
- raise SerializationError("quest_names must be provided.")
106
- for i in range(len(data._quest_names)):
107
- if i > 0:
97
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
98
+ try:
99
+ writer.string_sanitization_mode = True
100
+ if data._details is None:
101
+ raise SerializationError("details must be provided.")
102
+ CharacterDetails.serialize(writer, data._details)
103
+ if data._icon is None:
104
+ raise SerializationError("icon must be provided.")
105
+ writer.add_char(int(data._icon))
106
+ writer.add_byte(0xFF)
107
+ if data._quest_names is None:
108
+ raise SerializationError("quest_names must be provided.")
109
+ for i in range(len(data._quest_names)):
110
+ writer.add_string(data._quest_names[i])
108
111
  writer.add_byte(0xFF)
109
- writer.add_string(data._quest_names[i])
112
+ writer.string_sanitization_mode = False
113
+ finally:
114
+ writer.string_sanitization_mode = old_string_sanitization_mode
110
115
 
111
116
  @staticmethod
112
117
  def deserialize(reader: EoReader) -> "BookReplyServerPacket":
@@ -135,21 +135,25 @@ class CastAcceptServerPacket(Packet):
135
135
  writer (EoWriter): The writer that the data will be serialized to.
136
136
  data (CastAcceptServerPacket): The data to serialize.
137
137
  """
138
- if data._spell_id is None:
139
- raise SerializationError("spell_id must be provided.")
140
- writer.add_short(data._spell_id)
141
- if data._npc_killed_data is None:
142
- raise SerializationError("npc_killed_data must be provided.")
143
- NpcKilledData.serialize(writer, data._npc_killed_data)
144
- if data._caster_tp is None:
145
- raise SerializationError("caster_tp must be provided.")
146
- writer.add_short(data._caster_tp)
147
- if data._experience is None:
148
- raise SerializationError("experience must be provided.")
149
- writer.add_int(data._experience)
150
- if data._level_up is None:
151
- raise SerializationError("level_up must be provided.")
152
- LevelUpStats.serialize(writer, data._level_up)
138
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
139
+ try:
140
+ if data._spell_id is None:
141
+ raise SerializationError("spell_id must be provided.")
142
+ writer.add_short(data._spell_id)
143
+ if data._npc_killed_data is None:
144
+ raise SerializationError("npc_killed_data must be provided.")
145
+ NpcKilledData.serialize(writer, data._npc_killed_data)
146
+ if data._caster_tp is None:
147
+ raise SerializationError("caster_tp must be provided.")
148
+ writer.add_short(data._caster_tp)
149
+ if data._experience is None:
150
+ raise SerializationError("experience must be provided.")
151
+ writer.add_int(data._experience)
152
+ if data._level_up is None:
153
+ raise SerializationError("level_up must be provided.")
154
+ LevelUpStats.serialize(writer, data._level_up)
155
+ finally:
156
+ writer.string_sanitization_mode = old_string_sanitization_mode
153
157
 
154
158
  @staticmethod
155
159
  def deserialize(reader: EoReader) -> "CastAcceptServerPacket":
@@ -188,30 +188,34 @@ class CastReplyServerPacket(Packet):
188
188
  writer (EoWriter): The writer that the data will be serialized to.
189
189
  data (CastReplyServerPacket): The data to serialize.
190
190
  """
191
- if data._spell_id is None:
192
- raise SerializationError("spell_id must be provided.")
193
- writer.add_short(data._spell_id)
194
- if data._caster_id is None:
195
- raise SerializationError("caster_id must be provided.")
196
- writer.add_short(data._caster_id)
197
- if data._caster_direction is None:
198
- raise SerializationError("caster_direction must be provided.")
199
- writer.add_char(int(data._caster_direction))
200
- if data._npc_index is None:
201
- raise SerializationError("npc_index must be provided.")
202
- writer.add_short(data._npc_index)
203
- if data._damage is None:
204
- raise SerializationError("damage must be provided.")
205
- writer.add_three(data._damage)
206
- if data._hp_percentage is None:
207
- raise SerializationError("hp_percentage must be provided.")
208
- writer.add_short(data._hp_percentage)
209
- if data._caster_tp is None:
210
- raise SerializationError("caster_tp must be provided.")
211
- writer.add_short(data._caster_tp)
212
- reached_missing_optional = data._kill_steal_protection is None
213
- if not reached_missing_optional:
214
- writer.add_char(int(cast(NpcKillStealProtectionState, data._kill_steal_protection)))
191
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
192
+ try:
193
+ if data._spell_id is None:
194
+ raise SerializationError("spell_id must be provided.")
195
+ writer.add_short(data._spell_id)
196
+ if data._caster_id is None:
197
+ raise SerializationError("caster_id must be provided.")
198
+ writer.add_short(data._caster_id)
199
+ if data._caster_direction is None:
200
+ raise SerializationError("caster_direction must be provided.")
201
+ writer.add_char(int(data._caster_direction))
202
+ if data._npc_index is None:
203
+ raise SerializationError("npc_index must be provided.")
204
+ writer.add_short(data._npc_index)
205
+ if data._damage is None:
206
+ raise SerializationError("damage must be provided.")
207
+ writer.add_three(data._damage)
208
+ if data._hp_percentage is None:
209
+ raise SerializationError("hp_percentage must be provided.")
210
+ writer.add_short(data._hp_percentage)
211
+ if data._caster_tp is None:
212
+ raise SerializationError("caster_tp must be provided.")
213
+ writer.add_short(data._caster_tp)
214
+ reached_missing_optional = data._kill_steal_protection is None
215
+ if not reached_missing_optional:
216
+ writer.add_char(int(cast(NpcKillStealProtectionState, data._kill_steal_protection)))
217
+ finally:
218
+ writer.string_sanitization_mode = old_string_sanitization_mode
215
219
 
216
220
  @staticmethod
217
221
  def deserialize(reader: EoReader) -> "CastReplyServerPacket":