同物品添加一样,使用文本软件打开 contents/你新建的文件夹(即包名)/configs/你新建的文件.yml 文件。
info:
namespace: myitems
items:
red_block:
display_name: Red Block
permission: red_block
resource:
material: PAPER
- 跟上文的 物品添加 类似
- material:是方块拿在手上后的材质。
- generate:如果我们的方块是正常的正方体方块,那么 generate 我们需要保持为 true,如果不是,需要读取自己的模型文件,则为 false 。
- textures:与物品一致,但此处的 textures 下可以有 6 行,分布为方块的 6 个面。在 6 个面材质相同的情况下,也可以只有 1 行,那么方块的 6 个面将全部是相同的材质。
specific_properties:
block:
placed_model:
type: REAL_NOTE
break_particles: BLOCK
rotx: 0
roty: 0
cancel_drop: true
light_level: 12
break_tools_blacklist:
- WOODEN_PICKAXE
- STONE_PICKAXE
- IRON_PICKAXE
break_tools_whitelist:
- DIAMOND_PICKAXE
- PICKAXE
- pickaxe
hardness: 2
blast_resistance: 1
no_explosion: false
sound:
break:
name: BLOCK_WOOD_BREAK
volume: 1
pitch: 0.9
place:
name: BLOCK_WOOD_PLACE
volume: 1
pitch: 0.9
方块特殊属性由以下部分组成:
- block:代表以下部分为方块特殊属性,请勿修改。
- placed_model:自定义方块的类型。下文详细说明。
- cancel_drop:是否取消掉落,玩家在挖掘该自定义方块后不会获得该方块,默认为
false
。 - light_level:亮度等级。对于亮度等级的知识可见 Minecraft Wiki。默认为
0
。 - break_tools_blacklist:禁止破坏该方块的物品id,你也可以填写 ItemsAdder 的
namespace:id
格式以指定对应物品。同时也支持模糊匹配,例如pickaxe
代表所有 id 包含pickaxe
的物品,也就是所有的镐子。这里的禁止是完全禁止,也就是说根本无法破坏。 - break_tools_whitelist:只可以破坏该方块的物品id,同上。
- hardness:方块的硬度。对于硬度的知识可见 Minecraft Wiki。总的来说就是合适的工具下所挖掘的时间为
硬度 x 1.5
。 - blast_resistance:爆炸抗性。对于爆炸抗性的知识可见 Minecraft Wiki。默认为
硬度 x 3
。 - no_explosion:爆炸无法使其破坏,如果设置,爆炸抗性属性也将失效。
- sound:物品破坏和放置时的音效。
这个属性有这些值:
-
REAL_NOTE 使用真正的方块(唱片机),没有卡顿,没有实体。 缺点:
不支持透明。
最多只能制作 750 个方块。 -
REAL 使用真正的方块(蘑菇),没有卡顿。 缺点:
-
最多 只能制作 191 个方块。
-
REAL_TRANSPARENT 使用真正的方块(紫菘植物),没有卡顿,也支持透明度! 缺点:
最多只能制作63 个方块。
-
TILE 使用 TILE 方块(修改后的 刷怪笼 带有材质),你可以创建无限多的方块,不像真实方块那样有 数量限制。 缺点:
它不是100%的真实方块,它只是一个套上了材质的刷怪笼。 材质/模型在较远距离看的话会消失,所以它将会直接显示刷怪笼。 如果大量的方块出现在玩家的视野里的话,可能会导致客户端出现延迟。
-
FIRE 这是一个 特殊方块,它是 火 方块. 缺点:
-
最多只能制作 14 种自定义火。
如果你想添加一个透明或半透明的物品,你的物品必须基于一件透明的物品,例如 WHITE_STAINED_GLASS
resource:
material: WHITE_STAINED_GLASS
generate: false
model_path: item/your_model
如果你想自定义方块的每一个面
info:
namespace: myitems
items:
red_block:
display_name: Red Block
permission: red_block
resource:
generate: true
material: PAPER
textures:
- block/red_block_down.png
- block/red_block_east.png
- block/red_block_north.png
- block/red_block_south.png
- block/red_block_up.png
- block/red_block_west.png
如果你想每个面使用同一张贴图
info:
namespace: myitems
items:
red_block:
display_name: Red Block
permission: red_block
resource:
generate: true
material: PAPER
textures:
- block/red_block.png
在设置完一个方块后,我们可以让它随机的生成在世界中。
在任意物品配置文件(是大的物品配置下,而不是单独的物品id下的配置,后续不再说明)中添加如下内容:
worlds_populators:
custom_block:
block: myitems:custom_block
worlds:
- world
replaceable_blocks:
- STONE
- DIRT
- ANDESITE
- GRANITE
- COBBLESTONE
- GRAVEL
biomes:
- PLAINS
chunk_chance: 70.0
max_height: 45
min_height: 25
vein_blocks: 6
chunk_veins: 1
custom_block_2:
block: myitems:custom_block_2
worlds:
- world
replaceable_blocks:
- DIRT
chunk_chance: 100.0
max_height: 64
min_height: 40
vein_blocks: 3
chunk_veins: 1
所给的示例配置中包含 2 个生成规则。其中,custom_block 和 custom_block_2 为生成规则的id,其下为生成规则的配置,包括:
-
block:该生成规则所指代的方块。
-
worlds:该生成规则所生效的世界,可以添加无数多的世界。
-
replaceable_blocks:该生成规则所替换的方块,可以添加无数多的方块,只能为原版方块id。
-
chunk_chance:各个区块在生成时使用该生成规则的概率,100 即代表生成新的区块时必定使用 1 次该规则,也就是在合适情况下必定会至少有 1 个指代的方块被生成。除非该方块你将设置特别稀有,否则请保持 100。
-
chunk_veins:在区块使用该生成规则后,该区块将会随机生成的矿脉数量。
-
vein_blocks:在生成矿脉后,该矿脉拥有的指代方块的数量。
-
在上面配置中,1个区块必定有1个矿脉,1个矿脉有3个指代的方块,所以每个区块都会有3个这样的矿石。
-
biomes:该生成规则所生效的生物群系,将该配置移除则代表所有生物群系都将会生成。
-
min_height:该生成规则的最低高度。
-
max_height:该生成规则的最高高度。
-
⚠️ 注意:如果你使用 Iris 作为地形生成插件的话,你需要对 Iris 的地形包进行更改