众所周知,MC是一款游戏引擎【原版开发月刊《Feature》2026.04】

合集 · 月刊《Feature》 (19)

  1. 2:56
    2025.04
  2. 2:33
    2025.05
  3. 2:53
    2025.06
  4. 2:51
    2025.07
  5. 3:29
    2025.08
  6. 3:45
    2025.09
  7. 4:10
    2025.10
  8. 3:06
    2025.11
  9. 3:44
    2025.12
  10. 4:11
    2026.01
  11. 4:40
    2026.02
  12. 5:14
    2026.03
  13. 5:14
    2026.04
  14. 6:41
    2026.05
  15. 6:59
    2026.06
  16. 5:49
    2026.07
  17. 3:44
    2026.08
  18. 5:08
    2026.09
  19. 6:35
    2026.10
Description
https://vanillalibrary.mcfpp.top/datapack-index/feature/index/202604.html

《Feature》是由香草图书馆团队主办的,面向原版模组(数据包+资源包)开发的短文收集与展示的平台,用于开发者之间的交流,每月更新。

欢迎大家踊跃向《Feature》投稿,不需要非常高级的作品,只需要你有一点点微小的发现,就可以尝试向我们投稿!我们期待你和大家分享你的想法。

责任编辑:CR_019,@Alumopper  
视频制作:@徐木弦  

精选 Featured:
@徐木弦  :无限随机生成的跑酷地图你玩过吗?《跃动晶界2》

香草快讯 Λojang Spotlight:
@Alumopper  :香草快讯 - 2026年4月

洞见 Insights:
@轩宇1725  :轻量级低损耗将OBJ模型转换为体素模型的算法和程序实现
@意思布瑞德  :使用 PackSquash 压缩与混淆资源包
@轩宇1725  :开发经验分享:实体树及面向对象
@桂茗  ,@徐木弦  :命令存储进阶:使用栈管理函数上下文
@Alumopper  :Floating UI实战——自定义控件

巧匠 Masterpieces:
@洛风澜_Sea  :我的世界原版视频播放器


特别消息:
答题栏目上线
《Feature》招募视频制作人员

Comments

窝窝燕按f5下饭 2026-04-25

1.给每一个玩家各分配一条狗,然后对所有玩家输出这个提示 2.这个书架本身是下落的方块,在里面叠一个按钮 3.骂mojang 4.①:事先把每秒tick改成1000 ②在平台下方放置屏障和铁轨,发车一排命令方块矿车 ③命令方块矿车如果头上不是本次要保留的方块就把头上的玩家扔进虚空,每一种颜色各准备1排命令方块矿车

♥ 25 ↩ 1

Miccebe 2026-04-25

还有神秘小测验,不赖 1. execute as @e【type=wolf】 on owner run tellraw @s "..." # 把...替换为对应的文本 2. 如果这个是一个正常的1x1x1的书架,那么height应该是5f / 16f = 0.3125f 3. 名为Tape of M.E.G.CN的数据包内,backrooms:worldgen/biome/level0_normal.json文件中指定了一个不存在的音效backrooms:ambient.level0 (mc字体的日志读起来很费劲,能不能换个等宽字体) 4. (我去,我用插件写过色盲派对)回答中不阐述关于游戏流程控制的实现,只阐述游戏核心玩法的实现。 首先是地板图案如何生成: (1) 最简单的做法是预先制作好地板图案,然后随机其中一种图案 (2) 基于方法(1)的进阶方法是,把图案制作成一个32x32的二维数组存储于storage中,每种颜色对应一个数字,并配置好参数,决定这个地板图案的颜色是否可以打乱。如果可以打乱颜色,那么在地板生成的时候就随机打乱颜色到数字的映射,然后放置地板。这也是我在插件里的做法,不过我觉得数据包这么做性能应该不太行。 (3) 如果是随机地板,那直接上/spreadplayers就行了,做法很简单,不过多解释 然后是地板消失: (1) 把除了红色混凝土以外的所有颜色挨个fill replace一下,性能差点,但写起来简单 (2) 基于方法(1)的进阶方法,就是给这些混凝土各写一个只包含其他颜色混凝土的方块标签,这样fill replace执行1次就够了 (3) 如果是预先制作好地板图案的话,也可以在storage里存储每种颜色的位置。不使用实体是因为32x32的实体,太多了,严重拉低性能

♥ 17

t七比㐂月的枫 2026-05-04

纯路人,看不懂,能不能解释一下都是啥意思?[笑哭]

♥ 12 ↩ 3

晓风Matuvent 2026-04-25

这么这么这么这么么么么么么么么么么么么么么强?!!!!!!!!!!!!!!!!!!

♥ 9 ↩ 2

-忘却の旋律 2026-04-25

1. /execute as @e【type=minecraft:wolf】 on owner run tellraw @s "【提示】 你可以通过狗尾巴的角度判断它的生命值" 2. height为6.0f 3.在M.E.G.CN数据包内,一个id为backrooms:level0_normal的biome解析失败,引用了不存在的SoundEvent,其id为backrooms:ambient.level0

♥ 5 ↩ 1

轩宇1725 2026-04-25

其实我写的那个不是最小化体素数量[保佑]

♥ 4

Contionability 2026-05-03

① execute as @e「type=wolf」 on owner run tellraw @s "「提示」 你可以通过狗尾巴的角度判断它的生命值"(「」替换为正常的方括号) ② 五个像素高,可算得height = 0.3125f ③ Tape of M.E.G.CN数据包下level0_normal群系定义中音效定义格式错误,对于自定义音效,需使用sound_id标签指定对象而非sound,大概率是写成了"sound": "backrooms:ambient.level0",需要修改为:"sound": { "sound_id": "backrooms:ambient.level0" }(疑似易错题) ④ 最简单的方式是直接遍历,当然有更好的方法:如果是随机预制图案,先将地板替换为空气,再使用clone filtered填充需要保留的颜色即可。如果是完全随机生成:考虑两种情况,一、如果可以使用其它空间,先将需要保留的颜色clone filtered到缓冲区域,将地板替换为空气,再执行clone replace move即可。二、如果不能使用其它空间,使用数据包将混凝土添加到自定义tag,每种颜色的tag都不包含自身,然后使用fill replace即可

♥ 4

张小叉-KamioMisuzu- 2026-04-25

你们这么强显得我好弱😭

♥ 4 ↩ 2

小哼哼Dv 2026-04-25

1:execute as @e【type=wolf】 on owner run tellraw @s ... 2:不知道 3:缺少资源:minecraft:sound_event/backrooms:ambient.level0 4:把红色混凝土作为参数存储,然后用宏函数穷举判断961格的方块

♥ 2

小冻不想动 2026-04-25

强?!!

♥ 2

一只没有名字的-小马 2026-05-08

emmm都是数据包吗

鲨弟_凋零 2026-05-06

哇好厉害啊,但我看不懂

君子兰-Clivia- 2026-05-02

对于第四个色盲派对方块消失的实现方式,我觉得除了遍历每个方块的位置分开判定以外,似乎也可以参考原版冰霜行者的方式自定义一个“红色混凝土行者”魔咒,把圆柱体范围(只要这个圆柱体范围把平台套住)内的其他方块(由于只有有限种,可以考虑any_of穷举)替换为空气,需要平台消失时就召唤一个持有该附魔的盔甲架并让其自然下落触发替换效果,不过不太清楚这样做的性能开销,其他颜色同理

5ml圆底烧瓶油 2026-04-27

[哦呼]

↩ 1

C6不是土豆 2026-04-25

我们玩的还是一个mc吗[惊讶]

大佬萌茶 2026-04-25

哇 是帅气的CR

Node8257 2026-04-25

厉害👍

桂茗 2026-04-25

[星幕回响_冲啊][星幕回响_冲啊][星幕回响_冲啊]

虚空寂灭者 2026-05-05

吓哭了