bailiyixi
比如我想要在STONE的基础上制作一个STONE:1,并给它单独新加一个材质,如何才能实现呢?
如果有教程帖子的话就太好不过了

TRCStudioDean
插件只能做到原版有的特性上的修改、优化、多功能化,无法做到原版不存在的特性的增加,也就是说插件是做不到你所说的这些功能的,可以考虑考虑使用模组

厨师海绵宝宝
要实现是可以的,但是过程很复杂而且需要自己编写插件
但是要实现这个功能我们得废掉一个工具,首选是钻石锄头,因为它耐久值高,意义不大,获取途径只有合成一种
=========================================================
步骤:

首先禁掉钻石锄头的合成
接下来就开始制作服务器资源包
我们知道,可以在物品模型中利用predicate标签使不同损坏值的物品指向不同的模型
于是我们就可以修改"[资源包名字]\assets\minecraft\models\item\diamond_hoe.json"
下面用我在我服务器中实现的自定义物品来举例
  1. {
  2.     "parent": "item/handheld",
  3.     "textures": {
  4.         "layer0": "items/diamond_hoe"
  5.     },
  6.     "overrides": [
  7.         {
  8.             "predicate": {
  9.                 "damage": 0
  10.             },
  11.             "model": "item/iron_head"
  12.         },
  13.                 {
  14.             "predicate": {
  15.                 "damage": 0.001
  16.             },
  17.             "model": "item/wand1"
  18.         },
  19.                 {
  20.             "predicate": {
  21.                 "damage": 0.002
  22.             },
  23.             "model": "item/crockpot"
  24.         },
  25.                 {
  26.             "predicate": {
  27.                 "damage": 0.003
  28.             },
  29.             "model": "item/xiaohuixiang"
  30.         },
  31.                 {
  32.             "predicate": {
  33.                 "damage": 0.004
  34.             },
  35.             "model": "item/huajiao"
  36.         },
  37.                 {
  38.             "predicate": {
  39.                 "damage": 0.005
  40.             },
  41.             "model": "item/bajiao"
  42.         },
  43.                 {
  44.             "predicate": {
  45.                 "damage": 0.006
  46.             },
  47.             "model": "item/rougui"
  48.         },
  49.                 {
  50.             "predicate": {
  51.                 "damage": 0.007
  52.             },
  53.             "model": "item/dingxiang"
  54.         },
  55.                 {
  56.             "predicate": {
  57.                 "damage": 0.008
  58.             },
  59.             "model": "item/wuxiangfen"
  60.         },
  61.                 {
  62.             "predicate": {
  63.                 "damage": 0.009
  64.             },
  65.             "model": "item/hutuozi"
  66.         },
  67.                 {
  68.             "predicate": {
  69.                 "damage": 0.01
  70.             },
  71.             "model": "item/jiezimo"
  72.         },
  73.                 {
  74.             "predicate": {
  75.                 "damage": 0.011
  76.             },
  77.             "model": "item/huangjiangfen"
  78.         },
  79.                 {
  80.             "predicate": {
  81.                 "damage": 0.012
  82.             },
  83.             "model": "item/lajiao"
  84.         },
  85.                 {
  86.             "predicate": {
  87.                 "damage": 0.013
  88.             },
  89.             "model": "item/galifen"
  90.         },
  91.                 {
  92.             "predicate": {
  93.                 "damage": 0.014
  94.             },
  95.             "model": "item/fishing_rod_cast"
  96.         }
  97.     ]
  98. }
复制代码

可以看到,我是用修改钻石锄头的模型实现了很多不同的自定义物品,比方说咖喱粉啊之类的
然后我们在服务器中输入
  1. /give @p minecraft:diamond_hoe 1 [损坏值] {Unbreakable:1b}
复制代码

加上Unbreakable这个标签之后,钻石锄头就不会损失耐久,而且不会显示耐久条
如果是有攻击力、增加血量之类的特殊物品,你可以使用attributes来实现,这里就不详述了

单人模式测试一下资源包是否做对了,然后上传到能提供直链下载的网站,然后安装一个服务器资源包相关的插件,来确保你的玩家只有在拥有这款材质包的情况下才能入服

然后你可以用lores等插件修改物品的名称和Lore描述
接下来就是自己编写插件的过程了
首先你需要禁用掉钻石锄头的一切合成(包括在合并修复,铁砧修复等),禁掉原版钻石锄头的使用事件(耕地)
然后还原你在物品栏中点击钻石锄头时会发生的事情(物品堆叠,分离之类的)(强烈建议你在给予物品的时候自己补上一个“StackSize”之类的NBT标签,用来标志该物品最大堆叠数为多少,然后在点击时用于进行判断,而不是每个损害值的物品都写一个条件判断)
接下来就是一些有使用效果之类的物品,写入点击时会发生什么
然后是可以放进特殊的物品格(如盔甲格)的物品,也要写好处理方式
最后就是获得的方式,你可以使用别的插件来做自定义合成,相关插件已经有很多了
也可以使用otherdrops等插件来实现自定义掉落
=======================================================================

自定义有耐久的物品,可以给物品加上“耐久:n”的lore标签
每次使用物品的时候,耐久-1
然后在耐久使用完的时候移除物品并产生物品损坏颗粒

=======================================================================
最后是自定义可摆放的物品

前面的操作和之前所述的一样,但是要在使用这个物品的事件内加上生成脑袋上顶着这个物品的打上Marker的盔甲架,调整好坐标
对于不可穿过的方块,在那一格内生成一个屏障
之后怎么处理这个盔甲架和屏障方块就是你自己的事了

======================================================

总之用起来还是比较难的,谨慎选择把0 0
至于“纯净做不到”的这类说法,我只想说,纯净更新到现在了,还有啥做不到了,永远不要放弃探索0 0
下一层楼补图

厨师海绵宝宝
补图: