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 PartyListServerPacket(Packet):
16
+ """
17
+ Party member list update
18
+ """
16
19
  _byte_size: int = 0
17
20
  _members: list[PartyMember] = None # type: ignore [assignment]
18
21
 
@@ -72,12 +75,17 @@ class PartyListServerPacket(Packet):
72
75
  writer (EoWriter): The writer that the data will be serialized to.
73
76
  data (PartyListServerPacket): The data to serialize.
74
77
  """
75
- if data._members is None:
76
- raise SerializationError("members must be provided.")
77
- for i in range(len(data._members)):
78
- if i > 0:
78
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
79
+ try:
80
+ writer.string_sanitization_mode = True
81
+ if data._members is None:
82
+ raise SerializationError("members must be provided.")
83
+ for i in range(len(data._members)):
84
+ PartyMember.serialize(writer, data._members[i])
79
85
  writer.add_byte(0xFF)
80
- PartyMember.serialize(writer, data._members[i])
86
+ writer.string_sanitization_mode = False
87
+ finally:
88
+ writer.string_sanitization_mode = old_string_sanitization_mode
81
89
 
82
90
  @staticmethod
83
91
  def deserialize(reader: EoReader) -> "PartyListServerPacket":
@@ -9,7 +9,7 @@ from .....data.eo_reader import EoReader
9
9
 
10
10
  class PartyMember:
11
11
  """
12
- A member of the player's party
12
+ A member of the player's party
13
13
  """
14
14
  _byte_size: int = 0
15
15
  _player_id: int = None # type: ignore [assignment]
@@ -101,21 +101,25 @@ class PartyMember:
101
101
  writer (EoWriter): The writer that the data will be serialized to.
102
102
  data (PartyMember): The data to serialize.
103
103
  """
104
- if data._player_id is None:
105
- raise SerializationError("player_id must be provided.")
106
- writer.add_short(data._player_id)
107
- if data._leader is None:
108
- raise SerializationError("leader must be provided.")
109
- writer.add_char(1 if data._leader else 0)
110
- if data._level is None:
111
- raise SerializationError("level must be provided.")
112
- writer.add_char(data._level)
113
- if data._hp_percentage is None:
114
- raise SerializationError("hp_percentage must be provided.")
115
- writer.add_char(data._hp_percentage)
116
- if data._name is None:
117
- raise SerializationError("name must be provided.")
118
- writer.add_string(data._name)
104
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
105
+ try:
106
+ if data._player_id is None:
107
+ raise SerializationError("player_id must be provided.")
108
+ writer.add_short(data._player_id)
109
+ if data._leader is None:
110
+ raise SerializationError("leader must be provided.")
111
+ writer.add_char(1 if data._leader else 0)
112
+ if data._level is None:
113
+ raise SerializationError("level must be provided.")
114
+ writer.add_char(data._level)
115
+ if data._hp_percentage is None:
116
+ raise SerializationError("hp_percentage must be provided.")
117
+ writer.add_char(data._hp_percentage)
118
+ if data._name is None:
119
+ raise SerializationError("name must be provided.")
120
+ writer.add_string(data._name)
121
+ finally:
122
+ writer.string_sanitization_mode = old_string_sanitization_mode
119
123
 
120
124
  @staticmethod
121
125
  def deserialize(reader: EoReader) -> "PartyMember":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class PartyRemoveServerPacket(Packet):
14
+ """
15
+ Player left the party
16
+ """
14
17
  _byte_size: int = 0
15
18
  _player_id: int = None # type: ignore [assignment]
16
19
 
@@ -78,9 +81,13 @@ class PartyRemoveServerPacket(Packet):
78
81
  writer (EoWriter): The writer that the data will be serialized to.
79
82
  data (PartyRemoveServerPacket): The data to serialize.
