Fantastic Ghost Block Remover

Fantastic Ghost Block Remover

👻 在Hytale服务器更新、移除模组或无效方块更改后,清理破损的鬼魂方块。

生活质量

Discord Patreon

👻 FantasticGhostBlockRemover - 致歉与 1.0.17 热修复更新

FantasticGhostBlockRemover 是一个小巧但非常实用的 Hytale 服务器端维护工具。

首先:为粗糙的更新路径道歉。 Hytale 0.5.6 更改了多个内部 API 和命令系统,自动幽灵方块移除功能需要多次修复才能正常工作。

1.0.17 版本 中,自动清理系统现在应该能正确工作了。

该模组可以检测、列出、手动移除以及自动清理已加载世界区域中的幽灵方块。

该模组在 Hytale 更新、移除模组、方块 ID 更改、自定义方块损坏或世界生成问题(导致旧方块在服务器上不再正确存在)后尤其有用。

示例图片


摘要

自动检测并移除已加载的 Hytale 服务器区块中的损坏幽灵方块。


✨ 特性

  • ✔️ 扫描玩家周围的已加载区块
  • ✔️ 检测未知、损坏或无效的方块
  • ✔️ 列出检测到的幽灵方块
  • ✔️ 手动移除检测到的幽灵方块
  • ✔️ 手动替换幽灵方块
  • ✔️ 自动幽灵方块检查
  • ✔️ 自动幽灵方块移除
  • ✔️ 基于队列的自动扫描系统
  • ✔️ 可配置的扫描半径
  • ✔️ 可配置的自动移除限制
  • ✔️ 控制台通知
  • ✔️ 管理员权限支持
  • ✔️ 兼容 Hytale 0.5.6
  • ✔️ 兼容 Java 25
  • ✔️ 仅服务端

🆕 更新 1.0.17 - 自动清理热修复

1.0.17 版本修复了 Hytale 0.5.6 的自动幽灵方块清理系统。

该模组现在为自动检查使用一个更安全的队列系统,但当 AutoRemove 启用时,检测到的幽灵方块会被自动移除。

这意味着管理员不必再每次检测到幽灵方块时都手动运行:

/fgbr remove all

⚠️ 重要配置通知

如果您从旧版本更新,请检查您的配置文件。

最重要的设置是:

"ReplacementBlock": "Empty"

不要使用:

"hytale:air"

对于 Hytale 幽灵方块清理,Empty 是正确的替换值。

如果您的配置文件是由旧的损坏版本创建的,请删除旧配置并让模组创建一个新的,或者手动更新它。

配置文件:

fantastic-ghost-block-remover.json

✅ 推荐用于正式服务器的配置

{
  "Enabled": true,
  "RemoveReplacementBlock": "Empty",
  "Scan": {
    "ManualRadiusChunks": 5,
    "MinY": 0,
    "MaxYExclusive": 256
  },
  "AutoCheck": {
    "Enabled": true,
    "InitialRadiusChunks": 4,
    "QueueMaxChunks": 512,
    "WorkerIntervalMillis": 2000,
    "ChunksPerRun": 2
  },
  "AutoRemove": {
    "Enabled": true,
    "Mode": "safe",
    "MaxBlocksPerScan": 10,
    "RequireDoubleCheck": false,
    "NotifyConsole": true,
    "ReplacementBlock": "Empty"
  }
}

重要数值

"AutoCheck": {
  "Enabled": true
}

启用已加载区块的自动扫描。

"AutoRemove": {
  "Enabled": true
}

启用检测到的幽灵方块的自动移除。

"ReplacementBlock": "Empty"

这是正确清除损坏的幽灵方块所必需的。

"RequireDoubleCheck": false

推荐用于自动清理。 旧版本在启用双重检查时,可以检测幽灵方块,但只有在执行手动移除命令后才会移除它们。


🧹 什么是幽灵方块?

幽灵方块是指仍存在于世界数据中,但在服务器上不再有效的方块。

