【问题标题】:Launch Minecraft from the command line Python/C++从命令行 Python/C++ 启动 Minecraft
【发布时间】:2013-01-31 03:32:20
【问题描述】:

我有一个问题,我试图利用我以前的编程知识来编写 Minecraft 启动器。我使用了标准 C++ 库中的命令和任何不是很大的 Python 鸡蛋。我更喜欢使用 system("java ...") 来启动 Minecraft。

简短的问题: 如何在没有任何辅助 Java 代码的情况下从命令行启动 Minecraft? (不使用像net.minecraft.LauncherFrame 这样的启动器代码)有可能吗?我在 Mac OS X 的终端上尝试了java -cp mine craft.jar net.minecraft.client.Minecraft,但无济于事,以ClassNotFoundException 结尾。

谁能解释我的问题? 谢谢, 火焰兵。

【问题讨论】:

  • 尝试将终端部分更改为 java -jar minecraft.jar net.minecraft.client.Minecraft
  • 我设法使用以下命令从命令行运行我的世界:java.exe -cp minecraft.jar;lwjgl.jar;lwjgl_util.jar;jinput.jar ^ -Djava.library.path=natives net。 minecraft.client.Minecraft "%INPUT%" --noupdate
  • 嗯,这些建议似乎都没有奏效。我两个都试了都无济于事。说我正在运行 Mac 可能会有所帮助....不确定这是否有帮助。

标签: c++ python command-line minecraft


【解决方案1】:

我在 linux 上运行,但这也应该适合你:

java -cp ".minecraft/bin/*" -Djava.library.path=".minecraft/bin/natives/" net.minecraft.client.Minecraft "username" "login id"

您不需要输入您的用户名/登录 ID,但如果您不输入,您将无法进入任何服务器。

您可以在这里获取您的登录 ID:https://login.minecraft.net?user=<username>&password=<password>&version=13

有关身份验证方案here的更多信息

更新:
我的世界 1.6 的新启动器发生了很大变化。
对于启动命令,您应该查看.minecraft/versions/<version>/<version>.json 身份验证也发生了变化。它现在使用 POST 参数并返回 JSON。更多相关信息here

【讨论】:

  • 您,先生,是个天才。太感谢了!顺便说一句,你在哪里找到那个 wiki 页面?你搜索了什么?
  • 我对 minecraft 协议很感兴趣。我搜索了this
  • 仅出于澄清目的,https://login.minecraft.net 返回一个由 collens 分隔为 5 部分的字符串(假设您使用了正确的用户名和密码)。第四部分是登录id。
  • 你必须在你的主目录运行命令java -cp ...
  • @QxQ 我在帖子中添加的链接解释了您刚才所说的一切,并且更改 jar 的路径非常简单。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-16
  • 2013-01-10
  • 2013-02-04
  • 1970-01-01
  • 2018-01-06
相关资源
最近更新 更多