Minecraft(我的世界)中文论坛

 找回密码
 注册(register)
查看: 16152|回复: 166

[Mod开发教程] LiteMod开发引导——基于LiteLoader的Mod制作教程[InfStudio]

  [复制链接]
发表于 2017-1-5 21:46:55 | 显示全部楼层 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 ustc_zzzz 于 2017-1-19 13:45 编辑

引言:

LiteMod,顾名思义,专指依赖于一个名为LiteLoader的Mod框架的Mod。

和知名框架Forge相比,LiteLoader有着以下优势:
  • 轻量级。LiteLoader本身大小不到1MB,只作用于Minecraft客户端,对Minecraft的修改相对少些
  • 更新及时。LiteLoader的更新速度一直相较Forge更快一筹,例如LiteLoader的1.11.2版本的第一次构建时间就比Forge早三天

如果你希望打造一个服务端插件和客户端Mod配合的系统,那么在客户端Mod方面,LiteLoader应该是一个不错的选择。

可以去LiteLoader的官方网站了解到关于LiteLoader的一切。

当然,这篇教程充其量只相当于指路,教程不会也没有办法包办有关于LiteMod的一切,更多的内容还需要开发者自己摸索。
如果读者之前有过开发Forge Mod的经验,阅读该教程会相对容易些。


配置开发环境:



构建参数选项:



构建运行:



主类格式与事件的监听:



与服务端插件交互:



配置文件:



字节码的操纵:

读者问到这里可能会想:LiteLoader目前提供的功能,我用Forge Mod都可以做到啊?没错,但LiteLoader的魅力还不止这些。其中最引人注目的特性之一就是LiteLoader自Minecraft 1.8.9开始提供的一套名为Mixin的框架,这套框架可以非常方便地以hook的方式操纵低层字节码。由于Mixin的内容比较多,作者就不在这里讲述,而会开单独的一篇文章讲解。使用Mixin操纵字节码会变得非常方便,甚至不需要了解Java的字节码就可以使用Mixin。


教程相关代码:

这里提供了本篇教程中使用的所有相关源代码,它们已经以ZIP形式打包好:
游客,如果您要查看本帖隐藏内容请回复

最后,感谢所有读者对本人的教程提供的支持。谢谢大家!

来自群组: InfinityStudio

评分

参与人数 19人气 +28 金粒 +93 收起 理由
秋天007 + 4 4zdalao
Deing + 2 + 35 大触我们做朋友吧!
kuai_ge + 1 + 1 LZ,多谢了
1501729 + 1 + 1 很棒的作品!
andyxiu + 2 楼主你太帅了~
18366306980 + 2 楼主你太帅了~
DuckSoft + 2 很棒的作品!
yushijinhun + 1 dalao
1582952890 + 2 dalao!
iceer + 1 好难,英语不及格
brooke1999 + 2 新人都是大佬系列
_Benson_ + 4 + 35 MCBBS有你更精彩~
zhangcy + 1 + 15 大佬快乐
RecursiveG + 2 已加入教程全家桶
丶皇天 + 2 4z大佬!!
OAO_miao + 1 主类名必须以LiteMod开头
童话的爱 + 1 楼主你太帅了~
q549365815 + 2 MCBBS有你更精彩~
I026833619 + 1 很棒的作品!

查看全部评分

发表于 2017-1-6 11:35:40 | 显示全部楼层
我是该吐槽是都懒得回帖
还是编程版太冷清= =
总之,楼主辛苦了
冷场了这么久…………
回复

使用道具 举报

发表于 2017-1-6 14:36:58 | 显示全部楼层
强烈支持!
回复

使用道具 举报

发表于 2017-1-6 18:58:54 | 显示全部楼层
感谢楼主
回复

使用道具 举报

发表于 2017-1-9 01:35:00 | 显示全部楼层
很好,那么问题来了:
在“与服务器交互”中提到了PacketCUstomPayload,那么如果我有一个serverSideOnly = true的基于MinecraftForge的Mod想和客户端的一个litemod交互,这个forge mod应该用什么?FMLEventChannel?
回复

使用道具 举报

发表于 2017-1-9 11:55:26 | 显示全部楼层
11111111111111111111111
回复

使用道具 举报

发表于 2017-1-9 17:16:43 | 显示全部楼层
听不懂你在说什么.....
回复

使用道具 举报

发表于 2017-1-18 15:57:41 | 显示全部楼层
正在学习编程中...
回复

使用道具 举报

发表于 2017-1-18 20:19:55 | 显示全部楼层
围观围观围观围观围观围观围观围观围观
回复

使用道具 举报

发表于 2017-1-18 22:44:02 | 显示全部楼层
听说回复才能看到源码?
难得见到4z居然不是在gayhub上传代码
参考参考4z大佬的代码

评分

参与人数 1金粒 +1 收起 理由
ustc_zzzz + 1 想用回复可见骗骗回复什么的hhhh.

查看全部评分

回复

使用道具 举报

发表于 2017-1-19 18:57:09 | 显示全部楼层
能在简单点吗
回复

使用道具 举报

发表于 2017-1-22 13:13:20 | 显示全部楼层
学习学习,正在努力学习编程
回复

使用道具 举报

发表于 2017-1-23 00:07:51 | 显示全部楼层
kankankankan
回复

使用道具 举报

发表于 2017-1-25 00:09:01 | 显示全部楼层
永远研究不懂系列
回复

使用道具 举报

 楼主| 发表于 2017-1-25 09:14:39 | 显示全部楼层
u.s.knowledge 发表于 2017-1-9 01:35
很好,那么问题来了:
在“与服务器交互”中提到了PacketCUstomPayload,那么如果我有一个serverSideOnly = ...

大概看了下。。。
net.minecraftforge.fml.common.network.FMLNetworkEvent.ServerCustomPacketEvent?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 手机版本

GMT+8, 2018-10-21 18:52 , Processed in 0.094899 second(s), 8 queries , Memcache On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标。本站与Mojang以及微软公司没有从属关系。

© 2010-2017 我的世界中文论坛 版权所有。本站原创图文内容版权属于原创作者,未经许可不得转载。

快速回复 返回顶部 返回列表