Jesse Plamondon-Willard
9e7c77f1f4
enable mod dependencies ( #285 )
2017-05-21 17:29:40 -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
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
def73fceaf
improve game install path detection
2017-05-18 17:02:34 -04:00
Jesse Plamondon-Willard
0b853ca18d
clarify release note
2017-05-17 13:12:31 -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
b977a8e48f
add internal refactoring to release notes
2017-05-16 23:44:33 -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
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
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
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
d88050fcee
deprecate GameEvents.GameLoaded and GameEvents.FirstUpdateTick
2017-05-10 23:44:58 -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
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
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
b56a3f5bc2
update release notes ( #257 )
2017-04-30 01:17:56 -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
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
ee5351c38e
detect broken ObjectInformation.xnb data
2017-04-28 00:58:54 -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
Jesse Plamondon-Willard
afc8ae69fe
No longer suppress console output from the log file
...
Console messages appear in the console (in developer mode only), but weren't saved to the log file based on the argument that they weren't relevant. However, that also suppresses the game's load-game errors in Stardew Valley 1.2, which makes troubleshooting save issues more complicated. To avoid any such issues in the future, they're now always logged to the file. If you need to log a message that isn't shown to the user, use System.Diagnostics.Debug instead.
2017-04-26 16:21:03 -04:00
Jesse Plamondon-Willard
4ef957c191
optimise console interception for the way Stardew Valley logs messages
2017-04-26 16:04:20 -04:00
Jesse Plamondon-Willard
fee89a99da
remove new manifest field for minimum game version ( #264 )
...
This was added to support parallel releases for SDV 1.11 + 1.2-beta, but SDV 1.2 is now out of beta. Mods should specify the minimum SMAPI version instead if needed.
2017-04-24 12:39:06 -04:00
Jesse Plamondon-Willard
4e7733ba2d
update for SDV 1.2 non-beta release
2017-04-24 12:36:20 -04:00
Jesse Plamondon-Willard
1de8895642
fixed `Constants.SaveFolderName` not set for a new game until the save is created ( #261 )
2017-04-23 23:58:08 -04:00
Jesse Plamondon-Willard
8ec607ba3c
ensure SMAPI resources are disposed on exit ( #268 )
2017-04-23 23:00:13 -04:00
Jesse Plamondon-Willard
07197fac9d
add support for non-melee weapons to TrainerMod ( #259 )
2017-04-23 22:46:14 -04:00
Jesse Plamondon-Willard
c1926f263c
add world_setyear command to TrainerMod
2017-04-23 22:13:49 -04:00
Jesse Plamondon-Willard
085ae07251
add string overloads for version methods ( #263 )
2017-04-23 22:04:56 -04:00
Jesse Plamondon-Willard
01917e70a2
fix rare issue where installer crashes trying to delete a bundled mod from %appdata% ( #266 )
2017-04-23 21:55:01 -04:00
Jesse Plamondon-Willard
86ef70feec
revamp startup process ( #265 )
...
This revamps SMAPI's startup process to simplify mod development by ensuring that core components are ready by the time mods are loaded (which is also needed for the upcoming content API), and eliminate or reduce SEHExceptions some players experience.
2017-04-23 21:51:49 -04:00
Jesse Plamondon-Willard
5f595d8a46
let mods specify a minimum game version in their manifest.json ( #264 )
2017-04-23 20:34:47 -04:00
Jesse Plamondon-Willard
6f43a3dae5
unify SMAPI versions for SDV 1.11 and 1.2 using compile switches where needed ( #264 )
2017-04-23 20:27:55 -04:00
Jesse Plamondon-Willard
ceabb05a84
Merge branch for Stardew Valley 1.2 beta into develop
...
# Conflicts:
# src/StardewModdingAPI/Framework/SGame.cs
2017-04-23 19:56:07 -04:00
Jesse Plamondon-Willard
a35fe47447
fix monitor.ExitGameImmediately not working correctly
2017-04-23 19:21:48 -04:00
Jesse Plamondon-Willard
4f87a2b478
fix mouse-changed event never updating prior mouse position
2017-04-22 23:59:38 -04:00
Jesse Plamondon-Willard
37d5390ed0
unbackport for SDV 1.2 branch ( #258 )
2017-04-05 15:00:14 -04:00
Jesse Plamondon-Willard
4675da0600
add --log-path argument to specify SMAPI log path during testing
2017-04-01 16:08:31 -04:00
Jesse Plamondon-Willard
b4b4689f00
remove old error logs when installing a new version to avoid confusion
2017-03-30 19:48:01 -04:00
Jesse Plamondon-Willard
df1e748629
backport SMAPI 1.9 to Stardew Valley 1.11 ( #258 )
2017-03-30 18:59:01 -04:00
Jesse Plamondon-Willard
04cae4ef46
fix SMAPI not recognising Mod instances that don't subclass Mod directly ( #252 )
2017-03-26 20:15:48 -04:00
Jesse Plamondon-Willard
45d2ed7054
add another default game path for Linux
...
Thanks to ShneekeyTheLost on the Stardew Valley forums.
2017-03-16 19:01:22 -04:00
Jesse Plamondon-Willard
abfa2022aa
validate XNA 4.0+ is installed on Windows in SMAPI installer
2017-03-16 17:06:53 -04:00
Jesse Plamondon-Willard
3d4c603bd3
polish release notes
2017-03-16 16:51:30 -04:00
Jesse Plamondon-Willard
79e63fde9a
validate .NET Framework 4.5+ is installed on Windows in SMAPI installer
2017-03-14 19:36:18 -04:00
Jesse Plamondon-Willard
307304a03e
revert all projects except installer to .NET Framework 4.5
...
This caused obscure invalid-IL crashes when compiled through MonoDevelop on Linux.
2017-03-14 18:16:44 -04:00
Jesse Plamondon-Willard
da630efc1d
downgrade to .NET Framework 4.0 for better compatibility on Windows 7–8.1
2017-03-14 14:15:50 -04:00
Jesse Plamondon-Willard
dd694dae27
add release notes for compatibility finders ( #247 )
2017-03-12 19:06:56 -04:00
Jesse Plamondon-Willard
95e5197967
fix SaveEvents.AfterLoad being raised during the new-game intro before the player is initialised
2017-03-11 17:28:39 -05:00
Jesse Plamondon-Willard
4991a25d46
add content language changed event ( #243 )
2017-03-03 20:57:52 -05:00
Jesse Plamondon-Willard
c3c6fa1187
start draft 2.0 release notes
2017-03-03 20:25:01 -05:00
Jesse Plamondon-Willard
ade1a692a3
deprecate `IConfigFile` ( #238 )
2017-03-01 20:20:58 -05:00
Jesse Plamondon-Willard
5ed6eb0986
fix `world_downminelevel` command not working, prevent invalid `world_setminelevel` value
2017-03-01 20:06:03 -05:00
Jesse Plamondon-Willard
5cdf75b463
show OS caption (like "Windows 10") instead of internal version when available
2017-03-01 19:32:14 -05:00
Jesse Plamondon-Willard
51ac0127e8
fix TrainerMod letting player add invalid items
2017-03-01 19:20:11 -05:00
Jesse Plamondon-Willard
696bdab3cd
fix errors in console command handlers crashing the game
2017-03-01 19:18:21 -05:00
Jesse Plamondon-Willard
6de4888a1b
improve TrainerMod feedback to user, standardise color/colour spelling
2017-03-01 19:17:34 -05:00
Jesse Plamondon-Willard
2151625898
add release note, fix docblock
2017-02-24 20:55:19 -05:00
Jesse Plamondon-Willard
9bbd0a4459
make skipped-mod messages more user-friendly
2017-02-23 23:36:48 -05:00
Jesse Plamondon-Willard
69ed617e56
fix installer not recognising Linux/Mac paths starting with ~ or containing an escaped space
2017-02-19 01:29:30 -05:00
Jesse Plamondon-Willard
a893cd9eea
fix installer not ignoring potential game folders that don't contain a Stardew Valley exe
2017-02-19 01:07:04 -05:00
Jesse Plamondon-Willard
41ee8990f8
write XNA input enums to JSON as strings automatically
...
Mods often reference Json.NET to do this, so this lets many mods remove Json.NET as a dependency.
2017-02-17 11:33:22 -05:00
Jesse Plamondon-Willard
1dfedd2d1a
fix issue where mod dependencies overrode SMAPI dependencies
2017-02-17 01:44:19 -05:00
Jesse Plamondon-Willard
16c362f4c5
increase all notice deprecations to info, tweak deprecation message format
2017-02-16 13:59:13 -05:00
Jesse Plamondon-Willard
3b25723a4e
update release notes ( #199 )
2017-02-13 01:27:49 -05:00
Jesse Plamondon-Willard
8b0db49f12
update release notes ( #237 )
2017-02-12 19:41:15 -05:00
Jesse Plamondon-Willard
e393a2aad9
add TimeEvents.AfterDayStarted event ( #236 )
2017-02-11 12:38:32 -05:00
Jesse Plamondon-Willard
824ca7174a
delve into mod folders that only contain another folder ( #208 )
...
This fixes a common issue when users unpack mods into a nested folder (e.g. "SomeMod-1.0.0\SomeMod\manifest.json"), which previously wouldn't be recognised as a mod. SMAPI will not do this if the folder contains files or more than one folder, to prevent backup folders and the like from being loaded.
2017-02-11 02:04:01 -05:00
Jesse Plamondon-Willard
46b7d7a400
redirect the game's debug messages into trace logs ( #233 )
...
The game writes debug messages directly to the console, which shows up for SMAPI users. This commit redirects direct console messages to a monitor.
2017-02-11 01:15:56 -05:00
Jesse Plamondon-Willard
c357013156
tweak debug build config, update release notes
2017-02-10 19:22:22 -05:00
Jesse Plamondon-Willard
6092f9ea00
always use \r\n line endings in log file for crossplatform compatibility ( #230 )
2017-02-08 00:22:27 -05:00
Jesse Plamondon-Willard
d52b3572f3
simplify log filename
2017-02-08 00:17:00 -05:00
Jesse Plamondon-Willard
366769e8a2
add SaveEvents.AfterReturnToTitle event ( #231 )
2017-02-08 00:11:46 -05:00
Jesse Plamondon-Willard
8efa5f32c1
add reflectionHelper.GetPrivateProperty<T> ( #231 )
2017-02-07 21:07:57 -05:00
Jesse Plamondon-Willard
95a93a05b3
remove oldest deprecated code ( #231 )
...
Since Stardew Valley 1.2 breaks most mods anyway, this commits removes the oldest deprecations and fixes the issues that are easiest for mods to update. See documentation for details.
2017-02-07 20:50:41 -05:00
Jesse Plamondon-Willard
3919ab7a4a
update for 1.8 release
2017-02-04 15:30:26 -05:00
Jesse Plamondon-Willard
57a99803f0
update deprecation level for Extensions class
2017-02-04 15:27:13 -05:00
Jesse Plamondon-Willard
53d5d6f5bb
tweak release notes
2017-02-04 01:22:31 -05:00
Jesse Plamondon-Willard
85ff940e68
move install package's Mono/Windows folders out of root
...
This will hopefully reduce confusion among players who go into "Windows" instead of running install.exe.
2017-02-03 22:02:54 -05:00
Jesse Plamondon-Willard
6b9f85d6de
update release notes ( #229 )
2017-02-02 23:45:09 -05:00