
元素大典
Elementarium为Minecraft提供了完整的元素周期表,内置支持通过JSON或KubeJS定义的自定义元素。这是面向化学模组和模组包的轻量级基础。
查看大图Elementarium
完整的元素周期表,开箱即用,你添加的一切都以完全相同的方式工作。
Elementarium 是一个面向 Forge 1.20.1 的数据驱动型材料库。开箱即可获得全部118种元素,形态涵盖锭、板、齿轮、粉、流体等,并且已配置好配方、标签和统一整洁的外观。需要你自己的合金?通过 JSON 或 KubeJS 添加几行即可免费获得全套支持。不需要某些东西?在一个配置文件中将其关闭即可。
关键是,不再会有两个模组各自提供三种不同的钢板的困扰了 :)
亮点
- 包含全部118种元素,默认配置,也可自定义。
- 每种材料都会自动生成一整套形态,包括:
- 锭、粒、块
- 粉、小撮粉、微量粉
- 板、双层板、杆、齿轮、线材
- 流体:熔融态、液态、气态(每种都包含流体方块和桶)
- 默认也会生成配方……完整的压缩合成网络
- 所有物品都带有跨模组的
forge:标签(如forge:ingots/steel、forge:plates/steel、forge:gears/steel等),让你的物品和其他模组的物品能无缝协作。 - 数秒内添加你自己的材料 —— 通过 JSON 或 KubeJS,效果相同:生成带有配方、标签和模型的真实物品。
- 高度模块化 —— 可在单个配置文件中,全局或按材料禁用任何材料或形态。
- 内置 JEI 支持 —— 元素信息页面以及目录中的所有物品和配方。
- 游戏内周期表 —— 可收集的元素浏览器(默认按键:P)。
- 处处轻量且可选 —— JEI、KubeJS 和 CraftTweaker 均为软依赖。

添加一种材料
模组自带现成模板。首次启动时,请查看
config/ptmaterials/examples/目录下的bronze.json和material.js,这些是用法示例。
使用 JSON,无需其他模组
将任意 *.json 文件放入 config/ptmaterials/ 目录:
{
"materials": [
{
"name": "bronze",
"displayName": "bronze",
"color": "#4A4A4A",
"style": "metallic",
"state": "solid",
"forms": ["ingot", "nugget", "block", "dust", "plate", "rod", "gear", "wire", "molten"]
}
]
}

就这样,重启后你就获得了染色的青铜物品、青铜块、熔融青铜流体及桶、所有压缩配方和所有 forge: 标签。
| 字段 | 作用 |
|---|---|
name |
小写 ID,需唯一。必填。 |
forms |
要生成的形态(见上方列表)。必填。 |
color |
颜色,格式为 #RRGGBB。 |
style |
metallic(金属)、shiny(闪亮)、dull(暗淡)或你自己的纹理文件夹。 |
state |
solid(固态)、liquid(液态)或 gas(气态)。 |
displayName |
游戏内显示名称(可选 —— 否则由 name 派生)。 |
symbol |
化学符号,在 JEI 中显示(可选)。 |
atomicNumber |
用于排序(可选)。 |
secondaryColor |
覆盖/次要颜色(可选)。 |
使用 KubeJS,在脚本中完成同样的事
将此脚本放入 kubejs/startup_scripts/(需安装 KubeJS):
PTMaterials.create('adamantium')
.displayName('adamantium')
.color('#4A4A4A')
.style('metallic')
.state('solid')
.forms('ingot', 'nugget', 'block', 'dust', 'plate', 'rod', 'gear', 'wire', 'molten')
.register()
脚本材料会覆盖在 JSON 之上,因此脚本可以覆盖默认设置。
模块化
在 config/ptmaterials/config.json 中剔除任何不需要的内容,无需编辑元素数据:
{
"disabledMaterials": ["titanium"],
"disabledForms": ["wire"],
"materials": {
"iron": { "disabledForms": ["gear"] }
}
}
disabledMaterials移除整类材料(完全不再有钛)。disabledForms从所有材料中移除某种形态(任何地方都不再有线材)。materials.<名称>.disabledForms从某一种材料中移除形态(不再有铁齿轮)。
被移除的内容会干净地消失,物品、配方、标签、战利品和周期表条目都会一起移除,不留任何残留。非常适合将模组定制成你整合包所需的确切内容。
调整配方
Elementarium 中的每个物品都是普通的、带有 forge: 标签的物品,因此 CraftTweaker 和 KubeJS 无需特殊支持即可重新调整生成的配方:
// CraftTweaker: 替换默认方块配方
recipes.remove(<item:ptmaterials:steel_block>);
想通过脚本创建新材料?请使用 JSON 或 KubeJS(见上文),CraftTweaker 用于调整现有内容,因为其脚本在游戏注册表构建之后运行。
为整合包而生
大多数科技模组都在重新发明相同的基础资源,导致物品重复、纹理冲突、ID 不兼容。Elementarium 是一个共享的材料基础:为你的整个整合包提供统一的命名方案、统一的外观和统一的标签集。只需定义一次材料,即可保持所有内容一致,让模组使用共同语言,而不是各自制作自己的铜齿轮。
兼容性
| 模组 | 提供的功能 |
|---|---|
| JEI | 可选。元素信息页面 + 完整物品/配方目录。 |
| KubeJS | 可选。从启动脚本创建材料。 |
| CraftTweaker | 可选。开箱即可调整生成的配方/标签。 |
即使完全未安装这些模组,一切也能正常运行。
许可证
你可以自由地将 Elementarium 包含在任何公共或私人整合包中,无需请求许可。
唯一的要求是提供适当的署名,并链接回本模组项目页面。
如果你想进一步支持本项目,我将非常感谢你同时包含对我 YouTube 频道的链接:https://www.youtube.com/@Navaronee。这将帮助项目成长,并支持未来模组的开发。
感谢你的支持!❤️
MIT 许可证。
正在加载版本记录…





正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。