Commit Graph

3621 Commits

Author SHA1 Message Date
Jesse Plamondon-Willard 7b5566d075
add PerScreen.IsActiveForScreen() 2023-04-02 15:31:15 -04:00
Jesse Plamondon-Willard 7f7561469f
update to FluentHttpClient 4.3.0 2023-04-02 15:30:31 -04:00
Jesse Plamondon-Willard eb2a9b69bc
remove LargeAddressAware flag
This isn't needed anymore since SMAPI is 64-bit now.
2023-04-02 15:30:14 -04:00
zhiyang7 e618785e93 Fix require permission logic 2023-02-09 17:29:42 +08:00
zhiyang7 3c59a5fc6a Compatibility fix 2023-02-08 18:04:24 +08:00
zhiyang7 48fd5a490b Fix assemblies ref rewrite logic 2023-02-08 13:38:15 +08:00
zhiyang7 a406411a04 Fix Virtual Keyboard mod 2023-02-06 16:09:33 +08:00
zhiyang7 0f94f4609d Update drawImpl logic 2023-02-04 18:01:46 +08:00
zhiyang7 a797608622 Make it bootable 2023-02-04 14:45:02 +08:00
zhiyang7 7c6fc4cd19 Minor fix 2023-02-02 15:56:19 +08:00
zhiyang7 ab67f2b233 Fix Loader project link behavior 2023-02-02 10:23:27 +08:00
zhiyang7 8fcb6e9041 Upgrade to .net5.0-adnroid framework 2023-02-02 09:40:04 +08:00
zhiyang7 a42acb8176 Merge with latest branch 2023-01-30 16:58:14 +08:00
Jesse Plamondon-Willard b9fe45b091
rework GitHub issue templates to further discourage creating support issues 2023-01-28 16:40:52 -05:00
Jesse Plamondon-Willard 8ee555c07a
suppress findstr installer error for some players 2023-01-22 10:18:37 -05:00
zhiyang7 3e43d69745 Merge remote-tracking branch 'pathoschild/stable' into develop
# Conflicts:
#	.gitignore
#	build/common.targets
#	src/SMAPI.Mods.ConsoleCommands/SMAPI.Mods.ConsoleCommands.csproj
#	src/SMAPI.Mods.SaveBackup/SMAPI.Mods.SaveBackup.csproj
#	src/SMAPI.Tests/SMAPI.Tests.csproj
#	src/SMAPI.Toolkit/ModToolkit.cs
#	src/SMAPI.Toolkit/SMAPI.Toolkit.csproj
#	src/SMAPI.sln
#	src/SMAPI/Constants.cs
#	src/SMAPI/Framework/ContentManagers/ModContentManager.cs
#	src/SMAPI/Framework/Input/GamePadStateBuilder.cs
#	src/SMAPI/Framework/Logging/LogManager.cs
#	src/SMAPI/Framework/ModLoading/AssemblyLoader.cs
#	src/SMAPI/Framework/ModLoading/Framework/RewriteHelper.cs
#	src/SMAPI/Framework/Models/SConfig.cs
#	src/SMAPI/Framework/Patching/GamePatcher.cs
#	src/SMAPI/Framework/Reflection/Reflector.cs
#	src/SMAPI/Framework/SCore.cs
#	src/SMAPI/Framework/SGame.cs
#	src/SMAPI/Framework/SMultiplayer.cs
#	src/SMAPI/Framework/StateTracking/LocationTracker.cs
#	src/SMAPI/Metadata/CoreAssetPropagator.cs
#	src/SMAPI/Metadata/InstructionMetadata.cs
#	src/SMAPI/SMAPI.csproj
2023-01-16 17:28:55 +08:00
Jesse Plamondon-Willard 25b8e13ba8
prepare for release 2023-01-09 12:27:29 -05:00
Jesse Plamondon-Willard e5407417a0
add delegating mod hooks for mod use 2023-01-08 22:05:22 -05:00
Jesse Plamondon-Willard 5518b8d461
update packages 2023-01-08 16:48:30 -05:00
Jesse Plamondon-Willard b246fe6145
update web to .NET 7 2023-01-08 16:43:23 -05:00
Jesse Plamondon-Willard d35f45fc32
fix game assemblies not excluded from release zip when bundle type not set 2023-01-07 17:55:15 -05:00
Jesse Plamondon-Willard 81d3baa3b5
simplify Save Backup compression
We don't need special handling for macOS anymore, since all platforms have .NET 5 now.
2022-12-28 11:35:05 -05:00
Jesse Plamondon-Willard 45979c57dd
defer weapon data parsing until needed, handle invalid formats 2022-12-28 11:30:35 -05:00
DaLion 8660742391 Replaced slingshot ID check with Type check. 2022-12-07 18:13:17 -03:00
Jesse Plamondon-Willard a2944eed5c
prepare for release 2022-12-01 19:43:56 -05:00
Jesse Plamondon-Willard ae5829a3ee
tweak variables for clarity 2022-11-14 17:28:59 -05:00
atravita-mods e2c1d2b1c9 more indexing errors joy 2022-11-14 11:38:10 -05:00
AnotherPillow d521c20e8a Only check for Error Handler on SMAPI 3.9+ 2022-11-13 17:06:10 +00:00
Jesse Plamondon-Willard 613946003d
prepare for release 2022-11-12 15:14:59 -05:00
Jesse Plamondon-Willard 57d3e2b98e
also update multiplayer map cache for host player 2022-11-12 13:50:02 -05:00
Jesse Plamondon-Willard c1e3b25dca
fix load-early/late mods not correctly sorted relative to others in the same list 2022-11-11 21:43:42 -05:00
Jesse Plamondon-Willard 1894cd831e
Merge pull request #884 from atravita-mods/develop
AssetName.StartsWith - fix yet another case with the trailing slash
2022-11-11 21:25:01 -05:00
Jesse Plamondon-Willard ad2dcc2879
expand code comments for clarity 2022-11-11 21:22:52 -05:00
Jesse Plamondon-Willard a52f888c3f
Merge pull request #883 from SinZ163/feature/sinz/farmhand-mapedit
Add logic to remove from the multiplayer map cache for asset propagation
2022-11-11 20:56:35 -05:00
Jesse Plamondon-Willard 286c2d2449
pass multiplayer into asset propagator to avoid reflection 2022-11-11 20:55:24 -05:00
atravita-mods 2bccdd9737 edit comment. 2022-11-11 06:52:46 -05:00
atravita-mods 4ca546a7a8 directly add tests over the trailing slash. 2022-11-11 06:38:35 -05:00
SinZ be84248a9a Add logic to remove from the multiplayer map cache for asset propagation 2022-11-11 22:01:48 +11:00
Jesse Plamondon-Willard 42bcd3068f
add unit test for assumption about HashSet<T> order
This will let us detect if the behavior ever changes in a future version of .NET, so we need to change the new ModsToLoadEarly/Late config fields.
2022-11-11 02:33:28 -05:00
Jesse Plamondon-Willard 28ba3408bc
raise all deprecation messages to the final level 2022-11-11 01:47:12 -05:00
Jesse Plamondon-Willard cefd9e23b0
set max game version 2022-11-11 01:38:45 -05:00
Jesse Plamondon-Willard 133aeab3fc
Merge pull request #882 from Shockah/mod-load-order
Add options to override mod load order

