Age | Commit message (Collapse) | Author | |
---|---|---|---|
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-06-01 | prepare for release | 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 | prepare for release | Jesse Plamondon-Willard | |
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-22 | prepare for release | 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-19 | defer asset reload during propagation when possible | Jesse Plamondon-Willard | |
2022-05-19 | tweak asset propagator to avoid assumption that assets must be reloaded | 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 | prepare for release | Jesse Plamondon-Willard | |
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-12 | prepare for release | 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-10 | fix asset propagation for player sprite recolor masks | Jesse Plamondon-Willard | |
2022-05-08 | prepare for release | 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 | |