181 lines
6.6 KiB
Go
181 lines
6.6 KiB
Go
package ls_structs
|
|
|
|
import "eq2emu/internal/common"
|
|
|
|
// LoginResponse for client version 1
|
|
type LoginResponseV1 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 uint16 `eq2:"int16"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 uint16 `eq2:"int16"`
|
|
Unknown07 uint8 `eq2:"int8"`
|
|
Unknown08 uint8 `eq2:"int8"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint8 `eq2:"int8"`
|
|
Unknown11 uint32 `eq2:"int32"`
|
|
Unknown12 uint8 `eq2:"int8"`
|
|
}
|
|
|
|
// LoginResponse for client version 546
|
|
type LoginResponseV546 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown uint16 `eq2:"int16"`
|
|
Unknown01 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown15 []uint8 `eq2:"int8,len=11"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
}
|
|
|
|
// LoginResponse for client version 561
|
|
type LoginResponseV561 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 []uint8 `eq2:"int8,len=22"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 []uint8 `eq2:"int8,len=7"`
|
|
Unknown07 uint32 `eq2:"int32"`
|
|
Unknown08 uint32 `eq2:"int32"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint32 `eq2:"int32"`
|
|
}
|
|
|
|
// LoginResponse for client version 1096
|
|
type LoginResponseV1096 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 []uint8 `eq2:"int8,len=22"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 []uint8 `eq2:"int8,len=7"`
|
|
Unknown07 uint32 `eq2:"int32"`
|
|
Unknown08 uint32 `eq2:"int32"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint32 `eq2:"int32"`
|
|
}
|
|
|
|
// LoginResponse for client version 1144
|
|
type LoginResponseV1144 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 []uint8 `eq2:"int8,len=22"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 []uint8 `eq2:"int8,len=15"`
|
|
Unknown07 uint32 `eq2:"int32"`
|
|
Unknown08 uint32 `eq2:"int32"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint32 `eq2:"int32"`
|
|
}
|
|
|
|
// LoginResponse for client version 1153
|
|
type LoginResponseV1153 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 []uint8 `eq2:"int8,len=22"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 []uint8 `eq2:"int8,len=7"`
|
|
Unknown07 uint32 `eq2:"int32"`
|
|
Unknown08 uint32 `eq2:"int32"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint32 `eq2:"int32"`
|
|
Unknown11 uint32 `eq2:"int32"`
|
|
}
|
|
|
|
// LoginResponse for client version 1193
|
|
type LoginResponseV1193 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 []uint8 `eq2:"int8,len=22"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 []uint8 `eq2:"int8,len=7"`
|
|
Unknown07 uint32 `eq2:"int32"`
|
|
Unknown08 uint32 `eq2:"int32"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint32 `eq2:"int32"`
|
|
Unknown11 uint32 `eq2:"int32"`
|
|
Unknown12 uint16 `eq2:"int16"`
|
|
}
|
|
|
|
// ClassItems represents class-specific starting items
|
|
type ClassItems struct {
|
|
ClassID uint8 `eq2:"int8"`
|
|
NumItems uint8 `eq2:"int8"`
|
|
StartingItems []StartingItem `eq2:"array,arraysize=NumItems"`
|
|
}
|
|
|
|
// LoginResponse for client version 60100 - most complex version
|
|
type LoginResponseV60100 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 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 []ClassItems `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 []ClassItems `eq2:"array,arraysize=Lvl90NumClassItems,ifvariableset=Unknown12"`
|
|
Unknown13 uint8 `eq2:"int8"`
|
|
TimeLockedNumClassItems uint8 `eq2:"int8,ifvariableset=Unknown13"`
|
|
TimeLockedClassItems []ClassItems `eq2:"array,arraysize=TimeLockedNumClassItems,ifvariableset=Unknown13"`
|
|
Unknown14 []uint8 `eq2:"int8,len=13"`
|
|
}
|
|
|
|
// LoginResponse for client version 57048
|
|
type LoginResponseV57048 struct {
|
|
ReplyCode uint8 `eq2:"int8"`
|
|
Unknown01 []uint8 `eq2:"int8,len=22"`
|
|
Unknown02 uint8 `eq2:"int8"`
|
|
Unknown03 int32 `eq2:"sint32"`
|
|
Unknown04 int32 `eq2:"sint32"`
|
|
Unknown05 int32 `eq2:"sint32"`
|
|
AccountID uint32 `eq2:"int32"`
|
|
Unknown06 []uint8 `eq2:"int8,len=7"`
|
|
Unknown07 uint32 `eq2:"int32"`
|
|
Unknown08 uint32 `eq2:"int32"`
|
|
Unknown09 uint32 `eq2:"int32"`
|
|
Unknown10 uint32 `eq2:"int32"`
|
|
Unknown11 uint32 `eq2:"int32"`
|
|
Unknown12 []uint32 `eq2:"int32,len=5"`
|
|
}
|