Skip to content

yynps737/VoxelPtr

Repository files navigation

VoxelPtr - 高性能矿石追踪模组

VoxelPtr Logo

高性能 Minecraft Fabric 矿石追踪模组

GitHub Release Modrinth Downloads CurseForge Downloads License

English | 中文


📖 简介

VoxelPtr 是一个专为 Minecraft 1.20.4 设计的高性能矿石追踪模组。通过智能扫描算法和缓存机制,实现了50-70% 的性能提升,让你在探索矿洞时不再错过任何珍贵矿物!

✨ 核心特性

  • 🔍 实时矿石扫描 - 自动扫描周围区块,无需手动搜索
  • 🎯 智能方向指示 - 三维方向提示(上下、左右、前后)
  • 🎨 彩色 HUD 显示 - 不同矿物不同颜色,一目了然
  • 极致性能优化 - 多项算法优化,整体性能提升 50-70%
  • ⚙️ 高度可配置 - 扫描半径、显示数量、HUD 位置全可定制
  • 🌍 完整国际化 - 支持中文和英文

🎮 功能展示

🔍 实时矿石扫描

  • 自动扫描周围 1-10 区块的矿物
  • 支持 10 种预设矿物快速切换
  • 智能缓存机制,每个区块只扫描一次
  • 异步执行,不阻塞游戏主线程

支持的矿物

矿物 颜色 快捷键
💎 钻石矿 青色 N 键切换
⚙️ 铁矿 浅灰 N 键切换
🪙 金矿 金色 N 键切换
💚 绿宝石矿 绿色 N 键切换
🔥 远古残骸 棕色 N 键切换
⚫ 煤矿 深灰 N 键切换
🔴 红石矿 红色 N 键切换
🔵 青金石矿 蓝色 N 键切换
🟠 铜矿 橙色 N 键切换
⚪ 石英矿 白色 N 键切换

🎯 HUD 实时显示

  • 显示 最近 1-50 个矿石的位置和距离
  • 三维方向指示:
    • 上下:矿物在你上方还是下方
    • 左右:矿物在你左边还是右边
    • 前后:矿物在你前方还是后方
  • 4 种 HUD 位置:左上、右上、左下、右下
  • 彩色文字,不同矿物不同颜色

⚡ 性能优化

优化项 技术手段 性能提升
距离计算 平方距离排序,避免 sqrt 40-50%
颜色查询 HashMap 替代 if-else 链 70-80%
方向计算 缓存机制,减少三角函数 60%
缓存系统 零拷贝不可修改视图 30%
Tick 优化 简化逻辑,减少重复判断 20%
整体提升 多项优化叠加 50-70%

📥 安装

前置需求

  • ✅ Minecraft 1.20.4
  • ✅ Fabric Loader 0.18.0+
  • ✅ Fabric API 0.97.3+
  • ✅ Java 17+

安装步骤

  1. 安装 Fabric Loader

    • 访问 Fabric 官网
    • 下载并运行安装器
    • 选择 Minecraft 1.20.4 版本
  2. 下载 Fabric API

  3. 下载 VoxelPtr

  4. 安装 Mod

    • 将下载的 JAR 文件放入 .minecraft/mods 文件夹
    • 启动游戏

可选依赖


🎮 使用方法

基本操作

按键 功能
V 启用/禁用矿石追踪
N 切换矿物预设

配置选项

安装 Mod Menu 后,在 Mod 列表中找到 VoxelPtr,点击配置按钮:

  • 启用/禁用 - 总开关
  • 扫描半径 - 1-10 区块(默认 8)
  • 显示数量 - 1-50 个目标(默认 3)
  • HUD 位置 - 左上/右上/左下/右下
  • HUD 显示 - 是否显示 HUD

使用示例

  1. 探索矿洞

    按 V 键启用追踪
    → 按 N 键选择钻石矿
    → HUD 自动显示附近的钻石位置
    → 根据方向指示前往挖掘
    
  2. 寻找下界资源

    进入下界
    → 按 N 键切换到远古残骸
    → 查看 HUD 找到最近的残骸
    → 挖掘获取材料
    

🛠️ 开发信息

技术栈

  • 语言: Java 17
  • 构建工具: Gradle 8.14.1
  • 模组加载器: Fabric
  • 开发环境: Fabric Loom 1.13.4
  • 代码注入: SpongePowered Mixin

架构设计

VoxelPtr
├── Scanner 模块 - 区块扫描和缓存
├── Tracker 模块 - 目标追踪和管理
├── HUD 模块 - 界面显示和渲染
├── Config 模块 - 配置管理
└── Mixin 模块 - 事件注入

核心算法

  1. 区块扫描

    • 事件驱动:区块加载时触发扫描
    • 三层循环:16×16×Y 遍历所有方块
    • 智能缓存:LRU 缓存策略,最多缓存 1024 个区块
  2. 距离计算

    • 平方距离排序:避免 sqrt 计算
    • Java Stream API:函数式编程
    • Comparator 优化:comparingDouble
  3. 方向计算

    • 向量投影:点积计算相对位置
    • 局部坐标系:前方、右方基向量
    • 缓存策略:玩家旋转 <5° 时复用

🤝 贡献

欢迎贡献代码、报告 Bug 或提出建议!

贡献方式

  1. 报告 Bug

    • 访问 Issues
    • 描述问题和复现步骤
    • 附上游戏版本和日志
  2. 提交代码

    • Fork 项目
    • 创建功能分支
    • 提交 Pull Request
  3. 建议新功能

    • 在 Issues 中提出想法
    • 讨论实现方案
    • 投票支持

开发环境搭建

# 克隆项目
git clone https://github.com/yynps737/VoxelPtr.git
cd VoxelPtr

# 生成 IDE 配置
./gradlew genSources

# 运行客户端
./gradlew runClient

# 构建 Mod
./gradlew build

📜 许可证

本项目采用 MIT License 开源。

查看 LICENSE 文件了解详情。


🌟 支持项目

如果你喜欢这个项目,请:

  • ⭐ 在 GitHub 上给我们一个 Star
  • 📥 在 Modrinth 和 CurseForge 上下载
  • 💬 在 Discord 社区分享
  • 🐛 报告 Bug 和建议

📞 联系方式


🎉 致谢

感谢以下项目和社区:


VoxelPtr - 让矿石追踪更高效! ⛏️💎

Made with ❤️ by yynps737

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages