最全面最细致我的世界Fabric模组开发01 - 模组开端

目录

1. 前言

2. 使用构建器来生成Mod模板

3. 构建前准备工作

4. 构建后运行效果

5. 主要项目结构

6. 游戏测试环节

7. 总结 


我的世界Fabric模组开发01:模组开端

1. 前言

        为什么要写这篇教程,而网上教程千万个相同教程,但是通过学习、模仿过程,仍有许多初学者只会创建简单方块和物品,如果遇到奇特的想法,或者学点高难度的物品和方块,却发现根本不会编写出来。这是因为没有完整系统体系和思维导图,不知道下一步些什么,写完之后各种错误,崩溃报告等。因此,根据学到经验,整理学习资料,发表这篇文章。       

        请各位游客帮忙转发点赞,您的点赞就是我更新最大动力!

        本次教程分为三大板块:基础板块、扩展板块、高级板块

        1. 基础板块:详细说明每个单词对应的含义,一步一步、掰开揉碎明确编写目的,而且没有学过Java编程小白也能看懂这个含义,并且每篇文章都有总结,方便复习、查看。

        2. 扩展板块:类似作业练习,扩展基础方块知识,能过让小白学得明白,理解得透彻,而且能够活灵活用。

        3. 高级板块:通过以上两大板块学习之后,你肯定有系统知识网路,加上综合案例学习,结合过往知识,复习回顾。这个板块会教大家如何编写箱子、工业机器、动态多功能、自定义世界等。

        注意:本次教程面对零基础小白,对于有一定经验老手来说,有点啰嗦,请看每篇总结即可。如标题可知,本次教程全面Fabric 1.21.5模组讲解,而不是其他(Quilt 除外);有些专业术语通常情况下参考 Minecraft Wiki 网站的内容,对于其他网站,会标注来源地址。


  • 在学习过程中,肯定和我一样有许多问题,有时一知半解,不知道如何解决,例如:

       -  问题一:我看大多数Up主视频都用Idea,我没有Idea行吗? Vscode和Eclipse可以吗?

        在构建后运行效果解决问题一

       -  问题二:为什么构建如此得慢?有时还构建失败?构建超时?资源找不到?

        在构建后运行效果解决问题二

       -  问题三:看到过其他github模组仓库,发现和我项目结构不相同,有看不懂英文怎么办?

        在主要项目结构解决问题三

       以上问题,我会在过程中解答这个疑问。

  • 如果有任何疑问,可以在下发评论回答你的问题。

2. 使用构建器来生成Mod模板

Fabric Template Mod Generator (Fabric 模板构建器)https://fabricmc.net/develop/template/

通过上面地址,可以快速创建自己项目,下载Zip即可。

看不懂英文,没关系。下面整理出中文页面

模组名称(Mod Name): 见名知意,相当作文的标题,表明模组主题、风格、类型,例如:暮色森林虚无世界农夫乐事等。

包装名称(Package Name): 通常按照com.author.modid形式起名(和网站域名相反),其中author写作者的名称、modid和模组名称一致。如果英文过长,可以简写,例如:Spears, Axes, Swords, Shields, And Other Tools,缩写为SASSOT,并且必须全部使用小写字母,避免使用下划线或特殊字符。

我的世界版本(Minecraft Version): 每个版本都有所不同,如果使用不匹配版本,有可能出错。但每个相邻版本之间改动大致相差不大,也可以学习。本次教程使用的是1.21.5。

高级选项(Advanced Options): 选择数据构成(Data Generation)和拆分客户端和服务端(Split client and common sources)这两个选项,数据构成是方便开发者编写资源包和数据包,不由人工编写JSON文件,有效避免材质(纹理)丢失问题;客户端和服务端默认选择即可,如果面向多人联机时,必须选择它,好处是能够及时发现在多人联机情况,导致游戏崩溃的代码片段。

3. 构建前准备工作

