📑
Minecraft Source Code Wiki
  • 写在开头的话
  • 👩‍💻课前预习
    • 环境准备
      • 阅读前一些准备
      • 编译自己的源码
    • 阅读原则
      • 学习如何学习
      • 阅读源码八原则
    • 多人合作
      • 编写本Wiki
  • 🎴world
    • chunk
      • Chunk
      • ChunkPrimer
  • 🔨util
    • math
      • MathHelper
  • 📌其它资料搬运
    • wiki.vg
      • Chunk Format
由 GitBook 提供支持
在本页
  • 下载源代码以及配套程序
  • 使用启动器创建原版游戏
  • 反编译Minecraft
  • 加入其它工具包
  • 加入vecmath依赖
  • 在IDEA上配置
  • 存在的问题
  • 参考

这有帮助吗?

  1. 👩‍💻课前预习
  2. 环境准备

编译自己的源码

获得你自己的Minecraft源代码

上一页阅读前一些准备下一页阅读原则

最后更新于4年前

这有帮助吗?

下载源代码以及配套程序

使用启动器创建原版游戏

请使用启动器创建一个Minecraft 1.12并开始游戏,启动器我只测试了官方启动器:

请确保

%HOMEPATH%\AppData\Roaming\.minecraft\versions\1.12

文件夹下有1.12.jar文件

反编译Minecraft

解压缩mcp940.zip到你的工作区:

运行成功后,会在src/minecraft文件夹下产生net包和一个Start.java

加入其它工具包

解压缩:

  • DarkMagician6-eventapi.zip

  • Optifine SRC Version [1.12 HD U A4].rar

把解压缩后的内容加入到src/minecraft文件夹下,加入好后应该是这样的:

加入vecmath依赖

解压缩vecmath.zip获得vecmath.jar,将它放入lib文件夹下

在IDEA上配置

在IDEA中,点击:

File-> New-> Project from Existing Sources...

选择Import project from external model再选择Eclipse

接下来一页什么都不干

接下来取消选择Server

一直点击next直到IDEA打开本项目,如果有报错,忽略就好,打开后请配置JDK为1.8

打开Project Structure,点击Modules,从lib加入vecmath.jar

运行Start.java内的主函数,你会得到一个报错:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl64 in java.library.path
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
	at java.lang.Runtime.loadLibrary0(Runtime.java:870)
	at java.lang.System.loadLibrary(System.java:1122)
	at org.lwjgl.Sys$1.run(Sys.java:72)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
	at org.lwjgl.Sys.loadLibrary(Sys.java:87)
	at org.lwjgl.Sys.<clinit>(Sys.java:117)
	at net.minecraft.client.Minecraft.getSystemTime(Minecraft.java:3282)
	at net.minecraft.client.main.Main.main(Main.java:39)
	at Start.main(Start.java:11)

打开Edit Configurations:

配置Start.java的启动参数,在VM options中填入-Djava.library.path=versions\1.12\1.12-natives,并修改Working directory下的最后一个文本为jars:

重新执行Start.java下的主函数就可以运行游戏

存在的问题

  • 缺少国际化,目前只支持英文,无法选择中文

  • 整个游戏没有声音、音乐和音效

  • 点击资源包,整个游戏就会奔溃

参考

MacOS/Linux:运行

Windows:运行

: 使用mcp编译1.8的视频教程

: Minecraft 1.12 原版反编译程序,能反编译服务端和客户端

: Optifine 包,用来提升游戏帧数

: 一个Minecraft的事件监听api

: Minecraft中用到的3D向量数学包

decompile.sh
decompile.
[教程]全民写端-MCP918配置&Optifine装载&EventAPI
mcp940.zip
Optifine SRC Version [1.12 HD U A4]
DarkMagician6-eventapi.zip
vecmath-1.5.2.jar
9MB
mcp940.zip
archive
8MB
Optifine SRC Version [1.12 HD U A4].rar
12KB
DarkMagician6-eventapi.zip
archive
159KB
vecmath.zip
archive
Minecraft官方启动器
完整的minecraft文件夹
open project
import Eclipse
直接点next
不用选择Server
加入库
打开配置窗口
配置窗口
IDEA内运行Minecraft的效果