#making-mods-general
1 messages ยท Page 563 of 1
I'm p sure localtokens can replace every patch below your event and every included json with a single json and single include patch
But I'm not super well versed in them
Like I said though, not required
oh those other patches all need to be separate things otherwise the way the random token would work would make Abby's hair purple unless the AbbyHair token happened to allign with the most recent event seen
hmm, I know I have a few somewhere in my mod.. I could try and hunt down those examples if you'd like?
um ok
nvm found it in the CP docs! https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/tokens.md#local-tokens
If you made a separate dynamic token called "ChosenColour" or soimething whose value changed depending on which event was currently marked seen, you'd have more dynamic tokens but could then use it for your editimages
(I know dynamic tokens aren't localtokens, I was just thinking about it more and think this way is probably simpler)
(I mean you could put the dynamic token into a localtoken I guess if you still wanted to keep the include)
hmmm idea
so the way this works is that the event adds a conversation topic for Abby dying her hair
this does mean I can have NPCs mention it until the next time she redyes her hair
I think you should also be able to turn the event into a trigger action too
I assumed there would eventually be an actual event in the event
Well then I think you should definitely use a trigger action instead lol
yeah?
I could try and draft one for you, if you'd like (I'm trying to procrastinate my own shit)
You would just be doing a repeatable DayStarted trigger action whose condition relies on not having the CT active
That then removes all possible hair colour mail flags (instead of event IDs) and then sends one using the AbbyHair token
Then all your HasSeenEvent checks would be HasFlag
It's a lot more conventional and flexible and also, maybe more importantly, your event version does not work if someone does not actually go to bed in the farmhouse
yeah ik
also conversation topics are technically the best option ig, but also, aaaaa not global
then again, ig the conversation topic could just be added for all players at day start anyway, technically making it global
and only get weird if not all players are always online
... or just make it host only
wait that doesn't mean non-hosts can get any custom dialogue
if I decide to do that that is
You can have CP check if the host has a specific mail flag
Then it's effectively global
You can also mark the trigger action as host only
so add the conversation topic for everyone, but only add the flag for the host?
If the trigger action itself is hostonly then only the host will get the CT anyway
since the AddConversationTopic command only works on the current player
If you're relying on CT dialogue though you can always split it into two trigger actions
One to set the CT (everyone), one to set the flags (host only)
yeah that would work
Or just leave it because if your When conditions are checking host anyway, it doesnt matter if anyone else gets the flags
I'll deal with all that after I shower though
feeling kinda gross, need to shave too
well, everyone else getting the flags is necassary to make them see custom dialogue if and when I add it
or conversation topics
or whatever
so host gets a flag (to make it global), everyone else gets a conversation topic (to get custom dialogue)
and I do want color specific conversation topics as well lol
hellooo making a mod that adds totems of all vanilla weather types, so far it works great but the TV channel report is incorrect when wind is triggered during during summer/winter, how can I edit the TV channel to fix this? specifically it falsely says that it'll be snowy
I could always just optionally edit the TV channel's image/strings when weather will be windy to show my own stuff hm..
sorry if I phrased that wrong, I am exhausted
seems like it's a hardcoded branch in TV.getWeatherForecast
now I wonder if SVE's own wind totem patches that function...
aaah okay
or you can patch the image/string yourself yeah
probably easier than harmony lol
oh for sure
hmm, would a normal when thing work though? considering it's something that prolly changes mid-day idk how frequently those get updated etc
WAIT
confused one sec
okay there we go
the weather doesnt change until the next day
true, wait- is there an if for future weather at all?
Anybody well versed in Alternative Textures? The wiki isn't telling me what I need to know.
My partner designed wallpapers at 96 x 96 as this was the dimensions in the Stardew Wiki. They won't fit properly in a 256 wide sheet and I don't even know whether AT handles wide wallpapers. Cutting them down to 16x48 will destroy the designs. The framework I found that handled wide Wallpapers is too far out of date.
(wiki images are blown up by 3x for visibility)
(you should only use the unpack as reference)
The weather doesn't change until the next day, but it's decided what it will be the day beforehand
mhm
(otherwise I don't know the answer to your question sorry)
You could possibly do something with BETAS's WEATHER_FOR_TOMORROW gsq with a mail flag?
I don't know if it'd happen in time for CP though
You could actually use BETAS Harmony for this I think
..oh?
... I don't remember the BETAS Harmony format
I have no clue about betas harmony so
Wind and snow were the same thing!
I'm surprised
ahhh that makes sense! the effects for summer/winter wind were already there
"Action": "EditData",
"Target": "Spiderbuttons.BETAS/HarmonyPatches",
"Entries": {
"WindTextPatch": {
"Id": "WindTextPatch",
"Target": {
"Type": "StardewValley.Objects.TV"
"Method": "getWeatherForecast",
},
"PatchType": "Postfix",
"ChangeResult": {
"Operation": "ASSIGN",
"Value": "Your custom forecast text here"
},
"Condition": "SEASON summer winter, Spiderbuttons.BETAS_WEATHER_FOR_TOMORROW Default Wind"
}
}
(dont mind me editing that 50 billion times as I make small corrections)
Yeah pretty much. I don't recommend it in good conscience.
...I'm confused, you'd just need to change those string in summer/winter right
and all the icons
You'd need to change it when you know the weather for tomorrow is Wind
but I don't know if CP would update before you'd be able to even know that
I mean changing TV.cs.13190 to be something seasonally appropriate during summer
yeah
then it's using 13180 or 13181
Why si it not already correct without any patches then
i am now lost
I mentioned patching since it's technically the most correct way to switch to a different string (like, say, 13189) without changing 13190
but we can just change 13190
But we could use BETAS Harmony
Which is just the same as what you just said is the technically most correct way
What is the standard dev practise when you know your mod is gonna crash the save if its removed , my mod stores custom entities inside fish tanks and on mod removal it is expected to crash the save
i can give the console commands to gracefully uninstall the mod and reinstalling the mod should recover the safe. But I wanted to ask in general do other mods which face this problem take any different approach?
Emphasis on could not should
New quote added by atravita as #7725 (https://discordapp.com/channels/137344473976799233/156109690059751424/1483927693950189669)
You either don't do that or you register with Spacecore so it can handle serializing and unserializing your entities
hmm are you putting a custom type in the save without spacecore?
Or you find someway to remove the custom entity before save and restore them after day start

oh i see, i didnt knew spacecore had something for that, ill check that out, thanks
all hail spacecore save serializer
Afaik, custom entities will crash you when sleeping even if you don't remove it, if not registered
Honest to God is wind actually different from snow now during winter
What is weather
What is weather in this crazy world
aahh makes sense
Why are u putting non Objects in the fish tank
I didnt explain it properly
the fishes itself are Objects with an extra values in mod data, specific tags i want for my mod
another problem which stacks on top of this is that the fish tanks itself are assets from my mod. So when the mod is removed, the fish tank is also gone
I am basically trying to figure out if i can make a mod which allows player to give a rare chance to catch a 'giant' fish which has its own special tnaks
Oh if they aren't custom types (as in class SpecialThingy :Object) then u shouldn't have this issue
However error fish tank furniture crashing update loop is indeed a known bug to be fixed in .16
oh
This happens even with mundane cp added tanks and regular ol fish
Helooooo everyonee!
You will have to warn users to remove all special tanks prior to uninstall
I've got a new mod I want to share with you guys
ok i guess thats the only way. Thanks for the help
I think u are not in need of spacecore save serializer in this case
maybe ill just remove the special tank idea, its not the core point of the mod
and attempt to put the fishes in normal tanks
Eh, nevermind then, I'll go somewhere else to show it
If u want i did actually make bigger fish mod
I know. I can smell it on you 
Fishiiies
is it live on nexus? id rather not make a redundant mod
Wow, that's a lot of code just for this!
Thankfully I dont use C# for modding
it..it..scares me
thanks for the refernce
https://www.nexusmods.com/stardewvalley/mods/42603 it is released but it's not a user facing mod
oh i see some transpiler code, its above my skill level for now
ill try to use it tho
29$ ...
thanks
That's just cus draw methods tend to be large tbh
And i prefer transpiler here over skipping prefix to avoid copying a ton of vanilla code
tbh I dont fault draw skippers especially if you're going to redo most of the flow totally not justifying to myself
Gravel or soggy
Look if it's good enough for AT then it's good enough for the rest of us /lh
Not right now
I eat gravel
Makes me super strong
(do not take my medical advice, side effects could be dangerous)
I think Google used to recommend that at one point (its summary thing)
at least when I asked, it recommended that
bread chat
I'm back, gonna work on doing trigger actions now :3
godspeed!
okay weather strings for TV does seem to update quick, at least every time a totem is used
I love tiled for that
uhhh
how do you add a custom shop tile
how do i
make a shop though
I did it
oh ok
is there a way I can patch the backwoods map to extend it to the left (in the negatives)? mod compat is already tossed through the window so that's not an issue and no vanilla events take place there (I think?), I would like to avoid patching the entire map and certainly want to avoid shipping the vanilla backwoods map itself. I tried using a negative X but it cried
iirc maps really dont play well with negatives
You're going to explode everything, have a warp off to the left to your separate map instead
Ye I was hoping I could shift the vanilla map over without including it but it looks like it may be an issue
It will be several issues
You'll break everything that depends on coordinates, which is most things
Ye that's already on the list of things to fix anyway, there are a lot of warps i'd have to overwrite anyway
Also all the events
is there events in the backwoods?
uhmmm how would one insert a GSQ into a 'when'? wanna make a patch conditional on what the next day's weather will be, and BETAS has a GSQ for that
And possibly the hard-coded sweet gem berry thing, if it's coordinate based
I don't remember if it is, lots of older stuff like that is janky
Oh BACKWOODS
yeah, abby's 14 heart is there!
The backwoods is the only map I would attempt to do it with XD
I need to rethink the idea then, damn
Abby's 14 heart and a bunch of custom heart events are there
Why not have a warp off to the left?
mod compat is already not an issue because of what it's for is inherently incompatible with a good 95% of mods so I'm not bothered by the custom events at all
You don't. Esca's Modding Plugins has a GSQ token, but by default, you don't.
aw crap
Not sure what the timing would be like on it anyway.
It's this whole area I wanted to put to the left to make it fit into an already existing space, while keeping surrounding maps rectangular so just moving the warp isn;t something I can do unfortunately and it's too small for a standalone map
There are some pretty small standalone maps in base game, it looks big enough to me
hmm, idk your goal but if it's to add a new area, you could forgo the path and just have the top of the path warp you to the location you want?
sve has a backwoods event and you will get bug reports if you go with your plan
SVE edits the backwoods extensively, and RSV puts a map patch there
I mean, I am purposely ignoring any sort of SVE/expansion related bug XD expansionless gameplay is expected, half out of choice and half out of the parent mod (?) this is for will certainly be incompatible with SVE and expansions
Anyway, I don't know if content patcher will even let you do that
I do think a warp would be your best bet
I guess I'll go with it being a seperate map, just feels a bit small, ahh well, ty for the help!
I mean, think about the size of the (pre1.6) bus stop map
There are plenty of small maps that don't feel weird
where are the spouse portraits located
one of the new furniture sheets
I could make it have part of the backwoods map inaccessible to make it fit onscreen without black bars
junimo furniture
tyy
That would work perfectly well, it's a classic video game illusion lol
thanks!!
the old reliable XD
just checking if anyone has ideas?
You need to use esca modding plugins
you already got an answer
what condition do you want?
oh wait I see it
if this is the thing we discussed before, as I mentioned you only need to patch for current season
ahhh okay gotcha (somehow my brain did not register 'it doesn't work unless you have this' as 'just use this and it'll work'
)
oh yeah, but summer wind uses the default sunny UI so I can't replace that one without a condition
i'll grab that framework then LOL
(as button mentioned it's also not guaranteed to work because of token reload timing)
(just something to keep in mind)

I'm having trouble with my custom map not loading, but the warp does. And it said location wan't found or couldn't be loaded
pls hell
!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.
use the link to put your code in there to share here so people can look at it
you shouldn't use CustomLocations anymore, it's deprecated
I believe the actual issue is that locations created via CustomLocations have Custom_ prepended to the name
but yeah you should migrate to Data/Locations
Hold the phone youre adding rowboat girlyman? 
how did you knoww
preferably with {{ModId}} in the location name to avoid collision
how do i move these down in the box?
i moved down the actual sprite in procreate but it didnt seem to do anything
how far did you move it down?
im pretty sure the game aligns the furniture based on like, what size you tell it to be
err like one pixel row lol
Are these paintings
yes
Then yeah u should be able to just move it down
Go to the junimo furniture sheet and turn on grids (16x16) for ref
one px lower seems too low to show much of a difference in the inventory menu ๐ค
oh wait not all of them are the same level
wait
(Custom_ is only required if you're not starting it with your <ModId>_)
Yes
Oh hey I found something cool https://www.nexusmods.com/stardewvalley/mods/43811
I might try this soon to get my feet wet
hrm are they technically items
you can use (F) for furnitures
question
if i make a new map, even small
do I require C#? or can I do this without C#
tyty
btw
do you know those events where meteroites fall down or the owl statue appears?
whats that called in the game? and is it possible with Content Patcher to add your own type of thing?
night events, i think
mmm okay
Can't do overnight events without the More Nightly Events framework
i delightfully just found out you can use furniture as weapon projectiles and its goddang hilarious shooting beds
hellooo is there a way to just alter one dialog line in an event without touching the rest of the event? making a joke mod and I don't wanna create compat issues
text operations? ;th
๐ค i think it can do that
oh what's that?
hi claude wizard bed
hello!
it should be on the content patcher docs
aah okay, thanks!
You can also just use Fields directly (i.e. instead of Entries)
Using the number of that field in the slash-delimited string as the key
get ready for some countin'
gotchaaaa (too tired to learn anything new rn so I'll prolly be back sometime tomorrow)
hi I wonder how to make an NPC schedule? like for them walking around? Do I have to measure each step in the game myself, or is there a tool to help with this?
!npc see schedules section of the 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!
thank youuuu
you don't measure the steps, but you do specify "leave (or arrive*) at this time and go to this X,Y position on this map"
* arrive can cause errors in edge cases so i recommend using it sparingly
well time to figure out how temporaryAnimatedSprite works
For events? I have a sort of "fill in the blanks" generator for it if you want to try that
Sure, wouldn't mind having that as a resource
Generator. It's very rough right now because I'm the only person who has used it haha
Neat yoink
I also just realised that I haven't given people instructions on how to make a copy so they have their own instead of just editing mine, whoops
Happy to receive feedback if anyone has any
okay so the joke mod I was working on was [SPOILERS don't you dare read this unless you're offering code help] ||REDACTED CAUSE I GOT HELP AND I DO NOT TURST Y'ALL||, I was just doing this my editing all individual lines, but could I just use a text operation for this?
No, you would still need to edit individual lines if you're not using C#
That's some dedication
You could use TextOperations but you'd still need one entry per line anyway
I had some fun too today
Is there any standard for what layers different things are on so I can correctly set sort tile Y on temporaryAnimatedSprite? For example just trying to test a basic event using 33 for that value had it behind the NPCs but 34 had it in front of them.
Oh, is it just that the Y tile of the sprite is their layer in general (and so two NPCs next to each other horizontally have equal value and will compete as I've observed before), but for TAS that can be overridden?
I just made the connection because the two NPCs are at Y 33 on the map
Do you mean this thing?
- Back - Terrain, water, and basic features (like permanent paths).
- Buildings - Placeholders for buildings (like the farmhouse). Any tiles placed on this layer will act like a wall unless the tile property has a "Passable" "T".
- Paths - Flooring, paths, grass, and debris (like stones, weeds, and stumps from the 'paths' tilesheet) which can be removed by the player.
- Front - Objects that are drawn on top of things behind them, like most trees. These objects will be drawn on top of the player if the player is North of them but behind the player if the player is south of them.
- AlwaysFront - Objects that are always drawn on top of other layers as well as the player. This is typically used for foreground effects like foliage cover
Not a map thing, an event sprite thing
The tile Y position to use in the layer depth calculation, which affects which sprite is drawn on top if two sprites overlap. The larger the number, the higher layer the sprite is on.
Hi guys, does anyone know where in Data the use of beach portrait/character textures happens? Or do I just mod it (adding a beach asset to someone who doesn't usually have one) by setting up an appearance under Data/Characters?
Is there a tutorial yall know of for making a mod that adds new fish/things catchable in a crab pot?
Oh im stupid sorry
Some advanced stuff
[[Modding:Fish_data]]
fish for you ^
Thank you!!
๐ค i think that would be in appearances
how do i convert a .txt file to a json file? :)
set it up so they use those sprites when they go to island
you can just rename the file extension to .json
As long as you have that setting on your pc!!
If you're on windows and have file extensions hidden, you need to enable those first otherwise you just end up with files called "content.json.txt"
Sometimes it doesn't help so you gotta click some
ahhh i see now, thank you!
Go to your file explorer > View > Show file extensions
Funnily enough, it's not in appearances the same way Winter is
The _Beach portrait is hardcoded because it's from before 1.6. So it's not in data anywhere.
Something to do there
ah aba beat me to mentioning what i was going to say XD
You can use the data though
But you can just add a new entry to appearances to make your own beach thing happen anyway
There is a field for it
the older characters don't use appearances for beach but your-
Jinx. SODA
Good times when villagers didn't wear winter clothes
Great that's what I was suspecting, thanks Aba and Forsy
im trying to make a content pack for custom NPC portraits where I add a new frame type following the OG author's tutorial, but my content pack deletes all of the original mod frames... is there anyone who could possibily give me a hand haha?
What framework is it?
guys I made a mod to replace my southern room but the old one is still showing up... do i have to demolish it and build again?
Are you talking about the vanilla southern room?
yep
You can get robin to get rid of that
yeah I know, but I wanted my map to overwrite it
i thought I needed to get it built beforehand but maybe not?
oh ok
content patcher
I got the original southern room map and did the slightest alterations + added a custom tilesheet over it. Smapi apparently had no issues loading it but it's not showing up. - ok figured it out
okay well i got the og frames back but my custom one doesnt show </3
Okay let me rephrase. Which mod is the mod allowing you to add new frame types?
Custom NPC Portraits
Can you link to it please?
Wow, I totally misunderstood what you were asking about. I thought you meant portraits as in the picture you see when you talk to an NPC.
oh haha, my bad, i should've explained better
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.
Is that your entire file? It's missing closing brackets
Also, that Format field is way too low, it should be 2.8.0 at least.
oh i see
i also have a smapi error log saying something about it, if that would help?
Neither thing should result in the original mod's frames from being deleted though. They'd just make your mod not work.
Yes, sharing a log could help, thanks
i got the frames back, that was an error on my part from copying something :) my own frame just doesnt' work
sure, my bad
Oops no that's my bad, you did
https://smapi.io/log/15530da9ac1746fdbedba2bd2d6bfa06 here ya go, appreciate the help, i'm hopeless at this
Log Info: SMAPI 4.5.2 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 231 C# mods and 504 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
I just missed seeing your message about it, sorry!
no problem! 
Okay here's your error message:
Newtonsoft.Json.JsonReaderException: Can't parse JSON file at D:\SteamLibrary\steamapps\common\Stardew Valley\Mods\Mods\[CP] PortraitsCustom\manifest.json. This doesn't seem to be valid JSON.```
So the problem is that you have a broken manifest.json
is there a way i can go about fixing that? sorry to trouble you :')
Yup, share your manifest the same way you did your content.json (with the validator website) and I will point out the error
You put your Dependencies field outside the rest of the manifest
You need to add a comma to the end of line 10 and then delete the { on line 11
ahhh i see, thank you!
How would you write the following query?
RANDOM <config value>
"Condition": "RANDOM {{CT_RandomValue}}" if your config option is named CT_RandomValue
Thanks!
if I want to add an item and special dialogue based on friendship level during an event that happens at a specific time, should I just make two separate events for it, or is there a better way?
finisjhed making my weird animal time to content patch it into the game
Are you giving the player an item using the dialogue or an event command?
Uh, I haven't written the event yet, but I'm thinking event command?
I'm thinking I may add more than just one line about the gift, because it's significant
but I'm trying to figure out the technical aspects before writing it
I've got an idea right now, not a script
Then put the event commands for the lower friendship level into a dynamic token with no When condition and the event commands for the higher friendship level into the dynamic token with a When check for friendship. Then put the dynamic token itself into the event script.
Ok, so would each go into a separate version of the event then?
Like one event for higher hearts and the other for lower?
Oh, so would I be able to manage potentially extra lines added for the higher heart one then?
Yes just have a different i18n key for that
Or multiple speak commands with multiple i18n keys
oh, I haven't even i18n'd my first event yet (it's still unfinished). I'm still able to do that before transferring them to the i18n right?
Yes, though you will need to convert the text in the dynamic tokens to i18n manually rather than using the i18n converter
Here is a cut down example from Monster Sanctuary (I added extra commands into the DT to show you how):
"DynamicTokens": [
{
"Name": "DT_ArrangementMove",
"Value": "advancedMove Krobus false 0 7 14 0 0 -1 2 50"
},
{
"Name": "DT_ArrangementMove",
"Value": "advancedMove Krobus false 0 8 14 0 0 -2 2 50/jump farmer/emote farmer 0",
"When": {
"HasMod": "LemurKat.CleanerSewer.CP"
}
},
],
"Changes": [
{
"LogName": "Event!",
"Action": "EditData",
"Target": "Data/Events/Sewer",
"Entries": {
"{{ModId}}_Arrangement/Friendship Krobus 1000/LocalMail {{ModId}}_KrobusLetter4": "
spirits_eve/
-100 -100/
Krobus 17 13 0 Wizard 16 14 0 farmer -100 -100 2/
skippable/
// bla bla bla event
{{DT_ArrangementMove}}/ -- This line here is the dynamic token, it will be replaced with the event commands from the DynamicTokens section/
// bla bla bla event
pause 500/
end"
}
},
]
Oh thanks ๐ Ok, I'll look through this and see if I can understand how to apply what shown
Oh, interesting!
Yeah, I would have struggled (more) with that if you hadn't shown the example
So, even multiple dialogue lines could be used this way. Basically, I could just change out a chunk of the event if the player is at a higher heart level!
I thiiink I can probably apply this
Thank you!!
I haven't needed to do something like that yet but good to keep in mind
Thanks (again) for taking the time to put this together Aba, I wasn't getting it before this
anyone knows why this only shows "you"?? question null #You can't!?/
I'm doing a quick question with one answer
Does it not need (break)?
It really confused me the first time I worked with quick question bcos i thought it meant like a line break or smth cuz im a complete novice
Me forgetting false in every advancedmove
reminder that you can use the vanilla events as references by searching the unpacked content folder for keywords such as event commands
uh oh, (break) is in the dialogue now 
Yes, I've definitely used them as a reference!
if using vscode, open a new window and use Ctrl+K Ctrl+O to open the unpacked folder as a group, then Ctrl+Shift+F to search all files
no such hotkey in sublime, notepad++, etc but the option is still there under File
not even an alt key for it in sublime smh
oh i mean to open folder, not to search
i miswrote, my bad ๐โโ๏ธ
yeah, my problem with opening folders is that it closes everything I have open before, and the same happens when I close the folder again. Aba addressed that question when I asked at one point, but I didn't have the energy to test it there and then ask follow up questions when it still wasn't working as intended most of the time. I am still not in a position to go down that rabbit hole right now unfortunately 
hence why i said to open in a new window hahah
opening a folder is the same in tiled, vscode, sublime, etc, where it's pretty much setting it up as the active project
Ctrl+Shift+N in Sublime, VSCode, etc
Question about wild trees...I don't want the qualified SeedItemID to drop when the tree is shaken, like never ever. But if I set the SeedOnShakeChance to 0, then nothing will drop when the tree is shaken.
How do I exclude the SeedItemId from dropping?
or file > new window, of course
I can do new windows, but I don't think I've done that 
I'll have to try
thanks
It's amazing I still haven't finished my intro event after all this time 
The end portion of it has definitely been harder to write
You should have a corresponding ObjectData layer in Tiled that has an action to open the shop
thats a file
But yes, to pillow's point, the shop data is a different json
oh
er
is there like a template cuz there doesnt seem to be any
where am i supposed to add it? in my NPCs content json or an entirely different json?
https://stardewvalleywiki.com/Modding:Shops Normally people add a separate shops.json
i have the wiki with me its just idk if theres a base i can work off of
Any mod that adds a shop
ah
there's a lot of things you can technically put in the content json that you probably shouldn't! like dialogue
Yes - which is why I said normally ๐
I'm glad that's not normal!
'a lot of things' is everything
much like how in c# you can just pile everything into ModEntry : Mod in ModEntry.cs, you can just fill up your content.json. but probably don't
Some people do put everything they possibly can into a content.json
brings me back to the days when I downloaded a 1.5 npc for reference ๐
That was scary
so its like
LogName: "Custom Manny Shop"
Action: EditData
Target: Data/{{ModId}}_MannyShop
?
wouldnt it make sense to be Load considering this is completely new
There isn't a way to make it so the exterior of a Farm Building has a light that turns on and off (so a day/night tile), is there?
(edited to be more specific that I mean a building from Data/Buildings and not a map tile)
I wish DTs could be offloaded to another json
no, because shop data isn't a texture. Your target would be "Data/Shops"
and then Entries with the stuff i want?
yes
The entries would be the shop data as shown on the wiki
Starting with the shop you're adding - e.g. {{ModID}}_shopname
so itd be something like this for starters
ignore the logname
i forgot to change that base
And target
That's the right start

There are a number of ways you can do that. I'd suggest looking at a mod that adds a shop to see how they do it.
(Just a quick heads up that I need this to work in C#, not content patcher)
Hey hey, just looking to see if someone knows a way to log a player characters real time location.
yeeeeeeeeeeah i cant find much from looking at others codes
check out the new tutorial mod
it adds a pie with recipe 
Mmm, modder's pie, just like mother used to make!
i dunno but shop stuf fis like this https://github.com/Mushymato/TrinketTinker/blob/main/[FullMod]/[CP] Sinister Servants/data/angry_roger_shop.json#L71
damn opening a shop is more complicated than i thought
It's Si, maker of the delicious modder's pie!
is this even needed at the top?
Hi, Si
It's got an entry on how to add items to an existing shop, but more than that, it explains how to interpret resources like the modding wiki and the unpacked content folder, so it might still help you with your mod :)
yes absolutely
oh
its what makes a file valid for content patcher include
Hi!
i see
Chu! Do you know much about wild trees? #making-mods-general message
I like how you made a gimmick to go with your tutorial. It helps it have an more of an identity, imo!
Honestly I just woke up with the idea
I blame chu
I could have spent yesterday working on my mod but nooooo
You had to cook instead!
The tutorial suggestion gnawed its way into my brain and refused to leave till I gave it form
(well, bake, technically)
what did u put in SeedDropItems?
The items I want to drop (in their respective seasons), and only those
this one, right?
Well according to the game I cooked the pie rather than baked it so
lolol
are you using ShakeItems or SeedDropItems
SeedDropItems
Yep, though that section is going to reference earlier parts of the tutorial just so you're aware
right
yeah I think you want the former
Ahha
ah selph got it ty
I'll definitely have to read through it when I get the time
yea use the item query's chance to control how often
And, guys, if you find the pie helpful and delicious, download the file so you can endorse it!
Got it, thank you!
I honestly haven't even been thinking of endorsements lol
It's good to not get caught up in statics, but it's nice to see em' sometimes
ok so your mod targets gus's saloon
what am i supposed to target if its a completely custom shop
You target the custom shop. But since you're making the shop, you can also just fill out the fields inside the custom shop's entry directly without a separate patch. You can look at vanilla shop entries in the unpacked content folder to see what they look like, and the wiki tells you what type of data each field is looking for
does null just mean
nothing
Depends on the context, but generally yes. If a modding field asks for it, it's probably telling you to put the word 'null' there to indicate nothingness
you can usually just not set a field if you don't need to
the unpack lists out every field by default, even unset ones
so it would be something like
actually why am i even adding these if theyre all null
For those fields that are null, check the wiki. If it says they're optional, as Selph said you can leave them out
Owner must be crucial then
some fields also have default values if unset (see the PriceModifiersMode field in the screenshot). if you dont need to change them from the default you can also not set them
It's actually not unless you want to have a shopkeeper or open/close times (or a few other things that require owners)!
In that case, yeah you'll probably need an owners field
im looking at a patch example rn
why is the owners name Any?
oh wait im stupid 
am i supposed to put the modid of my NPC or the internal name
If you check the Names field under Owners in the shops modding wiki it explains it
mmmmmm maybe i should make the shop layout first instead of locking it behind an owner who doesnt have a schedule
lets ignore it for now
Hi! Good afternoon! i just want to ask how I can add a door warp to my location because I'm not getting the interact cursor at all and nothing happens when I try to click it
did you check to add a json for that warp
you have to add both a json and a map property
yes as far as i remember i did add one
oh wait
keep in mind lockerdoorwarp is ONLY for when your exterior door should be locked from, lets say, 9 AM to 4 PM
its an npc house so
ok so the shop should look like this?
Curly bracket rather than square right after the modid_bakeryshop, otherwise yeah, you're on the right track
it can be easier to tell when your brackets are matching when you have proper indentation and formatting
Visual Studio Code or Visual Studio Codium recommended over Notepad++, it will scream at you when there's errored formatting and you can right click and auto format the document
there is a checking thing in notepad++ i think but u gotta press button
plugins>JSON viewer>format JSON
https://smapi.io/json/content-patcher/cab0f73ba1224bcbb1b3fcd512ff5e99
I can't seem to get my shears to let me harvest from my Kodama Sheep, anyone avail to look and help me fiugre out what I did wrong D:
I'm a bit stumped because this looks right
๐
Does it work if you yeet deluxe produce? that's the only thing I see different from sheeps
lemme try
nope
wait maybe im just dumb hold on
this may be user error because i cant seem to shear my adult sheep either ๐
ITS CAUS EMY INV WAS FULL
im dumb im sorry
=-= my stardew stopped being abele to open now cursed sheep creature
Does somebody have the Haley portrait sheet with a transparent background?
Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!
I know, but I canโt get to my pc rn
Thank you I appreciate it
Also game wise, does anybody know how to see which portraits are used in what situations?

I dont wanna have to go to modded tech support
*packs my little stick bundle and wanders off towards modded tech support
@tame burrow Timeout has been removed. You'll be able to do link once you reach Farmer level 
Thank you!! I got put in jail 
Read this wiki page! https://stardewvalleywiki.com/Modding:Dialogue#Portrait_commands
๐
man i cant even see modded tech support i havent used it that often ๐ฉ
I have it followed and everything
i only see server suggestions and common bug solutions
got it
@royal stump So, these folks are playing multiplayer, and they have a bit of a slime infestation issue. I suspect this may be in part because the slimes are also breeding. Anyhow, here is the information from my server: Hi there, quick question? Is this normal? Am playing multi-player with my spouse and a friend, we also play with the It's Stardew Time mod to take it slow and more casual since my spouse has never played before. They keep multiplying... is there anything we can do?
Are we able to help them in any way? The clock is showing every minute, instead of every 10 minutes, which is likely compounding the issue. (Even if there is no way to help them, it's quite amusing!).

Short answer, probably not. I'd have to see the whole log to even guess well, though.
I guess It's Stardew Time might be duplicating SMAPI's start of day or time change events, which would cause a lot of mod compat issues, e.g. FTM possibly respawning things repeatedly. Breeding probably isn't the issue, though, because FTM disables it on all slimes it creates, so it'd have to at least be kicked off by vanilla slimes. 
omg 
poor first time player of a spouse HAHA just getting mauled by slimes
Luckily it's probably confined to one map
If they delete the ftm folder would that remove the slimes?
Ill add the ftm data does limit it to 10 spawns a day. If played normally!
Removing the pack spawning them should prevent them reappearing, iirc
debug killnpc GreenSlime in the console might also work? I haven't checked whether that works on monsters
(but it'd probably recur if the pack spawns more)
looking at the code, I think debug killnpc "Green Slime" would work for that, though it'd affect locations like the woods and slime hutches
Thanks might be safest for them to remove the farm type manager file and just spawn in anything they meed from it.
Is there a straightforward way to change an NPC's schedule after an event just for the rest of that day?
I see there's a MAIL <letter ID> command that can determine a schedule but I imagine that's only checked at the start of the day
straightforward? no. in fact i advise against it
(schedules are fucky, since they are fully plotted out ahead of time by the NPC pathfinding code, and i think maybe some portion of it is checked or run at the end of the previous day)
fair enough
I donโt think it can โchangeโ for the rest of the day unless the event is the first thing the person sees
anything is possible with determined application of C# but here be dragons
And then you can do some fuckery to have that schedule change for that day
What's the intentions of schedule change?
of course, though I'm not willing to go that far just yet
Right, was going to address that next. I want to effectively have two NPCs disappear for the rest of the day after seeing an event and figured locking them inside a building that you can no longer enter (thus my previous comment about locking a door after an event as well) would result in that
thatโs actually way easier than changing the schedule lmao
set them invisible for the rest of the day
oh just turn them invisible yeah, simple as
I mean the schedule change is something else I wanted to do long term, just not right now
changing an npc's schedule: eldritch horrors beyond human comprehension
banish an npc temporarily to the shadow realm: easy, there's a dedicated field on npc for it lol
good to know
I saw the invisible part but hadn't tested it yet, part of the wording on the wiki threw me off
end invisible on the event data page has "(cannot be interacted with until the next day)." which for some reason read to me that they'd still be around and doing things but you just couldn't talk to them or give them gifts
technically true! they are still there but fully invisible and not interactable
npc schedules have confused me so many times when trying to work with them lol
this is also how elliott's book tour works. he's actually in your house the whole time, just on the ethereal plane
thanks, figured it could have been an XY problem but was still curious about the boundaries of what can be done with content patcher
I still have mucking about with schedules to do regardless, just not that dynamic
are npc schedules for the current day youโre playing loaded based on the day before or something? i had an issue with npcs walking through a passive festival tent, and i just added โNoPathโ as a tile property for the area the day before to fix it, but i assume thereโs a better way to do it
yes, that's why when you install a new NPC mid save they just lay in bed (EDIT: see below)
that makes sense
That's not actually it
Schedules are calculated day of
Passive festivals may be after
Npc spawning is not done until after schedules are calculated
The exact order of what happens when is fussy
ah that makes sense
I even debugged a custom schedule some time ago without needing to sleep how did I forget
Alright, fam, I'm going crazy.
How do you add vanilla spouse-specific dialogue to an event that also allows for generic dialogue for modded spouses? (I want to have one event with different dialogues for the vanilla characters.)
In the past, I used {{SpouseName}} as a dynamic token set up as "_Sebastian" when married to Sebastian, for example, and "" when married to a non-vanilla spouse. When tested, that dialogue only shows the generic dialogue from the i18n file.
I don't want to have to add an additional version of every event that needs different dialogue bc of Elliott lol
hmm your approach should work; you can post what you have so others can see if there are any issues
okay! I'll set it up again and send it over
also by "event" do you mean festival, because several of them have bizarre specific rules
in particular i am thinking of the flower dance, which is hardcoded not to check the _spouse dialogue keys for unknowable reasons
Nope, not a festival, just a cutscene
what do you mean by fallback keys?
CP's i18n token has a |defaultKey= parameter which lets you name a backup key to use if the one you asked for isn't found (double-check the name though, i'm shooting from the hip)
Okay, so the example for default keys is:
"{{i18n: missing-key |defaultKeys=missing-key-2, valid-key}}"
For my code, I think it would be:{{i18n:339660008_7_{{Spouse}}|defaultKeys=339660008_7_{{Spouse}}, 339660008_7}}}}
where 339660008_7 is the default dialogue?
asking because I've never made a token this long lol
I've always wondered what's the use case for default keys... since I can't think of a situation where something is missing intentionally 
It makes sense for my situation with modded spouses, since I'm only writing dialogue for vanilla ones. so 339660008_7_Sophia doesn't exist
I guess I'm a little confused as to how "missing-key" differs from "missing-key-2" here
Ah, I guess it could be an alternative to conditions/tokens
yeah, since my stupid dynamic token isn't working ๐
I'll see if I need to update anything on my end
my read of that is they're just two different keys and for this particular example they're both invalid, so it's valid-key that gets used because defaultKeys is a list that gets checked in order
but that's just a guess, I haven't actually used it
if you are constructing the key using tokens, then they may evaluate to a missing key
oof, SMAPI is not liking my code.
I've already written out a second event for modded spouses. :/ I'll just use that for now and try to update it in a later version
i need... a statician... stat. or someone with a calculator. I'm using a conditional load for daily dialogue. Query a number range, return 1, change the daily dialogue. To randomize each day to have each of the 7 possible results, i have to make 7 edit data actions. Naturally, each one overwrites the previous... So it's not truly a 1/7 odds, but I don't know how to calculate it to get the odds as close to even as possible. Which is something that a player will never notice but I will
not optimal??
Okay, I just think there's a better way to do it LOL
tell me (pls btw :3)
There is the ||
yeah i got an error LOL
anyway: "{{i18n:MV.Municipal.Dialogue.Daily.{{Random:{{Range: 1, 16}}}}}}"
This randomizes between MV.Municipal.Dialogue.Daily.1 - MV.Municipal.Dialogue.Daily.16
in the i18n
I wanted to test a mod but when loading the save I usually use I get thrown back to the title menu and I am not really sure what exactly the error report is trying to tell me?
full log: https://smapi.io/log/9c602cb78e7e40a1aad6366e311122a1?Levels=trace~debug~info~warn~error~alert~critical&Sections=ModUpdateList&Page=2&PerPage=1000
Log Info: SMAPI 4.5.1 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26100.0), with 29 C# mods and 21 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
One of your map properties is broken
If it's on loading your save, I would check the farm and farmhouse maps first
(most likely the farmhouse)
Common issues are things like invalid characters in the map property strings
my mod isn't touching those maps though 
Did the save you are loading use a different farm or farmhouse mod than what you currently have running?
(this is why I usually test on a minimal save when developing)
I will go through my custom maps tomorrow then and check which of the map properties may or may not be broken, thanks for translating this error message to me!
no, I haven't changed the farm at all (it's a save dedicated to testing this specific mod)
Did your mod list change?
"Changes":
[
{
"LogName": "Open Bakery Shop",
"Action": "EditData",
"Target": "Data/Shop",
"Entries": { "{{ModId}}_BakeryShop": {
"Items": [
{
"ItemId": "[O]221",
"Price": 250
},
],
},
},
},
],
]```
what did i fuck up
If u indent it probably it'll probably become obvious
first bracket needs to be curly, no?
does it? orrrr
oh ok
hooray thanks
now to actually get the shop to load ingame via a tiledata in Tiled....
Hm
also qualified item ids use parentheses not brackets
ie. (O)221
im guessing its Action > shop {{ModId}}_BakeryShop?
[[Modding:Maps]]
See the tile actions section
Wait I kinda forgot do paths layer light tiles work everywhere as intended?
I kinda remember manually typing their type and coords or something
thats only if you dont want light type 4 afaik
Oh I see
very specific dialogue change :3
let me guess, Caroline? 
yeah should be Caroline
I autocompleted that target and didn't notice the mistake lmao
the fact caroline is saying that with GREEN HAIR
ikr
hypocrite
gonna give her custom dialogue when Abby does green hair too
o shit i accidentally helped? nice 
yeah you did lol
Is Abigail the only one that's explicitly mentioned as having her hair dyed?
Going by a quick search Emily has this in her marriage dialogue:
"Neutral_0": "I hope you'll still like me when I grow old and my hair turns to a dull, faded steel.",
anyway, not doing Pierre dialogue lol
might do Sam and Seb dialogue
Maybe Emily for specifically blue
Yeah I'm not interpreting it as the blue being dyed, that can fit
ok, edited Abby's fall Sunday dialogue to replace the color response options if they happen to match Abby's current hair color
replaces bubblegum pink with neon green if she has pink hair already, black or blonde with brown if she has either color
"Good_3": "I can't even remember the last time I dyed my hair... I swear, it never fades from this color...",
guess one of her marriage dialogues won't apply anymore
question, i have a really simple custom recipes mod for crafting right, am i able to add to that to be able to add a custom input and output for a furnace use? if not what do i need and how would i set that up?
[[Modding:Machines]]
you can add custom furnace recipes (make sure to use TargetField to insert a rule instead of overwriting everything)
๐ค ๐โโ๏ธ ๐โโ๏ธ
๐งโโ๏ธ I have an easier time understanding looking at straight up code idk what im reading bro ;-;
I've also been thinking of making a mod that adds NPCs of characters from a book I rly like
have you checked the tutorial I linked; it's much gentler than the reference page on the wiki
pinging you just in case you missed the message: #making-mods-general message
Looking at others people mods code is super useful for better understanding
So find a mod similar to your ideas and watch how they do it
๐ค ๐โโ๏ธ I kinda understand what it's saying but the most important part of needing to know what to call on to add to the vanilla furnace, i dont see it referencing so i'm lost ๐
!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!
that's the "modify an existing machine" section and yes unpack
Do u have this done yet
unpack also got mentioned in that section so pls read through it
I should remove the "this is optional" notice actually
"make sure to unpack the files. this is mandatory; if you don't do this your computer explodes"
so then (BC)13 is furnace ๐ค ๐โโ๏ธ
further question, would i add it as a { contents }, before the { "Action ...? or elsewhere?
you want to add it as a separate block in the Changes list
[ { /* crafting recipe stuff */ }, { /* machine recipe stuff */ } ]
also you should update your Format to the latest major Content Patcher version
what would that happen to be :3
๐โโ๏ธ okok
2.8.0
2.9.0? 
Yes
But android players will come bother u
I think 2.1.0 is the latest cp version with notable migrations
(CP 2.9.0 is not compatible with Android bc Android SMAPI does not yet have the new EditImage patch mode Mask)
๐ค it's a custom mod for me, they wont ever access it dw, some 600 recipies to my own standards for HxW furniture so decorating feels less lifeless
600 
yeeeap
oh wait
weird formatting, there's a few more
vs code search and replace a lot helped with most of it, deciding all the materials took forever though
hell yea, i wanted more coal in one go ๐ฟ
the furnace always take 1 coal per recipe, that can't be changed
(not without changing it for every other recipe)
oh, no, the recipe is more wood for more coal
Isn't there a cooler furnace
than the kiln
Oh
i like the furnace more so im favoring it in my lil recipe squabble
hey im looking for anyone that has experience with modding custom player animations, any help would be much appriciated!!
Custom player animations is the path of pain I think
lol i'm starting to realize that
Huh
Wasnt aware that was a thing we could do. I guess its a C# type of mod youre making? Havent seen any mods like that
Have you unpacked your files?
Anything is possible with C# (and this would require C#) but I honestly have no idea how one would go about it because people rarely ever do
yeah the funcionality would be through C# i guess, i'm not the most experienced modder tho
Just looking at the Farmer spritesheet is enough to persuade people against it usually
lol true, ive been trying for days so i figured id see if anyone here has even accomplished it before
Tbh usually you can chain together existing frames
compat might be a nightmare, people love their body replacement and sleeve mods
that being said if youre really determined compat might not factor in that much for you
(assuming you wanted to add new sprites that is)
@amber pelican Drug references of any kind are not permitted in this server.
You can still ask, just dummy out the context
Correct, as long as no rule breaking content is seen or written, you're still allowed to ask for help with the technicalities
(But be prepared for few people if any to have the knowledge in this particular area)
is there a randomizer mod for 1.6?
You wanna ask in #modded-stardew
No worries!
i just saw mods-general so
Hey guys. Is there a way to make a specific version of a mod as a dependency?
like specific and not minimum version?
dialogue specific to blue hair... I'm not sure if I'm actually funny tbh
no, smapi doesn't support maximum version or negative dependencies
Happy to announce that Dessert Animals has received an update! Now with more fish, Gingerbread Goats, and Banana Pudding Ostriches ๐ https://www.nexusmods.com/stardewvalley/mods/43140
Question, hoping someone can point me in some direction. I have custom npc, custom outdoor and indoor maps. My npc works perfect outdoors (talks, gifts, schedule) but indoors they aren't "clickable". Their schedule/pathfinding works from the inside (house) to outside (town). I'm about to remake my indoor map, but figured I'd ask first incase I'm missing some parameter or something.
hey guys may i see what schedule dialogue looked like from your npcs
mine always not working ๐
can you send your schedule dialogue then?
!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.
you can share it with this
mine is
load Strings/schedule
and
NPCname_Day_Time: "dialogue"
i have deleted it but it looked like this
on content json
Action: "Load"
Target: "Strings/schedules"
Fromfile: "assets/scheduledialogue.json
and
}
NPCname_Day_Time: "dialogue here"
{
its not working
guys pls help ๐
uh what r u using to guide u
usually chatgpt sometimes the wiki
!chatgptcode
We don't recommend using generative AI (such as ChatGPT, Copilot, Claude, Grok, etc.) to write mods for Stardew Valley. There are a few reasons.
- AI-generated content is not allowed to be posted in the server. If you need help with your code, you won't be able to post it.
- Large Language Models aren't trained on enough Stardew-specific information to give reliable, accurate output. They also have no concept of what they don't know, and so cannot tell if they're incorrect. In short, they don't know if they're hallucinating a solution that simply feels like it makes sense or not.
This holds true for both SMAPI/C# mods, and mods for frameworks such as Content Patcher.
There's no shame in being new to Stardew modding, and you won't be talked down to for not knowing what you're doing. We strongly recommend consulting with other mod authors in the appropriate channels as a first step if you're completely stuck at step one.
i just need the schedule dialogue guide the wiki is kinda outdated ๐ญ
You are going to get concrete advice from the people here, regardless of your skill level in modding, than from a model that hallucinates
how is the wiki outdated
there's dialogue and there's schedule strings
which one are you referring to
i tried this but it didnt work too from the wiki
1300 Town 47 87 0 "Strings\schedules\Abigail:marriage_Mon.001"
The official wiki is kept up to date. The modding wiki may or may not have some parts that have been overlooked.
hiya! i'm trying to verify some concession reactions. is there any mod that stocks all concessions in the theatre?
also would like help understanding the "scoring" described here:
It might help to temporarily edit the NPC's schedule so they appear in a different indoor location, and test a new save with only the minimum required mods (your mod + Content Patcher, and optionally the bundled SMAPI ones). I'm not aware of any ways a map could cause interaction issues like that offhand, aside from using custom C# code. 
Yeah, I think I'll give that a shot
I'm not aware of any, though it'd probably be a fairly quick CP mod to edit its shop entry in Data/Shops and make it stock more.
(wow this took longer than I thought
)
The scoring seems to use these rules, from highest to lowest priority:
- if the entry with the NPC's name in
Data/ConcessionTastesspecifically names the item in the love/like/dislike list, it'll use that
e.g."LovedTags": ["Black Licorice"]means they love black licorice - if the item is in one of the "universal" entry lists (the one with
"Name": "*") , they'll use that - if the item has no flavor tags for some reason, it's just "liked" by everyone
- if it does have flavor tags, the first tag that the NPC has an opinion about will be used
e.g. if the NPC has"DislikedTags": ["Candy"],and that's the item's first relevant tag, they'll dislike it - if NPC has no opinion about the item or any tags, it'll compare the tags to the universal entry
e.g. people dislike "Joja" items if none of the above applies - if NONE of the above happens somehow, the item is just "liked"
And with all that said and done, it's +50/+25/+0 friendship as the wiki mentions.
I'm not sure why Modding:Movie theater data mentions weighing the tags, but as far as I can tell, it just picks the first result in that order.
to slightly tldr that, NPC name prefs > universal name prefs > items with no tags > NPC tag prefs > universal tag prefs
very helpful--and interesting! thank you for this ^^
Does anyone know if it's possible to add the smoke particle effect thing (literally just the smoke that billows from the chimney of the farmhouse or a cookout kit, but not the regular fire for some reason...) to a custom building? (It's more of a machine, but I think it technically counts as a building because Robin constructs it and it's called a building in the code)? I have a manchine that I'd like to have smoke billowing from when it's working, but after the modpocalypse it seems like at least for a while it wasn't possible anymore. Has it become possible as of late? I can't believe we'd just lose that functionality forever.
i finally figured it out, sorry guys i made a scene because of my stupidness ๐
You might be able to with MMAP's Temporary Animated Sprite stuff.
I'll check it out. Thanks for the tip.
edit all of the clothing to match
If they just swapped to the female body more or less, you might be able to reuse those clothes, but some have a pronounced boob line to them
Maybe there's an easier way someone knows, but to my knowledge, that kind of thing is very manual
should i worry about how to place the farmhouse and farmhand houses on specific points of the map to start before or after I finish my farm map im gonna work on
or does it auto do that
How would I go about editing them? Is there an external tool?
just unpack the files and edit in an image editor
!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!
Ohh ty o7
Thanks!
I rarely dabble with events.
But I need an event's name so that I can use it in a when condition.
I looked at Ridgeside Village's event.json
75160264?
Yep
Thanks!
So if I do
"When": {
"HasSeenEvent|contains=75160264": "false",
},
The edit will only happen when the event has not happened yet, right?
Oh, it's working now. Thanks!
Yeah. You can also just put it in the event preconditions of your event, something like !SeenEvent <the number>
(the exclamation mark reverses the condition)
Thank you! I'm not making an event atm but that is nice to know if I would try my hands at events soon.
Oh, yeah lol for some reason i had just assumed you were writing one
I need some sleep lol
It's past my bedtime
Which minerals are excluded from the mineralsFound counter?
G night!
ahhhh chairtiles also uses the tilesheet image filename as a user-facing globally-unique identifier.
woe
!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!
helloooo I'm going a little bit insane, i'm tryna replace the TV strings so that windy weather in summer shows up as windy and not snowy (as per default). my TV replacement thing works, but not the strings? here's my json: https://smapi.io/json/none/b141d7ea2cd3420082b109dfc09fca3b
i'm pretty sure the patch is being read, bc when I put an intentional keysmash in there, smapi does react to it
..hit enter too soon
ffs
there we go
Do you have to use OnTimeChange?
no clue
You don't actually have a When condition, so no you don't
Because nothing changes
I lied
It's at the top lol
wait I'm confused?
But neither of them are time-related so no, you don't need those OnTimeChange update rates
got it
I'm so used to looking for the When field at the bottom of patches that I missed seeing that yours were higher up
You should use patch summary and patch export to check if your patches are being read, by the way
-# (put my when conditions at the bottom
)
Are you asking how to do patch summaries?
claude how have you never done a patch summary before???
idk 
patch summary full <mod id>
thanks 
yoinking that too
And then to see if your changes are in the asset, it's patch export strings/stringsfromcsfiles
okayyy
I notice someone is using ascii like me ;)
yup! I need all my stuff to be organized exactly how my audhd brain needs
Okay so firstly are you sure that those strings even play in summer?
the winter ones? they do, for both wind and snow
afaik wind is the same thing as snow from spring-fall to the game code-
So in vanilla, it plays a line saying "It's going to snow all day. Make sure you bundle up, folks!" in the middle of summer?
when I use my totems to make it snowy or windy, yeah
for wind:
my custom TV edit works but not the strings 
So what is happening with the strings?
You said "it works with a keysmash". What does that mean?
oh I found an error in the patch summary!
when I make an intentional error in the file, smapi found it, so that ruled out the file not being included (totally haven't done that before hehhhh)
[X] | [ ] | [ ] | Early | Strings > Assets/Code/Strings.json > EditData Strings/StringsFromCSFiles #2 // invalid input arguments (i18n_String.WindyWinter.1, 2, 3), token I18n doesn't allow more than 1 argument.
huh, weird..
looks like I do have the correct amount of brackets
Oh yeah of course because you're not using the random token
Yes but range is just to make your list of random values easier to write
ohhh, should I just use random 1,2,3 then?
Range is nice but not needed. Random is necessary.
got itttt okay
You can keep the range if you want to
Woo!
also mandatory bullying to have a sleep schedule ๐
For future reference about OnTimeChange:
- It has no purpose unless your When condition is time based (not day, but time within a day)
- Just don't use it anyway, it's bad for performance and rarely worth it ^_^
got it!