Difference between revisions of "Modding:Mod compatibility"

From Stardew Valley Wiki
Jump to navigation Jump to search
(→‎SMAPI mods (obsolete): remove obsolete version mapping)
(move mod data overrides into dedicated section to simplify editing/review/maintenance)
Line 138: Line 138:
 
   |unofficial url    = https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-3.142524/page-61#post-3329038
 
   |unofficial url    = https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-3.142524/page-61#post-3329038
 
   |pull request      = https://github.com/ThatNorthernMonkey/AdjustArtisanPrices/pull/2
 
   |pull request      = https://github.com/ThatNorthernMonkey/AdjustArtisanPrices/pull/2
 
  |map remote versions = 0.01 → 0.0.1
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 268: Line 266:
 
   |unofficial url    = https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-3.142524/page-18#post-3291454
 
   |unofficial url    = https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-3.142524/page-18#post-3291454
 
-->
 
-->
 
  |map remote versions = 1.21 → 1.2.1
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 317: Line 313:
 
   |nexus id = 6894
 
   |nexus id = 6894
 
   |github  = AngelaRanna/StardewMods
 
   |github  = AngelaRanna/StardewMods
 
  |change update keys = -Nexus:6894, +Nexus:6894@AngelsExistingWeaponUpdater
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 1,132: Line 1,126:
 
   |broke in    = Stardew Valley 1.3
 
   |broke in    = Stardew Valley 1.3
 
   |pull request = https://github.com/JohnsonNicholas/SDVMods/pull/66
 
   |pull request = https://github.com/JohnsonNicholas/SDVMods/pull/66
 
  |map local versions = 1.0.1 → 1.0.2<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 1,238: Line 1,230:
 
   |status  = workaround
 
   |status  = workaround
 
   |summary  = use [[#Silo Size|Silo Size]] instead.
 
   |summary  = use [[#Silo Size|Silo Size]] instead.
 
  |map local versions = 0.0.2 → 0.0.3<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 1,694: Line 1,684:
 
   |status  = workaround
 
   |status  = workaround
 
   |summary  = use [[#Remote Fridge Storage|Remote Fridge Storage]] instead.
 
   |summary  = use [[#Remote Fridge Storage|Remote Fridge Storage]] instead.
 
  |map local versions = 1.3-1 → 1.3<!--manifest incorrect-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 2,043: Line 2,031:
 
   |status  = workaround
 
   |status  = workaround
 
   |summary  = use [[#Configure Machine Outputs|Configure Machine Outputs]] instead.
 
   |summary  = use [[#Configure Machine Outputs|Configure Machine Outputs]] instead.
 
  |map local versions = 1.2-beta → 1.2.0<!--manifest incorrect-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 2,538: Line 2,524:
  
 
   |broke in = SMAPI 3.0
 
   |broke in = SMAPI 3.0
 
  |map local versions = 1.0 → 1.1<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 3,116: Line 3,100:
 
   |status  = workaround
 
   |status  = workaround
 
   |summary  = use [[#Configure Machine Outputs|Configure Machine Outputs]] instead.
 
   |summary  = use [[#Configure Machine Outputs|Configure Machine Outputs]] instead.
 
  |map local versions = 1.1 → 1.1.1<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 5,232: Line 5,214:
 
   |nexus id = 2897
 
   |nexus id = 2897
 
   |github  = EKomperud/StardewMods
 
   |github  = EKomperud/StardewMods
 
  |map local versions = 1.0.0 → 1.0.1<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 5,551: Line 5,531:
 
   |unofficial version = 0.0.3-unofficial.1-leifericson
 
   |unofficial version = 0.0.3-unofficial.1-leifericson
 
   |unofficial url    = https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-4.156000/page-20#post-3353915
 
   |unofficial url    = https://community.playstarbound.com/threads/updating-mods-for-stardew-valley-1-4.156000/page-20#post-3353915
 
  |map remote versions = 1.0.0-1.3patch → 0.0.2-unofficial.1-pathoschild<!--CurseForge version incorrect-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 6,471: Line 6,449:
  
 
   |broke in = SMAPI 2.0
 
   |broke in = SMAPI 2.0
 
  |map local versions = 1.1 → 1.12<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 6,697: Line 6,673:
 
   |moddrop id = 631110
 
   |moddrop id = 631110
 
   |github  = minervamaga/NoMineFlyersRedux
 
   |github  = minervamaga/NoMineFlyersRedux
 
  |change update keys = -Nexus:4498
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 7,356: Line 7,330:
 
   |nexus id = 2676
 
   |nexus id = 2676
 
   |github  =  
 
   |github  =  
 
  |map local versions = 4.0 → 4.0.3<!--not updated in manifest-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 8,039: Line 8,011:
  
 
   |broke in = SMAPI 2.0
 
   |broke in = SMAPI 2.0
 
  |map local versions = 1.0.4 → 1.0.5<!--manifest not updated-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 8,657: Line 8,627:
  
 
   |broke in = SMAPI 2.0
 
   |broke in = SMAPI 2.0
 
  |map local versions = 0.9-500 → 0.9<!--manifest incorrect-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 8,801: Line 8,769:
 
   |github  = MissCoriel/Sit-n-Relax
 
   |github  = MissCoriel/Sit-n-Relax
 
}}
 
}}
 
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
 
   |name    = Siv's Marriage
 
   |name    = Siv's Marriage
Line 8,810: Line 8,777:
  
 
   |broke in = Stardew Valley 1.1
 
   |broke in = Stardew Valley 1.1
 
  |map local versions = 0.0 → 1.4<!--manifest incorrect-->
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 9,369: Line 9,334:
 
   |moddrop id = 716314
 
   |moddrop id = 716314
 
   |github  = minervamaga/StandardizedKrobus
 
   |github  = minervamaga/StandardizedKrobus
 
  |change update keys = -Nexus:5206
 
 
}}
 
}}
 
{{#invoke:SMAPI compatibility|entry
 
{{#invoke:SMAPI compatibility|entry
Line 12,553: Line 12,516:
 
===XNB mods===
 
===XNB mods===
 
See [[Modding:Using XNB mods]].
 
See [[Modding:Using XNB mods]].
 +
 +
==Mod data overrides==
 +
This section overrides the data specified in mods' [[Modding:Modder Guide/APIs/Manifest|<tt>manifest.json</tt> files]] or mod pages for SMAPI's purposes (e.g. for update checks). '''This is a specialized section; in most cases it's better to correct the mod instead.'''
 +
 +
{{#invoke:SMAPI compatibility overrides|header}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Adjust Artisan Prices
 +
  |id            = ThatNorthernMonkey.AdjustArtisanPrices, 1e36d4ca-c7ef-4dfb-9927-d27a6c3c8bdc
 +
  |update keys    =
 +
  |local version  =
 +
  |remote version = 0.01 → 0.0.1
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Almighty Farming Tool
 +
  |id            = 439
 +
  |update keys    =
 +
  |local version  =
 +
  |remote version = 1.21 → 1.2.1
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Angel's Existing Weapon Updater
 +
  |id            = AngelaRanna.ExistingWeaponsUpdater
 +
  |update keys    = -Nexus:6894, +Nexus:6894@AngelsExistingWeaponUpdater
 +
  |local version  =
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Better Shipping Box
 +
  |id            = Kithio:BetterShippingBox, Kithio.BetterShippingBox
 +
  |update keys    =
 +
  |local version  = 1.0.1 → 1.0.2<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Big Silo
 +
  |id            = lperkins2.BigSilo
 +
  |update keys    =
 +
  |local version  = 0.0.2 → 0.0.3<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Chefs Closet
 +
  |id            = Duder.ChefsCloset
 +
  |update keys    =
 +
  |local version  = 1.3-1 → 1.3<!--manifest incorrect-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Configurable Machines
 +
  |id            = 21da6619-dc03-4660-9794-8e5b498f5b97
 +
  |update keys    =
 +
  |local version  = 1.2-beta → 1.2.0<!--manifest incorrect-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Custom Linens
 +
  |id            = Mevima.CustomLinens
 +
  |update keys    =
 +
  |local version  = 1.0 → 1.1<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Dynamic Machines
 +
  |id            = DynamicMachines
 +
  |update keys    =
 +
  |local version  = 1.1 → 1.1.1<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Iridium Tools Patch
 +
  |id            = Redwood.IridiumToolsPatch
 +
  |update keys    =
 +
  |local version  = 1.0.0 → 1.0.1<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Level Up Notifications
 +
  |id            = Level Up Notifications, kd8lvt.LevelUpNotifications
 +
  |update keys    =
 +
  |local version  =
 +
  |remote version = 1.0.0-1.3patch → 0.0.2-unofficial.1-pathoschild<!--CurseForge version incorrect-->
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Multiple Sprites and Portraits On Rotation
 +
  |id            = FileLoading
 +
  |update keys    =
 +
  |local version  = 1.1 → 1.12<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = No Mine Flyers Redux
 +
  |id            = minervamaga.NoMineFlyersRedux
 +
  |update keys    = -Nexus:4498
 +
  |local version  =
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = PokeMania
 +
  |id            = TheKrominatorPokemania
 +
  |update keys    =
 +
  |local version  = 4.0 → 4.0.3<!--not updated in manifest-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Relationship Status
 +
  |id            = relationshipstatus
 +
  |update keys    =
 +
  |local version  = 1.0.4 → 1.0.5<!--manifest not updated-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Showcase
 +
  |id            = Igorious.Showcase
 +
  |update keys    =
 +
  |local version  = 0.9-500 → 0.9<!--manifest incorrect-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Siv's Marriage
 +
  |id            = 6266959802, medoli900.Siv's Marriage Mod, Siv.MarriageMod
 +
  |update keys    =
 +
  |local version  = 0.0 → 1.4<!--manifest incorrect-->
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|entry
 +
  |name          = Standardized Krobus
 +
  |id            = minervamaga.StandardizedKrobus
 +
  |update keys    = -Nexus:5206
 +
  |local version  =
 +
  |remote version =
 +
}}
 +
{{#invoke:SMAPI compatibility overrides|footer}}
  
 
==For mod developers==
 
==For mod developers==

Revision as of 16:17, 2 October 2021

Modding:Player Guide/header

SMAPI mod compatibility, July 2017 to present. See notable events which affect this chart.
broken (proprietary)
broken (open-source)
compatible

Sometimes a mod will stop working due to a major game update; SMAPI automatically disables incompatible mods. This page lists known SMAPI mods and their compatibility with the latest versions, and explains how to fix broken mods if possible.



Players: see smapi.io/mods for a more user-friendly view of this page.

For players

What to do

  1. For each mod you have installed, follow the instructions in the list below. If it's not listed, try updating to its latest version.
  2. If a mod is still failing, post a message in the coordination thread (with your SMAPI log attached) and we'll help.

SMAPI mods

  • Players: See smapi.io/mods for a more user-friendly list.
  • Modders: feel free to update this list! (See instructions.) Note that only SMAPI mods should be listed, not XNB mods or content packs.

SMAPI mods (obsolete)

This list contains mods which...

  • have their mod pages hidden/deleted;
  • or have been replaced by a change in the base game;
  • or have been explicitly abandoned by the mod author (unless they're open-source and likely to be updated unofficially).

These will likely never be updated again.

Content packs

This list shows broken content packs for SMAPI mods like Content Patcher. Only incompatible content packs are listed; working content packs are not listed (even if they have non-compatibility bugs). For legacy XNB mods, see #XNB mods.

XNB mods

See Modding:Using XNB mods.

Mod data overrides

This section overrides the data specified in mods' manifest.json files or mod pages for SMAPI's purposes (e.g. for update checks). This is a specialized section; in most cases it's better to correct the mod instead.

For mod developers

Updating a mod

See migration guides. You can...

Creating an unofficial update

To avoid conflicting with official updates, here's the recommended way to create an unofficial update. This assumes you're creating a basic update (not a continuation or reinvention), and the code is on GitHub (adjust the steps accordingly if it's elsewhere).

  1. Fork the code.
  2. Make your changes to that fork (see updating a mod).
  3. Change the version in manifest.json to the official version number plus 0.0.1, with -unofficial.1-yourName at the end.
    For example, if the current version is 1.0.0 and your name is SampleUser, change it to 1.0.1-unofficial.1-sampleUser. If you need to release a new unofficial update, just increment unofficial.1 to unofficial.2, etc. This ensures that official versions supersede unofficial ones (e.g. for update checks), and other users can release newer unofficial updates if needed.
  4. Push your changes to GitHub.
  5. Post a release package to the coordination thread with a link to your fork on GitHub.
    (If the mod uses the NuGet build package, there should be a release package named <mod name> <version>.zip in your bin folder.)
  6. Submit a pull request to the original author (if applicable).