我的世界属于3D的第一人称和第三人称沙盒游戏,所呈现的世界并不是华丽的画面与特效,而是注重在游戏性上面。今天爱游戏小编为大家带来的这篇杂谈是关于我的世界MOD开发教程,制作一个基于Forge的MOD。
工具/材料
Package
操作方法
01
首先你需要建立一个包(Package)
Package的命名很随意,Forge建议的命名规范是"作者名.mod名”,Java建议的命名规范是Package的制作公司的网站的域名的倒写,例如"com.lofter"
实际上无需在这个问题上纠结这个教程里使用了“作者名.mod名”的命名规范,毕竟不是谁都有一级域名的。
右键项目中的minecraft,选择New->Package来创建一个Package。
02
那么此时你的Eclipse应该是这个样子的:
03
然后需要在public class mod_RPG {的上面加上
@Mod(modid="rpg", name="RPG", version="0.0.1")
@NetworkMod(clientSideRequired=true, serverSideRequired=false)
(@Mod必须标注在类的上方,它的含义是告诉Forge”这是一个Mod主类”.
它有3个字符串类型参数,modid是Mod的id号,它将用于内部识别,请确保它不包含特殊字符,并且不会经常变动.name是显示给玩家看的Mod名,version是版本号,对于联机Mod来说不要乱填.
好了,以上就是大致内容了,(END)
方法/步骤2
01
@NetworkMod必须标注在类的上方,它的含义是告诉Forge”这个Mod对客户端和服务器端来说是否是必备的”.
clientSideRequired=true, serverSideRequired=false
代表客户端必需安装而服务端不必需安装
Forge在这方面的做法很不强势,也就是说你不按照设定好的来配置服务端与客户端,它只会在你连接服务器时给出一个警告,然后依旧可以正常连进去,只有在...比如客户端使用mod里的物品时而服务端没有这个mod(数据不同步)时,才会强制吧你踢出游戏。)
02
静等两秒中,Eclipse开始报错,因为你没有导入相关的package,点击”Import …”来自动导入相关package.
然后我们要添加用于初始化Mod的方法(Method)我们使用Annotation来实现.
在你的类中添加这些代码.
@EventHandler
public void preLoad(FMLPreInitializationEvent event)
{
}
@EventHandler
public void load(FMLInitializationEvent event)
{
}
@EventHandler
public void postLoad(FMLPostInitializationEvent event)
{
}
并导入相关的Package.
这时你的Eclipse应该是这样的:
03
这时你的第一个Mod就已经可以运行了,虽然他没有任何东西,但他是你亲手做出来的第一个Mod不是么?
按下键盘上的F11键,并等待他编译完成,就可以在Mod页面里看到你的Mod了:
好了,以上就是大致内容了,(END)
Mod必须标注在类的上方,它的含义是告诉Forge”这是一个Mod主类”