Jesse Plamondon-Willard
11b889992c
move SButtons into root
2017-10-13 23:29:24 -04:00
Jesse Plamondon-Willard
b71601a252
fix recipe data not being reloaded when needed
2017-10-13 23:26:27 -04:00
Jesse Plamondon-Willard
c5932233eb
update mod data
2017-10-13 23:13:31 -04:00
Jesse Plamondon-Willard
f663ed3359
fix assets not being reloaded when mods implement IAssetEditor or IAssetLoader directly
2017-10-13 23:13:06 -04:00
Jesse Plamondon-Willard
ff718d7993
update Json.NET
2017-10-13 13:17:58 -04:00
Jesse Plamondon-Willard
42d1024e04
update HTML agility pack
2017-10-13 13:14:24 -04:00
Jesse Plamondon-Willard
0fa552e2b9
update test launch URL for web API
2017-10-13 13:11:10 -04:00
Jesse Plamondon-Willard
f04a68697a
update unit test dependencies
2017-10-13 12:58:18 -04:00
Jesse Plamondon-Willard
aa5c5b2783
fix SDate.Now() crashing during new-game intro ( #369 )
2017-10-13 00:33:05 -04:00
Jesse Plamondon-Willard
b3ac93a0dc
bump version for 2.0-beta.2
2017-10-12 22:20:56 -04:00
Jesse Plamondon-Willard
1e19a170be
refuse to load custom map tilesheets with absolute or directory-climbing paths ( #368 )
2017-10-12 22:20:19 -04:00
Jesse Plamondon-Willard
61a8b7bf2d
update mod data
2017-10-12 00:48:03 -04:00
Jesse Plamondon-Willard
8ce43241b1
bump mod build package version for update
2017-10-11 15:31:42 -04:00
Jesse Plamondon-Willard
3cfc272453
fix mod deploy failing to create subfolders if they don't already exist
2017-10-11 15:31:29 -04:00
Jesse Plamondon-Willard
127b36dedd
rm artifact
2017-10-11 15:30:37 -04:00
Jesse Plamondon-Willard
f2ac6fbb49
bump mod build package version for release
2017-10-10 22:48:06 -04:00
Jesse Plamondon-Willard
1c7dfb519d
move validation back into .targets for MonoDevelop compatibility
2017-10-10 22:33:45 -04:00
Jesse Plamondon-Willard
1c0d22e82c
validate build context before build
2017-10-10 21:59:05 -04:00
Jesse Plamondon-Willard
5dfb12c278
fix input events having decimal tile coordinates ( #367 )
2017-10-10 02:22:06 -04:00
Jesse Plamondon-Willard
c74b21141c
work around race condition in game code
2017-10-10 00:49:54 -04:00
Jesse Plamondon-Willard
54128ab482
update mod data
2017-10-10 00:02:31 -04:00
Jesse Plamondon-Willard
4f8994a1de
fix update check error
2017-10-09 21:03:25 -04:00
Jesse Plamondon-Willard
c456a0f56e
don't include Json.NET in mod deploy or release zip since it's loaded by SMAPI
2017-10-09 12:44:48 -04:00
Jesse Plamondon-Willard
dad0d67022
rm unneeded code
2017-10-09 12:43:41 -04:00
Jesse Plamondon-Willard
d47105a278
update mod build package nuspec
2017-10-08 21:21:11 -04:00
Jesse Plamondon-Willard
475efa12fe
rewrite mod build package per new docs
2017-10-08 18:05:47 -04:00
Jesse Plamondon-Willard
cd93382c64
move zip logic into method
2017-10-08 15:03:31 -04:00
Jesse Plamondon-Willard
abe52deba7
rename build task for broader use
2017-10-08 14:50:04 -04:00
Jesse Plamondon-Willard
fd060a0927
move release notes into mod build package docs
2017-10-08 13:04:36 -04:00
Jesse Plamondon-Willard
49f414bec5
move mod build config readme into docs
2017-10-08 02:37:41 -04:00
Jesse Plamondon-Willard
ef3a89587c
add support for SMAPI 2.0 version strings in mod release zip code
2017-10-08 02:31:51 -04:00
Jesse Plamondon-Willard
aae482255c
rm redundant code
2017-10-08 02:23:49 -04:00
Jesse Plamondon-Willard
0e5982bf9c
escape invalid characters in release zip paths
2017-10-08 02:22:12 -04:00
Jesse Plamondon-Willard
ca58da37cd
add prerelease tag to zip name & normalise version format
2017-10-08 02:13:08 -04:00
Jesse Plamondon-Willard
e2e7e096b7
handle various edge cases in manifest parsing for zip filename
2017-10-08 02:03:55 -04:00
Jesse Plamondon-Willard
ddad601de3
move create-zip task into project code
2017-10-08 01:27:52 -04:00
Jesse Plamondon-Willard
af68910685
convert mod build config into .NET project to simplify C# build tasks
2017-10-08 00:20:13 -04:00
Jesse Plamondon-Willard
24428d4405
fix duplicate semver regex
2017-10-08 00:11:50 -04:00
Jesse Plamondon-Willard
51f5be1e74
move semver implementation into shared project for reuse
2017-10-08 00:09:16 -04:00
Jesse Plamondon-Willard
b7fb188513
rename shared project for broader use
2017-10-07 23:57:47 -04:00
Jesse Plamondon-Willard
99617211fa
move license back to root so GitHub sees it, readme tweaks
2017-10-07 23:33:03 -04:00
Jesse Plamondon-Willard
929dccb75a
reorganise repo structure
2017-10-07 23:07:10 -04:00
Jesse Plamondon-Willard
926894f8f5
move mod build config files into subfolder
2017-10-07 22:11:12 -04:00
Jesse Plamondon-Willard
7889676ea2
update compatibility list
2017-10-07 20:56:02 -04:00
Jesse Plamondon-Willard
6d7449d00b
fix error when checking for updates to a mod with no data record
2017-10-04 23:36:03 -04:00
Jesse Plamondon-Willard
627f20b9c3
update one mod ID
2017-10-02 21:43:15 -04:00
Jesse Plamondon-Willard
365da8e6e4
detect use of 'dynamic' in mod code
2017-10-02 21:39:51 -04:00
Jesse Plamondon-Willard
bd4ed43829
fix errors caused by content managers finalizing asynchronously
2017-10-01 14:08:28 -04:00
Jesse Plamondon-Willard
29232ffd45
update mod key
2017-10-01 11:23:50 -04:00
Jesse Plamondon-Willard
5f7640100b
update for 2.0 beta release
2017-09-27 20:47:01 -04:00
Jesse Plamondon-Willard
3c42119c8c
restore AssemblyRewriters assembly for method injection
...
This fixes a SMAPI 2.0 issue where mods would fail with MethodAccessException if they used SpriteBatch methods that got rewritten for MonoGame/XNA compatibility, because the methods SMAPI injected were internal. Moving it back into a separate assembly lets us make it public without making it visible to modders.
2017-09-26 21:08:54 -04:00
Jesse Plamondon-Willard
83bc6264e4
simplify API fetch code
2017-09-26 20:46:25 -04:00
Jesse Plamondon-Willard
b67c0602c6
remove base.Entry() method calls ( #362 )
2017-09-26 16:45:47 -04:00
Jesse Plamondon-Willard
525a3efb91
add data for a few more mods ( #361 )
2017-09-26 10:33:43 -04:00
Jesse Plamondon-Willard
c1a9dc7f7e
minor cleanup after 1.x removal
2017-09-26 01:55:26 -04:00
Jesse Plamondon-Willard
07382277ea
add support for multiple mods having the same update key ( #336 )
2017-09-25 22:15:30 -04:00
Jesse Plamondon-Willard
2c87961c9e
improve mod update-check validation & errors ( #336 )
2017-09-25 21:21:27 -04:00
Jesse Plamondon-Willard
5cb183e16d
consolidate update fields in manifest & SMAPI config ( #336 , #361 )
2017-09-25 21:11:48 -04:00
Jesse Plamondon-Willard
4fd3fdc0d8
use SMAPI version in web API ( #336 )
2017-09-25 18:18:43 -04:00
Jesse Plamondon-Willard
da12f91379
don't check for updates to Entoarox mods per request ( #361 )
2017-09-25 17:43:52 -04:00
Jesse Plamondon-Willard
a4dfcf229e
add mod data for update checks ( #361 )
2017-09-25 17:40:39 -04:00
Jesse Plamondon-Willard
d338322bc6
fix update checks not normalising remote versions ( #336 )
2017-09-25 17:40:00 -04:00
Jesse Plamondon-Willard
6dff9779a3
use POST for SMAPI update checks to avoid issues with long queries ( #336 )
2017-09-25 17:39:51 -04:00
Jesse Plamondon-Willard
b105c97dda
add support for remapping legacy versions for update checks ( #361 )
2017-09-24 19:55:34 -04:00
Jesse Plamondon-Willard
f84def385d
sort update-check trace logs ( #361 )
2017-09-24 17:44:56 -04:00
Jesse Plamondon-Willard
cb1f11a846
update config documentation ( #361 )
2017-09-24 14:10:36 -04:00
Jesse Plamondon-Willard
021e1a278b
list SMAPI update separately ( #336 , #361 )
2017-09-24 13:35:26 -04:00
Jesse Plamondon-Willard
9b247b67f6
improve version normalising ( #336 , #361 )
2017-09-24 13:19:02 -04:00
Jesse Plamondon-Willard
96acccad7c
bug fixes, improve update-check logging ( #361 )
2017-09-24 12:13:34 -04:00
Jesse Plamondon-Willard
ce9be43db3
remove name from data record ( #361 )
2017-09-24 11:28:08 -04:00
Jesse Plamondon-Willard
0c06b129ca
add support for specifying default update fields, migrate mods already in mod list ( #361 )
2017-09-24 02:33:33 -04:00
Jesse Plamondon-Willard
8e0d1b8682
minor bug fixes ( #361 )
2017-09-24 02:25:35 -04:00
Jesse Plamondon-Willard
5f85d89974
handle common 'v' version prefix on GitHub ( #336 )
2017-09-24 02:15:28 -04:00
Jesse Plamondon-Willard
00957a2317
validate semantic versions in API ( #336 , #361 )
2017-09-24 01:30:28 -04:00
Jesse Plamondon-Willard
d3f0c8e4d2
add support for update checks from the Chucklefish mod site ( #336 )
2017-09-24 01:10:17 -04:00
Jesse Plamondon-Willard
0863f9b7e5
revamp mod compatibility fields to allow broader use of mod data records ( #361 )
2017-09-24 00:23:48 -04:00
Jesse Plamondon-Willard
33af789e2e
abstract mod IDs with multiple variants ( #361 )
2017-09-23 22:50:35 -04:00
Jesse Plamondon-Willard
9495cc0f49
rename mod compatibility records for broader use ( #361 )
2017-09-23 22:07:29 -04:00
Jesse Plamondon-Willard
a89dbce854
unify disabled-mod and compatibility lists ( #361 )
2017-09-23 21:48:53 -04:00
Jesse Plamondon-Willard
8bcc80a33d
rename mod compatibility type for broader use ( #361 )
2017-09-23 21:35:07 -04:00
Jesse Plamondon-Willard
2d36105c33
drop support for SMAPI 1.x ( #360 )
2017-09-23 20:53:12 -04:00
Jesse Plamondon-Willard
a149f82b7a
update compatibility list for SMAPI 2.0
2017-09-23 20:22:07 -04:00
Jesse Plamondon-Willard
57111a6e8f
update file name ( #336 )
2017-09-23 20:03:45 -04:00
Jesse Plamondon-Willard
873abef235
add mod update checks based on manifest fields ( #336 )
2017-09-23 19:15:07 -04:00
Jesse Plamondon-Willard
e178ed14be
migrate SMAPI update check to new web API ( #336 )
2017-09-23 18:04:56 -04:00
Jesse Plamondon-Willard
bdee7f88e9
move API models into shared project for reuse ( #336 )
2017-09-23 14:37:58 -04:00
Jesse Plamondon-Willard
9ffe0bd371
switch to the mods GET endpoint ( #336 )
2017-09-23 14:19:10 -04:00
Jesse Plamondon-Willard
c2d8760c56
make web controllers internal ( #336 )
...
This is needed to support internal models, which is needed to share the models with the main SMAPI assembly without making them visible to mods.
2017-09-23 14:15:59 -04:00
Jesse Plamondon-Willard
eaabd91f31
authenticate GitHub queries if auth details are configured ( #336 )
2017-09-22 23:43:58 -04:00
Jesse Plamondon-Willard
0d6f6a9ace
add GitHub update check support ( #336 )
2017-09-22 22:42:04 -04:00
Jesse Plamondon-Willard
71d85a0c22
restrict version to a valid SMAPI version ( #336 )
2017-09-22 22:11:04 -04:00
Jesse Plamondon-Willard
ecdbefffd9
move hardcoded values into config ( #336 )
2017-09-22 21:49:05 -04:00
Jesse Plamondon-Willard
ba5cc149e2
add in-memory cache for remote queries ( #336 )
2017-09-22 20:46:38 -04:00
Jesse Plamondon-Willard
e4a2f55517
add GET endpoint for testing ( #336 )
2017-09-22 20:33:09 -04:00
Jesse Plamondon-Willard
2406d4b0a6
add subdomain rewrite rule ( #336 )
2017-09-22 20:19:12 -04:00
Jesse Plamondon-Willard
f8566067e0
update launch URL ( #336 )
2017-09-22 20:09:22 -04:00
Jesse Plamondon-Willard
67ce5fcc45
remove unneeded dependencies ( #336 )
2017-09-22 20:09:06 -04:00
Jesse Plamondon-Willard
24afbad3a9
remove unneeded project settings ( #336 )
2017-09-22 19:55:57 -04:00
Jesse Plamondon-Willard
89ca5952c5
update web API to .NET Core 2.0 so we can use more packages, update all packages ( #336 )
2017-09-22 19:24:31 -04:00
Jesse Plamondon-Willard
5619890abf
indent JSON responses ( #336 )
2017-09-22 18:19:42 -04:00
Jesse Plamondon-Willard
86d4827df2
simplify input & output format ( #336 )
2017-09-22 03:01:40 -04:00
Jesse Plamondon-Willard
399b98b36b
suppress null properties in JSON responses ( #336 )
2017-09-22 02:06:54 -04:00
Jesse Plamondon-Willard
7d703c9c5c
handle invalid Nexus mod IDs ( #336 )
2017-09-22 02:00:15 -04:00
Jesse Plamondon-Willard
86e5559678
switch mod update endpoint to GET with comma-delimited mod keys ( #336 )
2017-09-22 01:57:18 -04:00
Jesse Plamondon-Willard
ef60b8d32a
add version number to route for future use ( #336 )
2017-09-22 01:23:27 -04:00
Jesse Plamondon-Willard
9c072333d1
rename mods endpoint & model ( #336 )
2017-09-22 00:58:25 -04:00
Jesse Plamondon-Willard
2c02dfe45a
rewrite to make update-check logic vendor-agnostic ( #336 )
2017-09-22 00:47:46 -04:00
Jesse Plamondon-Willard
edbc3ef3c0
refactor Nexus code into generic vendor, rewrite using fluent HTTP client ( #336 )
2017-09-22 00:13:04 -04:00
Jesse Plamondon-Willard
dfae52b1e5
fix manual serialisation ( #336 )
2017-09-21 23:50:34 -04:00
Jesse Plamondon-Willard
1bd59fc1d8
split input model from Nexus response model ( #336 )
2017-09-21 23:48:47 -04:00
Jesse Plamondon-Willard
cddcd9a8cf
standardise project name ( #336 )
2017-09-21 23:39:12 -04:00
Jesse Plamondon-Willard
9791de306c
minor cleanup, formatting, documentation ( #336 )
2017-09-21 23:35:18 -04:00
Jesse Plamondon-Willard
f0e2117f70
remove mod metadata from instruction handlers, no longer needed ( #347 )
2017-09-20 00:33:36 -04:00
Jesse Plamondon-Willard
81c42ac773
warn for mods which change the serialiser ( #347 )
2017-09-20 00:23:45 -04:00
Jesse Plamondon-Willard
5126992958
disable new ReSharper inspection
2017-09-20 00:09:47 -04:00
Jesse Plamondon-Willard
1aa44b2624
add support for detecting game patching via Harmony ( #347 )
2017-09-20 00:08:04 -04:00
Jesse Plamondon-Willard
ab135fbd84
encapsulated duplicate code ( #347 )
2017-09-19 23:53:22 -04:00
Jesse Plamondon-Willard
1cf7c2e872
rename file to match new type name ( #347 )
2017-09-19 23:43:41 -04:00
Jesse Plamondon-Willard
ebf22c1b06
generalise IInstructionRewriter into IInstructionHandler ( #347 )
2017-09-19 23:42:54 -04:00
Jesse Plamondon-Willard
fd10cf958c
move rewriters into metadata class ( #347 )
2017-09-19 23:02:00 -04:00
Jesse Plamondon-Willard
c513bb011c
pass mod metadata into rewriters ( #347 )
2017-09-19 22:52:52 -04:00
Jesse Plamondon-Willard
954de8c4f2
move monitor.LogOnce into internal extensions for reuse ( #347 )
2017-09-19 22:46:00 -04:00
Jesse Plamondon-Willard
8c5bd12f47
merge assembly rewriters into main SMAPI project ( #347 )
2017-09-19 22:45:28 -04:00
Jesse Plamondon-Willard
23951220ae
fix errors loading some custom map tilesheets on Linux/Mac
2017-09-08 13:18:43 -04:00
Jesse Plamondon-Willard
1825755e75
update for release
2017-09-08 11:50:49 -04:00
Jesse Plamondon-Willard
c994747e51
add UTC timestamp to logs
2017-09-06 23:22:11 -04:00
Jesse Plamondon-Willard
b2b3df08bc
rewrite date calculation to handle edge cases
2017-09-06 22:04:51 -04:00
Jesse Plamondon-Willard
d971514a3d
fix '.dll.dll' in logs ( #355 )
2017-09-03 15:51:38 -04:00
Jesse Plamondon-Willard
b86d9f7c0e
handle maps referencing a non-spring seasonal variation ( #352 )
2017-09-03 00:00:39 -04:00
Jesse Plamondon-Willard
3e820b82bc
account for game loading tilesheets from either Content or Content\Maps ( #352 )
2017-09-02 23:58:43 -04:00
Jesse Plamondon-Willard
dac21226d2
fix IAssetLoader instances not able to load a map tilesheet if it doesn't also exist in the content folder ( #352 )
2017-09-01 21:05:08 -04:00
Jesse Plamondon-Willard
da11ea66db
add SButton extension to get InputButton equivalent
2017-09-01 14:51:12 -04:00
Jesse Plamondon-Willard
7167cd2253
simplify & fix asset disposal ( #352 )
2017-08-24 22:17:42 -04:00
Jesse Plamondon-Willard
5171829ecc
restructure content manager to better handle asset disposal ( #352 )
2017-08-24 21:48:56 -04:00
Jesse Plamondon-Willard
f446a4391a
fix game's main temporary content manager not being intercepted ( #352 )
2017-08-24 20:48:06 -04:00
Jesse Plamondon-Willard
5622e3b319
fix map tilesheet load not handling seasonal variations ( #352 )
2017-08-24 20:44:44 -04:00
Jesse Plamondon-Willard
7d5f95a6db
update for SMAPI 1.15.3 release
2017-08-23 16:23:45 -04:00
Jesse Plamondon-Willard
e93d58f69b
fix incorrect 'mod already loaded' errors in some cases
2017-08-23 16:13:28 -04:00
Jesse Plamondon-Willard
e42f06c916
update for 1.15.2 release
2017-08-21 14:49:09 -04:00
Jesse Plamondon-Willard
80fe706f19
show friendlier error when players have two copies of a mod
2017-08-21 14:22:19 -04:00
Jesse Plamondon-Willard
723ddc255e
break loops when loading assets through a mod loader
2017-08-17 17:46:45 -04:00
Jesse Plamondon-Willard
9e1d01d4fe
fix 1.x build
2017-08-17 12:16:39 -04:00
Jesse Plamondon-Willard
8e9b99ec99
update unit test packages
2017-08-16 23:56:20 -04:00
Jesse Plamondon-Willard
2ec0e0e26a
only invalidate cache entries matched by new interceptors
2017-08-16 23:27:07 -04:00
Jesse Plamondon-Willard
49ff572932
fix build config
2017-08-16 23:03:14 -04:00
Jesse Plamondon-Willard
2ebc0714b1
add terminal support on Xfce ( #345 )
...
Thanks to Patronos!
2017-08-16 21:51:03 -04:00
Jesse Plamondon-Willard
1e48e7d12b
add tool tilesheet to core assets to reload ( #346 )
2017-08-16 21:46:01 -04:00
Jesse Plamondon-Willard
da4708337b
minor tweaks to .editorconfig
2017-08-14 21:26:33 -04:00
Jesse Plamondon-Willard
72d42ddff8
move custom build configuration into common.targets to simplify maintenance
2017-08-14 08:22:50 -04:00
Jesse Plamondon-Willard
c47e43a1e9
rename crossplatform.targets to common.targets for reuse
2017-08-14 08:11:11 -04:00
Jesse Plamondon-Willard
67b1a8398f
fix SemanticVersion not being deserialisable through Json.NET
2017-08-14 07:55:21 -04:00
Jesse Plamondon-Willard
56c66ca4e5
update compatibility list
2017-08-14 02:14:25 -04:00
Jesse Plamondon-Willard
021672e43d
add content helper properties for the current language
2017-08-14 01:57:11 -04:00
Jesse Plamondon-Willard
527b00ee13
ignore installer arguments until SMAPI 2.0
2017-08-14 01:53:15 -04:00
Jesse Plamondon-Willard
f89d41cdad
bump version for upcoming SMAPI 1.15.2 release
2017-08-14 00:15:16 -04:00
Jesse Plamondon-Willard
dc99ae761f
blacklist old versions of Entoarox mods (overhauled for SMAPI 1.11+ compatibility)
2017-08-14 00:14:45 -04:00
spacechase0
dafebd1626
Fix building SMAPI 1.x
2017-08-09 17:41:36 -04:00
Jesse Plamondon-Willard
baeaf826a9
add asset editors & loaders to content API in 2.0 ( #255 )
2017-08-07 14:12:18 -04:00
Jesse Plamondon-Willard
7976df8565
optimise semver regex using atomic groups
2017-08-02 02:36:55 -04:00
Jesse Plamondon-Willard
a15a2c5d09
tweak semantic version regex to fix unnecessary capturing groups
2017-08-02 02:24:02 -04:00
Jesse Plamondon-Willard
937750f100
add installer command-line arguments for scripting ( #337 )
2017-08-02 01:36:56 -04:00
Jesse Plamondon-Willard
3ffcac3f1f
fix Context.IsPlayerFree being false when player can't move ( #330 )
...
For example, the value was false when the player used a tool which wasn't intended.
2017-08-02 00:26:56 -04:00
Jesse Plamondon-Willard
201d54bbeb
standardise code & update release notes ( #339 )
2017-08-01 15:35:06 -04:00
Nicholas Johnson
4ff15b9da9
add weekday property to SDate ( #339 )
2017-08-01 15:27:02 -04:00
Jesse Plamondon-Willard
3599daee45
remove support for invalidating mod assets per discussion ( #335 )
2017-08-01 00:51:27 -04:00
Jesse Plamondon-Willard
9b22f3e004
fix GraphicsEvents.Resize being raised before the game updates its window data ( #328 )
2017-07-31 23:48:53 -04:00
Jesse Plamondon-Willard
7992b52f03
fix AfterDayStarted event being raised during the new-game intro ( #332 )
2017-07-31 23:18:49 -04:00
Jesse Plamondon-Willard
17acf248b6
prevent mods from accessing SMAPI internals using its own reflection helper ( #334 )
2017-07-31 21:54:46 -04:00
Jesse Plamondon-Willard
64facdd439
add support for reloading more singleton assets ( #335 )
2017-07-23 20:44:04 -04:00
Jesse Plamondon-Willard
e8648e217a
add support for reloading wallpaper and building textures ( #335 )
2017-07-23 20:22:33 -04:00
Jesse Plamondon-Willard
eeee6b185d
use more flexible approach to core asset reloading ( #335 )
2017-07-23 19:39:17 -04:00
Jesse Plamondon-Willard
467ad2ffd4
let mods invalidate cached assets by name or type ( #335 )
2017-07-23 17:36:31 -04:00
Jesse Plamondon-Willard
4ea6a4102b
add support for partial cache invalidation ( #335 )
2017-07-23 15:08:14 -04:00
Jesse Plamondon-Willard
f7e22b551a
remove outdated message about beta release branch ( #333 )
2017-07-23 13:16:01 -04:00
Jesse Plamondon-Willard
74be6f1311
improve handling of legacy non-semantic game versions ( #333 )
2017-07-23 13:15:28 -04:00
Jesse Plamondon-Willard
5cf961ab64
fix unit test
2017-07-23 13:09:30 -04:00
Jesse Plamondon-Willard
e04fc84190
update compatibility list
2017-07-23 12:18:52 -04:00
Jesse Plamondon-Willard
c20b21bcaa
add support for disambiguating IDs in mod compatibility list
2017-07-23 12:14:33 -04:00
Jesse Plamondon-Willard
1bf8e2b95c
change order of broken-in-2.0 checks to show more meaningful matches first
2017-07-23 12:13:56 -04:00
Jesse Plamondon-Willard
17fec9034c
tweak heuristic skip text, add error if mod doesn't implement Entry
2017-07-23 12:13:17 -04:00
Jesse Plamondon-Willard
7c1ac555a4
simplify compatibility list by defaulting compatibility type, update readme
2017-07-23 12:11:46 -04:00
Jesse Plamondon-Willard
7d73b0bf0c
simplify compatibility skip message in 2.0 & combine update URL fields
2017-07-23 11:58:24 -04:00
Jesse Plamondon-Willard
6ddcef61e9
simplify mod compatibility model parsing
2017-07-23 11:50:24 -04:00
Jesse Plamondon-Willard
d0e0e9427e
rename ManifestFieldConverter for broader usage
2017-07-23 11:50:18 -04:00
Jesse Plamondon-Willard
24b824644d
make semantic versions equatable in 2.0
2017-07-23 11:50:09 -04:00
Jesse Plamondon-Willard
5726ebe20e
remove TrainerMod's save and load commands in 2.0
2017-07-23 11:37:55 -04:00
Jesse Plamondon-Willard
48ced0336c
use more readable colours if player has a light-backgrounded terminal ( #327 )
2017-07-13 18:30:46 -04:00
Jesse Plamondon-Willard
ae01396d9d
fix crash in unique-ID check when mod has no manifest ( #323 )
2017-07-13 17:26:36 -04:00
Jesse Plamondon-Willard
834aee92f2
fix TrainerMod including Json.NET
2017-07-10 22:09:02 -04:00
Jesse Plamondon-Willard
eff3581406
change SMAPI 2.0 link in deprecation warnings
2017-07-10 20:47:16 -04:00
Jesse Plamondon-Willard
9256bfc45a
bump version for release
2017-07-10 20:38:21 -04:00
Jesse Plamondon-Willard
db29d6677f
fix legacy controller events broken in 1.15 ( #325 )
2017-07-10 20:25:38 -04:00
Jesse Plamondon-Willard
234b640342
normalise unique IDs in mod registry lookups, update release notes
2017-07-10 14:43:52 -04:00
Jesse Plamondon-Willard
d82e57d306
enable SMAPI 2.0 mode by default
...
This commit replaces the SMAPI_2_0 compile flag with SMAPI_1_x.
2017-07-10 14:33:36 -04:00
Jesse Plamondon-Willard
61d13d370c
fail mods if their unique ID isn't unique ( #323 )
2017-07-10 13:30:20 -04:00
Jesse Plamondon-Willard
7bf0c66088
reduce duplicate code in unit tests
2017-07-10 13:25:19 -04:00
Jesse Plamondon-Willard
49edb712ec
fix unit tests broken by removing Stardew Valley.exe from build output
2017-07-10 12:53:58 -04:00
Jesse Plamondon-Willard
182828f194
fix Stardew Valley.exe being packaged with TrainerMod
2017-07-09 22:22:41 -04:00
Jesse Plamondon-Willard
8743c4115a
tweak deprecation meta-warning
2017-07-08 12:53:12 -04:00
Jesse Plamondon-Willard
cb5e2e34c7
remove another reference to removed file
2017-07-08 12:31:45 -04:00
Jesse Plamondon-Willard
d74463092d
standardise file encoding
2017-07-08 12:31:22 -04:00
Jesse Plamondon-Willard
d426d72498
update for 1.15 release
2017-07-07 17:20:09 -04:00
Jesse Plamondon-Willard
f1fabd410b
remove reference to removed file
2017-07-07 17:15:08 -04:00
Jesse Plamondon-Willard
e61f060b96
simplify stardewvalley.targets support, add to release notes ( #319 )
2017-07-07 16:58:55 -04:00
spacechase0
7e856106b8
Tweak debug deploy to respect stardewvalley.targets
2017-07-07 21:55:32 +01:00
Jesse Plamondon-Willard
5583e707b2
split helper out of mod registry, add mod ID, refactor ModHelper constructor ( #318 )
2017-07-07 12:17:22 -04:00
Jesse Plamondon-Willard
053c0577ec
add mod ID to mod helpers ( #318 )
2017-07-07 11:44:18 -04:00
Jesse Plamondon-Willard
f033b5a2f7
group mod helpers ( #318 )
2017-07-07 11:39:09 -04:00
Jesse Plamondon-Willard
c5e106801e
split reflection logic out of mod helper ( #318 )
2017-07-07 11:29:17 -04:00
Jesse Plamondon-Willard
3b8d1e49f0
make deprecation warnings a bit less scary until we finish first-pass SMAPI 2.0 migration
2017-07-07 01:54:53 -04:00
Jesse Plamondon-Willard
da8a56a855
tweak text when mod crashes on entry, increase log level to error
2017-07-07 01:53:55 -04:00
Jesse Plamondon-Willard
d928bf188e
add optional mod dependencies in SMAPI 2.0 ( #287 )
2017-07-06 17:46:04 -04:00
Jesse Plamondon-Willard
e2b9a4bab3
serialise SButtons as string in config.json ( #316 )
2017-07-06 15:17:47 -04:00
Jesse Plamondon-Willard
baf2c63282
add method to suppress button input from game ( #317 )
2017-07-05 15:43:50 -04:00
Jesse Plamondon-Willard
8d301162d8
add InputEvents which unify keyboard, mouse, and controller input with more metadata ( #316 )
2017-07-05 15:41:58 -04:00
Jesse Plamondon-Willard
2f42051cc9
tweak method name per feedback ( #255 )
2017-07-04 18:18:52 -04:00
Jesse Plamondon-Willard
5ad74396fc
correct manual install steps
2017-07-03 15:23:54 -04:00
Jesse Plamondon-Willard
96da7c1cbc
fix crash in new content manager when returning to title ( #255 )
2017-07-03 14:49:29 -04:00
Jesse Plamondon-Willard
18e5e42529
defer some console changes until SMAPI 2.0
2017-07-03 14:26:45 -04:00
Jesse Plamondon-Willard
0f05e7bd54
fix error when mods have no manifest
2017-07-03 14:12:15 -04:00
Jesse Plamondon-Willard
697155c8a2
update deprecation warning text
2017-07-03 14:11:39 -04:00
Jesse Plamondon-Willard
7cb523cd49
bump all deprecation levels to 'pending removal'
2017-07-03 14:09:26 -04:00
Jesse Plamondon-Willard
136525b40d
remove System.ValueTuple
...
This caused reference errors on Linux/Mac, and there aren't enough use cases to look into it further for now.
2017-07-03 01:29:56 -04:00
Jesse Plamondon-Willard
771263299c
add SMAPI 2.0 compile mode
2017-07-03 01:03:13 -04:00
Jesse Plamondon-Willard
c9c354a66f
slim down console output for players some more
2017-07-02 21:36:04 -04:00
Jesse Plamondon-Willard
6a628a4d8a
simplify log timestamps in console (except in developer mode)
2017-07-02 21:24:32 -04:00
Jesse Plamondon-Willard
0e6d30f65b
further simplify console output for players
2017-07-02 20:51:49 -04:00
Jesse Plamondon-Willard
698328c52f
fix rare crash for some players when window loses focus ( #306 )
2017-07-02 19:42:05 -04:00
Jesse Plamondon-Willard
e69d1615c4
throw more useful error when JSON file is invalid ( #314 )
2017-07-02 19:32:40 -04:00
Jesse Plamondon-Willard
f698352718
tweak trace logging when loading mods
2017-07-02 18:27:22 -04:00
Jesse Plamondon-Willard
f904b3da97
add unified player_add command which adds any item type ( #302 )
2017-07-02 18:17:20 -04:00
Jesse Plamondon-Willard
40e8d3da0e
migrate list_items command to new item repository ( #302 )
2017-07-02 17:37:30 -04:00
Jesse Plamondon-Willard
a0c4746c27
add list_item_types command ( #302 )
2017-07-02 17:22:36 -04:00
Jesse Plamondon-Willard
5d5f7192dc
add item repository which returns all spawnable items in the game ( #302 )
...
Based on code I wrote for CJB Item Spawner.
2017-07-02 17:21:28 -04:00
Jesse Plamondon-Willard
2ca49fba62
encapsulate TrainerMod's argument parsing ( #302 )
2017-07-02 02:45:02 -04:00
Jesse Plamondon-Willard
f9482906ae
split TrainerMod commands into separate classes ( #302 )
2017-07-02 01:32:07 -04:00
Jesse Plamondon-Willard
6da5a2d56d
prevent mods from using SMAPI 2.0 content interception without reflection ( #255 )
2017-07-01 23:24:29 -04:00
Jesse Plamondon-Willard
f95c7e8d72
add support for asset loaders ( #255 )
2017-07-01 23:13:43 -04:00
Jesse Plamondon-Willard
600ef56286
improve error handling when mods set invalid asset value ( #255 )
2017-07-01 21:31:21 -04:00
Jesse Plamondon-Willard
306427786b
let mods implement IAssetEditor for simple cases ( #255 )
2017-07-01 19:55:08 -04:00
Jesse Plamondon-Willard
3b6adf3c26
reset asset cache when a new interceptor is added ( #255 )
...
This lets new interceptors edit assets loaded before they were added, particularly assets loaded before mods are initialised.
2017-07-01 19:39:04 -04:00
Jesse Plamondon-Willard
4568f2259b
ensure there's only one content manager instance ( #255 )
2017-07-01 19:35:24 -04:00
Jesse Plamondon-Willard
9651e87053
slight refactor
2017-07-01 19:27:05 -04:00
Jesse Plamondon-Willard
306c044c4a
group skipped mods in console log
2017-07-01 13:39:31 -04:00
Jesse Plamondon-Willard
271843d861
tweak asset interception code to simplify future work ( #255 )
2017-07-01 12:18:41 -04:00
Jesse Plamondon-Willard
49c75de5fc
rewrite content interception using latest proposed API ( #255 )
2017-07-01 12:18:41 -04:00
Jesse Plamondon-Willard
7b6b2742f6
fix corrupted state exceptions not being logged by SMAPI
2017-06-27 11:37:50 -04:00
Jesse Plamondon-Willard
a9958dac6a
clean up log output when loading mods
2017-06-27 11:22:36 -04:00
Jesse Plamondon-Willard
f7f1b1e513
add CONTRIBUTING.md file
2017-06-26 12:26:35 -04:00
Jesse Plamondon-Willard
6073d24cab
change manifest.MinimumApiVersion to ISemanticVersion
2017-06-26 11:08:45 -04:00
Jesse Plamondon-Willard
8d7b5b3726
improve logging when SMAPI loads mods
2017-06-26 11:01:47 -04:00
Jesse Plamondon-Willard
e66ee50cae
add manual install steps to readme (removing from main guide)
2017-06-19 20:41:48 -04:00
Jesse Plamondon-Willard
640a523eb4
when the ObjectInformation.xnb file is broken, print one error instead of a warning flood
2017-06-19 02:12:18 -04:00
Jesse Plamondon-Willard
565aa2c67b
add unit tests for version comparison
2017-06-19 01:26:22 -04:00
Jesse Plamondon-Willard
a011c28d40
make version parsing stricter, add unit tests for parsing ( #309 )
2017-06-19 01:05:43 -04:00
Jesse Plamondon-Willard
ec914874ec
reorganise unit tests
2017-06-18 22:16:51 -04:00
Jesse Plamondon-Willard
fb8fefea00
show friendly error when parsing a manifest version fails ( #308 )
2017-06-18 22:11:48 -04:00
Jesse Plamondon-Willard
b46776a4fb
enable string versions in manifest.json ( #308 )
2017-06-18 22:08:56 -04:00
Jesse Plamondon-Willard
3e50c90230
add IEquatable<SDate> interface to SDate ( #307 )
2017-06-18 20:55:12 -04:00
Jesse Plamondon-Willard
0a8c07cc07
simplify date operators by making SDate.GetHashCode() return unique ordered values, expand unit tests ( #307 )
2017-06-18 20:24:32 -04:00
Jesse Plamondon-Willard
7e815911e2
add tuples to test project ( #307 )
2017-06-18 20:23:15 -04:00
Jesse Plamondon-Willard
9c22c2378f
remove test adapter ( #307 )
2017-06-18 20:22:35 -04:00
Nicholas Johnson
230ab1738a
- This adds in operators to SDate. And Tests. And a NUnit Adapter - sorry about the latter..
2017-06-18 23:21:37 +01:00
Jesse Plamondon-Willard
3c3953a7fd
add support for minimum dependency versions ( #286 )
2017-06-18 18:18:04 -04:00
Jesse Plamondon-Willard
cdac6dad7d
enable C# 7 tuples
2017-06-18 18:01:15 -04:00
Jesse Plamondon-Willard
b0967e6309
add SerializerUtils to obsolete-mods list
2017-06-12 18:51:17 -04:00
Jesse Plamondon-Willard
a4713ea882
add separate list of obsolete mods
2017-06-12 18:44:36 -04:00
Jesse Plamondon-Willard
2a9c8d43df
add date utility
2017-06-07 02:08:20 -04:00
Chase W
57d20614b8
Add player_addwallpaper and player_addflooring
2017-06-04 16:22:36 -04:00
Jesse Plamondon-Willard
fd485abe28
bump version for release
2017-06-04 16:21:56 -04:00
Jesse Plamondon-Willard
91cec58fdb
tweak translation API to always return translations ( #303 )
2017-06-03 23:56:43 -04:00
Jesse Plamondon-Willard
3a8e77a309
update for release
2017-06-02 18:25:11 -04:00
Jesse Plamondon-Willard
9610ccb519
add TimeSpeed <2.2.1 to incompatibility list
2017-06-02 18:00:57 -04:00
Jesse Plamondon-Willard
40dc986ff2
bump incompatible version of Better Sprinklers
2017-06-02 01:59:37 -04:00
Jesse Plamondon-Willard
798439ea34
deprecate TimeEvents.DayOfMonthChanged, SeasonOfYearChanged, and YearOfGameChanged
2017-05-29 23:52:33 -04:00
Jesse Plamondon-Willard
6f69a1aca9
fix translation error when passing tokens for a null translation ( #296 )
2017-05-29 15:29:22 -04:00
Jesse Plamondon-Willard
9d9383e235
drop special case for SDV 1.2.29 bug (min version is now 1.2.30)
2017-05-28 20:58:31 -04:00
Jesse Plamondon-Willard
bbfd42eeb3
bump minimum game version to 1.2.30
2017-05-28 20:31:50 -04:00
Jesse Plamondon-Willard
90275f1d56
add shortcut for translation with tokens ( #296 )
2017-05-28 17:53:44 -04:00
Jesse Plamondon-Willard
e20db6e8e4
add token support for instance fields, expand unit test ( #296 )
2017-05-28 17:34:53 -04:00
Jesse Plamondon-Willard
423a2f5012
combine Translation::Tokens overloads, support dictionaries with any generic types ( #296 )
2017-05-28 11:23:42 -04:00
Jesse Plamondon-Willard
af28b87660
make unit test easier to extend ( #296 )
2017-05-28 11:21:49 -04:00
Jesse Plamondon-Willard
2958381b54
shorten translation method name, remove helper method ( #296 )
2017-05-28 10:51:58 -04:00
Jesse Plamondon-Willard
2109229660
add 'reload_i18n' console command to reload translation files ( #296 )
2017-05-28 01:58:50 -04:00
Jesse Plamondon-Willard
5af58c7b18
refactor translation init for reuse ( #296 )
2017-05-28 01:49:21 -04:00
Jesse Plamondon-Willard
12ffd9c334
add shortcut indexer to translation API ( #296 )
2017-05-28 01:06:35 -04:00
Jesse Plamondon-Willard
01197b0eb1
minor cleanup
2017-05-28 01:05:41 -04:00
Jesse Plamondon-Willard
0c992e562a
simplify debug command output ( #297 )
2017-05-28 00:46:25 -04:00
Jesse Plamondon-Willard
698930820c
log debug command output ( #297 )
2017-05-28 00:39:01 -04:00
Jesse Plamondon-Willard
586f27c4c2
remove unneeded SGame fields
2017-05-28 00:13:43 -04:00
Jesse Plamondon-Willard
173dd8cd03
add Context.IsPlayerFree
2017-05-27 23:48:16 -04:00
Jesse Plamondon-Willard
55fa8198ff
fix content API not matching XNB files with two dots (like 'a.b.xnb') if extension isn't specified
2017-05-27 01:01:45 -04:00
Jesse Plamondon-Willard
e92dbc41df
improve libgdiplus.dylib fix for Mono players
2017-05-27 00:21:48 -04:00
Jesse Plamondon-Willard
3324628e3b
standardise indentation in unix launcher
2017-05-26 23:55:57 -04:00
Jesse Plamondon-Willard
395925ad2b
fix errors handling dependencies if some mods have no manifest
2017-05-26 00:33:32 -04:00
Jesse Plamondon-Willard
569ae2b87b
reduce ContentLoadException nesting
2017-05-25 21:52:15 -04:00
Jesse Plamondon-Willard
7f210cd7b0
fix tilesheets for local XNB maps too
2017-05-25 21:35:43 -04:00
Jesse Plamondon-Willard
a47ca7e391
expand .tbin loading to support custom tilesheets from the mod folder
2017-05-25 21:02:05 -04:00
Jesse Plamondon-Willard
24e214b601
minor cleanup
2017-05-25 20:55:08 -04:00
Platonymous
a91e111247
Added experimental .tbin support
2017-05-26 00:12:40 +01:00
Jesse Plamondon-Willard
f5063cf81e
add translation unit tests ( #296 )
2017-05-24 17:00:23 -04:00
Jesse Plamondon-Willard
79dabe2671
add translation API ( #296 )
2017-05-24 13:48:17 -04:00
Jesse Plamondon-Willard
56919271fc
fix Context.IsInDrawLoop having a public setter
2017-05-23 23:31:34 -04:00
Jesse Plamondon-Willard
8f1379e273
fix rare crash when window loses focus for some players
2017-05-23 16:51:03 -04:00
Jesse Plamondon-Willard
5fa13459d3
show friendly error when running install.exe from within zip file
2017-05-22 18:55:09 -04:00
Jesse Plamondon-Willard
51d56f1eec
add Context.IsInDrawLoop for specialised mods
2017-05-22 16:41:50 -04:00
Jesse Plamondon-Willard
ec19c85d66
reimplement event deprecation warnings to fix "unknown mod" warnings
2017-05-21 18:22:21 -04:00
Jesse Plamondon-Willard
bf3ed26a8b
fix smapi-crash.txt being copied from default log even if --log-path is specified
2017-05-21 17:58:17 -04:00
Jesse Plamondon-Willard
9e7c77f1f4
enable mod dependencies ( #285 )
2017-05-21 17:29:40 -04:00
Jesse Plamondon-Willard
c4eb21bd31
update installer readme
2017-05-20 15:11:51 -04:00
Jesse Plamondon-Willard
d47e55d040
show friendly errors when the game is missing or pre-1.2
2017-05-20 15:11:36 -04:00
Jesse Plamondon-Willard
ca44c3f329
bump version for release
2017-05-20 00:29:13 -04:00
Jesse Plamondon-Willard
9ef4876c5e
add metadata to internal mod registry & use mod display name everywhere
2017-05-20 00:29:04 -04:00
Jesse Plamondon-Willard
2781c27786
fix error when loading a mod with no version
2017-05-19 23:49:59 -04:00
Jesse Plamondon-Willard
cbb1777ba0
bump version for release
2017-05-19 17:31:00 -04:00
Jesse Plamondon-Willard
def73fceaf
improve game install path detection
2017-05-18 17:02:34 -04:00
Jesse Plamondon-Willard
1b1f37d082
fix build error with Mono 5.0 on Linux/Mac
2017-05-18 16:56:28 -04:00
Jesse Plamondon-Willard
37a2e34507
also raise location-list-changed on load
2017-05-17 21:25:18 -04:00
Jesse Plamondon-Willard
bc1e17bc8c
fix mod-loading code not accounting for metadata failure
2017-05-17 15:44:18 -04:00
Jesse Plamondon-Willard
228f84eea6
raise location/player changed events on load
2017-05-17 14:30:57 -04:00
Jesse Plamondon-Willard
f9c708d863
drop support for multiple player indexes (not relevant for Stardew Valley)
2017-05-17 12:16:25 -04:00
Jesse Plamondon-Willard
6ce07be2fa
fix crash in unreleased code when loading a save that hasn't visited the mines yet
2017-05-17 11:52:21 -04:00
Jesse Plamondon-Willard
d5ea812d7c
adjust return-to-title code
2017-05-17 11:51:49 -04:00
Jesse Plamondon-Willard
8439594b10
fix errors during overridden update loop immediately crashing the game with no log entry
2017-05-17 11:45:17 -04:00
Jesse Plamondon-Willard
2d5d9c7c53
make content event available in experimental mode
2017-05-16 23:09:37 -04:00
Jesse Plamondon-Willard
89d7a3f846
add compile flag for experimental mod dependencies features
2017-05-16 23:04:38 -04:00
Jesse Plamondon-Willard
bf02c54f8b
Merge branch 'feature/285-mod-dependencies' into develop
...
# Conflicts:
# src/StardewModdingAPI/Framework/ModRegistry.cs
# src/StardewModdingAPI/Program.cs
2017-05-16 22:57:52 -04:00
Jesse Plamondon-Willard
a0e9fa9f3e
tweak release notes
2017-05-16 19:22:09 -04:00
Jesse Plamondon-Willard
11569dac31
fix maps not recognising custom tilesheets added through the SMAPI content API
2017-05-16 19:15:28 -04:00
Jesse Plamondon-Willard
f4a2d8100f
add warning for mods that don't have a name or version
2017-05-16 01:15:02 -04:00
Jesse Plamondon-Willard
bca78cd682
add Context.IsWorldReady flag
2017-05-15 22:51:49 -04:00
Jesse Plamondon-Willard
aafb3315cb
update compatibility blacklist for SDV 1.2
2017-05-15 22:41:44 -04:00
Jesse Plamondon-Willard
419ca82427
tweak .editorconfig JSON indentation rules
2017-05-15 20:44:34 -04:00
Jesse Plamondon-Willard
fec67fe6fd
fix world/player events being raised when the player loads a save due to values being initialised
2017-05-14 22:04:32 -04:00
Jesse Plamondon-Willard
2d9aefebb0
rewrite dependency logic to resolve dependency loops by disabling the affected mods ( #285 )
2017-05-14 21:19:27 -04:00
Jesse Plamondon-Willard
07aadf3612
replace mod indexes with references in dependency-sorting logic ( #285 )
2017-05-14 18:17:34 -04:00
Jesse Plamondon-Willard
f3ff871eb7
add unit tests for basic dependency reordering cases ( #285 )
2017-05-13 22:47:50 -04:00
Jesse Plamondon-Willard
317349f3e2
add a few more unit tests for metadata loading & validation ( #285 )
2017-05-13 21:58:13 -04:00
Jesse Plamondon-Willard
725b1f1419
add unit tests for metadata loading & validation ( #285 )
2017-05-13 21:42:36 -04:00
Jesse Plamondon-Willard
c1fbbf9418
add unit test project ( #285 )
2017-05-13 21:40:53 -04:00
Jesse Plamondon-Willard
f03b300b3f
pass SMAPI version into metadata validation to simplify unit tests ( #285 )
2017-05-13 21:38:04 -04:00
Jesse Plamondon-Willard
53547a8ca3
pass API version into mod metadata validation to simplify unit testing ( #285 )
2017-05-13 21:36:50 -04:00
Jesse Plamondon-Willard
7f368aa889
enforce metadata.SetStatus() instead of setting properties directly ( #285 )
2017-05-13 20:41:00 -04:00
Jesse Plamondon-Willard
9b6c0d1021
decouple reading manifest files from validating metadata ( #285 )
2017-05-13 18:58:19 -04:00
Jesse Plamondon-Willard
63edebaef1
decouple mod metadata resolution from main SMAPI logic ( #285 )
...
This makes the logic more self-contained for eventual unit testing, and makes failed mods available during dependency resolution so we can make errors more relevant.
2017-05-13 18:20:09 -04:00
Jesse Plamondon-Willard
66d2b5746a
move mod metadata resolution into its own class ( #285 )
2017-05-13 17:24:41 -04:00
Jesse Plamondon-Willard
c932c53137
fix error when processing mods that have no dependencies ( #285 )
2017-05-13 17:03:26 -04:00
Jesse Plamondon-Willard
a3729c36f5
refactor mod dependency logic a bit ( #285 )
2017-05-13 16:58:17 -04:00
Luke Wale
3a02402367
Added basic topological sort for mod dependencies ( #285 )
2017-05-13 15:33:35 -04:00
Jesse Plamondon-Willard
3da27346c6
add basic dependencies to manifest ( #285 )
2017-05-13 15:33:35 -04:00
Jesse Plamondon-Willard
17ff230d8e
streamline crossplatform build with Mono 5.0, update readme, tweak release notes
2017-05-13 15:14:32 -04:00
Jesse Plamondon-Willard
588b42742d
fix error on Linux/Mac when a mod tries to load content immediately after save is loaded
2017-05-12 21:09:20 -04:00
Jesse Plamondon-Willard
e84028f22b
fix SMAPI raising a deprecation warning for its own use of an event
2017-05-12 00:01:39 -04:00
Jesse Plamondon-Willard
bb165f2079
organise a few framework classes
2017-05-11 23:21:02 -04:00
Jesse Plamondon-Willard
dc4ad15afe
fix IManifest fields being settable
2017-05-11 22:32:47 -04:00
Jesse Plamondon-Willard
03876153f4
decouple mod metadata vs assembly loading to enable upcoming mod dependencies ( #285 )
2017-05-11 22:25:45 -04:00
Jesse Plamondon-Willard
48c5c9e367
overhaul save handling to fix save events not triggering on Linux/Mac ( #284 )
2017-05-11 00:34:01 -04:00
Jesse Plamondon-Willard
86c60c971a
merge SGame::UpdateEventCalls into Update
...
The method was misleadingly named (since only some of the events were in the method), and unnecessarily limited the possible flows.
2017-05-10 23:49:58 -04:00
Jesse Plamondon-Willard
d88050fcee
deprecate GameEvents.GameLoaded and GameEvents.FirstUpdateTick
2017-05-10 23:44:58 -04:00
Jesse Plamondon-Willard
b4584afda8
trace locale changes as non-verbose context
2017-05-09 22:37:53 -04:00
Jesse Plamondon-Willard
0d8009b231
fix installer finding redundant game paths on Linux
2017-05-09 22:37:05 -04:00
Jesse Plamondon-Willard
3fa71385e5
add warning for mods that don't set the UniqueID manifest field
2017-05-09 22:12:02 -04:00
Jesse Plamondon-Willard
494f9366a8
let mods dispose unmanaged resources when SMAPI is disposing ( #282 )
2017-05-09 22:02:17 -04:00
Jesse Plamondon-Willard
7ba0518bfd
add 'debug' console command
2017-05-09 17:16:13 -04:00
Jesse Plamondon-Willard
3d73227587
when a fatal crash happens, keep a copy of the log and notify the player on relaunch
2017-05-09 01:46:40 -04:00
Jesse Plamondon-Willard
467d4a27ee
reduce max consecutive draw crashes ( #283 )
2017-05-09 00:16:04 -04:00
Jesse Plamondon-Willard
fa729fa700
don't try to recover from a completely broken sprite batch, which can cause a whole new set of problems ( #283 )
2017-05-09 00:14:59 -04:00
Jesse Plamondon-Willard
486ac29796
use shared reflection helper
2017-05-09 00:11:39 -04:00
Jesse Plamondon-Willard
85f609dc6c
add optional verbose context logging
2017-05-08 02:18:58 -04:00
Jesse Plamondon-Willard
72a0b4fc6d
detect unrecoverable draw errors ( #283 )
2017-05-08 01:57:07 -04:00
Jesse Plamondon-Willard
624840efe5
use more robust sprite batch recovery logic ( #283 )
2017-05-07 13:09:32 -04:00
Jesse Plamondon-Willard
8963793bf8
exit game after many consecutive unrecoverable draw errors ( #283 )
2017-05-07 02:50:36 -04:00
Jesse Plamondon-Willard
0e304e4d51
added basic context logging to simplify troubleshooting
2017-05-07 01:56:39 -04:00
Jesse Plamondon-Willard
0a2f7e52b9
fix code style
2017-05-03 12:46:48 -04:00
Jesse Plamondon-Willard
0530270790
bump version for release
2017-05-03 12:30:40 -04:00
Jesse Plamondon-Willard
6557c5241b
bundle libgdiplus into SMAPI on Linux/Mac to fix errors loading PNGs ( #277 )
2017-05-03 12:28:05 -04:00
Jesse Plamondon-Willard
dfa4bbaa39
adopt pufferchick as SMAPI icon
2017-05-03 11:58:33 -04:00
Jesse Plamondon-Willard
3ed16a8ea6
recover game after draw errors to prevent crash
2017-05-03 11:36:36 -04:00
Jesse Plamondon-Willard
e6d5883224
fix mods on Linux/Mac no longer working after the game saves ( #281 )
2017-05-03 01:23:24 -04:00
Jesse Plamondon-Willard
0ef31f0b9e
support players with multiple copies of the game when installing ( #274 )
2017-05-03 00:40:21 -04:00
Jesse Plamondon-Willard
45613b4851
store unknown fields in IManifest::ExtraFields ( #275 )
2017-05-02 23:53:15 -04:00
Jesse Plamondon-Willard
24aa8bb64d
default content API to ContentSource.ModFolder ( #276 )
2017-05-02 23:45:25 -04:00
Jesse Plamondon-Willard
8503bf9cd9
fix XNBs loaded from the mod folder through the content API never being found on Mac ( #278 )
2017-05-02 23:25:23 -04:00
Jesse Plamondon-Willard
e4357c3c7d
fix error when using content API to load a PNG during early game init ( #280 )
2017-05-02 00:43:15 -04:00
Jesse Plamondon-Willard
d4f172fef1
bump version for release
2017-04-30 18:54:14 -04:00
Jesse Plamondon-Willard
901353ee04
tweak code inspection rules
2017-04-30 01:07:22 -04:00
Jesse Plamondon-Willard
d21f8d6b22
fix crossplatform compatibility ( #257 )
2017-04-30 01:06:57 -04:00
Jesse Plamondon-Willard
06c4273c1e
bump minimum game version to released 1.2.26
2017-04-29 23:59:25 -04:00
Jesse Plamondon-Willard
ddd9c0a804
let mods specify .xnb file extension explicitly ( #257 )
2017-04-29 23:38:45 -04:00
Jesse Plamondon-Willard
3cfe14d279
add contentHelper.GetActualAssetKey(..) to support custom map tilesheets ( #257 )
2017-04-29 22:44:57 -04:00
Jesse Plamondon-Willard
f52edf9e0b
fix mod events triggering during game save in Stardew Valley 1.2
2017-04-29 21:46:01 -04:00
Jesse Plamondon-Willard
ff5d1ef4e4
add internal context for more robust draw loop detection ( #257 )
2017-04-29 21:45:37 -04:00
Jesse Plamondon-Willard
014014ca0f
premultiply alpha when loading PNGs to avoid transparency issues ( #257 )
2017-04-29 19:51:47 -04:00
Jesse Plamondon-Willard
9b615fadaa
add initial content API ( #257 )
2017-04-29 14:13:55 -04:00
Jesse Plamondon-Willard
6b9372237c
fix errors in the game's update causing the game to freeze until the player presses a key in the SMAPI console
2017-04-29 12:23:38 -04:00
Jesse Plamondon-Willard
9fecaa7989
make mod helpers disposable ( #257 )
2017-04-29 01:30:30 -04:00
Jesse Plamondon-Willard
ee5351c38e
detect broken ObjectInformation.xnb data
2017-04-28 00:58:54 -04:00
Jesse Plamondon-Willard
40f174b22d
simplify exception summary code
2017-04-27 15:46:19 -04:00
Jesse Plamondon-Willard
0cf15d36d9
revamp 'exit immediately' to abort ongoing SMAPI tasks
2017-04-26 18:25:59 -04:00
Jesse Plamondon-Willard
971bfd32d2
detect exceptions logged directly to the console and log them as errors
2017-04-26 16:22:41 -04:00