# 自定义维度

# 声明新维度

引擎中默认带有overworld,nether,the end三个原生维度,以及编号为3到20的自定义维度,可以直接使用。

此外,还可以通过配置添加编号为22到2147483647的新自定义维度:

  1. addon目录中的behavior目录下新增netease_dimension文件夹

  2. 添加一个以维度id命名的json文件:

    如dm23333.json:

    {
       "format_version": "1.14.0",
       "netease:dimension_info": {
         "components": {	//必须有这个字段
         }
       }
    }
    

    可以使用以下python代码来生成一个随机的维度id:

    import random, sys
    print random.randint(22, sys.maxint)
    

对于三个原生维度以及18个自带的自定义维度,也可以配置相应文件名的json(注:三个原生维度对应的文件名分别为:overworld.json,nether.json,the end.json,请勿使用维度id命名),编写components字段来修改他们的属性,但是一些属性无法对原生维度修改,详见下面的说明。

# 维度配置

components中可以配置的组件如下:

组件 类型 默认值 说明
netease:dimension_type string minecraft:overworld 维度的类型,可以选择以下值:
minecraft:overworld(主世界)
minecraft:nether(下界)
minecraft:the_end(末地)
(对三个原生维度无效)
netease:generator_noise 空object 噪声生成器,用于生成随机凹凸的地面
如果没有配置任何生成器,则默认使用该生成器
(对三个原生维度无效)
netease:generator_flat 空object 超平坦生成器,仅主世界和下界类型可用
(对三个原生维度无效)
netease:generator_legacy 空object 旧世界/经典(有限地图)生成器,仅主世界类型可用
(对三个原生维度无效)
netease:ban_vanilla_feature 空object 清除原版feature,可解决类似空岛玩法天空悬浮结构问题(仅主世界类型维度可用)
netease:spawn_biomes array(string) 该维度下的forest, forest_hills, plains, taiga, taiga_hills, jungle, jungle_hills 该维度下可供玩家出生的群系名称的列表。
请确保列表的群系会生成在该维度。
netease:biome_source array(dict) 该维度下的群系源,仅主世界类型可用
(对三个原生维度无效)
netease:ban_vanilla_mineshaft 空object 屏蔽废弃矿井
netease:ban_vanilla_monument 空object 屏蔽海底遗迹
netease:ban_vanilla_mansion 空object 屏蔽林地府邸
netease:ban_vanilla_temple 空object 屏蔽神庙
netease:ban_vanilla_pillageroutpost 空object 屏蔽掠夺者前哨
netease:ban_vanilla_ruinedportal 空object 屏蔽破坏的传送门(仅主世界类型维度可用)
netease:ban_vanilla_ruins 空object 屏蔽水下遗迹
netease:ban_vanilla_shipwreck 空object 屏蔽沉船
netease:ban_vanilla_stronghold 空object 屏蔽要塞
netease:ban_vanilla_village 空object 屏蔽村庄

例如CustomBiomesMod中的dm23333.json:

{
  "format_version": "1.14.0",
  "netease:dimension_info": {
    "components": {
      "netease:dimension_type": "minecraft:overworld",	//类型为主世界
      "netease:generator_noise": {},	//使用噪声生成器
      "netease:spawn_biomes": ["dm23333_ice_plains"]	//玩家会在冰原下出生
    }
  }
}

注:

  • 自定义末地推荐在群系中配置不生成末影龙及相关逻辑(参考:群系地貌),即使开了末影龙逻辑也不会生成传送门,有需要可以搭配自定义传送门使用。
  • 如果已经进入过某个维度,该维度地形已被存档,那么再配置维度类型可能会出现存档地形和生成地形融合的奇怪现象,可以在进入维度前通过UpgradeMapDimensionVersion接口提升该维度版本号,废弃原本的存档信息。