# 自定义维度

# 声明新维度

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

  2. 新增dimension_config.json文件如下:

    {
        "netease:dimension": {
          "modId":"entityMod",
          "modDimensionId":[23333,32222]    
        }
    }
    

    modId: mod的唯一id,mod的命名空间

    modDimensionId:数组设置需要增加的自定义维度的id,可以设置多个,值设置的范围为:[22~ int最大值)。 其中[3~20]的维度值与以前一样可以直接使用,不用配置json文件。

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

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

# 新维度配置

  1. 如果未进行声明新维度的话,在addon目录中的behavior目录下新增netease_dimension文件夹,配置的新维度会默认进行声明。

  2. 新增dmXXX.json文件,其中XXX指的是想要配置的维度id,例如dm559.json,格式如下:

     {
       "format_version": "1.14.0",
       "netease:dimension_info": {
         "components": {
           "netease:dimension_type": "minecraft:the_end",//维度类型,可以选择的值有minecraft:overworld(主世界)、minecraft:nether(下界)、minecraft:the_end(末地)
           "netease:generator_noise": {}//默认生成器,用于生成随机凹凸的地面
           //"netease:generator_flat":{} //超平坦生成器,仅主世界和下界可用
           //"netease:generator_legacy":{} //旧世界/经典(有限地图)生成器,仅主世界可用
         }
       }
     }
    

    注:

    • 目前维度配置主要支持选择原版的维度类型和原版的生成器使用,原版生成器现在以空组件tag的形式配置,后续会开放更多配置。
    • 超平坦目前还不支持放置自定义特征和自定义群系
    • 自定义末地推荐在群系中配置不生成末影龙及相关逻辑(参考:群系地貌),即使开了末影龙逻辑也不会生成传送门,有需要可以搭配自定义传送门使用。
    • 如果已经进入过某个维度,该维度地形已被存档,那么再配置维度类型可能会出现存档地形和生成地形融合的奇怪现象,可以在进入维度前通过UpgradeMapDimensionVersion接口提升该维度版本号,废弃原本的存档信息。
    • 目前添加了自定义维度后天气系统可能会有表现不正常的现象,我们将在下个版本推出自定义维度独立天气。