Skip to content

Minecraft 1.7.10 GTNH 专项适配的连锁挖矿. 特色是可以把格雷的矿脉挖的非常干净, 适配270粗矿

License

Notifications You must be signed in to change notification settings

QuanhuZeYu/Qz-Miner

Repository files navigation

爆破连锁

一款更适合在GTNH挖矿的连锁MOD, 可以正确处理拥有相同矿词的矿物, 相较于已有的连锁模组, 增强了连锁相邻检测的范围, 此配置项可以在config/qz_miner.cfg中找到, 理论上可以一镐子挖爆不停.

目前有两种主要模式:

  • 连锁模式 - 主要逻辑为判断相邻方块进行挖掘

  • 爆破模式 - 主要逻辑为以挖掘点为中心遍历一定范围的所有Point尝试挖掘

两种模式有对应的更细致逻辑, 主要是针对范围,功能进行调整:

  • 矩形模式, 挖出一个立方体, 四四方方, 就是普通连锁的功能(经过算法优化过的模式,在连锁速度极快的同时保证不会阻塞逻辑后端)

  • 连锁-严格模式,是第一个针对非采矿场景下的连锁,对方块meta值和掉落物damage等均进行校验,只有完全一致才会被连锁,可以用来拆管道等,但是建议打开渲染功能再使用,以防意外连锁

  • 连锁-放宽模式,可以达到爆破模式的效果,但实际性能是略低于爆破-矿脉

  • 连锁-伐木模式,无论范围设置为多少,都会解锁Y范围上限用于砍树

  • 连锁-连锁组模式,一个完全白名单的连锁模式,不在其中的方块均不会被连锁,即便启用连锁挖掘任意方块也不会进行连锁

独立功能

  • 扫雷助手,当周围存在LootGame方块的时候,按住连锁键可以激活扫雷小帮手,它可以高亮离你最近的一颗雷,帮你克服二选一的好帮手

  • 收菜模式,按住连锁右键成熟的作物,可以收获所有相邻的农作物并保留方块作物

未来功能

  • 探矿权杖: 作为一个物品,设计功能为右键地表,左键此方块以下的所有方块触发发现矿脉功能

  • 平面模式, 以玩家脚底为基准, 挖掉上方的所有方块, 该模式目前只有矩形范围, 毕竟矩形更常见(v1.4.0 暂未对它进行适配)

支持预览挖掘区域,会渲染出可能被连锁的方块

a620d5cfb6d195d167f8fefb24974616 acae9b07ebefffe9c43290144ba0370b

更新日志

所有版本
  • v1.0.0-alpha 当前版本已知的存在的致命bug, 由于没有做异步和多线程, 当连锁范围过大极有可能让 检索<->挖矿 两个相互作用的函数陷入死循环, 最终卡死逻辑服务器--具体逻辑为检索到一格后进行挖掘, 挖掘的同时检索下一个连锁位置列表, 但是如果方块未实际被挖掘掉会再次检索重复位置挖掘它.

  • v1.0.1-alpha 将搜索任务和挖掘任务彻底分离, 避免了上述的问题. 目前只重构了RectangularMode, 后续的几个模式都将按照此进行更新

    • 日志: 将Supplier改为纯算法, 只计算范围, 校验Point任务在get()后执行, 包括Point方块是否合法, 能否挖掘都靠外部进行判断.
  • v1.1.0-rc.1 解决了大部分测试时出现的已知问题, 日志: 连锁模式下矿词匹配增强, 挖矿的效果目前和格雷的矿机一致!!!

  • v1.1.1 优化客户端逻辑, 将切换开启替换为长按开启, 添加一个状态指示器(原本是提供给切换模式方便查看当前状态的)

  • v1.2.0 添加新的连锁逻辑, 新逻辑不会挖掘碎矿 - 增强普通连锁模式 - 会挖掘所有原矿

  • v1.2.1 增加兼容性逻辑, 添加对270以下和无GTNH整合包的支持, 使用反射检查

  • v1.3.0 修复一个不易察觉的bug, 当连锁范围和数量极大时, 无法正确工作; 将点提供器外置到循环外(tick外)后修复此bug;

    • 日志: 由于循环时硬性设置了时间底线防止卡死, 所以该问题极难被察觉, 最多发现挖的矿有点少, 实际上挖的数量就是时间限制内能够取到的所有点, 但是当范围极大后Supplier在循环内反复获取大量点(超过万级后)就会几个都连锁不了
  • v1.3.1 修复内存泄露的bug

  • v1.4.0 逻辑框架重构, (一次大更新, 几乎推翻了之前的核心逻辑). 现在无论怎么挖都不会卡死主线程, 再也不会出现内存溢出, 而且极限范围下的点挖掘也正确了, 现在可以正确连锁一整片矿脉或者区块了, 前提是你的配置文件给的数值足够

  • v1.5.0 修复了匠魂工具不增加经验的问题

  • v1.6.0 更新兼容270b4, 增加隧道模式, 目前仅支持3*3

  • v1.6.1 更新了版本兼容检查判断,客户端在补丁版本低于服务器时依然可以加入服务器,在未安装mod时也允许进入

  • v1.7.0 项目大重构,玩家状态管理更加清晰;搜索任务从单线程手动异步改为线程池异步,性能效率更高,不过可能存在未发现的bug。模式分类更加细化,爆破模式仅可破坏固体方块,实体箱子等无法摧毁,连锁模式现在改为经典的连锁形式,但是增加了连锁范围判断也就是增强型连锁,连锁模式下允许破坏实体。

  • v1.8.0 修复诸多BUG,添加伐木模式

  • v1.8.1 修复配置GUI页面BUG

  • ......

  • v1.12.0 添加时运上限解锁功能,不再受时运三限制

  • v1.13.x 添加非自然生成矿物时运解锁功能,手动放下的矿物现在时运对其也可以生效

About

Minecraft 1.7.10 GTNH 专项适配的连锁挖矿. 特色是可以把格雷的矿脉挖的非常干净, 适配270粗矿

Topics

Resources

License

Stars

Watchers

Forks

Languages