This wiki is a read-only version of the Stardew Valley Wiki. The official editable wiki maintained by ConcernedApe can be found at stardewvalleywiki.com

Modding:Player Guide/Getting Started

From Stardew Valley Wiki
Jump to: navigation, search
Player's guide to using mods SMAPI mascot.png


Do you want to play Stardew Valley with mods? This guide is for you!

Intro

A "mod" is just a package of files which changes Stardew Valley in some way. Mods can add features (like showing NPCs on the map), change game mechanics (like making fences decay more slowly), make cosmetic changes (like making your house look like a hobbit home), and more.

Using mods is easy! You just need to...

  1. Install SMAPI. That's the mod loader for Stardew Valley — it launches the game with mod support and lets mods interact directly with the game code. It's safely installed alongside your normal game, and you can uninstall it anytime.
  2. Unzip mods into your Mods folder.

See frequent questions below, or keep reading to get started!

Getting started

Install SMAPI

First you'll need to install the mod loader, SMAPI. Click the right link for more info:

Find mods

Next you can download the mods you want. Some suggestions:

  • most popular mods on Nexus;
  • recommendations for a first playthrough;
  • search for mods here:
    site description
    Nexus Mods Most mods are released here.
    An account is required, but it's free; just don't choose a package when you register. You can use their Vortex client (Windows only) to install/manage your mods, or download them manually.
    ModDrop Many mods are released here.
    You can use their ModDrop client (Windows only) to install/manage/auto-update your mods, or download mods directly from the website without registration needed.
    Chucklefish mods Some older mods are released here, though most are also on Nexus or ModDrop.
    Official forums Some mods are released here, though most are also on Nexus or ModDrop.
    Chucklefish forums Some older mods are posted directly in the Chucklefish forums. Some hidden gems are only here, but finding them can be a challenge.

Before you download a mod, check if it works with the latest version of the game. For SMAPI mods, see the mod compatibility list; SMAPI will also automatically disable most incompatible SMAPI mods. You're on your own for XNB mods; try checking the mod description or comments for those.

Find your game folder

Next you'll need to open your game folder (the one containing Stardew Valley's .exe file). Here's where to find it by default:

Platform Path
Windows GOG: C:\Program Files (x86)\GOG Galaxy\Games\Stardew Valley
or C:\GOG Games\Stardew Valley
Steam: C:\Program Files (x86)\Steam\steamapps\common\Stardew Valley
Android /storage/emulated/0/StardewValley/Mods
(Usually file manager apps show StardewValley in the root)
Linux GOG: ~/GOGGames/StardewValley/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

Not there? Here are some other ways to find it:

more options 
Option 2: find it through SMAPI
  1. Launch SMAPI.
  2. Enter this command in the SMAPI console (the second window that opens with the game):
    show_game_files
Option 3: find it through Steam
  1. Open the Steam client.
  2. Right-click on Stardew Valley.
  3. Click Properties.
  4. Click the Local Files tab.
  5. Click the Browse Local Files... button to open the game folder.
Option 4: find it through GOG Galaxy
  1. Open the GOG Galaxy client.
  2. In the game sidebar, right-click on Stardew Valley.
  3. Choose Manage Installation > Show Folder to open the game folder.

Install mods

To install a mod, just unzip it into the Mods folder in your game folder. Make sure each mod has its own subfolder, without trailing numbers. For example, if you have a PineapplesEverywhere mod, you should have a file structure like this:

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

Tips:

  • If you have a lot of mods, you can optionally organise them into subfolders. SMAPI will automatically search inside each folder until it finds one with files.
    Stardew Valley/
       Mods/
          Fruit mods/
             PineapplesEverywhere/
                PineapplesEverywhere.dll
                manifest.json
             ApplesNowhere/
                ApplesNowhere.dll
                manifest.json
    
  • To disable a folder, just add a dot in front of the folder name (like .disabled mods). If Windows doesn't let you do that, put a dot at the end too and it'll let you (like .disabled mods.).
  • Download mods into a folder other than Mods, unzip them there, and then move their folder(s) into Mods. That helps prevent errors related to extra files.
  • If you have a folder that looks like PineapplesEverywhere-1234567890, check inside it for the actual mod folder. Folders named like this often have more folders and possibly readme files inside them.

Configure mods

Some mods have a config.json file in their mod folder, which lets you customise the mod settings. The file is usually created the first time you launch the game with that mod installed.

To edit the config.json file, just open it in a text editor. Make sure the game isn't running when you edit it, or your changes might not take effect. See a basic guide to JSON; basically make sure your values are surrounded by quotes (like "value"). You can use this JSON validator to make sure the format is correct.

Update mods

To update a mod, just replace its files with the new versions (making sure to keep generated files like config.json).

More detailed steps:

  1. Download the new mod version.
  2. Check the mod page for any special update instructions.
  3. Unzip it somewhere else (not in your Mods folder).
  4. Open the mod's old and new folders, so the manifest.json is visible in both.
  5. Copy all the files/subfolders from the new folder into the old folder.

