Commit Graph

1248 Commits

Author SHA1 Message Date
Dan Volchek f451e172e2 update documentation format and document field 2018-04-19 01:35:15 -05:00
Jesse Plamondon-Willard 8faf409ea1 update compatibility list for first test pass (#453) 2018-04-18 21:06:56 -04:00
Jesse Plamondon-Willard e80e6564b3 detect broken references to fields which changed generic type (#453)
Previously generic types couldn't be compared correctly, since we'd end up with false differences like "Dictionary`1 != Dictionary<string, string>". That seems to be fixed now, possibly due to the PDB file being included.
2018-04-18 20:58:25 -04:00
Jesse Plamondon-Willard c79601ad76 update for Stardew Valley 1.3.0.32 (#453) 2018-04-18 20:22:50 -04:00
Dan Volchek 73b75c6286 log user input to log file 2018-04-17 21:46:30 -05:00
Jesse Plamondon-Willard 4af998024c add warning in developer mode for mods with no update keys 2018-04-17 21:12:03 -04:00
Dan Volchek 43487a40e3 refactor finding items by name slightly 2018-04-17 15:35:22 -05:00
Dan Volchek b990f81eda support quoted strings in console commands 2018-04-16 22:39:33 -05:00
Dan Volchek 96753c35fd add world ready check and more helpful error messages 2018-04-16 03:39:08 -05:00
Dan Volchek d362843706 add Name as new type, show more helpful info on multiple matches 2018-04-16 03:15:25 -05:00
Dan Volchek a6e1ea0a4f fix private method comment location 2018-04-16 00:42:57 -05:00
Dan Volchek 7f4941167e initial player_add changes 2018-04-15 22:13:26 -05:00
Jesse Plamondon-Willard bb2c523860 tweak trace logs for readability when loading mods 2018-04-15 01:14:28 -04:00
Jesse Plamondon-Willard 97120c6df2 update references to old warning IDs (#471) 2018-04-14 20:33:43 -04:00
Jesse Plamondon-Willard 1848abe7d5 don't warn for NetCollection conversion to implemented interface (#471) 2018-04-14 20:14:31 -04:00
Jesse Plamondon-Willard 6d8cf614a2 don't warn for NetList conversion to implemented interface (#471) 2018-04-14 19:51:50 -04:00
Jesse Plamondon-Willard c2cb76b799 rewrite analyzers to match more cases, use readable warning IDs (#471) 2018-04-14 17:53:58 -04:00
Jesse Plamondon-Willard 052ef9683a fix typo in code docs (#473) 2018-04-14 02:40:55 -04:00
Jesse Plamondon-Willard 6616c87c18 fix world_settime command sometimes breaking NPC schedules 2018-04-14 00:24:24 -04:00
Jesse Plamondon-Willard 6d269621b2 make crossplatform handling more consistent 2018-04-14 00:18:19 -04:00
Jesse Plamondon-Willard 0d5278a270 use light-background color scheme on Mac by default 2018-04-13 23:54:44 -04:00
Jesse Plamondon-Willard 45f4f85b7e add MacOS detection 2018-04-13 23:47:24 -04:00
Jesse Plamondon-Willard 504733dec7 fix console color scheme for PowerShell, and make it configurable 2018-04-13 23:00:49 -04:00
Jesse Plamondon-Willard a3ade7a512 split mod DB into a separate file
The mod metadata has grown over time, and there's no need to keep it in memory after mod loading. This lets us load the config earlier (since it has a smaller impact on memory usage which affects the game's audio code), and lets us discard the mod metadata when we're done with it.
2018-04-13 22:41:34 -04:00
Jesse Plamondon-Willard 5997857064 fix various net field conversions in SMAPI code (#453) 2018-04-12 00:18:32 -04:00
Jesse Plamondon-Willard 9c1617c9ee drop support for Stardew Valley 1.2 (#453) 2018-04-11 21:15:16 -04:00
Jesse Plamondon-Willard 2d47e479a5 fix draft releases being detected as update candidates 2018-04-11 19:55:01 -04:00
Jesse Plamondon-Willard 15a80ab244 update for 2.5.5 release 2018-04-11 18:47:32 -04:00
Jesse Plamondon-Willard 34f5854666 update unit test packages 2018-04-11 18:46:07 -04:00
Jesse Plamondon-Willard 4fa46fd741 fix error in Stardew Valley 1.2 build mode (#453) 2018-04-11 18:36:58 -04:00
Jesse Plamondon-Willard e4222ad1fd fix error when two content packs use different capitalisation for the same required mod ID (#469) 2018-04-11 16:17:23 -04:00
Jesse Plamondon-Willard e0488fa5b2 fix error when a remote mod version is invalid (#462) 2018-04-11 16:08:58 -04:00
Jesse Plamondon-Willard b425bff1e9 update for Stardew Valley 1.3.0.26 (#453) 2018-04-11 15:43:11 -04:00
Jesse Plamondon-Willard fa335f80be fix crash when player has duplicate item references 2018-04-11 15:41:32 -04:00
Jesse Plamondon-Willard 83969b5789 update mod build config package version (#453) 2018-04-10 19:26:50 -04:00
Jesse Plamondon-Willard 77b4d1e9a2 Merge branch 'feature/mod-code-analysis' into develop 2018-04-10 18:27:09 -04:00
Jesse Plamondon-Willard 13f31e8b72 warn for fields which no longer work (#471) 2018-04-10 18:23:57 -04:00
Jesse Plamondon-Willard c6c2302baf tweak analyzer code & documentation (#471) 2018-04-10 18:23:39 -04:00
Jesse Plamondon-Willard 1fb625dc42 fix some net field comparisons to null not flagged (#471) 2018-04-10 18:23:08 -04:00
Jesse Plamondon-Willard 35c2e59685 expand analyzer unit tests (#471) 2018-04-10 18:22:34 -04:00
Jesse Plamondon-Willard 9e5c3912b6 move mock classes out of sample code (#471) 2018-04-10 18:22:16 -04:00
Jesse Plamondon-Willard 9fba3c1266 add context properties for multiplayer, update release notes (#453) 2018-04-10 18:20:49 -04:00
Jesse Plamondon-Willard f41896041d fix typo in config file 2018-04-10 18:05:21 -04:00
Jesse Plamondon-Willard 971ed1a175 fix net field replacements not reported for a subclass reference (#471) 2018-04-09 23:43:13 -04:00
Jesse Plamondon-Willard c8db771e11 tweak message output and unit tests (#471) 2018-04-09 23:25:10 -04:00
Jesse Plamondon-Willard 416e1c3c1b rename file to match new scope (#471) 2018-04-09 22:34:11 -04:00
Jesse Plamondon-Willard 4f5f463bd2 warn when directly using a net field that has a non-net wrapper (#471) 2018-04-09 22:33:45 -04:00
Jesse Plamondon-Willard f52f7ca36f add mod code analyzers to detect implicit net field conversion issues (#471) 2018-04-09 19:32:00 -04:00
Jesse Plamondon-Willard 22965604bf add support for build message URLs (#471) 2018-04-09 19:30:17 -04:00
Jesse Plamondon-Willard 30e89b3a33 fix mods not being loaded if an optional dependency is installed but skipped 2018-03-30 22:51:34 -04:00
Jesse Plamondon-Willard c3555c74f5 update for Stardew Valley 1.2.0.20 (#453) 2018-03-29 20:27:43 -04:00
Jesse Plamondon-Willard db0c88dbaf move version closer to mod name in log parser 2018-03-29 19:17:44 -04:00
Jesse Plamondon-Willard 4cd7722583 tweak metadata formatting 2018-03-29 00:51:23 -04:00
Jesse Plamondon-Willard d49eb88011 show game path on log parser page instead of mods path 2018-03-29 00:43:31 -04:00
Jesse Plamondon-Willard a9e3458a3b add success/error banner to log parser page 2018-03-29 00:39:25 -04:00
Jesse Plamondon-Willard 4d68ef3514 update for 2.5.4 release 2018-03-26 09:34:45 -04:00
Jesse Plamondon-Willard 56288e1d0e fix log parser timestamp not rendered 2018-03-26 09:22:45 -04:00
Jesse Plamondon-Willard 60fc4a6488 update animal textures when changed through the content API (#459) 2018-03-25 14:59:06 -04:00
Jesse Plamondon-Willard 0bcc1f6be9 standardise folder checks when reloading assets (#459) 2018-03-25 13:28:38 -04:00
Jesse Plamondon-Willard 04e299aeaa update Json.NET package 2018-03-25 12:32:16 -04:00
Jesse Plamondon-Willard 4d668eb702 update API packages 2018-03-25 12:17:58 -04:00
Jesse Plamondon-Willard 5681c0f981 update mod build config package 2018-03-25 12:01:19 -04:00
Jesse Plamondon-Willard b1cc6c1d99 update new asset update logic for Stardew Valley 1.3 (#453) 2018-03-25 11:41:56 -04:00
Jesse Plamondon-Willard 5a0e49827b update fence textures when changed through the content API (#459) 2018-03-25 00:52:37 -04:00
Jesse Plamondon-Willard 20b7783900 update NPC textures when changed through the content API (#459) 2018-03-24 20:26:33 -04:00
Jesse Plamondon-Willard 34346d8b09 tweak transparency threshold (#461) 2018-03-24 19:06:13 -04:00
Jesse Plamondon-Willard 5126d56b39 fix error when a mod removes an asset editor/loader (#460) 2018-03-23 22:41:15 -04:00
Jesse Plamondon-Willard fad47ff74f fix image overlay bugs on Linux/Mac (#461) 2018-03-23 22:30:49 -04:00
Jesse Plamondon-Willard 51368b8afb update tree textures when changeed through the content API (#459) 2018-03-23 20:18:23 -04:00
Jesse Plamondon-Willard 91561eedc7 fix log parser errors when log text contains {{tokens}} 2018-03-23 01:21:50 -04:00
Jesse Plamondon-Willard 5b765849d8 fix unit test check in build config package 2018-03-22 20:54:05 -04:00
Jesse Plamondon-Willard e48f230142 add unit test mode to mod build config package 2018-03-21 00:19:12 -04:00
Jesse Plamondon-Willard de5ee6f928 rewrite core asset logic for extensibility (#459) 2018-03-20 21:22:19 -04:00
Jesse Plamondon-Willard 5be3e5af5a rename class to better match usage (#459) 2018-03-20 19:45:45 -04:00
Jesse Plamondon-Willard ae06116544 fix minimum Stardew Valley 1.2 version mistakenly raised in 2.5.3 2018-03-20 00:49:14 -04:00
Jesse Plamondon-Willard ada351b163 reduce cache time for failed update checks to 5 minutes (#454) 2018-03-16 20:28:16 -04:00
Jesse Plamondon-Willard 594d176d39 prepare home page for upcoming beta (#457) 2018-03-15 23:36:16 -04:00
Jesse Plamondon-Willard ff6df97ae8 fix error handling in update check API (#457) 2018-03-15 21:26:03 -04:00
Jesse Plamondon-Willard 90cdbdf7b2 link SMAPI update checks to smapi.io instead of GitHub (#457) 2018-03-15 21:23:36 -04:00
Jesse Plamondon-Willard 7015e4ee87 show prerelease SMAPI updates when updating from an older prerelease of the same version (#457) 2018-03-15 20:58:43 -04:00
Jesse Plamondon-Willard 436c071ba4 add support for preview GitHub releases (#457) 2018-03-15 19:52:18 -04:00
Jesse Plamondon-Willard a9b6b0ffa7 don't rewrite for field to property changes in Stardew Valley 1.3 (#456)
The fields are still available (even if they changed return type). That will cause unnecessary rewrites for some mods after they're updated, so they can't be debugged into.
2018-03-13 19:43:15 -04:00
Jesse Plamondon-Willard f0e1a46f0f fix error when content pack needs a mod that couldn't be loaded 2018-03-11 21:07:45 -04:00
Jesse Plamondon-Willard 98fa9f0389 update for Stardew Valley 1.3.0.5 (#453) 2018-03-11 20:45:58 -04:00
Jesse Plamondon-Willard de17f87d87 fix some title menu assets not being editable (#453, #413) 2018-03-11 20:31:19 -04:00
Jesse Plamondon-Willard 588d4d94fa fix some content managers not replaced early enough (#453, #413) 2018-03-11 20:30:57 -04:00
Jesse Plamondon-Willard 9c49d090a0 reorganise and update core content logic for Stardew Valley 1.3 (#453) 2018-03-11 20:03:52 -04:00
Jesse Plamondon-Willard 6db91f8329 drop support for some deprecated APIs in the Stardew Valley 1.3 branch (#453) 2018-03-11 19:10:27 -04:00
Jesse Plamondon-Willard b8f17e6afb update rewriters for Stardew Valley 1.3 (#453) 2018-03-11 19:10:08 -04:00
Jesse Plamondon-Willard 41715cefcd add initial compatibility with Stardew Valley 1.3 (#453) 2018-03-11 19:09:08 -04:00
Albert Zhang 810f700ced
move `xterm` to top of terminal checking order
Makes more sense, as `xterm` is much more common than any of the others and we only need a barebones terminal anyway. This also solves errors caused by issues such as https://github.com/mono/mono/issues/6752
2018-03-05 20:16:47 -05:00
Jesse Plamondon-Willard 8689fe6564 fix compatibility heuristics incorrectly flagging mods with missing optional references (#453) 2018-03-05 19:07:22 -05:00
Jesse Plamondon-Willard 1fbd41ecb2 bump version for release 2018-03-04 21:32:23 -05:00
Jesse Plamondon-Willard c3199e19a5 update compatibility list 2018-03-04 21:25:05 -05:00
Jesse Plamondon-Willard 0a71285c63 fix broken Nexus mod URLs 2018-03-04 21:05:50 -05:00
Jesse Plamondon-Willard 99023f9487 add support for mapping non-semantic remote mod versions 2018-03-04 18:46:05 -05:00
Jesse Plamondon-Willard 90c8593ba9 update SMAPI URL in user agent (#454) 2018-03-04 17:34:43 -05:00
Jesse Plamondon-Willard cea113eb29 fetch mod info from Nexus website until we can use their API again (#454) 2018-03-04 17:32:29 -05:00
Jesse Plamondon-Willard be4416644a update compatibility list 2018-03-04 16:48:42 -05:00
Jesse Plamondon-Willard 38ca63a8f6 fix null reference when checking FormerIDs field against 'authour' field 2018-03-04 14:33:50 -05:00
Jesse Plamondon-Willard ac6127c63e fix log parser error when mod names are duplicated 2018-03-04 13:37:42 -05:00
Jesse Plamondon-Willard d0b66b13bd fix false broken-code detection when referencing a generic type (#453) 2018-03-04 02:25:37 -05:00
Jesse Plamondon-Willard 9a9622702a fix misplaced file (#453) 2018-03-04 02:17:44 -05:00
Jesse Plamondon-Willard 19570f4312 simplify and always include default update URL, shorten no-longer-compatible skip messages 2018-03-04 01:07:55 -05:00
Jesse Plamondon-Willard a9714b7897 fix data for some old mods with no ID 2018-03-04 00:44:07 -05:00
Jesse Plamondon-Willard 01579d63f3 fix default update key not applied if mod sets a blank update key 2018-03-04 00:31:48 -05:00
Jesse Plamondon-Willard a290a2fa52 mark Stardew Valley 1.3 incompatible in SMAPI 2.5.x to reduce confusion when it's released (#453) 2018-03-03 22:18:44 -05:00
Jesse Plamondon-Willard f9dc901994 fix error in new incompatibility finders when they resolve members in a dependency (#453) 2018-03-03 22:03:41 -05:00
Jesse Plamondon-Willard 47b9c5995e update compatibility list 2018-03-03 21:28:12 -05:00
Jesse Plamondon-Willard 36a527956c fix detected incompatibility errors not showing mod's update URL (#453) 2018-03-03 17:54:17 -05:00
Jesse Plamondon-Willard adebec4dd4 automatically detect broken code (#453) 2018-03-03 17:49:24 -05:00
Jesse Plamondon-Willard 48833b5c30 move technical compatibility details into TRACE log (#453) 2018-03-03 17:37:06 -05:00
Jesse Plamondon-Willard c7f2e53f20 fix content pack list formatting 2018-02-27 21:50:49 -05:00
Jesse Plamondon-Willard a82e0bb275 bypass cache on log parser page 2018-02-26 00:28:32 -05:00
Jesse Plamondon-Willard 5c1318431b always include raw taxt in model 2018-02-25 23:35:14 -05:00
Jesse Plamondon-Willard c984d5ad51 fix log filtering some mods incorrectly 2018-02-25 23:33:07 -05:00
Jesse Plamondon-Willard 212e85489a fix log parser not correctly parsing mod list if a mod has no author name 2018-02-25 23:27:44 -05:00
Jesse Plamondon-Willard 0f8d183ec7 bypass cache on log parser page 2018-02-25 14:24:25 -05:00
Jesse Plamondon-Willard 51118337e5 update for 2.5.2 release 2018-02-25 01:49:53 -05:00
Jesse Plamondon-Willard f65e618cd9 fix blank page when uploading a log in some cases 2018-02-25 01:26:03 -05:00
Jesse Plamondon-Willard d70d449c5c fix issue where replacing an asset via asset.AsImage() or asset.AsDictionary() has no effect 2018-02-25 01:07:32 -05:00
Jesse Plamondon-Willard f7d0cf40f6 update for 2.5.1 release 2018-02-24 20:27:08 -05:00
Jesse Plamondon-Willard a8a34f7f96 fix event error in rare cases 2018-02-24 20:24:42 -05:00
Jesse Plamondon-Willard f2e8450706 update for 2.5 release and simplify assembly info 2018-02-24 17:45:29 -05:00
Jesse Plamondon-Willard 691310d16e add content pack support to log parser 2018-02-24 16:52:38 -05:00
Jesse Plamondon-Willard d7696912e0 reimplement log parser with serverside parsing and vue.js frontend 2018-02-24 16:51:37 -05:00
Jesse Plamondon-Willard 68528f7dec overhaul events to track the mod which added each handler, and log errors under their name (#451) 2018-02-23 19:05:23 -05:00
Jesse Plamondon-Willard dae5838696 Revert "suppress keyboard events when a textbox is focused (#445)"
This reverts commit 0330150666.
2018-02-22 20:58:31 -05:00
Jesse Plamondon-Willard ddba317142 add friendly warning when an i18n file has duplicate keys due to case-insensitivity (#448) 2018-02-22 20:26:21 -05:00
Jesse Plamondon-Willard ec1e5a1698 support transitional content packs (#436)
This commit adds an API to generate a content pack from an arbitrary folder, to support mods which already had their own content pack format before SMAPI standardised it. This lets them support both formats using the same APIs while they transition.
2018-02-20 19:43:05 -05:00
Jesse Plamondon-Willard 9369232118 replace manual relative path logic with new path utilities 2018-02-19 20:29:52 -05:00
Jesse Plamondon-Willard b6cc17112d normalise path separators in read/write JSON file methods exposed to mods 2018-02-19 20:22:01 -05:00
Jesse Plamondon-Willard c38c2b2c41 fix edge case in relative path logic 2018-02-19 20:18:53 -05:00
Jesse Plamondon-Willard 3b4e81bf69 encapsulate path utilities for reuse, add unit tests 2018-02-19 20:18:30 -05:00
Jesse Plamondon-Willard 049952de33 simplify content pack list (#436) 2018-02-19 19:42:04 -05:00
Jesse Plamondon-Willard 674618664a add unvalidated update tick event for specialised use cases (#446) 2018-02-19 19:32:27 -05:00
Jesse Plamondon-Willard 5060739d62 update compatibility list 2018-02-19 13:58:05 -05:00
Jesse Plamondon-Willard 258e4c16e3 fix default update keys not being applied (#439) 2018-02-19 13:56:54 -05:00
Jesse Plamondon-Willard 6cf4742bca fix some JSON field names being case-sensitive 2018-02-19 13:38:09 -05:00
Jesse Plamondon-Willard 373469421f redirect canimod.com URLs to wiki 2018-02-19 12:28:13 -05:00
Jesse Plamondon-Willard 0330150666 suppress keyboard events when a textbox is focused (#445) 2018-02-18 22:40:20 -05:00
Jesse Plamondon-Willard f1c24e3052 add support for ISemanticVersion in JSON models 2018-02-18 02:31:39 -05:00
Jesse Plamondon-Willard 4444b590f0 add content pack feature (#436) 2018-02-17 18:54:57 -05:00
Jesse Plamondon-Willard 0c1bca3db0 validate that mod APIs are public (#435) 2018-02-17 18:51:09 -05:00
Jesse Plamondon-Willard 84330e8680 split proxy builder & factory (#435) 2018-02-17 18:43:19 -05:00
Jesse Plamondon-Willard e64326f9fe Revert "rewrite all mod assemblies to let SMAPI proxy into their internal classes (#435)"
This reverts commit 0329976500.
2018-02-17 16:38:45 -05:00
Jesse Plamondon-Willard 754e356adc add install scripts for Linux/Mac (#434) 2018-02-17 02:00:46 -05:00
Jesse Plamondon-Willard 52867bb634 fix uninstall script not confirming success on Linux/Mac 2018-02-17 00:38:59 -05:00
Jesse Plamondon-Willard 4d9f836816 update Nexus URLs 2018-02-16 23:12:22 -05:00
Jesse Plamondon-Willard 8a19823267 add mod page URL to missing-dependency errors (#437) 2018-02-16 23:12:01 -05:00