我的世界怎么整合mod?
这个问题好啊,最近刚好在研究这个东西,而且我的电脑上安的forge版本跟题主的一样,正好可以拿来演示。 假设我已经安装了forge(这个安装过程在我的其他答案里)并且已经添加到了环境变量当中。那么启动游戏之后就可以看到forge的logo了,如图 接下来我想把两个版本的minecraft给整合在一起,也就是让这个logo出来两次(/forge version)。
为了给大家演示效果我用了一个最简单的mod,这个mod其实没有做什么,只是将游戏中的一个数据改动了一下,让游戏每次启动的时候都会询问你是否要恢复默认设置(其实就是游戏刚启动的时候让玩家选择是否重置)。这个简单的小mod叫做better_restart。在下载解压之后得到一个名为“META-INF”的文件夹,里面有一个名称是“manifest.mf”的文件,用文本编辑器打开它,在里面加入如下两行 然后保存并关闭文件,这个时候只要双击“manifest.mf”就会自动运行java -jar "config\better_restart.jar"来执行这个mod加载。
为了让游戏能够识别这两个不同的版本,我们需要对游戏的源代码进行修改。以win10 64位系统为例,进入%usersprofile%\AppData\Roaming\.minecraft\versions,新建两个空文件夹,分别命名为ForgeTest和ForgeVersion。然后将刚刚启动游戏时所弹出来的logo图片放入到ForgeTest这个文件夹中。
接着我们修改游戏的主程序,找到main函数所在的位置(就是游戏一启动就执行的那段代码),在上面添加一行判断,判断是否指定了某个版本的forge,如果是则显示logo并退出,否则正常启动游戏。具体的编译和运行参数可以在mycrt中查看,如图所示 我这里是因为测试需要所以把forge的版本号改成了1.7.12,如果大家想要自己的游戏能够支持多个版本forge的话可以把每个forge的版本都修改一遍,当然最方便的方法是用forge的管理工具forge installer一键安装并自定义版本。
最后的效果图 这样当我们使用低版本的forge时就正常启动游戏了;当我们使用高版本的forge时,就会在启动游戏的时候出来寻找forge版本的logo,这就是我们想要的结果啦~