Cnzw 发表于 2024-5-30 12:35:54

Plan | Player Analytics - 通过网页面板监控和分析服务器状态和玩家活动

本帖最后由 Cnzw 于 2024-5-30 12:37 编辑

https://s21.ax1x.com/2024/05/30/pk3sWGV.jpg

https://s21.ax1x.com/2024/05/22/pkMLAoT.png https://s21.ax1x.com/2024/05/21/pkM1UW8.png https://s21.ax1x.com/2024/05/21/pkM1NJf.png

插件简介
Plan 是一个支持 Bukkit、Sponge、Bungee、Velocity 服务器的网页面板分析工具插件,可以通过网页面板监控和分析服务器状态和玩家活动。

内置的网页面板可以显示对服务器上不同方面的数据和分析,例如玩家在线数量、统计数据和插件数据,以及这些数据如何随着时间的推移而变化的趋势。

Plan 还支持或被支持众多插件,可以在 这里查看

https://s21.ax1x.com/2024/05/30/pk36Uc8.png

服务器群组
https://s21.ax1x.com/2024/05/30/pk36ajS.jpg
服务器详情
https://s21.ax1x.com/2024/05/30/pk360BQ.jpg
玩家详情
https://s21.ax1x.com/2024/05/30/pk36wng.png
数据查询
https://s21.ax1x.com/2024/05/30/pk36N1f.jpg

https://pump.goatcounter.com/count?p=klpbbs.com/thread-136994-1-1.html/t-3420-1-1.html&r=klpbbs.com&q=utm_campaign%3DPlan

安装要求

[*]Spigot/Paper/Folia/NukkitX 或其分支:全版本
[*]Sponge/SpongeForge/Fabric/Cauldron 或其分支:全版本
[*]Bungeecord/Velocity 或其分支:全版本
[*]Java:11 或更高版本
[*]如果无法更新到Java 11,请使用 5.4 build 1722


如何使用
插件安装分为单服务器模式和群组模式两种模式,群组模式可以把单服务器数据整合到一个网页面板中。

如果想要使用群组模式,请直接看下方的“群组安装”章节和“单服务器接入群组”章节。

单服务器安装
原文文档

适用于 Spigot/Paper/Folia/NukkitX/Sponge/SpongeForge/Fabric/Cauldron 服务端。

基础要求
需要额外的对外开放端口(面板服可以退场了)
Java:11 或更高版本

将本插件文件复制到服务器的 plugins 文件夹后重启服务器。

默认的网页面板端口是8804,可以在配置文件 config.yml 修改端口。

Webserver:
Port: 8804

使用 /plan reload 更改端口后重载配置以应用更改。

可以使用 Webserver.Alternative_IP 设置更改网页访问地址。

Webserver:
    Alternative_IP:
      Enabled: true
      Address: "play.address.net:%port%" # 不用动 %port%,Plan 会自动替换

同样,使用 /plan reload 更改端口后重载配置以应用更改。

此时面板是对外开放的,任何人都可以访问。如果想要启用账号密码验证,则需要 部署SSL。

不适合没有建站经验的腐竹,可以单纯改下端口来规避玩家访问,因为 Plan 是“只读”(只能获取数据而不能控制服务器)的,所以不加密也不会有服务器安全问题。


此时 Plan 的单服务器就应该完成了,可以直接从对应地址访问网页面板了。(还有问题?见 原文文档)

群组安装
原文文档

适用于 Bungeecord/Velocity 服务端。

基础要求
需要额外的对外开放端口(面板服可以退场了)
MySQL数据库
Java:11 或更高版本

将本插件文件复制到服务器的 plugins 文件夹后重启服务器。

默认的网页面板端口是8804,可以在配置文件 config.yml 修改端口。

Webserver:
Port: 8804

使用 /plan reload 更改端口后重载配置以应用更改。

可以使用 Webserver.Alternative_IP 设置更改网页访问地址。

Webserver:
    Alternative_IP:
      Enabled: true
      Address: "play.address.net:%port%" # 不用动 %port%,Plan 会自动替换

同样,使用 /plan reload 更改端口后重载配置以应用更改。

Plan 不会自动创建新数据库,因此需要创建或使用现有数据库。(是新建数据库而不是数据表)
创建新数据库后在 config.yml 修改数据库配置:

Database:
MySQL:
    Address: localhost
    Port: 3306
    User: <user>
    Password: <password>
    Database: <db_name>
    Launch_options: "?rewriteBatchedStatements=true&useSSL=false"

