NeoForge-1.20.4Mod开发教程之环境配置

NeoForge-1.20.4Mod开发教程之环境配置

本篇教程参考为Flandre芙兰的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/

e0595b925320260128133234

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即可

解压并将里面的内容放到一个文件夹中,如下图

614a47e59f20260128133326

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

b75758e47620260128133351

查看配置是否获取

bea16ed54d20260128133425

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

8a6f5dfe0220260128133446

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

4763230f1b20260128133510

配置模组信息

首先将包结构调整为图中的结构,block和item暂时不用创建

b8e9e3361020260128133600

调整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信息

27a0a090f920260128133624

# 设置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即可

56f83b099c20260128133845

© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容