氰化物

氰化物

一个大幅改进Minecraft数据驱动世界生成错误检测、报告和恢复机制的模组。

工具

氰化物

氰化物(Cyanide)似乎是一种会让我想少喝点氰化物的东西——Starmute,世界生成数据包巫师。

这个模组大幅改进了 Minecraft 数据驱动的世界生成错误检测与恢复机制。它移除了多余的堆栈跟踪,并为世界生成数据包中最常见的问题生成了用户友好的错误消息。以下是 Cyanide 对错误报告所做改进的一些示例:

所有错误都能精确定位到错误产生的确切文件及源数据包。部分错误消息改进了表述清晰度,或尽可能附加了更多上下文。

解析错误:值提供器过低(必须 >= 0),得到 -1
  位于 'placement'
  位于 'cyanide:worldgen/placed_feature/ore_tin',定义于 'file/Test.zip'

"注册表中存在未绑定值"错误会跟踪引用它的文件。

缺少文件错误:'cyanide:worldgen/configured_feature/big_ores' 被引用但未定义
  位于 'cyanide:worldgen/placed_feature/big_ores',定义于 'file/Test.zip'

非法 JSON 会显示精确的文件位置,同时显示解析失败处的上下文。

语法错误:在第 3 行第 13 列路径 $.config 处应出现 ':'
  位于:
{
  "type": "minecraft:big_flowers",
  "config" {
  ^
  此处

  位于 'cyanide:worldgen/configured_feature/flowers',定义于 'file/Test.zip'

"要素循环"错误(即要素在不同生物群系中以不同顺序定义)会追踪并报告找到的确切循环。

发现要素循环。

循环:
在步骤 0
要素 'minecraft:lake_lava_underground'
  必须先于 'minecraft:lake_lava_surface'(定义于 'minecraft:ocean' 索引 1, 2 及另外 1 处)
  必须先于 'cyanide:big_ore'(定义于 'minecraft:ocean' 索引 2, 3)
  必须先于 'cyanide:small_ore'(定义于 'minecraft:plains' 索引 0, 1)
  必须先于 'minecraft:lake_lava_underground'(定义于 'minecraft:ocean' 索引 0, 1 及另外 1 处)