Minecraft模组开发——环境搭建

本文档详细介绍了如何搭建Minecraft模组开发环境,包括下载MDK,配置项目,设置build.gradle,编写mods.toml,使用AccessTransformer和Mixin。教程中还提到了如何在Eclipse或IDEA中导入项目,并通过Gradle构建和运行模组。此外,还简要介绍了Parchment,一个帮助反混淆Minecraft源码的工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

考虑到部分读者可能对环境搭建流程不熟,所以本章教程简单地过一遍环境搭建,并在项目中整合Mixin。

下载MDK

打开https://files.minecraftforge.net/net/minecraftforge/forge/,选择需要的mdk版本,点击下载。本教程使用1.18.2 - 40.2.0。在下载前会打开一个广告链接,由于某些不可描述的原因导致广告链接打开很慢或失败,采用以下办法跳过广告:

  1. 右键“Mdk”,点击“复制链接地址”
    在这里插入图片描述

  2. 将链接复制到地址栏中,图中高亮部分就是Mdk下载链接,访问该链接即可
    在这里插入图片描述

搭建项目

解压缩Mdk,将文件夹名改成自己项目的名字,笔者以ZjTutor作为项目名。~/README.txt(这里‘~’指模组项目文件夹路径)中记录了搭建项目的流程,笔者使用eclipse(也可以使用idea,拥有更强大的插件,搭建流程略有不同)跟着做一遍:

  1. 进入项目文件夹,在地址栏中输入cmd点击Enter打开控制台
    在这里插入图片描述
  2. 在控制台中运行gradlew genEclipseRuns,如果是第一次运行需要等待较长时间下载大量依赖文件,这个过程可能因为网络原因导致失败,可以多次或换个网络重试
  3. 打开Eclipse,Import > Existing Gradle Project > 选择模组的项目文件夹并导入
    在这里插入图片描述

项目配置——build.gradle

mdk是基于gradle的项目,使用build.gradle对其进行配置。在~/gradle.properties添加以下参数,这些参数将在~/build.gradle中调用,关于parchment将在后面说明

mod_id=zjtutor//模组id
mod_group=com.zjqc.zjtutor//包名
mod_name=ZjTutor//模组名字
version_name=Demo=Demo

mod_version=0.0.1//模组版本
mc_version=1.18.2//mc版本
forge_version=40.2.0//forge版本
mappings_version=2022.11.06-1.18.2//映射表版本

mapping_channel=parchment//映射表,用于反混淆

注意,mod_id只能是下划线+小写字母,并且不能与其它模组的id重名。
按以下修改~/build.gradle,这里保留原文件详细的注释。其中涉及到Mixin的内容将在后面说明。

buildscript {
   
    repositories {
   
        // These repositories are only for Gradle plugins, put any other repositories in the repository block further below
        maven {
    url = 'https://maven.minecraftforge.net' }
        maven {
    url = 'https://maven.parchmentmc.org' }
        //mixin仓库地址
        maven {
   
            name = "SpongePowered"
            url = 'https://repo.spongepowered.org/repository/maven-public/'
        }
        mavenCentral()
    }
    dependencies {
   
        classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: '5.1.+', changing: true
        classpath 'org.parchmentmc:librarian:1.+'
        classpath group: 'org.spongepowered', name: 'mixingradle', version: '0.7-SNAPSHOT'
    }
}

apply plugin: 'net.minecraftforge.gradle'
// Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
apply plugin: 'org.parchmentmc.librarian.forgegradle'
apply plugin: 'org.spongepowered.mixin'

version =property("mc_version")+"-"+property("mod_version")+ "-" + property("version_name")
group = property("mod_group")
archivesBaseName = property("mod_name")

// Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17.
java.toolchain.languageVersion = JavaLanguageVersion.of(17)

compileJava.options.encoding = 'UTF-8'
ta
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值