fix: sync current handlers, repair relic data and restore visible launcher consoles
This commit is contained in:
1 parent
163d4433e6
commit
74f3c4411b
46 files changed
+4599
-1402
No files matched your search
@@ -4,9 +4,7 @@ import (
|
||||
goproto "gac-hkrpg-go/protocol/proto"
|
||||
)
|
||||
|
||||
// Handlers for cmds the real 4.6.51 client sends during normal play that were
|
||||
// dropped in the first test session (2026-10-07 01:00) — several of them gate
|
||||
// UI state (pause menu, Endgame entry, map rotation) on the server's reply.
|
||||
// UI requests bound to the command names in the loaded protocol.
|
||||
|
||||
func init() {
|
||||
// client pauses itself when opening menus/map — must be acked
|
||||
@@ -16,12 +14,11 @@ func init() {
|
||||
return nil
|
||||
})
|
||||
|
||||
// the Endgame entrance waits for this before opening its UI
|
||||
// (4.6.51: CsReq 4190 -> ScRsp 4112, retcode = tag 14 — the Rust build
|
||||
// answered the wrong id 4130 and the client stalled)
|
||||
rawHandlers[4190] = func(s *Session, payload []byte) error {
|
||||
return s.SendRaw(&NetPacket{CmdType: 4112, Body: []byte{0x70, 0x00}})
|
||||
}
|
||||
// The Endgame entrance waits for this response before opening its UI.
|
||||
handle("GetUnreleasedBlockInfo", func(s *Session, req *goproto.GetUnreleasedBlockInfoCsReq, rsp *goproto.GetUnreleasedBlockInfoScRsp) error {
|
||||
rsp.Retcode = 0
|
||||
return nil
|
||||
})
|
||||
|
||||
handle("TakeQuestReward", func(s *Session, req *goproto.TakeQuestRewardCsReq, rsp *goproto.TakeQuestRewardScRsp) error {
|
||||
rsp.Retcode = 0
|
||||
|
||||
Reference in new issue
Block a user