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

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