• 注册
  • 数据类 数据类 关注:601 内容:534

    (杂七杂八)【适配4.0.13】【服务端】资产分发阻断器

  • 查看作者
  • 打赏作者
  • 当前位置: ODDBA社区 > 其他 > 数据类 > 正文
  • 15
  • 数据类
  • 登堂入室

    这是一个 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啊

    回复
    略有小成
    2021

    0.0

    回复
    初窥堂奥
    VIP2

    ???????

  • whfwtf人家约的一个MOD..... 本着不能浪费的原则发出来了:)
    拉黑 2星期前 电脑端回复
  • 千绘莉:/
    拉黑 2星期前 电脑端回复
  • 回复
    略有小成

    6666666666666666666

    回复
    初窥堂奥

    666


    回复
    初来乍到

    66666666666

    回复
    略有小成

    666

    回复
    圆转纯熟

    666666

    回复
    圆转纯熟

    666

    回复
    初来乍到


    回复

    请登录之后再进行评论

    登录
    其他
  • 今日 0
  • 内容 543
  • 关注 601
  • 聊天
    关注 4

    【招募】GRIFFIN TKF项目开工 期待你的加入 || 你是否想加入格里芬书写自己与人形的故事

    捐助我们

    • 微信
    • 支付宝
  • 签到
  • 任务
  • 发布
  • 模式切换
  • 偏好设置
  • 帖子间隔 侧栏位置: