更新(2024.1.23): 查看 https://www.nexusmods.com/valheim/mods/2509作为替代方案。
更新(2023.10.23): 2.x版本的BT与Hilder存在核心冲突。NX上发布了3.x测试版。3.x版本也有问题。Menthus工作忙起来了,所以我不确定什么时候能再见到他。不过他把3.x版本的源代码公开了。 https://github.com/MarvelProgramming/BetterTrader
通知: 3.0版本早期发布版可在文件区找到。(2023.09.17)。
门瑟斯和数字根可以在英灵殿传奇的Discord里找到
Patreon我每天花费无数小时制作、更新和修复模组,供大家使用。虽然我永远不会要求任何人为制作模组或添加功能付费,但任何支持我都非常感激。>>
来看看吧<<,你可能会发现让你眼前一亮的好处!
更好的商人原版瓦尔海姆的商人内容非常简陋,只允许你购买总共6件物品,而且出售“贵重品”的方式也很笨拙。更好的商人模组自带自定义菜单,新增了310多件物品,高度可配置,并且内置支持史诗战利品。更新持续进行中,未来还有更多内容,敬请期待!
配置随模组附带两个配置文件。
- Menthus.bepinex.plugins.BetterTrader.cfg.vanilla 高度还原原版物品买卖的数值。
- Menthus.bepinex.plugins.BetterTrader.cfg.full 其中包含游戏里大部分物品,以及门瑟斯为它们设定的数值。
从这些文件中选择一个并复制到
Valheim\BepInEx\config, 然后 将其重命名为
Menthus.bepinex.plugins.BetterTrader.cfg
你有2种编辑配置的方法:- 前往 Valheim\BepInEx\config 并打开 Menthus.bepinex.plugins.BetterTrader.cfg。
- 使用 >>BepInEx 配置管理器插件。只需下载后放入 Valheim\BepInEx\plugins 文件夹,进入游戏后按 F1 即可。
你的配置选项列表正在不断增加:
[A_General.Trader]商人等待被发现(默认为true): 为真时,商人只会出售玩家已发现的物品。
商人价格波动(默认为true): 当开启时,商人的价格会时常波动(波动幅度和商人价格波动所需的时间均可配置)。
商人价格波动幅度(默认为0.3): 决定物品价格相对其基础价格的波动幅度。
商人价格波动频率(默认为1): 每次价格波动之间相隔多少天。
商人有金币(默认为true): 为真时,商人将使用硬币购买玩家物品(商人的初始硬币数量和硬币重置前的等待时间均可配置)。
商人基础金币数量(默认为2000): 商人初始拥有的金币数量。
商人金币刷新频率(默认为2): 需要经过多少天才能将商人的金币数量刷新为[Trader Base Coin Amount]。
商人可修理物品(默认为 true): True 表示商人可以为玩家修理物品。
[B_General.ItemTypes.NameOfItemType]已启用(默认为 true): 真表示此类型的每个项目均已启用。
[C_Items.NameOfItemType.NameOfItem]购买价格(默认为100): 商人出售此物品的基础价格(如果[商人价格波动]为真,则此为波动/缩放前的价格)。
出售价格(默认100): 玩家出售此物品可获得的基础金额。
可交易(默认为 true): True表示商人会将此物品出售给玩家。
可出售(默认为 true): 当值为真时,表示玩家可以将此物品出售给商人。
无视商人等待发现(默认为 false): True 表示即使 [Trader Wait For Discovery] 为 true 且玩家尚未发现该物品,该物品也会出现在商人的购买列表中。
物品价格波动的示例:价格波动系数 = 基础价格 * 商人价格波动系数;
newPrice = basePrice + Random.Range(-priceFluctuationFactor, priceFluctuationFactor);
安装- 此模组需要 >>BepInEx整合包才能生效。请按照BepInExPack的安装说明操作,然后将BepInEx文件夹(来自Better Trader下载包)放入Valheim文件夹中。如果你之前安装过旧版本的Better Trader,请确保全部替换!
- 如果你使用其他语言游玩本游戏 你缺少物品,你必须先用英文运行游戏并加载进入一个世界。之后你可以再切换回你的语言,从那里继续。
兼容性信息如果你是模组开发者,且你制作的模组添加了自定义物品,为了让 Better Trader 能够加载它们,你必须将它们加入 Valheim 的 ObjectDB,并确保你的模组在 Better Trader 之前加载。
关于向 Valheim 的 ObjectDB 添加物品:考虑为 ObjectDB 的 Awake 和 CopyOtherDB 方法创建后缀补丁,然后访问 ObjectDB 的 m_items 字段并在那里添加你的物品。一个示例可能是:
命名空间 MyMod
{
[HarmonyBefore(new string[] { "Menthus.bepinex.plugins.BetterTrader" }), HarmonyPatch(typeof(ObjectDB))]
对象数据库_补丁
{
[HarmonyPostfix, HarmonyPatch("Awake")]
static void AwakePostfix(ObjectDB __instance)
{
__instance.m_items.Add(YourCustomItemGameObject);
}
[HarmonyPostfix, HarmonyPatch("CopyOtherDB")]
静态 void CopyOtherDBPostfix(ObjectDB __instance)
{
__instance.m_items.Add(YourCustomItemGameObject);
}
}
}
要更改模组的加载顺序:https://harmony.pardeike.net/articles/priorities.html 用于确定你的模组应在何时加载。
服务器信息更好的商人模组要求玩家安装相同(未修改)版本才能加入你的服务器。否则他们会收到“版本不兼容”错误。
Better Trader 会将服务器的配置同步给连接的玩家,但不会覆盖他们的配置文件(也就是说,如果玩家连接到一个配置不同的服务器,他们的配置文件完全不会改变,但商人所拥有的数值会反映服务器的设置)。这样做是为了让玩家可以拥有一个“单人”配置,同时也能加入配置不同的服务器。
链接GPORTALhttp://www.g-portal.com/?ref=Menthus15Patreon
https://www.patreon.com/Menthus油管https://www.youtube.com/channel/UCfVYisJ8c6p37ol154rTHnw推特https://twitter.com/OriginalMenthus