用命令启动java我的世界_我的世界Minecraft Mod开发学习笔记 - 实现一个简单的命令Mod...

概述

本文使用Forge MDK (Mod Development Kit)实现一个简单的命令Mod用于显示用户输入.

运行环境

Java 1.8 JDK

Minecraft Java Edition 1.12.2

Forge and MDK 1.12.2

安装Forge和MDK

从Minecraft Forge官网下载Minecraft Forge - MC 1.12.2 installer和Mod Development Kit (MDK)包.

运行Forge installer安装Forge

将MDK压缩包解压的指定目录, 例如C:\mdk.

设置Mod项目

在MDK目录下, 运行gradlew setupDecompWorkspace命令以创建如下Mod项目结构

mdk/

├── build/

├── gradle/

│ └── wrapper/

│ ├── gradle-wrapper.jar

│ └── gradle-wrapper.properties

├── src/

│ ├── main/

│ ├── java/

│ └── resources/

│ ├── mcmod.info

│ └── pack.mcmeta

├── build.gradle

├── gradlew

└── gradlew.bat

设置Gradle build文件

编辑build.gradle并修改version, group和archivesBaseName

version = "1.0.0"

group= "minecraftfun&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的C++实现Minecraft启动器的示例代码,它不需要使用Minecraft Launcher.exe文件: ```c++ #include <iostream> #include <fstream> #include <string> #include <windows.h> #include <vector> #include <algorithm> using namespace std; vector<string> splitString(const string& str, const string& delim) { vector<string> result; size_t last = 0; size_t index = str.find_first_of(delim, last); while (index != string::npos) { result.push_back(str.substr(last, index - last)); last = index + 1; index = str.find_first_of(delim, last); } if (index - last > 0) { result.push_back(str.substr(last, index - last)); } return result; } int main() { // 设置Minecraft的路径和本号 string mcPath = "C:/Program Files (x86)/Minecraft/"; string version = "1.16.5"; // 读取Minecraft启动命令 ifstream cmdFile(mcPath + "versions/" + version + "/" + version + ".json"); string cmd; while (cmdFile >> cmd) { if (cmd == "\"minecraftArguments\":") { getline(cmdFile, cmd); break; } } cmdFile.close(); // 构造启动命令 vector<string> cmdParts = splitString(cmd, " "); cmdParts.insert(cmdParts.begin(), mcPath + "runtime/jre-x64/bin/java.exe"); cmdParts.insert(cmdParts.begin(), "-XX:+UnlockExperimentalVMOptions"); cmdParts.insert(cmdParts.begin(), "-XX:+UseG1GC"); cmdParts.insert(cmdParts.begin(), "-XX:G1NewSizePercent=20"); cmdParts.insert(cmdParts.begin(), "-XX:G1ReservePercent=20"); cmdParts.insert(cmdParts.begin(), "-XX:MaxGCPauseMillis=50"); cmdParts.insert(cmdParts.begin(), "-XX:-UseAdaptiveSizePolicy"); cmdParts.insert(cmdParts.begin(), "-Xmx2G"); cmdParts.insert(cmdParts.begin(), "-Djava.library.path=" + mcPath + "versions/" + version + "/" + version + "-natives"); cmdParts.insert(cmdParts.begin(), "-cp"); cmdParts.insert(cmdParts.begin(), mcPath + "versions/" + version + "/" + version + ".jar"); string fullCmd = ""; for (string part : cmdParts) { fullCmd += part + " "; } // 启动Minecraft STARTUPINFO si = { 0 }; si.cb = sizeof(si); PROCESS_INFORMATION pi; if (CreateProcess(NULL, (char*)fullCmd.c_str(), NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) { WaitForSingleObject(pi.hProcess, INFINITE); CloseHandle(pi.hProcess); CloseHandle(pi.hThread); } return 0; } ``` 这个示例代码会读取Minecraft启动命令,然后构造启动Minecraft命令,并通过CreateProcess函数启动Minecraft。请注意,这个示例代码仅供参考,可能需要根据实际情况进行修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值