Remove mods

Delete a mod from the Mods folder to uninstall it. Make sure to check the mod page in case it mentions any special uninstall instructions.

XNB mods

XNB mods replace files in your game's Content folder with custom versions. If a mod has some .xnb files and no manifest.json, it's an XNB mod. This is an older type of mod that's no longer recommended, but see Modding:Using XNB mods if you're still interested.

Frequent questions

Which platforms allow mods?

Mod support for each platform:

Platform Mod support
PC Linux ✓ fully supported
Mac ✓ fully supported
Windows ✓ fully supported
console Nintendo Switch ✖ no mod support
PS4 ✖ no mod support
XBox One ✖ no mod support
mobile Android ✓ most mods supported
iOS ✖ no mod support

Almost all mods will work on any supported platform, since SMAPI rewrites them for compatibility.

Can mods corrupt my save?

Yes, but it's extremely rare. Only a few mods affect your save file at all. If you avoid those, mods are very unlikely to corrupt your save file. In most cases, you can fix save corruption by undoing the last save.

If you're worried, just back up your save files occasionally. That's strongly recommended even if you don't use mods, since save corruption is almost always caused by the game itself. SMAPI also creates a daily backup of your saves automatically; you can retrieve those from the Mods/SaveBackup folder.

Can I stop using mods later?

Yep. With a few exceptions (see previous question), mods don't directly affect your save file so you can stop using them anytime.

Do mods disable Steam achievements?

Steam achievements work fine, as long as you launch SMAPI through Steam. Make sure you follow the install instructions to configure Steam on Windows (no Steam changes needed on Linux or Mac). If the Steam overlay works, the achievements should work too.

Do mods work in multiplayer?

Yep, but it depends on the mod. Usually each player can have their own mods, and you can mix modded and vanilla players. Some mods don't work (or work poorly) in multiplayer, or affect other players too. Try checking the mod description for details about multiplayer (often under a 'compatibility' header).

Here are some approximate rules for mods that don't specify:

