Deimos 是一个用于数据生成与配置的 Minecraft 库。借助它,你可以生成配置文件,并在 Forge 和 Neoforge 中原生在游戏内显示它们,或者在 Fabric 上借助 Mod Menu 来显示。Deimos 还允许你在游戏启动时创建新的配方,使这些配方可配置。这也意味着你不必使用 JSON 文件,切换 Minecraft 版本也会明显更轻松、没那么痛苦。
这个库中的配置部分基于 MidnightLib,其作者为 Motschen。
我制作这个模组是为了简化我自己模组的开发流程,并让我能够在所有模组加载器和 Minecraft 版本中只使用一个配置库。所以,如果你想看看这个库在实际项目中的一些使用示例,可以查看 我制作的模组。
下面是设置和使用 Deimos 的说明。想了解这个库的更多细节,请务必查看它的 GitHub 页面。
你可以直接使用我的 IntelliJ 模板,它会生成一个已预配置 Deimos 的新 MultiLoader 项目;或者按照以下说明手动进行设置:
repositories
{
maven
{
url =
"https://api.modrinth.com/maven"
}
}
dependencies
{
implementation
"maven.modrinth:deimos:
${project.deimos_version}
"
}
dependencies
{
modImplementation
"maven.modrinth:deimos:
${project.deimos_version}
"
//如果你想使用 modmenu
modCompileOnly
"com.terraformersmc:modmenu:
${project.modmenu_version}
"
}
如果你想使用 mod menu 功能,则需要添加一个新的仓库:
repositories
{
maven
{
name =
"Terraformers"
url =
"https://maven.terraformersmc.com/"
}
}
你可以在 Modrinth 上找到所需的 Deimos 具体版本。
你可以在一个继承 DeimosConfig 的类中添加配置:
public
class
TestConfig
extends
DeimosConfig
{
@Entry
public static int test_int =
6
;
@Entry
public static
List
teststringlist =
Lists
.newArrayList(
"minecraft:acacia_planks"
,
"minecraft:andesite"
);
}
然后在你的 initialize 方法中,需要像这样调用 DeimosConfig.init:
DeimosConfig
.init
(
MOD_ID
,
TestConfig
.class
);
要添加新配方,你需要在 initialize 方法中调用 DeimosRecipeGenerator 的方法。你可以添加无序合成、有序合成、熔炉烧炼、烟熏炉烧炼、高炉烧炼、营火烹饪和切石机配方。下面是一些示例:
DeimosRecipeGenerator.createSmeltingJson(TestConfig.teststringlist.
get
(
0
), TestConfig.teststringlist.
get
(
1
), TestConfig.test_int,
0.5
F);
DeimosRecipeGenerator.createShapedRecipeJson(
Lists.
new
ArrayList
(
'#'
),
Lists.
new
ArrayList
(ResourceLocation.parse(
"sand"
)),
Lists.
new
ArrayList
(
"item"
),
Lists.
new
ArrayList
(
"# "
,
" #"
),
ResourceLocation.parse(
"stone"
),
1
);
请注意,你可以使用配置文件中的值。如果玩家修改了这些值并重启游戏,配方也会随之改变。
这甚至也适用于模组物品。
友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:163,575 | 历史访问人次:262,565
今日访问人数:437 | 今日访问人次:458
昨日访问人数:23,567 | 昨日访问人次:27,193
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6