下载后ZIp压缩包,解压到指定位置。注意的是,选好之后位置之后不要动,尤其共享github仓库。在点击build.gradle之前,最好点击gradle/wrapper/gradle-wrapper.properties,如图所示,目的是下载对应的Gradle版本号,能够更好加速构建进程。

右键使用笔记本,点击这个文件,复制distributionUrl=中的链接(不要改动当中配置),然后打开浏览器(必应、谷歌浏览器),在导航栏上粘贴这个链接并把"\"去掉,回车之后,自动下载这个文件。

下载之后,解压到指定文件夹上备用(最好起名为dev专门放Gradle各个版本),不要和模组在同一个文件下!

4. 构建后运行效果

我没有Idea这个强大集成开发工具,或者因为需要购买、不想破解软件、内存不够安装等原因,使用Vscode和Eclipse?

可以!如果使用Vscode工具,请参考“使用vscode+gradle+openJDK21搭建Java环境”;如果使用的是Eclipse工具,请参考"在Eclipse IDE中使用Gradle构建系统"

本教程使用Idea(这个我熟悉)。右键点击build.gradle文件,打开方式 ——》使用idea打开

之后首先暂停构建,采用本地gradle版本来安装。

按快捷键Ctrl+Alt+S打开设置(Setting),点击构建、执行、部署——》构建工具——》Gradle——》在Gradle栏下选择本地安装,输入gradle版本的地址——》点击确定或者应用(A)

最好退出Idea软件,重新构建。右键点击build.gradle文件,打开方式 ——》使用idea打开,之后等待即可,构建成功不用继续修改文件(在构建器中填写完成)

为什么这么慢呢?这需要下载相关配置,如果时间紧迫,可以使用Gradle代理配置

掌握Gradle代理配置:加速你的构建过程https://blog.csdn.net/2401_85743969/article/details/140397889为什么Gradle构建失败?可能网络稍慢、Idea版本过低、电脑系统过低导致的!

Gradle加载失败、超时等问题的总结https://blog.csdn.net/huanzhongying/article/details/144240084

5. 主要项目结构

我看到别gihub项目,有的github为什么和我不一样能?这是因为使用Architectury这个模组提供框架支持,如图:

相关视频:Architectury-01-环境搭建-Flandre芙兰https://www.bilibili.com/video/BV1ru4y1N7hN

项目详解与参考:Gradle构建的项目结构详解https://blog.csdn.net/fuhanghang/article/details/105186321

 

  • .github、.gitattributes 、-gitignore用于Github仓库共享,相关配置
  • .gradle、.idea: 存放项目的配置信息。这个文件夹是自动生成,版本控制信息等,包括历史记录
  • build: 项目输出路径,包括编译后的.class文件(classes文件夹下),资源文件(resourcer文件夹下)
  • gradle、gradlew、gradlew.bat、gradle.properites:资源打包器,初始化构建需要的资源配置
  • src:项目源码,包含程序源码和测试源码
  • build.gradle:当前项目模块配置,例如引入其他模组依赖,插件等
  • setting.gradle:全局项目模块配置
  • LICENSE:项目证书
  • 可能会出现的:RENAME.md,github仓库中项目介绍

6. 游戏测试环节

构建完成后,先点击右上角图标,然后点击Tasks——》fabric——》genSources,进行构建

这样确保,在运行游戏时,不会出现问题或者错误。

最后点击Minecraft Client 运行这个项目

成功

7. 总结

  1. 进入Fabric 模板构建器网站,填写相关信息(模组名、包名、版本等),然后点击下载后,解压指定文件夹
  2. 打开gradle/wrapper文件夹,找到distributionUrl=并复制其中链接
  3. 打开浏览器,在导航栏粘贴其中链接,并把“/”去掉,等待下载完成后,解压指定文件夹(不要和模组在同一个文件夹上
  4. 点击bulid.gradle,用Idea打开,在设置(Setting)当中gradle,选择本地安装,选择下载的Gradle选择8.12.1版本
  5. 点击Tasks——》fabric——》genSources构建,下载必要运行资源
  6. 最后点击 Minecraft Client 运行客户端,出现上图,证明运行成功!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值