AlexInd 的服务端皮肤

AlexInd 的服务端皮肤

一个客户端的Minecraft 1.7.10 Forge模组,用从API获取的玩家皮肤替换玩家皮肤。

社交

AlexInd 的服务器皮肤

一款客户端模组,适用于 Minecraft 1.7.10 的 Forge,可通过 API 获取每位玩家的皮肤并替换原有皮肤。

工作原理

  1. 对世界中的每位玩家,模组会向配置的 API 地址发送 GET 请求,其中包含玩家昵称。
  2. API 返回包含皮肤地址的 JSON 响应。
  3. 模组下载皮肤 PNG 文件,并通过反射将其应用到对应玩家。

配置

首次启动后,编辑 config/alexinds_server_skins.cfg 文件:

general {
    S:apiUrl=http://localhost:8000/%s
}

使用 %s 作为玩家昵称的占位符。

API

模组向配置的地址发送 GET 请求(%s 会被替换为玩家昵称)。服务器必须返回以下结构的 JSON:

{
    "SKIN": {
        "url": "https://example.com/path/to/skin.png",
        "metadata": {}
    }
}
字段 类型 描述
SKIN.url 字符串 玩家皮肤 PNG 文件的直接链接(64x64 或 64x32)
SKIN.metadata 对象 保留给将来使用,请传递空对象 {}

皮肤 PNG 文件必须可通过直接 GET 请求访问(无重定向,无需认证)。

示例服务器

example-server/server.py 中提供了一个最小化的 Python 服务器:

python example-server/server.py

将 64x64 的 PNG 皮肤文件放入 example-server/skins/ 目录,文件名格式为 <昵称>.png(例如 Notch.png)。服务器将同时提供 JSON 接口和皮肤文件。

配置模组使用:

general {
    S:apiUrl=http://你的IP地址:8000/%s
}

构建

./gradlew clean build

输出:build/libs/SkinReplacer-1.0.0.jar

要求

  • Minecraft 1.7.10
  • Forge 10.13.4.1614+
  • Java 8