mCClient

简介

支持正版服务器的命令行MC登陆器

关键词:Java、支持正版验证、命令行(无图形界面)、仅支持协议757(MC 1.18)、简单

· 使用Java编写,许多代码来自另一开源项目 Another-Minecraft-Chat-Client,mCClient算是它的简化版本吧,只是加上了对正版的支持。

· 目前仅支持使用UUID及AccessToken进行正版验证,还没搞微软那个登录,如何获取UUID和AccessToken可以看看下面的说明。

· 本人Java功力不深,这个东西更多是一个半成品或者是一个示例,只有较少的功能。

现阶段的具体功能

· 设置服务器的host、port、protocol及玩家的username、uuid、token(AccessToken) 。

· 使用设置上面好的参数登录正版/离线模式的服务器(离线模式可用不填uuid和token,username也可以任意填写)。

· 获取服务器的信息(就是MC服务器列表),这个可能信息会多一点,可以看到目前在线的玩家(应该吧)。

· 获取游戏内的消息,向游戏发送消息,没有给消息(一串Json)进行分析,看起来会有一点乱。

· 在玩家生命值、饥饿值发生变化时,返回数值。

· 当玩家死亡时,自动重生。同时返回提示。

· 保存玩家的参数到其文件夹内自动生成的json文档(mCClient.json),下次就能直接使了。

如何使用

· 下载 mCClient_1.1.zip ,并解压。

· 双击 “GoGo.bat” 即可进入软件。

· 输入”help”获取比较简明的说明,应该就能直接看懂了。

关于正版验证的UUID及AccessToken的获取

我平常是使用HMCL登陆器的(一个开源的MC登陆器,可以去Github上看看)。在用微软账号授权后,它的认证系统可以帮助我们获取我们的UUID及AccessToken。

在与启动器同一文件夹内的hmcl.json内就能看到。

具体实现

可以去参考 wiki.vg ,以及 列表 内的其他开源客户端。我也会单开一个文来说说对应的实现。

不足之处请多多包涵。 2022/2/23

ps:

因为里面搞中文注释会没法编译,搞英文又看不懂,所以就没搞注释了。
里面那些注释应该都来自上面提到的“AMCC”,那个比较高级(就是没法支持正版验证,不然我就直接使那个了,当然也就没有这个了),起码有UI,从里面copy、学到了不少。
正版验证后的加密对话,那部分是从mc源码学到的,做mod的那个项目里就能看到。
我也不太会用Git,不太敢直接在人家那里搞的,再加上他那个有点难懂,于是就单搞了这个,比较简单明了的版本,比较适合大家从里面学习mc的相关协议(学我的Java还是算了吧)。

题外话:

这个东西断断续续搞了一个寒假,主要是想在玩的生存服务器里能不用开游戏就能挂机生产东西。
我这人三分钟热度,在wiki那里卡了半天就去干别的去了。
但是这几天又想了起来,于是开始在GitHub上找到了一些代码,硬着头皮稍微有了点理解。
主要还是太浮躁,看不进去别人的代码。英语不好也是硬伤。




性感CC - 在线找打
------ 我是分割线 ------