819 lines
52 KiB
Go

package substructs
import "eq2emu/internal/common"
// Supporting structs for nested arrays
type EffectItem struct {
SubBulletFlag uint8 `eq2:"int8"`
Effect common.EQ2String16 `eq2:"string16"`
}
type EffectItemV546 struct {
SubBulletFlag uint8 `eq2:"int8"`
Effect common.EQ2String16 `eq2:"string16"`
Percentage uint8 `eq2:"int8"`
}
type SetStatItem struct {
SetStatType uint8 `eq2:"int8"`
SetStatSubtype uint8 `eq2:"int8"`
SetValue int16 `eq2:"sint16,oversized=127,oversizedbyte=127"`
SetStatName common.EQ2String8 `eq2:"string8"`
}
type SetStatItemV1188 struct {
SetStatType uint16 `eq2:"int16,oversized=127,oversizedbyte=127"`
SetStatSubtype uint16 `eq2:"int16,oversized=127,oversizedbyte=127,ifnotequals=set_stat_type_%i"`
SetValue any `eq2:"float,type2=sint16,type2criteria=set_stat_type!=6,oversized=127,oversizedbyte=127"`
SetStatName common.EQ2String8 `eq2:"string8"`
SetStatUnknown uint8 `eq2:"int8"`
}
type SetStatItemV63119 struct {
SetStatType uint16 `eq2:"int16,oversized=127,oversizedbyte=127"`
SetStatSubtype uint16 `eq2:"int16,oversized=127,oversizedbyte=127,ifnotequals=set_stat_type_%i"`
SetValue any `eq2:"float,type2=sint32,type2criteria=set_stat_type!=6"`
SetStatName common.EQ2String8 `eq2:"string8"`
SetStatUnknown uint32 `eq2:"int32"`
SetStatUnknownMJ uint16 `eq2:"int16"`
}
type SetEffectItem struct {
SetSubBulletFlag uint8 `eq2:"int8"`
SetEffect common.EQ2String16 `eq2:"string16"`
SetPercentage uint8 `eq2:"int8"`
}
type SetBonusItem struct {
SetNumNeeded uint8 `eq2:"int8"`
SetStatCount uint8 `eq2:"int8"`
SetStatArray []SetStatItem `eq2:"array,arraysize=SetStatCount"`
NumSetEffects uint8 `eq2:"int8"`
SetEffectArray []SetEffectItem `eq2:"array,arraysize=NumSetEffects"`
}
type SetBonusItemV1188 struct {
SetBonusItemsNeeded uint8 `eq2:"int8"`
SetBonusStatsCount uint8 `eq2:"int8"`
SetBonusStatsArray []SetStatItemV1188 `eq2:"array,arraysize=SetBonusStatsCount"`
SetBonusEffectsCount uint8 `eq2:"int8"`
SetBonusEffectsArray []SetBonusEffectItem `eq2:"array,arraysize=SetBonusEffectsCount"`
}
type SetBonusItemV63119 struct {
SetBonusItemsNeeded uint8 `eq2:"int8"`
SetBonusStatsCount uint8 `eq2:"int8"`
SetBonusStatsArray []SetStatItemV63119 `eq2:"array,arraysize=SetBonusStatsCount"`
SetBonusEffectsCount uint8 `eq2:"int8"`
SetBonusEffectsArray []SetBonusEffectItem `eq2:"array,arraysize=SetBonusEffectsCount"`
}
type SetBonusEffectItem struct {
SetBonusEffectSubBulletFlag uint8 `eq2:"int8"`
SetBonusEffectText common.EQ2String16 `eq2:"string16"`
SetBonusEffectPercentage uint8 `eq2:"int8"`
}
type SetItemsItem struct {
SetItemsUnknown1 uint8 `eq2:"int8"`
SetItemsUnknown2 uint8 `eq2:"int8"`
SetItemName common.EQ2String16 `eq2:"string16"`
}
type AdornItem struct {
AdornSlot uint8 `eq2:"int8"`
AdornUnknown uint32 `eq2:"int32"`
AdornName common.EQ2String16 `eq2:"string16"`
AdornTimeLeft float32 `eq2:"float"`
}
type AdornItemV1188 struct {
AdornUnknown1 uint8 `eq2:"int8"`
AdornSlot uint8 `eq2:"int8"`
AdornUnknown2 []uint8 `eq2:"int8,len=2"`
AdornItemID uint32 `eq2:"int32"`
AdornName common.EQ2String16 `eq2:"string16"`
AdornTimeLeft float32 `eq2:"float"`
AdornUnknown3 uint32 `eq2:"int32"`
}
type AdornItemV63119 struct {
AdornSlot uint8 `eq2:"int8"`
AdornUnknown1 uint8 `eq2:"int8"`
AdornUnknown2 []uint8 `eq2:"int8,len=2"`
AdornItemID uint32 `eq2:"int32"`
AdornName common.EQ2String16 `eq2:"string16"`
AdornTimeLeft float32 `eq2:"float"`
AdornUnknown3 uint32 `eq2:"int32"`
}
type AdornStatItem struct {
AdornStatType uint16 `eq2:"int16,oversized=127,oversizedbyte=127"`
AdornStatSubtype int16 `eq2:"sint16,oversized=127,oversizedbyte=127,ifnotequals=adorn_stat_type_%i_%i"`
AdornValue any `eq2:"float,type2=sint16,type2criteria=stat_type!=6,oversized=127,oversizedbyte=127"`
AdornStatName common.EQ2String8 `eq2:"string8"`
AdornStatLevel uint8 `eq2:"int8"`
}
type AdornStatItemV63119 struct {
AdornStatType uint16 `eq2:"int16,oversized=127,oversizedbyte=127"`
AdornStatSubtype int16 `eq2:"sint16,oversized=127,oversizedbyte=127,ifnotequals=adorn_stat_type_%i_%i"`
AdornValue any `eq2:"float,type2=sint32,type2criteria=adorn_stat_type!=6,oversized=127,oversizedbyte=127"`
AdornStatName common.EQ2String8 `eq2:"string8"`
AdornStatLevel uint8 `eq2:"int8"`
AdornStatUnknown1 []uint8 `eq2:"int8,len=5"`
}
type AdornLevelItem struct {
NumAdornStats uint32 `eq2:"int32"`
AdornStatsArray []AdornStatItem `eq2:"array,arraysize=NumAdornStats"`
}
type AdornLevelItemV63119 struct {
NumAdornStats uint32 `eq2:"int32"`
AdornStatsArray []AdornStatItemV63119 `eq2:"array,arraysize=NumAdornStats"`
}
type TierlineItem struct {
Addon common.EQ2String16 `eq2:"string16"`
TierlineUnknown []uint8 `eq2:"int8,len=5"`
}
// Version structs
type SubstructItemFooterV1 struct {
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV373 struct {
NumEffects uint8 `eq2:"int8,ifflagnotset=loot"`
EffectArray []EffectItem `eq2:"array,arraysize=NumEffects,ifflagnotset=loot"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV546 struct {
NumEffects uint8 `eq2:"int8,ifflagnotset=loot"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects,ifflagnotset=loot"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV562 struct {
// NOTE: Parser needs enhancement for comma-separated conditions
// Original: IfVariableNotSet="header_info_header_unknown_0_0,header_unknown_0"
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
StackSize uint8 `eq2:"int8"`
SetName common.EQ2String8 `eq2:"string8"`
NumSets uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetArray []SetBonusItem `eq2:"array,arraysize=NumSets"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo uint32 `eq2:"int32,ifvariableset=footer_set_name_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info2_0"`
DisplayCharges uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV860 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
StackSize uint8 `eq2:"int8"`
SetName common.EQ2String8 `eq2:"string8"`
NumSets uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetArray []SetBonusItem `eq2:"array,arraysize=NumSets"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo uint32 `eq2:"int32,ifvariableset=footer_set_name_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info2_0"`
FooterUnknown5 uint8 `eq2:"int8"`
DisplayCharges uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV893 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint8 `eq2:"int8"`
FooterUnknown3 uint8 `eq2:"int8"`
SetName common.EQ2String8 `eq2:"string8"`
NumSets uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetArray []SetBonusItem `eq2:"array,arraysize=NumSets"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo uint32 `eq2:"int32,ifvariableset=footer_set_name_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info2_0"`
FooterUnknown5 uint8 `eq2:"int8"`
DisplayCharges uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV927 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint8 `eq2:"int8"`
FooterUnknown3 uint8 `eq2:"int8"`
SetName common.EQ2String8 `eq2:"string8"`
NumSets uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetArray []SetBonusItem `eq2:"array,arraysize=NumSets"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
FooterUnknown4 uint8 `eq2:"int8"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo uint32 `eq2:"int32,ifvariableset=footer_set_name_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info2_0"`
FooterUnknown5 uint8 `eq2:"int8"`
DisplayCharges uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV1027 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint8 `eq2:"int8"`
FooterUnknown3 []uint8 `eq2:"int8,len=2"`
SetName common.EQ2String8 `eq2:"string8"`
NumSets uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetArray []SetBonusItem `eq2:"array,arraysize=NumSets"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
FooterUnknown4 []uint8 `eq2:"int8,len=4"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo uint32 `eq2:"int32,ifvariableset=footer_set_name_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info2_0"`
FooterUnknown5 []uint8 `eq2:"int8,len=2"`
DisplayCharges uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV1096 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint8 `eq2:"int8"`
AdornFlag uint8 `eq2:"int8"`
FooterUnknown3 uint8 `eq2:"int8"`
FooterUnknown3A uint8 `eq2:"int8"`
FooterUnknown3B uint8 `eq2:"int8"`
FooterUnknown3C uint8 `eq2:"int8"`
SetName common.EQ2String8 `eq2:"string8"`
NumSets uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetArray []SetBonusItem `eq2:"array,arraysize=NumSets"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TransmutedFlag uint8 `eq2:"int8"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8"`
PartOfQuest common.EQ2String8 `eq2:"string8"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
StatusItem uint8 `eq2:"int8"`
FooterUnknown7 uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlagXXX uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItem `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
}
type SubstructItemFooterV1188 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=6"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
FooterUnknown4A uint8 `eq2:"int8,ifvariableset=footer_footer_unknown4_0"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 []uint8 `eq2:"int8,len=3,ifvariableset=footer_set_name_0"`
StatusItem []uint8 `eq2:"int8,len=2"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6 uint8 `eq2:"int8"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknown7 uint8 `eq2:"int8"`
}
type SubstructItemFooterV57048 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=6"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
StatusItem []uint8 `eq2:"int8,len=2"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6 []uint8 `eq2:"int8,len=13"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknown7 uint8 `eq2:"int8"`
}
type SubstructItemFooterV58571 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=11"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
StatusItem []uint8 `eq2:"int8,len=2"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6 []uint8 `eq2:"int8,len=15"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknownVer58571 uint8 `eq2:"int8"`
}
type SubstructItemFooterV58617 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=11"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8"` // Note: XML comment indicates removing ifvariablenotset condition
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
StatusItem []uint8 `eq2:"int8,len=2"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
Unknown58617_1_MJ uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6 []uint8 `eq2:"int8,len=17"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknownVer58617 uint8 `eq2:"int8"`
}
type SubstructItemFooterV60024 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=11"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
StatusItem uint8 `eq2:"int8"`
Unknown60024A uint8 `eq2:"int8"`
Unknown60024B []uint8 `eq2:"int8,len=4,ifvariableset=footer_unknown60024a_0"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6 []uint8 `eq2:"int8,len=18"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknown7 uint8 `eq2:"int8"`
}
type SubstructItemFooterV60055 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=11"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Unknown60055ZA uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
Unknown60055Z uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownEmem1 uint8 `eq2:"int8"`
UnknownEmem2 uint8 `eq2:"int8"`
UnknownEmem3 uint8 `eq2:"int8"`
UnknownEmem4 uint8 `eq2:"int8"`
StatusItem uint32 `eq2:"int32"`
CraftingFlag uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6A uint8 `eq2:"int8"`
FooterUnknown6B uint8 `eq2:"int8"`
FooterUnknown6C uint8 `eq2:"int8"`
FooterUnknown6D uint8 `eq2:"int8"`
FooterUnknown6E uint8 `eq2:"int8"`
FooterUnknown6F uint8 `eq2:"int8"`
FooterUnknown6G uint8 `eq2:"int8"`
FooterUnknown6H uint8 `eq2:"int8"`
FooterUnknown6I uint8 `eq2:"int8"`
FooterUnknown6J uint8 `eq2:"int8"`
FooterUnknown6K uint8 `eq2:"int8"`
FooterUnknown6L uint8 `eq2:"int8"`
FooterUnknown6M uint8 `eq2:"int8"`
FooterUnknown6N uint8 `eq2:"int8"`
FooterUnknown6O uint8 `eq2:"int8"`
FooterUnknown6 []uint8 `eq2:"int8,len=2"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknown7 uint8 `eq2:"int8"`
}
type SubstructItemFooterV60174 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
FooterUnknown2 uint8 `eq2:"int8"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=11"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV1188 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItem `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Unknown60055ZA uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
Collectable uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
Unknown60055Z uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
OffersQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
PartOfQuest common.EQ2String8 `eq2:"string8,ifvariablenotset=footer_set_name_0"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
StatusItem uint32 `eq2:"int32"`
Unknown60024A uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
AdornArray []AdornItemV1188 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6A uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
FooterUnknown6B []uint8 `eq2:"int8,len=21"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknown7 uint8 `eq2:"int8"`
}
type SubstructItemFooterV63119 struct {
NumEffects uint8 `eq2:"int8,ifvariablenotset=header_info_header_unknown_0_0"`
EffectArray []EffectItemV546 `eq2:"array,arraysize=NumEffects"`
Tierline uint8 `eq2:"int8"`
TierlineArray []TierlineItem `eq2:"array,arraysize=Tierline"`
RequiredClasses uint64 `eq2:"int64"`
RequiredClasses2 uint64 `eq2:"int64"`
RecommendedLevel uint8 `eq2:"int8"`
RequiredLevel uint8 `eq2:"int8"`
StackSize uint16 `eq2:"int16"`
AdornSlots []uint8 `eq2:"int8,len=11"`
FooterUnknown3MJ1 uint8 `eq2:"int8"`
SetName common.EQ2String8 `eq2:"string8"`
SetBonusListCount uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetBonusListArray []SetBonusItemV63119 `eq2:"array,arraysize=SetBonusListCount"`
NumItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
SetItemsArray []SetItemsItem `eq2:"array,arraysize=NumItemsInSet"`
TotalSetItemsEquipped uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
TotalSetItemsInSet uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
AdornFlag uint8 `eq2:"int8"`
AdornUnknown64A uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornUnknown64B uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsActive uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornStatsTotal uint8 `eq2:"int8,ifvariableset=footer_adorn_flag_0"`
AdornName common.EQ2String16 `eq2:"string16,ifvariableset=footer_adorn_flag_0"`
NumAdornLevels uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornStatsUnknown1 uint32 `eq2:"int32,ifvariableset=footer_adorn_flag_0"`
AdornLevelArray []AdornLevelItemV63119 `eq2:"array,arraysize=NumAdornLevels"`
FooterUnknown4 uint8 `eq2:"int8"`
Unknown60055ZA uint8 `eq2:"int8,ifvariableset=foot_set_name_0"`
Collectable uint8 `eq2:"int8"`
CollectionNeeded uint8 `eq2:"int8,ifvariableset=footer_collectable_0"`
Unknown60055Z uint8 `eq2:"int8"`
OffersQuest common.EQ2String8 `eq2:"string8"`
PartOfQuest common.EQ2String8 `eq2:"string8"`
OffersQuestColor uint8 `eq2:"int8,ifvariableset=footer_offers_quest_0"`
PartOfQuestColor uint8 `eq2:"int8,ifvariableset=footer_part_of_quest_0"`
UnknownSetData1 []uint8 `eq2:"int8,len=2,ifvariableset=footer_set_name_0"`
Charges uint8 `eq2:"int8"`
TotalCharges uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
ChargesLeft uint16 `eq2:"int16,ifvariableset=footer_charges_0"`
UnknownSetInfo2 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownSetInfo3A uint32 `eq2:"int32,ifvariableset=footer_unknown_set_info3_0"`
UnknownSetInfo4 uint8 `eq2:"int8,ifvariableset=footer_set_name_0"`
UnknownEmem1 []uint8 `eq2:"int8,len=4"`
StatusItem uint32 `eq2:"int32"`
Unknown60024B uint8 `eq2:"int8"`
TransmutedFlag uint8 `eq2:"int8"`
UnknownMJ38A uint8 `eq2:"int8"`
UnknownMJ38B uint8 `eq2:"int8"`
CraftingFlag uint8 `eq2:"int8"`
UnknownMJ38D uint8 `eq2:"int8"`
AdornCount uint8 `eq2:"int8"`
AdornArray []AdornItemV63119 `eq2:"array,arraysize=AdornCount"`
LockedFlag uint8 `eq2:"int8"`
UnknownMJ38C uint8 `eq2:"int8"`
AccountRestricted uint8 `eq2:"int8"`
FooterUnknown6B []uint8 `eq2:"int8,len=7"`
FooterUnknown6C uint32 `eq2:"int32,ifvariablenotset=footer_set_name_0"`
FooterUnknown6D uint8 `eq2:"int8,ifvariablenotset=footer_set_name_0"`
Name common.EQ2String8 `eq2:"string8"`
Description common.EQ2String16 `eq2:"string16"`
FooterUnknown7 uint8 `eq2:"int8"`
}