docs: 记录当前进展与剩下的四个拦路虎

修好高度偏好后机器人确实能朝目标走(实测 20 分钟前进 95 格),
但要真正开垦出第一块地还要跨过:

① 几何约束:规划器按到玩家的曼哈顿距离取最近的合法候选,而机器人出生在王城 ——
   它在「养老院」这个 33037 区块(约 180×180 区块)的大邦国正中间。
   实测最近候选在 53 区块(≈768 格)外,且 targetCount=1 只返回一个候选,
   长途跋涉是邦国几何决定的,绕不开。

② 服务器踢人,三种原因都实测到过:
   An internal error occurred in your connection(最常见,1~6 分钟一次)、
   You are sending too many packets!、Flying is not enabled on this server,
   外加未验证时的「验证超时」。实测出站 57.9 个/秒(pong 30.6、协议补包 23.9、
   位置包 1.35)。注意协议补包当初的立论依据已被证伪(真因是高度偏好),
   它们是否仍必要、是否就是「发包太多」的原因尚未验证。

③ 半路会死:fell from a high place / was slain by Zombie。
   摔死已处理 —— 服务器配置里 maxDropDown 被改成 64(钳制上限),
   而原版超过 3 格每格 1 点、23 格必死,已改回 4(代码默认本来就是 3)。
   被僵尸杀还没处理。

④ 推进速度只有物理速度的 1/5(净位移 0.405 格/秒 vs velocity 0.2~3 格/秒),
   差额是被服务端拉回。已补上 hasHorizontalCollision(1.10.0),
   该标志确实一直在被漏报(补写计数涨到 1 万+),但提速效果尚未量化验证。
这个提交包含在:
lyizai
2026-10-01 17:33:23 +08:00
父节点 1b958cb804
当前提交 1339765152
+34
查看文件
@@ -143,6 +143,40 @@ ls -1d /opt/autostore-bot/backup-* 2>/dev/null | tail -3
## 1. 🟢 「机器人走不动」:**已解决**(根因是自定义高度偏好,见下) ## 1. 🟢 「机器人走不动」:**已解决**(根因是自定义高度偏好,见下)
### 🚧 2026-10-01 当前进展与剩下的拦路虎
修复高度偏好后,机器人确实能朝目标走了(实测 20 分钟前进 95 格),
但要真正开垦出第一块地,还要跨过这几关:
**① 几何约束:目标天然就在 ~770 格外。**
规划器 `generateHolePriority` 是**按到玩家的曼哈顿距离排序**取最近的合法候选
(`expansionPlanner.js:109-130`),而机器人出生在**王城**——它在「养老院」这个
**33037 区块(约 180×180 区块)** 的大邦国正中间。实测最近的候选在 53 区块
(≈768 格)外,且 `targetCount: 1` 只返回一个候选。**所以长途跋涉是邦国几何决定的,绕不开。**
**② 服务器会踢它,三种原因都实测到过:**
- `You were kicked from main: An internal error occurred in your connection.`(最常见,约 1~6 分钟一次)
- `You were kicked from main: You are sending too many packets!`
- `You were kicked from main: Flying is not enabled on this server`
- 未完成验证时还有 `验证超时!您需要在 120 秒内完成身份验证`(120 秒内要人工发码)
实测出站包速率 **57.9 个/秒**,其中 `pong` 30.6(服务端在疯狂 ping)、
协议补包(`player_input` + `tick_end`)合计 23.9、位置包 1.35。
**注意:协议补包当初的立论依据(「走不动」的根因)已经被证伪**(真因是高度偏好),
它们是否仍然必要、是否就是「发包太多」的原因,**尚未验证**——这是下一步要测的。
**③ 半路会死**:实测死因是 `fell from a high place` 与 `was slain by Zombie`。
摔死那次白走了 100 多格。
- 摔死已处理:服务器配置里 `pathing.maxDropDown` 被改成了 **64**(钳制上限),
而原版摔落伤害超过 3 格后每格 1 点、**23 格必死**。已改回 4(代码默认本来就是 3)。
- 被僵尸杀还没处理:`autoAttack` 是开的,但夜里野外仍会被围死。
**④ 推进速度只有物理速度的 1/5**:实测机器人几乎每 tick 都按着 `forward+sprint`、
`velocity` 约 0.2~3 格/秒,但 2 秒粒度的**净位移只有 0.405 格/秒**
(48.6 格 / 120 秒)——差额是被服务端拉回的部分。为此已补上
`flags.hasHorizontalCollision`(mineflayer 恒写 `undefined`,见 [1.10.0]),
实测该标志确实一直在被漏报(补写计数很快涨到 1 万+),但**提速效果尚未量化验证**。
### ✅ 2026-10-01 突破:修掉高度偏好后扩地真的跑起来了 ### ✅ 2026-10-01 突破:修掉高度偏好后扩地真的跑起来了
**根因**:`AltitudeGoal` 把高度偏置加在**启发值**上 **根因**:`AltitudeGoal` 把高度偏置加在**启发值**上