We are in the process of transferring the hosting and maintenance responsibilities of the wiki from Chucklefish to ConcernedApe, which is why the wiki will temporarily be hosted at stardewcommunitywiki.com. Soon the official wiki will resume at stardewvalleywiki.com and will be hosted going forward by ConcernedApe. Prior to the transfer to ConcernedApe we will update this site with the date on which the transfer will occur.

使用模组:玩家常见问题

来自Stardew Valley Wiki
跳转至: 导航搜索

目录


你想在星露谷物语里使用mod吗?看这个页面吧!

介绍

什么是模组\MOD?

模组即MOD,一种以某种方式改变了Stardew Valley的文件。模组可以添加功能(如在地图上显示NPC),改变游戏机制(比如让围栏坏的更慢),改变贴图(让你的房子看起来像霍比特人的家),以及更多功能。

常见的MOD有以下两种类型:

  • SMAPI模组使用SMAPI(一个改装API)在游戏中运行代码。这些模组功能强大而方便。安装SMAPI后,您可以通过将MOD放入文件夹中进行安装,或删除文件夹来卸载它们。您可以使用多个SMAPI模组,它们很少会发生冲突。理想情况下,你可以只使用SMAPI,但也有一些事情是SMAPI做不到的。
  • XNB模组 替换游戏的数据文件(.xnb扩展)。这些都比较难以管理(您需要跟踪覆盖哪些文件,并保持备份),而且您不能使用两个更改相同文件的mods。这些通常用于在游戏中改变图像,而现在SMAPI更加困难。

如果你刚开始,你应该避免使用XNB模组。这样做更容易出错,而且很难修复。但是,您可以同时使用XNB模组和SMAPI模组。

什么是SMAPI?

SMAPI是一个模组API — 使用它可以在启动游戏的时候加载MOD,并允许MOD直接作用于游戏代码。SMAPI可以安全地与普通游戏安装在一起,并且可以随时卸载它。

我可以在Linux、Mac、Windows、主机上使用模组吗?

以下平台支持使用MOD:

平台 Mod支持
Linux ✓ 完全支持
Mac ✓ 完全支持
Windows ✓ 完全支持
Nintendo Switch ✖ 不支持MOD
PS4 ✖ 不支持MOD
XBox One ✖ 不支持MOD

自从SMAPI的兼容性的修改后,几乎所有的mod都可以在任何支持MOD的平台上使用。

模组会损坏我的存档吗?

有可能,但是非常罕见。只有几个MOD会影响你的存档(包括GetDressed、Makeshift多人游戏、随时存档)。如果你不安装这些MOD,你的存档被损坏的可能性很低。如果还是担心的话,只需要定时备份你的存档。即使不使用MOD也强烈建议你这么做,因为通常存档损坏是由游戏本身造成的。 注意:切勿在节日活动或MOD场景内进行保存存档后退出再进入存档,这会导致存档损坏。

以后可以不用模组吗?

当然。除了一些例外(见上一个问题),大多MOD不直接影响你的存档,你可以随时停止使用它们。

使用模组会影响Steam成就吗?

只要你通过Steam启动SMAPI,就可以正常取得成就。确保你已经按照安装说明来在设置Windows上的Steam(在Linux或Mac上不需要更改Steam设置)。如果能够使用Steam overlay,就也应该能获得成就。

使用模组

安装SMAPI

在使用大多数MOD之前,您需要安装SMAPI,MOD加载器: 有关安装,更新或删除SMAPI的帮助:

寻找模组

如果你正在寻找MOD,去最有人气的网站是个很好的选择;也可以看看 第一次通关推荐MOD列表

你可以在几个地方找到MOD:

网站 描述
Nexus Mods 大多数MOD都是在这里发布的。
(注册账号是免费的,不过不要注册时选择一个package。)
Chucklefish mods 部分MOD发布在这里。(其余大多数在Nexus)
ModDrop 漂亮的新网站,MOD还不多,但是通过他们的客户端可以快速安装MOD(仅Windows)。
Stardew Valley 论坛 一些MOD直接发布在论坛。一些好东西藏在这里,但发现它们可能是一个挑战。

在你下载MOD之前……

  • 它是否适用于最新版本的游戏?(SMAPI将自动禁用大多数不兼容的SMAPI MOD,但如果是你自己安装的XNB MOD,请在安装之前检查MOD的描述或注释。)
  • 不要从stardewvalleymods.net下载MOD(这里的MOD通常是过时的,因为网站为了获得广告收入未经许可转载了这些MOD)。

添加或移除模组

只需将其解压缩到你的安装目录下的子文件夹Mods中即可安装MOD。并且确保每个MOD都放在单独的子文件夹里;例如,如果你装了一个叫做PineapplesEverywhere的MOD,你的文件结构应该是这样的:

