first Go packet struct
This commit is contained in:
parent
d6f0ab6784
commit
672bbd7629
356
internal/packets/ls_structs/LoginReplyMsg.go
Normal file
356
internal/packets/ls_structs/LoginReplyMsg.go
Normal file
@ -0,0 +1,356 @@
|
||||
package ls_structs
|
||||
|
||||
import "eq2emu/internal/common"
|
||||
|
||||
// StartingItem represents equipment/item data for character creation
|
||||
type StartingItem struct {
|
||||
ModelID uint32 `eq2:"int32"`
|
||||
SlotID uint8 `eq2:"int8"`
|
||||
UseColor uint8 `eq2:"int8"`
|
||||
UseHighlightColor uint8 `eq2:"int8"`
|
||||
ModelColor common.EQ2Color `eq2:"color"`
|
||||
ModelHighlightColor common.EQ2Color `eq2:"color"`
|
||||
}
|
||||
|
||||
// StartingItemV1 for older client versions (int16 model_id)
|
||||
type StartingItemV1 struct {
|
||||
ModelID uint16 `eq2:"int16"`
|
||||
SlotID uint8 `eq2:"int8"`
|
||||
UseColor uint8 `eq2:"int8"`
|
||||
UseHighlightColor uint8 `eq2:"int8"`
|
||||
ModelColor common.EQ2Color `eq2:"color"`
|
||||
ModelHighlightColor common.EQ2Color `eq2:"color"`
|
||||
}
|
||||
|
||||
// ClassItem represents class-specific starting equipment
|
||||
type ClassItem struct {
|
||||
ClassID uint8 `eq2:"int8"`
|
||||
NumItems uint8 `eq2:"int8"`
|
||||
StartingItems []StartingItem `eq2:"array,arraysize=NumItems"`
|
||||
}
|
||||
|
||||
// ClassItemV1 for older client versions
|
||||
type ClassItemV1 struct {
|
||||
ClassID uint8 `eq2:"int8"`
|
||||
NumItems uint8 `eq2:"int8"`
|
||||
StartingItems []StartingItemV1 `eq2:"array,arraysize=NumItems"`
|
||||
}
|
||||
|
||||
// UnknownArray2Item represents items in the second unknown array
|
||||
type UnknownArray2Item struct {
|
||||
Array2Unknown uint32 `eq2:"int32"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV1 - Client version 1
|
||||
type LS_LoginReplyMsgV1 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
WorldName common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer []uint32 `eq2:"int32,len=2"`
|
||||
ParentalControlNext uint32 `eq2:"int32"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV284 - Client version 284
|
||||
type LS_LoginReplyMsgV284 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
CacheSettingAccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 uint8 `eq2:"int8"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=2"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItemV1 `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV843 - Client version 843
|
||||
type LS_LoginReplyMsgV843 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 uint8 `eq2:"int8"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 uint8 `eq2:"int8"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItemV1 `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV1096 - Client version 1096
|
||||
type LS_LoginReplyMsgV1096 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 []uint8 `eq2:"int8,len=5"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 uint8 `eq2:"int8"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItemV1 `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV1142 - Client version 1142
|
||||
type LS_LoginReplyMsgV1142 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 []uint8 `eq2:"int8,len=5"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
Unknown7a uint32 `eq2:"int32"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 uint8 `eq2:"int8"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItemV1 `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV1188 - Client version 1188
|
||||
type LS_LoginReplyMsgV1188 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 []uint8 `eq2:"int8,len=5"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
Unknown7a uint32 `eq2:"int32"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 uint8 `eq2:"int8"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItemV1 `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
Unknown12 common.EQ2String16 `eq2:"string16"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV57080 - Client version 57080
|
||||
type LS_LoginReplyMsgV57080 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 []uint8 `eq2:"int8,len=5"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
Unknown7a uint32 `eq2:"int32"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 uint8 `eq2:"int8"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItem `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
Service common.EQ2String16 `eq2:"string16"`
|
||||
Web1 common.EQ2String16 `eq2:"string16"`
|
||||
Web2 common.EQ2String16 `eq2:"string16"`
|
||||
Web3 common.EQ2String16 `eq2:"string16"`
|
||||
Web4 common.EQ2String16 `eq2:"string16"`
|
||||
Web5 common.EQ2String16 `eq2:"string16"`
|
||||
Web6 common.EQ2String16 `eq2:"string16"`
|
||||
Web7 common.EQ2String16 `eq2:"string16"`
|
||||
Web8 common.EQ2String16 `eq2:"string16"`
|
||||
Web9 common.EQ2String16 `eq2:"string16"`
|
||||
Unknown12 uint8 `eq2:"int8"`
|
||||
Lvl90NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
Lvl90ClassItems []ClassItem `eq2:"array,arraysize=Lvl90NumClassItems,ifvariableset=Unknown10"`
|
||||
Unknown13 []uint8 `eq2:"int8,len=5"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV60100 - Client version 60100
|
||||
type LS_LoginReplyMsgV60100 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown5 uint64 `eq2:"int64"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
Unknown7a uint16 `eq2:"int16"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItem `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
Service common.EQ2String16 `eq2:"string16"`
|
||||
Unknown12 uint8 `eq2:"int8"`
|
||||
Lvl90NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown12"`
|
||||
Lvl90ClassItems []ClassItem `eq2:"array,arraysize=Lvl90NumClassItems,ifvariableset=Unknown12"`
|
||||
Unknown13 uint8 `eq2:"int8"`
|
||||
TimeLockedNumClassItems uint8 `eq2:"int8,ifvariableset=Unknown13"`
|
||||
TimeLockedClassItems []ClassItem `eq2:"array,arraysize=TimeLockedNumClassItems,ifvariableset=Unknown13"`
|
||||
Unknown14 []uint8 `eq2:"int8,len=13"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV63181 - Client version 63181
|
||||
type LS_LoginReplyMsgV63181 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
Unknown common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint32 `eq2:"int32"`
|
||||
Unknown2 []uint8 `eq2:"int8,len=8"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 uint8 `eq2:"int8"`
|
||||
Unknown5 uint16 `eq2:"int16"`
|
||||
Unknown6 []uint8 `eq2:"int8,len=5"`
|
||||
Unknown6a []uint8 `eq2:"int8,len=8"`
|
||||
Unknown7 uint32 `eq2:"int32"`
|
||||
Unknown7a uint16 `eq2:"int16"`
|
||||
RaceUnknown uint8 `eq2:"int8"`
|
||||
Unknown8 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown9 []uint8 `eq2:"int8,len=3"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItem `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
Service common.EQ2String16 `eq2:"string16"`
|
||||
Unknown12 uint8 `eq2:"int8"`
|
||||
Lvl90NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown12"`
|
||||
Lvl90ClassItems []ClassItem `eq2:"array,arraysize=Lvl90NumClassItems,ifvariableset=Unknown12"`
|
||||
Unknown13 uint8 `eq2:"int8"`
|
||||
TimeLockedNumClassItems uint8 `eq2:"int8,ifvariableset=Unknown13"`
|
||||
TimeLockedClassItems []ClassItem `eq2:"array,arraysize=TimeLockedNumClassItems,ifvariableset=Unknown13"`
|
||||
Unknown14 []uint8 `eq2:"int8,len=9"`
|
||||
}
|
||||
|
||||
// LS_LoginReplyMsgV65534 - Client version 65534 (latest)
|
||||
type LS_LoginReplyMsgV65534 struct {
|
||||
LoginResponse uint8 `eq2:"int8"`
|
||||
WorldName common.EQ2String16 `eq2:"string16"`
|
||||
ParentalControlFlag uint8 `eq2:"int8"`
|
||||
ParentalControlTimer uint64 `eq2:"int64"`
|
||||
Unknown2 uint32 `eq2:"int32"`
|
||||
AccountID uint32 `eq2:"int32"`
|
||||
Unknown3 common.EQ2String16 `eq2:"string16"`
|
||||
ResetAppearance uint8 `eq2:"int8"`
|
||||
DoNotForceSoga uint8 `eq2:"int8"`
|
||||
Unknown4 common.EQ2String32 `eq2:"string32"`
|
||||
Unknown7 common.EQ2String32 `eq2:"string32"`
|
||||
RaceUnknown uint32 `eq2:"int32"`
|
||||
Unknown8 uint8 `eq2:"int8"`
|
||||
Unknown10 uint8 `eq2:"int8"`
|
||||
NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown10"`
|
||||
ClassItems []ClassItem `eq2:"array,arraysize=NumClassItems,ifvariableset=Unknown10"`
|
||||
UnknownArray2Size uint8 `eq2:"int8"`
|
||||
UnknownArray2 []UnknownArray2Item `eq2:"array,arraysize=UnknownArray2Size,ifvariableset=UnknownArray2Size"`
|
||||
Unknown11 uint32 `eq2:"int32"`
|
||||
SubLevel uint32 `eq2:"int32"`
|
||||
RaceFlag uint32 `eq2:"int32"`
|
||||
ClassFlag uint32 `eq2:"int32"`
|
||||
Password common.EQ2String16 `eq2:"string16"`
|
||||
Username common.EQ2String16 `eq2:"string16"`
|
||||
Service common.EQ2String16 `eq2:"string16"`
|
||||
Unknown12 uint8 `eq2:"int8"`
|
||||
Lvl90NumClassItems uint8 `eq2:"int8,ifvariableset=Unknown12"`
|
||||
Lvl90ClassItems []ClassItem `eq2:"array,arraysize=Lvl90NumClassItems,ifvariableset=Unknown12"`
|
||||
Unknown13 uint8 `eq2:"int8"`
|
||||
TimeLockedNumClassItems uint8 `eq2:"int8,ifvariableset=Unknown13"`
|
||||
TimeLockedClassItems []ClassItem `eq2:"array,arraysize=TimeLockedNumClassItems,ifvariableset=Unknown13"`
|
||||
Unknown14 []uint8 `eq2:"int8,len=13"`
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user