<基于1.8 Forge的Minecraft mod制作经验分享>

网上关于Forge开发环境搭建的文章其实有不少,但大都是基于Eclipse的。

作为用Java开发的环境,怎么能没有IDEA神器的支持呢。

废话不多说,上步骤:

  1. 首先你应该已经装好了jdk和IDEA,否则一切免谈。这是很基础的问题,烦请自己百度。如果这都搞不定,那么说明你并没有Java开发功底。

  2. 然后下载Forge开发包,下载链接:http://files.minecraftforge.net/

    进去后记得要下载的是src或mdk,因为你是要开发mod,而不是提供mod依赖。

  3. 解压下载好的开发包到任意目录,作为你的工作环境。比如我的是D://MyProject/IDEA/Minecraft/DouroMod(是的你没看错,斗罗大陆mod,我要开好大一个坑~~~)

  4. 接下来在这个目录里打开命令提示符(shift鼠标右键,在此处打开,这个都会把),输入命令:    gradlew.bat setupDecompWorkspace,然后等待其下载。当然如果你装过gradle,可以省去".bat"。有条件的话可以把vpn打开,防断线。

  5. 经过一段时间的等待,命令行里面会有Build Success之类的提示,说明下载成功。如果Build Faild并出现了报错,请再次重复步骤4。

  6. 现在,打开IDEA,导入gradle工程,并构建gradle。开发环境基本搭建成功。你们可能会看到需要再输入gradlew genIntellijRuns之类的,但我要告诉你别那么做,因为那样不过是生成了两个运行的配置runClient和runServer,而如果你从这两个配置来运行MC,呵呵,你就杯具了,你的mod会遇到各种各样的问题(坑爹的Forge)。

  7. 那么正确的运行姿势是什么呢?答案是gradle。你只需要打开gradle视图,展开Tasks->forgegradle选项,就可以看到里面准备了很多的执行方法,包括runClient和runServer,顾名思义就是允许客户端/服务端的意思。当你运行一次后,该选项会自动加入到运行配置里面去,很方便。

至此,一个基于IDEA的高大上的Forge开发环境就建好了。不过你可能会不爽的看到,tmd根目录下怎么还有Eclipse文件夹!!!没关系,删了它就是咯,它只是运行目录罢了。放心大胆的删吧,再在根目录下新建一个.minecraft目录,或者直接把Eclipse里面删空然后重命名成.minecraft,别忘了去build.gradle里面把runDir = "Eclipse"改成runDir = ".minecraft"就好了,这才符合MC的习惯不是。

到此,运行一下看看吧,你会看到一个叫做Example的mod被加载了,那就是默认的实例工程。最后老规矩,我的github源码链接:https://github.com/zhengxiaoyao0716/DouroMod

