这是一个 SPT 服务端(Server)模组,用于拦截/控制游戏客户端对服务器 Bundle 文件(材质/模型等资源包)缓存下载 的请求。
功能
1. 彻底拒绝下载 ( rejectDownloads: true ):当客户端请求 Bundle 资源时,服务端直接返回 HTTP 403 Forbidden ,不发送任何资源数据,从而阻止客户端建立/更新 Bundle 缓存。
2. 可选限速 ( enableDownloadSpeedLimit / downloadSpeedLimitKbPerSecond ):配置中预留了按 KB/s 限速的选项(默认 1024 KB/s),用于网络带宽受限的场景。
配置存放在模组目录下的 config.jsonc ,首次运行会自动生成默认配置,且支持 JSON 注释(jsonc)。(没搓好但是不打算删)
原理
核心是 BundleDownloadPatch.cs 中的一个 Harmony Prefix 补丁 :
– 通过 AbstractPatch 定位到 SPT 服务端路由序列化器 BundleSerializer.Serialize 方法(Bundle 下载响应的出口);
– Prefix 在方法真正执行 之前 被调用,若配置了拒绝下载,就写入 403 状态码和空 JSON 响应体,然后返回 false 短路跳过 原方法,实现”拦截”;
– 否则返回 true 放行,并在日志中记录通过/拒绝的请求路径。
开发目的:避免不兼容的客户端包登入服务器导致服务器IO开销过大造成严重卡顿(防呆不防傻)
作者的爱发电主页(别点)
隐藏内容需要回复可以看见










6啊
0.0
???????
6666666666666666666
666
66666666666
666
666666
666
好