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

是的童鞋,别着急。不管我写的再认真也不可能面面俱到,那么如果遇到了什么问题怎么办呢?所以咱必须先掌握一些基础的东西,这样遇到了问题也能方便的自己解决了不是?

  1. 一个很重要的命令:gradlew runClient -s

    为什么说这个命令重要呢,因为这个命令可以打印出更详细的异常堆栈信息。这个命令的原形是gradlew runClient -stackstrace,当然runServer也同样。如果你的程序运行出错了,先别急着问,先打出这个看看。

  2. 另一个重要的命令:gradlew --refresh-dependencies

    顾名思义,刷新依赖库。虽然不知道为什么,但Forge的依赖库的确经常出问题。所以,如果你非常确定你的程序没问题,那么不妨试试这个命令。

  3. 查看MC、Forge源码

    1.8 Forge的资料太少了,所以查看源码成了很重要的一项技能。你可以在External Libraries/Gradle:forgeSrc:xxxx/forgeSrc-xxxx/net/里找到主要的源码,minecraft是MC源码,minecraftforge是Forge的。当然更方便的方法是直接Ctrl+鼠标左键跳转。另外,源码的保存目录并不在你的工程里,而是在C:\Users\pc\.gradle\caches\minecraft下面。

  4. 提取源素材

    很多情况下我们并不必重新绘制一个新的素材或者重写一个新的Json,从源码中提取出你需要的,然后稍作修改无疑是最快捷方便的办法。你可以在External Libraries/Gradle:forgeSrc:xxxx/forgeSrc-xxxx/assets/minecraft里面找到它们。还有,1.8的贴图必须用一个Json来描述,怎么描述是个挺麻烦的问题,建议多参照参照源码里的。当然,后面我会详解这个问题。

我的github源码链接:https://github.com/zhengxiaoyao0716/DouroMod,斗罗大陆这个大坑真心不是我一个人能完成的,大家看懂了的话都快来帮忙啊

第二章:开始开发mod前你需要知道的一些事情的更多相关文章

  1. Android群英传》读书笔记 (1) 第一章 Android体系与系统架构 + 第二章 Android开发工具新接触

    第一章 Android体系与系统架构 1.Dalvik 和 ARTDalvik好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.ART好比是一辆组装好了的自行车,装好就可以骑了. ...

  2. 第二章 TypeScript 开发环境搭建

    Mac OS X 下 TypeScript 开发环境搭建 一.集成开发环境 WebStrom VSCode 二.安装 TypeScript Homebrew(macOS 缺失的软件包管理器) ruby ...

  3. ASP.NET自定义控件组件开发 第二章 继承WebControl的自定义控件

    原文:ASP.NET自定义控件组件开发 第二章 继承WebControl的自定义控件 第二章 继承于WebControl的自定义控件 到现在为止,我已经写了三篇关于自定义控件开发的文章,很感谢大家的支 ...

  4. Android开发艺术探索——第二章:IPC机制(上)

    Android开发艺术探索--第二章:IPC机制(上) 本章主要讲解Android的IPC机制,首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化 ...

  5. 《精通Spring4.x企业应用开发实战》第二章

    昨天联系了一下学长,学长说这个项目因为种种原因代码比较混乱,感觉最坏的打算是从头开始写. 大概询问了一下学长和xianhua学姐的建议,又看了看网上的资料,这个项目开发的技术栈基本就是SpringBo ...

  6. Spring 3.x 实践 第一个例子(Spring 3.x 企业应用开发实战读书笔记第二章)

    前言:工作之后一直在搞android,现在需要更多和后台的人员交涉,技术栈不一样,难免鸡同鸭讲,所以稍稍学习下. 这个例子取自于<Spring 3.x 企业应用开发实战>一书中的第二章,I ...

  7. Android 系统移植与驱动开发--第二章搭建Android环境核心步骤及心得

    第二章 搭建Android 开发环境 虽然在这一章中讲的是Android底层开发环境,但是相应伴随的还有Android NDK程序来测试Linux驱动,HAL程序库.底层开发不仅需要交叉编译环境,还要 ...

  8. Knockout应用开发指南 第二章:监控属性(Observables)

    原文:Knockout应用开发指南 第二章:监控属性(Observables) 关于Knockout的3个重要概念(Observables,DependentObservables,Observabl ...

  9. Android艺术开发探索——第二章:IPC机制(下)

    Android艺术开发探索--第二章:IPC机制(下) 我们继续来讲IPC机制,在本篇中你将会学习到 ContentProvider Socket Binder连接池 一.使用ContentProvi ...

随机推荐

  1. JavaScript--Date函数

    1. Date函数 var now = new Date(); 获取当前日期对象 now对象->Date.prototype->Object.prototype 将一个字符串转换为Date ...

  2. [个人原创]关于java中对象排序的一些探讨(一)

    有的时候我们需要将自己定义的对象,有序输出.因为一般我们程序的中间结果需要存储在容器里,那么怎样对容器中的对象按照一定次序输出就是程序员经常需要考虑的问题.本片文章探讨了怎样有序化输出容器中的对象的问 ...

  3. [转]Java远程方法调用

    Java远程方法调用,即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口.它使客户机上运行的程序可以调用远 ...

  4. C语言零移位操作

    给定一个整形数组要求把其中的零元素移动到数组的末尾 非零元顺序保持不变 以下采用两种方法实现 #include <stdlib.h> #include <stdio.h> #i ...

  5. javascript-Cookie的应用

    在我平时开发网页的过程中,可能涉及到浏览器本地的存储,现在主流的浏览器存储方式有:cookie,直接读取xml,userData,H5 的LocalStorage等,Cookie存储数据有限,但对于数 ...

  6. 转:Remote debugging with Visual Studio 2010

    Original URL http://www.codeproject.com/Articles/146838/Remote-debugging-with-Visual-Studio-2010 you ...

  7. jdbc(1)(一)

    1.连接数据库,准备mysql连接jar包导入项目: Class.forName("com.mysql.jdbc.Driver"); //建立连接是比较耗时,耗资源的,实际开发中多 ...

  8. android:ListView的局部刷新

    1.简介 对于android中的ListView刷新机制,大多数的程序员都是很熟悉的,修改或者添加adapter中的数据源之后,然后调用notifyDataSetChanged()刷新ListView ...

  9. 【HDOJ】1438 钥匙计数之一

    状态压缩.分最后一个槽的值以及当前的配置方案是否可以进行DP. /* 1438 */ #include <cstdio> #include <cstring> #include ...

  10. BZOJ1524: [POI2006]Pal

    1524: [POI2006]Pal Time Limit: 5 Sec  Memory Limit: 357 MBSubmit: 308  Solved: 101[Submit][Status] D ...