@gamerteam 感觉这个真要做还是比较复杂,我只是想到了一些文章性质的社区项目,这些项目大多和一个主题有关,并且也缺人,如果本站能够吸引更多类似的项目作者那就太好了。
luobojuo 发布的最新帖子
-
RE: 能否添加一个板块用于创作者创建和发布专题项目
-
能否添加一个板块用于创作者创建和发布专题项目
社区当中有很多创作者和小组,以前mcbbs好像也有类似的东西,所以能否专门创立一个这样的板块呢?另外能否将帖子的线性布局改成网格形式的?在红石中继站发项目都不知道发在哪,茶馆感觉容易冲没了,技巧教程貌似又不适合。
-
RE: 【1.21.x】nbt对应物品映射模型
@GioGio /give @s bone[custom_model_data={strings:[“test”]}],然后可以写一个select类型的物品模型映射,属性为custom_model_data,指定index为0(读取列表中第一个元素),然后利用cases编写第一个元素为某值时要映射到的模型。
-
【Java 1.21.5+】用数据包&资源包做一个毒苹果
检测玩家使用了物品
首先,我们需要检测玩家是否食用了苹果。由于没有使用mod,纯原版实现目前都是在原版物品上进行一些修改和调整。为了与普通苹果区分开来,我们使用
custom_data
组件为苹果添加自定义数据custom_item:1b
(表示当前物品为自定义物品)和id:"generic:poisonous_apple"
(该标签用来模拟一个新的物品id)。give @p minecraft:apple[minecraft:custom_data={custom_item:1b, id:"generic:poisonous_apple"}]
这样,我们就获得了一个比较特殊的苹果。
接下来,我们利用进度准则触发器
consume_item
来检测玩家食用了自定义物品:{ "criteria": { "generic:player_consumed_item": { "trigger": "consume_item", "conditions": { "item": { "predicates": { "minecraft:custom_data": { "custom_item": true } } } } } }, "rewards": { "function": "generic:player/consumed_item" } }
对使用的物品进行判断
编写相应的处理函数
generic:player/consumed_item
:# 在聊天栏输出消息,用于测试 tellraw @s[tag=debug] {text:"使用了一个自定义物品"} # 判断当前使用的物品是否为毒苹果 execute if items entity @s weapon.* *[custom_data~{id:"generic:poisonous_apple"}] run function generic:item/poisonous_apple/consumed # 剥夺进度,使得该进度可以反复触发 advancement revoke @s only generic:player/consumed_item
实现中毒效果
函数:
generic:item/poisonous_apple/consumed
tellraw @s[tag=debug] {text:"毒苹果被食用了"} effect give @s poison 3 0
测试效果
为自己添加
debug
标签以进行测试:tag @s add debug
使用之前的
give
命令获取一个苹果,吃下去后可以通过聊天栏的输出判断有哪些函数被执行。经过测试后可以看到自身获得了一个3秒的中毒效果。添加毒苹果模型
为了让毒苹果看起来与众不同,我们需要利用资源包为其指定一个新的物品模型。这里直接仿照原版资源包中的文件内容和结构。在自己的资源包中新建一个命名空间,这里为
generic
,然后新建models
文件夹,并在其中建立item
子文件夹以放置物品模型文件。在
item
子文件夹中新建poisonous_apple.json
文件,将原版的apple.json
文件内容复制过来并稍作修改:{ "parent": "minecraft:item/generated", "textures": { "layer0": "generic:item/poisonous_apple" } }
设置苹果的物品模型映射
在
generic
命名空间中新建items
文件夹,在该文件夹中新建文件poisonous_apple.json
,该JSON文件即为毒苹果的物品模型映射文件。这里采用model
类型,直接映射到之前所创建的item/poisonous_apple
烘焙模型:{ "model": { "type": "minecraft:model", "model": "generic:item/poisonous_apple" } }
绘制毒苹果纹理
打开BlockBench软件,将
item/poisonous_apple
烘焙模型文件拖入,为其创建一个新的纹理,路径在generic/textures/item
下,名称同样为poisonous_apple
。设定物品名称
为了兼容多个语言,需要在资源包中使用翻译键分别指定不同的物品名称。在资源包
generic
命名空间下,新建lang
目录,并在其中创建如下文件:en_us.json
,该文件为英文US翻译。{ "item.generic.poisonous_apple": "Poisonous Apple" }
zh_cn.json
,该文件为简体中文翻译。{ "item.generic.poisonous_apple": "毒苹果" }
添加战利品表
为了方便物品被我们获取,我们可以给毒苹果单独添加一个战利品表。在数据包的
generic
命名空间中,新建loot_table
目录,并添加如下文件:
poisonous_apple.json
{ "pools": [ { "entries": [ { "type": "item", "name": "apple", "functions": [ { "function": "set_components", "components": { "custom_data": { "custom_item": true, "id": "generic:poisonous_apple" }, "item_model": "generic:poisonous_apple", "item_name": { "translate": "item.generic.poisonous_apple" } } } ] } ], "rolls": 1 } ] }
这样,我们就可以通过如下命令获取到一个拥有翻译名称的毒苹果了:
loot give @s loot generic:poisonous_apple
为了使纹理正常加载,你可以通过
F3 + T
来在游戏内重载资源包。 -
入站感受
听到mcbbs有了继承,立刻感到高兴。但随之而来的是一些担忧——这个陌生的论坛会像以往的mcbbs那样吗? 事实上,在mcbbs快要关站时,已经略显颓势。或许这和国内mc的整体风貌有关。这无疑引起了我的一些思考——目前mc玩家需要的到底是什么? 或许,mcbbs的关站只是一种表象。一个真正充满活力的社区,绝不会因为一个社群网站的倒下而被完全摧毁——更多的力量反而重获新生,绽放自己的生命力。可能有些人并不同意这种说法——在此期间,有很多交流变得困难重重,玩家间的那堵墙仿佛也越来越厚,越来越多的打着“新mcbbs”旗号的网站显头露脚······尽管如此,我仍然看到了一些大佬默默耕耘,在此期间他们反而创作出了比以往更独具匠心的作品。 其实,真正要靠热爱坚持下去是很难的。或许,在所谓的冷静之下,才真正看出了谁才是真正的“MInecraft Lover”。在这里,我也要向所有真正热爱这个游戏的人致敬——你们是真正的思想上的英雄,将一个原本不起眼的爱好当做自己生命中必须完成的一部分任务。之前,我也想过是否要在网易发布自己的作品,或许之后还可以赚取一些固定收入,给自己增加经济。但是后来也并没有付诸行动。很多大佬其实已经可以靠mc维持一定的生活花费了。从这个方面来说,这是实际的——很多人人并不能将之视为真正的热爱,既然现实也有所迫,不如“出卖”自己的爱好,这何尝也不是一种实现人生价值的幸福? 对于一个有一定游玩时长的玩家来说,我的担忧包括对新内容和新人的担忧。在过去的几年,我所在的mc圈子并没有太大的变化——如今依然是所熟知的那些人在领导着,在主宰着。或许mc圈子在这大约10年期间也都是如此。为什么没有新人?这是我首先提出的问题。长久以来,有部分的大佬已经占有了一定的贡献,但为什么新人又不见太多?或许,我应该将眼光放在激发新生力量上来——这是我随后所想到的。然而,仅靠寥寥几篇教程或许显得实在非常草率,这些内容无法适应日新月异的mc变动——那能不能使之被其他玩家随时更改?我想,如果这样,那么同一系列的思想很容易被延续下去。或者,就算不容易,也有了一种良好的延续方法。所以,如果有新站,并且运行良好,那么帖子让人看懂是基本,而让帖子内容可以被随时更新是要求。 到此,其实mcbbs的问题也显然是破坏了信息的继承化和统一化。在统一化上,其实各大wiki都做的非常好——对于构建一个完整的体系来说,这很重要。然而,在继承化方面,也是所担忧的一方面——如何继承,怎样继承?其实,理解继承,无非就是理解一套方法论。在mc中,大大小小的圈子或许都流传着一些萌新必须的知识,或者老生常谈的经验,这些经验相对mc本身的内容来说是较长时间才会变化的。如此,所谓继承也即实现让这种经验得以流传的可能。无疑,要完善对一个玩法系统的经验建立是需要很长时间的——这不免会遭到一些磕绊。但是长久以来,mc正式靠着这种经验来实现它的活力。想当年,正是由于在优酷、爱拍、土豆等视频网站看到一些博主的分享视频才入坑。这种分享不就是对已有经验的分享?当时,关于Him的传说也广为人知——这不也是一种继承?如今,mc已处于“琐碎更新”时代,官方对游戏的不断更新,特别是近期对技术性方面的更改使得很多底层框架不得不推迟甚至推到重来。 不管怎么说,或许我们需要一轮属于mc的革命,让mc焕发真正的新活力,建立社区新的骨架和体系——这些不是由老玩家,而是由那些初入mc的群体。