模组:使用指南/入門

出自Stardew Valley Wiki
於 2019年8月14日 (三) 22:10 由 Music0Kirby討論 | 貢獻 所做的修訂 →‎模组会损坏我的存档吗?
跳至導覽 跳至搜尋

目錄


你想在星露谷物語里使用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. 重現這個遊戲錯誤(這樣在日誌中會記載詳細信息),然後把最新日誌文件的複製粘貼上去(請看上一部分)。