Age | Commit message (Collapse) | Author | |
---|---|---|---|
2022-06-12 | patch PyTK temporarily to fix scale-up compatibility in SMAPI 3.15 | Jesse Plamondon-Willard | |
2022-06-10 | add image compatibility mode for PyTK | Jesse Plamondon-Willard | |
2022-06-10 | tweak new code, update release notes | Jesse Plamondon-Willard | |
2022-06-10 | Cleaning up and optimizing `ContentCache.cs` | Ameisen | |
2022-06-10 | fix accidental case-sensitivity change | Jesse Plamondon-Willard | |
2022-06-10 | use IRawTextureData instead of intermediate tuple | Jesse Plamondon-Willard | |
2022-06-10 | simplify asset type validaiton | Jesse Plamondon-Willard | |
2022-06-10 | apply style conventions | Jesse Plamondon-Willard | |
2022-06-10 | Refactored ModContentManager.cs so it actually fit on my 1440p screens. | Ameisen | |
Changed LocalTilesheetExtensions into an array. Marked 'CreateTemporary' as 'Obsolete' which is conventional for methods that only throw. Moved the type validation logic into its own method as it's largely shared for each loader. Changed allocators to use `GC.AllocateUninitializedArray`, as the data does not need to be initialized. Changed `LoadRawImageData` to use a `ValueTuple` return instead of returning with multiple `out`s, which is bad practice. Preferred rethrowing handlers rather than exception filters (which generate bizarre and _very difficult to patch_ code). Marked GetLoadError as debugger step through and hidden, as it's just an exception generator. Marked PremultiplyTransparency, GetContentKeyForTilesheetImageSource, and LoadRawImageData as static as they have no dependency on instance data (nor should they). Fixed `.xnb` extension search to properly use OrdinalIgnoreCase. | |||
2022-06-10 | simplify pixel conversion loop | Jesse Plamondon-Willard | |
2022-06-10 | encapsulate loading the raw image data for mod patching | Jesse Plamondon-Willard | |
2022-06-10 | add validation error when loading XNB file as IRawTextureData | Jesse Plamondon-Willard | |
2022-06-10 | update to Harmony 2.2.1 | Jesse Plamondon-Willard | |
2022-06-10 | drop support for pre-Pintail proxying | Jesse Plamondon-Willard | |
2022-06-10 | enable raw image loading by default, rename setting | Jesse Plamondon-Willard | |
2022-06-10 | add IRawTextureData asset type | Jesse Plamondon-Willard | |
2022-06-10 | add experimental image load rewrite | Jesse Plamondon-Willard | |
2022-06-10 | rework VerboseLogging option to allow enabling for specific mods | Jesse Plamondon-Willard | |
2022-06-08 | avoid NPC pathfinding rebuild if reachable locations didn't change | Jesse Plamondon-Willard | |
2022-06-06 | simplify repeated hash set creation | Jesse Plamondon-Willard | |
2022-05-31 | add backwards compatibility for mods using now-unused dependencies | Jesse Plamondon-Willard | |
2022-05-31 | replace MemoryCache with custom cache | Jesse 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-27 | fix typo | Jesse Plamondon-Willard | |
2022-05-24 | fix split-screen error when a mod provides a localized asset in one screen ↵ | Jesse Plamondon-Willard | |
but not another | |||
2022-05-23 | add watcher names to simplify troubleshooting | Jesse Plamondon-Willard | |
2022-05-23 | fix nullable annotations in NetListWatcher | Jesse Plamondon-Willard | |
2022-05-23 | use <inheritdoc/> in watchers | Jesse Plamondon-Willard | |
2022-05-23 | shortcut common cases in hot code paths | Jesse Plamondon-Willard | |
2022-05-21 | fix error when mod localizes an unlocalizable asset and then stops doing so | Jesse Plamondon-Willard | |
2022-05-20 | add tick cache to asset propagation | Jesse Plamondon-Willard | |
2022-05-18 | simplify asset propagation a bit to prepare for the upcoming SDV 1.6 | Jesse Plamondon-Willard | |
2022-05-18 | fix asset type when checking if a mod asset exists | Jesse Plamondon-Willard | |
2022-05-18 | re-add internal content manager for asset propagation | Jesse Plamondon-Willard | |
This will be used by the new asset propagation in SMAPI 4.0 & Stardew Valley 1.6. | |||
2022-05-15 | fix typo | Jesse Plamondon-Willard | |
2022-05-15 | reduce performance impact of deprecation warnings | Jesse Plamondon-Willard | |
Creating a stack is *very* slow, so it should be avoided if possible until after the duplicate-warning check. | |||
2022-05-14 | remove warning for mods which use `dynamic` | Jesse Plamondon-Willard | |
2022-05-11 | log time change in verbose mode | Jesse Plamondon-Willard | |
2022-05-11 | rewrite asset operations to reduce allocations | Jesse 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-11 | don't raise events that have no listeners | Jesse Plamondon-Willard | |
This mainly avoids allocating event arg objects unnecessarily. | |||
2022-05-11 | replace event.HasListeners() with property | Jesse Plamondon-Willard | |
2022-05-11 | cache verbose flag in main update method | Jesse Plamondon-Willard | |
2022-05-11 | move filtering only used in one place out of managed event | Jesse Plamondon-Willard | |
2022-05-11 | optimize raising events for the most common cases | Jesse Plamondon-Willard | |
2022-05-11 | fix error when mod loads XNB mod file without extension | Jesse Plamondon-Willard | |
2022-05-11 | add error code to SContentLoadException | Jesse Plamondon-Willard | |
2022-05-10 | remove unused IsPerformanceCritical event field | Jesse Plamondon-Willard | |
2022-05-08 | use records for asset edit operations | Jesse Plamondon-Willard | |
2022-05-08 | only build AssetWithoutLocale when it's used | Jesse Plamondon-Willard | |
2022-05-08 | avoid [Obsolete] without message for clarity | Jesse Plamondon-Willard | |
2022-05-08 | optimize case where there's no legacy IAssetLoader/IAssetEditor instances | Jesse Plamondon-Willard | |