diff --git a/build/common.targets b/build/common.targets index 9dd6f7a2..578076a9 100644 --- a/build/common.targets +++ b/build/common.targets @@ -1,7 +1,7 @@ - 3.13.0 + 3.13.1 SMAPI latest $(AssemblySearchPaths);{GAC} diff --git a/docs/release-notes.md b/docs/release-notes.md index 08cc832c..d50a923d 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,6 +1,12 @@ ← [README](README.md) # Release notes +## 3.13.1 +Released 30 November 2021 for Stardew Valley 1.5.5 or later. + +* Improved .NET 5 validation in Windows installer to better explain how to get the right version. +* Fixed installer failing on Windows when run from the game folder. + ## 3.13.0 Released 30 November 2021 for Stardew Valley 1.5.5 or later. diff --git a/src/SMAPI.Installer/assets/windows-install.bat b/src/SMAPI.Installer/assets/windows-install.bat index 2e0be906..e34b9554 100644 --- a/src/SMAPI.Installer/assets/windows-install.bat +++ b/src/SMAPI.Installer/assets/windows-install.bat @@ -1,6 +1,7 @@ @echo off +setlocal enabledelayedexpansion -SET installerDir=%~dp0 +SET installerDir="%~dp0" REM make sure we're not running within a zip folder echo %installerDir% | findstr /C:"%TEMP%" 1>nul @@ -12,23 +13,37 @@ if %ERRORLEVEL% EQU 0 ( ) REM make sure .NET 5 is installed +SET hasNet5=1 WHERE dotnet /q -if %ERRORLEVEL% NEQ 0 ( - echo Oops! You must have .NET 5 ^(desktop x64^) installed to use SMAPI: https://dotnet.microsoft.com/download/dotnet/5.0/runtime - echo. - pause - exit +if !ERRORLEVEL! NEQ 0 ( + SET hasNet5=0 +) else ( + dotnet --info | findstr /C:"Microsoft.WindowsDesktop.App 5." 1>nul + if !ERRORLEVEL! NEQ 0 ( + SET hasNet5=0 + ) ) -dotnet --info | findstr /C:"Microsoft.WindowsDesktop.App 5." 1>nul -if %ERRORLEVEL% NEQ 0 ( - echo Oops! You must have .NET 5 ^(desktop x64^) installed to use SMAPI: https://dotnet.microsoft.com/download/dotnet/5.0/runtime +if "%hasNet5%" == "0" ( + echo Oops! You don't have the required .NET version installed. + echo. + echo To install it: + echo 1. Go to https://dotnet.microsoft.com/download/dotnet/5.0/runtime + + if "%PROCESSOR_ARCHITECTURE%" == "ARM64" ( + echo 2. Under "Run desktop apps", click "Download Arm64". + ) else ( + echo 2. Under "Run desktop apps", click "Download x64". + ) + + echo 3. Run the downloaded installer. + echo 4. Restart your computer. echo. pause exit ) REM make sure an antivirus hasn't deleted the installer DLL -if not exist "%installerDir%internal\windows\SMAPI.Installer.dll" ( +if not exist %installerDir%"internal\windows\SMAPI.Installer.dll" ( echo Oops! SMAPI is missing one of its files. Your antivirus might have deleted it. echo Missing file: %installerDir%internal\windows\SMAPI.Installer.dll echo. diff --git a/src/SMAPI.Mods.ConsoleCommands/manifest.json b/src/SMAPI.Mods.ConsoleCommands/manifest.json index 85653a7d..ac6ff6ea 100644 --- a/src/SMAPI.Mods.ConsoleCommands/manifest.json +++ b/src/SMAPI.Mods.ConsoleCommands/manifest.json @@ -1,9 +1,9 @@ { "Name": "Console Commands", "Author": "SMAPI", - "Version": "3.13.0", + "Version": "3.13.1", "Description": "Adds SMAPI console commands that let you manipulate the game.", "UniqueID": "SMAPI.ConsoleCommands", "EntryDll": "ConsoleCommands.dll", - "MinimumApiVersion": "3.13.0" + "MinimumApiVersion": "3.13.1" } diff --git a/src/SMAPI.Mods.ErrorHandler/manifest.json b/src/SMAPI.Mods.ErrorHandler/manifest.json index da8306d1..e19a6a7f 100644 --- a/src/SMAPI.Mods.ErrorHandler/manifest.json +++ b/src/SMAPI.Mods.ErrorHandler/manifest.json @@ -1,9 +1,9 @@ { "Name": "Error Handler", "Author": "SMAPI", - "Version": "3.13.0", + "Version": "3.13.1", "Description": "Handles some common vanilla errors to log more useful info or avoid breaking the game.", "UniqueID": "SMAPI.ErrorHandler", "EntryDll": "ErrorHandler.dll", - "MinimumApiVersion": "3.13.0" + "MinimumApiVersion": "3.13.1" } diff --git a/src/SMAPI.Mods.SaveBackup/manifest.json b/src/SMAPI.Mods.SaveBackup/manifest.json index 4c57bd49..3e55ce42 100644 --- a/src/SMAPI.Mods.SaveBackup/manifest.json +++ b/src/SMAPI.Mods.SaveBackup/manifest.json @@ -1,9 +1,9 @@ { "Name": "Save Backup", "Author": "SMAPI", - "Version": "3.13.0", + "Version": "3.13.1", "Description": "Automatically backs up all your saves once per day into its folder.", "UniqueID": "SMAPI.SaveBackup", "EntryDll": "SaveBackup.dll", - "MinimumApiVersion": "3.13.0" + "MinimumApiVersion": "3.13.1" } diff --git a/src/SMAPI/Constants.cs b/src/SMAPI/Constants.cs index cf4bb677..c5ad215c 100644 --- a/src/SMAPI/Constants.cs +++ b/src/SMAPI/Constants.cs @@ -49,7 +49,7 @@ namespace StardewModdingAPI internal static int? LogScreenId { get; set; } /// SMAPI's current raw semantic version. - internal static string RawApiVersion = "3.13.0"; + internal static string RawApiVersion = "3.13.1"; } /// Contains SMAPI's constants and assumptions.