Stardew Valley/
   Mods/
      PineapplesEverywhere/
         PineapplesEverywhere.dll
         manifest.json

要卸载MOD,只需将其从Mods文件夹中删除即可。

配置模组

有些MOD在文件夹里有个config.json文件。这个文件会在第一次使用该MOD启动游戏时创建。可以让你自定义MOD的设置。

要编辑config.json文件,不要在游戏运行时编辑文件,否则更改的设置会无法生效。请看JSON的基本指南;基本上确保值被引号包围(像这样:"value")。你可使用JSON验证器来确保格式正确。

查找游戏文件

存档

请看存档页面。

游戏文件夹

"游戏文件夹"就是包含Stardew Valley.exe(Windows)或StardewValley.exe (Linux/Mac)的文件夹。以下是找到它的方法:

  1. 检查默认位置:
    平台 路径
    Windows GOG: C:\Program Files (x86)\GalaxyClient\Games\Stardew Valley
    Steam: C:\Program Files (x86)\Steam\steamapps\common\Stardew Valley
    Linux GOG: ~/GOG Games/Stardew Valley/game
    Steam: ~/.local/share/Steam/steamapps/common/Stardew Valley
    Mac GOG: /Applications/Stardew Valley.app/Contents/MacOS
    Steam: ~/Library/Application Support/Steam/steamapps/common/Stardew Valley/Contents/MacOS
  2. 如果没有在以上位置找到你的游戏,试试下面的方法:
    • 如果你的游戏是GOG版本:
      1. 打开GOG Galaxy客户端。
      2. 在游戏侧栏中,右键单击Stardew Valley
      3. 选择Manage Installation > Show Folder打开游戏文件夹。
    • 如果你的游戏是Steam版本:
      1. 打开Steam客户端。
      2. 右键单击Stardew Valley.
      3. 点击属性.
      4. 点击本地文件标签页。
      5. 点击浏览本地文件...'按钮即可打开游戏文件夹。

SMAPI日志

SMAPI日志里的信息有助于故障排除。里面包括了你的游戏版本和SMAPI版本,装了什么MOD,游戏的安装位置,发生的错误以及情况。 以下是分享SMAPI日志的方法:

  1. 在这里查找日志文件:
    平台 路径
    Windows %appdata%\StardewValley\ErrorLogs\SMAPI-latest.txt
    (可以直接粘贴"%appdata%"到地址栏,Windows知道它在哪里)
    Linux ~/.config/StardewValley/ErrorLogs/SMAPI-latest.txt
    (该文件夹默认隐藏。从文件点击Go » Enter Location并输入"~/.config".)
    Mac ~/.config/StardewValley/ErrorLogs/SMAPI-latest.txt
    (该文件夹默认隐藏。从Finder,点击Go » Go to Folder并输入"~/.config".)

    (如果你看到的是MODDED_ProgramLog.Log_LATEST.txt文件的话,说明SMAPI的版本太旧了,请升级到最新版本。)

  2. 如果你要分享这个文件...


故障排除

修复常见的错误消息

  • "哎呀!SMAPI找不到游戏了。"
    • 请确定你运行的是游戏文件夹里的StardewModdingAPI.exe(请看安装说明)
    • 你是否手动安装了SMAPI(不使用install.exe)?请确保你已复制了正确的文件:Windows上是internal/Windows ,Linux/Mac上是internal/Mono
  • "哎呀!SMAPI似乎与游戏不兼容。"
    • 确保你的游戏是1.2.30或更高版本。
  • "跳过 '...' 因为找不到manifest.json"
    • SMAPI找不到该MOD文件夹​​中的manifest.json文件。一般来说这表示安装的不是一个SMAPI MOD,所以放在Mods文件夹里无法生效。请参阅该MOD文档的安装说明。

SMAPI文件消失或杀毒软件报错

你的杀毒软件可能会删除或报错某些SMAPI文件。这是因为启发式检测 - SMAPI改写MOD使其在你的计算机上工作,恶意软件也会改写文件,所以杀毒软件才会报错。 SMAPI没有木马程序 - 这点你可以通过阅读代码反编译下载或将其上传到VirusTotal进行检查。你只需要告诉你的杀毒软件“SMAPI是安全的”就可以了;可以搜索杀毒名称+“添加白名单”来查找教程。

检查版本

  1. 确保你安装了最新版本的SMAPI
    SMAPI版本显示在SMAPI控制台窗口的顶部。
  2. 确保你的游戏是1.2.30或更高版本。
    点击游戏标题画面的问号按钮,版本会显示在左下方。

重置Content文件夹

许多问题是由Content文件夹中的文件损坏引起的(尤其是使用了XNB模组)。可以重置游戏文件来解决这个问题。

