Commit Graph

3308 Commits

Author SHA1 Message Date
Jesse Plamondon-Willard 5470e95bf5 add separate project to support upcoming IL rewriting (#166) 2016-11-29 14:02:59 -05:00
Jesse Plamondon-Willard b425e32055 move dependencies into targets file for reuse (#166) 2016-11-29 12:56:03 -05:00
Jesse Plamondon-Willard f3675aa466 move assembly map into constants (#166) 2016-11-28 20:51:57 -05:00
Jesse Plamondon-Willard f7b8879011 supplement assembly resolution for Mono (#166) 2016-11-27 15:56:47 -05:00
Jesse Plamondon-Willard 0d94c628bb add trace logs when rewriting an assembly (#166) 2016-11-27 12:27:44 -05:00
Jesse Plamondon-Willard 8917fb6697 only rewrite assemblies if needed (#166) 2016-11-27 12:08:00 -05:00
Jesse Plamondon-Willard 2e40ad7ad3 copy pdb/mdb files to assembly cache (#166) 2016-11-26 16:26:36 -05:00
Jesse Plamondon-Willard 2154b6de95 use simpler, non-broken approach for rewriting mod type references (#166) 2016-11-26 16:14:10 -05:00
Jesse Plamondon-Willard b06aed66c4 rewrite type references in mod assemblies to match target platform (#166) 2016-11-26 16:12:21 -05:00
Jesse Plamondon-Willard 4df1999855 move cache struct into its own file (#166) 2016-11-26 16:10:41 -05:00
Jesse Plamondon-Willard 1de8dc1b0f pass target platform to assembly rewriter for later use (#166) 2016-11-26 16:07:21 -05:00
Jesse Plamondon-Willard 7bea3c2ba0 add log entry when preprocessing an assembly (#166) 2016-11-26 16:00:02 -05:00
Jesse Plamondon-Willard e9fee3f6fe preprocess all mod assemblies for compatibility with multi-assembly mods (#166) 2016-11-26 13:14:26 -05:00
Jesse Plamondon-Willard 08d5ee293f simplify manifest.json path check 2016-11-26 13:14:26 -05:00
Jesse Plamondon-Willard 517a9d82fc preprocess mods through Mono.Cecil to allow rewriting later (#166) 2016-11-25 23:41:19 -05:00
Jesse Plamondon-Willard 00a3c14446 fix audio error on startup for some players by deferring update check 2016-11-24 12:43:28 -05:00
Jesse Plamondon-Willard 614de95a8e update for 1.2 release 2016-11-24 12:19:57 -05:00
Jesse Plamondon-Willard 0ed5f3e98e fix compatibility with mods which use the previous signature of Command.CallCommand 2016-11-23 20:44:49 -05:00
Jesse Plamondon-Willard 26266a946d revert Config.GenerateDefaultConfig<T> back to virtual method
SMAPI 1.0 changed this virtual method to abstract, since it's required for the configuration to work correctly. However this breaks some incorrectly-written older mods which didn't implement the method. Since this class is deprecated anyway, revert to the original behaviour for compatibility.
2016-11-23 20:31:46 -05:00
Jesse Plamondon-Willard 1dc3f1013f log relevant details when a ReflectionTypeLoadException is caught by SMAPI 2016-11-23 20:23:42 -05:00
Jesse Plamondon-Willard 9bf1ad71b4 intercept event handler exceptions (#179) 2016-11-21 22:09:02 -05:00
Jesse Plamondon-Willard 1a5eb12cc6 restore obsolete SPlayer for backwards compatibility, mark deprecated 2016-11-19 18:56:35 -05:00
Jesse Plamondon-Willard 7cb77dd2be update for 1.1.1 release 2016-11-19 17:04:21 -05:00
Jesse Plamondon-Willard cb6f6fe19d fix race condition where GameLoaded event was sometime fired before the game was ready 2016-11-19 16:03:45 -05:00
Jesse Plamondon-Willard bff59aacba restore all Log methods for backwards compatibility 2016-11-19 14:46:50 -05:00
Jesse Plamondon-Willard 5e9b030ec7 fix compatibility with mods using Log.Out 2016-11-19 00:10:16 -05:00
Jesse Plamondon-Willard 6a48094995 fix deprecation warnings beign repeated if the mod can't be identified 2016-11-19 00:09:39 -05:00
Jesse Plamondon-Willard d7be19e8f4 update for 1.1.1-alpha 2016-11-19 00:08:54 -05:00
Jesse Plamondon-Willard 14eee1e482 add comment 2016-11-19 00:03:34 -05:00
Jesse Plamondon-Willard f8f7b9c8d9 update for 1.1 release 2016-11-17 22:24:46 -05:00
Jesse Plamondon-Willard 59c35862ca add global assembly info 2016-11-17 22:23:45 -05:00
Jesse Plamondon-Willard 22fe2d8716 minor tweaks 2016-11-16 22:41:27 -05:00
Jesse Plamondon-Willard fa5c6ff066 cleanup 2016-11-16 18:45:29 -05:00
Jesse Plamondon-Willard eb39f3d5ea use interface for IModHelper 2016-11-16 17:52:49 -05:00
Jesse Plamondon-Willard 19bb255c98 add emergency interrupt feature (#168) 2016-11-16 17:36:28 -05:00
Jesse Plamondon-Willard 92cf3ab65e update for 1.1 beta 2016-11-16 16:55:11 -05:00
Jesse Plamondon-Willard 8dcd62f175 fix console closing immediately when some exceptions occur (#171), simplify initial logging 2016-11-16 16:49:40 -05:00
Jesse Plamondon-Willard 785af91952 add optional 'minimum API version' field to manifest (#176) 2016-11-16 16:21:17 -05:00
Jesse Plamondon-Willard 1ac930979a mark deprecated manifest fields 2016-11-16 15:14:45 -05:00
Jesse Plamondon-Willard 8c5404f99c fix error when json file doesn't exist (#170) 2016-11-14 23:32:38 -05:00
Jesse Plamondon-Willard 33e6a6db23 tweak deprecation messages 2016-11-14 23:10:12 -05:00
Jesse Plamondon-Willard 54c0f26d5d migrate game loop, events, and commands to new logging framework (#168) 2016-11-14 22:25:36 -05:00
Jesse Plamondon-Willard f54b464792 minor cleanup 2016-11-14 22:23:51 -05:00
Jesse Plamondon-Willard aafdcaa2c5 simplify null guards when rasing events 2016-11-14 22:09:44 -05:00
Jesse Plamondon-Willard bc8773bbdd migrate TrainerMod to new logging framework (#168) 2016-11-14 21:48:40 -05:00
Jesse Plamondon-Willard 31da528b46 make TrainerMod non-static 2016-11-14 21:39:09 -05:00
Jesse Plamondon-Willard 5a80bd92eb migrate main logging to new framework (#168) 2016-11-14 20:28:44 -05:00
Jesse Plamondon-Willard 9a36254e90 hide TrainerMod internals 2016-11-14 20:11:05 -05:00
Jesse Plamondon-Willard 6d1afe7d5c remove obsolete TrainerMod command 2016-11-14 20:10:39 -05:00
Jesse Plamondon-Willard bff02ffd9b format & document TrainerMod code 2016-11-14 20:09:44 -05:00
Jesse Plamondon-Willard f9823c2ed0 migrate deprecation manager to new logging (#168) 2016-11-14 19:31:22 -05:00
Jesse Plamondon-Willard 06b108d4c4 deprecate legacy logging interfaces, rewrite to use new framework under the hood (#168) 2016-11-14 19:27:44 -05:00
Jesse Plamondon-Willard 05cb096fc0 initialise new logging framework on startup (#168) 2016-11-14 19:20:11 -05:00
Jesse Plamondon-Willard e2aa78fda4 add new logging framework (#168) 2016-11-14 17:42:27 -05:00
Jesse Plamondon-Willard be9d624112 split mod registry out of deprecation manager for reuse (#168) 2016-11-13 12:17:05 -05:00
Jesse Plamondon-Willard 4b67242d15 update git repo for new-version check 2016-11-11 11:50:19 -05:00
Jesse Plamondon-Willard e665010f70 update for 1.0 release 2016-11-11 11:32:07 -05:00
Jesse Plamondon-Willard 58680ba39c normalise newlines in app.config 2016-11-11 11:27:02 -05:00
Jesse Plamondon-Willard a49ca07d31 fix deprecation warning for manifest.PerSaveConfigs 2016-11-10 15:56:58 -05:00
Jesse Plamondon-Willard 179df57ce8 rewrite command parsing, fix null reference exceptions in some cases 2016-11-10 10:11:02 -05:00
Jesse Plamondon-Willard f9983a4bca fix Windows-only build configuration not properly marked as such 2016-11-09 12:21:44 -05:00
Jesse Plamondon-Willard 01ed95267e bump version for 1.0-beta2 2016-11-09 12:12:38 -05:00
Jesse Plamondon-Willard af6746ef75 mark restored interfaces deprecated 2016-11-09 11:54:40 -05:00
Jesse Plamondon-Willard 0dcbf90ec2 restore obsolete interfaces for backwards compatibility with EntoFramework 2016-11-09 11:43:41 -05:00
Jesse Plamondon-Willard 69ffdb91b2 simplify debugging 2016-11-09 11:11:40 -05:00
Jesse Plamondon-Willard 7fa591cf22 remove unused files 2016-11-09 10:50:19 -05:00
Jesse Plamondon-Willard 5f6bc87829 update TrainerMod for 1.0 2016-11-08 13:56:27 -05:00
Jesse Plamondon-Willard dc28000d32 correct version in deprecation warning 2016-11-08 13:53:29 -05:00
Jesse Plamondon-Willard 7eee2158a0 fix an initialisation error when a Windows user has both "StardewValley.exe" and "Stardew Valley.exe" in their game directory 2016-11-08 01:09:51 -05:00
Jesse Plamondon-Willard 71e2ad82a9 update for 1.0 beta 2016-11-07 16:26:31 -05:00
Jesse Plamondon-Willard ba4237f7a3 group installer's path variables 2016-11-07 16:16:53 -05:00
Jesse Plamondon-Willard c69e45bfba detect appdata mods during install and move them (if possible) 2016-11-07 16:06:29 -05:00
Jesse Plamondon-Willard ffbc05d3a7 fix minor crossplatform issues 2016-11-06 17:23:34 -05:00
Jesse Plamondon-Willard d0025fc700 increase deprecation severity of method disabled in 0.39.3 (#165) 2016-11-06 16:16:44 -05:00
Jesse Plamondon-Willard 956e477edb add developer mode which shows all deprecation warnings, update release process (#165) 2016-11-06 11:15:46 -05:00
Jesse Plamondon-Willard e4d6cc1381 simplify log a bit more 2016-11-06 10:36:44 -05:00
Jesse Plamondon-Willard f9aa76e41f use more nuanced deprecation warnings (#165) 2016-11-06 10:30:25 -05:00
Jesse Plamondon-Willard 07d0dc38ca fix installer on Windows not ignoring quote characters in file path 2016-11-05 19:52:39 -04:00
Jesse Plamondon-Willard 6d4e014998 add quick summary to installer readme 2016-11-05 18:15:20 -04:00
Jesse Plamondon-Willard e2af64c7a9 mark extensions deprecated (#165) 2016-11-05 16:51:06 -04:00
Jesse Plamondon-Willard e78c136f52 document extensions 2016-11-05 16:34:45 -04:00
Jesse Plamondon-Willard 4b52245ad1 restore removed extensions for backwards compatibility 2016-11-05 16:22:11 -04:00
Jesse Plamondon-Willard 8d8b640779 add deprecation warnings (#165) 2016-11-05 16:20:31 -04:00
Jesse Plamondon-Willard 0749fdcbe5 use new helper to read manifest (#159) 2016-11-05 16:14:38 -04:00
Jesse Plamondon-Willard a929d70433 simplify exit logging 2016-11-05 01:47:32 -04:00
Jesse Plamondon-Willard e092417b9e add new config system, mark previous methods obsolete (#159) 2016-11-05 01:46:52 -04:00
Jesse Plamondon-Willard 067d5f6b69 add minimum game version check (#163) 2016-11-04 23:31:06 -04:00
Jesse Plamondon-Willard 4716b4cd21 make logging less verbose and more informative 2016-11-04 23:06:19 -04:00
Jesse Plamondon-Willard 1fa4551b1d minor cleanup 2016-11-04 20:24:21 -04:00
Jesse Plamondon-Willard 83f129aa16 remove old obsolete log methods 2016-11-04 20:18:21 -04:00
Jesse Plamondon-Willard b7b69707eb document inventory changed event objects 2016-11-04 20:13:58 -04:00
Jesse Plamondon-Willard ea0550028c simplify log singleton management 2016-11-04 20:02:39 -04:00
Jesse Plamondon-Willard 4c7329d75e make log writer internal (not meant for use outside SMAPI) 2016-11-04 20:01:45 -04:00
Jesse Plamondon-Willard 5fd708e43f format & document logging code 2016-11-04 19:52:12 -04:00
Jesse Plamondon-Willard cd27873afb reduce command log verbosity 2016-11-04 19:30:27 -04:00
Jesse Plamondon-Willard c8db03b209 format & document command class 2016-11-04 19:29:17 -04:00
Jesse Plamondon-Willard 8386f8a115 remove legacy workaround 2016-11-04 19:14:25 -04:00
Jesse Plamondon-Willard efcb7fe705 remove unneeded program fields 2016-11-04 19:14:01 -04:00
Jesse Plamondon-Willard a48f5a0d40 format & document program class 2016-11-04 18:57:50 -04:00
Jesse Plamondon-Willard 78e8a6a4a0 remove extensions from public interface, refactor & document 2016-11-04 18:24:10 -04:00
Jesse Plamondon-Willard ab3fffde0a remove unused extensions 2016-11-04 16:24:20 -04:00
Jesse Plamondon-Willard 7fe6dafbaa move 'mods loaded' out of constants 2016-11-04 16:14:14 -04:00
Jesse Plamondon-Willard 532235ef10 format & document constants 2016-11-04 16:12:09 -04:00
Jesse Plamondon-Willard da4269124c remove disabled & broken draw logic 2016-11-04 15:49:25 -04:00
Jesse Plamondon-Willard 9a3b4260f7 refactor to avoid an out parameter 2016-11-04 15:42:21 -04:00
Jesse Plamondon-Willard bec7025aa4 clean up duplicate checks 2016-11-04 15:32:15 -04:00
Jesse Plamondon-Willard 5a3951e77c simplify menu event logic (should have same effect) 2016-11-04 15:29:55 -04:00
Jesse Plamondon-Willard 810479fc8b update ReSharper settings 2016-11-04 14:48:31 -04:00
Jesse Plamondon-Willard 01a94c29d0 remove unused SGame fields & methods 2016-11-04 14:47:54 -04:00
Jesse Plamondon-Willard 85d596b6c1 format & document code in SGame (no logic changes) 2016-11-04 14:42:34 -04:00
Jesse Plamondon-Willard 69bb8178d2 normalise inconsistent line endings 2016-11-04 00:10:10 -04:00
Jesse Plamondon-Willard 0b5a05ba91 add crossplatform installer (#155) 2016-11-03 21:03:03 -04:00
Jesse Plamondon-Willard 59c900a9ac add update check (#154) 2016-11-03 00:43:41 -04:00
Jesse Plamondon-Willard 5125a168c5 use semantic versioning (#154) 2016-11-03 00:31:51 -04:00
Jesse Plamondon-Willard a793c84851 add operating system to initial console output to simplify troubleshooting 2016-11-03 00:25:40 -04:00
Jesse Plamondon-Willard ab3508af6f bump SMAPI version, clean up assembly info 2016-11-02 23:45:28 -04:00
Jesse Plamondon-Willard bb0e94e74f remove disabled code 2016-11-02 22:01:01 -04:00
Jesse Plamondon-Willard f1910b1328 remove debug mode toggle (#120) 2016-11-02 21:53:59 -04:00
Jesse Plamondon-Willard 7af9a92842 fix mod versions not being displayed correctly (#160) 2016-11-01 18:08:05 -04:00
Jesse Plamondon-Willard 310f705f19 format & document version class 2016-11-01 18:07:09 -04:00
Jesse Plamondon-Willard 493696690a fix spelling of 'Authour' manifest field with backwards compatibility (#158) 2016-11-01 02:00:29 -04:00
Jesse Plamondon-Willard 9ab5831eac format & document mod class 2016-11-01 01:31:41 -04:00
Jesse Plamondon-Willard 605c99ba70 format & document config code 2016-10-31 20:46:23 -04:00
Jesse Plamondon-Willard 9d461bb05b make config class abstract to force implementation of required method 2016-10-31 20:44:31 -04:00
Jesse Plamondon-Willard 4cda3ec5bf remove undocumented and unused APIs 2016-10-31 19:28:59 -04:00
Jesse Plamondon-Willard b6568f8d9d remove unused deserialisation logic per discussion 2016-10-31 17:15:27 -04:00
Jesse Plamondon-Willard 7d0cd22f1e add zoom-adjusted mouse position to mouse-changed event arguments (#129) 2016-10-31 17:01:16 -04:00
Jesse Plamondon-Willard 652776ed02 (#129) fix several events not correctly propagating state 2016-10-31 16:19:45 -04:00
Jesse Plamondon-Willard 7fe8511921 document & format event code 2016-10-31 14:48:23 -04:00
Jesse Plamondon-Willard d9adaf7386 split combined class files per .NET conventions 2016-10-31 12:05:02 -04:00
Jesse Plamondon-Willard 1c15738233 remove disabled and unfinished code 2016-10-31 11:50:31 -04:00
Jesse Plamondon-Willard 0340a3daab fix code being optimised in debug mode 2016-10-31 11:34:41 -04:00
Jesse Plamondon-Willard 0d5f6d2364 update file reference 2016-10-31 11:34:11 -04:00
Jesse Plamondon-Willard d0f912a3e9 remove support for mods in AppData directory (#156) 2016-10-30 22:31:21 -04:00
Jesse Plamondon-Willard 39e2e46a21 rewrite readme (simpler, link to canimod docs, document how to compile from source) 2016-10-30 22:21:19 -04:00
Jesse Plamondon-Willard a68f41c396 fix crossthread access violation when debugger is attached (#126) 2016-10-27 17:10:43 -04:00
Jesse Plamondon-Willard 6cc8c6d7c1 run game on main thread for Mac compatibility (#126) 2016-10-27 15:17:17 -04:00
Jesse Plamondon-Willard 58c026285a add System.Numerics to mod package for Mac (#126) 2016-10-27 14:32:28 -04:00
Jesse Plamondon-Willard f44eb6d66f only hook into WinForms on Windows for Mac compatibility (#126) 2016-10-27 13:40:42 -04:00
Jesse Plamondon-Willard 2ea2068486 include pdb for release build 2016-10-27 12:23:00 -04:00
Jesse Plamondon-Willard 80b2b3ddda rename Unix launcher for consistency with Windows install process (#126) 2016-10-27 02:03:29 -04:00
Jesse Plamondon-Willard 8eb0a94472 add launcher for Linux and Mac (#126) 2016-10-27 01:19:21 -04:00
Jesse Plamondon-Willard e643a38b78 only use assembly merging on Windows (#126)
Costura doesn't work on Linux and Mac, but we can just add a separate DLL for Json.NET on those platforms.
2016-10-27 00:40:48 -04:00
Jesse Plamondon-Willard 4e17de2f2c use simpler crossplatform window management (#126) 2016-10-26 23:43:32 -04:00
Jesse Plamondon-Willard 9436920d91 remove broken and unused test code (#126) 2016-10-26 21:15:34 -04:00
Jesse Plamondon-Willard 57da69c87c use platform-agnostic paths (#126) 2016-10-26 21:05:11 -04:00
Jesse Plamondon-Willard 2be6ad1574 choose correct references for platform automatically (#126) 2016-10-26 20:35:48 -04:00
Jesse Plamondon-Willard 4042ca4b16 detect game path automatically (#126) 2016-10-25 23:38:25 -04:00
ClxS 12e4822cbf Updated version number 2016-10-07 18:29:26 +01:00
ClxS 8017c23331 Disabled overridden update call 2016-10-07 18:22:31 +01:00
ClxS ed421572c3 Merged advize's changes 2016-10-04 18:12:29 +01:00
ClxS 269a325a7a Altered version number 2016-10-04 18:12:02 +01:00
AdvizeGH 6e6f632581 Reverted to previous SGame class with minor changes for 1.1, updated version number. 2016-10-04 04:14:29 -05:00
ClxS 5087c3d755 Updated build version id to 1.1 2016-09-30 19:19:18 +01:00
ClxS 2c0eaf26c0 Reverted to .net 4.5 - There was already quite a lot of trouble with people not having 4.5 installed before, I want to avoid that. 2016-09-30 19:16:16 +01:00
ClxS dd0aba6066 Disabled the overridden update call only - fixes mouse redraw issue. 2016-09-30 19:04:04 +01:00
ClxS a6752d30e3 Preliminiary update to add 1.1 support - waiting on testing to confirm it's final 2016-09-30 18:22:48 +01:00
Gormogon 27dece2cf4 Attempt to migrate to new directory structure. 2016-05-29 18:23:01 -04:00