80
83
  """
81
- if data._player_id is None:
82
- raise SerializationError("player_id must be provided.")
83
- writer.add_short(data._player_id)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._player_id is None:
87
+ raise SerializationError("player_id must be provided.")
88
+ writer.add_short(data._player_id)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
84
91
 
85
92
  @staticmethod
86
93
  def deserialize(reader: EoReader) -> "PartyRemoveServerPacket":
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
13
13
  from .....data.eo_reader import EoReader
14
14
 
15
15
  class PartyReplyServerPacket(Packet):
16
+ """
17
+ Failed party invite / join request
18
+ """
16
19
  _byte_size: int = 0
17
20
  _reply_code: PartyReplyCode = None # type: ignore [assignment]
18
21
  _reply_code_data: 'PartyReplyServerPacket.ReplyCodeData' = None
@@ -84,17 +87,21 @@ class PartyReplyServerPacket(Packet):
84
87
  writer (EoWriter): The writer that the data will be serialized to.
85
88
  data (PartyReplyServerPacket): The data to serialize.
86
89
  """
87
- if data._reply_code is None:
88
- raise SerializationError("reply_code must be provided.")
89
- writer.add_char(int(data._reply_code))
90
- if data._reply_code == PartyReplyCode.AlreadyInAnotherParty:
91
- if not isinstance(data._reply_code_data, PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty):
92
- raise SerializationError("Expected reply_code_data to be type PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty for reply_code " + PartyReplyCode(data._reply_code).name + ".")
93
- PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty.serialize(writer, data._reply_code_data)
94
- elif data._reply_code == PartyReplyCode.AlreadyInYourParty:
95
- if not isinstance(data._reply_code_data, PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty):
96
- raise SerializationError("Expected reply_code_data to be type PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty for reply_code " + PartyReplyCode(data._reply_code).name + ".")
97
- PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty.serialize(writer, data._reply_code_data)
90
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
91
+ try:
92
+ if data._reply_code is None:
93
+ raise SerializationError("reply_code must be provided.")
94
+ writer.add_char(int(data._reply_code))
95
+ if data._reply_code == PartyReplyCode.AlreadyInAnotherParty:
96
+ if not isinstance(data._reply_code_data, PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty):
97
+ raise SerializationError("Expected reply_code_data to be type PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty for reply_code " + PartyReplyCode(data._reply_code).name + ".")
98
+ PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty.serialize(writer, data._reply_code_data)
99
+ elif data._reply_code == PartyReplyCode.AlreadyInYourParty:
100
+ if not isinstance(data._reply_code_data, PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty):
101
+ raise SerializationError("Expected reply_code_data to be type PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty for reply_code " + PartyReplyCode(data._reply_code).name + ".")
102
+ PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty.serialize(writer, data._reply_code_data)
103
+ finally:
104
+ writer.string_sanitization_mode = old_string_sanitization_mode
98
105
 
99
106
  @staticmethod
100
107
  def deserialize(reader: EoReader) -> "PartyReplyServerPacket":
@@ -125,10 +132,9 @@ class PartyReplyServerPacket(Packet):
125
132
  return f"PartyReplyServerPacket(byte_size={repr(self._byte_size)}, reply_code={repr(self._reply_code)}, reply_code_data={repr(self._reply_code_data)})"
126
133
 
127
134
  ReplyCodeData = Union['PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty', 'PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty', None]
128
- ReplyCodeData.__doc__ = \
129
- """
130
- Data associated with different values of the `reply_code` field.
131
- """
135
+ """
136
+ Data associated with different values of the `reply_code` field.
137
+ """
132
138
 
133
139
  class ReplyCodeDataAlreadyInAnotherParty:
134
140
  """
@@ -164,9 +170,13 @@ class PartyReplyServerPacket(Packet):
164
170
  writer (EoWriter): The writer that the data will be serialized to.
165
171
  data (PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty): The data to serialize.
166
172
  """
167
- if data._player_name is None:
168
- raise SerializationError("player_name must be provided.")
169
- writer.add_string(data._player_name)
173
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
174
+ try:
175
+ if data._player_name is None:
176
+ raise SerializationError("player_name must be provided.")
177
+ writer.add_string(data._player_name)
178
+ finally:
179
+ writer.string_sanitization_mode = old_string_sanitization_mode
170
180
 
171
181
  @staticmethod
172
182
  def deserialize(reader: EoReader) -> "PartyReplyServerPacket.ReplyCodeDataAlreadyInAnotherParty":
@@ -226,9 +236,13 @@ class PartyReplyServerPacket(Packet):
226
236
  writer (EoWriter): The writer that the data will be serialized to.
227
237
  data (PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty): The data to serialize.