选项 1: 重置所有文件(推荐)
  1. 参见说明:Steam版GOG Galaxy版。所有的XNB MOD将被删除,SMAPI MOD不受到影响。
  2. 如果你是在Linux / Mac上使用SMAPI,请重新安装SMAPI来修复启动器。
选项 2: 重置一个文件
如果你安装了XNB模组并且想要重置一个已知会引起错误的文件,你可以恢复备份的原始游戏文件。如果你之前忘记做备份了,以下是恢复原始文件,且不会丢失修改的文件的方法:
  1. 复制一个游戏安装目录下的Content文件夹,重命名为Content-modded
  2. 重置游戏文件夹(参见说明:Steam版GOG Galaxy版)。
  3. 复制一个(重置过的)Content文件夹,重命名为Content-backup
  4. Content-modded里的内容复制到Content
这样你的content文件夹仍然是打了MOD的,但是你有了原始文件的备份。
选项 3: 排查XNB模组
如果你安装了很多XNB模组,不确定导致该出错的MOD是哪一个,并且不想删除所有XNB模组,以下是找到出错MOD的方法。
  1. 备份所有想保留的XNB模组。
  2. 重置游戏文件(参见说明:Steam版GOG Galaxy版)。所有的XNB MOD将被删除,SMAPI MOD不受到影响。
  3. 如果你是在Linux / Mac上使用SMAPI,请重新安装SMAPI来修复启动器。
  1. 启动游戏,看看问题是否解决。
  2. 一个一个的安装备份的MOD,每安装一个就打开游戏测试,以确保MOD不会出问题。

SEHException: 外部组件发生异常

你可能会在错误提示中看到类似SEHException的文字:

System.Runtime.InteropServices.SEHException (0x80004005): External component has thrown an exception.
   at new[](UInt32 )
   at Microsoft.Xna.Framework.Audio.UnsafeNativeMethods.AllocateArrayAndReadFile(String filename, Void** ppData, UInt32* pdwBufferSize)
   at Microsoft.Xna.Framework.Audio.UnsafeNativeMethods.WaveBank.CreateHandle(UInt32 hEngine, String string, Int32 length, IntPtr& pCleanup)
   at Microsoft.Xna.Framework.Audio.WaveBank..ctor(AudioEngine audioEngine, String nonStreamingWaveBankFilename)
   at StardewValley.Game1.Initialize()
   at StardewModdingAPI.Inheritance.SGame.Initialize() in D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Inheritance\SGame.cs:line 302
   at Microsoft.Xna.Framework.Game.RunGame(Boolean useBlockingRun)
   at Microsoft.Xna.Framework.Game.Run()
   at StardewModdingAPI.Program.StartGame() in D:\source\_Stardew\SMAPI\src\StardewModdingAPI\Program.cs:line 274

这个错误发生在游戏的音频启动代码中,它对音频准备就绪之前使用的资源非常敏感。这不是由SMAPI直接引起的,尽管SMAPI在启动过程中使用了一些额外的资源。

通常解决方案

  • 重启你的电脑。
  • 在打开游戏前关闭浏览器和其他程序。(可以在游戏开始后重新打开它们)
  • 删除任何更改游戏音频的MOD(例如添加更多音乐的MOD)。

其他问题

不通过SMAPI运行游戏,方法是打开游戏文件夹中的Stardew Valley.exe(Windows)或StardewValley-original(Linux / Mac)。

寻求帮助

寻找帮助

关于MOD的问题,直接问MOD作者是最好的方式。以下是与他们取得联系的最佳方式:

  1. 在MOD页面上的讨论贴链接(如果有的话);
  2. Nexus MOD页面上的“BUG”页面(如果有的话);
  3. 也可以直接与作者联系(例如使用Nexus MOD页面上的“Contact”按钮)。

如果是关于SMAPI的问题,或者你无法联系上MOD的作者,请到这里跟帖在Discord上询问。

在上报错误时需要包含的内容

让其他人弄清楚你的游戏因为什么出现错误是很困难的一件事,所以如果你尽可能的多地提供一些信息可以帮助别人解答你的问题。以下是你可以提供的最有用信息。

  1. 描述你的问题:
    • 哪个mod有问题?
    • 问题是什么?尽可能详细描述。(游戏是否卡住或闪退?是否变黑屏?还是什么都没发生?)
    • 当游戏出错时你在做什么?你有发现什么固定规律吗?例如,当你做某件事情时总是会发生崩溃。
  2. 描述你的使用环境:
    • 你是否使用MOD管理软件?如果有,写出软件名字。
    • 你在Linux,Mac还是Windows上玩?
  3. 重现这个游戏错误(这样在日志中会记载详细信息),然后把最新日志文件的复制粘贴上去(请看上一部分)。