From 3e91af6b06deec6aa2dca80945c82af528094c52 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Fri, 10 Feb 2017 22:52:16 -0500 Subject: mark several mods incompatible with Stardew Valley 1.2+ (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 60 ++++++++++++++++------- 1 file changed, 43 insertions(+), 17 deletions(-) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 3295336f..3c9be222 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -6,45 +6,71 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. */ [ - /* versions not compatible with Stardew Valley 1.1+ */ + /* versions which crash the game */ { - "ID": "SPDSprinklersMod", - "Name": "Better Sprinklers", - "UpperVersion": "2.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/41", - "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", - "ForceCompatibleVersion": "^2.1-EntoPatch" + "Name": "NPC Map Locations", + "ID": "NPCMapLocationsMod", + "LowerVersion": "1.42", + "UpperVersion": "1.43", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/239", + "ReasonPhrase": "this version has an update check error which crashes the game" }, + + /* versions not compatible with Stardew Valley 1.1+ */ { - "ID": "SPDChestLabel", "Name": "Chest Label System", + "ID": "SPDChestLabel", "UpperVersion": "1.5", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/242", "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", "ForceCompatibleVersion": "^1.5-EntoPatch" }, { - "ID": "CJBCheatsMenu", "Name": "CJB Cheats Menu", + "ID": "CJBCheatsMenu", "UpperVersion": "1.12", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4", "ForceCompatibleVersion": "^1.12-EntoPatch" }, { - "ID": "CJBItemSpawner", "Name": "CJB Item Spawner", + "ID": "CJBItemSpawner", "UpperVersion": "1.5", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93", "ForceCompatibleVersion": "^1.5-EntoPatch" }, - /* versions which crash the game */ + /* versions not compatible with Stardew Valley 1.2+ */ { - "ID": "NPCMapLocationsMod", - "Name": "NPC Map Locations", - "LowerVersion": "1.42", - "UpperVersion": "1.43", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/239", - "ReasonPhrase": "this version has an update check error which crashes the game" + "Name": "Better Sprinklers", + "ID": "SPDSprinklersMod", + "UpperVersion": "2.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/41", + "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", + "ForceCompatibleVersion": "^2.1-EntoPatch.7" + }, + { + "Name": "Casks Anywhere", + "ID": "CasksAnywhere", + "UpperVersion": "1.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/878" + }, + { + "Name": "Entoarox Framework", + "ID": "eacdb74b-4080-4452-b16b-93773cda5cf9", + "UpperVersion": "1.6.1", + "UpdateUrl": "http://community.playstarbound.com/resources/4228" + }, + { + "Name": "Get Dressed", + "ID": "GetDressed.dll", + "UpperVersion": "3.2", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/331" + }, + { + "Name": "NoSoilDecay", + "ID": "289dee03-5f38-4d8e-8ffc-e440198e8610", + "UpperVersion": "0.5", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237" } ] -- cgit From e71233686101920dd8e23747998840a5985f7129 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sat, 11 Feb 2017 14:38:12 -0500 Subject: mark more incompatible mods (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 61 +++++++++++++++++++++++ 1 file changed, 61 insertions(+) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 3c9be222..79fa2cc8 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -41,6 +41,13 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. }, /* versions not compatible with Stardew Valley 1.2+ */ + { + "Name": "AccessChestAnywhere", + "ID": "AccessChestAnywhere", + "UpperVersion": "1.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/257", + "UnofficialUpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518" + }, { "Name": "Better Sprinklers", "ID": "SPDSprinklersMod", @@ -55,22 +62,76 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "1.1", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/878" }, + { + "Name": "Chests Anywhere", + "ID": "ChestsAnywhere", + "UpperVersion": "1.8.2", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518" + }, + { + "Name": "CJB Automation", + "ID": "CJBAutomation", + "UpperVersion": "1.4", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/211" + }, + { + "Name": "Enemy Health Bars", + "ID": "SPDHealthBar", + "UpperVersion": "1.7", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/193" + }, { "Name": "Entoarox Framework", "ID": "eacdb74b-4080-4452-b16b-93773cda5cf9", "UpperVersion": "1.6.1", "UpdateUrl": "http://community.playstarbound.com/resources/4228" }, + { + "Name": "Extended Fridge", + "ID": "Mystra007ExtendedFridge", + "UpperVersion": "1.0", // real latest version is 0.94, but mod incorrectly sets version to 1.0 in manifest + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/485" + }, { "Name": "Get Dressed", "ID": "GetDressed.dll", "UpperVersion": "3.2", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/331" }, + { + "Name": "Lookup Anything", + "ID": "Pathoschild.LookupAnything", + "UpperVersion": "1.10.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541" + }, + { + "Name": "Lookup Anything", + "ID": "LookupAnything", // ID changed in latest version + "UpperVersion": "1.10.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541" + }, { "Name": "NoSoilDecay", "ID": "289dee03-5f38-4d8e-8ffc-e440198e8610", "UpperVersion": "0.5", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237" + }, + { + "Name": "Reusable Wallpapers", + "ID": "dae1b553-2e39-43e7-8400-c7c5c836134b", + "UpperVersion": "1.5", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/356" + }, + { + "Name": "Save Anywhere", // depends on StarDustCore + "ID": "SaveAnywhere", + "UpperVersion": "2.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/444" + }, + { + "Name": "StarDustCore", + "ID": "StarDustCore", + "UpperVersion": "1.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683" } ] -- cgit From 59ff0a3266b069e808cfa10d62c37914d2446ae9 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sun, 12 Feb 2017 18:26:51 -0500 Subject: mark another incompatible mod (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 79fa2cc8..2a470a39 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -128,6 +128,12 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "2.0", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/444" }, + { + "Name": "StackSplitX", + "ID": "StackSplitX.dll", + "UpperVersion": "1.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/798" + }, { "Name": "StarDustCore", "ID": "StarDustCore", -- cgit From 253a4306cf468dd47ac67d328af565ee7798ea67 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Mon, 13 Feb 2017 16:50:54 -0500 Subject: mark Entoarox Framework incompatible up to 1.6.5 (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 2a470a39..7744a5e3 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -83,7 +83,7 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. { "Name": "Entoarox Framework", "ID": "eacdb74b-4080-4452-b16b-93773cda5cf9", - "UpperVersion": "1.6.1", + "UpperVersion": "1.6.5", "UpdateUrl": "http://community.playstarbound.com/resources/4228" }, { -- cgit From 8d1b7cbfb89892fff180c68c81a69bc41dbb9495 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Tue, 14 Feb 2017 11:46:41 -0500 Subject: mark more incompatible mods (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 56 +++++++++++++++++------ 1 file changed, 42 insertions(+), 14 deletions(-) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 7744a5e3..054ebb9c 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -25,20 +25,6 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", "ForceCompatibleVersion": "^1.5-EntoPatch" }, - { - "Name": "CJB Cheats Menu", - "ID": "CJBCheatsMenu", - "UpperVersion": "1.12", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4", - "ForceCompatibleVersion": "^1.12-EntoPatch" - }, - { - "Name": "CJB Item Spawner", - "ID": "CJBItemSpawner", - "UpperVersion": "1.5", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93", - "ForceCompatibleVersion": "^1.5-EntoPatch" - }, /* versions not compatible with Stardew Valley 1.2+ */ { @@ -74,6 +60,18 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "1.4", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/211" }, + { + "Name": "CJB Cheats Menu", + "ID": "CJBCheatsMenu", + "UpperVersion": "1.13", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4" + }, + { + "Name": "CJB Item Spawner", + "ID": "CJBItemSpawner", + "UpperVersion": "1.6", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93" + }, { "Name": "Enemy Health Bars", "ID": "SPDHealthBar", @@ -139,5 +137,35 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "ID": "StarDustCore", "UpperVersion": "1.0", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683" + }, + { + "Name": "Zoryn's Better RNG", + "ID": "76b6d1e1-f7ba-4d72-8c32-5a1e6d2716f6", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756" + }, + { + "Name": "Zoryn's Calendar Anywhere", + "ID": "a41c01cd-0437-43eb-944f-78cb5a53002a", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756" + }, + { + "Name": "Zoryn's Health Bars", + "ID": "HealthBars.dll", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756" + }, + { + "Name": "Zoryn's Movement Mod", + "ID": "8a632929-8335-484f-87dd-c29d2ba3215d", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756" + }, + { + "Name": "Zoryn's Regen Mode", + "ID": "dfac4383-1b6b-4f33-ae4e-37fc23e5252e", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756" } ] -- cgit From 153c04535fddfb3966d402fcd018760d981a1a34 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Tue, 14 Feb 2017 23:37:26 -0500 Subject: fix typo --- src/StardewModdingAPI/StardewModdingAPI.data.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 054ebb9c..86cb3be0 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -163,7 +163,7 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpdateUrl": "http://community.playstarbound.com/threads/108756" }, { - "Name": "Zoryn's Regen Mode", + "Name": "Zoryn's Regen Mod", "ID": "dfac4383-1b6b-4f33-ae4e-37fc23e5252e", "UpperVersion": "1.5", "UpdateUrl": "http://community.playstarbound.com/threads/108756" -- cgit From 2c6ab6805de0e0a21d5191838237db04aa0176ec Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Wed, 15 Feb 2017 16:27:40 -0500 Subject: mark more incompatible mods (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 86cb3be0..9ee2cb98 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -34,6 +34,12 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/257", "UnofficialUpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518" }, + { + "Name": "Almighty Tool", + "ID": "AlmightyTool.dll", + "UpperVersion": "1.1.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/439" + }, { "Name": "Better Sprinklers", "ID": "SPDSprinklersMod", @@ -72,6 +78,12 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "1.6", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93" }, + { + "Name": "Cooking Skill", + "ID": "CookingSkill", + "UpperVersion": "1.0.3", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/522" + }, { "Name": "Enemy Health Bars", "ID": "SPDHealthBar", @@ -114,6 +126,12 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "0.5", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237" }, + { + "Name": "Point-and-Plant", + "ID": "PointAndPlant.dll", + "UpperVersion": "1.0.2", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/572" + }, { "Name": "Reusable Wallpapers", "ID": "dae1b553-2e39-43e7-8400-c7c5c836134b", -- cgit From 5bbebcb46b38c562d0310eba9def31884d0362ce Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sun, 19 Feb 2017 19:55:00 -0500 Subject: mark another incompatible mod (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 9ee2cb98..592af665 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -120,6 +120,12 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "1.10.1", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541" }, + { + "Name": "Makeshift Multiplayer", + "ID": "StardewValleyMP", + "UpperVersion": "0.2.10", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/501" + }, { "Name": "NoSoilDecay", "ID": "289dee03-5f38-4d8e-8ffc-e440198e8610", -- cgit From b30d93d0ffd28c667e5ac51b26c6125fb57ad13a Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Wed, 22 Feb 2017 19:36:10 -0500 Subject: add rationale notes to incompatible-mods list (#231) --- src/StardewModdingAPI/StardewModdingAPI.data.json | 91 +++++++++++++++-------- 1 file changed, 59 insertions(+), 32 deletions(-) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index 592af665..c4f708dc 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -32,13 +32,15 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "ID": "AccessChestAnywhere", "UpperVersion": "1.1", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/257", - "UnofficialUpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518" + "UnofficialUpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", + "Notes": "Crashes with 'Method not found: Void StardewValley.Item.set_Name(System.String)'." }, { "Name": "Almighty Tool", "ID": "AlmightyTool.dll", "UpperVersion": "1.1.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/439" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/439", + "Notes": "Uses obsolete StardewModdingAPI.Extensions." }, { "Name": "Better Sprinklers", @@ -46,150 +48,175 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpperVersion": "2.1", "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/41", "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", - "ForceCompatibleVersion": "^2.1-EntoPatch.7" + "ForceCompatibleVersion": "^2.1-EntoPatch.7", + "Notes": "Uses obsolete StardewModdingAPI.Extensions." }, { "Name": "Casks Anywhere", "ID": "CasksAnywhere", "UpperVersion": "1.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/878" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/878", + "Notes": "Uses obsolete StardewModdingAPI.Inheritance.ItemStackChange." }, { "Name": "Chests Anywhere", "ID": "ChestsAnywhere", "UpperVersion": "1.8.2", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", + "Notes": "Crashes with 'Method not found: Void StardewValley.Menus.TextBox.set_Highlighted(Boolean)'." }, { "Name": "CJB Automation", "ID": "CJBAutomation", "UpperVersion": "1.4", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/211" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/211", + "Notes": "Crashes with 'Method not found: Void StardewValley.Item.set_Name(System.String)'." }, { "Name": "CJB Cheats Menu", "ID": "CJBCheatsMenu", "UpperVersion": "1.13", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4", + "Notes": "Uses removed Game1.borderFont." }, { "Name": "CJB Item Spawner", "ID": "CJBItemSpawner", "UpperVersion": "1.6", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93", + "Notes": "Uses removed Game1.borderFont." }, { "Name": "Cooking Skill", "ID": "CookingSkill", "UpperVersion": "1.0.3", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/522" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/522", + "Notes": "Crashes with 'Method not found: Void StardewValley.Buff..ctor(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, System.String)'." }, { "Name": "Enemy Health Bars", "ID": "SPDHealthBar", "UpperVersion": "1.7", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/193" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/193", + "Notes": "Uses obsolete GraphicsEvents.DrawTick." }, { "Name": "Entoarox Framework", "ID": "eacdb74b-4080-4452-b16b-93773cda5cf9", "UpperVersion": "1.6.5", - "UpdateUrl": "http://community.playstarbound.com/resources/4228" + "UpdateUrl": "http://community.playstarbound.com/resources/4228", + "Notes": "Uses obsolete StardewModdingAPI.Inheritance.SObject until 1.6.1; then crashes until 1.6.4 ('Entoarox Framework requested an immediate game shutdown: Fatal error attempting to update player tick properties System.NullReferenceException: Object reference not set to an instance of an object. at Entoarox.Framework.PlayerHelper.Update(Object s, EventArgs e)')." }, { "Name": "Extended Fridge", "ID": "Mystra007ExtendedFridge", - "UpperVersion": "1.0", // real latest version is 0.94, but mod incorrectly sets version to 1.0 in manifest - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/485" + "UpperVersion": "1.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/485", + "Notes": "Actual upper version is 0.94, but mod incorrectly sets it to 1.0 in the manifest. Crashes with 'Field not found: StardewValley.Game1.mouseCursorTransparency'." }, { "Name": "Get Dressed", "ID": "GetDressed.dll", "UpperVersion": "3.2", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/331" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/331", + "Notes": "Crashes with NullReferenceException in GameEvents.UpdateTick." }, { "Name": "Lookup Anything", - "ID": "Pathoschild.LookupAnything", - "UpperVersion": "1.10.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541" + "ID": "LookupAnything", + "UpperVersion": "1.10", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541", + "Notes": "Crashes with FormatException when looking up NPCs." }, { "Name": "Lookup Anything", - "ID": "LookupAnything", // ID changed in latest version + "ID": "Pathoschild.LookupAnything", "UpperVersion": "1.10.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541", + "Notes": "ID changed in 1.10.1. Crashes with FormatException when looking up NPCs." }, { "Name": "Makeshift Multiplayer", "ID": "StardewValleyMP", "UpperVersion": "0.2.10", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/501" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/501", + "Notes": "Uses obsolete GraphicsEvents.OnPreRenderHudEventNoCheck." }, { "Name": "NoSoilDecay", "ID": "289dee03-5f38-4d8e-8ffc-e440198e8610", "UpperVersion": "0.5", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237", + "Notes": "Uses Assembly.GetExecutingAssembly().Location." }, { "Name": "Point-and-Plant", "ID": "PointAndPlant.dll", "UpperVersion": "1.0.2", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/572" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/572", + "Notes": "Uses obsolete StardewModdingAPI.Extensions." }, { "Name": "Reusable Wallpapers", "ID": "dae1b553-2e39-43e7-8400-c7c5c836134b", "UpperVersion": "1.5", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/356" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/356", + "Notes": "Uses obsolete StardewModdingAPI.Inheritance.ItemStackChange." }, { - "Name": "Save Anywhere", // depends on StarDustCore + "Name": "Save Anywhere", "ID": "SaveAnywhere", "UpperVersion": "2.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/444" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/444", + "Notes": "Depends on StarDustCore." }, { "Name": "StackSplitX", "ID": "StackSplitX.dll", "UpperVersion": "1.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/798" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/798", + "Notes": "Uses SMAPI's internal SGame class." }, { "Name": "StarDustCore", "ID": "StarDustCore", "UpperVersion": "1.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683" + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683", + "Notes": "Crashes with 'Method not found: Void StardewModdingAPI.Command.CallCommand(System.String)'." }, { "Name": "Zoryn's Better RNG", "ID": "76b6d1e1-f7ba-4d72-8c32-5a1e6d2716f6", "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756" + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." }, { "Name": "Zoryn's Calendar Anywhere", "ID": "a41c01cd-0437-43eb-944f-78cb5a53002a", "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756" + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." }, { "Name": "Zoryn's Health Bars", "ID": "HealthBars.dll", "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756" + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." }, { "Name": "Zoryn's Movement Mod", "ID": "8a632929-8335-484f-87dd-c29d2ba3215d", "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756" + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." }, { "Name": "Zoryn's Regen Mod", "ID": "dfac4383-1b6b-4f33-ae4e-37fc23e5252e", "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756" + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." } ] -- cgit From 96c7010c1b1757217a14b49a563707a972fd6107 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Wed, 22 Feb 2017 19:48:25 -0500 Subject: update for Stardew Valley 1.9 (#231) --- src/StardewModdingAPI/Constants.cs | 2 +- src/StardewModdingAPI/Framework/SGame.cs | 24 ++++++++++++++--------- src/StardewModdingAPI/Program.cs | 6 +++--- src/StardewModdingAPI/StardewModdingAPI.data.json | 14 +++++++++++++ 4 files changed, 33 insertions(+), 13 deletions(-) (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/src/StardewModdingAPI/Constants.cs b/src/StardewModdingAPI/Constants.cs index 262ba61d..76003b69 100644 --- a/src/StardewModdingAPI/Constants.cs +++ b/src/StardewModdingAPI/Constants.cs @@ -33,7 +33,7 @@ namespace StardewModdingAPI public static ISemanticVersion ApiVersion => new SemanticVersion(1, 8, 0, null); /// The minimum supported version of Stardew Valley. - public const string MinimumGameVersion = "1.2"; + public const string MinimumGameVersion = "1.2.9"; /// The directory path containing Stardew Valley's app data. public static string DataPath => Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "StardewValley"); diff --git a/src/StardewModdingAPI/Framework/SGame.cs b/src/StardewModdingAPI/Framework/SGame.cs index f64457f8..56631260 100644 --- a/src/StardewModdingAPI/Framework/SGame.cs +++ b/src/StardewModdingAPI/Framework/SGame.cs @@ -923,7 +923,7 @@ namespace StardewModdingAPI.Framework { SpriteBatch spriteBatch = Game1.spriteBatch; SpriteFont smallFont = Game1.smallFont; - object[] objArray = new object[8]; + object[] objArray = new object[10]; int index1 = 0; string str1; if (!Game1.panMode) @@ -938,20 +938,26 @@ namespace StardewModdingAPI.Framework float cursorTransparency = Game1.mouseCursorTransparency; objArray[index3] = (object)cursorTransparency; int index4 = 3; - string str3 = " wasMouseVisibleThisFrame: "; + string str3 = " mousePosition: "; objArray[index4] = (object)str3; int index5 = 4; - string str4 = Game1.wasMouseVisibleThisFrame.ToString(); - objArray[index5] = (object)str4; + int mouseX = Game1.getMouseX(); + objArray[index5] = (object)mouseX; int index6 = 5; - string newLine = Environment.NewLine; - objArray[index6] = (object)newLine; + string str4 = ","; + objArray[index6] = (object)str4; int index7 = 6; - string str5 = "debugOutput: "; - objArray[index7] = (object)str5; + int mouseY = Game1.getMouseY(); + objArray[index7] = (object)mouseY; int index8 = 7; + string newLine = Environment.NewLine; + objArray[index8] = (object)newLine; + int index9 = 8; + string str5 = "debugOutput: "; + objArray[index9] = (object)str5; + int index10 = 9; string debugOutput = Game1.debugOutput; - objArray[index8] = (object)debugOutput; + objArray[index10] = (object)debugOutput; string text = string.Concat(objArray); Vector2 position = new Vector2((float)this.GraphicsDevice.Viewport.TitleSafeArea.X, (float)this.GraphicsDevice.Viewport.TitleSafeArea.Y); Color red = Color.Red; diff --git a/src/StardewModdingAPI/Program.cs b/src/StardewModdingAPI/Program.cs index ea81d182..b8a16e79 100644 --- a/src/StardewModdingAPI/Program.cs +++ b/src/StardewModdingAPI/Program.cs @@ -97,6 +97,7 @@ namespace StardewModdingAPI // initialise logging Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-GB"); // for consistent log formatting this.Monitor.Log($"SMAPI {Constants.ApiVersion} with Stardew Valley {Game1.version} on {Environment.OSVersion}", LogLevel.Info); + Console.Title = $"SMAPI {Constants.ApiVersion} - running Stardew Valley {Game1.version}"; // read settings { @@ -252,11 +253,10 @@ namespace StardewModdingAPI this.GameInstance = new SGame(this.Monitor); this.GameInstance.Exiting += (sender, e) => this.IsGameRunning = false; this.GameInstance.Window.ClientSizeChanged += (sender, e) => GraphicsEvents.InvokeResize(this.Monitor, sender, e); - this.GameInstance.Window.Title = $"Stardew Valley - Version {Game1.version}"; + this.GameInstance.Window.Title = $"Stardew Valley {Game1.version}"; gameProgramType.GetField("gamePtr").SetValue(gameProgramType, this.GameInstance); // configure - Game1.version += $" | SMAPI {Constants.ApiVersion}"; Game1.graphics.GraphicsProfile = GraphicsProfile.HiDef; } @@ -565,7 +565,7 @@ namespace StardewModdingAPI // print result this.Monitor.Log($"Loaded {modsLoaded} mods."); - Console.Title = $"Stardew Modding API Console - Version {Constants.ApiVersion} - Mods Loaded: {modsLoaded}"; + Console.Title = $"SMAPI {Constants.ApiVersion} - running Stardew Valley {Game1.version} with {modsLoaded} mods"; } // ReSharper disable once FunctionNeverReturns diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json index c4f708dc..a28dc3e8 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ b/src/StardewModdingAPI/StardewModdingAPI.data.json @@ -65,6 +65,13 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", "Notes": "Crashes with 'Method not found: Void StardewValley.Menus.TextBox.set_Highlighted(Boolean)'." }, + { + "Name": "Chests Anywhere", + "ID": "Pathoschild.ChestsAnywhere", + "UpperVersion": "1.9-beta", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", + "Notes": "ID changed in 1.9. Crashes with InvalidOperationException: 'The menu doesn't seem to have a player inventory'." + }, { "Name": "CJB Automation", "ID": "CJBAutomation", @@ -184,6 +191,13 @@ This file contains advanced metadata for SMAPI. You shouldn't change this file. "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683", "Notes": "Crashes with 'Method not found: Void StardewModdingAPI.Command.CallCommand(System.String)'." }, + { + "Name": "Teleporter", + "ID": "Teleporter", + "UpperVersion": "1.0.2", + "UpdateUrl": "http://community.playstarbound.com/resources/4374", + "Notes": "Crashes with 'InvalidOperationException: The StardewValley.Menus.MapPage object doesn't have a private 'points' instance field'." + }, { "Name": "Zoryn's Better RNG", "ID": "76b6d1e1-f7ba-4d72-8c32-5a1e6d2716f6", -- cgit From 6a18dd6fadaea7d72ce9ef4e2752c669c4f6420b Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Thu, 23 Feb 2017 22:58:23 -0500 Subject: merge config files --- README.md | 2 - src/StardewModdingAPI/Constants.cs | 3 - src/StardewModdingAPI/Framework/Models/SConfig.cs | 18 ++ .../Framework/Models/UserSettings.cs | 15 -- src/StardewModdingAPI/Program.cs | 65 ++---- .../StardewModdingAPI.config.json | 241 ++++++++++++++++++++- src/StardewModdingAPI/StardewModdingAPI.csproj | 6 +- src/StardewModdingAPI/StardewModdingAPI.data.json | 236 -------------------- src/prepare-install-package.targets | 2 - 9 files changed, 280 insertions(+), 308 deletions(-) create mode 100644 src/StardewModdingAPI/Framework/Models/SConfig.cs delete mode 100644 src/StardewModdingAPI/Framework/Models/UserSettings.cs delete mode 100644 src/StardewModdingAPI/StardewModdingAPI.data.json (limited to 'src/StardewModdingAPI/StardewModdingAPI.data.json') diff --git a/README.md b/README.md index 63adcf78..349916cc 100644 --- a/README.md +++ b/README.md @@ -85,7 +85,6 @@ folder containing `src`). StardewModdingAPI StardewModdingAPI.AssemblyRewriters.dll StardewModdingAPI.config.json - StardewModdingAPI.data.json StardewModdingAPI.exe StardewModdingAPI.exe.mdb steam_appid.txt @@ -97,7 +96,6 @@ folder containing `src`). Newtonsoft.Json.dll StardewModdingAPI.AssemblyRewriters.dll StardewModdingAPI.config.json - StardewModdingAPI.data.json StardewModdingAPI.exe StardewModdingAPI.pdb StardewModdingAPI.xml diff --git a/src/StardewModdingAPI/Constants.cs b/src/StardewModdingAPI/Constants.cs index 76003b69..8b085eac 100644 --- a/src/StardewModdingAPI/Constants.cs +++ b/src/StardewModdingAPI/Constants.cs @@ -62,9 +62,6 @@ namespace StardewModdingAPI /// The file path for the SMAPI configuration file. internal static string ApiConfigPath => Path.Combine(Constants.ExecutionPath, $"{typeof(Program).Assembly.GetName().Name}.config.json"); - /// The file path for the SMAPI data file containing metadata about known mods. - internal static string ApiModMetadataPath => Path.Combine(Constants.ExecutionPath, $"{typeof(Program).Assembly.GetName().Name}.data.json"); - /// The file path to the log where the latest output should be saved. internal static string LogPath => Path.Combine(Constants.LogDir, "SMAPI-latest.txt"); diff --git a/src/StardewModdingAPI/Framework/Models/SConfig.cs b/src/StardewModdingAPI/Framework/Models/SConfig.cs new file mode 100644 index 00000000..558da82a --- /dev/null +++ b/src/StardewModdingAPI/Framework/Models/SConfig.cs @@ -0,0 +1,18 @@ +namespace StardewModdingAPI.Framework.Models +{ + /// The SMAPI configuration settings. + internal class SConfig + { + /******** + ** Accessors + ********/ + /// Whether to enable development features. + public bool DeveloperMode { get; set; } + + /// Whether to check if a newer version of SMAPI is available on startup. + public bool CheckForUpdates { get; set; } = true; + + /// A list of mod versions which should be considered incompatible. + public IncompatibleMod[] IncompatibleMods { get; set; } + } +} diff --git a/src/StardewModdingAPI/Framework/Models/UserSettings.cs b/src/StardewModdingAPI/Framework/Models/UserSettings.cs deleted file mode 100644 index a0074f77..00000000 --- a/src/StardewModdingAPI/Framework/Models/UserSettings.cs +++ /dev/null @@ -1,15 +0,0 @@ -namespace StardewModdingAPI.Framework.Models -{ - /// Contains user settings from SMAPI's JSON configuration file. - internal class UserSettings - { - /********* - ** Accessors - *********/ - /// Whether to enable development features. - public bool DeveloperMode { get; set; } - - /// Whether to check if a newer version of SMAPI is available on startup. - public bool CheckForUpdates { get; set; } = true; - } -} diff --git a/src/StardewModdingAPI/Program.cs b/src/StardewModdingAPI/Program.cs index b8a16e79..eadbaaeb 100644 --- a/src/StardewModdingAPI/Program.cs +++ b/src/StardewModdingAPI/Program.cs @@ -47,8 +47,8 @@ namespace StardewModdingAPI /// The core logger for SMAPI. private readonly Monitor Monitor; - /// The user settings for SMAPI. - private UserSettings Settings; + /// The SMAPI configuration settings. + private readonly SConfig Settings; /// Tracks whether the game should exit immediately and any pending initialisation should be cancelled. private readonly CancellationTokenSource CancellationTokenSource = new CancellationTokenSource(); @@ -87,6 +87,10 @@ namespace StardewModdingAPI /// Construct an instance. internal Program(bool writeToConsole) { + // load settings + this.Settings = JsonConvert.DeserializeObject(File.ReadAllText(Constants.ApiConfigPath)); + + // initialise this.Monitor = new Monitor("SMAPI", this.ConsoleManager, this.LogFile, this.ExitGameImmediately) { WriteToConsole = writeToConsole }; this.DeprecationManager = new DeprecationManager(this.Monitor, this.ModRegistry); } @@ -99,20 +103,6 @@ namespace StardewModdingAPI this.Monitor.Log($"SMAPI {Constants.ApiVersion} with Stardew Valley {Game1.version} on {Environment.OSVersion}", LogLevel.Info); Console.Title = $"SMAPI {Constants.ApiVersion} - running Stardew Valley {Game1.version}"; - // read settings - { - string settingsPath = Constants.ApiConfigPath; - if (File.Exists(settingsPath)) - { - string json = File.ReadAllText(settingsPath); - this.Settings = JsonConvert.DeserializeObject(json); - } - else - this.Settings = new UserSettings(); - - File.WriteAllText(settingsPath, JsonConvert.SerializeObject(this.Settings, Formatting.Indented)); - } - // inject compatibility shims #pragma warning disable 618 Command.Shim(this.CommandManager, this.DeprecationManager, this.ModRegistry); @@ -341,20 +331,6 @@ namespace StardewModdingAPI AssemblyLoader modAssemblyLoader = new AssemblyLoader(this.TargetPlatform, this.Monitor); AppDomain.CurrentDomain.AssemblyResolve += (sender, e) => modAssemblyLoader.ResolveAssembly(e.Name); - // get known incompatible mods - IDictionary incompatibleMods; - try - { - incompatibleMods = File.Exists(Constants.ApiModMetadataPath) - ? JsonConvert.DeserializeObject(File.ReadAllText(Constants.ApiModMetadataPath)).ToDictionary(p => p.ID, p => p) - : new Dictionary(0); - } - catch (Exception ex) - { - incompatibleMods = new Dictionary(); - this.Monitor.Log($"Couldn't read metadata file at {Constants.ApiModMetadataPath}. SMAPI will still run, but some features may be disabled.\n{ex}", LogLevel.Warn); - } - // load mod assemblies int modsLoaded = 0; List deprecationWarnings = new List(); // queue up deprecation warnings to show after mod list @@ -413,23 +389,26 @@ namespace StardewModdingAPI } // validate known incompatible mods - IncompatibleMod compatibility; - if (incompatibleMods.TryGetValue(!string.IsNullOrWhiteSpace(manifest.UniqueID) ? manifest.UniqueID : manifest.EntryDll, out compatibility)) { - if (!compatibility.IsCompatible(manifest.Version)) + string modKey = !string.IsNullOrWhiteSpace(manifest.UniqueID) ? manifest.UniqueID : manifest.EntryDll; + IncompatibleMod compatibility = this.Settings.IncompatibleMods.FirstOrDefault(p => p.ID == modKey); + if(compatibility != null) { - bool hasOfficialUrl = !string.IsNullOrWhiteSpace(compatibility.UpdateUrl); - bool hasUnofficialUrl = !string.IsNullOrWhiteSpace(compatibility.UnofficialUpdateUrl); + if (!compatibility.IsCompatible(manifest.Version)) + { + bool hasOfficialUrl = !string.IsNullOrWhiteSpace(compatibility.UpdateUrl); + bool hasUnofficialUrl = !string.IsNullOrWhiteSpace(compatibility.UnofficialUpdateUrl); - string reasonPhrase = compatibility.ReasonPhrase ?? "it isn't compatible with the latest version of the game"; - string warning = $"Skipped {compatibility.Name} because {reasonPhrase}. Please check for a version newer than {compatibility.UpperVersion} here:"; - if (hasOfficialUrl) - warning += !hasUnofficialUrl ? $" {compatibility.UpdateUrl}" : $"{Environment.NewLine}- official mod: {compatibility.UpdateUrl}"; - if (hasUnofficialUrl) - warning += $"{Environment.NewLine}- unofficial update: {compatibility.UnofficialUpdateUrl}"; + string reasonPhrase = compatibility.ReasonPhrase ?? "it isn't compatible with the latest version of the game"; + string warning = $"Skipped {compatibility.Name} because {reasonPhrase}. Please check for a version newer than {compatibility.UpperVersion} here:"; + if (hasOfficialUrl) + warning += !hasUnofficialUrl ? $" {compatibility.UpdateUrl}" : $"{Environment.NewLine}- official mod: {compatibility.UpdateUrl}"; + if (hasUnofficialUrl) + warning += $"{Environment.NewLine}- unofficial update: {compatibility.UnofficialUpdateUrl}"; - this.Monitor.Log(warning, LogLevel.Error); - continue; + this.Monitor.Log(warning, LogLevel.Error); + continue; + } } } diff --git a/src/StardewModdingAPI/StardewModdingAPI.config.json b/src/StardewModdingAPI/StardewModdingAPI.config.json index 2abaf73a..e971c324 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.config.json +++ b/src/StardewModdingAPI/StardewModdingAPI.config.json @@ -1,4 +1,241 @@ -{ +/* + + +This file contains advanced configuration for SMAPI. You +generally shouldn't change this file unless necessary. + + +*/ +{ "DeveloperMode": true, - "CheckForUpdates": true + "CheckForUpdates": true, + "IncompatibleMods": [ + /* versions which crash the game */ + { + "Name": "NPC Map Locations", + "ID": "NPCMapLocationsMod", + "LowerVersion": "1.42", + "UpperVersion": "1.43", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/239", + "ReasonPhrase": "this version has an update check error which crashes the game" + }, + + /* versions not compatible with Stardew Valley 1.1+ */ + { + "Name": "Chest Label System", + "ID": "SPDChestLabel", + "UpperVersion": "1.5", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/242", + "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", + "ForceCompatibleVersion": "^1.5-EntoPatch" + }, + + /* versions not compatible with Stardew Valley 1.2+ */ + { + "Name": "AccessChestAnywhere", + "ID": "AccessChestAnywhere", + "UpperVersion": "1.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/257", + "UnofficialUpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", + "Notes": "Crashes with 'Method not found: Void StardewValley.Item.set_Name(System.String)'." + }, + { + "Name": "Almighty Tool", + "ID": "AlmightyTool.dll", + "UpperVersion": "1.1.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/439", + "Notes": "Uses obsolete StardewModdingAPI.Extensions." + }, + { + "Name": "Better Sprinklers", + "ID": "SPDSprinklersMod", + "UpperVersion": "2.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/41", + "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", + "ForceCompatibleVersion": "^2.1-EntoPatch.7", + "Notes": "Uses obsolete StardewModdingAPI.Extensions." + }, + { + "Name": "Casks Anywhere", + "ID": "CasksAnywhere", + "UpperVersion": "1.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/878", + "Notes": "Uses obsolete StardewModdingAPI.Inheritance.ItemStackChange." + }, + { + "Name": "Chests Anywhere", + "ID": "ChestsAnywhere", + "UpperVersion": "1.8.2", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", + "Notes": "Crashes with 'Method not found: Void StardewValley.Menus.TextBox.set_Highlighted(Boolean)'." + }, + { + "Name": "Chests Anywhere", + "ID": "Pathoschild.ChestsAnywhere", + "UpperVersion": "1.9-beta", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", + "Notes": "ID changed in 1.9. Crashes with InvalidOperationException: 'The menu doesn't seem to have a player inventory'." + }, + { + "Name": "CJB Automation", + "ID": "CJBAutomation", + "UpperVersion": "1.4", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/211", + "Notes": "Crashes with 'Method not found: Void StardewValley.Item.set_Name(System.String)'." + }, + { + "Name": "CJB Cheats Menu", + "ID": "CJBCheatsMenu", + "UpperVersion": "1.13", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4", + "Notes": "Uses removed Game1.borderFont." + }, + { + "Name": "CJB Item Spawner", + "ID": "CJBItemSpawner", + "UpperVersion": "1.6", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93", + "Notes": "Uses removed Game1.borderFont." + }, + { + "Name": "Cooking Skill", + "ID": "CookingSkill", + "UpperVersion": "1.0.3", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/522", + "Notes": "Crashes with 'Method not found: Void StardewValley.Buff..ctor(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, System.String)'." + }, + { + "Name": "Enemy Health Bars", + "ID": "SPDHealthBar", + "UpperVersion": "1.7", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/193", + "Notes": "Uses obsolete GraphicsEvents.DrawTick." + }, + { + "Name": "Entoarox Framework", + "ID": "eacdb74b-4080-4452-b16b-93773cda5cf9", + "UpperVersion": "1.6.5", + "UpdateUrl": "http://community.playstarbound.com/resources/4228", + "Notes": "Uses obsolete StardewModdingAPI.Inheritance.SObject until 1.6.1; then crashes until 1.6.4 ('Entoarox Framework requested an immediate game shutdown: Fatal error attempting to update player tick properties System.NullReferenceException: Object reference not set to an instance of an object. at Entoarox.Framework.PlayerHelper.Update(Object s, EventArgs e)')." + }, + { + "Name": "Extended Fridge", + "ID": "Mystra007ExtendedFridge", + "UpperVersion": "1.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/485", + "Notes": "Actual upper version is 0.94, but mod incorrectly sets it to 1.0 in the manifest. Crashes with 'Field not found: StardewValley.Game1.mouseCursorTransparency'." + }, + { + "Name": "Get Dressed", + "ID": "GetDressed.dll", + "UpperVersion": "3.2", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/331", + "Notes": "Crashes with NullReferenceException in GameEvents.UpdateTick." + }, + { + "Name": "Lookup Anything", + "ID": "LookupAnything", + "UpperVersion": "1.10", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541", + "Notes": "Crashes with FormatException when looking up NPCs." + }, + { + "Name": "Lookup Anything", + "ID": "Pathoschild.LookupAnything", + "UpperVersion": "1.10.1", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541", + "Notes": "ID changed in 1.10.1. Crashes with FormatException when looking up NPCs." + }, + { + "Name": "Makeshift Multiplayer", + "ID": "StardewValleyMP", + "UpperVersion": "0.2.10", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/501", + "Notes": "Uses obsolete GraphicsEvents.OnPreRenderHudEventNoCheck." + }, + { + "Name": "NoSoilDecay", + "ID": "289dee03-5f38-4d8e-8ffc-e440198e8610", + "UpperVersion": "0.5", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237", + "Notes": "Uses Assembly.GetExecutingAssembly().Location." + }, + { + "Name": "Point-and-Plant", + "ID": "PointAndPlant.dll", + "UpperVersion": "1.0.2", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/572", + "Notes": "Uses obsolete StardewModdingAPI.Extensions." + }, + { + "Name": "Reusable Wallpapers", + "ID": "dae1b553-2e39-43e7-8400-c7c5c836134b", + "UpperVersion": "1.5", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/356", + "Notes": "Uses obsolete StardewModdingAPI.Inheritance.ItemStackChange." + }, + { + "Name": "Save Anywhere", + "ID": "SaveAnywhere", + "UpperVersion": "2.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/444", + "Notes": "Depends on StarDustCore." + }, + { + "Name": "StackSplitX", + "ID": "StackSplitX.dll", + "UpperVersion": "1.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/798", + "Notes": "Uses SMAPI's internal SGame class." + }, + { + "Name": "StarDustCore", + "ID": "StarDustCore", + "UpperVersion": "1.0", + "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683", + "Notes": "Crashes with 'Method not found: Void StardewModdingAPI.Command.CallCommand(System.String)'." + }, + { + "Name": "Teleporter", + "ID": "Teleporter", + "UpperVersion": "1.0.2", + "UpdateUrl": "http://community.playstarbound.com/resources/4374", + "Notes": "Crashes with 'InvalidOperationException: The StardewValley.Menus.MapPage object doesn't have a private 'points' instance field'." + }, + { + "Name": "Zoryn's Better RNG", + "ID": "76b6d1e1-f7ba-4d72-8c32-5a1e6d2716f6", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." + }, + { + "Name": "Zoryn's Calendar Anywhere", + "ID": "a41c01cd-0437-43eb-944f-78cb5a53002a", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." + }, + { + "Name": "Zoryn's Health Bars", + "ID": "HealthBars.dll", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." + }, + { + "Name": "Zoryn's Movement Mod", + "ID": "8a632929-8335-484f-87dd-c29d2ba3215d", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." + }, + { + "Name": "Zoryn's Regen Mod", + "ID": "dfac4383-1b6b-4f33-ae4e-37fc23e5252e", + "UpperVersion": "1.5", + "UpdateUrl": "http://community.playstarbound.com/threads/108756", + "Notes": "Uses SMAPI's internal SGame class." + } + ] } diff --git a/src/StardewModdingAPI/StardewModdingAPI.csproj b/src/StardewModdingAPI/StardewModdingAPI.csproj index 796980cb..72cc1ed2 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.csproj +++ b/src/StardewModdingAPI/StardewModdingAPI.csproj @@ -150,6 +150,7 @@ + @@ -182,7 +183,6 @@ - @@ -209,9 +209,6 @@ Always - - Always - Always @@ -255,7 +252,6 @@ - diff --git a/src/StardewModdingAPI/StardewModdingAPI.data.json b/src/StardewModdingAPI/StardewModdingAPI.data.json deleted file mode 100644 index a28dc3e8..00000000 --- a/src/StardewModdingAPI/StardewModdingAPI.data.json +++ /dev/null @@ -1,236 +0,0 @@ -/* - - -This file contains advanced metadata for SMAPI. You shouldn't change this file. - - -*/ -[ - /* versions which crash the game */ - { - "Name": "NPC Map Locations", - "ID": "NPCMapLocationsMod", - "LowerVersion": "1.42", - "UpperVersion": "1.43", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/239", - "ReasonPhrase": "this version has an update check error which crashes the game" - }, - - /* versions not compatible with Stardew Valley 1.1+ */ - { - "Name": "Chest Label System", - "ID": "SPDChestLabel", - "UpperVersion": "1.5", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/242", - "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", - "ForceCompatibleVersion": "^1.5-EntoPatch" - }, - - /* versions not compatible with Stardew Valley 1.2+ */ - { - "Name": "AccessChestAnywhere", - "ID": "AccessChestAnywhere", - "UpperVersion": "1.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/257", - "UnofficialUpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", - "Notes": "Crashes with 'Method not found: Void StardewValley.Item.set_Name(System.String)'." - }, - { - "Name": "Almighty Tool", - "ID": "AlmightyTool.dll", - "UpperVersion": "1.1.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/439", - "Notes": "Uses obsolete StardewModdingAPI.Extensions." - }, - { - "Name": "Better Sprinklers", - "ID": "SPDSprinklersMod", - "UpperVersion": "2.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/41", - "UnofficialUpdateUrl": "http://community.playstarbound.com/threads/125031", - "ForceCompatibleVersion": "^2.1-EntoPatch.7", - "Notes": "Uses obsolete StardewModdingAPI.Extensions." - }, - { - "Name": "Casks Anywhere", - "ID": "CasksAnywhere", - "UpperVersion": "1.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/878", - "Notes": "Uses obsolete StardewModdingAPI.Inheritance.ItemStackChange." - }, - { - "Name": "Chests Anywhere", - "ID": "ChestsAnywhere", - "UpperVersion": "1.8.2", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", - "Notes": "Crashes with 'Method not found: Void StardewValley.Menus.TextBox.set_Highlighted(Boolean)'." - }, - { - "Name": "Chests Anywhere", - "ID": "Pathoschild.ChestsAnywhere", - "UpperVersion": "1.9-beta", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/518", - "Notes": "ID changed in 1.9. Crashes with InvalidOperationException: 'The menu doesn't seem to have a player inventory'." - }, - { - "Name": "CJB Automation", - "ID": "CJBAutomation", - "UpperVersion": "1.4", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/211", - "Notes": "Crashes with 'Method not found: Void StardewValley.Item.set_Name(System.String)'." - }, - { - "Name": "CJB Cheats Menu", - "ID": "CJBCheatsMenu", - "UpperVersion": "1.13", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/4", - "Notes": "Uses removed Game1.borderFont." - }, - { - "Name": "CJB Item Spawner", - "ID": "CJBItemSpawner", - "UpperVersion": "1.6", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/93", - "Notes": "Uses removed Game1.borderFont." - }, - { - "Name": "Cooking Skill", - "ID": "CookingSkill", - "UpperVersion": "1.0.3", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/522", - "Notes": "Crashes with 'Method not found: Void StardewValley.Buff..ctor(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, Int32, System.String)'." - }, - { - "Name": "Enemy Health Bars", - "ID": "SPDHealthBar", - "UpperVersion": "1.7", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/193", - "Notes": "Uses obsolete GraphicsEvents.DrawTick." - }, - { - "Name": "Entoarox Framework", - "ID": "eacdb74b-4080-4452-b16b-93773cda5cf9", - "UpperVersion": "1.6.5", - "UpdateUrl": "http://community.playstarbound.com/resources/4228", - "Notes": "Uses obsolete StardewModdingAPI.Inheritance.SObject until 1.6.1; then crashes until 1.6.4 ('Entoarox Framework requested an immediate game shutdown: Fatal error attempting to update player tick properties System.NullReferenceException: Object reference not set to an instance of an object. at Entoarox.Framework.PlayerHelper.Update(Object s, EventArgs e)')." - }, - { - "Name": "Extended Fridge", - "ID": "Mystra007ExtendedFridge", - "UpperVersion": "1.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/485", - "Notes": "Actual upper version is 0.94, but mod incorrectly sets it to 1.0 in the manifest. Crashes with 'Field not found: StardewValley.Game1.mouseCursorTransparency'." - }, - { - "Name": "Get Dressed", - "ID": "GetDressed.dll", - "UpperVersion": "3.2", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/331", - "Notes": "Crashes with NullReferenceException in GameEvents.UpdateTick." - }, - { - "Name": "Lookup Anything", - "ID": "LookupAnything", - "UpperVersion": "1.10", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541", - "Notes": "Crashes with FormatException when looking up NPCs." - }, - { - "Name": "Lookup Anything", - "ID": "Pathoschild.LookupAnything", - "UpperVersion": "1.10.1", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/541", - "Notes": "ID changed in 1.10.1. Crashes with FormatException when looking up NPCs." - }, - { - "Name": "Makeshift Multiplayer", - "ID": "StardewValleyMP", - "UpperVersion": "0.2.10", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/501", - "Notes": "Uses obsolete GraphicsEvents.OnPreRenderHudEventNoCheck." - }, - { - "Name": "NoSoilDecay", - "ID": "289dee03-5f38-4d8e-8ffc-e440198e8610", - "UpperVersion": "0.5", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/237", - "Notes": "Uses Assembly.GetExecutingAssembly().Location." - }, - { - "Name": "Point-and-Plant", - "ID": "PointAndPlant.dll", - "UpperVersion": "1.0.2", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/572", - "Notes": "Uses obsolete StardewModdingAPI.Extensions." - }, - { - "Name": "Reusable Wallpapers", - "ID": "dae1b553-2e39-43e7-8400-c7c5c836134b", - "UpperVersion": "1.5", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/356", - "Notes": "Uses obsolete StardewModdingAPI.Inheritance.ItemStackChange." - }, - { - "Name": "Save Anywhere", - "ID": "SaveAnywhere", - "UpperVersion": "2.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/444", - "Notes": "Depends on StarDustCore." - }, - { - "Name": "StackSplitX", - "ID": "StackSplitX.dll", - "UpperVersion": "1.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/798", - "Notes": "Uses SMAPI's internal SGame class." - }, - { - "Name": "StarDustCore", - "ID": "StarDustCore", - "UpperVersion": "1.0", - "UpdateUrl": "http://www.nexusmods.com/stardewvalley/mods/683", - "Notes": "Crashes with 'Method not found: Void StardewModdingAPI.Command.CallCommand(System.String)'." - }, - { - "Name": "Teleporter", - "ID": "Teleporter", - "UpperVersion": "1.0.2", - "UpdateUrl": "http://community.playstarbound.com/resources/4374", - "Notes": "Crashes with 'InvalidOperationException: The StardewValley.Menus.MapPage object doesn't have a private 'points' instance field'." - }, - { - "Name": "Zoryn's Better RNG", - "ID": "76b6d1e1-f7ba-4d72-8c32-5a1e6d2716f6", - "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756", - "Notes": "Uses SMAPI's internal SGame class." - }, - { - "Name": "Zoryn's Calendar Anywhere", - "ID": "a41c01cd-0437-43eb-944f-78cb5a53002a", - "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756", - "Notes": "Uses SMAPI's internal SGame class." - }, - { - "Name": "Zoryn's Health Bars", - "ID": "HealthBars.dll", - "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756", - "Notes": "Uses SMAPI's internal SGame class." - }, - { - "Name": "Zoryn's Movement Mod", - "ID": "8a632929-8335-484f-87dd-c29d2ba3215d", - "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756", - "Notes": "Uses SMAPI's internal SGame class." - }, - { - "Name": "Zoryn's Regen Mod", - "ID": "dfac4383-1b6b-4f33-ae4e-37fc23e5252e", - "UpperVersion": "1.5", - "UpdateUrl": "http://community.playstarbound.com/threads/108756", - "Notes": "Uses SMAPI's internal SGame class." - } -] diff --git a/src/prepare-install-package.targets b/src/prepare-install-package.targets index bd9287f1..709bd8d4 100644 --- a/src/prepare-install-package.targets +++ b/src/prepare-install-package.targets @@ -28,7 +28,6 @@ - @@ -43,7 +42,6 @@ - -- cgit