TermiNexus
|
78ce1e60d7
|
fix(tools): 审计改用跨记录位游标,修正多记录帧误判
|
2026-10-21 03:28:52 +08:00 |
|
TermiNexus
|
62ab7f0b2c
|
fix(protocol): 单帧异常不再中断整轮回放,并记录 enum 宽度实验结论
|
2026-10-21 02:04:54 +08:00 |
|
TermiNexus
|
ecd3575a53
|
fix(protocol): 修正反查漏掉 \$ 前缀类名的错位,回放错误 12→6
|
2026-10-21 01:53:51 +08:00 |
|
TermiNexus
|
fcd071485d
|
feat(protocol): 采集运行时 modelId→codec 注册并用源码反查模块归属
|
2026-10-21 01:32:03 +08:00 |
|
TermiNexus
|
76e00f7aa2
|
feat(protocol): 离线回放支持多目录并补齐 pt 解码失败定位信息
|
2026-10-21 01:16:21 +08:00 |
|
TermiNexus
|
b9a777bc5f
|
feat(autotest): 新增双连接接入测试与链路密钥探测
- AutoTest:大厅 Hash Request → 取 digest/空间 id → 空间连接 EnterSpace → 收空间帧
- StreamDecoder:首条密文即穷举单字节链路密钥(K),之后 s2c 自动解密
- 首条空间帧到达后再加密发送 G.q1wd,服务端才会继续下发容器数据
- RunAutoTest.ps1:自动拉起大厅/空间两条中继,跑完自动回收
- 实测通过:握手成功、K 唯一命中、容器 1 条、回编码一致
|
2026-10-21 00:38:59 +08:00 |
|
TermiNexus
|
9adce9bc93
|
feat(protocol): 补齐容器命令与短命令别名机制
- Containers.kt 实现 lt/pt/zt/alias 四种布局,覆盖 ModelService 4 条容器命令
- 生成 ModelRegistry.ByModelId,供 pt 项按 modelId 展开
- 短命令:_setModelCommandAlias 解码后写入别名表,记录链可按别名继续解
- 下行注册补到 681 条;railgun-battle 400 帧复跑仍为 399/399 回编码一致
|
2026-10-21 00:13:12 +08:00 |
|
TermiNexus
|
a84f87f543
|
feat(tankioffline): 搭建 Kotlin/JS 多模块工程与 S2 全量协议层
- 新增 TankiOffline 多模块骨架(app/core/net/ecs/physics/render/resource/state/battle/ui)
- core 实现帧边界、nullmap 位流、大端读写、varint、fflate 解压
- GenerateProtocol.py 从 names 表生成 644 个模型、679 条下行、361 条上行 Kotlin codec
- 手写 TankState 的 23 字节位打包 codec(真实注册点是 module_87072 的 T5)
- app 增加 Node golden 自检:抓包解码后立即回编码逐字节比对
- 实测 plain/railgun-battle 400 帧:399 条记录全部回编码一致
|
2026-10-21 00:03:18 +08:00 |
|