手册:数据驱动 (网易)

From Minecraft基岩版开发Wiki

本页包含网易自定义游戏内容中的特色组件(即任意命名空间为"netease"的组件)

方块[edit]

属性[edit]

用于确定如何解析并初始化此方块。

类型 名称 默认值 描述
字符串 identifier 设置此方块的标识符。须包含命名空间但不得使用minecraft:作为命名空间。(除非所编辑的方块为原版方块)
布尔值 register_to_creative_menu false 设置此方块是否出现在创造模式物品栏。
布尔值 is_experimental false 设置该方块是否为实验性。实验性方块只能通过实验性玩法获得。
字符串 category construction 设置该方块的分类。

组件[edit]

名称 描述
netease:aabb 用于设置方块的碰撞箱。
netease:block_entity 用于给自定义方块添加自定义方块实体
netease:block_properties 用于配置自定义方块的方块属性

这些方块属性可以叠加,主要用于引擎对一些方块特性逻辑的判断

netease:connection 用于给自定义方块定义“连接”属性,使用枚举的方式配置该方块与哪些方块具有“连接”属性,并且此属性是单向的。不支持附加值。

由于方块更新的特性,“床”和“旗帜”方块在区块边缘放置时,与其他方块会出现连接失败。

netease:face_directional 用于设置方块的多面向,主要用于多面向的功能
netease:fire_resistant 用于配置自定义方块是否防火。设置为防火时,方块的掉落物会与下界合金一样,不会被火烧毁,掉进岩浆时会弹走。
netease:listen_block_remove 用于配置自定义方块是否监听方块的BlockRemoveServerEvent事件
netease:may_place_on 用于配置自定义方块可存在于哪些方块的上面。会生效于玩家右键放置方块时;以及已存在的方块下方的方块发生改变时。
netease:neighborchanged_sendto_script 用于设置在邻近方块变化时是否向脚本发送事件。
netease:on_after_fall_on 用于触发实体下落至方块后的事件,主要用于力的计算
netease:on_before_fall_on 用于触发实体刚下落至方块的事件,主要用于伤害计算
netease:on_entity_inside 用于触发实体碰撞盒所在位置有方块时的事件(判断位置逻辑有无方块,与方块碰撞盒大小无关)。
netease:on_stand_on 用于触发实体站在方块上的事件
netease:on_step_off 用于触发实体刚离开一个实心方块上的事件
netease:on_step_on 用于触发实体刚移动至一个实心方块上的事件
netease:pathable 用于设置游戏内AI在进行寻路时,方块是否被当作障碍物。
netease:random_tick 用于给自定义方块定义是否可以随机tick,并且设置该tick事件是否发送到脚本层。
netease:redstone 用于配置自定义红石源与自定义红石机械元件;可以配置自定义红石的类型,如红石源或者红石机械元件;可以配置初始信号强度,默认为15。
netease:redstone_property 用于给自定义方块设置红石属性。
netease:render_layer 用于设置方块的渲染方法。
netease:solid 用于设置方块是否为实心方块,主要与生物在方块内时是否受到窒息伤害有关。
netease:tier 用于设置与挖掘相关的属性,主要用于挖掘的功能。

示例[edit]

{
  "format_version": "1.10.0",
  "minecraft:block": {
    "description": {
      "identifier": "example:test_block_netease",
      "register_to_creative_menu": true,
      "category": "nature"
    },
    "components": {
      "minecraft:block_light_absorption": {
        "value": 0
      },
      "minecraft:block_light_emission": {
        "emission": 0.0
      },
      "minecraft:destroy_time": {
        "value": 0.0
      },
      "minecraft:explosion_resistance": {
        "value": 0.0
      },
      "minecraft:map_color": {
        "color": "#005500"
      },
      "netease:aabb": {
        "clip": {
          "max": [
            1.0,
            1.0,
            1.0
          ],
          "min": [
            0.0,
            0.0,
            0.0
          ]
        },
        "collision": {
          "max": [
            1.0,
            1.0,
            1.0
          ],
          "min": [
            0.0,
            0.0,
            0.0
          ]
        }
      },
      "netease:block_entity": {
        "movable": false,
        "tick": true
      },
      "netease:face_directional": {
        "type": "direction"
      },
      "netease:pathable": {
        "value": true
      },
      "netease:render_layer": {
        "value": "alpha"
      },
      "netease:solid": {
        "value": false
      },
      "netease:tier": {
        "destroy_special": false,
        "digger": "pickaxe",
        "level": 0
      }
    }
  }
}

物品[edit]

属性[edit]

类型 名称 默认值 描述
字符串 identifier 设置此物品的标识符。须包含命名空间但不得使用minecraft:作为命名空间。(除非所编辑的物品为原版物品)
布尔值 register_to_creative_menu false 设置此物品是否出现在创造模式物品栏。
布尔值 custom_item_type 设置该物品的自定义物品类型(可选值:weapon armor egg ranged_weapon projectile_item)
字符串 category Nature 设置该物品的分类。

组件[edit]

名称 描述
netease:show_in_hand 设置物品拿在手上时是否显示。
netease:fire_resistant 设置物品是否防火,防火的物品会与下界合金一样,不会被火烧毁,掉进岩浆时会弹走
netease:weapon 设置物品自定义近战武器/工具属性。
netease:armor 设置物品盔甲属性。
netease:egg 设置物品生物蛋生成的实体种类。
netease:frame_animation 设置物品使用时播放的序列帧。
netease:render_offsets 设置第一人称下手中物品渲染配置。
netease:bucket 设置物品的桶属性。

示例[edit]

{
  "format_version": "1.10",
  "minecraft:item": {
    "description": {
      "identifier": "example:test_item_netease",
      "register_to_create_menu":true,
      "category": "Equipment",
      "custom_item_type": "projectile_item"
    },
    "components": {
      "minecraft:max_stack_size": 2,
        "netease:show_in_hand": {
        "value": true
      },
      "netease:projectile": "example:test_projectile_entity",
      "netease:weapon": {
        "attack_damage": 12,
        "enchantment": 15,
        "level": 4,
        "speed": 10,
        "type": "hatchet"
      }
    }
  }
}