summaryrefslogtreecommitdiff
path: root/src/SMAPI/Framework
AgeCommit message (Collapse)Author
2022-06-10encapsulate loading the raw image data for mod patchingJesse Plamondon-Willard
2022-06-10add validation error when loading XNB file as IRawTextureDataJesse Plamondon-Willard
2022-06-10update to Harmony 2.2.1Jesse Plamondon-Willard
2022-06-10drop support for pre-Pintail proxyingJesse Plamondon-Willard
2022-06-10enable raw image loading by default, rename settingJesse Plamondon-Willard
2022-06-10add IRawTextureData asset typeJesse Plamondon-Willard
2022-06-10add experimental image load rewriteJesse Plamondon-Willard
2022-06-10rework VerboseLogging option to allow enabling for specific modsJesse Plamondon-Willard
2022-06-08avoid NPC pathfinding rebuild if reachable locations didn't changeJesse Plamondon-Willard
2022-06-06simplify repeated hash set creationJesse Plamondon-Willard
2022-05-31add backwards compatibility for mods using now-unused dependenciesJesse Plamondon-Willard
2022-05-31replace MemoryCache with custom cacheJesse Plamondon-Willard
This was causing significant frame stutters for some players since the migration to .NET 5 in Stardew Valley 1.5.5.
2022-05-27fix typoJesse Plamondon-Willard
2022-05-24fix split-screen error when a mod provides a localized asset in one screen ↵Jesse Plamondon-Willard
but not another
2022-05-23add watcher names to simplify troubleshootingJesse Plamondon-Willard
2022-05-23fix nullable annotations in NetListWatcherJesse Plamondon-Willard
2022-05-23use <inheritdoc/> in watchersJesse Plamondon-Willard
2022-05-23shortcut common cases in hot code pathsJesse Plamondon-Willard
2022-05-21fix error when mod localizes an unlocalizable asset and then stops doing soJesse Plamondon-Willard
2022-05-20add tick cache to asset propagationJesse Plamondon-Willard
2022-05-18simplify asset propagation a bit to prepare for the upcoming SDV 1.6Jesse Plamondon-Willard
2022-05-18fix asset type when checking if a mod asset existsJesse Plamondon-Willard
2022-05-18re-add internal content manager for asset propagationJesse Plamondon-Willard
This will be used by the new asset propagation in SMAPI 4.0 & Stardew Valley 1.6.
2022-05-15fix typoJesse Plamondon-Willard
2022-05-15reduce performance impact of deprecation warningsJesse Plamondon-Willard
Creating a stack is *very* slow, so it should be avoided if possible until after the duplicate-warning check.
2022-05-14remove warning for mods which use `dynamic`Jesse Plamondon-Willard
2022-05-11log time change in verbose modeJesse Plamondon-Willard
2022-05-11rewrite asset operations to reduce allocationsJesse Plamondon-Willard
• When raising AssetRequested, SMAPI now creates a single event args model and reuses it for each handler. • There's now a single AssetOperationGroup per asset, which tracks the loaders/editors registered by every mod for that asset. • The operation group's loader/editor lists are now used directly instead of querying them.
2022-05-11don't raise events that have no listenersJesse Plamondon-Willard
This mainly avoids allocating event arg objects unnecessarily.
2022-05-11replace event.HasListeners() with propertyJesse Plamondon-Willard
2022-05-11cache verbose flag in main update methodJesse Plamondon-Willard
2022-05-11move filtering only used in one place out of managed eventJesse Plamondon-Willard
2022-05-11optimize raising events for the most common casesJesse Plamondon-Willard
2022-05-11fix error when mod loads XNB mod file without extensionJesse Plamondon-Willard
2022-05-11add error code to SContentLoadExceptionJesse Plamondon-Willard
2022-05-10remove unused IsPerformanceCritical event fieldJesse Plamondon-Willard
2022-05-08use records for asset edit operationsJesse Plamondon-Willard
2022-05-08only build AssetWithoutLocale when it's usedJesse Plamondon-Willard
2022-05-08avoid [Obsolete] without message for clarityJesse Plamondon-Willard
2022-05-08optimize case where there's no legacy IAssetLoader/IAssetEditor instancesJesse Plamondon-Willard
2022-05-08fix default settingsJesse Plamondon-Willard
2022-05-07tweak default settings logicJesse Plamondon-Willard
2022-05-07enable case-insensitive file paths by default for Android/Linux playersJesse Plamondon-Willard
2022-05-07simplify and rewrite case-insensitive file path featureJesse Plamondon-Willard
2022-05-07log fake content packs created by modsJesse Plamondon-Willard
2022-05-07fix assets loaded through fake content pack using parent mod's path infoJesse Plamondon-Willard
2022-05-07move CreateFakeContentPack into its own methodJesse Plamondon-Willard
2022-05-06cache legacy asset operations by target typeJesse Plamondon-Willard
2022-05-06cache asset operation instances created legacy interceptorsJesse Plamondon-Willard
2022-05-06fix errors reading empty JSON filesJesse Plamondon-Willard