summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <Pathoschild@users.noreply.github.com>2021-05-03 18:11:31 -0400
committerJesse Plamondon-Willard <Pathoschild@users.noreply.github.com>2021-05-03 18:11:31 -0400
commit5d3d919d490fd414fe9647e566e92c71d7f64509 (patch)
treee1eab3352287ef04b5de4cdc28b550e255d58c3f
parentc48f6d78cc412c5f2e40a8b460b7b3c1c993c51a (diff)
parent3447e2f575c2c83af729777e4d37e93f4c2a6467 (diff)
downloadSMAPI-5d3d919d490fd414fe9647e566e92c71d7f64509.tar.gz
SMAPI-5d3d919d490fd414fe9647e566e92c71d7f64509.tar.bz2
SMAPI-5d3d919d490fd414fe9647e566e92c71d7f64509.zip
Merge branch 'develop' into stable
-rw-r--r--build/common.targets29
-rw-r--r--build/find-game-folder.targets2
-rw-r--r--build/prepare-install-package.targets8
-rw-r--r--docs/README.md6
-rw-r--r--docs/release-notes-archived.md62
-rw-r--r--docs/release-notes.md37
-rw-r--r--docs/technical/mod-package.md12
-rw-r--r--docs/technical/smapi.md28
-rw-r--r--src/SMAPI.Installer/Framework/InstallerContext.cs2
-rw-r--r--src/SMAPI.Installer/Framework/InstallerPaths.cs17
-rw-r--r--src/SMAPI.Installer/InteractiveInstaller.cs152
-rw-r--r--src/SMAPI.Installer/assets/README.txt9
-rw-r--r--src/SMAPI.Installer/assets/unix-install.sh2
-rw-r--r--src/SMAPI.Installer/assets/unix-launcher.sh109
-rw-r--r--src/SMAPI.Internal/ConsoleWriting/ColorfulConsoleWriter.cs2
-rw-r--r--src/SMAPI.ModBuildConfig.Analyzer.Tests/SMAPI.ModBuildConfig.Analyzer.Tests.csproj4
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/Framework/Commands/World/ClearCommand.cs18
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/SMAPI.Mods.ConsoleCommands.csproj2
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/manifest.json4
-rw-r--r--src/SMAPI.Mods.ErrorHandler/Patches/GameLocationPatches.cs59
-rw-r--r--src/SMAPI.Mods.ErrorHandler/SMAPI.Mods.ErrorHandler.csproj3
-rw-r--r--src/SMAPI.Mods.ErrorHandler/manifest.json4
-rw-r--r--src/SMAPI.Mods.SaveBackup/ModEntry.cs4
-rw-r--r--src/SMAPI.Mods.SaveBackup/manifest.json4
-rw-r--r--src/SMAPI.Tests/SMAPI.Tests.csproj4
-rw-r--r--src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs2
-rw-r--r--src/SMAPI.Toolkit/Framework/Clients/WebApi/WebApiClient.cs2
-rw-r--r--src/SMAPI.Toolkit/Framework/GameScanning/GameScanner.cs13
-rw-r--r--src/SMAPI.Toolkit/Framework/LowLevelEnvironmentUtility.cs8
-rw-r--r--src/SMAPI.Toolkit/Framework/ModData/ModWarning.cs2
-rw-r--r--src/SMAPI.Toolkit/Framework/ModScanning/ModScanner.cs5
-rw-r--r--src/SMAPI.Toolkit/SMAPI.Toolkit.csproj4
-rw-r--r--src/SMAPI.Toolkit/Utilities/Platform.cs2
-rw-r--r--src/SMAPI.Web/Framework/Clients/Nexus/NexusClient.cs2
-rw-r--r--src/SMAPI.Web/SMAPI.Web.csproj18
-rw-r--r--src/SMAPI.Web/Startup.cs2
-rw-r--r--src/SMAPI.Web/Views/Index/Index.cshtml2
-rw-r--r--src/SMAPI.Web/Views/LogParser/Index.cshtml2
-rw-r--r--src/SMAPI.Web/wwwroot/SMAPI.metadata.json2
-rw-r--r--src/SMAPI.Web/wwwroot/schemas/content-patcher.json4
-rw-r--r--src/SMAPI/Constants.cs76
-rw-r--r--src/SMAPI/Context.cs2
-rw-r--r--src/SMAPI/Framework/Content/AssetDataForImage.cs4
-rw-r--r--src/SMAPI/Framework/Content/ContentCache.cs2
-rw-r--r--src/SMAPI/Framework/ContentCoordinator.cs2
-rw-r--r--src/SMAPI/Framework/ContentManagers/ModContentManager.cs30
-rw-r--r--src/SMAPI/Framework/ContentPack.cs2
-rw-r--r--src/SMAPI/Framework/IModMetadata.cs5
-rw-r--r--src/SMAPI/Framework/Logging/LogFileManager.cs2
-rw-r--r--src/SMAPI/Framework/Logging/LogManager.cs194
-rw-r--r--src/SMAPI/Framework/ModLoading/InstructionHandleResult.cs2
-rw-r--r--src/SMAPI/Framework/ModLoading/ModMetadata.cs53
-rw-r--r--src/SMAPI/Framework/ModLoading/RewriteFacades/SpriteBatchFacade.cs4
-rw-r--r--src/SMAPI/Framework/Models/SConfig.cs3
-rw-r--r--src/SMAPI/Framework/SCore.cs79
-rw-r--r--src/SMAPI/Framework/Serialization/ColorConverter.cs2
-rw-r--r--src/SMAPI/Framework/Serialization/PointConverter.cs2
-rw-r--r--src/SMAPI/Framework/Serialization/RectangleConverter.cs2
-rw-r--r--src/SMAPI/Framework/Serialization/Vector2Converter.cs2
-rw-r--r--src/SMAPI/GamePlatform.cs2
-rw-r--r--src/SMAPI/Metadata/CoreAssetPropagator.cs42
-rw-r--r--src/SMAPI/Program.cs4
-rw-r--r--src/SMAPI/SMAPI.config.json9
-rw-r--r--src/SMAPI/SMAPI.csproj6
64 files changed, 780 insertions, 404 deletions
diff --git a/build/common.targets b/build/common.targets
index d680fa74..3278a0da 100644
--- a/build/common.targets
+++ b/build/common.targets
@@ -1,17 +1,23 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-
- <Import Project="find-game-folder.targets" />
-
- <!--set properties -->
<PropertyGroup>
- <Version>3.9.5</Version>
+ <!--set general build properties -->
+ <Version>3.10.0</Version>
<Product>SMAPI</Product>
-
<LangVersion>latest</LangVersion>
<AssemblySearchPaths>$(AssemblySearchPaths);{GAC}</AssemblySearchPaths>
- <DefineConstants Condition="$(OS) == 'Windows_NT'">$(DefineConstants);SMAPI_FOR_WINDOWS;SMAPI_FOR_XNA</DefineConstants>
+
+ <!--uncomment for 64-bit Stardew Valley on Windows-->
+ <!--<GamePath>D:\dev\SDV 64-bit\6125897</GamePath>
+ <DefineConstants>$(DefineConstants);SMAPI_FOR_WINDOWS_64BIT_HACK</DefineConstants>-->
+
+ <!--set platform-->
+ <DefineConstants Condition="$(OS) == 'Windows_NT'">$(DefineConstants);SMAPI_FOR_WINDOWS</DefineConstants>
+ <DefineConstants Condition="$(OS) == 'Windows_NT' AND !$(DefineConstants.Contains(SMAPI_FOR_WINDOWS_64BIT_HACK))">$(DefineConstants);SMAPI_FOR_XNA</DefineConstants>
</PropertyGroup>
+ <!--find game folder-->
+ <Import Project="find-game-folder.targets" />
+
<!-- if game path is invalid, show one user-friendly error instead of a slew of reference errors -->
<Target Name="ValidateInstallPath" AfterTargets="BeforeBuild">
<Error Condition="!Exists('$(GamePath)')" Text="Failed to find the game install path automatically. You can specify where to find it; see https://smapi.io/package/custom-game-path." />
@@ -50,9 +56,9 @@
</Target>
<Target Name="CopyToolkit" Condition="'$(MSBuildProjectName)' == 'SMAPI.Toolkit' AND $(TargetFramework) == 'net4.5'" AfterTargets="PostBuildEvent">
- <Copy SourceFiles="$(TargetDir)\$(TargetName).dll" DestinationFolder="$(GamePath)\smapi-internal" />
- <Copy SourceFiles="$(TargetDir)\$(TargetName).pdb" DestinationFolder="$(GamePath)\smapi-internal" />
- <Copy SourceFiles="$(TargetDir)\$(TargetName).xml" DestinationFolder="$(GamePath)\smapi-internal" />
+ <Copy SourceFiles="$(TargetDir)\$(TargetName).dll" DestinationFolder="$(GamePath)\smapi-internal" />
+ <Copy SourceFiles="$(TargetDir)\$(TargetName).pdb" DestinationFolder="$(GamePath)\smapi-internal" />
+ <Copy SourceFiles="$(TargetDir)\$(TargetName).xml" DestinationFolder="$(GamePath)\smapi-internal" />
</Target>
<Target Name="CopyToolkitCoreInterfaces" Condition="'$(MSBuildProjectName)' == 'SMAPI.Toolkit.CoreInterfaces' AND $(TargetFramework) == 'net4.5'" AfterTargets="PostBuildEvent">
@@ -74,7 +80,6 @@
<StartWorkingDirectory>$(GamePath)</StartWorkingDirectory>
</PropertyGroup>
- <!-- Somehow this makes Visual Studio for Mac recognise the previous section. Nobody knows why. -->
+ <!-- Somehow this makes Visual Studio for macOS recognise the previous section. Nobody knows why. -->
<PropertyGroup Condition="'$(RunConfiguration)' == 'Default'" />
-
</Project>
diff --git a/build/find-game-folder.targets b/build/find-game-folder.targets
index ec8a3787..7a9bfc50 100644
--- a/build/find-game-folder.targets
+++ b/build/find-game-folder.targets
@@ -13,7 +13,7 @@
<GamePath Condition="!Exists('$(GamePath)')">$(HOME)/.local/share/Steam/steamapps/common/Stardew Valley</GamePath>
<GamePath Condition="!Exists('$(GamePath)')">$(HOME)/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/common/Stardew Valley</GamePath>
- <!-- Mac (may be 'Unix' or 'OSX') -->
+ <!-- macOS (may be 'Unix' or 'OSX') -->
<GamePath Condition="!Exists('$(GamePath)')">/Applications/Stardew Valley.app/Contents/MacOS</GamePath>
<GamePath Condition="!Exists('$(GamePath)')">$(HOME)/Library/Application Support/Steam/steamapps/common/Stardew Valley/Contents/MacOS</GamePath>
</PropertyGroup>
diff --git a/build/prepare-install-package.targets b/build/prepare-install-package.targets
index 205040db..408230a9 100644
--- a/build/prepare-install-package.targets
+++ b/build/prepare-install-package.targets
@@ -33,7 +33,7 @@
<!-- copy installer files -->
<Copy SourceFiles="$(TargetDir)\assets\unix-install.sh" DestinationFiles="$(PackagePath)\install on Linux.sh" />
- <Copy SourceFiles="$(TargetDir)\assets\unix-install.sh" DestinationFiles="$(PackagePath)\install on Mac.command" />
+ <Copy SourceFiles="$(TargetDir)\assets\unix-install.sh" DestinationFiles="$(PackagePath)\install on macOS.command" />
<Copy SourceFiles="$(TargetDir)\assets\windows-install.bat" DestinationFiles="$(PackagePath)\install on Windows.bat" />
<Copy SourceFiles="$(TargetDir)\assets\README.txt" DestinationFiles="$(PackagePath)\README.txt" />
<Copy SourceFiles="$(TargetDir)\$(TargetName).exe" DestinationFiles="$(PackagePath)\internal\$(PlatformName)-install.exe" />
@@ -74,13 +74,13 @@
<Copy SourceFiles="$(SaveBackupBin)\SaveBackup.pdb" DestinationFolder="$(PackagePath)\bundle\Mods\SaveBackup" />
<Copy SourceFiles="$(SaveBackupBin)\manifest.json" DestinationFolder="$(PackagePath)\bundle\Mods\SaveBackup" />
- <!-- fix errors on Linux/Mac (sample: https://smapi.io/log/mMdFUpgB) -->
+ <!-- fix errors on Linux/macOS (sample: https://smapi.io/log/mMdFUpgB) -->
<Copy Condition="$(PlatformName) == 'unix'" SourceFiles="$(TargetDir)\assets\System.Numerics.dll" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
<Copy Condition="$(PlatformName) == 'unix'" SourceFiles="$(TargetDir)\assets\System.Runtime.Caching.dll" DestinationFolder="$(PackagePath)\bundle\smapi-internal" />
- <!-- fix Linux/Mac permissions -->
+ <!-- fix Linux/macOS permissions -->
<Exec Condition="$(PlatformName) == 'unix'" Command="chmod 755 &quot;$(PackagePath)\install on Linux.sh&quot;" />
- <Exec Condition="$(PlatformName) == 'unix'" Command="chmod 755 &quot;$(PackagePath)\install on Mac.command&quot;" />
+ <Exec Condition="$(PlatformName) == 'unix'" Command="chmod 755 &quot;$(PackagePath)\install on macOS.command&quot;" />
<!-- finalise 'for developers' installer -->
<ItemGroup>
diff --git a/docs/README.md b/docs/README.md
index 4726c190..e7b8a9b3 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -11,9 +11,9 @@ doesn't change any of your game files. It serves seven main purposes:
couldn't._
3. **Rewrite mods for 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. In some cases it also rewrites code broken by a game update so the mod doesn't break._
+ _SMAPI rewrites mods' compiled code before loading them so they work on Linux/macOS/Windows
+ without the mods needing to handle differences between the Linux/macOS and Windows versions of
+ the game. In some cases it also rewrites code broken by a game update so the mod doesn't break._
5. **Intercept errors and automatically fix saves.**
_SMAPI intercepts errors, shows the error info in the SMAPI console, and in most cases
diff --git a/docs/release-notes-archived.md b/docs/release-notes-archived.md
index b5dd538b..9801c226 100644
--- a/docs/release-notes-archived.md
+++ b/docs/release-notes-archived.md
@@ -30,7 +30,7 @@ Released 13 September 2019 for Stardew Valley 1.3.36.
Released 23 April 2019 for Stardew Valley 1.3.36.
* For players:
- * Fixed error when a custom map references certain vanilla tilesheets on Linux/Mac.
+ * Fixed error when a custom map references certain vanilla tilesheets on Linux/macOS.
* Fixed compatibility with some Linux distros.
## 2.11.1
@@ -68,7 +68,7 @@ Released 09 January 2019 for Stardew Valley 1.3.32–33.
* For players:
* SMAPI now keeps the first save backup created for the day, instead of the last one.
- * Fixed save backup for some Linux/Mac players. (When compression isn't available, SMAPI will now create uncompressed backups instead.)
+ * Fixed save backup for some Linux/macOS players. (When compression isn't available, SMAPI will now create uncompressed backups instead.)
* Fixed some common dependencies not linking to the mod page in 'missing mod' errors.
* Fixed 'unknown mod' deprecation warnings showing a stack trace when developers mode not enabled.
* Fixed 'unknown mod' deprecation warnings when they occur in the Mod constructor.
@@ -90,7 +90,7 @@ Released 09 January 2019 for Stardew Valley 1.3.32–33.
* Fixed 'unknown mod' deprecation warnings showing the wrong stack trace.
* Fixed `e.Cursor` in input events showing wrong grab tile when player using a controller moves without moving the viewpoint.
* Fixed incorrect 'bypassed safety checks' warning for mods using the new `Specialized.LoadStageChanged` event in 2.10.
- * Deprecated `EntryDll` values whose capitalization don't match the actual file. (This works on Windows, but causes errors for Linux/Mac players.)
+ * Deprecated `EntryDll` values whose capitalization don't match the actual file. (This works on Windows, but causes errors for Linux/macOS players.)
## 2.10.1
Released 30 December 2018 for Stardew Valley 1.3.32–33.
@@ -183,7 +183,7 @@ Released 07 December 2018 for Stardew Valley 1.3.32.
## 2.8.2
Released 19 November 2018 for Stardew Valley 1.3.32.
-* Fixed game crash in MacOS with SMAPI 2.8.
+* Fixed game crash in macOS with SMAPI 2.8.
## 2.8.1
Released 19 November 2018 for Stardew Valley 1.3.32.
@@ -205,7 +205,7 @@ Released 19 November 2018 for Stardew Valley 1.3.32.
* SMAPI now recommends a compatible SMAPI version if you have an older game version.
* Improved various error messages to be more clear and intuitive.
* Improved compatibility with various Linux shells (thanks to lqdev!), and prefer xterm when available.
- * Fixed transparency issues on Linux/Mac for some mod images.
+ * Fixed transparency issues on Linux/macOS for some mod images.
* Fixed error when a mod manifest is corrupted.
* Fixed error when a mod adds an unnamed location.
* Fixed friendly error no longer shown when SMAPI isn't run from the game folder.
@@ -223,7 +223,7 @@ Released 19 November 2018 for Stardew Valley 1.3.32.
* The log parser now has a separate filter for game messages.
* The log parser now shows content pack authors (thanks to danvolchek!).
* Tweaked log parser UI (thanks to danvolchek!).
- * Fixed log parser instructions for Mac.
+ * Fixed log parser instructions for macOS.
* For mod authors:
* Added [data API](https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Data) to store mod data in the save file or app data.
@@ -267,7 +267,7 @@ Released 14 August 2018 for Stardew Valley 1.3.28.
* Improved how mod issues are listed in the console and log.
* Revamped installer. It now...
* uses a new format that should be more intuitive;
- * lets players on Linux/Mac choose the console color scheme (SMAPI will auto-detect it on Windows);
+ * lets players on Linux/macOS choose the console color scheme (SMAPI will auto-detect it on Windows);
* and validates requirements earlier.
* Fixed custom festival maps always using spring tilesheets.
* Fixed `player_add` command not recognising return scepter.
@@ -314,8 +314,8 @@ Released 01 August 2018 for Stardew Valley 1.3.27.
* Removed the `player_setlevel` and `player_setspeed` commands, which weren't implemented in a useful way. Use a mod like CJB Cheats Menu if you need those.
* Fixed `SEHException` errors for some players.
* Fixed performance issues for some players.
- * Fixed default color scheme on Mac or in PowerShell (configurable via `StardewModdingAPI.config.json`).
- * Fixed installer error on Linux/Mac in some cases.
+ * Fixed default color scheme on macOS or in PowerShell (configurable via `StardewModdingAPI.config.json`).
+ * Fixed installer error on Linux/macOS in some cases.
* Fixed installer not finding some game paths or showing duplicate paths.
* Fixed installer not removing some SMAPI files.
* Fixed launch issue for Linux players with some terminals. (Thanks to HanFox and kurumushi!)
@@ -345,7 +345,7 @@ Released 01 August 2018 for Stardew Valley 1.3.27.
* each event now provides a list of added/removed values;
* added buildings-changed event.
* Added `Context.IsMultiplayer` and `Context.IsMainPlayer` flags.
- * Added `Constants.TargetPlatform` which says whether the game is running on Linux, Mac, or Windows.
+ * Added `Constants.TargetPlatform` which says whether the game is running on Linux, macOS, or Windows.
* Added `semanticVersion.IsPrerelease()` method.
* Added support for launching multiple instances transparently. This removes the former `--log-path` command-line argument.
* Added support for custom seasonal tilesheets when loading an unpacked `.tbin` map.
@@ -376,7 +376,7 @@ Released 01 August 2018 for Stardew Valley 1.3.27.
* Mod IDs should only contain letters, numbers, hyphens, dots, and underscores. That allows their use in many contexts like URLs. This restriction is now enforced. (In regex form: `^[a-zA-Z0-9_.-]+$`.)
* For SMAPI developers:
- * Added more consistent crossplatform handling, including MacOS detection.
+ * Added more consistent crossplatform handling, including macOS detection.
* Added beta update channel.
* Added optional mod metadata to the web API (including Nexus info, wiki metadata, etc).
* Added early prototype of SMAPI 3.0 events via `helper.Events`.
@@ -411,7 +411,7 @@ Released 26 March 2018 for Stardew Valley 1.2.30–1.2.33.
* For players:
* Fixed some textures not updated when a mod changes them.
- * Fixed visual bug on Linux/Mac when mods overlay textures.
+ * Fixed visual bug on Linux/macOS when mods overlay textures.
* Fixed error when mods remove an asset editor/loader.
* Fixed minimum game version incorrectly increased in SMAPI 2.5.3.
@@ -467,9 +467,9 @@ Released 24 February 2018 for Stardew Valley 1.2.30–1.2.33.
* **Added support for [content packs](https://stardewvalleywiki.com/Modding:Content_packs)**.
<small>_Content packs are collections of files for a SMAPI mod to load. These can be installed directly under `Mods` like a normal SMAPI mod, get automatic update and compatibility checks, and provide convenient APIs to the mods that read them._</small>
* Added mod detection for unhandled errors (so most errors now mention which mod caused them).
- * Added install scripts for Linux/Mac (no more manual terminal commands!).
+ * Added install scripts for Linux/macOS (no more manual terminal commands!).
* Added the missing mod's name and URL to dependency errors.
- * Fixed uninstall script not reporting when done on Linux/Mac.
+ * Fixed uninstall script not reporting when done on Linux/macOS.
* Updated compatibility list and enabled update checks for more mods.
* For mod authors:
@@ -524,7 +524,7 @@ Released 26 December 2017 for Stardew Valley 1.2.30–1.2.33.
* For players:
* Added a user-friendly [download page](https://smapi.io).
- * Improved cryptic libgdiplus errors on Mac when Mono isn't installed.
+ * Improved cryptic libgdiplus errors on macOS when Mono isn't installed.
* Fixed mod UIs hidden when menu backgrounds are enabled.
* For mod authors:
@@ -545,9 +545,9 @@ Released 26 December 2017 for Stardew Valley 1.2.30–1.2.33.
Released 02 December 2017 for Stardew Valley 1.2.30–1.2.33.
* For players:
- * Fixed error when a mod loads custom assets on Linux/Mac.
- * Fixed error when checking for updates on Linux/Mac due to API HTTPS redirect.
- * Fixed error when Mac adds an `mcs` symlink to the installer package.
+ * Fixed error when a mod loads custom assets on Linux/macOS.
+ * Fixed error when checking for updates on Linux/macOS due to API HTTPS redirect.
+ * Fixed error when macOS adds an `mcs` symlink to the installer package.
* Fixed `player_add` command not handling tool upgrade levels.
* Improved error when a mod has an invalid `EntryDLL` filename format.
* Updated compatibility list.
@@ -651,7 +651,7 @@ For players:
* The console is now simpler and easier to read, and adjusts its colors to fit your terminal background color.
* Renamed installer folder to avoid confusion.
* Updated compatibility list.
-* Fixed update check errors on Linux/Mac.
+* Fixed update check errors on Linux/macOS.
* Fixed collection-changed errors during startup for some players.
For mod developers:
@@ -685,7 +685,7 @@ For SMAPI developers:
Released 09 September 2017 for Stardew Valley 1.2.30–1.2.33.
For players:
-* Fixed errors when loading some custom maps on Linux/Mac or using XNB Loader.
+* Fixed errors when loading some custom maps on Linux/macOS or using XNB Loader.
* Fixed errors in rare cases when a mod calculates an in-game date.
For mod authors:
@@ -772,7 +772,7 @@ For players:
* you have Stardew Valley 1.11 or earlier (which aren't compatible);
* you run `install.exe` from within the downloaded zip file.
* Fixed "unknown mod" deprecation warnings by improving how SMAPI detects the mod using the event.
-* Fixed `libgdiplus.dylib` errors for some players on Mac.
+* Fixed `libgdiplus.dylib` errors for some players on macOS.
* Fixed rare crash when window loses focus for a few players.
* Bumped minimum game version to 1.2.30.
* Updated mod compatibility list.
@@ -805,8 +805,8 @@ For players:
* SMAPI now recovers automatically from errors in the game loop when possible.
* SMAPI now remembers if your game crashed and offers help next time you launch it.
* Fixed installer sometimes finding redundant game paths.
-* Fixed save events not being raised after the first day on Linux/Mac.
-* Fixed error on Linux/Mac when a mod loads a PNG immediately after the save is loaded.
+* Fixed save events not being raised after the first day on Linux/macOS.
+* Fixed error on Linux/macOS when a mod loads a PNG immediately after the save is loaded.
* Updated mod compatibility list for Stardew Valley 1.2.
For mod developers:
@@ -826,15 +826,15 @@ Released 03 May 2017 for Stardew Valley 1.2.26–1.2.29.
For players:
* The installer now lets you choose the install path if you have multiple copies of the game, instead of using the first path found.
* Fixed mod draw errors breaking the game.
-* Fixed mods on Linux/Mac no longer working after the game saves.
-* Fixed `libgdiplus.dylib` errors on Mac when mods read PNG files.
+* Fixed mods on Linux/macOS no longer working after the game saves.
+* Fixed `libgdiplus.dylib` errors on macOS when mods read PNG files.
* Adopted pufferchick.
For mod developers:
* Unknown mod manifest fields are now stored in `IManifest::ExtraFields`.
* The content API now defaults to `ContentSource.ModFolder`.
* Fixed content API error when loading a PNG during early game init (e.g. in mod's `Entry`).
-* Fixed content API error when loading an XNB from the mod folder on Mac.
+* Fixed content API error when loading an XNB from the mod folder on macOS.
## 1.11
Released 30 April 2017 for Stardew Valley 1.2.26.
@@ -888,7 +888,7 @@ For players:
* Fixed the game-needs-an-update error not pausing before exit.
* Fixed installer errors for some players when deleting files.
* Fixed installer not ignoring potential game folders that don't contain a Stardew Valley exe.
-* Fixed installer not recognising Linux/Mac paths starting with `~/` or containing an escaped space.
+* Fixed installer not recognising Linux/macOS paths starting with `~/` or containing an escaped space.
* Fixed TrainerMod letting you add invalid items which may crash the game.
* Fixed TrainerMod's `world_downminelevel` command not working.
* Fixed rare issue where mod dependencies would override SMAPI dependencies and cause unpredictable bugs.
@@ -912,7 +912,7 @@ For mod developers:
* Removed the experimental `IConfigFile`.
For SMAPI developers:
-* Added support for debugging SMAPI on Linux/Mac if supported by the editor.
+* Added support for debugging SMAPI on Linux/macOS if supported by the editor.
## 1.8
Released 04 February 2017 for Stardew Valley 1.1–1.11.
@@ -1004,7 +1004,7 @@ For players:
* Improved installer wording to reduce confusion.
* Fixed the installer not removing TrainerMod from appdata if it's already in the game mods directory.
* Fixed the installer not moving mods out of appdata if the game isn't installed on the same Windows partition.
- * Fixed the SMAPI console not being shown on Linux and Mac.
+ * Fixed the SMAPI console not being shown on Linux and macOS.
For developers:
* Added a reflection API (via `helper.Reflection`) that simplifies robust access to the game's private fields and methods.
@@ -1016,7 +1016,7 @@ For developers:
Released 04 December 2016 for Stardew Valley 1.1–1.11.
For players:
- * You can now run most mods on any platform (e.g. run Windows mods on Linux/Mac).
+ * You can now run most mods on any platform (e.g. run Windows mods on Linux/macOS).
* Fixed the normal uninstaller not removing files added by the 'SMAPI for developers' installer.
## 1.2
@@ -1063,7 +1063,7 @@ For developers:
Released 11 November 2016 for Stardew Valley 1.1–1.11.