使用 /planproxy reload 重载配置以应用更改。

此时面板是对外开放的,任何人都可以访问。如果想要启用账号密码验证,则需要 部署SSL。

不适合没有建站经验的腐竹,可以单纯改下端口来规避玩家访问,因为 Plan 是“只读”(只能获取数据而不能控制服务器)的,所以不加密也不会有服务器安全问题。


单服务器接入群组
将本插件文件复制到子服(如Spigot等)的 plugins 文件夹后重启服务器。

可以修改配置文件中的 Server.Name 为服务器设置名称(显示在网页面板上的服务器名称)。

修改子服配置中设置数据库设置(记得要改Database.Type):

Database:
Type: MySQL
MySQL:
    Address: localhost
    Port: 3306
    User: <user>
    Password: <password>
    Database: <db_name>
    Launch_options: "?rewriteBatchedStatements=true&useSSL=false"


如果复制配置文件夹,不要在两台服务器之间复制 ServerInfoFile.yml -这可能会导致两台服务器识别为同一台服务器!


通过设置 Webserver.Disable_Webserver 为 true 禁用子服上的网页面板。

使用 /plan reload 重载配置以应用更改。

现在,Plan 应该可以收集大量子服数据,并能够通过 Bungee/Velocity 上的网页面板访问所有服务器数据。

此时 Plan 的服务器群组就应该完成了,可以直接从对应地址访问网页面板了。(还有问题?见 原文文档)

更多设置
常用的页面:

[*]单服务器设置(已翻译)
[*]群组设置(已翻译)
[*]Spigot等配置文件详解
[*]Bungee等配置文件详解
[*]SSL证书和登录验证设置
[*]命令和权限(已翻译)
[*]PlaceholderAPI


命令和权限

在 BungeeCord/Velocity 上,/planproxy 和 /plan 都可以用。权限相同,所有子命令在所有平台上都可用。

/plan

Permission: none
Main command, only shows subcommands that are permitted.
权限:无
主命令,只显示允许的子命令。

/planproxy

Permission: none
Main command on proxy platforms, only shows subcommands that are permitted.
Aliases planbungee, planvelocity
权限:无
代理平台上的主命令,只显示允许的子命令。
别名planbungee, planvelocity

/plan server

Permission: plan.server
Displays link to /server page
Aliases analyze, a, analyse, analysis
权限:plan.server
显示指向/server页面的链接
别名analyze, a, analyse, analysis

/plan servers

Permission: plan.servers
List servers and their IDs in Plan database
Aliases serverlist, listservers, sl, ls
权限:plan.servers
在Plan数据库中列出服务器及其ID
别名serverlist, listservers, sl, ls

/plan network

Permission: plan.network
Displays link to /network page
Aliases netw
权限:plan.network
显示链接到/网络页面
别名netw

/plan player

Permission: plan.player.self
Displays link to /player page, viewing other player's links requires plan.player.other
Aliases inspect
权限:plan.player.self
显示指向/player页面的链接,查看其他玩家的链接需要plan.player.other
别名inspect

/plan players

Permission: plan.player.other
Displays link to /players page
Aliases pl, playerlist, list
权限:plan.player.other
显示指向/players页面的链接
别名pl, playerlist, list

/plan search <part>

Permission: plan.search
Lookup player names
权限:plan.search
玩家姓名

/plan ingame

Permission: plan.ingame.self
View player info in game, viewing other player's info requires plan.ingame.other
Aliases qinspect
权限:plan.ingame.self
在游戏中查看玩家信息,查看其他玩家信息需要plan.ingame.other
别名qinspect

/plan json

Permission: plan.json.self
Displays link to player's json data download, viewing other player's link requires plan.json.other
权限:plan.json.self
显示玩家json数据下载链接,查看其他玩家链接需要plan.json.other

/plan accept

Permission: none
Accept a pending action
Aliases yes, y
权限:无
接受待处理的操作
别名yes, y

/plan cancel

Permission: none
Cancel a pending action
Aliases deny, no, n
权限:无
取消一个待处理的操作
别名deny, no, n

/plan info

Permission: plan.info
View information about the plugin status
权限:plan.info
查看插件状态信息

/plan reload

Permission: plan.reload
Restart the plugin and reload changes in config
权限:plan.reload
重新启动插件并重新加载配置中的更改

/plan disable

Permission: plan.disable
Disable the plugin or a feature until next reload
权限:plan.disable
禁用插件或功能,直到下次重新加载

/plan register [--code ${code}]