# Conflicts:
#	src/SMAPI/Framework/Models/SConfig.cs
2022-11-11 01:29:30 -05:00
Jesse Plamondon-Willard dbf7750f3e
only validate & apply custom load order if there is one 2022-11-11 01:22:46 -05:00
Jesse Plamondon-Willard 3059794622
adjust warning messages & log header when load order is edited 2022-11-11 01:22:46 -05:00
Jesse Plamondon-Willard 0629f19698
change new fields to hash sets & simplify sorting
This makes the mod IDs case-insensitive (like the 'SuppressUpdateChecks' field), fixes a build error in unit tests, and avoids re-scanning the mod list multiple times.
2022-11-11 01:22:45 -05:00
Jesse Plamondon-Willard eaacfd04b8
Merge pull request #881 from tylergibbs2/detailed-manifest-errors
Add detailed manifest validation errors at build time
2022-11-10 23:34:50 -05:00
Jesse Plamondon-Willard 867afdd96f
tweak new code 2022-11-10 23:27:38 -05:00
Jesse Plamondon-Willard 6ee0d2f93d
don't validate manifest if we're not deploying or zipping the mod
That would break cases like unit test projects, which don't have a manifest.json file.
2022-11-10 23:27:38 -05:00
Jesse Plamondon-Willard 346fddda67
move validation logic out of Manifest model
This avoids tightly coupling higher logic to the implementation class, since we can validate the interface.
2022-11-10 23:27:38 -05:00
Jesse Plamondon-Willard 2a8cb8c636
Merge pull request #878 from atravita-mods/develop
Rewrite asset name comparison to stop at the first mismatch
2022-11-10 21:52:00 -05:00
Jesse Plamondon-Willard 303b3924ae
fix case where prefix ends with a path separator 2022-11-10 21:50:01 -05:00
Jesse Plamondon-Willard 76e5588f02
add option to disable console input 2022-11-09 21:41:04 -05:00
Jesse Plamondon-Willard beb0b0aaf4
fix & improve split-screen column in log parser 2022-11-09 20:03:41 -05:00
Michał Dolaś 9fd8c35b46 Actually taking order into consideration 2022-11-09 20:26:50 +01:00
Michał Dolaś 42b4b6b6a4 Renamed first/last to early/late; ignoring mods declared as both and warning about those 2022-11-09 19:50:32 +01:00
Michał Dolaś bb2fde1829 Added ModsToLoadFirst/Last to SMAPI config, along with the implementation 2022-11-09 17:25:25 +01:00
Jesse Plamondon-Willard 8090b30c6e
prepare for release 2022-10-21 20:12:02 -04:00
Tyler 55eec58eaf
simplify ContentPackFor validation check 2022-10-19 10:21:19 -05:00
Tyler 61d6ec12da
add detailed manifest validation errors at build time 2022-10-18 20:03:28 -05:00
atravita-mods b99dbf53bd fix this case. 2022-10-18 18:58:41 -04:00
Jesse Plamondon-Willard 0e4dd8a7b4
prevent Steam vdf read errors from crashing the installer 2022-10-17 20:02:19 -04:00
atravita-mods 4dcc6904b9 fix issues with subfolders 2022-10-16 18:04:19 -04:00
Jesse Plamondon-Willard ff9a955c8b
Merge pull request #879 from atravita-mods/FixIndexingAgain
Fix image patching index math
2022-10-16 15:12:17 -04:00
Jesse Plamondon-Willard e31c96d5b8
add missing test adapter package 2022-10-16 15:08:39 -04:00
Jesse Plamondon-Willard 573f732c2a
reduce sequential bool checks a bit 2022-10-16 14:41:46 -04:00
Jesse Plamondon-Willard 5d30b47e1e
fix IsEquivalentTo no longer ignoring surrounding whitespace 2022-10-16 14:41:46 -04:00
Jesse Plamondon-Willard 4e3b2810e6
fix index-out-of-range error when StartsWith prefix is empty 2022-10-16 14:41:45 -04:00
Jesse Plamondon-Willard eed1deb3c7
apply conventions to asset part enumerator 2022-10-16 14:41:45 -04:00
Jesse Plamondon-Willard 70cde89480
tweak naming in new code 2022-10-16 14:41:45 -04:00
atravita-mods 72ee547e1e And fixing the indexing math again. 2022-10-15 11:03:39 -04:00
atravita-mods 0c191eb32c make asset name comparing lazy. 2022-10-15 08:36:24 -04:00
Jesse Plamondon-Willard 5739745b76
prepare for release 2022-10-10 20:03:01 -04:00
Jesse Plamondon-Willard 474c76183b
fix error when Steam .vdf file doesn't exist 2022-10-10 13:36:11 -04:00
Jesse Plamondon-Willard ee77efcc97
prepare for release 2022-10-09 19:42:24 -04:00
Jesse Plamondon-Willard 4d2ad379b4
fix package error 2022-10-09 19:29:18 -04:00
Jesse Plamondon-Willard 27856ebea2
drop UseRawImageLoading option
Raw image loading is now always enabled, except in PyTK compatibility mode.
2022-10-09 18:03:05 -04:00
Jesse Plamondon-Willard b78b269cf5
split PyTK raw-image-load check into a separate method so it can be patched by mods like SpriteMaster 2022-10-09 17:56:33 -04:00
Jesse Plamondon-Willard 037d7e357b
set texture name earlier to support mods like SpriteMaster 2022-10-09 17:39:11 -04:00
Jesse Plamondon-Willard 9a15da5a17
add 'strict mode' release with deprecated APIs stripped out 2022-10-09 16:59:05 -04:00
Jesse Plamondon-Willard 42ff20cd92
suppress Harmony debug mode by default 2022-10-09 15:01:25 -04:00
Jesse Plamondon-Willard d0704ef6f0
fix nullability warnings 2022-10-09 14:34:31 -04:00
Jesse Plamondon-Willard 8dc12fd01c
optimize string splits 2022-10-09 14:30:40 -04:00
Jesse Plamondon-Willard 3d10d08a1a
make deprecation warnings a bit stronger for the upcoming 4.0.0 release 2022-10-09 14:08:16 -04:00
Jesse Plamondon-Willard a220e14f2d
polish recent changes & update release notes 2022-10-09 13:50:24 -04:00
Jesse Plamondon-Willard fce1b1bd0b
Merge pull request #875 from pizzaoverhead/steamLibrarySupport
Find installs in alternate Steam library locations
2022-10-08 21:33:26 -04:00
Jesse Plamondon-Willard ab66266b4b
update installer for VdfConverter & rework avoid custom models 2022-10-08 21:32:10 -04:00
Jesse Plamondon-Willard 5ef726be92
Merge pull request #874 from KhloeLeclair/specific_apis
Add `IMod.GetApi(IManifest manifest)`
2022-10-08 20:45:49 -04:00
Jesse Plamondon-Willard 8d6670cfc8
pass mod info to GetApi instead 2022-10-08 20:33:01 -04:00
Jesse Plamondon-Willard a565ac9405
make GetApi methods mutually exclusive & improve docs 2022-10-08 19:59:21 -04:00
Jesse Plamondon-Willard 4323758c7c
Merge pull request #873 from atravita-mods/patch-1
Ignore more file extensions when scanning for mods
2022-10-08 18:14:32 -04:00
Jesse Plamondon-Willard 0cce2d701d
Merge pull request #872 from tylergibbs2/fix-comparablelistwatcher-memleak
Fix ComparableListWatcher not removing items in zero case
2022-10-08 18:13:13 -04:00
Jesse Plamondon-Willard 2e918823ba
Merge pull request #870 from atravita-mods/arraypooling
Use array pooling and various optimizations to reduce allocations
2022-10-08 18:03:14 -04:00
Jesse Plamondon-Willard 2e0bc5ddfe
tweak new code 2022-10-08 17:45:50 -04:00
Jesse Plamondon-Willard 40d5cd7c05
use try..finally to make sure rented arrays are returned 2022-10-08 17:42:32 -04:00
atravita-mods 48d0f70ffd
fix indexing math again. 2022-10-08 13:27:08 -04:00
atravita-mods 798a56bd2e
Avoid copying memory for contingous buffers. 2022-10-08 13:27:07 -04:00
atravita-mods 496c438be2
fix indexing again, because apparently I'm bad at math now? 2022-10-08 13:27:07 -04:00
atravita-mods a3b8546ec8
cleanup and comments 2022-10-08 13:27:07 -04:00
atravita-mods 09fd12ddfe
use startindex/endindex since I've already calculated those... 2022-10-08 13:27:07 -04:00
atravita-mods c1d5d19e43
Skip transparent rows at the start and end when doing a patch overlay. 2022-10-08 13:27:06 -04:00