228
238
  """
229
- if data._player_name is None:
230
- raise SerializationError("player_name must be provided.")
231
- writer.add_string(data._player_name)
239
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
240
+ try:
241
+ if data._player_name is None:
242
+ raise SerializationError("player_name must be provided.")
243
+ writer.add_string(data._player_name)
244
+ finally:
245
+ writer.string_sanitization_mode = old_string_sanitization_mode
232
246
 
233
247
  @staticmethod
234
248
  def deserialize(reader: EoReader) -> "PartyReplyServerPacket.ReplyCodeDataAlreadyInYourParty":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class PartyRequestServerPacket(Packet):
15
+ """
16
+ Received party invite / join request
17
+ """
15
18
  _byte_size: int = 0
16
19
  _request_type: PartyRequestType = None # type: ignore [assignment]
17
20
  _inviter_player_id: int = None # type: ignore [assignment]
@@ -97,15 +100,19 @@ class PartyRequestServerPacket(Packet):
97
100
  writer (EoWriter): The writer that the data will be serialized to.
98
101
  data (PartyRequestServerPacket): The data to serialize.
99
102
  """
100
- if data._request_type is None:
101
- raise SerializationError("request_type must be provided.")
102
- writer.add_char(int(data._request_type))
103
- if data._inviter_player_id is None:
104
- raise SerializationError("inviter_player_id must be provided.")
105
- writer.add_short(data._inviter_player_id)
106
- if data._player_name is None:
107
- raise SerializationError("player_name must be provided.")
108
- writer.add_string(data._player_name)
103
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
104
+ try:
105
+ if data._request_type is None:
106
+ raise SerializationError("request_type must be provided.")
107
+ writer.add_char(int(data._request_type))
108
+ if data._inviter_player_id is None:
109
+ raise SerializationError("inviter_player_id must be provided.")
110
+ writer.add_short(data._inviter_player_id)
111
+ if data._player_name is None:
112
+ raise SerializationError("player_name must be provided.")
113
+ writer.add_string(data._player_name)
114
+ finally:
115
+ writer.string_sanitization_mode = old_string_sanitization_mode
109
116
 
110
117
  @staticmethod
111
118
  def deserialize(reader: EoReader) -> "PartyRequestServerPacket":
@@ -13,6 +13,9 @@ from .....data.eo_writer import EoWriter
13
13
  from .....data.eo_reader import EoReader
14
14
 
15
15
  class PartyTargetGroupServerPacket(Packet):
16
+ """
17
+ Updated experience and level-ups from party experience
18
+ """
16
19
  _byte_size: int = 0
17
20
  _gains: list[PartyExpShare] = None # type: ignore [assignment]
18
21
 
@@ -72,10 +75,14 @@ class PartyTargetGroupServerPacket(Packet):
72
75
  writer (EoWriter): The writer that the data will be serialized to.
73
76
  data (PartyTargetGroupServerPacket): The data to serialize.
74
77
  """
75
- if data._gains is None:
76
- raise SerializationError("gains must be provided.")
77
- for i in range(len(data._gains)):
78
- PartyExpShare.serialize(writer, data._gains[i])
78
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
79
+ try:
80
+ if data._gains is None:
81
+ raise SerializationError("gains must be provided.")
82
+ for i in range(len(data._gains)):
83
+ PartyExpShare.serialize(writer, data._gains[i])
84
+ finally:
85
+ writer.string_sanitization_mode = old_string_sanitization_mode
79
86
 
80
87
  @staticmethod
81
88
  def deserialize(reader: EoReader) -> "PartyTargetGroupServerPacket":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class PlayersAgreeServerPacket(Packet):
15
+ """
16
+ Player has appeared in nearby view
17
+ """
15
18
  _byte_size: int = 0
16
19
  _nearby: NearbyInfo = None # type: ignore [assignment]
17
20
 
@@ -71,9 +74,13 @@ class PlayersAgreeServerPacket(Packet):
71
74
  writer (EoWriter): The writer that the data will be serialized to.
72
75
  data (PlayersAgreeServerPacket): The data to serialize.
73
76
  """
