#making-mods-general
1 messages · Page 533 of 1
Log Info: SMAPI 4.5.1 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 44 C# mods and 57 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
Yeah aba has the same symptom
No, those are both the logs from your Bug report section
Mine is because I have a More Grass pack with no winter sprites

I had just gone to look at your bug reports to see if their error was the same as mine lol
Hm I don't think I have any handling for that in the shim
not what I was suspecting, at least
You can slap a Condition !SEASON Winter on it but that's gonna need you to actually make content patcher pack
My log if you want it for the missing winter error: https://smapi.io/log/7fa50e76494d485285a9b97852b9563c
Log Info: SMAPI 4.4.0 with SDV 1.6.15 build 24356 on Windows 10 (10.0.19045.0), with 281 C# mods and 1100 content packs.
Suggested fixes: One or more mods are out of date, consider updating them, SMAPI is out of date, consider updating it
I do something about it maybe™
But at this point I am just ignoring it because I'm going to convert it to a proper GV pack at some point anyway
I'll check
But yes i will do smth about it once this puzzling nre thing is figured out
I've got elle's cuter grass too and I haven't experienced the error those other two are reporting, though tbh I don't know if I have actually saved since installing it
Sorry i was too lazy to make new file bolb
I'll try it in 10 minutes when I am in a save
Thank
Adding winter folder did fix my error lol
That is easy enough to check for on my end then
Is this where we talk about mods?
Making them, yes! If you want to talk about using them, head over to #modded-stardew
Many thanks!
All right, no error on save. I've got Elle's Cuter Earthy Grass. I assume she didn't do anything different (if it even matters) but thought I'd specify.
now, i might be a dumbass, but is the whole format (2.8.0, 2.9.0) thing content patcher only or is it for everything
Is it for SMAPI?
Each framework can decide its own fields in the files it reads
Content Patcher wants a Format in the content.json files it reads
Other frameworks may also want that, or not
SMAPI itself has no notion of a Format field for manifest.json
There is a minimum api version field for SMAPI in the manifest if you want to ensure your mod doesn't load in earlier versions of SMAPI, but that is optional.
Same with all the minimum version fields in the manifest.
Would FTM want the format thing?
I'm making an FTM-only mod that relies on another mod that's CP-only.
For content packs all smapi cares about is the manifest.json everything else is the frameworks responsibility
You can check the FTM documentation for the syntax that FTM requires, plus look at other FTM mods for examples
I haven't looked much at FTM mods but I don't think it has an analogue to CP's Format field
Very well. Thanks.
can confirm, there's no format field in FTM, it auto-updates files on load for better and worse
(so it auto-corrects any old fields, but also deletes comments/misspelled fields/etc)
...i vote worse
pretty much, it's on my to-undo list but a pain because it predates even being a content pack mod
wait oh my god the real esca
do u have a second pretty pls with a cherry on top
I should be around for a bit, yeah
(feel free to @ me about my mods whenever, I just get called away a lot mid-thought sometimes)
Stellar.
Ignore any unique items and names, I borrowed the monster stuff from a friend.
https://smapi.io/json/none/2dac18c1397b44d88c3305f5a7163ac9
Is this the right structure for an FTM mod that only adds "new" monsters?
with the current error it is unlikely to work
yeah, that's missing a closing ] for the "Areas" list; I think this fixes it (line 65)
https://smapi.io/json/none/877236d7b02146089570686c6cc0fa89
Like so, yeah?
that aside, the format should be fine
as far as I recall, FTM should ignore missing or null "Forage_Spawn_Settings" and such
Kinda forgot that bit because I'll be filling it with more monsters.
That's nice.
And since we're all here.
In this mod, I want to add new monsters to the Vanilla areas.
Mines, cavern, volcano, any dangerous counterparts.
I believe with the regular mines, it's UndergroundMine(floornumber)?
If that's the case, what about the remaining areas?
Especially when the skull caverns are infinite?
it is, though FTM isn't actually great at that; it spawns things at the start of day or random times, and those levels only exist while someone is in them
the 2.0 stuff I'm releasing soonish is a CP format that can use trigger actions and target those better, but the FTM pack format's a bit awkward for it
that said, yeah, it's UndergroundMine[number] for both the mines and skull caverns; skull caverns are just the ones numbered 121 or higher, iirc
What about the dangerous variants?
as far as I know, those are the same locations, just with different content loaded and edits applied to the monsters that spawn
So the monsters would appear on those floors regardless?
yep, though there may be a mail flag or GSQ you can check to see if it's dangerous mode? I can't remember what triggers it offhand
Right, now how are they named?
SkullCavern[number]?
VolcanoDungeon[number]?
In the volcano's case, do the start, dwarf floor and caldera count?
the skull cavern is just also called UndergroundMine121/etc too, though I forget whether that exact number is where it starts
for skull cavern
UndergroundMine1 through UndergroundMine120 are the normal mine, and beyond that are skull cavern floors
except for one or two hardcoded ones like the mountain quarry mine, which is also UndergroundMine66366 or some such
77377, apparently
Fascinating.
and yeah, looks like VolcanoDungeon1, 2, etc is the format for the dungeon parts
I think caldera has its own unique name, and I'm not familiar with the dwarf part
So... What the hell do I do here? Where does the UndergroundMine[number] go? And what do I put in the opposite field then?
Also, what does the last field mean? What terrain it can spawn on?
Well, that's nice at least.
with your current setup otherwise, "MapName": "UndergroundMine2" would make 4-8 bats spawn on floor 2 of the mines at randomly chosen times from 6AM to 2AM
if the map happens to exist when they decide to spawn, anyway
FTM can target multiple locations/maps with space-seprated names or prefixes, though, like "MapName": "prefix:UndergroundMine" would spawn 4-8 bats on literally every floor of the mines and skull caverns in the same way
So, if I were to enter the cave at any time of the day, the bats should still appear?
they can randomly spawn while you're there, but some bats probably won't spawn at all because the map doesn't exist
But if it were, say, 6AM to 12AM and I were to come on in at 1AM, they'd all be extinct?
as-is, it's assigning each of those 4-8 bats a random time to appear, and if it's temporary map that isn't currently loaded, FTM just skips them
going in at 1am, your spawns probably wouldn't appear, yeah
Does anyone have the sprites for the font and the dialogue box????
I'm not at my pc so i can't use content patcher yet
and it takes too long to download it on my phone
I'm not sure if any mod is made to spawn things in the mines, though spacecore or maybe one of Erinthe's mods might target them better 
but short of that, FTM's trigger-based spawns will make it more consistent in the future
Would you recommend me to pursue it regardless?
@lucid iron you might want to add tooltips or warnings for the non-obvious fields, because it seems like users won't know which type is which if they're not familiar with the Furniture Data (likely the case if they're using smithy in the first place).
I wouldn't really advise it if you want them to appear consistently, but it does work with some fiddling around
Consistently, as in, like with any other regular monster?
meaning the basic FTM setup may or may not spawn any monsters on a given day, it mostly depends on how long someone happens to be in the mines
I don't think it's possible in vanilla for mural furniture: since there's only 1 tile of depth to place a furniture on the wall, 2 furniture displaying stuff in the same place will make z-fighting
although it's very possible with FF 👀
Oh
there are some workarounds you can do, like spawning a lot of monsters, setting "MaximumSimultaneousSpawns" to a low number, and using a limited spawn area, but that will spawn more after they move toward the player
ultimately it just won't work the way the mines do, since the logic on those is "spawn some when the map loads, then spawn flyers on a random timer"
ty for letting me know, i dont feel confident to try a framework yet
even content patcher is a framework 🙂↕️ try it and see if it does what you need
So, I should probably wait for FTM to be updated?
no pb, it's usually a good idea to stay in the bounds of vanilla data if you can do what you want
probably, yeah, or see if another framework has more specific mine/volcano monster features
FTM's CP-controlled spawning should be ready for beta this month, I'm hoping, though I've got some medical stuff lined up
it'll be an optional download until it's tweaked and debugged a bit after that
Very well. Thank you so much for your time.
Maybe we will just get a surprise 1.7 drop and all this monster stuff will be way easier
I think SpaceCore's spawn group triggers work in dungeons, though I've never looked into them for not-plagiarising's sake 
and if so, you could try and trigger that when players change maps so it waits for the mine/cavern/etc floor it's targeting
Also thank you for saving me from further procrastination, because I've been REALLY pulling myself away from starting a new Stardew save.
I'll be waiting.
to torment you with more questions /j
is this the way to do this?
"HasFlag: hostPlayer |contains=RSV.FixedMinecart": false```
Yea I wasn't sure if I wanted to translate those, and then i forgor
oh yeah, translation is a thing
I think I probably won't translate since these r sorta keywords
But yes add description somewhere
Is there a use for wall furniture outside?
does anyone have the Stardew font
which one? what format?
in what? a png with the characters? a ttf/otf/woff2 file?
I'm actually looking for that dialogue box too but I can't find it ANYWHERE in the files for some reason
PNG works
LooseSprites/font_colored.png i believe is it
alrighty
I'm gonna need to convert it into an fnt file as well though
found it, thanks
any idea where i can find the dialogue box itself as well?
What do u want this for?
Iirc there is a debug ckmmand to load any random text to an npc so
If it's just to make a screenshot u could do that
If you're making a generator iirc all the bits of that is somewhere in loosesprites/cursors
oh im trying to make a comm sheet with the same font/text box as stardew
its just for style
foound it!! thanks
how come chinese, korean, and russian have FNT files but english doesnt?
I am so sorry for asking so many questions on here, but I think I formatted these quests right, but it's not working. Basically, converting a mod that needed the Quest Framework mod to 1.6. Here's the code: {
"Format": "2.8.0",
"Quests": [
{
"Action": "EditData",
"Target": "Data/Quests",
"Geraniums_Snapper": "ItemDelivery/Give Erich the Snap/On a rainy day, Araus did not arrive as expected, but at this moment Erich's mouth turned greedy./Bring Erich 10 Geraniums Snapper./Erich/{{ja:Geraniums Snapper}}/10/300/1/false/0",
"Sickse_Refrigerator": "ItemDelivery/Fridge Maintenance/Help Sickse Store repair the refrigerator so he can keep his job!/Bring Sickse 5 Battery Packs./Sickse/787/5/500/-1/false/0",
"Lovena_Honey": "ItemDelivery/Lovena's Honey Loanword/Lovena needs some honey to complete her new dish: Honey Lovena!/Bring Lovena 1 jar of Honey./Lovena/340/1/0/1/false/0",
"Erich_ReadingGlasses": "LostItem/Erich's Reading Glasses/Erich's reading glasses seem to have fallen on the road from Pine Forest Town to Pelican Town./Find Erich's reading glasses and return them to him./Erich/{{ja:Erich's Reading Glasses}}/1/0/-1/false/0",
"Help_From_AniceOrchard_Keg": "ItemDelivery/Anice Orchard's Help/Bring Michelange some oak resin for making small barrels./Bring Michelange 30 Oak Resin./Michelange/725/30/0/-1/false/0",
"Help_From_AniceOrchard_Preserves_Jar": "ItemDelivery/Anice's Sticky Situation/Bring some coal to Michelange so they can make jars./Bring Michelange 50 Coal./Michelange/382/50/0/-1/false/0"
]
}
Sorry for copying and pasting so much, I couldnt get the full code into a screenshot and I didn't know how to show the code
what isn't working?
aka : how are you testing stuff? do you obtain the quests and they are parsed wrong? do you fail to obtain them? are they giving error in log?
there are plenty of way things "don't work"
This. It's giving an error in the log saying that it still needs Quest Framework
then it may be an issue with your manifest
!json share the manifest.json with that link
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.
"ContentPackFor": {
"UniqueID": "PurrplingCat.QuestFramework",
"MinimumVersion": "1.2.0"
},
this is an issue
you would need CP instead
So do I just change the UniqueID to ContentPatcher
Just a warning for those waiting for the jas adoption mod, i will try my best to get it into playtesting phase for its expected release of halfway of Feb, but i have exams this whole month, please forgive me for my sin of extending my expected time of release if i don't manage to rush it
(will add this to a post on nexus' )
!embedcode for when you want to share snippets on discord (but smapi.io/json is often the better option)
You can embed code in Discord using a series of three ` :
```
Your code can go here
Even if not a haiku
Just an example
```
For syntax highlighting, add the language code on the same line as the first
``` (with no space, like ```json).
The usual codes are cs (C#) and json.
Sorry about that
it's Pathoschild.ContentPatcher (you can find a mod's unique ID by opening its manifest)
remove
"UniqueID": "PurrplingCat.QuestFramework",
"MinimumVersion": "1.2.0"
},```
do
``` "ContentPackFor": {
"UniqueID": "Pathoschild.ContentPatcher"
},```
Okay, working on FTM now. When setting the spawn chance, do the total of all amounts in a particular section, say ore spawning, need to equal less than 100%? Or does that not matter?
ie would this work, or would it break since the total is over 100%?
(Not writing the exact code, just showing a simplified example of my query)
"LevelTenSpawnChance":
"Stone": 55
"Copper": 55
So sorry for sending so much on here, but here's my SMAPI log: https://smapi.io/log/fcad19d0bded41ada8849ff174e13f18 . What does "- Custom_The_Northern_Gulf 1.0.0 because its manifest has no EntryDll or ContentPackFor field; must specify one." mean? (Ignore the other error at the bottom)
Oops, couldn't parse that file. Make sure you share a valid SMAPI log.
is the northern gulf the mod you're trying to edit? (i'm having trouble reading that log because it seems you copy pasted instead of uploading the file)
Yeah it is
I think I figured it out
I got the Content Patcher's UniqueID wrong
Nvm it's still not working
Hi everyone, I'm new here and I had some questions about modding.
I think this is the right place (well, the wiki took me here so I guess it is😅) but I was a bit curious about some general tips to mod/what do people use.
I'll be honest, I know pretty much nothing about modding or what do people use, I'm even "nervous" to ask here because I'm afraid this isn't the right place to ask (English isn't my first language so I just followed the link given to me, but I don't know if I'm in the right place, I'm using the translator for pretty much all of this) thanks in advance for the help and answers.
Sorry again it this is the wrong place to ask.
#modded-stardew for which mods to use!
FTM's "spawn weight" fields and those ore values all use relative weight logic. With that example (and a player with level 10 mining skill, etc), any ore spawned by that area would have an equal 50/50 chance of being stone or copper. They can add up to any total.
Is this in answer to me? I can't understand well what it says😅
ok! do you have example of what you want to do?
Well, I wanted to start with something "simple" and make costum NPCs, at best their room or a small house, but nothing too big yet
Since I'm new to this
Costume* (?) I don't remember the correct spelling
custom
ok! you'll need to look at content patcher documentation
!contentpatcher
of course i have the wrong command
!cp
Content Patcher (https://www.nexusmods.com/stardewvalley/mods/1915) is a mod which loads content packs to change the game's images and data without replacing XNB files. If you want to make mods using Content Patcher, start at https://stardewvalleywiki.com/Modding:Content_Patcher.
!npc for an NPC especially i recommend tia's tutorial
Keep in mind that making NPCs is a complex process that requires learning many different aspects of Stardew modding.
Here are a few links that can help get you started on all that you need to know:
-
Tiakall has a great tutorial on making a custom NPC for 1.6.
-
NPCs no longer use dispositions, check the wiki page for the new NPC data.
-
Feel free to jump into the https://discord.com/channels/137344473976799233/1277457201077813280 thread for more interactive feedback and help!
-
Fireredlily has a WIP NPC Builder Please do report any errors you get with it into the NPC thread!
Be warned: "Start off with something simple" is not a custom NPC LOL
I know, it was bad phrasing from my side
that is more like leaping into the deep end
As said before English is not my first language
NPCs have a lot of moving parts but if you have determination i believe you can do it. NPCs ate how i learned to mod
That's fine, it's just a lot of people think it's simple and then get overwhelmed, so I'm giving a fair warning.
!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
Tysm!!
same, my npc was my first mod, but I eventually had to completely restart his code because it was so jank
Knowing that it's not going to be simple and heading in warned gives better odds on finishing, I think
But by simple I meant that it's more """easy""" for me to focus on that more than zones or stuff, I can't explain myself well, but although more difficult than other things, it's also the one less likely to make me keep being motivated if it makes sense
Opposite to something like new zones or objects
yeah, being passionate about it will hopefully help allay any frustration you might have
Also thanks a lot for all the answers!
I forgot to answer about it😅
Thanks for the answer
I'm referring to the section of the json where it specifically says
"LevelTenSpawnChance"
"StartingSpawnChance"
So is that SpawnWeight or the PercentChanceToSpawn? Both are listed in the GitHub wiki...
Grammar mistake, I meant it's more likely to keep me motivated
For some reason it's not letting me send the log
are you following the instructions on the smapi.io website to upload it? just the manifest is fine for now until you figure out the log
Neither, technically. LevelTenSpawnChance and StartingSpawnChance are how the ore system handles chances. SpawnWeight is used by forage/items, but works in a similar way. PercentChanceToSpawn is also for forage/items, but a separate mechanic (chance to not spawn, basically).
The readme's a bit unclear here, but the "(Global)" entries in this section describe the settings you're using:
https://github.com/Esca-MMC/FarmTypeManager?tab=readme-ov-file#ore-spawn-settings
delete this
Delete the crossed out part or the non-crossed out part?
content pack for actually goes on the same level as name author etc. does your mod depend on any other mods besides CP?
the crossed out parts
(but to clarify my answer: yes, this example would work, they don't need to add up to 100 or less)
It does
i’m going to attempt my first heart event, wish me luck
in that case, you'll need to keep the dependencies section (but still move content pack for outside of it) and list those mods underneath dependencies using their unique ids
(https://smapi.io/json/manifest/416ce2b5b1fe4c93b4830f7457cbca61) This is the way nic suggests
Thanks for the help! (Sry for being kind of dumb with all of this)
we all start somewhere!
this, but change pathoschild.contentpatcher to whatever the dependency is
the dependency was the old quest framework they were removing iirc so they dont need it
Yeah, I've been looking at that too. My question stands though, does the total need to stay under 100 or no?
no, any total is fine
Hi friends! I'm running into a funky issue and have hit my frustration tipping point so I am here to ask for help. I'm working on an overlay mod that adds a banner to the abandoned JojaMart. The vanilla base version works great, but I want to include a variant for Elle's Town Buildings. The thing driving me nuts is that it is working 95% of the way. The overlay works other than one corner that is clipped, and I think it is an issue with the map / Town.tmx file maybe? Since it is a crisp corner at the (101,50) tile boundary. Has anyone bumped into something like this before?
you may need to put on a priority that’s higher than the one elle uses (maybe Late?)
I set it to "Late" and didn't see any difference unfortunately, also have Elle's as an optional dependency so it should honor load order. The reason I think it might be the tmx is since it still appears this way on the Vanilla JojaMart, the only reason that my Vanilla-compatible version works is because the banner hangs in a different location I think.
(if you are only editing the tilesheet and not making an actual map patch, then it's possible that the post it's pulling is not the same one you're expecting)
also that, yeah
The post is on front! You are seeing my thought process lol. I'm only using EditImage, so I definitely think that could be it. I'm just not sure how to change it
Several maps pull a different/flipped tile rather than what's actually adjacent on the tilesheet, it's odd that way.
Just to confirm, you're not using any other recolors while you're doing this?
No, I took all other mods (aside from debug and such) out
Okay, thankfully setting up the FTM to spawn ores and plants was rather simple, but I'm not seeing anything in the FTM that can help with setting up the custom fishing rules I want for my farm map... What system should I use for combining Ocean, Forest, Mountain, and River/Town fish into a single water section on my map?
right, FTM doesn't affect fishing in any way
the main way to edit fish like that is to create a Data/Locations entry for your farm type, which is mentioned here:
https://stardewvalleywiki.com/Modding:Farm_data
but fully documented here:
https://www.stardewvalleywiki.com/Modding:Location_data
alright, I'm mainly checking because the post seems to be changing colors on the 3rd tile from the bottom, and I wasn't sure if that was part of your overlay
adding onto this, you can more easily add fish by using something like "Id": "LOCATION_FISH Beach BOBBER_X BOBBER_Y WATER_DEPTH", to add all the fish from a given location at once
Would that be something like this?
"Action": "EditData",
"Target": "Location_Fish"
"Entries": [ Enter Custom Fish stuff here ]
It's the formatting of the code that confounds me at this time honestly...
no, your target would be Data/Locations. it takes getting used to, but you can usually find correct targets by poking around in the unpacked files. where assets are located in the content pipeline (after being loaded by the game) mimics the folder structure of vanilla most of the time
don't worry, at some point it will click
i think you're trying to edit Farm location data, right?
Yeah. I just want to change how the fishing works on my farm. Ideally setting it up so that there's an editable chance to fish from all locations of fish at different times of day (including desert and secret woods)
gotcha. someone feel free to correct me if farm location fish are weird in unexpected ways, but what you're going to want to do is use target fields , which are a way of drilling down into the data model without overwriting the whole thing
you should have your unpacked Data/Locations open to reference while you do this
If they are the ones adding the farm data in the first place, since this is a custom farm, they can just add it in the initial creation patch
ah even easier then
in that case, still have Data/Locations open for reference, but you can just copy paste whole sections of code and change what you want
Oh? How? Copy-Paste what?
Even just having some kind of sample code to start off for editing farm fishing of would be enough for me honestly.
In your unpacked Data/Locations file, you should be able to look for "Farm_Riverland" to see how it does it
And that just goes into my Content.json, right?
if it would make more sense for you to organize it using includes, you can, but otherwise yes
Include allows you to tell content.json "hey go to this json file and copy everything in it and paste it into this place in content.json" effectively
Would that just mean that I copy-paste the specific stuff from data/locations and put it into a new file, then have the include reference that?
But wait, if I'm wanting to edit certain aspects, would that even work?
Ahaha I got it! Thank you for the questions, guided me right to EditMap / swapping out a map tile on the tilesheet.
an include patch (which goes in content.json) looks like this:
{
"Action": "Include",
"FromFile": "Locations.json", // your file path here
}```
and your locations.json would be formatted the same as content.json EXCEPT just Changes: [, no Format or Config or Dynamic Tokens etc
So...
{
"Action": "Include",
"FromFile": "Data/Locations.json", // your file path here
"Changes": [ insert changes here ]
}
no, patches (a block of code with an action inside {}) go INSIDE of changes, not vice versa. that Changes needs to go in the other file
WAIT NO
claude changes doesn't go inside a patch
got confused
misread include 
what nic said is right
the action to include basically means adding another file's contents into your main content.json file, so no edits would apply to the action of including something
Okay, so if I want to make changes within the same file don't use include? Got it. 🙂
hm?
this is a great def of a include
Now do I need to copy-paste everything from the section that's getting changed, or can I just write the stuff that's actually being changed?
for example, if I'm not editing the "catchLimit" function, do I still need to include that in the "Entries" section, or can I just skip that bit in the content.json
could you clarify? copy-pasting the contents of another file is what the include does
we're referring to Changes: [ which is the list (as denoted by the square bracket) of patches (which are denoted by the curly braces) that apply when your mod is loaded. it has nothing to do with what changes you want to make; like i said, you can organize your files whatever way feels natural to you. but every Included file must have Changes: [ to tell content patcher "hey this is a list of patches that i want you to perform"
the locations wiki page has a definition of what each field you see in Data/Locations does. if you're creating a new location, which i think button said you are, then anything you don't specify will have a default value. you can see what the defaults are on the wiki page
do you want me to send over a file that does include stuffs?
I'm trying to edit what fish can be obtained on my farm map, so that I can get fish from every location.
To be more specific, here's some examples of what I'm going for:
- In the summer there's a small (10%) chance to fish up some Desert fish.
- When it rains, there's a tiny (1%) chance to spawn legendary fish.
- After 12am on a rainy day, there's a slight (20%) chance to spawn night market fish.
- Pond A has an equal chance to spawn Moutain Fish as Forest Fish.
- Pond B has a weighted chance to spawn Town fish (75%) or Ocean Fish (25%).
Those are the kinds of things I want to add to my custom farm.
Does that make sense?
got it, not a fish person sadly :(
Include is just for nicer formatting rather than code functions afaik
Because I'm trying to go for some miscellany stuff that isn't on the wiki as far as I'm aware, this is proving to be rather annoying honestly. Again, particularly the format. I don't care if it's messy, so long as it works, ya know?
I get that! no clue how to help with fish stuffs sadly :(
have you looked at riverland farm like button suggested?
Yup. And the Beach and Forest farms as well. At this time, I've just copy-pasted what's in there, and am editing the values as best I can.
But the initial format before that is what I'm not confident on at this time... This is what I have before I actually enter all the changes to the fish entries.
"Action": "EditData",
"Target": "Data/Locations",
"Entries": [
"Fish": [
Though I'm not sure how to make it call only to my specific map, instead of overwriting all maps in the file...
that's what target field is used for. do you have a separate patch already written where you add your custom location? it's easier to add your fish data to that patch than to make a new patch with target field
What file do you mean by patch? The Manifest.json or the Content.json or something else?
Because as I'm aware, this is all going into my content.json file...
patches go inside content.json, yes. remember that patch is a block of code inside {} that has an action
Okay, then yeah. If it's all meant to be in the content.json file, then it's in the same file.
This is the whole file, minus the fish entries and the ending brackets.
{
"Format": "2.8.0",
"Changes": [
{
"Action": "EditData",
"Target": "Data/AdditionalFarms",
"Entries": {
"GrayFarm": {
"ID": "GrayFarm",
"ToolTipStringPath": "Strings/UI:GrayFarm",
"MapName": "GrayFarm"
}
}
},
{ //Load Map
"Action": "EditMap",
"Target": "Maps/Farm_Foraging",
"FromFile": "Assets/GrayFarm.tmx"
},
{ //Add Farm Description
"Action": "EditData",
"Target": "Strings/UI",
"Entries": {
"GrayFarm": "Forested Farm with Mining, Combat, Beach drops, Foraging, and access to all fishing locations"
}
},
{ //Edit Farm Fishing
"Action": "EditData",
"Target": "Data/Locations",
"Entries": [
"Fish": [
{
!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.
right now you're not adding any custom location, you're replacing the foraging farm map, which isn't ideal. ideally you would load your own map, and i'm not exactly sure how the farm location works, but i'm pretty sure you should also have a patch that targets data/locations and adds an entry which is your custom location.
the alternative (and which isn't ideal) is to edit a vanilla location that already exists, overwriting it like you do the map
Yeah, idk how to load my own map, so I've just been replacing the foraging farm since my custom farm is very similar in layour and appearance to it.
Again though, I'm just concerned about the fishing stuff for right now. How do I get the fishing adjustments I'm making to only apply to my farm instead of overwriting all maps?
the site i linked you to in the previous message explains how to load maps
idk what location corresponds to the foraging farm map, but you would need to target field that one
Are you specifically overwriting the foraging map rather than creating a new map type on purpose?
Oops, missed the conversation above
So would I not be targettng the locations.json file?
I'm trying to target a specific section within that file, right?
Oh, nevermind. Got to the section of the github that explains targetfields now.
have you reviewed the content patcher documentation? i ask because it can explain these things in much more detail than i can. target refers to the asset you want to do things to; in most cases, this will mimic vanilla file structure. targetfield is a separate but related concept, and allows you to drill down within a target and edit specific fields
oh good there you go 
Strangely enough, the github placed a singular line explaining "TargetField" at the very bottom of the "Edit a Dictionary" section, which is why I completely missed it at first. lol
What is the map name of Mayor Lewis’s house?
that's why i linked you to the section haha it can be hard to navigate if you don't already know what you're looking for
ManorHouse
Thanks!
Why's my NPC using his normal sunday summer schedule instead of the rain one? Is it because I used a rain totem?
https://smapi.io/json/content-patcher/0c484efeb19e4025ac7a02322e733e20
there is currently no way to have specific rain schedules right now with the keys
you can have that with using CP conditions
Yeah, you can make a separate When patch for each rainy day.
Hoi all, I'm new here 👋
I am working on a mod to add stray cats to the world.
Would anyone be willing to review the code?
It would be nice to have someone more experienced to help catch common mistakes / compatibility issues. It seems to work fine in my testing, but looks can be deceiving.
Okay, so I'm not sure what's wrong with this... It's saying that there's an unexpected character on line 32, calling out the colon, yet that's exactly how it's written in the data/locations.json file...
https://smapi.io/json/content-patcher/c41607f2dcd240a2859a0e0868a7ab4b
https://pastebin.com/QUA3niDQ i feel like i must be misunderstanding when events are raised. right now it's logging a distance of about 2 from farmer to cursor, which should be in range to draw a green square, but i'm only seeing green immediately surrounding the farmer, like vanilla. is there an issue with when i call my methods? that's the only thing i can think of, but trying to do more extensive logging explodes my computer because it's trying to log every tick :( breakpoints don't help because it just stops the game on cursor moved etc
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
entries is a model not a list
({ instead of [)
You can share it yea, but honestly I'd just test it with the various pet mods
Pet enhanced and such
Thanks!
The other thing I'd do is make sure you aren't persisting the wild Pet entities
To avoid persisting them, I run a cleanup before world save, is there something else I can do?
Okay, so if I'm creating a content pack and I'm using FTM as well, in the manifest file should the "ContentPackFor" section be for FarmTypeManager or ContentPatcher?
I told myself I wouldn't make a farm map but I ended up mostly coding this one anyway to try to make sure I understood how your map would work as an Additional Farm with minimal code: https://smapi.io/json/content-patcher/fec9f5e06df346c18fd793e294acab82
It's all your fault (and feel free to yoink the fish conditions if they look right to you). 😛
Your FTM content pack and your Content Patcher mod are separate mods with their own manifests.
You'll just bundle the two mod folders together in the ZIP file you upload to NexusMods later (like how SVE does it, if you need an example of the organization)
Not gonna lie, that looks infinitely cleaner than what I have...
My finished file has 333 lines...
I left out most of the optional fields, LOL
Completely fair. I just copy-pasted directly from the locations.json file and edited what was relevant. lol
The wiki page for [[Modding: Location_Data]] will point out which fields are optional and what the default values are so you know if you can exclude them.
one day I will remember how to make the bot post the wiki page link
You can also run the unpack with --clean and it'll generate it with all the defaults removed
oooh, that is trick I didn't know, neat.
is the event where the junimos fix up the area of the community center after you finish a bundle hardcoded?
Basically
I don't think it even uses the event system
Oh, so that's what the wikis means when it calls something optional...
oh, ty!
In fact based on stuff speedrunners do where while one of them is going they path themselves to the next bundle and finish that too, that can't happen inside events
I am trying to make the player walk using c# but it’s difficult
A mod to add stray cats into Stardew Valley. . Contribute to sesameneko/StrayCatsStardewValleyMod development by creating an account on GitHub.
you can with conditions that check the season or day
I would look at the input API that was added in SMAPI 4.4.0.
So far they are moving but they only float over to the tile they don’t animate
The input API simulates the actual movement key being pressed. It doesn't just move the player. So animations will work like they would as if the player actually pressed the button.
The event tester predates that API but was kind of doing something similar (though never did movement) where it would just directly run the event handlers with the arguments needed to have the game run the logic I needed. Though it only really needed to do menu stuff
I did originally want to simulate controller input but that wasn't going anywhere
But if I simulate inputs how do I stop the player from making manual inputs
Yeah that's fine, I would probably use Saved instead of DayEnding
hii i have a question, if i wanted to make a chair for my mod and wanted it to have multiple angles (like sdv chairs do, such as front, back, left and right) how can i do that? i use stardewmodsmithy :p
should i draw all the sprites in the same image? or make them separate?
You have to make a front texture for the chair
And you need to draw it like in sdv yea, the bounds are still 1 2
!unpack
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!
To pick a texture as front use right click
okay but like, if i make all the chair sprites in one singular image, i'm not sure about what smithy will do, i feel like it would look extremely bugged because it would try to load everything all at once instead of making it a rotable piece of furniture
wait does the word rotable exist
😭
well, you get my point ig
It's not going to do that?
You are usually better off putting the textures in 1 image bc you can move around the bounds freely
oh, okay, thank god
But yeah I didn't make special handling for rotations atm
You have to kinda know to make a 1x2 size thing and then put rotation 4 
1.1.0 feature trust
for the whole sprite sheet, how many pixels should i use for the canvas? 32x64?
sorry if this sounds a little silly
i'm still learning
😅
i think it should be larger because i tried to sketch something and it barely fits two sprites
I recommend unpacking the game to see how vanilla does it
Instructions
i already unpacked it, but it confuses me, i'm not really sure.. should i do it like this?
like, horizontally
i think so
Yar rotations r wacky
one last question, should i include both right and left rotations, or just one of them instead of both?
my guess is that it would be only one because that's how it looks in the unpacked files
This is HOUSE furniture not TILESHEET furniture, right?
It gets flipped yeah, so 3 sprites but 4 rotation
house furniture!
yee then, gets flipped
Make your bounds stuff match the left couch
So I'm not getting any error messages from the validator, but what is the correct format for a writing Content.json fish condition that has multiple values? Or are both of these options valid?
- "Condition": "SEASON Summer TIME 2300 2600 WEATHER Rainy"
- "Condition": ["Summer", "2300 2600", "Rainy"]
Huh? I'm just asking about the formatting for writing a condition with multiple values since both are showing as valid formats in the validator tool...
The validator is not showing that they are valid formats. It's saying they are both valid json, which they are.
But the game will not read either of those correctly because as Lumina says you need a comma between Game State Queries (which is what those SEASON, TIME, and WEATHER conditions are)
And the 2nd listed format won't work at all because it must be a string, not a list of strings.
So to fix number 1, I just need to put a comma after Summer and 2600? Is that it?
Yeah pretty much
Thanks! I wasn't sure about the whole writing the type in all caps thing, or placing commas within the quotations, but good to know that's how to do it! 🙂
Game State Queries are generally quote-aware and will treat things in quotes as single arguments (though ofc a mod might read a game state query incorrectly), though you'll need to escape the quotes if you use them inside other quotes
As for the caps, some things are case sensitive and some things aren't. The names of the queries themselves I don't think are, but good to get into the habit of matching the case you see on the wiki
As a "just in case" thing
Hence why I asked. I figured something was off with it, but wasn't sure what was. lol
A few days ago, I asked around here for help with modding some animation stuff. I've finished the first version of the mod and uploaded it to Nexus.
It's my first time uploading something to Nexus, which I also don't use that much, and I might be a bit paranoid, but... If someone could look the page over to let me know if I made any mistakes, I would be very grateful.
https://www.nexusmods.com/stardewvalley/mods/42083
i'm not sure if i'm doing this the right way
i'd like some advice before testing it in the game 
Can each body of water on my farm only have one kind of CrabPotFishType? SMAPI is giving me errors when I'm trying to load my farm map with both ocean and freshwater CrabPotFishType options across the board.
sigh.
this is NOT what i wanted 😭
can someone please help me? what i want to do is just have a singular chair that can rotate if you right click it, not.. whatever this is 😭
code? but I believe you can totally have multiple
Just one line is necessary really. This is what I originally tried. I'm now trying a different method of naming each pond, but it's a lot more complicated than I would like honestly.
"CrabPotFishTypes": ["Ocean", "Freshwater"]
you should always post your full code for context; that line can be in a totally incorrect position as far as we know
also the correct spelling is ocean and freshwater
Well I've changed it since, but that's what it was previously, with a comma afterwards.
Here's the current code version though.
https://smapi.io/json/content-patcher/af3413edaaad4f8f8014a6e2ac960d8a
are you talking to me?
still to rjgraylight sorry 😅
oh sorry!
Position should look like this:
"Position": {
"X": 23,
"Y": 23,
"Width": 7,
"Height": 7
},
It looks like you made the bounds cover all 3 chairs
They gotta only cover 1 chair
The first chair
Also the type should be armchair iirc
hmm, like this?
You can share the furniture.json generated by smithy for indepth help
Yeah, I don't really understand that format. So was hoping to just use the simplified version...
Like I said though, I previously had a different version where it didn't differentiate between the ponds and just tried to apply it across all the water on my map. That would be the ideal, for all bodies of water to allow all kinds of crab pots. But SMAPI apparently didn't like that...
Yes but hrm your chairs also aren't tiled aligned
As mentioned before the white border is the texture bound, while the green square(s) is the space it occupies
If your texture is not in the white border then it'll get cutoff in game
should i paste it here or should i dm it to you?
ohh... i see..
!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.
hm, that's an issue
Yeah it's limitations of vanilla furniture
https://smapi.io/json/none/313ae0ab7bfc4705a3cefed13507b038 not sure if this is correct
even the 'simplified' format is (someone correct me if I'm wrong) "Position": "1,1,1,1"
ok I'm probably wrong
when in doubt just write it out fully
Yep that's the furniture data
Again, the ideal would be to apply both ocean and freshwater across the board so I wouldn't even need positional data.
also, question, how many pixels should my chair be?
i'm a bit confused
then you can just use one global fish area
(like, for it to be aligned with the tile)
Furniture work in 16x16 grids
if you don't actually need the fish area to have different fish you don't need to specify all of them
(I believe you actually would still need to write it like "{X: 5, Y: 6, Width: 1, Height: 1}" just... as a string, I guess)
just one area without Position
...isn't that.. a little too small? like, vanilla chairs would be literally tiny if they were 16x16
yes, that is the format i used
That's not what i said though, i meant that the smallest unit is 16x16
OH sorry i misunderstood
But furniture can ofc span many tiles
Your chairs look bigger than 16x32
But again, the issue arises of whether or not I can apply both freshwater and ocean to all bodies of water on the map.
Which brings me back to my original question, the original SMAPI error. How can I have both ocean and freshwater crabpotfishtypes at the same time?
i explained myself wrong, the canvas is 16x32, not the chair
That doesn't look like 16x32 lol
So I'd aim to make each chair fit in a 32x32 space, but the seating spots has all sorts of hardcoding to it
if you can post your error that would help, but the idea is one fish area, no position, with both ocean and freshwater in the field (just like how you did it)
(the error is probably that your Position was invalid)
My recommendation is to go find a vanilla armchair sprite, and draw your's on top of it
um
OH WIAT
WAIT
you're right 😭😭
god i'm such a silly goose
🥀
Well yes because smithy literally shows u how big the sprite is 
Pls trust the white borders ok
okay okay, so in summary the canvas should be 16x32, correct?
hmmmm
(but again it's good to just let smithy merge your textures to 1 atlas)
So you don't have to fiddle with several textures
in that case, since i have 3 chairs there, my canvas should be 48x32?
You can see how game itself fits all the furniture in 1 sheet too
This is indeed what i expressed
There was no position to begin with. But here's the error code from the original version. Apologies that it's a screenshot
alrighty! but the chairs do not align with the tile showed in smithy, should i just edit them and make them smaller?
Yeah you have to
Smithy doesn't change how furniture work at all (bc the point is that you don't install it in actual gameplay)
hm, okay! i'll do just that (even if it'll be a little tedious lol)
Now game does have larger chairs (armchairs, benches)
You could choose to make one of those instead of chair if you want
Bc rotation is shenanigans i recommend closely following whatever the vanilla format is texture wise
can you post the most updated version of your code and the log
basically refresh everything for the full picture
okay, so the chairs should be 16x32, and the canvas should be 32x48, right?
How do I post the log?
Also, I reset the code to try and keep things simple/
But here's the link for the content.json file anyways.
https://smapi.io/json/content-patcher/75196a2a3f2147c7afa6fd8b3caa1650
just wanted to make sure, sorry if i ask too many questions 😭
48x32
You're doing 3 sprites side by side, right? So multiply the width by 3 to get the canvas size you want
pls look at vanilla 
ok now the issue is that you're missing [] in FishAreas
it has examples for all this
FishAreas is a list of objects; right now you only have one object assigned to it directly
u also need this thing
the Front texture
in smithy if you right click on a texture it'll automatically export that as Front
The code is invalid if I swap the {} to [] though... :/
like this?
see how the code when you had multiple areas was [{},{}]?
Is that not what I'm doing?
"FishAreas": {
"CrabPotFishTypes": [ "ocean", "freshwater"],
"CrabPotJunkChance": 0.2
},
Or do you mean I should do...
"FishAreas": {
"CrabPotFishTypes": [ {"ocean"}, {"freshwater"}],
"CrabPotJunkChance": 0.2
},
Okay, slight tangent, how tf are you doing the whole code box thing? lol
ignore everything I said I mistook FishAreas for a list lmao
!embedcode
You can embed code in Discord using a series of three ` :
```
Your code can go here
Even if not a haiku
Just an example
```
For syntax highlighting, add the language code on the same line as the first
``` (with no space, like ```json).
The usual codes are cs (C#) and json.
serves me right for helping on my phone
gimme a moment
Oh, it's that key! Thanks!
"FishAreas": {
"Default": {
"CrabPotFishTypes": ["ocean", "freshwater"],
"CrabPotJunkChance": 0.2
},
}
So I need to add a value for "Default"?
ok so FishAreas is a dictionary of string keys to object values; your previous codes just put the fields directly in FishAreas so the game interprets those as names for separate areas
so it thought your code was "define two fishing areas, one named CrabPotFishTypes and one named CrabPotJunkChance"
Really? Strange. I guess in the location.json file, it does always specify a name or area, so I guess that tracks.
Making that the default won't make that the default across all maps though, right? Just my farm map?
the name only needs to be unique per location so you're good
Okay, well, the CP is working now. But now the FTM isn't... Once again, I'm stuck with the issue where nothing on my farm is spawning outside of vanilla behaviour...
Is there a validator for the FTM code, or how can I get help checking/fixing that?
it's JSON so you can put it on the validator all the same
it just won't tell you if the fields are wrong
Well that's my new SMAPI error...
And that's my FTM file.
https://smapi.io/json/none/107dc8ebdfb348ba88e1ec8aced815f4
yeah def sounds like one of the fields is wrong
I'm looking at the line it's calling out, and I just changed the value for the "StartingSpawnChance" from null to 1.
Is it supposed to stay as null for some reason instead of receiving an integer value?
posting code again might help
What
Joja hisss
I mean, it's in the link above. I've changed nothing yet...
!log (Also RJGrayLight for future reference, this is the preferred way to share logs! In the following governor command. Sometimes issues might lie outside of what someone might think to screenshot.)
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.
StartingSpawnChance expects an object (see the one near the bottom of your code)
same with LevelTenSpawnChance
An object? Not an integer for the percent chance of spawning?
1 and 10 arent valid values
do you notice the second instance of those fields below
Okay, so just swap it to null then?
to fix the code sure
I do yeah. I guess I just didn't put 2 and 2 together there, lol
YAY!!! Finally! After almost 60 hours, I've finally got it working!!! YAY!!! Thanks everyone for the help!!!
i think it's correct now?
should i test it in game?

So I’ve been trying to add my map to the bus stop ticket machine destination options but it’s taken so far 3 days and I found out I have to override the busstop code or else it won’t work bus locations seems to do this also. I tried reusing the code from vanilla but then I can’t get the farmer to behave like in vanilla the farmer doesn’t animate correctly but everything else works they just float when moving towards the bus doors unfortunately and I can’t figure it out
istg
i don't even know what i'm doing wrong..
The bounds should only cover the first chair
Also something useful is to set a keybind for opening the UI in game
You can then change stuff + test without exiting your save
how about Central Station
I’m trying to build it in c#
why not Central Station
I haven’t even looked at that one yet
And there is no train destination I would have to create an entirely new map
It’s a bus stop location
I highly recommend using that over trying to reinvent the wheel
CS supports buses, trains and boats
It came to my attention people don’t like installing extra mods
I already have the code set up only thing is player doesn’t animate
IMO you need CS compat anyway because it's quite likely yours won't be compatible with it
if u dont actually care about compat u can just make a minecart route
and pretend it's totally the bus
OKAY IT WORKED!!!! thank you so much!!
i think CS is better tho, and u dont have to make it a hard req or anthing
I already have a few minecart destinations and I believe that would ruin the immersion
just add ur station when player has it
although, there is one more (small) problem, the player looks like this when sitting on the chair, which isn't what i'm looking for ;_;
yeah if no CS = bus stop code
if CS = put it in the CS bus menu
the farmer should look more centered when sitting on the chair
did u use armchair instead of chair
I personally dislike that people have dependency aversion, but I also recognize that I'm a privileged Premium user
armchair is this size fyi
but still SVE had 9 deps before 1.6
32x32
so u should pick chair 
oki!
see im against them just bc i dont like having multiple sets of competing wheels in my mod list for dum programmer reasons
dont forget to do the Front texture
no the front texture is a different texture
its the chair back
have you unpacked your game content yet
yes, i did
How come we can’t add when condition for those mods
then you should take a look at TileSheets/furniture_2.png and the corresponding TileSheets/furniture_2Front.png for what im talking about 
this thing is used to draw the chair's back above the player when you sit
do you mean this?
yeah if no CS = bus stop code
if CS = put it in the CS bus menu
no offense but i really need to take a rest, i've been doing this for hours and i'm really tired 😭
you can just do a check for those mods yea
in CP you do HasMod
in C# you do Helper.ModRegistry.IsLoaded("spacechase0.BiggerBackpack")
you can generally assume that the list of loaded mods will not change, and just completely not enable any logic related to custom bus station stuff when you know central station is loaded
"you can generally assume the list of loaded mods will not change" For Now
button threatening to change this
At the very least I can say I've looked into it more than one would if they had absolutely zero intention of trying it, but not enough to say that I will definitely try it
New quote added by atravita as #7247 (https://discordapp.com/channels/137344473976799233/156109690059751424/1469536156709290281)
For HMK, can we detect the number of kids the player is having, so that a machine made to "generate babies" will stop functioning if the maximum number of children in a household has been reached?
So some people use bus locations mod how would I add a condition for that
What a concept
hm i never added a GSQ for that oop
i can do it real quick hold on
I was just gonna remove the bus stop method of getting to my map
the same thing you do here: #making-mods-general message
Also, I still wonder if a custom NPC kid still need toddler sprites with arm waving/sitting animation like a regular toddler would (or that custom kid NPC sprites would need those frames as if they are toddlers)
Interested in family planning i swe
I mean not that -
I am planning for making a machine that makes ||homunculus children out of specific materials (for aroace and/or magic/alchemy-themed runs)|| - and if the player already have whatever maximum number of children - that machine would not function anymore unless any number of children are doved
pls try (cus i didnt test bye)
mushymato.HaveMoreKids_CAN_HAVE_CHILD <spouse> [kidId]
the check work just like the one in mushymato.HaveMoreKids_SetNewChildEvent
they do need the animation but you can customize which frames are used
set the ToddlerAnim16To19 and ToddlerAnim20To23 fields to whatever frames you want
Does this work if the player is having a roommate instead of a spouse (as in, having a roommate and then add a machine that can "generate" babies instead of adopt/having one biologically)?
(I mean for the GSQ)
a roommate is internally a spouse 
Does the number of frames need to match exactly 4 frames or can be less?
it has to be 4 frames but u can repeat
hmk just takes the SpouseAdopts as truth in terms of what message to show
if you have a roommate that has SpouseAdopts resolve to true tho you do get the special path hmk added where normal night event new child is possible even for roommate
and they'd use the adopt dialog (or whatever custom dialogue you put for them)
The standard Growing Valley-derived child spritesheet only covers 4-directional movement and a 2-frame sitting/reading animation, like this:
Given that GV assets are free to use with credit - Should extra frames be added for compatibility?
nah u can just repeat frames ez
Typically it is Krobus or roommates from popular expansions such as Apples (SVE) or Moon (SBV)
Even those two extra sitting frames at the bottom?
so when i did muffin cookie convert i did actually go edit their sprites (bc i didnt implement ToddlerAnim20To23 and such yet
what you basically want to do is "ToddlerAnim16To19": [0, 0, 1, 2, 3]
"ToddlerAnim20To23": [16, 16, 17, 17]
so that the frames get redirected basically
What if the "ToddlerAnim16To19" property be just making the custom NPC kid stand in one place, as in all frames are frame 0?
sure
Is this possible?
its up to u what do 
the num of frames do gotta match (and i actually typo'd myself earlier oop)
but what frames is your choice
Normally, a roommate like them DO NOT adopt nor have biological children
Yeah that's still the default
In vanilla the adopt flag really just affects the dialogue though, for fine control I recommend using the feature in hmk to add custom new child dialogue
BirthOrAdoptMessage https://github.com/Mushymato/HaveMoreKids/blob/main/docs/001-model-kids.md
I am eep now but feel free to ping questions I'll answer when wake
Okay, so the CP changes I made aren't taking for my map.
And I think it might have something to do with the fact that there is no location in the Locations.json file for my custom map (GrayFarm). If I just want to overwrite my Forest Farm map file with my fishing changes, would I change the "DisplayName" value, would I add a "TargetField" condition, or would I do something else entirely?
Or is it just easier to somehow add a new location to the Locations.json file? (I suspect not, but idk for certain)
Is your farm a new one being added to Data/AdditionalFarms or is it a replacer of a vanilla farm?
I believe it's currently functioning as a replacer for the Forest Farm
Can you please share your json so we can be sure? That way we can also see how you're trying to implement your map changes.
Okay, you have both situations going on here. You're replacing the vanilla forest farm and making a new farm type.
Huh? Now how did I manage that with zero error logs? lol
However, your Load patch for the non-replacer has the wrong Target
This patch
{
"Action": "Load",
"Target": "Assets/GrayFarm",
"FromFile": "assets/GrayFarm.tmx"
},
Needs to be like this instead
{
"Action": "Load",
"Target": "Maps/GrayFarm",
"FromFile": "assets/GrayFarm.tmx"
},
Ah, yup. That tracks. Is that all you think I might need to do? Or is there more?
Once you've fixed that, you should be able to make a new save and select your custom farm type and then you will hopefully see your fish edits.
New save? As in start over? Or just trigger an autosave by progressing to a new day?
And you can just delete this patch entirely because you don't need to edit the vanilla farm.
{
"Action": "EditMap",
"Target": "Maps/Farm_Foraging",
"FromFile": "Assets/GrayFarm.tmx"
},
As in new save because I imagine you're probably testing everything in a save using the vanilla Forest farm right now, which means you're not on the map you're editing.
Once you've finished developing the mod to your satisfaction, if you have a real play save that you want to migrate to your new farm type, there's a mod to let you do so. But I'd definitely recommend you don't do that until you are finished testing and making your farm map.
Well I have been on the map I've been editing... :/
It's been spawning all the ores, and the map I created is correct, spawning whatever was in the .tmx file correctly...
The map itself, yes
Because you're using the same .tmx file to replace the vanilla Forest farm as you are using to make your new farm location.
Alternatively, if you would rather keep this as a replacer you can remove all the AdditionalFarms stuff and change your Data/Locations entry key to "Farm_Forest" to edit the vanilla data.
Ah, gotcha. So then, I should now see an option for my new farm when starting a new game then? I don't recall setting anything up for that yet honestly...
Almost everything in that content.json you shared with me is for creating a new farm type.
Okay, so with the two edits you've suggested, it should be clean to go then?
Well, I have given you two completely opposing options, so you need to choose just one of them.
I gave my advice at first assuming that since you'd written all the json for a new farm type that it was your preference, but I may have been wrong.
Okay, so for testing purposes, is there an easy way to remove all map debris via SMAPI?
debug clearfarm
Does that debug command prevent spawning of new items?
No, it just clears everything that's present at the time of running the command
Trees, weeds, grass, wood, stumps, boulders etc
@vernal crest the green looks good on you 
Also crops and hoed dirt etc
Okay, then I guess I need to write up some code to change the FTM then as well...
Is that possible to do in the Content.JSON or is that going to have to be on a Case by Case basis? Because as I'm aware, that's save-specific code, right?
If you're not writing an FTM mod for it (which is not save-specific), then I am unsure what you're doing and cannot advise you on it.
Oh, I am. That's what I did, or at least that what I thought I did.
The github directed me to make a save, then edit the save file. And it works.
Is that not what you're supposed to do?
This is what people normally do. CP mod and then separate FTM mod. It doesn't involve editing any saves directly, it's making an FTM mod that will apply to any save.
I've not personally done any FTM stuff and I found the github a bit confusing because I wasn't sure why the content pack info wasn't at the top (maybe when Esca wrote it, that was not what they expected people to do much? IDK)
Oh? So then, if I were to publish this mod oneday, I would need to make an FTM mod as well that is more than just editing my current savefile? Good to know I guess...
Yes, but in this instance you don't need to change anything FTM-related if you want to just migrate your current save to the new farm using Easy Farm Switcher (I assume - there might be complications I am unaware of).
Also, I'm surely doing something wrong here. I'm trying to level my character's fishing level to level 5 to test the fishing stuff, but the debug command doesn't appear to be working? It's
Debug Levelup 1 5
Right?
Why are you saying that didn't work? It worked for me
Fair enough. I just copy-pasted what I did for the original file into the new save file. Easy enough to do.
If it's because you saw this:
[Console Commands] Sent debug command to the game, but there was no output.
That doesn't mean it didn't work. It just means that the command doesn't result in any text to show you in the console itself. If you alt-tab back to the game you should see it work.
It's giving me the prompt saying that I levelled up, but mechanically nothing has actually appeared to change. The fishing minigame is still acting as though I'm level 0 fishing...
You probably need to save for it to actually apply the level up
nope, just saved to a new day and nothing changed on the fishing level front...
Oh, hm, right, you didn't see the description of that command: does not actually change the skill level
You need to use the experience command to actually increase the skill level
Sorry, I forgot it works that way (very strangely)
Ah, the experience command. That makes sense, backwards, but it makes sense, lol
Thanks!
@tranquil surge You leveled up to Cowpoke. You can now speak in our voice channels and share images in all channels!
Question, I want to completely replace the farmer with my own character, and I know I have to use fashion sense to do it, but how exactly would I go about it?
Would I have to make a new accessory for every part of my character so that it matches?
Anyone familiar with FTM here?
Trying to have two separate spawn tables, one for spawning beach items year-round, and another for spawning seasonal items.
Here's my save.json
https://smapi.io/json/none/b6cc41d9061d423aa30ac85c56cb81ac
Maybe a silly question, but why not add the year-round stuff to all the seasonal lists?
If yo ucan't get it working with the separate tables, anyway
and how would i edit the sclera of the farmer
Where should I place it in a machine rule?
And how are “spouse” and “kidId” supposed to be used in the GSQ’s context?
comparing this to another mod that uses FTM (Kisaa's Blossom Crest Farm), this looks mostly correct, but you don't have the FarmTypes defined at the bottom. Is it not working correctly?
Festivals of the Mundane is free to update, right? Does anyone has an insight on what the C# part of it does?
based on the method names, a bunch of stuff 
RemoveGoblinNose and AddWeirdLight are outstanding
the bulk of it is festival setup including lights and map tiles, gassy overlay, colourful fireflies, adding lights, and shifting krobus around; but there's a lot more miscellaneous fluff that could possibly be covered by recent data model improvements
there's a handful of unique behaviours for the hats added, like the goblin nose mentioned before, and the shadow people masks that let you enter the festival and ignore damage from shadows elsewhere
and of course the pin-the-tail minigame, which is a minigame
(unrelated) utterly at a loss as to what a crow trinket critter would do that hasn't already been done lol
annoyingly also hard to make a nice looking old shiny coin with a hole in the middle. maybe crow egg is better visually and thematically
Well, no, the code isn't working actually.
The Beach spawning items should only be able to spawn on "beach" type tiles, but I for the life of me can't get that working as I would like.
Additionally, nothing is spawning anymore either, like at all, since I tried separating the beach spawning from the seasonal spawning items.
Welp, that elimintaes any possibility of CP replacer, I suppose. Thanks for looking into it!
Have you tried making separate Areas for the beach and normal forage spawns?
Okay, I fixed the spawning of everything except the beach items...
Why aren't the beach items spawning anywhere? Ideally, they would only spawn on the Beach tiles, which I've designated on the tmx file...
https://smapi.io/json/none/213c9b0d4c104955906f55a7fc5768ac
Yeah, but for whatever reason the code is always showing up as invalid when I try having two separate areas for spawning forage...
What was the error? And did you have that coded like the example? "Areas": [ { Area 1 settings }, { Area 2 settings }, { Area 3 settings } ]
Area 1 would be your overall farm (or the farm minus the beach if your coordinates were specific enough), Area 2 would be the beach on your farm, etc.
Also, have you confirmed that Beach is a valid terrain type by using debug whereami in SMAPI on a beach tile in your farm?
I think you may need to use "Custom" and then set the CustomTileIndex for your 'beach' tiles
Ah. Yup. That'll do it. That's a tmx error then.
I take it using the TileData in the Paths section is not the correct route to take then?
FTM is very specific about which terrain types it will accept as valid arguments.
So my only option then is to provide specific coordinates or allow the beach spawn to spawn anywhere? I can't use a tmx TileData Custom Property then? That's annoying. More wasted hours of work I guess...
You can use "Custom" instead of "Beach" in your FTM JSON inside the Areas section, and then use "CustomTileIndex" to set a list of tiles that count as beach.
It's not that much work at all.
I don't know how/if the Paths layer if your map TMX interacts with FTM
Unfortunately, that won't work either as I just want the beach forage to spawn within a specific range of the water tyles. I didn't use any kind of specific tile for those areas. Just basic dirt and grass, which is all over my map.
Then you would set tile coordinates instead in your beach's Area and not worry about including or excluding tiles.
If I'm going to do the includes coordinates section, that's over 57 different sets of coordinates since my water bodies aren't simple square shapes... I just counted.
Twice that if I want reduced odds of spawning the further away from the water they are. Definitely not even gonna bother with that for now though.
You don't usually set tile properties via tile objects on the Paths layer, is that something the FTM docs directed you to do? Normally it's on the Back layer
Because the data has to be on the layer relating to the tile it's affecting
No, I just wasn't able to do that in Tiled for some reason. I was only able to edit the properties of a tile using the TileData selecter, which I wasn't able to use on any section but the Paths section...
Like, it's literally grayed out in Tiled, so not a valid option whatsoever.
So it's not letting you do this?
You have to be on the pink object layers, not the blue tile layers.
Not unless I want to do it for all tiles that exactly match that one...
No, you're thinking of tile properties, which is not what this is. These are tile objects and I'm editing the property only for this object.
Esca would be better to ask if/when they're around, but it looks like you can set the ExcludeCoordinates to grab a range or rectangular selection with a ; between two coordinates, which may help you to simplify the areas a bit. (the "lots of forage but not near the farmhouse" example image and code from the FTM docs)
This is a screenshot of one of the bodies of water, and all the white boxes are where I want the beach tiles to be.
Okay, you should be able to just cut and paste those from the Paths layer to the Back layer.
Whether that will fix the issue you're having with FTM I do not know, but at least then they'll be on the right layer.
Well, worth a shot at least. Doing that now.
Tile properties affect all instances of that tile because they're tied to the tile ID. Tile object properties are tied to the coordinates of the map that they are placed on, so the only affect those coordinates.
If it doesn't, then what lily is suggesting seems like the way to go.
Okay, so the WhereAmI command does seem to be accurately changing the terrain type of the tiles I want it to. But now nothing is spawning anymore...
Did you change anything except the layer those objects were on?
I also increased the amount of forage that should spawn and removed the dirt and diggable locations for where they can spawn.
But I didn't touch anything on the normal foraging, so idk what's going on there...
Try changing those things back
(Make a copy of what you've got now, so if that isn't the problem you can reinstate your changes easily)
Nothing at all. Why would changing the map file prevent anything from spawning anymore?
https://smapi.io/json/none/77cdd73e480a4f40a5caaff125babc0c
Where did you see that "Beach" was a valid terrain type? I can't find that in the docs.
Honestly? That might be leftover from when my map was a CFL. In CFL there's a BeachSpawn = T value for whether or not items that could spawn on the beach could be spawned on that tile.
But even still, I should be able to create a custom tile type, surely? If I'm only restricted to choosing between dirt, stone, grass, and diggable, then that pretty much eliminates all possibility of customisability...
Again, I lament the loss of CFL, as things were so much simpler with that system that is no longer supported...
I think you are going to have to use IncludeCoordinates and ExcludeCoordinates like lily said.
Why do you think CFL isn't supported anymore? I'm using a CFL farm for my playthrough and lixx updated it only last year
Lovely.
Guess I've got another few hours ahead of me typing out over 50 coordinate pairs then...
You don't really need to make it that fussy, imo
Not supported in the discord I mean.
You could have just pinged Lixx, I imagine
If I want it to be within 2 tiles of water, then I unfortunately do.
Alternatively, use CustomTileIndex
I mean, there are three different versions of that username, none of which match exactly, so idk which would be correct, even had I thought to do so before I started this entire adventure 2 weeks ago and sunk over 60 hours into transferring everything to completely different systems...
Use an invisible tile, put it on your Back layer, list that as your IncludeTerrainType
Hey, no. Please don't be insulting to the people who are making these systems.
Any of this is only possible at all because of their hard work. Just because it's not exactly to your liking does not make it okay for you to call them broken.
Copy everything that's currently on the Back layers onto Back2 so they still look right
Fair, sorry. Frustrated. Hate it when time and effort gets wasted or turns useless is all.
Plus I should probably get some sleep. it's 4am where I'm at, and I've been at this since roughly 12 noon today with little to no noticable progress...
I understand that (am wrestling with it right now with a custom terrain recolour mashup I am cursing myself for even beginning lol) but please do be careful not to take it out on the makers of the frameworks or on those helping you. If it gets too frustrating, that's probably a good sign it's time for a break (or a sleep, as you say haha).
When you come back to it, give my suggestion of the CustomTileIndex a go. Should only take a couple of minutes to try it out.
If I haven't explained it well enough for you to know what to do, feel free to ping me to ask for more guidance.
I mean, with what I have now, the WhereAmI is saying that the Terrain Type is Beach and Quarry for the two things I've set up that way. So there's that at least.
Unfortunately, it seems that it's just not gonna work unless I write up a bunch of include sections. And if I don't want forage spawning in or too far away from the water, I unfortunately need to be particular and write out the coordinates for all 57 TileData sections where I want the beach forage to spawn...
As for the CustomTileIndex, since that overwrites what that tile id counts as, and since I use all of the possible tiles in other sections of the map, then I'm sure that would just create even more issues.
I think you have misunderstood what I was suggesting. I am suggesting changing your beach forage spawn area's IncludeTerrainTypes field to only contain "Custom", and then using CustomTileIndex to indicate a tile index on the tilesheet that you will then use to paint onto your map's Back layer in the places you want beach forage. By using an invisible tile you can ensure it won't be used elsewhere on the map.
Take tile ID 16 on spring_outdoorsTileSheet, for example. It's probably not used, given there's nothing on it.
I think the part where I'm getting lost is the invisible tile thing...
Because there aren't any invisible tiles unless you're talking about the TileData sections. Right?
Nope
Right there to the top left of the big pink tree at the top right of spring_outdoorsTileSheet.png
And there's lots of others
Okay, yeah, I see those. But when I try adding it to the back section, it just replaces the current map tile that's listed there...
Yes, that's why I said you'd copy and paste the existing Back tiles to a Back2 layer
So they'd be what was visible instead
Ah, now it's clicking.
You might end up with some strangeness if you try to hoe there
But I can't imagine you'd want to plant crops there if you're going to all this trouble to make forage spawn there
Wait, so if there's a back2 layer (Tile layer I presume), and I hoe the dirt, then the back2 layer would show instead of the usual darkened dirt patch?
I might do a little bit of planting/tilling, for rice or fruits trees and such.
So yeah, would like to keep that option open.
Well, you have to pick your battles
Probably still worth testing one tile to see what happens
Fair enough
Alternatively, you could easily just edit the tilesheet
To give it the dirt appearance
Then you don't need the Back2 layer tiles
Or even add a new custom tilesheet to the map so there's no risk of the tiles ever being used in any other context because neither vanilla nor another mod would have used your custom tiles
(Making and using a custom tilesheet might seem daunting but it's actually pretty simple)
Okay, so for the CustomTileIndex, I just put the ID of the invisible tile I used there, correct?
Yep
Okay, thanks so much!
I'll test it out tomorrow once I've gotten some sleep. Spent 14 hours on this today alone, so here's to hoping...
ingame assets are so annoying to recreate 💔
Why are you trying to recreate assets? /curious
I'm planning on making a commission sheet for my Stardew Valley portraits
and i want the commission sheet to look exactly like Stardew's style
It's more of just "visual flare"
Like i thought that making an ordinary commission sheet would look too unappealing and boring
i did it 
....now how do i stylize it 
This goes in requiredcondition of trigger
The spouse is either Any or the particular spouse you want to check
Kidid also Any or particular kid
Now that I eep and woke tho I realized I forgot some checks here
So basically:
If the player have less than the maximum number of kids (either the vanilla limit of 2 or whatever limit HMK has) - The machine works like intended - But once the player hit that limit, the machine would refuse the input raw material (s) to "synthesise" a homunculus child unless any number of the player's children is doved - leaving room for other kids
we usually don't do that
oh? how come
Because we want to minimise the amount of unedited game content that is being distributed, given that it's not open source. We're privileged by CA to be able to use the game's assets to mod the game and we want to be as respectful of that privilege possible.
hmmm
Okay, yeah, that makes sense
I'll just go on my laptop then, thanks 
wait doesn't spriters resource have it?
Yeah that's what gsq should do for you
We discourage people from using spriter's resource
But the thing i realized is that the check only works when u got actual spouse rn 
(I'm not speaking as a moderator there, I'm unaware of any official policy existing about it)
So I'll update it to also check even when spouse=Any
Speedy u can probably just use the scroll generator
what's that?
It's got the actual font right
Yeah but like, I don't want it specifically on a scroll
i wanna be able to use it in a pixel art program
but i guess i can copy and paste the text from the scroll and remove the scroll itself
This'll be useful regardless, thanks
hello hello, I’m looking to make a relatively simple mod, add a building to the town with two new npcs. i plan on dedicating the better part of a year to relearning and improving my basic coding skills and putting them to work to flesh out this project. that being said, anyone have ideas of a good place to start? I’ve already built out the story and lines etc, now it’s just time to put the work in
!npc
Keep in mind that making NPCs is a complex process that requires learning many different aspects of Stardew modding.
Here are a few links that can help get you started on all that you need to know:
-
Tiakall has a great tutorial on making a custom NPC for 1.6.
-
NPCs no longer use dispositions, check the wiki page for the new NPC data.
-
Feel free to jump into the https://discord.com/channels/137344473976799233/1277457201077813280 thread for more interactive feedback and help!
-
Fireredlily has a WIP NPC Builder Please do report any errors you get with it into the NPC thread!
If you mean #unknown that's a discord bug
If compatibility with other mods matters to you, I'd put some thought into that early on in the process because trying to add a building into Town is going to be tricky.
Hey folks. For a mod I'm working on I'd like to have a custom machine that outputs 1 item per day on normal days, and 3 items on windy or stormy days, so sort of like the soda machine but variable based on weather.
I've made a custom machine before and understand the basics syntax, but can't get the variability to work consistently. I've tried some different formatting of When and Condition fields but can't seem to get it right.
I'd also like that machine to appear in a custom map, how do I do that?
!json Can you share your json, please?
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 tried a few different iterations, here's one:
{
"Action": "EditData",
"Target": "Data/Machines",
"Entries": {
"(BC)ModName.BatteryDispenser": {
"OutputRules": [
{
"Id": "DailyBattery",
"Triggers": [
{
"Id": "DayUpdate",
"Trigger": "DayUpdate"
}
],
"OutputItem": [
{
"Condition": "WEATHER Here Wind ||| WEATHER Here Storm",
"ItemId": "(O)787",
"MinStack": 3,
"MaxStack": 3
},
{
"ItemId": "(O)787",
"MinStack": 1,
"MaxStack": 1
}
],
"MinutesUntilReady": 10
}
]
}
}
}
Please use the json validator website. That's why I linked it for you.
But this: "Condition": "WEATHER Here Wind ||| WEATHER Here Storm", is not valid syntax for a Condition field. Where did you get it from? (Just asking because if it's a tutorial we'll need to fix it)
Sorry for not posting the link!
I wasnt following a tutorial, I was experimenting with a few different things as I couldn't get it to work so was just throwing stuff at the wall to see what sticks to be honest!
Ah, I see. Well, if you have a look at the GSQ page it gives you an example for how to use OR in a GSQ. Let me find it for you.
It's not really as clear as it could be: https://stardewvalleywiki.com/Modding:Game_state_queries#Meta
But basically if the command has a + at the end of its argument list, like WEATHER <location> <weather>+ it means you can list more than one possible value.
For weather, you use WEATHER Here Wind Storm
So no commas?
I think I tried with commas seperating them like a lost. I did see that page but didn't fully understand it sorry.
commas are "and" logic, like "DAY_OF_MONTH 1, WEATHER Here Sun" = the date is 1 and it's sunny
Ah ok! Good to know..
Is there anything else wrong with my code? As even when in testing I put it with just one weather type each, ie Sun for one and Rain for the other, it still doesn't seem to fully work like I want it to.
whereas "ANY \"DAY_OF_MONTH 1\" \"WEATHER Here Sun\"" = the date is 1 or it's sunny
if this is for a machine, you might want to use Target instead of Here
Target = the machine's location, Here = the player's location
https://stardewvalleywiki.com/Modding:Game_state_queries#Target_location
I'm not very familiar with machine stuff personally, but that could cause issues depending on when it checks the condition
Ok, so would the syntax be:
"Condition": "WEATHER Target Wind Storm",
how long have i been writing if (random.NextDouble() < 0.1) when i could've been writing the far more 🆒 if (random.NextBool(0.1))
truly more revolutionary than random.ChooseFrom("(O)100", "(O)390")
Any other issues anyone can see with my block? I'm away from keyboard now but keen to get it fully solved tomorrow
not that I'm aware of, at least
since 1.6.0 added RandomExtensions, I guess 
though one of the random dlls has a NetRandom with a similar method
Esca, does FTM spawn big craftables on maps?
it can, yeah, either placed & operational or as pseudo-forage items
Or can it, rather
Cool, thanks. That's probably what Alex wants to have it appear on their map then
(I think it can still do the latter, anyway? it's been a while and used to only do that)
Ok cool, I haven't used FTM at all myself but I know it's a fairly common dependency. Any hints to get me on the right track?
there's an optional download on FTM's* nexus called Config Editor, which is an html file you can use to make a fresh content.json for an FTM pack and customize it with a UI
as far as machines go, you can spawn them with the "forage" section using an ID entry like this:
{"category": "big craftable", "name": "your machine's ID here"}
and you can use "limited number of spawns" set to 1 so it only spawns your machine one time
in the json itself w/o the editor, it'd look something like this
"SpringItemIndex": [
{
"category": "big craftable",
"name": "your machine's ID here"
}
],
/* put that in the other season lists too */
"LimitedNumberOfSpawns": 1```
Thanks!
Just before I go down that rabbit hole, to ask a broader question, is there an easier way to have a machine-type thing that the player can interact with to an item out of at a custom location, that varies by weather like we've discussed?
if you just want it to be a persistent thing on the map that players can interact with on rain/storm days, a tile action might be viable too
though I'm not sure if there's really a simple way to set it up
e.g. the BETAS framework can run an action when players interact with a buildings-layer map tile
https://stardew.button.gay/docs/betas/mactions
though that does remind me, if you want prevent players just picking up your machine, FTM has a setting for that
{"category": "big craftable", "name": "your ID", "CanBePickedUp": false}```
I think Axell made a coffee machine using BETAS, couldn't tell you about conditions though
I have a question regarding recipe overrides in Space Core
I tried to override a custom recipe's ingredient with a context tag, the override setting can be toggled on and off via config and the override patches are gated behind the respective include
It doesn't seem like the override is working the way I intended it to though, so am I missing something? Instead of sugar there should be Sugar Item now
https://smapi.io/json/content-patcher/1fd63d223a394daa84ab870b6545f700
(just threw in the recipe patches in here so please don't mind the incorrectly positioned Changes)
For reference, this is the include patch in the content.json, the overrides file is in the same folder as the content json
"When": { "Recipe Overrides": true },
"Action": "Include",
"FromFile": "Overrides.json",```
Hi guys. I started playing arround with custom bush and i was wondering... is the quality gain by year planted feature hardcoded into fruit trees only? or it is possible to add it to custom bushes? ideally with content patcher 😅
Is that a Lookup Anything view of the ingredient?
Yes, it is
Have you tried trashing the ingredient and spawning a new one after enabling the override? Dunno if it's going to get instanced like other object data, but worth checking.
I have been checking its stats using CJB item spawner by searching the object and checking it with Lookup Anything, so I haven't really had anything in my inventory
if that's what you mean
Hm yeah it usually updates when directly inside CJB
I was trying to avoid actually looking at the json so I could finish making my dinner lol
go make your dinner, this is not a live or die situation here 
Ok my 2 minute noodles are back in the microwave for another 5 minutes, let's do this
I just tried checking the displayed name when I'm accessing the recipe from the cooking menu. Seems to work, so perhaps it's a limitation on Lookup Anything's end?
Looks like it! Try testing it
I forgot to add the context tag to sugar, let me fix it
wait, if someone uses cornucopia for example which has a lot of overrides and we both add the same context tag, would that cause a conflict?
Hmm, I am not knowledgeable enough to be sure. My guess is no.
Does making a mod that adds quests to you automatically based on your progress harder to do? Like a perfection helper mod but via quests
it may be a bit of work but should be doable, depending of the quests
well, everything seems to work! tested it with cornucopia, too, no issues here 
feeling dumb for having to ask but: how can I get my mod in the mod showcase channel?
have a mod author publish it
you post it here (assuming it meets server rules, so no nsfw or ai content) and ask an orange name person to showcase it for you!
send a message with the link and a brief description
Thanks!
Anyone know how I can possible try to make overgrown valley and sdve compatible with eachother as a patch for personal use? Is it even possible? Just wondering
I rlly like those 2 but sadly they can’t be used together :(
Hi, I'm making a custom NPC and I want to use high-resolution portraits with the HD Portraits framework.
My question is: Do I still need to load a standard 64x64 pixel portrait in Portraits/NPCName for the NPC to spawn correctly? Or can I just load the HD image alone in content.json? I'm getting a "Failed to spawn NPC" error when I only use the HD file.
With how much SVE modifies maps I'm guessing you'd need to recreate all the maps from scratch (or using tilesheets from overgrown, not sure if it's mostly custom assets or existing ones)
I don't know what overgrown valley is because I can't find it on Nexus but if it's an aesthetic mod of some kind then yes it's definitely possible to make compatible with SVE. Whether it's feasible...well, with enough determination you can do anything!
Same category as making good ol' SVR3 compatible with SVE
Ah, Lune's! That's cool.
Yup, same as what I'm doing to make all my mods fit together. Lots and lots of editing.
Hi, could I get a mod author to add this to the showcase please? Thanks! https://www.nexusmods.com/stardewvalley/mods/42085
WAIT THIS IS SOOOOOOO CUTE WTF
Hopefully they don't have rabies though 
Exciting sequel to random cats in events /lh
Um so how would I make my NPC appear in-game? I just want to see one of the sprites so I can check/adjust the colors properly, it doesn't need to do literally anything except exist
hm, if it's just for sprites you could replace another NPC's sprites temporarily!
How do?
Also do I need to set up a full spritesheet, like can I leave some blank or do I need to like grab the NPC's original sprites and frankenstien them on the same sheet or-
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn programming.
earlier i was thinking about asking to overhaul the startmodding command, here's the stuff I was writing:
Content packs are formatted text files, and don't need any prior programming knowledge. They rely on frameworks, which are mods made with C# that enable other mod authors to create a variety of content.
The most common framework mod is Content Patcher (aka CP). It's used for editing/adding to most vanilla assets. It can add/edit NPCs, maps, items, sprites, shops, and much more. To get started, see the SDV wiki's guide on Content Patcher, the Content Patcher documentation on GitHub, and the SDV wiki's list of framework mods. Note that some framework mods are extensions of Content Patcher, and will still require Content Patcher to run.
For further resources on creating content packs, check the modding index of the SDV wiki. There's also a dedicated modding wiki with specific tutorials, though it should be noted that the modding wiki may not be as up-to-date as the regular SDV wiki's modding index.
buttons json tutorial's great too, one sec
This looks so cute!!
highly recommend showing this to #modded-stardew (link and what it does, no need to showcase again). I’m pretty sure so many people will want it (they were discussing cats earlier after all
)
Seems like it got quarantined on nexus 😭 does anyone have experience with this? It's just the dll and json...
You'll have to click the "How can I fix this?" on the file and follow their instructions to email them, unfortunately
@low marlin i fixed some stuff and also isolated the example for senlet from the fish smoker https://smapi.io/json/content-patcher/7a24bda2ac8b4dc0a3148051f7a03912
you need selph.ExtraMachineConfig for this fyi
How would I go on about adding an item for sale to a vanilla shop?
Specifically, I want to add dragon teeth to the volcano's dwarf shop. For maybe 200 cindershards (amount might change but cindershards in general I think are a decent compromise)
A good ol EditData will do it. https://stardewvalleywiki.com/Modding:Shops
This page has an example under the new shop example
You'd be targeting VolcanoShop
"TradeItemAmount": 100,
"Price": -1,```
Also you want this for the price
just change the amount, that'll do selling it for cindershards
How would the folder structure look like? Can I just toss that into the content.json or would I need to specifically create a Data/shops.json?
What JSON stuff is in doesn't matter, it's mostly for organization or HasMod include purposes. So you can drop it in Content if you want, sure
Gotcha, ty
You're a gem 
So it'd have to look like this?
Looks right to me
Great, thanks. I'll try it out then
Smapi doesn't yell at me at least. That's a good thing 
Works perfectly fine!
Thanks again for the quick assist!
if i have a condition in an event using GSQ but i want this condition reversed
Should it be :
G !condition
!G condition
Or are both working?
Don't want to clutter the modded channel too much
Is Kate highlighting things weird or is there actually a bracket too many now? Removing one doesn't make any difference. I just changed the 200 to {{PriceTooth}}
who is kate?
kubuntu's default text editor