本帖最后由 yuxuanchiadm 于 2013-12-3 18:44 编辑
此帖子适合人群:
1.Minecraft爱好者。
2.能够熟练掌握JAVA语法的人,此贴并非零基础教学贴,对JAVA本身的讲解并不多。
3.有足够的耐心和毅力看完此贴的人。
4.理解能力好的人。
5.拥有一台较好的机子,并且安装好JDK和JRE的人。
如果你没有达成以上条件的任何一项,请不要阅读此贴,你的学习过程将异常艰辛。如果你真的想学习制作联机MOD,请尝试完成你没有达成的任何条件,并继续阅读此贴:)
前言:
1.Forge是什么?
Forge是Minecraft的一个API,目前绝大多数联机MOD都使用了此API,此贴是针对官方服务端的教程,我可能会在以后的扩展篇里讨论如何制作面向Bukkit的MOD:)。
2.我不会JAVA怎么办?
也许你不必要为了学习JAVA而放弃的原来的理想:),如果你真的很喜欢制作MOD,和JAVA编程,请自己多买几本书来看看,或者找个学习JAVA的学校。
3.我已经达成所有的条件,可以开始学习制作ForgeMOD了么?
是的:)。
〇.基本常识篇(如果你想到神马我没想到的,用论坛的短消息功能告诉我=w=):
基本认识:
1.Minecraft是一个沙盘类游戏
2.Minecraft里的元素大部分都是实体、方块、GUI和物品(你在做MOD是会遇到的东西大部分都是这些)
3.Forge是Minecraft的一个API,支持(客户端、原版服务端 和 Bukkit)
4.一般情况下Forge能够运行ModLoader的MOD
5.Forge是联机MODAPI
6.FML是Forge的一部分
7.Minecraft包括MOD制作,使用的都是JAVA语言
8.ForgeAPI并不能实现所有MOD的需求,还可以在Forge上加装其他API,如果你找得到和希望MOD的安装更复杂的话。
9.Forge具有基础服务端、客户端网络通信功能
10.Forge使用了ASM(Java 字节码操纵框架)
11.Forge使用注解类型来完成一些功能。
MOD开发注意事项:
1.不要把MOD源码放在net.minecraft包下面
2.启动函数的名字可以任意修改
3.在你无法解决一个问题时,看看Forge论坛或者Wiki,也许你会找到答案
4.联机MOD,channels的长度不能大于16
5.尽量不更改 或 极少且集中在一个类中 更改Minecraft或Forge的源码
6.一定要使你的MOD能更改所有方块的ID,使用配置文件
7.在制作MOD时,要注意MOD预设的方块、物品ID是否和某些出名MOD(比如IC、BC、MFR、RP)的ID冲突
8.你可以在Forge的论坛上找到一个不完全的物品、方块ID注册列表
9.你可以在8条所提到列表所在版块上发一个贴在,让别人知道你使用了这些物品、方块ID
10.不要把一个对象打包发送出去,特别是需要频繁发送的东西,这会让宽带崩坏的。
12.一般情况下,联机MOD使用Proxy注解,并使用clientSide和serverSide来让MOD既能在服务端运行,又能在客户端运行
13.Proxy的结构一般如下几种方式:
实现
IProxy(接口)(用@SidedProxy注解修饰)←────┐
┌────────────────────────────────┘
│ 实现 ┌ProxyServer(类)(@SidedProxy注解的serverSide的参数)
└ProxyCommon(类)←────┤
└ProxyClient(类)(@SidedProxy注解的clientide的参数)
(待补充)
|
一.基础篇:
Forge联机MOD篇:
===============以下教程基于MC1.6.4===============
1.
配置你的MCP和安装Forge源码
===============以下教程基于MC1.4.7===============
2.
制作你的第一个基础MOD
3.
建立你的配置文件类
4.
为你的MOD增加代理类
5.
给你的MOD添加一个物品
6.
给你的MOD添加一个方块
7.
改善你制作的方块的功能
8.
为你的MOD添加网络通信能力
9.
为你的刷怪笼添加一个可操作的GUI
10.
解决MOD的反混淆问题
官方服务器增强MOD篇:
===============以下教程基于MC1.6.4===============
11.
制作你的第一个服务端MOD
12.使你的MOD拥有设置出生点的功能
二.高级篇:
三.扩展篇:
Coremod(内核MOD)篇:
1.Coremod功能简介(待编辑)
四.问答贴(只对一些罕见问题进行解答):
http://www.mcbbs.net/thread-38298-1-1.html
最后,祝大家成功制作出你自己的联机MOD,让Minecraft的MOD更加精彩!