本篇教程由作者设定未经允许禁止转载。

文件路径:xxxxxx.jar/assets/lostcities/citydata/buildingparts.json

citydata文件夹下装的都是建筑结构生成配置文件,先讲建筑房间。【推荐notepad打开】

游戏中城市的生成规则为每个区块生成一个建筑,所以也就是16x16,会生成建筑,道路,公园之类的一个个模块。建筑每6层高度为一个模块

拿我自己编辑过的一个建筑举例子,打开文件后能看到

"type": "part",【不要动】

"name": "building4_1",【建筑模块的代号,也不要动】

"xsize": 16,【16x16的面积,也不要动】

"zsize": 16,

"slices": [【重点在下面】

1.18.1自定义房间结构-第1张图片

每一个建筑代号对应的部分都会有6组这样的代码,每一组都对应着一层方块的结构,每行16个字母,共16行,每个分别对应一个方块

文件中的从上到下分别对应游戏中建筑从下到上的第123456层方块

第1,2层方块代码的4面墙中,最中间的代表玻璃的aa字母一定不能被替换为其他方块,该字母需要在生成建筑时进行是否生成门的判定,如果修改会导致崩溃

------

文件路径:xxxxxx.jar/assets/lostcities/citydata/library.json

这个文件主要记载上文说到的字母所对应的方块类型

{

        "char": "C",【字母:大写C(注意是大写,这里必须区分大小写)】

        "block": "minecraft:chest",【对应方块:箱子】

        "loot": "chestloot"【战利品列表】

      },

---

"char": "F",

        "blocks": [

          {

            "random": 25,

            "block": "minecraft:furnace"

          },

          {

            "random": 24,

            "block": "minecraft:smoker"

          },

          {

            "random": 1000,

            "block": "minecraft:blast_furnace"

          },

生成的方块会默认朝北

可以通过以上结构来使字母成为随机生成的方块,生成概率目前测试只得知以下几点

  1. 文件结构中随机方块的先后顺序与列表中种类的数量有影响,例:熔炉有25的概率生成,判定不生成后才会继续判定烟熏炉的24概率。

  2. 虽然高炉的概率是1000远大于熔炉的25,但是这个列表如果加入过多方块,按照上面的生产概率最后一定轮不到高炉,所以这个列表中方块种类不宜太多,实测简易5-6种。

也可以根据以上结构自行加入新的方块,例

{

        "char": "<",

        "block": "minecraft:white_bed[part=head]"

      },

      {

        "char": ">",

        "block": "minecraft:white_bed[part=foot]"

      },

这里加入了床的代码,分为两个部分,床头和床尾。放在游戏中能够正常生成,但是有问题

1.18.1自定义房间结构-第2张图片

1.18.1自定义房间结构-第3张图片

右键互动后再输入红石信号会正常显示出来,与此同理门也是一样的问题

最后是我编辑后生成的效果图,第一层方块是地板,第二层也就是你们上面看到的那个结构图

1.18.1自定义房间结构-第4张图片