From 5f082079bf7a115d32cf36827531ec68f17923f1 Mon Sep 17 00:00:00 2001 From: limbang <495071565@qq.com> Date: Thu, 28 Dec 2023 00:08:21 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=88=A0=E9=99=A4=E4=B9=8B=E5=89=8D?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E7=9A=84=E7=99=BB=E5=BD=95=E5=8D=8F=E8=AE=AE?= =?UTF-8?q?=E5=BA=93=20=E6=94=B9=E6=88=90=E8=87=AA=E5=B7=B1=E5=AE=9E?= =?UTF-8?q?=E7=8E=B0=E7=AE=80=E5=8D=95=E8=8E=B7=E5=8F=96=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=99=A8=E4=BF=A1=E6=81=AF=20build:=201.2.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 33 +-- build.gradle.kts | 11 +- src/main/kotlin/ServerListPing.kt | 169 +++++++++++++++ src/main/kotlin/entity/ServerStatus.kt | 78 +++++++ .../extension/ByteArrayStreamExtension.kt | 21 -- src/main/kotlin/{ => mirai}/Minecraft.kt | 37 +--- src/main/kotlin/mirai/MinecraftListener.kt | 153 ++++++++++++++ .../{ => mirai}/PluginCompositeCommand.kt | 66 +----- src/main/kotlin/{ => mirai}/PluginData.kt | 27 +-- .../kotlin/network/MinecraftInputStream.kt | 68 ++++++ .../kotlin/network/MinecraftOutputStream.kt | 51 +++++ src/main/kotlin/service/ImageService.kt | 50 ----- src/main/kotlin/service/ServerService.kt | 197 ------------------ src/main/kotlin/utlis/ForgeUtils.kt | 183 ++++++++++++++++ .../ImageExtension.kt => utlis/ImageUtils.kt} | 63 +++++- src/main/resources/0.jpg | Bin 17301 -> 0 bytes src/main/resources/1.jpg | Bin 21576 -> 0 bytes src/main/resources/2.jpg | Bin 23015 -> 0 bytes src/main/resources/3.jpg | Bin 34119 -> 0 bytes src/main/resources/4.jpg | Bin 34198 -> 0 bytes src/main/resources/5.jpg | Bin 28002 -> 0 bytes src/main/resources/9.jpg | Bin 35314 -> 0 bytes ...t.mamoe.mirai.console.plugin.jvm.JvmPlugin | 2 +- 23 files changed, 775 insertions(+), 434 deletions(-) create mode 100644 src/main/kotlin/ServerListPing.kt create mode 100644 src/main/kotlin/entity/ServerStatus.kt delete mode 100644 src/main/kotlin/extension/ByteArrayStreamExtension.kt rename src/main/kotlin/{ => mirai}/Minecraft.kt (62%) create mode 100644 src/main/kotlin/mirai/MinecraftListener.kt rename src/main/kotlin/{ => mirai}/PluginCompositeCommand.kt (56%) rename src/main/kotlin/{ => mirai}/PluginData.kt (61%) create mode 100644 src/main/kotlin/network/MinecraftInputStream.kt create mode 100644 src/main/kotlin/network/MinecraftOutputStream.kt delete mode 100644 src/main/kotlin/service/ImageService.kt delete mode 100644 src/main/kotlin/service/ServerService.kt create mode 100644 src/main/kotlin/utlis/ForgeUtils.kt rename src/main/kotlin/{extension/ImageExtension.kt => utlis/ImageUtils.kt} (68%) delete mode 100644 src/main/resources/0.jpg delete mode 100644 src/main/resources/1.jpg delete mode 100644 src/main/resources/2.jpg delete mode 100644 src/main/resources/3.jpg delete mode 100644 src/main/resources/4.jpg delete mode 100644 src/main/resources/5.jpg delete mode 100644 src/main/resources/9.jpg diff --git a/README.md b/README.md index d9196ae..ea98292 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,10 @@ [![](https://img.shields.io/github/v/release/limbang/mirai-console-minecraft-plugin?include_prereleases)](https://github.com/limbang/mirai-console-minecraft-plugin/releases) ![](https://img.shields.io/github/downloads/limbang/mirai-console-minecraft-plugin/total) [![](https://img.shields.io/github/license/limbang/mirai-console-minecraft-plugin)](https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE) -[![](https://img.shields.io/badge/mirai-2.12.0-69c1b9)](https://github.com/mamoe/mirai) +[![](https://img.shields.io/badge/mirai-2.16.0-69c1b9)](https://github.com/mamoe/mirai) 本项目是基于 Mirai Console 编写的插件 -

用于 ping 服务器状态,和查看服务器 tps,基于doctor库实现

+

用于 ping 服务器状态

戳一戳机器人头像可以获取帮助

@@ -15,29 +15,10 @@ ## 命令 ```shell -/mc addLogin # 添加登陆信息 /mc addServer
[port] # 添加服务器,端口默认 25565 -/mc addServerLogin
[port] # 添加带登陆信息带服务器,端口默认 25565 -/mc deleteLogin # 删除登陆信息 /mc deleteServer # 删除服务器 -/mc loginInfo # 查看登陆信息 -/mc setTps # 设置tps功能启用 /mc setAllToImg # 设置All消息转换为图片功能是否启动 ``` -### 使用TPS功能 -1. 使用指令添加登陆信息,比如添加遗落之地的皮肤站演示如下 -```shell -/mc addLogin nano https://skin.blackyin.xyz/api/yggdrasil/authserver https://skin.blackyin.xyz/api/yggdrasil/sessionserver 账号 密码 -``` -2. 然后添加服务器的时候用,`addServerLogin`命令添加,loginName 就是刚才设置的 nano,就可以使用了 - -mc addLogin url参考 [yggdrasil](https://github.com/yushijinhun/authlib-injector/wiki/Yggdrasil-%E6%9C%8D%E5%8A%A1%E7%AB%AF%E6%8A%80%E6%9C%AF%E8%A7%84%E8%8C%83#%E4%BC%9A%E8%AF%9D%E9%83%A8%E5%88%86) - -- name 登陆配置名称 -- authServerUrl 验证服务器地址 正版地址为:https://authserver.mojang.com -- sessionServerUrl 会话服务器地址 正版地址为:https://sessionserver.mojang.com -- username 账号 -- password 密码 ```shell # 设置触发指令 @@ -46,24 +27,14 @@ mc addLogin url参考 [yggdrasil](https://github.com/yushijinhun/authlib-injecto name 可设置如下 - PING `ping服务器` - LIST `查询列表` - - TPS `查询tps` - PING_ALL `ping全部服务器` -## 版本支持 - -TPS 暂时只支持 Forge 端 - ----- - ## 功能展示 戳一戳功能: ![](img/Screenshot_20220319_195629.jpg) -tps 功能: -![](img/1704DCA5-EC7F-4EF9-BF80-10DAC604836D.png) - 直 ping 地址功能: ![](img/ABCBBD85-E183-41FE-BA3A-9D88853F43B3.png) diff --git a/build.gradle.kts b/build.gradle.kts index dadbf23..cde8248 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,25 +1,20 @@ plugins { - val kotlinVersion = "1.8.10" + val kotlinVersion = "1.9.0" kotlin("jvm") version kotlinVersion kotlin("plugin.serialization") version kotlinVersion - id("net.mamoe.mirai-console") version "2.14.0" + id("net.mamoe.mirai-console") version "2.16.0" } group = "top.limbang" -version = "1.1.13" +version = "1.2.0" repositories { mavenCentral() - maven("https://jitpack.io") } dependencies { - implementation("top.fanua.doctor:doctor-client:1.3.13") - implementation("top.fanua.doctor:doctor-plugin-forge-fix:1.3.13") compileOnly("top.limbang:mirai-plugin-general-interface:1.0.2") testImplementation("org.slf4j:slf4j-simple:2.0.5") - "shadowLink"("top.fanua.doctor:doctor-client") - "shadowLink"("top.fanua.doctor:doctor-plugin-forge-fix") } diff --git a/src/main/kotlin/ServerListPing.kt b/src/main/kotlin/ServerListPing.kt new file mode 100644 index 0000000..d5604b6 --- /dev/null +++ b/src/main/kotlin/ServerListPing.kt @@ -0,0 +1,169 @@ +/* + * Copyright (c) 2023 limbang and contributors. + * + * 此源代码的使用受 GNU AGPLv3 许可证的约束,该许可证可在"LICENSE"文件中找到。 + * Use of this source code is governed by the GNU AGPLv3 license that can be found in the "LICENSE" file. + */ + +package top.limbang.minecraft + +import kotlinx.serialization.json.* +import top.limbang.minecraft.entity.Player +import top.limbang.minecraft.entity.PlayerInfo +import top.limbang.minecraft.entity.ServerStatus +import top.limbang.minecraft.network.MinecraftInputStream +import top.limbang.minecraft.network.MinecraftOutputStream +import top.limbang.minecraft.utlis.getForgeDate +import java.io.ByteArrayOutputStream +import java.io.DataInputStream +import java.io.DataOutputStream +import java.io.IOException +import java.net.Socket + + +fun ping(host: String, port: Int) = MinecraftClient.ping(host, port) + +object MinecraftClient { + + /** + * Ping + * + * @param host 地址 + * @param port 端口 + * @return 延迟 和 服务器状态 + */ + fun ping(host: String, port: Int): Pair { + Socket(host, port).use { socket -> + val inStream = MinecraftInputStream(DataInputStream(socket.getInputStream())) + val outStream = MinecraftOutputStream(DataOutputStream(socket.getOutputStream())) + + // 发送握手包 + val handshake = encodeHandshake(address = host, port = port) + outStream.sendPacket(handshake) + // 发送状态请求数据包 + outStream.writeVarInt(0x01) + outStream.writeByte(0x00) + + // 读取握手包响应 + val jsonString = decodeHandshakeResponse(inStream) + // 获取ping延时 + val delay = getPingDelay(inStream, outStream) + val serverStatus = handleServerStatusJson(jsonString) + //decodeFavicon(serverStatus.favicon) + return Pair(delay,serverStatus) + } + } + + /** + * 处理服务器状态JSON + * + * @param json + * @return + */ + fun handleServerStatusJson(json: String): ServerStatus { + val element = Json.parseToJsonElement(json) + // 解析版本信息 + val versionObject = element.jsonObject["version"] ?: throw RuntimeException("未找到版本信息...") + val versionName = versionObject.jsonObject["name"]!!.jsonPrimitive.content + val versionNumber = versionObject.jsonObject["protocol"]!!.jsonPrimitive.int + // 解析玩家信息 + val playerObject = element.jsonObject["players"]!! + val playerMax = playerObject.jsonObject["max"]!!.jsonPrimitive.int + val playerOnline = playerObject.jsonObject["online"]!!.jsonPrimitive.int + val players = mutableListOf() + playerObject.jsonObject["sample"]?.jsonArray?.forEach { + players.add( + Player( + id = it.jsonObject["id"]!!.jsonPrimitive.content, + name = it.jsonObject["name"]!!.jsonPrimitive.content + ) + ) + } + val playerInfo = PlayerInfo(playerMax = playerMax, playerOnline = playerOnline, players = players) + // 解析服务器头像 + val favicon = element.jsonObject["favicon"]?.jsonPrimitive?.content ?: "" + // 解析描述 + val description = if (versionNumber == 5) element.jsonObject["description"]!!.jsonPrimitive.content + else element.jsonObject["description"]!!.jsonObject["text"]!!.jsonPrimitive.content + + return ServerStatus( + favicon = favicon, + description = description, + playerInfo = playerInfo, + versionName = versionName, + versionNumber = versionNumber, + forgeData = getForgeDate(element, versionNumber) + ) + } + + /** + * 根据 minecraft 协议发送数据包 + * + */ + private fun MinecraftOutputStream.sendPacket(packet: ByteArray) { + writeVarInt(packet.size) + write(packet) + } + + /** + * 根据 minecraft 协议编码握手包 + * + * @param version 服务器版本 默认为:-1 + * @param address 服务器地址 + * @param port 服务器端口 + * @param state 下一步状态 1:状态 2:登录 + * @return + */ + private fun encodeHandshake(version: Int = -1, address: String, port: Int, state: Int = 1): ByteArray { + val byte = ByteArrayOutputStream() + val handshake = MinecraftOutputStream(DataOutputStream(byte)) + handshake.writeByte(0x00) + handshake.writeVarInt(version) + handshake.writeUTF(address) + handshake.writeShort(port) + handshake.writeVarInt(state) + return byte.toByteArray() + } + + /** + * 根据 minecraft 协议解码握手包状态响应 + * + * @return 服务器状态 json 字符串 + */ + private fun decodeHandshakeResponse(inStream: MinecraftInputStream): String { + val responseLength = inStream.readVarInt() + val packetId = inStream.readVarInt() + if (packetId == -1) throw IOException("Premature end of stream.") + if (packetId != 0x00) throw IOException("Invalid packetID: $packetId") + return inStream.readUTF(responseLength) + } + + /** + * 获取 ping 延迟 + * + * @param outStream + * @param inStream + * @return 成功返回延迟时间(毫秒),失败返回-1 + */ + private fun getPingDelay(inStream: MinecraftInputStream, outStream: MinecraftOutputStream) = try { + // 发送 ping 包 + val now = System.currentTimeMillis() + outStream.writeByte(0x09) + outStream.writeByte(0x01) + outStream.writeLong(now) + // 读取 ping 响应 + inStream.readVarInt() + val id = inStream.readVarInt() + if (id == -1) throw IOException("Premature end of stream.") + if (id != 0x01) throw IOException("Invalid packetID") + (System.currentTimeMillis() - inStream.readLong()).toInt() + } catch (e: Exception) { + e.printStackTrace() + -1 + } +} + + + + + diff --git a/src/main/kotlin/entity/ServerStatus.kt b/src/main/kotlin/entity/ServerStatus.kt new file mode 100644 index 0000000..1d406d4 --- /dev/null +++ b/src/main/kotlin/entity/ServerStatus.kt @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2023 limbang and contributors. + * + * 此源代码的使用受 GNU AGPLv3 许可证的约束,该许可证可在"LICENSE"文件中找到。 + * Use of this source code is governed by the GNU AGPLv3 license that can be found in the "LICENSE" file. + */ + +package top.limbang.minecraft.entity + + +/** + * ### 服务器状态信息 + * + * - [favicon] 服务器图标 + * - [description] 服务器描述 + * - [playerInfo] 玩家信息 + * - [versionName] 版本名称 + * - [versionNumber] 版本号 + * - [forgeData] Forge相关信息 + */ +data class ServerStatus( + val favicon: String, + val description: String, + val playerInfo: PlayerInfo, + val versionName: String, + val versionNumber: Int, + val forgeData: ForgeData +) + +/** + * 玩家信息 + * + * @property playerMax 最大玩家数 + * @property playerOnline 当前在线玩家数 + * @property players 玩家列表 + */ +data class PlayerInfo(val playerMax: Int, val playerOnline: Int, val players: List) + +/** + * 玩家 + * + * @property name 玩家名称 + * @property id 玩家ID + */ +data class Player(val name: String, val id: String) + +/** + * 模组信息 + * + * @property id 模组ID + * @property version 模组版本 + */ +data class Mod(val id: String, val version: String) + +/** + * 通道信息 + * + * @property name 通道名称 + * @property version 通道版本 + * @property requiredOnClient 是否在客户端必需 + */ +data class Channel(val name: String, val version: String, val requiredOnClient: Boolean) + +/** + * Forge相关信息 + * + * @property fmlNetworkVersion FML网络版本 + * @property truncated 是否被截断 + * @property mods 模组列表 + * @property channels 通道列表 + * @constructor Create empty Forge data + */ +data class ForgeData( + val fmlNetworkVersion: Int, + val truncated: Boolean, + val mods: List, + val channels: List +) diff --git a/src/main/kotlin/extension/ByteArrayStreamExtension.kt b/src/main/kotlin/extension/ByteArrayStreamExtension.kt deleted file mode 100644 index 3db0b38..0000000 --- a/src/main/kotlin/extension/ByteArrayStreamExtension.kt +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright 2020-2022 limbang and contributors. - * - * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. - * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. - * - * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE - */ - -package top.limbang.minecraft.extension - -import java.io.ByteArrayInputStream -import java.io.ByteArrayOutputStream - -/** - * ### ByteArrayOutputStream 转 ByteArrayInputStream - * - */ -fun ByteArrayOutputStream.toInput(): ByteArrayInputStream { - return ByteArrayInputStream(this.toByteArray()) -} \ No newline at end of file diff --git a/src/main/kotlin/Minecraft.kt b/src/main/kotlin/mirai/Minecraft.kt similarity index 62% rename from src/main/kotlin/Minecraft.kt rename to src/main/kotlin/mirai/Minecraft.kt index 59fa676..0766c01 100644 --- a/src/main/kotlin/Minecraft.kt +++ b/src/main/kotlin/mirai/Minecraft.kt @@ -7,32 +7,24 @@ * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE */ -package top.limbang.minecraft +package top.limbang.minecraft.mirai import net.mamoe.mirai.console.command.CommandManager.INSTANCE.register import net.mamoe.mirai.console.command.CommandManager.INSTANCE.unregister import net.mamoe.mirai.console.plugin.id import net.mamoe.mirai.console.plugin.jvm.JvmPluginDescription import net.mamoe.mirai.console.plugin.jvm.KotlinPlugin -import net.mamoe.mirai.contact.Contact.Companion.uploadImage -import net.mamoe.mirai.contact.nameCardOrNick import net.mamoe.mirai.event.GlobalEventChannel import net.mamoe.mirai.event.events.NudgeEvent -import net.mamoe.mirai.event.subscribeGroupMessages -import top.limbang.minecraft.PluginCompositeCommand.renameServer -import top.limbang.minecraft.PluginData.isTps -import top.limbang.minecraft.service.ImageService.createErrorImage -import top.limbang.minecraft.service.ServerService.getServerList -import top.limbang.minecraft.service.ServerService.getTPS -import top.limbang.minecraft.service.ServerService.pingALlServer -import top.limbang.minecraft.service.ServerService.pingServer +import net.mamoe.mirai.event.registerTo +import top.limbang.minecraft.mirai.PluginCompositeCommand.renameServer import top.limbang.mirai.event.GroupRenameEvent object Minecraft : KotlinPlugin( JvmPluginDescription( id = "top.limbang.minecraft", name = "Minecraft", - version = "1.1.13", + version = "1.2.0", ) { author("limbang") info("""Minecraft插件""") @@ -58,30 +50,12 @@ object Minecraft : KotlinPlugin( PluginCompositeCommand.register() val ping = PluginData.commandMap[CommandName.PING] ?: "!" val list = PluginData.commandMap[CommandName.LIST] ?: "!list" - val tps = PluginData.commandMap[CommandName.TPS] ?: "!tps" val pingAll = PluginData.commandMap[CommandName.PING_ALL] ?: "!all" // 创建事件通道 val eventChannel = GlobalEventChannel.parentScope(this) - eventChannel.subscribeGroupMessages { - case(list) quoteReply { getServerList() } - case(pingAll) reply { pingALlServer() } - startsWith(ping) quoteReply { - pingServer(it.substringAfter(ping).trim()) ?: subject.uploadImage(createErrorImage(sender.nameCardOrNick), "jpg") - } - startsWith(tps) { - if (!isTps) return@startsWith - getTPS(it, group, sender.nameCardOrNick) - } - startsWith("!ping") quoteReply { - val parameter = it.trim().split(Regex("\\s")) - if (parameter.size < 2 || parameter.size > 3) return@quoteReply "参数不正确:!ping <地址> [端口]" - val address = parameter[1] - val port = if (parameter.size == 3) parameter[2].toInt() else 25565 - pingServer(address, port, address) ?: subject.uploadImage(createErrorImage(sender.nameCardOrNick), "jpg") - } - } + MinecraftListener.registerTo(eventChannel) eventChannel.subscribeAlways { if (target.id == bot.id) { @@ -90,7 +64,6 @@ object Minecraft : KotlinPlugin( "Ping服务器:$ping 服务器名称\n" + "Ping服务器:!ping <地址> [端口]\n" + "Ping所有服务器:$pingAll\n" + - "TPS:$tps 服务器名称\n" + "查看服务器列表:$list" ) } diff --git a/src/main/kotlin/mirai/MinecraftListener.kt b/src/main/kotlin/mirai/MinecraftListener.kt new file mode 100644 index 0000000..1677af5 --- /dev/null +++ b/src/main/kotlin/mirai/MinecraftListener.kt @@ -0,0 +1,153 @@ +/* + * Copyright 2020-2022 limbang and contributors. + * + * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. + * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. + * + * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE + */ + +package top.limbang.minecraft.mirai + +import kotlinx.coroutines.launch +import net.mamoe.mirai.contact.Contact.Companion.uploadImage +import net.mamoe.mirai.event.EventHandler +import net.mamoe.mirai.event.SimpleListenerHost +import net.mamoe.mirai.event.events.GroupMessageEvent +import net.mamoe.mirai.message.data.Message +import net.mamoe.mirai.message.data.PlainText +import net.mamoe.mirai.message.data.buildForwardMessage +import top.limbang.minecraft.entity.ServerStatus +import top.limbang.minecraft.mirai.PluginData.serverMap +import top.limbang.minecraft.ping +import top.limbang.minecraft.utlis.toImage +import top.limbang.minecraft.utlis.toInput +import java.util.concurrent.ExecutionException +import java.util.concurrent.TimeoutException + + +object MinecraftListener : SimpleListenerHost() { + + /** + * 显示服务器列表 + * + */ + @EventHandler + fun GroupMessageEvent.list() { + if (message.contentToString() != PluginData.commandMap[CommandName.LIST]) return + val msg = if (serverMap.isEmpty()) { + "无服务器列表..." + } else { + var names = "" + for ((name, address) in serverMap) { + names += "[$name]${address.address}:${address.port}\n" + } + "服务器列表为:\n$names" + } + launch { group.sendMessage(msg) } + } + + /** + * ping 所有服务器 + * + */ + @EventHandler + fun GroupMessageEvent.pingAll() { + if (message.contentToString() != PluginData.commandMap[CommandName.PING_ALL]) return + if (PluginData.isAllToImg) { + var imgMessage = "" + serverMap.forEach { + imgMessage += pingServer(it.value.address, it.value.port, it.key) + imgMessage += "\n\n\n" + } + launch { + val img = group.uploadImage(imgMessage.trimEnd().toImage().toInput(), "png") + group.sendMessage(img) + } + } else { + val message = buildForwardMessage { + serverMap.forEach { + bot says (pingServer(it.value.address, it.value.port, it.key)) + } + } + launch {group.sendMessage(message)} + } + } + + @EventHandler + fun GroupMessageEvent.pingAddress(){ + val content = message.contentToString() + val match = """^!ping\s?(.*)\s([0-9]*)""".toRegex().find(content) ?: return + val (address,port) = match.destructured + launch {group.sendMessage(pingServer(address, port.toInt(), address))} + } + + @EventHandler + fun GroupMessageEvent.ping() { + val content = message.contentToString() + val match = """^${PluginData.commandMap[CommandName.PING]}\s?(.*)""".toRegex().find(content) ?: return + val (name) = match.destructured + serverMap[name]?.run { + launch { group.sendMessage(pingServer(address, port, name) ) } + } + } + + /** + * ping 服务器 + * + * @param address 地址 + * @param port 端口 + * @param name 昵称 + * @return + */ + private fun pingServer(address: String, port: Int, name: String): Message { + return try { + val (delay, serverStatus) = ping(address, port) + serverStatus.toMessage(name, delay) + } catch (e: TimeoutException) { + Minecraft.logger.error("获取ping信息,等待超时...") + return PlainText("获取ping信息,等待超时...") + } catch (e: ExecutionException) { + Minecraft.logger.error("获取ping信息失败,${e.message}") + return PlainText("获取ping信息失败,${e.message}") + } catch (e: NullPointerException) { + Minecraft.logger.error("服务器正在启动请稍后。。。") + return PlainText("服务器正在启动请稍后。。。") + } + } + + /** + * 把服务器信息转成消息 + * + * @param name 昵称 + * @param delay 服务器延迟 + * + * @return [Message] + */ + private fun ServerStatus.toMessage(name: String, delay: Int): Message { + var sampleName = "" + playerInfo.players.forEach { sampleName += "[${it.name}] " } + + var serverList = "" + serverMap.forEach { serverList += "[${it.key}] " } + + return PlainText( + "服务器信息如下:\n" + + "名 称: $name\n" + + "延 迟: $delay ms\n" + + "版 本: ${versionName}\n" + + "描 述: ${descriptionColourHandle(description)}\n" + + "在线人数: ${playerInfo.playerOnline}/${playerInfo.playerMax}\n" + + "$sampleName\n" + + "mod个数: ${forgeData.mods.size}\n" + + "服务器列表:$serverList" + ) + } + + /** + * 服务器描述颜色处理 + */ + private fun descriptionColourHandle(description: String): String { + return description.replace("""§[\da-z]""".toRegex(), "") + } +} \ No newline at end of file diff --git a/src/main/kotlin/PluginCompositeCommand.kt b/src/main/kotlin/mirai/PluginCompositeCommand.kt similarity index 56% rename from src/main/kotlin/PluginCompositeCommand.kt rename to src/main/kotlin/mirai/PluginCompositeCommand.kt index c4c1778..630a48a 100644 --- a/src/main/kotlin/PluginCompositeCommand.kt +++ b/src/main/kotlin/mirai/PluginCompositeCommand.kt @@ -7,18 +7,16 @@ * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE */ -package top.limbang.minecraft +package top.limbang.minecraft.mirai import net.mamoe.mirai.console.command.CommandSender import net.mamoe.mirai.console.command.CompositeCommand import net.mamoe.mirai.console.command.UserCommandSender -import net.mamoe.mirai.console.command.getGroupOrNull import net.mamoe.mirai.console.plugin.id import net.mamoe.mirai.contact.Group import net.mamoe.mirai.event.broadcast -import top.limbang.minecraft.PluginData.isAllToImg -import top.limbang.minecraft.PluginData.isTps -import top.limbang.minecraft.PluginData.serverMap +import top.limbang.minecraft.mirai.PluginData.isAllToImg +import top.limbang.minecraft.mirai.PluginData.serverMap import top.limbang.mirai.event.GroupRenameEvent @@ -34,63 +32,13 @@ object PluginCompositeCommand : CompositeCommand(Minecraft, "mc") { } - @SubCommand - @Description("查看登陆信息") - suspend fun CommandSender.loginInfo() { - var loginInfo = "" - PluginData.loginMap.forEach { - loginInfo += "[${it.key}] " - } - if (loginInfo.isEmpty()) - sendMessage("无登陆信息...") - else - sendMessage("登陆配置信息名称:$loginInfo") - } - - @SubCommand - @Description("添加登陆信息") - suspend fun CommandSender.addLogin( - name: String, authServerUrl: String, sessionServerUrl: String, username: String, password: String - ) { - val group = getGroupOrNull() - if (group != null) { - sendMessage("此配置不能在群配置.") - return - } - LoginInfo(authServerUrl, sessionServerUrl, username, password) - .also { PluginData.loginMap[name] = it } - sendMessage("[$name]登陆配置添加成功.") - } - - @SubCommand - @Description("删除登陆信息") - suspend fun CommandSender.deleteLogin(name: String) { - if (PluginData.loginMap.keys.remove(name)) { - sendMessage("登陆配置[$name]删除成功.") - } else { - sendMessage("登陆配置[$name]删除失败.") - } - } - @SubCommand @Description("添加服务器,端口默认 25565") suspend fun CommandSender.addServer(name: String, address: String, port: Int = 25565) { - serverMap[name] = ServerAddress(address, port, null) + serverMap[name] = ServerAddress(address, port) sendMessage("服务器[$name]添加成功.") } - @SubCommand - @Description("添加带登陆信息带服务器,端口默认 25565") - suspend fun CommandSender.addServerLogin(loginName: String, name: String, address: String, port: Int = 25565) { - val loginInfo = PluginData.loginMap[loginName] - if (loginInfo == null) { - sendMessage("[$loginName]该登陆信息尚未配置.") - return - } - - serverMap[name] = ServerAddress(address, port, loginInfo) - sendMessage("服务器[$name]添加成功.") - } @SubCommand @Description("删除服务器") @@ -127,12 +75,6 @@ object PluginCompositeCommand : CompositeCommand(Minecraft, "mc") { } else false } - @SubCommand - @Description("设置tps功能启用") - suspend fun CommandSender.setTps(value: Boolean) { - isTps = value - sendMessage("tps功能:$isTps") - } @SubCommand @Description("设置All消息转换为图片") diff --git a/src/main/kotlin/PluginData.kt b/src/main/kotlin/mirai/PluginData.kt similarity index 61% rename from src/main/kotlin/PluginData.kt rename to src/main/kotlin/mirai/PluginData.kt index b1cfc07..6238e81 100644 --- a/src/main/kotlin/PluginData.kt +++ b/src/main/kotlin/mirai/PluginData.kt @@ -7,7 +7,7 @@ * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE */ -package top.limbang.minecraft +package top.limbang.minecraft.mirai import kotlinx.serialization.Serializable import net.mamoe.mirai.console.data.AutoSavePluginData @@ -19,30 +19,13 @@ import net.mamoe.mirai.console.data.value * * - [address] 服务器地址 * - [port] 服务器端口 - * - [loginInfo] 登陆信息 */ @Serializable -data class ServerAddress(val address: String, val port: Int, val loginInfo: LoginInfo?) +data class ServerAddress(val address: String, val port: Int) -/** - * ### 登陆信息 - * - * - [authServerUrl] 验证地址 - * - [sessionServerUrl] 会话地址 - * - [username] 用户名 - * - [password] 密码 base64 加密过的 - */ -@Serializable -data class LoginInfo( - val authServerUrl: String, - val sessionServerUrl: String, - val username: String, - val password: String -) - enum class CommandName{ - PING,LIST,TPS,PING_ALL + PING,LIST,PING_ALL } /** @@ -50,12 +33,8 @@ enum class CommandName{ */ object PluginData : AutoSavePluginData("minecraft") { var serverMap: MutableMap by value() - var loginMap: MutableMap by value() var commandMap: MutableMap by value() - @ValueDescription("tps查看,默认打开") - var isTps: Boolean by value(true) - @ValueDescription("All消息是否是图片,默认 false") var isAllToImg: Boolean by value(false) } diff --git a/src/main/kotlin/network/MinecraftInputStream.kt b/src/main/kotlin/network/MinecraftInputStream.kt new file mode 100644 index 0000000..2171621 --- /dev/null +++ b/src/main/kotlin/network/MinecraftInputStream.kt @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2023 limbang and contributors. + * + * 此源代码的使用受 GNU AGPLv3 许可证的约束,该许可证可在"LICENSE"文件中找到。 + * Use of this source code is governed by the GNU AGPLv3 license that can be found in the "LICENSE" file. + */ + +package top.limbang.minecraft.network + +import java.io.DataInput +import java.io.DataInputStream +import java.io.IOException + +/** + * ## 用于从 DataInputStream 中读取 Minecraft 协议相关数据的自定义输入流。 + * + * @property input 内部使用的 DataInputStream 对象 + */ +class MinecraftInputStream(private val input: DataInputStream) : DataInput by input { + + /** + * ## 从 DataInputStream 中读取 Minecraft VarInt。 + * + * VarInt 是一种用于表示不定长度整数的压缩格式,用于减少数据传输时的字节长度。 + * + * VarInt 使用了由低到高的每7位来存储整数值的不同部分,最高位表示是否还有后续字节。 + * + * @return 读取到的 VarInt 值。 + * @throws RuntimeException 如果 VarInt 超出规定的最大长度(超过5个字节)。 + */ + fun readVarInt(): Int { + var result = 0 + var numRead = 0 + var read: Byte + do { + read = readByte() + result = result or (read.toInt() and 127 shl numRead++ * 7) + if (numRead > 5) throw RuntimeException("VarInt too big") + } while (read.toInt() and 128 == 128) + return result + } + + /** + * ## 从 DataInputStream 中读取一个 UTF-8 编码字符串。 + * + * 默认情况下,该方法读取的字符串长度受到 Short.MAX_VALUE 的限制。 + * + * @return 读取到的 UTF-8 编码字符串。 + */ + override fun readUTF(): String { + return readUTF(Short.MAX_VALUE.toInt()) + } + + /** + * ## 从 DataInputStream 中读取一个 UTF-8 编码字符串。 + * + * @param maxLength 最大允许的字符串长度。 + * @return 读取到的 UTF-8 编码字符串。 + * @throws IOException 如果读取到的字符串长度无效。 + */ + fun readUTF(maxLength: Int): String { + val length = readVarInt() + if (length < 0 || length > maxLength) throw IOException("Invalid string length.") + val bytes = ByteArray(length) + readFully(bytes) + return String(bytes, Charsets.UTF_8) + } +} \ No newline at end of file diff --git a/src/main/kotlin/network/MinecraftOutputStream.kt b/src/main/kotlin/network/MinecraftOutputStream.kt new file mode 100644 index 0000000..f72ae43 --- /dev/null +++ b/src/main/kotlin/network/MinecraftOutputStream.kt @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2023 limbang and contributors. + * + * 此源代码的使用受 GNU AGPLv3 许可证的约束,该许可证可在"LICENSE"文件中找到。 + * Use of this source code is governed by the GNU AGPLv3 license that can be found in the "LICENSE" file. + */ + +package top.limbang.minecraft.network + +import java.io.DataOutput +import java.io.DataOutputStream + +/** + * ## 用于将 Minecraft 协议相关数据写入 DataOutputStream 的自定义输出流。 + * + * @property output 内部使用的 DataOutputStream 对象 + */ +class MinecraftOutputStream(private val output: DataOutputStream) : DataOutput by output { + + /** + * ## 将整数值编码成 VarInt,并写入到 DataOutputStream 中。 + * + * VarInt 是一种用于表示不定长度整数的压缩格式,用于减少数据传输时的字节长度。 + * + * VarInt 使用了由低到高的每7位来存储整数值的不同部分,最高位表示是否还有后续字节。 + * + * @param value 待编码的整数值。 + */ + fun writeVarInt(value: Int) { + var valueCopy = value + do { + var temp = valueCopy and 127 + valueCopy = valueCopy ushr 7 + if (valueCopy != 0) temp = temp or 128 + writeByte(temp) + } while (valueCopy != 0) + } + + /** + * ## 写入 UTF-8 编码字符串到 DataOutputStream 中。 + * + * @param value 待写入的 UTF-8 编码字符串。 + */ + override fun writeUTF(value: String) { + val bytes = value.toByteArray(Charsets.UTF_8) + writeVarInt(bytes.size) + write(bytes) + } + + fun size() = output.size() +} \ No newline at end of file diff --git a/src/main/kotlin/service/ImageService.kt b/src/main/kotlin/service/ImageService.kt deleted file mode 100644 index 446fbfd..0000000 --- a/src/main/kotlin/service/ImageService.kt +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2020-2022 limbang and contributors. - * - * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. - * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. - * - * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE - */ - -package top.limbang.minecraft.service - -import top.limbang.minecraft.Minecraft -import top.limbang.minecraft.extension.addSubtitles -import top.limbang.minecraft.extension.readImage -import top.limbang.minecraft.extension.toInput -import java.io.ByteArrayInputStream - -object ImageService { - - private val errorMsgList = listOf( - "希望睡醒服务器就好了.", - "你把服务器玩坏了!!!", - "等我喝口奶在试试.", - "服务器连接不上,完蛋了.", - "你干了啥?为啥连接不上.", - "服务器故障!服务器故障!" - ) - - /** - * ### 创建错误图片 - * @param name 提醒人的名称 - */ - fun createErrorImage(name: String): ByteArrayInputStream { - val randoms = (0..5).random() - val subtitles = name + errorMsgList[randoms] - return createSubtitlesImage(subtitles, "$randoms.jpg") - } - - /** - * ### 创建字幕图片 - * @param subtitles 字幕 - * @param resourceName 资源图片名称 - */ - fun createSubtitlesImage(subtitles: String, resourceName: String): ByteArrayInputStream { - val resourceImageStream = - Minecraft.getResourceAsStream(resourceName) ?: throw RuntimeException("读取不到资源文件.") - val image = resourceImageStream.use { resourceImageStream -> resourceImageStream.readImage() } - return image.addSubtitles(subtitles).toInput() - } -} \ No newline at end of file diff --git a/src/main/kotlin/service/ServerService.kt b/src/main/kotlin/service/ServerService.kt deleted file mode 100644 index b1a0ff8..0000000 --- a/src/main/kotlin/service/ServerService.kt +++ /dev/null @@ -1,197 +0,0 @@ -/* - * Copyright 2020-2022 limbang and contributors. - * - * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. - * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. - * - * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE - */ - -package top.limbang.minecraft.service - -import kotlinx.coroutines.launch -import kotlinx.coroutines.runBlocking -import net.mamoe.mirai.contact.Contact.Companion.sendImage -import net.mamoe.mirai.contact.Contact.Companion.uploadImage -import net.mamoe.mirai.contact.Group -import net.mamoe.mirai.event.events.GroupMessageEvent -import net.mamoe.mirai.message.data.Message -import net.mamoe.mirai.message.data.PlainText -import net.mamoe.mirai.message.data.buildForwardMessage -import top.fanua.doctor.client.MinecraftClient -import top.fanua.doctor.client.entity.ServerInfo -import top.fanua.doctor.client.running.AutoVersionForgePlugin -import top.fanua.doctor.client.running.tps.TpsPlugin -import top.fanua.doctor.client.running.tps.tpsTools -import top.fanua.doctor.client.utils.ServerInfoUtils -import top.fanua.doctor.client.utils.substringBetween -import top.fanua.doctor.network.handler.onPacket -import top.fanua.doctor.network.handler.oncePacket -import top.fanua.doctor.plugin.fix.PluginFix -import top.fanua.doctor.protocol.definition.play.client.JoinGamePacket -import top.fanua.doctor.protocol.definition.play.client.PlayerPositionAndLookPacket -import top.limbang.minecraft.PluginData -import top.limbang.minecraft.PluginData.serverMap -import top.limbang.minecraft.extension.toImage -import top.limbang.minecraft.extension.toInput -import top.limbang.minecraft.service.ImageService.createSubtitlesImage -import java.util.concurrent.ExecutionException -import java.util.concurrent.TimeUnit -import java.util.concurrent.TimeoutException - -object ServerService { - - /** - * ping 所有服务器 - * - * @return - */ - suspend fun GroupMessageEvent.pingALlServer(): Message { - if (PluginData.isAllToImg) { - var imgMessage = "" - serverMap.forEach { - imgMessage += pingServer(it.value.address, it.value.port, it.key) - ?: PlainText("[${it.key}]服务器连接失败...") - imgMessage += "\n\n\n" - } - return group.uploadImage(imgMessage.trimEnd().toImage().toInput(),"png") - } else { - return buildForwardMessage { - serverMap.forEach { - bot says (pingServer(it.value.address, it.value.port, it.key) - ?: PlainText("[${it.key}]服务器连接失败...\n")) - } - } - } - } - - /** - * 根据预设好的名称 ping 服务器 - * - * @param name 名称 - * @return - */ - fun pingServer(name: String): Any? { - if (name.isEmpty()) return Unit - val server = serverMap[name] ?: return Unit - return pingServer(server.address, server.port, name) - } - - /** - * ping 服务器 - * - * @param address 地址 - * @param port 端口 - * @param name 昵称 - * @return - */ - fun pingServer(address: String, port: Int, name: String): Message? { - return try { - ServerInfoUtils.getServiceInfo( - MinecraftClient.ping(address, port).get(5000, TimeUnit.MILLISECONDS) - ).toMessage(name) - } catch (e: TimeoutException) { - println("获取ping信息,等待超时...") - return null - } catch (e: ExecutionException) { - println("获取ping信息失败,${e.message}") - return null - } catch (e: NullPointerException) { - println("服务器正在启动请稍后。。。") - return null - } - } - - /** - * 把服务器信息转成消息 - * - * @param name 昵称 - * @return [Message] - */ - private fun ServerInfo.toMessage(name: String): Message { - var sampleName = "" - playerNameList.forEach { sampleName += "[${it}] " } - - var serverList = "" - serverMap.forEach { serverList += "[${it.key}] " } - - return PlainText( - "服务器信息如下:\n" + - "名 称: $name\n" + - "版 本: ${versionName}\n" + - "描 述: ${descriptionColourHandle(description)}\n" + - "在线人数: ${playerOnline}/${playerMax}\n" + - "$sampleName\n" + - "mod个数: ${modNumber}\n" + - "服务器列表:$serverList" - ) - } - - - suspend fun getTPS(name: String, group: Group, sender: String) { - val serverInfo = serverMap[name] ?: return - if (serverInfo.loginInfo == null) { - group.sendMessage("服务器[$name]未配置登陆信息...") - return - } - - val client = MinecraftClient.builder() - .user(serverInfo.loginInfo.username, serverInfo.loginInfo.password) - .authServerUrl(serverInfo.loginInfo.authServerUrl) - .sessionServerUrl(serverInfo.loginInfo.sessionServerUrl) - .plugin(AutoVersionForgePlugin()) - .plugin(TpsPlugin()) - .plugin(PluginFix()) - .build() - - if (!client.start(serverInfo.address, serverInfo.port, 5000)) { - group.sendImage(createSubtitlesImage("$sender,好像获取失败了哦!!!", "9.jpg")) - return - } - - client.oncePacket { - runBlocking { - launch { - group.sendMessage("登陆[$name]成功,开始发送 forge tps 指令") - } - } - }.onPacket { - runBlocking { - launch { - val forgeTps = client.tpsTools.getTpsSuspend() - var outMsg = "[$name]低于20TPS的维度如下:\n" - forgeTps.forEach { tpsEntity -> - val dim = tpsEntity.dim.substringBetween("Dim", "(").trim() - outMsg += when { - tpsEntity.dim == "Overall" -> "\n全局TPS:${tpsEntity.tps} Tick时间:${tpsEntity.tickTime}" - tpsEntity.tps < 20 -> "TPS:%-4.4s 维度:%s\n".format(tpsEntity.tps, dim) - else -> "" - } - } - group.sendMessage(outMsg) - client.stop() - } - } - } - } - - /** - * ### 获取服务器列表 - */ - fun getServerList(): String { - if (serverMap.isEmpty()) - return "无服务器列表..." - var names = "" - for ((name, address) in serverMap) { - names += "[$name]${address.address}:${address.port}\n" - } - return "服务器列表为:\n$names" - } - - /** - * 服务器描述颜色处理 - */ - private fun descriptionColourHandle(description: String): String { - return description.replace("""§[\da-z]""".toRegex(), "") - } -} \ No newline at end of file diff --git a/src/main/kotlin/utlis/ForgeUtils.kt b/src/main/kotlin/utlis/ForgeUtils.kt new file mode 100644 index 0000000..4fb0c68 --- /dev/null +++ b/src/main/kotlin/utlis/ForgeUtils.kt @@ -0,0 +1,183 @@ +/* + * Copyright (c) 2023 limbang and contributors. + * + * 此源代码的使用受 GNU AGPLv3 许可证的约束,该许可证可在"LICENSE"文件中找到。 + * Use of this source code is governed by the GNU AGPLv3 license that can be found in the "LICENSE" file. + */ + +package top.limbang.minecraft.utlis + +import kotlinx.serialization.json.* +import top.limbang.minecraft.entity.Channel +import top.limbang.minecraft.entity.ForgeData +import top.limbang.minecraft.entity.Mod +import top.limbang.minecraft.network.MinecraftInputStream +import top.limbang.minecraft.network.MinecraftOutputStream +import java.io.ByteArrayInputStream +import java.io.ByteArrayOutputStream +import java.io.DataInputStream +import java.io.DataOutputStream + + +/** + * 将经过优化的字符串解码为字节数组。 + * + * @param s 经过优化的字符串 + * @return 解码后的字节数组 + */ +private fun decodeOptimized(s: String): ByteArray { + val byteArray = ByteArrayOutputStream() + val output = MinecraftOutputStream(DataOutputStream(byteArray)) + val size0 = s[0].code + val size1 = s[1].code + val size = size0 or (size1 shl 15) + + var stringIndex = 2 + var buffer = 0 // 我们最多需要 8 + 14 = 22 位的缓冲区,因此使用 int 类型足够 + var bitsInBuf = 0 + while (stringIndex < s.length) { + while (bitsInBuf >= 8) { + output.writeByte(buffer) + buffer = buffer ushr 8 + bitsInBuf -= 8 + } + val c = s[stringIndex] + buffer = buffer or (c.code and 0x7FFF shl bitsInBuf) + bitsInBuf += 15 + stringIndex++ + } + + // 写入剩余的数据 + while (output.size() < size) { + output.writeByte(buffer) + buffer = buffer ushr 8 + bitsInBuf -= 8 + } + + return byteArray.toByteArray() +} + +/** + * 忽略服务器端标记的版本标志 + */ +private const val VERSION_FLAG_IGNORE_SERVER_ONLY = 0b1 +private const val IGNORE_SERVER_ONLY = "SERVER_ONLY" + +/** + * 将解码后的字节数组反序列化为 ForgeData 对象。 + * + * @param fmlNetworkVersion Forge 网络版本号 + * @param decodedData 解码后的字节数组 + * @return 反序列化后的 ForgeData 对象 + */ +private fun deserializeOptimized(fmlNetworkVersion: Int, decodedData: ByteArray): ForgeData { + val input = MinecraftInputStream(DataInputStream(ByteArrayInputStream(decodedData))) + val truncated = input.readBoolean() + val mods = mutableListOf() + val channels = mutableListOf() + val modsSize = input.readUnsignedShort() + // 解析 mod 的id和版本 + for (i in 0.. 383 -> forgeDataObject.jsonObject["fmlNetworkVersion"]!!.jsonPrimitive.int + element.jsonObject["modinfo"] != null && versionNumber <= 340 -> 1 + else -> 0 + } + return when (fmlNetworkVersion) { + 3 -> forgeNetwork3(forgeDataObject!!) + 2 -> forgeNetwork2(forgeDataObject!!) + 1 -> forgeNetwork1(element.jsonObject["modinfo"]!!) + else -> ForgeData(-1, false, listOf(), listOf()) + } +} + +/** + * 解析 fmlNetworkVersion 为 3 的 ForgeData 对象。 + * - 1.18.x - 1.20.2 forge 使用的此方法 + * + * @param forgeDataObject fmlNetworkVersion 为 3 的 ForgeData JSON 元素 + * @return 对应的 [ForgeData] 对象 + */ +private fun forgeNetwork3(forgeDataObject: JsonElement): ForgeData { + val decodedData = forgeDataObject.jsonObject["d"]!!.jsonPrimitive.content + return deserializeOptimized(3, decodeOptimized(decodedData)) +} + +/** + * 解析 fmlNetworkVersion 为 2 的 ForgeData 对象。 + * - 1.16.x - 1.17,x forge 使用的此方法 + * - 1.13.x - 1.15.x 兼容 + * + * @param forgeDataObject fmlNetworkVersion 为 2 的 ForgeData JSON 元素 + * @return 对应的 [ForgeData] 对象 + */ +private fun forgeNetwork2(forgeDataObject: JsonElement): ForgeData { + val channels = forgeDataObject.jsonObject["channels"]!!.jsonArray.map { + val res = it.jsonObject["res"]!!.jsonPrimitive.content + val version = it.jsonObject["version"]!!.jsonPrimitive.content + val required = it.jsonObject["required"]!!.jsonPrimitive.boolean + Channel(name = res, version = version, requiredOnClient = required) + } + + val mods = forgeDataObject.jsonObject["mods"]!!.jsonArray.map { + val modId = it.jsonObject["modId"]!!.jsonPrimitive.content + val modmarker = it.jsonObject["modmarker"]!!.jsonPrimitive.content + Mod(id = modId, version = modmarker) + } + + // 兼容 1.13.x - 1.15.x 找不到就默认 false + val truncated = forgeDataObject.jsonObject["truncated"]?.jsonPrimitive?.boolean ?: false + return ForgeData(fmlNetworkVersion = 2, truncated = truncated, mods = mods, channels = channels) +} + +/** + * 解析 fmlNetworkVersion 为 1 的 ForgeData 对象。 + * + * - 1.8.8 - 1.12.x forge 使用的此方法 + * - 1.7.10 也兼容 + * + * @param forgeDataObject fmlNetworkVersion 为 1 的 ForgeData JSON 元素 + * @return 对应的 [ForgeData] 对象 + */ +private fun forgeNetwork1(forgeDataObject: JsonElement): ForgeData { + val mods = forgeDataObject.jsonObject["modList"]!!.jsonArray.map { + val modId = it.jsonObject["modid"]!!.jsonPrimitive.content + val version = it.jsonObject["version"]!!.jsonPrimitive.content + Mod(id = modId, version = version) + } + return ForgeData(fmlNetworkVersion = 2, truncated = false, mods = mods, channels = listOf()) +} \ No newline at end of file diff --git a/src/main/kotlin/extension/ImageExtension.kt b/src/main/kotlin/utlis/ImageUtils.kt similarity index 68% rename from src/main/kotlin/extension/ImageExtension.kt rename to src/main/kotlin/utlis/ImageUtils.kt index f10e2d5..92bbbe9 100644 --- a/src/main/kotlin/extension/ImageExtension.kt +++ b/src/main/kotlin/utlis/ImageUtils.kt @@ -1,24 +1,63 @@ /* - * Copyright 2020-2022 limbang and contributors. + * Copyright (c) 2023 limbang and contributors. * - * 此源代码的使用受 GNU AFFERO GENERAL PUBLIC LICENSE version 3 许可证的约束, 可以在以下链接找到该许可证. - * Use of this source code is governed by the GNU AGPLv3 license that can be found through the following link. - * - * https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE + * 此源代码的使用受 GNU AGPLv3 许可证的约束,该许可证可在"LICENSE"文件中找到。 + * Use of this source code is governed by the GNU AGPLv3 license that can be found in the "LICENSE" file. */ -package top.limbang.minecraft.extension - +package top.limbang.minecraft.utlis import java.awt.BasicStroke import java.awt.Color import java.awt.Font import java.awt.RenderingHints import java.awt.image.BufferedImage +import java.io.ByteArrayInputStream import java.io.ByteArrayOutputStream import java.io.InputStream +import java.nio.charset.StandardCharsets +import java.util.* import javax.imageio.ImageIO + +/** + * 解码 Minecraft 服务器图标 + * + * @param favicon + */ +fun decodeFavicon(favicon: String): ByteArray { + // 如果图标为空读取默认图标 + if (favicon.isEmpty()) { + val imageStream = object {}::class.java.classLoader.getResourceAsStream("images/defaultFavicon.png")!! + return imageStream.use { inputStream -> + ByteArrayOutputStream().use { outputStream -> + inputStream.copyTo(outputStream) + outputStream.toByteArray() + } + } + } + val prefix = "data:image/png;base64," + if (!favicon.startsWith(prefix)) throw RuntimeException("Unknown format") + val faviconBase64 = favicon.substring(prefix.length).replace("\n", "") + val byte = try { + Base64.getDecoder().decode(faviconBase64.toByteArray(StandardCharsets.UTF_8)) + } catch (e: Exception) { + throw RuntimeException("Malformed base64 server icon") + } + return byte +} + +/** + * 编码 Minecraft 服务器图标 + * + * @param byte + */ +fun encodeFavicon(byte: ByteArray): String { + val prefix = "data:image/png;base64," + val faviconBase64 = Base64.getEncoder().encodeToString(byte) + return prefix + faviconBase64 +} + /** * ### 添加字幕 * @param subtitles 字幕 @@ -110,4 +149,12 @@ private fun textToImage(text: String): ByteArrayOutputStream { val byteArrayOutputStream = ByteArrayOutputStream() ImageIO.write(newImage, "png", byteArrayOutputStream) return byteArrayOutputStream -} \ No newline at end of file +} + +/** + * ### ByteArrayOutputStream 转 ByteArrayInputStream + * + */ +fun ByteArrayOutputStream.toInput(): ByteArrayInputStream { + return ByteArrayInputStream(this.toByteArray()) +} diff --git a/src/main/resources/0.jpg b/src/main/resources/0.jpg deleted file mode 100644 index e72643788db49ae29208eb735429727ddf29235d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17301 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 diff --git a/src/main/resources/1.jpg b/src/main/resources/1.jpg deleted file mode 100644 index 252d48c6ca61903a40e0d52a6ba7a522a7ad9e61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21576 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 diff --git a/src/main/resources/2.jpg b/src/main/resources/2.jpg deleted file mode 100644 index cc7138fffadae06cfbdde431eea11a59b87a3fd4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23015 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%0AvskSv5bG`bXRq)%z4FXrHZpPhsr@ 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

5mT_zi_xD3k=*_%nY_#R+py#w&k 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 diff --git a/src/main/resources/5.jpg b/src/main/resources/5.jpg deleted file mode 100644 index bbc7a9972c8de1af80e01f1faf4087fbcf4d94ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28002 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 diff --git a/src/main/resources/9.jpg b/src/main/resources/9.jpg deleted file mode 100644 index 9b5a33f309175243e2119e9374c1e37a8126fd15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35314 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 WaOSh3$|BzP<}d#=;qTM^Gye-`%($HZ diff --git a/src/main/resources/META-INF/services/net.mamoe.mirai.console.plugin.jvm.JvmPlugin b/src/main/resources/META-INF/services/net.mamoe.mirai.console.plugin.jvm.JvmPlugin index 256b54e..d227d09 100644 --- a/src/main/resources/META-INF/services/net.mamoe.mirai.console.plugin.jvm.JvmPlugin +++ b/src/main/resources/META-INF/services/net.mamoe.mirai.console.plugin.jvm.JvmPlugin @@ -7,4 +7,4 @@ # https://github.com/limbang/mirai-console-minecraft-plugin/blob/master/LICENSE # -top.limbang.minecraft.Minecraft \ No newline at end of file +top.limbang.minecraft.mirai.Minecraft \ No newline at end of file