简介

Proksea 是一个高性能、可扩展的 Minecraft 代理服务器。通过使用 Proksea,您可以将玩家分布到多个 Minecraft 服务器上,从而提高游戏体验和服务器性能,也可以在服务器间进行无缝切换,实现更灵活的游戏玩法。当无法连接到服务器时,Proksea 会尝试将玩家连接到您配置的 Fallback 服务器,避免无法连接的情况发生。

Proksea 自带了一个最简单的服务器,因此您可以不用为 Fallback 服务器额外消耗资源。

运行截图

经过测试,Proksea 适用于:

  • 原版服务端
  • Bukkit 服务端

理论上,Proksea 也可用于其他服务端,但尚未进行测试。

已知问题

  • 尚未支持正版验证
  • CUI 尚未开发完成
  • 无法通过 Proksea 跨版本

可扩展性

Proksea 支持通过JavaScript编写插件实现扩展功能。

示例 自带的插件实现了若域名A和B同时指向同一个IP(Proksea部署的位置),则可以通过玩家连接时输入的域名选择不同服务器。

部署

请先确保您已正确配置 Node.js 环境及 npm 包管理器。

  1. 下载 Proksea
git clone https://github.com/MeowLynxSea/proksea.git
  1. 进入项目目录
cd proksea
  1. 安装依赖
npm install
  1. 修改配置文件config.json,配置服务器列表
{
    "serverList": {
        "default": {
            "host": "localhost",
            "port": 0,
            "isDefault": true,
            "isFallback": true
        },
        "server1": {
            "host": "server1.ip",
            "port": 25565
        },
        "server2": {
            "host": "server2.ip",
            "port": 25565
        },
        "server3": {
            "host": "server3.ip",
            "port": 25565
        }
    },
    "proxyServerOptions": {
        "port": 25565,
        "version": "1.16.3",
        "online-mode": false,
        "motd": "[Proksea] Minecraft Proxy in NodeJS"
    },
    "proxyOptions": {
        "enablePlugins": true
    },
    "localServerOptions": {
        "//": "Proksea 自带的 Fallback 服务器",
        "online-mode": false,
        "encryption": true,
        "host": "0.0.0.0",
        "port": 25566,
        "version": false
    }
}
  1. 启动服务器
node app.js