If your bug is about not being able to craft, make sure you've actually tried crafting the last time you opened your game, before you upload your log. If there aren't any failed attempts logged, there's nothing for me to go on.
If you do NOT include your log, your report may be closed and ignored. Even if you personally don't see an error message, there can still be useful information!
Did you open the crafting menu via the kitchen, a workbench, or the game menu?
Include any other information about what you were doing that you think might help.
Screenshots of visual problems are appreciated, but not required
Hello. Sorry, I feel stupid to ask but I can't understand how I can "connect" multiple workbench. I have path and enabled these path, but when I try to use a workbench connected by the path (I hope they are connected?), the items aren't here. Only the 32 tiles distances works :/
Here the SMAPI logs: https://smapi.io/log/7d56fcecd5214e10a116d326fd65099a
For performance reasons, there is a limit in how many tiles the workbench will check. This is limited by both distance from the bench, and total number of checks. Given the distance involved in your screenshots, You've probably exceeded those.
You can raise the values somewhat, but it might still not be enough. I need to look into a more efficient way of discovering connected things.
Hi! The latest update breaks the prismatic tools mod. No only are prismatic sprinklers no longer craftable (they don't show up in the menu), but the ones already in use show up with a glitched icon. I had to revert to the previous version to fix this.
I am entirely unable to reproduce this issue. Looking at the code for Prismatic Tools Continued, nothing immediately stands out to me that should conflict with Better Crafting specifically. The mod is pretty fragile in how it handles its items though, relying on things like patching into an existing texture with a hard-coded ID instead of taking advantage of how items can have their own textures now in 1.6. If anything, I'd guess that it's something Prismatic Tools Continued needs to fix.
I spent a few hours working on this, and I can't find any fix, maybe you might be able to find something.
I moved the items to their own textures and unique item ID's, but it hasn't had any effect on the issue. As soon as I enable your mod, the item ID's stop existing.
if (e.NameWithoutLocale.IsEquivalentTo("Data/Objects")) { e.Edit(asset => { var data = asset.AsDictionary<string, ObjectData>().Data; IRawTextureData barTexture = ModEntry.ModHelper.ModContent.Load<IRawTextureData>("assets/prismaticBar.png"); IRawTextureData sprinklerTexture = ModEntry.ModHelper.ModContent.Load<IRawTextureData>("assets/prismaticSprinkler.png"); dynamic sprinkler = new ObjectData { Name = this.sprinklerName, DisplayName = this.sprinklerName, Description = this.sprinklerDesc, Price = PrismaticSprinklerItem.PRICE, Type = PrismaticSprinklerItem.TYPE, Category = PrismaticSprinklerItem.CATEGORY, Edibility = PrismaticSprinklerItem.EDIBILITY, SpriteIndex = 0, Texture = ModEntry.ModHelper.ModContent.GetInternalAssetName("assets/prismaticSprinkler.png").Name }; sprinkler.ContextTags = new List<string> { }; if (ModEntry.Config.UseSprinklersAsScarecrows) { sprinkler.ContextTags.Add("crow_scare"); sprinkler.ContextTags.Add("crow_scare_radius_" + (ModEntry.Config.SprinklerRange + 2).ToString()); }; data.Add(PrismaticBarItem.ID, new ObjectData { Name = this.barName, DisplayName = this.barName, Description = this.barDesc, Price = PrismaticBarItem.PRICE, Type = PrismaticBarItem.TYPE, Category = PrismaticBarItem.CATEGORY, Edibility = PrismaticBarItem.EDIBILITY, SpriteIndex = 0, Texture = ModEntry.ModHelper.ModContent.GetInternalAssetName("assets/prismaticBar.png").Name }); data.Add(PrismaticSprinklerItem.ID, sprinkler); }); Are you doing something that prevents me from adding items to Data/Objects? The items exist perfectly fine until I enable your mod and then it immediately breaks. The recipes still exist, and the tools are added fine, but these two objects I'm trying to add just stop existing from the item list.
I tried setting the edit priority to early and late but it had no impact. I looked at your code and haven't found anything, but you are more familiar with it.
The only thing I can think of is that Better Crafting eagerly loads Data/Objects. If I load the resource before your mod's AssetRequested event handler is in place and you never invalidate it, and nothing else invalidates it in your environment, then your AssetRequested event won't do anything.
I should probably change my loading logic a bit anyway, but please try invalidating that asset if you haven't already and let me know.
I'm currently having an issue with Better Crafting Buildings. I would like for the materials for crafting buildings to be 200%, while having the cost be 10%. No matter what I set the settings to it doesn't change.
Hi! I don't know if this is a bug or just some incompatibility, but I guess there's a problem between Yet Another Cooking Skill and the Craftable Buildings. When I tried to build a silo from the crafting menu, a big error came up mentioning the cooking skill from YACS.
Here's my log: https://smapi.io/log/d203b82a5552494d879f990c7c158877
If possible (and not hard) could this be compatible with informant "New" label for crafting recipes? I just think it has a better look and its compatible with other languages besides English.
I certainly won't spend effort making it compatible. I would much rather just improve my own feature. I'll look into improving the rendering for other languages.
Update: The next version will update the source I use to draw the NEW label to support all languages in the base game, including Chinese which has the largest label.
The functionality of the mod is very good, there will be some conflicts between them when I add another mod, the tail number is 5382, if you put the material in the extra backpack, it will not be recognized as a craft. I don't know if you can make a compatibility, I also left the same question in 5382
It is not. I assume you're asking because the change log talks about mutexes?
Stardew Valley's multiplayer code uses mutexes to lock inventories to prevent multiple players from modifying them simultaneously. That's what I'm talking about.
While it might be nice to do some things with multiple threads, Stardew's engine and especially its content pipeline are not thread-safe, so it wouldn't really be useful.
383 comments
Reporting a bug? Please use the Bugs tab and:
I have path and enabled these path, but when I try to use a workbench connected by the path (I hope they are connected?), the items aren't here. Only the 32 tiles distances works :/
Here the SMAPI logs: https://smapi.io/log/7d56fcecd5214e10a116d326fd65099a
You can raise the values somewhat, but it might still not be enough. I need to look into a more efficient way of discovering connected things.
Why? :c
Thanks for the mod!
I moved the items to their own textures and unique item ID's, but it hasn't had any effect on the issue. As soon as I enable your mod, the item ID's stop existing.
if (e.NameWithoutLocale.IsEquivalentTo("Data/Objects")) {
e.Edit(asset => {
var data = asset.AsDictionary<string, ObjectData>().Data;
IRawTextureData barTexture = ModEntry.ModHelper.ModContent.Load<IRawTextureData>("assets/prismaticBar.png");
IRawTextureData sprinklerTexture = ModEntry.ModHelper.ModContent.Load<IRawTextureData>("assets/prismaticSprinkler.png");
dynamic sprinkler = new ObjectData { Name = this.sprinklerName, DisplayName = this.sprinklerName, Description = this.sprinklerDesc, Price = PrismaticSprinklerItem.PRICE, Type = PrismaticSprinklerItem.TYPE, Category = PrismaticSprinklerItem.CATEGORY, Edibility = PrismaticSprinklerItem.EDIBILITY, SpriteIndex = 0, Texture = ModEntry.ModHelper.ModContent.GetInternalAssetName("assets/prismaticSprinkler.png").Name };
sprinkler.ContextTags = new List<string> { };
if (ModEntry.Config.UseSprinklersAsScarecrows) { sprinkler.ContextTags.Add("crow_scare"); sprinkler.ContextTags.Add("crow_scare_radius_" + (ModEntry.Config.SprinklerRange + 2).ToString()); };
data.Add(PrismaticBarItem.ID, new ObjectData { Name = this.barName, DisplayName = this.barName, Description = this.barDesc, Price = PrismaticBarItem.PRICE, Type = PrismaticBarItem.TYPE, Category = PrismaticBarItem.CATEGORY, Edibility = PrismaticBarItem.EDIBILITY, SpriteIndex = 0, Texture = ModEntry.ModHelper.ModContent.GetInternalAssetName("assets/prismaticBar.png").Name });
data.Add(PrismaticSprinklerItem.ID, sprinkler);
});
Are you doing something that prevents me from adding items to Data/Objects? The items exist perfectly fine until I enable your mod and then it immediately breaks. The recipes still exist, and the tools are added fine, but these two objects I'm trying to add just stop existing from the item list.
I tried setting the edit priority to early and late but it had no impact. I looked at your code and haven't found anything, but you are more familiar with it.
I should probably change my loading logic a bit anyway, but please try invalidating that asset if you haven't already and let me know.
Here's my log: https://smapi.io/log/d203b82a5552494d879f990c7c158877
Edit: Went to comment on YACS and they already have an update!
edit: it's not because of this mod, the only crafting recipe I have is sign for some reason
Update: The next version will update the source I use to draw the NEW label to support all languages in the base game, including Chinese which has the largest label.
Stardew Valley's multiplayer code uses mutexes to lock inventories to prevent multiple players from modifying them simultaneously. That's what I'm talking about.
While it might be nice to do some things with multiple threads, Stardew's engine and especially its content pipeline are not thread-safe, so it wouldn't really be useful.