/loacte指令的原理是什么?

查看数: 1277 | 评论数: 9 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2022-1-10 11:06

正文摘要:

本帖最后由 QQ酱156912 于 2022-1-10 11:10 编辑 在一个地图里使用这个指令可以定位到最近的村庄,此时过去,将该村庄拆掉(我用了//set diamond)。再用定位指令提示找不到结构。然后我把另一个存档的村庄(原汁 ...

回复

QQ酱156912 发表于 2022-2-26 21:12:57
QQ酱22956 发表于 2022-1-10 16:08
简而言之:村庄等结构是在世界生成的时候确定位置和范围的,与任何后来的方块和实体变动无关,正常情况下无 ...

我知道怎么交付悬赏了。点击评分。给你了
QQ酱156912 发表于 2022-1-20 20:46:01
QQ酱154412 发表于 2022-1-12 23:55
然鹅实际情况是:1.12:拆掉就无了, 怎么local都找不到 1.16:自己盖得村庄/reload一下再local就能找到 ...

额不行啊,哪有你的效果
QQ酱156912 发表于 2022-1-17 11:50:24
QQ酱154412 发表于 2022-1-12 23:55
然鹅实际情况是:1.12:拆掉就无了, 怎么local都找不到 1.16:自己盖得村庄/reload一下再local就能找到 ...

/reload是加载数据包。我每次新加数据包进游戏都要说一句/reload....这个指令,不知道行不行我下次回家试一试
QQ酱154412 发表于 2022-1-12 23:55:24
QQ酱22956 发表于 2022-1-10 16:08
简而言之:村庄等结构是在世界生成的时候确定位置和范围的,与任何后来的方块和实体变动无关,正常情况下无 ...

然鹅实际情况是:1.12:拆掉就无了, 怎么local都找不到 1.16:自己盖得村庄/reload一下再local就能找到(也许是forge的原,1.16我装了forge)
QQ酱156912 发表于 2022-1-12 12:06:29
QQ酱22956 发表于 2022-1-10 23:09
手动放的不能locate,你得单独编辑存档的village文件才行

哦,那个dat文件我是复制了之前玩的一个生存地图的。这个使得新的村庄世界地图边界外跨过虚空区后的常规MC区块中生成(刚刚用了这个指令把我传送到几万格外的村庄里)
QQ酱22956 发表于 2022-1-10 23:09:48
QQ酱156912 发表于 2022-1-10 21:06
其实我是用那个叫worldpaint的弄了个七大洲世界地图,然后我是关掉建筑的,为了能让村庄与现实中各大城市 ...

手动放的不能locate,你得单独编辑存档的village文件才行
QQ酱156912 发表于 2022-1-10 21:07:21
QQ酱22956 发表于 2022-1-10 16:08
简而言之:村庄等结构是在世界生成的时候确定位置和范围的,与任何后来的方块和实体变动无关,正常情况下无 ...

悬赏改了好像也不知道怎么给你啊,我记得回复是不会拿到全部RF的
QQ酱156912 发表于 2022-1-10 21:06:16
QQ酱22956 发表于 2022-1-10 16:08
简而言之:村庄等结构是在世界生成的时候确定位置和范围的,与任何后来的方块和实体变动无关,正常情况下无 ...

其实我是用那个叫worldpaint的弄了个七大洲世界地图,然后我是关掉建筑的,为了能让村庄与现实中各大城市对应,目前村庄都放好了,就等毕业后开服
QQ酱22956 发表于 2022-1-10 16:08:10
本帖最后由 QQ酱22956 于 2022-1-10 16:36 编辑

简而言之:村庄等结构是在世界生成的时候确定位置和范围的,与任何后来的方块和实体变动无关,正常情况下无法被更改。如果某个东西破坏了村庄,一定是破坏了那个抽象数据结构,反之亦然。


这么高深的问题就悬赏5分……
locate会调用区块生成器里写死的一套东西,主世界的locate对各种主世界的结构生成器发起寻找请求,由结构生成器返回结果。主世界里有村庄生成器,下界等地方没有,所以即使下界等特殊维度即使有村庄也无法locate。你使用set diamond指令之后,可能是因为WE的设计缺陷或者其他问题破坏了结构判定导致的,属于bug范畴。


区块生成有两个阶段,第一个阶段生成的时候,会在周围半径八个区块,也就是17x17的范围内,规划出村庄的范围单独保存,此时村庄的核心所在的区块经常是加载都没加载过。村庄的范围被单独保存在特殊的地方。
村庄等结构是一个抽象概念,独立于方块和生物。无论方块和生物怎么变化,都不会影响一个区域是否是“结构”,除非你使用的修改方式破坏了区块存储数据或者结构存储数据。
该数据在文件里保存为saves\存档名字\data\villages.dat。你可以找个nbtexplorer之类的东西看看能否打开。

以上内容适用于1.12.2 Java版。其他版本未从代码里翻阅考证。

评分

参与人数 1RF +5 收起 理由
QQ酱156912 + 5 虽然没法恢复,但还是谢谢你的科普

查看全部评分

[ MC百科(mcmod.cn) 除另有声明,所有开放公共编辑的内容均使用 BY-NC-SA 3.0 协议 ]

Minecraft百科CC协议
快速回复 返回顶部 返回列表