概括
众所周知,JER 模组在 1.12+ 没有扫描矿物生成情况的指令和功能了。这样就让找小众模组里的矿物最佳层数很困难,总不能拿小木斧逐层搜索吧!
此模组为 MC 添加了类似的功能。
但是毕竟 MCreator 做的模组,功能有限,只能扫描矿物生成情况,生成Y轴与每层矿物个数一一对应的函数 JSON 文件。简易的 Mod 既不能画图,也不能联动 JEI。画图需要下载作者提供的画图器,可以读取你的文件。
模组功能
添加了三个游戏规则:
xz —— 调整 X 坐标范围(指从玩家位置加多少格)。
zz —— 调整 Z 坐标范围(同上)。
dolist —— 决定系统是否发布扫描进度(开了会扫描慢一些,不过能看到扫描到哪里了)。
添加了两条指令:
/orescan
这个指令可以扫描。
扫描对象:你脚底下踩的方块。
扫描范围:从玩家位置的 X、Z 开始,Y 轴=1,向 X 正方向和 Z 正方向分别扫描你的 xz、zz 游戏规则设置的方块数量,构成一个面。这个面扫描完毕就会上升一格重复,直到扫描到你脚下的方块的下面那个方块的一层截止。
生成的 JSON 例子和注释:
{
"command": "common",这个是代表你这个命令是什么种类(common=个数,proportion=几率)
"block": "Block{minecraft:diamond_ore}",(这个是方块)
"x": 160,
"max_y": 68,
"z": 160,(XYZ范围,即扫描区域尺寸)
"0": 0,
"1": 6,
"2": 21,
"3": 19,
"4": 16,
"5": 21,
"6": 24,
"7": 28,
"8": 28,
"9": 35,
"10": 34,
"11": 25,
"12": 31,
"13": 24,
"14": 15,
"15": 1,(Y轴对应这一层所含此方块的数量,长宽在游戏规则里定好)
......
"68": 0,
"best_y": 9.0,(在这一个区域挖掘它的最佳层数,这是钻石矿,如果样本量足够大,这个值理论上是11,但是我这个只有100区块)
"the_most": 35.0,(最佳层数的该方块数量)
"all_block": 328.0(这个区域所有该方块的数量)
}
/orescan_proportion
和上面同理,只不过所有方块数量都变成了数量与 X*Z (面积)之比。当你在扫描石头之类的大量方块时推荐用它,而钻石则很不推荐。
模组扫描完了后,会生成一个 JSON 文件,文件名称为方块名称+随机数,路径为 游戏文件夹/scc/orescan。
1. 文件也放到 游戏文件夹/scc/orescan,用 Python 3.7 打开,运行。
2. 程序会先让你输入你要多少条线。你要同时看几个文件,就写几。
3. 然后会让你输入此线的 rgb。范围 0 - 255。(最好和别的线有分辨率)
4. 之后让你输入文件名称,你就把生成的 JSON 文件名称(不要有后缀名!)复制进去就行了。
你要看几个文件,程序就会让你重复 3、4 步骤几次。
最后,图像就生成好了,可以导出(Python 内置功能)。
兼容性
理论上,兼容任何模组,任何维度,除非最低高度不是 0。
计划:1.16.5、1.18.2 的 Forge、Fabric 版本。python和mcr又不受制于版本!