Releases: Pathoschild/SMAPI
2.11.1
This is an old release. You should use the latest version instead!
SMAPI 2.11.1 mainly disables mods which crash the game after Stardew Valley 1.3.36, and prepares for the upcoming Stardew Valley 1.4.
Requires Stardew Valley 1.3.36 or later on Linux/Mac/Windows.
2.11
This is an old release. You should use the latest version instead!
SMAPI 2.11 mainly adds support for Stardew Valley 1.3.36.
Requires Stardew Valley 1.3.36 or later on Linux/Mac/Windows.
2.10.2
This is an old release. You should use the latest version instead!
SMAPI 2.10–2.10.2 mainly improve performance for players, prepare for the upcoming Stardew Valley 1.3.35 update, update the compatibility list, make changes to help modders migrate to the upcoming SMAPI 3.0, and fix a number of issues.
Requires Stardew Valley 1.3.32 or later on Linux/Mac/Windows.
2.9.3
This is an old release. You should use the latest version instead!
SMAPI 2.9 mainly fixes various issues, prevents invalid items from crashing the game, adds new features for modders, and begins the migration to SMAPI 3.0.
Minor releases:
- 2.9.1 fixes errors in SMAPI 2.9.
- 2.9.2 prevents invalid items from crashing the game, moves content pack methods into a new content pack API, fixes a number of issues, and adds SMAPI 3.0 compatibility data to the web API and mods page.
- 2.9.3 fixes errors when hovering items in some cases, and fixes a multiplayer issue when a farmhand returns to title and rejoins.
Requires Stardew Valley 1.3.32 or later on Linux/Mac/Windows.
2.8.2
This is an old release. You should use the latest version instead!
SMAPI 2.8 mainly adds support for the latest Stardew Valley 1.3.32 and makes quality-of-life changes for players:
- added a mod compatibility page and privacy page;
- added support for organising your mods into subfolders and ignoring mod folders;
- moved most SMAPI files into a
smapi-internal
subfolder (so your game folder is less messy) and save backups into asave-backups
folder (so they're easier to find); - enabled update checks even for mods that have no update keys in many cases;
- improved various error messages to be more clear and intuitive;
- now auto-recovers crashes caused by broken modded dialogue;
- now recommends the correct SMAPI version when you have an older game version;
- improved compatibility for some Linux players;
- fixed a number of issues.
For modders, this mainly adds new features and improvements:
- added a multiplayer API and events to send/receive messages and get connected player info;
- added a data API to store mod data in the save file or app data;
- added optional verbose logging;
- added support for writing to JSON files in content packs;
- added support for semi-transparent overlays when patching images;
- added more events for the upcoming SMAPI 3.0;
- improved support for the
-unofficial
version convention (e.g.1.0-unofficial < 1.0-beta
); - enabled IntelliSense documentation when using the non-developers version of SMAPI;
- removed restriction against loading images during a draw cycle;
- fixed a number of issues.
Minor releases:
- 2.8.1 fixes an installer error for Windows players.
- 2.8.2 fixes a crash for MacOS players.
Requires Stardew Valley 1.3.32 or later on Linux/Mac/Windows.
2.7
This is an old release. You should use the latest version instead!
SMAPI 2.7 mainly makes the console output a bit more intuitive, revamps the installer, and adds a color scheme selector on Linux/Mac. For modders, it mainly adds support for reading .json
files through the content API, changes JSON serialisation for all enums, adds a --mods-path
CLI argument, and fixes a number of issues.
Requires Stardew Valley 1.3.28 or later on Linux/Mac/Windows.
2.6
This is an old release. You should use the latest version instead!
SMAPI 2.6 is a big update, with nearly 400 commits over two months. Some mods aren't updated for Stardew Valley 1.3 yet; see the mod compatibility list for the latest updates and fixes. (For mod authors: see the mod author's migration guide.)
There are too many changes to list here, but here are some highlights for players:
- updated for Stardew Valley 1.3;
- added automatic save backups;
- significantly improved SMAPI's update checks (including support for optional and unofficial updates);
- fixed default color scheme on Mac;
- fixed many bugs (including
SEHException
errors for some players); - updated compatibility list.
And some highlights for modders:
- added an input API for reading and suppressing keyboard/controller/mouse input;
- added support for custom seasonal map tilesheets;
- added support for intercepting assets loaded by temporary content managers;
- added prototype SMAPI 3.0 events;
- added a prototype mod handler toolkit for external tools;
- added code analysis to flag common issues as build warnings;
- added support for reloading NPC schedules through the content API;
- reimplemented content API and input suppression to work more consistently in many edge cases;
- many changes to support multiplayer.
Requires Stardew Valley 1.3.27 or later on Linux/Mac/Windows.
2.6-beta.21
This is an old release. You should use the latest version instead!
Summary:
SMAPI 2.6 is a huge update (with over 300 commits). There are too many changes to list here, but here are the main highlights for players:
- updated for Stardew Valley 1.3 beta;
- added save backups;
- significantly improved SMAPI's update checks (including support for optional and unofficial updates);
- fixed default color scheme on Mac;
- many bug fixes (including
SEHException
errors for some players); - updated compatibility list.
And for modders:
- added an input API for reading and suppressing keyboard/controller/mouse input;
- added support for custom seasonal map tilesheets;
- added support for intercepting assets loaded by temporary content managers;
- added prototype SMAPI 3.0 events;
- added a prototype mod handler toolkit for external tools;
- added code analysis to flag common issues as build warnings;
- added support for reloading NPC schedules through the content API;
- many changes to support multiplayer.
Notes:
- Players: some mods haven't been updated for Stardew Valley 1.3 yet. See the mod compatibility list for the latest updates and fixes.
- Modders: Stardew Valley 1.3 has significant changes. See the migration guide.
Beta release notes:
- beta 2:
- Fixed installer not copying needed file.
- beta 3:
- Fixed game freeze on shipping menu.
- Fixed farmhand crash if the host quits while they're still on the character creation screen.
- Fixed load-save error when starting the game in non-English.
- beta 4:
- Added prompt when using an old SMAPI beta.
- Added for modders:
Constants.TargetPlatform
andsemanticVersion.IsPrerelease()
. - Fixed Linux/Mac installer errors for some players.
- Fixed log parser not correctly parsing content packs with no description.
- Disabled some broken mod versions.
- beta 5:
- Fixed installer error for Windows users.
- beta 6–7 were internal releases.
- beta 8:
- Forced game to load the save synchronously.
- Rewrote location events so they make sense in multiplayer and provide more flexible data.
- Added more location events.
- Added
helper.Multiplayer.GetActiveLocations()
for modders. - Enforced mod ID format restrictions.
- Fixed errors if mod loads a PNG tilesheet when game is loading.
- Fixed input suppression not working in some cases.
- Fixed mod changes to fence sprites not being applied.
- Fixed Linux/Mac installer errors for some users.
- beta 9–11 were internal releases.
- beta 12:
- Rewrote content API to fix various texture issues (eye color swaps, mangled clothing colors, etc) and fix wedding ring recipe disappearing.
- Fixed installer console colors on Mac.
- Fixed content cache always missed when not playing in English.
- Fixed errors when horses, NPCs, or children have certain characters in their name.
- Fixed
smapi.io/install
link in installer not linking to a useful page. - Renamed
install.exe
toinstall on Windows.exe
to avoid confusion. - Added
helper.Multiplayer.GetActiveLocations()
for modders.
- beta 13:
- Added a default save backup mod.
- Improved how mod issues are displayed in the console.
- Tweaked 'outdated' error text to avoid confusion.
- Fixed
world_setseason
command not applying the game's season change logic. - Fixed log parser error with some newer logs.
- Updated compatibility list.
- beta 14:
- Updated for Stardew Valley 1.3.11.
- Fixed compatibility issue on Windows for certain mods compiled on Linux/Mac.
- Fixed bundled SaveBackup mod replacing Omegasis' SaveBackup mod. (That mod now gets renamed to AdvancedSaveBackup per discussion with Omegasis.)
- Fixed bundled SaveBackup mod including unnecessary files.
- beta 15:
- Fixed content load errors in some cases.
- Fixed launch issue for Linux players using some terminals. (Thanks to HanFox and kurumushi!)
- Fixed SaveBackup mod failing on Mac.
- Fixed slower startup times on Windows due to mods being rewritten unnecessarily.
- Fixed issue where mods could intercept other mods' assets, or indirectly affect other mods' data through a shared cache.
- For modders:
- Rewrote content core.
- Added option to suppress update checks for a specific mod in
StardewModdingAPI.config.json
. - Hid more game debug output from the console and log.
- Tweaked context trace messages to make multiplayer context more clear.
- Fixed some common non-mod build output being included in release zip.
- Fixed input suppression not working on the title menu.
- Fixed debugging issues on Windows.
- beta 16:
- For players:
- Fixed installer not finding game path in some cases.
- Fixed installer showing duplicate game paths in some cases.
- Fixed installer not removing some SMAPI files.
- Fixed Nexus mod update alerts not showing HTTPS links.
- Fixed issue where a mod crashing in
CanEdit
orCanLoad
could cause an abort-retry loop. - Fixed error when a mod loads an unpacked
.tbin
map that references custom seasonal tilesheets. - Updated compatibility list.
- For the log parser:
- Redesigned upload page to make it more intuitive for new players.
- Changed filters to show
DEBUG
messages by default. - Fixed mangled crossplatform paths in some cases.
- For modders:
- Added input API for reading and suppressing keyboard, controller, and mouse input.
- Added support for launching multiple instances transparently. This removes the former
--log-path
command-line argument. - Added Harmony DLL for internal use by SMAPI. (Mods should still include their own copy for backwards compatibility, and in case it's removed later. SMAPI will always load its own version though.)
- Added the first SMAPI 3.0 events. These are much more powerful, consistent, and discoverable than the existing events. However they're preview-only, not officially documented, and may change without warning.
- Added latest mod file version (including optional files) to Nexus API results.
- Fixed assets not being cloned when transferred between content managers in some cases.
- For SMAPI developers:
- Added prototype SMAPI 3.0 events accessible via
helper.Events
. - Added prototype mod handler toolkit.
- Added Harmony for SMAPI's internal use to patch game functions for events.
- Added prototype SMAPI 3.0 events accessible via
- For players:
- beta 17:
- For players:
- Added update checks for optional files on Nexus.
- Fixed
SEHException
errors and performance issues in some cases. - Fixed error when a mod has no manifest.
- Fixed error when patches are applied before SMAPI checks for minimum compatibility.
- Fixed
world_setseason
command not normalising the season value. - Fixed
player_add name
not using exact match if there are also fuzzy matches. - Fixed ConsoleCommands error in Stardew Valley 1.3.20.
- Updated compatibility list.
- Web UI:
- Added option to download from Nexus.
- Pufferchick is now HD.
- Improved layout on small screens.
- For modders:
- Added absolute pixels to
ICursorPosition
. - Added another prototype SMAPI 3.0 event (
helper.Events.World.DebrisListChanged
). - Update checks now use the update key order when deciding which to link to.
- Fixed
SemanticVersion
allowing invalid versions in some cases. - Fixed input events'
e.Cursor
showing wrong tile if the player moves without moving the on-screen cursor.
- Added absolute pixels to
- For SMAPI developers:
- Added metadata dump option in
StardewModdingAPI.config.json
for troubleshooting some cases. - Rewrote update checks to move most logic into the API, support optional mod versions, and support future lookups by mod ID.
- Added metadata dump option in
- For players:
- beta 18:
- For players:
- Improved startup performance and memory usage in some cases.
- Fixed tilesheets not updating for season transition.
- Fixed
list_items
andplayer_add
commands not handling secret notes.
- For modders:
- Updated NuGet package:
- Added reference to new SMAPI DLL.
- Added option to ignore custom files by regex.
- Note: you need to update the package to compile your mods against beta 18 and later. Released mods should still work fine since SMAPI will rewrite them.
- Fixed input API not available through the mod helpers.
- Updated NuGet package:
- For SMAPI developers:
- Added
StardewModdingAPI.Toolkit.CoreInterfaces
assembly for toolkit interfaces available to SMAPI mods. - Updated to Mono.Cecil 0.10 and updated other packages.
- Added
- For players:
- beta 19:
- For players:
- Added update alerts for incompatible mods with an unofficial update on the wiki.
- Fixed update checks failing when some mods don't have a mod ID.
- Fixed many mods failing if the player name is blank.
- Fixed repeated errors in some cases when a mod references a missing assembly.
- Fixed
AssemblyResolutionException
errors in rare cases. - Removed the
player_setlevel
andplayer_setspeed
commands, which weren't implemented in a useful way. Use a mod like CJB Cheats Menu if you need those.
- For modders:
- Added support for reloading NPC schedules through the content API.
- Added support for reading/writing
ISemanticVersion
to JSON. - Added log parser option to view raw log.
- Fixed
Context.IsPlayerFree
being false during festivals. - Fixed
SaveEvents.AfterReturnToTitle
event not triggered after a multiplayer disconnect. - Fixed some mods getting rewritten unnecessarily in beta 18 and breaking debuggers.
- For SMAPI develop...
- For players:
2.5.5
This is an old release. You should use the latest version instead!
SMAPI 2.5 mainly...
- Adds support for content packs.
Content packs are collections of files for a SMAPI mod to load. These can be installed directly underMods
like a normal SMAPI mod, get automatic update and compatibility checks, and provide convenient APIs to the mods that read them. (Existing content packs for some mods will need an update to work this way.) - Adds mod detection for unhandled errors (so most errors now mention which mod caused them).
- Adds install scripts for Linux/Mac (no more manual terminal commands!).
- Adds the missing mod's name and URL to dependency errors.
- And includes various other fixes and improvements.
Minor releases:
- 2.5.1 fixes an event error in rare cases with SMAPI 2.5.
- 2.5.2 fixes an issue with mod asset changes not taking effect and fixes the log parser being blank in some cases.
- 2.5.3 includes several fixes, improved compatibility and update checks, and internal changes to support the upcoming Stardew Valley 1.3 beta.
- 2.5.4 improves the content API to support newer mods like Content Patcher, and makes internal changes to support the upcoming Stardew Valley 1.3 beta.
- 2.5.5 fixes various bugs and errors, and makes internal changes for the upcoming Stardew Valley 1.3 beta.
Requires Stardew Valley 1.2.30+ on Linux/Mac/Windows. Compatible with most mods for SMAPI 0.40+.
2.5.4
This is an old release. You should use the latest version instead!
2.5.4 improves the content API to support newer mods like Content Patcher, and makes internal changes to support the upcoming Stardew Valley 1.3 beta.
Requires Stardew Valley 1.2.30+ on Linux/Mac/Windows. Compatible with most mods for SMAPI 0.40+.