EQ2EMu/server/WorldStructs.xml

19587 lines
1.1 MiB
XML
Raw Normal View History

2020-02-28 07:17:24 -07:00
<EQ2Emulator>
<Comment Text="The Emu will get the latest version of the struct that is LESS than or equal to the client's version number.
This allows multiple struct version to coexist on the same server. Elements that arent used in the source code are set
to zero and treated like placeholders." />
<Struct Name="WS_SkillMap" ClientVersion="1" OpcodeName="OP_PopulateSkillMapsMsg" >
<Data ElementName="skill_count" Type="int32" />
<Data ElementName="skill_array" Type="Array" ArraySizeVariable="skill_count">
<Data ElementName="skill_id" Type="int32" />
<Data ElementName="name" Type="EQ2_16Bit_String" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_SkillMap" ClientVersion="547" OpcodeName="OP_PopulateSkillMapsMsg" >
<Data ElementName="skill_count" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="skill_array" Type="Array" ArraySizeVariable="skill_count">
<Data ElementName="skill_id" Type="int32" />
<Data ElementName="short_name" Type="EQ2_16Bit_String" />
<Data ElementName="name" Type="EQ2_16Bit_String" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="substruct_info_template" ClientVersion="63119">
<Data ElementName="num_tabs" Type="int16" Size="1" />
<Data ElementName="tab_template_array" Type="Array" ArraySizeVariable="num_tabs" >
<Data ElementName="tab_number" Type="int16" Size="1" />
<Data ElementName="tab_unknown1" Type="int32" Size="1" />
<Data ElementName="template_size" Type="int16" Size="1" />
<Data ElementName="template_array" Type="Array" ArraySizeVariable="template_size" >
<Data ElementName="template_pos" Type="int16" Size="1" />
<Data ElementName="template_unknown3" Type="int16" Size="1" />
<Data ElementName="template_id" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="substruct_unknown5_info" ClientVersion="1096">
<Data ElementName="unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="unknown5_array" Type="Array" ArraySizeVariable="unknown5_num_items">
<Data ElementName="unknown5" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="substruct_unknown5_info" ClientVersion="63119">
<Data ElementName="unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="unknown5_array" Type="Array" ArraySizeVariable="unknown5_num_items">
<Data ElementName="unknown5" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="substruct_node_info" ClientVersion="1096">
<Data ElementName="parent_id" Type="int32" Size="1" />
<Data ElementName="parent_req_tier" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="min_level" Type="int8" Size="1" />
<Data ElementName="unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="unknown5_array" Type="Array" ArraySizeVariable="unknown5_num_items">
<Data ElementName="unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="classification1" Type="EQ2_16Bit_String" />
<Data ElementName="points_req" Type="int8" Size="1" />
<Data ElementName="nknown8" Type="int8" Size="1" />
<Data ElementName="classification2" Type="EQ2_16Bit_String" />
<Data ElementName="col" Type="int8" Size="1" />
<Data ElementName="row" Type="int8" Size="1" />
<Data ElementName="line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int16" Size="1" />
<Data ElementName="points_to_unlock" Type="int16" Size="1" />
<Data ElementName="unknown9b" Type="int16" Size="1" />
</Struct>
<Struct Name="substruct_node_info" ClientVersion="63119">
<Data ElementName="num_node_items" Type="int32" Size="1" />
<Data ElementName="node_item_array" Type="Array" ArraySizeVariable="num_node_items">
<Data ElementName="parent_id" Type="int32" Size="1" />
<Data ElementName="parent_req_tier" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="min_level" Type="int8" Size="1" />
<Data ElementName="unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="unknown5_array" Type="Array" ArraySizeVariable="unknown5_num_items">
<Data ElementName="unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="classification1" Type="EQ2_16Bit_String" />
<Data ElementName="points_req" Type="int8" Size="1" />
<Data ElementName="nknown8" Type="int8" Size="1" />
<Data ElementName="classification2" Type="EQ2_16Bit_String" />
<Data ElementName="col" Type="int8" Size="1" />
<Data ElementName="row" Type="int8" Size="1" />
<Data ElementName="line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int16" Size="1" />
<Data ElementName="points_to_unlock" Type="int16" Size="1" />
<Data ElementName="unknown9b" Type="int16" Size="1" />
<Data ElementName="unknown9c" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="LoginByNumRequest" ClientVersion="1" >
<Data ElementName="account_id" Type="int32" />
<Data ElementName="access_code" Type="int32" />
<Data ElementName="version" Type="int16" />
<Data ElementName="unknown2" Type="int32" Size="5" />
</Struct>
<Struct Name="LoginByNumRequest" ClientVersion="547" >
<Data ElementName="account_id" Type="int32" />
<Data ElementName="access_code" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int32" />
<Data ElementName="version" Type="int16" />
<Data ElementName="unknown2" Type="int32" Size="5" />
</Struct>
<Struct Name="LoginByNumRequest" ClientVersion="1208" >
2020-02-28 07:17:24 -07:00
<Data ElementName="account_id" Type="int32" />
<Data ElementName="access_code" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="version" Type="int16" />
<Data ElementName="unknown3" Type="int32" Size="6" />
</Struct>
<Struct Name="LS_LoginResponse" ClientVersion="1" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown01" Type="int16" Size="1" />
<Data ElementName="unknown02" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown05" Type="sint32" Size="1" />
<Data ElementName="accountid" Type="int32" Size="1" />
<Data ElementName="unknown06" Type="int16" Size="1" />
<Data ElementName="unknown07" Type="int8" Size="1" />
<Data ElementName="unknown08" Type="int8" Size="1" />
<Data ElementName="unknown09" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int32" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
2020-07-25 21:54:04 -06:00
<Struct Name="LS_LoginResponse" ClientVersion="546" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="unknown01" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown15" Type="int8" Size="11" />
<Data ElementName="unknown02" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="LS_LoginResponse" ClientVersion="1096" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown01" Type="int8" Size="22" />
<Data ElementName="unknown02" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown05" Type="sint32" Size="1" />
<Data ElementName="accountid" Type="int32" Size="1" />
<Data ElementName="unknown06" Type="int8" Size="7" />
<Data ElementName="unknown07" Type="int32" Size="1" />
<Data ElementName="unknown08" Type="int32" Size="1" />
<Data ElementName="unknown09" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
</Struct>
<Struct Name="LS_LoginResponse" ClientVersion="1144" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown01" Type="int8" Size="22" />
<Data ElementName="unknown02" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown05" Type="sint32" Size="1" />
<Data ElementName="accountid" Type="int32" Size="1" />
<Data ElementName="unknown06" Type="int8" Size="15" />
<Data ElementName="unknown07" Type="int32" Size="1" />
<Data ElementName="unknown08" Type="int32" Size="1" />
<Data ElementName="unknown09" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
</Struct>
<Struct Name="LS_LoginResponse" ClientVersion="1153" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown01" Type="int8" Size="22" />
<Data ElementName="unknown02" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown05" Type="sint32" Size="1" />
<Data ElementName="accountid" Type="int32" Size="1" />
<Data ElementName="unknown06" Type="int8" Size="7" />
<Data ElementName="unknown07" Type="int32" Size="1" />
<Data ElementName="unknown08" Type="int32" Size="1" />
<Data ElementName="unknown09" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int32" Size="1" />
</Struct>
<Struct Name="LS_LoginResponse" ClientVersion="1193" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown01" Type="int8" Size="22" />
<Data ElementName="unknown02" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown05" Type="sint32" Size="1" />
<Data ElementName="accountid" Type="int32" Size="1" />
<Data ElementName="unknown06" Type="int8" Size="7" />
<Data ElementName="unknown07" Type="int32" Size="1" />
<Data ElementName="unknown08" Type="int32" Size="1" />
<Data ElementName="unknown09" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int32" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
2020-03-02 16:47:18 -07:00
</Struct>
<Struct Name="LS_LoginResponse" ClientVersion="60100" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="login_response" Type="int8" Size="1" />
<Data ElementName="unknown" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="parental_control_flag" Type="int8" Size="1" />
<Data ElementName="parental_control_timer" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="8" />
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="reset_appearance" Type= "int8" Size="1" />
<Data ElementName="do_not_force_soga" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="5" />
<Data ElementName="unknown7" Type="int32" Size="1" />
<Data ElementName="unknown7a" Type="int16" Size="1" />
<Data ElementName="race_unknown" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="unknown9" Type="int8" Size="3" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int8" IfVariableSet="unknown10" Size="1" />
<Data ElementName="class_items" Type="Array" ArraySizeVariable="num_class_items" IfVariableSet="unknown10">
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="starting_items" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="model_id" Type="int32" />
<Data ElementName="slot_id" Type="int8" />
<Data ElementName="use_color" Type="int8" />
<Data ElementName="use_highlight_color" Type="int8" />
<Data ElementName="model_color" Type="EQ2_Color" />
<Data ElementName="model_highlight_color" Type="EQ2_Color" />
</Data>
</Data>
<Data ElementName="unknown_array2_size" Type="int8" Size="1" />
<Data ElementName="unknown_array2" Type="Array" ArraySizeVariable="unknown_array2_size">
<Data ElementName="array2_unknown" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
<Data ElementName="sub_level" Type="int32" Size="1" />
<Data ElementName="race_flag" Type="int32" Size="1" />
<Data ElementName="class_flag" Type="int32" Size="1" />
<Data ElementName="password" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="username" Type="EQ2_16bit_String" Size="1" />
<Data ElementName="service" Type="EQ2_16bit_String" Size="1" />
<!--Seems to be a repeat of the first array-->
<Data ElementName="unknown12" Type="int8" Size="1" />
<Data ElementName="lvl90_num_class_items" Type="int8" IfVariableSet="unknown12" Size="1" />
<Data ElementName="lvl90_class_items" Type="Array" ArraySizeVariable="lvl90_num_class_items" IfVariableSet="unknown12">
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="starting_items" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="model_id" Type="int32" />
<Data ElementName="slot_id" Type="int8" />
<Data ElementName="use_color" Type="int8" />
<Data ElementName="use_highlight_color" Type="int8" />
<Data ElementName="model_color" Type="EQ2_Color" />
<Data ElementName="model_highlight_color" Type="EQ2_Color" />
</Data>
</Data>
<Data ElementName="unknown13" Type="int8" Size="1" />
<Data ElementName="time_locked_num_class_items" Type="int8" IfVariableSet="unknown13" Size="1" />
<Data ElementName="time_locked_class_items" Type="Array" ArraySizeVariable="time_locked_num_class_items" IfVariableSet="unknown13">
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="starting_items" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="model_id" Type="int32" />
<Data ElementName="slot_id" Type="int8" />
<Data ElementName="use_color" Type="int8" />
<Data ElementName="use_highlight_color" Type="int8" />
<Data ElementName="model_color" Type="EQ2_Color" />
<Data ElementName="model_highlight_color" Type="EQ2_Color" />
</Data>
</Data>
<Data ElementName="unknown14" Type="int8" Size="13" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="LS_LoginResponse" ClientVersion="57048" OpcodeName="OP_LoginReplyMsg">
<Data ElementName="reply_code" Type="int8" Size="1" />
<Data ElementName="unknown01" Type="int8" Size="22" />
<Data ElementName="unknown02" Type="int8" Size="1" />
<Data ElementName="unknown03" Type="sint32" Size="1" />
<Data ElementName="unknown04" Type="sint32" Size="1" />
<Data ElementName="unknown05" Type="sint32" Size="1" />
<Data ElementName="accountid" Type="int32" Size="1" />
<Data ElementName="unknown06" Type="int8" Size="7" />
<Data ElementName="unknown07" Type="int32" Size="1" />
<Data ElementName="unknown08" Type="int32" Size="1" />
<Data ElementName="unknown09" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int32" Size="1" />
<Data ElementName="unknown12" Type="int32" Size="5" />
</Struct>
2020-03-02 16:47:18 -07:00
2020-02-28 07:17:24 -07:00
<Struct Name="WS_CommandName" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="514">
<Data ElementName="unknown01" Type="int32" Size="1" />
<Data ElementName="unknown02" Type="int32" Size="1" />
<Data ElementName="unknown03" Type="int32" Size="1" />
<Data ElementName="character_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown04" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_DisplayText" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDisplayTextCmd">
<Data ElementName="color" Type="int8" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" />
<Data ElementName="display_popup" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_DisplayText" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDisplayTextCmd">
<Data ElementName="color" Type="int8" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown02" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_Signal" ClientVersion="1" OpcodeName="OP_SignalMsg">
<Data ElementName="signal" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_ShowWindow" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqShowWindowCmd">
<Data ElementName="window" Type="EQ2_16Bit_String" />
<Data ElementName="show" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_EnableGameEvent" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqEnableGameEventCmd">
<Data ElementName="event_name" Type="EQ2_16Bit_String" />
<Data ElementName="enabled" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_FlashWindow" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqFlashWindowCmd">
<Data ElementName="window" Type="EQ2_16Bit_String" />
<Data ElementName="flash_seconds" Type="float" Size="1" />
</Struct>
<Struct Name="WS_InstructionWindow" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqInstructionWindowCmd">
<Data ElementName="open_seconds_min" Type="float" Size="1" />
<Data ElementName="open_seconds_max" Type="float" Size="1" />
<Data ElementName="voice_sync" Type="int8" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" />
<Data ElementName="voice" Type="EQ2_16Bit_String" />
<Data ElementName="num_goals" Type="int8" Size="1" />
<Data ElementName="goals" Type="Array" ArraySizeVariable="num_goals">
<Data ElementName="goal_text" Type="EQ2_16Bit_String" />
<Data ElementName="num_tasks" Type="int8" Size="1" />
<Data ElementName="tasks" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task_text" Type="EQ2_16Bit_String" />
</Data>
</Data>
<Data ElementName="complete_sound" Type="EQ2_16Bit_String" />
<Data ElementName="completed_voice" Type="EQ2_16Bit_String" />
<Data ElementName="signal" Type="EQ2_16Bit_String" />
<Data ElementName="voice_key1" Type="int32" Size="1" />
<Data ElementName="voice_key2" Type="int32" Size="1" />
<Data ElementName="completed_voice_key1" Type="int32" Size="1" />
<Data ElementName="completed_voice_key2" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_InstructionWindowGoal" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqInstructionWindowGoalCmd">
<Data ElementName="goal_num" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_OnScreenMsg" ClientVersion="1" OpcodeName="OP_OnscreenMsgMsg">
<Data ElementName="text" Type="EQ2_16Bit_String" />
<Data ElementName="message_type" Type="EQ2_16Bit_String" />
<Data ElementName="size" Type="float" Size="1" />
<Data ElementName="red" Type="int8" Size="1" />
<Data ElementName="green" Type="int8" Size="1" />
<Data ElementName="blue" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_OnScreenMsg" ClientVersion="546" OpcodeName="OP_OnscreenMsgMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" />
<Data ElementName="message_type" Type="EQ2_16Bit_String" />
<Data ElementName="size" Type="float" Size="1" />
<Data ElementName="red" Type="int8" Size="1" />
<Data ElementName="green" Type="int8" Size="1" />
<Data ElementName="blue" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_LevelChanged" ClientVersion="1" OpcodeName="OP_LevelChangedMsg">
<Data ElementName="old_level" Type="int16" />
<Data ElementName="new_level" Type="int16" />
<Data ElementName="type" Type="int8" />
</Struct>
<Struct Name="WS_DeathWindow" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqShowDeathWindowCmd">
<Data ElementName="location_count" Type="int16" />
<Data ElementName="location_array" Type="Array" ArraySizeVariable="location_count">
<Data ElementName="location_id" Type="int32" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="location_name" Type="EQ2_16Bit_String" />
<Data ElementName="choice_text" Type="EQ2_16Bit_String" />
<Data ElementName="distance" Type="float" />
</Data>
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" Size="3" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_TeleportWithinZone" ClientVersion="1" OpcodeName="OP_TeleportWithinZoneMsg">
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
</Struct>
<Struct Name="WS_GameWorldTime" ClientVersion="1" OpcodeName="OP_GameWorldTimeMsg">
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_GameWorldTime" ClientVersion="547" OpcodeName="OP_GameWorldTimeMsg">
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unix_time" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_GameWorldTime" ClientVersion="1193" OpcodeName="OP_GameWorldTimeMsg">
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unix_time" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="float" Size="1" />
</Struct>
<Struct Name="WS_Camp" ClientVersion="1" OpcodeName="OP_CampStartedMsg" >
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="camp_desktop" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_Camp" ClientVersion="547" OpcodeName="OP_CampStartedMsg" >
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="camp_desktop" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="camp_char_select" Type="int8" Size="1" />
<Data ElementName="char_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_Camp" ClientVersion="1153" OpcodeName="OP_CampStartedMsg" >
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="camp_desktop" Type="int8" Size="1" />
<Data ElementName="camp_char_select" Type="int8" Size="1" />
<Data ElementName="char_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" Size="8" />
</Struct>
<Struct Name="WS_RequestCamp" ClientVersion="" OpcodeName="OP_RequestCampMsg">
<Data ElementName="quit" Type="int8" Size="1" />
<Data ElementName="camp_desktop" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_RequestCamp" ClientVersion="547" OpcodeName="OP_RequestCampMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="quit" Type="int8" Size="1" />
<Data ElementName="camp_desktop" Type="int8" Size="1" />
<Data ElementName="camp_char_select" Type="int16" Size="1" />
<Data ElementName="char_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int8" Size="2" />
</Struct>
<Struct Name="WS_RequestCamp" ClientVersion="1153" OpcodeName="OP_RequestCampMsg">
<Data ElementName="quit" Type="int8" Size="1" />
<Data ElementName="camp_desktop" Type="int8" Size="1" />
<Data ElementName="camp_char_select" Type="int16" Size="1" />
<Data ElementName="char_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_SpellGainedMsg" ClientVersion="1" OpcodeName="OP_SpellGainedMsg">
<Data ElementName="spell_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="add_silently" Type="int8" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellGainedMsg" ClientVersion="546" OpcodeName="OP_SpellGainedMsg">
<Data ElementName="spell_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="unique_id" Type="int32" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="add_silently" Type="int8" Size="1" />
<Data ElementName="add_to_hotbar" Type="int8" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_SpellGainedMsg" ClientVersion="547" OpcodeName="OP_SpellGainedMsg">
<Data ElementName="spell_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unique_id" Type="int32" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="display_spell_tier" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_SpellGainedMsg" ClientVersion="1011" OpcodeName="OP_SpellGainedMsg">
<Data ElementName="spell_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="unique_id" Type="int32" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_MacroInit" ClientVersion="1" OpcodeName="OP_MacroInitMsg" >
<Data ElementName="macro_count" Type="int32" />
<Data ElementName="macro_array" Type="Array" ArraySizeVariable="macro_count">
<Data ElementName="number" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="command" Type="EQ2_8Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
</Data>
</Struct>
<Struct Name="WS_MacroInit" ClientVersion="546" OpcodeName="OP_MacroInitMsg" >
<Data ElementName="macro_count" Type="int32" />
<Data ElementName="macro_array" Type="Array" ArraySizeVariable="macro_count">
<Data ElementName="number" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="macro_details_count" Type="int8" />
<Data ElementName="macro_details_array" Type="Array" ArraySizeVariable="macro_details_count">
<Data ElementName="command" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="icon" Type="int16" Size="1" />
</Data>
</Struct>
<Struct Name="WS_MacroInit" ClientVersion="547" OpcodeName="OP_MacroInitMsg" >
<Data ElementName="macro_count" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="macro_array" Type="Array" ArraySizeVariable="macro_count">
<Data ElementName="number" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="macro_details_count" Type="int8" />
<Data ElementName="macro_details_array" Type="Array" ArraySizeVariable="macro_details_count">
<Data ElementName="command" Type="EQ2_16Bit_String" />
</Data>
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
</Struct>
<Struct Name="WS_MacroUpdate" ClientVersion="1" OpcodeName="OP_MacroUpdateMsg" >
<Data ElementName="number" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="command" Type="EQ2_8Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_MacroUpdate" ClientVersion="546" OpcodeName="OP_MacroUpdateMsg" >
<Data ElementName="number" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="macro_count" Type="int8" />
<Data ElementName="macro_array" Type="Array" ArraySizeVariable="macro_count">
<Data ElementName="command" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="icon" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_MacroUpdate" ClientVersion="547" OpcodeName="OP_MacroUpdateMsg" >
<Data ElementName="number" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
2020-02-28 07:17:24 -07:00
<Data ElementName="macro_count" Type="int8" />
<Data ElementName="macro_array" Type="Array" ArraySizeVariable="macro_count">
<Data ElementName="command" Type="EQ2_16Bit_String" />
</Data>
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="1" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_settings" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="285" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
2020-02-28 07:17:24 -07:00
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="float" Size="2" />
<Data ElementName="num_slides" Type="int8" Size="1" />
<Data ElementName="slide_array" Type="Array" ArraySizeVariable="num_slides">
<Data ElementName="unknown1" Type="float" Size="2" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="slide" Type="EQ2_8Bit_String" />
<Data ElementName="voiceover" Type="EQ2_8Bit_String" />
<Data ElementName="key1" Type="int32" Size="1" />
<Data ElementName="key2" Type="int32" Size="1" />
<Data ElementName="num_transitions" Type="int8" Size="1" />
<Data ElementName="transitions_array" Type="Array" ArraySizeVariable="num_transitions">
<Data ElementName="transition_x" Type="int32" Size="1" />
<Data ElementName="transition_y" Type="int32" Size="1" />
<Data ElementName="transition_zoom" Type="float" Size="1" />
<Data ElementName="transition_time" Type="float" Size="1" />
</Data>
</Data>
<Data ElementName="unknown3" Type="float" Size="2" />
<Data ElementName="underworld" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="547" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="num_slides" Type="int8" Size="1" />
<Data ElementName="slide_array" Type="Array" ArraySizeVariable="num_slides">
<Data ElementName="unknown1" Type="float" Size="2" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="slide" Type="EQ2_8Bit_String" />
<Data ElementName="voiceover" Type="EQ2_8Bit_String" />
<Data ElementName="key1" Type="int32" Size="1" />
<Data ElementName="key2" Type="int32" Size="1" />
<Data ElementName="num_transitions" Type="int8" Size="1" />
<Data ElementName="transitions_array" Type="Array" ArraySizeVariable="num_transitions">
<Data ElementName="transition_x" Type="int32" Size="1" />
<Data ElementName="transition_y" Type="int32" Size="1" />
<Data ElementName="transition_zoom" Type="float" Size="1" />
<Data ElementName="transition_time" Type="float" Size="1" />
</Data>
</Data>
<Data ElementName="unknown9" Type="float" Size="2" />
<Data ElementName="underworld" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
2020-02-28 07:17:24 -07:00
</Data>
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="843" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="942" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="957" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="motd" Type="EQ2_16Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="959" OpcodeName="OP_ZoneInfoMsg" >
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
<Data ElementName="num_news_items" Type="int16" Size="1" />
<Data ElementName="news_item_array" Type="Array" ArraySizeVariable="num_news_items">
<Data ElementName="news_id" Type="int32" Size="1" />
<Data ElementName="news" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="1067" OpcodeName="OP_ZoneInfoMsg" >
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="unknown_key" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
<Data ElementName="num_news_items" Type="int16" Size="1" />
<Data ElementName="news_item_array" Type="Array" ArraySizeVariable="num_news_items">
<Data ElementName="news_id" Type="int32" Size="1" />
<Data ElementName="news" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="1096" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="1142" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="3" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="5" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown11" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="1193" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="3" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="num_slides" Type="int8" Size="1" />
<Data ElementName="slide_array" Type="Array" ArraySizeVariable="num_slides">
<Data ElementName="unknown1" Type="float" Size="2" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="slide" Type="EQ2_8Bit_String" />
<Data ElementName="voiceover" Type="EQ2_8Bit_String" />
<Data ElementName="key1" Type="int32" Size="1" />
<Data ElementName="key2" Type="int32" Size="1" />
<Data ElementName="num_transitions" Type="int8" Size="1" />
<Data ElementName="transitions_array" Type="Array" ArraySizeVariable="num_transitions">
<Data ElementName="transition_x" Type="int32" Size="1" />
<Data ElementName="transition_y" Type="int32" Size="1" />
<Data ElementName="transition_zoom" Type="float" Size="1" />
<Data ElementName="transition_time" Type="float" Size="1" />
</Data>
</Data>
<Data ElementName="unknown8" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="5" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown12" Type="int32" Size="1" />
<Data ElementName="tab_count" Type="int32" />
<Data ElementName="tab_array" Type="Array" ArraySizeVariable="tab_count">
<Data ElementName="tab_index" Type="int32" />
<Data ElementName="tab_name" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="63119" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="3" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="5" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown12" Type="int32" Size="1" />
<Data ElementName="tab_count" Type="int32" />
<Data ElementName="tab_array" Type="Array" ArraySizeVariable="tab_count">
<Data ElementName="tab_index" Type="int32" />
<Data ElementName="tab_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown_mj" Type="int8" Size="1" />
<Data ElementName="unknown_mj1" Type="int32" Size="1" />
<Data ElementName="unknown_mj2" Type="int32" Size="1" />
<Data ElementName="unknown_mj3" Type="int32" Size="1" />
<Data ElementName="unknown_mj4" Type="int32" Size="1" />
<Data ElementName="unknown_mj5" Type="int32" Size="1" />
<Data ElementName="unknown_mj6" Type="int32" Size="1" />
<Data ElementName="unknown_mj7" Type="int32" Size="1" />
<Data ElementName="unknown_mj8" Type="int32" Size="1" />
<Data ElementName="unknown_mj9" Type="int32" Size="1" />
<Data ElementName="unknown_mj10" Type="int32" Size="1" />
<Data ElementName="unknown_mj11" Type="int32" Size="1" />
<Data ElementName="unknown_mj12" Type="int32" Size="1" />
<Data ElementName="unknown_mj13" Type="int32" Size="1" />
<Data ElementName="unknown_mj14" Type="int32" Size="1" />
<Data ElementName="unknown_mj15" Type="int32" Size="1" />
<Data ElementName="unknown_mj16" Type="int32" Size="1" />
<Data ElementName="unknown_mj17" Type="int32" Size="1" />
<Data ElementName="unknown_mj18" Type="int32" Size="1" />
<Data ElementName="unknown_mj19" Type="int32" Size="1" />
<Data ElementName="unknown_mj20" Type="int32" Size="1" />
<Data ElementName="unknown_mj21" Type="int32" Size="1" />
<Data ElementName="unknown_mj22" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="63182" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="unknown2a" Type="int32" Size="1" />
<Data ElementName="expansions_enabled" Type="int32" Size="1" />
<Data ElementName="unknown3a" Type="int32" Size="1" />
<Data ElementName="unknown2b" Type="int32" Size="1" />
<Data ElementName="unknown3b" Type="int32" Size="1" />
<Data ElementName="unknown3c" Type="int32" Size="1" />
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="zone_flags" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="unknown11a" Type="int8" Size="1" />
<Data ElementName="unknown11b" Type="int8" Size="1" />
<Data ElementName="unknown11c" Type="int8" Size="1" />
<Data ElementName="permission_level" Type="int8" Size="1" />
<Data ElementName="unknown11e" Type="int8" Size="1" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown12" Type="int32" Size="1" />
<Data ElementName="tab_count" Type="int32" />
<Data ElementName="tab_array" Type="Array" ArraySizeVariable="tab_count">
<Data ElementName="tab_index" Type="int32" />
<Data ElementName="tab_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown_mj" Type="int8" Size="1" />
<Data ElementName="unknown_mj1" Type="int32" Size="1" />
<Data ElementName="unknown_mj2" Type="int32" Size="1" />
<Data ElementName="unknown_mj3" Type="int32" Size="1" />
<Data ElementName="unknown_mj4" Type="int32" Size="1" />
<Data ElementName="unknown_mj5" Type="int32" Size="1" />
<Data ElementName="unknown_mj6" Type="int32" Size="1" />
<Data ElementName="unknown_mj7" Type="int32" Size="1" />
<Data ElementName="unknown_mj8" Type="int32" Size="1" />
<Data ElementName="unknown_mj9" Type="int32" Size="1" />
<Data ElementName="unknown_mj10" Type="int32" Size="1" />
<Data ElementName="unknown_mj11" Type="int32" Size="1" />
<Data ElementName="unknown_mj12" Type="int32" Size="1" />
<Data ElementName="unknown_mj13" Type="int32" Size="1" />
<Data ElementName="unknown_mj14" Type="int32" Size="1" />
<Data ElementName="unknown_mj15" Type="int32" Size="1" />
<Data ElementName="unknown_mj16" Type="int32" Size="1" />
<Data ElementName="unknown_mj17" Type="int32" Size="1" />
<Data ElementName="unknown_mj18" Type="int32" Size="1" />
<Data ElementName="unknown_mj19" Type="int32" Size="1" />
<Data ElementName="unknown_mj20" Type="int32" Size="1" />
<Data ElementName="unknown_mj21" Type="int32" Size="1" />
<Data ElementName="unknown_mj22" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="63214" OpcodeName="OP_ZoneInfoMsg">
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="num_exp_feature_bytes" Type="int32" Size="1" />
<Data ElementName="exp_feature_bytes_array" Type="Array" ArraySizeVariable="num_exp_feature_bytes">
<Data ElementName="exp_feature_bytes" Type="int8" />
</Data>
<Data ElementName="num_unknown3b_bytes" Type="int32" Size="1" />
<Data ElementName="unknown3b_bytes_array" Type="Array" ArraySizeVariable="num_unknown3b_bytes">
<Data ElementName="unknown3b_bytes" Type="int8" />
</Data>
<Data ElementName="auction_website" Type="EQ2_8Bit_String" />
<Data ElementName="auction_port" Type="int32" Size="1" />
<Data ElementName="upload_page" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="year" Type="int16" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="hour" Type="int8" Size="1" />
<Data ElementName="minute" Type="int8" Size="1" />
<Data ElementName="seconds" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="float" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="unknown10b" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="5" />
<Data ElementName="num_adv" Type="int32" Size="1" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" Size="1" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown12" Type="int32" Size="1" />
<Data ElementName="tab_count" Type="int32" />
<Data ElementName="tab_array" Type="Array" ArraySizeVariable="tab_count">
<Data ElementName="tab_index" Type="int32" />
<Data ElementName="tab_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown_mj" Type="int8" Size="1" />
<Data ElementName="unknown_mj1" Type="int32" Size="1" />
<Data ElementName="unknown_mj2" Type="int32" Size="1" />
<Data ElementName="unknown_mj3" Type="int32" Size="1" />
<Data ElementName="unknown_mj4" Type="int32" Size="1" />
<Data ElementName="unknown_mj5" Type="int32" Size="1" />
<Data ElementName="unknown_mj6" Type="int32" Size="1" />
<Data ElementName="unknown_mj7" Type="int32" Size="1" />
<Data ElementName="unknown_mj8" Type="int32" Size="1" />
<Data ElementName="unknown_mj9" Type="int32" Size="1" />
<Data ElementName="unknown_mj10" Type="int32" Size="1" />
<Data ElementName="unknown_mj11" Type="int32" Size="1" />
<Data ElementName="unknown_mj12" Type="int32" Size="1" />
<Data ElementName="unknown_mj13" Type="int32" Size="1" />
<Data ElementName="unknown_mj14" Type="int32" Size="1" />
<Data ElementName="unknown_mj15" Type="int32" Size="1" />
<Data ElementName="unknown_mj16" Type="int32" Size="1" />
<Data ElementName="unknown_mj17" Type="int32" Size="1" />
<Data ElementName="unknown_mj18" Type="int32" Size="1" />
<Data ElementName="unknown_mj19" Type="int32" Size="1" />
<Data ElementName="unknown_mj20" Type="int32" Size="1" />
<Data ElementName="unknown_mj21" Type="int32" Size="1" />
<Data ElementName="unknown_mj22" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ZoneInfo" ClientVersion="66249" OpcodeName="OP_ZoneInfoMsg" >
<Data ElementName="server1" Type="EQ2_8Bit_String" />
<Data ElementName="server2" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="num_exp_feature_bytes" Type="int32" />
<Data ElementName="exp_feature_bytes_array" Type="Array" ArraySizeVariable="num_exp_feature_bytes">
<Data ElementName="exp_feature_bytes" Type="int8" />
</Data>
<Data ElementName="num_unknown3b_bytes" Type="int32" />
<Data ElementName="unknown3b_bytes_array" Type="Array" ArraySizeVariable="num_unknown3b_bytes">
<Data ElementName="unknown3b_bytes" Type="int8" />
</Data>
<Data ElementName="upload_key" Type="EQ2_8Bit_String" />
<Data ElementName="upload_key2" Type="EQ2_8Bit_String" />
<Data ElementName="zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone2" Type="EQ2_8Bit_String" />
<Data ElementName="parent_zone" Type="EQ2_8Bit_String" />
<Data ElementName="zone_unknown2" Type="EQ2_8Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_8Bit_String" />
<Data ElementName="char_name" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="year" Type="int16" />
<Data ElementName="month" Type="int8" />
<Data ElementName="day" Type="int8" />
<Data ElementName="hour" Type="int8" />
<Data ElementName="minute" Type="int8" />
<Data ElementName="seconds" Type="int8" />
<Data ElementName="unknown7" Type="float" Size="2" />
<Data ElementName="unknown8" Type="int16" />
<Data ElementName="unknown9" Type="float" />
<Data ElementName="unknown10" Type="int32" />
<Data ElementName="unknown10b" Type="int16" />
<Data ElementName="unknown11" Type="int8" Size="5" />
<Data ElementName="num_adv" Type="int32" />
<Data ElementName="adv_array" Type="Array" ArraySizeVariable="num_adv">
<Data ElementName="adv_name" Type="EQ2_16Bit_String" />
<Data ElementName="adv_id" Type="int16" />
</Data>
<Data ElementName="num_client_setup" Type="int32" />
<Data ElementName="client_cmd_array" Type="Array" ArraySizeVariable="num_client_setup">
<Data ElementName="client_cmds" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown12" Type="int32" />
<Data ElementName="tab_count" Type="int32" />
<Data ElementName="tab_array" Type="Array" ArraySizeVariable="tab_count">
<Data ElementName="tab_index" Type="int32" />
<Data ElementName="tab_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown_mj" Type="int8" />
<Data ElementName="unknown_mj1" Type="int32" />
<Data ElementName="unknown_mj2" Type="int32" />
<Data ElementName="unknown_mj3" Type="int32" />
<Data ElementName="unknown_mj4" Type="int32" />
<Data ElementName="unknown_mj5" Type="int32" />
<Data ElementName="unknown_mj6" Type="int32" />
<Data ElementName="unknown_mj7" Type="int32" />
<Data ElementName="unknown_mj8" Type="int32" />
<Data ElementName="unknown_mj9" Type="int32" />
<Data ElementName="unknown_mj10" Type="int32" />
<Data ElementName="unknown_mj11" Type="int32" />
<Data ElementName="unknown_mj12" Type="int32" />
<Data ElementName="unknown_mj13" Type="int32" />
<Data ElementName="unknown_mj14" Type="int32" />
<Data ElementName="unknown_mj15" Type="int32" />
<Data ElementName="unknown_mj16" Type="int32" />
<Data ElementName="unknown_mj17" Type="int32" />
<Data ElementName="unknown_mj18" Type="int32" />
<Data ElementName="unknown_mj19" Type="int32" />
<Data ElementName="unknown_mj20" Type="int32" />
<Data ElementName="unknown_mj21" Type="int32" />
<Data ElementName="unknown_mj22" Type="int32" />
</Struct>
<Struct Name="Substruct_SpellEffects" ClientVersion="1" >
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="cancellable" Type="int8" Size="1" />
</Struct>
<Struct Name="Substruct_SpellEffects" ClientVersion="546" >
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="cancellable" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
</Struct>
<Struct Name="Substruct_SpellEffects" ClientVersion="843" >
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="cancellable" Type="int8" Size="1" />
</Struct>
<Struct Name="Substruct_SpellEffects" ClientVersion="1193" >
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="cancellable" Type="int8" Size="1" />
<Data ElementName="CoEunknown" Type="int8" Size="21" />
</Struct>
<Struct Name="Substruct_PassiveEffects" ClientVersion="1193" >
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="CoEunknown" Type="int8" Size="13" />
<Data ElementName="category" Type="int32" Size="1" />
<Data ElementName="category2" Type="int32" Size="1" />
</Struct>
<Struct Name="Substruct_MaintainedEffects" ClientVersion="1">
<Data ElementName="name" Type="char" Size="40" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="slot_pos" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="beneficial" Type="int8" Size="1" />
<Data ElementName="conc_used" Type="int8" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
</Struct>
<Struct Name="Substruct_MaintainedEffects" ClientVersion="546">
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="char" Size="60" />
<Data ElementName="target" Type="int32" Size="1" />
<Data ElementName="target_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="slot_pos" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="conc_used" Type="int8" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
</Struct>
<Struct Name="Substruct_MaintainedEffects" ClientVersion="1193">
<Data ElementName="name" Type="char" Size="60" />
<Data ElementName="target" Type="int32" Size="1" />
<Data ElementName="target_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="slot_pos" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="conc_used" Type="int8" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="CoEunknown" Type="int8" Size="4" />
</Struct>
<Struct Name="Substruct_MaintainedEffects" ClientVersion="57048">
<Data ElementName="name" Type="char" Size="60" />
<Data ElementName="target" Type="int32" Size="1" />
<Data ElementName="target_type" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="slot_pos" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="conc_used" Type="int8" Size="1" />
<Data ElementName="total_time" Type="float" Size="1" />
<Data ElementName="expire_timestamp" Type="int32" Size="1" />
<Data ElementName="CoEunknown" Type="int8" Size="6" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="1" >
<Data ElementName="zone_status" Type="int8" Size="1" /> <!-- 0=not filled, 1=in_zone, 2=not in zone-->
<Data ElementName="name" Type="char" Size="16" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="hp_max" Type="sint32" Size="1" />
<Data ElementName="hp_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="546" >
<Data ElementName="zone_status" Type="int8" Size="1" /> <!-- 0=not filled, 1=in_zone, 2=not in zone, 3=unavailable (probably zoning)-->
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="hp_current" Type="sint32" Size="1" />
<Data ElementName="hp_max" Type="sint32" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="547" >
2020-02-28 07:17:24 -07:00
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="hp_current" Type="sint32" Size="1" />
<Data ElementName="hp_max" Type="sint32" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
<Data ElementName="zone_status" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="2" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="1188" >
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="hp_current" Type="sint32" Size="1" />
<Data ElementName="hp_max" Type="sint32" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
<Data ElementName="zone_status" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="CoEunknown" Type="int8" Size="9" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="57048" >
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="hp_current" Type="sint64" Size="1" />
<Data ElementName="hp_max" Type="sint64" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
<Data ElementName="zone_status" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="CoEunknown" Type="int8" Size="9" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="61532" >
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="hp_current" Type="sint64" Size="1" />
<Data ElementName="hp_current2" Type="sint64" Size="1" />
<Data ElementName="hp_max" Type="sint32" Size="1" />
<Data ElementName="hp_max2" Type="sint32" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
<Data ElementName="zone_status" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="CoEunknown" Type="int8" Size="9" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="63167" >
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="hp_current" Type="sint64" Size="1" />
<Data ElementName="hp_max" Type="sint64" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
<Data ElementName="zone_status" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="CoEunknown" Type="int8" Size="9" />
</Struct>
<Struct Name="Substruct_GroupMember" ClientVersion="64736" >
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="hp_current" Type="sint64" Size="1" />
<Data ElementName="hp_max" Type="sint64" Size="1" />
<Data ElementName="power_current" Type="sint32" Size="1" />
<Data ElementName="power_max" Type="sint32" Size="1" />
<Data ElementName="level_current" Type="int16" Size="1" />
<Data ElementName="level_max" Type="int16" Size="1" />
<Data ElementName="name" Type="char" Size="41" />
<Data ElementName="zone" Type="char" Size="60" />
<Data ElementName="instance" Type="int8" Size="1" />
<Data ElementName="zone_status" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="race_id" Type="int8" Size="1" />
<Data ElementName="class_id" Type="int8" Size="1" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="CoEunknown" Type="int8" Size="9" />
</Struct>
<Struct Name="WS_CharacterSheet" ClientVersion="1" OpcodeName="OP_UpdateCharacterSheetMsg" Comment="1560 bytes">
<Data ElementName="character_name" Type="char" Size="16" />
<Data ElementName="race" Type="int8" Size="1" /> <!-- 0x10 -->
<Data ElementName="gender" Type="int8" Size="1" /> <!-- 0x11 -->
<Data ElementName="class1" Type="int32" Size="1" /> <!-- 0x12 -->
<Data ElementName="class2" Type="int32" Size="1" /> <!-- 0x16 -->
<Data ElementName="class3" Type="int32" Size="1" /> <!-- 0x1a -->
<Data ElementName="tradeskill_class1" Type="int32" Size="1" /> <!-- 0x1e -->
<Data ElementName="tradeskill_class2" Type="int32" Size="1" /> <!-- 0x22 -->
<Data ElementName="tradeskill_class3" Type="int32" Size="1" /> <!-- 0x26 -->
<Data ElementName="level" Type="int16" Size="1" /> <!-- 0x2a -->
<Data ElementName="tradeskill_level" Type="int16" Size="1" /> <!-- 0x2c -->
<Data ElementName="gm_level" Type="int32" Size="1" /> <!-- 0x2e -->
<Data ElementName="current_hp" Type="int32" Size="1" /> <!-- 0x32 -->
<Data ElementName="max_hp" Type="int32" Size="1" /> <!-- 0x36 -->
<Data ElementName="base_hp" Type="int32" Size="1" /> <!-- 0x3a -->
<Data ElementName="current_power" Type="int32" Size="1" /> <!-- 0x3e -->
<Data ElementName="max_power" Type="int32" Size="1" /> <!-- 0x42 -->
<Data ElementName="base_power" Type="int32" Size="1" /> <!-- 0x46 -->
<Data ElementName="conc_used" Type="int8" Size="1" /> <!-- 0x4a -->
<Data ElementName="conc_max" Type="int8" Size="1" /> <!-- 0x4b -->
<Data ElementName="attack" Type="int16" Size="1" /> <!-- 0x4c -->
<Data ElementName="attack_base" Type="int16" Size="1" /> <!-- 0x4e -->
<Data ElementName="defense" Type="int16" Size="1" /> <!-- 0x50 -->
<Data ElementName="defense_base" Type="int16" Size="1" /> <!-- 0x52 -->
<Data ElementName="str" Type="int16" Size="1" /> <!-- 0x54 -->
<Data ElementName="sta" Type="int16" Size="1" /> <!-- 0x56 -->
<Data ElementName="agi" Type="int16" Size="1" /> <!-- 0x58 -->
<Data ElementName="wis" Type="int16" Size="1" /> <!-- 0x5a -->
<Data ElementName="int" Type="int16" Size="1" /> <!-- 0x5c -->
<Data ElementName="str_base" Type="int16" Size="1" /> <!-- 0x5e -->
<Data ElementName="sta_base" Type="int16" Size="1" /> <!-- 0x60 -->
<Data ElementName="agi_base" Type="int16" Size="1" /> <!-- 0x62 -->
<Data ElementName="wis_base" Type="int16" Size="1" /> <!-- 0x64 -->
<Data ElementName="int_base" Type="int16" Size="1" /> <!-- 0x66 -->
<Data ElementName="slashing" Type="int16" Size="1" /> <!-- 0x68 -->
<Data ElementName="crushing" Type="int16" Size="1" /> <!-- 0x6a -->
<Data ElementName="piercing" Type="int16" Size="1" /> <!-- 0x6c -->
<Data ElementName="heat" Type="int16" Size="1" /> <!-- 0x6e -->
<Data ElementName="cold" Type="int16" Size="1" /> <!-- 0x70 -->
<Data ElementName="magic" Type="int16" Size="1" /> <!-- 0x72 -->
<Data ElementName="mental" Type="int16" Size="1" /> <!-- 0x74 -->
<Data ElementName="divine" Type="int16" Size="1" /> <!-- 0x76 -->
<Data ElementName="disease" Type="int16" Size="1" /> <!-- 0x78 -->
<Data ElementName="poison" Type="int16" Size="1" /> <!-- 0x7a -->
<Data ElementName="slashing_base" Type="int16" Size="1" /> <!-- 0x7c -->
<Data ElementName="crushing_base" Type="int16" Size="1" /> <!-- 0x7e -->
<Data ElementName="piercing_base" Type="int16" Size="1" /> <!-- 0x80 -->
<Data ElementName="heat_base" Type="int16" Size="1" /> <!-- 0x82 -->
<Data ElementName="cold_base" Type="int16" Size="1" /> <!-- 0x84 -->
<Data ElementName="magic_base" Type="int16" Size="1" /> <!-- 0x86 -->
<Data ElementName="mental_base" Type="int16" Size="1" /> <!-- 0x88 -->
<Data ElementName="divine_base" Type="int16" Size="1" /> <!-- 0x8a -->
<Data ElementName="disease_base" Type="int16" Size="1" /> <!-- 0x8c -->
<Data ElementName="poison_base" Type="int16" Size="1" /> <!-- 0x8e -->
<Data ElementName="combat_exp_enabled" Type="int8" Size="1" /> <!-- 0x90 -->
<Data ElementName="exp_yellow" Type="int16" Size="1" /> <!-- 0x91 -->
<Data ElementName="exp_blue" Type="int16" Size="1" /> <!-- 0x93 -->
<Data ElementName="exp_debt" Type="int16" Size="1" /> <!-- 0x95 -->
<Data ElementName="tradeskill_exp_yellow" Type="int16" Size="1" /> <!-- 0x97 -->
<Data ElementName="tradeskill_exp_blue" Type="int16" Size="1" /> <!-- 0x99 -->
<Data ElementName="tradeskill_exp_debt" Type="int16" Size="1" /> <!-- 0x9b -->
<Data ElementName="spirit_rank" Type="int8" Size="1" /> <!-- 0x9d -->
<Data ElementName="spirit" Type="int8" Size="1" /> <!-- 0x9e -->
<Data ElementName="spirit_progress" Type="float" Size="1" /> <!-- 0x9f -->
<Data ElementName="coins_copper" Type="int32" Size="1" /> <!-- 0xa3 -->
<Data ElementName="coins_silver" Type="int32" Size="1" /> <!-- 0xa7 -->
<Data ElementName="coins_gold" Type="int32" Size="1" /> <!-- 0xab -->
<Data ElementName="coins_plat" Type="int32" Size="1" /> <!-- 0xaf -->
<Data ElementName="weight" Type="int16" Size="1" /> <!-- 0xb3 -->
<Data ElementName="max_weight" Type="int16" Size="1" /> <!-- 0xb5 -->
<Data ElementName="concentration_spells" Type="int32" Size="5" /> <!-- 0xb7 -->
<Data ElementName="spell_effects" Substruct="Substruct_SpellEffects" Size="12" /> <!-- 0xcb -->
<Data ElementName="maintained_effects" Substruct="Substruct_MaintainedEffects" Size="12" /> <!-- 0x167 -->
<Data ElementName="breath" Type="float" /> <!-- 0x44f -->
<Data ElementName="breathable_environments" Type="int32" /> <!-- 0x453 -->
<Data ElementName="auto_attack" Type="int8" /> <!-- 0x457 -->
<Data ElementName="ranged_auto_attack" Type="int8" /> <!-- 0x458 -->
<Data ElementName="can_cast" Type="int8" Size="1" /> <!-- 0x459 -->
<Data ElementName="pre_zoning" Type="int8" Size="1" /> <!-- 0x45a -->
<Data ElementName="max_level" Type="int8" Size="1" /> <!-- 0x45b -->
<Data ElementName="max_TS_level" Type="int8" Size="1" /> <!-- 0x45c -->
<Data ElementName="feigndeath_state" Type="int8" Size="1" /> <!-- 0x45d -->
<Data ElementName="spell_prop_hpregen" Type="int32" Size="1" /> <!-- 0x45e -->
<Data ElementName="spell_prop_manaregen" Type="int32" Size="1" /> <!-- 0x462 -->
<Data ElementName="spell_prop_hpregenppt" Type="int32" Size="1" /> <!-- 0x466 -->
<Data ElementName="spell_prop_mpregenppt" Type="int32" Size="1" /> <!-- 0x46a -->
<Data ElementName="spell_prop_maxhp" Type="int32" Size="1" /> <!-- 0x46e -->
<Data ElementName="spell_prop_maxhpperc" Type="int32" Size="1" /> <!-- 0x472 -->
<Data ElementName="spell_prop_speed" Type="int32" Size="1" /> <!-- 0x476 -->
<Data ElementName="spell_prop_slow" Type="int32" Size="1" /> <!-- 0x47a -->
<Data ElementName="spell_prop_mountspeed" Type="int32" Size="1" /> <!-- 0x47e -->
<Data ElementName="spell_prop_offensivespeed" Type="int32" Size="1" /> <!-- 0x482 -->
<Data ElementName="spell_prop_attackspeed" Type="int32" Size="1" /> <!-- 0x486 -->
<Data ElementName="spell_prop_maxmana" Type="int32" Size="1" /> <!-- 0x48a -->
<Data ElementName="spell_prop_maxmanaperc" Type="int32" Size="1" /> <!-- 0x48e -->
<Data ElementName="spell_prop_maxattperc" Type="int32" Size="1" /> <!-- 0x492 -->
<Data ElementName="spell_prop_healinhibit" Type="int32" Size="1" /> <!-- 0x496 -->
<Data ElementName="spell_prop_maxconcentration" Type="int32" Size="1" /> <!-- 0x49a -->
<Data ElementName="spell_prop_screen_blur" Type="int32" Size="1" /> <!-- 0x49e -->
<Data ElementName="spell_prop_redlight" Type="int32" Size="1" /> <!-- 0x4a2 -->
<Data ElementName="spell_prop_greenlight" Type="int32" Size="1" /> <!-- 0x4a6 -->
<Data ElementName="spell_prop_bluelight" Type="int32" Size="1" /> <!-- 0x4aa -->
<Data ElementName="spell_prop_momentumbonus" Type="int32" Size="1" /> <!-- 0x4ae -->
<Data ElementName="spell_prop_dmgmomentummod" Type="int32" Size="1" /> <!-- 0x4b2 -->
<Data ElementName="spell_prop_healmomentummod" Type="int32" Size="1" /> <!-- 0x4b6 -->
<Data ElementName="spell_prop_magiclevelimmunity" Type="int32" Size="1" /> <!-- 0x4ba -->
<Data ElementName="spell_prop_hategainmod" Type="int32" Size="1" /> <!-- 0x4be -->
<Data ElementName="spell_prop_breathableenvironments" Type="int32" Size="1" /> <!-- 0x4c2 -->
<Data ElementName="spell_prop_combatexpmod" Type="int32" Size="1" /> <!-- 0x4c6 -->
<Data ElementName="spell_prop_tradeskillexpmod" Type="int32" Size="1" /> <!-- 0x4ca -->
<Data ElementName="spell_prop_sizemod" Type="int32" Size="1" /> <!-- 0x4ce -->
<Data ElementName="spell_prop_dps" Type="int32" Size="1" /> <!-- 0x4d2 -->
<Data ElementName="spell_prop_stealth" Type="int32" Size="1" /> <!-- 0x4d6 -->
<Data ElementName="spell_prop_stealthspeed" Type="int32" Size="1" /> <!-- 0x4da -->
<Data ElementName="spell_prop_invis" Type="int32" Size="1" /> <!-- 0x4de -->
<Data ElementName="spell_prop_seestealth" Type="int32" Size="1" /> <!-- 0x4e2 -->
<Data ElementName="spell_prop_seeinvis" Type="int32" Size="1" /> <!-- 0x4e6 -->
<Data ElementName="spell_state_root" Type="int8" Size="1" /> <!-- 0x4ea -->
<Data ElementName="spell_state_charm" Type="int8" Size="1" /> <!-- 0x4eb -->
<Data ElementName="spell_state_stun" Type="int8" Size="1" /> <!-- 0x4ec -->
<Data ElementName="spell_state_stifle" Type="int8" Size="1" /> <!-- 0x4ed -->
<Data ElementName="spell_state_fear" Type="int8" Size="1" /> <!-- 0x4ee -->
<Data ElementName="spell_state_noaa" Type="int8" Size="1" /> <!-- 0x4ef -->
<Data ElementName="spell_state_ultravision" Type="int8" Size="1" /> <!-- 0x4f0 -->
<Data ElementName="spell_state_infravision" Type="int8" Size="1" /> <!-- 0x4f1 -->
<Data ElementName="spell_state_sonicvision" Type="int8" Size="1" /> <!-- 0x4f2 -->
<Data ElementName="spell_state_fishvision" Type="int8" Size="1" /> <!-- 0x4f3 -->
<Data ElementName="spell_state_feigndeath" Type="int8" Size="1" /> <!-- 0x4f4 -->
<Data ElementName="spell_state_auravision" Type="int8" Size="1" /> <!-- 0x4f5 -->
<Data ElementName="spell_state_noaoe" Type="int8" Size="1" /> <!-- 0x4f6 -->
<Data ElementName="current_PCA" Type="int32" Size="1" /> <!-- 0x4f7 -->
<Data ElementName="group_members" Substruct="Substruct_GroupMember" Size="5" /> <!-- 0x4fb -->
<Data ElementName="leader_index" Type="int32" Size="1" /> <!-- 0x5f0 -->
<Data ElementName="pet_id" Type="int32" Size="1" /> <!-- 0x5f4 -->
<Data ElementName="pet_name" Type="char" Size="16" /> <!-- 0x5f8 -->
<Data ElementName="pet_hp" Type="float" Size="1" /> <!-- 0x608 -->
<Data ElementName="pet_power" Type="float" Size="1" /> <!-- 0x60C -->
<Data ElementName="rain" Type="float" Size="1" />
<Data ElementName="rain2" Type="float" Size="1" />
</Struct>
<Struct Name="WS_CharacterSheet" ClientVersion="546" OpcodeName="OP_UpdateCharacterSheetMsg">
<Data ElementName="character_name" Type="char" Size="41" /> <!-- starting at byte 1 -->
<Data ElementName="race" Type="int8" Size="1" /> <!-- 42 -->
<Data ElementName="gender" Type="int8" Size="1" /> <!-- 43 -->
<Data ElementName="class1" Type="int32" Size="1" /> <!-- 44 -->
<Data ElementName="class2" Type="int32" Size="1" /> <!-- 48 -->
<Data ElementName="class3" Type="int32" Size="1" /> <!-- 52 -->
<Data ElementName="tradeskill_class1" Type="int32" Size="1" /> <!-- 56 -->
<Data ElementName="tradeskill_class2" Type="int32" Size="1" /> <!-- 60 -->
<Data ElementName="tradeskill_class3" Type="int32" Size="1" /> <!-- 64 -->
<Data ElementName="level" Type="int16" Size="1" /> <!-- 68 -->
<Data ElementName="effective_level" Type="int16" Size="1" /> <!-- 70 -->
<Data ElementName="tradeskill_level" Type="int16" Size="1" /> <!-- 72 -->
<Data ElementName="gm_level" Type="int32" Size="1" /> <!-- 74 -->
<Data ElementName="account_age_base" Type="int16" Size="1" /> <!-- 78 -->
<Data ElementName="trial_isle_bonus" Type="sint16" Size="1" /> <!-- 80 -->
<Data ElementName="all_access_bonus" Type="sint16" Size="1" /> <!-- 82 -->
<Data ElementName="bc_bonus" Type="sint16" Size="1" /> <!-- 84 -->
<Data ElementName="dof_bonus" Type="sint16" Size="1" /> <!-- 86 -->
<Data ElementName="froglok_bonus" Type="sint16" Size="1" /> <!-- 88 -->
<Data ElementName="auction_access_bonus" Type="sint16" Size="1" /> <!-- 90 -->
<Data ElementName="ss_bonus" Type="sint16" Size="1" /> <!-- 92 -->
<Data ElementName="exp2_bonus" Type="sint16" Size="1" /> <!-- 94 -->
<Data ElementName="exp3_bonus" Type="sint16" Size="1" /> <!-- 96 -->
<Data ElementName="freeplay_bonus" Type="sint16" Size="1" /> <!-- 98 -->
<Data ElementName="freeplay_limit_exceeded_bonus" Type="sint16" Size="1" /> <!-- 100 -->
<Data ElementName="last_name" Type="char" Size="20" /> <!-- 102 -->
<Data ElementName="unknown1" Type="int8" Size="4" /> <!-- 122, resets emote and combat selections -->
<Data ElementName="current_hp" Type="int32" Size="1" /> <!-- 126 -->
<Data ElementName="max_hp" Type="int32" Size="1" /> <!-- 130 -->
<Data ElementName="base_hp" Type="int32" Size="1" /> <!-- 134 -->
<Data ElementName="current_power" Type="int32" Size="1" /> <!-- 138 -->
<Data ElementName="max_power" Type="int32" Size="1" /> <!-- 142 -->
<Data ElementName="base_power" Type="int32" Size="1" /> <!-- 146 -->
<Data ElementName="conc_used" Type="int8" Size="1" /> <!-- 150 -->
<Data ElementName="conc_max" Type="int8" Size="1" /> <!-- 151 -->
<Data ElementName="attack" Type="int16" Size="1" /> <!-- 152 -->
<Data ElementName="attack_base" Type="int16" Size="1" /> <!-- 154 -->
<Data ElementName="mitigation_cur" Type="int16" Size="1" /> <!-- 156 -->
<Data ElementName="mitigation_max" Type="int16" Size="1" /> <!-- 158 -->
<Data ElementName="absorb" Type="int16" Size="1" /> <!-- 160 -->
<Data ElementName="avoidance_cur" Type="int16" Size="1" /> <!-- 162 -->
<Data ElementName="avoidance_max" Type="int16" Size="1" /> <!-- 164 -->
<Data ElementName="avoidance_base" Type="int16" Size="1" /> <!-- 166 -->
<Data ElementName="unknown2" Type="int16" Size="1" /> <!-- 168 -->
<Data ElementName="avoidance_parry_chance" Type="int16" Size="1" /> <!-- 170 -->
<Data ElementName="avoidance_parry_chance_base" Type="int16" Size="1" /> <!-- 172 -->
<Data ElementName="avoidance_deflection_chance" Type="int16" Size="1" /> <!-- 174 -->
<Data ElementName="avoidance_deflection_chance_base" Type="int16" Size="1" /> <!-- 176 -->
<Data ElementName="avoidance_block_chance" Type="int16" Size="1" /> <!-- 178 -->
<Data ElementName="avoidance_block_chance_base" Type="int16" Size="1" /> <!-- 180 -->
<Data ElementName="str" Type="int16" Size="1" /> <!-- 182 -->
<Data ElementName="sta" Type="int16" Size="1" /> <!-- 184 -->
<Data ElementName="agi" Type="int16" Size="1" /> <!-- 186 -->
<Data ElementName="wis" Type="int16" Size="1" /> <!-- 188 -->
<Data ElementName="int" Type="int16" Size="1" /> <!-- 190 -->
<Data ElementName="str_base" Type="int16" Size="1" /> <!-- 192 -->
<Data ElementName="sta_base" Type="int16" Size="1" /> <!-- 194 -->
<Data ElementName="agi_base" Type="int16" Size="1" /> <!-- 196 -->
<Data ElementName="wis_base" Type="int16" Size="1" /> <!-- 198 -->
<Data ElementName="int_base" Type="int16" Size="1" /> <!-- 200 -->
<Data ElementName="slashing" Type="int16" Size="1" /> <!-- 202 -->
<Data ElementName="crushing" Type="int16" Size="1" /> <!-- 204 -->
<Data ElementName="piercing" Type="int16" Size="1" /> <!-- 206 -->
<Data ElementName="heat" Type="int16" Size="1" /> <!-- 208 -->
<Data ElementName="cold" Type="int16" Size="1" /> <!-- 210 -->
<Data ElementName="magic" Type="int16" Size="1" /> <!-- 212 -->
<Data ElementName="mental" Type="int16" Size="1" /> <!-- 214 -->
<Data ElementName="divine" Type="int16" Size="1" /> <!-- 216 -->
<Data ElementName="disease" Type="int16" Size="1" /> <!-- 218 -->
<Data ElementName="poison" Type="int16" Size="1" /> <!-- 220 -->
<Data ElementName="slashing_base" Type="int16" Size="1" /> <!-- 222 -->
<Data ElementName="crushing_base" Type="int16" Size="1" /> <!-- 224 -->
<Data ElementName="piercing_base" Type="int16" Size="1" /> <!-- 226 -->
<Data ElementName="heat_base" Type="int16" Size="1" /> <!-- 228 -->
<Data ElementName="cold_base" Type="int16" Size="1" /> <!-- 230 -->
<Data ElementName="magic_base" Type="int16" Size="1" /> <!-- 232 -->
<Data ElementName="mental_base" Type="int16" Size="1" /> <!-- 234 -->
<Data ElementName="divine_base" Type="int16" Size="1" /> <!-- 236 -->
<Data ElementName="disease_base" Type="int16" Size="1" /> <!-- 238 -->
<Data ElementName="poison_base" Type="int16" Size="1" /> <!-- 240 -->
<Data ElementName="slashing_absorb" Type="int16" Size="1" /> <!-- 242 -->
<Data ElementName="crushing_absorb" Type="int16" Size="1" /> <!-- 244 -->
<Data ElementName="piercing_absorb" Type="int16" Size="1" /> <!-- 246 -->
<Data ElementName="heat_absorb" Type="int16" Size="1" /> <!-- 248 -->
<Data ElementName="cold_absorb" Type="int16" Size="1" /> <!-- 250 -->
<Data ElementName="magic_absorb" Type="int16" Size="1" /> <!-- 252 -->
<Data ElementName="mental_absorb" Type="int16" Size="1" /> <!-- 254 -->
<Data ElementName="divine_absorb" Type="int16" Size="1" /> <!-- 256 -->
<Data ElementName="disease_absorb" Type="int16" Size="1" /> <!-- 258 -->
<Data ElementName="poison_absorb" Type="int16" Size="1" /> <!-- 260 -->
<Data ElementName="combat_exp_enabled" Type="int8" Size="1" /> <!-- 262 -->
<Data ElementName="exp_yellow" Type="int16" Size="1" /> <!-- 263 -->
<Data ElementName="exp_blue" Type="int16" Size="1" /> <!-- 265 -->
<Data ElementName="exp_debt" Type="int16" Size="1" /> <!-- 267 -->
<Data ElementName="tradeskill_exp_yellow" Type="int16" Size="1" /> <!-- 269 -->
<Data ElementName="tradeskill_exp_blue" Type="int16" Size="1" /> <!-- 271 -->
<Data ElementName="tradeskill_exp_debt" Type="int16" Size="1" /> <!-- 273 -->
<Data ElementName="adventure_exp_vitality" Type="int16" Size="1" /> <!-- 275 -->
<Data ElementName="xp_yellow_vitality_bar" Type="int16" Size="1" /> <!-- 277 -->
<Data ElementName="xp_blue_vitality_bar" Type="int16" Size="1" /> <!-- 279 -->
<Data ElementName="adventure_exp_vitality" Type="int16" Size="1" /> <!-- 281 -->
<Data ElementName="xp_yellow_vitality_bar" Type="int16" Size="1" /> <!-- 283 -->
<Data ElementName="xp_blue_vitality_bar" Type="int16" Size="1" /> <!-- 285 -->
<Data ElementName="mentoring_xp_bonus" Type="float" Size="1" /> <!-- 287 -->
<Data ElementName="spirit_rank" Type="int8" Size="1" /> <!-- 291 -->
<Data ElementName="spirit" Type="int8" Size="1" /> <!-- 292 -->
<Data ElementName="spirit_progress" Type="float" Size="1" /> <!-- 293 -->
<Data ElementName="coins_copper" Type="int32" Size="1" /> <!-- 297 -->
<Data ElementName="coins_silver" Type="int32" Size="1" /> <!-- 301 -->
<Data ElementName="coins_gold" Type="int32" Size="1" /> <!-- 305 -->
<Data ElementName="coins_plat" Type="int32" Size="1" /> <!-- 309 -->
<Data ElementName="weight" Type="int32" Size="1" /> <!-- 313 -->
<Data ElementName="max_weight" Type="int32" Size="1" /> <!-- 317 -->
<Data ElementName="unknown3" Type="int16" Size="10" /> <!-- 321 -->
<Data ElementName="spell_effects" Substruct="Substruct_SpellEffects" Size="30" /> <!-- 341 -->
<Data ElementName="trauma" Type="int8" Size="1" /> <!-- 911 -->
<Data ElementName="arcane" Type="int8" Size="1" /> <!-- 912 -->
<Data ElementName="noxious" Type="int8" Size="1" /> <!-- 913 -->
<Data ElementName="elemental" Type="int8" Size="1" /> <!-- 914 -->
<Data ElementName="maintained_effects" Substruct="Substruct_MaintainedEffects" Size="30" /> <!-- 915 -->
<Data ElementName="breath" Type="float" Size="1" /> <!-- 3525 -->
<Data ElementName="breathable_environments" Type="int32" Size="1" /> <!-- 3529 -->
<Data ElementName="auto_attack" Type="int8" /> <!-- 3533 -->
<Data ElementName="ranged_auto_attack" Type="int8" /> <!-- 3534 -->
<Data ElementName="can_cast" Type="int8" Size="1" /> <!-- 3535 -->
<Data ElementName="pre_zoning" Type="int8" Size="1" /> <!-- 3536 -->
<Data ElementName="max_level" Type="int8" Size="1" /> <!-- 3537 -->
<Data ElementName="max_TS_level" Type="int8" Size="1" /> <!-- 3538 -->
<Data ElementName="feigndeath_state" Type="int8" Size="1" /> <!-- 3539 -->
<Data ElementName="advancement_available" Type="int8" Size="1" /> <!-- 3540 -->
<Data ElementName="flags_anonymous" Type="int8" Size="1" /> <!-- 3541 -->
<Data ElementName="flags_roleplaying" Type="int8" Size="1" /> <!-- 3542 -->
<Data ElementName="flags_afk" Type="int8" Size="1" /> <!-- 3543 -->
<Data ElementName="flags_lfg" Type="int8" Size="1" /> <!-- 3544 -->
<Data ElementName="flags_lfw" Type="int8" Size="1" /> <!-- 3545 -->
<Data ElementName="flags_show_hood" Type="int8" Size="1" /> <!-- 3546 -->
<Data ElementName="flags_show_illusion_form" Type="int8" Size="1" /> <!-- 3547 -->
<Data ElementName="flags_show_duel_invites" Type="int8" Size="1" /> <!-- 3548 -->
<Data ElementName="flags_show_trade_invites" Type="int8" Size="1" /> <!-- 3549 -->
<Data ElementName="flags_show_group_invites" Type="int8" Size="1" /> <!-- 3550 -->
<Data ElementName="flags_show_raid_invites" Type="int8" Size="1" /> <!-- 3551 -->
<Data ElementName="flags_show_guild_invites" Type="int8" Size="1" /> <!-- 3552 -->
<Data ElementName="unknown4" Type="char" Size="20" /> <!-- 3553 -->
<Data ElementName="unknown5" Type="int8" Size="236" /> <!-- 3573 -->
<Data ElementName="spell_prop_hpregen" Type="int32" Size="1" /> <!-- 3809 -->
<Data ElementName="spell_prop_manaregen" Type="int32" Size="1" /> <!-- 3813 -->
<Data ElementName="spell_prop_hpregenppt" Type="int32" Size="1" /> <!-- 3817 -->
<Data ElementName="spell_prop_mpregenppt" Type="int32" Size="1" /> <!-- 3821 -->
<Data ElementName="spell_prop_combat_hpregenppt" Type="int32" Size="1" /> <!-- 3825 -->
<Data ElementName="spell_prop_combat_mpregenppt" Type="int32" Size="1" /> <!-- 3829 -->
<Data ElementName="spell_prop_maxhp" Type="int32" Size="1" /> <!-- 3833 -->
<Data ElementName="spell_prop_maxhpperc" Type="int32" Size="1" /> <!-- 3837 -->
<Data ElementName="spell_prop_speed" Type="int32" Size="1" /> <!-- 3841 -->
<Data ElementName="spell_prop_slow" Type="int32" Size="1" /> <!-- 3845 -->
<Data ElementName="spell_prop_mountspeed" Type="int32" Size="1" /> <!-- 3849 -->
<Data ElementName="spell_prop_offensivespeed" Type="int32" Size="1" /> <!-- 3853 -->
<Data ElementName="spell_prop_attackspeed" Type="int32" Size="1" /> <!-- 3857 -->
<Data ElementName="spell_prop_maxmana" Type="int32" Size="1" /> <!-- 3861 -->
<Data ElementName="spell_prop_maxmanaperc" Type="int32" Size="1" /> <!-- 3865 -->
<Data ElementName="spell_prop_maxattperc" Type="int32" Size="1" /> <!-- 3869 -->
<Data ElementName="spell_prop_healinhibit" Type="int32" Size="1" /> <!-- 3873 -->
<Data ElementName="spell_prop_maxconcentration" Type="int32" Size="1" /> <!-- 3877 -->
<Data ElementName="spell_prop_screen_blur" Type="int32" Size="1" /> <!-- 3881 -->
<Data ElementName="spell_prop_redlight" Type="int32" Size="1" /> <!-- 3885 -->
<Data ElementName="spell_prop_greenlight" Type="int32" Size="1" /> <!-- 3889 -->
<Data ElementName="spell_prop_bluelight" Type="int32" Size="1" /> <!-- 3893 -->
<Data ElementName="spell_prop_momentumbonus" Type="int32" Size="1" /> <!-- 3897 -->
<Data ElementName="spell_prop_dmgmomentummod" Type="int32" Size="1" /> <!-- 3901 -->
<Data ElementName="spell_prop_healmomentummod" Type="int32" Size="1" /> <!-- 3905 -->
<Data ElementName="spell_prop_magiclevelimmunity" Type="int32" Size="1" /> <!-- 3909 -->
<Data ElementName="spell_prop_hategainmod" Type="int32" Size="1" /> <!-- 3913 -->
<Data ElementName="spell_prop_combatexpmod" Type="int32" Size="1" /> <!-- 3917 -->
<Data ElementName="spell_prop_tradeskillexpmod" Type="int32" Size="1" /> <!-- 3921 -->
<Data ElementName="spell_prop_sizemod" Type="int32" Size="1" /> <!-- 3925 -->
<Data ElementName="spell_prop_dps" Type="int32" Size="1" /> <!-- 3929 -->
<Data ElementName="spell_prop_stealth" Type="int32" Size="1" /> <!-- 3933 -->
<Data ElementName="spell_prop_invis" Type="int32" Size="1" /> <!-- 3937 -->
<Data ElementName="spell_prop_seeinvis" Type="int32" Size="1" /> <!-- 3941 -->
<Data ElementName="spell_prop_seestealth" Type="int32" Size="1" /> <!-- 3945 -->
<Data ElementName="spell_prop_effective_level_mod" Type="int32" Size="1" /> <!-- 3949 -->
<Data ElementName="spell_prop_ripostechance" Type="int32" Size="1" /> <!-- 3953 -->
<Data ElementName="spell_prop_parrychance" Type="int32" Size="1" /> <!-- 3957 -->
<Data ElementName="spell_prop_aeautoattackchance" Type="int32" Size="1" /> <!-- 3961 -->
<Data ElementName="spell_prop_item_hp_regen_percent" Type="int32" Size="1" /> <!-- 3965 -->
<Data ElementName="spell_prop_item_power_regen_percent" Type="int32" Size="1" /> <!-- 3969 -->
<Data ElementName="spell_prop_melee_crit_chance" Type="int32" Size="1" /> <!-- 3973 -->
<Data ElementName="spell_prop_dmg_spell_chance" Type="int32" Size="1" /> <!-- 3977 -->
<Data ElementName="spell_prop_heal_spell_crit_chance" Type="int32" Size="1" /> <!-- 3981 -->
<Data ElementName="spell_state_root" Type="int8" Size="1" /> <!-- 3985 -->
<Data ElementName="spell_state_charm" Type="int8" Size="1" /> <!-- 3986 -->
<Data ElementName="spell_state_stun" Type="int8" Size="1" /> <!-- 3987 -->
<Data ElementName="spell_state_stifle" Type="int8" Size="1" /> <!-- 3988 -->
<Data ElementName="spell_state_fear" Type="int8" Size="1" /> <!-- 3989 -->
<Data ElementName="spell_state_noaa" Type="int8" Size="1" /> <!-- 3990 -->
<Data ElementName="spell_state_ultravision" Type="int8" Size="1" /> <!-- 3991 -->
<Data ElementName="spell_state_infravision" Type="int8" Size="1" /> <!-- 3992 -->
<Data ElementName="spell_state_sonicvision" Type="int8" Size="1" /> <!-- 3993 -->
<Data ElementName="spell_state_fishvision" Type="int8" Size="1" /> <!-- 3994 -->
<Data ElementName="spell_state_feigndeath" Type="int8" Size="1" /> <!-- 3995 -->
<Data ElementName="spell_state_auravision" Type="int8" Size="1" /> <!-- 3996 -->
<Data ElementName="spell_state_breath_water" Type="int8" Size="1" /> <!-- 3997 -->
<Data ElementName="spell_state_noaoe" Type="int8" Size="1" /> <!-- 3998 -->
<Data ElementName="spell_state_tradeskill_noconsume" Type="int8" Size="1" /> <!-- 3999 -->
<Data ElementName="spell_state_sink_like_stone" Type="int8" Size="1" /> <!-- 4000 -->
<Data ElementName="spell_state_sink_like_stone_superjump" Type="int8" Size="1" /> <!-- 4001 -->
<Data ElementName="spell_state_no_direct_aoe" Type="int8" Size="1" /> <!-- 4002 -->
<Data ElementName="spell_state_calm" Type="int8" Size="1" /> <!-- 4003 -->
<Data ElementName="spell_state_harmony" Type="int8" Size="1" /> <!-- 4004 -->
<Data ElementName="spell_state_always_crit_melee" Type="int8" Size="1" /> <!-- 4005 -->
<Data ElementName="spell_state_always_crit_dmg_spell" Type="int8" Size="1" /> <!-- 4006 -->
<Data ElementName="spell_state_always_crit_heal_spell" Type="int8" Size="1" /> <!-- 4007 -->
<Data ElementName="current_PCA" Type="int32" Size="1" /> <!-- 4008, parental control alarm -->
<Data ElementName="group_members" Substruct="Substruct_GroupMember" Size="5" /> <!-- 4012 -->
<Data ElementName="leader_index" Type="int32" Size="1" /> <!-- 4697 -->
<Data ElementName="pet_id" Type="int32" Size="1" /> <!-- 4701 -->
<Data ElementName="pet_name" Type="char" Size="32" /> <!-- 4705 -->
<Data ElementName="unknown6" Type="int8" Size="9" /><!-- 4745 -->
<Data ElementName="pet_health_pct" Type="float" Size="1" /> <!-- 4737 -->
<Data ElementName="pet_power_pct" Type="float" Size="1" /><!-- 4741 -->
<Data ElementName="unknown185" Type="int8" Size="1" />
<Data ElementName="pet_movement" Type="int8" Size="1" />
<Data ElementName="pet_behavior" Type="int8" Size="1" />
<Data ElementName="rain" Type="float" Size="1" /><!-- 4757 -->
<Data ElementName="rain2" Type="float" Size="1" /><!-- 4761 -->
<Data ElementName="status_points" Type="int32" Size="1" /> <!-- 4765 -->
<Data ElementName="guild_status" Type="int32" Size="1" /> <!-- 4769 -->
<Data ElementName="unknown7" Type="int8" Size="3" /> <!-- 4773 -->
<Data ElementName="house_zone" Type="char" Size="61" /> <!-- 4776 -->
<Data ElementName="bind_zone" Type="char" Size="61" /> <!-- 4837 -->
</Struct>
<Struct Name="WS_CharacterSheet" ClientVersion="60114" OpcodeName="OP_UpdateCharacterSheetMsg">
<Data ElementName="character_name" Type="char" Size="40" /> <!-- 40 -->
<Data ElementName="unknown_1_1_MJ" Type="int16" Size="1" /> <!-- 41 -->
<Data ElementName="race" Type="int8" Size="1" /> <!-- 42 -->
<Data ElementName="gender" Type="int8" Size="1" /> <!-- 43 -->
<Data ElementName="exiled" Type="int8" Size="1" /> <!-- 44 -->
<Data ElementName="class1" Type="int32" Size="1" /> <!-- 48 -->
<Data ElementName="class2" Type="int32" Size="1" /> <!-- 52 -->
<Data ElementName="class3" Type="int32" Size="1" /> <!-- 56 -->
<Data ElementName="tradeskill_class1" Type="int32" Size="1" /> <!-- 60 -->
<Data ElementName="tradeskill_class2" Type="int32" Size="1" /> <!-- 64 -->
<Data ElementName="tradeskill_class3" Type="int32" Size="1" /> <!-- 68 -->
<Data ElementName="level" Type="int16" Size="1" /> <!-- 70 -->
<Data ElementName="effective_level" Type="int16" Size="1" /> <!-- 72 -->
<Data ElementName="tradeskill_level" Type="int16" Size="1" /> <!-- 74 -->
<Data ElementName="unknown_1_2_MJ" Type="int32" Size="1" /> <!-- 78 -->
<Data ElementName="account_age_base" Type="int16" Size="1" /> <!-- 80 -->
<Data ElementName="account_age_bonus" Type="int16" Size="1" /> <!-- 82 -->
<Data ElementName="deity" Type="char" Size="32" /> <!-- 114 -->
<Data ElementName="last_name" Type="char" Size="20" /> <!-- 124 -->
<Data ElementName="unknown3" Type="int8" Size="1" /> <!-- 125 -->
<Data ElementName="character_name2" Type="char" Size="40" /> <!-- 165 -->
<Data ElementName="character_name2_unknown" Type="int16" Size="1" /> <!-- 167 -->
<Data ElementName="character_name3" Type="char" Size="40" /> <!-- 207 -->
<Data ElementName="character_name3_unknown" Type="int16" Size="1" /> <!-- 209 -->
<Data ElementName="current_hp" Type="sint64" Size="1" /> <!-- 217 -->
<Data ElementName="max_hp" Type="int64" Size="1" /> <!-- 225 -->
<Data ElementName="base_hp" Type="int32" Size="1" /> <!-- 229 -->
<Data ElementName="base_hp2" Type="int32" Size="1" /> <!-- 233 -->
<Data ElementName="current_power" Type="sint32" Size="1" /> <!-- 227 -->
<Data ElementName="max_power" Type="sint32" Size="1" /> <!-- 231 -->
<Data ElementName="base_power" Type="int32" Size="1" /> <!-- 235 -->
<Data ElementName="conc_used" Type="int8" Size="1" /> <!-- 236 -->
<Data ElementName="conc_max" Type="int8" Size="1" /> <!-- 237 -->
<Data ElementName="savagery" Type="sint32" Size="1" /> <!-- 241 -->
<Data ElementName="max_savagery" Type="sint32" Size="1" /> <!-- 245 -->
<Data ElementName="unknown4b" Type="int32" Size="1" /> <!-- 249 -->
<Data ElementName="savagery_level" Type="int32" Size="1" /> <!-- 253 -->
<Data ElementName="max_savagery_level" Type="int32" Size="1" /> <!-- 257 -->
<Data ElementName="unknown4c" Type="int8" Size="4" /> <!-- 261 -->
<Data ElementName="dissonance" Type="sint32" Size="1" /> <!-- 265 -->
<Data ElementName="max_dissonance" Type="sint32" Size="1" /> <!-- 269 -->
<Data ElementName="unknown5c" Type="int8" Size="4" /> <!-- 273 -->
<Data ElementName="hp_regen" Type="int32" Size="1" /> <!-- 277 -->
<Data ElementName="power_regen" Type="int32" Size="1" /> <!-- 281 -->
<Data ElementName="unknown6" Type="int32" Size="2" /> <!-- 289 -->
<Data ElementName="unknown7" Type="float" Size="2" /> <!-- 297 -->
<Data ElementName="stat_bonus_health" Type="float" Size="1" /> <!-- 301 -->
<Data ElementName="stat_bonus_power" Type="float" Size="1" /> <!-- 305 -->
<Data ElementName="bonus_health" Type="int32" Size="1" /> <!-- 309 -->
<Data ElementName="unknown8" Type="int32" Size="1" /> <!-- 313 -->
<Data ElementName="bonus_power" Type="int32" Size="1" /> <!-- 317 -->
<Data ElementName="stat_bonus_damage" Type="float" Size="1" /> <!-- 321 -->
<Data ElementName="mitigation_pct_pve" Type="int16" Size="1" /> <!-- 323 -->
<Data ElementName="mitigation_pct_pvp" Type="int16" Size="1" /> <!-- 325 -->
<Data ElementName="toughness" Type="int16" Size="1" /> <!-- 327 -->
<Data ElementName="toughness_resist_dmg_pvp" Type="float" Size="1" /> <!-- 331 -->
<Data ElementName="lethality" Type="int16" Size="1" /> <!-- 333 -->
<Data ElementName="lethality_pct" Type="float" Size="1" /> <!-- 337 -->
<Data ElementName="avoidance_pct" Type="int16" Size="1" /> <!-- 339 -->
<Data ElementName="avoidance_reduction" Type="int16" Size="1" /> <!-- 341 -->
<Data ElementName="avoidance" Type="int16" Size="1" /> <!-- 343 -->
<Data ElementName="unknown10" Type="int16" Size="1" /> <!-- 345 -->
<Data ElementName="avoidance_base" Type="int16" Size="1" /> <!-- 347 -->
<Data ElementName="unknown10a" Type="int16" Size="1" /> <!-- 349 -->
<Data ElementName="parry" Type="int16" Size="1" /> <!-- 351 -->
<Data ElementName="unknown11" Type="int16" Size="1" /> <!-- 353 -->
<Data ElementName="block" Type="int16" Size="1" /> <!-- 355 -->
<Data ElementName="unknown12" Type="int16" Size="1" /> <!-- 357 -->
<Data ElementName="uncontested_block" Type="int16" Size="1" /> <!-- 359 -->
<Data ElementName="unknown13" Type="int16" Size="1" /> <!-- 361 -->
<Data ElementName="uncontested_riposte" Type="int16" Size="1" /> <!-- 363 -->
<Data ElementName="uncontested_dodge" Type="int16" Size="1" /> <!-- 365 -->
<Data ElementName="uncontested_parry" Type="int16" Size="1" /> <!-- 367 -->
<Data ElementName="str" Type="int32" Size="1" /> <!-- 369 -->
<Data ElementName="sta" Type="int32" Size="1" /> <!-- 371 -->
<Data ElementName="agi" Type="int32" Size="1" /> <!-- 373 -->
<Data ElementName="wis" Type="int32" Size="1" /> <!-- 375 -->
<Data ElementName="int" Type="int32" Size="1" /> <!-- 377 -->
<Data ElementName="str_base" Type="int32" Size="1" />
<Data ElementName="sta_base" Type="int32" Size="1" />
<Data ElementName="agi_base" Type="int32" Size="1" />
<Data ElementName="wis_base" Type="int32" Size="1" />
<Data ElementName="int_base" Type="int32" Size="1" />
<Data ElementName="mitigation_cur" Type="int32" Size="1" />
<Data ElementName="elemental" Type="int32" Size="1" />
<Data ElementName="noxious" Type="int32" Size="1" />
<Data ElementName="arcane" Type="int32" Size="1" />
<Data ElementName="mitigation_base" Type="int32" Size="1" />
<Data ElementName="elemental_base" Type="int32" Size="1" />
<Data ElementName="noxious_base" Type="int32" Size="1" />
<Data ElementName="arcane_base" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown14" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pve" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pve" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pve" Type="int16" Size="1" />
<Data ElementName="unknown15" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="unknown16" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="current_adv_xp" Type="float" Size="1" />
<Data ElementName="needed_adv_xp" Type="float" Size="1" />
<Data ElementName="debt_adv_xp" Type="float" Size="1" />
<Data ElementName="current_trade_xp" Type="float" Size="1" />
<Data ElementName="needed_trade_xp" Type="float" Size="1" />
<Data ElementName="debt_trade_xp" Type="float" Size="1" />
<Data ElementName="server_bonus" Type="int16" Size="1" />
<Data ElementName="adventure_vet_bonus" Type="int16" Size="1" />
<Data ElementName="tradeskill_vet_bonus" Type="int16" Size="1" />
<Data ElementName="dungeon_finder_bonus" Type="int16" Size="1" />
<Data ElementName="recruit_friend_bonus" Type="int32" Size="1" />
<Data ElementName="unknown19" Type="int16" Size="1" />
<Data ElementName="adventure_vitality" Type="int16" Size="1" />
<Data ElementName="adventure_vitality_yellow_arrow" Type="int16" Size="1" />
<Data ElementName="adventure_vitality_blue_arrow" Type="int16" Size="1" />
<Data ElementName="tradeskill_vitality" Type="int16" Size="1" />
<Data ElementName="tradeskill_vitality_purple_arrow" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="tradeskill_vitality_blue_arrow" Type="int16" Size="1" />
<Data ElementName="mentor_bonus" Type="int16" Size="1" />
<Data ElementName="unknown20" Type="int8" Size="1" />
<Data ElementName="assigned_aa" Type="int16" Size="1" />
<Data ElementName="max_aa" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unassigned_aa" Type="int16" Size="1" />
<Data ElementName="aa_green_bar" Type="int16" Size="1" />
<Data ElementName="adv_xp_to_aa_xp_slider" Type="int16" Size="1" />
<Data ElementName="adv_xp_to_aa_xp_max" Type="int16" Size="1" />
<Data ElementName="aa_blue_bar" Type="int16" Size="1" />
<Data ElementName="bonus_achievement_xp" Type="int16" Size="1" />
<Data ElementName="unknown22" Type="int8" Size="2" />
<Data ElementName="unknown23" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="items_found" Type="int32" Size="1" />
<Data ElementName="named_npcs_killed" Type="int32" Size="1" />
<Data ElementName="quests_completed" Type="int32" Size="1" />
<Data ElementName="exploration_events" Type="int32" Size="1" />
<Data ElementName="completed_collections" Type="int32" Size="1" />
<Data ElementName="unknown24" Type="int16" Size="10" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown25" Type="int8" Size="1" />
<Data ElementName="total_prestige_points" Type="int16" Size="1" />
<Data ElementName="unassigned_prestige_points" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown26" Type="int16" Size="1" />
<Data ElementName="unknown27" Type="int16" Size="1" />
<Data ElementName="total_tradeskill_points" Type="int16" Size="1" />
<Data ElementName="unassigned_tradeskill_points" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown28" Type="int16" Size="1" />
<Data ElementName="unknown29" Type="int16" Size="1" />
<Data ElementName="total_tradeskill_prestige_points" Type="int16" Size="1" />
<Data ElementName="unassigned_tradeskill_prestige_points" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown30" Type="int16" Size="1" />
<Data ElementName="unknown31" Type="int16" Size="1" />
<Data ElementName="unknown32" Type="int16" Size="1" />
<Data ElementName="unknown33" Type="int16" Size="1" />
<Data ElementName="coins_copper" Type="int32" Size="1" />
<Data ElementName="coins_silver" Type="int32" Size="1" />
<Data ElementName="coins_gold" Type="int32" Size="1" />
<Data ElementName="coins_plat" Type="int32" Size="1" />
<Data ElementName="unknown34" Type="int32" Size="5" />
<Data ElementName="spell_effects" Substruct="Substruct_SpellEffects" Size="45" />
<Data ElementName="detrimental_spell_effects" Substruct="Substruct_SpellEffects" Size="45" />
<Data ElementName="passive_spell_effects" Substruct="Substruct_PassiveEffects" Size="100" />
<Data ElementName="unknown35" Type="int8" Size="486" />
<Data ElementName="trauma_count" Type="int8" Size="1" />
<Data ElementName="arcane_count" Type="int8" Size="1" />
<Data ElementName="noxious_count" Type="int8" Size="1" />
<Data ElementName="elemental_count" Type="int8" Size="1" />
<Data ElementName="curse_count" Type="int8" Size="1" />
<Data ElementName="maintained_effects" Substruct="Substruct_MaintainedEffects" Size="30" />
<Data ElementName="breath" Type="float" Size="1" />
<Data ElementName="breathe_underwater" Type="int8" Size="1" />
<Data ElementName="unknown36" Type="float" Size="1" />
<Data ElementName="melee_pri_dmg_min" Type="int32" Size="1" />
<Data ElementName="melee_pri_dmg_max" Type="int32" Size="1" />
<Data ElementName="melee_pri_delay" Type="float" Size="1" />
<Data ElementName="melee_sec_dmg_min" Type="int32" Size="1" />
<Data ElementName="melee_sec_dmg_max" Type="int32" Size="1" />
<Data ElementName="melee_sec_delay" Type="float" Size="1" />
<Data ElementName="ranged_dmg_min" Type="int32" Size="1" />
<Data ElementName="ranged_dmg_max" Type="int32" Size="1" />
<Data ElementName="ranged_delay" Type="float" Size="1" />
<Data ElementName="unknown37" Type="int32" Size="1" />
<Data ElementName="unknown38" Type="int32" Size="1" />
<Data ElementName="unknown39" Type="int32" Size="1" />
<Data ElementName="unknown40" Type="int32" Size="1" />
<Data ElementName="ability_mod_pve" Type="float" Size="1" />
<Data ElementName="unknown41" Type="float" Size="1" />
<Data ElementName="unknown42" Type="float" Size="1" />
<Data ElementName="unknown43" Type="float" Size="1" />
<Data ElementName="unknown44" Type="float" Size="1" />
<Data ElementName="ability_mod_pvp" Type="float" Size="1" />
<Data ElementName="base_melee_crit" Type="float" Size="1" />
<Data ElementName="base_spell_crit" Type="float" Size="1" />
<Data ElementName="base_taunt_crit" Type="float" Size="1" />
<Data ElementName="base_heal_crit" Type="float" Size="1" />
<!--<Data ElementName="unknown44a" Type="int16" Size="1" />--> <!-- 58588 - Required to make it in the game -->
<Data ElementName="flags" Type="int32" Size="1" />
<Data ElementName="flags2" Type="int32" Size="1" />
<Data ElementName="unknown45" Type="float" Size="1" />
<Data ElementName="unknown46" Type="float" Size="1" />
<Data ElementName="unknown47" Type="float" Size="1" />
<Data ElementName="unknown48" Type="float" Size="1" />
<Data ElementName="unknown49" Type="float" Size="1" />
<Data ElementName="unknown50" Type="float" Size="1" />
<Data ElementName="unknown51" Type="float" Size="1" />
<Data ElementName="unknown52" Type="float" Size="1" />
<Data ElementName="unknown53" Type="float" Size="1" />
<Data ElementName="unknown54" Type="float" Size="1" />
<Data ElementName="unknown55" Type="float" Size="1" />
<Data ElementName="unknown56" Type="float" Size="1" />
<Data ElementName="unknown57" Type="float" Size="1" />
<Data ElementName="unknown58" Type="float" Size="1" />
<Data ElementName="unknown59" Type="float" Size="1" />
<Data ElementName="unknown60" Type="float" Size="1" />
<Data ElementName="unknown61" Type="float" Size="1" />
<Data ElementName="unknown62" Type="float" Size="1" />
<Data ElementName="unknown63" Type="float" Size="1" />
<Data ElementName="unknown64" Type="float" Size="1" />
<Data ElementName="unknown65" Type="float" Size="1" />
<Data ElementName="unknown66" Type="float" Size="1" />
<Data ElementName="unknown67" Type="float" Size="1" />
<Data ElementName="unknown68" Type="float" Size="1" />
<Data ElementName="unknown69" Type="float" Size="1" />
<Data ElementName="unknown70" Type="float" Size="1" />
<Data ElementName="unknown71" Type="float" Size="1" />
<Data ElementName="unknown72" Type="float" Size="1" />
<Data ElementName="unknown73" Type="float" Size="1" />
<Data ElementName="unknown74" Type="float" Size="1" />
<Data ElementName="unknown75" Type="float" Size="1" />
<Data ElementName="unknown76" Type="float" Size="1" />
<Data ElementName="unknown77" Type="float" Size="1" />
<Data ElementName="unknown78" Type="float" Size="1" />
<Data ElementName="unknown79" Type="float" Size="1" />
<Data ElementName="unknown80" Type="float" Size="1" />
<Data ElementName="unknown81" Type="float" Size="1" />
<Data ElementName="unknown82" Type="float" Size="1" />
<Data ElementName="unknown83" Type="float" Size="1" />
<Data ElementName="unknown84" Type="float" Size="1" />
<Data ElementName="unknown85" Type="float" Size="1" />
<Data ElementName="unknown86" Type="float" Size="1" />
<Data ElementName="unknown87" Type="float" Size="1" />
<Data ElementName="unknown88" Type="float" Size="1" />
<Data ElementName="unknown89" Type="float" Size="1" />
<Data ElementName="unknown90" Type="float" Size="1" />
<Data ElementName="unknown91" Type="float" Size="1" />
<Data ElementName="unknown92" Type="float" Size="1" />
<Data ElementName="unknown93" Type="float" Size="1" />
<Data ElementName="unknown94" Type="float" Size="1" />
<Data ElementName="unknown95" Type="float" Size="1" />
<Data ElementName="unknown96" Type="float" Size="1" />
<Data ElementName="unknown97" Type="float" Size="1" />
<Data ElementName="unknown98" Type="float" Size="1" />
<Data ElementName="unknown99" Type="float" Size="1" />
<Data ElementName="unknown100" Type="float" Size="1" />
<Data ElementName="unknown101" Type="float" Size="1" />
<Data ElementName="unknown102" Type="float" Size="1" />
<Data ElementName="unknown103" Type="float" Size="1" />
<Data ElementName="unknown104" Type="float" Size="1" />
<Data ElementName="unknown105" Type="float" Size="1" />
<Data ElementName="unknown106" Type="float" Size="1" />
<Data ElementName="unknown107" Type="float" Size="1" />
<Data ElementName="unknown108" Type="float" Size="1" />
<Data ElementName="unknown109" Type="float" Size="1" />
<Data ElementName="unknown110" Type="float" Size="1" />
<Data ElementName="out_of_combat_health_regen" Type="float" Size="1" />
<Data ElementName="out_of_combat_power_regen" Type="float" Size="1" />
<Data ElementName="in_combat_regen" Type="float" Size="1" />
<Data ElementName="deflect" Type="float" Size="1" />
<Data ElementName="increase_max_health" Type="float" Size="1" />
<Data ElementName="increase_max_health2" Type="float" Size="1" /> <!-- used when bonus is applied to both health & power -->
<Data ElementName="unknown117" Type="float" Size="1" />
<Data ElementName="increase_speed" Type="float" Size="1" />
<Data ElementName="unknown119" Type="float" Size="1" />
<Data ElementName="increase_ground_speed" Type="float" Size="1" />
<Data ElementName="increase_air_speed" Type="float" Size="1" />
<Data ElementName="unknown122" Type="float" Size="1" /> <!-- see coldain pegasus buff this has a value of 8 which involves skill buff -->
<Data ElementName="unknown123" Type="float" Size="1" /> <!-- see coldain pegasus buff this has a value of 3 which involves skill buff -->
<Data ElementName="unknown124" Type="float" Size="1" /> <!-- see coldain pegasus buff this has a value of 3 which involves skill buff -->
<Data ElementName="in_combat_movement_speed" Type="float" Size="1" />
<Data ElementName="haste" Type="float" Size="1" />
<Data ElementName="increase_max_power" Type="float" Size="1" />
<Data ElementName="increase_max_power2" Type="float" Size="1" /> <!-- used when bonus is applied to both health & power -->
<Data ElementName="unknown131" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="drunk" Type="float" Size="1" />
<Data ElementName="unknown133" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="hate_mod" Type="float" Size="1" />
<Data ElementName="adventure_effects_bonus" Type="float" Size="1" />
<Data ElementName="tradeskill_effects_bonus" Type="float" Size="1" />
<Data ElementName="unknown137" Type="float" Size="1" />
<Data ElementName="unknown138" Type="float" Size="1" />
<Data ElementName="unknown139" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="dps" Type="float" Size="1" />
<Data ElementName="unknown141" Type="float" Size="1" />
<Data ElementName="unknown142" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="base_avoidance" Type="float" Size="1" />
<Data ElementName="unknown144" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="uncontested_riposte_pve" Type="float" Size="1" />
<Data ElementName="uncontested_parry_pve" Type="float" Size="1" />
<Data ElementName="unknown147" Type="float" Size="1" />
<Data ElementName="unknown148" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="melee_ae" Type="float" Size="1" />
<Data ElementName="multi_attack" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="spell_multi_attack" Type="float" Size="1" /> <!-- spell_doublecast -->
<Data ElementName="flurry" Type="float" Size="1" />
<Data ElementName="unknown153" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="bountiful_harvest" Type="float" Size="1" />
<Data ElementName="block_chance" Type="float" Size="1" />
<Data ElementName="unknown156" Type="float" Size="1" />
<Data ElementName="unknown157" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="crit_chance" Type="float" Size="1" />
<Data ElementName="unknown159" Type="float" Size="1" />
<Data ElementName="unknown160" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="crit_bonus" Type="float" Size="1" />
<Data ElementName="potency" Type="float" Size="1" />
<Data ElementName="unknown163" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="reuse_speed" Type="float" Size="1" />
<Data ElementName="recovery_speed" Type="float" Size="1" />
<Data ElementName="casting_speed" Type="float" Size="1" />
<Data ElementName="spell_reuse_speed" Type="float" Size="1" />
<Data ElementName="unknown168" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="decrease_falling_dmg" Type="float" Size="1" />
<Data ElementName="unknown170" Type="float" Size="1" />
<Data ElementName="unknown171" Type="float" Size="1" />
<Data ElementName="unknown172" Type="float" Size="1" />
<Data ElementName="unknown173" Type="float" Size="1" />
<Data ElementName="unknown174" Type="float" Size="1" />
<Data ElementName="unknown175" Type="float" Size="1" />
<Data ElementName="unknown176" Type="float" Size="1" />
<Data ElementName="unknown177" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_coin" Type="float" Size="1" />
<Data ElementName="mitigation_increase" Type="float" Size="1" />
<Data ElementName="unknown180" Type="float" Size="1" />
<Data ElementName="unknown181" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="strikethrough" Type="float" Size="1" />
<Data ElementName="accuracy" Type="float" Size="1" />
<Data ElementName="unknown184" Type="float" Size="1" />
<Data ElementName="unknown185" Type="float" Size="1" />
<Data ElementName="unknown186" Type="float" Size="1" />
<Data ElementName="unknown187" Type="float" Size="1" />
<Data ElementName="unknown188" Type="float" Size="1" />
<Data ElementName="unknown189" Type="float" Size="1" />
<Data ElementName="unknown190" Type="float" Size="1" />
<Data ElementName="unknown191" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="lethality_pve" Type="float" Size="1" />
<Data ElementName="unknown193" Type="float" Size="1" />
<Data ElementName="unknown194" Type="float" Size="1" />
<Data ElementName="unknown195" Type="float" Size="1" />
<Data ElementName="unknown196" Type="float" Size="1" />
<Data ElementName="unknown197" Type="float" Size="1" />
<Data ElementName="pvp_crit_mit" Type="float" Size="1" />
<Data ElementName="unknown199" Type="float" Size="1" />
<Data ElementName="unknown200" Type="float" Size="1" />
<Data ElementName="unknown201" Type="float" Size="1" />
<Data ElementName="unknown202" Type="float" Size="1" />
<Data ElementName="unknown203" Type="float" Size="1" />
<Data ElementName="unknown204" Type="float" Size="1" />
<Data ElementName="unknown205" Type="float" Size="1" />
<Data ElementName="unknown206" Type="float" Size="1" />
<Data ElementName="unknown207" Type="float" Size="1" />
<Data ElementName="unknown208" Type="float" Size="1" />
<Data ElementName="unknown209" Type="float" Size="1" />
<Data ElementName="unknown210" Type="float" Size="1" />
<Data ElementName="unknown211" Type="float" Size="1" />
<Data ElementName="unknown212" Type="float" Size="1" />
<Data ElementName="unknown213" Type="float" Size="1" />
<Data ElementName="unknown214" Type="float" Size="1" />
<Data ElementName="unknown215" Type="float" Size="1" />
<Data ElementName="unknown216" Type="float" Size="1" />
<Data ElementName="unknown217" Type="float" Size="1" />
<Data ElementName="unknown218" Type="float" Size="1" />
<Data ElementName="unknown219" Type="float" Size="1" />
<Data ElementName="unknown220" Type="float" Size="1" />
<Data ElementName="unknown221" Type="float" Size="1" />
<Data ElementName="unknown222" Type="float" Size="1" />
<Data ElementName="unknown223" Type="float" Size="1" />
<Data ElementName="unknown224" Type="float" Size="1" />
<Data ElementName="unknown225" Type="float" Size="1" />
<Data ElementName="unknown226" Type="float" Size="1" />
<Data ElementName="unknown227" Type="float" Size="1" />
<Data ElementName="unknown228" Type="float" Size="1" />
<Data ElementName="unknown229" Type="float" Size="1" />
<Data ElementName="unknown230" Type="float" Size="1" />
<Data ElementName="unknown231" Type="float" Size="1" />
<Data ElementName="unknown232" Type="float" Size="1" />
<Data ElementName="unknown233" Type="float" Size="1" />
<Data ElementName="unknown234" Type="float" Size="1" />
<Data ElementName="unknown235" Type="float" Size="1" />
<Data ElementName="unknown236" Type="float" Size="1" />
<Data ElementName="unknown237" Type="float" Size="1" />
<Data ElementName="unknown238" Type="float" Size="1" />
<Data ElementName="unknown239" Type="float" Size="1" />
<Data ElementName="unknown240" Type="float" Size="1" />
<Data ElementName="unknown241" Type="float" Size="1" />
<Data ElementName="unknown242" Type="float" Size="1" />
<Data ElementName="unknown243" Type="float" Size="1" />
<Data ElementName="unknown244" Type="float" Size="1" />
<Data ElementName="unknown245" Type="float" Size="1" />
<Data ElementName="unknown246" Type="float" Size="1" />
<Data ElementName="unknown247" Type="float" Size="1" />
<Data ElementName="uncontested_riposte_gear_cap" Type="float" Size="1" />
<Data ElementName="uncontested_parry_gear_cap" Type="float" Size="1" />
<Data ElementName="uncontested_dodge_gear_cap" Type="float" Size="1" />
<Data ElementName="unknown251" Type="float" Size="1" />
<Data ElementName="unknown252" Type="float" Size="1" />
<Data ElementName="unknown253" Type="float" Size="1" />
<Data ElementName="unknown254" Type="float" Size="1" />
<Data ElementName="unknown255" Type="float" Size="1" />
<Data ElementName="unknown256" Type="float" Size="1" />
<Data ElementName="unknown257" Type="float" Size="1" />
<Data ElementName="unknown258" Type="float" Size="1" />
<Data ElementName="unknown259" Type="float" Size="1" />
<Data ElementName="unknown260" Type="float" Size="1" />
<Data ElementName="unknown261" Type="float" Size="1" />
<Data ElementName="unknown262" Type="float" Size="1" />
<Data ElementName="unknown263" Type="float" Size="1" />
<Data ElementName="unknown264" Type="float" Size="1" />
<Data ElementName="unknown265" Type="float" Size="1" />
<Data ElementName="unknown266" Type="float" Size="1" />
<Data ElementName="unknown267" Type="float" Size="1" />
<Data ElementName="unknown268" Type="float" Size="1" />
<Data ElementName="unknown269" Type="float" Size="1" />
<Data ElementName="unknown270" Type="float" Size="1" />
<Data ElementName="unknown271" Type="float" Size="1" />
<Data ElementName="unknown272" Type="float" Size="1" />
<Data ElementName="unknown273" Type="float" Size="1" />
<Data ElementName="unknown274" Type="float" Size="1" />
<Data ElementName="unknown275" Type="float" Size="1" />
<Data ElementName="unknown276" Type="float" Size="1" />
<Data ElementName="unknown277" Type="float" Size="1" />
<Data ElementName="unknown278" Type="float" Size="1" />
<Data ElementName="unknown279" Type="float" Size="1" />
<Data ElementName="unknown280" Type="float" Size="1" />
<Data ElementName="unknown281" Type="float" Size="1" />
<Data ElementName="unknown282" Type="float" Size="1" />
<Data ElementName="unknown283" Type="float" Size="1" />
<Data ElementName="unknown284" Type="float" Size="1" />
<Data ElementName="unknown285" Type="float" Size="1" />
<Data ElementName="unknown286" Type="float" Size="1" />
<Data ElementName="unknown287" Type="float" Size="1" />
<Data ElementName="unknown288" Type="float" Size="1" />
<Data ElementName="unknown289" Type="float" Size="1" />
<Data ElementName="unknown290" Type="float" Size="1" />
<Data ElementName="unknown291" Type="float" Size="1" />
<Data ElementName="unknown292" Type="float" Size="1" />
<Data ElementName="unknown293" Type="float" Size="1" />
<Data ElementName="unknown294" Type="float" Size="1" />
<Data ElementName="unknown295" Type="float" Size="1" />
<Data ElementName="unknown296" Type="float" Size="1" />
<Data ElementName="unknown297" Type="float" Size="1" />
<Data ElementName="unknown298" Type="float" Size="1" />
<Data ElementName="unknown299" Type="float" Size="1" />
<Data ElementName="unknown300" Type="float" Size="1" />
<Data ElementName="unknown301" Type="float" Size="1" />
<Data ElementName="unknown302" Type="float" Size="1" />
<Data ElementName="unknown303" Type="float" Size="1" />
<Data ElementName="unknown304" Type="float" Size="1" />
<Data ElementName="unknown305" Type="float" Size="1" />
<Data ElementName="unknown306" Type="float" Size="1" />
<Data ElementName="unknown307" Type="float" Size="1" />
<Data ElementName="unknown308" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="out_of_combat_health_regen_pvp" Type="float" Size="1" />
<Data ElementName="out_of_combat_power_regen_pvp" Type="float" Size="1" />
<Data ElementName="in_combat_regen_pvp" Type="float" Size="1" />
<Data ElementName="deflect_pvp" Type="float" Size="1" />
<Data ElementName="increase_max_heath_pvp" Type="float" Size="1" />
<Data ElementName="increase_max_health2_pvp" Type="float" Size="1" /> <!-- used when bonus is applied to both health & power -->
<Data ElementName="unknown312" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="increase_speed_pvp" Type="float" Size="1" />
<Data ElementName="unknown313" Type="float" Size="1" />
<Data ElementName="increase_ground_speed_pvp" Type="float" Size="1" />
<Data ElementName="increase_air_speed_pvp" Type="float" Size="1" />
<Data ElementName="unknown314" Type="float" Size="1" /> <!-- see coldain pegasus buff this has a value of 8 which involves skill buff -->
<Data ElementName="unknown315" Type="float" Size="1" /> <!-- see coldain pegasus buff this has a value of 3 which involves skill buff -->
<Data ElementName="unknown316" Type="float" Size="1" /> <!-- see coldain pegasus buff this has a value of 3 which involves skill buff -->
<Data ElementName="in_combat_movement_speed_pvp" Type="float" Size="1" />
<Data ElementName="Haste_pvp" Type="float" Size="1" />
<Data ElementName="increase_max_power_pvp" Type="float" Size="1" />
<Data ElementName="increase_max_power2_pvp" Type="float" Size="1" /> <!-- used when bonus is applied to both health & power -->
<Data ElementName="unknown321" Type="float" Size="1" />
<Data ElementName="unknown322" Type="float" Size="1" />
<Data ElementName="unknown323" Type="float" Size="1" />
<Data ElementName="hate_mod_pvp" Type="float" Size="1" />
<Data ElementName="unknown325" Type="float" Size="1" />
<Data ElementName="unknown326" Type="float" Size="1" />
<Data ElementName="unknown327" Type="float" Size="1" />
<Data ElementName="unknown328" Type="float" Size="1" />
<Data ElementName="dps_pvp" Type="float" Size="1" />
<Data ElementName="unknown330" Type="float" Size="1" />
<Data ElementName="unknown331" Type="float" Size="1" />
<Data ElementName="unknown332" Type="float" Size="1" />
<Data ElementName="base_avoidance_pvp" Type="float" Size="1" />
<Data ElementName="unknown334" Type="float" Size="1" />
<Data ElementName="uncontested_riposte_pvp" Type="float" Size="1" />
<Data ElementName="uncontested_parry_pvp" Type="float" Size="1" />
<Data ElementName="unknown337" Type="float" Size="1" />
<Data ElementName="unknown338" Type="float" Size="1" />
<Data ElementName="multi_attack_pvp" Type="float" Size="1" />
<Data ElementName="spell_multi_attack_pvp" Type="float" Size="1" /> <!-- spell_doublecast -->
<Data ElementName="unknown341" Type="float" Size="1" />
<Data ElementName="unknown342" Type="float" Size="1" />
<Data ElementName="unknown343" Type="float" Size="1" />
<Data ElementName="block_chance_pvp" Type="float" Size="1" />
<Data ElementName="unknown345" Type="float" Size="1" />
<Data ElementName="unknown346" Type="float" Size="1" />
<Data ElementName="crit_chance_pvp" Type="float" Size="1" />
<Data ElementName="unknown348" Type="float" Size="1" />
<Data ElementName="unknown349" Type="float" Size="1" />
<Data ElementName="crit_bonus_pvp" Type="float" Size="1" />
<Data ElementName="potency_pvp" Type="float" Size="1" />
<Data ElementName="unknown352" Type="float" Size="1" />
<Data ElementName="reuse_speed_pvp" Type="float" Size="1" />
<Data ElementName="recovery_speed_pvp" Type="float" Size="1" />
<Data ElementName="casting_speed_pvp" Type="float" Size="1" />
<Data ElementName="unknown356" Type="float" Size="1" />
<Data ElementName="unknown357" Type="float" Size="1" />
<Data ElementName="unknown358" Type="float" Size="1" />
<Data ElementName="decrease_falling_dmg_pvp" Type="float" Size="1" />
<Data ElementName="unknown360" Type="float" Size="1" />
<Data ElementName="unknown361" Type="float" Size="1" />
<Data ElementName="unknown362" Type="float" Size="1" />
<Data ElementName="unknown363" Type="float" Size="1" />
<Data ElementName="unknown364" Type="float" Size="1" />
<Data ElementName="unknown365" Type="float" Size="1" />
<Data ElementName="unknown366" Type="float" Size="1" />
<Data ElementName="unknown367" Type="float" Size="1" />
<Data ElementName="loot_coin_pvp" Type="float" Size="1" />
<Data ElementName="mitigation_increase_pvp" Type="float" Size="1" />
<Data ElementName="unknown370" Type="float" Size="1" />
<Data ElementName="strikethrough_pvp" Type="float" Size="1" />
<Data ElementName="unknown372" Type="float" Size="1" />
<Data ElementName="unknown373" Type="float" Size="1" />
<Data ElementName="unknown374" Type="float" Size="1" />
<Data ElementName="unknown375" Type="float" Size="1" />
<Data ElementName="unknown376" Type="float" Size="1" />
<Data ElementName="unknown377" Type="float" Size="1" />
<Data ElementName="unknown378" Type="float" Size="1" />
<Data ElementName="unknown379" Type="float" Size="1" />
<Data ElementName="unknown380" Type="float" Size="1" />
<Data ElementName="unknown381" Type="float" Size="1" />
<Data ElementName="lethality_pvp" Type="float" Size="1" />
<Data ElementName="unknown395" Type="float" Size="1" />
<Data ElementName="unknown396" Type="float" Size="1" />
<Data ElementName="unknown397" Type="float" Size="1" />
<Data ElementName="unknown398" Type="float" Size="1" />
<Data ElementName="unknown399" Type="float" Size="1" />
<Data ElementName="unknown400" Type="float" Size="1" />
<Data ElementName="unknown401" Type="float" Size="1" />
<Data ElementName="unknown402" Type="float" Size="1" />
<Data ElementName="unknown403" Type="float" Size="1" />
<Data ElementName="unknown404" Type="float" Size="1" />
<Data ElementName="unknown405" Type="float" Size="1" />
<Data ElementName="unknown406" Type="float" Size="1" />
<Data ElementName="unknown407" Type="float" Size="1" />
<Data ElementName="unknown408" Type="float" Size="1" />
<Data ElementName="unknown409" Type="float" Size="1" />
<Data ElementName="unknown410" Type="float" Size="1" />
<Data ElementName="unknown411" Type="float" Size="1" />
<Data ElementName="unknown412" Type="float" Size="1" />
<Data ElementName="unknown413" Type="float" Size="1" />
<Data ElementName="unknown414" Type="float" Size="1" />
<Data ElementName="unknown415" Type="float" Size="1" />
<Data ElementName="unknown416" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown417" Type="float" Size="1" />
<Data ElementName="unknown418" Type="float" Size="1" />
<Data ElementName="unknown419" Type="float" Size="1" />
<Data ElementName="unknown420" Type="float" Size="1" />
<Data ElementName="unknown421" Type="float" Size="1" />
<Data ElementName="unknown422" Type="float" Size="1" />
<Data ElementName="durability_mod" Type="float" Size="1" />
<Data ElementName="durability_add" Type="float" Size="1" />
<Data ElementName="progress_mod" Type="float" Size="1" />
<Data ElementName="progress_add" Type="float" Size="1" />
<Data ElementName="success_mod" Type="float" Size="1" />
<Data ElementName="crit_success_mod" Type="float" Size="1" />
<Data ElementName="unknown429" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="rare_harvest_chance" Type="float" Size="1" />
<Data ElementName="max_crafting" Type="float" Size="1" />
<Data ElementName="component_refund" Type="float" Size="1" />
<Data ElementName="unknown433" Type="float" Size="1" />
<Data ElementName="refine_quantity_mod" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="ex_durability_mod" Type="float" Size="1" />
<Data ElementName="ex_durability_add" Type="float" Size="1" />
<Data ElementName="ex_crit_success_mod" Type="float" Size="1" />
<Data ElementName="ex_crit_failure_mod" Type="float" Size="1" />
<Data ElementName="ex_progress_mod" Type="float" Size="1" />
<Data ElementName="ex_progress_add" Type="float" Size="1" />
<Data ElementName="ex_success_mod" Type="float" Size="1" />
<Data ElementName="unknown423a" Type="float" Size="1" />
<Data ElementName="unknown424a" Type="float" Size="1" />
<Data ElementName="unknown425a" Type="float" Size="1" />
<Data ElementName="unknown426a" Type="float" Size="1" />
<Data ElementName="unknown427a" Type="float" Size="1" />
<Data ElementName="unknown428a" Type="float" Size="1" />
<Data ElementName="unknown429a" Type="float" Size="1" />
<Data ElementName="unknown430a" Type="float" Size="1" />
<Data ElementName="unknown431a" Type="float" Size="1" />
<Data ElementName="unknown432a" Type="float" Size="1" />
<Data ElementName="unknown433a" Type="float" Size="1" />
<Data ElementName="unknown434a" Type="int8" Size="1" />
<Data ElementName="unknown435a" Type="int8" Size="1" />
<Data ElementName="unknown436a" Type="int8" Size="1" />
<Data ElementName="unknown437a" Type="int8" Size="1" />
<Data ElementName="unknown438a" Type="int8" Size="4" />
<Data ElementName="unknown442" Type="float" Size="1" />
<Data ElementName="unknown443" Type="float" Size="1" />
<Data ElementName="unknown444" Type="float" Size="1" />
<Data ElementName="unknown445" Type="float" Size="1" />
<Data ElementName="unknown446" Type="float" Size="1" />
<Data ElementName="unknown447" Type="float" Size="1" />
<Data ElementName="unknown448" Type="float" Size="1" />
<Data ElementName="unknown449" Type="float" Size="1" />
<Data ElementName="unknown450" Type="float" Size="1" />
<Data ElementName="unknown451" Type="float" Size="1" />
<Data ElementName="unknown452" Type="float" Size="1" />
<Data ElementName="unknown453" Type="float" Size="1" />
<Data ElementName="unknown454" Type="float" Size="1" />
<Data ElementName="unknown455" Type="float" Size="1" />
<Data ElementName="unknown456" Type="float" Size="1" />
<Data ElementName="unknown457" Type="float" Size="1" />
<Data ElementName="unknown458" Type="float" Size="1" />
<Data ElementName="unknown459" Type="float" Size="1" />
<Data ElementName="unknown460" Type="float" Size="1" />
<Data ElementName="unknown461" Type="float" Size="1" />
<Data ElementName="unknown462" Type="float" Size="1" />
<Data ElementName="unknown463" Type="float" Size="1" />
<Data ElementName="unknown464" Type="float" Size="1" />
<Data ElementName="unknown465" Type="float" Size="1" />
<Data ElementName="unknown466" Type="float" Size="1" />
<Data ElementName="unknown467" Type="float" Size="1" />
<Data ElementName="unknown468" Type="float" Size="1" />
<Data ElementName="unknown469" Type="float" Size="1" />
<Data ElementName="unknown470" Type="float" Size="1" />
<Data ElementName="unknown471" Type="float" Size="1" />
<Data ElementName="unknown472" Type="float" Size="1" />
<Data ElementName="unknown473" Type="float" Size="1" />
<Data ElementName="unknown474" Type="float" Size="1" />
<Data ElementName="unknown475" Type="float" Size="1" />
<Data ElementName="unknown476" Type="float" Size="1" />
<Data ElementName="unknown477" Type="float" Size="1" />
<Data ElementName="unknown478" Type="float" Size="1" />
<Data ElementName="unknown479" Type="float" Size="1" />
<Data ElementName="unknown480" Type="float" Size="1" />
<Data ElementName="unknown481" Type="float" Size="1" />
<Data ElementName="unknown482" Type="float" Size="1" />
<Data ElementName="unknown483" Type="float" Size="1" />
<Data ElementName="unknown484" Type="float" Size="1" />
<Data ElementName="unknown485" Type="float" Size="1" />
<Data ElementName="unknown486" Type="float" Size="1" />
<Data ElementName="unknown487" Type="float" Size="1" />
<Data ElementName="unknown488" Type="float" Size="1" />
<Data ElementName="unknown489" Type="float" Size="1" />
<Data ElementName="unknown490" Type="float" Size="1" />
<Data ElementName="unknown491" Type="float" Size="1" />
<Data ElementName="unknown492" Type="float" Size="1" />
<Data ElementName="unknown493" Type="float" Size="1" />
<Data ElementName="unknown494" Type="float" Size="1" />
<Data ElementName="unknown495" Type="float" Size="1" />
<Data ElementName="unknown496" Type="float" Size="1" />
<Data ElementName="unknown497" Type="float" Size="1" />
<Data ElementName="unknown498" Type="float" Size="1" />
<Data ElementName="unknown499" Type="float" Size="1" />
<Data ElementName="unknown500" Type="float" Size="1" />
<Data ElementName="unknown501" Type="float" Size="1" />
<Data ElementName="unknown502" Type="float" Size="1" />
<Data ElementName="unknown503" Type="float" Size="1" />
<Data ElementName="unknown504" Type="float" Size="1" />
<Data ElementName="unknown505" Type="float" Size="1" />
<Data ElementName="unknown506" Type="float" Size="1" />
<Data ElementName="unknown507" Type="float" Size="1" />
<Data ElementName="unknown508" Type="float" Size="1" />
<Data ElementName="unknown509" Type="float" Size="1" />
<Data ElementName="unknown510" Type="float" Size="1" />
<Data ElementName="unknown511" Type="float" Size="1" />
<Data ElementName="unknown512" Type="float" Size="1" />
<Data ElementName="unknown513" Type="float" Size="1" />
<Data ElementName="unknown514" Type="float" Size="1" />
<Data ElementName="haste_tt" Type="int32" Size="1" />
<Data ElementName="dps_pve_tt" Type="int32" Size="1" />
<Data ElementName="dps_pvp_tt" Type="int32" Size="1" />
<Data ElementName="multi_attack_pve_tt" Type="float" Size="1" />
<Data ElementName="multi_attack_pvp_tt" Type="float" Size="1" />
<Data ElementName="unknown520" Type="float" Size="1" />
<Data ElementName="unknown521" Type="float" Size="1" />
<Data ElementName="unknown522" Type="float" Size="1" />
<Data ElementName="unknown523" Type="float" Size="1" />
<Data ElementName="unknown550" Type="int8" Size="1" />
<Data ElementName="unknown550a" Type="int16" Size="1" />
<Data ElementName="unknown551" Type="int8" Size="1" />
<Data ElementName="unknown525a" Type="int8" Size="72" />
<Data ElementName="vision" Type="int32" Size="1" />
<Data ElementName="unknown525b" Type="int8" Size="986" />
2020-02-28 07:17:24 -07:00
<Data ElementName="group_members" Substruct="Substruct_GroupMember" Size="5" />
<Data ElementName="group_leader_index" Type="int32" Size="1" />
<Data ElementName="unknown183" Type="int8" Size="460" />
2020-02-28 07:17:24 -07:00
<Data ElementName="pet_id" Type="int32" Size="1" />
<Data ElementName="pet_name" Type="char" Size="32" />
<Data ElementName="unknown184" Type="int8" Size="9" />
<Data ElementName="pet_health_pct" Type="float" Size="1" />
<Data ElementName="pet_power_pct" Type="float" Size="1" />
<Data ElementName="unknown185" Type="int8" Size="1" />
<Data ElementName="pet_movement" Type="int8" Size="1" />
<Data ElementName="pet_behavior" Type="int8" Size="1" />
<Data ElementName="unknown186" Type="int8" Size="8" />
<Data ElementName="merc_id" Type="int32" Size="1" />
<Data ElementName="merc_name" Type="char" Size="32" />
<Data ElementName="merc_unknown21" Type="int8" Size="9" />
<Data ElementName="merc_health_pct" Type="float" Size="1" />
<Data ElementName="merc_power_pct" Type="float" Size="1" />
<Data ElementName="merc_unknown21b" Type="int8" Size="1" />
<Data ElementName="merc_movement" Type="int8" Size="1" />
<Data ElementName="merc_behavior" Type="int8" Size="1" />
<Data ElementName="merc_unknown21c" Type="int8" Size="73" />
<Data ElementName="group_leader_id" Type="int32" Size="1" />
<Data ElementName="merc_unknown21cc" Type="int8" Size="4" />
2020-02-28 07:17:24 -07:00
<Data ElementName="rain" Type="float" Size="1" />
<Data ElementName="rain2" Type="float" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="unknownx527" Type="int8" Size="1" />
<Data ElementName="house_zone" Type="char" Size="48" />
<Data ElementName="unknownx526_1" Type="int32" Size="1" />
<Data ElementName="unknownx526_2" Type="int32" Size="1" />
<Data ElementName="unknownx526_3" Type="int32" Size="1" />
<Data ElementName="unknownx526_4" Type="int32" Size="1" />
<Data ElementName="unknownx526_5" Type="int32" Size="1" />
<Data ElementName="unknownx526_6" Type="int32" Size="1" />
<Data ElementName="unknownx526_7" Type="int32" Size="1" />
<Data ElementName="unknownx526_8" Type="int32" Size="1" />
<Data ElementName="unknownx526_9" Type="int32" Size="1" />
<Data ElementName="unknownx526_10" Type="int32" Size="1" />
<Data ElementName="unknownx526_11" Type="int32" Size="1" />
<Data ElementName="unknownx526_12" Type="int32" Size="1" />
<Data ElementName="unknownx526_13" Type="int32" Size="1" />
<Data ElementName="unknownx526_14" Type="int32" Size="1" />
<Data ElementName="unknownx526_15" Type="int32" Size="1" />
<Data ElementName="unknownx526_16" Type="int32" Size="1" />
<Data ElementName="unknownx526_17" Type="int32" Size="1" />
<Data ElementName="unknownx526_18" Type="int32" Size="1" />
<Data ElementName="unknownx526_19" Type="int32" Size="1" />
<Data ElementName="unknownx526_20" Type="int32" Size="1" />
<Data ElementName="unknownx526_21" Type="int32" Size="1" />
<Data ElementName="unknownx526_22" Type="int32" Size="1" />
<Data ElementName="unknownx526_23" Type="int32" Size="1" />
<Data ElementName="unknownx526_24" Type="int32" Size="1" />
<Data ElementName="unknownx526_25" Type="int32" Size="1" />
<Data ElementName="unknownx526_26" Type="int32" Size="1" />
<Data ElementName="unknownx526_27" Type="int32" Size="1" />
<Data ElementName="unknownx526_28" Type="int32" Size="1" />
<Data ElementName="unknownx526_29" Type="int32" Size="1" />
<Data ElementName="unknownx526_30" Type="int32" Size="1" />
<Data ElementName="unknownx526_31" Type="int32" Size="1" />
<Data ElementName="unknownx526_32" Type="int32" Size="1" />
<Data ElementName="unknownx526_33" Type="int32" Size="1" />
<Data ElementName="unknownx526_34" Type="int32" Size="1" />
<Data ElementName="unknownx526_35" Type="int32" Size="1" />
<Data ElementName="unknownx526_36" Type="int32" Size="1" />
<Data ElementName="unknownx526_37" Type="int32" Size="1" />
<Data ElementName="unknown187" Type="int8" Size="3" />
2020-02-28 07:17:24 -07:00
<Data ElementName="bind_zone" Type="char" Size="32" />
<Data ElementName="unknown188" Type="int8" Size="52" />
2020-03-02 16:47:18 -07:00
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_EquipmentSets" ClientVersion="63136" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EquipmentSets">
<Data ElementName="category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown_mj1" Type="int16" Size="1" />
<Data ElementName="set_count" Type="int16" Size="1" />
<Data ElementName="set_array" Type="Array" ArraySizeVariable="set_count">
<Data ElementName="set_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown_mj2" Type="int16" Size="1" />
<Data ElementName="selected_set" Type="int8" Size="1" />
<Data ElementName="unknown_mj3" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_PlayFlavor" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearPlayFlavorCmd">
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="target_id" Type="int32" Size="1" />
<Data ElementName="mp3" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="target_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="emote" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="state" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="key" Type="int32" Size="2" />
<Data ElementName="language" Type="int8" />
<Data ElementName="understood" Type="int8" />
</Struct>
<Struct Name="WS_PlayFlavor" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearPlayFlavorCmd">
<Data ElementName="spawn_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="mp3" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown3" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="emote" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="key" Type="int32" Size="2" />
<Data ElementName="language" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="understood" Type="int8" />
<Data ElementName="unknown5" Type="int8" Size="10" />
</Struct>
<Struct Name="WS_PlayVoice" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqPlayVoiceCmd">
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="mp3" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="key" Type="int32" Size="2" />
<Data ElementName="unknown" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_PlaySound" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqPlaySoundCmd">
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_PlaySound" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqPlaySoundCmd">
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="float" Size="1" />
</Struct>
<Struct Name="WS_Play3DSound" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqPlaySound3DCmd">
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
<Data ElementName="unknown1" Type="float" Size="1" />
<Data ElementName="unknown2" Type="float" Size="1" />
<Data ElementName="unknown3" Type="float" Size="1" />
</Struct>
<Struct Name="WS_EntityVerbsVerb" ClientVersion="1" OpcodeName="OP_EntityVerbsVerbMsg">
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="command" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_Resurrected" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqResurrectedCmd">
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CancelMoveObjectMode" ClientVersion="1" OpcodeName="OP_CancelMoveObjectModeMsg">
<Data ElementName="unknown" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_UpdateTarget" ClientVersion="1" OpcodeName="OP_UpdateTargetMsg">
<Data ElementName="spawn_index" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ServerUpdateTarget" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateTargetCmd">
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SetPOVGhostCmd" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetPOVGhostCmd">
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_DestroyGhostCmd" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDestroyGhostCmd">
<Data ElementName="spawn_index" Type="int16" OversizedValue="255" />
<Data ElementName="delete" Type="int8" />
</Struct>
<Struct Name="WS_ClientFell" ClientVersion="1" OpcodeName="OP_ClientFellMsg">
<Data ElementName="height" Type="float" />
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_SetDefaultCommand" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetDefaultVerbCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="command_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="distance" Type="float" />
</Struct>
<Struct Name="WS_HearDamage_Header" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
<Data ElementName="defender_proxy" Type="int32" />
<Data ElementName="result_type" Type="int8" />
<Data ElementName="combat_chat_method" Type="int32" /> <!-- should probably always be 0 -->
</Struct>
2020-07-25 21:54:04 -06:00
<Struct Name="WS_HearDamage_Header" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
<Data ElementName="defender_proxy" Type="int32" />
<Data ElementName="result_type" Type="int8" />
<Data ElementName="combat_chat_method" Type="int32" /> <!-- should probably always be 0 -->
</Struct>
<Struct Name="WS_HearDamage_Header" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
2020-02-28 07:17:24 -07:00
<Data ElementName="packet_type" Type="int8" />
<Data ElementName="result_type" Type="int8" />
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
<Data ElementName="unknown" Type="int16" />
</Struct>
<Struct Name="WS_HearDamage_Header" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="packet_type" Type="int8" />
<Data ElementName="unknown" Type="int16" />
<Data ElementName="result_type" Type="int8" />
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
</Struct>
<Struct Name="WS_HearSimpleDamage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage" Type="int32" />
<Data ElementName="damage_type" Type="int8" />
</Data>
<Data ElementName="spell" Type="int8" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
2020-07-25 21:54:04 -06:00
<Struct Name="WS_HearSimpleDamage" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="crit_flag" Type="int8" /> <!-- 4==crit -->
<Data ElementName="unknown4" Type="int8" />
</Data>
2020-07-25 21:54:04 -06:00
<Data ElementName="spell" Type="int8" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearSimpleDamage" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="unknown" Type="int8" />
</Struct>
<Struct Name="WS_HearSiphonSpellDamage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="siphon_subtype" Type="int8" />
<Data ElementName="damage" Type="int32"/>
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="spell" Type="int8" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
- Fix #496 ITEM_STAT_ABILITYCASTINGSPEED (664) and ITEM_STAT_SPELLREUSESPEED (665) now supported - Fix #109 Soulrend does not knock down target (finish spell cast, ZoneServer::SendCastSpellPacket spell_visual is disabled) when no damage applied * alter table character_spell_effects add column has_damaged tinyint(3) unsigned not null default 0 after resisted; - Fix #536, SpellDamage now can drain power. Also Fixed AoM and DoF client WS_HearSiphonSpellDamage - SpellDamage LUA Function now returns a boolean whether damage is dealt (or spell resisted) -- (true is damage/false is no damage or resisted). See Spells/Fighter/Crusader/Shadowknight/Soulrend.lua for a sample. - DamageSpawn LUA Function now returns a boolean whether damage is dealt, updated to allow take_power argument DamageSpawn(Attacker, Victim, victim, type, dmg_type, low_dmg, high_dmg, spell_name, crit_mod, is_tick, no_calcs, ignore_attacker, take_power) - new LUA Functions (both can be used in and outside of a LUA Spell): * SpellDamageExt(Target, type, min_damage, max_damage, crit_mod, no_calcs, override_packet_type, take_power, class_id_reqs...) -- extends support for take_power field (SpellDamage function does not have this and would break other potential spells) * SendHearCast(Spawn, spell_visual_id, cast_time, Caster, Target) -- lets the Spawn see a spell visual on Target. If Caster is not defined, we use Spawn, same goes for Target. - Fixed WS_HearHeal struct for DoF client (displays critically heal vs heal) and proper spell name. DoF does not support absorb or other types. - Support for translation of spell_visual (spells table) aka spellcast.dat from assets vpl. CREATE TABLE `spell_visuals` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(128) DEFAULT NULL, `alternate_spell_visual` varchar(128) DEFAULT NOT NULL '', `spell_visual_id` int(10) unsigned NOT NULL DEFAULT 0, `min_version_range` int(10) unsigned NOT NULL DEFAULT 0, `max_version_range` int(10) unsigned NOT NULL DEFAULT 0, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; ** MAKE SURE TO GET spell_visuals sql included with update inserted! - Fixed right-click inventory examine (again?) - tested and it is working for main invetory, bags and items in bags! - DoF bags support up to 36 slots now instead of the restricted 20 for "classic" client - DoF and classic equipment restricts to 22 slots instead of trying to send client 25 slots (the additional do not exist) - Fix crash on signs due to lack of nullptr check on entity_command - SetInfoStructString / GetInfoStructString now supports combat_action_state -- can be used without overriding action_state outside of combat.
2023-11-12 11:19:59 -07:00
<Struct Name="WS_HearSiphonSpellDamage" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="crit_flag" Type="int8" /> <!-- 4==crit -->
<Data ElementName="unknown4" Type="int8" />
</Data>
<Data ElementName="spell" Type="int8" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearSiphonSpellDamage" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="siphon_subtype" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="damage" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearMultipleDamage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_HearSpellDamage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearRangeDamage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
</Struct>
<Struct Name="WS_HearRangeSpellDamage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearThreatCmd" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EQHearThreatCmd">
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="threat_amount" Type="int32" />
<Data ElementName="unknown" Type="int8" Size="5" />
</Struct>
<Struct Name="WS_HearSimpleDamage" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="unknown" Type="int8" />
</Struct>
<Struct Name="WS_HearSiphonSpellDamage" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="siphon_subtype" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearMultipleDamage" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_HearSpellDamage" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_HearRangeDamage" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
</Struct>
<Struct Name="WS_HearRangeSpellDamage" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<!-- Made this new range only to deal with 4-5 bytes extra I found. If struct hasn't changed since 927, delete 1188 and update 927 -->
<Struct Name="WS_HearDamage_Header" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="packet_type" Type="int8" />
<Data ElementName="unknown" Type="int16" />
<Data ElementName="result_type" Type="int8" />
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
</Struct>
<Struct Name="WS_HearSimpleDamage" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown" Type="int8" Size="4" />
</Struct>
<Struct Name="WS_HearSiphonSpellDamage" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="siphon_subtype" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown2" Type="int8" Size="5" />
</Struct>
<Struct Name="WS_HearMultipleDamage" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_HearSpellDamage" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown2" Type="int8" Size="5" />
</Struct>
<Struct Name="WS_HearRangeDamage" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
</Struct>
<Struct Name="WS_HearRangeSpellDamage" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown2" Type="int8" Size="5" />
</Struct>
<!-- Made this new range only to deal with 4-5 bytes extra I found. If struct hasn't changed since 927, delete 1188 and update 927 -->
<Struct Name="WS_HearDamage_Header" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="packet_type" Type="int8" />
<Data ElementName="unknown" Type="int16" />
<Data ElementName="result_type" Type="int8" />
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
</Struct>
<Struct Name="WS_HearSimpleDamage" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown" Type="int8" Size="4" />
</Struct>
<Struct Name="WS_HearSiphonSpellDamage" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="siphon_type" Type="int8" />
<Data ElementName="siphon_subtype" Type="int8" />
- Fix #496 ITEM_STAT_ABILITYCASTINGSPEED (664) and ITEM_STAT_SPELLREUSESPEED (665) now supported - Fix #109 Soulrend does not knock down target (finish spell cast, ZoneServer::SendCastSpellPacket spell_visual is disabled) when no damage applied * alter table character_spell_effects add column has_damaged tinyint(3) unsigned not null default 0 after resisted; - Fix #536, SpellDamage now can drain power. Also Fixed AoM and DoF client WS_HearSiphonSpellDamage - SpellDamage LUA Function now returns a boolean whether damage is dealt (or spell resisted) -- (true is damage/false is no damage or resisted). See Spells/Fighter/Crusader/Shadowknight/Soulrend.lua for a sample. - DamageSpawn LUA Function now returns a boolean whether damage is dealt, updated to allow take_power argument DamageSpawn(Attacker, Victim, victim, type, dmg_type, low_dmg, high_dmg, spell_name, crit_mod, is_tick, no_calcs, ignore_attacker, take_power) - new LUA Functions (both can be used in and outside of a LUA Spell): * SpellDamageExt(Target, type, min_damage, max_damage, crit_mod, no_calcs, override_packet_type, take_power, class_id_reqs...) -- extends support for take_power field (SpellDamage function does not have this and would break other potential spells) * SendHearCast(Spawn, spell_visual_id, cast_time, Caster, Target) -- lets the Spawn see a spell visual on Target. If Caster is not defined, we use Spawn, same goes for Target. - Fixed WS_HearHeal struct for DoF client (displays critically heal vs heal) and proper spell name. DoF does not support absorb or other types. - Support for translation of spell_visual (spells table) aka spellcast.dat from assets vpl. CREATE TABLE `spell_visuals` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(128) DEFAULT NULL, `alternate_spell_visual` varchar(128) DEFAULT NOT NULL '', `spell_visual_id` int(10) unsigned NOT NULL DEFAULT 0, `min_version_range` int(10) unsigned NOT NULL DEFAULT 0, `max_version_range` int(10) unsigned NOT NULL DEFAULT 0, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; ** MAKE SURE TO GET spell_visuals sql included with update inserted! - Fixed right-click inventory examine (again?) - tested and it is working for main invetory, bags and items in bags! - DoF bags support up to 36 slots now instead of the restricted 20 for "classic" client - DoF and classic equipment restricts to 22 slots instead of trying to send client 25 slots (the additional do not exist) - Fix crash on signs due to lack of nullptr check on entity_command - SetInfoStructString / GetInfoStructString now supports combat_action_state -- can be used without overriding action_state outside of combat.
2023-11-12 11:19:59 -07:00
<Data ElementName="damage" Type="int32" />
<Data ElementName="unknown1" Type="int8" Size="5" />
2020-02-28 07:17:24 -07:00
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown2" Type="int8" Size="5" />
</Struct>
<Struct Name="WS_HearMultipleDamage" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="num_dmg" Type="int8" />
<Data ElementName="dmg_array" Type="Array" ArraySizeVariable="num_dmg">
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_HearSpellDamage" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="unknown_60114_1_MJ" Type="int8" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown2" Type="int8" Size="5" />
</Struct>
<Struct Name="WS_HearRangeDamage" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
</Struct>
<Struct Name="WS_HearRangeSpellDamage" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearCombatCmd">
<Data ElementName="header" Substruct="WS_HearDamage_Header" Size="1" />
<Data ElementName="damage_type" Type="int8" />
<Data ElementName="damage" Type="int16" />
<Data ElementName="weapon_appearance" Type="int16" />
<Data ElementName="spell_name" Type="EQ2_8Bit_String" Size="1" />
<!-- All Hear spell damages so far seem to have new bytes at the end (who knows for how long) -->
<Data ElementName="unknown2" Type="int8" Size="5" />
</Struct>
- Fix #496 ITEM_STAT_ABILITYCASTINGSPEED (664) and ITEM_STAT_SPELLREUSESPEED (665) now supported - Fix #109 Soulrend does not knock down target (finish spell cast, ZoneServer::SendCastSpellPacket spell_visual is disabled) when no damage applied * alter table character_spell_effects add column has_damaged tinyint(3) unsigned not null default 0 after resisted; - Fix #536, SpellDamage now can drain power. Also Fixed AoM and DoF client WS_HearSiphonSpellDamage - SpellDamage LUA Function now returns a boolean whether damage is dealt (or spell resisted) -- (true is damage/false is no damage or resisted). See Spells/Fighter/Crusader/Shadowknight/Soulrend.lua for a sample. - DamageSpawn LUA Function now returns a boolean whether damage is dealt, updated to allow take_power argument DamageSpawn(Attacker, Victim, victim, type, dmg_type, low_dmg, high_dmg, spell_name, crit_mod, is_tick, no_calcs, ignore_attacker, take_power) - new LUA Functions (both can be used in and outside of a LUA Spell): * SpellDamageExt(Target, type, min_damage, max_damage, crit_mod, no_calcs, override_packet_type, take_power, class_id_reqs...) -- extends support for take_power field (SpellDamage function does not have this and would break other potential spells) * SendHearCast(Spawn, spell_visual_id, cast_time, Caster, Target) -- lets the Spawn see a spell visual on Target. If Caster is not defined, we use Spawn, same goes for Target. - Fixed WS_HearHeal struct for DoF client (displays critically heal vs heal) and proper spell name. DoF does not support absorb or other types. - Support for translation of spell_visual (spells table) aka spellcast.dat from assets vpl. CREATE TABLE `spell_visuals` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(128) DEFAULT NULL, `alternate_spell_visual` varchar(128) DEFAULT NOT NULL '', `spell_visual_id` int(10) unsigned NOT NULL DEFAULT 0, `min_version_range` int(10) unsigned NOT NULL DEFAULT 0, `max_version_range` int(10) unsigned NOT NULL DEFAULT 0, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; ** MAKE SURE TO GET spell_visuals sql included with update inserted! - Fixed right-click inventory examine (again?) - tested and it is working for main invetory, bags and items in bags! - DoF bags support up to 36 slots now instead of the restricted 20 for "classic" client - DoF and classic equipment restricts to 22 slots instead of trying to send client 25 slots (the additional do not exist) - Fix crash on signs due to lack of nullptr check on entity_command - SetInfoStructString / GetInfoStructString now supports combat_action_state -- can be used without overriding action_state outside of combat.
2023-11-12 11:19:59 -07:00
<!-- WS_HearHeal may be innaccurate, copied from DoF -->
2020-02-28 07:17:24 -07:00
<Struct Name="WS_HearHeal" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearHealCmd">
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
- Fix #496 ITEM_STAT_ABILITYCASTINGSPEED (664) and ITEM_STAT_SPELLREUSESPEED (665) now supported - Fix #109 Soulrend does not knock down target (finish spell cast, ZoneServer::SendCastSpellPacket spell_visual is disabled) when no damage applied * alter table character_spell_effects add column has_damaged tinyint(3) unsigned not null default 0 after resisted; - Fix #536, SpellDamage now can drain power. Also Fixed AoM and DoF client WS_HearSiphonSpellDamage - SpellDamage LUA Function now returns a boolean whether damage is dealt (or spell resisted) -- (true is damage/false is no damage or resisted). See Spells/Fighter/Crusader/Shadowknight/Soulrend.lua for a sample. - DamageSpawn LUA Function now returns a boolean whether damage is dealt, updated to allow take_power argument DamageSpawn(Attacker, Victim, victim, type, dmg_type, low_dmg, high_dmg, spell_name, crit_mod, is_tick, no_calcs, ignore_attacker, take_power) - new LUA Functions (both can be used in and outside of a LUA Spell): * SpellDamageExt(Target, type, min_damage, max_damage, crit_mod, no_calcs, override_packet_type, take_power, class_id_reqs...) -- extends support for take_power field (SpellDamage function does not have this and would break other potential spells) * SendHearCast(Spawn, spell_visual_id, cast_time, Caster, Target) -- lets the Spawn see a spell visual on Target. If Caster is not defined, we use Spawn, same goes for Target. - Fixed WS_HearHeal struct for DoF client (displays critically heal vs heal) and proper spell name. DoF does not support absorb or other types. - Support for translation of spell_visual (spells table) aka spellcast.dat from assets vpl. CREATE TABLE `spell_visuals` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(128) DEFAULT NULL, `alternate_spell_visual` varchar(128) DEFAULT NOT NULL '', `spell_visual_id` int(10) unsigned NOT NULL DEFAULT 0, `min_version_range` int(10) unsigned NOT NULL DEFAULT 0, `max_version_range` int(10) unsigned NOT NULL DEFAULT 0, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; ** MAKE SURE TO GET spell_visuals sql included with update inserted! - Fixed right-click inventory examine (again?) - tested and it is working for main invetory, bags and items in bags! - DoF bags support up to 36 slots now instead of the restricted 20 for "classic" client - DoF and classic equipment restricts to 22 slots instead of trying to send client 25 slots (the additional do not exist) - Fix crash on signs due to lack of nullptr check on entity_command - SetInfoStructString / GetInfoStructString now supports combat_action_state -- can be used without overriding action_state outside of combat.
2023-11-12 11:19:59 -07:00
<Data ElementName="heal_amt" Type="int16" />
2020-02-28 07:17:24 -07:00
<Data ElementName="spellname" Type="EQ2_16Bit_String" Size="1"/>
- Fix #496 ITEM_STAT_ABILITYCASTINGSPEED (664) and ITEM_STAT_SPELLREUSESPEED (665) now supported - Fix #109 Soulrend does not knock down target (finish spell cast, ZoneServer::SendCastSpellPacket spell_visual is disabled) when no damage applied * alter table character_spell_effects add column has_damaged tinyint(3) unsigned not null default 0 after resisted; - Fix #536, SpellDamage now can drain power. Also Fixed AoM and DoF client WS_HearSiphonSpellDamage - SpellDamage LUA Function now returns a boolean whether damage is dealt (or spell resisted) -- (true is damage/false is no damage or resisted). See Spells/Fighter/Crusader/Shadowknight/Soulrend.lua for a sample. - DamageSpawn LUA Function now returns a boolean whether damage is dealt, updated to allow take_power argument DamageSpawn(Attacker, Victim, victim, type, dmg_type, low_dmg, high_dmg, spell_name, crit_mod, is_tick, no_calcs, ignore_attacker, take_power) - new LUA Functions (both can be used in and outside of a LUA Spell): * SpellDamageExt(Target, type, min_damage, max_damage, crit_mod, no_calcs, override_packet_type, take_power, class_id_reqs...) -- extends support for take_power field (SpellDamage function does not have this and would break other potential spells) * SendHearCast(Spawn, spell_visual_id, cast_time, Caster, Target) -- lets the Spawn see a spell visual on Target. If Caster is not defined, we use Spawn, same goes for Target. - Fixed WS_HearHeal struct for DoF client (displays critically heal vs heal) and proper spell name. DoF does not support absorb or other types. - Support for translation of spell_visual (spells table) aka spellcast.dat from assets vpl. CREATE TABLE `spell_visuals` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(128) DEFAULT NULL, `alternate_spell_visual` varchar(128) DEFAULT NOT NULL '', `spell_visual_id` int(10) unsigned NOT NULL DEFAULT 0, `min_version_range` int(10) unsigned NOT NULL DEFAULT 0, `max_version_range` int(10) unsigned NOT NULL DEFAULT 0, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; ** MAKE SURE TO GET spell_visuals sql included with update inserted! - Fixed right-click inventory examine (again?) - tested and it is working for main invetory, bags and items in bags! - DoF bags support up to 36 slots now instead of the restricted 20 for "classic" client - DoF and classic equipment restricts to 22 slots instead of trying to send client 25 slots (the additional do not exist) - Fix crash on signs due to lack of nullptr check on entity_command - SetInfoStructString / GetInfoStructString now supports combat_action_state -- can be used without overriding action_state outside of combat.
2023-11-12 11:19:59 -07:00
<Data ElementName="type" Type="int8" />
</Struct>
<Struct Name="WS_HearHeal" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearHealCmd">
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="heal_amt" Type="int16" />
<Data ElementName="spellname" Type="EQ2_16Bit_String" Size="1"/>
<Data ElementName="type" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_HearHeal" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearHealCmd">
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="heal_amt" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="spellname" Type="EQ2_16Bit_String" Size="1"/>
<Data ElementName="type" Type="int16" />
</Struct>
<Struct Name="WS_HearHeal" ClientVersion="57080" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearHealCmd">
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="heal_amt" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="spellname" Type="EQ2_16Bit_String" Size="1"/>
<Data ElementName="type" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
</Struct>
<Struct Name="WS_HearHeal" ClientVersion="63073" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearHealCmd">
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="heal_amt" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="unknown2a" Type="int32" />
<Data ElementName="unknown3a" Type="int32" />
<Data ElementName="spellname" Type="EQ2_16Bit_String" Size="1"/>
<Data ElementName="type" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
</Struct>
<Struct Name="WS_HearHeal" ClientVersion="64600" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearHealCmd">
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="heal_amt" Type="int64" />
<Data ElementName="spellname" Type="EQ2_16Bit_String" Size="1"/>
<Data ElementName="crit_type" Type="int8" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="type" Type="int8" />
</Struct>
<Struct Name="WS_HearDeath" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearDeathCmd">
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
<Data ElementName="blow_type" Type="int8" />
</Struct>
<Struct Name="WS_HearDeath" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearDeathCmd">
<Data ElementName="attacker" Type="int32" />
<Data ElementName="defender" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="blow_type" Type="int16" />
<Data ElementName="damage_type" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_UpdateSkillBook" ClientVersion="1" OpcodeName="OP_UpdateSkillBookMsg" >
<Data ElementName="skill_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="skill_array" Type="Array" ArraySizeVariable="skill_count">
<Data ElementName="skill_id" Type="int32" />
<Data ElementName="current_val" Type="int16" />
<Data ElementName="max_val" Type="int16" />
<Data ElementName="skill_delta" Type="int16" />
<Data ElementName="skill_delta2" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_UpdateSkillBook" ClientVersion="546" OpcodeName="OP_UpdateSkillBookMsg" >
<Data ElementName="skill_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="skill_array" Type="Array" ArraySizeVariable="skill_count">
<Data ElementName="skill_id" Type="int32" />
<Data ElementName="type" Type="int32" />
<Data ElementName="current_val" Type="int16" />
<Data ElementName="base_val" Type="int16" />
<Data ElementName="max_val" Type="int16" />
<Data ElementName="skill_delta" Type="int16" />
<Data ElementName="skill_delta2" Type="int16" />
<Data ElementName="display_minval" Type="int8" Size="1" />
<Data ElementName="display_maxval" Type="int8" Size="1" />
<Data ElementName="language_unknown" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSkillBook" ClientVersion="865" OpcodeName="OP_UpdateSkillBookMsg" >
<Data ElementName="skill_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int8" />
<Data ElementName="skill_array" Type="Array" ArraySizeVariable="skill_count">
<Data ElementName="skill_id" Type="int32" />
<Data ElementName="type" Type="int32" />
<Data ElementName="current_val" Type="int16" />
<Data ElementName="base_val" Type="int16" />
<Data ElementName="max_val" Type="int16" />
<Data ElementName="skill_delta" Type="int16" />
<Data ElementName="skill_delta2" Type="int16" />
<Data ElementName="display_minval" Type="int8" Size="1" />
<Data ElementName="display_maxval" Type="int8" Size="1" />
<Data ElementName="language_unknown" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int8" />
</Struct>
<Struct Name="WS_SpellSlotMapping" ClientVersion="1" OpcodeName="OP_KnowledgeWindowSlotMappingMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="slot_id" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_SkillInfoRequest" ClientVersion="1">
<Data ElementName="request_type" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="id" Type="int32" />
</Struct>
<Struct Name="WS_SkillInfoSpellRequest" ClientVersion="1">
<Data ElementName="request_type" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="id" Type="int32" />
</Struct>
<Struct Name="WS_SkillInfoItemRequest" ClientVersion="1">
<Data ElementName="request_type" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
</Struct>
<Struct Name="WS_SkillInfoResponse" ClientVersion="1" OpcodeName="OP_SkillInfoResponse" >
<Data ElementName="request_type" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SkillInfoItemResponse" ClientVersion="1" OpcodeName="OP_SkillInfoResponse" >
<Data ElementName="request_type" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SetControlGhost" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetControlGhostCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="speed" Type="float" />
<Data ElementName="unknown2" Type="int8" />
</Struct>
<Struct Name="WS_SetControlGhost" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetControlGhostCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="speed" Type="float" />
2020-02-28 07:17:24 -07:00
<Data ElementName="size" Type="float" />
<Data ElementName="unknown2" Type="int8" />
</Struct>
<Struct Name="WS_SetControlGhost" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetControlGhostCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="speed" Type="float" />
<Data ElementName="air_speed" Type="float" />
<Data ElementName="size" Type="float" />
<Data ElementName="unknown2" Type="int8" />
</Struct>
<Struct Name="WS_SetControlGhost" ClientVersion="1119" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetControlGhostCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="speed" Type="float" />
<Data ElementName="air_speed" Type="float" />
<Data ElementName="size" Type="float" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="unknown" Type="int8" Size="12" />
</Struct>
<Struct Name="WS_SetControlGhost" ClientVersion="1193" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSetControlGhostCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="speed" Type="float" />
<Data ElementName="air_speed" Type="float" />
<Data ElementName="size" Type="float" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="unknown" Type="int8" Size="13" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="1">
<Data ElementName="empty" Type="int8" />
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="available" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="546">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="unknown4" Type="int16" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="status" Type="int8" Size="1" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="547">
2020-02-28 07:17:24 -07:00
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int16" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="4" />
<Data ElementName="status" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="1096">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="10" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="1144">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="2" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="11" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="1188">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="2" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="10" />
<Data ElementName="savage_bar_slot" Type="int8" Size="1" />
<Data ElementName="unknown5b" Type="int8" Size="4" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="1199">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="2" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<!-- savage bar slot missing why was it removed -->
<Data ElementName="unknown5" Type="int8" Size="17" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="57048">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="3" />
<Data ElementName="icon" Type="sint16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<!-- savage bar slot missing why was it removed -->
<Data ElementName="unknown5" Type="int8" Size="20" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="58617">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<!--<Data ElementName="unknown1" Type="int8" Size="1" /> renamed to target_type 58617 -->
<Data ElementName="target_type" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown_58617_1_MJ" Type="int16" Size="3" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<!-- savage bar slot missing why was it removed -->
<Data ElementName="unknown3" Type="int8" Size="20" />
<Data ElementName="distance" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="58647">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<!--<Data ElementName="unknown1" Type="int8" Size="1" /> renamed to target_type 58617 -->
<Data ElementName="target_type" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown_58617_1_MJ" Type="int16" Size="3" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<!-- savage bar slot missing why was it removed -->
<Data ElementName="unknown3" Type="int8" Size="20" />
<Data ElementName="distance" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="SubStruct_UpdateSpellBook" ClientVersion="64707">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="recast_available" Type="int32" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="target_type" Type="int8" Size="1" />
<Data ElementName="recast_time" Type="int16" Size="1" />
<Data ElementName="unknown_58617_1_MJ" Type="int16" Size="4" /> <!-- size increase to 4 64707?-->
<Data ElementName="icon" Type="int16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="charges" Type="int8" Size="1" />
<!-- savage bar slot missing why was it removed -->
<Data ElementName="unknown3" Type="int8" Size="20" />
<Data ElementName="distance" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="status" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="1" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="546" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="547" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_UpdateSpellBook" ClientVersion="1096" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="1144" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="1188" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="1199" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="57048" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="58617" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="58647" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateSpellBook" ClientVersion="64707" OpcodeName="OP_UpdateSpellBookMsg" >
<Data ElementName="spell_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="spell_array" Type="Array" ArraySizeVariable="spell_count">
<Data ElementName="spells" Substruct="SubStruct_UpdateSpellBook" Size="1" />
</Data>
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="simplename" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="simpledesc" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="partial_packet" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="546" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="simplename" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="partial_packet" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="547" >
<Data ElementName="show_name" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="860" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="954" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="955" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="972" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1008" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1027" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1032" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1096" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1188" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1193" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1198" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1205" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="1208" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="57048" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="57107" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="58571" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="58647" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="60024" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="60114" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoHeader" ClientVersion="63119" >
<Data ElementName="show_name" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="show_popup" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestExamineInfoHeader" ClientVersion="1" >
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestExamineInfoHeader" ClientVersion="860" >
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpecialSpellInfo" ClientVersion="1">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
2020-03-02 16:47:18 -07:00
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="uses_remaining" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
<Data ElementName="damage_remaining" Type="int16" Size="1" />
<Data ElementName="unknown14" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpecialSpellInfo" ClientVersion="1008">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
<Data ElementName="subbulletflag" Type="int8" Size="1" />
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="uses_remaining" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="damage_remaining" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpecialSpellInfo" ClientVersion="1188">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
<Data ElementName="subbulletflag" Type="int8" Size="1" />
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="uses_remaining" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="damage_remaining" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpecialSpellInfo" ClientVersion="1193">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
<Data ElementName="subbulletflag" Type="int8" Size="1" />
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="uses_remaining" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="damage_remaining" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpecialSpellInfo" ClientVersion="57048">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
<Data ElementName="subbulletflag" Type="int8" Size="1" />
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="uses_remaining" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="damage_remaining" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="4" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="substruct_AASpellInfo" ClientVersion="1193">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
2020-03-02 16:47:18 -07:00
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="unknown_605_MJ_3" Type="int8" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown_605_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="1">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="972">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="Unknown28" Type="int32" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="1027">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="aa_tab_id" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="1188">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="unknown1a" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown2a" Type="int16" Size="4" />
<Data ElementName="unknown2b" Type="int32" Size="22" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="1192">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="aa_tab_id" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown_1193" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="1193">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="aa_tab_id" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="aa_current_rank" Type="int8" Size="1" />
<Data ElementName="aa_max_rank" Type="int8" Size="1" />
<Data ElementName="aa_rank_cost" Type="int8" Size="1" />
<Data ElementName="aa_unknown_2" Type="int8" Size="1" />
<Data ElementName="current_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_icon" Type="int16" Size="1" />
<Data ElementName="current_icon2" Type="int16" Size="1" />
<Data ElementName="current_icontype" Type="int16" Size="1" />
<Data ElementName="current_version" Type="int16" Size="1" />
<Data ElementName="current_sub_version" Type="int16" Size="1" />
<Data ElementName="current_type" Type="int8" Size="1" />
<Data ElementName="current_class_skill" Type="int32" Size="1" />
<Data ElementName="current_mastery_skill" Type="int32" Size="1" />
<Data ElementName="current_min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_spell_text_color" Type="int32" Size="1" />
<Data ElementName="current_unknown_1193_MJ_3" Type="int8" Size="1" />
<Data ElementName="current_tier" Type="int8" Size="1" />
<Data ElementName="current_health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_req_concentration" Type="int16" Size="1" />
<Data ElementName="current_unknown1" Type="int16" Size="1" />
<Data ElementName="current_cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_recast" Type="float" Size="1" />
<Data ElementName="current_radius" Type="float" Size="1" />
<Data ElementName="current_max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="current_friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_num_reagents" Type="int8" />
<Data ElementName="current_reagent_array" Type="Array" ArraySizeVariable="current_num_reagents">
<Data ElementName="current_reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="current_consumed" Type="int8" Size="1" />
<Data ElementName="current_qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="current_num_effects" Type="int8" />
<Data ElementName="current_effect_array" Type="Array" ArraySizeVariable="current_num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="current_subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="current_display_spell_tier" Type="int8" Size="1" />
<Data ElementName="current_unknown_1" Type="int8" Size="1" />
<Data ElementName="current_minimum_range" Type="float" Size="1" />
<Data ElementName="current_range" Type="float" Size="1" />
<Data ElementName="current_duration_1" Type="int32" Size="1" />
<Data ElementName="current_duration_2" Type="int32" Size="1" />
<Data ElementName="current_unknown_9" Type="int8" Size="1" />
<Data ElementName="current_duration_flag" Type="int8" Size="1" />
<Data ElementName="current_target" Type="int8" Size="1" />
<Data ElementName="current_can_effect_raid" Type="int8" Size="1" />
<Data ElementName="current_affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="current_group_spell" Type="int8" Size="1" />
<Data ElementName="current_resistibility" Type="float" Size="1" />
<Data ElementName="current_unknown_11" Type="int8" Size="7" />
<Data ElementName="current_hit_bonus" Type="float" Size="1" />
<Data ElementName="current_unknown_12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="current_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_unknown_1093_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_icon" Type="int16" Size="1" />
<Data ElementName="next_icon2" Type="int16" Size="1" />
<Data ElementName="next_icontype" Type="int16" Size="1" />
<Data ElementName="next_version" Type="int16" Size="1" />
<Data ElementName="next_sub_version" Type="int16" Size="1" />
<Data ElementName="next_type" Type="int8" Size="1" />
<Data ElementName="next_class_skill" Type="int32" Size="1" />
<Data ElementName="next_mastery_skill" Type="int32" Size="1" />
<Data ElementName="next_min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_spell_text_color" Type="int32" Size="1" />
<Data ElementName="next_unknown_1193_MJ_3" Type="int8" Size="1" />
<Data ElementName="next_tier" Type="int8" Size="1" />
<Data ElementName="next_health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_req_concentration" Type="int16" Size="1" />
<Data ElementName="next_unknown1" Type="int16" Size="1" />
<Data ElementName="next_cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_recast" Type="float" Size="1" />
<Data ElementName="next_radius" Type="float" Size="1" />
<Data ElementName="next_max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="next_friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_num_reagents" Type="int8" />
<Data ElementName="next_reagent_array" Type="Array" ArraySizeVariable="next_num_reagents">
<Data ElementName="next_reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="next_consumed" Type="int8" Size="1" />
<Data ElementName="next_qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="next_num_effects" Type="int8" />
<Data ElementName="next_effect_array" Type="Array" ArraySizeVariable="next_num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="next_subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="next_display_spell_tier" Type="int8" Size="1" />
<Data ElementName="next_unknown_1" Type="int8" Size="1" />
<Data ElementName="next_minimum_range" Type="float" Size="1" />
<Data ElementName="next_range" Type="float" Size="1" />
<Data ElementName="next_duration_1" Type="int32" Size="1" />
<Data ElementName="next_duration_2" Type="int32" Size="1" />
<Data ElementName="next_unknown_9" Type="int8" Size="1" />
<Data ElementName="next_duration_flag" Type="int8" Size="1" />
<Data ElementName="next_target" Type="int8" Size="1" />
<Data ElementName="next_can_effect_raid" Type="int8" Size="1" />
<Data ElementName="next_affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="next_group_spell" Type="int8" Size="1" />
<Data ElementName="next_resistibility" Type="float" Size="1" />
<Data ElementName="next_unknown_11" Type="int8" Size="7" />
<Data ElementName="next_hit_bonus" Type="float" Size="1" />
<Data ElementName="next_unknown_12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="next_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_unknown_1093_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="aa_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="aa_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown_605_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="58617">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="aa_tab_id" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="aa_current_rank" Type="int8" Size="1" />
<Data ElementName="aa_max_rank" Type="int8" Size="1" />
<Data ElementName="aa_rank_cost" Type="int8" Size="1" />
<Data ElementName="aa_unknown_2" Type="int8" Size="1" />
<Data ElementName="current_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_icon" Type="int16" Size="1" />
<Data ElementName="current_icon2" Type="int16" Size="1" />
<Data ElementName="current_icontype" Type="int16" Size="1" />
<Data ElementName="current_version" Type="int16" Size="1" />
<Data ElementName="current_sub_version" Type="int16" Size="1" />
<Data ElementName="current_type" Type="int8" Size="1" />
<Data ElementName="current_class_skill" Type="int32" Size="1" />
<Data ElementName="current_mastery_skill" Type="int32" Size="1" />
<Data ElementName="current_min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_spell_text_color" Type="int32" Size="1" />
<Data ElementName="current_unknown_58617_MJ_3" Type="int8" Size="1" />
<Data ElementName="current_tier" Type="int8" Size="1" />
<Data ElementName="current_health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_unknown_58617_MJ_4a" Type="int8" Size="1" />
<Data ElementName="current_req_concentration" Type="int16" Size="1" />
<Data ElementName="current_unknown_58617_MJ_4a" Type="int8" Size="3" />
<Data ElementName="current_cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_recast" Type="float" Size="1" />
<Data ElementName="current_radius" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
2020-03-02 16:47:18 -07:00
<Data ElementName="current_max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="current_friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_num_reagents" Type="int8" />
<Data ElementName="current_reagent_array" Type="Array" ArraySizeVariable="current_num_reagents">
<Data ElementName="current_reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="current_consumed" Type="int8" Size="1" />
<Data ElementName="current_qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="current_num_effects" Type="int8" />
<Data ElementName="current_effect_array" Type="Array" ArraySizeVariable="current_num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="current_subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="current_display_spell_tier" Type="int8" Size="1" />
<Data ElementName="current_unknown_1" Type="int8" Size="1" />
<Data ElementName="current_minimum_range" Type="float" Size="1" />
<Data ElementName="current_range" Type="float" Size="1" />
<Data ElementName="current_duration_1" Type="int32" Size="1" />
<Data ElementName="current_duration_2" Type="int32" Size="1" />
<Data ElementName="current_unknown_9" Type="int8" Size="1" />
<Data ElementName="current_duration_flag" Type="int8" Size="1" />
<Data ElementName="current_target" Type="int8" Size="1" />
<Data ElementName="current_can_effect_raid" Type="int8" Size="1" />
<Data ElementName="current_affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="current_group_spell" Type="int8" Size="1" />
<Data ElementName="current_resistibility" Type="float" Size="1" />
<Data ElementName="current_unknown_11" Type="int8" Size="7" />
<Data ElementName="current_hit_bonus" Type="float" Size="1" />
<Data ElementName="current_unknown_12" Type="int8" Size="1" />
<Data ElementName="current_unknown_58617_MJ_7" Type="int8" Size="4" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="current_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_unknown_1093_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_icon" Type="int16" Size="1" />
<Data ElementName="next_icon2" Type="int16" Size="1" />
<Data ElementName="next_icontype" Type="int16" Size="1" />
<Data ElementName="next_version" Type="int16" Size="1" />
<Data ElementName="next_sub_version" Type="int16" Size="1" />
<Data ElementName="next_type" Type="int8" Size="1" />
<Data ElementName="next_class_skill" Type="int32" Size="1" />
<Data ElementName="next_mastery_skill" Type="int32" Size="1" />
<Data ElementName="next_min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_spell_text_color" Type="int32" Size="1" />
<Data ElementName="next_unknown_58617_MJ_3" Type="int8" Size="1" />
<Data ElementName="next_tier" Type="int8" Size="1" />
<Data ElementName="next_health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_unknown_58617_MJ_4a" Type="int8" Size="1" />
<Data ElementName="next_req_concentration" Type="int16" Size="1" />
<Data ElementName="next_unknown_58617_MJ_4b" Type="int8" Size="3" />
<Data ElementName="next_cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_recast" Type="float" Size="1" />
<Data ElementName="next_radius" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
2020-03-02 16:47:18 -07:00
<Data ElementName="next_max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="next_friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_num_reagents" Type="int8" />
<Data ElementName="next_reagent_array" Type="Array" ArraySizeVariable="next_num_reagents">
<Data ElementName="next_reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="next_consumed" Type="int8" Size="1" />
<Data ElementName="next_qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="next_num_effects" Type="int8" />
<Data ElementName="next_effect_array" Type="Array" ArraySizeVariable="next_num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="next_subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="next_display_spell_tier" Type="int8" Size="1" />
<Data ElementName="next_unknown_1" Type="int8" Size="1" />
<Data ElementName="next_minimum_range" Type="float" Size="1" />
<Data ElementName="next_range" Type="float" Size="1" />
<Data ElementName="next_duration_1" Type="int32" Size="1" />
<Data ElementName="next_duration_2" Type="int32" Size="1" />
<Data ElementName="next_unknown_9" Type="int8" Size="1" />
<Data ElementName="next_duration_flag" Type="int8" Size="1" />
<Data ElementName="next_target" Type="int8" Size="1" />
<Data ElementName="next_can_effect_raid" Type="int8" Size="1" />
<Data ElementName="next_affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="next_group_spell" Type="int8" Size="1" />
<Data ElementName="next_resistibility" Type="float" Size="1" />
<Data ElementName="next_unknown_11" Type="int8" Size="7" />
<Data ElementName="next_hit_bonus" Type="float" Size="1" />
<Data ElementName="next_unknown_12" Type="int8" Size="1" />
<Data ElementName="next_unknown_58617_MJ_7" Type="int8" Size="4" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="next_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_unknown_58617_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="aa_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="aa_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown_58617_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="60114">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="aa_tab_id" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="aa_current_rank" Type="int8" Size="1" />
<Data ElementName="aa_max_rank" Type="int8" Size="1" />
<Data ElementName="aa_rank_cost" Type="int8" Size="1" />
<Data ElementName="aa_unknown_2" Type="int8" Size="1" />
<Data ElementName="current_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_icon" Type="int16" Size="1" />
<Data ElementName="current_icon2" Type="int16" Size="1" />
<Data ElementName="current_icontype" Type="int16" Size="1" />
<Data ElementName="current_version" Type="int16" Size="1" />
<Data ElementName="current_sub_version" Type="int16" Size="1" />
<Data ElementName="current_type" Type="int8" Size="1" />
<Data ElementName="current_class_skill" Type="int32" Size="1" />
<Data ElementName="current_mastery_skill" Type="int32" Size="1" />
<Data ElementName="current_min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_spell_text_color" Type="int32" Size="1" />
<Data ElementName="current_unknown_58617_MJ_3" Type="int8" Size="1" />
<Data ElementName="current_tier" Type="int8" Size="1" />
<Data ElementName="current_health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_unknown_58617_MJ_4a" Type="int8" Size="1" />
<Data ElementName="current_req_concentration" Type="int16" Size="1" />
<Data ElementName="current_unknown_58617_MJ_4b" Type="int8" Size="3" />
<Data ElementName="current_cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="current_recast" Type="float" Size="1" />
<Data ElementName="current_radius" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
2020-03-02 16:47:18 -07:00
<Data ElementName="current_max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="current_friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_num_reagents" Type="int8" />
<Data ElementName="current_reagent_array" Type="Array" ArraySizeVariable="current_num_reagents">
<Data ElementName="current_reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="current_consumed" Type="int8" Size="1" />
<Data ElementName="current_qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="current_num_effects" Type="int8" />
<Data ElementName="current_effect_array" Type="Array" ArraySizeVariable="current_num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="current_subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="current_display_spell_tier" Type="int8" Size="1" />
<Data ElementName="current_unknown_1" Type="int8" Size="1" />
<Data ElementName="current_minimum_range" Type="float" Size="1" />
<Data ElementName="current_range" Type="float" Size="1" />
<Data ElementName="current_duration_1" Type="int32" Size="1" />
<Data ElementName="current_duration_2" Type="int32" Size="1" />
<Data ElementName="current_unknown_9" Type="int8" Size="1" />
<Data ElementName="current_duration_flag" Type="int8" Size="1" />
<Data ElementName="current_target" Type="int8" Size="1" />
<Data ElementName="current_can_effect_raid" Type="int8" Size="1" />
<Data ElementName="current_affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="current_group_spell" Type="int8" Size="1" />
<Data ElementName="current_resistibility" Type="float" Size="1" />
<Data ElementName="current_unknown_11" Type="int8" Size="7" />
<Data ElementName="current_hit_bonus" Type="float" Size="1" />
<Data ElementName="current_unknown_12" Type="int8" Size="1" />
<Data ElementName="current_unknown_58617_MJ_7" Type="int8" Size="4" />
2020-02-28 07:17:24 -07:00
<Data ElementName="current_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="current_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="current_unknown_1093_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_icon" Type="int16" Size="1" />
<Data ElementName="next_icon2" Type="int16" Size="1" />
<Data ElementName="next_icontype" Type="int16" Size="1" />
<Data ElementName="next_version" Type="int16" Size="1" />
<Data ElementName="next_sub_version" Type="int16" Size="1" />
<Data ElementName="next_type" Type="int8" Size="1" />
<Data ElementName="next_class_skill" Type="int32" Size="1" />
<Data ElementName="next_mastery_skill" Type="int32" Size="1" />
<Data ElementName="next_min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_spell_text_color" Type="int32" Size="1" />
<Data ElementName="next_unknown_58617_MJ_3" Type="int8" Size="1" />
<Data ElementName="next_tier" Type="int8" Size="1" />
<Data ElementName="next_health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_unknown_58617_MJ_4a" Type="int8" Size="1" />
<Data ElementName="next_req_concentration" Type="int16" Size="1" />
<Data ElementName="next_unknown_58617_MJ_4b" Type="int8" Size="3" />
<Data ElementName="next_cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="next_recast" Type="float" Size="1" />
<Data ElementName="next_radius" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
2020-03-02 16:47:18 -07:00
<Data ElementName="next_max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="next_friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_num_reagents" Type="int8" />
<Data ElementName="next_reagent_array" Type="Array" ArraySizeVariable="next_num_reagents">
<Data ElementName="next_reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="next_consumed" Type="int8" Size="1" />
<Data ElementName="next_qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="next_num_effects" Type="int8" />
<Data ElementName="next_effect_array" Type="Array" ArraySizeVariable="next_num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="next_subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="next_display_spell_tier" Type="int8" Size="1" />
<Data ElementName="next_unknown_1" Type="int8" Size="1" />
<Data ElementName="next_minimum_range" Type="float" Size="1" />
<Data ElementName="next_range" Type="float" Size="1" />
<Data ElementName="next_duration_1" Type="int32" Size="1" />
<Data ElementName="next_duration_2" Type="int32" Size="1" />
<Data ElementName="next_unknown_9" Type="int8" Size="1" />
<Data ElementName="next_duration_flag" Type="int8" Size="1" />
<Data ElementName="next_target" Type="int8" Size="1" />
<Data ElementName="next_can_effect_raid" Type="int8" Size="1" />
<Data ElementName="next_affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="next_group_spell" Type="int8" Size="1" />
<Data ElementName="next_resistibility" Type="float" Size="1" />
<Data ElementName="next_unknown_11" Type="int8" Size="7" />
<Data ElementName="next_hit_bonus" Type="float" Size="1" />
<Data ElementName="next_unknown_12" Type="int8" Size="1" />
<Data ElementName="next_unknown_58617_MJ_7" Type="int8" Size="4" />
2020-02-28 07:17:24 -07:00
<Data ElementName="next_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="next_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="next_unknown_58617_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="aa_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="aa_description" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown_58617_MJ_6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_AchievementSpellInfo" ClientVersion="63119">
<Data ElementName="aa_id" Type="int32" />
<Data ElementName="unknown1a" Type="int16" Size="1" />
<Data ElementName="aa_icon" Type="int16" Size="1" />
<Data ElementName="aa_icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown2a" Type="int16" Size="4" />
<Data ElementName="unknown2b" Type="int32" Size="27" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown_mj3" Type="int8" Size="5" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown_mj3" Type="int8" Size="8" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="9" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="6" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="1">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" /> <!-- spell=0, combat_art=1, ability=2 -->
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="min_class_skill_rec" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_cost" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mana_cost" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int8" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
</Data>
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_EffectInfo" ClientVersion="1">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" /> <!-- spell=0, combat_art=1, ability=2 -->
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_EffectInfo" ClientVersion="546">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="type" Type="int16" Size="1" /> <!-- spell=0, combat_art=1, ability=2 -->
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_PartialSpellInfo" ClientVersion="1">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" /> <!-- spell=0, combat_art=1, ability=2 -->
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="min_class_skill_rec" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_cost" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mana_cost" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int8" Size="1" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="546">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
<Data ElementName="subbulletflag" Type="int8" Size="1" />
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
2020-07-25 21:54:04 -06:00
<Data ElementName="unknown9" Type="int8" Size="1" /> <!-- UpdateCount -->
<Data ElementName="duration_flag" Type="int8" Size="1" /> <!-- DoesNotExpire -->
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
2020-07-25 21:54:04 -06:00
<Data ElementName="group_spell" Type="int8" Size="1" /> <!-- this is actually Maintained flag -->
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="547">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="949">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
2020-03-02 16:47:18 -07:00
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="Unknown28" Type="int32" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="954">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="Unknown28" Type="int32" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="972">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="Unknown28" Type="int32" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="1008">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="1027">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="6" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="1188">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="1193">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="57048">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="5" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="60114">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="7" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="5" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="63119">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="unknown_MJ3" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1a" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1b" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1c" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1d" Type="int8" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown_mj2" Type="int8" Size="6" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="13" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown_mj4" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="64707">
<Data ElementName="id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="unknown_MJ3" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1a" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1b" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1c" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1d" Type="int8" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown_mj2" Type="int8" Size="6" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown_req" Type="int8" Size="3" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
2020-03-02 16:47:18 -07:00
<Data ElementName="subbulletflag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="13" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown_mj4" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SpellInfo" ClientVersion="70702">
<Data ElementName="id" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="version" Type="int16" Size="1" />
<Data ElementName="sub_version" Type="int16" Size="1" />
<Data ElementName="unknown_MJ3" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1a" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1b" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1c" Type="int8" Size="1" />
<Data ElementName="unknown_MJ1d" Type="int8" Size="1" />
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="class_skill" Type="int32" Size="1" />
<Data ElementName="mastery_skill" Type="int32" Size="1" />
<Data ElementName="min_class_skill_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="spell_text_color" Type="int32" Size="1" />
<Data ElementName="num_levels" Type="int8" Size="1" />
<Data ElementName="level_array" Type="Array" ArraySizeVariable="num_levels">
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="spell_level" Type="int16" Size="1" />
</Data>
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="health_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="health_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown_mj2" Type="int8" Size="6" />
<Data ElementName="power_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="power_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="savagery_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_req" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="dissonance_upkeep" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown_req" Type="int8" Size="22" />
<Data ElementName="req_concentration" Type="int16" Size="1" />
<Data ElementName="cast_time" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recovery" Type="int16" Size="1" OversizedValue="127" OversizedByte="127" />
<Data ElementName="recast" Type="float" Size="1" />
<Data ElementName="radius" Type="float" Size="1" />
<Data ElementName="max_aoe_targets" Type="int16" Size="1" />
<Data ElementName="friendly_spell" Type="int8" Size="1" />
<Data ElementName="num_reagents" Type="int8" />
<Data ElementName="reagent_array" Type="Array" ArraySizeVariable="num_reagents">
<Data ElementName="reagent" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="consumed" Type="int8" Size="1" />
<Data ElementName="qty_required" Type="int32" Size="1" />
</Data>
<Data ElementName="num_effects" Type="int8" />
<Data ElementName="effect_array" Type="Array" ArraySizeVariable="num_effects">
<Data ElementName="subbulletflag" Type="int8" Size="1" />
<Data ElementName="effect" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="percentage" Type="int8" Size="1" />
</Data>
<Data ElementName="display_spell_tier" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="minimum_range" Type="float" Size="1" />
<Data ElementName="range" Type="float" Size="1" />
<Data ElementName="duration1" Type="int32" Size="1" />
<Data ElementName="duration2" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="duration_flag" Type="int8" Size="1" />
<Data ElementName="target" Type="int8" Size="1" />
<Data ElementName="can_effect_raid" Type="int8" Size="1" />
<Data ElementName="affect_only_group_members" Type="int8" Size="1" />
<Data ElementName="group_spell" Type="int8" Size="1" />
<Data ElementName="resistibility" Type="float" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="13" />
<Data ElementName="hit_bonus" Type="float" Size="1" />
<Data ElementName="unknown_mj4" Type="int8" Size="2" />
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_RecipeInfo" ClientVersion="1" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="unknown1_icon" Type="int16" />
<Data ElementName="unknown1_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1_qty" Type="int16" />
<Data ElementName="unknown1_item_id" Type="sint32" />
<Data ElementName="unknown1_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown2_icon" Type="int16" />
<Data ElementName="unknown2_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown2_qty" Type="int16" />
<Data ElementName="unknown2_item_id" Type="sint32" />
<Data ElementName="unknown2_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown3_icon" Type="int16" />
<Data ElementName="unknown3_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3_qty" Type="int16" />
<Data ElementName="unknown3_item_id" Type="sint32" />
<Data ElementName="unknown3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int8" />
<Data ElementName="build_comp_qty_avail" Type="int16" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int16" />
<Data ElementName="unknown13" Type="int8" Size="6" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_RecipeInfo" ClientVersion="546" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int8" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknownz" Type="int8" size="13"/>
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknowny" Type="int8" size="26"/>
<Data ElementName="primary_count" Type="int8" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int8" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_RecipeInfo" ClientVersion="908" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="unknown1_icon" Type="int16" />
<Data ElementName="unknown1_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1_qty" Type="int16" />
<Data ElementName="unknown1_item_id" Type="sint32" />
<Data ElementName="unknown1_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown2_icon" Type="int16" />
<Data ElementName="unknown2_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown2_qty" Type="int16" />
<Data ElementName="unknown2_item_id" Type="sint32" />
<Data ElementName="unknown2_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown3_icon" Type="int16" />
<Data ElementName="unknown3_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3_qty" Type="int16" />
<Data ElementName="unknown3_item_id" Type="sint32" />
<Data ElementName="unknown3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int8" />
<Data ElementName="build_comp_qty_avail" Type="int16" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int16" />
<Data ElementName="unknown13" Type="int8" Size="6" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_RecipeInfo" ClientVersion="954" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="unknown1_icon" Type="int16" />
<Data ElementName="unknown1_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1_qty" Type="int16" />
<Data ElementName="unknown1_item_id" Type="sint32" />
<Data ElementName="unknown1_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown2_icon" Type="int16" />
<Data ElementName="unknown2_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown2_qty" Type="int16" />
<Data ElementName="unknown2_item_id" Type="sint32" />
<Data ElementName="unknown2_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown3_icon" Type="int16" />
<Data ElementName="unknown3_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3_qty" Type="int16" />
<Data ElementName="unknown3_item_id" Type="sint32" />
<Data ElementName="unknown3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="byproduct_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int8" />
<Data ElementName="build_comp_qty_avail" Type="int16" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int16" />
<Data ElementName="unknown13" Type="int8" Size="7" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_RecipeInfo" ClientVersion="1096" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="show_previous" Type="int8" Size="1" />
<Data ElementName="unknown1_icon" Type="int16" />
<Data ElementName="unknown1_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown1_qty" Type="int16" />
<Data ElementName="unknown1_item_id" Type="sint32" />
<Data ElementName="unknown1_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown2_icon" Type="int16" />
<Data ElementName="unknown2_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown2_qty" Type="int16" />
<Data ElementName="unknown2_item_id" Type="sint32" />
<Data ElementName="unknown2_item_crc" Type="sint32" Size="1" />
<Data ElementName="unknown3_icon" Type="int16" />
<Data ElementName="unknown3_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3_qty" Type="int16" />
<Data ElementName="unknown3_item_id" Type="sint32" />
<Data ElementName="unknown3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="byproduct_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int8" />
<Data ElementName="build_comp_qty_avail" Type="int16" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int16" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="available_flag" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="product_qty1" Type="int16" Size="1" />
<Data ElementName="product_qty2" Type="int16" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="2" />
<Data ElementName="not_commissionable" Type="int8" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_RecipeInfo" ClientVersion="1208" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" /> <!-- 3 -->
<Data ElementName="level" Type="int8" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown4a" Type="int8" Size="1" />
<Data ElementName="unknown4aa" Type="int8" Size="1" /> <!-- 1 -->
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown5a" Type="int8" Size="1" /> <!-- 20 -->
<Data ElementName="unknown5aa" Type="int8" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="show_previous" Type="int8" Size="1" /> <!--0 (shows none) - 15 (shows all) values -->
<Data ElementName="previous1_icon" Type="int16" />
<Data ElementName="previous1_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous1_qty" Type="int16" />
<Data ElementName="previous1_item_id" Type="sint32" />
<Data ElementName="previous1_item_crc" Type="sint32" Size="1" />
<Data ElementName="previous2_icon" Type="int16" />
<Data ElementName="previous2_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous2_qty" Type="int16" />
<Data ElementName="previous2_item_id" Type="sint32" />
<Data ElementName="previous2_item_crc" Type="sint32" Size="1" />
<Data ElementName="previous3_icon" Type="int16" />
<Data ElementName="previous3_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous3_qty" Type="int16" />
<Data ElementName="previous3_item_id" Type="sint32" />
<Data ElementName="previous3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="byproduct_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int16" />
<Data ElementName="build_comp_qty_avail" Type="int16" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int16" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="available_flag" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="product_qty1" Type="int16" Size="1" />
<Data ElementName="product_qty2" Type="int16" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="2" />
<Data ElementName="not_commissionable" Type="int8" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_RecipeInfo" ClientVersion="57048" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" /> <!-- 3 -->
<Data ElementName="level" Type="int8" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown4a" Type="int8" Size="1" />
<Data ElementName="unknown4aa" Type="int8" Size="1" /> <!-- 1 -->
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown5a" Type="int8" Size="1" /> <!-- 20 -->
<Data ElementName="unknown5aa" Type="int8" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="show_previous" Type="int8" Size="1" /> <!--0 (shows none) - 15 (shows all) values -->
<Data ElementName="previous1_icon" Type="int16" />
<Data ElementName="previous1_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous1_qty" Type="int16" />
<Data ElementName="previous1_item_id" Type="sint32" />
<Data ElementName="previous1_item_crc" Type="sint32" Size="1" />
<Data ElementName="previous2_icon" Type="int16" />
<Data ElementName="previous2_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous2_qty" Type="int16" />
<Data ElementName="previous2_item_id" Type="sint32" />
<Data ElementName="previous2_item_crc" Type="sint32" Size="1" />
<Data ElementName="previous3_icon" Type="int16" />
<Data ElementName="previous3_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous3_qty" Type="int16" />
<Data ElementName="previous3_item_id" Type="sint32" />
<Data ElementName="previous3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="byproduct_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int32" />
<Data ElementName="primary_qty" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int16" />
<Data ElementName="build_comp_qty_avail" Type="int32" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int32" />
<Data ElementName="available_flag" Type="int8" Size="1" /> <!-- 1-4 result for each step 4 shows final product -->
<Data ElementName="build_comp_qty_avail_flag" Type="int8" Size="1" />
<Data ElementName="container_flag" Type="int8" Size="1" /> <!-- "Quantites include crafting container" text -->
2020-03-02 16:47:18 -07:00
<Data ElementName="min_product" Type="int16" Size="1" />
<Data ElementName="max_product" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="max_uses" Type="int8" Size="1" /> <!-- Turns into a int16 if a value is set -->
<Data ElementName="current_uses" Type="int8" Size="1" /> <!-- Turns into a int16 if a value is set -->
<Data ElementName="not_commissionable" Type="int8" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_RecipeInfo" ClientVersion="63119" >
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" /> <!-- 3 -->
<Data ElementName="level" Type="int8" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="skill_level" Type="int16" Size="1" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="device" Type="EQ2_8Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown4a" Type="int8" Size="1" />
<Data ElementName="unknown4aa" Type="int8" Size="1" /> <!-- 1 -->
<Data ElementName="adventure_id" Type="int8" />
<Data ElementName="tradeskill_id" Type="int8" />
<Data ElementName="unknown5a" Type="int8" Size="1" /> <!-- 20 -->
<Data ElementName="unknown5aa" Type="int8" Size="1" />
<Data ElementName="product_classes" Type="int64" />
<Data ElementName="show_previous" Type="int8" Size="1" /> <!--0 (shows none) - 15 (shows all) values -->
<Data ElementName="previous1_icon" Type="int16" />
<Data ElementName="previous1_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous1_qty" Type="int16" />
<Data ElementName="previous1_item_id" Type="sint32" />
<Data ElementName="previous1_item_crc" Type="sint32" Size="1" />
<Data ElementName="previous2_icon" Type="int16" />
<Data ElementName="previous2_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous2_qty" Type="int16" />
<Data ElementName="previous2_item_id" Type="sint32" />
<Data ElementName="previous2_item_crc" Type="sint32" Size="1" />
<Data ElementName="previous3_icon" Type="int16" />
<Data ElementName="previous3_name" Type="EQ2_8Bit_String" />
<Data ElementName="previous3_qty" Type="int16" />
<Data ElementName="previous3_item_id" Type="sint32" />
<Data ElementName="previous3_item_crc" Type="sint32" Size="1" />
<Data ElementName="firstbar_icon" Type="int16" />
<Data ElementName="firstbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="firstbar_qty" Type="int16" />
<Data ElementName="firstbar_item_id" Type="sint32" />
<Data ElementName="firstbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="secondbar_icon" Type="int16" />
<Data ElementName="secondbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="secondbar_qty" Type="int16" />
<Data ElementName="secondbar_item_id" Type="sint32" />
<Data ElementName="secondbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="thirdbar_icon" Type="int16" />
<Data ElementName="thirdbar_name" Type="EQ2_8Bit_String" />
<Data ElementName="thirdbar_qty" Type="int16" />
<Data ElementName="thirdbar_item_id" Type="sint32" />
<Data ElementName="thirdbar_item_crc" Type="sint32" Size="1" />
<Data ElementName="product_icon" Type="int16" />
<Data ElementName="product_name" Type="EQ2_8Bit_String" />
<Data ElementName="product_qty" Type="int16" />
<Data ElementName="product_item_id" Type="sint32" />
<Data ElementName="product_item_crc" Type="sint32" Size="1" />
<Data ElementName="byproduct_icon" Type="int16" />
<Data ElementName="byproduct_name" Type="EQ2_8Bit_String" />
<Data ElementName="byproduct_qty" Type="int16" />
<Data ElementName="byproduct_id" Type="int32" />
<Data ElementName="byproduct_crc" Type="int32" />
<Data ElementName="primary_comp" Type="EQ2_8Bit_String" />
<Data ElementName="primary_qty_avail" Type="int32" />
<Data ElementName="primary_qty" Type="int16" />
<Data ElementName="num_comps" Type="int8" />
<Data ElementName="comp_array" Type="Array" ArraySizeVariable="num_comps">
<Data ElementName="build_comp" Type="EQ2_8Bit_String" />
<Data ElementName="build_comp_qty" Type="int16" />
<Data ElementName="build_comp_qty_avail" Type="int32" />
</Data>
<Data ElementName="fuel_comp" Type="EQ2_8Bit_String" />
<Data ElementName="fuel_comp_qty" Type="int8" />
<Data ElementName="fuel_comp_qty_avail" Type="int32" />
<Data ElementName="available_flag" Type="int8" Size="1" /> <!-- 1-4 result for each step 4 shows final product -->
<Data ElementName="build_comp_qty_avail_flag" Type="int8" Size="1" />
<Data ElementName="container_flag" Type="int8" Size="1" /> <!-- "Quantites include crafting container" text -->
2020-03-02 16:47:18 -07:00
<Data ElementName="min_product" Type="int16" Size="1" />
<Data ElementName="max_product" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="max_uses" Type="int8" Size="1" /> <!-- Turns into a int16 if a value is set -->
<Data ElementName="current_uses" Type="int8" Size="1" /> <!-- Turns into a int16 if a value is set -->
<Data ElementName="not_commissionable" Type="int8" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_8Bit_String" />
<Data ElementName="recipe_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineEffectInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_EffectInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineEffectInfo" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_EffectInfo" Size="1" />
</Struct>
<Struct Name="WS_ExaminePartialSpellInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_PartialSpellInfo" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_ExamineSpellInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="860" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="860" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="954" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="1008" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="1027" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="1027" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="1193" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="1193" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="63119" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpellInfo" ClientVersion="64707" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineSpecialSpellInfo" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_SpecialSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="1027" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="1193" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="58617" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineAASpellInfo" ClientVersion="63119" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="spell_info" Substruct="WS_AchievementSpellInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="908" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="954" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="1208" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
<Struct Name="WS_ExamineRecipeInfo" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="recipe_info" Substruct="WS_RecipeInfo" Size="1" />
</Struct>
<Struct Name="WS_MoveObjectMode" ClientVersion="1" OpcodeName="OP_EnterMoveObjectModeMsg" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="placement_mode" Type="int8" />
<Data ElementName="model_type" Type="int16" />
<Data ElementName="unknown2" Type="float" />
<Data ElementName="max_distance" Type="float" />
<Data ElementName="unknown4" Type="int8" />
</Struct>
<Struct Name="WS_MoveObjectMode" ClientVersion="936" OpcodeName="OP_EnterMoveObjectModeMsg" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="placement_mode" Type="int8" />
<Data ElementName="model_type" Type="int16" />
<Data ElementName="unknown" Type="float" />
<Data ElementName="unknown2" Type="float" Size="4" />
<Data ElementName="max_distance" Type="float" />
<Data ElementName="unknown4" Type="int8" />
</Struct>
<Struct Name="WS_MoveObjectMode" ClientVersion="1193" OpcodeName="OP_EnterMoveObjectModeMsg" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="CoEunknown" Type="int32" />
<Data ElementName="placement_mode" Type="int8" />
<Data ElementName="model_type" Type="int16" />
<Data ElementName="CoEunknown2" Type="int8" />
<Data ElementName="unknown" Type="float" />
<Data ElementName="unknown2" Type="float" Size="4" />
<Data ElementName="max_distance" Type="float" />
<Data ElementName="unknown4" Type="int8" />
</Struct>
<Struct Name="WS_MoveObjectMode" ClientVersion="57107" OpcodeName="OP_EnterMoveObjectModeMsg" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="CoEunknown" Type="int32" />
<Data ElementName="placement_mode" Type="int8" />
<Data ElementName="model_type" Type="int16" />
<Data ElementName="CoEunknown2" Type="int8" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="unknown" Type="float" />
<Data ElementName="unknown2" Type="float" Size="4" />
<Data ElementName="max_distance" Type="float" />
<Data ElementName="unknown4" Type="int8" />
</Struct>
<Struct Name="WS_MoveObjectMode" ClientVersion="63119" OpcodeName="OP_EnterMoveObjectModeMsg" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="CoEunknown" Type="int32" />
<Data ElementName="placement_mode" Type="int8" />
<Data ElementName="model_type" Type="int16" />
<Data ElementName="CoEunknown2" Type="int8" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="unknown" Type="float" />
<Data ElementName="unknown2" Type="float" Size="4" />
<Data ElementName="max_distance" Type="float" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="unknown4a" Type="int8" />
<Data ElementName="model_type2" Type="int16" />
<Data ElementName="unknown5" Type="int32" Size="99" />
<Data ElementName="unknown6" Type="int8" />
<Data ElementName="unknown7" Type="int8" />
<Data ElementName="unknown8" Type="int8" />
<Data ElementName="unknown9" Type="int8" />
<Data ElementName="unknown10" Type="int8" />
<Data ElementName="unknown11" Type="int8" />
<Data ElementName="model_type3" Type="int16" />
<Data ElementName="unknown14" Type="int32" Size="20" />
</Struct>
<Struct Name="WS_PlaceMoveableObject" ClientVersion="1" OpcodeName="OP_PositionMoveableObject" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="heading" Type="float" />
<Data ElementName="unknown" Type="float" />
<Data ElementName="unknown2" Type="float" />
<Data ElementName="unknown3" Type="int32" />
</Struct>
<Struct Name="WS_PlaceMoveableObject" ClientVersion="57032" OpcodeName="OP_PositionMoveableObject" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="heading" Type="float" />
<Data ElementName="pitch" Type="float" />
<Data ElementName="roll" Type="float" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="size_unknown" Type="float" />
<Data ElementName="unknown4" Type="int8" />
</Struct>
<!-- classic uses opcode OP_UpdateClientPredFlagsMsg instead of OP_ChangeServerControlFlagMsg -->
<Struct Name="WS_ServerControlFlags" ClientVersion="1" OpcodeName="OP_UpdateClientPredFlagsMsg" >
<Data ElementName="parameter" Type="int32" />
<Data ElementName="value" Type="int32" />
</Struct>
<Struct Name="WS_ServerControlFlags" ClientVersion="546" OpcodeName="OP_UpdateClientPredFlagsMsg" >
<Data ElementName="parameter" Type="int32" />
<Data ElementName="value" Type="int32" />
</Struct>
<Struct Name="WS_ServerControlFlags" ClientVersion="547" OpcodeName="OP_ChangeServerControlFlagMsg" >
<Data ElementName="parameter1" Type="int8" />
<Data ElementName="parameter2" Type="int8" />
<Data ElementName="parameter3" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="parameter4" Type="int8" />
<Data ElementName="parameter5" Type="int8" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="value" Type="int8" />
</Struct>
<Struct Name="WS_MoveClient" ClientVersion="1" OpcodeName="OP_TeleportWithinZoneNoReloadMsg" >
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="heading" Type="float" />
<Data ElementName="unknown" Type="int8" />
</Struct>
<Struct Name="WS_MoveClient" ClientVersion="869" OpcodeName="OP_TeleportWithinZoneNoReloadMsg" >
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="heading" Type="float" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="location" Type="int32" />
</Struct>
<Struct Name="WS_ExamineSpellEffectRequest" ClientVersion="1" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
<Data ElementName="partial_info" Type="int8" />
</Struct>
<Struct Name="WS_ExamineSpellEffectRequest" ClientVersion="547" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown5" Type="int16" />
</Struct>
<Struct Name="WS_ExamineInfoItemRequest" ClientVersion="1" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown5" Type="int16" />
</Struct>
2020-07-25 21:54:04 -06:00
<Struct Name="WS_ExamineInfoItemRequest" ClientVersion="546" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown5" Type="int16" />
</Struct>
<Struct Name="WS_ExamineInfoRequest" ClientVersion="1" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
<Data ElementName="display" Type="int8" />
</Struct>
<Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="1" OpcodeName="OP_ExamineInfoRequestMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
<Data ElementName="display" Type="int8" />
</Struct>
<Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="546" OpcodeName="OP_ExamineInfoRequestMsg">
<Data ElementName="type" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="display" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="860" OpcodeName="OP_ExamineInfoRequestMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown5" Type="int16" />
</Struct>
<Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="1188" OpcodeName="OP_ExamineInfoRequestMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown_id" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="tier" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown6" Type="int16" />
</Struct>
<Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="60114" OpcodeName="OP_ExamineInfoRequestMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown_id" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="tier" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown6" Type="int16" />
</Struct>
<Struct Name="WS_ExamineInfoRequestMsg" ClientVersion="63119" OpcodeName="OP_ExamineInfoRequestMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown5" Type="int16" />
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="1" >
<Data ElementName="type" Type="int8" Size="1" />
2020-07-25 21:54:04 -06:00
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_id" Type="int32" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="547" >
<Data ElementName="type" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int32" Size="3" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="1096" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="1191" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
<Data ElementName="unknown2" Type="int8" Size ="2"/>
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="1199" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
<Data ElementName="unknown2" Type="int8" Size ="11"/>
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="57107" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
<Data ElementName="unknown2" Type="int8" Size ="11"/>
<Data ElementName="unknown4" Type="int16" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="60024" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
<Data ElementName="unknown2" Type="int8" Size ="13"/>
<Data ElementName="item_crc" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoItemLinkRequest" ClientVersion="63119" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
<Data ElementName="unknown2" Type="int8" Size ="13"/>
<Data ElementName="item_crc" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_id" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="show_popup" Type="int8" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ExamineInfoRequest_type3" ClientVersion="1096" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="trait_tier" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="tier" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_ExamineInfoRequest_type3" ClientVersion="63119" >
<Data ElementName="type" Type="int8" Size="1" />
<Data ElementName="trait_tier" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="tier" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="unknown6" Type="int32" />
</Struct>
<Struct Name="WS_QuickBarUpdateRequest" ClientVersion="1" >
<Data ElementName="hotbar_number" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="hotkey_slot" Type="int32" />
<Data ElementName="type" Type="int32" />
2020-03-02 16:47:18 -07:00
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="id" Type="int32" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_QuickBarUpdateRequest" ClientVersion="546" >
<Data ElementName="hotbar_number" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="hotkey_slot" Type="int32" />
<Data ElementName="type" Type="int32" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icontype" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="id" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
2020-03-02 16:47:18 -07:00
<Data ElementName="unknown" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_CannedEmote" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCannedEmoteCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="emote_msg" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="anim_type" Type="int16" />
<Data ElementName="unknown0" Type="int32" />
</Struct>
<Struct Name="WS_HearCastSpell" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellCastCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target" Type="int32" />
</Data>
<Data ElementName="invoker_id" Type="int32" />
<Data ElementName="spell_visual" Type="int16" />
<Data ElementName="cast_time" Type="float" />
<Data ElementName="spell_level" Type="int8" />
</Struct>
<Struct Name="WS_HearCastSpell" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellCastCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target" Type="int32" />
</Data>
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="spell_visual" Type="int16" />
<Data ElementName="cast_time" Type="float" />
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Data ElementName="spell_level" Type="int8" />
</Struct>
<Struct Name="WS_HearCastSpell" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellCastCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target" Type="int32" />
</Data>
2020-02-28 07:17:24 -07:00
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="spell_visual" Type="int32" />
<Data ElementName="cast_time" Type="float" />
<Data ElementName="spell_level" Type="int16" />
<Data ElementName="spell_tier" Type="int8" />
</Struct>
<Struct Name="WS_HearCastSpell" ClientVersion="57080" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellCastCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target" Type="int32" />
</Data>
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="spell_visual" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="cast_time" Type="float" />
<Data ElementName="spell_level" Type="int16" />
<Data ElementName="spell_tier" Type="int8" />
</Struct>
<Struct Name="WS_StartCastSpell" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSpellCastStartCmd">
<Data ElementName="cast_time" Type="float" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_FinishCastSpell" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqSpellCastEndCmd">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_QuickBarInit" ClientVersion="1" OpcodeName="OP_QuickbarInitMsg" >
<Data ElementName="num_abilities" Type="int32" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="hotbar" Type="int32" Size="1" />
<Data ElementName="version" Type="int32" Size="1" />
<Data ElementName="slot" Type="int32" Size="1" />
<Data ElementName="type" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text2" Type="EQ2_16Bit_String" Size="1" />
</Data>
</Struct>
<Struct Name="WS_QuickBarInit" ClientVersion="546" OpcodeName="OP_QuickbarInitMsg" >
2020-02-28 07:17:24 -07:00
<Data ElementName="num_abilities" Type="int32" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="hotbar" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="slot" Type="int32" Size="1" />
<Data ElementName="type" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unique_id" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown3" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_QuickBarInit" ClientVersion="1144" OpcodeName="OP_QuickbarInitMsg" >
<Data ElementName="1144unknown" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int32" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="hotbar" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="slot" Type="int32" Size="1" />
<Data ElementName="type" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon_type" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="unique_id" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown3" Type="int16" />
</Data>
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="1">
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 255=quest reward, 0=enemy mastery, 1=specialized training,2=character trait, 3=racial tradition -->
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_unknown" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="reward_unknown" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="546">
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 255=quest reward, 0=enemy mastery, 1=specialized training,2=character trait, 3=racial tradition -->
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="1096">
<Data ElementName="unknown8" Type="int8" Size="2" />
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="1188">
<Data ElementName="unknown8" Type="int8" Size="4" />
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="8" />
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="58617">
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- New in 60174, the first int32 is always 0x00004E20 (20,000) -->
<Data ElementName="unknown9a" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="60114">
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- New in 60174, the first int32 is always 0x00004E20 (20,000) -->
<Data ElementName="unknown9a" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="60174">
<Data ElementName="unknown8a" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- New in 60174, the first int32 is always 0x00004E20 (20,000) -->
<Data ElementName="unknown9a" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="63167">
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- New in 60174, the first int32 is always 0x00004E20 (20,000) -->
<Data ElementName="unknown9a" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="Substruct_JournalRewardData" ClientVersion="66157">
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- New in 60174, the first int32 is always 0x00004E20 (20,000) -->
<Data ElementName="unknown9a" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_EntityVerbsRequest" ClientVersion="1" OpcodeName="OP_EntityVerbsRequestMsg" >
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_EntityVerbsResponse" ClientVersion="1" OpcodeName="OP_EntityVerbsReplyMsg" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_verbs" Type="int8" />
<Data ElementName="verbs_array" Type="Array" ArraySizeVariable="num_verbs">
<Data ElementName="command" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="distance" Type="float" />
<Data ElementName="display_error" Type="int16" />
<Data ElementName="error" Type="EQ2_16Bit_String" Size="1" IfVariableSet="display_error_0" />
<Data ElementName="display_text" Type="EQ2_16Bit_String" Size="1" />
</Data>
</Struct>
<Struct Name="WS_WhoQueryReply" ClientVersion="1" OpcodeName="OP_WhoQueryReplyMsg" >
<Data ElementName="account_id" Type="int32" />
<Data ElementName="response" Type="int8" />
<Data ElementName="num_characters" Type="int8" />
<Data ElementName="characters_array" Type="Array" ArraySizeVariable="num_characters">
<Data ElementName="char_name" Type="char" Size="16" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="admin_level" Type="int8" Size="1" />
<Data ElementName="class" Type="int8" Size="1" />
<Data ElementName="race" Type="int8" Size="1" />
<Data ElementName="flags" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="3" />
<Data ElementName="char_account_id" Type="int32" />
<Data ElementName="zone" Type="char" Size="80" />
</Data>
<Data ElementName="unknown10" Type="int8" />
</Struct>
<Struct Name="WS_WhoQueryReply" ClientVersion="546" OpcodeName="OP_WhoQueryReplyMsg" >
<Data ElementName="account_id" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int32" />
<Data ElementName="response" Type="int8" />
<Data ElementName="num_characters" Type="int8" />
<Data ElementName="characters_array" Type="Array" ArraySizeVariable="num_characters">
<Data ElementName="char_name" Type="char" Size="40" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="admin_level" Type="int8" Size="1" />
<Data ElementName="class" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="race" Type="int8" Size="1" />
<Data ElementName="flags" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Data ElementName="zone" Type="char" Size="80" />
<Data ElementName="unknown6" Type="int8" Size="28" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown10" Type="int8" />
</Struct>
<Struct Name="WS_WhoQueryReply" ClientVersion="1188" OpcodeName="OP_WhoQueryReplyMsg" >
<Data ElementName="account_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="response" Type="int8" />
<Data ElementName="num_characters" Type="int8" />
<Data ElementName="characters_array" Type="Array" ArraySizeVariable="num_characters">
<Data ElementName="char_name" Type="char" Size="40" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="admin_level" Type="int8" Size="1" />
<Data ElementName="class" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="race" Type="int8" Size="1" />
<Data ElementName="flags" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="zone" Type="char" Size="77" />
<Data ElementName="guild" Type="char" Size="40" />
<Data ElementName="unknown7" Type="int8" />
</Data>
<Data ElementName="unknown10" Type="int8" />
</Struct>
<Struct Name="WS_HearChat" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearChatCmd" >
<Data ElementName="understood" Type="int8" />
<Data ElementName="from_spawn_id" Type="int32" />
<Data ElementName="to_spawn_id" Type="int32" />
<Data ElementName="from" Type="EQ2_16Bit_String" />
<Data ElementName="to" Type="EQ2_16Bit_String" />
<Data ElementName="channel" Type="int8" />
<Data ElementName="language" Type="int8" />
<Data ElementName="message" Type="EQ2_16Bit_String" />
<Data ElementName="channel_name" Type="EQ2_8Bit_String" />
<Data ElementName="show_bubble" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_HearChat" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearChatCmd" >
<Data ElementName="unknown" Type="int16" />
<Data ElementName="from_spawn_id" Type="int32" />
<Data ElementName="to_spawn_id" Type="int32" />
<Data ElementName="from" Type="EQ2_16Bit_String" />
<Data ElementName="to" Type="EQ2_16Bit_String" />
<Data ElementName="channel" Type="int8" />
<Data ElementName="language" Type="int8" />
<Data ElementName="message" Type="EQ2_16Bit_String" />
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
<Data ElementName="show_bubble" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_HearChat" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearChatCmd" >
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown" Type="int16" />
<Data ElementName="from_spawn_id" Type="int32" />
<Data ElementName="to_spawn_id" Type="int32" />
<Data ElementName="from" Type="EQ2_16Bit_String" />
<Data ElementName="to" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int8" Size="6" />
<Data ElementName="time" Type="int32" />
<Data ElementName="channel" Type="int8" />
<Data ElementName="language" Type="int8" />
<Data ElementName="message" Type="EQ2_16Bit_String" />
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
<Data ElementName="show_bubble" Type="int8" Size="1" />
<Data ElementName="understood" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_HearChat" ClientVersion="57080" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearChatCmd" >
<Data ElementName="unknown" Type="int16" />
<Data ElementName="from_spawn_id" Type="int32" />
<Data ElementName="to_spawn_id" Type="int32" />
<Data ElementName="from" Type="EQ2_16Bit_String" />
<Data ElementName="to" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int8" Size="6" />
<Data ElementName="time" Type="int32" />
<Data ElementName="channel" Type="int8" />
<Data ElementName="language" Type="int8" />
<Data ElementName="message" Type="EQ2_16Bit_String" />
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
<Data ElementName="show_bubble" Type="int8" Size="1" />
<Data ElementName="understood" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_StoppedLooting" ClientVersion="1" OpcodeName="OP_StoppedLootingMsg" >
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_CloseWindow" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCloseWindowCmd" >
2020-02-28 07:17:24 -07:00
<Data ElementName="window_id" Type="int16" />
<Data ElementName="index" Type="int8" />
</Struct>
<Struct Name="WS_UpdateLoot" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateLootCmd" >
<Data ElementName="loot_count" Type="int16" />
<Data ElementName="loot_array" Type="Array" ArraySizeVariable="loot_count">
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="item_id" Type="int32" />
<Data ElementName="count" Type="int16" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="ability_id" Type="int32" />
<Data ElementName="req_level" Type="int8" />
<Data ElementName="rec_level" Type="int8" />
</Data>
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="int32" />
<Data ElementName="object_id" Type="int32" />
</Struct>
<Struct Name="WS_UpdateLoot" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateLootCmd" >
<Data ElementName="loot_count" Type="int16" />
<Data ElementName="loot_array" Type="Array" ArraySizeVariable="loot_count">
<Data ElementName="loot_id" Type="int32" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="display" Type="int8" />
<Data ElementName="loot_type" Type="int32" /> <!-- 0=selected member, 1=regular, 2=lotto -->
<Data ElementName="lotto_timeout" Type="int32" />
<Data ElementName="spawn_id" Type="int32"/>
</Struct>
<Struct Name="WS_UpdateLoot" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateLootCmd" >
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_count" Type="int16" />
<Data ElementName="display" Type="int8" />
<Data ElementName="loot_type" Type="int32" />
<Data ElementName="lotto_timeout" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_id" Type="int32" />
</Struct>
<Struct Name="WS_UpdateLoot" ClientVersion="882" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateLootCmd" >
<Data ElementName="loot_count" Type="int16" />
<Data ElementName="display" Type="int16" />
<Data ElementName="loot_type" Type="int32" />
<Data ElementName="lotto_timeout" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_id" Type="int32" />
</Struct>
<Struct Name="WS_UpdateLoot" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateLootCmd" >
<Data ElementName="loot_count" Type="int16" />
<Data ElementName="display" Type="int8" />
<Data ElementName="unknown_605_1_MJ" Type="int8" />
<Data ElementName="loot_type" Type="int32" />
<Data ElementName="lotto_timeout" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_id" Type="int32" />
</Struct>
<Struct Name="WS_LootItem" ClientVersion="1" OpcodeName="OP_LootItemsRequestMsg" >
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_id" Type="int32" />
<Data ElementName="loot_all" Type="int8" />
<Data ElementName="item_count" Type="int8" IfVariableNotSet="loot_all"/>
<Data ElementName="item_list" Type="Array" ArraySizeVariable="item_count" IfVariableNotSet="loot_all">
<Data ElementName="item_id" Type="int32" IfVariableNotSet="loot_all"/>
</Data>
<Data ElementName="target_id" Type="int32" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_LootItem" ClientVersion="546" OpcodeName="OP_LootItemsRequestMsg" >
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_id" Type="int32" />
<Data ElementName="loot_all" Type="int8" />
<Data ElementName="item_count" Type="int8" IfVariableNotSet="loot_all"/>
<Data ElementName="item_list" Type="Array" ArraySizeVariable="item_count" IfVariableNotSet="loot_all">
<Data ElementName="item_id" Type="int32" IfVariableNotSet="loot_all"/>
</Data>
<Data ElementName="target_id" Type="int32" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_LootItem" ClientVersion="882" OpcodeName="OP_LootItemsRequestMsg" >
<Data ElementName="loot_id" Type="int32" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="loot_all" Type="int8" />
<Data ElementName="item_count" Type="int8" IfVariableNotSet="loot_all"/>
<Data ElementName="item_list" Type="Array" ArraySizeVariable="item_count" IfVariableNotSet="loot_all">
<Data ElementName="item_id" Type="int32" IfVariableNotSet="loot_all"/>
</Data>
<Data ElementName="button_clicked" Type="int8" />
<Data ElementName="target_id" Type="int32" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_UpdateBank" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateBankCmd" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="bank_coins" Type="int32" />
<Data ElementName="bank_coins2" Type="int32" />
<Data ElementName="copper" Type="int32" />
<Data ElementName="silver" Type="int32" />
<Data ElementName="gold" Type="int32" />
<Data ElementName="plat" Type="int32" />
<Data ElementName="display" Type="int8" />
</Struct>
<Struct Name="WS_UpdateBank" ClientVersion="882" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateBankCmd" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="bank_coins" Type="int32" />
<Data ElementName="bank_coins2" Type="int32" />
<Data ElementName="shared_bank_coins" Type="int32" />
<Data ElementName="shared_bank_coins2" Type="int32" />
<Data ElementName="copper" Type="int32" />
<Data ElementName="silver" Type="int32" />
<Data ElementName="gold" Type="int32" />
<Data ElementName="plat" Type="int32" />
<Data ElementName="display" Type="int8" />
</Struct>
<Struct Name="WS_QuestJournalUpdate" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalUpdateCmd" >
<Data ElementName="num_quests" Type="int16" />
<Data ElementName="quests_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="journal_updated" Type="int8" Size="1" />
<Data ElementName="turned_in" Type="int8" Size="1" />
<Data ElementName="repeatable" Type="int8" Size="1" />
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="5" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="visible" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="visible_quest_id" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalUpdate" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalUpdateCmd" >
<Data ElementName="num_quests" Type="int16" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quests_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="journal_updated" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="turned_in" Type="int8" Size="1" />
<Data ElementName="repeatable" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="visible" Type="int8" Size="1" />
</Data>
<Data ElementName="quest_updated" Type="int8" Size="1" />
<Data ElementName="collapsed" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="visible_quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="used_quests" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalUpdate" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalUpdateCmd" >
2020-02-28 07:17:24 -07:00
<Data ElementName="num_quests" Type="int16" />
<Data ElementName="quests_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="journal_updated" Type="int8" Size="1" />
<Data ElementName="turned_in" Type="int8" Size="1" />
<Data ElementName="repeatable" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="visible" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="visible_quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="used_quests" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalUpdate" ClientVersion="931" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalUpdateCmd" >
2020-02-28 07:17:24 -07:00
<Data ElementName="num_quest_zones" Type="int16" />
<Data ElementName="quest_zones_array" Type="Array" ArraySizeVariable="num_quest_zones">
<Data ElementName="quest_zones_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_zones_zone_id" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_quests" Type="int16" />
<Data ElementName="quests_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zonetype_id" Type="int16" Size="1" />
<Data ElementName="zone_id" Type="int16" Size="1" />
<Data ElementName="display_status" Type="int8" Size="1" />
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="repeatable" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="visible_quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="used_quests" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalUpdate" ClientVersion="1028" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalUpdateCmd">
2020-02-28 07:17:24 -07:00
<Data ElementName="num_quest_zones" Type="int16" />
<Data ElementName="quest_zones_array" Type="Array" ArraySizeVariable="num_quest_zones">
<Data ElementName="quest_zones_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_zones_zone_id" Type="int16" Size="1" />
</Data>
<Data ElementName="num_quests" Type="int16" />
<Data ElementName="quests_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zonetype_id" Type="int16" Size="1" />
<Data ElementName="zone_id" Type="int16" Size="1" />
<Data ElementName="display_status" Type="int8" Size="1" />
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="repeatable" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="visible_quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="used_quests" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalUpdate" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalUpdateCmd">
<Data ElementName="num_quest_zones" Type="int16" />
<Data ElementName="quest_zones_array" Type="Array" ArraySizeVariable="num_quest_zones">
<Data ElementName="quest_zones_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_zones_zone_id" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_quests" Type="int16" />
<Data ElementName="quests_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zonetype_id" Type="int16" Size="1" />
<Data ElementName="zone_id" Type="int16" Size="1" />
<Data ElementName="display_status" Type="int8" Size="1" />
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="repeatable" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="visible_quest_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="used_quests" Type="int16" Size="1" />
<Data ElementName="unknown4a" Type="int8" Size="1" />
<Data ElementName="max_quests" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_OfferQuest" ClientVersion="1" OpcodeName="OP_OfferQuestMsg" >
<Data ElementName="unknown" Type="int8" Size="11" />
2020-02-28 07:17:24 -07:00
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="title" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="quest_difficulty" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="accept_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="decline_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_OfferQuest" ClientVersion="547" OpcodeName="OP_OfferQuestMsg" >
<Data ElementName="unknown0" Type="int8" Size="1" />
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_difficulty" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="accept_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="decline_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="verify_enabled" Type="int32" Size="1" />
<Data ElementName="verify_text" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="unknown4b" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_OfferQuest" ClientVersion="860" OpcodeName="OP_OfferQuestMsg" >
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_difficulty" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="accept_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="decline_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="verify_enabled" Type="int32" Size="1" />
<Data ElementName="verify_text" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="unknown4b" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_OfferQuest" ClientVersion="1193" OpcodeName="OP_OfferQuestMsg" >
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_difficulty" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown4a" Type="int8" />
<Data ElementName="accept_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="decline_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="verify_enabled" Type="int32" Size="1" />
<Data ElementName="verify_text" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="unknown4b" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_OfferQuest" ClientVersion="1208" OpcodeName="OP_OfferQuestMsg" >
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_difficulty" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown4a" Type="int8" />
<Data ElementName="accept_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="decline_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="verify_enabled" Type="int32" Size="1" />
<Data ElementName="verify_text" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="unknown4b" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_OfferQuest" ClientVersion="60114" OpcodeName="OP_OfferQuestMsg" >
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="quest_difficulty" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="unknown" Type="int8" Size="8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown4a" Type="int8" />
<Data ElementName="accept_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="decline_command" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="verify_enabled" Type="int32" Size="1" />
<Data ElementName="verify_text" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="unknown4b" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_GlowPath" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHelpPathCmd" >
<Data ElementName="num_points" Type="int16" />
<Data ElementName="points_array" Type="Array" ArraySizeVariable="num_points">
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
</Data>
<Data ElementName="waypoint_x" Type="float" Size="1" />
<Data ElementName="waypoint_y" Type="float" Size="1" />
<Data ElementName="waypoint_z" Type="float" Size="1" />
</Struct>
<Struct Name="WS_GlowPath" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHelpPathCmd" >
<Data ElementName="num_points" Type="int16" />
<Data ElementName="points_array" Type="Array" ArraySizeVariable="num_points">
<Data ElementName="x" Type="float" Size="1" />
<Data ElementName="y" Type="float" Size="1" />
<Data ElementName="z" Type="float" Size="1" />
</Data>
<Data ElementName="waypoint_x" Type="float" Size="1" />
<Data ElementName="waypoint_y" Type="float" Size="1" />
<Data ElementName="waypoint_z" Type="float" Size="1" />
<Data ElementName="waypoint_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_WaypointUpdate" ClientVersion="1" OpcodeName="OP_WaypointUpdateMsg">
<Data ElementName="num_updates" Type="int32" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="waypoint_name" Type="EQ2_16Bit_string" />
<Data ElementName="waypoint_category" Type="int8" />
<Data ElementName="spawn_id" Type="int32" />
</Data>
2020-10-21 19:21:45 -06:00
<Data ElementName="unknown" Type="int32" />
</Struct>
<Struct Name="WS_WaypointUpdate" ClientVersion="547" OpcodeName="OP_WaypointUpdateMsg">
<Data ElementName="num_updates" Type="int32" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="waypoint_name" Type="EQ2_16Bit_string" />
<Data ElementName="waypoint_category" Type="int8" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="waypoint_category2" Type="int8" />
<Data ElementName="spawn_id2" Type="int32" />
</Data>
</Struct>
<Struct Name="WS_WaypointSelect" ClientVersion="1" OpcodeName="OP_WaypointSelectMsg">
<Data ElementName="selection" Type="int32" />
</Struct>
<Struct Name="WS_WaypointSelect" ClientVersion="547" OpcodeName="OP_WaypointSelectMsg">
<Data ElementName="num_selections" Type="int32" />
<Data ElementName="selection_array" Type="Array" ArraySizeVariable="num_selections">
<Data ElementName="waypoint_name" Type="EQ2_16Bit_string" />
<Data ElementName="waypoint_category" Type="int8" />
<Data ElementName="entry_id" Type="int32" />
</Data>
<Data ElementName="unknown" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="timer_start" Type="int32" Size="1" />
<Data ElementName="time_obtained" Type="int32" Size="1" />
<Data ElementName="timer_duration" Type="int16" Size="1" />
<Data ElementName="timer_running" Type="int8" Size="1" /> <!-- start timer counting up -->
<Data ElementName="timer_countdown" Type="int8" Size="1" /> <!-- count down instead of counting up -->
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="group_completed" Type="int8" Size="1" />
<Data ElementName="group_iteration" Type="int16" Size="1" /> <!-- 264:1 -->
<Data ElementName="repeatable" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="waypoint" Type="int32" Size="1" />
</Data>
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="journal_updated" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="test7" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="test8" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_obtained" Type="int32" Size="1" />
<Data ElementName="timer_duration" Type="int16" Size="1" />
<Data ElementName="timer_running" Type="int8" Size="1" /> <!-- start timer counting up -->
<Data ElementName="timer_countdown" Type="int8" Size="1" /> <!-- count down instead of counting up -->
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="waypoint" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="journal_updated" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="unknown6" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="8" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="8" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="2" />
<Data ElementName="unknown8b" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown11" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="860" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="8" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="996" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="9" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="8" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="1028" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="9" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="8" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="Substruct_MapData" ClientVersion="58617">
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="Substruct_MapData" ClientVersion="60114">
<Data ElementName="map_data_array_size" Type="int8" IfVariableSet="unknown5bxxx" />
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="Substruct_MapData" ClientVersion="60174">
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="Substruct_MapData" ClientVersion="63167">
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="Substruct_MapData" ClientVersion="66157">
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown_66157_1_MJ1" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_QuestJournalReply" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<!-- The following element should never make it into the packet, make sure the IfVariableSet is set to a variable that is never set -->
<Data ElementName="map_data_array_size" Type="int8" IfVariableSet="unknown5b" />
<Data ElementName="map_data_array" Type="Array" ArraySizeVariable="map_data_array_size" IfVariableNotSet="complete">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_update_locs" Type="int16" Size="1" />
<Data ElementName="update_locs_array" Type="Array" ArraySizeVariable="num_update_locs">
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
</Data>
<Data ElementName="unknown5b" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<!-- The following element should never make it into the packet, make sure the IfVariableSet is set to a variable that is never set -->
<Data ElementName="map_data_array_size" Type="int8" IfVariableSet="unknown5b" />
<Data ElementName="map_data_array" Type="Array" ArraySizeVariable="map_data_array_size" IfVariableNotSet="complete">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_update_locs" Type="int16" Size="1" />
<Data ElementName="update_locs_array" Type="Array" ArraySizeVariable="num_update_locs">
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
</Data>
<Data ElementName="unknown5b" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="58617" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<!-- uncomment following line for ANAL comment for live emu-->
<Data ElementName="map_data" Substruct="Substruct_MapData" />
<!-- uncomment following array for EMU comment for ANAL emu -->
<!-- <Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data> -->
</Data>
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="usable_item_count" Type="int16" Size="1" />
<Data ElementName="usable_item_array" Type="Array" ArraySizeVariable="usable_item_count">
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="item_unique_id" Type="int32" Size="1" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 0 -->
<Data ElementName="unknown2" Type="int32" Size="1" /> <!-- FF FF FF FF -->
</Data>
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<!-- uncomment following line for ANAL comment for live emu-->
<!-- <Data ElementName="map_data" Substruct="Substruct_MapData" />-->
<!-- uncomment following array for EMU comment for ANAL emu -->
<Data ElementName="map_data_array_size" Type="int8" IfVariableSet="unknown5bxxx" />
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_tasks">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Data>
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="usable_item_count" Type="int16" Size="1" />
<Data ElementName="usable_item_array" Type="Array" ArraySizeVariable="usable_item_count">
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="item_unique_id" Type="int32" Size="1" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 0 -->
<Data ElementName="unknown2" Type="int32" Size="1" /> <!-- FF FF FF FF -->
</Data>
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="60174" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Data>
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="usable_item_count" Type="int16" Size="1" />
<Data ElementName="usable_item_array" Type="Array" ArraySizeVariable="usable_item_count">
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="item_unique_id" Type="int32" Size="1" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 0 -->
<Data ElementName="unknown2" Type="int32" Size="1" /> <!-- FF FF FF FF -->
</Data>
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="63167" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data>
</Data>
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8a" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="usable_item_count" Type="int16" Size="1" />
<Data ElementName="usable_item_array" Type="Array" ArraySizeVariable="usable_item_count">
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="item_unique_id" Type="int32" Size="1" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 0 -->
<Data ElementName="unknown2" Type="int32" Size="1" /> <!-- FF FF FF FF -->
</Data>
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply" ClientVersion="66157" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="time_stamp" Type="int32" Size="1" />
<Data ElementName="unknown_66157_1_MJ" Type="int8" Size="5" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="complete" Type="int8" Size="1" />
<Data ElementName="complete2" Type="int8" Size="1" />
<Data ElementName="complete3" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="deletable" Type="int8" Size="1" />
<Data ElementName="shareable" Type="int8" Size="1" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="display_quest_helper" Type="int8" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<!-- uncomment following line for ANAL comment for live emu-->
<Data ElementName="map_data" Substruct="Substruct_MapData" />
<!-- uncomment following array for EMU comment for ANAL emu -->
<!-- <Data ElementName="map_array" Type="array" ArraySizeVariable="num_updates">
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="map_unknown_66157_1_MJ1" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="loc_x" Type="float" Size="1" />
<Data ElementName="loc_y" Type="float" Size="1" />
<Data ElementName="loc_z" Type="float" Size="1" />
</Data>
</Data> -->
</Data>
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8a" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="usable_item_count" Type="int16" Size="1" />
<Data ElementName="usable_item_array" Type="Array" ArraySizeVariable="usable_item_count">
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="item_unique_id" Type="int32" Size="1" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" /> <!-- 0 -->
<Data ElementName="unknown2" Type="int32" Size="1" /> <!-- FF FF FF FF -->
</Data>
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" IfVariableNotSet="complete" />
<Data ElementName="classic_eq_sound" Type="int8" Size="1" IfVariableSet="complete" />
<Data ElementName="unknown12b" Type="int8" Size="8" IfVariableSet="complete" />
</Struct>
<Struct Name="WS_QuestJournalReply_PARSER_ONLY" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="8" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="8" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="2" />
<Data ElementName="unknown8b" Type="int8" Size="1" />
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestJournalReply_PARSER_ONLY" ClientVersion="860" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqQuestJournalReplyCmd" >
<Data ElementName="quest_id" Type="int32" Size="1" />
<Data ElementName="player_crc" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="complete_header" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="day" Type="int8" Size="1" />
<Data ElementName="month" Type="int8" Size="1" />
<Data ElementName="year" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="unknown2b" Type="int8" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="8" />
<Data ElementName="task_groups_completed" Type="int16" Size="1" />
<Data ElementName="num_task_groups" Type="int16" />
<Data ElementName="task_group_array" Type="Array" ArraySizeVariable="num_task_groups">
<Data ElementName="task_group" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_tasks" Type="int16" />
<Data ElementName="task_array" Type="Array" ArraySizeVariable="num_tasks">
<Data ElementName="task" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="task_completed" Type="int8" Size="1" />
</Data>
<Data ElementName="num_updates" Type="int16" />
<Data ElementName="update_array" Type="Array" ArraySizeVariable="num_updates">
<Data ElementName="index" Type="int8" Size="1" />
<Data ElementName="update_countval" Type="int8" Size="1" />
<Data ElementName="update_currentval" Type="int16" Size="1" />
<Data ElementName="update_maxval" Type="int16" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="update_target_name" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown5" Type="int8" Size="2" />
<Data ElementName="update" Type="int8" Size="1" />
<Data ElementName="bullets" Type="int8" Size="1" />
<Data ElementName="update_taskgroup_number" Type="int16" Size="1" />
<Data ElementName="update_task_number" Type="int16" Size="1" />
<Data ElementName="onscreen_update" Type="int8" Size="1" />
<Data ElementName="onscreen_update_count" Type="int16" Size="1" />
<Data ElementName="onscreen_update_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_text2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="onscreen_update_icon" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="2" />
<Data ElementName="reward" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="7" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CollectionUpdate" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCollectionUpdateCmd" >
<Data ElementName="num_collections" Type="int16" />
<Data ElementName="collection_array" Type="Array" ArraySizeVariable="num_collections">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="collection_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="collection_category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="ready_to_turn_in" Type="int8" Size="1" />
<Data ElementName="collection_id" Type="int32" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Data ElementName="item_flag" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
</Data>
<Data ElementName="new_collection_flag" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CollectionUpdate" ClientVersion="839" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCollectionUpdateCmd" >
<Data ElementName="num_collections" Type="int16" />
<Data ElementName="collection_array" Type="Array" ArraySizeVariable="num_collections">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="collection_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="collection_category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="ready_to_turn_in" Type="int8" Size="1" />
<Data ElementName="collection_id" Type="int32" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="item_flag" Type="int8" Size="1" />
</Data>
</Data>
<Data ElementName="new_collection_flag" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CollectionUpdate" ClientVersion="955" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCollectionUpdateCmd" >
<Data ElementName="num_collections" Type="int16" />
<Data ElementName="collection_array" Type="Array" ArraySizeVariable="num_collections">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="collection_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="collection_category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="completed" Type="int8" Size="1" />
<Data ElementName="ready_to_turn_in" Type="int8" Size="1" />
<Data ElementName="collection_id" Type="int32" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_flag" Type="int8" Size="1" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="item_id" Type="sint32" Size="1" />
<Data ElementName="item_crc" Type="sint32" Size="1" />
</Data>
</Data>
<Data ElementName="new_collection_flag" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CollectionItem" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCollectionItemCmd" >
<Data ElementName="collection_id" Type="int32" Size="1" />
<Data ElementName="collection_item_num" Type="int8" Size="1" />
<Data ElementName="add" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CollectionFilter" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqCollectionFilterCmd" >
<Data ElementName="num_filters" Type="int16" Size="1" />
<Data ElementName="filter_array" Type="Array" ArraySizeVariable="num_filters">
<Data ElementName="collection_id" Type="int32" Size="1" />
<Data ElementName="collection_item_num" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="item_icon" Type="int16" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="discovered" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestComplete" ClientVersion="1" OpcodeName="OP_QuestReward" >
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="int8" Size="2" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown3" Type="int8" Size="2" />
</Struct>
<Struct Name="WS_QuestComplete" ClientVersion="1096" OpcodeName="OP_QuestReward" >
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_QuestComplete" ClientVersion="60114" OpcodeName="OP_QuestReward" >
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- Showed up in 60174, always seems to be 0x00004E20 (20,000) -->
<Data ElementName="unknown1" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestComplete" ClientVersion="60174" OpcodeName="OP_QuestReward" >
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="difficulty" Type="int8" Size="1" />
<Data ElementName="encounter_level" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="max_coin" Type="int64" Size="1" />
<Data ElementName="min_coin" Type="int64" Size="1" />
<!-- Showed up in 60174, always seems to be 0x00004E20 (20,000) -->
<Data ElementName="unknown1" Type="int32" Size="2" />
<Data ElementName="status_points" Type="int32" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="exp_bonus" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="num_select_rewards" Type="int32" Size="1" />
<Data ElementName="select_rewards_array" Type="Array" ArraySizeVariable="num_select_rewards">
<Data ElementName="select_reward_id" Type="int32" Size="1" />
<Data ElementName="select_item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int32" />
<Data ElementName="rewards_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_id" Type="int32" Size="1" />
<Data ElementName="item" Type="EQ2_Item" Size="1" />
</Data>
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_QuestFactionRewards" ClientVersion="1" >
<Data ElementName="num_factions" Type="int8" />
<Data ElementName="factions_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="amount" Type="sint32" Size="1" />
</Data>
<Data ElementName="unknown11" Type="int8" Size="7" />
</Struct>
<Struct Name="WS_DialogOpen" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDialogOpenCmd" >
<Data ElementName="conversation_id" Type="int32" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_responses" Type="int16" />
<Data ElementName="response_array" Type="Array" ArraySizeVariable="num_responses">
<Data ElementName="response" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="closeable" Type="int8" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="voice" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="key1" Type="int32" Size="1" />
<Data ElementName="key2" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_DialogOpen" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDialogOpenCmd" >
<Data ElementName="conversation_id" Type="int32" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_responses" Type="int16" />
<Data ElementName="response_array" Type="Array" ArraySizeVariable="num_responses">
<Data ElementName="response" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="closeable" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="voice" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="language" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="key1" Type="int32" Size="1" />
<Data ElementName="key2" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_DialogOpen" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDialogOpenCmd" >
<Data ElementName="conversation_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_responses" Type="int16" />
<Data ElementName="response_array" Type="Array" ArraySizeVariable="num_responses">
<Data ElementName="response" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="enable_blue_ui" Type="int8" />
<Data ElementName="can_close" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="voice" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="language" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="key1" Type="int32" Size="1" />
<Data ElementName="key2" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_DialogSelect" ClientVersion="1" OpcodeName="OP_DialogSelectMsg" >
<Data ElementName="conversation_id" Type="int32" />
<Data ElementName="response" Type="int32" />
</Struct>
<Struct Name="WS_DialogClose" ClientVersion="1" OpcodeName="OP_DialogCloseMsg" >
<Data ElementName="conversation_id" Type="int32" />
</Struct>
<Struct Name="WS_ServerDialogClose" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDialogCloseCmd" >
<Data ElementName="conversation_id" Type="int32" />
</Struct>
<Struct Name="WS_FactionUpdate" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqFactionUpdateCmd" >
<Data ElementName="num_factions" Type="int16" />
<Data ElementName="response_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_id" Type="int32" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="EQ2_16Bit_String" />
<Data ElementName="con" Type="sint8" />
<Data ElementName="percentage" Type="int8" />
<Data ElementName="value" Type="sint32" />
</Data>
<Data ElementName="unknown3" Type="int8" />
</Struct>
<Struct Name="WS_FactionUpdate" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqFactionUpdateCmd" >
<Data ElementName="num_factions" Type="int16" />
2020-02-28 07:17:24 -07:00
<Data ElementName="response_array" Type="Array" ArraySizeVariable="num_factions">
<Data ElementName="faction_id" Type="int32" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="EQ2_16Bit_String" />
<Data ElementName="con" Type="sint8" />
<Data ElementName="percentage" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="value" Type="sint32" />
</Data>
<Data ElementName="unknown3" Type="int8" />
</Struct>
<Struct Name="WS_Interrupt" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellInterruptCmd" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target_id" Type="int32" />
</Data>
<Data ElementName="spell_id" Type="int32" />
</Struct>
<Struct Name="WS_SpellNoLand" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellNoLandCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target" Type="int32" />
</Data>
<Data ElementName="spell_id" Type="int32" />
</Struct>
2021-03-06 15:32:07 -07:00
<Struct Name="WS_SpellFizzle" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqHearSpellFizzleCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_targets" Type="int16" />
<Data ElementName="target_array" Type="Array" ArraySizeVariable="num_targets">
<Data ElementName="target" Type="int32" />
</Data>
<Data ElementName="spell_id" Type="int32" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_DisplaySpellFailed" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDisplaySpellFailCmd" >
<Data ElementName="error_code" Type="int16" />
</Struct>
<Struct Name="WS_DisplaySpellFailed" ClientVersion="1199" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqDisplaySpellFailCmd" >
<Data ElementName="error_code" Type="int8" />
<Data ElementName="unknown" Type="int8" />
</Struct>
<Struct Name="WS_FogInit" ClientVersion="546" OpcodeName="OP_MapFogDataInitMsg" >
<Data ElementName="lowest_z" Type="float" />
<Data ElementName="highest_z" Type="float" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_FogInit" ClientVersion="942" OpcodeName="OP_MapFogDataInitMsg" >
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="map_id" Type="int32" />
<Data ElementName="lowest_z" Type="float" />
<Data ElementName="highest_z" Type="float" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="num_fog_locations" Type="int8" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_fog_locations">
<Data ElementName="fog_location_unknown1" Type="int32" />
<Data ElementName="fog_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog_location_bounds1_x" Type="float" />
<Data ElementName="fog_location_bounds1_z" Type="float" />
<Data ElementName="fog_location_bounds2_x" Type="float" />
<Data ElementName="fog_location_bounds2_z" Type="float" />
<Data ElementName="fog_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog_compressed_data_array" Type="Array" ArraySizeVariable="fog_compressed_size">
<Data ElementName="fog_compressed_data" Type="int8" />
</Data>
</Data>
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="num_fog2_locations" Type="int8" />
<Data ElementName="locations2_array" Type="Array" ArraySizeVariable="num_fog2_locations">
<Data ElementName="fog2_location_unknown1" Type="int32" />
<Data ElementName="fog2_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog2_location_bounds1_x" Type="float" />
<Data ElementName="fog2_location_bounds1_z" Type="float" />
<Data ElementName="fog2_location_bounds2_x" Type="float" />
<Data ElementName="fog2_location_bounds2_z" Type="float" />
<Data ElementName="fog2_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog2_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog2_compressed_data_array" Type="Array" ArraySizeVariable="fog2_compressed_size">
<Data ElementName="fog2_compressed_data" Type="int8" />
</Data>
</Data>
<Data ElementName="num_maps" Type="int8" />
<Data ElementName="map_array" Type="Array" ArraySizeVariable="num_maps">
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="explored_map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unexplored_map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="8" />
<Data ElementName="unknown7" Type="int32" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="map_bounds1_x" Type="float" />
<Data ElementName="map_bounds1_z" Type="float" />
<Data ElementName="map_bounds2_x" Type="float" />
<Data ElementName="map_bounds2_z" Type="float" />
<Data ElementName="map_bounds3_x" Type="float" />
<Data ElementName="map_bounds3_z" Type="float" />
<Data ElementName="map_bounds4_x" Type="float" />
<Data ElementName="map_bounds4_z" Type="float" />
<Data ElementName="unknown9" Type="int8" Size="9" />
<Data ElementName="explored_key" Type="int64" Size="1" />
<Data ElementName="unexplored_key" Type="int64" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_FogInit" ClientVersion="1096" OpcodeName="OP_MapFogDataInitMsg" >
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="map_id" Type="int32" />
<Data ElementName="lowest_z" Type="float" />
<Data ElementName="highest_z" Type="float" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="num_fog_locations" Type="int8" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_fog_locations">
<Data ElementName="fog_location_unknown1" Type="int32" />
<Data ElementName="fog_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog_location_bounds1_x" Type="float" />
<Data ElementName="fog_location_bounds1_z" Type="float" />
<Data ElementName="fog_location_bounds2_x" Type="float" />
<Data ElementName="fog_location_bounds2_z" Type="float" />
<Data ElementName="fog_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog_compressed_data_array" Type="Array" ArraySizeVariable="fog_compressed_size">
<Data ElementName="fog_compressed_data" Type="int8" />
</Data>
</Data>
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="num_fog2_locations" Type="int8" />
<Data ElementName="locations2_array" Type="Array" ArraySizeVariable="num_fog2_locations">
<Data ElementName="fog2_location_unknown1" Type="int32" />
<Data ElementName="fog2_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog2_location_bounds1_x" Type="float" />
<Data ElementName="fog2_location_bounds1_z" Type="float" />
<Data ElementName="fog2_location_bounds2_x" Type="float" />
<Data ElementName="fog2_location_bounds2_z" Type="float" />
<Data ElementName="fog2_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog2_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog2_compressed_data_array" Type="Array" ArraySizeVariable="fog2_compressed_size">
<Data ElementName="fog2_compressed_data" Type="int8" />
</Data>
</Data>
<Data ElementName="num_maps" Type="int8" />
<Data ElementName="map_array" Type="Array" ArraySizeVariable="num_maps">
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="explored_map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unexplored_map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="8" />
<Data ElementName="unknown7" Type="int32" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="map_bounds1_x" Type="float" />
<Data ElementName="map_bounds1_z" Type="float" />
<Data ElementName="map_bounds2_x" Type="float" />
<Data ElementName="map_bounds2_z" Type="float" />
<Data ElementName="map_bounds3_x" Type="float" />
<Data ElementName="map_bounds3_z" Type="float" />
<Data ElementName="map_bounds4_x" Type="float" />
<Data ElementName="map_bounds4_z" Type="float" />
<Data ElementName="unknown9" Type="int8" Size="9" />
<Data ElementName="explored_key" Type="int64" Size="1" />
<Data ElementName="unexplored_key" Type="int64" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_FogInit" ClientVersion="1142" OpcodeName="OP_MapFogDataInitMsg" >
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="map_id" Type="int32" />
<Data ElementName="lowest_z" Type="float" />
<Data ElementName="highest_z" Type="float" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="num_fog_locations" Type="int8" />
<Data ElementName="locations_array" Type="Array" ArraySizeVariable="num_fog_locations">
<Data ElementName="fog_location_unknown1" Type="int32" />
<Data ElementName="fog_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog_location_bounds1_x" Type="float" />
<Data ElementName="fog_location_bounds1_z" Type="float" />
<Data ElementName="fog_location_bounds2_x" Type="float" />
<Data ElementName="fog_location_bounds2_z" Type="float" />
<Data ElementName="fog_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog_compressed_data_array" Type="Array" ArraySizeVariable="fog_compressed_size">
<Data ElementName="fog_compressed_data" Type="int8" />
</Data>
</Data>
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="num_fog2_locations" Type="int8" />
<Data ElementName="locations2_array" Type="Array" ArraySizeVariable="num_fog2_locations">
<Data ElementName="fog2_location_unknown1" Type="int32" />
<Data ElementName="fog2_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog2_location_bounds1_x" Type="float" />
<Data ElementName="fog2_location_bounds1_z" Type="float" />
<Data ElementName="fog2_location_bounds2_x" Type="float" />
<Data ElementName="fog2_location_bounds2_z" Type="float" />
<Data ElementName="fog2_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog2_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog2_compressed_data_array" Type="Array" ArraySizeVariable="fog2_compressed_size">
<Data ElementName="fog2_compressed_data" Type="int8" />
</Data>
</Data>
<Data ElementName="num_maps" Type="int8" />
<Data ElementName="map_array" Type="Array" ArraySizeVariable="num_maps">
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="explored_map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unexplored_map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="8" />
<Data ElementName="unknown7" Type="int32" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="map_bounds1_x" Type="float" />
<Data ElementName="map_bounds1_z" Type="float" />
<Data ElementName="map_bounds2_x" Type="float" />
<Data ElementName="map_bounds2_z" Type="float" />
<Data ElementName="map_bounds3_x" Type="float" />
<Data ElementName="map_bounds3_z" Type="float" />
<Data ElementName="map_bounds4_x" Type="float" />
<Data ElementName="map_bounds4_z" Type="float" />
<Data ElementName="unknown9" Type="int8" Size="9" />
<Data ElementName="explored_key" Type="int64" Size="1" />
<Data ElementName="unexplored_key" Type="int64" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
</Data>
</Struct>
2020-07-25 21:54:04 -06:00
<Struct Name="WS_TintWidgetsMsg" ClientVersion="1" OpcodeName="OP_TintWidgetsMsg" >
<Data ElementName="object_id" Type="int32" />
<Data ElementName="tint_red" Type="int8" Size="1" />
<Data ElementName="tint_green" Type="int8" Size="1" />
<Data ElementName="tint_blue" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_SetRemoteCmdsMsg" ClientVersion="1" OpcodeName="OP_SetRemoteCmdsMsg" >
<Data ElementName="num_commands" Type="int16" />
<Data ElementName="commands_array" Type="Array" ArraySizeVariable="num_commands">
<Data ElementName="name" Type="EQ2_8Bit_String" Size="1" />
</Data>
</Struct>
<Struct Name="WS_RemoteCmdMsg" ClientVersion="1" OpcodeName="OP_RemoteCmdMsg" >
<Data ElementName="command_handler" Type="int16" />
<Data ElementName="arguments" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_RemoteCmdMsg" ClientVersion="1096" OpcodeName="OP_RemoteCmdMsg" >
<Data ElementName="command_handler" Type="int16" />
<Data ElementName="arguments" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
2020-07-25 21:54:04 -06:00
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int16" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
2020-07-25 21:54:04 -06:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="unknown7" Type="int8" Size="4" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="type" Type="int32" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int16" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="level" Type="int8" />
<Data ElementName="display_flags" Type="int8" /> <!-- 1==red -->
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="status2" Type="int32" Size="1" />
</Data>
<Data ElementName="type" Type="int8" /> <!-- 0==buy, 1==sell, 16==repair, 128==goblin game -->
<Data ElementName="unknown" Type="int8" Size="2" />
2020-07-25 21:54:04 -06:00
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
2020-02-28 07:17:24 -07:00
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int16" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="unknown7" Type="int8" Size="4" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="type" Type="int32" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int16" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="status2" Type="int32" Size="1" />
<Data ElementName="station_cash" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="2" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="type" Type="int32" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int16" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="status2" Type="int32" Size="1" />
<Data ElementName="station_cash" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="2" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="type" Type="int32" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="57080" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int32" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="status2" Type="int32" Size="1" />
<Data ElementName="station_cash" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="2" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
</Data>
<Data ElementName="type" Type="int32" />
<Data ElementName="unknown8" Type="int8" Size="43" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="60085" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int32" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status2" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="status" Type="int32" Size="1" />
<Data ElementName="station_cash" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="4" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="type" Type="int32" />
<Data ElementName="unknown8" Type="int8" Size="43" />
</Struct>
<Struct Name="WS_UpdateMerchant" ClientVersion="63119" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateMerchantCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_items" Type="int16" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="price" Type="int64" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="unique_item_id" Type="sint32" />
<Data ElementName="stack_size" Type="int32" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_difficulty" Type="int8" />
<Data ElementName="level" Type="int8" />
2021-03-06 15:32:07 -07:00
<Data ElementName="display_flags" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="quantity" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="status" Type="int32" />
<Data ElementName="item_id2" Type="sint32" />
<Data ElementName="stack_size2" Type="int16" />
<Data ElementName="unknown_mj1" Type="int16" />
<Data ElementName="status2" Type="int32" Size="1" />
<Data ElementName="station_cash" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="2" />
<Data ElementName="num_tokens" Type="int8" Size =" 1" />
<Data ElementName="token_array" Type="Array" ArraySizeVariable="num_tokens">
<Data ElementName="token_icon" Type="int16" Size =" 1" />
<Data ElementName="token_qty" Type="int16" Size =" 1" />
<Data ElementName="token_id" Type="sint32" Size =" 1" />
<Data ElementName="token_id2" Type="sint32" Size =" 1" />
<Data ElementName="token_name" Type="EQ2_16Bit_String" Size =" 1" />
</Data>
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="type" Type="int32" />
<Data ElementName="unknown8a" Type="int16" Size="20" />
<Data ElementName="unknown8b" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_TeleportList" ClientVersion="1" OpcodeName="OP_ShowZoneTeleporterDestinations">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_destinations" Type="int32" />
<Data ElementName="destination_array" Type="Array" ArraySizeVariable="num_destinations">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="display_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="cost" Type="int32" />
</Data>
</Struct>
<Struct Name="WS_TeleportList" ClientVersion="1045" OpcodeName="OP_ShowZoneTeleporterDestinations">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="num_destinations" Type="int32" />
<Data ElementName="destination_array" Type="Array" ArraySizeVariable="num_destinations">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="display_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_file_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int16" Size="4" />
<Data ElementName="zone_level_min" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="zone_level_max" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="cost" Type="int32" />
</Data>
</Struct>
<Struct Name="WS_TeleportList" ClientVersion="1096" OpcodeName="OP_ShowZoneTeleporterDestinations">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="num_destinations" Type="int32" />
<Data ElementName="destination_array" Type="Array" ArraySizeVariable="num_destinations">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="display_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_file_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_description" Type="EQ2_16Bit_String" />
<Data ElementName="map_x" Type="int32" Size="1" />
<Data ElementName="map_y" Type="int32" Size="1" />
<Data ElementName="zone_level_min" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="zone_level_max" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="cost" Type="int32" />
</Data>
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="current_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="current_map_x" Type="int32" Size="1" />
<Data ElementName="current_map_y" Type="int32" Size="1" />
<Data ElementName="unknown6" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_TeleportList" ClientVersion="57048" OpcodeName="OP_ShowZoneTeleporterDestinations">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="num_destinations" Type="int32" />
<Data ElementName="destination_array" Type="Array" ArraySizeVariable="num_destinations">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="display_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_file_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_destination" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="zone_file_name2" Type="EQ2_16Bit_String" />
<Data ElementName="zone_description" Type="EQ2_16Bit_String" />
<Data ElementName="destination_x" Type="float" Size="1" />
<Data ElementName="destination_y" Type="float" Size="1" />
<Data ElementName="destination_z" Type="float" Size="1" />
<Data ElementName="map_x" Type="int32" Size="1" />
<Data ElementName="map_y" Type="int32" Size="1" />
<Data ElementName="zone_level_min" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="zone_level_max" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int16" Size="1" />
<Data ElementName="cost" Type="int32" />
</Data>
<Data ElementName="map_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="current_zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="current_map_x" Type="int32" Size="1" />
<Data ElementName="current_map_y" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_TeleportDestination" ClientVersion="1" OpcodeName="OP_SelectZoneTeleporterDestinatio">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="cost" Type="int32" />
</Struct>
<Struct Name="WS_MapRequest" ClientVersion="1">
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="int8" />
</Struct>
<Struct Name="WS_DressingRoom" ClientVersion="1" OpcodeName="OP_DressingRoom" >
<Data ElementName="unknown" Type="int16" />
<Data ElementName="slot" Type="int32" />
<Data ElementName="appearance_id" Type="int16" />
<Data ElementName="rgb" Type="float" Size="3" />
<Data ElementName="highlight_rgb" Type="float" Size="3" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="item_crc" Type="sint32" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="int8" Size="10" />
</Struct>
<Struct Name="WS_DressingRoom" ClientVersion="1096" OpcodeName="OP_DressingRoom" >
<Data ElementName="unknown" Type="int16" Size="2" />
<Data ElementName="slot" Type="int32" />
<Data ElementName="appearance_id" Type="int16" />
<Data ElementName="rgb" Type="float" Size="3" />
<Data ElementName="highlight_rgb" Type="float" Size="3" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="item_crc" Type="sint32" />
<Data ElementName="unknown3a" Type="int32" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="int8" Size="10" />
</Struct>
<Struct Name="WS_DressingRoom" ClientVersion="1188" OpcodeName="OP_DressingRoom" >
<Data ElementName="unknown" Type="int16" Size="2" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="appearance_id" Type="int16" />
<Data ElementName="slot" Type="int32" />
<Data ElementName="rgb" Type="float" Size="3" />
<Data ElementName="highlight_rgb" Type="float" Size="3" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="item_crc" Type="sint32" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="int8" Size="12" />
</Struct>
<Struct Name="WS_DressingRoom" ClientVersion="57107" OpcodeName="OP_DressingRoom" >
<Data ElementName="unknown" Type="int16" Size="2" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="appearance_id" Type="int16" />
<Data ElementName="unknown2a" Type="int16" Size="1" />
<Data ElementName="slot" Type="int32" />
<Data ElementName="rgb" Type="float" Size="3" />
<Data ElementName="highlight_rgb" Type="float" Size="3" />
<Data ElementName="unknown3" Type="int8" Size="2" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="item_id" Type="sint32" />
<Data ElementName="item_crc" Type="sint32" />
<Data ElementName="item_id2" Type="int32" />
<Data ElementName="unknown5" Type="int8" Size="11" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="int8" />
</Struct>
<Struct Name="WS_StateCmd" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqStateCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="state" Type="int16" />
</Struct>
<Struct Name="WS_StateCmd" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqStateCmd">
<Data ElementName="spawn_id" Type="int32" />
2020-02-28 07:17:24 -07:00
<Data ElementName="state" Type="int32" />
</Struct>
<Struct Name="WS_EnterCombat" ClientVersion="547" OpcodeName="OP_AttackAllowed">
2020-02-28 07:17:24 -07:00
<Data ElementName="response" Type="int8" />
</Struct>
<Struct Name="WS_StartBroker" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqStartBrokerCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="unknown2" Type="int8" Size="6" />
</Struct>
<Struct Name="WS_BrokerBags" ClientVersion="1" OpcodeName="OP_ChatToggleFriendMsg" >
<Data ElementName="char_id" Type="int32" />
<Data ElementName="num_bags" Type="int8" />
</Struct>
<Struct Name="WS_BrokerBags" ClientVersion="1193" OpcodeName="OP_BrokerAddBag" >
<Data ElementName="char_id" Type="int32" />
<Data ElementName="num_bags" Type="int8" />
</Struct>
<Struct Name="WS_BrokerItems" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqConsignmentItemsCmd" >
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_items" Type="int32" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_seller_id" Type="int64" Size="1" />
<Data ElementName="item_id" Type="int64" Size="1" />
<Data ElementName="item_id3" Type="int32" Size="1" />
<Data ElementName="quantity" Type="int32" Size="1" />
<Data ElementName="stack_size" Type="int16" Size="1" />
<Data ElementName="sell_price" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
</Data>
<Data ElementName="num_sellers" Type="int32" />
<Data ElementName="seller_array" Type="Array" ArraySizeVariable="num_sellers">
<Data ElementName="seller_seller_id" Type="int64" Size="1" />
<Data ElementName="seller_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="house_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
</Data>
<Data ElementName="num_homes" Type="int32" Size="1" />
<Data ElementName="home_array" Type="Array" ArraySizeVariable="num_homes">
<Data ElementName="home_id" Type="int32" Size="1" />
<Data ElementName="home_label" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="home_zone" Type="EQ2_8Bit_String" Size="1" />
</Data>
<Data ElementName="num_pages" Type="int32" Size="1" />
<Data ElementName="per_page" Type="int32" Size="1" />
<Data ElementName="page" Type="int32" Size="1" />
</Struct>
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Struct Name="WS_BrokerItems" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqConsignmentItemsCmd" >
<Data ElementName="num_items" Type="int32" Size="1"/>
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="unknowny" Type="int16" Size="1" />
<Data ElementName="item_id" Type="int64" Size="1" />
<Data ElementName="quantity" Type="int32" Size="1" />
<Data ElementName="unknown15x" Type="int8" Size="4" />
<Data ElementName="string_two" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="string_x" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown15y" Type="int8" Size="6" />
<Data ElementName="stack_size" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="14" />
<Data ElementName="icon" Type="int16" Size="1" />
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown15x" Type="int8" Size="2" />
<Data ElementName="sell_price" Type="int64" Size="1" />
<Data ElementName="unknown15spacey" Type="int8" Size="28" />
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Data ElementName="seller_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="10" />
</Data>
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="num_pages" Type="int32" Size="1" />
<Data ElementName="per_page" Type="int32" Size="1" />
<Data ElementName="page" Type="int32" Size="1" />
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_BrokerItems" ClientVersion="972" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqConsignmentItemsCmd" >
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_items" Type="int32" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_seller_id" Type="int64" Size="1" />
<Data ElementName="item_id" Type="int64" Size="1" />
<Data ElementName="item_id3" Type="int32" Size="1" />
<Data ElementName="quantity" Type="int32" Size="1" />
<Data ElementName="stack_size" Type="int16" Size="1" />
<Data ElementName="sell_price" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="req_level" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown13" Type="int32" Size="1" />
</Data>
<Data ElementName="num_sellers" Type="int32" />
<Data ElementName="seller_array" Type="Array" ArraySizeVariable="num_sellers">
<Data ElementName="seller_seller_id" Type="int64" Size="1" />
<Data ElementName="seller_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="house_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
</Data>
<Data ElementName="num_homes" Type="int32" Size="1" />
<Data ElementName="home_array" Type="Array" ArraySizeVariable="num_homes">
<Data ElementName="home_id" Type="int32" Size="1" />
<Data ElementName="home_label" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="home_zone" Type="EQ2_8Bit_String" Size="1" />
</Data>
<Data ElementName="num_pages" Type="int32" Size="1" />
<Data ElementName="per_page" Type="int32" Size="1" />
<Data ElementName="page" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_BrokerItems" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqConsignmentItemsCmd" >
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_items" Type="int32" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_seller_id" Type="int64" Size="1" />
<Data ElementName="item_id" Type="int64" Size="1" />
<Data ElementName="item_id3" Type="int32" Size="1" />
<Data ElementName="quantity" Type="int32" Size="1" />
<Data ElementName="stack_size" Type="int16" Size="1" />
<Data ElementName="sell_price" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="req_level" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown13" Type="int32" Size="1" />
</Data>
<Data ElementName="num_sellers" Type="int32" />
<Data ElementName="seller_array" Type="Array" ArraySizeVariable="num_sellers">
<Data ElementName="seller_seller_id" Type="int64" Size="1" />
<Data ElementName="seller_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="house_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="4" />
</Data>
<Data ElementName="num_homes" Type="int32" Size="1" />
<Data ElementName="home_array" Type="Array" ArraySizeVariable="num_homes">
<Data ElementName="home_id" Type="int32" Size="1" />
<Data ElementName="home_label" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="home_zone" Type="EQ2_8Bit_String" Size="1" />
</Data>
<Data ElementName="num_pages" Type="int32" Size="1" />
<Data ElementName="per_page" Type="int32" Size="1" />
<Data ElementName="page" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_BrokerItems" ClientVersion="1199" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqConsignmentItemsCmd" >
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_items" Type="int32" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_seller_id" Type="int64" Size="1" />
<Data ElementName="item_id" Type="int64" Size="1" />
<Data ElementName="item_id3" Type="int32" Size="1" />
<Data ElementName="quantity" Type="int32" Size="1" />
<Data ElementName="stack_size" Type="int16" Size="1" />
<Data ElementName="sell_price" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="req_level" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="5" />
</Data>
<Data ElementName="num_sellers" Type="int32" />
<Data ElementName="seller_array" Type="Array" ArraySizeVariable="num_sellers">
<Data ElementName="seller_seller_id" Type="int64" Size="1" />
<Data ElementName="seller_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="house_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="4" />
</Data>
<Data ElementName="num_homes" Type="int32" Size="1" />
<Data ElementName="home_array" Type="Array" ArraySizeVariable="num_homes">
<Data ElementName="home_id" Type="int64" Size="1" />
<Data ElementName="home_label" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="num_pages" Type="int32" Size="1" />
<Data ElementName="per_page" Type="int32" Size="1" />
<Data ElementName="page" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_BrokerItems" ClientVersion="57107" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqConsignmentItemsCmd" >
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_items" Type="int32" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_seller_id" Type="int64" Size="1" />
<Data ElementName="item_id" Type="int64" Size="1" />
<Data ElementName="item_id3" Type="int32" Size="1" />
<Data ElementName="quantity" Type="int32" Size="1" />
<Data ElementName="stack_size" Type="int16" Size="1" />
<Data ElementName="unknown0" Type="int16" Size="1" />
<Data ElementName="sell_price" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown7" Type="int32" Size="1" />
<Data ElementName="req_level" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown13" Type="int8" Size="9" />
</Data>
<Data ElementName="num_sellers" Type="int32" />
<Data ElementName="seller_array" Type="Array" ArraySizeVariable="num_sellers">
<Data ElementName="seller_seller_id" Type="int64" Size="1" />
<Data ElementName="seller_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="house_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="4" />
</Data>
<Data ElementName="num_homes" Type="int32" Size="1" />
<Data ElementName="home_array" Type="Array" ArraySizeVariable="num_homes">
<Data ElementName="home_id" Type="int64" Size="1" />
<Data ElementName="home_label" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="num_pages" Type="int32" Size="1" />
<Data ElementName="per_page" Type="int32" Size="1" />
<Data ElementName="page" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_EqShowBook" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqShowBookCmd" >
2020-07-27 19:45:34 -06:00
<Data ElementName="book_title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="page_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="book_type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="language" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" /> <!-- isbook? -->
</Struct>
<Struct Name="WS_EqShowBook" ClientVersion="546" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqShowBookCmd" >
2020-02-28 07:17:24 -07:00
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="book_title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="language" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="book_type" Type="EQ2_16Bit_String" Size="1" />
2020-07-27 19:45:34 -06:00
<Data ElementName="unknown2" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_pages" Type="int8" Size="1" />
2020-07-27 19:45:34 -06:00
<Data ElementName="cover_page" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="book_page_array" Type="Array" ArraySizeVariable="num_pages">
<Data ElementName="unknown1_array" Type="int8" Size="1" />
<Data ElementName="unknown2_array" Type="int8" Size="1" />
<Data ElementName="unknown3_array" Type="int8" Size="1" />
<Data ElementName="page_text" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
</Struct>
<Struct Name="WS_EqShowBook" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqShowBookCmd" >
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="book_title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="language" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="book_type" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="5" />
<Data ElementName="num_pages" Type="int8" Size="1" />
<Data ElementName="page_array" Type="Array" ArraySizeVariable="num_pages">
<Data ElementName="page_text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="page_text_valign" Type="int8" Size="1" />
<Data ElementName="page_text_halign" Type="int8" Size="1" />
<Data ElementName="num_images" Type="int8" Size="1" />
<Data ElementName="image_array" Type="Array" ArraySizeVariable="num_images">
<Data ElementName="image_file" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="image_id" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="12" />
</Data>
</Data>
</Struct>
<Struct Name="WS_ReceiveOffer" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqReceiveOfferCmd">
<Data ElementName="type" Type="int8" />
<Data ElementName="name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_ChatRelationship" ClientVersion="1" OpcodeName="OP_ChatRelationshipUpdateMsg" >
<Data ElementName="account_id" Type="int32" />
<Data ElementName="type" Type="int8" />
<Data ElementName="num_names" Type="int32" />
<Data ElementName="name_array" Type="Array" ArraySizeVariable="num_names">
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="location" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown" Type="int16" Size="1" />
</Data>
</Struct>
<Struct Name="WS_GuildEventList" ClientVersion="1" OpcodeName="OP_GuildEventListMsg">
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="num_events" Type="int16" Size="1" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_events" >
<Data ElementName="event_id" Type="int64" Size="1" />
</Data>
<Data ElementName="events_locked_array" Type="Array" ArraySizeVariable="num_events" >
<Data ElementName="locked" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_GuildEventDetails" ClientVersion="1" OpcodeName="OP_GuildEventDetailsMsg">
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="num_events" Type="int16" Size="1" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_events" >
<Data ElementName="event_id" Type="int64" Size="1" />
</Data>
</Struct>
<Struct Name="WS_GuildBankEventList" ClientVersion="1" OpcodeName="OP_GuildBankEventListMsg">
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="bank_number" Type="int8" Size="1" />
<Data ElementName="num_events" Type="int16" Size="1" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_events" >
<Data ElementName="event_id" Type="int64" Size="1" />
</Data>
</Struct>
<Struct Name="WS_RequestGuildEventDetails" ClientVersion="1" OpcodeName="OP_RequestGuildEventDetailsMsg">
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="num_events" Type="int16" Size="1" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_events" >
<Data ElementName="date" Type="int32" Size="1" />
<Data ElementName="modified_by" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="comment" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
</Data>
</Struct>
<Struct Name="WS_ModifyGuild" ClientVersion="1" OpcodeName="OP_ModifyGuildMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="12" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="6" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="8" />
<Data ElementName="num_character_ids" Type="int16" Size="1" />
<Data ElementName="character_id_array" Type="Array" ArraySizeVariable="num_character_ids" >
<Data ElementName="character_id" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_GuildEventAdd" ClientVersion="1" OpcodeName="OP_GuildEventAddMsg">
<Data ElementName="account_id" Type="int32" Size="1"/>
<Data ElementName="event_id" Type="int64" Size="1" />
<Data ElementName="type" Type="int32" Size="1" />
<Data ElementName="date" Type="int32" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_GuildEventAction" ClientVersion="1" OpcodeName="OP_GuildEventActionMsg">
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="event_id" Type="int64" Size="1" />
<Data ElementName="action" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_RequestGuildInfo" ClientVersion="1" OpcodeName="OP_RequestGuildInfoMsg">
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="event_id" Type="int64" Size="1" />
<Data ElementName="date" Type="int32" Size="1" />
<Data ElementName="type" Type="int32" Size="1" />
<Data ElementName="description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_GuildMembershipResponse" ClientVersion="1" OpcodeName="OP_GuildMembershipResponseMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id_to" Type="int32" Size="1" />
<Data ElementName="num_members" Type="int32" Size="1" />
<Data ElementName="member_array" Type="Array" ArraySizeVariable="num_members" >
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="rank" Type="int8" Size="1" />
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="recruiter_id" Type="int32" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="officer_note" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown7" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_GuildMembershipResponse" ClientVersion="910" OpcodeName="OP_GuildMembershipResponseMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id_to" Type="int32" Size="1" />
<Data ElementName="num_members" Type="int32" Size="1" />
<Data ElementName="member_array" Type="Array" ArraySizeVariable="num_members" >
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="rank" Type="int8" Size="1" />
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="recruiter_id" Type="int32" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="officer_note" Type="EQ2_16Bit_String" Size="1" />
</Data>
<Data ElementName="unknown7" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_GuildMembershipResponse" ClientVersion="1204" OpcodeName="OP_GuildMembershipResponseMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id_to" Type="int32" Size="1" />
<Data ElementName="num_members" Type="int32" Size="1" />
<Data ElementName="member_array" Type="Array" ArraySizeVariable="num_members" >
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="rank" Type="int8" Size="1" />
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="recruiter_id" Type="int32" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="officer_note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unique_id" Type="int64" Size="1" />
</Data>
</Struct>
<Struct Name="WS_JoinGuildNotify" ClientVersion="1" OpcodeName="OP_JoinGuildNotifyMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="adventure_class" Type="int32" Size="1" />
<Data ElementName="adventure_level" Type="int32" Size="1" />
<Data ElementName="rank" Type="int8" Size="1"/>
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="2" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_JoinGuildNotify" ClientVersion="546" OpcodeName="OP_JoinGuildNotifyMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="rank" Type="int8" Size="1"/>
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="recruiter_id" Type="int32" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="officer_note" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_JoinGuildNotify" ClientVersion="910" OpcodeName="OP_JoinGuildNotifyMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="rank" Type="int8" Size="1"/>
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="recruiter_id" Type="int32" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="officer_note" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_JoinGuildNotify" ClientVersion="1204" OpcodeName="OP_JoinGuildNotifyMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="rank" Type="int8" Size="1"/>
<Data ElementName="member_flags" Type="int8" Size="1" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_login" Type="int32" Size="1" />
<Data ElementName="recruiter_id" Type="int32" Size="1" />
<Data ElementName="points" Type="float" Size="1" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="officer_note" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="2" />
</Struct>
<Struct Name="WS_LeaveGuildNotify" ClientVersion="1" OpcodeName="OP_LeaveGuildNotifyMsg">
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="character_id" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_GuildUpdate" ClientVersion="1" OpcodeName="OP_GuildUpdateMsg">
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_motd" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="guild_type" Type="int8" Size="1" />
<Data ElementName="guild_level" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="exp_current" Type="int64" Size="1" />
<Data ElementName="exp_to_next_level" Type="int64" Size="1" />
</Struct>
<Struct Name="WS_GuildUpdate" ClientVersion="547" OpcodeName="OP_GuildUpdateMsg">
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_motd" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="guild_level" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="formed_date" Type="int32" Size="1" />
<Data ElementName="unique_accounts" Type="int16" Size="1" />
<Data ElementName="num_members" Type="int16" Size="1" />
<Data ElementName="exp_current" Type="int64" Size="1" />
<Data ElementName="exp_unknown" Type="int64" Size="1" />
<Data ElementName="exp_to_next_level" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="3" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="event_filter_retain1" Type="int32" Size="1" />
<Data ElementName="event_filter_retain2" Type="int32" Size="1" />
<Data ElementName="event_filter_retain3" Type="int32" Size="1" />
<Data ElementName="event_filter_retain4" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast1" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast2" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast3" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast4" Type="int32" Size="1" />
<Data ElementName="recruiting_looking_for" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="7" />
<Data ElementName="recruiting_desc_tag1" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag2" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag3" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag4" Type="int8" Size="1" />
<Data ElementName="recruiting_playstyle" Type="int8" Size="1" />
<Data ElementName="recruiting_min_level" Type="int8" Size="1" />
<Data ElementName="recuiting_short_description" Type="EQ2_16Bit_String" />
<Data ElementName="recruiting_full_description" Type="EQ2_16Bit_String" />
<Data ElementName="rank0_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank0_permissions1" Type="int32" Size="1" />
<Data ElementName="rank0_permissions2" Type="int32" Size="1" />
<Data ElementName="rank0_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank1_permissions1" Type="int32" Size="1" />
<Data ElementName="rank1_permissions2" Type="int32" Size="1" />
<Data ElementName="rank1_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank2_permissions1" Type="int32" Size="1" />
<Data ElementName="rank2_permissions2" Type="int32" Size="1" />
<Data ElementName="rank2_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank3_permissions1" Type="int32" Size="1" />
<Data ElementName="rank3_permissions2" Type="int32" Size="1" />
<Data ElementName="rank3_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank4_permissions1" Type="int32" Size="1" />
<Data ElementName="rank4_permissions2" Type="int32" Size="1" />
<Data ElementName="rank4_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank5_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank5_permissions1" Type="int32" Size="1" />
<Data ElementName="rank5_permissions2" Type="int32" Size="1" />
<Data ElementName="rank5_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank6_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank6_permissions1" Type="int32" Size="1" />
<Data ElementName="rank6_permissions2" Type="int32" Size="1" />
<Data ElementName="rank6_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank7_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank7_permissions1" Type="int32" Size="1" />
<Data ElementName="rank7_permissions2" Type="int32" Size="1" />
<Data ElementName="rank7_permissions_unused" Type="int8" Size="48" />
<Data ElementName="bank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="11" />
</Struct>
<Struct Name="WS_GuildUpdate" ClientVersion="1008" OpcodeName="OP_GuildUpdateMsg">
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_motd" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="guild_level" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="formed_date" Type="int32" Size="1" />
<Data ElementName="unique_accounts" Type="int16" Size="1" />
<Data ElementName="num_members" Type="int16" Size="1" />
<Data ElementName="exp_current" Type="int64" Size="1" />
<Data ElementName="exp_unknown" Type="int64" Size="1" />
<Data ElementName="exp_to_next_level" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="2" />
<Data ElementName="guild_hall_location" Type="EQ2_16Bit_String" />
<Data ElementName="guild_hall_zonename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="event_filter_retain1" Type="int32" Size="1" />
<Data ElementName="event_filter_retain2" Type="int32" Size="1" />
<Data ElementName="event_filter_retain3" Type="int32" Size="1" />
<Data ElementName="event_filter_retain4" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast1" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast2" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast3" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast4" Type="int32" Size="1" />
<Data ElementName="recruiting_looking_for" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="7" />
<Data ElementName="recruiting_desc_tag1" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag2" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag3" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag4" Type="int8" Size="1" />
<Data ElementName="recruiting_playstyle" Type="int8" Size="1" />
<Data ElementName="recruiting_min_level" Type="int8" Size="1" />
<Data ElementName="recuiting_short_description" Type="EQ2_16Bit_String" />
<Data ElementName="recruiting_full_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="guild_hall_filename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="rank0_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank0_permissions1" Type="int32" Size="1" />
<Data ElementName="rank0_permissions2" Type="int32" Size="1" />
<Data ElementName="rank0_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank1_permissions1" Type="int32" Size="1" />
<Data ElementName="rank1_permissions2" Type="int32" Size="1" />
<Data ElementName="rank1_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank2_permissions1" Type="int32" Size="1" />
<Data ElementName="rank2_permissions2" Type="int32" Size="1" />
<Data ElementName="rank2_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank3_permissions1" Type="int32" Size="1" />
<Data ElementName="rank3_permissions2" Type="int32" Size="1" />
<Data ElementName="rank3_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank4_permissions1" Type="int32" Size="1" />
<Data ElementName="rank4_permissions2" Type="int32" Size="1" />
<Data ElementName="rank4_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank5_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank5_permissions1" Type="int32" Size="1" />
<Data ElementName="rank5_permissions2" Type="int32" Size="1" />
<Data ElementName="rank5_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank6_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank6_permissions1" Type="int32" Size="1" />
<Data ElementName="rank6_permissions2" Type="int32" Size="1" />
<Data ElementName="rank6_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank7_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank7_permissions1" Type="int32" Size="1" />
<Data ElementName="rank7_permissions2" Type="int32" Size="1" />
<Data ElementName="rank7_permissions_unused" Type="int8" Size="48" />
<Data ElementName="bank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="12" />
</Struct>
<Struct Name="WS_GuildUpdate" ClientVersion="1144" OpcodeName="OP_GuildUpdateMsg">
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_motd" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="guild_level" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="formed_date" Type="int32" Size="1" />
<Data ElementName="unique_accounts" Type="int16" Size="1" />
<Data ElementName="num_members" Type="int16" Size="1" />
<Data ElementName="exp_current" Type="int64" Size="1" />
<Data ElementName="exp_unknown" Type="int64" Size="1" />
<Data ElementName="exp_to_next_level" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="2" />
<Data ElementName="guild_hall_location" Type="EQ2_16Bit_String" />
<Data ElementName="guild_hall_zonename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="event_filter_retain1" Type="int32" Size="1" />
<Data ElementName="event_filter_retain2" Type="int32" Size="1" />
<Data ElementName="event_filter_retain3" Type="int32" Size="1" />
<Data ElementName="event_filter_retain4" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast1" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast2" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast3" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast4" Type="int32" Size="1" />
<Data ElementName="recruiting_looking_for" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="7" />
<Data ElementName="recruiting_desc_tag1" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag2" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag3" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag4" Type="int8" Size="1" />
<Data ElementName="recruiting_playstyle" Type="int8" Size="1" />
<Data ElementName="recruiting_min_level" Type="int8" Size="1" />
<Data ElementName="recuiting_short_description" Type="EQ2_16Bit_String" />
<Data ElementName="recruiting_full_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="guild_hall_filename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="rank0_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank0_permissions1" Type="int32" Size="1" />
<Data ElementName="rank0_permissions2" Type="int32" Size="1" />
<Data ElementName="rank0_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank1_permissions1" Type="int32" Size="1" />
<Data ElementName="rank1_permissions2" Type="int32" Size="1" />
<Data ElementName="rank1_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank2_permissions1" Type="int32" Size="1" />
<Data ElementName="rank2_permissions2" Type="int32" Size="1" />
<Data ElementName="rank2_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank3_permissions1" Type="int32" Size="1" />
<Data ElementName="rank3_permissions2" Type="int32" Size="1" />
<Data ElementName="rank3_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank4_permissions1" Type="int32" Size="1" />
<Data ElementName="rank4_permissions2" Type="int32" Size="1" />
<Data ElementName="rank4_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank5_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank5_permissions1" Type="int32" Size="1" />
<Data ElementName="rank5_permissions2" Type="int32" Size="1" />
<Data ElementName="rank5_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank6_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank6_permissions1" Type="int32" Size="1" />
<Data ElementName="rank6_permissions2" Type="int32" Size="1" />
<Data ElementName="rank6_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank7_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank7_permissions1" Type="int32" Size="1" />
<Data ElementName="rank7_permissions2" Type="int32" Size="1" />
<Data ElementName="rank7_permissions_unused" Type="int8" Size="48" />
<Data ElementName="bank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="13" />
</Struct>
<Struct Name="WS_GuildUpdate" ClientVersion="1204" OpcodeName="OP_GuildUpdateMsg">
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_motd" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="guild_level" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="formed_date" Type="int32" Size="1" />
<Data ElementName="unique_accounts" Type="int16" Size="1" />
<Data ElementName="num_members" Type="int16" Size="1" />
<Data ElementName="exp_current" Type="int64" Size="1" />
<Data ElementName="exp_unknown" Type="int64" Size="1" />
<Data ElementName="exp_to_next_level" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="2" />
<Data ElementName="guild_hall_location" Type="EQ2_16Bit_String" />
<Data ElementName="guild_hall_zonename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="event_filter_retain1" Type="int32" Size="1" />
<Data ElementName="event_filter_retain2" Type="int32" Size="1" />
<Data ElementName="event_filter_retain3" Type="int32" Size="1" />
<Data ElementName="event_filter_retain4" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast1" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast2" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast3" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast4" Type="int32" Size="1" />
<Data ElementName="recruiting_looking_for" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="7" />
<Data ElementName="recruiting_desc_tag1" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag2" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag3" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag4" Type="int8" Size="1" />
<Data ElementName="recruiting_playstyle" Type="int8" Size="1" />
<Data ElementName="recruiting_min_level" Type="int8" Size="1" />
<Data ElementName="recuiting_short_description" Type="EQ2_16Bit_String" />
<Data ElementName="recruiting_full_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="guild_hall_filename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown7a" Type="int8" Size="1" />
<Data ElementName="rank0_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank0_permissions1" Type="int32" Size="1" />
<Data ElementName="rank0_permissions2" Type="int32" Size="1" />
<Data ElementName="rank0_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank1_permissions1" Type="int32" Size="1" />
<Data ElementName="rank1_permissions2" Type="int32" Size="1" />
<Data ElementName="rank1_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank2_permissions1" Type="int32" Size="1" />
<Data ElementName="rank2_permissions2" Type="int32" Size="1" />
<Data ElementName="rank2_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank3_permissions1" Type="int32" Size="1" />
<Data ElementName="rank3_permissions2" Type="int32" Size="1" />
<Data ElementName="rank3_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank4_permissions1" Type="int32" Size="1" />
<Data ElementName="rank4_permissions2" Type="int32" Size="1" />
<Data ElementName="rank4_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank5_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank5_permissions1" Type="int32" Size="1" />
<Data ElementName="rank5_permissions2" Type="int32" Size="1" />
<Data ElementName="rank5_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank6_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank6_permissions1" Type="int32" Size="1" />
<Data ElementName="rank6_permissions2" Type="int32" Size="1" />
<Data ElementName="rank6_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank7_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank7_permissions1" Type="int32" Size="1" />
<Data ElementName="rank7_permissions2" Type="int32" Size="1" />
<Data ElementName="rank7_permissions_unused" Type="int8" Size="48" />
<Data ElementName="bank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="13" />
<Data ElementName="unknown9" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_GuildUpdate" ClientVersion="60085" OpcodeName="OP_GuildUpdateMsg">
<Data ElementName="guild_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_motd" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="guild_level" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="formed_date" Type="int32" Size="1" />
<Data ElementName="unique_accounts" Type="int16" Size="1" />
<Data ElementName="num_members" Type="int16" Size="1" />
<Data ElementName="exp_current" Type="int64" Size="1" />
<Data ElementName="exp_unknown" Type="int64" Size="1" />
<Data ElementName="exp_to_next_level" Type="int64" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="2" />
<Data ElementName="guild_hall_location" Type="EQ2_16Bit_String" />
<Data ElementName="guild_hall_zonename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="event_filter_retain1" Type="int32" Size="1" />
<Data ElementName="event_filter_retain2" Type="int32" Size="1" />
<Data ElementName="event_filter_retain3" Type="int32" Size="1" />
<Data ElementName="event_filter_retain4" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast1" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast2" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast3" Type="int32" Size="1" />
<Data ElementName="event_filter_broadcast4" Type="int32" Size="1" />
<Data ElementName="recruiting_looking_for" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="23" />
<Data ElementName="recruiting_desc_tag1" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag2" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag3" Type="int8" Size="1" />
<Data ElementName="recruiting_desc_tag4" Type="int8" Size="1" />
<Data ElementName="recruiting_playstyle" Type="int8" Size="1" />
<Data ElementName="recruiting_min_level" Type="int8" Size="1" />
<Data ElementName="recuiting_short_description" Type="EQ2_16Bit_String" />
<Data ElementName="recruiting_full_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="guild_hall_filename" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown7a" Type="int8" Size="1" />
<Data ElementName="rank0_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank0_permissions1" Type="int32" Size="1" />
<Data ElementName="rank0_permissions2" Type="int32" Size="1" />
<Data ElementName="rank0_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank1_permissions1" Type="int32" Size="1" />
<Data ElementName="rank1_permissions2" Type="int32" Size="1" />
<Data ElementName="rank1_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank2_permissions1" Type="int32" Size="1" />
<Data ElementName="rank2_permissions2" Type="int32" Size="1" />
<Data ElementName="rank2_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank3_permissions1" Type="int32" Size="1" />
<Data ElementName="rank3_permissions2" Type="int32" Size="1" />
<Data ElementName="rank3_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank4_permissions1" Type="int32" Size="1" />
<Data ElementName="rank4_permissions2" Type="int32" Size="1" />
<Data ElementName="rank4_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank5_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank5_permissions1" Type="int32" Size="1" />
<Data ElementName="rank5_permissions2" Type="int32" Size="1" />
<Data ElementName="rank5_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank6_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank6_permissions1" Type="int32" Size="1" />
<Data ElementName="rank6_permissions2" Type="int32" Size="1" />
<Data ElementName="rank6_permissions_unused" Type="int8" Size="48" />
<Data ElementName="rank7_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="rank7_permissions1" Type="int32" Size="1" />
<Data ElementName="rank7_permissions2" Type="int32" Size="1" />
<Data ElementName="rank7_permissions_unused" Type="int8" Size="48" />
<Data ElementName="bank1_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank2_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank3_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="bank4_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="13" />
<Data ElementName="unknown9" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_GuildRecruitingMemberInfo" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_GuildRecruitingMemberInfo" >
<Data ElementName="character_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="show_adventure_class" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="num_bytes" Type="int16" Size="1" />
<Data ElementName="picture_byte_array" Type="Array" ArraySizeVariable="num_bytes" >
<Data ElementName="picture_byte" Type="char" Size="1" />
</Data>
<Data ElementName="recruiter_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="recruiter_description" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_GuildRecruiting" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_GuildRecruiting" >
<Data ElementName="num_guilds" Type="int8" Size="1" />
<Data ElementName="guilds_array" Type="Array" ArraySizeVariable="num_guilds" >
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="guild_name" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="recruiting_short_description" Type="EQ2_8Bit_String" Size="1" />
<Data ElementName="descriptive_tag1" Type="int8" Size="1" />
<Data ElementName="descriptive_tag2" Type="int8" Size="1" />
<Data ElementName="descriptive_tag3" Type="int8" Size="1" />
<Data ElementName="descriptive_tag4" Type="int8" Size="1" />
<Data ElementName="playstyle" Type="int8" Size="1" />
<Data ElementName="looking_for" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="min_level" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_GuildRecruitingDetails" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_GuildRecruitingDetails" >
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="recruiting_full_description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="num_recruiters" Type="int8" Size="1" />
<Data ElementName="recruiters_array" Type="Array" ArraySizeVariable="num_recruiters" >
<Data ElementName="adventure_class" Type="int8" Size="1" />
<Data ElementName="adventure_level" Type="int8" Size="1" />
<Data ElementName="tradeskill_class" Type="int8" Size="1" />
<Data ElementName="tradeskill_level" Type="int8" Size="1" />
<Data ElementName="show_adventure_class" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="num_bytes" Type="int16" Size="1" />
<Data ElementName="picture_byte_array" Type="Array" ArraySizeVariable="num_bytes" >
<Data ElementName="picture_byte" Type="char" Size="1" />
</Data>
<Data ElementName="char_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="recruiter_description" Type="EQ2_16Bit_String" Size="1" />
</Data>
</Struct>
<Struct Name="WS_GuildRecruitingImage" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_GuildRecruitingImage" >
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="num_bytes" Type="int16" Size="1" />
<Data ElementName="picture_byte_array" Type="Array" ArraySizeVariable="num_bytes" >
<Data ElementName="picture_byte" Type="char" Size="1" />
</Data>
</Struct>
<Struct Name="WS_QuestRewardPackMsg" ClientVersion="1" OpcodeName="OP_RewardPackMsg" >
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" />
</Struct>
<Struct Name="WS_QuestRewardPackMsg" ClientVersion="546" OpcodeName="OP_RewardPackMsg" >
<Data ElementName="reward_data" Substruct="Substruct_JournalRewardData" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_RewardPackMsg" ClientVersion="1" OpcodeName="OP_RewardPackMsg" >
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="guild_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="recruiter_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="picture_byte_array" Type="Array" ArraySizeVariable="num_bytes" >
<Data ElementName="picture_byte" Type="char" Size="1" />
</Data>
</Struct>
<Struct Name="WS_TraitsList" ClientVersion="987" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TraitsList" >
<Data ElementName="num_traits" Type="int8" Size="1" />
<Data ElementName="traits_array" Type="Array" ArraySizeVariable="num_traits">
<Data ElementName="trait_level" Type="int8" Size="1" />
<Data ElementName="trait_line" Type="int8" Size="1" />
<Data ElementName="trait0_icon" Type="int16" Size="1" />
<Data ElementName="trait0_icon2" Type="int16" Size="1" />
<Data ElementName="trait0_id" Type="int32" Size="1" />
<Data ElementName="trait0_unknown" Type="int32" Size="1" />
<Data ElementName="trait0_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait1_icon" Type="int16" Size="1" />
<Data ElementName="trait1_icon2" Type="int16" Size="1" />
<Data ElementName="trait1_id" Type="int32" Size="1" />
<Data ElementName="trait1_unknown" Type="int32" Size="1" />
<Data ElementName="trait1_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait2_icon" Type="int16" Size="1" />
<Data ElementName="trait2_icon2" Type="int16" Size="1" />
<Data ElementName="trait2_id" Type="int32" Size="1" />
<Data ElementName="trait2_unknown" Type="int32" Size="1" />
<Data ElementName="trait2_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait3_icon" Type="int16" Size="1" />
<Data ElementName="trait3_icon2" Type="int16" Size="1" />
<Data ElementName="trait3_id" Type="int32" Size="1" />
<Data ElementName="trait3_unknown" Type="int32" Size="1" />
<Data ElementName="trait3_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait4_icon" Type="int16" Size="1" />
<Data ElementName="trait4_icon2" Type="int16" Size="1" />
<Data ElementName="trait4_id" Type="int32" Size="1" />
<Data ElementName="trait4_unknown" Type="int32" Size="1" />
<Data ElementName="trait4_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_trainings" Type="int8" Size="1" />
<Data ElementName="training_array" Type="Array" ArraySizeVariable="num_trainings">
<Data ElementName="training_level" Type="int8" Size="1" />
<Data ElementName="training_line" Type="int8" Size="1" />
<Data ElementName="training0_icon" Type="int16" Size="1" />
<Data ElementName="training0_icon2" Type="int16" Size="1" />
<Data ElementName="training0_id" Type="int32" Size="1" />
<Data ElementName="training0_unknown" Type="int32" Size="1" />
<Data ElementName="training0_name" Type="EQ2_16Bit_String" />
<Data ElementName="training1_icon" Type="int16" Size="1" />
<Data ElementName="training1_icon2" Type="int16" Size="1" />
<Data ElementName="training1_id" Type="int32" Size="1" />
<Data ElementName="training1_unknown" Type="int32" Size="1" />
<Data ElementName="training1_name" Type="EQ2_16Bit_String" />
<Data ElementName="training2_icon" Type="int16" Size="1" />
<Data ElementName="training2_icon2" Type="int16" Size="1" />
<Data ElementName="training2_id" Type="int32" Size="1" />
<Data ElementName="training2_unknown" Type="int32" Size="1" />
<Data ElementName="training2_name" Type="EQ2_16Bit_String" />
<Data ElementName="training3_icon" Type="int16" Size="1" />
<Data ElementName="training3_icon2" Type="int16" Size="1" />
<Data ElementName="training3_id" Type="int32" Size="1" />
<Data ElementName="training3_unknown" Type="int32" Size="1" />
<Data ElementName="training3_name" Type="EQ2_16Bit_String" />
<Data ElementName="training4_icon" Type="int16" Size="1" />
<Data ElementName="training4_icon2" Type="int16" Size="1" />
<Data ElementName="training4_id" Type="int32" Size="1" />
<Data ElementName="training4_unknown" Type="int32" Size="1" />
<Data ElementName="training4_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_traditions" Type="int8" Size="1" />
<Data ElementName="tradition_array" Type="Array" ArraySizeVariable="num_traditions">
<Data ElementName="tradition_selected" Type="int8" Size="1" />
<Data ElementName="tradition_icon" Type="int16" Size="1" />
<Data ElementName="tradition_icon2" Type="int16" Size="1" />
<Data ElementName="tradition_id" Type="int32" Size="1" />
<Data ElementName="tradition_unknown" Type="int32" Size="1" />
<Data ElementName="tradition_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int8" Size="1" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="ability_icon" Type="int16" Size="1" />
<Data ElementName="ability_icon2" Type="int16" Size="1" />
<Data ElementName="ability_id" Type="int32" Size="1" />
<Data ElementName="ability_unknown" Type="int32" Size="1" />
<Data ElementName="ability_name" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_TraitsList" ClientVersion="996" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TraitsList" >
<Data ElementName="num_traits" Type="int8" Size="1" />
<Data ElementName="traits_array" Type="Array" ArraySizeVariable="num_traits">
<Data ElementName="trait_level" Type="int8" Size="1" />
<Data ElementName="trait_line" Type="int8" Size="1" />
<Data ElementName="trait0_icon" Type="int16" Size="1" />
<Data ElementName="trait0_icon2" Type="int16" Size="1" />
<Data ElementName="trait0_id" Type="int32" Size="1" />
<Data ElementName="trait0_unknown" Type="int32" Size="1" />
<Data ElementName="trait0_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait1_icon" Type="int16" Size="1" />
<Data ElementName="trait1_icon2" Type="int16" Size="1" />
<Data ElementName="trait1_id" Type="int32" Size="1" />
<Data ElementName="trait1_unknown" Type="int32" Size="1" />
<Data ElementName="trait1_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait2_icon" Type="int16" Size="1" />
<Data ElementName="trait2_icon2" Type="int16" Size="1" />
<Data ElementName="trait2_id" Type="int32" Size="1" />
<Data ElementName="trait2_unknown" Type="int32" Size="1" />
<Data ElementName="trait2_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait3_icon" Type="int16" Size="1" />
<Data ElementName="trait3_icon2" Type="int16" Size="1" />
<Data ElementName="trait3_id" Type="int32" Size="1" />
<Data ElementName="trait3_unknown" Type="int32" Size="1" />
<Data ElementName="trait3_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait4_icon" Type="int16" Size="1" />
<Data ElementName="trait4_icon2" Type="int16" Size="1" />
<Data ElementName="trait4_id" Type="int32" Size="1" />
<Data ElementName="trait4_unknown" Type="int32" Size="1" />
<Data ElementName="trait4_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_trainings" Type="int8" Size="1" />
<Data ElementName="training_array" Type="Array" ArraySizeVariable="num_trainings">
<Data ElementName="training_level" Type="int8" Size="1" />
<Data ElementName="training_line" Type="int8" Size="1" />
<Data ElementName="training0_icon" Type="int16" Size="1" />
<Data ElementName="training0_icon2" Type="int16" Size="1" />
<Data ElementName="training0_id" Type="int32" Size="1" />
<Data ElementName="training0_unknown" Type="int32" Size="1" />
<Data ElementName="training0_name" Type="EQ2_16Bit_String" />
<Data ElementName="training1_icon" Type="int16" Size="1" />
<Data ElementName="training1_icon2" Type="int16" Size="1" />
<Data ElementName="training1_id" Type="int32" Size="1" />
<Data ElementName="training1_unknown" Type="int32" Size="1" />
<Data ElementName="training1_name" Type="EQ2_16Bit_String" />
<Data ElementName="training2_icon" Type="int16" Size="1" />
<Data ElementName="training2_icon2" Type="int16" Size="1" />
<Data ElementName="training2_id" Type="int32" Size="1" />
<Data ElementName="training2_unknown" Type="int32" Size="1" />
<Data ElementName="training2_name" Type="EQ2_16Bit_String" />
<Data ElementName="training3_icon" Type="int16" Size="1" />
<Data ElementName="training3_icon2" Type="int16" Size="1" />
<Data ElementName="training3_id" Type="int32" Size="1" />
<Data ElementName="training3_unknown" Type="int32" Size="1" />
<Data ElementName="training3_name" Type="EQ2_16Bit_String" />
<Data ElementName="training4_icon" Type="int16" Size="1" />
<Data ElementName="training4_icon2" Type="int16" Size="1" />
<Data ElementName="training4_id" Type="int32" Size="1" />
<Data ElementName="training4_unknown" Type="int32" Size="1" />
<Data ElementName="training4_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_sections" Type="int8" Size="1" />
<Data ElementName="sections_array" Type="Array" ArraySizeVariable="num_sections">
<Data ElementName="section_name" Type="EQ2_16Bit_String" />
<Data ElementName="num_traditions" Type="int8" Size="1" />
<Data ElementName="tradition_array" Type="Array" ArraySizeVariable="num_traditions">
<Data ElementName="tradition_selected" Type="int8" Size="1" />
<Data ElementName="tradition_icon" Type="int16" Size="1" />
<Data ElementName="tradition_icon2" Type="int16" Size="1" />
<Data ElementName="tradition_id" Type="int32" Size="1" />
<Data ElementName="tradition_unknown" Type="int32" Size="1" />
<Data ElementName="tradition_name" Type="EQ2_16Bit_String" />
</Data>
</Data>
<Data ElementName="allow_select" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int8" Size="1" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="ability_icon" Type="int16" Size="1" />
<Data ElementName="ability_icon2" Type="int16" Size="1" />
<Data ElementName="ability_id" Type="int32" Size="1" />
<Data ElementName="ability_unknown" Type="int32" Size="1" />
<Data ElementName="ability_name" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_TraitsList" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TraitsList" >
<Data ElementName="num_traits" Type="int8" Size="1" />
<Data ElementName="traits_array" Type="Array" ArraySizeVariable="num_traits">
<Data ElementName="trait_level" Type="int8" Size="1" />
<Data ElementName="trait_line" Type="int8" Size="1" />
<Data ElementName="trait0_icon" Type="int16" Size="1" />
<Data ElementName="trait0_icon2" Type="int16" Size="1" />
<Data ElementName="trait0_id" Type="int32" Size="1" />
<Data ElementName="trait0_unknown" Type="int32" Size="1" />
<Data ElementName="trait0_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait1_icon" Type="int16" Size="1" />
<Data ElementName="trait1_icon2" Type="int16" Size="1" />
<Data ElementName="trait1_id" Type="int32" Size="1" />
<Data ElementName="trait1_unknown" Type="int32" Size="1" />
<Data ElementName="trait1_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait2_icon" Type="int16" Size="1" />
<Data ElementName="trait2_icon2" Type="int16" Size="1" />
<Data ElementName="trait2_id" Type="int32" Size="1" />
<Data ElementName="trait2_unknown" Type="int32" Size="1" />
<Data ElementName="trait2_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait3_icon" Type="int16" Size="1" />
<Data ElementName="trait3_icon2" Type="int16" Size="1" />
<Data ElementName="trait3_id" Type="int32" Size="1" />
<Data ElementName="trait3_unknown" Type="int32" Size="1" />
<Data ElementName="trait3_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait4_icon" Type="int16" Size="1" />
<Data ElementName="trait4_icon2" Type="int16" Size="1" />
<Data ElementName="trait4_id" Type="int32" Size="1" />
<Data ElementName="trait4_unknown" Type="int32" Size="1" />
<Data ElementName="trait4_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_trainings" Type="int8" Size="1" />
<Data ElementName="training_array" Type="Array" ArraySizeVariable="num_trainings">
<Data ElementName="training_level" Type="int8" Size="1" />
<Data ElementName="training_line" Type="int8" Size="1" />
<Data ElementName="training0_icon" Type="int16" Size="1" />
<Data ElementName="training0_icon2" Type="int16" Size="1" />
<Data ElementName="training0_id" Type="int32" Size="1" />
<Data ElementName="training0_unknown" Type="int32" Size="1" />
<Data ElementName="training0_name" Type="EQ2_16Bit_String" />
<Data ElementName="training1_icon" Type="int16" Size="1" />
<Data ElementName="training1_icon2" Type="int16" Size="1" />
<Data ElementName="training1_id" Type="int32" Size="1" />
<Data ElementName="training1_unknown" Type="int32" Size="1" />
<Data ElementName="training1_name" Type="EQ2_16Bit_String" />
<Data ElementName="training2_icon" Type="int16" Size="1" />
<Data ElementName="training2_icon2" Type="int16" Size="1" />
<Data ElementName="training2_id" Type="int32" Size="1" />
<Data ElementName="training2_unknown" Type="int32" Size="1" />
<Data ElementName="training2_name" Type="EQ2_16Bit_String" />
<Data ElementName="training3_icon" Type="int16" Size="1" />
<Data ElementName="training3_icon2" Type="int16" Size="1" />
<Data ElementName="training3_id" Type="int32" Size="1" />
<Data ElementName="training3_unknown" Type="int32" Size="1" />
<Data ElementName="training3_name" Type="EQ2_16Bit_String" />
<Data ElementName="training4_icon" Type="int16" Size="1" />
<Data ElementName="training4_icon2" Type="int16" Size="1" />
<Data ElementName="training4_id" Type="int32" Size="1" />
<Data ElementName="training4_unknown" Type="int32" Size="1" />
<Data ElementName="training4_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_sections" Type="int8" Size="1" />
<Data ElementName="sections_array" Type="Array" ArraySizeVariable="num_sections">
<Data ElementName="section_name" Type="EQ2_16Bit_String" />
<Data ElementName="num_traditions" Type="int8" Size="1" />
<Data ElementName="tradition_array" Type="Array" ArraySizeVariable="num_traditions">
<Data ElementName="tradition_selected" Type="int8" Size="1" />
<Data ElementName="tradition_icon" Type="int16" Size="1" />
<Data ElementName="tradition_icon2" Type="int16" Size="1" />
<Data ElementName="tradition_id" Type="int32" Size="1" />
<Data ElementName="tradition_unknown" Type="int32" Size="1" />
<Data ElementName="tradition_name" Type="EQ2_16Bit_String" />
</Data>
</Data>
<Data ElementName="allow_select" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int8" Size="1" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="ability_icon" Type="int16" Size="1" />
<Data ElementName="ability_icon2" Type="int16" Size="1" />
<Data ElementName="ability_id" Type="int32" Size="1" />
<Data ElementName="ability_unknown" Type="int32" Size="1" />
<Data ElementName="ability_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_focuseffects" Type="int8" Size="1" />
<Data ElementName="focus_array" Type="Array" ArraySizeVariable="num_focuseffects">
<Data ElementName="focus_selected" Type="int8" Size="1" />
<Data ElementName="focus_unknown2" Type="int8" Size="1" />
<Data ElementName="focus_icon" Type="int16" Size="1" />
<Data ElementName="focus_icon2" Type="int16" Size="1" />
<Data ElementName="focus_spell_crc" Type="int32" Size="1" />
<Data ElementName="focus_unknown3" Type="int32" Size="1" />
<Data ElementName="focus_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="focus_allow_select" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_TraitsList" ClientVersion="58617" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TraitsList" >
<Data ElementName="num_traits" Type="int8" Size="1" />
<Data ElementName="traits_array" Type="Array" ArraySizeVariable="num_traits">
<Data ElementName="trait_level" Type="int8" Size="1" />
<Data ElementName="trait_line" Type="int8" Size="1" />
<Data ElementName="trait0_icon" Type="int16" Size="1" />
<Data ElementName="trait0_icon2" Type="int16" Size="1" />
<Data ElementName="trait0_id" Type="int32" Size="1" />
<Data ElementName="trait0_unknown" Type="int32" Size="1" />
<Data ElementName="trait0_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait0_unknown2" Type="int8" Size="1" />
<Data ElementName="trait1_icon" Type="int16" Size="1" />
<Data ElementName="trait1_icon2" Type="int16" Size="1" />
<Data ElementName="trait1_id" Type="int32" Size="1" />
<Data ElementName="trait1_unknown" Type="int32" Size="1" />
<Data ElementName="trait1_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait1_unknown2" Type="int8" Size="1" />
<Data ElementName="trait2_icon" Type="int16" Size="1" />
<Data ElementName="trait2_icon2" Type="int16" Size="1" />
<Data ElementName="trait2_id" Type="int32" Size="1" />
<Data ElementName="trait2_unknown" Type="int32" Size="1" />
<Data ElementName="trait2_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait2_unknown2" Type="int8" Size="1" />
<Data ElementName="trait3_icon" Type="int16" Size="1" />
<Data ElementName="trait3_icon2" Type="int16" Size="1" />
<Data ElementName="trait3_id" Type="int32" Size="1" />
<Data ElementName="trait3_unknown" Type="int32" Size="1" />
<Data ElementName="trait3_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait3_unknown2" Type="int8" Size="1" />
<Data ElementName="trait4_icon" Type="int16" Size="1" />
<Data ElementName="trait4_icon2" Type="int16" Size="1" />
<Data ElementName="trait4_id" Type="int32" Size="1" />
<Data ElementName="trait4_unknown" Type="int32" Size="1" />
<Data ElementName="trait4_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait4_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_trainings" Type="int8" Size="1" />
<Data ElementName="training_array" Type="Array" ArraySizeVariable="num_trainings">
<Data ElementName="training_level" Type="int8" Size="1" />
<Data ElementName="training_line" Type="int8" Size="1" />
<Data ElementName="training0_icon" Type="int16" Size="1" />
<Data ElementName="training0_icon2" Type="int16" Size="1" />
<Data ElementName="training0_id" Type="int32" Size="1" />
<Data ElementName="training0_unknown" Type="int32" Size="1" />
<Data ElementName="training0_name" Type="EQ2_16Bit_String" />
<Data ElementName="training0_unknown2" Type="int8" Size="1" />
<Data ElementName="training1_icon" Type="int16" Size="1" />
<Data ElementName="training1_icon2" Type="int16" Size="1" />
<Data ElementName="training1_id" Type="int32" Size="1" />
<Data ElementName="training1_unknown" Type="int32" Size="1" />
<Data ElementName="training1_name" Type="EQ2_16Bit_String" />
<Data ElementName="training1_unknown2" Type="int8" Size="1" />
<Data ElementName="training2_icon" Type="int16" Size="1" />
<Data ElementName="training2_icon2" Type="int16" Size="1" />
<Data ElementName="training2_id" Type="int32" Size="1" />
<Data ElementName="training2_unknown" Type="int32" Size="1" />
<Data ElementName="training2_name" Type="EQ2_16Bit_String" />
<Data ElementName="training2_unknown2" Type="int8" Size="1" />
<Data ElementName="training3_icon" Type="int16" Size="1" />
<Data ElementName="training3_icon2" Type="int16" Size="1" />
<Data ElementName="training3_id" Type="int32" Size="1" />
<Data ElementName="training3_unknown" Type="int32" Size="1" />
<Data ElementName="training3_name" Type="EQ2_16Bit_String" />
<Data ElementName="training3_unknown2" Type="int8" Size="1" />
<Data ElementName="training4_icon" Type="int16" Size="1" />
<Data ElementName="training4_icon2" Type="int16" Size="1" />
<Data ElementName="training4_id" Type="int32" Size="1" />
<Data ElementName="training4_unknown" Type="int32" Size="1" />
<Data ElementName="training4_name" Type="EQ2_16Bit_String" />
<Data ElementName="training4_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_sections" Type="int8" Size="1" />
<Data ElementName="sections_array" Type="Array" ArraySizeVariable="num_sections">
<Data ElementName="section_name" Type="EQ2_16Bit_String" />
<Data ElementName="num_traditions" Type="int8" Size="1" />
<Data ElementName="tradition_array" Type="Array" ArraySizeVariable="num_traditions">
<Data ElementName="tradition_selected" Type="int8" Size="1" />
<Data ElementName="tradition_icon" Type="int16" Size="1" />
<Data ElementName="tradition_icon2" Type="int16" Size="1" />
<Data ElementName="tradition_id" Type="int32" Size="1" />
<Data ElementName="tradition_unknown" Type="int32" Size="1" />
<Data ElementName="tradition_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradition_unknown_58617_MJ1" Type="int8" Size="1" />
</Data>
</Data>
<Data ElementName="allow_select" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int8" Size="1" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="ability_icon" Type="int16" Size="1" />
<Data ElementName="ability_icon2" Type="int16" Size="1" />
<Data ElementName="ability_id" Type="int32" Size="1" />
<Data ElementName="ability_unknown" Type="int32" Size="1" />
<Data ElementName="ability_name" Type="EQ2_16Bit_String" />
<Data ElementName="ability_unknown_58617_MJ1" Type="int8" Size="1" />
</Data>
<Data ElementName="num_focuseffects" Type="int8" Size="1" />
<Data ElementName="focus_array" Type="Array" ArraySizeVariable="num_focuseffects">
<Data ElementName="focus_selected" Type="int8" Size="1" />
<Data ElementName="focus_unknown2" Type="int8" Size="1" />
<Data ElementName="focus_icon" Type="int16" Size="1" />
<Data ElementName="focus_icon2" Type="int16" Size="1" />
<Data ElementName="focus_spell_crc" Type="int32" Size="1" />
<Data ElementName="focus_unknown3" Type="int32" Size="1" />
<Data ElementName="focus_name" Type="EQ2_16Bit_String" />
<Data ElementName="focus_unknown_58617_MJ1" Type="int8" Size="1" />
</Data>
<Data ElementName="focus_allow_select" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_TraitsList" ClientVersion="63073" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TraitsList" >
<Data ElementName="num_traits" Type="int8" Size="1" />
<Data ElementName="traits_array" Type="Array" ArraySizeVariable="num_traits">
<Data ElementName="trait_level" Type="int8" Size="1" />
<Data ElementName="trait_line" Type="int8" Size="1" />
<Data ElementName="trait0_icon" Type="int16" Size="1" />
<Data ElementName="trait0_icon2" Type="int16" Size="1" />
<Data ElementName="trait0_id" Type="int32" Size="1" />
<Data ElementName="trait0_unknown" Type="int32" Size="1" />
<Data ElementName="trait0_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait0_unknown2" Type="int8" Size="1" />
<Data ElementName="trait1_icon" Type="int16" Size="1" />
<Data ElementName="trait1_icon2" Type="int16" Size="1" />
<Data ElementName="trait1_id" Type="int32" Size="1" />
<Data ElementName="trait1_unknown" Type="int32" Size="1" />
<Data ElementName="trait1_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait1_unknown2" Type="int8" Size="1" />
<Data ElementName="trait2_icon" Type="int16" Size="1" />
<Data ElementName="trait2_icon2" Type="int16" Size="1" />
<Data ElementName="trait2_id" Type="int32" Size="1" />
<Data ElementName="trait2_unknown" Type="int32" Size="1" />
<Data ElementName="trait2_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait2_unknown2" Type="int8" Size="1" />
<Data ElementName="trait3_icon" Type="int16" Size="1" />
<Data ElementName="trait3_icon2" Type="int16" Size="1" />
<Data ElementName="trait3_id" Type="int32" Size="1" />
<Data ElementName="trait3_unknown" Type="int32" Size="1" />
<Data ElementName="trait3_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait3_unknown2" Type="int8" Size="1" />
<Data ElementName="trait4_icon" Type="int16" Size="1" />
<Data ElementName="trait4_icon2" Type="int16" Size="1" />
<Data ElementName="trait4_id" Type="int32" Size="1" />
<Data ElementName="trait4_unknown" Type="int32" Size="1" />
<Data ElementName="trait4_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait4_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_trainings" Type="int8" Size="1" />
<Data ElementName="training_array" Type="Array" ArraySizeVariable="num_trainings">
<Data ElementName="training_level" Type="int8" Size="1" />
<Data ElementName="training_line" Type="int8" Size="1" />
<Data ElementName="training0_icon" Type="int16" Size="1" />
<Data ElementName="training0_icon2" Type="int16" Size="1" />
<Data ElementName="training0_id" Type="int32" Size="1" />
<Data ElementName="training0_unknown" Type="int32" Size="1" />
<Data ElementName="training0_name" Type="EQ2_16Bit_String" />
<Data ElementName="training0_unknown2" Type="int8" Size="1" />
<Data ElementName="training1_icon" Type="int16" Size="1" />
<Data ElementName="training1_icon2" Type="int16" Size="1" />
<Data ElementName="training1_id" Type="int32" Size="1" />
<Data ElementName="training1_unknown" Type="int32" Size="1" />
<Data ElementName="training1_name" Type="EQ2_16Bit_String" />
<Data ElementName="training1_unknown2" Type="int8" Size="1" />
<Data ElementName="training2_icon" Type="int16" Size="1" />
<Data ElementName="training2_icon2" Type="int16" Size="1" />
<Data ElementName="training2_id" Type="int32" Size="1" />
<Data ElementName="training2_unknown" Type="int32" Size="1" />
<Data ElementName="training2_name" Type="EQ2_16Bit_String" />
<Data ElementName="training2_unknown2" Type="int8" Size="1" />
<Data ElementName="training3_icon" Type="int16" Size="1" />
<Data ElementName="training3_icon2" Type="int16" Size="1" />
<Data ElementName="training3_id" Type="int32" Size="1" />
<Data ElementName="training3_unknown" Type="int32" Size="1" />
<Data ElementName="training3_name" Type="EQ2_16Bit_String" />
<Data ElementName="training3_unknown2" Type="int8" Size="1" />
<Data ElementName="training4_icon" Type="int16" Size="1" />
<Data ElementName="training4_icon2" Type="int16" Size="1" />
<Data ElementName="training4_id" Type="int32" Size="1" />
<Data ElementName="training4_unknown" Type="int32" Size="1" />
<Data ElementName="training4_name" Type="EQ2_16Bit_String" />
<Data ElementName="training4_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_sections" Type="int8" Size="1" />
<Data ElementName="sections_array" Type="Array" ArraySizeVariable="num_sections">
<Data ElementName="section_name" Type="EQ2_16Bit_String" />
<Data ElementName="num_traditions" Type="int8" Size="1" />
<Data ElementName="tradition_array" Type="Array" ArraySizeVariable="num_traditions">
<Data ElementName="tradition_selected" Type="int8" Size="1" />
<Data ElementName="tradition_icon" Type="int16" Size="1" />
<Data ElementName="tradition_icon2" Type="int16" Size="1" />
<Data ElementName="tradition_id" Type="int32" Size="1" />
<Data ElementName="tradition_unknown" Type="int32" Size="1" />
<Data ElementName="tradition_name" Type="EQ2_16Bit_String" />
</Data>
</Data>
<Data ElementName="allow_select" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int8" Size="1" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="ability_icon" Type="int16" Size="1" />
<Data ElementName="ability_icon2" Type="int16" Size="1" />
<Data ElementName="ability_id" Type="int32" Size="1" />
<Data ElementName="ability_unknown" Type="int32" Size="1" />
<Data ElementName="ability_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_focuseffects" Type="int8" Size="1" />
<Data ElementName="focus_array" Type="Array" ArraySizeVariable="num_focuseffects">
<Data ElementName="focus_unknown1" Type="int8" Size="1" />
<Data ElementName="focus_unknown2" Type="int8" Size="1" />
<Data ElementName="focus_icon" Type="int16" Size="1" />
<Data ElementName="focus_icon2" Type="int16" Size="1" />
<Data ElementName="focus_spell_crc" Type="int32" Size="1" />
<Data ElementName="focus_unknown3" Type="int32" Size="1" />
<Data ElementName="focus_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_TraitsList" ClientVersion="63122" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TraitsList" >
<Data ElementName="num_traits" Type="int8" Size="1" />
<Data ElementName="traits_array" Type="Array" ArraySizeVariable="num_traits">
<Data ElementName="trait_level" Type="int8" Size="1" />
<Data ElementName="trait_line" Type="int8" Size="1" />
<Data ElementName="trait0_icon" Type="int16" Size="1" />
<Data ElementName="trait0_icon2" Type="int16" Size="1" />
<Data ElementName="trait0_id" Type="int32" Size="1" />
<Data ElementName="trait0_unknown" Type="int32" Size="1" />
<Data ElementName="trait0_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait0_unknown2" Type="int8" Size="1" />
<Data ElementName="trait1_icon" Type="int16" Size="1" />
<Data ElementName="trait1_icon2" Type="int16" Size="1" />
<Data ElementName="trait1_id" Type="int32" Size="1" />
<Data ElementName="trait1_unknown" Type="int32" Size="1" />
<Data ElementName="trait1_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait1_unknown2" Type="int8" Size="1" />
<Data ElementName="trait2_icon" Type="int16" Size="1" />
<Data ElementName="trait2_icon2" Type="int16" Size="1" />
<Data ElementName="trait2_id" Type="int32" Size="1" />
<Data ElementName="trait2_unknown" Type="int32" Size="1" />
<Data ElementName="trait2_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait2_unknown2" Type="int8" Size="1" />
<Data ElementName="trait3_icon" Type="int16" Size="1" />
<Data ElementName="trait3_icon2" Type="int16" Size="1" />
<Data ElementName="trait3_id" Type="int32" Size="1" />
<Data ElementName="trait3_unknown" Type="int32" Size="1" />
<Data ElementName="trait3_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait3_unknown2" Type="int8" Size="1" />
<Data ElementName="trait4_icon" Type="int16" Size="1" />
<Data ElementName="trait4_icon2" Type="int16" Size="1" />
<Data ElementName="trait4_id" Type="int32" Size="1" />
<Data ElementName="trait4_unknown" Type="int32" Size="1" />
<Data ElementName="trait4_name" Type="EQ2_16Bit_String" />
<Data ElementName="trait4_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_trainings" Type="int8" Size="1" />
<Data ElementName="training_array" Type="Array" ArraySizeVariable="num_trainings">
<Data ElementName="training_level" Type="int8" Size="1" />
<Data ElementName="training_line" Type="int8" Size="1" />
<Data ElementName="training0_icon" Type="int16" Size="1" />
<Data ElementName="training0_icon2" Type="int16" Size="1" />
<Data ElementName="training0_id" Type="int32" Size="1" />
<Data ElementName="training0_unknown" Type="int32" Size="1" />
<Data ElementName="training0_name" Type="EQ2_16Bit_String" />
<Data ElementName="training0_unknown2" Type="int8" Size="1" />
<Data ElementName="training1_icon" Type="int16" Size="1" />
<Data ElementName="training1_icon2" Type="int16" Size="1" />
<Data ElementName="training1_id" Type="int32" Size="1" />
<Data ElementName="training1_unknown" Type="int32" Size="1" />
<Data ElementName="training1_name" Type="EQ2_16Bit_String" />
<Data ElementName="training1_unknown2" Type="int8" Size="1" />
<Data ElementName="training2_icon" Type="int16" Size="1" />
<Data ElementName="training2_icon2" Type="int16" Size="1" />
<Data ElementName="training2_id" Type="int32" Size="1" />
<Data ElementName="training2_unknown" Type="int32" Size="1" />
<Data ElementName="training2_name" Type="EQ2_16Bit_String" />
<Data ElementName="training2_unknown2" Type="int8" Size="1" />
<Data ElementName="training3_icon" Type="int16" Size="1" />
<Data ElementName="training3_icon2" Type="int16" Size="1" />
<Data ElementName="training3_id" Type="int32" Size="1" />
<Data ElementName="training3_unknown" Type="int32" Size="1" />
<Data ElementName="training3_name" Type="EQ2_16Bit_String" />
<Data ElementName="training3_unknown2" Type="int8" Size="1" />
<Data ElementName="training4_icon" Type="int16" Size="1" />
<Data ElementName="training4_icon2" Type="int16" Size="1" />
<Data ElementName="training4_id" Type="int32" Size="1" />
<Data ElementName="training4_unknown" Type="int32" Size="1" />
<Data ElementName="training4_name" Type="EQ2_16Bit_String" />
<Data ElementName="training4_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_sections" Type="int8" Size="1" />
<Data ElementName="sections_array" Type="Array" ArraySizeVariable="num_sections">
<Data ElementName="section_name" Type="EQ2_16Bit_String" />
<Data ElementName="num_traditions" Type="int8" Size="1" />
<Data ElementName="tradition_array" Type="Array" ArraySizeVariable="num_traditions">
<Data ElementName="tradition_selected" Type="int8" Size="1" />
<Data ElementName="tradition_icon" Type="int16" Size="1" />
<Data ElementName="tradition_icon2" Type="int16" Size="1" />
<Data ElementName="tradition_id" Type="int32" Size="1" />
<Data ElementName="tradition_unknown" Type="int32" Size="1" />
<Data ElementName="tradition_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradition_unknown2" Type="int8" Size="1" />
</Data>
</Data>
<Data ElementName="allow_select" Type="int8" Size="1" />
<Data ElementName="num_abilities" Type="int8" Size="1" />
<Data ElementName="ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="ability_icon" Type="int16" Size="1" />
<Data ElementName="ability_icon2" Type="int16" Size="1" />
<Data ElementName="ability_id" Type="int32" Size="1" />
<Data ElementName="ability_unknown" Type="int32" Size="1" />
<Data ElementName="ability_name" Type="EQ2_16Bit_String" />
<Data ElementName="ability_unknown2" Type="int8" Size="1" />
</Data>
<Data ElementName="num_focuseffects" Type="int8" Size="1" />
<Data ElementName="focus_array" Type="Array" ArraySizeVariable="num_focuseffects">
<Data ElementName="focus_unknown1" Type="int8" Size="1" />
<Data ElementName="focus_unknown2" Type="int8" Size="1" />
<Data ElementName="focus_icon" Type="int16" Size="1" />
<Data ElementName="focus_icon2" Type="int16" Size="1" />
<Data ElementName="focus_spell_crc" Type="int32" Size="1" />
<Data ElementName="focus_unknown3" Type="int32" Size="1" />
<Data ElementName="focus_name" Type="EQ2_16Bit_String" />
<Data ElementName="focus_unknown4" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="1" />
<Data ElementName="unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="unknown12_array" Type="Array" ArraySizeVariable="unknown12_num_items">
<Data ElementName="unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown13" Type="int32" Size="1" />
<Data ElementName="unknown14" Type="int8" Size="1" />
<Data ElementName="unknown15" Type="int32" Size="1" />
<Data ElementName="unknown16" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown17" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown20" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown21" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown22" Type="int16" Size="2" />
<Data ElementName="unknown24" Type="int8" Size="1" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown25" Type="int16" Size="1" />
<Data ElementName="subclass_total" Type="int16" Size="1" />
<Data ElementName="unknown26" Type="int16" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="unknown27" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int32" Size="1" />
<Data ElementName="subclass_unknown9" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown10" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown11" Type="int8" Size="1" />
<Data ElementName="subclass_unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown12_array" Type="Array" ArraySizeVariable="subclass_unknown12_num_items">
<Data ElementName="subclass_unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown13" Type="int32" Size="1" />
<Data ElementName="subclass_unknown14" Type="int8" Size="1" />
<Data ElementName="subclass_unknown15" Type="int32" Size="1" />
<Data ElementName="subclass_unknown16" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown17a" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown20" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown28" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown29" Type="int16" Size="2" />
<Data ElementName="unknown31" Type="int8" Size="1" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown32" Type="int16" Size="1" />
<Data ElementName="shadows_total" Type="int16" Size="1" />
<Data ElementName="unknown33" Type="int16" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="unknown34" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_unknown8" Type="int32" Size="1" />
<Data ElementName="tso_unknown9" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown10" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown11" Type="int8" Size="1" />
<Data ElementName="tso_unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown12_array" Type="Array" ArraySizeVariable="tso_unknown12_num_items">
<Data ElementName="tso_unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown13" Type="int32" Size="1" />
<Data ElementName="tso_unknown14" Type="int8" Size="1" />
<Data ElementName="tso_unknown15" Type="int32" Size="1" />
<Data ElementName="tso_unknown16" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown17" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown20" Type="int16" Size="1" />
<Data ElementName="global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown35" Type="int32" Size="1" />
<Data ElementName="shadows_spent" Type="int32" Size="1" />
<Data ElementName="unknown36" Type="int16" Size="3" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="996" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="1" />
<Data ElementName="unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="unknown12_array" Type="Array" ArraySizeVariable="unknown12_num_items">
<Data ElementName="unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown13" Type="int32" Size="1" />
<Data ElementName="unknown14" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown17" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown20" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown21" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown22" Type="int16" Size="2" />
<Data ElementName="unknown24" Type="int8" Size="1" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown25" Type="int16" Size="1" />
<Data ElementName="subclass_total" Type="int16" Size="1" />
<Data ElementName="unknown26" Type="int16" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="unknown27" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown10" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown11" Type="int8" Size="1" />
<Data ElementName="subclass_unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown12_array" Type="Array" ArraySizeVariable="subclass_unknown12_num_items">
<Data ElementName="subclass_unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown13" Type="int32" Size="1" />
<Data ElementName="subclass_unknown14" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown17a" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown20" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown28" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown29" Type="int16" Size="2" />
<Data ElementName="unknown31" Type="int8" Size="1" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown32" Type="int16" Size="1" />
<Data ElementName="shadows_total" Type="int16" Size="1" />
<Data ElementName="unknown33" Type="int16" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="unknown34" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown10" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown11" Type="int8" Size="1" />
<Data ElementName="tso_unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown12_array" Type="Array" ArraySizeVariable="tso_unknown12_num_items">
<Data ElementName="tso_unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown13" Type="int32" Size="1" />
<Data ElementName="tso_unknown14" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown17" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown20" Type="int16" Size="1" />
<Data ElementName="global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown35" Type="int32" Size="1" />
<Data ElementName="shadows_spent" Type="int32" Size="1" />
<Data ElementName="unknown36" Type="int16" Size="3" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1008" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="1" />
<Data ElementName="unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="unknown12_array" Type="Array" ArraySizeVariable="unknown12_num_items">
<Data ElementName="unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown13" Type="int32" Size="1" />
<Data ElementName="unknown14" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown17" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown20" Type="int32" Size="1" />
<Data ElementName="unknown20a" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown21" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown22" Type="int16" Size="2" />
<Data ElementName="unknown24" Type="int8" Size="1" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown25" Type="int16" Size="1" />
<Data ElementName="subclass_total" Type="int16" Size="1" />
<Data ElementName="unknown26" Type="int16" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="unknown27" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown10" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown11" Type="int8" Size="1" />
<Data ElementName="subclass_unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown12_array" Type="Array" ArraySizeVariable="subclass_unknown12_num_items">
<Data ElementName="subclass_unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown13" Type="int32" Size="1" />
<Data ElementName="subclass_unknown14" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown17a" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown20" Type="int32" Size="1" />
<Data ElementName="subclass_unknown20a" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown28" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown29" Type="int16" Size="2" />
<Data ElementName="unknown31" Type="int8" Size="1" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown32" Type="int16" Size="1" />
<Data ElementName="shadows_total" Type="int16" Size="1" />
<Data ElementName="unknown33" Type="int16" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="unknown34" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown10" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown11" Type="int8" Size="1" />
<Data ElementName="tso_unknown12_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown12_array" Type="Array" ArraySizeVariable="tso_unknown12_num_items">
<Data ElementName="tso_unknown12" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown13" Type="int32" Size="1" />
<Data ElementName="tso_unknown14" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown17" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown20" Type="int16" Size="1" />
<Data ElementName="tso_unknown20a" Type="int16" Size="1" />
<Data ElementName="global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown35" Type="int32" Size="1" />
<Data ElementName="shadows_spent" Type="int32" Size="1" />
<Data ElementName="unknown36" Type="int16" Size="3" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1095" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="aa_array" Type="Array" ArraySizeVariable="num_aa_trees">
<Data ElementName="tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_list_id" Type="int16" Size="1" />
<Data ElementName="max_aa" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="nodelist_nodeid" Type="int32" Size="1" />
<Data ElementName="kos_req" Type="int8" Size="1" />
<Data ElementName="num_node_items" Type="int32" Size="1" />
<Data ElementName="node_item_array" Type="Array" ArraySizeVariable="num_node_items">
<Data ElementName="parent_id" Type="int32" Size="1" />
<Data ElementName="parent_req_tier" Type="int8" Size="1" />
<Data ElementName="spell_id" Type="int32" Size="1" />
<Data ElementName="active" Type="int8" Size="1" />
<Data ElementName="spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="icon2" Type="int16" Size="1" />
<Data ElementName="current_rank" Type="int8" Size="1" />
<Data ElementName="max_rank" Type="int8" Size="1" />
<Data ElementName="rank_cost" Type="int8" Size="1" />
<Data ElementName="min_level" Type="int8" Size="1" />
<Data ElementName="unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="unknown5_array" Type="Array" ArraySizeVariable="unknown5_num_items">
<Data ElementName="unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="classification1" Type="EQ2_16Bit_String" />
<Data ElementName="points_req" Type="int8" Size="1" />
<Data ElementName="nknown8" Type="int8" Size="1" />
<Data ElementName="classification2" Type="EQ2_16Bit_String" />
<Data ElementName="col" Type="int8" Size="1" />
<Data ElementName="row" Type="int8" Size="1" />
<Data ElementName="line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int16" Size="1" />
<Data ElementName="points_to_unlock" Type="int16" Size="1" />
<Data ElementName="unknown9b" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown11a" Type="int8" Size="3" />
</Data>
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1096" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_tree_node_id" Type="int16" Size="1" />
<Data ElementName="class_max_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="class_kos_req" Type="int8" Size="1" />
<Data ElementName="class_num_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="class_num_items">
<Data ElementName="class_parent_id" Type="int32" Size="1" />
<Data ElementName="class_req_tier" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_active" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_min_lev" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="class_unknown6" Type="int32" Size="1" />
<Data ElementName="class_unknown7" Type="int8" Size="1" />
<Data ElementName="class_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="class_unknown8" Type="int8" Size="1" />
<Data ElementName="class_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown9" Type="int32" Size="1" />
<Data ElementName="class_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="class_unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="class_unknown11" Type="int8" Size="5" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_tree_node_id" Type="int16" Size="1" />
<Data ElementName="subclass_max_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="subclass_eof_req" Type="int8" Size="1" />
<Data ElementName="subclass_num_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="subclass_num_items">
<Data ElementName="subclass_parent_id" Type="int32" Size="1" />
<Data ElementName="subclass_req_tier" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_active" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_min_lev" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_numitems" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_numitems">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="subclass_unknown10" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="subclass_unknown11" Type="int8" Size="5" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_tree_node_id" Type="int16" Size="1" />
<Data ElementName="shadows_max_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="shadows_eof_req" Type="int8" Size="1" />
<Data ElementName="shadows_num_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="shadows_num_items">
<Data ElementName="shadows_parent_id" Type="int32" Size="1" />
<Data ElementName="shadows_req_tier" Type="int8" Size="1" />
<Data ElementName="shadows_spell_id" Type="int32" Size="1" />
<Data ElementName="shadows_active" Type="int8" Size="1" />
<Data ElementName="shadows_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_icon" Type="int16" Size="1" />
<Data ElementName="shadows_icon2" Type="int16" Size="1" />
<Data ElementName="shadows_current_rank" Type="int8" Size="1" />
<Data ElementName="shadows_max_rank" Type="int8" Size="1" />
<Data ElementName="shadows_rank_cost" Type="int8" Size="1" />
<Data ElementName="shadows_min_lev" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_array" Type="Array" ArraySizeVariable="shadows_unknown5_num_items">
<Data ElementName="shadows_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="shadows_unknown6" Type="int32" Size="1" />
<Data ElementName="shadows_unknown7" Type="int8" Size="1" />
<Data ElementName="shadows_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_points_req" Type="int8" Size="1" />
<Data ElementName="shadows_unknown8" Type="int8" Size="1" />
<Data ElementName="shadows_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_col" Type="int8" Size="1" />
<Data ElementName="shadows_row" Type="int8" Size="1" />
<Data ElementName="shadows_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown9" Type="int32" Size="1" />
<Data ElementName="shadows_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="shadows_unknown10" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="shadows_unknown11" Type="int8" Size="5" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_tree_node_id" Type="int16" Size="1" />
<Data ElementName="heroic_max_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_eof_req" Type="int8" Size="1" />
<Data ElementName="heroic_num_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="heroic_num_items">
<Data ElementName="heroic_parent_id" Type="int32" Size="1" />
<Data ElementName="heroic_req_tier" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_active" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_min_lev" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int32" Size="1" />
<Data ElementName="heroic_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="heroic_unknown10" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="heroic_unknown11" Type="int8" Size="5" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1188" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="kos_req" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="class_unknown1" Type="int32" Size="1" />
<Data ElementName="class_unknown2" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_unknown3" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_unknown4" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown9a" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="3" />
<Data ElementName="unknown12" Type="int8" Size="2" />
<Data ElementName="unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="unknown14" Type="int32" Size="1" />
<Data ElementName="unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="unknown16" Type="int8" Size="7" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="max_subclass_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="eof_req" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown1" Type="int32" Size="1" />
<Data ElementName="subclass_unknown2" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown3" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown4" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_num_items">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_unknown9a" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown20" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="3" />
<Data ElementName="unknown22" Type="int8" Size="3" />
<Data ElementName="unknown23" Type="EQ2_16Bit_String" />
<Data ElementName="unknown24" Type="int32" Size="1" />
<Data ElementName="unknown25" Type="EQ2_16Bit_String" />
<Data ElementName="unknown26" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown27" Type="int16" Size="1" />
<Data ElementName="max_shadows_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="rok_req" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown1" Type="int32" Size="1" />
<Data ElementName="tso_unknown2" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown3" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown4" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_array" Type="Array" ArraySizeVariable="tso_unknown5_num_items">
<Data ElementName="tso_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown8" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown9" Type="int16" Size="1" />
<Data ElementName="tso_unknown9a" Type="int16" Size="1" />
<Data ElementName="tso_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown30" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown31" Type="int16" Size="3" />
<Data ElementName="unknown32" Type="int8" Size="3" />
<Data ElementName="unknown33" Type="EQ2_16Bit_String" />
<Data ElementName="unknown34" Type="int32" Size="1" />
<Data ElementName="unknown35" Type="EQ2_16Bit_String" />
<Data ElementName="unknown36" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown37" Type="int16" Size="1" />
<Data ElementName="max_heroic_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_dov_req" Type="int8" Size="1" />
<Data ElementName="num_heroic_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="num_heroic_items">
<Data ElementName="heroic_unknown1" Type="int32" Size="1" />
<Data ElementName="heroic_unknown2" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_unknown3" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_unknown4" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9a" Type="int16" Size="1" />
<Data ElementName="heroic_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown40" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown41" Type="int16" Size="3" />
<Data ElementName="unknown42" Type="int8" Size="3" />
<Data ElementName="unknown43" Type="EQ2_16Bit_String" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="unknown45" Type="EQ2_16Bit_String" />
<Data ElementName="unknown46" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown47" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="exp_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="num_tradeskill_items">
<Data ElementName="tradeskill_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown50" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown51" Type="int16" Size="3" />
<Data ElementName="unknown52" Type="int8" Size="3" />
<Data ElementName="unknown53" Type="EQ2_16Bit_String" />
<Data ElementName="unknown54" Type="int32" Size="1" />
<Data ElementName="unknown55" Type="EQ2_16Bit_String" />
<Data ElementName="unknown56" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown57" Type="int16" Size="1" />
<Data ElementName="max_prestige_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_dov_req" Type="int8" Size="1" />
<Data ElementName="num_prestige_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="num_prestige_items">
<Data ElementName="prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="prestige_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown60" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown61" Type="int16" Size="3" />
<Data ElementName="unknown62" Type="int8" Size="3" />
<Data ElementName="unknown63" Type="EQ2_16Bit_String" />
<Data ElementName="unknown64" Type="int32" Size="1" />
<Data ElementName="unknown65" Type="EQ2_16Bit_String" />
<Data ElementName="unknown66" Type="int8" Size="6" />
<Data ElementName="tradeskill_prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown67" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_prestige_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_id" Type="int32" Size="1" />
<Data ElementName="coe_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_prestige_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_array" Type="Array" ArraySizeVariable="num_tradeskill_prestige_items">
<Data ElementName="tradeskill_prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_prestige_unknown5_num_items">
<Data ElementName="tradeskill_prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown70" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown71" Type="int16" Size="3" />
<Data ElementName="unknown72" Type="int8" Size="3" />
<Data ElementName="unknown73" Type="EQ2_16Bit_String" />
<Data ElementName="unknown74" Type="int32" Size="1" />
<Data ElementName="unknown75" Type="EQ2_16Bit_String" />
<Data ElementName="unknown76" Type="int8" Size="8" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1193" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown3" Type="int16" Size="1" />
<Data ElementName="class_max_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="class_kos_req" Type="int8" Size="1" />
<Data ElementName="class_num_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="class_num_items">
<Data ElementName="class_parent_id" Type="int32" Size="1" />
<Data ElementName="class_req_tier" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_active" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_min_lev" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="class_unknown6" Type="int32" Size="1" />
<Data ElementName="class_unknown7" Type="int8" Size="1" />
<Data ElementName="class_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="class_unknown8" Type="int8" Size="1" />
<Data ElementName="class_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown9" Type="int32" Size="1" />
<Data ElementName="class_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="class_unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="class_unknown11" Type="int16" Size="3" />
<Data ElementName="class_unknown12" Type="int8" Size="3" />
<Data ElementName="class_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown14" Type="int32" Size="1" />
<Data ElementName="class_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown16" Type="int8" Size="6" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown3" Type="int16" Size="1" />
<Data ElementName="subclass_max_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="subclass_eof_req" Type="int8" Size="1" />
<Data ElementName="subclass_num_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="subclass_num_items">
<Data ElementName="subclass_parent_id" Type="int32" Size="1" />
<Data ElementName="subclass_req_tier" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_active" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_min_lev" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_numitems" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_numitems">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="subclass_unknown10" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="subclass_unknown11" Type="int16" Size="3" />
<Data ElementName="subclass_unknown12" Type="int8" Size="3" />
<Data ElementName="subclass_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown14" Type="int32" Size="1" />
<Data ElementName="subclass_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown16" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown3" Type="int16" Size="1" />
<Data ElementName="shadows_max_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="shadows_eof_req" Type="int8" Size="1" />
<Data ElementName="shadows_num_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="shadows_num_items">
<Data ElementName="shadows_parent_id" Type="int32" Size="1" />
<Data ElementName="shadows_req_tier" Type="int8" Size="1" />
<Data ElementName="shadows_spell_id" Type="int32" Size="1" />
<Data ElementName="shadows_active" Type="int8" Size="1" />
<Data ElementName="shadows_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_icon" Type="int16" Size="1" />
<Data ElementName="shadows_icon2" Type="int16" Size="1" />
<Data ElementName="shadows_current_rank" Type="int8" Size="1" />
<Data ElementName="shadows_max_rank" Type="int8" Size="1" />
<Data ElementName="shadows_rank_cost" Type="int8" Size="1" />
<Data ElementName="shadows_min_lev" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_array" Type="Array" ArraySizeVariable="shadows_unknown5_num_items">
<Data ElementName="shadows_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="shadows_unknown6" Type="int32" Size="1" />
<Data ElementName="shadows_unknown7" Type="int8" Size="1" />
<Data ElementName="shadows_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_points_req" Type="int8" Size="1" />
<Data ElementName="shadows_unknown8" Type="int8" Size="1" />
<Data ElementName="shadows_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_col" Type="int8" Size="1" />
<Data ElementName="shadows_row" Type="int8" Size="1" />
<Data ElementName="shadows_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown9" Type="int32" Size="1" />
<Data ElementName="shadows_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="shadows_unknown10" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="shadows_unknown11" Type="int16" Size="3" />
<Data ElementName="shadows_unknown12" Type="int8" Size="3" />
<Data ElementName="shadows_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown14" Type="int32" Size="1" />
<Data ElementName="shadows_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown16" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown3" Type="int16" Size="1" />
<Data ElementName="heroic_max_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_eof_req" Type="int8" Size="1" />
<Data ElementName="heroic_num_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="heroic_num_items">
<Data ElementName="heroic_parent_id" Type="int32" Size="1" />
<Data ElementName="heroic_req_tier" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_active" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_min_lev" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int32" Size="1" />
<Data ElementName="heroic_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="heroic_unknown10" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="heroic_unknown11" Type="int16" Size="3" />
<Data ElementName="heroic_unknown12" Type="int8" Size="3" />
<Data ElementName="heroic_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown14" Type="int32" Size="1" />
<Data ElementName="heroic_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown3" Type="int16" Size="1" />
<Data ElementName="tradeskill_max_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="tradeskill_num_items">
<Data ElementName="tradeskill_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_active" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown11" Type="int16" Size="3" />
<Data ElementName="tradeskill_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskill_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown16" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown3" Type="int16" Size="1" />
<Data ElementName="prestige_max_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_eof_req" Type="int8" Size="1" />
<Data ElementName="prestige_num_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="prestige_num_items">
<Data ElementName="prestige_parent_id" Type="int32" Size="1" />
<Data ElementName="prestige_req_tier" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_active" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_min_lev" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int32" Size="1" />
<Data ElementName="prestige_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="prestige_unknown10" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="prestige_unknown11" Type="int16" Size="3" />
<Data ElementName="prestige_unknown12" Type="int8" Size="3" />
<Data ElementName="prestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown14" Type="int32" Size="1" />
<Data ElementName="prestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskillprestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown3" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_max_aa" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_array" Type="Array" ArraySizeVariable="tradeskillprestige_num_items">
<Data ElementName="tradeskillprestige_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_active" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskillprestige_unknown5_num_items">
<Data ElementName="tradeskillprestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown11" Type="int16" Size="3" />
<Data ElementName="tradeskillprestige_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskillprestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown16" Type="int8" Size="6" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="1199" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown3" Type="int16" Size="1" />
<Data ElementName="class_max_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="class_kos_req" Type="int8" Size="1" />
<Data ElementName="class_num_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="class_num_items">
<Data ElementName="class_parent_id" Type="int32" Size="1" />
<Data ElementName="class_req_tier" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_active" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_min_lev" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="class_unknown6" Type="int32" Size="1" />
<Data ElementName="class_unknown7" Type="int8" Size="1" />
<Data ElementName="class_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="class_unknown8" Type="int8" Size="1" />
<Data ElementName="class_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown9" Type="int32" Size="1" />
<Data ElementName="class_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="class_unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="class_unknown11" Type="int16" Size="3" />
<Data ElementName="class_unknown12" Type="int8" Size="3" />
<Data ElementName="class_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown14" Type="int32" Size="1" />
<Data ElementName="class_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown16" Type="int8" Size="6" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown3" Type="int16" Size="1" />
<Data ElementName="subclass_max_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="subclass_eof_req" Type="int8" Size="1" />
<Data ElementName="subclass_num_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="subclass_num_items">
<Data ElementName="subclass_parent_id" Type="int32" Size="1" />
<Data ElementName="subclass_req_tier" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_active" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_min_lev" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_numitems" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_numitems">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="subclass_unknown10" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="subclass_unknown11" Type="int16" Size="3" />
<Data ElementName="subclass_unknown12" Type="int8" Size="3" />
<Data ElementName="subclass_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown14" Type="int32" Size="1" />
<Data ElementName="subclass_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown16" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown3" Type="int16" Size="1" />
<Data ElementName="shadows_max_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="shadows_eof_req" Type="int8" Size="1" />
<Data ElementName="shadows_num_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="shadows_num_items">
<Data ElementName="shadows_parent_id" Type="int32" Size="1" />
<Data ElementName="shadows_req_tier" Type="int8" Size="1" />
<Data ElementName="shadows_spell_id" Type="int32" Size="1" />
<Data ElementName="shadows_active" Type="int8" Size="1" />
<Data ElementName="shadows_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_icon" Type="int16" Size="1" />
<Data ElementName="shadows_icon2" Type="int16" Size="1" />
<Data ElementName="shadows_current_rank" Type="int8" Size="1" />
<Data ElementName="shadows_max_rank" Type="int8" Size="1" />
<Data ElementName="shadows_rank_cost" Type="int8" Size="1" />
<Data ElementName="shadows_min_lev" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_array" Type="Array" ArraySizeVariable="shadows_unknown5_num_items">
<Data ElementName="shadows_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="shadows_unknown6" Type="int32" Size="1" />
<Data ElementName="shadows_unknown7" Type="int8" Size="1" />
<Data ElementName="shadows_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_points_req" Type="int8" Size="1" />
<Data ElementName="shadows_unknown8" Type="int8" Size="1" />
<Data ElementName="shadows_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_col" Type="int8" Size="1" />
<Data ElementName="shadows_row" Type="int8" Size="1" />
<Data ElementName="shadows_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown9" Type="int32" Size="1" />
<Data ElementName="shadows_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="shadows_unknown10" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="shadows_unknown11" Type="int16" Size="3" />
<Data ElementName="shadows_unknown12" Type="int8" Size="3" />
<Data ElementName="shadows_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown14" Type="int32" Size="1" />
<Data ElementName="shadows_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown16" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown3" Type="int16" Size="1" />
<Data ElementName="heroic_max_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_eof_req" Type="int8" Size="1" />
<Data ElementName="heroic_num_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="heroic_num_items">
<Data ElementName="heroic_parent_id" Type="int32" Size="1" />
<Data ElementName="heroic_req_tier" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_active" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_min_lev" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int32" Size="1" />
<Data ElementName="heroic_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="heroic_unknown10" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="heroic_unknown11" Type="int16" Size="3" />
<Data ElementName="heroic_unknown12" Type="int8" Size="3" />
<Data ElementName="heroic_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown14" Type="int32" Size="1" />
<Data ElementName="heroic_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown3" Type="int16" Size="1" />
<Data ElementName="tradeskill_max_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="tradeskill_num_items">
<Data ElementName="tradeskill_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_active" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown11" Type="int16" Size="3" />
<Data ElementName="tradeskill_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskill_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown16" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown3" Type="int16" Size="1" />
<Data ElementName="prestige_max_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_eof_req" Type="int8" Size="1" />
<Data ElementName="prestige_num_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="prestige_num_items">
<Data ElementName="prestige_parent_id" Type="int32" Size="1" />
<Data ElementName="prestige_req_tier" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_active" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_min_lev" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int32" Size="1" />
<Data ElementName="prestige_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="prestige_unknown10" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="prestige_unknown11" Type="int16" Size="3" />
<Data ElementName="prestige_unknown12" Type="int8" Size="3" />
<Data ElementName="prestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown14" Type="int32" Size="1" />
<Data ElementName="prestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskillprestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown3" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_max_aa" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_array" Type="Array" ArraySizeVariable="tradeskillprestige_num_items">
<Data ElementName="tradeskillprestige_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_active" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskillprestige_unknown5_num_items">
<Data ElementName="tradeskillprestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_to_unlock" Type="int16" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown11" Type="int16" Size="3" />
<Data ElementName="tradeskillprestige_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskillprestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown16" Type="int8" Size="6" />
<Data ElementName="unknown12" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="57032" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="kos_req" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="class_unknown1" Type="int32" Size="1" />
<Data ElementName="class_unknown2" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_unknown3" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_unknown4" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown9a" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="3" />
<Data ElementName="unknown12" Type="int8" Size="2" />
<Data ElementName="unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="unknown14" Type="int32" Size="1" />
<Data ElementName="unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="unknown16" Type="int8" Size="7" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="max_subclass_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="eof_req" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown1" Type="int32" Size="1" />
<Data ElementName="subclass_unknown2" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown3" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown4" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_num_items">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_unknown9a" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown20" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="3" />
<Data ElementName="unknown22" Type="int8" Size="3" />
<Data ElementName="unknown23" Type="EQ2_16Bit_String" />
<Data ElementName="unknown24" Type="int32" Size="1" />
<Data ElementName="unknown25" Type="EQ2_16Bit_String" />
<Data ElementName="unknown26" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown27" Type="int16" Size="1" />
<Data ElementName="max_shadows_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="rok_req" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown1" Type="int32" Size="1" />
<Data ElementName="tso_unknown2" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown3" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown4" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_array" Type="Array" ArraySizeVariable="tso_unknown5_num_items">
<Data ElementName="tso_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown8" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown9" Type="int16" Size="1" />
<Data ElementName="tso_unknown9a" Type="int16" Size="1" />
<Data ElementName="tso_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown30" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown31" Type="int16" Size="3" />
<Data ElementName="unknown32" Type="int8" Size="3" />
<Data ElementName="unknown33" Type="EQ2_16Bit_String" />
<Data ElementName="unknown34" Type="int32" Size="1" />
<Data ElementName="unknown35" Type="EQ2_16Bit_String" />
<Data ElementName="unknown36" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown37" Type="int16" Size="1" />
<Data ElementName="max_heroic_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_dov_req" Type="int8" Size="1" />
<Data ElementName="num_heroic_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="num_heroic_items">
<Data ElementName="heroic_unknown1" Type="int32" Size="1" />
<Data ElementName="heroic_unknown2" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_unknown3" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_unknown4" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9a" Type="int16" Size="1" />
<Data ElementName="heroic_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown40" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown41" Type="int16" Size="3" />
<Data ElementName="unknown42" Type="int8" Size="3" />
<Data ElementName="unknown43" Type="EQ2_16Bit_String" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="unknown45" Type="EQ2_16Bit_String" />
<Data ElementName="unknown46" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown47" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="exp_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="num_tradeskill_items">
<Data ElementName="tradeskill_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown50" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown51" Type="int16" Size="3" />
<Data ElementName="unknown52" Type="int8" Size="3" />
<Data ElementName="unknown53" Type="EQ2_16Bit_String" />
<Data ElementName="unknown54" Type="int32" Size="1" />
<Data ElementName="unknown55" Type="EQ2_16Bit_String" />
<Data ElementName="unknown56" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown57" Type="int16" Size="1" />
<Data ElementName="max_prestige_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_dov_req" Type="int8" Size="1" />
<Data ElementName="num_prestige_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="num_prestige_items">
<Data ElementName="prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="prestige_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown60" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown61" Type="int16" Size="3" />
<Data ElementName="unknown62" Type="int8" Size="3" />
<Data ElementName="unknown63" Type="EQ2_16Bit_String" />
<Data ElementName="unknown64" Type="int32" Size="1" />
<Data ElementName="unknown65" Type="EQ2_16Bit_String" />
<Data ElementName="unknown66" Type="int8" Size="6" />
<Data ElementName="tradeskill_prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown67" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_prestige_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_id" Type="int32" Size="1" />
<Data ElementName="coe_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_prestige_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_array" Type="Array" ArraySizeVariable="num_tradeskill_prestige_items">
<Data ElementName="tradeskill_prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_prestige_unknown5_num_items">
<Data ElementName="tradeskill_prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_global_req" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown70" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown71" Type="int16" Size="3" />
<Data ElementName="unknown72" Type="int8" Size="3" />
<Data ElementName="unknown73" Type="EQ2_16Bit_String" />
<Data ElementName="unknown74" Type="int32" Size="1" />
<Data ElementName="unknown75" Type="EQ2_16Bit_String" />
<Data ElementName="unknown76" Type="int8" Size="8" />
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="57048" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="kos_req" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="class_unknown1" Type="int32" Size="1" />
<Data ElementName="class_unknown2" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_unknown3" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_unknown4" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown9a" Type="int16" Size="1" />
<Data ElementName="unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="3" />
<Data ElementName="unknown12" Type="int8" Size="2" />
<Data ElementName="unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="unknown14" Type="int32" Size="1" />
<Data ElementName="unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="unknown16" Type="int8" Size="7" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="max_subclass_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="eof_req" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown1" Type="int32" Size="1" />
<Data ElementName="subclass_unknown2" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown3" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown4" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_num_items">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_unknown9a" Type="int16" Size="1" />
<Data ElementName="subclass_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown20" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="3" />
<Data ElementName="unknown22" Type="int8" Size="3" />
<Data ElementName="unknown23" Type="EQ2_16Bit_String" />
<Data ElementName="unknown24" Type="int32" Size="1" />
<Data ElementName="unknown25" Type="EQ2_16Bit_String" />
<Data ElementName="unknown26" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown27" Type="int16" Size="1" />
<Data ElementName="max_shadows_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="rok_req" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown1" Type="int32" Size="1" />
<Data ElementName="tso_unknown2" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown3" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown4" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_array" Type="Array" ArraySizeVariable="tso_unknown5_num_items">
<Data ElementName="tso_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown8" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown9" Type="int16" Size="1" />
<Data ElementName="tso_unknown9a" Type="int16" Size="1" />
<Data ElementName="tso_global_req" Type="int16" Size="1" />
<Data ElementName="tso_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown30" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown31" Type="int16" Size="3" />
<Data ElementName="unknown32" Type="int8" Size="3" />
<Data ElementName="unknown33" Type="EQ2_16Bit_String" />
<Data ElementName="unknown34" Type="int32" Size="1" />
<Data ElementName="unknown35" Type="EQ2_16Bit_String" />
<Data ElementName="unknown36" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown37" Type="int16" Size="1" />
<Data ElementName="max_heroic_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_dov_req" Type="int8" Size="1" />
<Data ElementName="num_heroic_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="num_heroic_items">
<Data ElementName="heroic_unknown1" Type="int32" Size="1" />
<Data ElementName="heroic_unknown2" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_unknown3" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_unknown4" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9a" Type="int16" Size="1" />
<Data ElementName="heroic_global_req" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown40" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown41" Type="int16" Size="3" />
<Data ElementName="unknown42" Type="int8" Size="3" />
<Data ElementName="unknown43" Type="EQ2_16Bit_String" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="unknown45" Type="EQ2_16Bit_String" />
<Data ElementName="unknown46" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown47" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="exp_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="num_tradeskill_items">
<Data ElementName="tradeskill_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_global_req" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown50" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown51" Type="int16" Size="3" />
<Data ElementName="unknown52" Type="int8" Size="3" />
<Data ElementName="unknown53" Type="EQ2_16Bit_String" />
<Data ElementName="unknown54" Type="int32" Size="1" />
<Data ElementName="unknown55" Type="EQ2_16Bit_String" />
<Data ElementName="unknown56" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown57" Type="int16" Size="1" />
<Data ElementName="max_prestige_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_dov_req" Type="int8" Size="1" />
<Data ElementName="num_prestige_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="num_prestige_items">
<Data ElementName="prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="prestige_global_req" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown60" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown61" Type="int16" Size="3" />
<Data ElementName="unknown62" Type="int8" Size="3" />
<Data ElementName="unknown63" Type="EQ2_16Bit_String" />
<Data ElementName="unknown64" Type="int32" Size="1" />
<Data ElementName="unknown65" Type="EQ2_16Bit_String" />
<Data ElementName="unknown66" Type="int8" Size="6" />
<Data ElementName="tradeskill_prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown67" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_prestige_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_id" Type="int32" Size="1" />
<Data ElementName="coe_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_prestige_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_array" Type="Array" ArraySizeVariable="num_tradeskill_prestige_items">
<Data ElementName="tradeskill_prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_prestige_unknown5_num_items">
<Data ElementName="tradeskill_prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_global_req" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown70" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown71" Type="int16" Size="3" />
<Data ElementName="unknown72" Type="int8" Size="3" />
<Data ElementName="unknown73" Type="EQ2_16Bit_String" />
<Data ElementName="unknown74" Type="int32" Size="1" />
<Data ElementName="unknown75" Type="EQ2_16Bit_String" />
<Data ElementName="unknown76" Type="int8" Size="10" />
<Data ElementName="unknown77" Type="int32" Size="4" />
<Data ElementName="num_templates" Type="int8" Size="1" />
<Data ElementName="num_templates_array" Type="Array" ArraySizeVariable="num_templates" >
<Data ElementName="template_unknown1" Type="int8" Size="1" />
<Data ElementName="template_name" Type="EQ2_16Bit_String" />
<Data ElementName="template_unknown2" Type="int8" Size="1" />
<Data ElementName="num_tabs" Type="int16" Size="1" />
<Data ElementName="tab_template_array" Type="Array" ArraySizeVariable="num_tabs" >
<Data ElementName="tab_number" Type="int16" Size="1" />
<Data ElementName="tab_unknown1" Type="int32" Size="1" />
<Data ElementName="template_size" Type="int16" Size="1" />
<Data ElementName="template_array" Type="Array" ArraySizeVariable="template_size" >
<Data ElementName="template_pos" Type="int16" Size="1" />
<Data ElementName="template_unknown3" Type="int16" Size="1" />
<Data ElementName="template_id" Type="int32" Size="1" />
</Data>
</Data>
</Data>
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="57105" OpcodeName="OP_AdventureList">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="max_class_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="kos_req" Type="int8" Size="1" />
<Data ElementName="num_class_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="num_class_items">
<Data ElementName="class_unknown1" Type="int32" Size="1" />
<Data ElementName="class_unknown2" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_unknown3" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_unknown4" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown6" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="class_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="1" />
<Data ElementName="class_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="unknown9a" Type="int16" Size="1" />
<Data ElementName="unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="3" />
<Data ElementName="unknown12" Type="int8" Size="2" />
<Data ElementName="unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="unknown14" Type="int32" Size="1" />
<Data ElementName="unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="unknown16" Type="int8" Size="7" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="max_subclass_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="eof_req" Type="int8" Size="1" />
<Data ElementName="num_subclass_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="num_subclass_items">
<Data ElementName="subclass_unknown1" Type="int32" Size="1" />
<Data ElementName="subclass_unknown2" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_unknown3" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_unknown4" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_num_items">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_unknown9a" Type="int16" Size="1" />
<Data ElementName="subclass_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown20" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="3" />
<Data ElementName="unknown22" Type="int8" Size="3" />
<Data ElementName="unknown23" Type="EQ2_16Bit_String" />
<Data ElementName="unknown24" Type="int32" Size="1" />
<Data ElementName="unknown25" Type="EQ2_16Bit_String" />
<Data ElementName="unknown26" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown27" Type="int16" Size="1" />
<Data ElementName="max_shadows_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="rok_req" Type="int8" Size="1" />
<Data ElementName="num_shadows_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="num_shadows_items">
<Data ElementName="tso_unknown1" Type="int32" Size="1" />
<Data ElementName="tso_unknown2" Type="int8" Size="1" />
<Data ElementName="tso_spell_id" Type="int32" Size="1" />
<Data ElementName="tso_unknown3" Type="int8" Size="1" />
<Data ElementName="tso_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tso_icon" Type="int16" Size="1" />
<Data ElementName="tso_icon2" Type="int16" Size="1" />
<Data ElementName="tso_current_rank" Type="int8" Size="1" />
<Data ElementName="tso_max_rank" Type="int8" Size="1" />
<Data ElementName="tso_rank_cost" Type="int8" Size="1" />
<Data ElementName="tso_unknown4" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tso_unknown5_array" Type="Array" ArraySizeVariable="tso_unknown5_num_items">
<Data ElementName="tso_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tso_unknown6" Type="int32" Size="1" />
<Data ElementName="tso_unknown7" Type="int8" Size="1" />
<Data ElementName="tso_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_points_req" Type="int8" Size="1" />
<Data ElementName="tso_unknown8" Type="int8" Size="1" />
<Data ElementName="tso_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tso_col" Type="int8" Size="1" />
<Data ElementName="tso_row" Type="int8" Size="1" />
<Data ElementName="tso_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tso_unknown9" Type="int16" Size="1" />
<Data ElementName="tso_unknown9a" Type="int16" Size="1" />
<Data ElementName="tso_global_req" Type="int16" Size="1" />
<Data ElementName="tso_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown30" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown31" Type="int16" Size="3" />
<Data ElementName="unknown32" Type="int8" Size="3" />
<Data ElementName="unknown33" Type="EQ2_16Bit_String" />
<Data ElementName="unknown34" Type="int32" Size="1" />
<Data ElementName="unknown35" Type="EQ2_16Bit_String" />
<Data ElementName="unknown36" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown37" Type="int16" Size="1" />
<Data ElementName="max_heroic_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_dov_req" Type="int8" Size="1" />
<Data ElementName="num_heroic_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="num_heroic_items">
<Data ElementName="heroic_unknown1" Type="int32" Size="1" />
<Data ElementName="heroic_unknown2" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_unknown3" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_unknown4" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9a" Type="int16" Size="1" />
<Data ElementName="heroic_global_req" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown40" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown41" Type="int16" Size="3" />
<Data ElementName="unknown42" Type="int8" Size="3" />
<Data ElementName="unknown43" Type="EQ2_16Bit_String" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="unknown45" Type="EQ2_16Bit_String" />
<Data ElementName="unknown46" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown47" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="exp_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="num_tradeskill_items">
<Data ElementName="tradeskill_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_global_req" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown50" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown51" Type="int16" Size="3" />
<Data ElementName="unknown52" Type="int8" Size="3" />
<Data ElementName="unknown53" Type="EQ2_16Bit_String" />
<Data ElementName="unknown54" Type="int32" Size="1" />
<Data ElementName="unknown55" Type="EQ2_16Bit_String" />
<Data ElementName="unknown56" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown57" Type="int16" Size="1" />
<Data ElementName="max_prestige_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_dov_req" Type="int8" Size="1" />
<Data ElementName="num_prestige_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="num_prestige_items">
<Data ElementName="prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="prestige_global_req" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown60" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown61" Type="int16" Size="3" />
<Data ElementName="unknown62" Type="int8" Size="3" />
<Data ElementName="unknown63" Type="EQ2_16Bit_String" />
<Data ElementName="unknown64" Type="int32" Size="1" />
<Data ElementName="unknown65" Type="EQ2_16Bit_String" />
<Data ElementName="unknown66" Type="int8" Size="6" />
<Data ElementName="tradeskill_prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown67" Type="int16" Size="1" />
<Data ElementName="max_tradeskill_prestige_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_id" Type="int32" Size="1" />
<Data ElementName="coe_req" Type="int8" Size="1" />
<Data ElementName="num_tradeskill_prestige_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_array" Type="Array" ArraySizeVariable="num_tradeskill_prestige_items">
<Data ElementName="tradeskill_prestige_unknown1" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown2" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown3" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown4" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_prestige_unknown5_num_items">
<Data ElementName="tradeskill_prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_class_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_subclass_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_prestige_unknown9" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_unknown9a" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_global_req" Type="int16" Size="1" />
<Data ElementName="tradeskill_prestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown70" Type="int32" Size="1" />
<Data ElementName="tradeskill_prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown71" Type="int16" Size="3" />
<Data ElementName="unknown72" Type="int8" Size="3" />
<Data ElementName="unknown73" Type="EQ2_16Bit_String" />
<Data ElementName="unknown74" Type="int32" Size="1" />
<Data ElementName="unknown75" Type="EQ2_16Bit_String" />
<Data ElementName="unknown76" Type="int8" Size="6" />
<Data ElementName="dragon_tab_title" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown77" Type="int16" Size="1" />
<Data ElementName="max_dragon_points" Type="int32" Size="1" />
<Data ElementName="dragon_id" Type="int32" Size="1" />
<Data ElementName="tov_req" Type="int8" Size="1" />
<Data ElementName="num_dragon_items" Type="int32" Size="1" />
<Data ElementName="dragon_array" Type="array" ArraySizeVariable="num_dragon_items">
<Data ElementName="dragon_unknown" Type="int32" />
<Data ElementName="dragon_unknown1" Type="int8" />
<Data ElementName="dragon_spell_id" Type="int32" Size="1" />
<Data ElementName="dragon_unknown2" Type="int8" />
<Data ElementName="dragon_spell_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="dragon_spell_description" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="dragon_icon" Type="int16" />
<Data ElementName="dragon_icon2" Type="int16" />
<Data ElementName="dragon_current_rank" Type="int8" />
<Data ElementName="dragon_max_rank" Type="int8" />
<Data ElementName="dragon_points_req" Type="int8" Size="1" />
<Data ElementName="dragon_unknown3" Type="int8" Size="1" />
<Data ElementName="dragon_unknown4" Type="int8" Size="1" />
<Data ElementName="dragon_unknown5_array" Type="Array" ArraySizeVariable="dragon_unknown4">
<Data ElementName="dragon_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="dragon_unknown6" Type="int32" Size="1" />
<Data ElementName="dragon_unknown7" Type="int8" Size="1" />
<Data ElementName="dragon_line1" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="dragon_unknown8" Type="int16" Size="1" />
<Data ElementName="dragon_line2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="dragon_col" Type="int8" Size="1" />
<Data ElementName="dragon_row" Type="int8" Size="1" />
<Data ElementName="dragon_unknown9" Type="int8" Size="9" />
</Data>
<Data ElementName="unknown48" Type="int8" Size="51" />
<Data ElementName="num_templates" Type="int8" Size="1" />
<Data ElementName="num_templates_array" Type="Array" ArraySizeVariable="num_templates" >
<Data ElementName="template_unknown1" Type="int8" Size="1" />
<Data ElementName="template_name" Type="EQ2_16Bit_String" />
<Data ElementName="template_active" Type="int8" Size="1" />
<Data ElementName="num_tabs" Type="int16" Size="1" />
<Data ElementName="tab_template_array" Type="Array" ArraySizeVariable="num_tabs" >
<Data ElementName="tab_number" Type="int16" Size="1" />
<Data ElementName="tab_unknown1" Type="int32" Size="1" />
<Data ElementName="template_size" Type="int16" Size="1" />
<Data ElementName="template_array" Type="Array" ArraySizeVariable="template_size" >
<Data ElementName="template_pos" Type="int16" Size="1" />
<Data ElementName="template_unknown3" Type="int16" Size="1" />
<Data ElementName="template_id" Type="int32" Size="1" />
</Data>
</Data>
</Data>
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="58617" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown3" Type="int16" Size="1" />
<Data ElementName="class_max_aa" Type="int32" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="class_kos_req" Type="int8" Size="1" />
<Data ElementName="class_num_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="class_num_items">
<Data ElementName="class_parent_id" Type="int32" Size="1" />
<Data ElementName="class_req_tier" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_active" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_min_lev" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="class_unknown6" Type="int32" Size="1" />
<Data ElementName="class_unknown7" Type="int8" Size="1" />
<Data ElementName="class_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="class_unknown8" Type="int8" Size="1" />
<Data ElementName="class_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown9" Type="int32" Size="1" />
<Data ElementName="class_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="class_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="class_unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="class_unknown11" Type="int16" Size="3" />
<Data ElementName="class_unknown12" Type="int8" Size="3" />
<Data ElementName="class_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown14" Type="int32" Size="1" />
<Data ElementName="class_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown16" Type="int8" Size="6" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown3" Type="int16" Size="1" />
<Data ElementName="subclass_max_aa" Type="int32" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="subclass_eof_req" Type="int8" Size="1" />
<Data ElementName="subclass_num_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="subclass_num_items">
<Data ElementName="subclass_parent_id" Type="int32" Size="1" />
<Data ElementName="subclass_req_tier" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_active" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_min_lev" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_numitems" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_numitems">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="subclass_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="subclass_unknown10" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="subclass_unknown11" Type="int16" Size="3" />
<Data ElementName="subclass_unknown12" Type="int8" Size="3" />
<Data ElementName="subclass_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown14" Type="int32" Size="1" />
<Data ElementName="subclass_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown16" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown3" Type="int16" Size="1" />
<Data ElementName="shadows_max_aa" Type="int32" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="shadows_eof_req" Type="int8" Size="1" />
<Data ElementName="shadows_num_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="shadows_num_items">
<Data ElementName="shadows_parent_id" Type="int32" Size="1" />
<Data ElementName="shadows_req_tier" Type="int8" Size="1" />
<Data ElementName="shadows_spell_id" Type="int32" Size="1" />
<Data ElementName="shadows_active" Type="int8" Size="1" />
<Data ElementName="shadows_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_icon" Type="int16" Size="1" />
<Data ElementName="shadows_icon2" Type="int16" Size="1" />
<Data ElementName="shadows_current_rank" Type="int8" Size="1" />
<Data ElementName="shadows_max_rank" Type="int8" Size="1" />
<Data ElementName="shadows_rank_cost" Type="int8" Size="1" />
<Data ElementName="shadows_min_lev" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_array" Type="Array" ArraySizeVariable="shadows_unknown5_num_items">
<Data ElementName="shadows_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="shadows_unknown6" Type="int32" Size="1" />
<Data ElementName="shadows_unknown7" Type="int8" Size="1" />
<Data ElementName="shadows_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_points_req" Type="int8" Size="1" />
<Data ElementName="shadows_unknown8" Type="int8" Size="1" />
<Data ElementName="shadows_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_col" Type="int8" Size="1" />
<Data ElementName="shadows_row" Type="int8" Size="1" />
<Data ElementName="shadows_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown9" Type="int32" Size="1" />
<Data ElementName="shadows_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="shadows_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="shadows_unknown10" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="shadows_unknown11" Type="int16" Size="3" />
<Data ElementName="shadows_unknown12" Type="int8" Size="3" />
<Data ElementName="shadows_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown14" Type="int32" Size="1" />
<Data ElementName="shadows_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown16" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown3" Type="int16" Size="1" />
<Data ElementName="heroic_max_aa" Type="int32" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_eof_req" Type="int8" Size="1" />
<Data ElementName="heroic_num_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="heroic_num_items">
<Data ElementName="heroic_parent_id" Type="int32" Size="1" />
<Data ElementName="heroic_req_tier" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_active" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_min_lev" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int32" Size="1" />
<Data ElementName="heroic_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="heroic_unknown10" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="heroic_unknown11" Type="int16" Size="3" />
<Data ElementName="heroic_unknown12" Type="int8" Size="3" />
<Data ElementName="heroic_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown14" Type="int32" Size="1" />
<Data ElementName="heroic_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown3" Type="int16" Size="1" />
<Data ElementName="tradeskill_max_aa" Type="int32" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="tradeskill_num_items">
<Data ElementName="tradeskill_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_active" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown11" Type="int16" Size="3" />
<Data ElementName="tradeskill_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskill_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown16" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown3" Type="int16" Size="1" />
<Data ElementName="prestige_max_aa" Type="int32" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_eof_req" Type="int8" Size="1" />
<Data ElementName="prestige_num_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="prestige_num_items">
<Data ElementName="prestige_parent_id" Type="int32" Size="1" />
<Data ElementName="prestige_req_tier" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_active" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_min_lev" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int32" Size="1" />
<Data ElementName="prestige_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="prestige_unknown10" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="prestige_unknown11" Type="int16" Size="3" />
<Data ElementName="prestige_unknown12" Type="int8" Size="3" />
<Data ElementName="prestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown14" Type="int32" Size="1" />
<Data ElementName="prestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskillprestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown3" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_max_aa" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_array" Type="Array" ArraySizeVariable="tradeskillprestige_num_items">
<Data ElementName="tradeskillprestige_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_active" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskillprestige_unknown5_num_items">
<Data ElementName="tradeskillprestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown11" Type="int16" Size="3" />
<Data ElementName="tradeskillprestige_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskillprestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown16" Type="int8" Size="6" />
<Data ElementName="dragon_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown3" Type="int16" Size="1" />
<Data ElementName="dragon_max_aa" Type="int32" Size="1" />
<Data ElementName="dragon_id" Type="int32" Size="1" />
<Data ElementName="dragon_eof_req" Type="int8" Size="1" />
<Data ElementName="dragon_num_items" Type="int32" Size="1" />
<Data ElementName="dragon_array" Type="Array" ArraySizeVariable="dragon_num_items">
<Data ElementName="dragon_parent_id" Type="int32" Size="1" />
<Data ElementName="dragon_req_tier" Type="int8" Size="1" />
<Data ElementName="dragon_spell_id" Type="int32" Size="1" />
<Data ElementName="dragon_active" Type="int8" Size="1" />
<Data ElementName="dragon_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_icon" Type="int16" Size="1" />
<Data ElementName="dragon_icon2" Type="int16" Size="1" />
<Data ElementName="dragon_current_rank" Type="int8" Size="1" />
<Data ElementName="dragon_max_rank" Type="int8" Size="1" />
<Data ElementName="dragon_rank_cost" Type="int8" Size="1" />
<Data ElementName="dragon_min_lev" Type="int8" Size="1" />
<Data ElementName="dragon_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="dragon_unknown5_array" Type="Array" ArraySizeVariable="dragon_unknown5_num_items">
<Data ElementName="dragon_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="dragon_unknown6" Type="int32" Size="1" />
<Data ElementName="dragon_unknown7" Type="int8" Size="1" />
<Data ElementName="dragon_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_points_req" Type="int8" Size="1" />
<Data ElementName="dragon_unknown8" Type="int8" Size="1" />
<Data ElementName="dragon_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_col" Type="int8" Size="1" />
<Data ElementName="dragon_row" Type="int8" Size="1" />
<Data ElementName="dragon_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown9" Type="int32" Size="1" />
<Data ElementName="dragon_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="dragon_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="dragon_unknown10" Type="int32" Size="1" />
<Data ElementName="dragon_points_spent" Type="int32" Size="1" />
<Data ElementName="dragon_unknown11" Type="int16" Size="3" />
<Data ElementName="dragon_unknown12" Type="int8" Size="3" />
<Data ElementName="dragon_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown14" Type="int32" Size="1" />
<Data ElementName="dragon_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown16" Type="int8" Size="6" />
<Data ElementName="dragonclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown3" Type="int16" Size="1" />
<Data ElementName="dragonclass_max_aa" Type="int32" Size="1" />
<Data ElementName="dragonclass_id" Type="int32" Size="1" />
<Data ElementName="dragonclass_eof_req" Type="int8" Size="1" />
<Data ElementName="dragonclass_num_items" Type="int32" Size="1" />
<Data ElementName="dragonclass_array" Type="Array" ArraySizeVariable="dragonclass_num_items">
<Data ElementName="dragonclass_parent_id" Type="int32" Size="1" />
<Data ElementName="dragonclass_req_tier" Type="int8" Size="1" />
<Data ElementName="dragonclass_spell_id" Type="int32" Size="1" />
<Data ElementName="dragonclass_active" Type="int8" Size="1" />
<Data ElementName="dragonclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_icon" Type="int16" Size="1" />
<Data ElementName="dragonclass_icon2" Type="int16" Size="1" />
<Data ElementName="dragonclass_current_rank" Type="int8" Size="1" />
<Data ElementName="dragonclass_max_rank" Type="int8" Size="1" />
<Data ElementName="dragonclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="dragonclass_min_lev" Type="int8" Size="1" />
<Data ElementName="dragonclass_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="dragonclass_unknown5_array" Type="Array" ArraySizeVariable="dragonclass_unknown5_num_items">
<Data ElementName="dragonclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="dragonclass_unknown6" Type="int32" Size="1" />
<Data ElementName="dragonclass_unknown7" Type="int8" Size="1" />
<Data ElementName="dragonclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_points_req" Type="int8" Size="1" />
<Data ElementName="dragonclass_unknown8" Type="int8" Size="1" />
<Data ElementName="dragonclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_col" Type="int8" Size="1" />
<Data ElementName="dragonclass_row" Type="int8" Size="1" />
<Data ElementName="dragonclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown9" Type="int32" Size="1" />
<Data ElementName="dragonclass_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="dragonclass_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="dragonclass_unknown10" Type="int32" Size="1" />
<Data ElementName="dragonclass_points_spent" Type="int32" Size="1" />
<Data ElementName="dragonclass_unknown11" Type="int16" Size="3" />
<Data ElementName="dragonclass_unknown12" Type="int8" Size="3" />
<Data ElementName="dragonclass_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown14" Type="int32" Size="1" />
<Data ElementName="dragonclass_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown16" Type="int8" Size="6" />
<Data ElementName="farseas_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown3" Type="int16" Size="1" />
<Data ElementName="farseas_max_aa" Type="int32" Size="1" />
<Data ElementName="farseas_id" Type="int32" Size="1" />
<Data ElementName="farseas_eof_req" Type="int8" Size="1" />
<Data ElementName="farseas_num_items" Type="int32" Size="1" />
<Data ElementName="farseas_array" Type="Array" ArraySizeVariable="farseas_num_items">
<Data ElementName="farseas_parent_id" Type="int32" Size="1" />
<Data ElementName="farseas_req_tier" Type="int8" Size="1" />
<Data ElementName="farseas_spell_id" Type="int32" Size="1" />
<Data ElementName="farseas_active" Type="int8" Size="1" />
<Data ElementName="farseas_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_icon" Type="int16" Size="1" />
<Data ElementName="farseas_icon2" Type="int16" Size="1" />
<Data ElementName="farseas_current_rank" Type="int8" Size="1" />
<Data ElementName="farseas_max_rank" Type="int8" Size="1" />
<Data ElementName="farseas_rank_cost" Type="int8" Size="1" />
<Data ElementName="farseas_min_lev" Type="int8" Size="1" />
<Data ElementName="farseas_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="farseas_unknown5_array" Type="Array" ArraySizeVariable="farseas_unknown5_num_items">
<Data ElementName="farseas_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="farseas_unknown6" Type="int32" Size="1" />
<Data ElementName="farseas_unknown7" Type="int8" Size="1" />
<Data ElementName="farseas_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_points_req" Type="int8" Size="1" />
<Data ElementName="farseas_unknown8" Type="int8" Size="1" />
<Data ElementName="farseas_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_col" Type="int8" Size="1" />
<Data ElementName="farseas_row" Type="int8" Size="1" />
<Data ElementName="farseas_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown9" Type="int32" Size="1" />
<Data ElementName="farseas_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="farseas_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="farseas_unknown10" Type="int32" Size="1" />
<Data ElementName="farseas_points_spent" Type="int32" Size="1" />
<Data ElementName="farseas_unknown11" Type="int16" Size="3" />
<Data ElementName="farseas_unknown12" Type="int8" Size="3" />
<Data ElementName="farseas_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown14" Type="int32" Size="1" />
<Data ElementName="farseas_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown16" Type="int8" Size="6" />
<Data ElementName="template_unknown" Type="int8" Size="20" />
<Data ElementName="num_templates" Type="int8" Size="1" />
<Data ElementName="slot1_unknown1" Type="int8" Size="1" />
<Data ElementName="slot1_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot1_active" Type="int8" Size="1" />
<Data ElementName="slot1_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot1_tab_template_array" Type="Array" ArraySizeVariable="slot1_num_tabs" >
<Data ElementName="slot1_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot1_num_items" Type="int16" Size="1" />
<Data ElementName="slot1_items_array" Type="Array" ArraySizeVariable="slot1_num_items" >
<Data ElementName="slot1_item_index" Type="int16" Size="1" />
<Data ElementName="slot1_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot1_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot2_unknown1" Type="int8" Size="1" />
<Data ElementName="slot2_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot2_active" Type="int8" Size="1" />
<Data ElementName="slot2_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot2_tab_template_array" Type="Array" ArraySizeVariable="slot2_num_tabs" >
<Data ElementName="slot2_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot2_num_items" Type="int16" Size="1" />
<Data ElementName="slot2_items_array" Type="Array" ArraySizeVariable="slot2_num_items" >
<Data ElementName="slot2_item_index" Type="int16" Size="1" />
<Data ElementName="slot2_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot2_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot3_unknown1" Type="int8" Size="1" />
<Data ElementName="slot3_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot3_active" Type="int8" Size="1" />
<Data ElementName="slot3_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot3_tab_template_array" Type="Array" ArraySizeVariable="slot3_num_tabs" >
<Data ElementName="slot3_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot3_num_items" Type="int16" Size="1" />
<Data ElementName="slot3_items_array" Type="Array" ArraySizeVariable="slot3_num_items" >
<Data ElementName="slot3_item_index" Type="int16" Size="1" />
<Data ElementName="slot3_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot3_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot4_unknown1" Type="int8" Size="1" />
<Data ElementName="slot4_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot4_active" Type="int8" Size="1" />
<Data ElementName="slot4_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot4_tab_template_array" Type="Array" ArraySizeVariable="slot4_num_tabs" >
<Data ElementName="slot4_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot4_num_items" Type="int16" Size="1" />
<Data ElementName="slot4_items_array" Type="Array" ArraySizeVariable="slot4_num_items" >
<Data ElementName="slot4_item_index" Type="int16" Size="1" />
<Data ElementName="slot4_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot4_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot5_unknown1" Type="int8" Size="1" />
<Data ElementName="slot5_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot5_active" Type="int8" Size="1" />
<Data ElementName="slot5_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot5_tab_template_array" Type="Array" ArraySizeVariable="slot5_num_tabs" >
<Data ElementName="slot5_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot5_num_items" Type="int16" Size="1" />
<Data ElementName="slot5_items_array" Type="Array" ArraySizeVariable="slot5_num_items" >
<Data ElementName="slot5_item_index" Type="int16" Size="1" />
<Data ElementName="slot5_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot5_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot6_unknown1" Type="int8" Size="1" />
<Data ElementName="slot6_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot6_active" Type="int8" Size="1" />
<Data ElementName="slot6_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot6_tab_template_array" Type="Array" ArraySizeVariable="slot6_num_tabs" >
<Data ElementName="slot6_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot6_num_items" Type="int16" Size="1" />
<Data ElementName="slot6_items_array" Type="Array" ArraySizeVariable="slot6_num_items" >
<Data ElementName="slot6_item_index" Type="int16" Size="1" />
<Data ElementName="slot6_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot6_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot7_unknown1" Type="int8" Size="1" />
<Data ElementName="slot7_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot7_active" Type="int8" Size="1" />
<Data ElementName="slot7_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot7_tab_template_array" Type="Array" ArraySizeVariable="slot7_num_tabs" >
<Data ElementName="slot7_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot7_num_items" Type="int16" Size="1" />
<Data ElementName="slot7_items_array" Type="Array" ArraySizeVariable="slot7_num_items" >
<Data ElementName="slot7_item_index" Type="int16" Size="1" />
<Data ElementName="slot7_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot7_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="60114" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="class_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_tree_node_id" Type="int16" Size="1" />
<Data ElementName="class_max_aa" Type="int16" Size="1" />
<Data ElementName="class_unknown4" Type="int16" Size="1" />
<Data ElementName="class_id" Type="int32" Size="1" />
<Data ElementName="class_kos_req" Type="int8" Size="1" />
<Data ElementName="class_num_items" Type="int32" Size="1" />
<Data ElementName="class_array" Type="Array" ArraySizeVariable="class_num_items">
<Data ElementName="class_parent_id" Type="int32" Size="1" />
<Data ElementName="class_req_tier" Type="int8" Size="1" />
<Data ElementName="class_spell_id" Type="int32" Size="1" />
<Data ElementName="class_active" Type="int8" Size="1" />
<Data ElementName="class_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="class_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="class_icon" Type="int16" Size="1" />
<Data ElementName="class_icon2" Type="int16" Size="1" />
<Data ElementName="class_current_rank" Type="int8" Size="1" />
<Data ElementName="class_max_rank" Type="int8" Size="1" />
<Data ElementName="class_rank_cost" Type="int8" Size="1" />
<Data ElementName="class_min_lev" Type="int8" Size="1" />
<Data ElementName="class_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="class_unknown5_array" Type="Array" ArraySizeVariable="class_unknown5_num_items">
<Data ElementName="class_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="class_unknown6" Type="int32" Size="1" />
<Data ElementName="class_unknown7" Type="int8" Size="1" />
<Data ElementName="class_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="class_points_req" Type="int8" Size="1" />
<Data ElementName="class_unknown8" Type="int8" Size="1" />
<Data ElementName="class_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="class_col" Type="int8" Size="1" />
<Data ElementName="class_row" Type="int8" Size="1" />
<Data ElementName="class_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown9" Type="int32" Size="1" />
<Data ElementName="class_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="class_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="class_unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="class_unknown11a" Type="int16" Size="1" />
<Data ElementName="class_unknown11b" Type="int16" Size="1" />
<Data ElementName="class_unknown11c" Type="int16" Size="1" />
<Data ElementName="class_unknown12" Type="int8" Size="3" />
<Data ElementName="class_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown14" Type="int32" Size="1" />
<Data ElementName="class_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="class_unknown16" Type="int8" Size="6" />
<Data ElementName="subclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_tree_node_id" Type="int16" Size="1" />
<Data ElementName="subclass_max_aa" Type="int16" Size="1" />
<Data ElementName="subclass_unknown4" Type="int16" Size="1" />
<Data ElementName="subclass_id" Type="int32" Size="1" />
<Data ElementName="subclass_eof_req" Type="int8" Size="1" />
<Data ElementName="subclass_num_items" Type="int32" Size="1" />
<Data ElementName="subclass_array" Type="Array" ArraySizeVariable="subclass_num_items">
<Data ElementName="subclass_parent_id" Type="int32" Size="1" />
<Data ElementName="subclass_req_tier" Type="int8" Size="1" />
<Data ElementName="subclass_spell_id" Type="int32" Size="1" />
<Data ElementName="subclass_active" Type="int8" Size="1" />
<Data ElementName="subclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_icon" Type="int16" Size="1" />
<Data ElementName="subclass_icon2" Type="int16" Size="1" />
<Data ElementName="subclass_current_rank" Type="int8" Size="1" />
<Data ElementName="subclass_max_rank" Type="int8" Size="1" />
<Data ElementName="subclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="subclass_min_lev" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_numitems" Type="int8" Size="1" />
<Data ElementName="subclass_unknown5_array" Type="Array" ArraySizeVariable="subclass_unknown5_numitems">
<Data ElementName="subclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="subclass_unknown6" Type="int32" Size="1" />
<Data ElementName="subclass_unknown7" Type="int8" Size="1" />
<Data ElementName="subclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_points_req" Type="int8" Size="1" />
<Data ElementName="subclass_unknown8" Type="int8" Size="1" />
<Data ElementName="subclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_col" Type="int8" Size="1" />
<Data ElementName="subclass_row" Type="int8" Size="1" />
<Data ElementName="subclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown9" Type="int32" Size="1" />
<Data ElementName="subclass_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="subclass_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="subclass_unknown10" Type="int32" Size="1" />
<Data ElementName="subclass_points_spent" Type="int32" Size="1" />
<Data ElementName="subclass_unknown11a" Type="int16" Size="1" />
<Data ElementName="subclass_unknown11b" Type="int16" Size="1" />
<Data ElementName="subclass_unknown11c" Type="int16" Size="1" />
<Data ElementName="subclass_unknown12" Type="int8" Size="3" />
<Data ElementName="subclass_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown14" Type="int32" Size="1" />
<Data ElementName="subclass_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="subclass_unknown16" Type="int8" Size="6" />
<Data ElementName="shadows_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_tree_node_id" Type="int16" Size="1" />
<Data ElementName="shadows_max_aa" Type="int16" Size="1" />
<Data ElementName="shadows_unknown4" Type="int16" Size="1" />
<Data ElementName="shadows_id" Type="int32" Size="1" />
<Data ElementName="shadows_eof_req" Type="int8" Size="1" />
<Data ElementName="shadows_num_items" Type="int32" Size="1" />
<Data ElementName="shadows_array" Type="Array" ArraySizeVariable="shadows_num_items">
<Data ElementName="shadows_parent_id" Type="int32" Size="1" />
<Data ElementName="shadows_req_tier" Type="int8" Size="1" />
<Data ElementName="shadows_spell_id" Type="int32" Size="1" />
<Data ElementName="shadows_active" Type="int8" Size="1" />
<Data ElementName="shadows_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_icon" Type="int16" Size="1" />
<Data ElementName="shadows_icon2" Type="int16" Size="1" />
<Data ElementName="shadows_current_rank" Type="int8" Size="1" />
<Data ElementName="shadows_max_rank" Type="int8" Size="1" />
<Data ElementName="shadows_rank_cost" Type="int8" Size="1" />
<Data ElementName="shadows_min_lev" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="shadows_unknown5_array" Type="Array" ArraySizeVariable="shadows_unknown5_num_items">
<Data ElementName="shadows_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="shadows_unknown6" Type="int32" Size="1" />
<Data ElementName="shadows_unknown7" Type="int8" Size="1" />
<Data ElementName="shadows_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_points_req" Type="int8" Size="1" />
<Data ElementName="shadows_unknown8" Type="int8" Size="1" />
<Data ElementName="shadows_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_col" Type="int8" Size="1" />
<Data ElementName="shadows_row" Type="int8" Size="1" />
<Data ElementName="shadows_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown9" Type="int32" Size="1" />
<Data ElementName="shadows_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="shadows_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="shadows_unknown10" Type="int32" Size="1" />
<Data ElementName="shadows_points_spent" Type="int32" Size="1" />
<Data ElementName="shadows_unknown11a" Type="int16" Size="1" />
<Data ElementName="shadows_unknown11b" Type="int16" Size="1" />
<Data ElementName="shadows_unknown11c" Type="int16" Size="1" />
<Data ElementName="shadows_unknown12" Type="int8" Size="3" />
<Data ElementName="shadows_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown14" Type="int32" Size="1" />
<Data ElementName="shadows_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="shadows_unknown16" Type="int8" Size="6" />
<Data ElementName="heroic_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_tree_node_id" Type="int16" Size="1" />
<Data ElementName="heroic_max_aa" Type="int16" Size="1" />
<Data ElementName="heroic_unknown4" Type="int16" Size="1" />
<Data ElementName="heroic_id" Type="int32" Size="1" />
<Data ElementName="heroic_eof_req" Type="int8" Size="1" />
<Data ElementName="heroic_num_items" Type="int32" Size="1" />
<Data ElementName="heroic_array" Type="Array" ArraySizeVariable="heroic_num_items">
<Data ElementName="heroic_parent_id" Type="int32" Size="1" />
<Data ElementName="heroic_req_tier" Type="int8" Size="1" />
<Data ElementName="heroic_spell_id" Type="int32" Size="1" />
<Data ElementName="heroic_active" Type="int8" Size="1" />
<Data ElementName="heroic_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_icon" Type="int16" Size="1" />
<Data ElementName="heroic_icon2" Type="int16" Size="1" />
<Data ElementName="heroic_current_rank" Type="int8" Size="1" />
<Data ElementName="heroic_max_rank" Type="int8" Size="1" />
<Data ElementName="heroic_rank_cost" Type="int8" Size="1" />
<Data ElementName="heroic_min_lev" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="heroic_unknown5_array" Type="Array" ArraySizeVariable="heroic_unknown5_num_items">
<Data ElementName="heroic_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="heroic_unknown6" Type="int32" Size="1" />
<Data ElementName="heroic_unknown7" Type="int8" Size="1" />
<Data ElementName="heroic_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_points_req" Type="int8" Size="1" />
<Data ElementName="heroic_unknown8" Type="int8" Size="1" />
<Data ElementName="heroic_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_col" Type="int8" Size="1" />
<Data ElementName="heroic_row" Type="int8" Size="1" />
<Data ElementName="heroic_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown9" Type="int32" Size="1" />
<Data ElementName="heroic_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="heroic_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="heroic_unknown10" Type="int32" Size="1" />
<Data ElementName="heroic_points_spent" Type="int32" Size="1" />
<Data ElementName="heroic_unknown11a" Type="int16" Size="1" />
<Data ElementName="heroic_unknown11b" Type="int16" Size="1" />
<Data ElementName="heroic_unknown11c" Type="int16" Size="1" />
<Data ElementName="heroic_unknown12" Type="int8" Size="3" />
<Data ElementName="heroic_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown14" Type="int32" Size="1" />
<Data ElementName="heroic_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="heroic_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskill_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_tree_node_id" Type="int16" Size="1" />
<Data ElementName="tradeskill_max_aa" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown4" Type="int16" Size="1" />
<Data ElementName="tradeskill_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskill_array" Type="Array" ArraySizeVariable="tradeskill_num_items">
<Data ElementName="tradeskill_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskill_active" Type="int8" Size="1" />
<Data ElementName="tradeskill_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_icon" Type="int16" Size="1" />
<Data ElementName="tradeskill_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskill_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskill_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskill_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown5_array" Type="Array" ArraySizeVariable="tradeskill_unknown5_num_items">
<Data ElementName="tradeskill_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskill_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskill_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_col" Type="int8" Size="1" />
<Data ElementName="tradeskill_row" Type="int8" Size="1" />
<Data ElementName="tradeskill_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="tradeskill_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskill_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown11a" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown11b" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown11c" Type="int16" Size="1" />
<Data ElementName="tradeskill_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskill_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskill_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_unknown16" Type="int8" Size="6" />
<Data ElementName="prestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_tree_node_id" Type="int16" Size="1" />
<Data ElementName="prestige_max_aa" Type="int16" Size="1" />
<Data ElementName="prestige_unknown4" Type="int16" Size="1" />
<Data ElementName="prestige_id" Type="int32" Size="1" />
<Data ElementName="prestige_eof_req" Type="int8" Size="1" />
<Data ElementName="prestige_num_items" Type="int32" Size="1" />
<Data ElementName="prestige_array" Type="Array" ArraySizeVariable="prestige_num_items">
<Data ElementName="prestige_parent_id" Type="int32" Size="1" />
<Data ElementName="prestige_req_tier" Type="int8" Size="1" />
<Data ElementName="prestige_spell_id" Type="int32" Size="1" />
<Data ElementName="prestige_active" Type="int8" Size="1" />
<Data ElementName="prestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_icon" Type="int16" Size="1" />
<Data ElementName="prestige_icon2" Type="int16" Size="1" />
<Data ElementName="prestige_current_rank" Type="int8" Size="1" />
<Data ElementName="prestige_max_rank" Type="int8" Size="1" />
<Data ElementName="prestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="prestige_min_lev" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="prestige_unknown5_array" Type="Array" ArraySizeVariable="prestige_unknown5_num_items">
<Data ElementName="prestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="prestige_unknown6" Type="int32" Size="1" />
<Data ElementName="prestige_unknown7" Type="int8" Size="1" />
<Data ElementName="prestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_points_req" Type="int8" Size="1" />
<Data ElementName="prestige_unknown8" Type="int8" Size="1" />
<Data ElementName="prestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_col" Type="int8" Size="1" />
<Data ElementName="prestige_row" Type="int8" Size="1" />
<Data ElementName="prestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown9" Type="int32" Size="1" />
<Data ElementName="prestige_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="prestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="prestige_unknown10" Type="int32" Size="1" />
<Data ElementName="prestige_points_spent" Type="int32" Size="1" />
<Data ElementName="prestige_unknown11a" Type="int16" Size="1" />
<Data ElementName="prestige_unknown11b" Type="int16" Size="1" />
<Data ElementName="prestige_unknown11c" Type="int16" Size="1" />
<Data ElementName="prestige_unknown12" Type="int8" Size="3" />
<Data ElementName="prestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown14" Type="int32" Size="1" />
<Data ElementName="prestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="prestige_unknown16" Type="int8" Size="6" />
<Data ElementName="tradeskillprestige_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_tree_node_id" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_max_aa" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_unknown4" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_eof_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_num_items" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_array" Type="Array" ArraySizeVariable="tradeskillprestige_num_items">
<Data ElementName="tradeskillprestige_parent_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_req_tier" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_id" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_active" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_icon" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_icon2" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_current_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_max_rank" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_rank_cost" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_min_lev" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown5_array" Type="Array" ArraySizeVariable="tradeskillprestige_unknown5_num_items">
<Data ElementName="tradeskillprestige_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown6" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown7" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_points_req" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_unknown8" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_col" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_row" Type="int8" Size="1" />
<Data ElementName="tradeskillprestige_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown9" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="tradeskillprestige_unknown10" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_points_spent" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown11a" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_unknown11b" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_unknown11c" Type="int16" Size="1" />
<Data ElementName="tradeskillprestige_unknown12" Type="int8" Size="3" />
<Data ElementName="tradeskillprestige_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown14" Type="int32" Size="1" />
<Data ElementName="tradeskillprestige_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskillprestige_unknown16" Type="int8" Size="6" />
<Data ElementName="dragon_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_tree_node_id" Type="int16" Size="1" />
<Data ElementName="dragon_max_aa" Type="int16" Size="1" />
<Data ElementName="dragon_unknown4" Type="int16" Size="1" />
<Data ElementName="dragon_id" Type="int32" Size="1" />
<Data ElementName="dragon_eof_req" Type="int8" Size="1" />
<Data ElementName="dragon_num_items" Type="int32" Size="1" />
<Data ElementName="dragon_array" Type="Array" ArraySizeVariable="dragon_num_items">
<Data ElementName="dragon_parent_id" Type="int32" Size="1" />
<Data ElementName="dragon_req_tier" Type="int8" Size="1" />
<Data ElementName="dragon_spell_id" Type="int32" Size="1" />
<Data ElementName="dragon_active" Type="int8" Size="1" />
<Data ElementName="dragon_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_icon" Type="int16" Size="1" />
<Data ElementName="dragon_icon2" Type="int16" Size="1" />
<Data ElementName="dragon_current_rank" Type="int8" Size="1" />
<Data ElementName="dragon_max_rank" Type="int8" Size="1" />
<Data ElementName="dragon_rank_cost" Type="int8" Size="1" />
<Data ElementName="dragon_min_lev" Type="int8" Size="1" />
<Data ElementName="dragon_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="dragon_unknown5_array" Type="Array" ArraySizeVariable="dragon_unknown5_num_items">
<Data ElementName="dragon_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="dragon_unknown6" Type="int32" Size="1" />
<Data ElementName="dragon_unknown7" Type="int8" Size="1" />
<Data ElementName="dragon_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_points_req" Type="int8" Size="1" />
<Data ElementName="dragon_unknown8" Type="int8" Size="1" />
<Data ElementName="dragon_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_col" Type="int8" Size="1" />
<Data ElementName="dragon_row" Type="int8" Size="1" />
<Data ElementName="dragon_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown9" Type="int32" Size="1" />
<Data ElementName="dragon_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="dragon_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="dragon_unknown10" Type="int32" Size="1" />
<Data ElementName="dragon_points_spent" Type="int32" Size="1" />
<Data ElementName="dragon_unknown11a" Type="int16" Size="1" />
<Data ElementName="dragon_unknown11b" Type="int16" Size="1" />
<Data ElementName="dragon_unknown11c" Type="int16" Size="1" />
<Data ElementName="dragon_unknown12" Type="int8" Size="3" />
<Data ElementName="dragon_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown14" Type="int32" Size="1" />
<Data ElementName="dragon_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="dragon_unknown16" Type="int8" Size="6" />
<Data ElementName="dragonclass_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_tree_node_id" Type="int16" Size="1" />
<Data ElementName="dragonclass_max_aa" Type="int16" Size="1" />
<Data ElementName="dragonclass_unknown4" Type="int16" Size="1" />
<Data ElementName="dragonclass_id" Type="int32" Size="1" />
<Data ElementName="dragonclass_eof_req" Type="int8" Size="1" />
<Data ElementName="dragonclass_num_items" Type="int32" Size="1" />
<Data ElementName="dragonclass_array" Type="Array" ArraySizeVariable="dragonclass_num_items">
<Data ElementName="dragonclass_parent_id" Type="int32" Size="1" />
<Data ElementName="dragonclass_req_tier" Type="int8" Size="1" />
<Data ElementName="dragonclass_spell_id" Type="int32" Size="1" />
<Data ElementName="dragonclass_active" Type="int8" Size="1" />
<Data ElementName="dragonclass_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_icon" Type="int16" Size="1" />
<Data ElementName="dragonclass_icon2" Type="int16" Size="1" />
<Data ElementName="dragonclass_current_rank" Type="int8" Size="1" />
<Data ElementName="dragonclass_max_rank" Type="int8" Size="1" />
<Data ElementName="dragonclass_rank_cost" Type="int8" Size="1" />
<Data ElementName="dragonclass_min_lev" Type="int8" Size="1" />
<Data ElementName="dragonclass_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="dragonclass_unknown5_array" Type="Array" ArraySizeVariable="dragonclass_unknown5_num_items">
<Data ElementName="dragonclass_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="dragonclass_unknown6" Type="int32" Size="1" />
<Data ElementName="dragonclass_unknown7" Type="int8" Size="1" />
<Data ElementName="dragonclass_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_points_req" Type="int8" Size="1" />
<Data ElementName="dragonclass_unknown8" Type="int8" Size="1" />
<Data ElementName="dragonclass_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_col" Type="int8" Size="1" />
<Data ElementName="dragonclass_row" Type="int8" Size="1" />
<Data ElementName="dragonclass_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown9" Type="int32" Size="1" />
<Data ElementName="dragonclass_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="dragonclass_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="dragonclass_unknown10" Type="int32" Size="1" />
<Data ElementName="dragonclass_points_spent" Type="int32" Size="1" />
<Data ElementName="dragonclass_unknown11a" Type="int16" Size="1" />
<Data ElementName="dragonclass_unknown11b" Type="int16" Size="1" />
<Data ElementName="dragonclass_unknown11c" Type="int16" Size="1" />
<Data ElementName="dragonclass_unknown12" Type="int8" Size="3" />
<Data ElementName="dragonclass_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown14" Type="int32" Size="1" />
<Data ElementName="dragonclass_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="dragonclass_unknown16" Type="int8" Size="6" />
<Data ElementName="farseas_tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_tree_node_id" Type="int16" Size="1" />
<Data ElementName="farseas_max_aa" Type="int16" Size="1" />
<Data ElementName="farseas_unknown4" Type="int16" Size="1" />
<Data ElementName="farseas_id" Type="int32" Size="1" />
<Data ElementName="farseas_eof_req" Type="int8" Size="1" />
<Data ElementName="farseas_num_items" Type="int32" Size="1" />
<Data ElementName="farseas_array" Type="Array" ArraySizeVariable="farseas_num_items">
<Data ElementName="farseas_parent_id" Type="int32" Size="1" />
<Data ElementName="farseas_req_tier" Type="int8" Size="1" />
<Data ElementName="farseas_spell_id" Type="int32" Size="1" />
<Data ElementName="farseas_active" Type="int8" Size="1" />
<Data ElementName="farseas_spell_name" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_spell_description" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_icon" Type="int16" Size="1" />
<Data ElementName="farseas_icon2" Type="int16" Size="1" />
<Data ElementName="farseas_current_rank" Type="int8" Size="1" />
<Data ElementName="farseas_max_rank" Type="int8" Size="1" />
<Data ElementName="farseas_rank_cost" Type="int8" Size="1" />
<Data ElementName="farseas_min_lev" Type="int8" Size="1" />
<Data ElementName="farseas_unknown5_num_items" Type="int8" Size="1" />
<Data ElementName="farseas_unknown5_array" Type="Array" ArraySizeVariable="farseas_unknown5_num_items">
<Data ElementName="farseas_unknown5" Type="int32" Size="1" />
</Data>
<Data ElementName="farseas_unknown6" Type="int32" Size="1" />
<Data ElementName="farseas_unknown7" Type="int8" Size="1" />
<Data ElementName="farseas_classification1" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_points_req" Type="int8" Size="1" />
<Data ElementName="farseas_unknown8" Type="int8" Size="1" />
<Data ElementName="farseas_classification2" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_col" Type="int8" Size="1" />
<Data ElementName="farseas_row" Type="int8" Size="1" />
<Data ElementName="farseas_line_title" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown9" Type="int32" Size="1" />
<Data ElementName="farseas_points_to_unlock" Type="int16" Size="1" />
<Data ElementName="farseas_unknown9b" Type="int8" Size="1" />
</Data>
<Data ElementName="farseas_unknown10" Type="int32" Size="1" />
<Data ElementName="farseas_points_spent" Type="int32" Size="1" />
<Data ElementName="farseas_unknown11a" Type="int16" Size="1" />
<Data ElementName="farseas_unknown11b" Type="int16" Size="1" />
<Data ElementName="farseas_unknown11c" Type="int16" Size="1" />
<Data ElementName="farseas_unknown12" Type="int8" Size="3" />
<Data ElementName="farseas_unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown14" Type="int32" Size="1" />
<Data ElementName="farseas_unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="farseas_unknown16" Type="int8" Size="6" />
<Data ElementName="template_unknown1" Type="int32" Size="1" />
<Data ElementName="template_unknown2a" Type="int8" Size="1" />
<Data ElementName="template_unknown2b" Type="int8" Size="1" />
<Data ElementName="template_unknown2c" Type="int8" Size="1" />
<Data ElementName="template_unknown2d" Type="int8" Size="1" />
<Data ElementName="template_unknown3" Type="int32" Size="1" />
<Data ElementName="template_unknown4" Type="int32" Size="1" />
<Data ElementName="template_unknown5" Type="int32" Size="1" />
<Data ElementName="num_templates" Type="int8" Size="1" />
<Data ElementName="slot1_template_id" Type="int8" Size="1" />
<Data ElementName="slot1_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot1_active" Type="int8" Size="1" />
<Data ElementName="slot1_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot1_tab_template_array" Type="Array" ArraySizeVariable="slot1_num_tabs" >
<Data ElementName="slot1_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot1_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot1_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot1_num_items" Type="int16" Size="1" />
<Data ElementName="slot1_items_array" Type="Array" ArraySizeVariable="slot1_num_items" >
<Data ElementName="slot1_item_order" Type="int16" Size="1" />
<Data ElementName="slot1_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot1_item_id" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot2_template_id" Type="int8" Size="1" />
<Data ElementName="slot2_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot2_active" Type="int8" Size="1" />
<Data ElementName="slot2_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot2_tab_template_array" Type="Array" ArraySizeVariable="slot2_num_tabs" >
<Data ElementName="slot2_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot2_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot2_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot2_num_items" Type="int16" Size="1" />
<Data ElementName="slot2_items_array" Type="Array" ArraySizeVariable="slot2_num_items" >
<Data ElementName="slot2_item_order" Type="int16" Size="1" />
<Data ElementName="slot2_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot2_item_id" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot3_template_id" Type="int8" Size="1" />
<Data ElementName="slot3_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot3_active" Type="int8" Size="1" />
<Data ElementName="slot3_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot3_tab_template_array" Type="Array" ArraySizeVariable="slot3_num_tabs" >
<Data ElementName="slot3_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot3_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot3_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot3_num_items" Type="int16" Size="1" />
<Data ElementName="slot3_items_array" Type="Array" ArraySizeVariable="slot3_num_items" >
<Data ElementName="slot3_item_order" Type="int16" Size="1" />
<Data ElementName="slot3_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot3_item_id" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot4_template_id" Type="int8" Size="1" />
<Data ElementName="slot4_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot4_active" Type="int8" Size="1" />
<Data ElementName="slot4_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot4_tab_template_array" Type="Array" ArraySizeVariable="slot4_num_tabs" >
<Data ElementName="slot4_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot4_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot4_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot4_num_items" Type="int16" Size="1" />
<Data ElementName="slot4_items_array" Type="Array" ArraySizeVariable="slot4_num_items" >
<Data ElementName="slot4_item_order" Type="int16" Size="1" />
<Data ElementName="slot4_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot4_item_id" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot5_template_id" Type="int8" Size="1" />
<Data ElementName="slot5_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot5_active" Type="int8" Size="1" />
<Data ElementName="slot5_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot5_tab_template_array" Type="Array" ArraySizeVariable="slot5_num_tabs" >
<Data ElementName="slot5_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot5_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot5_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot5_num_items" Type="int16" Size="1" />
<Data ElementName="slot5_items_array" Type="Array" ArraySizeVariable="slot5_num_items" >
<Data ElementName="slot5_item_order" Type="int16" Size="1" />
<Data ElementName="slot5_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot5_item_id" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot6_template_id" Type="int8" Size="1" />
<Data ElementName="slot6_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot6_active" Type="int8" Size="1" />
<Data ElementName="slot6_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot6_tab_template_array" Type="Array" ArraySizeVariable="slot6_num_tabs" >
<Data ElementName="slot6_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot6_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot6_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot6_num_items" Type="int16" Size="1" />
<Data ElementName="slot6_items_array" Type="Array" ArraySizeVariable="slot6_num_items" >
<Data ElementName="slot6_item_order" Type="int16" Size="1" />
<Data ElementName="slot6_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot6_item_id" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot7_template_id" Type="int8" Size="1" />
<Data ElementName="slot7_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot7_active" Type="int8" Size="1" />
<Data ElementName="slot7_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot7_tab_template_array" Type="Array" ArraySizeVariable="slot7_num_tabs" >
<Data ElementName="slot7_tab_typenum" Type="int16" Size="1" />
<Data ElementName="slot7_tab_unknown2" Type="int16" Size="1" />
<Data ElementName="slot7_tab_unknown3" Type="int16" Size="1" />
<Data ElementName="slot7_num_items" Type="int16" Size="1" />
<Data ElementName="slot7_items_array" Type="Array" ArraySizeVariable="slot7_num_items" >
<Data ElementName="slot7_item_order" Type="int16" Size="1" />
<Data ElementName="slot7_item_treeid" Type="int16" Size="1" />
<Data ElementName="slot7_item_id" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="substruct_item_info" ClientVersion="63119">
<Data ElementName="num_items" Type="int16" Size="1" />
<Data ElementName="items_array" Type="Array" ArraySizeVariable="num_items" >
<Data ElementName="item_index" Type="int16" Size="1" />
<Data ElementName="tab_unknown2" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_AdventureList" ClientVersion="63119" OpcodeName="OP_AdventureList">
<Data ElementName="unknown_aa" Type="int8" Size="1" />
<Data ElementName="num_aa_trees" Type="int32" Size="1" />
<Data ElementName="aa_array" Type="Array" ArraySizeVariable="num_aa_trees">
<Data ElementName="tab_title" Type="EQ2_16Bit_String" />
<Data ElementName="tree_node_id" Type="int16" Size="1" />
<Data ElementName="max_aa" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="kos_req" Type="int8" Size="1" />
<Data ElementName="node_info" Substruct="substruct_node_info" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="class_points_spent" Type="int32" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="unknown11a" Type="int16" Size="1" />
<Data ElementName="unknown11b" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int8" Size="3" />
<Data ElementName="unknown13" Type="EQ2_16Bit_String" />
<Data ElementName="unknown14" Type="int32" Size="1" />
<Data ElementName="unknown15" Type="EQ2_16Bit_String" />
<Data ElementName="unknown16a" Type="int32" Size="1" />
<Data ElementName="unknown16b" Type="int16" Size="1" />
</Data>
<Data ElementName="template_ unknown1" Type="int32" Size="1" />
<Data ElementName="template_ unknown2" Type="int32" Size="1" />
<Data ElementName="template_ unknown3" Type="int32" Size="1" />
<Data ElementName="template_ unknown4" Type="int32" Size="1" />
<Data ElementName="template_ unknown5" Type="int32" Size="1" />
<Data ElementName="num_templates" Type="int8" Size="1" />
<Data ElementName="slot1_unknown1" Type="int8" Size="1" />
<Data ElementName="slot1_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot1_active" Type="int8" Size="1" />
<Data ElementName="slot1_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot1_tab_template_array" Type="Array" ArraySizeVariable="slot1_num_tabs" >
<Data ElementName="slot1_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot1_num_items" Type="int16" Size="1" />
<Data ElementName="slot1_items_array" Type="Array" ArraySizeVariable="slot1_num_items" >
<Data ElementName="slot1_item_index" Type="int16" Size="1" />
<Data ElementName="slot1_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot1_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot2_unknown1" Type="int8" Size="1" />
<Data ElementName="slot2_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot2_active" Type="int8" Size="1" />
<Data ElementName="slot2_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot2_tab_template_array" Type="Array" ArraySizeVariable="slot2_num_tabs" >
<Data ElementName="slot2_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot2_num_items" Type="int16" Size="1" />
<Data ElementName="slot2_items_array" Type="Array" ArraySizeVariable="slot2_num_items" >
<Data ElementName="slot2_item_index" Type="int16" Size="1" />
<Data ElementName="slot2_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot2_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot3_unknown1" Type="int8" Size="1" />
<Data ElementName="slot3_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot3_active" Type="int8" Size="1" />
<Data ElementName="slot3_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot3_tab_template_array" Type="Array" ArraySizeVariable="slot3_num_tabs" >
<Data ElementName="slot3_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot3_num_items" Type="int16" Size="1" />
<Data ElementName="slot3_items_array" Type="Array" ArraySizeVariable="slot3_num_items" >
<Data ElementName="slot3_item_index" Type="int16" Size="1" />
<Data ElementName="slot3_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot3_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot4_unknown1" Type="int8" Size="1" />
<Data ElementName="slot4_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot4_active" Type="int8" Size="1" />
<Data ElementName="slot4_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot4_tab_template_array" Type="Array" ArraySizeVariable="slot4_num_tabs" >
<Data ElementName="slot4_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot4_num_items" Type="int16" Size="1" />
<Data ElementName="slot4_items_array" Type="Array" ArraySizeVariable="slot4_num_items" >
<Data ElementName="slot4_item_index" Type="int16" Size="1" />
<Data ElementName="slot4_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot4_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot5_unknown1" Type="int8" Size="1" />
<Data ElementName="slot5_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot5_active" Type="int8" Size="1" />
<Data ElementName="slot5_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot5_tab_template_array" Type="Array" ArraySizeVariable="slot5_num_tabs" >
<Data ElementName="slot5_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot5_num_items" Type="int16" Size="1" />
<Data ElementName="slot5_items_array" Type="Array" ArraySizeVariable="slot5_num_items" >
<Data ElementName="slot5_item_index" Type="int16" Size="1" />
<Data ElementName="slot5_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot5_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot6_unknown1" Type="int8" Size="1" />
<Data ElementName="slot6_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot6_active" Type="int8" Size="1" />
<Data ElementName="slot6_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot6_tab_template_array" Type="Array" ArraySizeVariable="slot6_num_tabs" >
<Data ElementName="slot6_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot6_num_items" Type="int16" Size="1" />
<Data ElementName="slot6_items_array" Type="Array" ArraySizeVariable="slot6_num_items" >
<Data ElementName="slot6_item_index" Type="int16" Size="1" />
<Data ElementName="slot6_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot6_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
<Data ElementName="slot7_unknown1" Type="int8" Size="1" />
<Data ElementName="slot7_name" Type="EQ2_16Bit_String" />
<Data ElementName="slot7_active" Type="int8" Size="1" />
<Data ElementName="slot7_num_tabs" Type="int16" Size="1" />
<Data ElementName="slot7_tab_template_array" Type="Array" ArraySizeVariable="slot7_num_tabs" >
<Data ElementName="slot7_tab_unknown1" Type="int16" Size="3" />
<Data ElementName="slot7_num_items" Type="int16" Size="1" />
<Data ElementName="slot7_items_array" Type="Array" ArraySizeVariable="slot7_num_items" >
<Data ElementName="slot7_item_index" Type="int16" Size="1" />
<Data ElementName="slot7_item_unknown1" Type="int16" Size="1" />
<Data ElementName="slot7_tab_unknown2" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="WS_PointOfInterest" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_PointOfInterest">
<Data ElementName="poi_id" Type="int8" Size="1" />
<Data ElementName="zone_id" Type="int16" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="poi_name" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_MapExploration" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqMapExplorationCmd">
<Data ElementName="unknown" Type="int16" Size="1" />
<Data ElementName="num_locations" Type="int16" Size="1" />
<Data ElementName="location_array" Type="Array" ArraySizeVariable="num_locations">
<Data ElementName="location_x" Type="float" Size="1" />
<Data ElementName="location_y" Type="float" Size="1" />
<Data ElementName="location_z" Type="float" Size="1" />
</Data>
</Struct>
Appearance equipment, content feature requests, fixed ability to delete mail and see item icons in the main list if stack is 0 Fix #300 - appearance inventory saved to database, can equip and overrides normal equipment. Also fixed appearance properly updating (it wasn't sent other than in zone in primarily) Fix #322 - rule to disable house alignment requirements RULE_INIT(R_Player, DisableHouseAlignmentRequirement, "1"); Fix #311 - defines for root/snare as spell types #define SPELL_TYPE_ROOT 15 #define SPELL_TYPE_SNARE 16 Fix #301 - loot_global needs a lua_script to access the ZoneScript and call function loot_criteria(Spawn) loot_criteria_zone(Zone, Spawn, LootTableID, MinLevel, MaxLevel) loot_criteria_racial(Zone, Spawn, LootTableID, MinLevel, MaxLevel) loot_criteria_level(Zone, Spawn, LootTableID, MinLevel, MaxLevel) Spawn: the target of the loot table to be added LootTableID: the current loot table id we are checking to add to the Spawn MinLevel/MaxLevel: Criteria from the global loot table that is handled via code (eg. always add if minlevel/maxlevel is 0, otherwise it is based on the Spawn's level) return value of 0 will skip the provided LootTableID(int32) despite the database MinLevel/MaxLevel checks return value of 1 will always include the loot table id on the Spawn list, even overriding if the min/max level check fails in the code Issue #231 partially addressed, added support to override item_difficulty in the item script based on the arrow color (3 is white): function item_difficulty(Item, Spawn) return 3 end
2021-03-18 07:26:05 -06:00
2020-02-28 07:17:24 -07:00
<Struct Name="WS_GetMailHeader" ClientVersion="1" OpcodeName="OP_MailGetHeadersReplyMsg">
<Data ElementName="kiosk_id" Type="int32" />
<Data ElementName="num_messages" Type="int16" Size="1" />
<Data ElementName="message_array" Type="Array" ArraySizeVariable="num_messages">
<Data ElementName="mail_id" Type="int32" Size="1" />
<Data ElementName="player_to_id" Type="int32" Size="1" />
<Data ElementName="player_from" Type="EQ2_16Bit_String" />
<Data ElementName="subject" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int16" Size="1" />
<Data ElementName="already_read" Type="int8" Size="1" />
<Data ElementName="mail_deletion" Type="int32" Size="1" />
<Data ElementName="mail_type" Type="int8" Size="1" />
<Data ElementName="mail_expire" Type="int32" Size="1" />
<Data ElementName="coin_copper" Type="int32" Size="1" />
<Data ElementName="coin_silver" Type="int32" Size="1" />
<Data ElementName="coin_gold" Type="int32" Size="1" />
<Data ElementName="coin_plat" Type="int32" Size="1" />
<Data ElementName="num_items" Type="int16" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="unknown2" Type="int32" />
</Data>
<Data ElementName="postage_cost" Type="int32" Size="1" />
<Data ElementName="attachment_cost" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="4" />
</Struct>
<Struct Name="WS_GetMailHeader" ClientVersion="1193" OpcodeName="OP_MailGetHeadersReplyMsg">
<Data ElementName="kiosk_id" Type="int32" />
<Data ElementName="num_messages" Type="int16" Size="1" />
<Data ElementName="message_array" Type="Array" ArraySizeVariable="num_messages">
<Data ElementName="mail_id" Type="int32" Size="1" />
<Data ElementName="player_to_id" Type="int32" Size="1" />
<Data ElementName="player_from" Type="EQ2_16Bit_String" />
<Data ElementName="subject" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int16" Size="1" />
<Data ElementName="already_read" Type="int8" Size="1" />
<Data ElementName="mail_deletion" Type="int32" Size="1" />
<Data ElementName="mail_type" Type="int8" Size="1" />
<Data ElementName="mail_expire" Type="int32" Size="1" />
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="coin_copper" Type="int32" Size="1" />
<Data ElementName="coin_silver" Type="int32" Size="1" />
<Data ElementName="coin_gold" Type="int32" Size="1" />
<Data ElementName="coin_plat" Type="int32" Size="1" />
2021-03-14 15:28:31 -06:00
<Data ElementName="item" Type="EQ2_Item" Optional="TRUE"/>
<Data ElementName="end_tagx" Type="int16" IfVariableNotSet="item_%i"/>
<Data ElementName="end_tag2" Type="int16" IfVariableNotSet="item_%i"/>
<Data ElementName="end_tag3" Type="int8" IfVariableNotSet="item_%i"/>
<Data ElementName="end_tag4" Type="int32"/>
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="postage_cost" Type="int32" Size="1" />
<Data ElementName="attachment_cost" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="4" />
</Struct>
<Struct Name="WS_MailGetMessage" ClientVersion="1" OpcodeName="OP_MailGetMessageReplyMsg">
<Data ElementName="kiosk_id" Type="int32" />
<Data ElementName="mail_id" Type="int32" />
<Data ElementName="player_to_id" Type="int32" />
<Data ElementName="player_from" Type="EQ2_16Bit_String" />
<Data ElementName="subject" Type="EQ2_16Bit_String" />
<Data ElementName="mail_body" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="lock_report_button" Type="int8" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="coin_copper" Type="int32" />
<Data ElementName="coin_silver" Type="int32" />
<Data ElementName="coin_gold" Type="int32" />
<Data ElementName="coin_plat" Type="int32" />
<Data ElementName="stack" Type="int16" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="unknown4" Type="int32" IfVariableNotSet="stack_0" />
<Data ElementName="unknown5" Type="int32" Size="1" />
<Data ElementName="unknown6" Type="int16" Size="1" />
<Data ElementName="unknown7" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_MailGetMessage" ClientVersion="1193" OpcodeName="OP_MailGetMessageReplyMsg">
<Data ElementName="kiosk_id" Type="int32" />
<Data ElementName="mail_id" Type="int32" />
<Data ElementName="player_to_id" Type="int32" />
<Data ElementName="player_from" Type="EQ2_16Bit_String" />
<Data ElementName="subject" Type="EQ2_16Bit_String" />
<Data ElementName="mail_body" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="lock_report_button" Type="int8" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="unknown3a" Type="int32" />
<Data ElementName="coin_copper" Type="int32" />
<Data ElementName="coin_silver" Type="int32" />
<Data ElementName="coin_gold" Type="int32" />
<Data ElementName="coin_plat" Type="int32" />
Appearance equipment, content feature requests, fixed ability to delete mail and see item icons in the main list if stack is 0 Fix #300 - appearance inventory saved to database, can equip and overrides normal equipment. Also fixed appearance properly updating (it wasn't sent other than in zone in primarily) Fix #322 - rule to disable house alignment requirements RULE_INIT(R_Player, DisableHouseAlignmentRequirement, "1"); Fix #311 - defines for root/snare as spell types #define SPELL_TYPE_ROOT 15 #define SPELL_TYPE_SNARE 16 Fix #301 - loot_global needs a lua_script to access the ZoneScript and call function loot_criteria(Spawn) loot_criteria_zone(Zone, Spawn, LootTableID, MinLevel, MaxLevel) loot_criteria_racial(Zone, Spawn, LootTableID, MinLevel, MaxLevel) loot_criteria_level(Zone, Spawn, LootTableID, MinLevel, MaxLevel) Spawn: the target of the loot table to be added LootTableID: the current loot table id we are checking to add to the Spawn MinLevel/MaxLevel: Criteria from the global loot table that is handled via code (eg. always add if minlevel/maxlevel is 0, otherwise it is based on the Spawn's level) return value of 0 will skip the provided LootTableID(int32) despite the database MinLevel/MaxLevel checks return value of 1 will always include the loot table id on the Spawn list, even overriding if the min/max level check fails in the code Issue #231 partially addressed, added support to override item_difficulty in the item script based on the arrow color (3 is white): function item_difficulty(Item, Spawn) return 3 end
2021-03-18 07:26:05 -06:00
<Data ElementName="item" Type="EQ2_Item" Optional="TRUE"/>
<Data ElementName="end_tagx" Type="int16" IfVariableNotSet="item"/>
<Data ElementName="end_tag2" Type="int16" IfVariableNotSet="item"/>
<Data ElementName="end_tag3" Type="int8" IfVariableNotSet="item"/>
<Data ElementName="end_tag4" Type="int32"/>
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_MailSendMessage" ClientVersion="1" OpcodeName="OP_MailSendMessageMsg">
<Data ElementName="player_to" Type="EQ2_16Bit_String" />
<Data ElementName="subject" Type="EQ2_16Bit_String" />
<Data ElementName="mail_body" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="31"/>
<Data ElementName="stack" Type="int16" Size="1" />
<Data ElementName="packettype" Type="int16" Size="1" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="unknown_item_maybe" Type="int8" Size="4"/>
</Struct>
<Struct Name="WS_MailSendMessageReply" ClientVersion="1" OpcodeName="OP_MailSendMessageReplyMsg">
<Data ElementName="unknown" Type="int8" Size="12" />
<Data ElementName="reply_type" Type="int8" />
<Data ElementName="player_to" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int8" Size="9" />
</Struct>
<Struct Name="WS_UpdatePlayerMail" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdatePlayerMailCmd">
<Data ElementName="action" Type="int8" />
<Data ElementName="coin_copper" Type="int32" />
<Data ElementName="coin_silver" Type="int32" />
<Data ElementName="coin_gold" Type="int32" />
<Data ElementName="coin_plat" Type="int32" />
2021-03-14 15:28:31 -06:00
<Data ElementName="item" Type="EQ2_Item" Optional="TRUE"/>
<Data ElementName="end_tagx" Type="int16" IfVariableNotSet="item"/>
<Data ElementName="end_tag2" Type="int16" IfVariableNotSet="item"/>
<Data ElementName="end_tag3" Type="int8" IfVariableNotSet="item"/>
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown2" Type="int8" Size="5"/>
<Data ElementName="mail_id" Type="int32" Size="1"/>
<Data ElementName="unread" Type="int16"/>
<Data ElementName="attachments" Type="int16"/>
</Struct>
<Struct Name="WS_BeginTracking" ClientVersion="1" OpcodeName="OP_BeginTrackingMsg">
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_TrackingUpdate" ClientVersion="1" OpcodeName="OP_TrackingUpdateMsg">
<Data ElementName="mode" Type="int8" />
<Data ElementName="type" Type="int8" />
<Data ElementName="num_spawns" Type="int8" />
<Data ElementName="spawn_array" Type="Array" ArraySizeVariable="num_spawns">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="spawn_name" Type="EQ2_8Bit_String" />
<Data ElementName="spawn_type" Type="int8" />
<Data ElementName="spawn_con_color" Type="int8" />
</Data>
<Data ElementName="num_array1" Type="int8" />
<Data ElementName="unknown_array1" Type="Array" ArraySizeVariable="num_array1">
<Data ElementName="array1_unknown" Type="int32" />
</Data>
<Data ElementName="num_spawns2" Type="int8" />
<Data ElementName="list_order" Type="Array" ArraySizeVariable="num_spawns2">
<Data ElementName="list_spawn_id" Type="int32" />
<Data ElementName="list_number" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_BioUpdate" ClientVersion="1" OpcodeName="OP_BioUpdateMsg">
<Data ElementName="biography" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_InspectPlayer" ClientVersion="1" OpcodeName="OP_InspectPlayerMsg">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="race" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="adventure_level" Type="int8" />
<Data ElementName="adventure_level_effective" Type="int8" />
<Data ElementName="adventure_class" Type="int8" />
<Data ElementName="tradeskill_level" Type="int8" />
<Data ElementName="tradeskill_class" Type="int8" />
<Data ElementName="health" Type="sint32" />
<Data ElementName="health_max" Type="sint32" />
<Data ElementName="health_base" Type="sint32" />
<Data ElementName="power" Type="sint32" />
<Data ElementName="power_max" Type="sint32" />
<Data ElementName="power_base" Type="sint32" />
<Data ElementName="mitigation" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown1" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown2" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="strength" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="strength_base" Type="int8" />
<Data ElementName="stamina" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="stamina_base" Type="int8" />
<Data ElementName="agility" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="agility_base" Type="int8" />
<Data ElementName="wisdom" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="wisdom_base" Type="int8" />
<Data ElementName="intelligence" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="intelligence_base" Type="int8" />
<Data ElementName="unknown4" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown5" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown6" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown7" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown8" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown9" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown10" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown11" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown12" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cold_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cold_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cold_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mental_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mental_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mental_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="divine_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="divine_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="divine_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="disease_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="disease_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="disease_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="num_chars" Type="int16" Size="1" />
<Data ElementName="biography_array" Type="Array" ArraySizeVariable="num_chars">
<Data ElementName="biography_char" Type="char" />
</Data>
<Data ElementName="primary" Type="EQ2_Item" Size="1" />
<Data ElementName="secondary" Type="EQ2_Item" Size="1" />
</Struct>
- DoF Client Profile(Character) -> Options all the checkboxes set the wrong thing (afk, roleplaying, camping, linkdead, lfg, so on) - DoF client Quest complete reward now includes temp rewards item data, previously you would see an empty quest reward window. - DoF client properly in combat (no re-sheething of weapon while in combat) - DoF client fixed spells to do start and end cast at appropriate times (struct fix). - DoF client casting on self says "not a friend" -- now says not an enemy. When being too far away, instead of saying "too close" now says "too far away". - DoF fixed selecting self interrupts /camp - DoF client server/client properly synched for inventory (food/drink and other equipped slots previously not working right) - DoF Broker no longer crashes client, limited implementation to get first 8 results. WIP - DoF fixed examine equipped items didn't work for drink/potentially mismatched other slots - DoF item stat review of resists now properly display - DoF client is constantly sending HandleExamineInfoRequest packets for spells, fixed. Greatly improved performance of DoF cause it was constantly sending these packets for all spells in your book per second! - DoF collections window is fixed, collections now display correctly in journal window. Upon turning in complete collections, client no longer crashes. Outstanding note: DoF client has EXP show up as % of level (60?) instead of just bare XP points. This might need more discovery, but isn't a huge issue right now. - DoF player profile inspection inventory, DoF and AoM both display inventory (DoF does not support appearance gear). Cross client inspection works also. Avoidance (DoF and AOM) / ATK (DoF) stats need to be reviewed and matched in the structure, but not a big priority. - DoF client /who list is broken (if more than one player, by myself /who works) -- structure updated for some unknown bytes tail of packet - DoF client gestures now show up visually and not as an /emote- - DoF item display fixed for house items (the items themselves in inventory/broker/so on were previosuly displayed corrupted) - DoF Merchant "sell to merchant" just shows buy window, sell window was displaying buy items, there is already a sell window with the buy window. - DoF merchant mender/repair no longer crashes the client -- currently worked around by sending buy screen then repair screen.. displays both, need to get buy screen disabled, will be its own git issue. - Remove/Add skills via LUA will now properly update/reflect the database. - starting_skills and starting_spells no longer applies on each login, this will stop the restoring of spells/skills on zoning that are removed with LUA - Login sequence into world now initially load spells/skills (and also sync if first time into the world for the character). This will allow us to avoid an unneccessary blocking behavior with World::SyncCharAbilities (it waited for 5 loops and hold the thread to see if the DB is updating the character). Now we enforce this behavior with an updated state machine for the login, no longer blocking/holding the thread. alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - R_World, DisplayItemTiers rule made to display item tiers (1) / disable (0) - Bots are no longer impacted by /depop or /repop - fixed crash with Player::CheckQuestFlag where we try to send updates based on quest, dead quest ptr when calling CheckQuestChatUpdate - revive points now support an always_included option, otherwise it only shows the closest distance - Database updates: alter table revive_points add column always_included tinyint(1) unsigned not null default 0; alter table characters add column first_world_login tinyint(1) unsigned not null default 0; - LoginServer * LoginServer.ini now supports (integer) fields expansionsflag, citiesflag, defaultsubscriptionlevel, enabledraces under the "LoginConfig" block eg. enabledraces = 65535 allows all races enabledraces = 57343 removes sarnak as playable race (-8192), another -4096 would remove Arasai. -2048 removes Fae. Default values (in hex, you can only use integer in the ini): // full support = 0x7CFF // 1 << 12 (-4096) = missing echoes of faydwer, disables Fae and Arasai (black portraits) and kelethin as starting city // 1 << 13 (-8192) = disables sarnak (black portraits) and gorowyn as starting city expansionFlag = 0x7CFF; // 0x4CF5 /* dword_1ECBA18 operand for race flag packs (sublevel 0,1,2?) -- (sublevel -1) controls starting zones omission 0xEE vs 0xCF (CF misses halas) 1 = city of qeynos 2 = city of freeport 4 = city of kelethin 8 = city of neriak 16 = gorowyn 32 = new halas 64 = queens colony 128 = outpost overlord */ citiesFlag = 0xFF; // sub_level 0xFFFFFFFF = blacks out all portraits for class alignments, considered non membership // sub_level > 0 = class alignments still required, but portraits are viewable and race selectable // sub_level = 2 membership, you can 'create characters on time locked servers' vs standard // sub_level = 0 forces popup on close to web browser defaultSubscriptionLevel = 0xFFFFFFFF; // disable extra races FAE(16) ARASAI (17) SARNAK (18) -- with 4096/8192 flags, no visibility of portraits enabledRaces = 0xFFFF; // 0xCFFF
2023-05-20 06:43:45 -06:00
<Struct Name="WS_InspectPlayer" ClientVersion="546" OpcodeName="OP_InspectPlayerMsg">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="race" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="adventure_level" Type="int8" />
<Data ElementName="adventure_level_effective" Type="int8" />
<Data ElementName="adventure_class" Type="int8" />
<Data ElementName="tradeskill_level" Type="int8" />
<Data ElementName="tradeskill_class" Type="int8" />
<Data ElementName="health" Type="sint32" />
<Data ElementName="health_max" Type="sint32" />
<Data ElementName="health_base" Type="sint32" />
<Data ElementName="power" Type="sint32" />
<Data ElementName="power_max" Type="sint32" />
<Data ElementName="power_base" Type="sint32" />
<Data ElementName="unknown1" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidancex" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown2" Type="int16"/>
<Data ElementName="mitigation_percentage" Type="int8" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="strength" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="strength_base" Type="int8" />
<Data ElementName="stamina" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="stamina_base" Type="int8" />
<Data ElementName="agility" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="agility_base" Type="int8" />
<Data ElementName="wisdom" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="wisdom_base" Type="int8" />
<Data ElementName="intelligence" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="intelligence_base" Type="int8" />
<Data ElementName="unknown4" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown5" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown6" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown7" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown8" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown9" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown10" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown11" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown12" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cold_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cold_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="cold_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mental_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mental_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mental_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="divine_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="divine_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="divine_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="disease_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="disease_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="disease_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="num_chars" Type="int16" Size="1" />
<Data ElementName="biography_array" Type="Array" ArraySizeVariable="num_chars">
<Data ElementName="biography_char" Type="char" />
</Data>
<Data ElementName="slot_0" Type="EQ2_Item" />
<Data ElementName="slot_1" Type="EQ2_Item" />
<Data ElementName="slot_2" Type="EQ2_Item" />
<Data ElementName="slot_3" Type="EQ2_Item" />
<Data ElementName="slot_4" Type="EQ2_Item" />
<Data ElementName="slot_5" Type="EQ2_Item" />
<Data ElementName="slot_6" Type="EQ2_Item" />
<Data ElementName="slot_7" Type="EQ2_Item" />
<Data ElementName="slot_8" Type="EQ2_Item" />
<Data ElementName="slot_9" Type="EQ2_Item" />
<Data ElementName="slot_10" Type="EQ2_Item" />
<Data ElementName="slot_11" Type="EQ2_Item" />
<Data ElementName="slot_12" Type="EQ2_Item" />
<Data ElementName="slot_13" Type="EQ2_Item" />
<Data ElementName="slot_14" Type="EQ2_Item" />
<Data ElementName="slot_15" Type="EQ2_Item" />
<Data ElementName="slot_16" Type="EQ2_Item" />
<Data ElementName="slot_17" Type="EQ2_Item" />
<Data ElementName="slot_18" Type="EQ2_Item" />
<Data ElementName="slot_19" Type="EQ2_Item" />
<Data ElementName="slot_20" Type="EQ2_Item" />
<Data ElementName="slot_21" Type="EQ2_Item" />
<Data ElementName="slot_22" Type="EQ2_Item" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_InspectPlayer" ClientVersion="1096" OpcodeName="OP_InspectPlayerMsg">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="race" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="adventure_level" Type="int8" />
<Data ElementName="adventure_level_effective" Type="int8" />
<Data ElementName="adventure_class" Type="int8" />
<Data ElementName="tradeskill_level" Type="int8" />
<Data ElementName="tradeskill_class" Type="int8" />
<Data ElementName="health" Type="sint32" />
<Data ElementName="health_max" Type="sint32" />
<Data ElementName="health_base" Type="sint32" />
<Data ElementName="power" Type="sint32" />
<Data ElementName="power_max" Type="sint32" />
<Data ElementName="power_base" Type="sint32" />
<Data ElementName="mitigation" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown1" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown2" Type="int8" size="5" />
<Data ElementName="strength" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="strength_base" Type="int8" />
<Data ElementName="stamina" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="stamina_base" Type="int8" />
<Data ElementName="agility" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="agility_base" Type="sint8" />
<Data ElementName="wisdom" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="wisdom_base" Type="int8" />
<Data ElementName="intelligence" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="intelligence_base" Type="int8" />
<Data ElementName="unknown3" Type="int8" size="4" />
<Data ElementName="unknown4" Type="int8" size="4" />
<Data ElementName="unknown5" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown6" Type="int8" size="1" />
<Data ElementName="heat_resist" Type="int32" size="1" />
<Data ElementName="heat_resist_base" Type="int32" size="1" />
<Data ElementName="heat_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown8" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist" Type="int32" size="1" />
<Data ElementName="poison_resist_base" Type="int32" size="1" />
<Data ElementName="poison_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown10" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist" Type="int32" Size="1" />
<Data ElementName="magic_resist_base" Type="int32" Size="1" />
<Data ElementName="magic_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown12" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="num_chars" Type="int16" Size="1" />
<Data ElementName="biography_array" Type="Array" ArraySizeVariable="num_chars">
<Data ElementName="biography_char" Type="char" />
</Data>
<Data ElementName="unknown14" Type="int8" Size="1" />
<Data ElementName="unknown_name" Type="EQ2_8Bit_String" />
<!-- <Data ElementName="equipment_start" Type="int8" Size="5810" />
<Data ElementName="Achievement_size" Type="int32" Size="1" /> -->
</Struct>
<Struct Name="WS_InspectPlayer" ClientVersion="57048" OpcodeName="OP_InspectPlayerMsg">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="race" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="adventure_level" Type="int8" />
<Data ElementName="adventure_level_effective" Type="int8" />
<Data ElementName="adventure_class" Type="int8" />
<Data ElementName="tradeskill_level" Type="int8" />
<Data ElementName="tradeskill_class" Type="int8" />
<Data ElementName="health" Type="sint32" />
<Data ElementName="health2" Type="sint32" />
<Data ElementName="health_max" Type="sint32" />
<Data ElementName="health_max2" Type="sint32" />
<Data ElementName="health_base" Type="sint32" />
<Data ElementName="health_base2" Type="sint32" />
<Data ElementName="power" Type="sint32" />
<Data ElementName="power_max" Type="sint32" />
<Data ElementName="power_base" Type="sint32" />
<Data ElementName="mitigation" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown1" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown1a" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown2" Type="int8" size="1" />
<Data ElementName="unknown2a" Type="int8" size="1" />
<Data ElementName="unknown2b" Type="int8" size="1" />
<Data ElementName="unknown2c" Type="int8" size="1" />
<Data ElementName="strength" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="strength_base" Type="int8" />
<Data ElementName="stamina" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="stamina_base" Type="int8" />
<Data ElementName="agility" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="agility_base" Type="sint8" />
<Data ElementName="wisdom" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="wisdom_base" Type="int8" />
<Data ElementName="intelligence" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="intelligence_base" Type="int8" />
<Data ElementName="unknown3" Type="int32" size="1" />
<Data ElementName="unknown3a" Type="int32" size="1" />
<Data ElementName="unknown4" Type="int16" size="1" />
<Data ElementName="heat_resist" Type="int32" size="1" />
<Data ElementName="heat_resist_base" Type="int32" size="1" />
<Data ElementName="heat_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown8" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist" Type="int32" size="1" />
<Data ElementName="poison_resist_base" Type="int32" size="1" />
<Data ElementName="poison_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown10" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist" Type="int32" Size="1" />
<Data ElementName="magic_resist_base" Type="int32" Size="1" />
<Data ElementName="magic_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown12" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="num_chars" Type="int16" Size="1" />
<Data ElementName="biography_array" Type="Array" ArraySizeVariable="num_chars">
<Data ElementName="biography_char" Type="char" />
</Data>
<Data ElementName="unknown14" Type="int8" Size="1" />
<Data ElementName="unknown_name" Type="EQ2_8Bit_String" />
<!-- <Data ElementName="equipment_start" Type="int8" Size="5810" />
<Data ElementName="Achievement_size" Type="int32" Size="1" /> -->
</Struct>
<Struct Name="WS_InspectPlayer" ClientVersion="57107" OpcodeName="OP_InspectPlayerMsg">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="race" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="adventure_level" Type="int8" />
<Data ElementName="adventure_level_effective" Type="int8" />
<Data ElementName="adventure_class" Type="int8" />
<Data ElementName="tradeskill_level" Type="int8" />
<Data ElementName="tradeskill_class" Type="int8" />
<Data ElementName="health" Type="sint32" />
<Data ElementName="health2" Type="sint32" />
<Data ElementName="health_max" Type="sint32" />
<Data ElementName="health_max2" Type="sint32" />
<Data ElementName="health_base" Type="sint32" />
<Data ElementName="health_base2" Type="sint32" />
<Data ElementName="power" Type="sint32" />
<Data ElementName="power_max" Type="sint32" />
<Data ElementName="power_base" Type="sint32" />
<Data ElementName="mitigation" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="avoidance_base" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="mitigation_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown1" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown1a" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown2" Type="int8" size="1" />
<Data ElementName="unknown2a" Type="int8" size="1" />
<Data ElementName="unknown2b" Type="int8" size="1" />
<Data ElementName="unknown2c" Type="int8" size="1" />
<Data ElementName="strength" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="strength_base" Type="int8" />
<Data ElementName="stamina" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="stamina_base" Type="int8" />
<Data ElementName="agility" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="agility_base" Type="sint8" />
<Data ElementName="wisdom" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="wisdom_base" Type="int8" />
<Data ElementName="intelligence" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="intelligence_base" Type="int8" />
<Data ElementName="unknown3" Type="int32" size="1" />
<Data ElementName="unknown3a" Type="int32" size="1" />
<Data ElementName="unknown4" Type="int8" size="1" />
<Data ElementName="unknown4a" Type="sint16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="heat_resist" Type="int32" size="1" />
<Data ElementName="heat_resist_base" Type="int32" size="1" />
<Data ElementName="heat_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown8" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="poison_resist" Type="int32" size="1" />
<Data ElementName="poison_resist_base" Type="int32" size="1" />
<Data ElementName="poison_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown10" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="magic_resist" Type="int32" Size="1" />
<Data ElementName="magic_resist_base" Type="int32" Size="1" />
<Data ElementName="magic_resist_percentage" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="unknown12" Type="int16" OversizedValue="127" OversizedByte="127" />
<Data ElementName="num_chars" Type="int16" Size="1" />
<Data ElementName="biography_array" Type="Array" ArraySizeVariable="num_chars">
<Data ElementName="biography_char" Type="char" />
</Data>
<Data ElementName="unknown14" Type="int8" Size="6" />
<Data ElementName="slot_0" Type="EQ2_Item" />
<Data ElementName="slot_1" Type="EQ2_Item" />
<Data ElementName="slot_2" Type="EQ2_Item" />
<Data ElementName="slot_3" Type="EQ2_Item" />
<Data ElementName="slot_4" Type="EQ2_Item" />
<Data ElementName="slot_5" Type="EQ2_Item" />
<Data ElementName="slot_6" Type="EQ2_Item" />
<Data ElementName="slot_7" Type="EQ2_Item" />
<Data ElementName="slot_8" Type="EQ2_Item" />
<Data ElementName="slot_9" Type="EQ2_Item" />
<Data ElementName="slot_10" Type="EQ2_Item" />
<Data ElementName="slot_11" Type="EQ2_Item" />
<Data ElementName="slot_12" Type="EQ2_Item" />
<Data ElementName="slot_13" Type="EQ2_Item" />
<Data ElementName="slot_14" Type="EQ2_Item" />
<Data ElementName="slot_15" Type="EQ2_Item" />
<Data ElementName="slot_16" Type="EQ2_Item" />
<Data ElementName="slot_17" Type="EQ2_Item" />
<Data ElementName="slot_18" Type="EQ2_Item" />
<Data ElementName="slot_19" Type="EQ2_Item" />
<Data ElementName="slot_20" Type="EQ2_Item" />
<Data ElementName="slot_21" Type="EQ2_Item" />
<Data ElementName="slot_22" Type="EQ2_Item" />
<Data ElementName="slot_23" Type="EQ2_Item" />
<Data ElementName="slot_24" Type="EQ2_Item" />
<Data ElementName="slot_25" Type="EQ2_Item" />
<Data ElementName="slot_26" Type="EQ2_Item" />
<Data ElementName="slot_27" Type="EQ2_Item" />
<Data ElementName="slot_28" Type="EQ2_Item" />
<Data ElementName="slot_29" Type="EQ2_Item" />
<Data ElementName="slot_30" Type="EQ2_Item" />
<Data ElementName="slot_31" Type="EQ2_Item" />
<Data ElementName="slot_32" Type="EQ2_Item" />
<Data ElementName="slot_33" Type="EQ2_Item" />
<Data ElementName="slot_34" Type="EQ2_Item" />
<Data ElementName="slot_35" Type="EQ2_Item" />
<Data ElementName="slot_36" Type="EQ2_Item" />
<Data ElementName="slot_37" Type="EQ2_Item" />
<Data ElementName="slot_38" Type="EQ2_Item" />
<Data ElementName="slot_39" Type="EQ2_Item" />
<Data ElementName="slot_40" Type="EQ2_Item" />
<Data ElementName="slot_41" Type="EQ2_Item" />
<Data ElementName="slot_42" Type="EQ2_Item" />
<Data ElementName="slot_43" Type="EQ2_Item" />
<Data ElementName="slot_44" Type="EQ2_Item" />
<Data ElementName="slot_45" Type="EQ2_Item" />
<Data ElementName="slot_46" Type="EQ2_Item" />
<Data ElementName="slot_47" Type="EQ2_Item" />
<Data ElementName="slot_48" Type="EQ2_Item" />
<Data ElementName="slot_49" Type="EQ2_Item" /> <!-- Item.h potential max slot number, NUM_SLOTS(24) * 2 + 1 = 49 -->
2020-02-28 07:17:24 -07:00
<!-- <Data ElementName="equipment_start" Type="int8" Size="5810" />
<Data ElementName="Achievement_size" Type="int32" Size="1" /> -->
</Struct>
<Struct Name="WS_TitleUpdate" ClientVersion="1" OpcodeName="OP_TitleUpdateMsg">
<Data ElementName="num_titles" Type="int16" />
<Data ElementName="titles_array" Type="Array" ArraySizeVariable="num_titles">
<Data ElementName="title" Type="EQ2_16Bit_String" />
<Data ElementName="prefix" Type="int8" Size="1" />
</Data>
<Data ElementName="current_prefix" Type="sint16" Size="1" />
<Data ElementName="current_suffix" Type="sint16" Size="1" />
</Struct>
<Struct Name="WS_UpdateTitle" ClientVersion="1" OpcodeName="OP_UpdateTitleCmd">
<Data ElementName="player_id" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="suffix_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="prefix_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="sub_title" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_UpdateTitle" ClientVersion="1153" OpcodeName="OP_UpdateTitleCmd">
<Data ElementName="player_id" Type="int32" Size="1" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="last_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="suffix_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="prefix_title" Type="EQ2_16Bit_String" />
<Data ElementName="sub_title" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_Languages" ClientVersion="1" OpcodeName="OP_KnownLanguagesMsg">
<Data ElementName="num_languages" Type="int8" />
<Data ElementName="language_array" Type="Array" ArraySizeVariable="num_languages">
<Data ElementName="language_id" Type="int8" />
</Data>
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="current_language" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_PromoFlagsDetails" ClientVersion="1" OpcodeName="OP_PromoFlagsDetailsMsg">
<Data ElementName="num_claim_items" Type="int32" Size="1" />
<Data ElementName="claim_items_array" Type="Array" ArraySizeVariable="num_claim_items">
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="not_yet_claimed" Type="int8" Size="1" />
<Data ElementName="num_remaining" Type="int32" Size="1" />
<Data ElementName="one_per_character" Type="int8" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="claimed_on_this_char" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_PromoFlagsDetails" ClientVersion="546" OpcodeName="OP_PromoFlagsDetailsMsg">
<Data ElementName="num_claim_items" Type="int32" Size="1" />
<Data ElementName="claim_items_array" Type="Array" ArraySizeVariable="num_claim_items">
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="not_yet_claimed" Type="int8" Size="1" />
<Data ElementName="num_remaining" Type="int32" Size="1" />
<Data ElementName="one_per_character" Type="int8" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="claimed_on_this_char" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_PromoFlagsDetails" ClientVersion="547" OpcodeName="OP_PromoFlagsDetailsMsg">
<Data ElementName="num_claim_items" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="claim_items_array" Type="Array" ArraySizeVariable="num_claim_items">
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="not_yet_claimed" Type="int8" Size="1" />
<Data ElementName="num_remaining" Type="int32" Size="1" />
<Data ElementName="one_per_character" Type="int8" Size="1" />
<Data ElementName="claimed_on_this_char" Type="int8" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_PromoFlagsDetails" ClientVersion="60114" OpcodeName="OP_PromoFlagsDetailsMsg">
<Data ElementName="num_claim_items" Type="int32" Size="1" />
<Data ElementName="claim_items_array" Type="Array" ArraySizeVariable="num_claim_items">
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="not_yet_claimed" Type="int8" Size="1" />
<Data ElementName="num_remaining" Type="int32" Size="1" />
<Data ElementName="one_per_character" Type="int8" Size="1" />
<Data ElementName="claimed_on_this_char" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="text" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="category" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown3" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_CharacterAchievements" ClientVersion="603" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterAchievements">
<Data ElementName="num_achievements" Type="int16" Size="1" />
<Data ElementName="achievement_array" Type="Array" ArraySizeVariable="num_achievements">
<Data ElementName="achievement_id" Type="int32" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" />
<Data ElementName="uncompleted_text" Type="EQ2_16Bit_String" />
<Data ElementName="completed_text" Type="EQ2_16Bit_String" />
<Data ElementName="category" Type="EQ2_16Bit_String" />
<Data ElementName="expansion" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="point_value" Type="int32" Size="1" />
<Data ElementName="qty_req" Type="int32" Size="1" />
<Data ElementName="hide_achievement" Type="int8" Size="1" />
<Data ElementName="unknown3a" Type="int32" Size="1" />
<Data ElementName="unknown3b" Type="int32" Size="1" />
<Data ElementName="guild" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_qty_req" Type="int32" Size="1" />
</Data>
<Data ElementName="num_reward_links" Type="int8" Size="1" />
<Data ElementName="reward_link_array" Type="Array" ArraySizeVariable="num_reward_links">
<Data ElementName="reward_link" Type="EQ2_16Bit_String" />
</Data>
</Data>
</Struct>
<Struct Name="WS_CharacterAchievements" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterAchievements">
2020-03-02 16:47:18 -07:00
<Data ElementName="num_achievements" Type="int16" Size="1" />
<Data ElementName="achievement_array" Type="Array" ArraySizeVariable="num_achievements">
<Data ElementName="achievement_id" Type="int32" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" />
<Data ElementName="uncompleted_text" Type="EQ2_16Bit_String" />
<Data ElementName="completed_text" Type="EQ2_16Bit_String" />
<Data ElementName="category" Type="EQ2_16Bit_String" />
<Data ElementName="expansion" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="point_value" Type="int32" Size="1" />
<Data ElementName="qty_req" Type="int32" Size="1" />
<Data ElementName="hide_achievement" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="2" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_qty_req" Type="int32" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int8" Size="1" />
<Data ElementName="reward_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_item" Type="EQ2_16Bit_String" />
</Data>
</Data>
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_CharacterAchievements" ClientVersion="57032" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterAchievements">
<Data ElementName="num_achievements" Type="int16" Size="1" />
<Data ElementName="achievement_array" Type="Array" ArraySizeVariable="num_achievements">
<Data ElementName="achievement_id" Type="int32" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" />
<Data ElementName="uncompleted_text" Type="EQ2_16Bit_String" />
<Data ElementName="completed_text" Type="EQ2_16Bit_String" />
<Data ElementName="category" Type="EQ2_16Bit_String" />
<Data ElementName="expansion" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="point_value" Type="int32" Size="1" />
<Data ElementName="qty_req" Type="int32" Size="1" />
<Data ElementName="hide_achievement" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="2" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_qty_req" Type="int32" Size="1" />
</Data>
<Data ElementName="num_rewards" Type="int8" Size="1" />
<Data ElementName="reward_array" Type="Array" ArraySizeVariable="num_rewards">
<Data ElementName="reward_item" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
<Data ElementName="num_reward_links" Type="int8" Size="1" />
<Data ElementName="reward_link_array" Type="Array" ArraySizeVariable="num_reward_links">
<Data ElementName="reward_link" Type="EQ2_16Bit_String" />
</Data>
</Data>
</Struct>
<Struct Name="WS_CharacterAchievements" ClientVersion="57107" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterAchievements">
<Data ElementName="num_achievements" Type="int16" Size="1" />
<Data ElementName="achievement_array" Type="Array" ArraySizeVariable="num_achievements">
<Data ElementName="achievement_id" Type="int32" Size="1" />
<Data ElementName="title" Type="EQ2_16Bit_String" />
<Data ElementName="uncompleted_text" Type="EQ2_16Bit_String" />
<Data ElementName="completed_text" Type="EQ2_16Bit_String" />
<Data ElementName="category" Type="EQ2_16Bit_String" />
<Data ElementName="expansion" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="point_value" Type="int32" Size="1" />
<Data ElementName="qty_req" Type="int32" Size="1" />
<Data ElementName="hide_achievement" Type="int8" Size="1" />
<Data ElementName="unknown3a" Type="int32" Size="1" />
<Data ElementName="unknown3b" Type="int32" Size="1" />
<Data ElementName="guild" Type="int8" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_qty_req" Type="int32" Size="1" />
</Data>
<Data ElementName="num_reward_links" Type="int8" Size="1" />
<Data ElementName="reward_link_array" Type="Array" ArraySizeVariable="num_reward_links">
<Data ElementName="reward_link" Type="EQ2_16Bit_String" />
</Data>
</Data>
</Struct>
<Struct Name="WS_AchievementUpdate" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_AchievementUpdateMsg">
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="num_achievements" Type="int16" Size="1" />
<Data ElementName="achievement_array" Type="Array" ArraySizeVariable="num_achievements">
<Data ElementName="achievement_id" Type="int32" Size="1" />
<Data ElementName="completed_date" Type="int32" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_update" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="WS_AchievementUpdate" ClientVersion="57032" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_AchievementUpdateMsg">
<Data ElementName="unknown1" Type="int8" Size="2" />
<Data ElementName="num_achievements" Type="int16" Size="1" />
<Data ElementName="achievement_array" Type="Array" ArraySizeVariable="num_achievements">
<Data ElementName="achievement_id" Type="int32" Size="1" />
<Data ElementName="completed_date" Type="int32" Size="1" />
<Data ElementName="num_items" Type="int8" Size="1" />
<Data ElementName="item_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="item_update" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="WS_Lottery" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_Lottery">
<Data ElementName="roll_digit1" Type="int32" Size="1" />
<Data ElementName="roll_digit2" Type="int32" Size="1" />
<Data ElementName="roll_digit3" Type="int32" Size="1" />
<Data ElementName="roll_digit4" Type="int32" Size="1" />
<Data ElementName="roll_digit5" Type="int32" Size="1" />
<Data ElementName="roll_digit6" Type="int32" Size="1" />
<Data ElementName="lottery_digit1" Type="int32" Size="1" />
<Data ElementName="lottery_digit2" Type="int32" Size="1" />
<Data ElementName="lottery_digit3" Type="int32" Size="1" />
<Data ElementName="lottery_digit4" Type="int32" Size="1" />
<Data ElementName="lottery_digit5" Type="int32" Size="1" />
<Data ElementName="lottery_digit6" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ShowItemCreation" ClientVersion="1" OpcodeName="OP_ShowItemCreationProcessUIMsg">
<!-- starting durability maybe?-->
<Data ElementName="max_possible_durability" Type="int32" Size="1" />
<Data ElementName="max_possible_progress" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="progress_levels_known" Type="int8" Size="1" />
<Data ElementName="num_process" Type="int16" Size="1" />
2021-03-14 15:28:31 -06:00
<Data ElementName="process_array" Type="Array" ArraySizeVariable="num_process">
<Data ElementName="progress_needed" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" IfVariableNotSet="progress_needed"/>
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_icon" Type="int16" />
<Data ElementName="item" Type="EQ2_Item" />
<Data ElementName="item_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_byproduct_icon" Type="int16" />
<!-- Another EQ2_Item? Does subtype set to FF prevent the rest of the packet?-->
<!-- If not an EQ2_item this unknown *might* be quantity-->
<Data ElementName="item_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
</Data>
<Data ElementName="product_progress_needed" Type="int32" Size="1" />
<Data ElementName="product_item_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_item_icon" Type="int16" />
<Data ElementName="product_item" Type="EQ2_Item" />
<Data ElementName="product_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_byproduct_icon" Type="int16" />
<Data ElementName="product_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="skill_id" Type="int32" Size="6"/>
</Struct>
<Struct Name="WS_ShowItemCreation" ClientVersion="546" OpcodeName="OP_ShowItemCreationProcessUIMsg">
<Data ElementName="max_possible_durability" Type="int32" Size="1" />
<Data ElementName="max_possible_progress" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="progress_levels_known" Type="int8" Size="1" />
<Data ElementName="num_process" Type="int16" Size="1" />
<Data ElementName="process_array" Type="Array" ArraySizeVariable="num_process">
<Data ElementName="progress_needed" Type="int32" Size="1" />
<Data ElementName="item_icon" Type="int16" />
<!-- Another EQ2_Item? Does subtype set to FF prevent the rest of the packet?-->
<!-- If not an EQ2_item this unknown *might* be quantity-->
<Data ElementName="item_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
</Data>
<Data ElementName="product_progress_needed" Type="int32" Size="1" />
<Data ElementName="product_item_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_item_icon" Type="int16" />
<Data ElementName="product_item" Type="EQ2_Item" />
<Data ElementName="product_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_byproduct_icon" Type="int16" />
<Data ElementName="product_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="skill_id" Type="int32" Size="6"/>
</Struct>
2021-03-14 15:28:31 -06:00
<Struct Name="WS_ShowItemCreation" ClientVersion="60085" OpcodeName="OP_ShowItemCreationProcessUIMsg">
<!-- starting durability maybe?-->
<Data ElementName="max_possible_durability" Type="int32" Size="1" />
<Data ElementName="max_possible_progress" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="progress_levels_known" Type="int8" Size="1" />
<Data ElementName="num_process" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="process_array" Type="Array" ArraySizeVariable="num_process">
<Data ElementName="progress_needed" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" IfVariableNotSet="progress_needed"/>
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_icon" Type="int16" />
<Data ElementName="item" Type="EQ2_Item" />
<Data ElementName="item_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_byproduct_icon" Type="int16" />
<!-- Another EQ2_Item? Does subtype set to FF prevent the rest of the packet?-->
<!-- If not an EQ2_item this unknown *might* be quantity-->
<Data ElementName="item_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
</Data>
<Data ElementName="product_progress_needed" Type="int32" Size="1" />
<Data ElementName="product_item_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_item_icon" Type="int16" />
<Data ElementName="product_item" Type="EQ2_Item" />
<Data ElementName="product_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_byproduct_icon" Type="int16" />
<Data ElementName="product_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="skill_id" Type="int32" Size="6"/>
</Struct>
<Struct Name="WS_ShowItemCreation" ClientVersion="63119" OpcodeName="OP_ShowItemCreationProcessUIMsg">
<!-- starting durability maybe?-->
<Data ElementName="max_possible_durability" Type="int32" Size="1" />
<Data ElementName="max_possible_progress" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="progress_levels_known" Type="int8" Size="1" />
<Data ElementName="num_process" Type="int16" Size="1" />
<Data ElementName="process_array" Type="Array" ArraySizeVariable="num_process">
<Data ElementName="progress_needed" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" IfVariableNotSet="progress_needed"/>
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_icon" Type="int16" />
<Data ElementName="item" Type="EQ2_Item" />
<Data ElementName="item_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_byproduct_icon" Type="int16" />
<!-- Another EQ2_Item? Does subtype set to FF prevent the rest of the packet?-->
<!-- If not an EQ2_item this unknown *might* be quantity-->
<Data ElementName="item_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
</Data>
<Data ElementName="product_progress_needed" Type="int32" Size="1" />
<Data ElementName="product_item_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_item_icon" Type="int16" />
<Data ElementName="product_item" Type="EQ2_Item" />
<Data ElementName="product_byproduct_name" Type="EQ2_16Bit_String" />
<Data ElementName="product_byproduct_icon" Type="int16" />
<Data ElementName="product_byproduct_unknown" Type="int16" />
<Data ElementName="packettype" Type="int16" />
<Data ElementName="packetsubtype" Type="int8" />
<Data ElementName="skill_id" Type="int32" Size="6"/>
</Struct>
<Struct Name="WS_CreateFromRecipe" ClientVersion="1" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="primary_qty" Type="int8" />
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_unknown1" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_unknown2" Type="int16" Size="1" />
<Data ElementName="primary_unknown3" Type="int8" Size="1" />
<Data ElementName="primary_unknown4" Type="int32" Size="1" />
<Data ElementName="primary_unknown5" Type="int32" Size="1" />
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty" Type="int8" />
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="build_unknown2" Type="int8" Size="1" />
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_unknown3" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_unknown4" Type="int16" Size="1" />
<Data ElementName="build_unknown5" Type="int8" Size="1" />
<Data ElementName="build_unknown6" Type="int8" Size="1" />
<Data ElementName="build_unknown7" Type="int32" Size="1" />
<Data ElementName="build_unknown8" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty" Type="int8" />
<Data ElementName="fuel_unknown1" Type="int8" Size="1" />
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_unknown2" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_unknown3" Type="int16" Size="1" />
<Data ElementName="fuel_unknown4" Type="int8" Size="1" />
<Data ElementName="fuel_unknown5" Type="int8" Size="1" />
<Data ElementName="fuel_unknown6" Type="int32" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CreateFromRecipe" ClientVersion="546" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="num_primary_choices" Type="int8" />
<Data ElementName="primary_array" Type="Array" ArraySizeVariable="num_primary_choices">
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_item_id" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_total_quantity" Type="int8" Size="1" />
</Data>
<Data ElementName="primary_default_selected_id" Type="int32" Size="1" />
<Data ElementName="primary_unknown5" Type="int32" Size="1" />
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty_needed" Type="int8" />
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="num_build_choices" Type="int8" Size="1" />
<Data ElementName="build_components_array" Type="Array" ArraySizeVariable="num_build_choices">
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_item_id" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_total_quantity" Type="int8" Size="1" />
</Data>
<Data ElementName="num_build_items_selected" Type="int8" />
<Data ElementName="build_items_selected_array" Type="Array" ArraySizeVariable="num_build_items_selected">
<Data ElementName="build_selected_item_id" Type="int32" Size="1" />
<Data ElementName="build_selected_item_qty" Type="int8" Size="1" />
</Data>
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty_needed" Type="int8" />
<Data ElementName="num_fuel_choices" Type="int8" Size="1" />
<Data ElementName="fuel_component_array" Type="Array" ArraySizeVariable="num_fuel_choices">
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_total_quantity" Type="int8" Size="1" />
</Data>
<Data ElementName="num_fuel_items_selected" Type="int8" />
<Data ElementName="fuel_items_selected_array" Type="Array" ArraySizeVariable="num_fuel_items_selected">
<Data ElementName="fuel_selected_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_selected_item_qty" Type="int8" Size="1" />
</Data>
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_CreateFromRecipe" ClientVersion="1096" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="num_primary_choices" Type="int8" />
<Data ElementName="primary_array" Type="Array" ArraySizeVariable="num_primary_choices">
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_item_id" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_total_quantity" Type="int16" Size="1" />
<Data ElementName="primary_supply_depot" Type="int8" Size="1" />
<Data ElementName="primary_unknown3" Type="int8" Size="1" />
</Data>
<Data ElementName="primary_default_selected_id" Type="int32" Size="1" />
<Data ElementName="primary_unknown5" Type="int32" Size="1" />
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty" Type="int8" />
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="num_build_choices" Type="int8" Size="1" />
<Data ElementName="build_components_array" Type="Array" ArraySizeVariable="num_build_choices">
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_item_id" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_total_quantity" Type="int16" Size="1" />
<Data ElementName="build_supply_depot" Type="int8" Size="1" />
<Data ElementName="build_unknown6" Type="int8" Size="1" />
</Data>
<Data ElementName="build_item_selected" Type="int8" Size="1" />
<Data ElementName="build_selected_item_id" Type="int32" Size="1" />
<Data ElementName="build_selected_item_qty" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty" Type="int8" />
<Data ElementName="num_fuel_choices" Type="int8" Size="1" />
<Data ElementName="fuel_component_array" Type="Array" ArraySizeVariable="num_fuel_choices">
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_total_quantity" Type="int16" Size="1" />
<Data ElementName="fuel_supply_depot" Type="int8" Size="1" />
<Data ElementName="fuel_unknown4" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_item_selected" Type="int8" Size="1" />
<Data ElementName="fuel_selected_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_selected_item_qty" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CreateFromRecipe" ClientVersion="1193" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="primary_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="6" />
<Data ElementName="primary_qty" Type="int16" Size="1" />
<Data ElementName="num_primary_choices" Type="int8" />
<Data ElementName="primary_array" Type="Array" ArraySizeVariable="num_primary_choices">
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_item_id" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_total_quantity" Type="int16" Size="1" />
<Data ElementName="primary_supply_depot" Type="int8" Size="1" />
<Data ElementName="primary_unknown3" Type="int8" Size="2" />
</Data>
<Data ElementName="primary_item_selected" Type="int8" />
<Data ElementName="primary_default_selected_id" Type="int32" Size="1" />
<Data ElementName="primary_selected_item_qty" Type="int16" Size="1" />
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty" Type="int16" />
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="num_build_choices" Type="int8" Size="1" />
<Data ElementName="build_components_array" Type="Array" ArraySizeVariable="num_build_choices">
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_item_id" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_total_quantity" Type="int16" Size="1" />
<Data ElementName="build_supply_depot" Type="int8" Size="1" />
<Data ElementName="build_unknown6" Type="int8" Size="1" />
</Data>
<Data ElementName="build_item_selected" Type="int8" Size="1" />
<Data ElementName="build_selected_item_id" Type="int32" Size="1" />
<Data ElementName="build_selected_item_qty" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty" Type="int16" />
<Data ElementName="num_fuel_choices" Type="int8" Size="1" />
<Data ElementName="fuel_component_array" Type="Array" ArraySizeVariable="num_fuel_choices">
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_total_quantity" Type="int16" Size="1" />
<Data ElementName="fuel_supply_depot" Type="int8" Size="1" />
<Data ElementName="fuel_unknown4" Type="int8" Size="2" />
</Data>
<Data ElementName="fuel_item_selected" Type="int8" Size="1" />
<Data ElementName="fuel_selected_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_selected_item_qty" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_CreateFromRecipe" ClientVersion="1199" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="primary_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="6" />
<Data ElementName="primary_qty" Type="int16" Size="1" />
<Data ElementName="num_primary_choices" Type="int8" />
<Data ElementName="primary_array" Type="Array" ArraySizeVariable="num_primary_choices">
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_item_id" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_total_quantity" Type="int16" Size="1" />
<Data ElementName="primary_supply_depot" Type="int8" Size="1" />
<Data ElementName="primary_unknown3" Type="int8" Size="2" />
</Data>
<Data ElementName="primary_item_selected" Type="int8" />
<Data ElementName="primary_default_selected_id" Type="int32" Size="1" />
<Data ElementName="primary_selected_item_qty" Type="int16" Size="1" />
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty" Type="int16" />
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="num_build_choices" Type="int8" Size="1" />
<Data ElementName="build_components_array" Type="Array" ArraySizeVariable="num_build_choices">
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_item_id" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_total_quantity" Type="int16" Size="1" />
<Data ElementName="build_supply_depot" Type="int8" Size="1" />
<Data ElementName="build_unknown6" Type="int8" Size="1" />
</Data>
<Data ElementName="build_item_selected" Type="int8" Size="1" />
<Data ElementName="build_selected_item_id" Type="int32" Size="1" />
<Data ElementName="build_selected_item_qty" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty" Type="int16" />
<Data ElementName="num_fuel_choices" Type="int8" Size="1" />
<Data ElementName="fuel_component_array" Type="Array" ArraySizeVariable="num_fuel_choices">
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_total_quantity" Type="int16" Size="1" />
<Data ElementName="fuel_supply_depot" Type="int8" Size="1" />
<Data ElementName="fuel_unknown4" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_item_selected" Type="int8" Size="1" />
<Data ElementName="fuel_selected_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_selected_item_qty" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_CreateFromRecipe" ClientVersion="57048" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="recipe_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="num_mass_production_choices" Type="int8" Size="1" />
<Data ElementName="mass_array" Type="Array" ArraySizeVariable="num_mass_production_choices">
<Data ElementName="mass_qty" Type="int16" Size="1" />
</Data>
2020-02-28 07:17:24 -07:00
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="primary_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="6" />
<Data ElementName="primary_qty_needed" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_primary_choices" Type="int8" />
<Data ElementName="primary_array" Type="Array" ArraySizeVariable="num_primary_choices">
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_item_id" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_total_quantity" Type="int16" Size="1" />
<Data ElementName="primary_unknown3" Type="int8" Size="2" />
<Data ElementName="primary_supply_depot" Type="int8" Size="1" />
<Data ElementName="primary_unknown3a" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_primary_items_selected" Type="int8" />
<Data ElementName="primary_items_selected_array" Type="Array" ArraySizeVariable="num_primary_items_selected">
<Data ElementName="primary_selected_item_id" Type="int32" Size="1" />
<Data ElementName="primary_selected_item_qty" Type="int16" Size="1" />
</Data>
2020-02-28 07:17:24 -07:00
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty_needed" Type="int16" />
2020-02-28 07:17:24 -07:00
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="num_build_choices" Type="int8" Size="1" />
<Data ElementName="build_components_array" Type="Array" ArraySizeVariable="num_build_choices">
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_item_id" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_total_quantity" Type="int16" Size="1" />
<Data ElementName="build_unknown6" Type="int8" Size="2" />
<Data ElementName="build_supply_depot" Type="int8" Size="1" />
<Data ElementName="build_unknown6a" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="num_build_items_selected" Type="int8" />
<Data ElementName="build_items_selected_array" Type="Array" ArraySizeVariable="num_build_items_selected">
<Data ElementName="build_selected_item_id" Type="int32" Size="1" />
<Data ElementName="build_selected_item_qty" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Data>
2020-02-28 07:17:24 -07:00
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty_needed" Type="int16" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_fuel_choices" Type="int8" Size="1" />
<Data ElementName="fuel_component_array" Type="Array" ArraySizeVariable="num_fuel_choices">
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_total_quantity" Type="int16" Size="1" />
<Data ElementName="fuel_unknown4" Type="int8" Size="2" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fuel_supply_depot" Type="int8" Size="1" />
<Data ElementName="fuel_unknown4a" Type="int8" Size="1" />
</Data>
<Data ElementName="num_fuel_items_selected" Type="int8" />
<Data ElementName="fuel_items_selected_array" Type="Array" ArraySizeVariable="num_fuel_items_selected">
<Data ElementName="fuel_selected_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_selected_item_qty" Type="int16" Size="1" />
2020-02-28 07:17:24 -07:00
</Data>
</Struct>
<Struct Name="WS_CreateFromRecipe" ClientVersion="63119" OpcodeName="OP_ShowCreateFromRecipeUIMsg">
<Data ElementName="crafting_station" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="product_name" Type="EQ2_16Bit_String" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="product_qty" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int8" Size="3" />
<Data ElementName="unknown8aMJ" Type="int8" Size="1" />
<Data ElementName="primary_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown9" Type="int8" Size="1" />
<Data ElementName="primary_id" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int8" Size="6" />
<Data ElementName="primary_qty" Type="int16" Size="1" />
<Data ElementName="num_primary_choices" Type="int8" />
<Data ElementName="primary_array" Type="Array" ArraySizeVariable="num_primary_choices">
<Data ElementName="primary_component" Type="EQ2_16Bit_String" />
<Data ElementName="primary_item_id" Type="int32" Size="1" />
<Data ElementName="primary_icon" Type="int16" Size="1" />
<Data ElementName="primary_total_quantity" Type="int16" Size="1" />
<Data ElementName="primary_supply_depot" Type="int8" Size="1" />
<Data ElementName="primary_unknown3" Type="int8" Size="4" />
</Data>
<Data ElementName="primary_item_selected" Type="int8" />
<Data ElementName="primary_default_selected_id" Type="int32" Size="1" />
<Data ElementName="primary_selected_item_qty" Type="int16" Size="1" />
<Data ElementName="num_build_components" Type="int8" />
<Data ElementName="build_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="build_slot" Type="int32" />
<Data ElementName="build_title" Type="EQ2_16Bit_String" />
<Data ElementName="build_qty" Type="int16" />
<Data ElementName="build_unknown1" Type="int32" Size="1" />
<Data ElementName="num_build_choices" Type="int8" Size="1" />
<Data ElementName="build_components_array" Type="Array" ArraySizeVariable="num_build_choices">
<Data ElementName="build_component" Type="EQ2_16Bit_String" />
<Data ElementName="build_item_id" Type="int32" Size="1" />
<Data ElementName="build_icon" Type="int16" Size="1" />
<Data ElementName="build_total_quantity" Type="int16" Size="1" />
<Data ElementName="build_supply_depot" Type="int8" Size="1" />
<Data ElementName="build_unknown6" Type="int8" Size="3" />
</Data>
<Data ElementName="build_item_selected" Type="int8" Size="1" />
<Data ElementName="build_selected_item_id" Type="int32" Size="1" />
<Data ElementName="build_selected_item_qty" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Data>
<Data ElementName="fuel_title" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_qty" Type="int16" />
<Data ElementName="num_fuel_choices" Type="int8" Size="1" />
<Data ElementName="fuel_component_array" Type="Array" ArraySizeVariable="num_fuel_choices">
<Data ElementName="fuel_component" Type="EQ2_16Bit_String" />
<Data ElementName="fuel_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_icon" Type="int16" />
<Data ElementName="fuel_total_quantity" Type="int16" Size="1" />
<Data ElementName="fuel_supply_depot" Type="int8" Size="1" />
<Data ElementName="fuel_unknown4" Type="int8" Size="3" />
</Data>
<Data ElementName="fuel_item_selected" Type="int8" Size="1" />
<Data ElementName="fuel_selected_item_id" Type="int32" Size="1" />
<Data ElementName="fuel_selected_item_qty" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_TSEventReaction" ClientVersion="1" OpcodeName="OP_DisplayTSEventReactionMsg">
<Data ElementName="counter_reaction" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_UpdateCreateItem" ClientVersion="1" OpcodeName="OP_UpdateItemCreationProcessUIMsg">
<Data ElementName="effect" Type="int8" Size="1" />
<Data ElementName="total_durability" Type="int32" Size="1" />
<Data ElementName="total_progress" Type="int32" Size="1" />
<Data ElementName="progress_level" Type="int8" Size="1" />
<Data ElementName="reaction_icon" Type="int16" Size="1" />
<Data ElementName="reaction_name" Type="EQ2_16Bit_String" />
<Data ElementName="durability_change" Type="sint32" Size="1" />
<Data ElementName="progress_change" Type="sint32" Size="1" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_UpdateCreateItem" ClientVersion="547" OpcodeName="OP_UpdateItemCreationProcessUIMsg">
<Data ElementName="effect" Type="int8" Size="1" />
<Data ElementName="total_durability" Type="int32" Size="1" />
<Data ElementName="total_progress" Type="int32" Size="1" />
<Data ElementName="progress_level" Type="int8" Size="1" />
<Data ElementName="reaction_icon" Type="int16" Size="1" />
<Data ElementName="reaction_name" Type="EQ2_16Bit_String" />
<Data ElementName="durability_change" Type="sint32" Size="1" />
<Data ElementName="progress_change" Type="sint32" Size="1" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_BeginItemCreation" ClientVersion="1" OpcodeName="OP_BeginItemCreationMsg">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="primary_component_id" Type="int32" Size="1" />
<Data ElementName="num_build_components" Type="int8" Size="1" />
<Data ElementName="component_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="component_num" Type="int32" Size="1" />
<Data ElementName="component_unknown" Type="int8" Size="1" />
<Data ElementName="component_id" Type="int32" Size="1" />
<Data ElementName="component_qty" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="fuel_id" Type="int32" Size="1" />
<Data ElementName="fuel_qty" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_BeginItemCreation" ClientVersion="1193" OpcodeName="OP_BeginItemCreationMsg">
<Data ElementName="unknown1" Type="int8" Size="11" />
<Data ElementName="primary_component_id" Type="int32" Size="1" />
<Data ElementName="num_build_components" Type="int16" Size="1" />
<Data ElementName="component_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="component_num" Type="int32" Size="1" />
<Data ElementName="component_unknown" Type="int8" Size="1" />
<Data ElementName="component_id" Type="int32" Size="1" />
<Data ElementName="component_unknown2" Type="int8" Size="1" />
<Data ElementName="component_qty" Type="int16" Size="1" />
</Data>
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="fuel_id" Type="int32" Size="1" />
<Data ElementName="fuel_qty" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_BeginItemCreation" ClientVersion="1199" OpcodeName="OP_BeginItemCreationMsg">
<Data ElementName="unknown1" Type="int8" Size="10" />
<Data ElementName="num_primary_selected_items" Type="int8" Size="1" />
<Data ElementName="primary_selected_items_array" Type="Array" ArraySizeVariable="num_primary_selected_items">
<Data ElementName="primary_selected_item_id" Type="int32" Size="1" />
<Data ElementName="primary_selected_item_qty" Type="int16" Size="1" />
</Data>
2020-02-28 07:17:24 -07:00
<Data ElementName="num_build_components" Type="int8" Size="1" />
<Data ElementName="component_array" Type="Array" ArraySizeVariable="num_build_components">
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="num_selected_items" Type="int8" Size="1" />
<Data ElementName="selected_item_array" Type="Array" ArraySizeVariable="num_selected_items">
<Data ElementName="selected_id" Type="int32" Size="1" />
<Data ElementName="selected_qty" Type="int16" Size="1" />
</Data>
</Data>
<Data ElementName="num_fuel_items" Type="int8" Size="1" />
<Data ElementName="fuel_item_array" Type="Array" ArraySizeVariable="num_fuel_items">
<Data ElementName="fuel_id" Type="int32" Size="1" />
<Data ElementName="fuel_qty" Type="int16" Size="1" />
</Data>
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_RecipeList" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_RecipeList">
<Data ElementName="command_type" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_recipes" Type="int16" Size="1" />
<Data ElementName="recipe_array" Type="Array" ArraySizeVariable="num_recipes">
<Data ElementName="id" Type="int32" Size="1" />
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="classes" Type="int32" Size="1" />
<Data ElementName="skill" Type="int32" Size="1" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="recipe_book" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_RecipeDetailList" ClientVersion="546" OpcodeName="OP_RecipeDetailsMsg">
<Data ElementName="num_recipes" Type="int32" Size="1" />
<Data ElementName="recipe_array" Type="array" ArraySizeVariable="num_recipes">
<Data ElementName="recipe_id" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="recipe_name" Type="char" Size="200" />
<Data ElementName="recipe_desc" Type="char" Size="256" />
<Data ElementName="book_volume" Type="int32" Size="1" /> <!-- volume # of book -->
<Data ElementName="unknownx" Type="int32" Size="1" /> <!-- result item? -->
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="level" Type="int32" Size="1" />
<Data ElementName="recipe_book" Type="char" Size="200" />
<Data ElementName="device" Type="char" Size="40" />
<Data ElementName="device_id" Type="int32" Size="1" />
</Data>
</Struct>
<!--<Struct Name="WS_RecipeList" ClientVersion="546" OpcodeName="OP_UpdateRecipeBookMsg">
<Data ElementName="recipe_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="recipe_array" Type="Array" ArrayVariableSize="recipe_count">
<Data ElementName="recipe_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
</Data>
<Data ElementName="unknown1" Type="int32" Size="1" />
</Struct>-->
2020-02-28 07:17:24 -07:00
<Struct Name="WS_RecipeList" ClientVersion="60085" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_RecipeList">
<Data ElementName="command_type" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="num_recipes" Type="int16" Size="1" />
<Data ElementName="recipe_array" Type="Array" ArraySizeVariable="num_recipes">
<Data ElementName="recipe_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="tier" Type="int8" Size="1" />
<Data ElementName="level" Type="int8" Size="1" />
<Data ElementName="unknown1" Type="int8" size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown1a" Type="int8" Size="1" />
<Data ElementName="device_sub_type" Type="int8" Size="1" />
<Data ElementName="classes" Type="int64" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="device_type" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="recipe_name" Type="EQ2_16Bit_String" />
<Data ElementName="recipe_book" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_ShowRecipeBook" ClientVersion="1" OpcodeName="OP_ShowRecipeBookMsg">
<Data ElementName="device" Type="char" Size="42" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" IfVariableSet="unknown2" />
</Struct>
<Struct Name="WS_ShowRecipeBook" ClientVersion="546" OpcodeName="OP_ShowRecipeBookMsg">
<Data ElementName="device" Type="char" Size="42" />
</Struct>
<Struct Name="WS_ShowRecipeBook" ClientVersion="547" OpcodeName="OP_ShowRecipeBookMsg">
<Data ElementName="device" Type="char" Size="42" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" IfVariableSet="unknown2" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_RecipeDetails" ClientVersion="1" OpcodeName="OP_RecipeDetailsMsg">
<Data ElementName="num_recipes" Type="int32" Size="1" />
<Data ElementName="recipe_array" Type="array" ArraySizeVariable="num_recipes">
<Data ElementName="recipe_id" Type="int32" Size="1" />
<Data ElementName="icon" Type="int16" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="2" />
<Data ElementName="recipe_name" Type="char" Size="200" />
<Data ElementName="recipe_desc" Type="char" Size="256" />
<Data ElementName="unknown2" Type="int32" Size="2" />
<Data ElementName="technique" Type="int32" Size="1" />
<Data ElementName="knowledge" Type="int32" Size="1" />
<Data ElementName="level" Type="int8" Size="1 " />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="recipe_book" Type="char" Size="200" />
<Data ElementName="device" Type="char" Size="40" />
<Data ElementName="unknown4" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_UpdateRecipeBook" ClientVersion="1" OpcodeName="OP_UpdateRecipeBookMsg">
<Data ElementName="recipe_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="recipe_array" Type="Array" ArrayVariableSize="recipe_count">
<Data ElementName="recipe_id" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="2" />
</Data>
<Data ElementName="unknown1" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_UpdateRecipeBook" ClientVersion="546" OpcodeName="OP_UpdateRecipeBookMsg">
<Data ElementName="recipe_count" Type="int16" />
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="skill_array" Type="Array" ArraySizeVariable="recipe_count">
<Data ElementName="recipe_id" Type="int32" Size="1" />
<Data ElementName="recipe_data_crc" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int32" Size="1" />
</Data>
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_RequestRecipeDetail" ClientVersion="1" OpcodeName="OP_RequestRecipeDetailsMsg">
<Data ElementName="num_recipes" Type="int32" Size="1" />
<Data ElementName="recipe_array" Type="Array" ArrayVariableSize="num_recipes">
<Data ElementName="recipe_id" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_RequestRecipeDetail" ClientVersion="546" OpcodeName="OP_RequestRecipeDetailsMsg">
<Data ElementName="num_recipes" Type="int32" Size="1" />
<Data ElementName="recipes_array" Type="Array" ArraySizeVariable="num_recipes">
<Data ElementName="recipe_id" Type="int32" Size="1" />
</Data>
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_DisplayHouseStatus" ClientVersion="1096" OpcodeName="OP_PlayerHouseDisplayStatusMsg">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="house_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="house_location" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="upkeep_coin" Type="int64" Size="1" />
<Data ElementName="upkeep_status" Type="int32" Size="1" />
<Data ElementName="escrow_coin" Type="int64" Size="1" />
<Data ElementName="escrow_status" Type="int32" Size="1" />
<Data ElementName="upkeep_due" Type="int32" Size="1" />
<Data ElementName="access_type" Type="int8" Size="1" />
<Data ElementName="guild_access_flag" Type="int8" Size="1" />
<Data ElementName="content_flag" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" />
<Data ElementName="num_access" Type="int8" Size="1" />
<Data ElementName="access_array" Type="Array" ArraySizeVariable="num_access">
<Data ElementName="char_id" Type="int32" Size="1" />
<Data ElementName="char_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="access_type" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="num_depositors" Type="int8" Size="1" />
<Data ElementName="depositor_array" Type="Array" ArraySizeVariable="num_depositors">
<Data ElementName="depositor_id" Type="int32" Size="1" />
<Data ElementName="depositor_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="total_deposit_coin" Type="int32" Size="1" />
<Data ElementName="unknown8" Type="int32" Size="1" />
<Data ElementName="total_deposit_status" Type="int32" Size="1" />
<Data ElementName="last_deposit_amount" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="last_deposit_status" Type="int32" Size="1" />
<Data ElementName="deposit_date" Type="int32" Size="1" />
</Data>
<Data ElementName="num_deposits" Type="int8" Size="1" />
<Data ElementName="deposits_array" Type="Array" ArraySizeVariable="num_deposists">
<Data ElementName="deposits_id" Type="int32" Size="1" />
<Data ElementName="deposits_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="coin_deposit" Type="int32" Size="1" />
<Data ElementName="unknown10" Type="int32" Size="1" />
<Data ElementName="status_deposit" Type="int32" Size="1" />
<Data ElementName="deposits_date" Type="int32" Size="1" />
<Data ElementName="deposits_reason" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown11" Type="int8" Size="1" />
</Data>
<Data ElementName="relinquish_flag" Type="int8" Size="1" />
<Data ElementName="unknown13" Type="int16" Size="1" />
<Data ElementName="placed_items" Type="int16" Size="1" />
<Data ElementName="max_items_allowed" Type="int16" />
<Data ElementName="actual_placed" Type="int16" Size="1" />
<Data ElementName="crated_items" Type="int16" Size="1" />
<Data ElementName="status_reduction" Type="int32" Size="1" />
<Data ElementName="coin_reduction" Type="float" Size="1" />
<Data ElementName="additional_slots" Type="int32" Size="1" />
<Data ElementName="unknown14" Type="int16" Size="4" />
<Data ElementName="get_portal_flag" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_DisplayVisitScreen" ClientVersion="1" OpcodeName="OP_DisplayInnVisitScreenMsg">
<Data ElementName="num_houses" Type="int32" Size="1" />
<Data ElementName="visithouse_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="house_owner" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown2" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_DisplayVisitScreen" ClientVersion="1096" OpcodeName="OP_DisplayInnVisitScreenMsg">
<Data ElementName="num_houses" Type="int32" Size="1" />
<Data ElementName="visithouse_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int64" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="house_owner" Type="EQ2_16Bit_String" />
<Data ElementName="house_location" Type="EQ2_16Bit_string" />
<Data ElementName="access_level" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="3" />
<Data ElementName="visit_flag" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_DisplayVisitScreen" ClientVersion="1193" OpcodeName="OP_DisplayInnVisitScreenMsg">
<Data ElementName="num_houses" Type="int16" Size="1" />
<Data ElementName="visithouse_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int64" />
<Data ElementName="house_owner" Type="EQ2_16Bit_String" />
<Data ElementName="house_location" Type="EQ2_16Bit_string" />
<Data ElementName="house_zone" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="3" />
<Data ElementName="visit_flag" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_DisplayVisitScreen" ClientVersion="57048" OpcodeName="OP_DisplayInnVisitScreenMsg">
<Data ElementName="num_houses" Type="int16" Size="1" />
<Data ElementName="visithouse_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int64" />
<Data ElementName="house_owner" Type="EQ2_16Bit_String" />
<Data ElementName="house_location" Type="EQ2_16Bit_string" />
<Data ElementName="house_zone" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="3" />
<Data ElementName="visit_flag" Type="int8" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="houses_location" Type="int16" Size="1" />
<Data ElementName="location_array" Type="Array" ArraySizeVariable="houses_location">
<Data ElementName="index" Type="int32" />
<Data ElementName="houseing_location" Type="EQ2_16Bit_string" />
</Data>
</Struct>
<Struct Name="WS_InstanceCreated" ClientVersion="1" OpcodeName="OP_AvatarCreatedMsg">
<Data ElementName="num_instances" Type="int16" Size="1" />
<Data ElementName="instances_array" Type="Array" ArraySizeVariable="num_instances">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="instance_zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="success_last" Type="int32" Size="1" />
<Data ElementName="last_failure" Type="int32" Size="1" />
<Data ElementName="failure" Type="int32" Size="1" />
<Data ElementName="success" Type="int32" Size="1" />
</Data>
<Data ElementName="num_persistent" Type="int16" Size="1" />
<Data ElementName="persistent_array" Type="Array" ArraySizeVariable="num_persistent">
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="persistent_zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2a" Type="int8" Size="1" />
<Data ElementName="unknown3a" Type="int32" Size="2" />
<Data ElementName="minimum_duration" Type="int32" Size="1" />
<Data ElementName="maximum_duration" Type="int32" Size="1" />
<Data ElementName="unknown4a" Type="int32" Size="1" />
</Data>
<Data ElementName="unknown4" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_InstanceCreated" ClientVersion="1188" OpcodeName="OP_AvatarCreatedMsg">
<Data ElementName="num_instances" Type="int16" Size="1" />
<Data ElementName="instances_array" Type="Array" ArraySizeVariable="num_instances">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="instance_zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="success_last" Type="int32" Size="1" />
<Data ElementName="last_failure" Type="int32" Size="1" />
<Data ElementName="failure" Type="int32" Size="1" />
<Data ElementName="success" Type="int32" Size="1" />
</Data>
<Data ElementName="num_persistent" Type="int16" Size="1" />
<Data ElementName="persistent_array" Type="Array" ArraySizeVariable="num_persistent">
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="persistent_zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2a" Type="int16" Size="1" />
<Data ElementName="persist_success_timestamp" Type="int32" />
<Data ElementName="persist_failure_timestamp" Type="int32" />
<Data ElementName="unknown3a" Type="int8" Size="4" />
<Data ElementName="unknown3b" Type="int8" Size="1" />
<Data ElementName="minimum_duration" Type="int32" Size="1" />
<Data ElementName="maximum_duration" Type="int32" Size="1" />
<Data ElementName="unknown4a" Type="int32" Size="1" />
</Data>
</Struct>
<Struct Name="WS_InstanceUpdate" ClientVersion="1" OpcodeName="OP_AvatarUpdateMsg">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="char_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="3" />
<Data ElementName="char_adv_level" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="char_trade_level" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="2" />
<Data ElementName="join_date" Type="int32" Size="1" />
<Data ElementName="guild_status" Type="int32" Size="1" />
<Data ElementName="last_online_date" Type="int32" Size="1" />
<Data ElementName="guild_points" Type="int32" Size="1" />
<Data ElementName="unknown7" Type="int32" Size="2" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="notes" Type="EQ2_16Bit_String" Size="1" />
</Struct>
<Struct Name="WS_AvailWorldChannels" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqAvailWorldChannelsCmd">
<Data ElementName="num_channels" Type="int32" Size="1" />
<Data ElementName="channel_array" Type="Array" ArraySizeVariable="num_channels">
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_AvailWorldChannels" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqAvailWorldChannelsCmd">
<Data ElementName="num_channels" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="channel_array" Type="Array" ArraySizeVariable="num_channels">
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" Size="1" />
</Data>
</Struct>
<Struct Name="WS_ChatChannelUpdate" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqChatChannelUpdateCmd">
<Data ElementName="action" Type="int8" Size="1" />
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
<Data ElementName="player_name" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_WhoChannelQueryReply" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqWhoChannelQueryReplyCmd">
<Data ElementName="channel_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="num_players" Type="int8" Size="1" />
<Data ElementName="player_array" Type="Array" ArraySizeVariable="num_players">
<Data ElementName="player_name" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_BagOptions" ClientVersion="1" OpcodeName="OP_BagOptions">
<Data ElementName="unique_id" Type="int32" Size="1" />
<Data ElementName="sellable_contents" Type="int8" Size="1" />
<Data ElementName="bag_name" Type="EQ2_8Bit_String" Size="1" />
</Struct>
<Struct Name="WS_SupplyDepot" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_SupplyDepot">
<Data ElementName="depot_id" Type="int32" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="depot_name" Type="EQ2_16Bit_String" />
<Data ElementName="num_items" Type="int16" Size="1" />
<Data ElementName="max_items" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1" />
<Data ElementName="num_items_array" Type="int32" Size="1" />
<Data ElementName="items_array" Type="Array" ArraySizeVariable="num_items_array">
<Data ElementName="unknown3a" Type="int16" Size="1" />
<Data ElementName="unknown3b" Type="int16" Size="1" />
<Data ElementName="item_id" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="1" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="item_icon" Type="int16" Size="1" />
<Data ElementName="item_qty" Type="int32" Size="1" />
<Data ElementName="item_stack_size" Type="int32" Size="1" />
<Data ElementName="item_level" Type="int16" Size="1" />
<Data ElementName="item_tier" Type="int16" Size="1" />
<Data ElementName="item_unusable" Type="int8" Size="1" />
<Data ElementName="unknown7a" Type="int8" Size="1" />
<Data ElementName="unknown7b" Type="int8" Size="1" />
<Data ElementName="unknown7c" Type="int8" Size="1" />
</Data>
<Data ElementName="num_unknown8" Type="int16" Size="1" />
<Data ElementName="num_unknown9" Type="int16" Size="1" />
<Data ElementName="unknown8_array" Type="Array" ArraySizeVariable="num_unknown8">
<Data ElementName="unknown8_int8" Type="int8" Size="1" />
<Data ElementName="unknown8_string" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="permission1" Type="int8" Size="1" />
<Data ElementName="permission2" Type="int8" Size="1" />
<Data ElementName="permission3" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_JournalStoryLines" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_QuestJournalStoryLines">
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="num_zones" Type="int16" Size="1" />
<Data ElementName="zones_array" Type="Array" ArraySizeVariable="num_zones">
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="storyline_id" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_desc" Type="EQ2_16Bit_String" />
<Data ElementName="num_storylines" Type="int16" Size="1" />
<Data ElementName="storylines_array" Type="Array" ArraySizeVariable="num_storylines">
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="storyline_id" Type="int32" Size="1" />
<Data ElementName="storyline_name" Type="EQ2_16Bit_String" />
<Data ElementName="storyline_desc" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5" Type="int32" Size="1" />
</Data>
</Data>
</Struct>
<Struct Name="WS_ArenaGameTypes" ClientVersion="1096" OpcodeName="OP_ArenaGameTypesMsg">
<Data ElementName="unknown1" Type="int8" Size="1" />
<!-- Combatants / Player Characters level selector -->
<Data ElementName="num_game_levels" Type="int8" Size="1" />
<Data ElementName="games_by_level_array" Type="Array" ArraySizeVariable="num_game_levels">
<Data ElementName="level_value" Type="int8" Size="1" />
<Data ElementName="level_name" Type="EQ2_8Bit_String" />
</Data>
<!-- "Match time limit" time selector -->
<Data ElementName="num_time_limits" Type="int8" Size="1" />
<Data ElementName="time_limits_array" Type="Array" ArraySizeVariable="num_time_limits">
<Data ElementName="time_value" Type="int8" Size="1" />
<Data ElementName="time_name" Type="EQ2_8Bit_String" />
</Data>
<!-- "Time between matches" time selector -->
<Data ElementName="num_between_matches" Type="int8" Size="1" />
<Data ElementName="between_matches_array" Type="Array" ArraySizeVariable="num_between_matches">
<Data ElementName="between_value" Type="int8" Size="1" />
<Data ElementName="between_name" Type="EQ2_8Bit_String" />
</Data>
<!-- "Game Type" selector -->
<Data ElementName="num_game_types" Type="int8" Size="1" />
<Data ElementName="game_types_array" Type="Array" ArraySizeVariable="num_game_types">
<Data ElementName="unknown2" Type="int8" Size="3" />
<Data ElementName="game_name" Type="EQ2_8Bit_String" />
<Data ElementName="unknown3" Type="int8" Size="2" />
</Data>
<!-- "Victory Condition" selector -->
<Data ElementName="num_challenges" Type="int8" Size="1" />
<Data ElementName="challenges_array" Type="Array" ArraySizeVariable="num_challenges">
<Data ElementName="challenge_value" Type="int8" Size="1" />
<Data ElementName="challenge_name" Type="EQ2_8Bit_String" />
</Data>
<Data ElementName="unknown3" Type="int8" Size="1" /> <!-- maybe Allow Observers? -->
<Data ElementName="num_game_zones" Type="int8" Size="1" />
<Data ElementName="game_zones_array" Type="Array" ArraySizeVariable="num_game_zones">
<Data ElementName="type1" Type="EQ2_8Bit_String" />
<Data ElementName="unknown4" Type="int8" Size="2" />
<Data ElementName="file" Type="EQ2_8Bit_String" />
<Data ElementName="type2" Type="EQ2_8Bit_String" />
<Data ElementName="name" Type="EQ2_8Bit_String" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
<Data ElementName="num_images" Type="int8" Size="1" />
<Data ElementName="images_array" Type="Array" ArraySizeVariable="num_images">
<Data ElementName="image_path" Type="EQ2_8Bit_String" />
<Data ElementName="x" Type="int16" OversizedValue="255" OversizedByte="255" />
<Data ElementName="y" Type="int16" OversizedValue="255" OversizedByte="255" />
<Data ElementName="x2" Type="int16" OversizedValue="255" OversizedByte="255" />
<Data ElementName="y2" Type="int16" OversizedValue="255" OversizedByte="255" />
</Data>
</Data>
</Struct>
<Struct Name="WS_SelectTradeskill" ClientVersion="955" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TradeskillList">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="title_text" Type="EQ2_16Bit_String" />
<Data ElementName="num_selections" Type="int8" Size="1" />
<Data ElementName="selections" Type="Array" ArraySizeVariable="num_selections">
<Data ElementName="tradeskill_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon_id" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="command_text" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int8" Size="6" />
</Data>
<Data ElementName="command_text_cancel" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SelectTradeskill" ClientVersion="1096" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TradeskillList">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="title_text" Type="EQ2_16Bit_String" />
<Data ElementName="num_selections" Type="int8" Size="1" />
<Data ElementName="selections" Type="Array" ArraySizeVariable="num_selections">
<Data ElementName="tradeskill_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon_id" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="icon_sheet" Type="int32" Size="1" />
<Data ElementName="command_text" Type="EQ2_16Bit_String" />
<Data ElementName="confirm_window_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int8" Size="12" />
</Data>
<Data ElementName="command_text_cancel" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5a" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SelectTradeskill" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TradeskillList">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="title_text" Type="EQ2_16Bit_String" />
<Data ElementName="num_selections" Type="int8" Size="1" />
<Data ElementName="selections" Type="Array" ArraySizeVariable="num_selections">
<Data ElementName="tradeskill_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon_id" Type="int32" Size="1" />
<Data ElementName="icon_sheet" Type="int32" Size="1" />
<Data ElementName="command_text" Type="EQ2_16Bit_String" />
<Data ElementName="confirm_window_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" Size="3" />
<Data ElementName="unknown6" Type="int64" Size="1" />
<Data ElementName="unknown7" Type="int32" Size="1" />
</Data>
<Data ElementName="command_text_cancel" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5a" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_SelectTradeskill" ClientVersion="60115" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_TradeskillList">
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="title_text" Type="EQ2_16Bit_String" />
<Data ElementName="num_selections" Type="int8" Size="1" />
<Data ElementName="selections" Type="Array" ArraySizeVariable="num_selections">
<Data ElementName="tradeskill_name" Type="EQ2_16Bit_String" />
<Data ElementName="tradeskill_description" Type="EQ2_16Bit_String" />
<Data ElementName="icon_id" Type="int16" Size="1" />
<Data ElementName="unknown3" Type="int16" Size="1" />
<Data ElementName="icon_sheet" Type="int32" Size="1" />
<Data ElementName="command_text" Type="EQ2_16Bit_String" />
<Data ElementName="confirm_window_title" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int8" Size="24" />
</Data>
<Data ElementName="command_text_cancel" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5a" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_PetOptions" ClientVersion="1" OpcodeName="OP_PetOptions">
<Data ElementName="unknown" Type="int16" />
<Data ElementName="pet_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="protect_self" Type="int8" />
<Data ElementName="protect_master" Type="int8" />
<Data ElementName="stay_follow_toggle" Type="int8" />
<Data ElementName="pet_type" Type="int8" />
<Data ElementName="disable_name_field" Type="int8" />
<Data ElementName="melee_range_toggle" Type="int8" />
<Data ElementName="unknown_id" Type="int32" />
</Struct>
<Struct Name="WS_PetOptionsResponse" ClientVersion="1" OpcodeName="OP_PetOptionsResponse">
<Data ElementName="current_race" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="current_race2" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="num_pets" Type="int32" />
<Data ElementName="pets_array" Type="Array" ArraySizeVariable="num_pets">
<Data ElementName="tab_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="tab_race" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="tab_desc" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="level" Type="float" />
<Data ElementName="unknown2" Type="float" />
<Data ElementName="progress_bar" Type="float" />
<Data ElementName="rank" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="unknown4" Type="int8" Size="3" />
<Data ElementName="spell_icon" Type="int16" />
<Data ElementName="unknown5" Type="int16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="unknown6" Type="int16" />
<Data ElementName="num_spells" Type="int32" />
<Data ElementName="spells_array" Type="Array" ArraySizeVariable="num_spells">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="tier" Type="int8" />
<Data ElementName="unknown4" Type="int8" Size="3" />
<Data ElementName="spell_icon" Type="int16" />
<Data ElementName="unknown5" Type="int16" />
<Data ElementName="icon_type" Type="int16" />
<Data ElementName="unknown6" Type="int16" />
</Data>
</Data>
</Struct>
<Struct Name="WS_CharacterMerc" ClientVersion="1" OpcodeName="OP_CharacterMerc" >
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="spawn_id1" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="spawn_id3" Type="int32" Size="1" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int16" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="mitigation_pct_pve" Type="int16" Size="1" />
<Data ElementName="mitigation_pct_pvp" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="int16" Size="1" />
<Data ElementName="unknown13" Type="int16" Size="1" />
<Data ElementName="unknown14" Type="int16" Size="1" />
<Data ElementName="unknown15" Type="int16" Size="1" />
<Data ElementName="avoidance_pct" Type="int16" Size="1" />
<Data ElementName="unknown16" Type="int16" Size="1" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="unknown18" Type="int16" Size="1" />
<Data ElementName="avoidance_base" Type="int16" Size="1" />
<Data ElementName="unknown19" Type="int16" Size="1" />
<Data ElementName="parry" Type="int16" Size="1" />
<Data ElementName="unknown20" Type="int16" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="4" />
<Data ElementName="str" Type="int16" Size="1" />
<Data ElementName="sta" Type="int16" Size="1" />
<Data ElementName="agi" Type="int16" Size="1" />
<Data ElementName="wis" Type="int16" Size="1" />
<Data ElementName="int" Type="int16" Size="1" />
<Data ElementName="str_base" Type="int16" Size="1" />
<Data ElementName="sta_base" Type="int16" Size="1" />
<Data ElementName="agi_base" Type="int16" Size="1" />
<Data ElementName="wis_base" Type="int16" Size="1" />
<Data ElementName="int_base" Type="int16" Size="1" />
<Data ElementName="mitigation" Type="int32" Size="1" />
<Data ElementName="elemental" Type="int32" Size="1" />
<Data ElementName="noxious" Type="int32" Size="1" />
<Data ElementName="arcane" Type="int32" Size="1" />
<Data ElementName="mitigation_base" Type="int32" Size="1" />
<Data ElementName="elemental_base" Type="int32" Size="1" />
<Data ElementName="noxious_base" Type="int32" Size="1" />
<Data ElementName="arcane_base" Type="int32" Size="1" />
<Data ElementName="unknown9e" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pve" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pve" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pve" Type="int16" Size="1" />
<Data ElementName="unknown9f" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="unknown9g" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="unknown9h" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="primary_weapon_min_dmg" Type="int32" Size="1" />
<Data ElementName="primary_weapon_max_dmg" Type="int32" Size="1" />
<Data ElementName="melee_pri_delay" Type="float" Size="1" />
<Data ElementName="unknown22" Type="int16" Size="8" />
<Data ElementName="ability_mod" Type="float" Size="1" />
<Data ElementName="unknown23" Type="int16" Size="14" />
<Data ElementName="unknown25" Type="int32" Size="1" />
<Data ElementName="unknown26" Type="int32" Size="1" />
<Data ElementName="unknown27" Type="int8" Size="52" />
<Data ElementName="haste" Type="float" Size="1" />
<Data ElementName="unknown28" Type="int8" Size="44" />
<Data ElementName="dps" Type="float" Size="1" />
<Data ElementName="unknown29" Type="int8" Size="44" />
<Data ElementName="multi_attack" Type="float" Size="1" />
<Data ElementName="unknown30" Type="int8" Size="48" />
<Data ElementName="crit_chance" Type="float" Size="1" />
<Data ElementName="unknown31" Type="int8" Size="8" />
<Data ElementName="crit_bonus" Type="float" Size="1" />
<Data ElementName="unknown32" Type="int8" Size="4" />
<Data ElementName="potency" Type="float" Size="1" />
<Data ElementName="unknown33" Type="int8" Size="8" />
<Data ElementName="unknown34" Type="float" Size="1" />
<Data ElementName="unknown35" Type="int8" Size="76" />
<Data ElementName="unknown36" Type="float" Size="1" />
<Data ElementName="unknown37" Type="int8" Size="24" />
<Data ElementName="toughness" Type="float" Size="1" />
<Data ElementName="lethality" Type="float" Size="1" />
<Data ElementName="unknown38" Type="int8" Size="16" />
<Data ElementName="pvp_crit_mit" Type="float" Size="1" />
<Data ElementName="unknown39" Type="float" Size="1" />
<Data ElementName="unknown40" Type="int8" Size="236" />
<Data ElementName="crit_chance_pve" Type="float" Size="1" />
<Data ElementName="unknown41" Type="int8" Size="596" />
<Data ElementName="haste_pct" Type="int32" Size="1" />
<Data ElementName="dps_pct_pve" Type="int32" Size="1" />
<Data ElementName="dps_pct_pvp" Type="int32" Size="1" />
<Data ElementName="unknown42" Type="float" Size="1" />
<Data ElementName="unknown43" Type="int32" Size="1" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="unknown45" Type="int8" Size="13" />
<Data ElementName="class_name" Type="char" Size="28" />
<Data ElementName="unknown46" Type="float" Size="3" />
<Data ElementName="unknown47" Type="int8" Size="7" />
<Data ElementName="unknown48" Type="int32" Size="1" />
<Data ElementName="unknown49" Type="int32" Size="2" />
<Data ElementName="merc_name" Type="char" Size="40" />
<Data ElementName="unknown50" Type="int8" Size="452" />
</Struct>
<Struct Name="WS_CharacterMerc" ClientVersion="57107" OpcodeName="OP_CharacterMerc" >
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="3" />
<Data ElementName="salary" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="3" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int16" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="mitigation_pct_pve" Type="int16" Size="1" />
<Data ElementName="mitigation_pct_pvp" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="float" Size="1" />
<Data ElementName="unknown14" Type="float" Size="1" />
<Data ElementName="avoidance_pct" Type="int16" Size="1" />
<Data ElementName="unknown16" Type="int16" Size="1" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="unknown18" Type="int16" Size="1" />
<Data ElementName="avoidance_base" Type="int16" Size="1" />
<Data ElementName="unknown19" Type="int16" Size="1" />
<Data ElementName="parry" Type="int16" Size="1" />
<Data ElementName="unknown20" Type="int16" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="4" />
<Data ElementName="str" Type="int16" Size="1" />
<Data ElementName="sta" Type="int16" Size="1" />
<Data ElementName="agi" Type="int16" Size="1" />
<Data ElementName="wis" Type="int16" Size="1" />
<Data ElementName="int" Type="int16" Size="1" />
<Data ElementName="str_base" Type="int16" Size="1" />
<Data ElementName="sta_base" Type="int16" Size="1" />
<Data ElementName="agi_base" Type="int16" Size="1" />
<Data ElementName="wis_base" Type="int16" Size="1" />
<Data ElementName="int_base" Type="int16" Size="1" />
<Data ElementName="mitigation" Type="int32" Size="1" />
<Data ElementName="elemental" Type="int32" Size="1" />
<Data ElementName="noxious" Type="int32" Size="1" />
<Data ElementName="arcane" Type="int32" Size="1" />
<Data ElementName="mitigation_base" Type="int32" Size="1" />
<Data ElementName="elemental_base" Type="int32" Size="1" />
<Data ElementName="noxious_base" Type="int32" Size="1" />
<Data ElementName="arcane_base" Type="int32" Size="1" />
<Data ElementName="unknown9e" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pve" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pve" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pve" Type="int16" Size="1" />
<Data ElementName="unknown9f" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="unknown9g" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="unknown9h" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="primary_weapon_min_dmg" Type="int32" Size="1" />
<Data ElementName="primary_weapon_max_dmg" Type="int32" Size="1" />
<Data ElementName="melee_pri_delay" Type="float" Size="1" />
<Data ElementName="unknown22" Type="int16" Size="8" />
<Data ElementName="ability_mod" Type="float" Size="1" />
<Data ElementName="unknown23" Type="int16" Size="14" />
<Data ElementName="unknown25" Type="float" Size="1" />
<Data ElementName="unknown26" Type="float" Size="1" />
<Data ElementName="unknown27" Type="int8" Size="52" />
<Data ElementName="haste" Type="float" Size="1" /> <!-- ?? -->
<Data ElementName="unknown28" Type="int8" Size="40" />
<Data ElementName="dps" Type="float" Size="1" />
<Data ElementName="unknown29" Type="int8" Size="36" />
<Data ElementName="multi_attack" Type="float" Size="1" /> <!-- ?? -->
<Data ElementName="unknown30" Type="float" Size="1" />
<Data ElementName="unknown30a" Type="float" Size="1" />
<Data ElementName="unknown30b" Type="float" Size="1" />
<Data ElementName="unknown30c" Type="float" Size="1" />
<Data ElementName="unknown30d" Type="float" Size="1" />
<Data ElementName="unknown30e" Type="float" Size="1" />
<Data ElementName="unknown30f" Type="float" Size="1" />
<Data ElementName="crit_chance" Type="float" Size="1" />
<Data ElementName="unknown30h" Type="float" Size="1" />
<Data ElementName="unknown30i" Type="float" Size="1" />
<Data ElementName="crit_bonus" Type="float" Size="1" />
<Data ElementName="potency" Type="float" Size="1" />
<Data ElementName="unknown30l" Type="float" Size="1" />
<Data ElementName="unknown31" Type="float" Size="1" /> <!-- multi attack? -->
<Data ElementName="unknown31a" Type="float" Size="1" />
<Data ElementName="unknown31b" Type="float" Size="1" />
<Data ElementName="unknown32" Type="int8" Size="4" />
<Data ElementName="unknown32a" Type="float" Size="1" />
<Data ElementName="unknown33" Type="int8" Size="8" />
<Data ElementName="unknown34" Type="float" Size="1" />
<Data ElementName="unknown35" Type="float" Size="1" />
<Data ElementName="unknown351" Type="float" Size="1" />
<Data ElementName="unknown352" Type="float" Size="1" />
<Data ElementName="unknown353" Type="float" Size="1" />
<Data ElementName="unknown354" Type="float" Size="1" />
<Data ElementName="unknown355" Type="float" Size="1" />
<Data ElementName="unknown356" Type="float" Size="1" />
<Data ElementName="unknown357" Type="float" Size="1" />
<Data ElementName="unknown358" Type="float" Size="1" />
<Data ElementName="unknown359" Type="float" Size="1" />
<Data ElementName="unknown350" Type="float" Size="1" />
<Data ElementName="unknown3511" Type="float" Size="1" />
<Data ElementName="unknown3512" Type="float" Size="1" /> <!-- haste? -->
<Data ElementName="unknown3513" Type="float" Size="1" />
<Data ElementName="unknown3514" Type="float" Size="1" />
<Data ElementName="unknown3515" Type="float" Size="1" />
<Data ElementName="unknown3516" Type="float" Size="1" />
<Data ElementName="unknown3517" Type="float" Size="1" />
<Data ElementName="unknown3518" Type="float" Size="1" />
<Data ElementName="unknown36" Type="float" Size="1" />
<Data ElementName="toughness" Type="float" Size="1" />
<Data ElementName="lethality" Type="float" Size="1" />
<Data ElementName="unknown37b" Type="float" Size="1" />
<Data ElementName="unknown37c" Type="float" Size="1" />
<Data ElementName="unknown37d" Type="float" Size="1" />
<Data ElementName="unknown37e" Type="float" Size="1" />
<Data ElementName="pvp_crit_mit" Type="float" Size="1" />
<Data ElementName="unknown37g" Type="float" Size="1" />
<Data ElementName="unknown38" Type="int8" Size="16" />
<Data ElementName="unknown38a" Type="float" Size="1" />
<Data ElementName="unknown39" Type="float" Size="1" />
<Data ElementName="unknown40" Type="int8" Size="200" />
<Data ElementName="crit_chance_pve" Type="float" Size="1" />
<Data ElementName="unknown41" Type="int8" Size="596" />
<Data ElementName="haste_pct" Type="int32" Size="1" />
<Data ElementName="dps_pct_pve" Type="int32" Size="1" />
<Data ElementName="dps_pct_pvp" Type="int32" Size="1" />
<Data ElementName="unknown42" Type="float" Size="1" />
<Data ElementName="unknown43" Type="int32" Size="1" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="merc_name" Type="char" Size="41" />
<Data ElementName="unknown46" Type="float" Size="3" />
<Data ElementName="unknown47" Type="int8" Size="7" />
</Struct>
<Struct Name="WS_CharacterMerc" ClientVersion="60085" OpcodeName="OP_CharacterMerc" >
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int16" Size="3" />
<Data ElementName="salary" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int32" Size="3" />
<Data ElementName="unknown5" Type="int16" Size="1" />
<Data ElementName="unknown6" Type="int16" Size="1" />
<Data ElementName="unknown7" Type="int16" Size="1" />
<Data ElementName="unknown8" Type="int16" Size="1" />
<Data ElementName="unknown9" Type="int16" Size="1" />
<Data ElementName="unknown10" Type="int16" Size="1" />
<Data ElementName="unknown11" Type="int16" Size="1" />
<Data ElementName="mitigation_pct_pve" Type="int16" Size="1" />
<Data ElementName="mitigation_pct_pvp" Type="int16" Size="1" />
<Data ElementName="unknown12" Type="float" Size="1" />
<Data ElementName="unknown14" Type="float" Size="1" />
<Data ElementName="avoidance_pct" Type="int16" Size="1" />
<Data ElementName="unknown16" Type="int16" Size="1" />
<Data ElementName="unknown17" Type="int16" Size="1" />
<Data ElementName="unknown18" Type="int16" Size="1" />
<Data ElementName="avoidance_base" Type="int16" Size="1" />
<Data ElementName="unknown19" Type="int16" Size="1" />
<Data ElementName="parry" Type="int16" Size="1" />
<Data ElementName="unknown20" Type="int16" Size="1" />
<Data ElementName="unknown21" Type="int16" Size="4" />
<Data ElementName="str" Type="int16" Size="1" />
<Data ElementName="sta" Type="int16" Size="1" />
<Data ElementName="agi" Type="int16" Size="1" />
<Data ElementName="wis" Type="int16" Size="1" />
<Data ElementName="int" Type="int16" Size="1" />
<Data ElementName="str_base" Type="int16" Size="1" />
<Data ElementName="sta_base" Type="int16" Size="1" />
<Data ElementName="agi_base" Type="int16" Size="1" />
<Data ElementName="wis_base" Type="int16" Size="1" />
<Data ElementName="int_base" Type="int16" Size="1" />
<Data ElementName="mitigation" Type="int32" Size="1" />
<Data ElementName="elemental" Type="int32" Size="1" />
<Data ElementName="noxious" Type="int32" Size="1" />
<Data ElementName="arcane" Type="int32" Size="1" />
<Data ElementName="mitigation_base" Type="int32" Size="1" />
<Data ElementName="elemental_base" Type="int32" Size="1" />
<Data ElementName="noxious_base" Type="int32" Size="1" />
<Data ElementName="arcane_base" Type="int32" Size="1" />
<Data ElementName="unknown9e" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pve" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pve" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pve" Type="int16" Size="1" />
<Data ElementName="unknown9f" Type="int16" Size="1" />
<Data ElementName="elemental_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="noxious_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="arcane_absorb_pvp" Type="int16" Size="1" />
<Data ElementName="unknown9g" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction" Type="int16" Size="1" />
<Data ElementName="unknown9h" Type="int16" Size="1" />
<Data ElementName="elemental_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="noxious_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="arcane_dmg_reduction_pct" Type="int16" Size="1" />
<Data ElementName="primary_weapon_min_dmg" Type="int32" Size="1" />
<Data ElementName="primary_weapon_max_dmg" Type="int32" Size="1" />
<Data ElementName="melee_pri_delay" Type="float" Size="1" />
<Data ElementName="unknown22" Type="int16" Size="8" />
<Data ElementName="ability_mod" Type="float" Size="1" />
<Data ElementName="unknown23" Type="int16" Size="14" />
<Data ElementName="unknown25" Type="float" Size="1" />
<Data ElementName="unknown26" Type="float" Size="1" />
<Data ElementName="unknown27" Type="int8" Size="52" />
<Data ElementName="haste" Type="float" Size="1" /> <!-- ?? -->
<Data ElementName="unknown28" Type="int8" Size="40" />
<Data ElementName="dps" Type="float" Size="1" />
<Data ElementName="unknown29" Type="int8" Size="36" />
<Data ElementName="multi_attack" Type="float" Size="1" /> <!-- ?? -->
<Data ElementName="unknown30" Type="float" Size="1" />
<Data ElementName="unknown30a" Type="float" Size="1" />
<Data ElementName="unknown30b" Type="float" Size="1" />
<Data ElementName="unknown30c" Type="float" Size="1" />
<Data ElementName="unknown30d" Type="float" Size="1" />
<Data ElementName="unknown30e" Type="float" Size="1" />
<Data ElementName="unknown30f" Type="float" Size="1" />
<Data ElementName="crit_chance" Type="float" Size="1" />
<Data ElementName="unknown30h" Type="float" Size="1" />
<Data ElementName="unknown30i" Type="float" Size="1" />
<Data ElementName="crit_bonus" Type="float" Size="1" />
<Data ElementName="potency" Type="float" Size="1" />
<Data ElementName="unknown30l" Type="float" Size="1" />
<Data ElementName="unknown31" Type="float" Size="1" /> <!-- multi attack? -->
<Data ElementName="unknown31a" Type="float" Size="1" />
<Data ElementName="unknown31b" Type="float" Size="1" />
<Data ElementName="unknown32" Type="int8" Size="4" />
<Data ElementName="unknown32a" Type="float" Size="1" />
<Data ElementName="unknown33" Type="int8" Size="8" />
<Data ElementName="unknown34" Type="float" Size="1" />
<Data ElementName="unknown35" Type="float" Size="1" />
<Data ElementName="unknown351" Type="float" Size="1" />
<Data ElementName="unknown352" Type="float" Size="1" />
<Data ElementName="unknown353" Type="float" Size="1" />
<Data ElementName="unknown354" Type="float" Size="1" />
<Data ElementName="unknown355" Type="float" Size="1" />
<Data ElementName="unknown356" Type="float" Size="1" />
<Data ElementName="unknown357" Type="float" Size="1" />
<Data ElementName="unknown358" Type="float" Size="1" />
<Data ElementName="unknown359" Type="float" Size="1" />
<Data ElementName="unknown350" Type="float" Size="1" />
<Data ElementName="unknown3511" Type="float" Size="1" />
<Data ElementName="unknown3512" Type="float" Size="1" /> <!-- haste? -->
<Data ElementName="unknown3513" Type="float" Size="1" />
<Data ElementName="unknown3514" Type="float" Size="1" />
<Data ElementName="unknown3515" Type="float" Size="1" />
<Data ElementName="unknown3516" Type="float" Size="1" />
<Data ElementName="unknown3517" Type="float" Size="1" />
<Data ElementName="unknown3518" Type="float" Size="1" />
<Data ElementName="unknown36" Type="float" Size="1" />
<Data ElementName="toughness" Type="float" Size="1" />
<Data ElementName="lethality" Type="float" Size="1" />
<Data ElementName="unknown37b" Type="float" Size="1" />
<Data ElementName="unknown37c" Type="float" Size="1" />
<Data ElementName="unknown37d" Type="float" Size="1" />
<Data ElementName="unknown37e" Type="float" Size="1" />
<Data ElementName="pvp_crit_mit" Type="float" Size="1" />
<Data ElementName="unknown37g" Type="float" Size="1" />
<Data ElementName="unknown38" Type="int8" Size="16" />
<Data ElementName="unknown38a" Type="float" Size="1" />
<Data ElementName="unknown39" Type="float" Size="1" />
<Data ElementName="unknown40" Type="int8" Size="200" />
<Data ElementName="crit_chance_pve" Type="float" Size="1" />
<Data ElementName="unknown41" Type="int8" Size="644" />
<Data ElementName="haste_pct" Type="int32" Size="1" />
<Data ElementName="dps_pct_pve" Type="int32" Size="1" />
<Data ElementName="dps_pct_pvp" Type="int32" Size="1" />
<Data ElementName="unknown42" Type="float" Size="1" />
<Data ElementName="unknown43" Type="int32" Size="1" />
<Data ElementName="unknown44" Type="int32" Size="1" />
<Data ElementName="merc_name" Type="char" Size="41" />
<Data ElementName="unknown46" Type="float" Size="3" />
<Data ElementName="unknown47" Type="int8" Size="7" />
</Struct>
<Struct Name="WS_CharacterPet" ClientVersion="1" OpcodeName="OP_CharacterPet">
<!-- values may mimic the merc packet -->
<!-- first 3 elements are class -->
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<!-- guessed on these -->
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<!-- Correct spot and controls the hp bar in the pet window-->
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<!-- guessed on these -->
<Data ElementName="current_power2" Type="int32" Size="1" />
<Data ElementName="max_power2" Type="int32" Size="1" />
<Data ElementName="base_power2" Type="int32" Size="1" />
<!-- Correct spot and controls the power bar in the pet window -->
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1424" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="name" Type="char" Size="32" />
<Data ElementName="unknown3" Type="int8" Size="9" />
<Data ElementName="no_pet" Type="char" Size="32" />
<Data ElementName="unknown3a" Type="int8" Size="9" />
<Data ElementName="health_pct_tooltip" Type="float" Size="1" />
<Data ElementName="health_pct_bar" Type="float" Size="1" />
<Data ElementName="power_pct_tooltip" Type="float" Size="1" />
<Data ElementName="power_pct_bar" Type="float" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="movement" Type="int8" Size="1" />
<Data ElementName="behavior" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" /> <!--First byte may be range and melee toggle-->
</Struct>
<Struct Name="WS_CharacterPet" ClientVersion="57107" OpcodeName="OP_CharacterPet">
<!-- values may mimic the merc packet -->
<!-- first 3 elements are class -->
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<!-- guessed on these -->
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="current_power2" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="max_power2" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int32" Size="1" />
<Data ElementName="base_power2" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="unknown1b" Type="int32" Size="1" />
<Data ElementName="unknown1c" Type="int32" Size="1" />
<Data ElementName="current_power3" Type="int32" Size="1" />
<Data ElementName="max_power3" Type="int32" Size="1" />
<Data ElementName="unknown1f" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1376" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="name" Type="char" Size="32" />
<Data ElementName="unknown3" Type="int8" Size="9" />
<Data ElementName="no_pet" Type="char" Size="32" />
<Data ElementName="unknown3a" Type="int8" Size="9" />
<Data ElementName="health_pct_tooltip" Type="double" Size="1" />
<Data ElementName="health_pct_bar" Type="double" Size="1" />
<Data ElementName="power_pct_tooltip" Type="float" Size="1" />
<Data ElementName="power_pct_bar" Type="float" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="movement" Type="int8" Size="1" />
<Data ElementName="behavior" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" /> <!--First byte may be range and melee toggle-->
</Struct>
<Struct Name="WS_CharacterPet" ClientVersion="60085" OpcodeName="OP_CharacterPet">
<!-- values may mimic the merc packet -->
<!-- first 3 elements are class -->
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<!-- guessed on these -->
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="current_power2" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="max_power2" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int32" Size="1" />
<Data ElementName="base_power2" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="unknown1b" Type="int32" Size="1" />
<Data ElementName="unknown1c" Type="int32" Size="1" />
<Data ElementName="current_power3" Type="int32" Size="1" />
<Data ElementName="max_power3" Type="int32" Size="1" />
<Data ElementName="unknown1f" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1424" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="name" Type="char" Size="32" />
<Data ElementName="unknown3" Type="int8" Size="9" />
<Data ElementName="no_pet" Type="char" Size="32" />
<Data ElementName="unknown3a" Type="int8" Size="9" />
<Data ElementName="health_pct_tooltip" Type="double" Size="1" />
<Data ElementName="health_pct_bar" Type="double" Size="1" />
<Data ElementName="power_pct_tooltip" Type="float" Size="1" />
<Data ElementName="power_pct_bar" Type="float" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="movement" Type="int8" Size="1" />
<Data ElementName="behavior" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" /> <!--First byte may be range and melee toggle-->
</Struct>
<Struct Name="WS_CharacterPet" ClientVersion="61532" OpcodeName="OP_CharacterPet">
<!-- values may mimic the merc packet -->
<!-- first 3 elements are class -->
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<!-- guessed on these -->
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="current_power2" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="max_power2" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int32" Size="1" />
<Data ElementName="base_power2" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="unknown1b" Type="int32" Size="1" />
<Data ElementName="unknown1c" Type="int32" Size="1" />
<Data ElementName="current_power3" Type="int32" Size="1" />
<Data ElementName="max_power3" Type="int32" Size="1" />
<Data ElementName="unknown1f" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1436" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="name" Type="char" Size="32" />
<Data ElementName="unknown3" Type="int8" Size="9" />
<Data ElementName="no_pet" Type="char" Size="32" />
<Data ElementName="unknown3a" Type="int8" Size="9" />
<Data ElementName="health_pct_tooltip" Type="double" Size="1" />
<Data ElementName="health_pct_bar" Type="double" Size="1" />
<Data ElementName="power_pct_tooltip" Type="float" Size="1" />
<Data ElementName="power_pct_bar" Type="float" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="movement" Type="int8" Size="1" />
<Data ElementName="behavior" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" /> <!--First byte may be range and melee toggle-->
</Struct>
<Struct Name="WS_CharacterPet" ClientVersion="63195" OpcodeName="OP_CharacterPet">
<!-- values may mimic the merc packet -->
<!-- first 3 elements are class -->
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<!-- guessed on these -->
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="current_power2" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="max_power2" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int32" Size="1" />
<Data ElementName="base_power2" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="unknown1b" Type="int32" Size="1" />
<Data ElementName="unknown1c" Type="int32" Size="1" />
<Data ElementName="current_power3" Type="int32" Size="1" />
<Data ElementName="max_power3" Type="int32" Size="1" />
<Data ElementName="unknown1f" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1568" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="name" Type="char" Size="32" />
<Data ElementName="unknown3" Type="int8" Size="9" />
<Data ElementName="no_pet" Type="char" Size="32" />
<Data ElementName="unknown3a" Type="int8" Size="9" />
<Data ElementName="health_pct_tooltip" Type="double" Size="1" />
<Data ElementName="health_pct_bar" Type="double" Size="1" />
<Data ElementName="power_pct_tooltip" Type="float" Size="1" />
<Data ElementName="power_pct_bar" Type="float" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="movement" Type="int8" Size="1" />
<Data ElementName="behavior" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" /> <!--First byte may be range and melee toggle-->
</Struct>
<Struct Name="WS_CharacterPet" ClientVersion="63227" OpcodeName="OP_CharacterPet">
<!-- values may mimic the merc packet -->
<!-- first 3 elements are class -->
<Data ElementName="class1" Type="int32" Size="1" />
<Data ElementName="class2" Type="int32" Size="1" />
<Data ElementName="class3" Type="int32" Size="1" />
<Data ElementName="unknown" Type="int8" Size="5" />
<!-- guessed on these -->
<Data ElementName="current_power" Type="int32" Size="1" />
<Data ElementName="current_power2" Type="int32" Size="1" />
<Data ElementName="max_power" Type="int32" Size="1" />
<Data ElementName="max_power2" Type="int32" Size="1" />
<Data ElementName="base_power" Type="int32" Size="1" />
<Data ElementName="base_power2" Type="int32" Size="1" />
<Data ElementName="current_hp" Type="int32" Size="1" />
<Data ElementName="current_hp2" Type="int32" Size="1" />
<Data ElementName="max_hp" Type="int32" Size="1" />
<Data ElementName="max_hp2" Type="int32" Size="1" />
<Data ElementName="base_hp" Type="int32" Size="1" />
<Data ElementName="base_hp2" Type="int32" Size="1" />
<Data ElementName="unknown1a" Type="int32" Size="1" />
<Data ElementName="unknown1b" Type="int32" Size="1" />
<Data ElementName="unknown1c" Type="int32" Size="1" />
<Data ElementName="current_power3" Type="int32" Size="1" />
<Data ElementName="max_power3" Type="int32" Size="1" />
<Data ElementName="unknown1f" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="1436" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
<Data ElementName="spawn_id2" Type="int32" Size="1" />
<Data ElementName="name" Type="char" Size="32" />
<Data ElementName="unknown3" Type="int8" Size="9" />
<Data ElementName="no_pet" Type="char" Size="32" />
<Data ElementName="unknown3a" Type="int8" Size="9" />
<Data ElementName="health_pct_tooltip" Type="double" Size="1" />
<Data ElementName="health_pct_bar" Type="double" Size="1" />
<Data ElementName="power_pct_tooltip" Type="float" Size="1" />
<Data ElementName="power_pct_bar" Type="float" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="movement" Type="int8" Size="1" />
<Data ElementName="behavior" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="1" /> <!--First byte may be range and melee toggle-->
</Struct>
<Struct Name="WS_ClearForTakeOff" ClientVersion="1" OpcodeName="OP_ClearForTakeOffMsg">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="path_id" Type="int8" />
<Data ElementName="speed" Type="float" />
<Data ElementName="unknown3" Type="int16" />
</Struct>
<Struct Name="WS_ClearForLanding" ClientVersion="1" OpcodeName="OP_ClearForLandingMsg">
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_CharacterCurrency" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterCurrency">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_currency" Type="int16" />
<Data ElementName="currency_array" Type="Array" ArraySizeVariable="num_currency">
<Data ElementName="item_id" Type="int32" />
<Data ElementName="currency_qty" Type="int32" />
<Data ElementName="item_crc" Type="int32" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="currency" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_CharacterCurrency" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterCurrency">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_currency" Type="int16" />
<Data ElementName="currency_array" Type="Array" ArraySizeVariable="num_currency">
<Data ElementName="item_id" Type="int32" />
<Data ElementName="currency_qty" Type="int32" />
<Data ElementName="item_crc" Type="int32" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="currency" Type="EQ2_16Bit_String" />
</Data>
</Struct>
<Struct Name="WS_CharacterCurrency" ClientVersion="63180" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CharacterCurrency">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_currency" Type="int16" />
<Data ElementName="currency_array" Type="Array" ArraySizeVariable="num_currency">
<Data ElementName="item_id" Type="int32" />
<Data ElementName="currency_qty" Type="int32" />
<Data ElementName="item_crc" Type="int32" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="currency" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_PlayerPosUpdate" ClientVersion="1" >
<Data ElementName="activity" Type="int32" />
<Data ElementName="unknown2" Type="float" />
<Data ElementName="direction1" Type="float" />
<Data ElementName="unknown3" Type="float" size="8" />
<Data ElementName="speed" Type="float" />
<Data ElementName="side_speed" Type="float" />
<Data ElementName="unknown4" Type="float" />
<Data ElementName="orig_x" Type="float" />
<Data ElementName="orig_y" Type="float" />
<Data ElementName="orig_z" Type="float" />
<Data ElementName="orig_x2" Type="float" />
<Data ElementName="orig_y2" Type="float" />
<Data ElementName="orig_z2" Type="float" />
<Data ElementName="unknown5" Type="float" size="3" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="float" Size="3" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="grid_location" Type="int32" />
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="direction2" Type="float" />
<Data ElementName="unknown9" Type="float" />
<Data ElementName="unknown10" Type="float" />
<Data ElementName="speed_x" Type="float" />
<Data ElementName="speed_y" Type="float" />
<Data ElementName="speed_z" Type="float" />
</Struct>
<Struct Name="WS_PlayerPosUpdate" ClientVersion="1096" >
<Data ElementName="activity" Type="int32" />
<Data ElementName="unknown2" Type="float" />
<Data ElementName="direction1" Type="float" />
<Data ElementName="unknown3" Type="float" size="8" />
<Data ElementName="unk_speed" Type="float" />
<Data ElementName="speed" Type="float" />
<Data ElementName="side_speed" Type="float" />
<Data ElementName="unknown4" Type="float" />
<Data ElementName="orig_x" Type="float" />
<Data ElementName="orig_y" Type="float" />
<Data ElementName="orig_z" Type="float" />
<Data ElementName="orig_x2" Type="float" />
<Data ElementName="orig_y2" Type="float" />
<Data ElementName="orig_z2" Type="float" />
<Data ElementName="unknown5" Type="float" size="3" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="float" Size="3" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="grid_location" Type="int32" />
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="direction2" Type="float" />
<Data ElementName="unknown9" Type="float" />
<Data ElementName="unknown10" Type="float" />
<Data ElementName="speed_x" Type="float" />
<Data ElementName="speed_y" Type="float" />
<Data ElementName="speed_z" Type="float" />
</Struct>
<Struct Name="WS_PlayerPosUpdate" ClientVersion="1144" >
<Data ElementName="activity" Type="int32" />
<Data ElementName="unknown2" Type="float" />
<Data ElementName="direction1" Type="float" />
<Data ElementName="unknown3" Type="float" size="8" />
<Data ElementName="unk_speed" Type="float" />
<Data ElementName="speed" Type="float" />
<Data ElementName="side_speed" Type="float" />
<Data ElementName="unknown4" Type="float" />
<Data ElementName="orig_x" Type="float" />
<Data ElementName="orig_y" Type="float" />
<Data ElementName="orig_z" Type="float" />
<Data ElementName="orig_x2" Type="float" />
<Data ElementName="orig_y2" Type="float" />
<Data ElementName="orig_z2" Type="float" />
<Data ElementName="unknown5" Type="float" size="3" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="float" Size="3" />
<Data ElementName="unknown8" Type="int32" Size="5"/>
<Data ElementName="grid_location" Type="int32" />
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
<Data ElementName="direction2" Type="float" />
<Data ElementName="unknown9" Type="float" />
<Data ElementName="unknown10" Type="float" />
<Data ElementName="speed_x" Type="float" />
<Data ElementName="speed_y" Type="float" />
<Data ElementName="speed_z" Type="float" />
</Struct>
<!-- Comments were found in code: client.cpp -->
<Struct Name="WS_DefaultGroupOptions" ClientVersion="1" OpcodeName="OP_DefaultGroupOptionsMsg" >
<Data ElementName="loot_method" Type="int8" Size="1" />
<Data ElementName="auto_split_coin" Type="int8" Size="1" />
<Data ElementName="default_yell_method" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_DefaultGroupOptions" ClientVersion="546" OpcodeName="OP_DefaultGroupOptionsMsg" >
<Data ElementName="loot_method" Type="int8" Size="1" /> <!-- 0 = leader, 1 = FFA, 2 = lotto -->
<Data ElementName="loot_items_rarity" Type="int8" Size="1" /> <!-- not available in DoF? -->
<Data ElementName="auto_split_coin" Type="int8" Size="1" /> <!-- auto split -->
<Data ElementName="default_yell_method" Type="int8" Size="1" /> <!-- 0 = leader only, 1 = group allowed -->
<Data ElementName="default_group_lock_method" Type="int8" Size="1" /> <!-- 0 = leader, 1 = anyone -->
<Data ElementName="group_autolock" Type="int8" Size="1" /> <!-- 0 = false, 1 = true, if set to 0 default_group_lock_method is not sent if changed after -->
</Struct>
<Struct Name="WS_DefaultGroupOptions" ClientVersion="562" OpcodeName="OP_DefaultGroupOptionsMsg" >
<Data ElementName="loot_method" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="loot_items_rarity" Type="int8" Size="1" />
<Data ElementName="auto_split_coin" Type="int8" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="default_yell_method" Type="int8" Size="1" />
<Data ElementName="default_group_lock_method" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="group_autolock" Type="int8" Size="1" />
<Data ElementName="solo_autolock" Type="int8" Size="1" />
<Data ElementName="auto_loot_method" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_ChoiceWindow" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqChoiceWinCmd">
<Data ElementName="text" Type="EQ2_16Bit_String" />
<Data ElementName="accept_text" Type="EQ2_16Bit_String" />
<Data ElementName="accept_command" Type="EQ2_16Bit_String" />
<Data ElementName="cancel_text" Type="EQ2_16Bit_String" />
<Data ElementName="cancel_command" Type="EQ2_16Bit_String" />
<Data ElementName="time" Type="int32" />
<Data ElementName="text_box" Type="int8" />
<Data ElementName="text_required" Type="int8" Size="1" />
<Data ElementName="max_length" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ChoiceWindow" ClientVersion="547" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqChoiceWinCmd">
<Data ElementName="text" Type="EQ2_16Bit_String" />
<Data ElementName="accept_text" Type="EQ2_16Bit_String" />
<Data ElementName="accept_command" Type="EQ2_16Bit_String" />
<Data ElementName="cancel_text" Type="EQ2_16Bit_String" />
<Data ElementName="cancel_command" Type="EQ2_16Bit_String" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown_string1" Type="EQ2_16Bit_String" />
<Data ElementName="unknown_string2" Type="EQ2_16Bit_String" />
<Data ElementName="time" Type="int32" />
<Data ElementName="text_box" Type="int8" />
<Data ElementName="unknown1" Type="int8" Size="1" />
<Data ElementName="max_length" Type="int8" Size="1" />
2020-02-28 07:17:24 -07:00
<Data ElementName="unknown3" Type="int8" Size="6" />
<Data ElementName="unknown4" Type="int8" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="station_cash" Type="int16" />
</Struct>
<Struct Name="WS_PlayerHousePurchase" ClientVersion="1" OpcodeName="OP_PlayerHousePurchaseScreenMsg">
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
<Data ElementName="house_id" Type="int32" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="purchase_coins" Type="int32" OversizedValue="127" OversizedByte="127"/>
<Data ElementName="purchase_status" Type="int32" OversizedValue="127" OversizedByte="127"/>
<Data ElementName="upkeep_coins" Type="sint32" OversizedValue="127" OversizedByte="127"/>
<Data ElementName="unknown" Type="sint32"/>
<Data ElementName="upkeep_status" Type="sint32" OversizedValue="127" OversizedByte="127"/>
<Data ElementName="unknown1" Type="int8" Size="2"/>
<Data ElementName="enable_buy" Type="int8" />
</Struct>
<Struct Name="WS_PlayerHousePurchase" ClientVersion="547" OpcodeName="OP_PlayerHousePurchaseScreenMsg">
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
2020-02-28 07:17:24 -07:00
<Data ElementName="house_id" Type="int64" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="purchase_coins" Type="int64" />
<Data ElementName="purchase_status" Type="int32" />
<Data ElementName="upkeep_coins" Type="int64" />
<Data ElementName="upkeep_status" Type="int32" />
<Data ElementName="vendor_vault_slots" Type="int8" />
<Data ElementName="additional_reqs" Type="EQ2_16Bit_String" />
<Data ElementName="enable_buy" Type="int8" />
</Struct>
<Struct Name="WS_BuyHouse" ClientVersion="1" OpcodeName="OP_BuyPlayerHouseMsg">
<Data ElementName="house_id" Type="int32" />
</Struct>
<Struct Name="WS_BuyHouse" ClientVersion="547" OpcodeName="OP_BuyPlayerHouseMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="house_id" Type="int64" />
</Struct>
<Struct Name="WS_PlayerHouseBaseScreen" ClientVersion="1" OpcodeName="OP_PlayerHouseBaseScreenMsg">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
<Data ElementName="upkeep_cost_coins" Type="int64"/>
<Data ElementName="upkeep_cost_status" Type="sint32"/>
<Data ElementName="escrow_balance_coins" Type="int32"/>
<Data ElementName="escrow_balance_status" Type="int32"/>
<Data ElementName="unknownx" Type="int32" Size="1"/>
<Data ElementName="upkeep_due" Type="int32" />
<Data ElementName="privlage_level" Type="int8" />
<Data ElementName="house_type" Type="int8" />
<Data ElementName="inside_house" Type="int8" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="num_access" Type="int8" />
<Data ElementName="access_array" Type="Array" ArraySizeVariable="num_access">
<Data ElementName="access_unknown1" Type="int8" Size="8" />
<Data ElementName="access_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Data>
<Data ElementName="public_access_level" Type="int8" />
<Data ElementName="num_deposit" Type="int8" />
<Data ElementName="deposit_array" Type="Array" ArraySizeVariable="num_deposit">
<Data ElementName="unknownx" Type="int8" Size="4"/>
<Data ElementName="deposit_name" Type="EQ2_16Bit_String" />
<Data ElementName="deposit_total_coin" Type="int64" />
<Data ElementName="deposit_total_status" Type="int32" />
<Data ElementName="deposit_last_coin" Type="int64" />
<Data ElementName="deposit_last_status" Type="int32" />
<Data ElementName="deposit_time_stamp" Type="int32" />
</Data>
<Data ElementName="num_history" Type="int8" />
<Data ElementName="history_array" Type="Array" ArraySizeVariable="num_history">
<Data ElementName="unknown_history" Type="int8" Size="4"/>
<Data ElementName="history_name" Type="EQ2_16Bit_String" />
<Data ElementName="history_coins" Type="int64" />
<Data ElementName="history_status" Type="int32" />
<Data ElementName="history_time_stamp" Type="int32" />
</Data>
<Data ElementName="allow_item_collection" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="placed_item_count" Type="int16" />
<Data ElementName="max_placed_items" Type="int16" />
<Data ElementName="actual_item_count" Type="int16" />
<Data ElementName="moving_crate_item_count" Type="int16" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="coin_reduction" Type="float" />
<Data ElementName="additional_slots" Type="int32" />
<Data ElementName="allowed_amenities" Type="int32" />
<Data ElementName="total_amenities" Type="int32" />
<Data ElementName="get_portal_flag" Type="int8" />
<Data ElementName="unknown6" Type="int8" />
</Struct>
<Struct Name="WS_PlayerHouseBaseScreen" ClientVersion="547" OpcodeName="OP_PlayerHouseBaseScreenMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="house_id" Type="int64" />
<Data ElementName="spawn_id" Type="int32" /><!-- spawn id of the door -->
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="upkeep_cost_coins" Type="int64" />
<Data ElementName="upkeep_cost_status" Type="int32" />
<Data ElementName="escrow_balance_coins" Type="int64" />
<Data ElementName="escrow_balance_status" Type="int32" />
<Data ElementName="upkeep_due" Type="int32" />
<Data ElementName="privlage_level" Type="int8" />
<Data ElementName="house_type" Type="int8" />
<Data ElementName="inside_house" Type="int8" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="num_access" Type="int8" />
<Data ElementName="access_array" Type="Array" ArraySizeVariable="num_access">
<Data ElementName="access_unknown1" Type="int8" Size="8" />
<Data ElementName="access_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Data>
<Data ElementName="public_access_level" Type="int8" />
<Data ElementName="num_deposit" Type="int8" />
<Data ElementName="deposit_array" Type="Array" ArraySizeVariable="num_deposit">
<Data ElementName="deposit_name" Type="EQ2_16Bit_String" />
<Data ElementName="deposit_total_coin" Type="int64" />
<Data ElementName="deposit_total_status" Type="int32" />
<Data ElementName="deposit_last_coin" Type="int64" />
<Data ElementName="deposit_last_status" Type="int32" />
<Data ElementName="deposit_time_stamp" Type="int32" />
</Data>
<Data ElementName="num_history" Type="int8" />
<Data ElementName="history_array" Type="Array" ArraySizeVariable="num_history">
<Data ElementName="history_name" Type="EQ2_16Bit_String" />
<Data ElementName="history_coins" Type="int64" />
<Data ElementName="history_status" Type="int32" />
<Data ElementName="history_time_stamp" Type="int32" />
<Data ElementName="history_reason" Type="EQ2_16Bit_String" />
<Data ElementName="history_add_flag" Type="int8" />
</Data>
<Data ElementName="num_amenities" Type="int8" />
<Data ElementName="amenities_array" Type="Array" ArraySizeVariable="num_amenities">
<Data ElementName="amenities_name" Type="EQ2_16Bit_String" />
<Data ElementName="amenities_unknown1" Type="int8" Size="2" />
<Data ElementName="amenities_purchace_coins" Type="int64" />
<Data ElementName="amenities_purchace_status" Type="int32" />
<Data ElementName="amenities_upkeep_coins" Type="int64" />
<Data ElementName="amenities_upkeep_status" Type="int32" />
<Data ElementName="amenities_item_id" Type="int32" />
<Data ElementName="amenities_unknown2" Type="int8" Size="3" />
<Data ElementName="amenities_icon" Type="int16" />
<Data ElementName="amenities_item_count" Type="int8" />
<Data ElementName="amenities_purchased" Type="int8" />
<Data ElementName="amenities_unknown3" Type="int8" Size="2" />
</Data>
<Data ElementName="allow_item_collection" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="placed_item_count" Type="int16" />
<Data ElementName="max_placed_items" Type="int16" />
<Data ElementName="actual_item_count" Type="int16" />
<Data ElementName="moving_crate_item_count" Type="int16" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="coin_reduction" Type="float" />
<Data ElementName="additional_slots" Type="int32" />
<Data ElementName="allowed_amenities" Type="int32" />
<Data ElementName="total_amenities" Type="int32" />
<Data ElementName="get_portal_flag" Type="int8" />
<Data ElementName="unknown6" Type="int8" />
</Struct>
<Struct Name="WS_PlayerHouseBaseScreen" ClientVersion="57048" OpcodeName="OP_PlayerHouseBaseScreenMsg">
<Data ElementName="house_id" Type="int64" />
<Data ElementName="character_id" Type="int32" />
<Data ElementName="unknown00" Type="int32" />
<Data ElementName="spawn_id" Type="int32" /><!-- spawn id of the door -->
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="upkeep_cost_coins" Type="int64" />
<Data ElementName="upkeep_cost_status" Type="int32" />
<Data ElementName="escrow_balance_coins" Type="int64" />
<Data ElementName="escrow_balance_status" Type="int32" />
<Data ElementName="upkeep_due" Type="int32" />
<Data ElementName="privlage_level" Type="int8" />
<Data ElementName="house_type" Type="int8" />
<Data ElementName="inside_house" Type="int8" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="num_access" Type="int8" />
<Data ElementName="access_array" Type="Array" ArraySizeVariable="num_access">
<Data ElementName="access_unknown1" Type="int8" Size="8" />
<Data ElementName="access_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Data>
<Data ElementName="public_access_level" Type="int8" />
<Data ElementName="num_deposit" Type="int8" />
<Data ElementName="deposit_array" Type="Array" ArraySizeVariable="num_deposit">
<Data ElementName="deposit_name" Type="EQ2_16Bit_String" />
<Data ElementName="deposit_total_coin" Type="int64" />
<Data ElementName="deposit_total_status" Type="int32" />
<Data ElementName="deposit_last_coin" Type="int64" />
<Data ElementName="deposit_last_status" Type="int32" />
<Data ElementName="deposit_time_stamp" Type="int32" />
</Data>
<Data ElementName="num_history" Type="int8" />
<Data ElementName="history_array" Type="Array" ArraySizeVariable="num_history">
<Data ElementName="history_name" Type="EQ2_16Bit_String" />
<Data ElementName="history_coins" Type="int64" />
<Data ElementName="history_status" Type="int32" />
<Data ElementName="history_time_stamp" Type="int32" />
<Data ElementName="history_reason" Type="EQ2_16Bit_String" />
<Data ElementName="history_add_flag" Type="int8" />
</Data>
<Data ElementName="num_amenities" Type="int8" />
<Data ElementName="amenities_array" Type="Array" ArraySizeVariable="num_amenities">
<Data ElementName="amenities_name" Type="EQ2_16Bit_String" />
<Data ElementName="amenities_unknown1" Type="int8" Size="2" />
<Data ElementName="amenities_purchace_coins" Type="int64" />
<Data ElementName="amenities_purchace_status" Type="int32" />
<Data ElementName="amenities_upkeep_coins" Type="int64" />
<Data ElementName="amenities_upkeep_status" Type="int32" />
<Data ElementName="amenities_item_id" Type="int32" />
<Data ElementName="amenities_unknown2" Type="int8" Size="3" />
<Data ElementName="amenities_icon" Type="int16" />
<Data ElementName="amenities_item_count" Type="int8" />
<Data ElementName="amenities_purchased" Type="int8" />
<Data ElementName="amenities_unknown3" Type="int8" Size="2" />
</Data>
<Data ElementName="allow_item_collection" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="placed_item_count" Type="int16" />
<Data ElementName="max_placed_items" Type="int16" />
<Data ElementName="actual_item_count" Type="int16" />
<Data ElementName="moving_crate_item_count" Type="int16" />
<Data ElementName="unknown5" Type="int32" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="coin_reduction" Type="float" />
<Data ElementName="additional_slots" Type="int32" />
<Data ElementName="allowed_amenities" Type="int32" />
<Data ElementName="total_amenities" Type="int32" />
<Data ElementName="get_portal_flag" Type="int8" />
<Data ElementName="unknown6" Size="5" Type="int8" />
<Data ElementName="housing_market" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Size="1" Type="int8" />
<Data ElementName="housing_type" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Size="2" Type="int8" />
</Struct>
<Struct Name="WS_PlayerHouseBaseScreen" ClientVersion="57080" OpcodeName="OP_PlayerHouseBaseScreenMsg">
<Data ElementName="house_id" Type="int64" />
<Data ElementName="character_id" Type="int32" />
<Data ElementName="unknown00" Type="int32" />
<Data ElementName="spawn_id" Type="int32" /><!-- spawn id of the door -->
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="upkeep_cost_coins" Type="int64" />
<Data ElementName="upkeep_cost_status" Type="int32" />
<Data ElementName="escrow_balance_coins" Type="int64" />
<Data ElementName="escrow_balance_status" Type="int32" />
<Data ElementName="upkeep_due" Type="int32" />
<Data ElementName="privlage_level" Type="int8" />
<Data ElementName="house_type" Type="int8" />
<Data ElementName="inside_house" Type="int8" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="num_access" Type="int8" />
<Data ElementName="access_array" Type="Array" ArraySizeVariable="num_access">
<Data ElementName="access_unknown1" Type="int8" Size="8" />
<Data ElementName="access_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Data>
<Data ElementName="public_access_level" Type="int8" />
<Data ElementName="num_deposit" Type="int8" />
<Data ElementName="deposit_array" Type="Array" ArraySizeVariable="num_deposit">
<Data ElementName="deposit_name" Type="EQ2_16Bit_String" />
<Data ElementName="deposit_total_coin" Type="int64" />
<Data ElementName="deposit_total_status" Type="int32" />
<Data ElementName="deposit_last_coin" Type="int64" />
<Data ElementName="deposit_last_status" Type="int32" />
<Data ElementName="deposit_time_stamp" Type="int32" />
</Data>
<Data ElementName="num_history" Type="int8" />
<Data ElementName="history_array" Type="Array" ArraySizeVariable="num_history">
<Data ElementName="history_name" Type="EQ2_16Bit_String" />
<Data ElementName="history_coins" Type="int64" />
<Data ElementName="history_status" Type="int32" />
<Data ElementName="history_time_stamp" Type="int32" />
<Data ElementName="history_reason" Type="EQ2_16Bit_String" />
<Data ElementName="history_add_flag" Type="int8" />
</Data>
<Data ElementName="num_amenities" Type="int8" />
<Data ElementName="amenities_array" Type="Array" ArraySizeVariable="num_amenities">
<Data ElementName="amenities_name" Type="EQ2_16Bit_String" />
<Data ElementName="amenities_unknown1" Type="int8" Size="2" />
<Data ElementName="amenities_purchace_coins" Type="int64" />
<Data ElementName="amenities_purchace_status" Type="int32" />
<Data ElementName="amenities_upkeep_coins" Type="int64" />
<Data ElementName="amenities_upkeep_status" Type="int32" />
<Data ElementName="amenities_item_id" Type="int32" />
<Data ElementName="amenities_unknown2" Type="int8" Size="3" />
<Data ElementName="amenities_icon" Type="int16" />
<Data ElementName="amenities_item_count" Type="int8" />
<Data ElementName="amenities_purchased" Type="int8" />
<Data ElementName="amenities_unknown3" Type="int8" Size="2" />
</Data>
<Data ElementName="allow_item_collection" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="placed_item_count" Type="int16" />
<Data ElementName="max_placed_items" Type="int16" />
<Data ElementName="actual_item_count" Type="int16" />
<Data ElementName="moving_crate_item_count" Type="int16" />
<Data ElementName="unknown5" Type="int32" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="coin_reduction" Type="float" />
<Data ElementName="additional_slots" Type="int32" />
<Data ElementName="allowed_amenities" Type="int32" />
<Data ElementName="total_amenities" Type="int32" />
<Data ElementName="get_portal_flag" Type="int8" />
<Data ElementName="unknown6" Size="5" Type="int8" />
<Data ElementName="housing_market" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Size="1" Type="int8" />
<Data ElementName="housing_type" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Size="2" Type="int8" />
<Data ElementName="house_name2" Type="EQ2_16Bit_String" />
<Data ElementName="house_id2" Type="int64" />
</Struct>
<Struct Name="WS_PlayerHouseBaseScreen" ClientVersion="63119" OpcodeName="OP_PlayerHouseBaseScreenMsg">
<Data ElementName="house_id" Type="int64" />
<Data ElementName="character_id" Type="int32" />
<Data ElementName="unknown00" Type="int32" />
<Data ElementName="spawn_id" Type="int32" /><!-- spawn id of the door -->
<Data ElementName="house_name" Type="EQ2_16Bit_String" />
<Data ElementName="zone_name" Type="EQ2_16Bit_String" />
<Data ElementName="upkeep_cost_coins" Type="int64" />
<Data ElementName="upkeep_cost_status" Type="int32" />
<Data ElementName="escrow_balance_coins" Type="int64" />
<Data ElementName="escrow_balance_status" Type="int32" />
<Data ElementName="upkeep_due" Type="int32" />
<Data ElementName="privlage_level" Type="int8" />
<Data ElementName="house_type" Type="int8" />
<Data ElementName="inside_house" Type="int8" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="num_access" Type="int8" />
<Data ElementName="access_array" Type="Array" ArraySizeVariable="num_access">
<Data ElementName="access_unknown1" Type="int8" Size="8" />
<Data ElementName="access_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Data>
<Data ElementName="public_access_level" Type="int8" />
<Data ElementName="num_deposit" Type="int8" />
<Data ElementName="deposit_array" Type="Array" ArraySizeVariable="num_deposit">
<Data ElementName="deposit_name" Type="EQ2_16Bit_String" />
<Data ElementName="deposit_total_coin" Type="int64" />
<Data ElementName="deposit_total_status" Type="int32" />
<Data ElementName="deposit_last_coin" Type="int64" />
<Data ElementName="deposit_last_status" Type="int32" />
<Data ElementName="deposit_time_stamp" Type="int32" />
</Data>
<Data ElementName="num_history" Type="int8" />
<Data ElementName="history_array" Type="Array" ArraySizeVariable="num_history">
<Data ElementName="history_name" Type="EQ2_16Bit_String" />
<Data ElementName="history_coins" Type="int64" />
<Data ElementName="history_status" Type="int32" />
<Data ElementName="history_time_stamp" Type="int32" />
<Data ElementName="history_reason" Type="EQ2_16Bit_String" />
<Data ElementName="history_add_flag" Type="int8" />
</Data>
<Data ElementName="num_amenities" Type="int8" />
<Data ElementName="amenities_array" Type="Array" ArraySizeVariable="num_amenities">
<Data ElementName="amenities_name" Type="EQ2_16Bit_String" />
<Data ElementName="amenities_unknown1" Type="int8" Size="2" />
<Data ElementName="amenities_purchace_coins" Type="int64" />
<Data ElementName="amenities_purchace_status" Type="int32" />
<Data ElementName="amenities_upkeep_coins" Type="int64" />
<Data ElementName="amenities_upkeep_status" Type="int32" />
<Data ElementName="amenities_item_id" Type="int32" />
<Data ElementName="amenities_unknown2" Type="int8" Size="3" />
<Data ElementName="amenities_icon" Type="int16" />
<Data ElementName="amenities_item_count" Type="int8" />
<Data ElementName="amenities_purchased" Type="int8" />
<Data ElementName="amenities_unknown3" Type="int8" Size="2" />
</Data>
<Data ElementName="allow_item_collection" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="placed_item_count" Type="int16" />
<Data ElementName="max_placed_items" Type="int16" />
<Data ElementName="actual_item_count" Type="int16" />
<Data ElementName="moving_crate_item_count" Type="int16" />
<Data ElementName="unknown5" Type="int32" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="coin_reduction" Type="float" />
<Data ElementName="additional_slots" Type="int32" />
<Data ElementName="allowed_amenities" Type="int32" />
<Data ElementName="total_amenities" Type="int32" />
<Data ElementName="get_portal_flag" Type="int8" />
<Data ElementName="unknown6a" Type="int8" Size="1"/>
<Data ElementName="unknown6b" Type="int8" Size="1"/>
<Data ElementName="unknown6c" Type="int8" Size="1"/>
<Data ElementName="unknown6d" Type="int8" Size="1"/>
<Data ElementName="unknown6e" Type="int8" Size="1"/>
<Data ElementName="housing_market" Type="EQ2_16Bit_String" />
<Data ElementName="unknown7" Size="1" Type="int8" />
<Data ElementName="housing_type" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Size="2" Type="int8" />
<Data ElementName="house_name2" Type="EQ2_16Bit_String" />
<Data ElementName="house_id2" Type="int64" />
</Struct>
<Struct Name="WS_EnterHouse" ClientVersion="1" OpcodeName="OP_EnterHouseMsg">
<Data ElementName="house_id" Type="int32" />
</Struct>
<Struct Name="WS_EnterHouse" ClientVersion="547" OpcodeName="OP_EnterHouseMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="house_id" Type="int64" />
<Data ElementName="spawn_id" Type="int32" />
</Struct>
<Struct Name="WS_PayUpkeep" ClientVersion="1" OpcodeName="OP_PayHouseUpkeepMsg">
<Data ElementName="house_id" Type="int32" />
<Data ElementName="unknown" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_PayUpkeep" ClientVersion="547" OpcodeName="OP_PayHouseUpkeepMsg">
2020-02-28 07:17:24 -07:00
<Data ElementName="house_id" Type="int64" />
<Data ElementName="unknown" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_HouseItemsList" ClientVersion="1" OpcodeName="OP_HouseItemsList">
<Data ElementName="num_items" Type="int32" />
<Data ElementName="items_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="location" Type="int8" />
<Data ElementName="unknown6" Type="int32" />
</Data>
<Data ElementName="is_widget_door" Type="int16" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_HouseItemsList" ClientVersion="57048" OpcodeName="OP_HouseItemsList">
<Data ElementName="num_items" Type="int32" />
<Data ElementName="items_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="unknown4" Type="int8" />
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="location" Type="int8" />
<Data ElementName="unknown6" Type="int32" />
</Data>
<Data ElementName="is_widget_door" Type="int16" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_HouseItemsList" ClientVersion="60114" OpcodeName="OP_HouseItemsList">
<Data ElementName="num_items" Type="int32" />
<Data ElementName="items_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="tradeable" Type="int8" /> <!-- when 0 should must? item_description -->
<Data ElementName="is_notrade" Type="EQ2_16Bit_String" IfVariableNotEquals="tradeable_%i"/>
<Data ElementName="unknown5" Type="int8"/>
<Data ElementName="ui_tab_flag1" Type="int8"/>
<Data ElementName="first_item_description" Type="EQ2_16Bit_String" IfVariableNotSet="ui_tab_flag1_%i"/>
<Data ElementName="ui_tab_flag2" Type="int8"/>
<Data ElementName="second_item_description" Type="EQ2_16Bit_String" IfVariableNotSet="ui_tab_flag2_%i"/>
<Data ElementName="icon" Type="int16" />
<Data ElementName="location" Type="int8" />
<Data ElementName="item_state" Type="int8"/>
<Data ElementName="item_state_extended" Type="int8" size="3" /> <!-- could be more of the item_state -->
</Data>
<Data ElementName="unknown7" Type="int8" />
<!-- setting to 1 causes it to populate on the items tab with the widget door aka /house command. 0 its a popup (moving crate). -->
<Data ElementName="is_widget_door" Type="int16" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_HouseItemsList" ClientVersion="63119" OpcodeName="OP_HouseItemsList">
<Data ElementName="num_items" Type="int32" />
<Data ElementName="items_array" Type="Array" ArraySizeVariable="num_items">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="item_name" Type="EQ2_16Bit_String" />
<Data ElementName="status_reduction" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="tradeable" Type="int8" />
<Data ElementName="is_notrade" Type="EQ2_16Bit_String" IfVariableNotSet="tradeable"/>
<Data ElementName="unknown5" Type="int8" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="location" Type="int8" />
<Data ElementName="unknown6" Type="int32" />
</Data>
<Data ElementName="unknown7" Type="int16" />
</Struct>
<Struct Name="WS_QuestJournalWaypoint" ClientVersion="1" OpcodeName="OP_QuestJournalWaypointMsg">
<Data ElementName="num_quests" Type="int32" />
<Data ElementName="quest_array" Type="Array" ArraySizeVariable="num_quests">
<Data ElementName="quest_id" Type="int32" />
<Data ElementName="quest_tracked" Type="int8" />
</Data>
</Struct>
<!-- JA: New structs, just guessing to get them into PacketAnalyzer -->
<Struct Name="WS_AdvancementRequest" ClientVersion="1" OpcodeName="OP_AdvancementRequestMsg">
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="unknown2" Type="int8" Size="7" />
</Struct>
<Struct Name="WS_AfterInvSpellUpdate" ClientVersion="1" OpcodeName="OP_AfterInvSpellUpdate">
<Data ElementName="unknown1" Type="int16" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="21" />
</Struct>
<Struct Name="WS_CharacterCreatedDungeons" ClientVersion="1" OpcodeName="OP_CharacterCreatedDungeons">
<Data ElementName="unknown" Type="int16" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="num_dungeon" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="dungeon_array" Type="Array" ArraySizeVariable="num_dungeon">
<Data ElementName="dungeon_id" Type="int64" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="dungeon_layout" Type="EQ2_16Bit_String" />
<Data ElementName="dungeon_location" Type="EQ2_16Bit_String" />
<Data ElementName="dungeon_location2" Type="EQ2_16Bit_String" />
<Data ElementName="dungeon_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5" Type="int32" />
<Data ElementName="published" Type="int8" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="int32" />
<Data ElementName="unknown9" Type="int32" />
</Data>
</Struct>
<Struct Name="WS_CharacterCreatedDungeons" ClientVersion="57048" OpcodeName="OP_CharacterCreatedDungeons">
<Data ElementName="unknown" Type="int16" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="num_dungeon" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="dungeon_array" Type="Array" ArraySizeVariable="num_dungeon">
<Data ElementName="dungeon_id" Type="int64" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="dungeon_layout" Type="EQ2_16Bit_String" />
<Data ElementName="dungeon_location" Type="EQ2_16Bit_String" />
<Data ElementName="dungeon_location2" Type="EQ2_16Bit_String" />
<Data ElementName="dungeon_name" Type="EQ2_16Bit_String" />
<Data ElementName="unknown5" Type="int32" />
<Data ElementName="published" Type="int8" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="int32" />
<Data ElementName="unknown9" Type="int32" />
</Data>
</Struct>
<Struct Name="WS_CharacterHousingList" ClientVersion="1" OpcodeName="OP_CharacterHousingList">
<Data ElementName="num_houses" Type="int32" />
<Data ElementName="house_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int64" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" />
<Data ElementName="house_city" Type="EQ2_16Bit_String" />
<Data ElementName="house_address" Type="EQ2_16Bit_String" />
<Data ElementName="house_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int32" Size="3" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="index" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="2" />
</Data>
</Struct>
<Struct Name="WS_CharacterHousingList" ClientVersion="57048" OpcodeName="OP_CharacterHousingList">
<Data ElementName="num_houses" Type="int32" />
<Data ElementName="house_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int64" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" />
<Data ElementName="house_city" Type="EQ2_16Bit_String" />
<Data ElementName="house_address" Type="EQ2_16Bit_String" />
<Data ElementName="house_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int32" Size="3" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="index" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="2" />
</Data>
</Struct>
<Struct Name="WS_CharacterHousingList" ClientVersion="63119" OpcodeName="OP_CharacterHousingList">
<Data ElementName="num_houses" Type="int32" />
<Data ElementName="house_array" Type="Array" ArraySizeVariable="num_houses">
<Data ElementName="house_id" Type="int64" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="zone" Type="EQ2_16Bit_String" />
<Data ElementName="house_city" Type="EQ2_16Bit_String" />
<Data ElementName="house_address" Type="EQ2_16Bit_String" />
<Data ElementName="house_description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2a" Type="int32" Size="1" />
<Data ElementName="unknown2b" Type="int32" Size="1" />
<Data ElementName="unknown2c" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="1" />
<Data ElementName="index" Type="int16" Size="1" />
<Data ElementName="unknown4" Type="int8" Size="2" />
</Data>
</Struct>
<Struct Name="WS_ChatFiltersMsg" ClientVersion="1" OpcodeName="OP_ChatFiltersMsg">
<Data ElementName="unknown1" Type="int16" Size="1" />
<Data ElementName="Game_Chat_Text" Type="int16" Size="1" />
<Data ElementName="Chat_Text" Type="int16" Size="1" />
<Data ElementName="Character_Text" Type="int16" Size="1" />
<Data ElementName="Spells_Combat" Type="int16" Size="1" />
<Data ElementName="Spells_Combat2" Type="int16" Size="1" />
<Data ElementName="Combat_Other_Command" Type="int16" Size="1" />
<Data ElementName="Merchant_Consider_Trade_Voice" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_ChatFiltersMsg" ClientVersion="57048" OpcodeName="OP_ChatFiltersMsg">
<Data ElementName="unknown1" Type="int16" Size="1" />
<Data ElementName="Game_Chat_Text" Type="int16" Size="1" />
<Data ElementName="Chat_Text" Type="int16" Size="1" />
<Data ElementName="Character_Text" Type="int16" Size="1" />
<Data ElementName="Spells_Combat" Type="int16" Size="1" />
<Data ElementName="Spells_Combat2" Type="int16" Size="1" />
<Data ElementName="Combat_Other_Command" Type="int16" Size="1" />
<Data ElementName="Merchant_Consider_Trade_Voice" Type="int16" Size="1" />
</Struct>
<Struct Name="WS_Research" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_Research">
<Data ElementName="unknown1" Type="int32" size="1"/>
<Data ElementName="unknown2" Type="int32" size="1"/>
<Data ElementName="spell_id" Type="int32" size="1"/>
<Data ElementName="completion_time" Type="int32" size="1"/>
<Data ElementName="current_time" Type="int32" size="1"/>
<Data ElementName="unknown3" Type="int32" size="1" />
<Data ElementName="unknown4" Type="int32" size="1" />
<Data ElementName="unknown5" Type="int32" size="1" />
<Data ElementName="unknown6" Type="int32" size="1" />
<Data ElementName="unknown7" Type="int32" size="1" />
<Data ElementName="unknown8" Type="int32" size="1" />
<Data ElementName="unknown9" Type="int32" size="1" />
<Data ElementName="unknown10" Type="int32" size="1" />
<Data ElementName="unknown11" Type="int32" size="1"/>
<Data ElementName="unknown12" Type="int32" size="1"/>
<Data ElementName="unknown13" Type="int32" size="1"/>
<Data ElementName="unknown14" Type="int32" size="1"/>
<Data ElementName="unknown15" Type="int8" size="1"/>
</Struct>
<Struct Name="WS_Research" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_Research">
<Data ElementName="unknown1" Type="int32" size="1"/>
<Data ElementName="unknown2" Type="int32" size="1"/>
<Data ElementName="spell_id" Type="int32" size="1"/>
<Data ElementName="completion_time" Type="int32" size="1"/>
<Data ElementName="current_time" Type="int32" size="1"/>
<Data ElementName="unknown3" Type="int32" size="1" />
<Data ElementName="unknown4" Type="int32" size="1" />
<Data ElementName="unknown5" Type="int32" size="1" />
<Data ElementName="unknown6" Type="int32" size="1" />
<Data ElementName="unknown7" Type="int32" size="1" />
<Data ElementName="unknown8" Type="int32" size="1" />
<Data ElementName="unknown9" Type="int32" size="1" />
<Data ElementName="unknown10" Type="int32" size="1" />
<Data ElementName="unknown11" Type="int32" size="1"/>
<Data ElementName="unknown12" Type="int32" size="1"/>
<Data ElementName="unknown13" Type="int32" size="1"/>
<Data ElementName="unknown14" Type="int32" size="1"/>
<Data ElementName="unknown15" Type="int8" size="1"/>
</Struct>
<Struct Name="WS_VoiceChatServer" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_VoiceChatServer">
<Data ElementName="unknown" Type="int8" size="1"/>
<Data ElementName="Server_Url" Type="EQ2_16Bit_String" />
<Data ElementName="Character_Info" Type="EQ2_16Bit_String" />
<Data ElementName="Connection_key" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_CampAbortedMsg" ClientVersion="1" OpcodeName="OP_CampAbortedMsg">
</Struct>
<Struct Name="WS_CharacterMounts" ClientVersion="1" OpcodeName="OP_CharacterMounts">
<Data ElementName="num_mount" Type="int16" />
<Data ElementName="mount_array" Type="Array" ArraySizeVariable="num_mount">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown1" Type="int16" />
<Data ElementName="index" Type="int8" />
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="unknown4" Type="int16" />
<Data ElementName="unknown5" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_CharacterMounts" ClientVersion="57048" OpcodeName="OP_CharacterMounts">
<Data ElementName="num_mount" Type="int16" />
<Data ElementName="mount_array" Type="Array" ArraySizeVariable="num_mount">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown1" Type="int16" />
<Data ElementName="index" Type="int8" />
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="unknown4" Type="int16" />
<Data ElementName="unknown5" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_CharacterMounts" ClientVersion="57080" OpcodeName="OP_CharacterMounts">
<Data ElementName="num_mount" Type="int16" />
<Data ElementName="mount_array" Type="Array" ArraySizeVariable="num_mount">
<Data ElementName="unique_id" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="index" Type="int8" />
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="unknown4" Type="int16" />
<Data ElementName="unknown5" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_LoadCalendarEvents" ClientVersion="1" OpcodeName="OP_LoadCalendarEvents">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="account_id" Type="int32" />
<Data ElementName="num_events" Type="int32" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_events">
<Data ElementName="index" Type="int16" />
<Data ElementName="unknown1" Type="int16" />
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="event" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" /> <!-- Start date? -->
<Data ElementName="unknown5" Type="int32" /> <!-- End Date? -->
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="category" Type="int32" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="unknown9" Type="int32" />
<Data ElementName="unknown10" Type="int32" />
<Data ElementName="unknown11" Type="int32" />
<Data ElementName="unknown12" Type="int16" />
<Data ElementName="unknown13" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_LoadCalendarEvents" ClientVersion="57048" OpcodeName="OP_LoadCalendarEvents">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="account_id" Type="int32" />
<Data ElementName="num_events" Type="int32" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_events">
<Data ElementName="index" Type="int16" />
<Data ElementName="unknown1" Type="int16" />
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="event" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" /> <!-- Start date? -->
<Data ElementName="unknown5" Type="int32" /> <!-- End Date? -->
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="category" Type="int32" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="unknown9" Type="int32" />
<Data ElementName="unknown10" Type="int32" />
<Data ElementName="unknown11" Type="int32" />
<Data ElementName="unknown12" Type="int16" />
<Data ElementName="unknown13" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_LoadWelcomeWindow" ClientVersion="1" OpcodeName="OP_LoadWelcomeWindow">
<Data ElementName="daily_mission" Type="EQ2_16Bit_String" />
<Data ElementName="daily_mission2" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="daily_hotzone" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="7" />
<Data ElementName="community_message" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="EQ2_16Bit_String" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="unknown9" Type="EQ2_16Bit_String" />
<Data ElementName="unknown10" Type="int32" />
<Data ElementName="unknown11" Type="EQ2_16Bit_String" />
<Data ElementName="unknown12" Type="int32" />
<Data ElementName="motd" Type="EQ2_16Bit_String" />
<Data ElementName="unknown13" Type="int32" />
<Data ElementName="unknown14" Type="EQ2_16Bit_String" />
<Data ElementName="unknown15" Type="int32" />
<Data ElementName="unknown16" Type="EQ2_16Bit_String" />
<Data ElementName="unknown17" Type="int32" />
<Data ElementName="unknown18" Type="EQ2_16Bit_String" />
<Data ElementName="unknown19" Type="int32" />
<Data ElementName="unknown20" Type="EQ2_16Bit_String" />
<Data ElementName="unknown21" Type="int32" />
<Data ElementName="unknown22" Type="EQ2_16Bit_String" />
<Data ElementName="unknown23" Type="int32" />
<Data ElementName="unknown24" Type="EQ2_16Bit_String" />
<Data ElementName="unknown25" Type="int32" />
<Data ElementName="unknown26" Type="EQ2_16Bit_String" />
<Data ElementName="daily_item_id" Type="int32" />
<Data ElementName="daily_item_crc" Type="int32" />
<Data ElementName="daily_item_price" Type="int32" />
<Data ElementName="daily_item_price2" Type="int32" />
<Data ElementName="daily_item_unknown1" Type="int32" />
<Data ElementName="daily_item_unknown2" Type="int32" />
<Data ElementName="daily_item_icon" Type="int16" />
<Data ElementName="daily_item" Type="EQ2_16Bit_String" />
<Data ElementName="daily_item_unknown3" Type="int8" Size="7"/>
<Data ElementName="num_featured" Type="int16" />
<Data ElementName="featured_array" Type="Array" ArraySizeVariable="num_featured">
<Data ElementName="featured_item_id" Type="int32" />
<Data ElementName="featured_item_crc" Type="int32" />
<Data ElementName="featured_item_price" Type="int32" />
<Data ElementName="featured_item_price2" Type="int32" />
<Data ElementName="featured_item_unknown1" Type="int32" />
<Data ElementName="featured_item_unknown2" Type="int32" />
<Data ElementName="featured_item_icon" Type="int16" />
<Data ElementName="featured_item" Type="EQ2_16Bit_String" />
<Data ElementName="featured_item_unknown3" Type="int8" Size="7"/>
</Data>
<Data ElementName="daily_item_description" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_LoadWelcomeWindow" ClientVersion="57048" OpcodeName="OP_LoadWelcomeWindow">
<Data ElementName="daily_mission" Type="EQ2_16Bit_String" />
<Data ElementName="daily_mission2" Type="EQ2_16Bit_String" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="daily_hotzone" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" Size="7" />
<Data ElementName="community_message" Type="EQ2_16Bit_String" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="EQ2_16Bit_String" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown7" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Type="int32" />
<Data ElementName="unknown9" Type="EQ2_16Bit_String" />
<Data ElementName="unknown10" Type="int32" />
<Data ElementName="unknown11" Type="EQ2_16Bit_String" />
<Data ElementName="unknown12" Type="int32" />
<Data ElementName="motd" Type="EQ2_16Bit_String" />
<Data ElementName="unknown13" Type="int32" />
<Data ElementName="unknown14" Type="EQ2_16Bit_String" />
<Data ElementName="unknown15" Type="int32" />
<Data ElementName="unknown16" Type="EQ2_16Bit_String" />
<Data ElementName="unknown17" Type="int32" />
<Data ElementName="unknown18" Type="EQ2_16Bit_String" />
<Data ElementName="unknown19" Type="int32" />
<Data ElementName="unknown20" Type="EQ2_16Bit_String" />
<Data ElementName="unknown21" Type="int32" />
<Data ElementName="unknown22" Type="EQ2_16Bit_String" />
<Data ElementName="unknown23" Type="int32" />
<Data ElementName="unknown24" Type="EQ2_16Bit_String" />
<Data ElementName="unknown25" Type="int32" />
<Data ElementName="unknown26" Type="EQ2_16Bit_String" />
<Data ElementName="daily_item_id" Type="int32" />
<Data ElementName="daily_item_crc" Type="int32" />
<Data ElementName="daily_item_price" Type="int32" />
<Data ElementName="daily_item_price2" Type="int32" />
<Data ElementName="daily_item_unknown1" Type="int32" />
<Data ElementName="daily_item_unknown2" Type="int32" />
<Data ElementName="daily_item_icon" Type="int16" />
<Data ElementName="daily_item" Type="EQ2_16Bit_String" />
<Data ElementName="daily_item_unknown3" Type="int8" Size="7"/>
<Data ElementName="num_featured" Type="int16" />
<Data ElementName="featured_array" Type="Array" ArraySizeVariable="num_featured">
<Data ElementName="featured_item_id" Type="int32" />
<Data ElementName="featured_item_crc" Type="int32" />
<Data ElementName="featured_item_price" Type="int32" />
<Data ElementName="featured_item_price2" Type="int32" />
<Data ElementName="featured_item_unknown1" Type="int32" />
<Data ElementName="featured_item_unknown2" Type="int32" />
<Data ElementName="featured_item_icon" Type="int16" />
<Data ElementName="featured_item" Type="EQ2_16Bit_String" />
<Data ElementName="featured_item_unknown3" Type="int8" Size="7"/>
</Data>
<Data ElementName="daily_item_description" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_DefaultGroupOptionsRequestMsg" ClientVersion="1" OpcodeName="OP_DefaultGroupOptionsRequestMsg">
</Struct>
<Struct Name="WS_DoneLoadingEntityResourcesMsg" ClientVersion="1" OpcodeName="OP_DoneLoadingEntityResourcesMsg">
</Struct>
<Struct Name="WS_DoneLoadingUIResourcesMsg" ClientVersion="546" OpcodeName="OP_DoneLoadingUIResourcesMsg">
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_DoneLoadingZoneResourcesMsg" ClientVersion="1" OpcodeName="OP_DoneLoadingZoneResourcesMsg">
<Data ElementName="num_resources" Type="int32" />
<Data ElementName="resources_array" Type="Array" ArraySizeVariable="num_resources">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="unknown1" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_DoneSendingInitialEntitiesMsg" ClientVersion="1" OpcodeName="OP_DoneSendingInitialEntitiesMsg">
</Struct>
<Struct Name="WS_DungeonMakerItemRequest" ClientVersion="1" OpcodeName="OP_DungeonMakerItemRequest">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int8" />
<Data ElementName="unknown4" Type="int8" />
</Struct>
<Struct Name="WS_PredictionUpdateMsg" ClientVersion="1" OpcodeName="OP_PredictionUpdateMsg">
</Struct>
<Struct Name="WS_QuestJournalInspectMsg" ClientVersion="1" OpcodeName="OP_QuestJournalInspectMsg">
<Data ElementName="quest_id" Type="int32" />
<Data ElementName="player_crc" Type="int32" />
<Data ElementName="unknown" Type="int8" Size="6" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
</Struct>
<Struct Name="WS_SatMsg" ClientVersion="1" OpcodeName="OP_SatMsg">
</Struct>
<Struct Name="WS_KnowledgebaseRequestMsg" ClientVersion="1" OpcodeName="OP_KnowledgebaseRequestMsg">
<Data ElementName="request_id" Type="int32" />
<Data ElementName="search_keyword" Type="EQ2_16Bit_String" />
<Data ElementName="search_article" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_KnowledgebaseResponseMsg" ClientVersion="1" OpcodeName="OP_KnowledgebaseResponseMsg">
<Data ElementName="unknown" Type="int8" Size="6" />
<Data ElementName="num_articles" Type="int16" />
<Data ElementName="article_array" Type="Array" ArraySizeVariable="num_articles">
<Data ElementName="article" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="num_match_percents2" Type="int16" />
<Data ElementName="match_percents_array" Type="Array" ArraySizeVariable="num_match_percents">
<Data ElementName="percentage" Type="int16" />
</Data>
<Data ElementName="num_article_summaries" Type="int16" />
<Data ElementName="article_summaries_array" Type="Array" ArraySizeVariable="num_article_summaries">
<Data ElementName="summary" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="article" Type="EQ2_16Bit_String" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="WS_SysClient" ClientVersion="1" OpcodeName="OP_SysClient">
<Data ElementName="sys_client" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_WaypointReplyMsg" ClientVersion="1" OpcodeName="OP_WaypointReplyMsg">
<Data ElementName="num_waypoint" Type="int32" />
<Data ElementName="waypoint_array" Type="Array" ArraySizeVariable="num_waypoint">
<Data ElementName="location" Type="EQ2_16Bit_String" />
<Data ElementName="type" Type="int8" />
<Data ElementName="index" Type="int32" />
</Data>
<Data ElementName="selected_waypoint" Type="int32" />
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_CsCategoryRequestMsg" ClientVersion="1" OpcodeName="OP_CsCategoryRequestMsg">
<Data ElementName="unknown" Type="int32" />
</Struct>
<Struct Name="WS_KnowledgebaseRequestMsg" ClientVersion="1" OpcodeName="OP_KnowledgebaseRequestMsg">
<Data ElementName="unknown" Type="int32" />
<Data ElementName="unknown1" Type="int16" />
<Data ElementName="unknown2" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_CSTicketHeaderRequestMsg" ClientVersion="1" OpcodeName="OP_CSTicketHeaderRequestMsg">
<Data ElementName="unknown" Type="int32" />
</Struct>
<Struct Name="WS_LFGGroupSearch" ClientVersion="1" OpcodeName="OP_LFGGroupSearch">
<Data ElementName="type" Type="int32" />
<Data ElementName="account_id" Type="int32" />
</Struct>
<Struct Name="WS_MarketPlacePrices" ClientVersion="1" OpcodeName="OP_MarketPlacePrices">
<Data ElementName="account_id" Type="int32" />
<Data ElementName="character_id" Type="int32" />
<Data ElementName="unknown" Type="int32" />
<Data ElementName="num_prices" Type="int32" />
<Data ElementName="prices_array" Type="Array" ArraySizeVariable="num_prices">
<Data ElementName="soe_id" Type="EQ2_16Bit_String" />
<Data ElementName="currency" Type="EQ2_16Bit_String" />
<Data ElementName="price1" Type="int32" />
<Data ElementName="price2" Type="int32" />
</Data>
</Struct>
<Struct Name="WS_UpdateHouseAccessDataMsg" ClientVersion="1" OpcodeName="OP_UpdateHouseAccessDataMsg">
<Data ElementName="success" Type="int32"/>
<Data ElementName="house_id" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
</Struct>
<Struct Name="WS_UpdateHouseAccessDataMsg" ClientVersion="547" OpcodeName="OP_UpdateHouseAccessDataMsg">
<Data ElementName="success" Type="int32"/>
2020-02-28 07:17:24 -07:00
<Data ElementName="house_id" Type="int64" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
</Struct>
<Struct Name="WS_HouseDefaultAccessSetMsg" ClientVersion="1" OpcodeName="OP_HouseDefaultAccessSetMsg" >
<Data ElementName="house_id" Type="int64" Size="1"/>
<Data ElementName="access_level" Type="int8" />
</Struct>
<Struct Name="WS_HouseAccessSetMsg" ClientVersion="1" OpcodeName="OP_HouseAccessSetMsg" >
<Data ElementName="house_id" Type="int64" Size="1"/>
<Data ElementName="player_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Struct>
<Struct Name="WS_HouseAccessRemoveMsg" ClientVersion="1" OpcodeName="OP_HouseAccessRemoveMsg" >
<Data ElementName="house_id" Type="int64" Size="1"/>
<Data ElementName="unique_id" Type="int64" />
<Data ElementName="access_level" Type="int8" />
</Struct>
<Struct Name="WS_PlayerHouseAccessUpdateMsg" ClientVersion="1" OpcodeName="OP_PlayerHouseAccessUpdateMsg">
<Data ElementName="unique_id" Type="int64" />
<Data ElementName="access_delete" Type="int8" />
<Data ElementName="access_name" Type="EQ2_16Bit_String" />
<Data ElementName="access_level" Type="int8" />
</Struct>
<Struct Name="WS_KeymapNoneMsg" ClientVersion="1" OpcodeName="OP_KeymapNoneMsg">
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown0" Type="int8" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="unknown" Type="int8" Size="60" />
</Struct>
<Struct Name="WS_KeymapDataMsg" ClientVersion="1" OpcodeName="OP_KeymapDataMsg">
<Data ElementName="packed_size" Type="int32" />
<Data ElementName="unknown6" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
</Struct>
<Struct Name="WS_MarketFundsUpdate" ClientVersion="1" OpcodeName="OP_MarketFundsUpdate">
<Data ElementName="account_id" Type="int32" />
<Data ElementName="unknown" Type="int8" Size="1" />
<Data ElementName="character_id" Type="int32" />
<Data ElementName="current_balance" Type="int32" />
<Data ElementName="unknown1" Type="int8" Size="11" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int8" Size="2" />
</Struct>
<Struct Name="WS_MarketAddFundsRequest" ClientVersion="1" OpcodeName="OP_MarketAddFundsRequest">
<Data ElementName="unknown" Type="int32" />
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="unknown3" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int32" />
<Data ElementName="unknown5" Type="int8" Size="5" />
</Struct>
<Struct Name="WS_ZoneBgInstanceList" ClientVersion="1" OpcodeName="OP_ZoneBgInstanceList">
<Data ElementName="packet_type" Type="int8" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="num_list" Type="int16" />
<Data ElementName="list_array" Type="Array" ArraySizeVariable="num_list">
<Data ElementName="index" Type="int32" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="unknown3a" Type="int8" />
<Data ElementName="max_level" Type="int32" />
<Data ElementName="min_level" Type="int32" />
<Data ElementName="unknown3d" Type="int32" />
<Data ElementName="unknown3e" Type="int32" />
<Data ElementName="unknown3f" Type="int32" />
<Data ElementName="unknown3g" Type="int32" />
<Data ElementName="unknown3h" Type="int32" />
<Data ElementName="unknown3h2" Type="int8" />
<Data ElementName="unknown3i" Type="int32" />
<Data ElementName="unknown3j" Type="int8" />
<Data ElementName="unknown3j2" Type="int8" />
<Data ElementName="unknown3k" Type="int16" />
<Data ElementName="unknown3m" Type="int32" />
<Data ElementName="game_name" Type="EQ2_16Bit_String" />
<Data ElementName="game_description" Type="EQ2_16Bit_String" />
<Data ElementName="category" Type="EQ2_16Bit_String" />
<Data ElementName="image_name" Type="EQ2_16Bit_String" />
<Data ElementName="file" Type="EQ2_16Bit_String" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="unknown4a" Type="int32" Size="1" />
</Data>
</Struct>
<!-- <Struct Name="WS_ZoneBgInstanceListUpdate" ClientVersion="1" OpcodeName="OP_ZoneBgInstanceList">
<Data ElementName="packet_type" Type="int8" />
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="unknown2" Type="int8" />
<Data ElementName="num_list" Type="int16" />
<Data ElementName="list_array" Type="Array" ArraySizeVariable="num_list">
<Data ElementName="index" Type="int32" />
<Data ElementName="category" Type="int8" />
<Data ElementName="unknown3" Type="int32" />
</Data>
<Data ElementName="unknown5" Type="int8" Size="5" />
</Struct> -->
<Struct Name="WS_UIEvent" ClientVersion="1" OpcodeName="OP_UIEvent">
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
<Data ElementName="unknown3" Type="int32" Size="1" />
<Data ElementName="unknown4" Type="int16" Size="1" />
<Data ElementName="unknown5" Type="int8" Size="1" />
<Data ElementName="unknown6" Type="int8" Size="3" />
<Data ElementName="unknown7" Type="int8" Size="1" />
<Data ElementName="ui_event" Type="EQ2_16Bit_String" />
<Data ElementName="unknown8" Type="int32" Size="1" />
<Data ElementName="unknown9" Type="int32" Size="1" />
<Data ElementName="ui_window" Type="EQ2_16Bit_String" />
<Data ElementName="ui_element" Type="EQ2_16Bit_String" />
<Data ElementName="ui_action" Type="EQ2_16Bit_String" />
<Data ElementName="unknown10" Type="int8" Size="8"/>
</Struct>
<Struct Name="WS_MoveableObjectPlacementCriteri" ClientVersion="1" OpcodeName="OP_MoveableObjectPlacementCriteri">
<Data ElementName="unknown" Type="int32" Size="1" />
<Data ElementName="unknown1" Type="int32" Size="1" />
<Data ElementName="unknown2" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_MapFogDataUpdateMsg" ClientVersion="1" OpcodeName="OP_MapFogDataUpdateMsg">
<Data ElementName="num_fog2_locations" Type="int8" />
<Data ElementName="locations2_array" Type="Array" ArraySizeVariable="num_fog2_locations">
<Data ElementName="fog2_location_unknown1" Type="int32" />
<Data ElementName="fog2_location_name" Type="EQ2_16Bit_String" Size="1" />
<Data ElementName="fog2_location_bounds1_x" Type="float" />
<Data ElementName="fog2_location_bounds1_z" Type="float" />
<Data ElementName="fog2_location_bounds2_x" Type="float" />
<Data ElementName="fog2_location_bounds2_z" Type="float" />
<Data ElementName="fog2_unknown4" Type="int16" />
2020-03-02 16:47:18 -07:00
<Data ElementName="fog2_compressed_size" Type="int16" Size="1" OversizedValue="255" OversizedByte="255" />
2020-02-28 07:17:24 -07:00
<Data ElementName="fog2_compressed_data_array" Type="Array" ArraySizeVariable="fog2_compressed_size">
<Data ElementName="fog2_compressed_data" Type="int8" />
</Data>
</Data>
</Struct>
<Struct Name="WS_Launchpad" ClientVersion="1" OpcodeName="OP_Launchpad">
<Data ElementName="ui_event" Type="EQ2_16Bit_String" />
</Struct>
<Struct Name="WS_Weakness" ClientVersion="1" OpcodeName="OP_Weakness">
<Data ElementName="weakness" Type="EQ2_16Bit_String" />
<Data ElementName="duration" Type="float" Size="1" />
</Struct>
<Struct Name="WS_SavageBar" ClientVersion="1" OpcodeName="OP_SavageBarInitMsg">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="bar" Type="int8" Size="1" />
<Data ElementName="unknown" Type="int8" Size="3" />
<Data ElementName="slot" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_CurrentPet" ClientVersion="1" OpcodeName="OP_CurrentPet">
<Data ElementName="active" Type="int8" />
<Data ElementName="spawn_id" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_ReadyToZoneMsg" ClientVersion="1" OpcodeName="OP_ReadyToZoneMsg">
</Struct>
<Struct Name="WS_RecipeBook" ClientVersion="1" OpcodeName="OP_RecipeBook">
<Data ElementName="unknown" Type="int32" Size="1" />
</Struct>
<Struct Name="WS_RecipeListUnknown" ClientVersion="1" OpcodeName="OP_RecipeListUnknown">
<Data ElementName="unknown" Type="int8" Size="1" />
</Struct>
<Struct Name="WS_DailyObjectives" ClientVersion="1" OpcodeName="OP_DailyObjectives">
<Data ElementName="num_daily" Type="int32" />
<Data ElementName="events_array" Type="Array" ArraySizeVariable="num_daily">
<Data ElementName="index" Type="int8" />
<Data ElementName="icon" Type="int16" />
<Data ElementName="unknown" Type="int16" />
<Data ElementName="quest_name" Type="EQ2_16Bit_String" />
</Data>
<Data ElementName="unknown1" Type="int32" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="quest_type" Type="EQ2_16Bit_String" />
<Data ElementName="unknown3" Type="int32" />
<Data ElementName="unknown4" Type="int32" />
</Struct>
<Struct Name="WS_JournalQuestStoryline" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_JournalQuestStoryline">
<Data ElementName="unknown" Type="int8" />
<Data ElementName="num_journal" Type="int16" />
<Data ElementName="journal_array" Type="Array" ArraySizeVariable="num_journal">
<Data ElementName="header_index" Type="int16" />
<Data ElementName="journal_id" Type="int32" />
<Data ElementName="header_status" Type="int8" /> <!-- 0-do not have 1- partial 2-completed -->
<Data ElementName="header_name" Type="EQ2_16Bit_String" />
<Data ElementName="header_description" Type="EQ2_16Bit_String" />
<Data ElementName="journal_entry_total" Type="int16" />
<Data ElementName="journal_entry_array" Type="Array" ArraySizeVariable="journal_entry_total">
<Data ElementName="entry_index" Type="int8" />
<Data ElementName="journal_id2" Type="int32" />
<Data ElementName="entry_name" Type="EQ2_16Bit_String" />
<Data ElementName="entry_description" Type="EQ2_16Bit_String" />
<Data ElementName="available" Type="int8" />
<Data ElementName="entry_status" Type="int8" /> <!-- 0-do not have 1- partial 2-completed -->
<Data ElementName="unknown33" Type="int16" />
</Data>
</Data>
</Struct>
<Struct Name="WS_ZoneChangeMsg" ClientVersion="1" OpcodeName="OP_ChangeZoneMsg">
<Data ElementName="account_id" Type="int32" Size="1" />
<Data ElementName="key" Type="int32" Size="1" />
<Data ElementName="ip_address" Type="EQ2_16Bit_String" />
<Data ElementName="port" Type="int16" Size="1" />
</Struct>
<Struct Name="Substruct_TargetSpellEffects" ClientVersion="546">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="spell_icon" Type="int16" />
<Data ElementName="spell_icon_backdrop" Type="int16" />
<Data ElementName="spell_triggercount" Type="int8" />
</Struct>
2020-02-28 07:17:24 -07:00
<Struct Name="Substruct_TargetSpellEffects" ClientVersion="1188">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="spell_icon" Type="int16" />
<Data ElementName="spell_triggercount" Type="int16" />
<Data ElementName="spell_icon_backdrop" Type="int16" />
</Struct>
<Struct Name="Substruct_TargetSpellEffects" ClientVersion="60055">
<Data ElementName="spell_id" Type="int32" />
<Data ElementName="spell_icon" Type="int16" />
<Data ElementName="spell_triggercount" Type="int16" />
<Data ElementName="spell_icon_backdrop" Type="int16" />
<Data ElementName="unknown" Type="int16" />
</Struct>
<Struct Name="WS_PlayerKnockback" ClientVersion="1" OpcodeName="OP_PerformPlayerKnockbackMsg">
<Data ElementName="target_x" Type="float" />
<Data ElementName="target_y" Type="float" />
<Data ElementName="target_z" Type="float" />
<Data ElementName="vertical_movement" Type="float" />
<Data ElementName="horizontal_movement" Type="float" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="use_player_heading" Type="int8" />
<Data ElementName="unknown2" Type="int8" Size="4" />
</Struct>
<Struct Name="WS_HearDispell" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EQHearDispellCmd">
<Data ElementName="spell_name" Type="EQ2_8Bit_String" />
<Data ElementName="dispell_name" Type="EQ2_8Bit_String" />
<Data ElementName="caster" Type="int32" />
<Data ElementName="target" Type="int32" />
<Data ElementName="type" Type="int8" />
</Struct>
<Struct Name="WS_HeritageMsg" ClientVersion="1" OpcodeName="OP_HeritageMsg">
<Data ElementName="chat_text" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int8" /> <!-- 4 -->
<Data ElementName="unknown2" Type="int16" />
<Data ElementName="screen_text" Type="EQ2_8Bit_String" />
<Data ElementName="ui_heritage_complete" Type="EQ2_8Bit_String" /> <!-- ui_heritage_complete -->
<Data ElementName="unknown3" Type="int16" />
<Data ElementName="unknown4" Type="int8" /> <!-- 40 -->
<Data ElementName="unknown5" Type="int8" /> <!-- 40 -->
<Data ElementName="unknown6" Type="int8" />
</Struct>
<Struct Name="WS_LikeOption" ClientVersion="1" OpcodeName="OP_LikeOption">
<Data ElementName="unknown1" Type="int8" />
<Data ElementName="popup" Type="int8" /> <!-- 1 value for server -> client -->
<Data ElementName="response" Type="int8" /> <!-- 0 un/un 1 li/un 2 un/li 3 li/li -->
</Struct>
<Struct Name="WS_HeroicOpportunity" ClientVersion="1" OpcodeName="OP_UpdateOpportunityMsg">
<Data ElementName="name" Type="EQ2_16Bit_String" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
<Data ElementName="id" Type="int32" />
<Data ElementName="wheel_type" Type="int8" />
<Data ElementName="unknown" Type="int8" />
<Data ElementName="order" Type="int8" />
<Data ElementName="shift_icon" Type="int16" />
<Data ElementName="starter_icon" Type="int16" />
<Data ElementName="time_total" Type="float" />
<Data ElementName="time_left" Type="float" />
<Data ElementName="icon1" Type="int16" />
<Data ElementName="icon2" Type="int16" />
<Data ElementName="icon3" Type="int16" />
<Data ElementName="icon4" Type="int16" />
<Data ElementName="icon5" Type="int16" />
<Data ElementName="icon6" Type="int16" />
<Data ElementName="countered1" Type="int8" />
<Data ElementName="countered2" Type="int8" />
<Data ElementName="countered3" Type="int8" />
<Data ElementName="countered4" Type="int8" />
<Data ElementName="countered5" Type="int8" />
<Data ElementName="countered6" Type="int8" />
</Struct>
<Struct Name="WS_OpenCharCust" ClientVersion="1" OpcodeName="OP_OpenCharCust">
<Data ElementName="type" Type="int8" />
<Data ElementName="race_id" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="unknown" Type="int8" Size="3" />
</Struct>
<Struct Name="WS_UpdateMaintainedExamine" ClientVersion="1188" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="time_stamp" Type="int32" />
<Data ElementName="slot_pos" Type="int32" />
<Data ElementName="update_value" Type="int32" />
<Data ElementName="update_type" Type="int64" />
</Struct>
<Struct Name="WS_UpdateMaintainedExamine" ClientVersion="1193" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="time_stamp" Type="int32" />
<Data ElementName="slot_pos" Type="int32" />
<Data ElementName="update_value" Type="int32" />
<Data ElementName="update_type" Type="int64" />
</Struct>
<Struct Name="WS_UpdateMaintainedExamine" ClientVersion="1198" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="time_stamp" Type="int32" />
<Data ElementName="slot_pos" Type="int32" />
<Data ElementName="update_value" Type="int32" />
<Data ElementName="update_type" Type="int64" />
</Struct>
<Struct Name="WS_UpdateMaintainedExamine" ClientVersion="57048" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="time_stamp" Type="int32" />
<Data ElementName="slot_pos" Type="int32" />
<Data ElementName="update_value" Type="int32" />
<Data ElementName="update_type" Type="int64" />
</Struct>
<Struct Name="WS_UpdateMaintainedExamine" ClientVersion="57107" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqExamineInfoCmd">
<Data ElementName="info_header" Substruct="WS_ExamineInfoHeader" Size="1" />
<Data ElementName="time_stamp" Type="int32" />
<Data ElementName="slot_pos" Type="int32" />
<Data ElementName="update_value" Type="int32" />
<Data ElementName="update_type" Type="int64" />
</Struct>
<Struct Name="WS_PlayerTrade" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdatePlayerTradeCmd">
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="type" Type="int16" />
<!-- top half -->
<Data ElementName="your_item_count" Type="int8" />
<Data ElementName="your_item_array" Type="Array" ArraySizeVariable="your_item_count">
<Data ElementName="your_item_name" Type="EQ2_8Bit_String" />
<Data ElementName="your_item_slot" Type ="int8" />
<Data ElementName="your_item_unknown3" Type ="int8" Size="3" />
<Data ElementName="your_item_quantity" Type="int16" />
<Data ElementName="your_item_icon" Type="int16" />
<Data ElementName="your_item_unknown4" Type ="int8" Size="4" />
<Data ElementName="your_item_background" Type="int8" />
<Data ElementName="your_item_unknown4" Type ="int8" Size="7" />
</Data>
<Data ElementName="your_copper" Type="int32" />
<Data ElementName="your_silver" Type="int32" />
<Data ElementName="your_gold" Type="int32" />
<Data ElementName="your_plat" Type="int32" />
<!-- lower half -->
<Data ElementName="their_item_count" Type="int8" />
<Data ElementName="their_item_array" Type="Array" ArraySizeVariable="their_item_count">
<Data ElementName="their_item_name" Type="EQ2_8Bit_String" />
<Data ElementName="their_item_slot" Type="int8" />
<Data ElementName="their_item_unknown3" Type ="int8" Size="3" />
<Data ElementName="their_item_quantity" Type="int16" />
<Data ElementName="their_item_icon" Type="int16" />
<Data ElementName="their_item_unknown4" Type ="int8" Size="4" />
<Data ElementName="their_item_background" Type="int8" />
<Data ElementName="their_item_unknown4" Type ="int8" Size="7" />
</Data>
<Data ElementName="their_copper" Type="int32" />
<Data ElementName="their_silver" Type="int32" />
<Data ElementName="their_gold" Type="int32" />
<Data ElementName="their_plat" Type="int32" />
</Struct>
<Struct Name="WS_PlayerTrade" ClientVersion="1208" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateStoreCmd"> <!-- Figured out in a 1208 client -->
2020-02-28 07:17:24 -07:00
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="type" Type="int16" />
<!-- top half -->
<Data ElementName="your_item_count" Type="int8" />
<Data ElementName="your_item_array" Type="Array" ArraySizeVariable="your_item_count">
<Data ElementName="your_item_unknown1" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="your_item_unknown2" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="your_item_slot" Type="int8" />
<Data ElementName="your_item_unknown3" Type ="int8" Size="3" />
<Data ElementName="your_item_id" Type="int32" />
<Data ElementName="your_item_quantity" Type="int16" />
<Data ElementName="your_item_icon" Type="int16" />
<Data ElementName="your_item_unknown4" Type="int8" />
<Data ElementName="your_item_background" Type="int8" />
<Data ElementName="your_item_unknown5" Type="int8" Size="8" />
</Data>
<Data ElementName="your_copper" Type="int32" />
<Data ElementName="your_silver" Type="int32" />
<Data ElementName="your_gold" Type="int32" />
<Data ElementName="your_plat" Type="int32" />
<!-- lower half -->
<Data ElementName="their_item_count" Type="int8" />
<Data ElementName="their_item_array" Type="Array" ArraySizeVariable="their_item_count">
<Data ElementName="their_item_unknown1" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="their_item_unknown2" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="their_item_slot" Type="int8" />
<Data ElementName="their_item_unknown3" Type ="int8" Size="3" />
<Data ElementName="their_item_id" Type="int32" />
<Data ElementName="their_item_quantity" Type="int16" />
<Data ElementName="their_item_icon" Type="int16" />
<Data ElementName="their_item_unknown4" Type="int8" />
<Data ElementName="their_item_background" Type="int8" />
<Data ElementName="their_item_unknown5" Type="int8" Size="8" />
</Data>
<Data ElementName="their_copper" Type="int32" />
<Data ElementName="their_silver" Type="int32" />
<Data ElementName="their_gold" Type="int32" />
<Data ElementName="their_plat" Type="int32" />
</Struct>
<Struct Name="WS_PlayerTrade" ClientVersion="60114" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateStoreCmd"> <!-- Figured out in a 1208 client -->
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="type" Type="int16" />
<!-- top half -->
<Data ElementName="your_item_count" Type="int8" />
<Data ElementName="your_item_array" Type="Array" ArraySizeVariable="your_item_count">
<Data ElementName="your_item_unknown1" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="your_item_unknown2" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="your_item_slot" Type="int8" />
<Data ElementName="your_item_unknown3" Type ="int8" Size="3" />
<Data ElementName="your_item_id" Type="int32" />
<Data ElementName="your_item_quantity" Type="int32" />
<Data ElementName="your_item_icon" Type="int16" />
<Data ElementName="your_item_unknown4" Type="int8" />
<Data ElementName="your_item_background" Type="int8" />
<Data ElementName="your_item_unknown5" Type="int8" Size="8" />
</Data>
<Data ElementName="your_copper" Type="int32" />
<Data ElementName="your_silver" Type="int32" />
<Data ElementName="your_gold" Type="int32" />
<Data ElementName="your_plat" Type="int32" />
<!-- lower half -->
<Data ElementName="their_item_count" Type="int8" />
<Data ElementName="their_item_array" Type="Array" ArraySizeVariable="their_item_count">
<Data ElementName="their_item_unknown1" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="their_item_unknown2" Type="int8" /> <!-- needs to be set to 1 -->
<Data ElementName="their_item_slot" Type="int8" />
<Data ElementName="their_item_unknown3" Type ="int8" Size="3" />
<Data ElementName="their_item_id" Type="int32" />
<Data ElementName="their_item_quantity" Type="int32" />
<Data ElementName="their_item_icon" Type="int16" />
<Data ElementName="their_item_unknown4" Type="int8" />
2020-02-28 07:17:24 -07:00
<Data ElementName="their_item_background" Type="int8" />
<Data ElementName="their_item_unknown5" Type="int8" Size="8" />
</Data>
<Data ElementName="their_copper" Type="int32" />
<Data ElementName="their_silver" Type="int32" />
<Data ElementName="their_gold" Type="int32" />
<Data ElementName="their_plat" Type="int32" />
</Struct>
<Struct Name="WS_PlayerTrade" ClientVersion="63225" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateStoreCmd" >
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="type" Type="int16" />
<Data ElementName="your_item_count" Type="int8" />
<Data ElementName="your_item_array" Type="Array" ArraySizeVariable="your_item_count">
<Data ElementName="your_item_name" Type="EQ2_8Bit_String" />
<Data ElementName="your_item_slot" Type="int8" />
<Data ElementName="your_item_unknown2" Type="int8" />
<Data ElementName="your_item_unknown3" Type="int8" Size="2" />
<Data ElementName="your_item_id" Type="int32" />
<Data ElementName="your_item_quantity" Type="int16" />
<Data ElementName="your_item_unknown3a" Type="int16" />
<Data ElementName="your_item_icon" Type="int16" />
<Data ElementName="your_item_unknown4" Type="int8" />
<Data ElementName="your_item_background" Type="int8" />
<Data ElementName="your_item_unknown5" Type="int8" Size="8" />
</Data>
<Data ElementName="your_copper" Type="int32" />
<Data ElementName="your_silver" Type="int32" />
<Data ElementName="your_gold" Type="int32" />
<Data ElementName="your_plat" Type="int32" />
<Data ElementName="their_item_count" Type="int8" />
<Data ElementName="their_item_array" Type="Array" ArraySizeVariable="their_item_count">
<Data ElementName="their_item_name" Type="EQ2_8Bit_String" />
<Data ElementName="their_item_unknown2" Type="int8" />
<Data ElementName="their_item_slot" Type="int8" />
<Data ElementName="their_item_unknown3" Type="int8" Size="2" />
<Data ElementName="their_item_id" Type="int32" />
<Data ElementName="their_item_quantity" Type="int16" />
<Data ElementName="their_item_unknown3a" Type="int16" />
<Data ElementName="their_item_icon" Type="int16" />
<Data ElementName="their_item_unknown4" Type="int8" />
<Data ElementName="their_item_background" Type="int8" />
<Data ElementName="their_item_unknown5" Type="int8" Size="8" />
</Data>
<Data ElementName="their_copper" Type="int32" />
<Data ElementName="their_silver" Type="int32" />
<Data ElementName="their_gold" Type="int32" />
<Data ElementName="their_plat" Type="int32" />
</Struct>
<Struct Name="WS_QuestJournalVisible" ClientVersion="1" OpcodeName="OP_QuestJournalSetVisibleMsg">
<Data ElementName="unknown" Type="int32" />
<Data ElementName="quest_id" Type="int32" />
<Data ElementName="visible" Type="int8" />
</Struct>
<Struct Name="WS_PaperdollImage" ClientVersion="1" OpcodeName="OP_PaperdollImage">
<Data ElementName="packetIndex" Type="int8" /> <!-- Current garbage packet (0 based index) -->
<Data ElementName="totalNumPackets" Type="int8" /> <!-- Number of garbage packets that should be sent -->
<Data ElementName="unknown" Type="int64" /> <!-- -->
<Data ElementName="image_type" Type="int8" /> <!-- 0 for paper doll, 1 for head shot -->
<Data ElementName="unknown2" Type="int8" Size="2" /><!-- usually "00 00 00 00" -->
<Data ElementName="imageSize" Type="int32" /> <!-- number of bytes left in this packet -->
<Data ElementName="pngDataArray" Type="Array" ArraySizeVariable="imageSize">
<Data ElementName="pngData" Type="int8" /> <!-- Actual picture data -->
</Data>
</Struct>
<Struct Name="WS_PaperdollImage" ClientVersion="60000" OpcodeName="OP_PaperdollImage">
<Data ElementName="packetIndex" Type="int8" />
<Data ElementName="totalNumPackets" Type="int8" />
<Data ElementName="unknown" Type="int64" />
<Data ElementName="image_type" Type="int8" />
<Data ElementName="unknown2" Type="int32" />
<Data ElementName="imageSize" Type="int32" />
<Data ElementName="pngDataArray" Type="Array" ArraySizeVariable="imageSize">
<Data ElementName="pngData" Type="int8" />
</Data>
</Struct>
<Struct Name="WS_FlightPathsMsg" ClientVersion="1" OpcodeName="OP_FlightPathsMsg">
<Data ElementName="number_of_routes" Type="int16" />
<Data ElementName="route_length_array" Type="Array" ArraySizeVariable="number_of_routes">
<Data ElementName="route_length" Type="int16" />
</Data>
<Data ElementName="number_of_routes2" Type="int16" IfVariableNotSet="number_of_routes" />
<Data ElementName="routes_array" Type="Array" ArraySizeVariable="number_of_routes2">
<Data ElementName="route_length2" Type="int16" IfVariableSet="number_of_routes" />
<Data ElementName="route_coords_array" Type="Array" ArraySizeVariable="route_length2">
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
</Data>
</Data>
<Data ElementName="number_of_routes3" Type="int16" IfVariableNotSet="number_of_routes" />
<Data ElementName="route_info" Type="Array" ArraySizeVariable="number_of_routes3">
<Data ElementName="ground_mount" Type="int8" />
<Data ElementName="allow_dismount" Type="int8" />
</Data>
<Data ElementName="number_of_routes4" Type="int16" IfVariableNotSet="number_of_routes" />
<Data ElementName="route_unknown" Type="Array" ArraySizeVariable="number_of_routes4">
<Data ElementName="unknown" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_FlightPathsMsg" ClientVersion="1193" OpcodeName="OP_RestartZoneMsg">
<Data ElementName="number_of_routes" Type="int16" />
<Data ElementName="route_length_array" Type="Array" ArraySizeVariable="number_of_routes">
<Data ElementName="route_length" Type="int16" />
</Data>
<Data ElementName="number_of_routes2" Type="int16" IfVariableNotSet="number_of_routes" />
<Data ElementName="routes_array" Type="Array" ArraySizeVariable="number_of_routes2">
<Data ElementName="route_length2" Type="int16" IfVariableSet="number_of_routes" />
<Data ElementName="route_coords_array" Type="Array" ArraySizeVariable="route_length2">
<Data ElementName="x" Type="float" />
<Data ElementName="y" Type="float" />
<Data ElementName="z" Type="float" />
</Data>
</Data>
<Data ElementName="number_of_routes3" Type="int16" IfVariableNotSet="number_of_routes" />
<Data ElementName="route_info" Type="Array" ArraySizeVariable="number_of_routes3">
<Data ElementName="ground_mount" Type="int8" />
<Data ElementName="allow_dismount" Type="int8" />
</Data>
<Data ElementName="number_of_routes4" Type="int16" IfVariableNotSet="number_of_routes" />
<Data ElementName="route_unknown" Type="Array" ArraySizeVariable="number_of_routes4">
<Data ElementName="unknown" Type="int16" />
</Data>
</Struct>
<Struct Name="WS_CSToolsRequest" ClientVersion="1" OpcodeName="OP_CSToolsRequestMsg">
<Data ElementName="toggle" Type="int8" />
</Struct>
<Struct Name="WS_ReadyForTakeOff" ClientVersion="1" OpcodeName="OP_ReadyForTakeOffMsg">
</Struct>
<Struct Name="WS_UpdateSign" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqUpdateSignWidgetCmd" ClientVersion="1">
<Data ElementName="title" Type="EQ2_16Bit_String" />
<Data ElementName="description" Type="EQ2_16Bit_String" />
<Data ElementName="spawn_id" Type="int32" />
<Data ElementName="description_language" Type="int8" />
</Struct>
<Struct Name="WS_DietyAbilities" ClientVersion="1" OpcodeName="OP_DietyAbilityWindow">
<Data ElementName="num_abilities" Type="int16" />
<Data ElementName="deity_ability_array" Type="Array" ArraySizeVariable="num_abilities">
<Data ElementName="diety_ability_name" Type="EQ2_16Bit_String" />
<Data ElementName="description_language" Type="int8" Size="35" />
</Data>
</Struct>
<Struct Name="WS_SubmitCharCust" ClientVersion="1" OpcodeName="OP_SubmitCharCust">
<Data ElementName="type" Type="int8" />
<Data ElementName="race_id" Type="int8" />
<Data ElementName="gender" Type="int8" />
<Data ElementName="is_soga" Type="int8" />
<Data ElementName="version" Type="int8" />
<Data ElementName="race_file" Type="EQ2_16Bit_String" />
<Data ElementName="skin_color" Type="EQ2_Color" />
<Data ElementName="skin_color2" Type="EQ2_Color" />
<Data ElementName="eye_color" Type="EQ2_Color" />
<Data ElementName="hair_color1" Type="EQ2_Color" />
<Data ElementName="hair_color2" Type="EQ2_Color" />
<Data ElementName="hair_highlight" Type="EQ2_Color" />
<Data ElementName="unknown1" Type="int8" Size="26" />
<Data ElementName="hair_file" Type="EQ2_16Bit_String" />
<Data ElementName="hair_type_color" Type="EQ2_Color" />
<Data ElementName="hair_type_highlight_color" Type="EQ2_Color" />
<Data ElementName="face_file" Type="EQ2_16Bit_String" />
<Data ElementName="hair_face_color" Type="EQ2_Color" />
<Data ElementName="hair_face_highlight_color" Type="EQ2_Color" />
<Data ElementName="wing_file" Type="EQ2_16Bit_String" />
<Data ElementName="wing_color1" Type="EQ2_Color" />
<Data ElementName="wing_color2" Type="EQ2_Color" />
<Data ElementName="chest_file" Type="EQ2_16Bit_String" />
<Data ElementName="shirt_color" Type="EQ2_Color" />
<Data ElementName="unknown_chest_color" Type="EQ2_Color" />
<Data ElementName="legs_file" Type="EQ2_16Bit_String" />
<Data ElementName="pants_color" Type="EQ2_Color" />
<Data ElementName="unknown_legs_color" Type="EQ2_Color" />
<Data ElementName="unknown2" Type="EQ2_Color" />
<Data ElementName="eyes2" Type="float" Size="3" />
<Data ElementName="ears" Type="float" Size="3" />
<Data ElementName="eye_brows" Type="float" Size="3" />
<Data ElementName="cheeks" Type="float" Size="3" />
<Data ElementName="lips" Type="float" Size="3" />
<Data ElementName="chin" Type="float" Size="3" />
<Data ElementName="nose" Type="float" Size="3" />
<Data ElementName="body_size" Type="float" />
<Data ElementName="body_age" Type="float" />
</Struct>
<Struct Name="WS_PerformCameraShakeMsg" ClientVersion="1" OpcodeName="OP_PerformCameraShakeMsg">
<Data ElementName="intensity" Type="float" /> <!-- client supported range is 0.01 - 1.0 -->
</Struct>
<Struct Name="WS_PerformCameraShakeMsg" ClientVersion="547" OpcodeName="OP_PerformCameraShakeMsg">
<Data ElementName="intensity" Type="float" /> <!-- client supported range is 0.01 - 1.0 -->
<Data ElementName="direction" Type="int8" /> <!-- 0 = up/down camera shake, 1 = all around shake of camera -->
2020-02-28 07:17:24 -07:00
</Struct>
<Struct Name="WS_CommitAATemplate" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_CommitAATemplate" >
<Data ElementName="unknown1" Type="int32" Size="3"/>
<Data ElementName="string1" Type="EQ2_16Bit_String" />
</Struct>
2020-03-02 16:47:18 -07:00
<Struct Name="WS_EqTargetItemCmd" ClientVersion="1" OpcodeName="OP_ClientCmdMsg" OpcodeType="OP_EqTargetItemCmd" >
<Data ElementName="request_id" Type="int32"/>
<Data ElementName="request_type" Type="int8"/>
<Data ElementName="unknownff" Type="int8"/>
<Data ElementName="item_array_size" Type="int16"/>
<Data ElementName="item_array" Type="Array" ArraySizeVariable="item_array_size">
<Data ElementName="item_id" Type="int32"/>
</Data>
</Struct>
<Struct Name="WS_EncounterBroken" ClientVersion="1" OpcodeName="OP_EncounterBrokenMsg">
<Data ElementName="message" Type="EQ2_16Bit_String" />
<Data ElementName="unknown1" Type="int32"/>
<Data ElementName="unknown2" Type="int8"/>
<Data ElementName="unknown3" Type="int8"/>
<Data ElementName="unknown4" Type="int8"/>
<Data ElementName="unknown5" Type="int8"/>
<Data ElementName="unknown6" Type="int8"/>
</Struct>
</EQ2Emulator>