的NeoForge1.20.4Mod开发的视频,这篇教程是我边学边总结的,与其说是教程更像我的学习笔记,如有不清楚的地方,大家可以在评论区提问。在我力所能及的范围内,我都会解答的。
安装Java和IDEA
JAVA:https://adoptium.net/zh-CN/temurin/releases
IDEA:https://www.jetbrains.com/idea/download/?section=windows
JAVA和IDEA的配置请去B站自行搜素
下载MDK
NeoForge Mod Generator:https://neoforged.net/mod-generator/

Mod Name为模组的名字
Mod ID会根据Mod Name自动生成
Package Name可以设置成域名、电子邮件地址、网站(或子域名)等等。甚至可以是您的名字或用户名,只要您能保证它具有唯一性即可。例如io.github.examplemod,com.fanxien.examplemod等
Minecraft Version选择1.20.4,其他版本的写法会与本教程有较大的差别
Gradle Plugin选择NeoGradle,不要选图中展示的
在Mod Metadata中可以设置作者和模组描述,Advanced Options不需要改动
最后点击DOWNLOAD MOD PROJECT即可
解压并将里面的内容放到一个文件夹中,如下图

最后用idea将此项目打开,等待项目构建完成。构建失败的话尝试使用梯子,如果还不行就打开梯子的全局模式

查看配置是否获取

如果没有,运行图中程序获取

配置获取成功后,选择Client运行,启动游戏

配置模组信息
首先将包结构调整为图中的结构,block和item暂时不用创建

调整ExampleMod类的内容
@Mod(ExampleMod.MODID)
public class ExampleMod
{
public static final String MODID = "examplemod";
private static final Logger LOGGER = LogUtils.getLogger();
public ExampleMod(IEventBus modEventBus)
{
modEventBus.addListener(this::commonSetup);
NeoForge.EVENT_BUS.register(this);
}
private void commonSetup(final FMLCommonSetupEvent event)
{
}
@SubscribeEvent
public void onServerStarting(ServerStartingEvent event)
{
}
}
在gradle.properties中配置mod信息

# 设置gradle命令默认使用的内存。可以通过用户或命令行属性覆盖。
#org.gradle.jvmargs=
org.gradle.daemon=false
org.gradle.debug=false
#更多关于这个的信息可以在 https://github.com/neoforged/NeoGradle/blob/NG_7.0/README.md#apply-parchment-mappings 查看
#你也可以在以下链接找到最新版本:https://parchmentmc.org/docs/getting-started
neogradle.subsystems.parchment.minecraftVersion=1.20.4
neogradle.subsystems.parchment.mappingsVersion=2024.04.14
# 环境属性
# 你可以在以下链接找到最新版本:https://projects.neoforged.net/neoforged/neoforge
# Minecraft版本必须与Neo版本一致才能获得有效的构件
minecraft_version=1.20.4
# Minecraft版本范围可以使用任何版本的Minecraft作为边界
# 快照、预发行版和候选发行版不保证能正确排序,因为它们不遵循标准的版本命名规则。
minecraft_version_range=[1.20.4]
#Neo版本必须与Minecraft版本一致才能获得有效的构件
neo_version=20.4.251
# Neo版本范围可以使用任何版本的Neo作为边界
neo_version_range=[20.4,)
#加载器版本范围只能使用FML的主要版本作为边界
loader_version_range=[1,)
## 模组属性
# 模组的唯一标识符。必须使用英文小写。必须符合正则表达式 [a-z][a-z0-9_]{1,63}
# 必须与主模组类中用@Mod注解的字符串常量相匹配。
mod_id=examplemod
# 模组的易于阅读的显示名称。
mod_name=Example Mod
# 模组的许可协议。在 https://choosealicense.com/ 查阅你的选项。默认为“所有权利保留”。
mod_license=All Rights Reserved
# 模组的版本。请参阅 https://semver.org/
mod_version=1.0.0
# 模组的组ID。在发布为Maven仓库的构件时才重要。
# 这应该与用于模组源的基础包相匹配。
# 请参阅 https://maven.apache.org/guides/mini/guide-naming-conventions.html
mod_group_id=net.fanxien.examplemod
# 模组的作者。这是一个简单的文本字符串,用于在模组列表中显示。
mod_authors=YourNameHere, OtherNameHere
# 模组的描述。这是一个简单的多行文本字符串,用于在模组列表中显示。
mod_description=Example mod description.
如有更改,重新加载Gradle即可

















![表情[ciya]-方块工坊](https://crapark.com/wp-content/themes/zibll/img/smilies/ciya.gif)
![表情[se]-方块工坊](https://crapark.com/wp-content/themes/zibll/img/smilies/se.gif)
![表情[jie]-方块工坊](https://crapark.com/wp-content/themes/zibll/img/smilies/jie.gif)
暂无评论内容