超级玩家
 
- 贡献度
- 15
- 金元
- 9098
- 积分
- 970
- 精华
- 0
- 注册时间
- 2007-2-14
|
# 烽沙 (FengSha) — MOProject 资源倍率 Mod
自动把游戏里**仓库 / 库存**中资源的增长数值放大 N 倍,并支持单项 / 全局上限防爆仓。
纯 UE4SS Lua 脚本,**无需任何图形界面、无需重启游戏**,改配置文件即生效。
> 适用游戏:**MOProject**(虚幻引擎 5.6 / DX12)。
> 其他 UE 游戏**不保证可用**——本 mod 依赖游戏内 `StorageBaseComponent` 这个组件,换游戏需要重新适配。
---
## 一、使用前准备(非常重要)
### 1. 安装 UE4SS
1. **下载**:到 GitHub `UE4SS-RE/RE-UE4SS` 的 Releases 页,下载较新的 **v3.x** 版本(要支持 UE5.6 的构建)。
解压后得到一个 `ue4ss/` 文件夹,以及几个"代理 DLL":`dwmapi.dll`、`xinput1_3.dll`、`version.dll`。
2. **放 `ue4ss/` 文件夹**:把 `ue4ss/` 整体复制到游戏目录 `MOProject/Binaries/Win64/` 下,与游戏 exe 同级:
```
.../Binaries/Win64/ue4ss/UE4SS.dll
.../Binaries/Win64/ue4ss/UE4SS-settings.ini
.../Binaries/Win64/ue4ss/Mods/
```
3. **放注入代理 DLL(最容易漏)**:从解压出的 UE4SS 包里挑 **一个** 代理 DLL(推荐 `dwmapi.dll`),
复制到 `MOProject/Binaries/Win64/` 根目录,**紧挨着游戏 exe**:
```
.../Binaries/Win64/dwmapi.dll
.../Binaries/Win64/MOProject-Win64-Shipping.exe
```
> ⚠️ 只复制 `ue4ss/` 文件夹而不放这个 DLL,UE4SS 不会注入——游戏照常启动,但 mod 全不加载。
4. **首次启动生成配置**:正常启动一次游戏,UE4SS 会自动生成 `UE4SS-settings.ini`、`UE4SS.log`(可能弹控制台窗口),然后关掉游戏。
5. **(UE5.6 必做)修 AOB 签名**:把本包的 `UE4SS_Signatures/StaticConstructObject.lua` 覆盖到
`.../ue4ss/UE4SS_Signatures/StaticConstructObject.lua`,否则启动会报 "Scan failed"。
6. **验证**:重启游戏,看 `UE4SS.log`(或控制台)里有没有 `[烽沙] 资源倍率 mod 已加载` 这行。
### 2. 修复 UE5.6 的 AOB 签名(必做,否则 UE4SS 会报 "Scan failed")
MOProject 是 UE5.6,UE4SS 默认的 `StaticConstructObject` 签名扫不出来。
本包已附带修复版签名,把它复制过去即可:
```
把本包的 UE4SS_Signatures/StaticConstructObject.lua
覆盖到 游戏目录/.../ue4ss/UE4SS_Signatures/StaticConstructObject.lua
```
(如果你自己装 UE4SS,也可以从 UE4SS 的 5.6 分支 / 社区签名获取同名文件。)
### 3. 在 mods.txt 启用本 mod
打开 `ue4ss/Mods/mods.txt`,确保里面有这一行(数字 `1` 表示启用):
```
FengSha : 1
```
> ⚠️ mod 文件夹名**必须是英文**(`FengSha`)。中文名 UE4SS 识别不了,会直接不加载。
---
## 二、安装本 mod(两步)
把本包里的 `FengSha/` 文件夹**整体复制**到游戏的:
```
游戏目录/.../ue4ss/Mods/FengSha/
```
最终结构应如下(缺哪个补哪个):
```
ue4ss/Mods/FengSha/Scripts/main.lua
ue4ss/Mods/FengSha/config.txt
```
---
## 三、怎么用(改配置文件,最省事)
1. 用**记事本**打开 `ue4ss/Mods/FengSha/config.txt`
2. 改下面的数字,保存(Ctrl+S)
3. 回到游戏,**约 2 秒后自动生效**,不用开控制台、不用重启
配置文件示例:
```ini
MULTIPLIER=10 # 倍率:资源每增长 1 个,实际变 10 个
ENABLED=1 # 1=开 / 0=关
DEFAULT_CAP=999 # 默认单项上限(未单独设置的资源用这个)
VERBOSE=0 # 0=安静 / 1=调试(打印每次扫描日志)
CAP_47=500 # 单项上限示例:把"水"(编号47)限制为 500
# —— 货币(刀币)增量倍化 ——
CMULT=10 # 刀币倍率:每增长 1 个刀币,实际变 10 个
CENA=1 # 1=开 / 0=关
CCAP_59=999999 # 刀币上限(0=不限);59 是刀币的 ItemType 编号
```
**资源编号对照**(完整 1~101 见 `main.lua` 第 15~125 行,每个都带中文注释):
| 编号 | 资源 | 编号 | 资源 | 编号 | 资源 |
|----|----|----|----|----|----|
| 1 | 木头 | 4 | 铁矿 | 5 | 铜矿 |
| 8 | 铁锭 | 15 | 石头 | 16 | 黏土 |
| 17 | 砖 | 30 | 黍(粮) | 34 | 豆 |
| 44 | 兽肉 | 46 | 枣 | 47 | 水 |
| 66 | 草药 | 90 | 盐 | 41 | 柴火 |
| 42 | 木炭 | 60 | 手推车 | 61 | 马车 |
设置单项上限就写 `CAP_<编号>=<数值>`,例如 `CAP_4=9999`。
---
## 四、快捷键(控制台/GUI 打不开时也能用)
| 按键 | 作用 |
|----|----|
| **F7** | 循环切换倍率:1 → 2 → 5 → 10 → 20 → 50 → 100 |
| **F11** | 开 / 关倍率总开关 |
| **F8** | 立即扫描一次(库存 + 货币),并重新读取 config.txt |
| **F9** | 诊断快照:列出所有仓库物品(确认资源编号/上限) |
| **F10** | 货币诊断:列出刀币等货币列表(确认 ItemType 59 是否正确) |
| **F12 / F6** | 在控制台打印当前配置(仅当控制台可用时) |
> 刀币说明:刀币(KnifeCoin)是游戏的一种独立货币,存在 `ItemSubsystem.CurrencyItemList` 里,
> 与库存物资分开。它的内部编号是 **ItemType 59**,本 mod 默认只对刀币做增量倍化。
> 想同时倍化其它币种,把它的编号加入 `main.lua` 的 `CURRENCY_TARGETS` 表,或用 `CCAP_<编号>` 设上限。
---
## 五、常见问题
**Q:启动后 UE4SS 报 "Scan failed" / 找不到函数?**
A:99% 是缺 UE5.6 的 AOB 签名。按「一、第 2 步」把 `StaticConstructObject.lua` 覆盖过去。
**Q:mod 没加载 / 没效果?**
A:检查 ① `mods.txt` 有没有 `FengSha : 1`;② 文件夹名是不是英文 `FengSha`;
③ UE4SS 控制台里有没有 `[烽沙] 资源倍率 mod 已加载` 这行日志。
**Q:想完全静音日志?**
A:config.txt 里设 `VERBOSE=0`(默认就是),只会在配置变化时提示。
**Q:控制台出现 `attempt to compare TrivialObject with number` 红色报错?**
A:这是 UE4SS 反射偶尔返回包装对象而不是纯数字导致的。当前版本已统一做数值转换,若你还看到,请确认用的是本包里的 `FengSha/Scripts/main.lua`(v8 修复版),并 Restart All Mods 重载。
---
## 六、卸载
删掉 `ue4ss/Mods/FengSha/` 文件夹,并把 `mods.txt` 里的 `FengSha : 1` 改成 `0` 或删掉该行即可。
(本 mod 只读取 / 写回游戏内存中的库存数值,不修改任何游戏文件。)
|
|