promotional bannermobile promotional banner

Maid Mining

A Touhou Little Maid extension that adds autonomous ore mining task
Back to Files

maidmining-1.0.1.jar

File namemaidmining-1.0.1.jar
Uploader
leyuezhidaleyuezhida
Uploaded
Sep 26, 2026
Downloads
243
Size
65.0 KB
Mod Loaders
Forge
File ID
8978052
Type
R
Release
Supported game versions
  • 1.20.1

Curse Maven Snippet

Forge

implementation fg.deobf("curse.maven:maid-mining-1651763:8978052")

Learn more about Curse Maven

What's new

本次更新围绕「女仆在地下挖矿会卡住」做了一次系统性修复,并补上矿石定向与模组矿石支持。

修复

卡住相关(本次重点)

  • 不再被基岩卡住 —— 破坏结果现在会分类(永不可破 / 流体 / 被保护 / 暂时失败)。旧版把四种情况混成一个 false,于是对着基岩空转约 6 秒,再叠加错误的恢复动作(向上传送并清零卡住计数),最终形成「贴着基岩无限上爬」的死循环。现在遇到不可破坏的方块会立即放弃该目标并换下一个。
  • 矿道不再过高 —— 隧道净高改为按女仆碰撞箱推导(1×2,与玩家身高一致)。旧版固定挖 3 格高,比需要多挖约 1/3。上台阶处会在头顶局部多挖 1 格作为起跳空间——因为 2 格高的巷道里跳跃会被天花板截断,1 格台阶在物理上迈不上去。
  • 修复上坡「原地蹦跶不向前」 —— 上行不再依赖原版寻路(它在 1 格宽隧道里给不出路径,走位目标会被 MoveToTargetSink 直接抹掉),改为逐 tick 直接驱动移动;跳跃优先,传送仅作兜底,且兜底前会校验落点、兜底后清除累计落差。
  • 修复上坡时「空中放方块把自己挡住」 —— 垫脚方块不再于空中放置,也不会放进女仆自身所在的两格身体柱;只有确实需要抬升(高度差 ≥ 2)时才搭台阶,1 格高差直接用「伸手挖」。
  • 修复「突然停住」 —— 新增发呆检测:位置连续 20 tick 不变即接管为直接驱动,解决「代码以为在正常掘进、女仆却一步没动」。
  • 修复物品复制 —— 收集溢出掉落物时,「只装下一部分」的情况会正确回写剩余数量。旧版不回写,导致背包放不下时物品同时存在于背包与地面。
  • 修复镐子破损无音效/动画 —— 耐久耗尽时广播破坏事件。
  • 修复副手定向过滤失效 —— 见下方「矿石定向」。

专用服务器安全

  • 任务定义不再引用任何客户端类(旧版在 MiningTask 里调用 net.minecraft.client.* 来取翻译文本,这在专用服务器上会 NoClassDefFoundError,而旧代码只 catch (Exception) 捕不到 Error)。现在改用 TLM 的默认实现:任务名与描述由 UID 自动生成 i18n key,交给 GUI 翻译。

新增

  • 模组矿石自动支持 —— 矿石识别改为标签驱动:#minecraft:ores / #forge:ores / #c:ores,以及任意 <命名空间>:ores/<材料> 子标签。因此镍、铝、铅、锡等遵循 Forge 约定的模组矿石自动可被搜寻,也自动支持副手定向,无需为任何模组单独适配。
  • 远古残骸支持 —— 按 Forge 的 forge:ores/netherite_scrap 约定,副手放 netherite_scrap 或远古残骸方块都能定向。
  • 副手定向过滤重做 —— 解析顺序:命名模式(raw_iron / raw_iron_block / iron_ore / deepslate_iron_ore / iron_ingot / iron_dust …)→ 物品标签(forge:raw_materials/nickel、forge:ingots/aluminum …,覆盖命名不按套路的模组材料)→ 别名表(lapis_lazuli→lapis、quartz→nether_quartz …)→ 物品名本身;每个候选都与「世界里真实存在的矿石材料」核对。识别不了时会给出 WARN 提示,不再静默变成「挖全部」。旧版只认 raw_* 和 *_ore,放钻石/煤/红石等会静默失效。
  • 镐子识别放宽 —— #minecraft:pickaxes → forge/c:tools/pickaxes → ToolActions.PICKAXE_DIG(模组镐主力)→ 「能正确开采石头」兜底。带镐标签或行为上就是镐的工具都能用。
  • 卡住快照日志 —— 无进展时每 5 秒输出一行 Stuck state=… target=… feet=… dy=… dist=…,便于定位问题。
  • 无进展看门狗 —— 与目标距离连续 20 秒没有缩短即放弃该目标。
  • 自动化测试 —— 建立 GameTest 基础设施,落地 13 个用例(破坏分类语义、副手解析 11 种物品、镐子识别 12 项、矿石材料覆盖等),./gradlew runGameTestServer 即可跑,无需客户端。
  • 全新封面与图标 —— 封面主角为车万女仆的「酒狐」