Permission: plan.register.self
Display link to /register page or complete registration. Registering users for other players requires plan.register.other
权限:plan.register.self
显示链接到/注册页面或完成注册。为其他玩家注册用户需要plan.register.other

/plan unregister

Permission: plan.unregister.self
Unregister user, unregistering users for other players requires plan.unregister.other
权限:plan.unregister.self
注销用户,为其他玩家注销用户需要plan.unregister.other

/plan logout [* / username]

Permission: plan.logout.other
Log out all users (*) or a specific user from the plan panel. Provides means for cookie invalidation after cookie persistence was implemented.
权限:plan.logout.other
从计划面板中注销所有用户(*)或特定用户。提供在实现cookie持久性之后使cookie失效的方法。

/plan users

Permission: plan.users
List registered Plan users
Aliases webusers, web
权限:plan.users
列出已注册的计划用户
别名webusers, web

/plan groups

Permission: plan.setgroup.other
List Plan web groups
权限:plan.setgroup.other
列出计划Web组

/plan setgroup

Permission: plan.setgroup.other
Set a Plan user's web group.
权限:plan.setgroup.other
设置Plan用户的Web组。

/plan export

Permission: plan.export
Export some files
权限:plan.export
导出一些文件

/plan import

Permission: plan.import
Import some data to Plan
权限:plan.import
导入一些数据到计划

/plan db

Permission: plan.data.base
Perform actions on the Plan database
Aliases database
权限:plan.data.base
对计划数据库执行操作
别名database





权限
默认权限 (在 Spigot 上)
描述


plan.server
op
执行 /plan server 命令


plan.servers
op
执行 /plan servers 命令


plan.network
op
执行 /plan network 命令


plan.player.self
true
执行 /plan player 命令, 获取到自己玩家的玩家页面的网页链接


plan.player.other
op
获取其他玩家的玩家页面的网页链接


plan.search
op
执行 /plan search 命令


plan.ingame.self
true
执行 /plan ingame 命令, 在游戏中查看自己的数据


plan.ingame.other
op
查看游戏中其他人的数据


plan.register.self
true
执行 /plan register 命令, 注册一个面板用户,可以查看自己玩家页面


plan.register.other
op
执行 /plan register 命令, 注册可以查看任何页面的面板用户,或为其他用户注册面板用户


plan.unregister.self
true
执行 /plan unregister 命令, 删除自己的面板用户


plan.unregister.other
op
删除任何人的面板用户


plan.setgroup.other
op
更改面板用户的网页权限组和列出网页权限组。


plan.logout.other
op
从面板登出用户


plan.info
op
执行 /plan info 命令


plan.reload
op
执行 /plan reload 命令


plan.disable
op
执行 /plan disable 命令


plan.users
op
执行 /plan users 命令, 面板用户列表


plan.data.base
op
执行 /plan db 命令


plan.data.backup
op
执行 /plan db backup 命令


plan.data.restore
op
执行 /plan db restore 命令


plan.data.move
op
执行 /plan db move 命令


plan.data.hotswap
op
执行 /plan db hotswap 命令


plan.data.clear
op
执行 /plan db clear 命令


plan.data.remove.player
op
执行 /plan db remove 命令


plan.data.remove.server
op
执行 /plan db uninstalled 命令


plan.data.export
op
执行 /plan export 命令


plan.data.import
op
执行 /plan import 命令


plan.json.self
true
执行 /plan json 命令, 下载自己的面板中的数据为 .json


plan.json.other
op
下载其他人的面板中的数据为 .json


plan.ignore.commanduse
false
不记录此玩家使用的命令


plan.ignore.afk
false
不记录此玩家的挂机时间




使用统计
https://bstats.org/signatures/bukkit/Plan.svg

BungeeCord
https://bstats.org/signatures/bungeecord/Plan.svg
Sponge
https://bstats.org/signatures/sponge/plan.svg
Velocity
https://bstats.org/signatures/velocity/Plan.svg


更多
本插件已加入 插件搬运计划,会定期同步外网资源的更新。

搬运催更 & 问题反馈:快速响应问卷 或在下方留下评论。
https://s21.ax1x.com/2024/05/23/pkQQcZR.png

Crigo 发表于 2024-5-30 18:25:05

感谢分享

翠娥 发表于 2024-5-30 22:34:47

感谢分享

梓泫 发表于 2024-10-28 22:40:43

谢谢分享~
页: [1]
查看完整版本: Plan | Player Analytics - 通过网页面板监控和分析服务器状态和玩家活动