Init tower seperation from tower-experiments

This commit is contained in:
stratic-dev
2024-07-31 15:42:29 +01:00
parent c6fdf47779
commit 2bc31c718a
9 changed files with 1056 additions and 878 deletions

View File

@@ -1,20 +1,21 @@
package mhfpacket
import (
"errors"
import (
"errors"
"fmt"
"erupe-ce/network/clientctx"
"erupe-ce/network"
"erupe-ce/common/byteframe"
"erupe-ce/network"
"erupe-ce/network/clientctx"
)
// MsgMhfGetPaperData represents the MSG_MHF_GET_PAPER_DATA
type MsgMhfGetPaperData struct {
// Communicator type, multi-format. This might be valid for only one type.
AckHandle uint32
Unk0 uint32
Type uint32
Unk1 uint32
Unk2 uint32
ID uint32
}
// Opcode returns the ID associated with this packet type.
@@ -25,9 +26,10 @@ func (m *MsgMhfGetPaperData) Opcode() network.PacketID {
// Parse parses the packet from binary
func (m *MsgMhfGetPaperData) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error {
m.AckHandle = bf.ReadUint32()
m.Unk0 = bf.ReadUint32()
m.Type = bf.ReadUint32()
m.Unk1 = bf.ReadUint32()
m.Unk2 = bf.ReadUint32()
m.ID = bf.ReadUint32()
fmt.Printf("MsgMhfGetPaperData: Type:[%d] Unk1:[%d] ID:[%d] \n\n", m.Type, m.Unk1, m.ID)
return nil
}

View File

@@ -2,6 +2,7 @@ package mhfpacket
import (
"errors"
"fmt"
"erupe-ce/common/byteframe"
"erupe-ce/network"
@@ -28,6 +29,7 @@ func (m *MsgMhfGetTinyBin) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientC
m.Unk0 = bf.ReadUint8()
m.Unk1 = bf.ReadUint8()
m.Unk2 = bf.ReadUint8()
fmt.Printf("MsgMhfGetTinyBin: Unk0:[%d] Unk1:[%d] Unk2:[%d] \n\n", m.Unk0, m.Unk1, m.Unk2)
return nil
}

View File

@@ -2,6 +2,7 @@ package mhfpacket
import (
"errors"
"fmt"
"erupe-ce/common/byteframe"
"erupe-ce/network"
@@ -31,6 +32,7 @@ func (m *MsgMhfPostTinyBin) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Client
m.Unk2 = bf.ReadUint8()
m.Unk3 = bf.ReadUint8()
m.Data = bf.ReadBytes(uint(bf.ReadUint16()))
fmt.Printf("MsgMhfPostTinyBin: Unk0:[%d] Unk1:[%d] Unk2:[%d] Unk3:[%d] \n\n", m.Unk0, m.Unk1, m.Unk2, m.Unk3)
return nil
}

View File

@@ -20,7 +20,8 @@ type MsgMhfPostTowerInfo struct {
Unk6 int32
Unk7 int32
Block1 int32
Unk9 int64
TimeTaken int32
CID int32
}
// Opcode returns the ID associated with this packet type.
@@ -40,7 +41,8 @@ func (m *MsgMhfPostTowerInfo) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Clie
m.Unk6 = bf.ReadInt32()
m.Unk7 = bf.ReadInt32()
m.Block1 = bf.ReadInt32()
m.Unk9 = bf.ReadInt64()
m.TimeTaken = bf.ReadInt32()
m.CID = bf.ReadInt32()
return nil
}

View File

@@ -2,6 +2,7 @@ package mhfpacket
import (
"errors"
"fmt"
"erupe-ce/common/byteframe"
"erupe-ce/network"
@@ -10,15 +11,15 @@ import (
// MsgMhfPresentBox represents the MSG_MHF_PRESENT_BOX
type MsgMhfPresentBox struct {
AckHandle uint32
Unk0 uint32
Unk1 uint32
Unk2 uint32
Unk3 uint32
Unk4 uint32
Unk5 uint32
Unk6 uint32
Unk7 []uint32
AckHandle uint32
Unk0 uint32
Operation uint32
PresentCount uint32
Unk3 uint32
Unk4 uint32
Unk5 uint32
Unk6 uint32
PresentType []uint32
}
// Opcode returns the ID associated with this packet type.
@@ -30,14 +31,19 @@ func (m *MsgMhfPresentBox) Opcode() network.PacketID {
func (m *MsgMhfPresentBox) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error {
m.AckHandle = bf.ReadUint32()
m.Unk0 = bf.ReadUint32()
m.Unk1 = bf.ReadUint32()
m.Unk2 = bf.ReadUint32()
m.Operation = bf.ReadUint32()
m.PresentCount = bf.ReadUint32()
m.Unk3 = bf.ReadUint32()
m.Unk4 = bf.ReadUint32()
m.Unk5 = bf.ReadUint32()
m.Unk6 = bf.ReadUint32()
for i := uint32(0); i < m.Unk2; i++ {
m.Unk7 = append(m.Unk7, bf.ReadUint32())
for i := uint32(0); i < m.PresentCount; i++ {
m.PresentType = append(m.PresentType, bf.ReadUint32())
}
fmt.Printf("MsgMhfPresentBox: Unk0:[%d] Unk1:[%d] Unk2:[%d] Unk3:[%d] Unk4:[%d] Unk5:[%d] Unk6:[%d] \n\n", m.Unk0, m.Operation, m.PresentCount, m.Unk3, m.Unk4, m.Unk5, m.Unk6)
for _, mdata := range m.PresentType {
fmt.Printf("MsgMhfPresentBox: PresentType: [%d] \n", mdata)
}
return nil
}