eolib 1.1.0__py3-none-any.whl → 1.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. eolib/__about__.py +1 -1
  2. eolib/encrypt/encryption_utils.py +8 -0
  3. eolib/protocol/_generated/coords.py +10 -6
  4. eolib/protocol/_generated/emote.py +1 -1
  5. eolib/protocol/_generated/map/emf.py +113 -109
  6. eolib/protocol/_generated/map/map_graphic_layer.py +13 -9
  7. eolib/protocol/_generated/map/map_graphic_row.py +16 -12
  8. eolib/protocol/_generated/map/map_graphic_row_tile.py +10 -6
  9. eolib/protocol/_generated/map/map_item.py +22 -18
  10. eolib/protocol/_generated/map/map_legacy_door_key.py +10 -6
  11. eolib/protocol/_generated/map/map_npc.py +19 -15
  12. eolib/protocol/_generated/map/map_sign.py +18 -14
  13. eolib/protocol/_generated/map/map_tile_spec_row.py +16 -12
  14. eolib/protocol/_generated/map/map_tile_spec_row_tile.py +10 -6
  15. eolib/protocol/_generated/map/map_warp.py +16 -12
  16. eolib/protocol/_generated/map/map_warp_row.py +16 -12
  17. eolib/protocol/_generated/map/map_warp_row_tile.py +10 -6
  18. eolib/protocol/_generated/net/char_item.py +10 -6
  19. eolib/protocol/_generated/net/client/account_agree_client_packet.py +21 -12
  20. eolib/protocol/_generated/net/client/account_create_client_packet.py +41 -32
  21. eolib/protocol/_generated/net/client/account_request_client_packet.py +10 -3
  22. eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +16 -7
  23. eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +10 -3
  24. eolib/protocol/_generated/net/client/attack_use_client_packet.py +13 -6
  25. eolib/protocol/_generated/net/client/bank_add_client_packet.py +13 -6
  26. eolib/protocol/_generated/net/client/bank_open_client_packet.py +10 -3
  27. eolib/protocol/_generated/net/client/bank_take_client_packet.py +13 -6
  28. eolib/protocol/_generated/net/client/barber_buy_client_packet.py +16 -9
  29. eolib/protocol/_generated/net/client/barber_open_client_packet.py +10 -3
  30. eolib/protocol/_generated/net/client/board_create_client_packet.py +21 -12
  31. eolib/protocol/_generated/net/client/board_open_client_packet.py +10 -3
  32. eolib/protocol/_generated/net/client/board_remove_client_packet.py +13 -6
  33. eolib/protocol/_generated/net/client/board_take_client_packet.py +13 -6
  34. eolib/protocol/_generated/net/client/book_request_client_packet.py +10 -3
  35. eolib/protocol/_generated/net/client/byte_coords.py +10 -6
  36. eolib/protocol/_generated/net/client/chair_request_client_packet.py +24 -14
  37. eolib/protocol/_generated/net/client/character_create_client_packet.py +29 -20
  38. eolib/protocol/_generated/net/client/character_remove_client_packet.py +13 -6
  39. eolib/protocol/_generated/net/client/character_request_client_packet.py +11 -2
  40. eolib/protocol/_generated/net/client/character_take_client_packet.py +10 -3
  41. eolib/protocol/_generated/net/client/chest_add_client_packet.py +13 -6
  42. eolib/protocol/_generated/net/client/chest_open_client_packet.py +10 -3
  43. eolib/protocol/_generated/net/client/chest_take_client_packet.py +13 -6
  44. eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +13 -6
  45. eolib/protocol/_generated/net/client/citizen_open_client_packet.py +10 -3
  46. eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +10 -3
  47. eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +25 -16
  48. eolib/protocol/_generated/net/client/citizen_request_client_packet.py +13 -6
  49. eolib/protocol/_generated/net/client/connection_accept_client_packet.py +16 -9
  50. eolib/protocol/_generated/net/client/connection_ping_client_packet.py +8 -4
  51. eolib/protocol/_generated/net/client/door_open_client_packet.py +10 -3
  52. eolib/protocol/_generated/net/client/emote_report_client_packet.py +10 -3
  53. eolib/protocol/_generated/net/client/face_player_client_packet.py +10 -3
  54. eolib/protocol/_generated/net/client/global_close_client_packet.py +8 -4
  55. eolib/protocol/_generated/net/client/global_open_client_packet.py +8 -4
  56. eolib/protocol/_generated/net/client/global_player_client_packet.py +8 -4
  57. eolib/protocol/_generated/net/client/global_remove_client_packet.py +8 -4
  58. eolib/protocol/_generated/net/client/guild_accept_client_packet.py +11 -4
  59. eolib/protocol/_generated/net/client/guild_agree_client_packet.py +44 -30
  60. eolib/protocol/_generated/net/client/guild_buy_client_packet.py +13 -6
  61. eolib/protocol/_generated/net/client/guild_create_client_packet.py +25 -16
  62. eolib/protocol/_generated/net/client/guild_junk_client_packet.py +10 -3
  63. eolib/protocol/_generated/net/client/guild_kick_client_packet.py +13 -6
  64. eolib/protocol/_generated/net/client/guild_open_client_packet.py +10 -3
  65. eolib/protocol/_generated/net/client/guild_player_client_packet.py +21 -12
  66. eolib/protocol/_generated/net/client/guild_rank_client_packet.py +16 -9
  67. eolib/protocol/_generated/net/client/guild_remove_client_packet.py +10 -3
  68. eolib/protocol/_generated/net/client/guild_report_client_packet.py +13 -6
  69. eolib/protocol/_generated/net/client/guild_request_client_packet.py +21 -12
  70. eolib/protocol/_generated/net/client/guild_take_client_packet.py +37 -7
  71. eolib/protocol/_generated/net/client/guild_tell_client_packet.py +13 -6
  72. eolib/protocol/_generated/net/client/guild_use_client_packet.py +10 -3
  73. eolib/protocol/_generated/net/client/init_init_client_packet.py +23 -15
  74. eolib/protocol/_generated/net/client/item_drop_client_packet.py +15 -8
  75. eolib/protocol/_generated/net/client/item_get_client_packet.py +10 -3
  76. eolib/protocol/_generated/net/client/item_junk_client_packet.py +10 -3
  77. eolib/protocol/_generated/net/client/item_use_client_packet.py +10 -3
  78. eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +16 -7
  79. eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +10 -3
  80. eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +13 -6
  81. eolib/protocol/_generated/net/client/locker_add_client_packet.py +13 -6
  82. eolib/protocol/_generated/net/client/locker_buy_client_packet.py +8 -4
  83. eolib/protocol/_generated/net/client/locker_open_client_packet.py +10 -3
  84. eolib/protocol/_generated/net/client/locker_take_client_packet.py +13 -6
  85. eolib/protocol/_generated/net/client/login_request_client_packet.py +17 -8
  86. eolib/protocol/_generated/net/client/marriage_open_client_packet.py +10 -3
  87. eolib/protocol/_generated/net/client/marriage_request_client_packet.py +19 -10
  88. eolib/protocol/_generated/net/client/message_ping_client_packet.py +8 -4
  89. eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +17 -10
  90. eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +13 -6
  91. eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +13 -6
  92. eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +10 -3
  93. eolib/protocol/_generated/net/client/party_accept_client_packet.py +13 -6
  94. eolib/protocol/_generated/net/client/party_remove_client_packet.py +10 -3
  95. eolib/protocol/_generated/net/client/party_request_client_packet.py +13 -6
  96. eolib/protocol/_generated/net/client/party_take_client_packet.py +10 -3
  97. eolib/protocol/_generated/net/client/player_range_request_client_packet.py +11 -4
  98. eolib/protocol/_generated/net/client/players_accept_client_packet.py +10 -3
  99. eolib/protocol/_generated/net/client/players_list_client_packet.py +8 -4
  100. eolib/protocol/_generated/net/client/players_request_client_packet.py +8 -4
  101. eolib/protocol/_generated/net/client/priest_accept_client_packet.py +10 -3
  102. eolib/protocol/_generated/net/client/priest_open_client_packet.py +10 -3
  103. eolib/protocol/_generated/net/client/priest_request_client_packet.py +16 -7
  104. eolib/protocol/_generated/net/client/priest_use_client_packet.py +10 -3
  105. eolib/protocol/_generated/net/client/quest_accept_client_packet.py +36 -26
  106. eolib/protocol/_generated/net/client/quest_list_client_packet.py +10 -3
  107. eolib/protocol/_generated/net/client/quest_use_client_packet.py +13 -6
  108. eolib/protocol/_generated/net/client/range_request_client_packet.py +18 -9
  109. eolib/protocol/_generated/net/client/refresh_request_client_packet.py +8 -4
  110. eolib/protocol/_generated/net/client/shop_buy_client_packet.py +13 -6
  111. eolib/protocol/_generated/net/client/shop_create_client_packet.py +13 -6
  112. eolib/protocol/_generated/net/client/shop_open_client_packet.py +10 -3
  113. eolib/protocol/_generated/net/client/shop_sell_client_packet.py +13 -6
  114. eolib/protocol/_generated/net/client/sit_request_client_packet.py +24 -14
  115. eolib/protocol/_generated/net/client/spell_request_client_packet.py +13 -6
  116. eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +13 -6
  117. eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +22 -15
  118. eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +16 -9
  119. eolib/protocol/_generated/net/client/spell_use_client_packet.py +10 -3
  120. eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +35 -21
  121. eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +10 -3
  122. eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +10 -3
  123. eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +13 -6
  124. eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +13 -6
  125. eolib/protocol/_generated/net/client/talk_admin_client_packet.py +10 -3
  126. eolib/protocol/_generated/net/client/talk_announce_client_packet.py +10 -3
  127. eolib/protocol/_generated/net/client/talk_msg_client_packet.py +10 -3
  128. eolib/protocol/_generated/net/client/talk_open_client_packet.py +10 -3
  129. eolib/protocol/_generated/net/client/talk_player_client_packet.py +10 -3
  130. eolib/protocol/_generated/net/client/talk_report_client_packet.py +10 -3
  131. eolib/protocol/_generated/net/client/talk_request_client_packet.py +10 -3
  132. eolib/protocol/_generated/net/client/talk_tell_client_packet.py +16 -7
  133. eolib/protocol/_generated/net/client/talk_use_client_packet.py +10 -3
  134. eolib/protocol/_generated/net/client/trade_accept_client_packet.py +11 -4
  135. eolib/protocol/_generated/net/client/trade_add_client_packet.py +10 -3
  136. eolib/protocol/_generated/net/client/trade_agree_client_packet.py +10 -3
  137. eolib/protocol/_generated/net/client/trade_close_client_packet.py +8 -4
  138. eolib/protocol/_generated/net/client/trade_remove_client_packet.py +10 -3
  139. eolib/protocol/_generated/net/client/trade_request_client_packet.py +11 -4
  140. eolib/protocol/_generated/net/client/walk_action.py +13 -9
  141. eolib/protocol/_generated/net/client/walk_admin_client_packet.py +10 -3
  142. eolib/protocol/_generated/net/client/walk_player_client_packet.py +10 -3
  143. eolib/protocol/_generated/net/client/walk_spec_client_packet.py +10 -3
  144. eolib/protocol/_generated/net/client/warp_accept_client_packet.py +13 -6
  145. eolib/protocol/_generated/net/client/warp_take_client_packet.py +13 -6
  146. eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +71 -45
  147. eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +13 -6
  148. eolib/protocol/_generated/net/client/welcome_request_client_packet.py +10 -3
  149. eolib/protocol/_generated/net/item.py +10 -6
  150. eolib/protocol/_generated/net/server/account_reply_server_packet.py +91 -57
  151. eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +10 -3
  152. eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +30 -21
  153. eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +10 -3
  154. eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +52 -36
  155. eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +36 -27
  156. eolib/protocol/_generated/net/server/arena_accept_server_packet.py +24 -15
  157. eolib/protocol/_generated/net/server/arena_drop_server_packet.py +8 -4
  158. eolib/protocol/_generated/net/server/arena_spec_server_packet.py +28 -19
  159. eolib/protocol/_generated/net/server/arena_use_server_packet.py +10 -3
  160. eolib/protocol/_generated/net/server/attack_error_server_packet.py +8 -4
  161. eolib/protocol/_generated/net/server/attack_player_server_packet.py +13 -6
  162. eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +39 -32
  163. eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +10 -3
  164. eolib/protocol/_generated/net/server/avatar_change.py +53 -38
  165. eolib/protocol/_generated/net/server/avatar_change_type.py +1 -1
  166. eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +13 -6
  167. eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +25 -18
  168. eolib/protocol/_generated/net/server/bank_open_server_packet.py +16 -9
  169. eolib/protocol/_generated/net/server/bank_reply_server_packet.py +13 -6
  170. eolib/protocol/_generated/net/server/barber_agree_server_packet.py +13 -6
  171. eolib/protocol/_generated/net/server/barber_open_server_packet.py +10 -3
  172. eolib/protocol/_generated/net/server/big_coords.py +10 -6
  173. eolib/protocol/_generated/net/server/board_open_server_packet.py +22 -15
  174. eolib/protocol/_generated/net/server/board_player_server_packet.py +15 -6
  175. eolib/protocol/_generated/net/server/board_post_listing.py +17 -11
  176. eolib/protocol/_generated/net/server/book_reply_server_packet.py +20 -12
  177. eolib/protocol/_generated/net/server/cast_accept_server_packet.py +22 -15
  178. eolib/protocol/_generated/net/server/cast_reply_server_packet.py +31 -24
  179. eolib/protocol/_generated/net/server/cast_spec_server_packet.py +19 -12
  180. eolib/protocol/_generated/net/server/chair_close_server_packet.py +13 -6
  181. eolib/protocol/_generated/net/server/chair_player_server_packet.py +16 -9
  182. eolib/protocol/_generated/net/server/chair_remove_server_packet.py +13 -6
  183. eolib/protocol/_generated/net/server/chair_reply_server_packet.py +16 -9
  184. eolib/protocol/_generated/net/server/character_base_stats.py +22 -18
  185. eolib/protocol/_generated/net/server/character_base_stats_welcome.py +22 -18
  186. eolib/protocol/_generated/net/server/character_details.py +42 -36
  187. eolib/protocol/_generated/net/server/character_elemental_stats.py +22 -18
  188. eolib/protocol/_generated/net/server/character_map_info.py +70 -64
  189. eolib/protocol/_generated/net/server/character_player_server_packet.py +13 -6
  190. eolib/protocol/_generated/net/server/character_reply_server_packet.py +111 -79
  191. eolib/protocol/_generated/net/server/character_secondary_stats.py +19 -15
  192. eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +19 -15
  193. eolib/protocol/_generated/net/server/character_selection_list_entry.py +34 -28
  194. eolib/protocol/_generated/net/server/character_stats_equipment_change.py +16 -12
  195. eolib/protocol/_generated/net/server/character_stats_info_lookup.py +25 -21
  196. eolib/protocol/_generated/net/server/character_stats_reset.py +31 -27
  197. eolib/protocol/_generated/net/server/character_stats_update.py +22 -18
  198. eolib/protocol/_generated/net/server/character_stats_welcome.py +34 -30
  199. eolib/protocol/_generated/net/server/chest_agree_server_packet.py +11 -4
  200. eolib/protocol/_generated/net/server/chest_close_server_packet.py +16 -5
  201. eolib/protocol/_generated/net/server/chest_get_server_packet.py +17 -10
  202. eolib/protocol/_generated/net/server/chest_open_server_packet.py +14 -7
  203. eolib/protocol/_generated/net/server/chest_reply_server_packet.py +20 -13
  204. eolib/protocol/_generated/net/server/chest_spec_server_packet.py +8 -4
  205. eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +10 -3
  206. eolib/protocol/_generated/net/server/citizen_open_server_packet.py +27 -18
  207. eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +10 -3
  208. eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +10 -3
  209. eolib/protocol/_generated/net/server/citizen_request_server_packet.py +10 -3
  210. eolib/protocol/_generated/net/server/connection_player_server_packet.py +13 -6
  211. eolib/protocol/_generated/net/server/dialog_entry.py +24 -17
  212. eolib/protocol/_generated/net/server/dialog_quest_entry.py +10 -6
  213. eolib/protocol/_generated/net/server/door_close_server_packet.py +10 -3
  214. eolib/protocol/_generated/net/server/door_open_server_packet.py +11 -4
  215. eolib/protocol/_generated/net/server/effect_admin_server_packet.py +19 -12
  216. eolib/protocol/_generated/net/server/effect_agree_server_packet.py +13 -6
  217. eolib/protocol/_generated/net/server/effect_player_server_packet.py +13 -6
  218. eolib/protocol/_generated/net/server/effect_report_server_packet.py +8 -4
  219. eolib/protocol/_generated/net/server/effect_spec_server_packet.py +47 -33
  220. eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +20 -13
  221. eolib/protocol/_generated/net/server/effect_use_server_packet.py +24 -14
  222. eolib/protocol/_generated/net/server/emote_player_server_packet.py +13 -6
  223. eolib/protocol/_generated/net/server/equipment_change.py +20 -16
  224. eolib/protocol/_generated/net/server/equipment_character_select.py +19 -15
  225. eolib/protocol/_generated/net/server/equipment_map_info.py +23 -19
  226. eolib/protocol/_generated/net/server/equipment_paperdoll.py +50 -46
  227. eolib/protocol/_generated/net/server/equipment_welcome.py +49 -45
  228. eolib/protocol/_generated/net/server/face_player_server_packet.py +13 -6
  229. eolib/protocol/_generated/net/server/global_backfill_message.py +13 -7
  230. eolib/protocol/_generated/net/server/group_heal_target_player.py +13 -9
  231. eolib/protocol/_generated/net/server/guild_accept_server_packet.py +10 -3
  232. eolib/protocol/_generated/net/server/guild_agree_server_packet.py +25 -16
  233. eolib/protocol/_generated/net/server/guild_buy_server_packet.py +10 -3
  234. eolib/protocol/_generated/net/server/guild_create_server_packet.py +28 -19
  235. eolib/protocol/_generated/net/server/guild_kick_server_packet.py +8 -4
  236. eolib/protocol/_generated/net/server/guild_member.py +17 -11
  237. eolib/protocol/_generated/net/server/guild_open_server_packet.py +10 -3
  238. eolib/protocol/_generated/net/server/guild_rank_server_packet.py +16 -9
  239. eolib/protocol/_generated/net/server/guild_reply_server_packet.py +49 -31
  240. eolib/protocol/_generated/net/server/guild_report_server_packet.py +47 -42
  241. eolib/protocol/_generated/net/server/guild_request_server_packet.py +13 -6
  242. eolib/protocol/_generated/net/server/guild_sell_server_packet.py +10 -3
  243. eolib/protocol/_generated/net/server/guild_staff.py +13 -7
  244. eolib/protocol/_generated/net/server/guild_take_server_packet.py +10 -3
  245. eolib/protocol/_generated/net/server/guild_tell_server_packet.py +20 -13
  246. eolib/protocol/_generated/net/server/init_ban_type.py +1 -1
  247. eolib/protocol/_generated/net/server/init_init_server_packet.py +190 -124
  248. eolib/protocol/_generated/net/server/init_reply.py +3 -0
  249. eolib/protocol/_generated/net/server/item_accept_server_packet.py +10 -3
  250. eolib/protocol/_generated/net/server/item_add_server_packet.py +19 -12
  251. eolib/protocol/_generated/net/server/item_agree_server_packet.py +10 -3
  252. eolib/protocol/_generated/net/server/item_drop_server_packet.py +22 -15
  253. eolib/protocol/_generated/net/server/item_get_server_packet.py +16 -9
  254. eolib/protocol/_generated/net/server/item_junk_server_packet.py +16 -9
  255. eolib/protocol/_generated/net/server/item_kick_server_packet.py +13 -6
  256. eolib/protocol/_generated/net/server/item_map_info.py +16 -12
  257. eolib/protocol/_generated/net/server/item_obtain_server_packet.py +13 -6
  258. eolib/protocol/_generated/net/server/item_remove_server_packet.py +10 -3
  259. eolib/protocol/_generated/net/server/item_reply_server_packet.py +100 -74
  260. eolib/protocol/_generated/net/server/item_spec_server_packet.py +8 -4
  261. eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +10 -3
  262. eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +19 -12
  263. eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +13 -6
  264. eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +10 -3
  265. eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +8 -4
  266. eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +14 -3
  267. eolib/protocol/_generated/net/server/level_up_stats.py +22 -18
  268. eolib/protocol/_generated/net/server/locker_buy_server_packet.py +13 -6
  269. eolib/protocol/_generated/net/server/locker_get_server_packet.py +17 -10
  270. eolib/protocol/_generated/net/server/locker_open_server_packet.py +14 -7
  271. eolib/protocol/_generated/net/server/locker_reply_server_packet.py +17 -10
  272. eolib/protocol/_generated/net/server/locker_spec_server_packet.py +10 -3
  273. eolib/protocol/_generated/net/server/login_reply.py +6 -0
  274. eolib/protocol/_generated/net/server/login_reply_server_packet.py +80 -50
  275. eolib/protocol/_generated/net/server/map_drain_damage_other.py +13 -9
  276. eolib/protocol/_generated/net/server/map_file.py +7 -3
  277. eolib/protocol/_generated/net/server/marriage_open_server_packet.py +10 -3
  278. eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +24 -14
  279. eolib/protocol/_generated/net/server/message_accept_server_packet.py +16 -9
  280. eolib/protocol/_generated/net/server/message_close_server_packet.py +8 -4
  281. eolib/protocol/_generated/net/server/message_open_server_packet.py +10 -3
  282. eolib/protocol/_generated/net/server/message_pong_server_packet.py +8 -4
  283. eolib/protocol/_generated/net/server/music_player_server_packet.py +10 -3
  284. eolib/protocol/_generated/net/server/nearby_info.py +26 -22
  285. eolib/protocol/_generated/net/server/npc_accept_server_packet.py +16 -9
  286. eolib/protocol/_generated/net/server/npc_agree_server_packet.py +19 -12
  287. eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +13 -6
  288. eolib/protocol/_generated/net/server/npc_junk_server_packet.py +10 -3
  289. eolib/protocol/_generated/net/server/npc_killed_data.py +28 -24
  290. eolib/protocol/_generated/net/server/npc_map_info.py +16 -12
  291. eolib/protocol/_generated/net/server/npc_player_server_packet.py +30 -21
  292. eolib/protocol/_generated/net/server/npc_reply_server_packet.py +25 -18
  293. eolib/protocol/_generated/net/server/npc_spec_server_packet.py +13 -6
  294. eolib/protocol/_generated/net/server/npc_update_attack.py +22 -18
  295. eolib/protocol/_generated/net/server/npc_update_chat.py +15 -11
  296. eolib/protocol/_generated/net/server/npc_update_position.py +13 -9
  297. eolib/protocol/_generated/net/server/online_player.py +26 -20
  298. eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +22 -15
  299. eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +12 -5
  300. eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +19 -12
  301. eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +18 -9
  302. eolib/protocol/_generated/net/server/party_add_server_packet.py +10 -3
  303. eolib/protocol/_generated/net/server/party_agree_server_packet.py +13 -6
  304. eolib/protocol/_generated/net/server/party_close_server_packet.py +8 -4
  305. eolib/protocol/_generated/net/server/party_create_server_packet.py +13 -5
  306. eolib/protocol/_generated/net/server/party_exp_share.py +16 -12
  307. eolib/protocol/_generated/net/server/party_list_server_packet.py +13 -5
  308. eolib/protocol/_generated/net/server/party_member.py +20 -16
  309. eolib/protocol/_generated/net/server/party_remove_server_packet.py +10 -3
  310. eolib/protocol/_generated/net/server/party_reply_server_packet.py +35 -21
  311. eolib/protocol/_generated/net/server/party_request_server_packet.py +16 -9
  312. eolib/protocol/_generated/net/server/party_target_group_server_packet.py +11 -4
  313. eolib/protocol/_generated/net/server/players_agree_server_packet.py +10 -3
  314. eolib/protocol/_generated/net/server/players_list.py +17 -13
  315. eolib/protocol/_generated/net/server/players_list_friends.py +17 -13
  316. eolib/protocol/_generated/net/server/players_list_server_packet.py +12 -3
  317. eolib/protocol/_generated/net/server/players_net242_server_packet.py +10 -3
  318. eolib/protocol/_generated/net/server/players_ping_server_packet.py +10 -3
  319. eolib/protocol/_generated/net/server/players_pong_server_packet.py +10 -3
  320. eolib/protocol/_generated/net/server/players_remove_server_packet.py +10 -3
  321. eolib/protocol/_generated/net/server/players_reply_server_packet.py +12 -3
  322. eolib/protocol/_generated/net/server/priest_open_server_packet.py +10 -3
  323. eolib/protocol/_generated/net/server/priest_reply_server_packet.py +10 -3
  324. eolib/protocol/_generated/net/server/priest_request_server_packet.py +13 -6
  325. eolib/protocol/_generated/net/server/pub_file.py +10 -6
  326. eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +36 -30
  327. eolib/protocol/_generated/net/server/quest_list_server_packet.py +42 -28
  328. eolib/protocol/_generated/net/server/quest_progress_entry.py +23 -17
  329. eolib/protocol/_generated/net/server/quest_report_server_packet.py +17 -9
  330. eolib/protocol/_generated/net/server/range_reply_server_packet.py +10 -3
  331. eolib/protocol/_generated/net/server/recover_agree_server_packet.py +16 -9
  332. eolib/protocol/_generated/net/server/recover_list_server_packet.py +13 -6
  333. eolib/protocol/_generated/net/server/recover_player_server_packet.py +13 -6
  334. eolib/protocol/_generated/net/server/recover_reply_server_packet.py +24 -17
  335. eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +22 -15
  336. eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +10 -3
  337. eolib/protocol/_generated/net/server/server_settings.py +25 -21
  338. eolib/protocol/_generated/net/server/shop_buy_server_packet.py +16 -9
  339. eolib/protocol/_generated/net/server/shop_craft_item.py +13 -9
  340. eolib/protocol/_generated/net/server/shop_create_server_packet.py +19 -12
  341. eolib/protocol/_generated/net/server/shop_open_server_packet.py +26 -17
  342. eolib/protocol/_generated/net/server/shop_sell_server_packet.py +16 -9
  343. eolib/protocol/_generated/net/server/shop_sold_item.py +10 -6
  344. eolib/protocol/_generated/net/server/shop_trade_item.py +16 -12
  345. eolib/protocol/_generated/net/server/sit_close_server_packet.py +13 -6
  346. eolib/protocol/_generated/net/server/sit_player_server_packet.py +17 -10
  347. eolib/protocol/_generated/net/server/sit_remove_server_packet.py +13 -6
  348. eolib/protocol/_generated/net/server/sit_reply_server_packet.py +17 -10
  349. eolib/protocol/_generated/net/server/skill_learn.py +25 -21
  350. eolib/protocol/_generated/net/server/spell_error_server_packet.py +8 -4
  351. eolib/protocol/_generated/net/server/spell_player_server_packet.py +13 -6
  352. eolib/protocol/_generated/net/server/spell_request_server_packet.py +13 -6
  353. eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +23 -16
  354. eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +28 -21
  355. eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +25 -18
  356. eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +13 -6
  357. eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +10 -3
  358. eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +20 -11
  359. eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +13 -6
  360. eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +10 -3
  361. eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +24 -14
  362. eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +13 -6
  363. eolib/protocol/_generated/net/server/talk_admin_server_packet.py +16 -7
  364. eolib/protocol/_generated/net/server/talk_announce_server_packet.py +16 -7
  365. eolib/protocol/_generated/net/server/talk_list_server_packet.py +14 -5
  366. eolib/protocol/_generated/net/server/talk_msg_server_packet.py +16 -7
  367. eolib/protocol/_generated/net/server/talk_open_server_packet.py +13 -6
  368. eolib/protocol/_generated/net/server/talk_player_server_packet.py +13 -6
  369. eolib/protocol/_generated/net/server/talk_reply_server_packet.py +13 -6
  370. eolib/protocol/_generated/net/server/talk_request_server_packet.py +16 -7
  371. eolib/protocol/_generated/net/server/talk_server_server_packet.py +10 -3
  372. eolib/protocol/_generated/net/server/talk_spec_server_packet.py +10 -3
  373. eolib/protocol/_generated/net/server/talk_tell_server_packet.py +16 -7
  374. eolib/protocol/_generated/net/server/trade_admin_server_packet.py +10 -3
  375. eolib/protocol/_generated/net/server/trade_agree_server_packet.py +13 -6
  376. eolib/protocol/_generated/net/server/trade_close_server_packet.py +10 -3
  377. eolib/protocol/_generated/net/server/trade_item_data.py +22 -16
  378. eolib/protocol/_generated/net/server/trade_open_server_packet.py +23 -14
  379. eolib/protocol/_generated/net/server/trade_reply_server_packet.py +10 -3
  380. eolib/protocol/_generated/net/server/trade_request_server_packet.py +14 -7
  381. eolib/protocol/_generated/net/server/trade_spec_server_packet.py +10 -3
  382. eolib/protocol/_generated/net/server/trade_use_server_packet.py +10 -3
  383. eolib/protocol/_generated/net/server/walk_close_server_packet.py +8 -4
  384. eolib/protocol/_generated/net/server/walk_open_server_packet.py +8 -4
  385. eolib/protocol/_generated/net/server/walk_player_server_packet.py +16 -9
  386. eolib/protocol/_generated/net/server/walk_reply_server_packet.py +23 -14
  387. eolib/protocol/_generated/net/server/warp_agree_server_packet.py +32 -20
  388. eolib/protocol/_generated/net/server/warp_create_server_packet.py +10 -3
  389. eolib/protocol/_generated/net/server/warp_player_server_packet.py +10 -3
  390. eolib/protocol/_generated/net/server/warp_request_server_packet.py +36 -26
  391. eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +10 -3
  392. eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +10 -3
  393. eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +10 -3
  394. eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +10 -3
  395. eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +10 -3
  396. eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +161 -147
  397. eolib/protocol/_generated/net/spell.py +10 -6
  398. eolib/protocol/_generated/net/three_item.py +10 -6
  399. eolib/protocol/_generated/net/version.py +13 -9
  400. eolib/protocol/_generated/net/weight.py +10 -6
  401. eolib/protocol/_generated/pub/ecf.py +21 -17
  402. eolib/protocol/_generated/pub/ecf_record.py +36 -32
  403. eolib/protocol/_generated/pub/eif.py +21 -17
  404. eolib/protocol/_generated/pub/eif_record.py +130 -126
  405. eolib/protocol/_generated/pub/enf.py +21 -17
  406. eolib/protocol/_generated/pub/enf_record.py +72 -68
  407. eolib/protocol/_generated/pub/esf.py +21 -17
  408. eolib/protocol/_generated/pub/esf_record.py +106 -102
  409. eolib/protocol/_generated/pub/server/__init__.py +30 -0
  410. eolib/protocol/_generated/pub/server/drop_file.py +81 -0
  411. eolib/protocol/_generated/pub/server/drop_npc_record.py +116 -0
  412. eolib/protocol/_generated/pub/server/drop_record.py +149 -0
  413. eolib/protocol/_generated/pub/server/inn_file.py +81 -0
  414. eolib/protocol/_generated/pub/server/inn_question_record.py +119 -0
  415. eolib/protocol/_generated/pub/server/inn_record.py +383 -0
  416. eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +107 -0
  417. eolib/protocol/_generated/pub/server/shop_craft_record.py +110 -0
  418. eolib/protocol/_generated/pub/server/shop_file.py +81 -0
  419. eolib/protocol/_generated/pub/server/shop_record.py +253 -0
  420. eolib/protocol/_generated/pub/server/shop_trade_record.py +157 -0
  421. eolib/protocol/_generated/pub/server/skill_master_file.py +81 -0
  422. eolib/protocol/_generated/pub/server/skill_master_record.py +224 -0
  423. eolib/protocol/_generated/pub/server/skill_master_skill_record.py +336 -0
  424. eolib/protocol/_generated/pub/server/talk_file.py +81 -0
  425. eolib/protocol/_generated/pub/server/talk_message_record.py +90 -0
  426. eolib/protocol/_generated/pub/server/talk_record.py +145 -0
  427. eolib/protocol/protocol_enum_meta.py +1 -3
  428. eolib/protocol/pub/server/__init__.py +8 -0
  429. eolib/py.typed +0 -0
  430. {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/METADATA +8 -6
  431. {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/RECORD +433 -413
  432. {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/WHEEL +1 -1
  433. {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
13
13
  from .....data.eo_reader import EoReader
14
14
 
15
15
  class ItemGetServerPacket(Packet):
16
+ """
17
+ Reply to taking items from the ground
18
+ """
16
19
  _byte_size: int = 0
17
20
  _taken_item_index: int = None # type: ignore [assignment]
18
21
  _taken_item: ThreeItem = None # type: ignore [assignment]
@@ -98,15 +101,19 @@ class ItemGetServerPacket(Packet):
98
101
  writer (EoWriter): The writer that the data will be serialized to.
99
102
  data (ItemGetServerPacket): The data to serialize.
100
103
  """
101
- if data._taken_item_index is None:
102
- raise SerializationError("taken_item_index must be provided.")
103
- writer.add_short(data._taken_item_index)
104
- if data._taken_item is None:
105
- raise SerializationError("taken_item must be provided.")
106
- ThreeItem.serialize(writer, data._taken_item)
107
- if data._weight is None:
108
- raise SerializationError("weight must be provided.")
109
- Weight.serialize(writer, data._weight)
104
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
105
+ try:
106
+ if data._taken_item_index is None:
107
+ raise SerializationError("taken_item_index must be provided.")
108
+ writer.add_short(data._taken_item_index)
109
+ if data._taken_item is None:
110
+ raise SerializationError("taken_item must be provided.")
111
+ ThreeItem.serialize(writer, data._taken_item)
112
+ if data._weight is None:
113
+ raise SerializationError("weight must be provided.")
114
+ Weight.serialize(writer, data._weight)
115
+ finally:
116
+ writer.string_sanitization_mode = old_string_sanitization_mode
110
117
 
111
118
  @staticmethod
112
119
  def deserialize(reader: EoReader) -> "ItemGetServerPacket":
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
13
13
  from .....data.eo_reader import EoReader
14
14
 
15
15
  class ItemJunkServerPacket(Packet):
16
+ """
17
+ Reply to junking items
18
+ """
16
19
  _byte_size: int = 0
17
20
  _junked_item: ThreeItem = None # type: ignore [assignment]
18
21
  _remaining_amount: int = None # type: ignore [assignment]
@@ -98,15 +101,19 @@ class ItemJunkServerPacket(Packet):
98
101
  writer (EoWriter): The writer that the data will be serialized to.
99
102
  data (ItemJunkServerPacket): The data to serialize.
100
103
  """
101
- if data._junked_item is None:
102
- raise SerializationError("junked_item must be provided.")
103
- ThreeItem.serialize(writer, data._junked_item)
104
- if data._remaining_amount is None:
105
- raise SerializationError("remaining_amount must be provided.")
106
- writer.add_int(data._remaining_amount)
107
- if data._weight is None:
108
- raise SerializationError("weight must be provided.")
109
- Weight.serialize(writer, data._weight)
104
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
105
+ try:
106
+ if data._junked_item is None:
107
+ raise SerializationError("junked_item must be provided.")
108
+ ThreeItem.serialize(writer, data._junked_item)
109
+ if data._remaining_amount is None:
110
+ raise SerializationError("remaining_amount must be provided.")
111
+ writer.add_int(data._remaining_amount)
112
+ if data._weight is None:
113
+ raise SerializationError("weight must be provided.")
114
+ Weight.serialize(writer, data._weight)
115
+ finally:
116
+ writer.string_sanitization_mode = old_string_sanitization_mode
110
117
 
111
118
  @staticmethod
112
119
  def deserialize(reader: EoReader) -> "ItemJunkServerPacket":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class ItemKickServerPacket(Packet):
15
+ """
16
+ Lose item (from quest)
17
+ """
15
18
  _byte_size: int = 0
16
19
  _item: Item = None # type: ignore [assignment]
17
20
  _current_weight: int = None # type: ignore [assignment]
@@ -88,12 +91,16 @@ class ItemKickServerPacket(Packet):
88
91
  writer (EoWriter): The writer that the data will be serialized to.
89
92
  data (ItemKickServerPacket): The data to serialize.
90
93
  """
91
- if data._item is None:
92
- raise SerializationError("item must be provided.")
93
- Item.serialize(writer, data._item)
94
- if data._current_weight is None:
95
- raise SerializationError("current_weight must be provided.")
96
- writer.add_char(data._current_weight)
94
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
95
+ try:
96
+ if data._item is None:
97
+ raise SerializationError("item must be provided.")
98
+ Item.serialize(writer, data._item)
99
+ if data._current_weight is None:
100
+ raise SerializationError("current_weight must be provided.")
101
+ writer.add_char(data._current_weight)
102
+ finally:
103
+ writer.string_sanitization_mode = old_string_sanitization_mode
97
104
 
98
105
  @staticmethod
99
106
  def deserialize(reader: EoReader) -> "ItemKickServerPacket":
@@ -93,18 +93,22 @@ class ItemMapInfo:
93
93
  writer (EoWriter): The writer that the data will be serialized to.
94
94
  data (ItemMapInfo): The data to serialize.
95
95
  """
96
- if data._uid is None:
97
- raise SerializationError("uid must be provided.")
98
- writer.add_short(data._uid)
99
- if data._id is None:
100
- raise SerializationError("id must be provided.")
101
- writer.add_short(data._id)
102
- if data._coords is None:
103
- raise SerializationError("coords must be provided.")
104
- Coords.serialize(writer, data._coords)
105
- if data._amount is None:
106
- raise SerializationError("amount must be provided.")
107
- writer.add_three(data._amount)
96
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
97
+ try:
98
+ if data._uid is None:
99
+ raise SerializationError("uid must be provided.")
100
+ writer.add_short(data._uid)
101
+ if data._id is None:
102
+ raise SerializationError("id must be provided.")
103
+ writer.add_short(data._id)
104
+ if data._coords is None:
105
+ raise SerializationError("coords must be provided.")
106
+ Coords.serialize(writer, data._coords)
107
+ if data._amount is None:
108
+ raise SerializationError("amount must be provided.")
109
+ writer.add_three(data._amount)
110
+ finally:
111
+ writer.string_sanitization_mode = old_string_sanitization_mode
108
112
 
109
113
  @staticmethod
110
114
  def deserialize(reader: EoReader) -> "ItemMapInfo":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class ItemObtainServerPacket(Packet):
15
+ """
16
+ Receive item (from quest)
17
+ """
15
18
  _byte_size: int = 0
16
19
  _item: ThreeItem = None # type: ignore [assignment]
17
20
  _current_weight: int = None # type: ignore [assignment]
@@ -88,12 +91,16 @@ class ItemObtainServerPacket(Packet):
88
91
  writer (EoWriter): The writer that the data will be serialized to.
89
92
  data (ItemObtainServerPacket): The data to serialize.
90
93
  """
91
- if data._item is None:
92
- raise SerializationError("item must be provided.")
93
- ThreeItem.serialize(writer, data._item)
94
- if data._current_weight is None:
95
- raise SerializationError("current_weight must be provided.")
96
- writer.add_char(data._current_weight)
94
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
95
+ try:
96
+ if data._item is None:
97
+ raise SerializationError("item must be provided.")
98
+ ThreeItem.serialize(writer, data._item)
99
+ if data._current_weight is None:
100
+ raise SerializationError("current_weight must be provided.")
101
+ writer.add_char(data._current_weight)
102
+ finally:
103
+ writer.string_sanitization_mode = old_string_sanitization_mode
97
104
 
98
105
  @staticmethod
99
106
  def deserialize(reader: EoReader) -> "ItemObtainServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class ItemRemoveServerPacket(Packet):
14
+ """
15
+ Item disappeared from the ground
16
+ """
14
17
  _byte_size: int = 0
15
18
  _item_index: int = None # type: ignore [assignment]
16
19
 
@@ -78,9 +81,13 @@ class ItemRemoveServerPacket(Packet):
78
81
  writer (EoWriter): The writer that the data will be serialized to.
79
82
  data (ItemRemoveServerPacket): The data to serialize.
80
83
  """
81
- if data._item_index is None:
82
- raise SerializationError("item_index must be provided.")
83
- writer.add_short(data._item_index)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._item_index is None:
87
+ raise SerializationError("item_index must be provided.")
88
+ writer.add_short(data._item_index)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
84
91
 
85
92
  @staticmethod
86
93
  def deserialize(reader: EoReader) -> "ItemRemoveServerPacket":
@@ -16,6 +16,9 @@ from .....data.eo_writer import EoWriter
16
16
  from .....data.eo_reader import EoReader
17
17
 
18
18
  class ItemReplyServerPacket(Packet):
19
+ """
20
+ Reply to using an item
21
+ """
19
22
  _byte_size: int = 0
20
23
  _item_type: ItemType = None # type: ignore [assignment]
21
24
  _used_item: Item = None # type: ignore [assignment]
@@ -105,35 +108,39 @@ class ItemReplyServerPacket(Packet):
105
108
  writer (EoWriter): The writer that the data will be serialized to.
106
109
  data (ItemReplyServerPacket): The data to serialize.
107
110
  """
108
- if data._item_type is None:
109
- raise SerializationError("item_type must be provided.")
110
- writer.add_char(int(data._item_type))
111
- if data._used_item is None:
112
- raise SerializationError("used_item must be provided.")
113
- Item.serialize(writer, data._used_item)
114
- if data._weight is None:
115
- raise SerializationError("weight must be provided.")
116
- Weight.serialize(writer, data._weight)
117
- if data._item_type == ItemType.Heal:
118
- if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataHeal):
119
- raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataHeal for item_type " + ItemType(data._item_type).name + ".")
120
- ItemReplyServerPacket.ItemTypeDataHeal.serialize(writer, data._item_type_data)
121
- elif data._item_type == ItemType.HairDye:
122
- if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataHairDye):
123
- raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataHairDye for item_type " + ItemType(data._item_type).name + ".")
124
- ItemReplyServerPacket.ItemTypeDataHairDye.serialize(writer, data._item_type_data)
125
- elif data._item_type == ItemType.EffectPotion:
126
- if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataEffectPotion):
127
- raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataEffectPotion for item_type " + ItemType(data._item_type).name + ".")
128
- ItemReplyServerPacket.ItemTypeDataEffectPotion.serialize(writer, data._item_type_data)
129
- elif data._item_type == ItemType.CureCurse:
130
- if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataCureCurse):
131
- raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataCureCurse for item_type " + ItemType(data._item_type).name + ".")
132
- ItemReplyServerPacket.ItemTypeDataCureCurse.serialize(writer, data._item_type_data)
133
- elif data._item_type == ItemType.ExpReward:
134
- if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataExpReward):
135
- raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataExpReward for item_type " + ItemType(data._item_type).name + ".")
136
- ItemReplyServerPacket.ItemTypeDataExpReward.serialize(writer, data._item_type_data)
111
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
112
+ try:
113
+ if data._item_type is None:
114
+ raise SerializationError("item_type must be provided.")
115
+ writer.add_char(int(data._item_type))
116
+ if data._used_item is None:
117
+ raise SerializationError("used_item must be provided.")
118
+ Item.serialize(writer, data._used_item)
119
+ if data._weight is None:
120
+ raise SerializationError("weight must be provided.")
121
+ Weight.serialize(writer, data._weight)
122
+ if data._item_type == ItemType.Heal:
123
+ if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataHeal):
124
+ raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataHeal for item_type " + ItemType(data._item_type).name + ".")
125
+ ItemReplyServerPacket.ItemTypeDataHeal.serialize(writer, data._item_type_data)
126
+ elif data._item_type == ItemType.HairDye:
127
+ if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataHairDye):
128
+ raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataHairDye for item_type " + ItemType(data._item_type).name + ".")
129
+ ItemReplyServerPacket.ItemTypeDataHairDye.serialize(writer, data._item_type_data)
130
+ elif data._item_type == ItemType.EffectPotion:
131
+ if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataEffectPotion):
132
+ raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataEffectPotion for item_type " + ItemType(data._item_type).name + ".")
133
+ ItemReplyServerPacket.ItemTypeDataEffectPotion.serialize(writer, data._item_type_data)
134
+ elif data._item_type == ItemType.CureCurse:
135
+ if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataCureCurse):
136
+ raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataCureCurse for item_type " + ItemType(data._item_type).name + ".")
137
+ ItemReplyServerPacket.ItemTypeDataCureCurse.serialize(writer, data._item_type_data)
138
+ elif data._item_type == ItemType.ExpReward:
139
+ if not isinstance(data._item_type_data, ItemReplyServerPacket.ItemTypeDataExpReward):
140
+ raise SerializationError("Expected item_type_data to be type ItemReplyServerPacket.ItemTypeDataExpReward for item_type " + ItemType(data._item_type).name + ".")
141
+ ItemReplyServerPacket.ItemTypeDataExpReward.serialize(writer, data._item_type_data)
142
+ finally:
143
+ writer.string_sanitization_mode = old_string_sanitization_mode
137
144
 
138
145
  @staticmethod
139
146
  def deserialize(reader: EoReader) -> "ItemReplyServerPacket":
@@ -172,10 +179,9 @@ class ItemReplyServerPacket(Packet):
172
179
  return f"ItemReplyServerPacket(byte_size={repr(self._byte_size)}, item_type={repr(self._item_type)}, used_item={repr(self._used_item)}, weight={repr(self._weight)}, item_type_data={repr(self._item_type_data)})"
173
180
 
174
181
  ItemTypeData = Union['ItemReplyServerPacket.ItemTypeDataHeal', 'ItemReplyServerPacket.ItemTypeDataHairDye', 'ItemReplyServerPacket.ItemTypeDataEffectPotion', 'ItemReplyServerPacket.ItemTypeDataCureCurse', 'ItemReplyServerPacket.ItemTypeDataExpReward', None]
175
- ItemTypeData.__doc__ = \
176
- """
177
- Data associated with different values of the `item_type` field.
178
- """
182
+ """
183
+ Data associated with different values of the `item_type` field.
184
+ """
179
185
 
180
186
  class ItemTypeDataHeal:
181
187
  """
@@ -253,15 +259,19 @@ class ItemReplyServerPacket(Packet):
253
259
  writer (EoWriter): The writer that the data will be serialized to.
254
260
  data (ItemReplyServerPacket.ItemTypeDataHeal): The data to serialize.
255
261
  """
256
- if data._hp_gain is None:
257
- raise SerializationError("hp_gain must be provided.")
258
- writer.add_int(data._hp_gain)
259
- if data._hp is None:
260
- raise SerializationError("hp must be provided.")
261
- writer.add_short(data._hp)
262
- if data._tp is None:
263
- raise SerializationError("tp must be provided.")
264
- writer.add_short(data._tp)
262
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
263
+ try:
264
+ if data._hp_gain is None:
265
+ raise SerializationError("hp_gain must be provided.")
266
+ writer.add_int(data._hp_gain)
267
+ if data._hp is None:
268
+ raise SerializationError("hp must be provided.")
269
+ writer.add_short(data._hp)
270
+ if data._tp is None:
271
+ raise SerializationError("tp must be provided.")
272
+ writer.add_short(data._tp)
273
+ finally:
274
+ writer.string_sanitization_mode = old_string_sanitization_mode
265
275
 
266
276
  @staticmethod
267
277
  def deserialize(reader: EoReader) -> "ItemReplyServerPacket.ItemTypeDataHeal":
@@ -331,9 +341,13 @@ class ItemReplyServerPacket(Packet):
331
341
  writer (EoWriter): The writer that the data will be serialized to.
332
342
  data (ItemReplyServerPacket.ItemTypeDataHairDye): The data to serialize.
333
343
  """
334
- if data._hair_color is None:
335
- raise SerializationError("hair_color must be provided.")
336
- writer.add_char(data._hair_color)
344
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
345
+ try:
346
+ if data._hair_color is None:
347
+ raise SerializationError("hair_color must be provided.")
348
+ writer.add_char(data._hair_color)
349
+ finally:
350
+ writer.string_sanitization_mode = old_string_sanitization_mode
337
351
 
338
352
  @staticmethod
339
353
  def deserialize(reader: EoReader) -> "ItemReplyServerPacket.ItemTypeDataHairDye":
@@ -401,9 +415,13 @@ class ItemReplyServerPacket(Packet):
401
415
  writer (EoWriter): The writer that the data will be serialized to.
402
416
  data (ItemReplyServerPacket.ItemTypeDataEffectPotion): The data to serialize.
403
417
  """
404
- if data._effect_id is None:
405
- raise SerializationError("effect_id must be provided.")
406
- writer.add_short(data._effect_id)
418
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
419
+ try:
420
+ if data._effect_id is None:
421
+ raise SerializationError("effect_id must be provided.")
422
+ writer.add_short(data._effect_id)
423
+ finally:
424
+ writer.string_sanitization_mode = old_string_sanitization_mode
407
425
 
408
426
  @staticmethod
409
427
  def deserialize(reader: EoReader) -> "ItemReplyServerPacket.ItemTypeDataEffectPotion":
@@ -463,9 +481,13 @@ class ItemReplyServerPacket(Packet):
463
481
  writer (EoWriter): The writer that the data will be serialized to.
464
482
  data (ItemReplyServerPacket.ItemTypeDataCureCurse): The data to serialize.
465
483
  """
466
- if data._stats is None:
467
- raise SerializationError("stats must be provided.")
468
- CharacterStatsEquipmentChange.serialize(writer, data._stats)
484
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
485
+ try:
486
+ if data._stats is None:
487
+ raise SerializationError("stats must be provided.")
488
+ CharacterStatsEquipmentChange.serialize(writer, data._stats)
489
+ finally:
490
+ writer.string_sanitization_mode = old_string_sanitization_mode
469
491
 
470
492
  @staticmethod
471
493
  def deserialize(reader: EoReader) -> "ItemReplyServerPacket.ItemTypeDataCureCurse":
@@ -533,7 +555,7 @@ class ItemReplyServerPacket(Packet):
533
555
  @property
534
556
  def level_up(self) -> int:
535
557
  """
536
- A value greater than 0 is "new level" and indicates the player leveled up.
558
+ A value greater than 0 is "new level" and indicates the player leveled up.
537
559
 
538
560
  Note:
539
561
  - Value range is 0-252.
@@ -543,7 +565,7 @@ class ItemReplyServerPacket(Packet):
543
565
  @level_up.setter
544
566
  def level_up(self, level_up: int) -> None:
545
567
  """
546
- A value greater than 0 is "new level" and indicates the player leveled up.
568
+ A value greater than 0 is "new level" and indicates the player leveled up.
547
569
 
548
570
  Note:
549
571
  - Value range is 0-252.
@@ -639,27 +661,31 @@ class ItemReplyServerPacket(Packet):
639
661
  writer (EoWriter): The writer that the data will be serialized to.
640
662
  data (ItemReplyServerPacket.ItemTypeDataExpReward): The data to serialize.
641
663
  """
642
- if data._experience is None:
643
- raise SerializationError("experience must be provided.")
644
- writer.add_int(data._experience)
645
- if data._level_up is None:
646
- raise SerializationError("level_up must be provided.")
647
- writer.add_char(data._level_up)
648
- if data._stat_points is None:
649
- raise SerializationError("stat_points must be provided.")
650
- writer.add_short(data._stat_points)
651
- if data._skill_points is None:
652
- raise SerializationError("skill_points must be provided.")
653
- writer.add_short(data._skill_points)
654
- if data._max_hp is None:
655
- raise SerializationError("max_hp must be provided.")
656
- writer.add_short(data._max_hp)
657
- if data._max_tp is None:
658
- raise SerializationError("max_tp must be provided.")
659
- writer.add_short(data._max_tp)
660
- if data._max_sp is None:
661
- raise SerializationError("max_sp must be provided.")
662
- writer.add_short(data._max_sp)
664
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
665
+ try:
666
+ if data._experience is None:
667
+ raise SerializationError("experience must be provided.")
668
+ writer.add_int(data._experience)
669
+ if data._level_up is None:
670
+ raise SerializationError("level_up must be provided.")
671
+ writer.add_char(data._level_up)
672
+ if data._stat_points is None:
673
+ raise SerializationError("stat_points must be provided.")
674
+ writer.add_short(data._stat_points)
675
+ if data._skill_points is None:
676
+ raise SerializationError("skill_points must be provided.")
677
+ writer.add_short(data._skill_points)
678
+ if data._max_hp is None:
679
+ raise SerializationError("max_hp must be provided.")
680
+ writer.add_short(data._max_hp)
681
+ if data._max_tp is None:
682
+ raise SerializationError("max_tp must be provided.")
683
+ writer.add_short(data._max_tp)
684
+ if data._max_sp is None:
685
+ raise SerializationError("max_sp must be provided.")
686
+ writer.add_short(data._max_sp)
687
+ finally:
688
+ writer.string_sanitization_mode = old_string_sanitization_mode
663
689
 
664
690
  @staticmethod
665
691
  def deserialize(reader: EoReader) -> "ItemReplyServerPacket.ItemTypeDataExpReward":
@@ -10,6 +10,9 @@ from .....data.eo_writer import EoWriter
10
10
  from .....data.eo_reader import EoReader
11
11
 
12
12
  class ItemSpecServerPacket(Packet):
13
+ """
14
+ Reply to trying to take a protected item from the ground
15
+ """
13
16
  _byte_size: int = 0
14
17
 
15
18
  @property
@@ -60,9 +63,11 @@ class ItemSpecServerPacket(Packet):
60
63
  writer (EoWriter): The writer that the data will be serialized to.
61
64
  data (ItemSpecServerPacket): The data to serialize.
62
65
  """
63
- old_writer_length: int = len(writer)
64
- if len(writer) == old_writer_length:
66
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
67
+ try:
65
68
  writer.add_short(2)
69
+ finally:
70
+ writer.string_sanitization_mode = old_string_sanitization_mode
66
71
 
67
72
  @staticmethod
68
73
  def deserialize(reader: EoReader) -> "ItemSpecServerPacket":
@@ -79,8 +84,7 @@ class ItemSpecServerPacket(Packet):
79
84
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
80
85
  try:
81
86
  reader_start_position: int = reader.position
82
- if reader.position == reader_start_position:
83
- reader.get_short()
87
+ reader.get_short()
84
88
  data._byte_size = reader.position - reader_start_position
85
89
  return data
86
90
  finally:
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class JukeboxAgreeServerPacket(Packet):
14
+ """
15
+ Reply to successfully requesting a song
16
+ """
14
17
  _byte_size: int = 0
15
18
  _gold_amount: int = None # type: ignore [assignment]
16
19
 
@@ -78,9 +81,13 @@ class JukeboxAgreeServerPacket(Packet):
78
81
  writer (EoWriter): The writer that the data will be serialized to.
79
82
  data (JukeboxAgreeServerPacket): The data to serialize.
80
83
  """
81
- if data._gold_amount is None:
82
- raise SerializationError("gold_amount must be provided.")
83
- writer.add_int(data._gold_amount)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._gold_amount is None:
87
+ raise SerializationError("gold_amount must be provided.")
88
+ writer.add_int(data._gold_amount)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
84
91
 
85
92
  @staticmethod
86
93
  def deserialize(reader: EoReader) -> "JukeboxAgreeServerPacket":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class JukeboxMsgServerPacket(Packet):
15
+ """
16
+ Someone playing a note with the bard skill nearby
17
+ """
15
18
  _byte_size: int = 0
16
19
  _player_id: int = None # type: ignore [assignment]
17
20
  _direction: Direction = None # type: ignore [assignment]
@@ -122,18 +125,22 @@ class JukeboxMsgServerPacket(Packet):
122
125
  writer (EoWriter): The writer that the data will be serialized to.
123
126
  data (JukeboxMsgServerPacket): The data to serialize.
124
127
  """
125
- if data._player_id is None:
126
- raise SerializationError("player_id must be provided.")
127
- writer.add_short(data._player_id)
128
- if data._direction is None:
129
- raise SerializationError("direction must be provided.")
130
- writer.add_char(int(data._direction))
131
- if data._instrument_id is None:
132
- raise SerializationError("instrument_id must be provided.")
133
- writer.add_char(data._instrument_id)
134
- if data._note_id is None:
135
- raise SerializationError("note_id must be provided.")
136
- writer.add_char(data._note_id)
128
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
129
+ try:
130
+ if data._player_id is None:
131
+ raise SerializationError("player_id must be provided.")
132
+ writer.add_short(data._player_id)
133
+ if data._direction is None:
134
+ raise SerializationError("direction must be provided.")
135
+ writer.add_char(int(data._direction))
136
+ if data._instrument_id is None:
137
+ raise SerializationError("instrument_id must be provided.")
138
+ writer.add_char(data._instrument_id)
139
+ if data._note_id is None:
140
+ raise SerializationError("note_id must be provided.")
141
+ writer.add_char(data._note_id)
142
+ finally:
143
+ writer.string_sanitization_mode = old_string_sanitization_mode
137
144
 
138
145
  @staticmethod
139
146
  def deserialize(reader: EoReader) -> "JukeboxMsgServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class JukeboxOpenServerPacket(Packet):
14
+ """
15
+ Reply to opening the jukebox listing
16
+ """
14
17
  _byte_size: int = 0
15
18
  _map_id: int = None # type: ignore [assignment]
16
19
  _jukebox_player: str = None # type: ignore [assignment]
@@ -87,12 +90,16 @@ class JukeboxOpenServerPacket(Packet):
87
90
  writer (EoWriter): The writer that the data will be serialized to.
88
91
  data (JukeboxOpenServerPacket): The data to serialize.
89
92
  """
90
- if data._map_id is None:
91
- raise SerializationError("map_id must be provided.")
92
- writer.add_short(data._map_id)
93
- if data._jukebox_player is None:
94
- raise SerializationError("jukebox_player must be provided.")
95
- writer.add_string(data._jukebox_player)
93
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
94
+ try:
95
+ if data._map_id is None:
96
+ raise SerializationError("map_id must be provided.")
97
+ writer.add_short(data._map_id)
98
+ if data._jukebox_player is None:
99
+ raise SerializationError("jukebox_player must be provided.")
100
+ writer.add_string(data._jukebox_player)
101
+ finally:
102
+ writer.string_sanitization_mode = old_string_sanitization_mode
96
103
 
97
104
  @staticmethod
98
105
  def deserialize(reader: EoReader) -> "JukeboxOpenServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class JukeboxPlayerServerPacket(Packet):
14
+ """
15
+ Play background music
16
+ """
14
17
  _byte_size: int = 0
15
18
  _mfx_id: int = None # type: ignore [assignment]
16
19
 
@@ -78,9 +81,13 @@ class JukeboxPlayerServerPacket(Packet):
78
81
  writer (EoWriter): The writer that the data will be serialized to.
79
82
  data (JukeboxPlayerServerPacket): The data to serialize.
80
83
  """
81
- if data._mfx_id is None:
82
- raise SerializationError("mfx_id must be provided.")
83
- writer.add_char(data._mfx_id)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._mfx_id is None:
87
+ raise SerializationError("mfx_id must be provided.")
88
+ writer.add_char(data._mfx_id)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
84
91
 
85
92
  @staticmethod
86
93
  def deserialize(reader: EoReader) -> "JukeboxPlayerServerPacket":