我的世界1.18mod开发学习(1)-环境搭建
前言
由于源码解读记录没有一个能跟随的流程,因此源码解读记录将会转变为阅读forge官方文档
因为是一边学习一边做记录,未来可能会修改或者添加更多的内容
有一些阅读时认为不太需要的不会记录,不一定会跟着官方文档
有时候阅读别的模组源码或许会给新的思路
需要有点java基础
环境搭建
本篇主要是介绍环境搭建,以及一些框架搭建
下载及配置
配置使用的操作系统为Windows,配置gradlew时使用的是java 1.8.0_221,运行minecraft时使用的是openjdk-17,IDE为IDEA
官方网站,点进去下载Mdk版本,我下的时候是1.18.1-39.0.79,下载完毕后,在目录下打开控制台(cmd)输入gradlew xxx,需要注意你的IDE是什么,xxx为下面中的一个:
- Eclipse: genEclipseRuns
- IDEA: genIntellijRuns
- VSCode: genVSCodeRuns
等待一段时间,如果不成功看看java版本是不是1.8.0或者问问百度等,在此处我用的是IDEA,直接在IDEA中选择打开你下载的路径,等待一会后右上角的运行旁应该会有RUNCLIENT标识,进去后记得设置JDK为openjdk-17
下面打出一些配置文件,文件里面有详细的介绍,此处就不展开了
- build.gradle
- src/main/resources/META-INF/mods.toml
- src/main/resources/pack.mcmeta
代码框架搭建
首先建立包,包名一般为com.游戏名.模组id,我的游戏名是waoa,模组id就命名为examplemod,如果你更改了模组id以及游戏名,可能要修改上面提到的配置文件
代码已经放在这里了,提取码4tn2,下载后覆盖src/main,记得改游戏名等,在Item一章才会正式开始编写代码
代码框架介绍
- ExampleMod: 主类,用来创建Mod实例
- util/Reference:配置,用来配置你的modid等信息
- proxy/*:代理,其中Client代表客户端代理,Server代表服务端代理
- items/ItemBase:用于自定义的Item基类
- handlers/RegistryHandler:用于订阅注册事件,注册物品,方块,Registry等
- core/*:用于定义Mod内的所有物品,方块,并提供注册函数
- blocks/BlockBase:用于自定义的Block基类
资源介绍
位于src/main/resources/assets/examplemod下(注意examplemod为modid)
- lang/*:语言,en_us为英文,zh_cn为中文
- models/*:为block和item对应模型
- textures/*:为block和item对应材质
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 sdww0的博客!
评论