type of mod effects summary
Content Patcher depends See Multiplayer in the Content Patcher readme (applies for XNB mods too).
Map replacements local That includes mods which replace an existing map (without adding special logic with SMAPI). These are only visible to players who install them. Players without the custom map will see the normal map and will be subject to the normal bounds (e.g. they may see other players walk through walls, but they won't be able to follow).
Custom items global That includes new crops, fruit trees, craftables, cooking recipes, furniture, wallpapers and floors, weapons, rings, clothing, and hats. Any mod that adds completely new items that don't exist in the base game needs to be installed by all players. If anyone is missing a custom item mod, it can cause crashes, give you error items, break your save, or stop farmhands from joining.
Custom locations global That includes new locations and buildables added by TMXL or other frameworks. All players should have the same location mods. Entering a custom location that not everyone has installed can cause crashes. Buildables can only be built by the main player.
Custom NPCs global That includes any mod that adds new characters to the game. All players should have the same custom NPCs installed to avoid issues. Farmhands are currently unable to see custom NPCs at festivals (this is due to be fixed in an upcoming version of Content Patcher). Farmhands also can't marry custom NPCs; the host is able to do that with no issues.
Visual changes depends That includes custom portraits and sprites, custom farmer appearance, recolors, etc. Most of these mods only affect the players who installed them. Other players won't be affected. If both players have the same mods, they'll see the same visual changes. The exception is Content Patcher farmer appearance mods that add, rather than recolor, the existing sprites. All players need to have the same amount of new sprites (e.g. hairstyles or shirts) or there can be visual bugs for other players. On older versions of SMAPI, this can cause crashes.
"Cheat"/"efficiency" mods local That includes mods that increase player speed, make farm tasks easier, give infinite energy, spawn items, etc. Other players will see the effects, but won't be able to use the mod unless they have it installed. It won't affect other players.
Time changes global That includes any mod which pauses time, changes the current time, or changes the rate of time. These mods only work when installed by the main player, but will affect all players. They will have no effect when used by farmhands.
Custom UI local That includes mods that add new icons, tooltips, and menus. These mods only affect the players who installed them. Other players won't be affected.
World changes global That includes any mods which edit things in the world — durable fences, monster stat changes, etc. These mods affect all players, no matter who installs them.
Other mods depends See the mod's description for details, or ask the author.

What is SMAPI?

SMAPI is the mod loader for Stardew Valley. It works fine with GOG and Steam achievements, it's compatible with Linux/Mac/Windows and (unofficially) Android, you can uninstall it anytime, and there's a friendly community if you need help. SMAPI is required for most types of Stardew Valley mod.

SMAPI does a lot for you. For example, it will...

  1. Load mods into the game and provide APIs they can use. Many types of mod aren't possible without SMAPI.
  2. Rewrite mods for crossplatform compatibility, so you can use almost any mod on any platform.
  3. Intercept errors. If a mod crashes or causes an error, SMAPI will intercept the error, show the error details in the console window, and in most cases automatically recover the game.
  4. Provide update checks. SMAPI automatically alerts you when a new version of a mod is available.
  5. Provide compatibility checks. SMAPI automatically detects when a mod is incompatible and disables it before it causes problems.

Where are my...

Can I have different mod groups?

Yep, SMAPI has built-in support for different mod groups. The instructions may seem complex, but it's easy once you get the hang of it:

Platform Instructions
Windows
  1. Create a separate folder for each mod group in your game folder, like Mods and Mods (multiplayer).
  2. Create a shortcut to the StardewModdingAPI.exe file.
  3. Right-click the shortcut, choose Properties, and add this to the end of the Target field: --mods-path "Mods (multiplayer)" (changing folder name as needed). Don't delete any of the existing text in that field! This should be added to the end of what's already there. Done correctly, it should look something like "your-path-here\SteamLibrary\steamapps\common\Stardew Valley\StardewModdingAPI.exe" --mods-path "Mods (multiplayer)".
  4. Double-click that shortcut to launch SMAPI with the specified mod folder.
Windows (Steam)
  1. Create a separate folder for each mod group in your game folder, like Mods and Mods (multiplayer).
  2. Create a shortcut to your steam.exe file.
  3. Right-click the shortcut, choose Properties, and add this to the end of the Target field: -applaunch 413150 --mods-path "Mods (multiplayer)" (changing folder name as needed). Don't delete any of the existing text in that field! This should be added to the end of what's already there. Done correctly, it should look something like "your-path-here\Steam\steam.exe" -applaunch 413150 --mods-path "Mods (multiplayer)".
  4. Optionally you can click the "Change Icon..." button and browse to your Stardew Valley folder to change the icon of the shortcut from the Steam icon to the Stardew Valley Icon.
  5. Double-click that shortcut to make Steam launch SMAPI with the specified mod folder and all steam features.
Linux
  1. Create a separate folder for each mod group in your game folder, like Mods and Mods (multiplayer).
  2. Create a file like SMAPI_multiplayer.sh on your desktop.
  3. Edit the file and set the text to this (change the folder name as needed, and replace /path/to/StardewValley with the full path to the StardewValley file in your game folder):
    #!/bin/bash
    SMAPI_MODS_PATH="Mods (multiplayer)" /path/to/StardewValley
    
  4. Mark the file executable (see instructions for Linux or Mac).
  5. Double-click the script to launch SMAPI with the specified mod folder.
Mac
  1. Create a separate folder for each mod group in your game folder, like Mods and Mods (multiplayer).
  2. Create a file SMAPI_multiplayer.command on your desktop.
  3. Edit the file and set the text to this (change the folder name as needed, and replace /path/to/StardewValley/StardewModdingAPI.bin.osx with the full path to the StardewModdingAPI.bin.osx file in your game folder):
    /path/to/StardewValley/StardewModdingAPI.bin.osx --mods-path "Mods (multiplayer)"
    
  4. Example: ~/Library/Application\ Support/Steam/steamapps/common/Stardew\ Valley/Contents/MacOS/StardewModdingAPI.bin.osx --mods-path "Mods (multiplayer)"
  5. Mark the file executable (see instructions for Linux or Mac).
  6. If you get the error: "The file “SMAPI multiplayer.command” could not be executed because you do not have appropriate access privileges. To view or change access privileges, select the file in the Finder and choose File > Get Info." Then use the following code in the terminal: chmod u+x /path/to/SMAPI multiplayer.command to give yourself these access privileges.
  7. Double-click the script to launch SMAPI with the specified mod folder.
Mac (Steam)
  1. Create a separate folder for each mod group in your game folder, like Mods and Mods(multiplayer). Note there shouldn't be a space between "Mods" and "(multiplayer)".
  2. Create a file SMAPI_multiplayer.command on your desktop.
  3. Edit the file and set the text to this (change the folder name as needed, and replace /path/to/steam_osx with the full path to the steam_osx file (you can find the path for steam_osx by using sudo find / -name steam_osx):
    /path/to/steam_osx -applaunch 413150 --mods-path "Mods(multiplayer)"
    
  4. Example: /Applications/Steam.app/Contents/MacOS/steam_osx -applaunch 413150 --mods-path "Mods(multiplayer)"
  5. Mark the file executable (see instructions for Linux or Mac).
  6. If you get the error: "The file “SMAPI multiplayer.command” could not be executed because you do not have appropriate access privileges. To view or change access privileges, select the file in the Finder and choose File > Get Info." Then use the following code in the terminal: chmod u+x /path/to/SMAPI multiplayer.command to give yourself these access privileges.
  7. Double-click the script to make Steam launch SMAPI with the specified mod folder and all steam features.

On Windows only, the ModDrop mod manager also supports up to three 'mod loadouts' which you can switch between.