这可能在以下情况发生:

  • 移除了一个模组
  • 更新后方块 ID 发生变化
  • 世界是用旧的模组版本生成的
  • Hytale 更改了内部方块处理方式
  • 自定义方块不再存在
  • 区块加载了过时或损坏的方块数据

这些方块有时会显示为粉/黑色方块、损坏方块、不可见方块、无效方块,或在加载区域时导致问题。

示例图片


⚙️ 命令

扫描幽灵方块

/fgbr scan

扫描您周围已加载的区块以寻找幽灵方块。


列出检测到的幽灵方块

/fgbr list

显示所有当前检测到的幽灵方块。


手动移除幽灵方块

/fgbr remove <block_id|all>

示例:

/fgbr remove all

手动移除检测到的幽灵方块。


手动替换幽灵方块

/fgbr replace <block_id|all> <replacement>

示例:

/fgbr replace all Empty

将检测到的幽灵方块替换为另一个方块。

对于幽灵方块清理,推荐使用 Empty


启用或禁用自动检查

/fgbr autocheck <true|false>

示例:

/fgbr autocheck true

启用或禁用自动幽灵方块检查。


显示模组状态

/fgbr status

显示当前的模组状态和设置。


重载配置

/fgbr reload

重新加载配置文件。


清除幽灵方块缓存

/fgbr clear

清除当前记录的幽灵方块缓存。


🔁 命令别名

您也可以使用:

/fantasticghost
/fgbr
/ghostclean
/ghostblockremover

🤖 自动清理如何工作

自动清理系统仅对已加载的区块起作用。

不会一次性扫描您的整个世界。

当一个区块被加载时,模组将其加入后台扫描队列。 然后,工作进程按间隔检查少量区块,并在启用 AutoRemove 的情况下移除检测到的幽灵方块。

默认推荐时间:

"WorkerIntervalMillis": 2000,
"ChunksPerRun": 2,
"MaxBlocksPerScan": 10

这意味着:

每2秒,工作进程处理最多2个排队区块。
每次扫描最多可移除10个幽灵方块。

这比全世界扫描慢,但对于正式服务器来说安全得多。


🧭 扫描范围

默认情况下,手动扫描会检查玩家周围的半径。

示例:

5区块半径 = 11 x 11 区块 = 121 区块

这意味着模组会扫描您周围的大片区域,但不会一次性扫描整个世界。

自动系统也只对已加载的区域起作用,不会立即扫描您的整个世界。


🔐 权限

推荐的 LuckPerms 权限:

ghostblockremover.command.use
ghostblockremover.command.admin

示例:

/lp group admin permission set ghostblockremover.command.use true
/lp group admin permission set ghostblockremover.command.admin true

📁 配置

配置文件会自动创建:

fantastic-ghost-block-remover.json

如果您在更新后遇到问题,请先删除旧配置文件,让模组生成一个新的。

然后确保启用以下数值:

"AutoCheck": {
  "Enabled": true
},
"AutoRemove": {
  "Enabled": true,
  "ReplacementBlock": "Empty"
}

⚠️ 重要说明

该模组不会立即扫描您的整个世界。

它只扫描已加载的区域以保持服务器安全和稳定。

对于手动清理,请使用:

/fgbr scan
/fgbr list
/fgbr remove all

对于自动清理,请确保启用:

/fgbr autocheck true

并检查您的配置:

"AutoCheck": {
  "Enabled": true
},
"AutoRemove": {
  "Enabled": true,
  "ReplacementBlock": "Empty"
}

始终先在备份服务器或测试服务器上测试模组,然后再在主世界上使用。


✅ 兼容性

  • Hytale 0.5.6
  • Java 25
  • 服务端使用
  • 专为管理员和服务器维护设计

🙌 灵感

该模组的灵感来源于 GhostBlockRemover


❤️ 支持

如果您喜欢这个模组,请在 CurseForge 上留下一个 ⭐!


🔗 查看我的其他 Hytale 项目

在此查看我的其他 Hytale 模组和项目:

👉 DerFriesn CurseForge 项目


Tale-World 德语社区 示例图片