74
- if data._nearby is None:
75
- raise SerializationError("nearby must be provided.")
76
- NearbyInfo.serialize(writer, data._nearby)
77
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
78
+ try:
79
+ if data._nearby is None:
80
+ raise SerializationError("nearby must be provided.")
81
+ NearbyInfo.serialize(writer, data._nearby)
82
+ finally:
83
+ writer.string_sanitization_mode = old_string_sanitization_mode
77
84
 
78
85
  @staticmethod
79
86
  def deserialize(reader: EoReader) -> "PlayersAgreeServerPacket":
@@ -53,18 +53,23 @@ class PlayersList:
53
53
  writer (EoWriter): The writer that the data will be serialized to.
54
54
  data (PlayersList): The data to serialize.
55
55
  """
56
- if data._players_count is None:
57
- raise SerializationError("players_count must be provided.")
58
- writer.add_short(data._players_count)
59
- writer.add_byte(0xFF)
60
- if data._players is None:
61
- raise SerializationError("players must be provided.")
62
- if len(data._players) > 64008:
63
- raise SerializationError(f"Expected length of players to be 64008 or less, got {len(data._players)}.")
64
- for i in range(data._players_count):
65
- if i > 0:
56
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
57
+ try:
58
+ writer.string_sanitization_mode = True
59
+ if data._players_count is None:
60
+ raise SerializationError("players_count must be provided.")
61
+ writer.add_short(data._players_count)
62
+ writer.add_byte(0xFF)
63
+ if data._players is None:
64
+ raise SerializationError("players must be provided.")
65
+ if len(data._players) > 64008:
66
+ raise SerializationError(f"Expected length of players to be 64008 or less, got {len(data._players)}.")
67
+ for i in range(data._players_count):
68
+ OnlinePlayer.serialize(writer, data._players[i])
66
69
  writer.add_byte(0xFF)
67
- OnlinePlayer.serialize(writer, data._players[i])
70
+ writer.string_sanitization_mode = False
71
+ finally:
72
+ writer.string_sanitization_mode = old_string_sanitization_mode
68
73
 
69
74
  @staticmethod
70
75
  def deserialize(reader: EoReader) -> "PlayersList":
@@ -87,8 +92,7 @@ class PlayersList:
87
92
  data._players = []
88
93
  for i in range(data._players_count):
89
94
  data._players.append(OnlinePlayer.deserialize(reader))
90
- if i + 1 < data._players_count:
91
- reader.next_chunk()
95
+ reader.next_chunk()
92
96
  reader.chunked_reading_mode = False
93
97
  data._byte_size = reader.position - reader_start_position
94
98
  return data
@@ -53,18 +53,23 @@ class PlayersListFriends:
53
53
  writer (EoWriter): The writer that the data will be serialized to.
54
54
  data (PlayersListFriends): The data to serialize.
55
55
  """
56
- if data._players_count is None:
57
- raise SerializationError("players_count must be provided.")
58
- writer.add_short(data._players_count)
59
- writer.add_byte(0xFF)
60
- if data._players is None:
61
- raise SerializationError("players must be provided.")
62
- if len(data._players) > 64008:
63
- raise SerializationError(f"Expected length of players to be 64008 or less, got {len(data._players)}.")
64
- for i in range(data._players_count):
65
- if i > 0:
56
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
57
+ try:
58
+ writer.string_sanitization_mode = True
59
+ if data._players_count is None:
60
+ raise SerializationError("players_count must be provided.")
61
+ writer.add_short(data._players_count)
62
+ writer.add_byte(0xFF)
63
+ if data._players is None:
64
+ raise SerializationError("players must be provided.")
65
+ if len(data._players) > 64008:
66
+ raise SerializationError(f"Expected length of players to be 64008 or less, got {len(data._players)}.")
67
+ for i in range(data._players_count):
68
+ writer.add_string(data._players[i])
66
69
  writer.add_byte(0xFF)
67
- writer.add_string(data._players[i])
70
+ writer.string_sanitization_mode = False
71
+ finally:
72
+ writer.string_sanitization_mode = old_string_sanitization_mode
68
73
 
69
74
  @staticmethod
70
75
  def deserialize(reader: EoReader) -> "PlayersListFriends":
@@ -87,8 +92,7 @@ class PlayersListFriends:
87
92
  data._players = []
88
93
  for i in range(data._players_count):
89
94
  data._players.append(reader.get_string())
90
- if i + 1 < data._players_count:
91
- reader.next_chunk()
95
+ reader.next_chunk()
92
96
  reader.chunked_reading_mode = False
93
97
  data._byte_size = reader.position - reader_start_position
94
98
  return data
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class PlayersListServerPacket(Packet):
15
+ """
16
+ Equivalent to INIT_INIT with InitReply.PlayersList
17
+ """
15
18
  _byte_size: int = 0
16
19
  _players_list: PlayersList = None # type: ignore [assignment]
17
20
 
@@ -71,9 +74,15 @@ class PlayersListServerPacket(Packet):
71
74
  writer (EoWriter): The writer that the data will be serialized to.
72
75
  data (PlayersListServerPacket): The data to serialize.
73
76
  """
74
- if data._players_list is None:
75
- raise SerializationError("players_list must be provided.")
76
- PlayersList.serialize(writer, data._players_list)
77
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
78
+ try:
79
+ writer.string_sanitization_mode = True
80
+ if data._players_list is None:
81
+ raise SerializationError("players_list must be provided.")
82
+ PlayersList.serialize(writer, data._players_list)
83
+ writer.string_sanitization_mode = False
84
+ finally:
85
+ writer.string_sanitization_mode = old_string_sanitization_mode
77
86
 
78
87
  @staticmethod
79
88
  def deserialize(reader: EoReader) -> "PlayersListServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class PlayersNet242ServerPacket(Packet):
14
+ """
15
+ #find command reply - different map
16
+ """
14
17
  _byte_size: int = 0
15
18
  _name: str = None # type: ignore [assignment]
16
19
 
@@ -70,9 +73,13 @@ class PlayersNet242ServerPacket(Packet):
70
73
  writer (EoWriter): The writer that the data will be serialized to.
71
74
  data (PlayersNet242ServerPacket): The data to serialize.
72
75
  """
73
- if data._name is None:
74
- raise SerializationError("name must be provided.")
75
- writer.add_string(data._name)
76
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
77
+ try:
78
+ if data._name is None:
79
+ raise SerializationError("name must be provided.")
80
+ writer.add_string(data._name)
81
+ finally:
82
+ writer.string_sanitization_mode = old_string_sanitization_mode
76
83
 
77
84
  @staticmethod
78
85
  def deserialize(reader: EoReader) -> "PlayersNet242ServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class PlayersPingServerPacket(Packet):
14
+ """
15
+ #find command reply - offline
16
+ """
14
17
  _byte_size: int = 0
15
18
  _name: str = None # type: ignore [assignment]
16
19
 
@@ -70,9 +73,13 @@ class PlayersPingServerPacket(Packet):
70
73
  writer (EoWriter): The writer that the data will be serialized to.
71
74
  data (PlayersPingServerPacket): The data to serialize.
72
75
  """
73
- if data._name is None:
74
- raise SerializationError("name must be provided.")
75
- writer.add_string(data._name)
76
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
77
+ try:
78
+ if data._name is None:
79
+ raise SerializationError("name must be provided.")
80
+ writer.add_string(data._name)
81
+ finally:
82
+ writer.string_sanitization_mode = old_string_sanitization_mode
76
83
 
77
84
  @staticmethod
78
85
  def deserialize(reader: EoReader) -> "PlayersPingServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class PlayersPongServerPacket(Packet):
14
+ """
15
+ #find command reply - same map
16
+ """
14
17
  _byte_size: int = 0
15
18
  _name: str = None # type: ignore [assignment]
16
19
 
@@ -70,9 +73,13 @@ class PlayersPongServerPacket(Packet):
70
73
  writer (EoWriter): The writer that the data will be serialized to.
71
74
  data (PlayersPongServerPacket): The data to serialize.
72
75
  """
73
- if data._name is None:
74
- raise SerializationError("name must be provided.")
75
- writer.add_string(data._name)
76
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
77
+ try:
78
+ if data._name is None:
79
+ raise SerializationError("name must be provided.")
80
+ writer.add_string(data._name)
81
+ finally:
82
+ writer.string_sanitization_mode = old_string_sanitization_mode
76
83
 
77
84
  @staticmethod
78
85
  def deserialize(reader: EoReader) -> "PlayersPongServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class PlayersRemoveServerPacket(Packet):
