UID2223249性别保密经验 EP铁粒 粒回帖0主题精华在线时间 小时注册时间2025-12-24最后登录1970-1-1
| 
楼主 |
发表于 2026-8-5 11:05:30 来自手机|显示全部楼层 IP:安徽省
Minecraft 模组开发简明教程 (2026年8月)
本教程基于以下两个参考资料:
1. Minecraft 基岩版 26.x 版本体系说明
2. VanillaAPI 1.26.0-beta.1.0 跨平台模组API实现方案
---
第一部分:核心概念区分
在开始之前,必须明确一个核心事实:基岩版和 Java版的模组开发是两套完全不同的逻辑。
特性 基岩版 (Bedrock) Java版 (Java Edition)
开发语言 JSON (数据驱动) Java (代码驱动)
核心文件 manifest.json, 各种.json行为/资源文件 .java 源代码文件
运行依赖 游戏本身直接加载 需要 Fabric / Forge / NeoForge 等加载器
修改能力 受限于游戏提供的数据接口 几乎可以修改游戏的一切底层逻辑
适用人群 配置型、轻量级修改 编程型、大型模组开发
一句话总结: 做基岩版模组像是在“填表”,而做Java版模组是在真正的“写代码”。
---
第二部分:基岩版模组开发 (数据驱动篇)
基岩版的模组在官方术语中称为 “附加包 (Add-ons)” ,由行为包 (修改逻辑) 和资源包 (修改外观) 组成。
1. 理解版本体系 (基于链接1)
从2026年开始,基岩版和Java版都采用了按年份编号的新体系。
· “26.x”不是某一个特定版本,而是2026年所有版本的总称。
· 例如:26.0 是年度首版,26.10 是“小鬼当家”更新,26.30 是“混沌立方”更新。
· 开发时必须注意: 你的模组 manifest.json 中的 "min_engine_version" 字段,需要根据目标玩家所处的版本来填写,比如 [26, 0, 0]。
2. 开发环境与工具
· 国际版: 任意文本编辑器 (如 VS Code) 即可。
· 中国版: 推荐使用官方提供的 “我的世界开发工作台 (MC Studio)” ,它集成了编辑器、测试和打包功能。
3. 核心文件:manifest.json
这是每个附加包的“身份证”,必须放在根目录。
- ```json
- {
- "format_version": 2,
- "header": {
- "name": "我的第一个附加包",
- "description": "一个示例模组",
- "uuid": "这里填写一个唯一的UUID",
- "version": [1, 0, 0],
- "min_engine_version": [26, 0, 0]
- },
- "modules": [
- {
- "type": "data",
- "uuid": "这里填写另一个唯一的UUID",
- "version": [1, 0, 0]
- }
- ]
- }
- ```
复制代码
4. 实战案例:修改一个物品
· 在行为包的 items/ 文件夹下创建一个 .json 文件。
· 通过JSON数据定义一个“更强力的钻石剑”,修改其攻击伤害和耐久度。
· 打包文件夹为 .mcaddon 或 .mcpack 文件,双击即可导入游戏。
---
第三部分:Java版模组开发 (代码驱动篇)
Java版模组开发需要真正的编程。我们以你提供的 VanillaAPI 项目为例,它是一个跨加载器的模组API。
1. 环境搭建
· JDK: 必须安装 JDK 17 或更高版本。
· IDE: 推荐 IntelliJ IDEA。
· 项目构建: 使用 Gradle 或 Maven。VanillaAPI 项目内置了 Maven Wrapper,无需手动安装Maven。
2. 理解“依赖隔离” (Shade 重定位)
这是Java版模组开发中的一个高级但重要的概念。
· 问题: 不同模组可能依赖了同一个库 (如 Guava) 的不同版本,这会导致冲突。
· 解决: VanillaAPI 通过 “Shade 重定位” 解决了这个问题。
· 做法: 将依赖库的包名进行修改。例如,将 com.google.common 重定位到 net.vanillaapi.shaded.guava。这样,你的模组使用的Guava版本就不会和其他模组冲突了。
3. 核心亮点:热修改代码
VanillaAPI 实现了一个非常强大的功能:在游戏运行时修改和测试代码。
· 在游戏中按 H 键可以打开代码编辑器GUI。
· 你可以直接编写或修改Java代码,游戏会尝试在运行时编译并执行它。
· 这极大地缩短了“修改代码 -> 重启游戏 -> 查看效果”的漫长开发循环。
4. 跨平台支持
VanillaAPI 展示了现代Java模组的一个重要趋势:跨加载器支持。
· 它通过不同的模块,同时支持了 NeoForge、Fabric、Forge 和 Quilt 这四大主流加载器。
· 这意味着模组开发者可以编写一次核心代码 (vanillaapi-core),然后通过不同的平台模块将其适配到不同的加载器上,无需为每个加载器重写一遍逻辑。
---
总结与建议
1. 如果你只想做简单的功能修改 (如新武器、新方块、修改掉落物),请选择 [基岩版] 路线。 你只需要了解JSON语法和游戏的数据驱动格式即可。
2. 如果你想实现颠覆性的玩法、添加复杂的系统或API,请选择 [Java版] 路线。 这需要你投入更多时间学习Java编程、Gradle/Maven构建工具以及特定加载器 (如Fabric) 的API。
希望这份TXT格式的教程能帮助你理清思路,选择适合自己的开发道路! |
|