Line 18: |
Line 18: |
| | | |
| ===How to update your mod=== | | ===How to update your mod=== |
− | # Update your mod code and assets for the changes listed below (particularly [[#Breaking changes for C# mods|''Breaking changes for C# mods'']] and [[#Breaking changes for content packs|''Breaking changes for content packs'']]). | + | The rest of this page may seem overwhelming, but fortunately most of it probably doesn't apply to your specific mods. Here's a suggested 'quick start' guide to update a mod for Stardew Valley 1.6. |
− | # If SMAPI still says your mod is incompatible, check the <samp>TRACE</samp> messages in the log file for the reason why.<br />If the logs say "''marked 'assume broken' in SMAPI's internal compatibility list''", you can increase the <samp>Version</samp> in your content pack's <samp>manifest.json</samp> file to bypass it. | + | |
− | # Test the mod in-game and make any other changes needed. | + | ; For C# mods: |
| + | :# Update the [https://www.nuget.org/packages/Pathoschild.Stardew.ModBuildConfig mod build config NuGet package] to the latest version. |
| + | :# In each <samp>.csproj</samp> project file, change <code><TargetFramework>net5.0</TargetFramework></code> to <code><TargetFramework>net6.0</TargetFramework></code>.<br /><small>(Tip: if the second line looks like <code><Project ToolsVersion=...</code> instead of <code><Project Sdk="Microsoft.NET.Sdk"></code>, you'll need to [[Modding:Migrate to Stardew Valley 1.5.5|migrate it to Stardew Valley 1.5.5]] first.)</small> |
| + | :# Rebuild the solution. |
| + | :# Fix any build errors. You can search this page for relevant info as needed. |
| + | :# Review all build warnings (particularly obsolete-code warnings), which may indicate code that broke in 1.6. |
| + | :# Increment your mod version in <samp>manifest.json</samp>.<br /><small>(Some mods may be added to SMAPI's compatibility blacklist due to runtime errors. Incrementing the mod version will fix that if so.)</small> |
| + | :# Test to make sure the mod works. |
| + | :# Skim through [[#Breaking changes for C# mods|''breaking changes for C# mods'']] and the table of contents, and check any section that might be relevant to the mod. |
| + | |
| + | ; For [[Modding:Content Patcher|Content Patcher]] packs: |
| + | :# Follow the [https://smapi.io/cp-migrate Content Patcher migration guide] until your content pack has <code>"Format": "2.0.0"</code>.<br /><small>'''Do not skip this step!''' Content Patcher will try to auto-migrate your content pack for Stardew Valley 1.6 if you don't, which can cause confusing errors if you already updated it.</small> |
| + | :# Review [[#Breaking changes for content packs|''breaking changes for content packs'']] and update the content pack as needed. |
| + | |
| + | ; For content packs which use another framework: |
| + | : See the documentation for the framework mod. Often you won't need to update the content pack if the framework mod itself was updated. |
| | | |
| ==What's new architecturally?== | | ==What's new architecturally?== |