14
+ """
15
+ Nearby player has logged out
16
+ """
14
17
  _byte_size: int = 0
15
18
  _player_id: int = None # type: ignore [assignment]
16
19
 
@@ -78,9 +81,13 @@ class PlayersRemoveServerPacket(Packet):
78
81
  writer (EoWriter): The writer that the data will be serialized to.
79
82
  data (PlayersRemoveServerPacket): The data to serialize.
80
83
  """
81
- if data._player_id is None:
82
- raise SerializationError("player_id must be provided.")
83
- writer.add_short(data._player_id)
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._player_id is None:
87
+ raise SerializationError("player_id must be provided.")
88
+ writer.add_short(data._player_id)
89
+ finally:
90
+ writer.string_sanitization_mode = old_string_sanitization_mode
84
91
 
85
92
  @staticmethod
86
93
  def deserialize(reader: EoReader) -> "PlayersRemoveServerPacket":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class PlayersReplyServerPacket(Packet):
15
+ """
16
+ Equivalent to INIT_INIT with InitReply.PlayersListFriends
17
+ """
15
18
  _byte_size: int = 0
16
19
  _players_list: PlayersListFriends = None # type: ignore [assignment]
17
20
 
@@ -71,9 +74,15 @@ class PlayersReplyServerPacket(Packet):
71
74
  writer (EoWriter): The writer that the data will be serialized to.
72
75
  data (PlayersReplyServerPacket): The data to serialize.
73
76
  """
74
- if data._players_list is None:
75
- raise SerializationError("players_list must be provided.")
76
- PlayersListFriends.serialize(writer, data._players_list)
77
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
78
+ try:
79
+ writer.string_sanitization_mode = True
80
+ if data._players_list is None:
81
+ raise SerializationError("players_list must be provided.")
82
+ PlayersListFriends.serialize(writer, data._players_list)
83
+ writer.string_sanitization_mode = False
84
+ finally:
85
+ writer.string_sanitization_mode = old_string_sanitization_mode
77
86
 
78
87
  @staticmethod
79
88
  def deserialize(reader: EoReader) -> "PlayersReplyServerPacket":
@@ -11,6 +11,9 @@ from .....data.eo_writer import EoWriter
11
11
  from .....data.eo_reader import EoReader
12
12
 
13
13
  class PriestOpenServerPacket(Packet):
14
+ """
15
+ Response from talking to a priest NPC
16
+ """
14
17
  _byte_size: int = 0
15
18
  _session_id: int = None # type: ignore [assignment]
16
19
 
@@ -78,9 +81,13 @@ class PriestOpenServerPacket(Packet):
78
81
  writer (EoWriter): The writer that the data will be serialized to.
79
82
  data (PriestOpenServerPacket): The data to serialize.
80
83
  """
81
- if data._session_id is None:
82
- raise SerializationError("session_id must be provided.")
83
- 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
84
91
 
85
92
  @staticmethod
86
93
  def deserialize(reader: EoReader) -> "PriestOpenServerPacket":
@@ -12,6 +12,9 @@ from .....data.eo_writer import EoWriter
12
12
  from .....data.eo_reader import EoReader
13
13
 
14
14
  class PriestReplyServerPacket(Packet):
15
+ """
16
+ Reply to client Priest-family packets
17
+ """
15
18
  _byte_size: int = 0
16
19
  _reply_code: PriestReply = None # type: ignore [assignment]
17
20
 
@@ -71,9 +74,13 @@ class PriestReplyServerPacket(Packet):
71
74
  writer (EoWriter): The writer that the data will be serialized to.
72
75
  data (PriestReplyServerPacket): The data to serialize.
73
76
  """
74
- if data._reply_code is None:
75
- raise SerializationError("reply_code must be provided.")
76
- writer.add_short(int(data._reply_code))
77
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
78
+ try:
79
+ if data._reply_code is None:
80
+ raise SerializationError("reply_code must be provided.")
81
+ writer.add_short(int(data._reply_code))
82
+ finally:
83
+ writer.string_sanitization_mode = old_string_sanitization_mode
77
84
 
78
85
  @staticmethod
79
86
  def deserialize(reader: EoReader) -> "PriestReplyServerPacket":