2018-12-16 02:33:22 +08:00
|
|
|
**SMAPI** is an open-source modding framework and API for [Stardew Valley](https://stardewvalley.net/)
|
|
|
|
that lets you play the game with mods. It's safely installed alongside the game's executable, and
|
|
|
|
doesn't change any of your game files. It serves eight main purposes:
|
2017-03-15 03:04:21 +08:00
|
|
|
|
|
|
|
1. **Load mods into the game.**
|
|
|
|
_SMAPI loads mods when the game is starting up so they can interact with it. (Code mods aren't
|
|
|
|
possible without SMAPI to load them.)_
|
|
|
|
|
|
|
|
2. **Provide APIs and events for mods.**
|
2017-10-08 11:33:03 +08:00
|
|
|
_SMAPI provides APIs and events which let mods interact with the game in ways they otherwise
|
|
|
|
couldn't._
|
2017-03-15 03:04:21 +08:00
|
|
|
|
|
|
|
3. **Rewrite mods for crossplatform compatibility.**
|
|
|
|
_SMAPI rewrites mods' compiled code before loading them so they work on Linux/Mac/Windows
|
|
|
|
without the mods needing to handle differences between the Linux/Mac and Windows versions of the
|
|
|
|
game._
|
|
|
|
|
|
|
|
4. **Rewrite mods to update them.**
|
2017-10-08 11:33:03 +08:00
|
|
|
_SMAPI detects when a mod accesses part of the game that changed in a game update which affects
|
|
|
|
many mods, and rewrites the mod so it's compatible._
|
2017-03-15 03:04:21 +08:00
|
|
|
|
2019-10-02 13:08:42 +08:00
|
|
|
5. **Intercept errors and automatically fix saves.**
|
2019-09-27 07:48:01 +08:00
|
|
|
_SMAPI intercepts errors, shows the error info in the SMAPI console, and in most cases
|
|
|
|
automatically recovers the game. That prevents mods from crashing the game, and makes it
|
|
|
|
possible to troubleshoot errors in the game itself that would otherwise show a generic 'program
|
2019-10-02 09:41:15 +08:00
|
|
|
has stopped working' type of message._
|
2019-09-27 07:48:01 +08:00
|
|
|
|
2019-10-02 09:41:15 +08:00
|
|
|
_SMAPI also automatically fixes save data in some cases when a load would crash, e.g. due to a
|
|
|
|
custom location or NPC mod that was removed._
|
2017-03-15 03:04:21 +08:00
|
|
|
|
2018-05-13 07:27:23 +08:00
|
|
|
6. **Provide update checks.**
|
2017-10-08 11:18:06 +08:00
|
|
|
_SMAPI automatically checks for new versions of your installed mods, and notifies you when any
|
|
|
|
are available._
|
|
|
|
|
2018-05-13 07:27:23 +08:00
|
|
|
7. **Provide compatibility checks.**
|
|
|
|
_SMAPI automatically detects outdated or broken code in mods, and safely disables them before
|
|
|
|
they cause problems._
|
|
|
|
|
|
|
|
8. **Back up your save files.**
|
|
|
|
_SMAPI automatically creates a daily backup of your saves and keeps ten backups, in case
|
|
|
|
something goes wrong. (Via the bundled SaveBackup mod.)_
|
|
|
|
|
2017-10-08 11:16:25 +08:00
|
|
|
## Documentation
|
2019-10-02 01:48:23 +08:00
|
|
|
Have questions? Come [ask the community](https://smapi.io/community) to get help from SMAPI
|
2019-07-06 13:04:05 +08:00
|
|
|
developers and other modders!
|
2017-10-08 14:37:41 +08:00
|
|
|
|
|
|
|
### For players
|
2018-04-29 10:39:29 +08:00
|
|
|
* [Player guide](https://stardewvalleywiki.com/Modding:Player_Guide)
|
2017-10-08 14:37:41 +08:00
|
|
|
|
|
|
|
### For modders
|
2019-10-02 01:48:23 +08:00
|
|
|
* [Modding documentation](https://smapi.io/docs)
|
2019-07-06 13:04:05 +08:00
|
|
|
* [Mod build configuration](technical/mod-package.md)
|
2017-10-08 11:16:25 +08:00
|
|
|
* [Release notes](release-notes.md)
|
2017-10-08 14:37:41 +08:00
|
|
|
|
|
|
|
### For SMAPI developers
|
2019-07-06 13:04:05 +08:00
|
|
|
* [Technical docs](technical/smapi.md)
|
2019-10-02 09:27:49 +08:00
|
|
|
|
|
|
|
## Translating SMAPI
|
|
|
|
SMAPI rarely shows text in-game, so it only has a few translations. Contributions are welcome! See
|
|
|
|
[Modding:Translations](https://stardewvalleywiki.com/Modding:Translations) on the wiki for help
|
|
|
|
contributing translations.
|
|
|
|
|
|
|
|
locale | status
|
|
|
|
---------- | :----------------
|
|
|
|
default | ✓ [fully translated](../src/SMAPI/i18n/default.json)
|
|
|
|
Chinese | ❑ not translated
|
|
|
|
French | ❑ not translated
|
|
|
|
German | ❑ not translated
|
|
|
|
Hungarian | ❑ not translated
|
|
|
|
Italian | ❑ not translated
|
|
|
|
Japanese | ❑ not translated
|
|
|
|
Korean | ❑ not translated
|
|
|
|
Portuguese | ❑ not translated
|
|
|
|
Russian | ❑ not translated
|
|
|
|
Spanish | ❑ not translated
|
|
|
|
Turkish | ❑ not translated
|