You are viewing a potentially older version of this package.
View all versions.
RFFPlus
Standalone merged mod: ReverseFriendlyFire reflect (host) + TeammatesIgnoreBullets immunity (client), all hot-reloadable via config. No Hikaria_Core / The Archive needed.
| Date uploaded | 5 days ago |
| Version | 1.0.1 |
| Download link | HawChow-RFFPlus-1.0.1.zip |
| Downloads | 3 |
| Dependency string | HawChow-RFFPlus-1.0.1 |
This mod requires the following mods to function
BepInEx-BepInExPack_GTFO
BepInEx pack for GTFO. Preconfigured and includes Unity Base DLLs.
Preferred version: 3.2.3README
RFFPlus — ReverseFriendlyFire Plus (Standalone)
合并版独立插件:反伤(主机权威)+ 玩家子弹免伤(客机可用),全部参数支持 config 配置文件热重载。
本插件不依赖
Hikaria_Core与The_Archive_UNSTABLE_TEST_ONLY(两者的旧版本已从 Thunderstore 下架,导致原 MOD 无法安装)——本插件只依赖 BepInExPack_GTFO 本体,开箱即用。
功能
免伤模式(任何端生效)
- 玩家(含哨戒炮)的子弹不再对玩家造成伤害
- 带来源过滤:只有伤害来源是「玩家」才拦截,敌人伤害完全不受影响
- 哨戒炮开火期间无条件拦截,炮台友伤 100% 覆盖
- 主机安装时保护全队(伤害在主机权威结算);客机安装时保护自己的开火(对应原 TeammatesIgnoreBullets 的特性)
反伤模式(主机权威)
- 队友被友方子弹打中时:实际承伤 = 原始伤害 × 友伤倍率;开枪者被反噬 = 原始伤害 × 反伤倍率
- 「反伤致死」可开关:反噬足以耗尽血量时直接击倒开枪者
- 哨戒炮的友伤归属到「放置者」
配置(热重载)
配置文件:BepInEx/config/RFFPlus.cfg
游戏运行中直接用记事本改这个文件并保存,立即生效,无需重启游戏(内置 FileSystemWatcher + 防抖自动 Reload)。
| 分区 | 配置项 | 默认 | 说明 |
|---|---|---|---|
| 免伤模式 | 启用玩家子弹免伤 | true | 关掉后恢复原版友伤 |
| 反伤模式 | 启用友伤反伤 | true | 反伤总开关 |
| 反伤模式 | 友伤倍率 | 0 | 被队友打到的承伤倍率,0=不掉血 |
| 反伤模式 | 反伤倍率 | 1 | 开枪者被反噬的倍率 |
| 反伤模式 | 反伤致死 | true | 反伤耗尽血量时直接击倒开枪者 |
安装
把 BepInEx/plugins/RFFPlus/RFFPlus.dll 放进 GTFO 游戏目录的 BepInEx/plugins/RFFPlus/ 下即可。
致谢 / 参考
本插件在以下优秀 MOD 的思路上重构而来,感谢原作者:
- Hikaria (Mamizu1028) — ReverseFriendlyFire 反伤逻辑参考(伤害缩放 + 主机 SendSetHealth/SendSetDead 反噬 + 哨戒炮归属放置者)
- Localia — TeammatesIgnoreBullets 客机免伤思路参考(Dam_PlayerDamageLimb.BulletDamage 拦截点)
- AuriRex — The Archive 框架(理解 GTFO IL2CPP 伤害链路的参考)
- BepInEx 团队与 GTFO 模组社区
与原版的差异
| 项 | 原 RFF 1.2.0 | RFFPlus |
|---|---|---|
| 依赖 | Hikaria_Core 0.0.7(已下架)+ The Archive fork(UNSTABLE) | 仅 BepInExPack_GTFO |
| 客机免伤 | 无 | 有(带来源过滤,敌人伤害零误伤) |
| 哨戒炮免伤 | 依赖来源判定 | 开火期无条件拦截 |
| 敌人子弹安全性 | 来源无条件强转 PlayerAgent,存在崩溃隐患 | TryCast 判型,敌人子弹零风险 |
| 热重载 | The Archive 设置界面 | 任意文本编辑器改 cfg 即时生效 |
反馈与开黑
- 问题反馈与功能建议:https://qingju.me
- 玩家开黑语音频道:小黑盒语音(https://chat.xiaoheihe.cn/in1wpsjd)
CHANGELOG
更新日志
1.0.3 — 2026-10-16
修复:主机无法关闭队友友伤。
- 根因:免伤模式此前只挂在「命中解析点」
Dam_PlayerDamageLimb.BulletDamage上;而主机权威的伤害投递路径Dam_PlayerDamageBase/Dam_PlayerDamageLocal.ReceiveBulletDamage里只跑反伤逻辑,且反伤逻辑被启用友伤反伤开关挡住。于是主机端在关闭反伤开关时,玩家子弹造成的队友伤害完全没有拦截 (友伤倍率=0也随之失效,哨戒炮的「无条件拦截」在免伤路径同样缺失)。 - 修复:免伤现在同时作用于主机权威投递路径,且在
启用友伤反伤=false时独立生效—— 主机安装即对全队生效(受害者承伤直接置 0),不再依赖反伤开关。 - 修复:哨戒炮友伤在免伤模式下同样拦截(命中解析点与权威路径两处),归属其放置者。
- 行为保持:
启用友伤反伤=true时,受害者承伤 = 原始伤害 × 友伤倍率、开枪者被反噬 = 原始伤害 × 反伤倍率、 「反伤致死」生效——与 1.0.2 完全一致;敌人伤害零影响。 - 新增:诊断日志开关
[诊断 (排查用)] 输出诊断日志(默认关闭,标记[RFFPlus][diag]), 记录每次子弹伤害命中的拦截点(limb / base / local)、来源是否为玩家、是否哨戒炮、本机是否主机,以及免伤/反伤的处理结论。排查时临时打开。 - 说明:原版 ReverseFriendlyFire 的权威路径处理是无开关的(
SNet.IsMaster之后必定按「友伤倍率」缩放,所以友伤倍率=0就能关掉全部队友子弹伤害); 1.0.2 在它外面套了一层启用友伤反伤前置判断,才导致关掉反伤就整条失效。1.0.3 恢复原版的覆盖范围,并保留独立的免伤开关。
1.0.2 — 2026-10-15
- 修正 README「频道直链」被全角括号吞进 URL 的排版问题:改为独立一行直链。
- 图标与插件本体不变。
1.0.1 — 2026-10-15
- 更新 MOD 图标(Thunderstore 列表 logo)。
- README 增加开黑语音频道入口:https://chat.xiaoheihe.cn/in1wpsjd
- 插件本体(
RFFPlus.dll)与配置项、依赖、功能行为未做任何改动。
1.0.0 — 2026-10-11
- 首次发布:合并版独立插件 —— 反伤(主机权威)+ 玩家子弹免伤(客机可用)。
- 全部参数支持 config 热重载(
BepInEx/config/RFFPlus.cfg),改完保存即时生效,无需重启游戏。 - 仅依赖 BepInExPack_GTFO,不依赖 Hikaria_Core 与 The_Archive。