物品预设
Minecraft 自定义模型数据物品命令
custom_model_data 只有在与资源包模型相互匹配时才有意义。这篇升级后的文章专注于完整工作流:选择物品、分配模型数值、为玩家标注物品,并让 custom_data 始终可供命令逻辑使用。
预设结果
一条资源包就绪的物品命令,配有清晰的模型 ID 与稳定的数据标记。
输出
自定义模型数据 Give 输出
/give @p minecraft:diamond_sword[custom_name={text:"Runed Blade",color:"aqua",italic:false},lore=[{text:"Resource-pack model 1001",color:"gray",italic:false}],custom_model_data={floats:[1001]},enchantment_glint_override=true,custom_data={model_item:"runed_blade"}] 1The longest command line is 266 characters, 10 over the 256-character chat input limit. Pasting it into chat can truncate the line and make Minecraft report a syntax error even when the generated command is valid.
- Use a Command Block: run
/give @s command_block, place it, then paste this command into the block command field. - Use a
.mcfunctionfor a reusable datapack: save the line without the leading slash atsaves/<world>/datapacks/<pack>/data/<ns>/function/<name>.mcfunctionwith a minimalpack.mcmeta, run/reload, then run/function <ns>:<name>. Do not paste.mcfunctioncontent into chat.
预设截图
构建预设
- 打开 Give,并选择一件被资源包重新映射过的物品。
- 把 custom_model_data 设为资源包所期望的数值。
- 添加 custom_name 与描述文本 (lore),用来描述这件被建模的物品,而不是它的原版基础物品。
- 复制命令,并在发布前启用资源包进行测试。
模型 ID 与物品标识
如果没有匹配的资源包,模型数值本身毫无意义。测试期间让模型 ID 在描述文本 (lore) 中保持可见,等资源包稳定之后再把它删除,或换成面向玩家的文本。
物品标识应当单独存放在 custom_data 中。这样命令在检测这件物品时,就不必依赖模型或显示名称。
版本注意事项
custom_model_data 的输出形态取决于所选的 Java 版本系列。无论是支持组件之前的世界,还是当前组件体系的世界,都可以用 NBTForge 重建这件物品。
原先针对单个「物品/模型」组合的重定向生成器页面,现在都指向这里,因此本站针对这一搜索意图拥有了更具权威性的统一资源。
如需相近的物品工作流,可对比 Minecraft 玩家头颅命令生成器 和任意物品的自定义名称与描述文本 (lore) 预设。
- 让模型数值与资源包保持一致。
- 让显示文本对玩家来说始终可读。
- 用 custom_data 来承载命令逻辑。
把预设用到真实项目里
请把 Minecraft 自定义模型数据物品命令当作测试的起点,而不只是一段被复制的字符串。输出能正常运行之后,请用清晰的 Project 名称把它保存起来,记下目标 Minecraft 版本,并把这个预设放在相关配置命令(例如计分板、Bossbar、战利品或重置行)的旁边。
在把预设发布到地图、服务器或 Command Pack 之前,请从复制出来的成品命令运行它,而不是仅仅依赖实时 Workbench。这样能发现缺失的依赖、过时的选择器、错误的版本选择,以及那些只因为本地测试状态恰好已经存在才生效的命令。
- 通过共享命令保留所选的 Edition 和 Version。
- 在使用伤害、击杀、清除或传送之前,先用无害命令测试一下选择器。
- 把长命令转入 Project 或函数化工作流,不要直接粘贴到聊天里。
- 在改动实体、物品组件、passenger 或数据包资源之后,请重新核对警告信息。
FAQ
custom_model_data 会自己创建模型吗?
不会。它只是从资源包提供的模型中挑选一个。命令和资源包必须在这个数值上达成一致。
我应该用 custom_model_data 来检测物品吗?
在逻辑层面优先选 custom_data。custom_model_data 主要是一个渲染层面的集成点,而 custom_data 对命令而言更干净。
这个预设什么时候应当成为 Command Pack 的一部分?
当输出依赖于配置行、重置命令、战利品资源、计分板状态或反复测试时,就把它当作 Command Pack 条目来管理。单条安全命令仍然可以直接从输出里复制使用。
打开这个工作流
从相关 Give 工作台开始,然后按你的世界调整预设字段。