安装与运行
环境
注
以 Windows 系统为例,我的测试环境为 Windows 11、Python 3.7,理论上本服务端程序可以在所有权限足够的平台上运行。
下载
你可以在 Releases 中直接下载压缩包,也可以 clone 整个项目。一些小改动、测试更新会在 dev 分支中,如有需要请仔细检阅。
安装 Python 依赖
相关信息
需要 Python >= 3.6
目前本项目使用的依赖并不多,是否创建虚拟环境请按需选择。
使用 Python 自带的 pip
进行安装即可:
pip install -r requirements.txt
因为某种网络问题,无法从国外下载模块,则可以使用国内镜像源,比如使用清华镜像:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ -r requirements.txt
主服务端配置
主服务端的配置文件为 config.py
,或者也可以是符合模块规范的 config
文件夹。程序将使用 from config import Config
导入用户配置,用户配置将覆盖默认配置,未指定的选项将使用位于 core/config_manager.py
中的默认值。
config.py
文件需要与 main.py
在同层次的文件夹中,配置文件本身应该包含一个 Config
类,其类属性为设置选项。这里提供一个简短的例子,包括几个常用设置选项:
class Config:
HOST = '0.0.0.0' # 主服务监听地址
PORT = 80 # 主服务监听端口号,小心端口冲突
GAME_API_PREFIX: str | list[str] = '/my_game_api/233' # 游戏 API 前缀地址
ALLOW_APPVERSION: list[str] = ['9.9.9', '2.3.3'] # 允许的客户端版本
提示
你也可以根据 config.example.py
这个示例文件进行模仿,完整的配置选项可以在中配置文档查到。
Link Play 子服务端相关配置
警告
如果你不清楚其中某些设置到底是什么,有什么作用,请不要进行改动。在默认情况下,Link Play 功能是直接可用的。
class Config:
HOST = '0.0.0.0' # 子服务监听地址
UDP_PORT = 10900 # 子服务 UDP 监听端口
TCP_PORT = 10901 # 子服务 TCP 监听端口,与主服务通信用
AUTHENTICATION = 'my_link_play_server' # TCP 校验
TCP_SECRET_KEY = '1145141919810' # TCP 传输加密密钥
class Config:
SET_LINKPLAY_SERVER_AS_SUB_PROCESS = True # 是否将子服务作为子进程运行
LINKPLAY_HOST = '127.0.0.1' # 相对于主服务的子服务地址
LINKPLAY_UDP_PORT = 10900 # 子服务 UDP 监听端口
LINKPLAY_TCP_PORT = 10901 # 子服务 TCP 监听端口,与其通信用
LINKPLAY_AUTHENTICATION = 'my_link_play_server' # TCP 校验
# LINKPLAY_DISPLAY_HOST = 'my_linkplay_server.com' # 相对于客户端的子服务地址
LINKPLAY_TCP_SECRET_KEY = '1145141919810' # TCP 传输加密密钥
上面是 Link Play 子服务的一些配置和主服务中的相关配置,明显两者中的某些项目需要相同。
运行
主服务端
双击 run.bat
脚本即可运行,如无报错信息则视为成功。当然,你可以使用命令行 python main.py
达到同样的效果。
提示
以上为最简单的运行方式,基于 Flask 本身的多线程测试服务端,如需部署方案请移至 Flask 官方文档。
Link Play 子服务端
只需要 linkplay_server
文件夹和 run_linkplay_server.py
文件存在,Link Play 子服务就可以单独启动。