#making-mods-general
1 messages · Page 369 of 1
And then use target fields to append to the stack modifier list
Your keys are missing the underscore after Navy.
(the actual better way is C#)
ahhhh good catch
I don't see how local tokening it can decrease it much, especially given this is what it's doing:
{
"RequiredTags": ["!atlasv_slop_machine_exclude", "category_gem"],
"Condition": "ITEM_EDIBILITY Input 2"
},
thank you for the extra set of eyes 🫡
Is that the machine input
yes, that's just the part that'll be changing the actual static parts is only an extra few lines and it only needs to be done once
I thought you just wanted higher edibility to produce more stacks tho
yes but I have to go through every catagory and every even value between 1 and 1000 if I want support for something like SVE
Yeah iirc item edibility gsq takes a range
I could get get it down to 3k ish but that's still way too many
"Hearts:Abigail": "{{Range: 6, 14}}" // equivalent to "6, 7, 8, 9, 10, 11, 12, 13, 14" from CP docs, although not sure if that's compatible with Condition
ITEM_EDIBILITY <target> [min] [max]
never mind me then
So this condition is saying edibility 2 or more on input
to break it down there roughly 15 catagories that have edible items that I know of (37 if you count them all), if i have 15 categories, and a check for every edibility value thats a multiple of 10 to a max of 1000 (thanks SVE) it'll still be 750 of those triggers
I think it's fine to do wider steps though 
This is defo out of scope for just content patcher, some kind of arithmatic would be needed
the issue is to get it down to 100 of them, the steps would need to be 250 edibility apart
You don't have to do even steps
The 999 edibility stuff can be outliers
Like if you just do 0 50, 50 100, 100 150 etc
Then a final 300 or whatever for 300 or greater
Do the categories actually matter btw?
Like are you producing different things
categories make it take up so much less space, id have to add each item by ID otherwise wouldn't i?
producing 1 thing out of many different things ( not at the same time)
No if you just dont put anything it's unrestricted
I don't have to specify item ID or tag?
The Q is more would category_gem have a different output than category_fruit
nope, same item reguardless of category
Then yeah just the ! tag is fine
ok i got the diggable tiles woking but the warp and the water trough dont still, does anything look off?
In that case it's something like
NOT special_exclude_tag AND input match this ITEM_EDIBILITY gsq
you are fantastic, I had no idea i could just omit the allow category and just have a disallow tag, you have given a new lease of life to this silly mod idea I had
Honestly i don't really have enough context on what ur machine should actually do
My impression was like
- It takes any edible object
- Depending on the particular edible value, apply some StackModifiers to change number of output items
you probably still want a condition for allowing only regular, edible objects in the trigger rule itself
I'm still going to have the check for edibility, would that be enough surely?
that's exactly it
more specifically any edible object with a posivite ediblity
yeah I think so
how hard would it be to make a mod which makes holding left click more optimal? I might dive into the code and see how it's currently done
hopefully I can do it with just some harmonies
Then yeah dont do separate machine triggers
harder than making an AutoHotKey script
Do 1 that check not tag and edible >= 1
(tbh I'm asking because EMC passively patches the game to allow non-object machine inputs, and if you don't have an input condition your machine will homf player's tools)
okay very true lol
nibbles your iridium pickaxe :3
thats exactly the reason i'm checking edibility, i Doubt a pickaxe would taste too nice
wait... that could be a mod idea
a machine which auto gets stuff for the player, on the condition they submit a tool
just need to make sure it spits the tool back out
I think theres a mod already like that? but not sure if it takes the tool or not
would be cool if it could take the tool on loan, then spit out items to a chest or something depending on the tool
I’m assuming you want it to warp on a click? I believe it should be TouchAction instead of just Action
As for StackModifiers there's an example on bone mill but it's multiply
I have been thinking about making a resource machine mod, but if a tool isnt in a chest or inventory it would drop it in the lost and found duplicating it i think
groan
I think there is one for adding but im on phone
from what i understand that one is a step onto it warp
Huh! Nevermind then I don’t know XD
TouchAction is "as soon as your farmer touches it, the action happens". Action requires a click.
Zren i think ur args might be wrong
🫡
????
You had something like
FromX FromY Greenhouse ToX ToY iirc
Should just be ToX ToY Greenhouse I believe
I think they could do with better names personally because I can see an argument for TouchAction meaning either way haha
fr fr
yeah no that was entirely my confusion XD
Ofc i might have remember wrong, 
TouchAction makes me think you have to touch it, which in my mind means clicking it XD even though yeah, the player coming into contact with it in any way is in fact touching it XD
Action Warp <int x> <int y> <str area>
That is what they already have though isn't it?
?
Is it mean to be an intra-map warp?
Yeah so it should work 
yess
Assuming all the other stuff is right
Have you got something on the Buildings tile layer?
You can check in game by hovering your mouse over the tile
See if u get at least a hand
Hmm if there's no hand it's not recognising the action
Tile data isn't actually in game then
Try doing a patch export
Check if u got a space or something after Action
If u want u can post the tmx here so we can help look
?
you’ve got your TileData at an exact size and location so it’s not that (speaking from recent experience lol)
Check the Action first like chu suggested, then if that's not it, try patch export Maps/Greenhouse in the SMAPI console. It will export the version of the map that's in the game so you can check if the tile object property is present there.
It is a great way to check if the problem is that your change never made it into the game.
does that work when my map is still a .tmx?
It works for any asset in the game, so yes. (But also I don't know what you mean by "still a .tmx" - that's what all the maps are.)
Were you packing it into xnb?
Nope
im not really done
I'm confused then i thought you are testing in game
No, you are.
You can load tmx files into the game as maps just fine, that’s what I’ve been doing while I’ve been making stuff recently
ok good
That's what you have to do. I think the confusion has come from you saying "my map is still a .tmx" because that's what we're expecting it to be and are not sure what you're thinking it should be instead.
yea chuve is confusing me
You are confusing us lol
chu was confused bc of the confusion aba just described from your message
Why did you say "does that work when my map is still a .tmx?"
and its not uncommon for people to think they should be xnb modding, so people are quick to warn against it if they think theres a possibility of it
bc you said to patch export Maps/Greenhouse and the original map is in that folder
they should be tmxs in there too
but more accurately you're not exporting a file from your computer
you're exporting an asset in the game that happens to have the same name that looks like a file path in your computer
Aren't you editing Maps/Greenhouse? I assumed from the fact that your warp was Greenhouse that you're making a mod that's editing the game's Greenhouse map.
That may be your warp problem then
Do you know what the name of the map you’re editing is in game?
there was no warp initially
What are you trying to edit then if not the game's greenhouse?
Actually maybe if you just share your json we can determine for ourselves.
am i supposed to format it to that or?
No, you need a .tmx file for the map and you need a manifest.json and a content.json for your map to get into the game. Please share the content.json.
Okay, see that line "Target": "Maps/Greenhouse",? That means you're editing the Maps/Greenhouse asset in the game so when you do patch export Maps/Greenhouse it will export the greenhouse map that you have made.
yes 🙂
So please do that
does "Action": "EditData", occur on game load only? or does it also occur on start of day?
If i had it targeting "Data/Machines" would it occur every time a machine is interacted with? just concered whether performance would would be a problem for a machine with 179 recipes loaded
no. it occurs whenever machine data is invalidated and edits need to be reapplied
[Content Patcher] The 'patch export' command expects one argument containing the target asset name, and an optional second argument for the data type. See 'patch help' for more info.
oh okay, so it shouldn't tank performance majorly then?
no
What's the right way to set the output quantity of a machine, I thought it was this:
"OutputItem": [
{
"ItemId": "{{ModId}}_NutrientSlop",
"Modification": "Set",
"Amount": 500
}
],
But it's still outputting 1 item
What did you write?
is this the right way to add a BETAS TouchAction property to a tile in Tiled (I feel like I've been staring in there for too long
)
Spiderbuttons.BETAS_Action (Name) | {{ModId}}_PlayTileSound (String Value)
(I actually wrote out the ModId in the program ^^')
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
PlayTileSound is not a thing. you add it the same way you'd add any other TouchAction to the Back layer, just use a BETAS action instead
TouchAction | Spiderbuttons.BETAS_PlaySound Whatever
ohhh okay so I put that in the value spot and have the name just be TouchAction 
Would I still need a triggeraction at all in my content file?
no
!!! ah okay, great, I'll try that
Thank you
I have no idea why I'm trying to do map edits as one of my first mod attempts, but I'm in this far
ahh yay, got splashy steps working

thank you so much for helping @uncut viper, @royal stump , and @gaunt orbit 
Hi, could anyone help me out with this 😭 My npc will walk his "spring" schedule but any days all get read out with this kind of error and Smapi validator says everything is fine
the other schedule days without the scheduleDialogue also read an error out like this
!json that’s an issue with the schedule dialogue. what does your schedule look like?
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
I want to edit a map, but when I open the default game file, the tiles are all messed up. What should I do?
Huh... Did you just unpack this map file?
I have also never seen this before
I actually have
ya
But the only time ive seen this happen is when i opened a really old map file from like, version 1.4
can we see an actual screenshot of the full window please?
That is very blurry but it looks like it's a .tbin. Did you use StardewXnbHack to unpack your game files? It should be a .tmx file.
I don't use that
Hmm ok the warps are there and look correct. I'm going to test it in my game.
!unpack Then please go and unpack it again using StardewXnbHack and hopefully this issue will be fixed :)
Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!
Ok I will try it
where did you get this from then, out of curiosity?
Here's my problem. They're clipping behind them
Im guessing xnblci or however its spelled
I'm pretty sure that doesn't extract as broken tbins, but I could be wrong, haven't used it in ages
Perhaps something went wrong during the extraction process but it's the only thing i know that extracts the maps as .tbin
Did you put these on front or alwaysfront layer?
Why are there toilets everywhere...
who wouldn't want more toilets in their life?
Also can I get peoples thoughts on this. I added some dialogue/tweaks for SVE characters in my mod. I now realize I probably should have gotten approval for doing that. Is there a standard way of doing that or should i message them?
SVE actually has open permissions as long as you credit them so you should be fine. If you want to be sure and/or want to check that your changes meet their approval (for character voice etc) it might be worth hopping into the SVE discord server to see if there's more direction in there. Normally I'd say to ping someone on here or message them on Nexus but I'd imagine that Flash probably gets a lot of people trying to contact him.
I put this map in my game and the warps work!
o ok great thanks Ill pop over there and ask. Can I ask what exactly consists of crediting them so I do it right?
I use xnbcli
because it can change back to xnb
don't change things back to xnb, you shouldn't be releasing new xnb mods
In the case where you're editing another mod's assets but not including those assets in your own mod, I'd probably personally just have a section on the mod page where it explains that and links to the mods that you edit content from. More of a compatibility notes thing than credit as such but linking to the mod means people can learn about it from your mod if they don't already know about it.
Ok will do. Really appreciate the help.
it just looks like you have overidden the tilesheets with the wrong names so it's loading the wrong ones
This is for the mayor mod right
Yeah
You may need special compat for the joja route in sve where morris becomes mayor
I definitely do. I'm working on it at the moment. I also wana do a better job integrating with law and order mod. I must admit I was very naive and I didn't realise compatibility would be such a requested thing. I'm learning 🙂
Honestly the compat is why we usually tell ppl that hey making a mayor mod is tough (but you did it so good job!)
You can always reach out to the l&o person @ sdvhead
Compat is a funny thing because if your mod is unpopular you might put a lot of energy into compat that nobody asks for. But if your mod is popular the people yearn for compat.
haha I guess ignorance was a good thing in this case. I was just making it as a present for my girlfriend and then thought maybe other would like it.
Risk is people (like me) that may not download it at all if it cites sve incompatibility
I have already reached out so im gonna see if they approve of my plans
I'm not complaining. Its so nice people actually care. I just don't want to disappoint them.
Don't hang too much on not disappointing people. If your mod gets popular enough you will start getting very unreasonable requests and demands. Always remember that making mods should first and foremost make you happy.
Thanks that's really good advice to keep in mind. I've been having a lot of fun with it so far though. The really nice thing about it is I have an endless list of ideas I'd love to do with it. Ha I suppose that's also the bad thing.
@stark spindle You leveled up to Cowpoke. You can now speak in our voice channels and share images in all channels!
I'm not really sure what that means
Science!
So a map has 4 main layers back buildings front alwaysfront
If your tiles are on front or alwaysfront they'd draw over npc
Is it illegal? if yes i will delete it from nexus😭
it's prone to causing issues that are extra hard to debug
it's not illegal, it's just not great practice
no need to delete, but moving to better practice is really encouraged
I found that many mobile players with 32bit devices can't install smapi. And I made xnb for that.
well it's just that if people have trouble, it'll be basically a pain to debug
and people here are unlikely to provide support so you'll be on your own
Actually, I also told people who download my mod to always backup their files.
It's okay, as long as I can help make some people happy.
There are a number of platforms that don't have SMAPI yes
If you are on 32 bit compatibility branch yourself then sure 
That said it's still fine to unpack with stardewxnbhack and then do whatever u need then xnbcli for packing
Stardewxnbhack is faster
Trying to use mutliple different xnb mods must be kind of a pain though i can imagine. Like if you want to use 2 mods that both touch spring objects
In skyrim you usually just install a community "patch" which is merged version of the content file
it's why we got several tools including a xnb merger back in the time, then smapi/cp and such
but as long as people are aware and fine with the downside, sometimes the modding urge is stronger than those 😄
mobile players with 32bt devices can't install xnb mods unless they have a rooted device anyway afaik though
would it be possible to mod a barn animal to both be milked and sheered for example? I looked for mods that have something similar, but can't find any so far
oh cool! I'll have a look, thanks 😄
Iro there's a compatibility branch on steam
they said mobile themselves though haha
I found that many mobile players with 32bit devices can't install smapi. And I made xnb for that.
Is it possible to make a replacement of a greenhouse that is smaller than the original?
I see, ty!
ok ive got two greenhouse maps, theyre both 2 wide
"Action": "EditMap",
"Target": "Maps/Garden Greenhouse",
"AddWarps": [
"22 44 Farm 28 16"
]
}
{
"Action": "EditMap",
"Target": "Maps/Orchard Greenhouse",
"AddWarps": [
"29 66 Farm 28 16"
]
}
is this good?
these two {} objects are inside a [] list of changes! you need a , comma between them
"Changes": [
{
"Action": "..."
},
{
"Action": "..."
}
]
thusly
Are you Loading these targets
yep ⤴️
They were targeting Maps/Greenhouse before, not Maps/Garden Greenhouse
It seems like what u actually want is When condition edit maps
I also think it's fine to make these separate mods
Not likely u would want to use more than 1 greenhouse replacement mod
hm how can I get rid of npcs?
what do you mean by get rid of 
is there any way to js vanish em from the game
and why would u want to do that
Not without breaking many things
Schedules
I noticed they sometimes get stuck and aren't where they supposed to be
Yep path finder shenanigans
Btw i found the mod i was thinking of, stardojo
View recent discussion. Abstract: Autonomous agents navigating human society must master both production activities and social interactions, yet existing benchmarks rarely evaluate these skills simultaneously. To bridge this gap, we introduce StarDojo, a novel benchmark based on Stardew Valley, designed to assess AI agents in open-ended producti...
damn
well thx for pointing it out
lol
another ARC, 12.3% on the benchmarks, interesting stuff indeed
What's the right way to set the output quantity of a machine, I thought it was this:
"OutputItem": [
{
"ItemId": "{{ModId}}_NutrientSlop",
"Modification": "Set",
"Amount": 500
}
],
But it's still outputting 1 item so I may have been reading the quantity modifier section wrong
that looks like what you would set for stacks
not default outputs
try
"MinStack": 1,
"MaxStack": 2,
with the values you want
I'll give that a go, thank you
Where did you get the "Modification" field from?
https://stardewvalleywiki.com/Modding:Common_data_field_types#Quantity_modifiers here, under quantity modifier>Modifier format
Ah yeah I see now how you might get there from machines
I stopped looking on the item query page once I hit MinStack because I thought that was what you were after, so I didn't get down to StackModifiers.
I should make myself a test machine mod. Machines are one of the remaining things I haven't explored at all.
Ahhhh gotcha, it's not too far down from game state query so I thought it's be relevent, time to rewrite my python script
they're quite fun, I already have many ideas for other machine based mods
I've never actually read that whole common data field types page either
See I am the opposite lol. I have no ideas whatsoever for any machines. They are an area of the game I am completely uninterested in modding xD I just like knowing how all of it works so I can help people.
I totally get that, I think why it's so fun to me is because I love making machines and electronics irl so that carries over, plus that fact that my silly ideas work great with a silly little machine to go along with
Haha yeah that makes sense
I got this far in making a farmhouse replacer with CP to make it seasonal would I do this again but with each season and then how do I make sure it switches for each season?
the standard approach is
- have four files, one for each season, and name them
spring_brickcottage,summer_brickcottageand so on - in your FromFile set it as
assets/{{season}}_brickcottage.png
then when you mod loads CP will replace{{season}}with the actual season, so it will loadspring_brickcottagewhen it's spring, etc.
(you can do it manually with 4 entries and a When condition for each, but the token method above is shorter)
I want an item called "Protein" Bar but the display name is a string and therefor has to be encased in " ", is it possible to have a display name with quotations inside?
\"
just to clarify like this?
perfect ty! ❤️
\" for both? so "\"Protein\" Bar" or just "\"Protein" Bar"
the first one yes
Thank you
Thinking of making a mod. Throwing myself in the deep end.
How hard is it to do map editing?
a bit overwhelming at first but not too hard
Pretty easy with Content Patcher, the difficult bit is actually making the map and even then it's mostly pick and place
Yah I was wondering if I should go with content patcher or the other one for the mod I want to try.
I do know C# so that isn't really a roadblock.
for compatability reasons I'd go with Content Pacher, you might need to make harmony patches for a C# mod i believe, someone explained it to me previously
Even if you have code in the project, it's nice to load the assets with content patcher so you don't have to write your own asset reloading, etc. for quick editing
read up on them and my assumption on it is that the Content Patcher can do a lot, C# can all the stuff Content Patcher mods can do with a lot more on top.
oh you can use both at the same time?
Yep! you can use both at the same time
Yeah, well you have 2 "separate" mods. Code mod and cp mod. But they can depend on each other
both the C# and the content pack can be packed in one file like this
example mod
├───C# example mod
└───[CP] example mod
What's the benifits of doing a mod like that instead of all as C#? Just ease of loading assets?
Basically, yeah. Just asset loading
ease of loading, ease of debugging, ease of compatability, if you don't plan on using features specifically availble in C# and not CP(Content Patcher), I'd recommend going with CP
Well the thing I want to toss myself into the deep end on I may eventually want C#. Content Patcher to start would work based on what I read on it.
the best code is code written by someone else that's more widely used and tested
yes, content patcher is just a C# mod with a lot of useful features. you are correct that if you have C# at your disposal, you can do all that it does and more, but if you use it for any meaningful amount of content editing, you will likely find yourself reimplementing its features, and likely doing a worse job of it
i wanted it to upgradeable
although im playing with ridgside so there is another greenhouse there
i put the code in with the comma
[Content Patcher] Error preloading content pack 'Ren's Orchard Greenhouse'. Technical details:
Newtonsoft.Json.JsonReaderException: Can't parse JSON file at C:\Program Files (x86)\Steam\steamapps\common\Stardew Valley\Mods(CP) Rens Orchard Greenhouse(CP) Ren's Orchard Greenhouse\content.json. This doesn't seem to be valid JSON.
Technical details: Additional text encountered after finished reading JSON content: {. Path '', line 18, position 0.
at StardewModdingAPI.Toolkit.Serialization.JsonHelper.ReadJsonFileIfExists[TModel](String fullPath, TModel& result) in E:\source_Stardew\SMAPI\src\SMAPI.Toolkit\Serialization\JsonHelper.cs:line 86
at StardewModdingAPI.Framework.ContentPack.ReadJsonFile[TModel](String path) in E:\source_Stardew\SMAPI\src\SMAPI\Framework\ContentPack.cs:line 76
at ContentPatcher.Framework.RawContentPack.TryReloadContent(String& error) in E:\source_Stardew\Mods.Pathoschild\ContentPatcher\Framework\RawContentPack.cs:line 80
at ContentPatcher.ModEntry.GetContentPacks()+MoveNext() in E:\source_Stardew\Mods.Pathoschild\ContentPatcher\ModEntry.cs:line 458
!json pls
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
Ohhhhhh, okay, so how would I change things to back? I’m have Seasonal Cute Clothing for East Scarp, SVE, so maybe thats related?
It's not
You can use gsqs as an event precondition with CP, right? 
Yesh
Check data/forest
Data/events/forest
Thank u atra i gib u thanks
If that is furniture you cannot change the draw layer without massively patching the game
Or I guess make the toilets rugs or smth
Ohhhh, that’s genius! How would I do that?
I’ve never made a mod but have a few in mind that I wanna. One is a mask of my face, my pepperoni eyes, my gorgeous cheesy skin, my supple bacon mouth. Tomato blood.
The other is a minor tile edit
For the camel in the desert, just sunglasses and a smoke
Question: is it possible to set up a machine so that you get a message box when it is working and you try to interact with it?
Like a "come back tomorrow" for a machine that only produces once a day, that kind of thing.
dont think so without C#
would be very simple though thanks to the magic of InteractMethod
Other than automate integration
does SMAPI exist for playstation?
Hi all! After a modding sojourn i'm finally back and trying to go through my mods one by one and updating them - starting with Livestock Guardian Dogs
I'm wondering if there's an easy way to disable the random night event where a wild animal attacks your animals left outside
I know it's triggered by the barn/coop door being closed and an animal left outside
but I can't find other mods that have done something similar with that particular event
It's handled in SoundInTheNightEvent.cs
should be a couple harmony patches probably
ty!
You could also patch the method responsible for choosing a nightly event and just delete it if it's that one
Should be a pretty straightforward postfix with maybe some reflection
postfixing the utility method that generates farm events would probably do it, yeah
reflection in a C# event might be able to do it without patching, too, but it's in newDay so it's not much cleaner 
probably with ps4linux but not natively
it sounds like this might finally elevate me into learning C# for modding lol
I just gave it a try and it worked as expected. Using "prefix:DLX.PIF_MINE_" I was able to spawn geodes at the appropriate PIF rooms. No issues were encountered. "prefix:" did end up spawning geodes everywhere I checked, which was fun. Really appreciate you adding support for PIF 
I have a Little question what should I do that Water on my map is working and is fishable ?
have water T property
look at a map with a water that is fishable and see how the property is (on the tilesheet)
Ok Thank you
Hi, i currently have an issue where I'm trying to make a custom npc animation with a bigger animation using space core, but I can't quite figure out how to link the json that extends the animation size with the animation, could anyone help me out with that? 
nevermind i got it!
are the leaves of pine trees called needles in english?
Yeah, pine needles
Thanks for testing and the ideas. I'll get the docs updated & push the update when I can. I also ended up adding contains: and comma-separated names (e.g. "MapName": "BusStop, Town"), so it should be easier to target multiple maps in general now.
ohhh
I have no idea how to mod or to code, but got something going nonetheless, but I ran into this, and I can't figure out what it's telling me. I am guessing some bracket or comma to many or to little?
we'll need to see your json to tell you. Can you post it in the validator and send the link?
!json
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
I copied someone else's mod code, cut out what I didn't need and then changed what needed changing
in Notepad++, that's it
which mod did you use? because there are things here that don't quite make sense to me
I just want to know what the starting point is
hi
what did it say in the format version originally?
the validator linked above will tell you where syntax errors are. in this case it's line 64 you have an extra bracket
here's a link to that: https://smapi.io/json/content-patcher/98df295cd5664e8c8cb34a0330d2e7fa
ah yes
also I see that there is still a mention of cranes in there, I will change that ><
so it's an extra bracket?
what did it say in the format version originally, arryn?
I don't understand what you are asking, sorry, this is my first time messing around with this
the first line, where it says "Format": "2.0". Is that what it said before?
I believe so
yes
okay, removed the spare bracket, used the validator, new problem lmao
so I am guessing I need to move that bottom part of Logname to the top with the others?
interesting, I found the original mod and it does indeed say that. It's not what should be used now though. This mod is nearly a year old though and copying from a mod without learning the basics is bound to cause issues like the one you're facing. I recommend trying button's json tutorial at https://stardew.button.gay/tutorials/json and then reading the resources on the wiki.
ah okay
I'll have a look, thanks
I used this mod, cause it made the most sense to me, pretty basic, I suppose
Finding a mod that does something similar to what you want is a good approach! Just look for a newer one 
(There's also tutorials on the modding wiki, depending on what you're trying to do)
yeah thats what I thought! didn't realize the age would matter somehow
I am trying to make a goat that can be milked for the regular goat milk and also drops wool.
hence the Woolly Goat hehe
A year isn't too bad tbh but things changed a lot in 1.6, so I wouldn't reference 1.5 mods unless you already understand a little bit of what you're doing 
it's really hard to find a mod that actually changes the animals, they are all just texture replacements
(nod, I was speaking in generalities, sorry to be unclear)
It's not at all related, but honestly im not even sure how u r place the stuff so you will have to elaborate
it's okay, I am just very appreciative of any help
Try silvermoonchan's mods - I dunno that she's used the extra animal config mod much but she's done a ton of 1.6 animal mods.
You could also look up that mod and check the dependencies for examples.
could you drop a link of what you think would be a good example?
I'm at work on mobile so I can't search any right now, sorry 🙏
ah no worries
Toilets under where NPCs go to stand, cash registers, etc. so it looks like their on toilets
Are you doing a map patch (editmap) or something else
Not sure, this is my first time doing Stardew mods, I just wanna edit the layer to go under NPCs.
I feel like I nearly got it, but again, I can't understand what it is telling me is wrong here
https://smapi.io/json/none/cee6f946df18497c9625efe602cb607e
I have no idea how to help if u don't explain to me what you did currently 
You need a closing ] for changes
Are you adding a new animal?
I just installed the mods. I didn't make them, I just wanna edit the toilets to clip under NPCs when they stand for a second and clip thru them. Sterling and Shane are both there
notepad++ will automatically highlight bracket pairs for you which is helpful when trying to find errors like this
You should prefix your new animal with {{ModId}}
how is it showing that? I never noticed
Like {{ModId}}_WoolyGoat
oh really
It's to avoid conflict
i’m not sure how you have yours set up, but mine are red. it also highlights the line all the way down the json from the opening bracket to the closing bracket
ah okay! maybe I just need to open my eyes more lmao
well, it kinda worked!
your load of the baby woolly goat texture doesn't match the texture you set for the baby woolly goat
yeah
In livestock bazaar i have some logging to help check for this
But pls prefix the animal id i beg you
lmao
I don't know where to put that
Right now it's this, where does the ID thing go?
"BabyTexture": "Animals/Arryn.WoollyGoat-BabyWoollyGoat",
just underneath "Entries": where you say "Woolly Goat: {
also instead of typing out Arryn.WoollyGoat you can just use {{ModId}} if you want
for the texture? yes
well as an example
ah yeah like that
cool, thanks 😄
i think usually people use an underscore instead of a dash but idk why, maybe just convention
I am just focussing on making it work first
I still need to figure out how to add the wool shedding part in it in addition to it giving milk
cool, I managed to fix the sprite at least, back to breaking my brains 😄
good luck!
Anyone know where the little villager icon is stored?
My special order hasnt shown up with one (custom npc)
oh rip
I'll just add a tag at the end of the text saying who its from then
SVE probably still has my janky expansion code for that too 
unless Casey rewrote it
but yeah, it's a sprite with a hardcoded number of images in it for w/e reason
very important request for 1.6.16 is the dehardcoding of special order emoji icon
true...it would disrupt the alliteration i also coincidentally used but alas
it's one of those things where I was like "I'll put this in EMP" and then didn't want to figure out cross-compat
Or, perhaps, not "get off my ass" but more "sit down at my computer for once"
At this rate my progress is glacial
Cross compat?
compatibility across other mods that try to do the same thing
I wonder if the new fields would be of use but i dont remember if SO have them
e.g. an expansion might expand the list to add NPCs in specific order, then EMP does it and messes that up, etc
Well half of it is compat with yourself 😄
and yeah, I haven't really looked at it since before 1.6, I've forgotten what changed 
seems like a prefix on GetPortraitForRequester should be easy enough
Data/SpecialOrders does have CustomFields too, so people could demand specific sprites via framework with that, I suppose
(or just an asset) (but either way, having Pathos do it is the most convenient
)
I think for 1.6 it's easy enough to just put npc custom field
Hi, I'm planning on adding a large custom machine and I'm wondering if Content Patcher has the ability to make certain machine fade out when you're behind them like buildings? or alternativly a building that produces items like a machine? and finally (becuase I couldn't find it on the wiki) waht's the slowest an animation can be? I'm thinking a frame every 10 in game mins?
content patcher does not change the mechanics of anything itself
content patcher just lets you add data to the game
if it isnt something in MachineData, it cant be done with content patcher alone
the Windmill is a building that produces items but i dont know how buildings work but id look at that
(Mill* not Windmill)
It is doable but its different than machines
I think the mill acts like an inventory too which isn't what I want
Not exactly same rules/behavioir
actually thinking about it further the mill may actually be perfect because it acts like an inventory
I don't think you can make a large machine without some mod or another
Large = bigger than 16x32
originally I was just planning to make it a BigCraftable with a very large bounding box and texture
that's a bit of a shame
You can either use furniture machines to make a furniture machine
Or bigger craftables
That is the "some mod or another" thing i speak of
I think i'll give buildings a try first, so that it's another modded aspect under my belt
I shall check out bigger craftables and furnature machine too, they sound quite intresting
🎉 FTM v1.25.0 is out, with minor fixes + support for some convenient tricks in MapName:
- Add a set of spawns to multiple maps by separating names with commas, e.g.
"MapName": "Forest, Mountain" - Use "prefix:", "suffix:", or "contains:" to target all maps with specific text in their names, e.g.
"MapName": "prefix:your mod ID" - Spawn more forage in one place than another by listing it multiple times, e.g.
"MapName": "Farm, Farm, BusStop" - (You can also use building names like "Deluxe Barn" to spawn a set in each of them, but that was already a feature)
https://www.nexusmods.com/stardewvalley/mods/3231
Is it possible to spawn grass with FTM outside of farms? I've been trying to do it with map properties and content patcher but I'm unable
can I spawn 1.5x more forage by writing it as "Farm, Fa" 
if i write "prefix:" will it spawn everywhere
is it possible to limit a furniture's rotation using a content patch?, I'm trying to make the Oak Chair not rotate, but changing the rotations' value to 1 doesn't seem to do anything, even though the display name has changed, here's my content.json:
{
"Format": "2.7.0",
"Changes": [
{
"Action": "EditData",
"Target": "Data/Furniture",
"Entries": {
"0": "Oak Chair/chair/-1/-1/1/350/-1/new name"
}
}
]
}
You have to do reset terrain features for that
Did you spawn a new chair
I mean like resspawning next day after grass has been completely erradicated
FTM doesn't support the particular type that grass uses, though once I finally finish the "2.0" stuff I'll look at including it
or is it not possible at all?
(I'm not sure if the game supports it outside the farm either, it's been a while)
I guess you can use the BETAS traction to force respawn the grass (does it do that
)
ooh it needs to be a new furniture for it to apply the change? starting a world from zero with the mod will do it?
"Fa" won't match anything, so that would just spawn stuff on the farm, but "prefix:Fa" would spawn stuff at the farm again + farmhouse + farmcave + etc 
BETAS only does clear not reset
yep, same for "suffix:" and "contains:"
Don't need to start new save but should try grabbing a new chair from catalog
oh i love rational answers to nonsense questions
(notably it searches the location list, so the prefixes don't check building interiors or the mines, etc)
now I get it, thank you so much
This may be an odd question, but is there a way to force time to progress but still have the ticks apply for saying a child npc growing?
Making a custom building like the mill, To accept items it needs "The ID of the inventory defined in Chests from which to take input items.", I can't figure out if i just include an inventory ID or if I have to predefine it with an "Action": "Load" function, I can't find a "Data/Chests" Which I thought it would be in if I had to pre define it
Is Chests a field further down in the model
Ahh Gotcha thank you, been reading through the page adding the parts when I come across them not realising it probably isn't in the best order, thank you
it is yes
True but it has all the functions that the machine/building needs, and it means it can't be held in the inventory and has to be built by Robin
Generally u can convert one item to another at least, but can't use other trigger kinds
That's perfectly fine, pretty much exactly what I need
okay thanks, trying to test if I can apply overlays for "growing valley", with permission from mod author, but unsure best way to go about it
Ah the context is little npc then, im not sure how that mod counts days
Ah, apologies.
Try this perhaps
Not a coding question but a balance question, custom building is a mining drill that takes a 1 drill bit, at the end of day it returns some stone (and possibly some ore, havent decided on if to have another building or not) How much stone do you think it should produce? my going rate is the average amount of stone a play can get in a day from mining but I'm not sure on the exact quantity that would be
I'll have "MinStack" and "MaxStack" as different values so I'm more looking for a range rather than a distinct value. Thinking <quantity>+- 10%
what is this "minutes until ready" property in objects?
I believe it's for machine, the time it takes for a machine to complete a craft
oh. thx
it's also treated as a durability value by ore/stones/etc
thanks
kk good info
Getting this error when I load up the game with my custom building, not sure what it means, I thought I had everything right?
[Content Patcher] Can't apply data patch "(CP) Resource Producers > Include Buildings/MiningDrill.json > EditData Data/Buildings > entry #1" to Data/Buildings: failed converting entry to the expected type 'StardewValley.GameData.Buildings.BuildingData': Cannot deserialize the current JSON object (e.g. {"name":"value"}) into type 'System.Collections.Generic.List`1[StardewValley.GameData.Buildings.BuildingItemConversion]' because the type requires a JSON array (e.g. [1,2,3]) to deserialize correctly.
To fix this error either change the JSON to a JSON array (e.g. [1,2,3]) or change the deserialized type so that it is a normal .NET type (e.g. not a primitive type like integer, not a collection type like an array or List<T>) that can be deserialized from a JSON object. JsonObjectAttribute can also be added to the type to force it to deserialize from a JSON object.
Path 'ItemConversions.Id'..
json: https://smapi.io/json/content-patcher/5028a16c0ee34e59a74f6ac49afc31ee
content.json only has include function
anyone know how i might move his shadow under him? the animation is a little large lol
ItemConversions is a list
(wrap the one entry you have with [] and it should work)
that's one of the options in the spacecore implementation of big animations
i believe there's an example in spacecore docs
I used the wrong bracket type rather than exclude them, thank you! would've never realised that
the "drawOffset"?
i saw it earlier but i didn't understood what it meant lol, i thought it was offset the entire animation
so it would just offset the shadow?
it does offset the entire animation
oh so the shadow stays still but the animation can move
yep
ah thank you 
Hi! I was trying to set up my modding environment but I am missing so many references. I downloaded the regular SMAPI and not the developer one. Could this be why? Im missing modding.event, xna framework , utilities and some more. I am bot sure if i set it up correctly. I created a class library with dotnet 6 reference to SMAPI and nuget to pathtochild
regular and developer smapi only differ in the initial state of a particular config setting (whether to display TRACE level log messages), so that's not the problem
if you are using modbuildconfig, it should handle the game and SMAPI references for you. make sure this ends up in your .csproj (with whatever version number modbuildconfig is up to nowadays):
<PackageReference Include="Pathoschild.Stardew.ModBuildConfig" Version="x.y.z" />
</ItemGroup>```
Thank you ill try that
Can a mod reference another mod's configs?
Not without another mod, i think it's called cross mod compatibility tokens, or something? Uhh correct me if im wrong
okay, i was hoping if I made a submod that was dependent of parent mod it could reference the parent's configs. Does that make sense or am I not thinking in a way of how programming works?
"submod" is not a thing for stardew modding
you can have content packs that a framework can have direct access to or you can have two mods that work in parallel
you cannot reference another mods config without Cross Mod Compatibility Tokens or, if you're in C#, rolling your own reflection for it
oh, I thought a mod being dependent through the dependencies in manifest made it work like a submod, my bad
definitely not, they will still be entirely separate
Dependency is just, you need x mod installed to make y mod work. Technically you can throw anything in there even if the mods have nothing to do with each other 🤔
Okay. Thank you for correcting my false assumption then
can I tell if something is a tree from the object "weed" ?
how can i tell where trees are
Uh.. ok im really confused 😅 can you elaborate?
How do I prevent trees from always growing at the next day on my custom location? is this possible with FTM?
FTM can't do anything involving trees yet (and doesn't interact with anything spawned by the base game, generally). Non-farm trees normally respawn in full every day, but a couple tile properties might help tweak that, like SpawnTree on Paths:
https://www.stardewvalleywiki.com/Modding:Maps#General
Question. I want to do an event where farmer eats something and it's random from a few choices. I have seen random with dialogue choices such as /speak {{Date}} \"{{Random:{{i18n:CampingDateIntro.1}} @@ {{i18n:CampingDateIntro.2}} @@ {{i18n:CampingDateIntro.3}} @@ {{i18n:CampingDateIntro.4}} |inputSeparator=@@}}\" as example, but cannot find in the guide for objects (or maybe I am blind, I do have astigmatism lmao)
random is a token that can be used as described here: https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/tokens.md#randomization
Oh!
so i believe you would end up with an event command that looks like /farmerEat {{Random: (O)123, (O)321, (O)456}}/ (i don't remember if eat takes qualified item IDs or not)
or if the command is farmerEat lol
np!
also note that random doesn't update every time it's called--i think it might be on day start?
re-evaluated wyhenever the patch is updated, which is day start by default
oh good people who know more are here
found a way, yeah the objects field in the map
or rather whenever the token context is updated
yes, by default tokens update at day start. you can increase the frequency but you shouldn't unless you absolutely have to

So its not possible at all to change the 50% chance of spawning the tree to like 5%? With this Tile Property the most I can do is tell the game to spawn the tree at Stage 1 ?
will try with this and see if it convinces me enough to modify all my locations thanks!
(Use a random token)
I'm not super familiar with them, but if nothing else, I imagine you could use CP's EditMap features to randomly apply or remove the tree tiles 
Only patch it in 5% of the time
While the token updates when the token updates, random is seeded by default with the random save id and also the days played
So you would need to seed it with smth like {{time}}
Morning, esca!!
oooh, didn't know you could implement randomness on CP
Long time no see
morning
though we talked like 4 hours ago in off-topic, technically, I think
Could also randomzie which tile it shows up on
and yeah, Random tokens can help in a few different ways, though it might be a bit delayed depending on when the game looks at Paths
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/tokens.md#randomization
seems a lil contradictory then for the docs to say they are rechosen when evaluated, but it does say right after that what th seed is based off of, so, a little more fair, i suppose
i wouldnt yell at anyone bc im sure someone somewhere would say "well it depends on your definition of "evaluated""
🤔 extrude? Like those giant pasta extruders?
though the docs then also literally say if you want randomization to change within a day, change the patch update rate
vague metallic claw sounds
i wasn't here for extrude/exude confusion but i am now
Now all i can imagine is knitting pasta
oh its do BOTH those things not one or the other. ok nvm me
Let's let nite ask their questions
Hello ! I need help with a hat mod I’m making for Fashion Sense.
I have drawn the hat and added pixels that are outside the hat, but these don’t appear in game. The rest of the hat is fine. Does anyone know how to make these pixels show up ?
Can you send a screenshot of you hat art? I'm not quite sure what you're trying to say 
Off the top of my head, it could be misreading your sprite index
Is there a 1.6 replacement for the old method Farmer.checkForQuestComplete?
@ivory plume
The green leaves outside the borders of the hat don’t show up in game, I can show you a screenshot of the mod in game if you need it
seems to be documented in the 1.6.9 migration page:
https://stardewvalleywiki.com/Modding:Migrate_to_Stardew_Valley_1.6.9#Quest_event_revamp
oh, I guess the Farmer version of that method might be distinct 
probably didnt need to go straight to pathos 
Could you send a json of your hat code? I'm wondering if you set your starting pixel position funky or something?
its just all quest notifications now i believe
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
The Farmer method has been replaced with a single NotifyQuests method, which performs an action on each quest and returns whether any quest was updated.
I don't understand how that is the same thing? how do I check if a quest is going to complete?
(
I got confused by the quest.check part and missed the upper bit with Game1.player)
okay I see it now
if (who.NotifyQuests((Quest quest) => quest.OnNpcSocialized(this, false), false) && Game1.dialogueUp)
thanks!
if you want this if to pass if any quest has been updated (not just completed necessarily) then that should do it
Here is the json, I don’t know a single thing about coding so I went with numbers that I found in another mod’s json, so there’s probably something wrong in there
Could you put it through the json parser? Just for ease of reading :3
(i also mostly say "not completed necessarily" bc who knows what mods will do)
And yeah, different mods will have different numbers, so it's important to find your own!
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
I want to make a teleportation door to the island. But I want it to work once the player has opened the island map. So what should I do?
So:
Your individual hat sprites are 22 pixels x 20 pixels?
The starting position is what's wrong, I think. The start position starts at the top left pixel of your individual hat sprites. In asesprite, the coordinates for this can be found in the bottom left most corner of the interface. I'm not sure what program you're using, so I don't know where yours is located
To clarify: your hat sprite box is 22x20?
To further clarify: by sprite box, I mean 16x16 boxes that make up the aseprite background.
sorry for the bother, does anyone have any resources/tutorials on how to make custom npc spouse room/patios? everything ive looked up is a bit confusing
What're you having trouble with? I can try to help 
conditionally add the tile property via CP
just straight up starting tbh, i open the map and its just objects, which confuses me on how I'm supposed to build a room out of it lol
I also want to make custom objects to place in patio/rooms, which I assume is a whole other thing
Is there no other way than using CP?
i mean you can do anything with C#, i just don't know any C#
Ah, yeah tiled can be tricky to get a hang of. I recommend just studying the vanilla maps to see how the layers are set up.
Custom objects aren't too complicated, you'll want to make a tilesheet and load it via CP, then place them on your map.
I wonder...
!mapmaking
If you want to make mods that add or edit maps:
-
Use Tiled to edit .tmx or .tbin files.
-
Refer to the Maps wiki page for details on how maps work in Stardew Valley.
-
Content Patcher allows you to create custom locations through editing Data/Locations
-
Vanilla Maps can be edited via Content Patcher as well: EditMap
Score
I don’t use Asesprite but I downloaded it and it looks like this
Feel free to come back for help anytime! Mapmaking can be agonizing, but it's a breeze once you get a handle on it
I'm not sure how to explain further -- are you using the FS docs? Or should I send that over to you
i also have another question, if you don't mind. I'm trying to make a schedule for my custom npc where I want to write an if else statement about if the earthquake to unlock the bathhouse has happened, the npc will do that schedule over the one he used to follow before. How might that be formated?
Sorry, my thumbs are getting tired from all the typing 
i have an example if you'd like to follow that
that'd be amazing
you can download that or stick it into the json validator for readability
Railroad_Replacement is what you're looking for
I’m sorry English is not my native language, what is FS docs ? And thank you very much for the time you spend answering me !
ooh, thank you, i was just about to ask about that
Free Love has been updated for 1.6
https://www.nexusmods.com/stardewvalley/mods/10021
NO SHOT??
YOO
wait sorry, would that just be formated something like:
"When"{
"HasFlag": "Railroad_Replacement",
},
"Entries" : { e.t
no, it automatically replaces the schedule entry with what you set Railraod_Replacement as when the railroad is not accessible. so the normal schedule would be "summer": "0610 {{ModId}}_DeadBoyAgency 4 6 2 edwin_pose/a1200 Railroad 39 41 2 edwin_pose/1700 Mountain 66 14 1 edwin_write \"Strings\\schedules\\EdwinPayne:Writing.000\"", and then just the bit after a1200 would be replaced
Yes I was using this but I draw on procreate and I’m unsure how to check what the top left pixel coordinates are, but I found them in aseprite. I’m going to try with these numbers, thank you !
and it would pick the normal schedule back up again at 1700 Mountain
OH so if the railroad isn't avalible, it'd just do the schedule in replacement, and if it is, itll do the planned one?
yep!
thank you! that's amazing
it's strange not to have to do it conditionally lol i did the same thing you suggested initially
The mod page mentions that parts might not work properly in multiplayer. Is it just untested for multiplayer or are there common/known bugs?
it never supported multiplayer, I don't think it works
Ah thanks that's what I needed to know
in what layer is the farm house found at?, or what map property/field should show the house data?
Do you mean the building or the inside
the building, in the Farm outside location
cant find it
don't ask lol
are you making a tui renderer for sdv
you can call it that
not on layers?
😭
come on, I dont wanna go back into the c# hell
If you want to make a sdv mod that's not just content pack then you gotta learn how 
Remember it's 4 fun

Oh my
@inland rain hi congrats on free love update do you know off hand if rejectiem_ dialogue keys are respected?
(and if not, could they be please?)
I don't even know what that means, sorry
Basically 1.6 added some dialogue keys around npc accepting gift
One type is RejectItem_(O)SomeItemId which will make the NPC not accept a particular object
In vanilla marriage this has priority over marriage proposal via mermaid pendant
So some NPC authors use it to make their NPC dateable but no marriage
Here's a PR to polysweet love which is same code base as free love https://github.com/ApryllForever/PolyamorySweetLove/pull/4
how do buildings work, does it have a initial position, then the entire thing is just placed on that position, e.g the tiles themselves don't hold any data on buildings above them?
I could only get a coordinate out of it 😭
have you decompiled yet?
tbh no, I don't want to, I'd have to hop on my other computer where I have my dev env, which is kinda slow to say the least lol
hm, if I do decompile it, will all my questions be instantly answered by reading it out?
I beg you please just decompile the game just do it download ilspy press button export code to file decompile code for reading press decompile button read code yourself csharp very succulent delicious understandable code download ilspy decompile it now decompile now read code
It's not obsfucated so yeah fairly easy to read
Part of developing for Stardew requires delving into the code or the content files. We can help you understand what you don't understand (sometimes) but asking us to be your bridge between yourself and the code or content that you could otherwise access is frustrating (and I'm mostly speaking as an observer in this case)
well a lot of your questions are answered by the various wiki pages already, and the others are in the decompile yes
Some bits even have xml docs
dnSpy is better change my mind
i liked the code produced by ILSpy much more
dnSpy decompiles into much less readable code
I mean, of course it respects them*, what kind of amateur modder do you take me for
as of two minutes ago
however it can be nice for its ability to edit classes and such
Say what is the built-in decompiler called
Like the one that just do it when u right click go to source
depends on your IDE
doesn't vs simply use ilspy?
Vscode c# devkit
oh, if that's the case I'll decompile it
thx
I don't think it's ilspy but idunno maybe
I see
, fair enough
mb
aight lol
the other thing about not wanting to decompile is that, unless you're truly stuck on something, if you're asking out of simply... not wanting to do it, you're just asking other people to do work for you. people might wanna do that, though usually only if you pay them
sounds right lmao, I thought decompiling would yield some obscure code not readable at all
Reading the stuff in context helps you make connections that aren't obvious from someone just saying yay or nay
i wanna check before i start putting actual effort into making something.... am i right in my understanding that adding map patches above or to the left of vanilla maps is either impossible or prohibitively difficult? I assume you could theoretically shift the whole map over but then you'd have to edit the schedules of every single npc who goes there
ok cool thank u
i did already have something in mind if i was right but now i feel secure comitting to it
To elaborate a map has 0,0 as top left tile
If you were to expand map towards left and up you'd be shifting everything to right and down and confusing everyone else
You can add a little warp at top or left edge and make it lead into your area tho that's safe
yea thats what i was thinking
i would jsut stick it on the right or the bottom but im tryin to add onto the museum, so compatibility would be a nightmare with all the other good mods also using that space
but if i do an intra-map warp as if its just. going into a second floor of the museum, then it should be able to still be donatable space without interfering with anyone else 👍
🤔 that could work but idk how i feel about having an entirely separate museum (?)
Yep it'd be separate
This will work as long as you r fine with the usual jank around this
there's a mod for it if you want something simple:
https://www.nexusmods.com/stardewvalley/mods/23721
i think the main jank would be the fact that the user would have to scroll out into out of bounds zone to find the next floor to donate to
with the slow ass panning speed of the donation menu
and theyd have no idea where to go
Can u put a second donate point "upstairs"
define "upstairs"
you can add as many donation points as you want, so long as it is the same map
you cannot change the default "bounds" of the museum
By donation point i mean like, place to talk to gunter at
you can talk to gunther from anywhere, but it always looks at a rectangle defined as 26, 5, 22, 13
might make like. a door on the wall of the museum that you go into. and that door would bring you to a separate map with custom museum framework capability there
Ah i see the meaning
this rectangle is hardcoded
I guess it's ok if the floor 2 is actually really close
if it uses Custom Museum Framework, it would really be entirely separate, nothing in that museum will have any affect on th vanilla museum, just so you're aware
you cannot combine them
yeah that's why im still thinking
i like the idea of a museum backroom. the ruined jojamart bundle behaves similar, just make sure you get there by tilting a book on the shelves somewhere 
so if your Custom Museum accepted all minerals, for instance, then players would need to donate two of each thing, one to each museum
That's a mod right kath made it
that said
my biggest thing is I wanna add minerals and artifacts without hurting the player's ability to reach perfection. which i could do by just excluding those objects from perfection but i wanna add the option to include or exclude
Lil trap door to tiny museum
are we prepared for potentially stupid ideas
Always
its brainstorming its the perfect time for those
hm
i am a nourishing fountain of potentially stupid ideas.
actually, i think the hardcoded rectangle would still screw you even with this idea
its either the rectangle or the draw code
i was going to suggest just making the other map Also type LibraryMuseum
bc the list of donated pieces isnt actually linked to the location itself
its linked to networldstate
so technically, you can have any amount of locations of type LibraryMuseum and they will all work
however, they will also all draw the items in the same tiles
i suppose that's fine, even if your map doesn't line up such that you'd show the items there in your vision, you can just offset the whole thing until it does
just means you're still using a set 22x13 space
you could draw things on the AboveAlwaysFront layer i think?
and like.... fake it?
just cover up the usual space with something
so if you had building tiles or walls or something in the same exact spaces in your map as the vanilla museum has donatable tiles
But I thought the point is to donate to usual place
the items would be hidden
Idk what if we made panning speed++ mod
though i guess itd look weird when you went back
wouldn't you still be able to donate onto those tiles tho
no
It doesn't do anything besides make u pan 3x faster
whether a tile is a donatable spot is determined entirely by its tilesheet index lol
this would actually put the items in the same museum
is Fast Panning related to the museum issues or is that just a nourishing & hurtful idea
since itd just add to networldstate
It's a nourishing and possibly even constructive mod idea
but yeah the problem with that is if you donate something on the second floor it'll then show up in that same spot on the first floor
which is not so good
fast panning wont help if the user doesnt know what direction to pan in
the true cost of panning isn't 3 seconds, it's 1 inventory slot and a stupid pan
itd be much easier to write a little C# snippet to prefix skip getMuseumDonationBounds
i could easily put a guide on where to pan on the mod page
if you make pan into a trashcan you've got something on your hands
or, more and better, a special power
some of this C# coding stuff is going a bit over my head though i must admit 😅
trashpan, if you will
-2 people read on average
yeah...
Although visual guide isn't that complicated just add beams that lead to suspicious other room i dunno
What is the actual description of ur mod idea 
it's mostly just an adding-items mod. and some of the items are minerals
im early in the planning so im still ironing out ideas tbh. i havent even taught myself the ftm ill need yet
its kind of split into the "foraging half" and the "mining half" and foraging half seems easy once i get the ftm though
I think it's fine to not have em be donateable imo
Although there's some kinda bug around collection display rn
kinda the source of my concern 😔
idk itll take me a while to get all the other parts together maybe ill set this on the shelf for now and that'll be fixed by the time i come back around to this
im also rn. i love procrastinating on my mods by thinking about other mods <3 its my favorite activity
im supposed to be drawing giant crops rn!!
you play a dangerous game 😌
unironically its how i get my adhd to work. if i have multiple projects running concurrently then im always procrastinating on at least one of them (NOT RECOMMENDED)
Would anyone be so kind and tell me what the problem is with my closing brackets in this? I have no idea what I am doing ><
https://smapi.io/json/content-patcher/26015a4f831445528e56c0e82bf79163
hmm
i would say by the error message it's not a problem of closing brackets
it's likely more a problem of wrong brackets
like using { instead of [
uhuh..
i don't know how the part looks in the documentation, but some stuff needs
{ [ { whatever } ] }
I think also you don't have enough closing brackets? yourfirst open bracket doesnt close
because you're basically opening a list
that's how for I have gotten, I feel like I tried every combo and none of it takes 😆
what is the documentation having?
sorry, I am extremely new at this, I do not know what you are asking
ok so modders adding features with their mod usually have a documentation, a place when they put example
this avoid having to guess the formatting
i'm asking you how it's looking on said documentation, like what info the author provided
if you haven't read it then it's a good idea!
@spice inlet , i hate to bother you directly but its unclear from the PiF docs.
GSQ's that check an objects location (a machine in this instance), is anything special required to properly catch "is in PiF room of specific layout" or does PiF do some weird location trickery that might cause issues determining if a Furnace is in a PiF "Forge" room for the purpose of making specific machines have upsides to being used in that specific room.
if i have the wrong person im extra sorry. and again sorry for the direct ping and bother.
I want to ask, how to make own heart event?
you would edit (not load) the event data of the location you want the event to exist, with an unique event key (like {{modid}}_whatever
then code the event, which is a bit like "draw the rest of the owl" as it's the hardest part
I added a bunch of } at the end and that indeed fixed it, thank you! 😄
No problemo :]]
PIF room location names are generated based on a pattern.
If you want to find out what kind of room you're in you'd have to check if the location name starts with DLX.PIF_MINE_<Room Layout Id>_
I don't think there currently is a GSQ that can check against that.
It wouldn't be difficult to add a GSQ for PIFs, I think, there just hasn't been anyone wanting one.
Ah. Okay that's good to know before I dive into that.
Honestly I was only wanting to do it because I play with the Wildflours functional interiors like the tea shop and brewery, frankly any reason to not plaster the overworld with crafting machines is a plus to me.
Figured it easier than making a whole extra building to just interact with a PiF room I like that has the right theming
Also if I had a nickel for every time a framework modder offered to add a new feature specifically to make what I want to do possible/easier I'd have two nickels.
Which isn't a lot but it is weird it happened twice.
It kind of makes sense for frameworks to adapt to the content pack authors needs.
I mean fair.
But I seem to do weird unorthodox stuff that nobody else asks for
yeah but sometimes it's because a mod author ask that other will follow once it's possible
Previously my workaround is location custom field
So i just tag my location with my mod id and check it
Cross integration between mods is a lot of what I do, basically making modding systems blend in with the mods around it mechanically. Unfortunately in this case it's not actually my location.
Also fair lumina
It was kind of flakey for reasons unclear to me tho
unfortunately pif is victim to race conditions when adding moddata upon location creation
would be a good solution too though
LOCATION_HAS_CUSTOM_FIELD Here {{ModID}}
It's not mod data but sometimes it's like ppl just lose the whole location data entry
If I had any usable art skills. or funds to pay an artist
I'd be an unstoppable content pack creator. I have a whole concept for "Witchy Artisan Goods" on the back burner because art
So ofc the custom field query also no work
Lumina once suggested that ub should have a overview of sorts for the bundles, which was quite genius.
Made the mod a lot more comfortable to use
I have never been able to reproduce
But yes putting aside machine ghosts u can do this on ur own pif location data
thanks, i'm glad 🙂
suggestions are hit or miss, i suggested stuff for mods that in the end never were really used, so it's good when it works out
Problem:
My girl Taffy is appearing in game, yes, cool. But she just doesn't say anything!? Well okay she does. I can give her aa stone and she reacts to it with what she should. But she doesn't have any introduction?? Like I can't talk to her unless I have a gift in my hands for her??
Here are the files...
Content.json: https://smapi.io/json/content-patcher/3dddae2fe0824f5dba0c23a08d556212
code/npcs/Taffy.json: https://smapi.io/json/content-patcher/dd096a70f44a4588b2d95912510d93ea
assets/CharacterFiles/Dialogue/Taffy/dialogue.json: https://smapi.io/json/content-patcher/e236f0202acf486fa27b19ce138124bb
i18n/default.json: https://smapi.io/json/i18n/b04f59c3bb4949619d7aa9eaa1a48fe4
I'm so lost honestly I don't get it ;-;
i don't see the load of the dialogue json
so this may be why
h wait
it's not where you said it is
or i'm not waking up yet 😄
ok, what does a patch export Characters/Dialogue/Taffy shows?
and what about a patch summary?
Yeah there's no Load there
(also internal names of npc is really something that should be more solid, ideally {{ModID}}_Taffy, althought you can fix the issue first)
You can't edit an asset that doesn't yet exist. You have to load a blank json (which actually has { } in it) and then have your EditData patch to add the actual dialogue.
i don't remember if a mail can have both a quest attachement and an object one
guess it's time for the good ol "try and see"
I would expect it can have both
I need help….i want to fix “Who M Greenhouse” mod bc you can’t go in or out the front door of the greenhouse, and if you try to exit the cellar back into the house, it puts you outside the map or in the extra room if your house is expanded to the left of the kitchen.
I’m trying to open the Cellar.tbin in tiDE, but it says “ error occurred while opening that file. Details: unable to load tile sheet “pads“ with image source. “C:\program files(x86)\Steam\steamapps\common\Stardew Valley\Mods[CP]Who_M_Greenhouse\assets\paths.png” in her message: parameter is not valid.”
At some point it wasn't possible, but technology improved
It was a straight wall of red to be fair lolol
Okay I'll change her to {{ModId}}_Taffy and then I'll figure out the load stuff! Thank you! Ill be back with good or bad new hahah
i suggest testing the load stuff first
because changing id is a bit tedious (you need to be sure you don't miss any occurence)
so better to know that you solved an issue for good
then do the tedious thing
Ooh tide is oooold. I've never seen it before. You might get more help if you try used Tiled instead.
this way you do see progress (and you know what was working)
Yeah, I got it up in tiled…..but like…. It’s really hard for me to understand? I’ve never actually worked with maps or tiles before. But I figure there’s something wrong with the warp points
Lolol aye aye captain! Thank you btoh so much :]]]
the thing with warps is that there's some hardcoded stuff so i am not sure what is doable
to be fair i didn't entirely get what you wanted to do (outside of converting the mod, i mean), what is the behaviour you expect to have
Like…..where’s the map & the sprites and stuff?
they aren't stored in the map file
You have to make sure the tilesheets for the map are in the same folder as the map when you open it in Tiled, because right now Tiled can't find those tilesheets and it's just showing red error icons to indicate the tilesheet is missing. Have you unpacked your game files so you can get the paths.png and townInterior.png tilesheets?
The ….png? I would think for this mod to run I’d have to have the seller PNG but it’s not in here?
Are you saying I need to use TMX loader to open up the seller file and get the vanilla TBIN?
Oh u just didn't change the warp back
Do try out Chus suggestion of adding a custom field to the location and checking against it using the GSQ.
This is all that’s in the assets folder (I made the copy bc I didn’t want to risk ruining the OG file
!unpack No, you need to unpack the game files so you can get the paths.png and townInterior.png tilesheets from them so you can open the greenhouse map to edit it.
Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!
(i'm not sure what you mean by "seller" Athanasia)
Cellar* sorry
oh
again, its not my pif mod, im not sure what precisely id do to properly and safely realter existing PiF data to add such a tag. that might just be tired brain though long night of quashing bugs in other projects.
Wait- this is somebody else’s mod, & it’s broken . It USED to work. I don’t understand why the paths and towninterior aren’t even in here- let alone how this mod works without them???
in fact. its standard to package mods without external tilesets
since their only needed for map setup
Has it worked since 1.6 or only before then?
The reason it works without the tilesheets being in there is because SMAPI looks in the game content to find the tilesheets (which are vanilla ones). You only need them because you want to open the map in Tiled.
and ensures recolor compatibiliy
I think it broke again after 1.6. It originally worked, until it failed, and I believe mouseypounds released an unofficial update on chuckle fish….which is where I got it, but it then broke again.
I believe the farmhouse is bigger in 1.6
Hence why the warp put you at wrong place
You should be fine if u just change the cellar -> farmhouse warp
Dont actually need to do that in tmx, editmap is sufficient
I see that it has tile data on the door of the greenhouse, so I don’t understand why it’s not working? Where do I get the information for the tile data?
How do I do that?
The Cellar connects to the greenhouse.
@lucid iron this short video shows all the problems and be running through the seller to the greenhouse.
Okay, so reading up, there were two issues: 1) greenhouse door warp isn't working and 2) the cellar dumping you in the wrong spot when you leave it. Correct?
Re 2), here is how to add warp to map from cp https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/action-editmap.md#edit-map-properties
Can you click the TileData object on the greenhouse map and see what it says under its properties when it's selected, Athanasia?
Is the greenhouse warp meant to be from the top side
Correct
Yes….but the action isn’t like “warp x, y farm” or whatever
Interesting. And was there an error in the SMAPI log when you tried to enter the greenhouse?
I'm wondering if the interior map of the Greenhouse building entry thinks it's invalid
And thus not finding the location
Hoooly crap that’s a lot of error code…
!log
Important note: Your computer username may appear in the log. If your username is your full name, please be aware of this before uploading it.
Please share your SMAPI log file. To do so:
- Open this page: smapi.io/log.
- Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
- After uploading, it will show a green box with a URL to share. Post that URL here.
Please do it even if you don't see any errors. This has useful info like what mods and versions you have, what the mods are doing, etc. If the issue didn’t occur in your last session, please load the game to the point where the issue occurs, then upload the log.
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 30 C# mods and 35 content packs.
Suggested fixes: One or more mods are out of date, consider updating them


