配置文件
GTPay 的配置位于:
text
plugins/GTPay/修改配置后执行:
text
/gtpay reload也可以使用:
text
/gtpay web open在本地管理页中编辑点券、礼包、累计赞助和 GUI 文件。
config.yml
默认结构:
yaml
web:
bind: "127.0.0.1"
port: 24816
idle-close-minutes: 10
backend:
connect-timeout-ms: 5000
read-timeout-ms: 10000
payment:
poll-seconds: 5
poll-batch-size: 24
channels:
- "wechat"
- "alipay"
qrcode:
directory: "qrcode"
wechat: "wechat.png"
alipay: "alipay.png"
display-in-map: true
storage:
mode: "local"
node-id: "auto"
cluster-id: "auto"
sync-interval-seconds: 10
mysql:
host: "127.0.0.1"
port: 3306
database: "gtpay"
username: "root"
password: ""
table: "gtcore_storage"
url: ""
redis:
host: "127.0.0.1"
port: 6379
username: ""
password: ""
database: 0
uri: ""web
| 配置 | 默认值 | 说明 |
|---|---|---|
bind | 127.0.0.1 | 本地管理页监听地址,默认仅本机访问 |
port | 24816 | 本地管理页端口 |
idle-close-minutes | 10 | 页面无操作多少分钟后自动关闭 |
管理页包含商户配置,bind 使用本机地址时只允许运行服务端的机器访问。
backend
| 配置 | 默认值 | 说明 |
|---|---|---|
connect-timeout-ms | 5000 | 连接等待时间,单位毫秒 |
read-timeout-ms | 10000 | 请求读取等待时间,单位毫秒 |
这两项直接填写毫秒数。网络延迟较高时增加数值。
payment
| 配置 | 默认值 | 说明 |
|---|---|---|
poll-seconds | 5 | 批量查询订单状态的间隔 |
poll-batch-size | 24 | 每批最多查询的订单数量 |
channels | wechat、alipay | 服务器允许使用的支付渠道 |
订单有效时间固定为 5 分钟。取消、过期或异常订单会直接结束,不再占用支付金额。
poll-seconds 低于默认值会增加查询次数,默认使用 5 秒。
qrcode
| 配置 | 默认值 | 说明 |
|---|---|---|
directory | qrcode | 收款码文件夹 |
wechat | wechat.png | 微信收款码文件名 |
alipay | alipay.png | 支付宝收款码文件名 |
display-in-map | true | 是否在游戏内地图显示二维码 |
使用自定义文件名:
yaml
qrcode:
directory: "qrcode"
wechat: "wx-pay.png"
alipay: "ali-pay.png"
display-in-map: true对应文件:
text
plugins/GTPay/qrcode/wx-pay.png
plugins/GTPay/qrcode/ali-pay.pngstorage
| 配置 | 默认值 | 说明 |
|---|---|---|
mode | local | local、mysql 或 redis |
node-id | auto | 当前服务端节点标识。多服时保持 auto,不要手动填成相同值 |
cluster-id | auto | 数据集群标识。auto 按 merchant_id 隔离,同一跨服网络保持相同 |
sync-interval-seconds | 10 | 共享订单和统计的同步间隔,范围 3 到 300 秒 |
使用 MySQL 或 Redis 时,多台独立服务端填写相同的连接配置。账号密码只保存在各自的 plugins/GTPay/config.yml。
切换存储方式或修改数据库配置后重启 Minecraft 服务端,网页保存和 /gtpay reload 不会把已经运行的连接池切换到另一套数据库。
gateway.yml
该文件保存商户和服务器配置:
yaml
server-id: ""
merchant-id: ""
server-key: ""
monitor-key: ""使用 /gtpay web open 可以直接填写这四项配置。密钥内容不能带空格或换行。
四项必须对应机器人创建的同一台服务器。配置混用时会出现订单创建失败、签名错误或监听 App 无法匹配。
message.yml
message.yml 控制玩家提示和 /gtpay help 内容。
支持 & 颜色代码。常用消息:
| 配置 | 用途 |
|---|---|
prefix | 消息前缀 |
help | 帮助列表 |
order-created | 订单创建成功 |
map-loading | 正在读取收款码 |
map-shown | 地图显示成功 |
payment-cancelled | 玩家取消订单 |
order-paid | 已收到付款 |
order-completed | 奖励发放完成 |
gateway-not-configured | 商户配置不完整 |
map-failed | 本地收款码读取失败 |
消息变量:
text
{order_id}
{pay_amount}
{time}
{message}topup.yml
点券充值独立使用 topup.yml。完整说明见 点券与礼包。
gifts.yml
固定价格礼包独立使用 gifts.yml。礼包不会和点券充值混在一起。
sponsorship.yml
累计赞助奖励使用 sponsorship.yml。可以同时建立永久、周、月、年和活动方案。
gui 文件夹
每个 YAML 文件都是一个独立 GUI:
text
gui/main.yml
gui/gifts.yml
gui/vip.yml
gui/activity.yml打开指定 GUI:
text
/gtpay gui vip详细配置见 GUI 配置。
