-1

我一直在寻找一种解决方案来列出当前在 Minecraft 服务器上在线的玩家的用户名。我的客户不想使用插件,所以这看起来更棘手。

我在他的网站上看到 DinnerBone 使用 Python列出在线玩家及其用户名。我想知道这是否可以做到,如果没有,有谁知道如何做到这一点?

4

2 回答 2

3

是的,这是可以做到的。您应该阅读PHP 的 Sockets API。然后,您只需找出正确的消息来发送和解析接收到的结果。

请记住,并非所有主机都允许基于安全设置执行此类操作,因为理论上它可以被滥用于大多数主机不希望您做的事情(例如运行游戏或聊天服务器等)。

于 2013-07-21T10:10:45.797 回答
3

我找到了我正在寻找的答案。如果其他人想知道以供将来参考,我使用了 xPaw 的PHP 类,它使用 RCON 来查询服务器的 IP 并返回各种信息(在这种情况下是服务器上当前的用户名)。

我使用了MinecraftQuery_Simple.php文件。然后就像定义服务器地址/IP和(在我的情况下)一样简单:

    <?PHP
        if(($Players = $Query->GetPlayers()) !== false) {
            foreach($Players as $Player) {
            echo "<img src=https://minotar.net/avatar/".$Player."/74.png>
                  <p>".$Player."</p>";
            }
        } 
    ?>

希望有人发现这和我将来一样有用。

于 2013-07-21T16:32:24.940 回答