Skip to content

绪论

纵观mindustry的游戏开发者社区,我们很难找到一个成体系的系统性的教程,无论中文还是英文,这使得新手入门往往十分迷茫,不知道该做什么,怎么做。

本篇教程旨在为mindustry mod开发初学者提供一个系统性教程,梳理游戏主体内容的脉络,经平滑的学习曲线来快速上手编写mindustry的模组。

本篇教程以Java/Kotlin mod为主要讲解内容,js会有与java的对应关系,不会讲解JSON模组的制作。

在你阅读本教程之前,你至少需要有如下的知识与素养:

  • 能够通过阅读Java源代码理解程序逻辑
  • 能够一边阅读一边实践
  • 一颗常在学习的心

不要试图让AI来代替你编写程序!

LLM(大语言模型) 的能力边界很有限,现阶段你可以借助它来读懂代码,但LLM没有意图与思想,同时绝大多数的LLM训练样本中并不包含任何Mindustry的程序内容,LLM无法大篇幅的生成可用的代码。

你需要理解AI只是工具,现阶段的LLM还只能够帮助你快速补全程序的代码片段,如果你希望它能帮你把全局的代码都写出来,那你只会得到一份没有营养的垃圾。

本篇教程的目标

跟随本教程的节奏逐步学习,每一个章节脉络都将会一步步帮助你了解从Mindustry mod的制作到Mindustry游戏本身的游戏架构,最终达到能够独立编写一个完整的优质Mindustry模组。

然而一个完整的mod内包含了许多必要的内容,如美术,音频和内容策划等,本教程则主要关注于程序开发部分,对于其他内容则不会过多涉及,但会给出一些参考资源。

这是你在完整学习本教程后能得到的:

  • 能够独立编写一个Mindustry模组
  • 能够随心所欲的添加想要的游戏内容
  • 可以制作图形化的操作界面
  • 能够利用游戏的工具来进行绘图与制作动画

以及在你深入学习后能够实现的目标:

  • 利用OpenGL编写惊艳的图形效果
  • 创造平行于游戏主体的全新机制与系统
  • 通过模组的开发,启发对广泛的编程技能的理解

教程的脉络梳理

本教程按照内容的深入程度与难度划分为了多个章节,学习曲线平滑,我们会从最基本的开发环境部署开始,学习到游戏的底层架构与高级图形效果:

  • 第一章 模组开发环境与部署 - 基本的模组开发环境搭建
  • 第二章 创建游戏内容 - 首先尝试像在json中那样创建新内容
  • 第三章 游戏内容的程序逻辑 - 游戏内容背后的程序原理,真正开始进入编程
  • 第四章 调试 - 利用各种工具去更好的解决那些未按预期运行的程序
  • 第五章 绘图与动画 - 使用游戏内建的绘图工具来绘制图案和动画
  • 第六章 图形用户操作界面编程(GUI) - 学习使用GUI部件制作你的交互式用户界面
  • 第七章 程序架构 - 深入了解游戏背后的程序架构与逻辑
  • 第八章 高级图形效果 - 利用OpenGL渲染出更加惊艳的图形效果

另外,教程随附的附录中记录了一些非常实用的速查与对照表,会为你提供很多开发工作的便利。

不要忘记练习!

教程只是一份参考资料,仅仅阅读是不够的,你还需要实践才能将学习到的知识吸收。

每一节末尾往往会附带关于本节内容的一个小练习,尝试去解决它,或者只是去思考如何完成这个问题(如果你的思路确实足够清晰的话),这都能带来不小的帮助。

我不会给出每一个练习的标准答案,或许你的实现已经能够超出我们所教授的范畴了,也可能没有,但不要无视那些小练习,思考和实践是学习编程中最重要的一部分。

除此之外,也要多看,多写,在你不断充实你的模组内容的同时,你也会发现随着你阅读过的和编写过的代码的增多,你的学习能力与编程技能也在以肉眼可见的速度提升。

这不是鸡汤!

这不是说教!

这就是事实!