第一章:在IDEA里搭建基于Forge的Minecraft mod开发环境的更多相关文章

  1. Laxcus大数据管理系统2.0(2)- 第一章 基础概述 1.1 基于现状的一些思考

    第一章 基础概述 1.1 基于现状的一些思考 在过去十几年里,随着互联网产业的普及和高速发展,各种格式的互联网数据也呈现爆炸性增长之势.与此同时,在数据应用的另一个重要领域:商业和科学计算,在各种新兴 ...

  2. 庐山真面目之十一微服务架构手把手教你搭建基于Jenkins的企业级CI/CD环境

    庐山真面目之十一微服务架构手把手教你搭建基于Jenkins的企业级CI/CD环境 一.介绍 说起微服务架构来,有一个环节是少不了的,那就是CI/CD持续集成的环境.当然,搭建CI/CD环境的工具很多, ...

  3. (转)微信公众平台开发之基于百度 BAE3.0 的开发环境搭建(采用 Baidu Eclipse)

    原文传送门(http://blog.csdn.net/bingtianxuelong/article/details/17843111) 版本说明:     V1:         2014-2-13 ...

  4. 基于 Express+Gulp+BrowserSync 搭建一套高性能的前端开发环境

    基于 Express+Gulp+BrowserSync 搭建一套高性能的前端开发环境 Express 是比较经典的,也是最常用的 Nodejs Web框架. 一.Express 快速构建一个web应用 ...

  5. 基于Eclipse的Hadoop应用开发环境配置

    基于Eclipse的Hadoop应用开发环境配置 我的开发环境: 操作系统ubuntu11.10 单机模式 Hadoop版本:hadoop-0.20.1 Eclipse版本:eclipse-java- ...

  6. 使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境

    做了三年多的JavaEE开发了,在平时的JavaEE开发中,为了能够用最快的速度开发项目,一般都会选择使用Struts2,SpringMVC,Spring,Hibernate,MyBatis这些开源框 ...

  7. 从无到有实现搭建vue+ElementUI+less+ES6的开发环境并进行简单的开发的项目

    项目简介:该项目是基于日常计算宿舍水电煤气费的需求写的,旨在从无到有实现搭建vue+ElementUI+less+ES6的开发环境并进行简单的开发,使用webpack进行代码的编译.压缩和打包,并疏通 ...

  8. Python黑帽编程1.2 基于VS Code构建Python开发环境

    Python黑帽编程1.2  基于VS Code构建Python开发环境 0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Atta ...

  9. 通过搭建一个精简的C语言开发环境了解一个C程序的执行过程

    一.如何搭建一个精简的C语言开发环境 准备:下载TC2.0,并解压,比如说“d:\tc2.0\tc”目录 1.在C盘建立一个目录minic c:\ md minic 2.从解压的目录中将以下文件拷贝到 ...

随机推荐

  1. 【USACO 1.2.1】挤牛奶

    [问题描述] 三个农民每天清晨5点起床,然后去牛棚给3头牛挤奶.第一个农民在300时刻(从5点开始计时,秒为单位)给他的牛挤奶,一直到1000时刻.第二个农民在700时刻开始,在 1200时刻结束.第 ...

  2. C# 判断字符串是否可以转化为数字

    C# 判断字符串是否可以转化为数字 /// <SUMMARY> /// 判断字符串是否可以转化为数字 /// </SUMMARY> /// <PARAM name=&qu ...

  3. js 判断url的?后参数是否包含某个字符串

    function GetQueryString(name){    var reg=eval("/"+name+"/g");   var r = window. ...

  4. 21 Merge Two Sorted Lists(两链表归并排序Easy)

    题目意思:对两个递增链表进行归并排序 思路:没什么好说的,二路归并 /** * Definition for singly-linked list. * struct ListNode { * int ...

  5. git stash 保存修改现场

    用途:当你正在分支上做一个项目的时候,突然必须停下来去做别的事情,但因为没有此项目还没改好,所以不想commit 就可以保留现场,等忙完后再回复现场继续修改. bug处理保存开发现场$ git sta ...

  6. Scrapy使用以及Xpath的一些坑, 再入剁手

    scrapy爬虫: https:www.scrapy.org 本篇博客依托的项目: https://github.com/viciousstar/BitcointalkSpider/ 一. Scrap ...

  7. Codeforces Round #313 A Currency System in Geraldion

    A  Currency System in Geraldion Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64 ...

  8. listen函数

    listen函数仅仅由TCP服务器调用,它做2件事: 1)当socket函数创建一个套接字时,它被假设为一个主动套接字,也就是说,它是一个将调用connect发起连接的客户套接字 listen函数把一 ...

  9. codevs 1153 道路游戏

    传送门   题目描述 Description 小新正在玩一个简单的电脑游戏.游戏中有一条环形马路,马路上有n 个机器人工厂,两个相邻机器人工厂之间由一小段马路连接.小新以某个机器人工厂为起点,按顺时针 ...

  10. ShapeDrawable 资源

    ShapeDrawable 用于定义一个基本的几何图形(如矩形.圆形.线条等),定义 ShapeDrawable 的 XML 文件的根元素是<shape.../>元素,该元素可指定如下属性 ...