fix(challenge,scene): challenge id auto-detect, real ScRsp ids, teleport ownership
Round-2 fixes from the 01:44-01:53 client session:
- StartChallenge (MoC/PF/AS normal start) decoded challenge_id=0 -> client
retried and aborted. detectChallengeID scans top-level varints for the
first plausible id (challenge_data + known mode ranges) when the strict
tag-14 decode misses; payload hexdump logged when still 0
- StartChallengeScRsp now carries stage_info (tag 13) with boss node buff
echo, per the 4.6.51 proto
- GetSwitchHandData replies 8108 (the real ScRsp) - 8104 is
SwitchHandStartCsReq, we were sending a request id back at the client
- GetSceneMapInfo: strict proto parse failed on some payloads (layout
drift) which stalled the map UI ('no pillars / navigation loading') -
now a raw handler with a lenient wire walk fallback + hexdump logging
- teleport destination ('AA teleport landed in AP'): teleport ids repeat
on every floor and teleports.json was scanned globally in random map
order. Map clicks now resolve floor-first via scene_identifier, and the
global id scan never touches teleports.json
- tierce: arena 3014101 -> 3000101 fallback (client has no MapEntrance
3014101), same as StartChallenge
This commit is contained in:
1 parent
d364b9616f
commit
876f20d857
4 files changed
+229
-29
No files matched your search
+7
-7
@@ -6,15 +6,15 @@
|
||||
"3": 1004
|
||||
},
|
||||
"position": {
|
||||
"x": 780,
|
||||
"y": -153008,
|
||||
"z": -621450,
|
||||
"rot_y": 0
|
||||
"x": 5379,
|
||||
"y": 0,
|
||||
"z": -2300,
|
||||
"rot_y": 54387
|
||||
},
|
||||
"scene": {
|
||||
"plane_id": 30141,
|
||||
"floor_id": 30141001,
|
||||
"entry_id": 3014101
|
||||
"plane_id": 10000,
|
||||
"floor_id": 10000000,
|
||||
"entry_id": 100000304
|
||||
},
|
||||
"main_character": "FemaleHarmony",
|
||||
"march_type": "MarchHunt",
|
||||
|
||||
Reference in new issue
Block a user