
R.E.P.O.
You are viewing a potentially older version of this package. View Latest Version

markdown
作者: dyxc666
版本: v1.7.0
最后更新: 2026年3月6日
注:本模组代码由 DeepSeek AI 辅助生成。
本模组主要针对单人游戏环境开发和测试,虽然核心机制(价格随机化、配置同步)理论上可在多人游戏中工作,但未经充分多人环境测试。如果你在多人游戏中遇到任何问题(如同步失败、配置不生效等),欢迎在模组页面反馈,但请注意目前无法保证完美兼容性。
一个为《REPO》游戏设计的独立模组,专注于在第一次抓取贵重物品时随机化其价格,增加游戏的变数和重玩价值!主机配置自动同步给所有客户端,确保多人游戏中体验完全一致。
v1.7.0 新增:公开 API
其他模组开发者可以订阅价格随机化事件,或主动查询物品的原始/随机价格,方便实现扩展功能(如网络同步、视觉反馈、数据分析等)。
RandomValueMod.dll 放入 BepInEx/plugins/ 文件夹。启动一次游戏后,配置文件位于:
BepInEx/config/RandomValuablePrice/RandomValuablePrice.cfg
| 配置项 | 说明 | 默认值 |
|---|---|---|
随机化物品价格 |
是否随机化贵重物品的价格 | true |
最小价格倍率 |
价格的最小倍率(0.1–5.0) | 0.5 |
最大价格倍率 |
价格的最大倍率(0.5–10.0) | 2.0 |
启用黑名单模式 |
启用黑名单,匹配的物品将不被随机化 | true |
黑名单关键词 |
逗号分隔的关键词列表(如 keycard,computer) |
空 |
启用白名单模式 |
启用白名单,只有匹配白名单的物品才会被随机化 | false |
白名单关键词 |
逗号分隔的关键词列表 | 空 |
排除高价物品 |
不随机化价格超过阈值的物品 | false |
高价物品阈值 |
价格超过此值的物品不随机化 | 50000 |
现金袋随机化 |
如果为true,则现金袋也会被随机化 | false |
详细日志输出 |
输出每个物品修改前后的具体数值 | false |
强制刷新UI |
尝试强制刷新UI显示 | true |
注意:本模组已移除对 REPOConfig 的依赖,所有配置均通过独立的配置文件进行。如需修改,请直接编辑上述文件。
其他模组可以通过引用此模组的 DLL 或使用反射来访问以下 API:
using RandomValuablePrice;
事件
csharp
public static event Action<ValuableObject, float, float> OnItemRandomized
触发时机:当贵重物品被成功随机化后触发。
参数:
ValuableObject vo:被随机化的物品对象。
float oldPrice:随机前的原价。
float newPrice:随机后的新价。
方法
csharp
public static float GetItemPrice(ValuableObject vo)
描述:获取指定贵重物品的当前价格。
返回值:物品当前价格(dollarValueCurrent 字段的值)。
使用示例
csharp
// 订阅价格随机化事件
RandomValueAPI.OnItemRandomized += (vo, oldPrice, newPrice) => {
Debug.Log($"物品 {vo.name} 价格从 {oldPrice} 变为 {newPrice}");
};
// 主动查询价格
float price = RandomValueAPI.GetItemPrice(someValuable);
🎮 使用方法
单人游戏
安装模组后启动游戏。
进入任意关卡。
抓取贵重物品时会自动随机化其价格,并显示提示。
多人游戏
主机安装并配置模组,其配置会自动同步给所有客户端。
客户端无需安装模组(但安装后也可获得配置同步)。
所有玩家独立计算价格,结果一致(无需网络传输价格值)。
❓ 常见问题
问:为什么我的配置项不在 REPOConfig 里显示?
答:本模组已移除对 REPOConfig 的依赖,配置项存储在独立配置文件中,请直接编辑 BepInEx/config/RandomValuablePrice/RandomValuablePrice.cfg。
问:如何在自己的模组中使用 API?
答:在您的模组项目中添加对本模组 DLL 的引用,然后使用 RandomValueAPI 类即可。
问:v1.7.0 兼容之前的版本吗?
答:完全兼容,v1.7.0 仅增加了 API,未改动任何原有功能。
问:这个模组支持多人游戏吗?
答:理论上支持,但由于开发环境限制,本模组未经多人环境充分测试。如果你在多人游戏中遇到问题,欢迎反馈,但无法保证完美兼容。
🙏 致谢
AdvancedREPO.Config 模组(作者:PotatoePet)提供的配置同步框架
AI 辅助来自 DeepSeek