Fabric 1.19.2自定义物品组创建时游戏崩溃问题求助
Fabric 1.19.2自定义物品组崩溃修复
问题根源
报错日志里的net.minecraft.util.InvalidIdentifierException: 路径中包含非[a-z0-9/._-]字符: teas:Crippling Teas已经明确指出问题:Minecraft的Identifier(标识符)路径部分严格要求只能用小写字母、数字、斜杠、点、下划线、连字符,你写的"Crippling Teas"包含空格和大写字母,违反了标识符规则,导致游戏初始化失败。
修复方案
- 将Identifier的路径修改为合规格式,比如
"crippling_teas" - 物品组的显示名称通过
displayName方法单独设置,无需和标识符路径绑定,用翻译键实现自定义显示效果
修正后的完整代码
package com.end3r.cripplingteas.item; import com.end3r.cripplingteas.CripplingTeasMod; import com.end3r.cripplingteas.Registry.ModItems; import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; import net.minecraft.text.Text; import net.minecraft.util.Identifier; public class ModItemGroup { public static final ItemGroup CRIPPLINGTEAS = FabricItemGroupBuilder.build( new Identifier(CripplingTeasMod.teas, "crippling_teas"), () -> new ItemStack(ModItems.BASIC_TEA)) .displayName(Text.translatable("itemGroup.cripplingteas.crippling_teas")); }
额外说明
- 所有模组注册内容(物品、方块、物品组等)的Identifier都必须遵守命名规则,禁止使用非法字符
- 翻译键需要在模组资源包的
lang/zh_cn.json(对应中文显示)中添加对应条目,示例:
这样游戏内就会显示你想要的自定义物品组名称。{ "itemGroup.cripplingteas.crippling_teas": "致残茶饮" }
内容的提问来源于stack exchange,提问作者End3r
相关产品推荐
相关产品推荐

