【CS2】MatchZy

您所在的位置:网站首页 csgo社区服满十怎么准备 【CS2】MatchZy

【CS2】MatchZy

2024-04-28 03:50| 来源: 网络整理| 查看: 265

插件介绍:

MatchZy 是一个为CS2提供 训练/满十比赛/训练赛 管理的服务器插件,它的配置非常的简单!

原作者的Discord群组:

Discord

题外话:

CSSharp是一个类似于SourceMod的插件开发环境,它一样是基于Metamod开发。简单理解:Metamod是最基础的平台,Sourcemod或者CSSharp是基于Metamod开发出来的框架,最后我们用的插件一般是再次基于Sourcemod或者CSSharp开发来的。插件平台的架构如下图所示:

安装方法: 安装 MetaMod 最新版 (https://cs2.poggu.me/metamod/installation/) (论坛有教程:【CS2】安装MetaMod V2.0 版本-插件分享-CSGO插件分享-CSGO资料库 (csgocn.net)) 安装 CounterStrikeSharp (CSSharp) (https://docs.cssharp.dev/guides/getting-started/). (注意: 如果你安装的是 MatchZy with CSSharp release,那么这一步可以省略) 打开链接: https://github.com/roflmuffin/CounterStrikeSharp/actions/runs/6760222837 下拉然后下载 'counterstrikesharp-with-runtime' 将压缩包内的 addons 文件夹解压到游戏服务器的csgo/ 目录,addons目录下面需要包含有counterstrikesharp 文件夹和 metamod 文件夹 通过在游戏服务器控制台输入 meta list 来验证你的安装是否生效,如果成功你会看到 CounterStrikeSharp plugin by Roflmuffin 你也可以参考 https://docs.cssharp.dev/guides/getting-started 这里的相关构建介绍. 开始看的时候确实比较复杂,但是想相信我,这是值得的! :P 安装 MatchZy 下载最新版的 MatchZy release ,然后将它解压到游戏服务器的csgo/目录 通过在服务器游戏控制台输入css_plugins list命令,来验证你的插件是否生效,如果成功你会看到 MatchZy by WD- listed there.

注意:CSSharp 插件仅能够在 Linux 系统上使用。

MatchZy能干什么?

MatchZy 可以解决很多比赛管理需求。它提供了基本命令,如 !ready、!unready、!pause、!unpause、!tac、!stop 等,提供比赛统计信息等等!

特别亮点:

训练模式提供: .bot, .spawn, .ctspawn, .tspawn, .nobots 和 .exitprac 命令! 热身阶段无限金钱 拼刀回合 (按照预期的逻辑,即拥有最多存活玩家的队伍获胜。如果玩家数量相同,则具有HP优势的团队获胜。如果HP相同,则随机决定获胜者) 开始比赛 (由拼刀胜利方决定开始与否. 刀局也是可以选择性开启). 比赛开始自动录制Demo,比赛结束自动停止录制 (必须要配置 tv_enable 1) 支持回合回溯 (当前使用 valve's 默认的备份系统) 能够创建管理员并允许他们访问管理员命令 数据库统计和 CSV 统计!MatchZy 将所有比赛的数据和统计数据存储在本地 SQLite 数据库中,并创建一个 CSV 文件,用于存储该比赛中每个玩家的详细统计数据! 配置简单 敬请期待! 基本命令:

大多数命令也可以使用 !前缀而不是 .(比如 !ready)

.ready 标记玩家已准备就绪 .unready 标记玩家没有准备好 .pause 暂停比赛。 .unpause 请求取消暂停比赛。双方对于都需要输入 .unpause 来取消暂停比赛 .stay 保持在当前阵营(由拼刀获胜方输入) .switch 交换阵营 (由拼刀获胜方输入) .stop 恢复当前回合的备份(两队都需要输入.stop才能恢复当前回合) .tac 战术暂停 训练模式命令: .spawn  Spawns to the provided spawn number of same team .ctspawn  Spawns to the provided spawn number of CT .tspawn  Spawns to the provided spawn number of T .bot 在玩家当前位置上添加机器人 .nobots 移除所有机器人 管理员命令: .start 强制开始比赛 .restart 强制重启/重置比赛 .pause 以管理员身份暂停比赛(玩家无法取消暂停管理员暂停的比赛)。 .unpause 强制取消暂停比赛。 .restore 恢复到特定回合。 .knife 切换是否进行刀局。如果不开启拼刀回合,比赛在热身结束之后就正式开始。 .readyrequired 设置开始比赛所需的已准备玩家数,如果配置为0,表示必须所有玩家都准备。 .settings 显示当前设置,例如是否启用了拼刀回合,已准备的玩家个数。 .map 更换地图 .asay 以管理员身份在公屏发话 .reload_admins 重新加载 admins.json .prac 开始训练模式 .exitprac 退出训练模式并且进入比赛模式 配置:

所有与 MatchZy 相关的配置文件都可以在 csgo/cfg/MatchZy 中找到(如果您已正确提取内容,则 MatchZy 文件夹应该在 cfg 文件夹中)。

创建管理员

在csgo/cfg/MatchZy中,应该存在一个名为admins.json的文件。如果它不存在,它将在加载插件时自动创建。您可以在该 JSON 文件中添加管理员的 Steam64 ID,如下例所述:

{ "76561198154367261": "", ": "" } 配置MatchZy的ConVars:

同样,在 csgo/cfg/MatchZy 中,应该存在一个名为 config.cfg 的文件。每当加载插件时,都会执行此文件。如果您对此文件进行了任何更改并想要重新加载配置,只需在服务器上执行 exec MatchZy/config.cfg 命令即可。

文件的内容如下,它还包含所有命令的功能介绍。

// This config file is executed when MatchZy plugin is loaded // Do not add commands other than matchzy config console variables // More configurations and variables will be coming in future updates. // Whether knife round is enabled by default or not. Default value: true // This is the default value, but knife can be toggled by admin using .knife command matchzy_knife_enabled_default true // Minimum ready players required to start the match. If set to 0, all connected players have to ready-up to start the match. Default: 2 matchzy_minimum_ready_required 2 // Path of folder in which demos will be saved. If defined, it must not start with a slash and must end with a slash. Set to empty string to use the csgo root. // Example: matchzy_demo_path MatchZy/ // A folder named MatchZy will be created in csgo folder if it does not exist and will store the recorded demos in it. Default value is MatchZy/ which means demos will be stored in MatchZy/ matchzy_demo_path MatchZy/ // Whether !stop/.stop command is enabled by default or not. Default value: false // Note: We are using Valve backup system to record and restore the backups. In most of the cases, this should be just fine. // But in some cases, this may not be reliable hence default value is false matchzy_stop_command_available false // Whether to pause the match after round restore or not. Default value: true // Players/admins can unpause the match using !unpause/.unpause. (For players, both the teams will have to use unpause command) matchzy_pause_after_restore true // Chat prefix to show whenever a MatchZy message is sent to players. Default value: [{Green}MatchZy{Default}] // Available Colors: {Default}, {Darkred}, {Green}, {LightYellow}, {LightBlue}, {Olive}, {Lime}, {Red}, {Purple}, {Grey}, {Yellow}, {Gold}, {Silver}, {Blue}, {DarkBlue} // {BlueGrey}, {Magenta} and {LightRed}. Make sure to end your prefix with {Default} to avoid coloring the complete messages in your prefix color matchzy_chat_prefix [{Green}MatchZy{Default}] 配置热身/拼刀/比赛/训练模式的cfg:

同样,在csgo/cfg/MatchZy中,应该存在名为warmup.cfg,knife.cfg,live.cfg和prac.cfg的文件。这些配置分别在热身、刀、直播和练习模式启动时执行。

您可以根据需要修改这些文件。

如果在预期位置找不到这些配置,则 MatchZy 将执行代码中存在的默认配置。

比赛/玩家战绩信息: 数据库战绩:

MatchZy 带有一个默认数据库 (SQLite),它会自动配置自己。目前我们使用 2 个表,matchzy_match_data 和 matchzy_player_stats。顾名思义,matchzy_match_data保存每场比赛的数据,如matchid、阵营名称、比分等。然而,matchzy_player_stats存储了参加该比赛的每位玩家的数据/统计数据。它存储匹配 id、击杀、死亡、助攻和其他重要统计数据等数据!

CSV战绩:

比赛结束后,将从SQLite数据库中提取数据,并在csgo/MatchZy_Stats文件夹中写入一个CSV文件。此文件夹将包含每个匹配项的 CSV 文件(文件名模式:match_data_{matchid}.csv),并且它将具有与matchzy_player_stats中存在的相同数据。

这里有一个改进的余地,比如在CSV文件中或至少在文件名里面体现匹配分数。我很快就会做出这个改变!

不足之处

配置团队名称(目前将使用默认名称,如 Counter-Terrorist 和 Terrorist 。这是因为 CSSharp 尚未提供对 ConVars 的访问,这是维护阵营名称并对其执行操作所必需的,例如在中场休息时侧边切换后内部交换阵营名称)

虽然您可以使用 mp_teamname_1 和 mp_teamname_2 命令手动配置阵营名称,但由于上述原因,它们不会反映在统计信息中。

将玩家锁定在团队中(也即是说,玩家可以自行阵营。由于这是比赛的一个非常重要的要求,这将很快完成!)

使用 JSON 文件和/或 HTTP 请求配置匹配。(这也是一个重要的要求,一旦以上几点关闭,就会实施!

在 Webhook 上发送事件和数据。(我将尽快对此进行研究,以便我们可以围绕 MatchZy 构建一个 Web 面板,通过该面板我们可以配置匹配并接收事件和统计数据。

地图 Ban/Pick

开发者须知

MatchZy插件使用C#语言编写,如果你想要参与插件开发,你需要安装C#开发环境 .NET 7.0 SDK ,安装完毕之后,你可以做一下操作

克隆MatchZy的git仓库 修改 MatchZy.csproj 文件,然后将正确的 CounterStrikeSarp.API.dll 的文件路径写到对应位置:(CounterStrikeSarp.API.dll 文件来自 CounterStrikeSharp 插件, 在上面的安装步骤里面提过) 在终端输入 dotnet restore 来恢复和安装依赖 修改代码(按你的想法来 在终端输入 dotnet publish ,然后你会得到一个叫做bin的文件夹,这就是插件编译之后的程序目录 定位到 bin/Debug/net7.0/publish/ 然后把所有的内容复制到服务器的 csgo/addons/counterstrikesharp/plugins/MatchZy (CounterStrikeSharp.API.dll 和CounterStrikeSharp.API.pdb 这两个文件可以跳过不覆盖) 完成! 你可以测试你的修改,也欢迎对本插件贡献你的代码!:p 下载地址:

https://cowtransfer.com/s/2bc1cec3c30c4b 点击链接查看 [ matchzy-0.2.0-with-cssharp.zip ] ,或访问奶牛快传 cowtransfer.com 输入传输口令 44hh00 查看;

参考:

shobhit-pathak/MatchZy: MatchZy is a plugin for CS2 (Counter Strike 2) for running and managing practice/pugs/scrims/matches with easy configuration! (github.com) cs2


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3