1.FTP
这里不细讲怎么创建了,百度一下怎么搞,有宝塔面板的直接打开宝塔的ftp创建一个就行

然后创建一个demos文件夹

2.插件
如何使用
- 确认您的服务器上正在运行SourceMod和MetaMod:Source。
- 下载此插件并将其解压缩到服务器上的 /csgo 文件夹中。
- 设置 FTP 选项。
addons/sourcemod/configs/RemoteTargets.cfg
"demos"
- 确保插件正在运行(
sm plugins list
)
- 它应该在执行后开始上传演示,并在
完成上传后在 allchat 中打印下载链接
"RemoteTargets"
{
"demos"
{
"host" "(你的服务器ip)"
"port" "21(ftp的端口,没有改过就不用管)"
"user" "(ftp用户名)"
"password" "(ftp密码)"
"path" "/demos(上传到ftp文件夹的路径,如果你像我上面那样在ftp里创建了demos文件夹就不用再动了)"
"ssl" "none(ssl,没有改过就不用管)"
"CreateMissingDirs" "1"
"format" "ftp://%user:%pw@%host:%port%path%file(格式,这个不用管)"
"dl_url" "http://example.org/your/path(游戏结束后展示的demo下载直链)
}
}
到插件配置完的这一步,如果你是富哥,服务器带宽巨高其实可以直接搭建下载站了,不用再整同步onedrive
3.同步onedrive(此方法同步的压缩文件会失效,推荐3.3)
打开这个网址,点击下面的立即试用FTP 服务器到 OneDrive for Business | Microsoft Power Automate

点开之后登录,登录完之后跳转到下面这个页面,自己填,除了那几个必须的,其他没有特殊需求的都不用填或按

这里登录一下自己的账号

跳转到这个页面,整好之后点保存

保存好之后就是这样的

你在ftp里的demos文件夹里上传任何文件都会同步上传到onedrive中你指定上传的文件夹,可搭配oneindex搭建demo下载站利用Onedrive 网盘账号和OneIndex搭建一个免费的下载站-服务器搭建-CSGO插件分享-CSGO资料库 (csgocn.net)
到这里就已经配置好了,但是这个触发不够灵敏,通常都需要你的demo在ftp文件夹待几十分钟才会同步,所以还有一个方法(屌方法)
3.2利用复发计划解决不够灵敏的问题
打开automate,选择新建流→计划的云端流

随便取一个名字,重复间隔头铁的可以选择1分钟

点新步骤之后,选触发器,然后搜索ftp,选第二个sftp的当添加或修改文件时

自己连接一下,不赘述(连接上之后腾讯云会报异常登录服务器,其实就是automate的连接,不用管)

连接好之后选择文件夹,然后再点新步骤,在操作里找到创建文件


整好之后每分钟都会运行一次,这样是更灵敏了点,但是会重复上传文件,也不知道有啥副作用,头铁的可以试试
3.3个人版onedrive的操作
选新建流,自动化云端流,触发器选sftp的当添加或修改文件时

然后自己连接配置文件夹(像3.2那里一样),配置好之后选新步骤,搜索创建文件,往下翻,底下有onedrive的那个就是

选择之后配置的方法跟3.2那里讲的是一样的,不赘述了
一些convars
这个power automate有个很艾斯比的问题,就是超过50m的文件它会自动略过,但是,插件自带了一个bzip2,这就非常牛X了
演示压缩
Bzip 已经包含在内,您只需设置一个介于两者之间的值。
-> 无压缩
->最大压缩sm_tautodemoupload_bzip2
0-9
0
9
配置一下这个压缩程度,上传demo时就会上传压缩后的文件了
还有一个上传demo后的消息提示,我讲一下
更改消息格式
sm_teasyftp_announce_format "%map: %dl_url"
用%map
%dl_url
& %host
举个例子sm_teasyftp_announce_format
"地图名%map,demo下载地址%dl_url"
那么上传后显示的消息就是"地图名de_xxx,demo下载地址http://example.org/your/path/***.dem.bz2
"
这个dl_url就是你在config中写的下载链接