From 738a46a01b4da96591a033d54630fbd93c410a0c Mon Sep 17 00:00:00 2001 From: stratic-dev Date: Wed, 9 Oct 2024 08:37:04 +0100 Subject: [PATCH] RealClientMode replaced for ClientID --- config/config.go | 10 ++--- network/crypt_conn.go | 2 +- .../mhfpacket/msg_mhf_acquire_cafe_item.go | 2 +- network/mhfpacket/msg_mhf_apply_dist_item.go | 4 +- .../mhfpacket/msg_mhf_enumerate_dist_item.go | 2 +- network/mhfpacket/msg_mhf_enumerate_quest.go | 2 +- network/mhfpacket/msg_mhf_enumerate_shop.go | 2 +- network/mhfpacket/msg_mhf_savedata.go | 2 +- network/mhfpacket/msg_mhf_stampcard_stamp.go | 4 +- .../mhfpacket/msg_mhf_update_myhouse_info.go | 6 +-- .../msg_sys_create_acquire_semaphore.go | 2 +- network/mhfpacket/msg_sys_create_semaphore.go | 2 +- network/mhfpacket/msg_sys_terminal_log.go | 2 +- server/channelserver/handlers.go | 34 ++++++++-------- server/channelserver/handlers_cafe.go | 2 +- server/channelserver/handlers_campaign.go | 2 +- server/channelserver/handlers_cast_binary.go | 4 +- server/channelserver/handlers_character.go | 18 ++++----- server/channelserver/handlers_data.go | 2 +- server/channelserver/handlers_distitem.go | 18 ++++----- server/channelserver/handlers_diva.go | 4 +- server/channelserver/handlers_event.go | 6 +-- server/channelserver/handlers_festa.go | 10 ++--- server/channelserver/handlers_guild.go | 20 +++++----- server/channelserver/handlers_house.go | 6 +-- server/channelserver/handlers_mercenary.go | 4 +- server/channelserver/handlers_quest.go | 40 +++++++++---------- server/channelserver/handlers_shop_gacha.go | 18 ++++----- server/channelserver/handlers_tower.go | 2 +- server/entranceserver/make_resp.go | 18 ++++----- server/signserver/dsgn_resp.go | 2 +- utils/mhfitem/mhfitem.go | 8 ++-- 32 files changed, 130 insertions(+), 130 deletions(-) diff --git a/config/config.go b/config/config.go index f7c48f88f..c5a39f052 100644 --- a/config/config.go +++ b/config/config.go @@ -77,7 +77,7 @@ type Config struct { PatchServerFile string // File patch server override DeleteOnSaveCorruption bool // Attempts to save corrupted data will flag the save for deletion ClientMode string - RealClientMode Mode + ClientID Mode QuestCacheExpiry int // Number of seconds to keep quest data cached CommandPrefix string // The prefix for commands AutoCreateAccount bool // Automatically create accounts if they don't exist @@ -350,16 +350,16 @@ func LoadConfig() (*Config, error) { for i := range versionStrings { if strings.ToUpper(c.ClientMode) == versionStrings[i] { - c.RealClientMode = Mode(i + 1) + c.ClientID = Mode(i + 1) c.ClientMode = strings.ToUpper(c.ClientMode) - if c.RealClientMode <= G101 { + if c.ClientID <= G101 { c.ClientMode += " (Debug only)" } } } - if c.RealClientMode == 0 { + if c.ClientID == 0 { c.ClientMode = versionStrings[len(versionStrings)-1] - c.RealClientMode = ZZ + c.ClientID = ZZ } if c.GameplayOptions.MinFeatureWeapons > c.GameplayOptions.MaxFeatureWeapons { diff --git a/network/crypt_conn.go b/network/crypt_conn.go index de9181855..5bc6ddf5c 100644 --- a/network/crypt_conn.go +++ b/network/crypt_conn.go @@ -51,7 +51,7 @@ func (cc *CryptConn) ReadPacket() ([]byte, error) { var encryptedPacketBody []byte // Don't know when support for this was added, works in Forward.4, doesn't work in Season 6.0 - if _config.ErupeConfig.RealClientMode < _config.F1 { + if _config.ErupeConfig.ClientID < _config.F1 { encryptedPacketBody = make([]byte, cph.DataSize) } else { encryptedPacketBody = make([]byte, uint32(cph.DataSize)+(uint32(cph.Pf0-0x03)*0x1000)) diff --git a/network/mhfpacket/msg_mhf_acquire_cafe_item.go b/network/mhfpacket/msg_mhf_acquire_cafe_item.go index 5e60aba76..149abd82e 100644 --- a/network/mhfpacket/msg_mhf_acquire_cafe_item.go +++ b/network/mhfpacket/msg_mhf_acquire_cafe_item.go @@ -31,7 +31,7 @@ func (m *MsgMhfAcquireCafeItem) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Cl m.ItemType = bf.ReadUint16() m.ItemID = bf.ReadUint16() m.Quant = bf.ReadUint16() - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { m.PointCost = bf.ReadUint32() } else { m.PointCost = uint32(bf.ReadUint16()) diff --git a/network/mhfpacket/msg_mhf_apply_dist_item.go b/network/mhfpacket/msg_mhf_apply_dist_item.go index 3c99dbb15..ed27bfef6 100644 --- a/network/mhfpacket/msg_mhf_apply_dist_item.go +++ b/network/mhfpacket/msg_mhf_apply_dist_item.go @@ -27,10 +27,10 @@ func (m *MsgMhfApplyDistItem) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Clie m.AckHandle = bf.ReadUint32() m.DistributionType = bf.ReadUint8() m.DistributionID = bf.ReadUint32() - if _config.ErupeConfig.RealClientMode >= _config.G8 { + if _config.ErupeConfig.ClientID >= _config.G8 { m.Unk2 = bf.ReadUint32() } - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { m.Unk3 = bf.ReadUint32() } return nil diff --git a/network/mhfpacket/msg_mhf_enumerate_dist_item.go b/network/mhfpacket/msg_mhf_enumerate_dist_item.go index 87773ab9c..2a0f62604 100644 --- a/network/mhfpacket/msg_mhf_enumerate_dist_item.go +++ b/network/mhfpacket/msg_mhf_enumerate_dist_item.go @@ -28,7 +28,7 @@ func (m *MsgMhfEnumerateDistItem) Parse(bf *byteframe.ByteFrame, ctx *clientctx. m.DistType = bf.ReadUint8() m.Unk1 = bf.ReadUint8() m.Unk2 = bf.ReadUint16() // Maximum? Hardcoded to 256 - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { m.Unk3 = bf.ReadBytes(uint(bf.ReadUint8())) } return nil diff --git a/network/mhfpacket/msg_mhf_enumerate_quest.go b/network/mhfpacket/msg_mhf_enumerate_quest.go index ecc2c3056..9c5a354bf 100644 --- a/network/mhfpacket/msg_mhf_enumerate_quest.go +++ b/network/mhfpacket/msg_mhf_enumerate_quest.go @@ -30,7 +30,7 @@ func (m *MsgMhfEnumerateQuest) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Cli m.Unk0 = bf.ReadUint8() m.World = bf.ReadUint8() m.Counter = bf.ReadUint16() - if _config.ErupeConfig.RealClientMode <= _config.Z1 { + if _config.ErupeConfig.ClientID <= _config.Z1 { m.Offset = uint16(bf.ReadUint8()) } else { m.Offset = bf.ReadUint16() diff --git a/network/mhfpacket/msg_mhf_enumerate_shop.go b/network/mhfpacket/msg_mhf_enumerate_shop.go index 3c298a7b6..d64e5b871 100644 --- a/network/mhfpacket/msg_mhf_enumerate_shop.go +++ b/network/mhfpacket/msg_mhf_enumerate_shop.go @@ -32,7 +32,7 @@ func (m *MsgMhfEnumerateShop) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Clie m.ShopID = bf.ReadUint32() m.Limit = bf.ReadUint16() m.Unk3 = bf.ReadUint8() - if _config.ErupeConfig.RealClientMode >= _config.G2 { + if _config.ErupeConfig.ClientID >= _config.G2 { m.Unk4 = bf.ReadUint8() m.Unk5 = bf.ReadUint32() } diff --git a/network/mhfpacket/msg_mhf_savedata.go b/network/mhfpacket/msg_mhf_savedata.go index 8921d3eaf..873ac9540 100644 --- a/network/mhfpacket/msg_mhf_savedata.go +++ b/network/mhfpacket/msg_mhf_savedata.go @@ -30,7 +30,7 @@ func (m *MsgMhfSavedata) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientCon m.AllocMemSize = bf.ReadUint32() m.SaveType = bf.ReadUint8() m.Unk1 = bf.ReadUint32() - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { m.DataSize = bf.ReadUint32() } if m.DataSize == 0 { // seems to be used when DataSize = 0 rather than on savetype? diff --git a/network/mhfpacket/msg_mhf_stampcard_stamp.go b/network/mhfpacket/msg_mhf_stampcard_stamp.go index e3b5d2bf2..339c5dabb 100644 --- a/network/mhfpacket/msg_mhf_stampcard_stamp.go +++ b/network/mhfpacket/msg_mhf_stampcard_stamp.go @@ -32,12 +32,12 @@ func (m *MsgMhfStampcardStamp) Opcode() network.PacketID { func (m *MsgMhfStampcardStamp) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error { m.AckHandle = bf.ReadUint32() m.HR = bf.ReadUint16() - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { m.GR = bf.ReadUint16() } m.Stamps = bf.ReadUint16() bf.ReadUint16() // Zeroed - if _config.ErupeConfig.RealClientMode >= _config.Z2 { + if _config.ErupeConfig.ClientID >= _config.Z2 { m.Reward1 = uint16(bf.ReadUint32()) m.Reward2 = uint16(bf.ReadUint32()) m.Item1 = uint16(bf.ReadUint32()) diff --git a/network/mhfpacket/msg_mhf_update_myhouse_info.go b/network/mhfpacket/msg_mhf_update_myhouse_info.go index aa2b332dc..1d12d791e 100644 --- a/network/mhfpacket/msg_mhf_update_myhouse_info.go +++ b/network/mhfpacket/msg_mhf_update_myhouse_info.go @@ -23,11 +23,11 @@ func (m *MsgMhfUpdateMyhouseInfo) Opcode() network.PacketID { // Parse parses the packet from binary func (m *MsgMhfUpdateMyhouseInfo) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error { m.AckHandle = bf.ReadUint32() - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { m.Data = bf.ReadBytes(362) - } else if _config.ErupeConfig.RealClientMode >= _config.GG { + } else if _config.ErupeConfig.ClientID >= _config.GG { m.Data = bf.ReadBytes(338) - } else if _config.ErupeConfig.RealClientMode >= _config.F5 { + } else if _config.ErupeConfig.ClientID >= _config.F5 { // G1 is a guess m.Data = bf.ReadBytes(314) } else { diff --git a/network/mhfpacket/msg_sys_create_acquire_semaphore.go b/network/mhfpacket/msg_sys_create_acquire_semaphore.go index e855e4907..c379f788c 100644 --- a/network/mhfpacket/msg_sys_create_acquire_semaphore.go +++ b/network/mhfpacket/msg_sys_create_acquire_semaphore.go @@ -25,7 +25,7 @@ func (m *MsgSysCreateAcquireSemaphore) Opcode() network.PacketID { func (m *MsgSysCreateAcquireSemaphore) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error { m.AckHandle = bf.ReadUint32() m.Unk0 = bf.ReadUint16() - if _config.ErupeConfig.RealClientMode >= _config.S7 { // Assuming this was added with Ravi? + if _config.ErupeConfig.ClientID >= _config.S7 { // Assuming this was added with Ravi? m.PlayerCount = bf.ReadUint8() } bf.ReadUint8() // SemaphoreID length diff --git a/network/mhfpacket/msg_sys_create_semaphore.go b/network/mhfpacket/msg_sys_create_semaphore.go index bb0a7d6de..62da94755 100644 --- a/network/mhfpacket/msg_sys_create_semaphore.go +++ b/network/mhfpacket/msg_sys_create_semaphore.go @@ -26,7 +26,7 @@ func (m *MsgSysCreateSemaphore) Opcode() network.PacketID { func (m *MsgSysCreateSemaphore) Parse(bf *byteframe.ByteFrame, ctx *clientctx.ClientContext) error { m.AckHandle = bf.ReadUint32() m.Unk0 = bf.ReadUint16() - if _config.ErupeConfig.RealClientMode >= _config.S7 { // Assuming this was added with Ravi? + if _config.ErupeConfig.ClientID >= _config.S7 { // Assuming this was added with Ravi? m.PlayerCount = bf.ReadUint8() } bf.ReadUint8() // SemaphoreID length diff --git a/network/mhfpacket/msg_sys_terminal_log.go b/network/mhfpacket/msg_sys_terminal_log.go index 429cbc97d..357ac2295 100644 --- a/network/mhfpacket/msg_sys_terminal_log.go +++ b/network/mhfpacket/msg_sys_terminal_log.go @@ -49,7 +49,7 @@ func (m *MsgSysTerminalLog) Parse(bf *byteframe.ByteFrame, ctx *clientctx.Client e.Unk1 = bf.ReadInt32() e.Unk2 = bf.ReadInt32() e.Unk3 = bf.ReadInt32() - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { for j := 0; j < 4; j++ { e.Unk4 = append(e.Unk4, bf.ReadInt32()) } diff --git a/server/channelserver/handlers.go b/server/channelserver/handlers.go index aa4d3c4b2..7847fbd8b 100644 --- a/server/channelserver/handlers.go +++ b/server/channelserver/handlers.go @@ -306,7 +306,7 @@ func handleMsgSysIssueLogkey(s *Session, p mhfpacket.MHFPacket) { func handleMsgSysRecordLog(s *Session, p mhfpacket.MHFPacket) { pkt := p.(*mhfpacket.MsgSysRecordLog) - if _config.ErupeConfig.RealClientMode == _config.ZZ { + if _config.ErupeConfig.ClientID == _config.ZZ { bf := byteframe.NewByteFrameFromBytes(pkt.Data) bf.Seek(32, 0) var val uint8 @@ -428,7 +428,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { resp.WriteUint16(uint16(len(c.userBinaryParts[userBinaryPartID{charID: session.charID, index: 3}]))) // TODO: This case might be <=G2 - if _config.ErupeConfig.RealClientMode <= _config.G1 { + if _config.ErupeConfig.ClientID <= _config.G1 { resp.WriteBytes(make([]byte, 8)) } else { resp.WriteBytes(make([]byte, 40)) @@ -459,7 +459,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { case 0: values := bf.ReadUint8() for i := uint8(0); i < values; i++ { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { findPartyParams.RankRestriction = bf.ReadInt16() } else { findPartyParams.RankRestriction = int16(bf.ReadInt8()) @@ -468,7 +468,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { case 1: values := bf.ReadUint8() for i := uint8(0); i < values; i++ { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { findPartyParams.Targets = append(findPartyParams.Targets, bf.ReadInt16()) } else { findPartyParams.Targets = append(findPartyParams.Targets, int16(bf.ReadInt8())) @@ -478,7 +478,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { values := bf.ReadUint8() for i := uint8(0); i < values; i++ { var value int16 - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { value = bf.ReadInt16() } else { value = int16(bf.ReadInt8()) @@ -499,7 +499,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { case 3: // Unknown values := bf.ReadUint8() for i := uint8(0); i < values; i++ { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { findPartyParams.Unk0 = append(findPartyParams.Unk0, bf.ReadInt16()) } else { findPartyParams.Unk0 = append(findPartyParams.Unk0, int16(bf.ReadInt8())) @@ -508,7 +508,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { case 4: // Looking for n or already have n values := bf.ReadUint8() for i := uint8(0); i < values; i++ { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { findPartyParams.Unk1 = append(findPartyParams.Unk1, bf.ReadInt16()) } else { findPartyParams.Unk1 = append(findPartyParams.Unk1, int16(bf.ReadInt8())) @@ -517,7 +517,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { case 5: values := bf.ReadUint8() for i := uint8(0); i < values; i++ { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { findPartyParams.QuestID = append(findPartyParams.QuestID, bf.ReadInt16()) } else { findPartyParams.QuestID = append(findPartyParams.QuestID, int16(bf.ReadInt8())) @@ -535,15 +535,15 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { sb3.Seek(4, 0) stageDataParams := 7 - if _config.ErupeConfig.RealClientMode <= _config.G10 { + if _config.ErupeConfig.ClientID <= _config.G10 { stageDataParams = 4 - } else if _config.ErupeConfig.RealClientMode <= _config.Z1 { + } else if _config.ErupeConfig.ClientID <= _config.Z1 { stageDataParams = 6 } var stageData []int16 for i := 0; i < stageDataParams; i++ { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { stageData = append(stageData, sb3.ReadInt16()) } else { stageData = append(stageData, int16(sb3.ReadInt8())) @@ -592,7 +592,7 @@ func handleMsgMhfTransitMessage(s *Session, p mhfpacket.MHFPacket) { resp.WriteUint8(uint8(len(stage.rawBinaryData[stageBinaryKey{1, 1}]))) for i := range stageData { - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { resp.WriteInt16(stageData[i]) } else { resp.WriteInt8(int8(stageData[i])) @@ -1065,7 +1065,7 @@ func handleMsgMhfStampcardStamp(s *Session, p mhfpacket.MHFPacket) { {300, 5392, 1, 5392, 3}, {999, 5392, 1, 5392, 4}, } - if _config.ErupeConfig.RealClientMode <= _config.Z1 { + if _config.ErupeConfig.ClientID <= _config.Z1 { for _, reward := range rewards { if pkt.HR >= reward.HR { pkt.Item1 = reward.Item1 @@ -1078,7 +1078,7 @@ func handleMsgMhfStampcardStamp(s *Session, p mhfpacket.MHFPacket) { bf := byteframe.NewByteFrame() bf.WriteUint16(pkt.HR) - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { bf.WriteUint16(pkt.GR) } var stamps, rewardTier, rewardUnk uint16 @@ -1123,7 +1123,7 @@ func handleMsgMhfGetEarthStatus(s *Session, p mhfpacket.MHFPacket) { bf.WriteInt32(s.server.erupeConfig.EarthStatus) bf.WriteInt32(s.server.erupeConfig.EarthID) for i, m := range s.server.erupeConfig.EarthMonsters { - if _config.ErupeConfig.RealClientMode <= _config.G9 { + if _config.ErupeConfig.ClientID <= _config.G9 { if i == 3 { break } @@ -1345,10 +1345,10 @@ func handleMsgMhfSetDailyMissionPersonal(s *Session, p mhfpacket.MHFPacket) {} func equipSkinHistSize() int { size := 3200 - if _config.ErupeConfig.RealClientMode <= _config.Z2 { + if _config.ErupeConfig.ClientID <= _config.Z2 { size = 2560 } - if _config.ErupeConfig.RealClientMode <= _config.Z1 { + if _config.ErupeConfig.ClientID <= _config.Z1 { size = 1280 } return size diff --git a/server/channelserver/handlers_cafe.go b/server/channelserver/handlers_cafe.go index af972f656..1b8238246 100644 --- a/server/channelserver/handlers_cafe.go +++ b/server/channelserver/handlers_cafe.go @@ -97,7 +97,7 @@ func handleMsgMhfGetCafeDuration(s *Session, p mhfpacket.MHFPacket) { cafeTime = uint32(gametime.TimeAdjusted().Unix()) - uint32(s.sessionStart) + cafeTime } bf.WriteUint32(cafeTime) - if _config.ErupeConfig.RealClientMode >= _config.ZZ { + if _config.ErupeConfig.ClientID >= _config.ZZ { bf.WriteUint16(0) ps.Uint16(bf, fmt.Sprintf(s.server.i18n.cafe.reset, int(cafeReset.Month()), cafeReset.Day()), true) } diff --git a/server/channelserver/handlers_campaign.go b/server/channelserver/handlers_campaign.go index b24df38b6..26b4788a5 100644 --- a/server/channelserver/handlers_campaign.go +++ b/server/channelserver/handlers_campaign.go @@ -68,7 +68,7 @@ func handleMsgMhfEnumerateCampaign(s *Session, p mhfpacket.MHFPacket) { bf.WriteInt16(event.MaxHR) bf.WriteInt16(event.MinSR) bf.WriteInt16(event.MaxSR) - if _config.ErupeConfig.RealClientMode >= _config.G3 { + if _config.ErupeConfig.ClientID >= _config.G3 { bf.WriteInt16(event.MinGR) bf.WriteInt16(event.MaxGR) } diff --git a/server/channelserver/handlers_cast_binary.go b/server/channelserver/handlers_cast_binary.go index 97345e06f..4f8126aa7 100644 --- a/server/channelserver/handlers_cast_binary.go +++ b/server/channelserver/handlers_cast_binary.go @@ -240,7 +240,7 @@ func parseChatCommand(s *Session, command string) { } case commands["KeyQuest"].Prefix: if commands["KeyQuest"].Enabled || s.isOp() { - if s.server.erupeConfig.RealClientMode < _config.G10 { + if s.server.erupeConfig.ClientID < _config.G10 { sendServerChatMessage(s, s.server.i18n.commands.kqf.version) } else { if len(args) > 1 { @@ -336,7 +336,7 @@ func parseChatCommand(s *Session, command string) { case "cm", "check", "checkmultiplier", "multiplier": sendServerChatMessage(s, fmt.Sprintf(s.server.i18n.commands.ravi.multiplier, s.server.GetRaviMultiplier())) case "sr", "sendres", "resurrection", "ss", "sendsed", "rs", "reqsed": - if s.server.erupeConfig.RealClientMode == _config.ZZ { + if s.server.erupeConfig.ClientID == _config.ZZ { switch args[1] { case "sr", "sendres", "resurrection": if s.server.raviente.state[28] > 0 { diff --git a/server/channelserver/handlers_character.go b/server/channelserver/handlers_character.go index 237198b80..a8823c2ca 100644 --- a/server/channelserver/handlers_character.go +++ b/server/channelserver/handlers_character.go @@ -58,7 +58,7 @@ type CharacterSaveData struct { func getPointers() map[SavePointer]int { pointers := map[SavePointer]int{pGender: 81, lBookshelfData: 5576} - switch _config.ErupeConfig.RealClientMode { + switch _config.ErupeConfig.ClientID { case _config.ZZ: pointers[pWeaponID] = 128522 pointers[pWeaponType] = 128789 @@ -110,9 +110,9 @@ func getPointers() map[SavePointer]int { pointers[pGardenData] = 26424 pointers[pRP] = 26614 } - if _config.ErupeConfig.RealClientMode == _config.G5 { + if _config.ErupeConfig.ClientID == _config.G5 { pointers[lBookshelfData] = 5548 - } else if _config.ErupeConfig.RealClientMode <= _config.GG { + } else if _config.ErupeConfig.ClientID <= _config.GG { pointers[lBookshelfData] = 4520 } return pointers @@ -164,7 +164,7 @@ func (save *CharacterSaveData) Save(s *Session) { save.updateSaveDataWithStruct() - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { err := save.Compress() if err != nil { s.logger.Error("Failed to compress savedata", zap.Error(err)) @@ -207,10 +207,10 @@ func (save *CharacterSaveData) Decompress() error { func (save *CharacterSaveData) updateSaveDataWithStruct() { rpBytes := make([]byte, 2) binary.LittleEndian.PutUint16(rpBytes, save.RP) - if _config.ErupeConfig.RealClientMode >= _config.F4 { + if _config.ErupeConfig.ClientID >= _config.F4 { copy(save.decompSave[save.Pointers[pRP]:save.Pointers[pRP]+2], rpBytes) } - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { copy(save.decompSave[save.Pointers[pKQF]:save.Pointers[pKQF]+8], save.KQF) } } @@ -224,7 +224,7 @@ func (save *CharacterSaveData) updateStructWithSaveData() { save.Gender = false } if !save.IsNewCharacter { - if _config.ErupeConfig.RealClientMode >= _config.S6 { + if _config.ErupeConfig.ClientID >= _config.S6 { save.RP = binary.LittleEndian.Uint16(save.decompSave[save.Pointers[pRP] : save.Pointers[pRP]+2]) save.HouseTier = save.decompSave[save.Pointers[pHouseTier] : save.Pointers[pHouseTier]+5] save.HouseData = save.decompSave[save.Pointers[pHouseData] : save.Pointers[pHouseData]+195] @@ -235,12 +235,12 @@ func (save *CharacterSaveData) updateStructWithSaveData() { save.WeaponType = save.decompSave[save.Pointers[pWeaponType]] save.WeaponID = binary.LittleEndian.Uint16(save.decompSave[save.Pointers[pWeaponID] : save.Pointers[pWeaponID]+2]) save.HR = binary.LittleEndian.Uint16(save.decompSave[save.Pointers[pHR] : save.Pointers[pHR]+2]) - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { if save.HR == uint16(999) { save.GR = grpToGR(int(binary.LittleEndian.Uint32(save.decompSave[save.Pointers[pGRP] : save.Pointers[pGRP]+4]))) } } - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { save.KQF = save.decompSave[save.Pointers[pKQF] : save.Pointers[pKQF]+8] } } diff --git a/server/channelserver/handlers_data.go b/server/channelserver/handlers_data.go index ad1f6884a..d582d1b7c 100644 --- a/server/channelserver/handlers_data.go +++ b/server/channelserver/handlers_data.go @@ -61,7 +61,7 @@ func handleMsgMhfSavedata(s *Session, p mhfpacket.MHFPacket) { s.Name = characterSaveData.Name } - if characterSaveData.Name == s.Name || _config.ErupeConfig.RealClientMode <= _config.S10 { + if characterSaveData.Name == s.Name || _config.ErupeConfig.ClientID <= _config.S10 { characterSaveData.Save(s) s.logger.Info("Wrote recompressed savedata back to DB.") } else { diff --git a/server/channelserver/handlers_distitem.go b/server/channelserver/handlers_distitem.go index 5ccec0cbc..670c968cf 100644 --- a/server/channelserver/handlers_distitem.go +++ b/server/channelserver/handlers_distitem.go @@ -64,7 +64,7 @@ func handleMsgMhfEnumerateDistItem(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint32(dist.Rights) bf.WriteUint16(dist.TimesAcceptable) bf.WriteUint16(dist.TimesAccepted) - if _config.ErupeConfig.RealClientMode >= _config.G9 { + if _config.ErupeConfig.ClientID >= _config.G9 { bf.WriteUint16(0) // Unk } bf.WriteInt16(dist.MinHR) @@ -73,29 +73,29 @@ func handleMsgMhfEnumerateDistItem(s *Session, p mhfpacket.MHFPacket) { bf.WriteInt16(dist.MaxSR) bf.WriteInt16(dist.MinGR) bf.WriteInt16(dist.MaxGR) - if _config.ErupeConfig.RealClientMode >= _config.G7 { + if _config.ErupeConfig.ClientID >= _config.G7 { bf.WriteUint8(0) // Unk } - if _config.ErupeConfig.RealClientMode >= _config.G6 { + if _config.ErupeConfig.ClientID >= _config.G6 { bf.WriteUint16(0) // Unk } - if _config.ErupeConfig.RealClientMode >= _config.G8 { + if _config.ErupeConfig.ClientID >= _config.G8 { if dist.Selection { bf.WriteUint8(2) // Selection } else { bf.WriteUint8(0) } } - if _config.ErupeConfig.RealClientMode >= _config.G7 { + if _config.ErupeConfig.ClientID >= _config.G7 { bf.WriteUint16(0) // Unk bf.WriteUint16(0) // Unk } - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { bf.WriteUint8(0) // Unk } ps.Uint8(bf, dist.EventName, true) k := 6 - if _config.ErupeConfig.RealClientMode >= _config.G8 { + if _config.ErupeConfig.ClientID >= _config.G8 { k = 13 } for i := 0; i < 6; i++ { @@ -104,7 +104,7 @@ func handleMsgMhfEnumerateDistItem(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint32(0) } } - if _config.ErupeConfig.RealClientMode >= _config.Z2 { + if _config.ErupeConfig.ClientID >= _config.Z2 { i := uint8(0) bf.WriteUint8(i) if i <= 10 { @@ -152,7 +152,7 @@ func handleMsgMhfApplyDistItem(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint8(item.ItemType) bf.WriteUint32(item.ItemID) bf.WriteUint32(item.Quantity) - if _config.ErupeConfig.RealClientMode >= _config.G8 { + if _config.ErupeConfig.ClientID >= _config.G8 { bf.WriteUint32(item.ID) } } diff --git a/server/channelserver/handlers_diva.go b/server/channelserver/handlers_diva.go index cef2b9840..8fee29610 100644 --- a/server/channelserver/handlers_diva.go +++ b/server/channelserver/handlers_diva.go @@ -73,7 +73,7 @@ func handleMsgMhfGetUdSchedule(s *Session, p mhfpacket.MHFPacket) { var timestamps []uint32 if s.server.erupeConfig.DebugOptions.DivaOverride >= 0 { if s.server.erupeConfig.DebugOptions.DivaOverride == 0 { - if s.server.erupeConfig.RealClientMode >= _config.Z2 { + if s.server.erupeConfig.ClientID >= _config.Z2 { doAckBufSucceed(s, pkt.AckHandle, make([]byte, 36)) } else { doAckBufSucceed(s, pkt.AckHandle, make([]byte, 32)) @@ -85,7 +85,7 @@ func handleMsgMhfGetUdSchedule(s *Session, p mhfpacket.MHFPacket) { timestamps = generateDivaTimestamps(s, start, false) } - if s.server.erupeConfig.RealClientMode >= _config.Z2 { + if s.server.erupeConfig.ClientID >= _config.Z2 { bf.WriteUint32(id) } for i := range timestamps { diff --git a/server/channelserver/handlers_event.go b/server/channelserver/handlers_event.go index aff448389..d2a4f62e1 100644 --- a/server/channelserver/handlers_event.go +++ b/server/channelserver/handlers_event.go @@ -88,13 +88,13 @@ func handleMsgMhfGetWeeklySchedule(s *Session, p mhfpacket.MHFPacket) { func generateFeatureWeapons(count int) activeFeature { _max := 14 - if _config.ErupeConfig.RealClientMode < _config.ZZ { + if _config.ErupeConfig.ClientID < _config.ZZ { _max = 13 } - if _config.ErupeConfig.RealClientMode < _config.G10 { + if _config.ErupeConfig.ClientID < _config.G10 { _max = 12 } - if _config.ErupeConfig.RealClientMode < _config.GG { + if _config.ErupeConfig.ClientID < _config.GG { _max = 11 } if count > _max { diff --git a/server/channelserver/handlers_festa.go b/server/channelserver/handlers_festa.go index a20376489..bd4f1c4c5 100644 --- a/server/channelserver/handlers_festa.go +++ b/server/channelserver/handlers_festa.go @@ -236,7 +236,7 @@ func handleMsgMhfInfoFesta(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint16(trial.Locale) bf.WriteUint16(trial.Reward) bf.WriteInt16(FestivalColorCodes[trial.Monopoly]) - if _config.ErupeConfig.RealClientMode >= _config.F4 { // Not in S6.0 + if _config.ErupeConfig.ClientID >= _config.F4 { // Not in S6.0 bf.WriteUint16(trial.Unk) } } @@ -279,13 +279,13 @@ func handleMsgMhfInfoFesta(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint16(reward.Quantity) bf.WriteUint16(reward.ItemID) // Not confirmed to be G1 but exists in G3 - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { bf.WriteUint16(reward.Unk5) bf.WriteUint16(reward.Unk6) bf.WriteUint8(reward.Unk7) } } - if _config.ErupeConfig.RealClientMode <= _config.G61 { + if _config.ErupeConfig.ClientID <= _config.G61 { if s.server.erupeConfig.GameplayOptions.MaximumFP > 0xFFFF { s.server.erupeConfig.GameplayOptions.MaximumFP = 0xFFFF } @@ -348,7 +348,7 @@ func handleMsgMhfInfoFesta(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint16(100) // Normal rate bf.WriteUint16(50) // 50% penalty - if _config.ErupeConfig.RealClientMode >= _config.G52 { + if _config.ErupeConfig.ClientID >= _config.G52 { ps.Uint16(bf, "", false) } doAckBufSucceed(s, pkt.AckHandle, bf.Data()) @@ -433,7 +433,7 @@ func handleMsgMhfEnumerateFestaMember(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint16(0) // Unk for _, member := range validMembers { bf.WriteUint32(member.CharID) - if _config.ErupeConfig.RealClientMode <= _config.Z1 { + if _config.ErupeConfig.ClientID <= _config.Z1 { bf.WriteUint16(uint16(member.Souls)) bf.WriteUint16(0) } else { diff --git a/server/channelserver/handlers_guild.go b/server/channelserver/handlers_guild.go index fe6919ab4..e00f39f16 100644 --- a/server/channelserver/handlers_guild.go +++ b/server/channelserver/handlers_guild.go @@ -123,7 +123,7 @@ func (g *Guild) Rank() uint16 { 24, 48, 96, 144, 192, 240, 288, 360, 432, 504, 600, 696, 792, 888, 984, 1080, 1200, } - if _config.ErupeConfig.RealClientMode <= _config.Z2 { + if _config.ErupeConfig.ClientID <= _config.Z2 { rpMap = []uint32{ 3500, 6000, 8500, 11000, 13500, 16000, 20000, 24000, 28000, 33000, 38000, 43000, 48000, 55000, 70000, 90000, 120000, @@ -131,21 +131,21 @@ func (g *Guild) Rank() uint16 { } for i, u := range rpMap { if g.RankRP < u { - if _config.ErupeConfig.RealClientMode <= _config.S6 && i >= 12 { + if _config.ErupeConfig.ClientID <= _config.S6 && i >= 12 { return 12 - } else if _config.ErupeConfig.RealClientMode <= _config.F5 && i >= 13 { + } else if _config.ErupeConfig.ClientID <= _config.F5 && i >= 13 { return 13 - } else if _config.ErupeConfig.RealClientMode <= _config.G32 && i >= 14 { + } else if _config.ErupeConfig.ClientID <= _config.G32 && i >= 14 { return 14 } return uint16(i) } } - if _config.ErupeConfig.RealClientMode <= _config.S6 { + if _config.ErupeConfig.ClientID <= _config.S6 { return 12 - } else if _config.ErupeConfig.RealClientMode <= _config.F5 { + } else if _config.ErupeConfig.ClientID <= _config.F5 { return 13 - } else if _config.ErupeConfig.RealClientMode <= _config.G32 { + } else if _config.ErupeConfig.ClientID <= _config.G32 { return 14 } return 17 @@ -1006,7 +1006,7 @@ func handleMsgMhfInfoGuild(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint8(guild.PugiOutfit1) bf.WriteUint8(guild.PugiOutfit2) bf.WriteUint8(guild.PugiOutfit3) - if s.server.erupeConfig.RealClientMode >= _config.Z1 { + if s.server.erupeConfig.ClientID >= _config.Z1 { bf.WriteUint8(guild.PugiOutfit1) bf.WriteUint8(guild.PugiOutfit2) bf.WriteUint8(guild.PugiOutfit3) @@ -1460,10 +1460,10 @@ func handleMsgMhfEnumerateGuildMember(s *Session, p mhfpacket.MHFPacket) { for _, member := range guildMembers { bf.WriteUint32(member.CharID) bf.WriteUint16(member.HR) - if s.server.erupeConfig.RealClientMode >= _config.G10 { + if s.server.erupeConfig.ClientID >= _config.G10 { bf.WriteUint16(member.GR) } - if s.server.erupeConfig.RealClientMode < _config.ZZ { + if s.server.erupeConfig.ClientID < _config.ZZ { // Magnet Spike crash workaround bf.WriteUint16(0) } else { diff --git a/server/channelserver/handlers_house.go b/server/channelserver/handlers_house.go index 45bac4437..692fca4a3 100644 --- a/server/channelserver/handlers_house.go +++ b/server/channelserver/handlers_house.go @@ -122,7 +122,7 @@ func handleMsgMhfEnumerateHouse(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint8(0) } bf.WriteUint16(house.HR) - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { bf.WriteUint16(house.GR) } ps.Uint8(bf, house.Name, true) @@ -258,7 +258,7 @@ func handleMsgMhfLoadDecoMyset(s *Session, p mhfpacket.MHFPacket) { } if len(data) == 0 { data = []byte{0x01, 0x00} - if s.server.erupeConfig.RealClientMode < _config.G10 { + if s.server.erupeConfig.ClientID < _config.G10 { data = []byte{0x00, 0x00} } } @@ -278,7 +278,7 @@ func handleMsgMhfSaveDecoMyset(s *Session, p mhfpacket.MHFPacket) { // Version handling bf := byteframe.NewByteFrame() var size uint - if s.server.erupeConfig.RealClientMode >= _config.G10 { + if s.server.erupeConfig.ClientID >= _config.G10 { size = 76 bf.WriteUint8(1) } else { diff --git a/server/channelserver/handlers_mercenary.go b/server/channelserver/handlers_mercenary.go index 468c9042e..fe23ea4db 100644 --- a/server/channelserver/handlers_mercenary.go +++ b/server/channelserver/handlers_mercenary.go @@ -57,7 +57,7 @@ func handleMsgMhfLoadLegendDispatch(s *Session, p mhfpacket.MHFPacket) { func handleMsgMhfLoadHunterNavi(s *Session, p mhfpacket.MHFPacket) { pkt := p.(*mhfpacket.MsgMhfLoadHunterNavi) naviLength := 552 - if s.server.erupeConfig.RealClientMode <= _config.G7 { + if s.server.erupeConfig.ClientID <= _config.G7 { naviLength = 280 } var data []byte @@ -73,7 +73,7 @@ func handleMsgMhfSaveHunterNavi(s *Session, p mhfpacket.MHFPacket) { pkt := p.(*mhfpacket.MsgMhfSaveHunterNavi) if pkt.IsDataDiff { naviLength := 552 - if s.server.erupeConfig.RealClientMode <= _config.G7 { + if s.server.erupeConfig.ClientID <= _config.G7 { naviLength = 280 } var data []byte diff --git a/server/channelserver/handlers_quest.go b/server/channelserver/handlers_quest.go index 92b09142f..0d2412365 100644 --- a/server/channelserver/handlers_quest.go +++ b/server/channelserver/handlers_quest.go @@ -62,16 +62,16 @@ func BackportQuest(data []byte) []byte { } fillLength := uint32(108) - if _config.ErupeConfig.RealClientMode <= _config.S6 { + if _config.ErupeConfig.ClientID <= _config.S6 { fillLength = 44 - } else if _config.ErupeConfig.RealClientMode <= _config.F5 { + } else if _config.ErupeConfig.ClientID <= _config.F5 { fillLength = 52 - } else if _config.ErupeConfig.RealClientMode <= _config.G101 { + } else if _config.ErupeConfig.ClientID <= _config.G101 { fillLength = 76 } copy(data[wp:wp+fillLength], data[rp:rp+fillLength]) - if _config.ErupeConfig.RealClientMode <= _config.G91 { + if _config.ErupeConfig.ClientID <= _config.G91 { patterns := [][]byte{ {0x0A, 0x00, 0x01, 0x33, 0xD7, 0x00}, // 10% Armor Sphere -> Stone {0x06, 0x00, 0x02, 0x33, 0xD8, 0x00}, // 6% Armor Sphere+ -> Iron Ore @@ -132,7 +132,7 @@ func handleMsgSysGetFile(s *Session, p mhfpacket.MHFPacket) { doAckBufSucceed(s, pkt.AckHandle, data) return } - if _config.ErupeConfig.RealClientMode <= _config.Z1 && s.server.erupeConfig.DebugOptions.AutoQuestBackport { + if _config.ErupeConfig.ClientID <= _config.Z1 && s.server.erupeConfig.DebugOptions.AutoQuestBackport { data = BackportQuest(decryption.UnpackSimple(data)) } doAckBufSucceed(s, pkt.AckHandle, data) @@ -196,7 +196,7 @@ func loadQuestFile(s *Session, questId int) []byte { } decrypted := decryption.UnpackSimple(file) - if _config.ErupeConfig.RealClientMode <= _config.Z1 && s.server.erupeConfig.DebugOptions.AutoQuestBackport { + if _config.ErupeConfig.ClientID <= _config.Z1 && s.server.erupeConfig.DebugOptions.AutoQuestBackport { decrypted = BackportQuest(decrypted) } fileBytes := byteframe.NewByteFrameFromBytes(decrypted) @@ -204,13 +204,13 @@ func loadQuestFile(s *Session, questId int) []byte { fileBytes.Seek(int64(fileBytes.ReadUint32()), 0) bodyLength := 320 - if _config.ErupeConfig.RealClientMode <= _config.S6 { + if _config.ErupeConfig.ClientID <= _config.S6 { bodyLength = 160 - } else if _config.ErupeConfig.RealClientMode <= _config.F5 { + } else if _config.ErupeConfig.ClientID <= _config.F5 { bodyLength = 168 - } else if _config.ErupeConfig.RealClientMode <= _config.G101 { + } else if _config.ErupeConfig.ClientID <= _config.G101 { bodyLength = 192 - } else if _config.ErupeConfig.RealClientMode <= _config.Z1 { + } else if _config.ErupeConfig.ClientID <= _config.Z1 { bodyLength = 224 } @@ -282,7 +282,7 @@ func makeEventQuest(s *Session, rows *sql.Rows) ([]byte, error) { bf.WriteBool(true) } bf.WriteUint16(0) // Unk - if _config.ErupeConfig.RealClientMode >= _config.G2 { + if _config.ErupeConfig.ClientID >= _config.G2 { bf.WriteUint32(mark) } bf.WriteUint16(0) // Unk @@ -580,23 +580,23 @@ func handleMsgMhfEnumerateQuest(s *Session, p mhfpacket.MHFPacket) { tuneValues = temp tuneLimit := 770 - if _config.ErupeConfig.RealClientMode <= _config.G1 { + if _config.ErupeConfig.ClientID <= _config.G1 { tuneLimit = 256 - } else if _config.ErupeConfig.RealClientMode <= _config.G3 { + } else if _config.ErupeConfig.ClientID <= _config.G3 { tuneLimit = 283 - } else if _config.ErupeConfig.RealClientMode <= _config.GG { + } else if _config.ErupeConfig.ClientID <= _config.GG { tuneLimit = 315 - } else if _config.ErupeConfig.RealClientMode <= _config.G61 { + } else if _config.ErupeConfig.ClientID <= _config.G61 { tuneLimit = 332 - } else if _config.ErupeConfig.RealClientMode <= _config.G7 { + } else if _config.ErupeConfig.ClientID <= _config.G7 { tuneLimit = 339 - } else if _config.ErupeConfig.RealClientMode <= _config.G81 { + } else if _config.ErupeConfig.ClientID <= _config.G81 { tuneLimit = 396 - } else if _config.ErupeConfig.RealClientMode <= _config.G91 { + } else if _config.ErupeConfig.ClientID <= _config.G91 { tuneLimit = 694 - } else if _config.ErupeConfig.RealClientMode <= _config.G101 { + } else if _config.ErupeConfig.ClientID <= _config.G101 { tuneLimit = 704 - } else if _config.ErupeConfig.RealClientMode <= _config.Z2 { + } else if _config.ErupeConfig.ClientID <= _config.Z2 { tuneLimit = 750 } if len(tuneValues) > tuneLimit { diff --git a/server/channelserver/handlers_shop_gacha.go b/server/channelserver/handlers_shop_gacha.go index bc6272695..334c92593 100644 --- a/server/channelserver/handlers_shop_gacha.go +++ b/server/channelserver/handlers_shop_gacha.go @@ -62,7 +62,7 @@ func writeShopItems(bf *byteframe.ByteFrame, items []ShopItem) { bf.WriteUint16(uint16(len(items))) bf.WriteUint16(uint16(len(items))) for _, item := range items { - if _config.ErupeConfig.RealClientMode >= _config.Z2 { + if _config.ErupeConfig.ClientID >= _config.Z2 { bf.WriteUint32(item.ID) } bf.WriteUint32(item.ItemID) @@ -70,19 +70,19 @@ func writeShopItems(bf *byteframe.ByteFrame, items []ShopItem) { bf.WriteUint16(item.Quantity) bf.WriteUint16(item.MinHR) bf.WriteUint16(item.MinSR) - if _config.ErupeConfig.RealClientMode >= _config.Z2 { + if _config.ErupeConfig.ClientID >= _config.Z2 { bf.WriteUint16(item.MinGR) } bf.WriteUint8(0) // Unk bf.WriteUint8(item.StoreLevel) - if _config.ErupeConfig.RealClientMode >= _config.Z2 { + if _config.ErupeConfig.ClientID >= _config.Z2 { bf.WriteUint16(item.MaxQuantity) bf.WriteUint16(item.UsedQuantity) } - if _config.ErupeConfig.RealClientMode == _config.Z1 { + if _config.ErupeConfig.ClientID == _config.Z1 { bf.WriteUint8(uint8(item.RoadFloors)) bf.WriteUint8(uint8(item.RoadFatalis)) - } else if _config.ErupeConfig.RealClientMode >= _config.Z2 { + } else if _config.ErupeConfig.ClientID >= _config.Z2 { bf.WriteUint16(item.RoadFloors) bf.WriteUint16(item.RoadFatalis) } @@ -123,7 +123,7 @@ func handleMsgMhfEnumerateShop(s *Session, p mhfpacket.MHFPacket) { switch pkt.ShopType { case 1: // Running gachas // Fundamentally, gacha works completely differently, just hide it for now. - if _config.ErupeConfig.RealClientMode <= _config.G7 { + if _config.ErupeConfig.ClientID <= _config.G7 { doAckBufSucceed(s, pkt.AckHandle, make([]byte, 4)) return } @@ -156,7 +156,7 @@ func handleMsgMhfEnumerateShop(s *Session, p mhfpacket.MHFPacket) { ps.Uint8(bf, g.Name, true) ps.Uint8(bf, g.URLBanner, false) ps.Uint8(bf, g.URLFeature, false) - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { bf.WriteBool(g.Wide) ps.Uint8(bf, g.URLThumbnail, false) } @@ -166,7 +166,7 @@ func handleMsgMhfEnumerateShop(s *Session, p mhfpacket.MHFPacket) { bf.WriteUint16(0) } bf.WriteUint8(g.GachaType) - if _config.ErupeConfig.RealClientMode >= _config.G10 { + if _config.ErupeConfig.ClientID >= _config.G10 { bf.WriteBool(g.Hidden) } } @@ -708,7 +708,7 @@ func handleMsgMhfGetFpointExchangeList(s *Session, p mhfpacket.MHFPacket) { exchanges = append(exchanges, exchange) } } - if _config.ErupeConfig.RealClientMode <= _config.Z2 { + if _config.ErupeConfig.ClientID <= _config.Z2 { bf.WriteUint8(uint8(len(exchanges))) bf.WriteUint8(uint8(buyables)) } else { diff --git a/server/channelserver/handlers_tower.go b/server/channelserver/handlers_tower.go index 7597c70fc..42dcdaff8 100644 --- a/server/channelserver/handlers_tower.go +++ b/server/channelserver/handlers_tower.go @@ -67,7 +67,7 @@ func handleMsgMhfGetTowerInfo(s *Session, p mhfpacket.MHFPacket) { s.server.db.Exec(`INSERT INTO tower (char_id) VALUES ($1)`, s.charID) } - if _config.ErupeConfig.RealClientMode <= _config.G7 { + if _config.ErupeConfig.ClientID <= _config.G7 { towerInfo.Level = towerInfo.Level[:1] } diff --git a/server/entranceserver/make_resp.go b/server/entranceserver/make_resp.go index 003adbb4f..68086a017 100644 --- a/server/entranceserver/make_resp.go +++ b/server/entranceserver/make_resp.go @@ -18,12 +18,12 @@ func encodeServerInfo(config *_config.Config, s *Server, local bool) []byte { for serverIdx, si := range serverInfos { // Prevent MezFes Worlds displaying on Z1 - if config.RealClientMode <= _config.Z1 { + if config.ClientID <= _config.Z1 { if si.Type == 6 { continue } } - if config.RealClientMode <= _config.G6 { + if config.ClientID <= _config.G6 { if si.Type == 5 { continue } @@ -42,22 +42,22 @@ func encodeServerInfo(config *_config.Config, s *Server, local bool) []byte { bf.WriteUint16(uint16(len(si.Channels))) bf.WriteUint8(si.Type) bf.WriteUint8(uint8(((gametime.TimeAdjusted().Unix() / 86400) + int64(serverIdx)) % 3)) - if s.erupeConfig.RealClientMode >= _config.G1 { + if s.erupeConfig.ClientID >= _config.G1 { bf.WriteUint8(si.Recommended) } fullName := append(append(stringsupport.UTF8ToSJIS(si.Name), []byte{0x00}...), stringsupport.UTF8ToSJIS(si.Description)...) - if s.erupeConfig.RealClientMode >= _config.G1 && s.erupeConfig.RealClientMode <= _config.G5 { + if s.erupeConfig.ClientID >= _config.G1 && s.erupeConfig.ClientID <= _config.G5 { bf.WriteUint8(uint8(len(fullName))) bf.WriteBytes(fullName) } else { - if s.erupeConfig.RealClientMode >= _config.G51 { + if s.erupeConfig.ClientID >= _config.G51 { bf.WriteUint8(0) // Ignored } bf.WriteBytes(stringsupport.PaddedString(string(fullName), 65, false)) } - if s.erupeConfig.RealClientMode >= _config.GG { + if s.erupeConfig.ClientID >= _config.GG { bf.WriteUint32(si.AllowedClientFlags) } @@ -112,7 +112,7 @@ func makeSv2Resp(config *_config.Config, s *Server, local bool) []byte { serverInfos := config.Entrance.Entries // Decrease by the number of MezFes Worlds var mf int - if config.RealClientMode <= _config.Z1 { + if config.ClientID <= _config.Z1 { for _, si := range serverInfos { if si.Type == 6 { mf++ @@ -121,7 +121,7 @@ func makeSv2Resp(config *_config.Config, s *Server, local bool) []byte { } // and Return Worlds var ret int - if config.RealClientMode <= _config.G6 { + if config.ClientID <= _config.G6 { for _, si := range serverInfos { if si.Type == 5 { ret++ @@ -135,7 +135,7 @@ func makeSv2Resp(config *_config.Config, s *Server, local bool) []byte { } respType := "SV2" - if config.RealClientMode <= _config.G32 { + if config.ClientID <= _config.G32 { respType = "SVR" } diff --git a/server/signserver/dsgn_resp.go b/server/signserver/dsgn_resp.go index a4c3f8846..486e3b9e1 100644 --- a/server/signserver/dsgn_resp.go +++ b/server/signserver/dsgn_resp.go @@ -84,7 +84,7 @@ func (s *Session) makeSignResponse(uid uint32) []byte { bf.WriteBool(true) // Use uint16 GR, no reason not to bf.WriteBytes(stringsupport.PaddedString(char.Name, 16, true)) // Character name bf.WriteBytes(stringsupport.PaddedString(char.UnkDescString, 32, false)) // unk str - if s.server.erupeConfig.RealClientMode >= _config.G7 { + if s.server.erupeConfig.ClientID >= _config.G7 { bf.WriteUint16(char.GR) bf.WriteUint8(0) // Unk bf.WriteUint8(0) // Unk diff --git a/utils/mhfitem/mhfitem.go b/utils/mhfitem/mhfitem.go index 07b6b06d1..343fa7084 100644 --- a/utils/mhfitem/mhfitem.go +++ b/utils/mhfitem/mhfitem.go @@ -114,7 +114,7 @@ func ReadWarehouseEquipment(bf *byteframe.ByteFrame) MHFEquipment { for i := 0; i < 3; i++ { equipment.Decorations[i].ItemID = bf.ReadUint16() } - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { equipment.Sigils[i].Effects[j].ID = bf.ReadUint16() @@ -128,7 +128,7 @@ func ReadWarehouseEquipment(bf *byteframe.ByteFrame) MHFEquipment { equipment.Sigils[i].Unk3 = bf.ReadUint8() } } - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { equipment.Unk1 = bf.ReadUint16() } return equipment @@ -144,7 +144,7 @@ func (e MHFEquipment) ToBytes() []byte { for i := 0; i < 3; i++ { bf.WriteUint16(e.Decorations[i].ItemID) } - if _config.ErupeConfig.RealClientMode >= _config.G1 { + if _config.ErupeConfig.ClientID >= _config.G1 { for i := 0; i < 3; i++ { for j := 0; j < 3; j++ { bf.WriteUint16(e.Sigils[i].Effects[j].ID) @@ -158,7 +158,7 @@ func (e MHFEquipment) ToBytes() []byte { bf.WriteUint8(e.Sigils[i].Unk3) } } - if _config.ErupeConfig.RealClientMode >= _config.Z1 { + if _config.ErupeConfig.ClientID >= _config.Z1 { bf.WriteUint16(e.Unk1) } return bf.Data()