4.6 KiB
4.6 KiB
国服客户端兼容性与反汇编审计记录(涵盖 2026.09.15 与 2026.10.06)
- 日期:2026 年 10 月 13 日
- 国服游戏路径:
D:\FINAL FANTASY XIV - 国服更新后版本:
2026.10.06.0000.0000 - 国服更新后二进制:
D:\FINAL FANTASY XIV\game\ffxiv_dx11.exe(51,910,400 字节,SHA256958B78E278AD896493C484EB313FF605AB41EDEFEF74F92B0EE078E69B281BF9) - 国服更新前基线备份:
binaries/2026.09.15.0000.0000-cn/ffxiv_dx11.exe(51,881,216 字节,SHA2567BA28760BC53CBBBF66B63105FEA6C1BFE09CB6B1C6353FC8FB0FF03CC1A30F4) - 国服启动器:
XIVLauncherCN(位于C:\Users\AinaSnow\AppData\Roaming\XIVLauncherCN)
1. 国服更新前后 23 处特征码全量扫描对照
在更新后的国服二进制上执行扫描,23/23 处特征码全部匹配成功(22 处单一匹配,1 处 NoBackswing 包装入口匹配 2 处且首匹配正确):
| 序号 | 目标名称 | 模块 ID | 国服更新前 RVA (2026.09.15 CN) | 国服更新后 RVA (2026.10.06 CN) | 国际服新版 RVA (2026.10.06 Global) | 匹配数 | 状态 |
|---|---|---|---|---|---|---|---|
| 1 | SpeedHook |
1 | 0x8D5060 |
0x8D61A0 |
0x8D6AF0 |
1 | 匹配 |
| 2 | AccelerationHook |
2 | 0x1827FC0 |
0x1829480 |
0x182BB40 |
1 | 匹配 |
| 3 | MovePermissionHook |
3 | 0xE12940 |
0xE13F70 |
0xE16030 |
1 | 匹配 |
| 4 | AntiKnockHook |
4 | 0x909EB0 |
0x90AEB0 |
0x90B650 |
1 | 匹配 |
| 5 | OnSendFlagHook |
5 | 0x62A250 |
0x62B350 |
0x62B050 |
1 | 匹配 |
| 6 | FallCheckHook |
6 | 0x182BE84 |
0x182D344 |
0x182FA04 |
1 | 匹配 |
| 7 | ForcedWalkHook |
7 | 0x1947573 |
0x1948A83 |
0x194AFE3 |
1 | 匹配 |
| 8 | StatusSetter |
8 | 0x8A4E10 |
0x8A5F50 |
0x8A6A30 |
1 | 匹配 |
| 9 | LocalPlayerPtr |
8 | 0xB34FBA |
0xB3660A |
0xB37D0A |
1 | 匹配 |
| 10 | OnSendNormalMove |
9 | 0x62A970 |
0x62BA70 |
0x62B770 |
1 | 匹配 |
| 11 | OnSendCombatMove |
9 | 0x62AA20 |
0x62BB20 |
0x62B820 |
1 | 匹配 |
| 12 | ActorRadius |
14 | 0x175360F |
0x1754CDF |
0x175720F |
1 | 匹配 |
| 13 | NativeTargetRingUpdate |
14 | 0x7B43E0 |
0x7B54F0 |
0x7B52D0 |
1 | 匹配 |
| 14 | NoBackswing |
15 | 0x8D5150 |
0x8D6290 |
0x8D6BE0 |
2 (首匹配有效) | 匹配 |
| 15 | ActionMovementStart |
16 | 0x181E9B0 |
0x181FE70 |
0x1822530 |
1 | 匹配 |
| 16 | SyncRecast |
17 | 0x8ED480 |
0x8EE480 |
0x8EEC20 |
1 | 匹配 |
| 17 | CastStaticAddress |
19 | 0x1054C7 |
0x1054D7 |
0x104FF7 |
1 | 匹配 |
| 18 | CastUpdate |
19 | 0x8DE2C0 |
0x8DF400 |
0x8DFA60 |
1 | 匹配 |
| 19 | SetScale |
29 | 0x897940 |
0x898A80 |
0x899560 |
1 | 匹配 |
| 20 | ZoneUp |
36 | 0x1D6DAD0 |
0x1D706B0 |
0x1D72B00 |
1 | 匹配 |
| 21 | ZoneDown |
36 | 0x1D6D650 |
0x1D70230 |
0x1D72680 |
1 | 匹配 |
| 22 | ReceiverSendPacket |
M4 | 0x1CF9020 |
0x1CFA9B0 |
0x1CFD120 |
1 | 匹配 |
| 23 | ZoneClientSendPacket |
M4 | 0x1CFEF30 |
0x1D008B0 |
0x1D03020 |
1 | 匹配 |
2. 更新后关键原生反汇编核实
- M4 主动发送通道:
ReceiverSendPacket(0x1CFA9B0):mov rcx, [rcx+0A70h]读取ZoneClient,若空则返回0;非空以priority=0调用ZoneClientSendPacket(0x1D008B0)。ZoneClientSendPacket(0x1D008B0):mov rcx, [rcx+98h]检查底层指针,调用ZoneUp(0x1D706B0),保留真实返回码。ZoneUp(0x1D706B0):发送缓冲区契约(+0x00 Opcode、+0x08 TotalSize、+0x20 Payload)与旧版完全一致。
- 模块 36 收包:
ZoneDown(0x1D70230):cmp qword ptr [rcx+88h], 0,消息解包偏移完全一致。
- 模块 8 状态屏蔽:
StatusSetter(0x8A5F50):cmp edx, 3Ch(60 个状态栏槽位),槽位大小依然为 12 字节。LocalPlayerPtr(0xB3660A):虚表偏移+0x278(call qword ptr [rax+278h])完全一致。
- 模块 2 最大加速度:
AccelerationHook(0x1829480):cmp byte ptr [rcx+3Ch], 0、mov rdi, [rcx+20h]完全一致。
3. 国服环境与 Opcode
- 客户端版本:更新后
ffxivgame.ver变为2026.10.06.0000.0000,与代码中PacketParser.AuditedClientVersion完美吻合,门控全通。 - Opcode 配置:本地
opcodes.json中已含有"2026.10.06.0000.0000"(UP_PingReq: 137,DOWN_PingRsp: 338),Ping 与收发包分析立即就绪。 - 开发插件加载:
XIVLauncherCN的dalamudConfig.json中已注册ICRebuild.dll。