Dante_7
本帖最后由 SkinBBS 于 2019-10-3 14:41 编辑

原本以为村庄的边长没有上限, 但是在看源码时发现了这样一个方法:
  1.    public void addStructureReferences(IWorld iWorld_1, Chunk chunk_1) {
  2.       int int_1 = true;
  3.       int int_2 = chunk_1.getPos().x;
  4.       int int_3 = chunk_1.getPos().z;
  5.       int int_4 = int_2 << 4;
  6.       int int_5 = int_3 << 4;

  7.       for(int int_6 = int_2 - 8; int_6 <= int_2 + 8; ++int_6) {
  8.          for(int int_7 = int_3 - 8; int_7 <= int_3 + 8; ++int_7) {
  9.             long long_1 = ChunkPos.toLong(int_6, int_7);
  10.             Iterator var12 = iWorld_1.getChunk(int_6, int_7).getStructureStarts().entrySet().iterator();

  11.             while(var12.hasNext()) {
  12.                Entry<String, StructureStart> map$Entry_1 = (Entry)var12.next();
  13.                StructureStart structureStart_1 = (StructureStart)map$Entry_1.getValue();
  14.                if (structureStart_1 != StructureStart.DEFAULT && structureStart_1.getBoundingBox().intersectsXZ(int_4, int_5, int_4 + 15, int_5 + 15)) {
  15.                   chunk_1.addStructureReference((String)map$Entry_1.getKey(), long_1);
  16.                   DebugRendererInfoManager.sendStructureStart(iWorld_1, structureStart_1);
  17.                }
  18.             }
  19.          }
  20.       }

  21.    }
复制代码
代码中非常明确的指出了寻找结构 References 的范围只有 8x2+1=17 区块, 也就是 272 方块边长, 超出这个范围即使存在村庄, 他们所在的区块也不会被识别为村庄的一部分, 不会被建造...但是我好像记得以前有 dalao 确实通过修改一些参数什么的弄出了边长 600 的超大村庄. 所以想请教一下熟悉游戏的道友, 村庄到底有没有面积上限?

另外, 这个 272 面积的上限是否也意味着游戏内全部自然结构(包括下界要塞, 要塞, 废弃矿井)都不可能超过这个面积?