#making-mods-general
1 messages · Page 322 of 1
Alright, so if I understood correctly, this SHOULD be the correct format? https://smapi.io/json/none/fad8ac46a783403982a1628017a4090c
Yes, but replace the part before the colon on line 12 with "Id"
Oh, I guess I misunderstood what you said earlier then. When I asked if that was correct, you said yes lol
No, that's my bad, I misunderstood what you were saying
now how to do that...
any idea if there's a non download version of the program or not really?
That makes a new error, saying I have two Ids, the other being the ID for roe. https://smapi.io/json/none/85da2ad4dc98409cbc1e6eb0e04b9990
@rich seal You leveled up to Cowpoke. You can now speak in our voice channels and share images in all channels!
Aw, I miss the green icon 😦
ok so im checking the font file and lord... this is gonna be fun ;w;
the ui is confusing me...
No errors are popping up, yet the patch isn't producing the intended Squid Roe. I fast forwarded a whole week, and all my other fish produced, but not the squid.
I'm trying to mod a craftable path floor with a custom light... I thought I'd use Furniture Framework because it supports custom lights while content patcher doesn't afaik
but I only just now realized paths don't act like furniture at all
now what?
Well if you want to use rugs, then MMAP can do that via furniture tile properties + tile property light
so? what settings are recommended to click for font settings?
Im sure furniture framework support such a thing too cus rugs r furniture
the problem is that it's not a rug 😅
the setting with 00000 latin
Perhaps i can allow paths to grant tile properties
it should be like those stone/wood pathways you place outside for 0.1 speed boost
hey? what do i need to click on the right hand side? do i need to select all of em?
I'll be real, you're in entirely uncharted territory here
At least as far as modding goes
I thought font settings the mod just let u use any ordinary ttf
Angelcode fonts are pretty common so you might find a guide on the xna forums or YouTube? But nobody has made an actual new font for stardew before
Font settings does let you use arbitrary fonts, but I assumed that wasn't what they wanted since they were asking in #making-mods-general
there's one mod Script Font that replaces the font_bold for dialogues and mail and stuff, and maybe other fonts too, unsure
wait this mod can use ttf..... ;-;
It doesn't replace the font file, though, just the texture
but that's a case of drawing over the png and fitting into the grid and etc
just ttff?
Yeah like ordinary true type font
i need to lie down ;-; i was nearly about to rip my hair out over this ;-;
Ik apple uses it for some funky futuristic font
so just drop it in? and it should show? or do i need to have it select from a file??
the stardew fonts are a land of contrasts. most of them use texture atlases (especially for other languages) but the english dialogue font is nearly monospaced and read from a strictly gridded .png with (i believe) a few small hardcoded offsets for certain letters
I will never stop being annoyed that the other languages have smaller number fonts
My shop menu looks ass in 中文 
i am this close to cryin ;-; cause i spent at least a few hours on dis..
the japanese fonts are so pretty and i don't care for the english dialogue font at all
the guides I linked did mention you can use ordinary font files 😅
Yeah I use script font
Yeah im also jelly of that
The jp font r pixelly
The chinese font is like
yee but still i wanted some cute lil fancy font ;-; cause i gotta be extra.
Equivalent of comic sans
Although it does have 2 fonts on offer for reasons
One of them is lesser evil
i remember there was some kind of outcry when the font was replaced so CA added the old one back in as a toggle
Yeah that was a whole thing
Although ppl were more angy about the translation changes
never assume a mod will be quick project.... that's how they get you ;w;

totally not me rn
what moment ever got yall feelin like this when it comes to modding?
mod makign i mean
Where you want to just plop down, give up, and cry? Me rn with trying to get squid to produce roe 😦
i feel that in my soul.
Me right now, trying to finish a comm while fighting the flu, and plan to use furniture framework isnt working out lol
pat pat
Definitely schedule testing. So, so, so tedious
im just gonna say mod making is basically black magic
let's be fr
or magic in general
Wasn't there a console command to test if a patch was being applied properly?
this is me when i come back to nightshade and the enormity of the task of finishing the long-promised update defeats me again
pat pat
The prospect of updating machine control panel was this and yeah it took longer than writing the mod the first time
also never ever assume a project will be quick and simple
Alright, patch export was incredibly helpful, thank you. Now I sort of see why what I want to do isn't working
definitely way easier to start that, even easier to quit
Blueberry have you considered delegating some tasks to your evil clone Cranberry
cause trust n believe it likely won't be quick and easy
remind me in 20 hours to port ScheduleDebugger to 1.6
ugh I was about to take a nap. but fine sinz163 I'll stay awake just for you (#6702471) (20h | <t:1748343667>)
my current problem is I have cool shit but procrastinate on doing proper releases for it and just keep things indefinately in the alpha/beta build phase
(see also: SpeedySolutions, schedule debugger and the actual debugger)
i'm a very absent parent 😌
simply far too busy hunting monsters
in the wilds right
hue hue
i'd play monster hunter.... but i kinda suck at the games.
(luckily we can just catch increasingly rare fish and decorate our houses with stuffed animals and huge chunks of meat)
yee
How it feels when hours of struggling finally pay off
Finally got squid, midnight squid, and coral to produce roe in a fish pond 🥲
Could someone help me. I messed up the order of my sprites, so a custom character isn't matching the directionals in the code. '3' has it face down instead of '2'. The reference sheet I used must not have been correct.
Woooo!
Bookmarking that page
Development is fun. Mod support is not.
!unpack Have you unpacked your game contents? Best to use vanilla images and data for reference where possible (with the wiki as support, though the wiki isn't always correct either).
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 was stupid, and had the walking animations in the correct order, but when I split the sprite sheet, I didn't have the swimming ones correct
so i'm poking away at another animal mod. am i understanding things correctly that i can use alternate purchase types to have totally different animals under the same store button, and then skins inside those to give them color variants?
Yeah
cool
The "totally different" thing is how chickens give different eggs
Skins only look different
yeah cuz they get their own data
if i was properly ambitious i'd make some kind of breeding thing but ehhhh effort
so [single shop button] -> several different similar animals -> (each animal getting a couple of skins)
now if i can just find an actual code example for skins lol
oh right i used them in my dinos mod
@gaunt orbit hello
i have question about mod HappyHomeDesigner
this code from InventoryCombine.InsertCombineCheck(...)
and code "if (TryCombine(ref slot, ref held, playSound))"
Is will insert like this?
left image: code il patcher
right image: src code + try figout how this work
In vanilla these are randomized 2 fold
that should be fine
Unfortunately i made opinionated choice against that in livestock bazaar 
People are also able to change which skin via AT
bazaar is great imo
i suggest it in my mod descs
bazaar also helped me find an i18n error lol
Hey yall. I'm a new modder trying to make a mod that does a MapEdit of a SVE map, but I'm finding difficulty referencing another mod with the target. Can this be done how I want it to be done?
that's in the right spot, but the code would look more like this
Item slot2 = slot;
Item held = toAddto;
if (TryCombine(ref slot2, ref held, playSound)){
actualInventory[slotNumber] = slot2;
return held;
}
(slot2 is called slot in the transpiler, but I named it something else in the code mockup because it uses a different local than the slot variable in the decompile.)
Not sure exactly what you're looking for but here's a snippet from my mod that edits a part of the map when the user has SVE { "Action": "EditMap", "Target": "Maps/Town", "FromFile": "assets/Locations/ghostwood_townpatch_sve.tmx", "ToArea": { "X": 61, "Y": 0, "Width": 9, "Height": 9 }, "When": { "HasMod |contains=FlashShifter.StardewValleyExpandedCP": "true", } },
Got two (hopfully) simple questions. First: Is there a way to create a "pool" of items where one of the items is randomly chosen as a gift? (This is for a pet)
Let's say I want to have Desert Artifacts in a pool, so you could either get a golden mask or a golden relic. Not both!
Second: Is there a way to give multiple different items at once? As in I could get one Spiceberry and a Grape when I interact with the pet once.
Im very curious to how a duck fits into the story you're writing.
I'm still in the rework mines... And I have a ton of work before reaching this feeling...
it looks like pet gift entries support item queries, so yes, if you use an item query, you will get one at random https://stardewvalleywiki.com/Modding:Pets#Gifts
(page also says QualifiedItemId/Stack is obsolete here)
pet gifts use generic item spawn fields
Wha- HOW DID I MISS THAT?
I've been scanning that page for a while now!
Well, that solves the randonly chosen item thing.
is there something like this example that's like "// wood, stone AND pizza"?
Im glad! I've been working on it sporadically when I have time and I hope eventually we can get it filled out
i don't know if you can have it return multiple distinct items, but i think you can return a stack of one item (e.g. 2 pizzas)
Hmm, could I make multiple draws from a pool?
Like have a bunch of desert artifacts and pull two times from those.
Could end up with duplicates, but that isn't too bad.
doesn't look like it, at least with pets:
Notes:
If ItemId or RandomItemId is set to an item query which returns multiple items, one item will be selected at random.
im sorry to ask but which section of the modding wiki or readme for content patcher includes how to make new recipes?
i keep reading but it confuzzles me ;-;
it's mainly cause the tutorial on the wiki seems to only apply to existing recipes
what's confusing about it? it describes what a recipe should look like, and you can insert your own following the format
Not sure if this is channel to get inputs for default values, but a few feedback would be amazing.
When breaking geodes in a game from blacksmith, would you prefer to break all geodes in a stack (extra item falls on ground) or only break the number of geodes based on empty inventory spaces?
I'm trying to get a feel to see what should the be default config value
Based on empty inventory space
wait then i can change the id right?
i feel dumb...
Thanks, I'll probably switch to that appreciate your input
is there a reindeer barn animal mod where you harvest their antlers like in real life? haha
#modded-stardew is a better place 
(and yes at least a couple)
@gaunt orbit Hello World
i have question, how this is work? and how can i test trigger this function
ohhh okay, now i am trying to get familiarized with these channels
how come all of the fruit tree fruit aren't used in vanilla....
i bet i can do it
anyone mind testing a mod when i get done?
might do a recipe mod
imma do 3 extra items
apples, apricots, bananas and mangoes do have recipes
Does anyone know whether passive festivals like the Night Market, trout derby, etc will trigger the DayEvent token?
i am asking my bf what recipes use those fruits in his culture! his birthday is coming up and i wanna make a mod in his honor
his family is mainly from putero rico and he and i went to school together :3
i do wanna stick with vanilla ingredients since i need it to be simple enough for me to make
no, you can use the regular day token since they don't change dates
Thanks!
im trying to add in a house for a new npc, but I want the house to be on a SVE map, in this case shearwater bridge. this isnt yielding the results I want it to, as the location is unchanged. I'm fairly certain im loading it after SVE, as I put the manifest that SVE is a dependency. The changes between 1.5->1.6 are making it hard to learn which tokens I need to use
learning is hard
i know i could google it but some recipes feel more for tourists than locals
Remove the tbin from Target?
i thought thats how I had it at first, but I'll try it again! ty
@manic shoal if it matters to you at all, those passive festivals can change dates. Data/PassiveFestivals is a thing. whether or not you care about the possibility of someone editing or extending them is up to you
I think for this particular mod I'm not concerned about it. But if there's a better way to check (with a content patcher mod) whether a passive festival is going on, then I'd probably use that.
tbh I thought about that but the possibility of someone making that mod is probably zero, not zero though yes
if you can use game state queries it has one for passive festivals
i recall at least One mod editing the desert festival, though i couldnt tell you which mod it was at this point
I don't know what it means to use game state queries yet, but I would be happy to learn. Is there a wiki page or something for it?
you cant use Game State Queries in a content patcher when condition, importantly
unless you use another dependency
Ah, then that won't work for this
like if whatever you're changing supports GSQs natively then use that instead
I'm making a mod that automatically changes outfits (from Fashion Sense) depending on season, weather, etc
welp, another case of me spreading misinfo 
I've got seasons and weather sorted, as well as basic festivals but then I remembered that passive festivals exist.
theres anotehr mod making it year round, too, even
and thats just from me searching for the desert festival specifically
is it possible to make an npc both romanceable and available as a roommate? im thinking 8+ hearts arent locked, but if you give them a bouquet at 8+ hearts you unlock the romantic path and if you reach 10 hearts without bouquet there's a cutscene where the npc suggest becoming roommates or something?
yeah the specific mod you're using doesnt seem to support GSQs unfortunately
I believe Sen does this
But you get a choice ingame platonic or romantic
Such is life shrug I'll give it a try using dates and hopefully that doesn't mess with automatically switching back to other outfits. Again. (That's been a problem I've had a few times, lol)
ohh okay
maybe i could add it as a config
Can you not have "#$b#" in the i18n for a quickquestion response, because # is a delimiter? I thought I had done it before but maybe I just hadn't properly tested, as I'm now seeing that it doesn't show the second part of the dialogue until talking to the npc after the event is over.
The way sen works is that he's initially not romancable but a certain mail flag set as part of his events makes him romancable in the data
The player is able to choose whether this flag is set
Puerto Rican Food ideas for mod
It does two things:
- if the held item and hovered item match a known combination it changes the hovered item to the combined result, and empties the held item
- if there is no held item and the hovered item is the result of a known combination, it sets the slot item to one of the parts and the held item to the other one
- if neither is true, return false and do nothing
If the transpiler and method both work as intended, plopping a catalogue on a furniture catalogue should produce a happy home catalogue. ("plopping" means doing the same thing you'd do to put bait on a fishing rod. On desktop that's right-click, not sure about android.)
i have a new thread!
i do need a bit of help since i want this to be a surprise for my bf
alas it was not the case, shearwater bridge is unchanged. not throwing any errors either 😦
oh okay thanks for the idea!
holy hell i didn't have an x coordinate, that'll do it
definitely gotta use cornucopia as a dependency
that's cool to use a crop mod as a dependency right?
?
is it why im not making my own crop mod?
or why make a crop mod if ya can use one as a dependency?
Yeah if u want to focus on the recipes using existing popular crop mod is a good idea
yee
hopefully i can finish a part of it before june 8th
that's when my bf's birthday is
what program are you using to do your coding?
Looks like Monaco of some sort
Edit: yep definitely vscode
btw? should desserts have lower edibility? is that typical in vanilla?
listen i be chompin on salads and gifting most deserts to npcs
salad has yet to fail me
do you guys know to make animals in a mod to not be purchasable in marnie's farm? i want to make an a chicken variety of mine to be like maybe a dinosaur egg to be found or like the blue chicken with heart events, or maybe even event related like what if a fairy dropped it or a witch changes the egg. would love to know how!
I'm not completely for certain, but you should be able to create it and just not add it to Marnie's Shop
So if you want it to be exclusively a thing to hatch, make the price -1
See golden chicken in vanilla
There's also a GSQ unlock condition if you want the animal to be sold after some event
Blue chicken is an alt purchase type that's gated behind seeing the event
What you cannot do in vanilla is to make another vendor sell livestock, for that you need either shop tile framework or livestock bazaar
unfortunately, i have the livestock bazaar mod already so all the variant for animals i make can be chosen at will
what is a gsq sorry if ignorant
i think this is a really cool idea actually, to make the animal event locked
anyone mind checking out some code im working on?
{
"Changes": [
{
"Action": "Load",
"Target": "Mods/{{ModId}}/objects",
"FromFile": "assets/objects.png"
},
{
"Action": "EditData",
"Target": "Data/Objects",
"Entries": {
"{{ModId}}_pastelillos_de_guayaba": {
"Name": "pastelillos de guayaba",
"DisplayName": "pastelillos de guayaba",
"Description": "A baked puff pastry that can have sweet or savory fillings, this recipe contains Guava Paste as it's filling.
Though they've originated from Cuba...they're rather popular in the Dominican Republic, Puerto Rico and even the United States of America. Nothing beats having the real thing though!",
"Type": "Basic",
"Category": -7,
"Price": 750,
"Texture": "Mods/{{ModId}}/objects",
"SpriteIndex": 0,
"Edibility": 35,
"IsDrink": false,
"Buffs": [
{
"Id": "{{ModId}}MatchaBuff",
"Duration": 360,
"IsDebuff": false,
"CustomAttributes": {
"MaxStamina": 30,
"Speed": 1
}
}
]
},
it's not complete as i have several recipes to go
Can you use the json parser please
!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!
Did you do this already
yep! but the only unpacked contents are assets/sprites, does it usually show content files as well?
You should have Data/FarmAnimals.json
Assuming you used the recommended stardewxnbhack method
Open it and take a look at "Blue Chicken"
What troubles do you have?
i still gotta finish the other recipes but im filling in the object file
I'll do it tomorrow and udpate you! i am pretty sleepy haha but thank you so much!
just making sure im on the right track when it comes to filling it out
i will i just gotta finish the whole thing
I recommend testing it right now
Since you asked here i assume you want to know if you are on the right track, and the best way to know this is to simply test incrementally
do you guys also need to use a vpn just to open the stardewwiki?
No but it could depend on your country's firewalls
dang, my country suxxx
sorry bout that
It's strange to need vpn for the wiki but not for discord though
There's no need to apologize I am just suggesting better workflow
kk
now how to edit the gift tastes...
it's still giving an error.
the other two as well...
You need closing }]}
Trailing comma after the CustomAttributes block inside Buffs.
unrelated, because some people like to nitpick other people, meanly. "it's filling → its filling"
I don't think you are wrong but I do think you are distracting from the actual blocking problem 
The only thing I see is that comma, I can't help anyway else 😦 sorry
what happens if you don’t use one?
i did change it
ok i got the asset done enough to test! but i gotta change the ingredients
so since it has guava filling and bonster's crops has two guava items how do i go about allowing the ingredient to be similar to how ya can use any egg in recipes. im asking since i dug into bonster's files and the guava context tags for the two fruit available are essentially different
how do i set it where you can pick between the two?
you need to use the spacecore feature of context tags ingredients + the autogenerated id-based tags (like id_o_itemid)
how do you add a question in an event? it doesn't change the rest of the event, but has a special answer for each option.
so add space core as a dependecy too?
i just made the manifest and so far it's giving me hell
yeah, then read the docs on how to add recipe overrides in SC
question: in an event cant I do a message with the [ITEMID] thing to give farmer an item like when an npc talks? or it it because I tried using a custom item
can you just a trigger action line /action <action>?
or the add item line
it shouldnt matter, what do you have
well, I tried it like this
The pirate disappears and leaves something behind in the sand...[VoidWitchCult.CP.TheFishmongerNPC_LostIslandTotem]?
Did you use speak or something else
message
Wonder if that one somehow didn't go through parsing
Maybe you can use /action AddItem <item ID> [count] [quality]right after?
Personally i think /action is better anyways
hm yeah i think i gonna try that instead
how do you format the response to the answer the farmer gave in an event? like, normally i know you just add a dialogue line for the responseID outside of events, but in an event how would i format that?
this is how I did it
/quickQuestion The well-hidden drawer in front of Marlon looks battered and worn.#Need help opening that?#What else are you hiding in there?(break)emote MarlonFay 40\pause 200\speak MarlonFay "Thank you, no. Nothing worth dusting off, anymore."(break)emote MarlonFay 12\pause 300\
this is if that ending of the scene stays the same, regardless of responses though. Marlon had different reactions, but my scene ended the same way
oh okay! thanks
quickQuestion <question>#<answer1>#<answer2>#<answer3>(break)<answer1 script>(break)<answer2 script>(break)<answer3 script>
that's much more simple than what i did just now, where i defined the responseIDs in the dialogue.json file. if my method doesn't work ill def try yours in the future
thank you so much 🙂
I think if the scene changes based off of the response given, the scripting is more difficult
hell yeah the action thing worked like i wanted
yay!
this event is so dumb but i love it cuz its just farmer meeting me npc and they stare at each other for a moment and the npc jsut walks off and drops an item basically
https://smapi.io/json/none/e69a63acc58040248986aac844a63cf8
so like this right??
it's the recipe json
basically the only items i want any to occur is the milk, eggs and flour since i found there's many ways to make it
You cant use context tags in base game recipes
flour_item wouldn't work
only exact IDs and category numbers are allowed
you'd need to change that to the base game flour, and make another block adding a SpaceCore override recipe
Bumping this from earlier in case anyone knows if there's a way to do a #b# in a quickquestion response. It had odd behavior for me.
k i kept readin it multiple times and for some reason my brain isn't getting it.
while i cant answer about quickquestion specifically, i can say that it doesnt matter what it is as far as the i18n token is concerned. the game does not know you are using a token. it just becomes one string from your default.json anyway
examples can help, Cornucopia Artisan Machines override a couple vanilla recipes to accept any cheese instead of just regular cheese
so essentially? my best bet is to make an objectreplacements json and fill in the context for the eggs, milk and flour?
Hello! I'm not sure the best place to ask this question, but I was wanting to see about having a custom romanceable character modded into the game! Does anyone know of somebody who takes mod commissions? ❤️
!commissions
If you're looking for people who do mod commissions (either art or code), here's a wiki page with a non-comprehensive list of people who do them: https://stardewmodding.wiki.gg/wiki/Stardew_Mod_Commissions
is the fruit ok in the json i sent? since it's specifying which one since the guava it's using?
be aware that an entire NPC is not an easy task
and so the price may be very high, if someone is willing to take it on at all
search for spacechase0.SpaceCore/CookingRecipeOverrides in the SC docs
(or rather, its a "technically" easy task, but a very tedious and long task)
that one will take the {{ModId}}_RedGuava item exactly yes, assuming your mod adds a red guava
yeah bonster's adds two guavas but the rubyguava seems to be sweeter given how it shows up in more dessert recipes in the mod
i did search for the text you send
if it's not from your mod then change {{ModId}} to bonster's ID
otherwise it will search for the red guava item from your mod, which presumably doesn't exist
so you'll basically Target that asset for editing the same way you target Data/Objects or Data/CookingRecipes
and add an entry for your override recipe
and this is in the content json?
i also double checked the ruby guava id and it says {{ModId}}_RubyGuava
could be, or an imported separate json file
it says that because it's in their own mod, so it gets turned into their ID
you're referring to the item in your mod, so you need to turn that into bonster's ID yourself
k
so im trying to not go crazy. cause i go and check the id again and sure enough the same :DDDDDDDDDDDDDDDDDDDDDDDD
i am runnin on fumes
let me try again
{{ModId}} becomes the ID of the mod, so in Bonster's mod {{ModId}}_RedGuava becomes Bonsters.Crops_RedGuava (not the actual Id, just an example)
in your mod it would become Nikki98.Recipes_RedGuava. However, you didn't add the red guava item, Bonster's mod did, so the correct item ID would be Bonsters.MoreCrops_RedGuava
while Nikki98.Recipes_RedGuava doesn't exist and will become an error item
ok thank u ;w;
so? when you say to make the cooking recipe over rides?
is it supposed to look like this?
I essentially pasted the json from bonster's into here to see it better. to get an idea how to set it up
https://smapi.io/json/none/83eccbdc3dc248b6bc589401c76bf3b5#code.1
yes that's a good start
I finished 4 custom events, and made a very simple extra NPC. I'm tickled pink. I did a very tiny mod before this one, years ago - but this feels far more rewarding
oh wow good job! i just finished making an event and it's really hard!
im scared to even look at events, I havent even finished my custom npc yet. this was supposed to be an easy and stupid idea and Im too far in to quit now
I'm also on that but I barely started the dialogs 🤣
guys, anyone know where these icons are stored in the base game?
maps/springobjects
bless you kind angel
I'm having a hard time getting a deffinative answer from documentation on Adding item to stores using Content Patcher 2.6+. This page https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/tokens.md#introduction
seems to imply in one of it's token examples that you could simply use something like (EditData) to add an item to the stores:
"Action": "EditData",
"Target": "Data/Shops",
"TargetField": [ "HatMouse", "Items" ],
Various AI seem dead set on having me use the Json Assets mod, but I'd like to keep the number of mods to a minimum.
Either way I can't get anything to show up in Pierre's when I use "Action": "EditData",
"Target": "Data/Shops",
Thanks for any info.
Don't use AI or json assets, both will get you nowhere fast lol
No doubt there 🙂
Those first three lines are correct, after that you want an "Entries": line with the items you're adding
There's a few examples of the Entries entry in the content patcher docs if you search 'entries', that's what you want to look at next
do the following if you haven't already:
- unpack the files and see how Data/Shops are formatted
- read the full Content Patcher guide to edit a game asset, like Data/Shops
- read this page to see how the data unpacked from 1 work
Ahh yeah the token example is missing some info.
yeah start from the root lol: https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md
- the SDV wiki I linked above
Yeah I was clearly jumping around. I totally misse dthe wiki entry on modding shops.
Looks pretty straight forward. Thank you!
TargetField specifically allows you to edit a nested entry instead of overwriting everything
the example above uses it to insert a new entry into HatMouse > Items
you want to do the same but for Pierre's SeedShop
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home, with 7 C# mods and 1 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
hi guys, i hope it's alright to ask this here -
i'm trying my hand at editing a few maps to fit the multiplayer run a friend and i are planning on doing
i was trying to edit the map of the mod that allows every player to have their own farm map, but for some reason smapi's throwing this error at me and refuses to load the map, and i'm not familiar enough with it to know how to begin fixing it 
any help or directions would be very appreciated, and apologies in advance if it's an easy fix i just wasn't aware of!
https://smapi.io/log/0296ef4c840646aeac8a5127518a1a7d
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 17 C# mods and 5 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
ah sorry nvm i just realized this is in the troubleshooting section of the modding maps page on the wiki lol
ok! i think i did the spacecore json right!
this is coincidentally the same issue i was having, the solution is on the wiki here https://stardewvalleywiki.com/Modding:Maps#.22Invalid_tile_GID:_.3C.23.3E.22
basically just make sure your tilesheets are in the same folder as your map every time you edit it
i made the recipe have 5 servings since most recipes i found for reference make close to that
aha how about that! so i just need to take the tilesheet images i had used to edit the map, and put them in the mod's folder?
they don't need to be in the mod's folder when the game runs, you just need to make sure all edits happen in the folder with the tilesheets

i made the edits in a seperate folder that had the images - then saved the map
then moved the edited map to the file location in the sdv/mods/ bit, where it's loaded into the game
was i missing something? 
apologies if i misunderstood
did you open the map in tiled at all after moving it?
the only other thing i can think of is maybe you used a custom tilesheet that isn't in the mod folder
running a broken json wont mess anything up, itll just tell you where the error is
oh no what i meant was like once you move it you can't edit it
i mean... the mod folder itself doesn't actually have any tilesheets in it, just the .tmx files
no i hadn't edited it again
the solution on the wiki is to put the map back in a folder with your tilesheets and then save it so it recalculates the gids but if that doesn't work for you idk what else to do either #sorry
it's alright.. i may have just messed up a tilesheet or something, i can try again
🎢 🫕
cooking recipe over rides
okay, well i redid my edits, and didn't change any file paths of the textures, but now i get this error
https://smapi.io/log/9c644e43db5046f0af418d4131ab1d38
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 17 C# mods and 5 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
the only reason i tried to add in the textures in the first place when i made the original map edits was because when i opened the file in tiled, it looks like this ... and idk how i'm supposed to work with that lmao
You never want to press "Save" when you've got red Xs like that in Tiled
For now, move all the listed PNG files into your mod folder (or wherever you opened that file from) and reopen it in Tiled after without saving it here.
i had tried that, that's how i got it to look the way it does now
if it says the files can't be found, then they are not in the same folder as the file you are editing.
Or your references are messed up
It looks like you originally tried to edit in the mod folder inside your Downloads folder
it was a downloaded mod i'm attempting to make a personal edit of, yeah ;-;
Did you do a "Save As..." at some point? (that will break the paths like that, because they look in the old spot)
Okay, so does your current mod folder have the files in it?
If so, then you can do "Locate File" in that menu at the top and point to the PNGs that are in the same spot as the file you are editing.
as downloaded, it doesn't have any tilesheets in the mod folder, no
right, but where is the one you are editing?
it's that PathToFarms one
the other 2 folders look like this respectively, no tilesheets
so unless its supposed to be pulling them from vanilla, and i need to unpack the .xnb files ..?
Honestly, the easiest thing to do to fix this is to either:
a) copy/paste the TMX to an unpacked Content/Maps folder and then change your "Locate File" path for those tilesheets (if still not found) to be in that same Content/Maps folder
or b) do as directed previously and copy/paste the unpacked PNGs for the missing files directly into the mod's folder next to PathToFarm.tmx)
!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!
Yes, it's trying to pull the vanilla tilesheets
You're gonna need to unpack the Maps folder either way to get to the missing tilesheets.
ooh okay, so in content/maps, do i need to unpack any specific .xnb, or... all of em? my apologies for the trouble ^-^;
If you use the StardewXNBHack executable linked in the wiki, it'll unpack all the game files inside a new folder called something like Content (unpacked)
got it! so those are unpacking
i just gotta move the tilesheets it wants (as listed in Tiled) into the same folder the PathToFarm.tmx is in
after that i can redo my edits, then save as normal, and then move the entire folder over to sdv/mods, i think?
Yep, as long as it has no red Xs when you save it, and all the files are in the same spot, you can then copy/paste the TMX safely. Just don't ever edit it again without moving the vanilla files to be next to it.
i can move just the .tmx and don't need to move the tilesheets with it?
And if you publish the mod or if you use recolors, you should remove the vanilla PNG files from the mod folder before running the mod. They only need to be with the TMX while editing.
Yep!
Map mods tend to use Content Patcher to 'load' the map virtually into the game's Content/Maps folder at runtime, so it will automatically think the vanilla files are next to the TMX at that point when you're in-game.
alrighty! lemme try my hand at this and see if it works
thank you so much for your patience in helping explain it to me 
i've done other forms of modding like art and some light coding but mapping is a new beast aha
Happy to explain it, I just hope I'm explaining it well enough because I'm exhausted and a little hungry, LOL. I was about to go on dinner break.
oh i am so sorry to have bothered you!! that food will be well worth it LOL
Is there a way to have two json files open in vscode and highlight differences bewtween them? Like a compare function?
yea
Explorer -> Open Editors
right click select for compare
right click a different one, compare with selected
I just did F1 "Compare Active File With..." and found the other one as a recently active file
(That's the difference in Sam's dialogue JSON from my old 1.6 unpack to current)
Ooh cool, I'll try both those options and see what's easiest for my workflow!
Like Pillow said, I use Visual Studio Code (actually, I use VSCodium but for all intents and purposes it's VSC).
VSCodium my beloved
okay! so the map loads in game now (yippee!) but i, ehm, seem to be stuck... and noclippy doesn't fix it LOL
perhaps i need to edit a spawn tile? though i didn't change that when i made the edits
also, water layer is bein' all weird, buuuut i'll figure out what went wrong there after
for your water do you have something on the buildings and back layer
not on buildings, but on back
the waters' on back i mean, sorry
You're the one whom I learned about it from! 
for the water you need to have ground water tiles on the buildings layer as well
if that makes any sense
hmm... it only did that when I didnt do that.. let me check one of my maps
also where do you get stuck?
says it's here, where i should be, but it won't let me move the farmer
so the first one is my buildings layer, and the second is the back layer (third is them combined)
hmm are you sure you dont have a tile there on the buildings layer preventing you from moving? you could also change the default spawn tile so that it moves you one over to the left
buildings is showing this -
Alright, I am giving up on making this Fashion Sense Outfits mod work perfectly with content patcher. It's time to finally learn how to make c# mods. 
moving the default spawn tile would be done in the .json right?
you can check on tiled!
when hovering over a tile you can see its x,y in the bottom left :D
omg its gotta be 46
you are a godsend lmao
okay, let's try this again!
oookay, so weird stuff, i think the warps are all messed up and i'll have to find a way to fix them all
so for example, if i debug myself into the spawn position i'm supposed to be in, i can walk around
the top warp goes to the correct place - the bottom one does not work at all
i planned on using these with modded maps anyways so i guess i would have to edit them to have the warps in them anyways, wouldn't i?
are you doing the warps in Tiled or through the Json/CP?
Also you can add conditional patches with CP based on what mod you're using
i assume they were through the .json since that was where i saw the main warp i edited in NP++, and i didn't see any warp tile options in tiled (i may have just not known what to look for) :o
it's a mod called multiple maps for multiplayer and it allowed access to, well, every player in the session to have their own full farm map, instead of everyone sharing one
im sitting here writing a whole fairytale for my mod
i've just been trying to make some personal edits for me and my one friend who wanted to do a multiplayer run together
Did you resize the map at all?
ughhh why is making npc schedules so hard?
Evil
i had resized only this transition map, but i cropped it from the left side (where i deleted the left's data) so the right should all be in the same area.... unless cropping it moves everything (it might, i might just not know what i'm doing lol)
yes
If you change the map by making it bigger or smaller at the left or at the top, it changes all of the coordinates because they are calculated from the top left.
huh, good to know
the tile i had pulled from to have the farmer spawn in on, i checked the coordinates in tiled and wrote that one in the .json
i suppose it was still messed up somehow though
Did you check it after resizing?
yeah
Farm maps usually have map properties that control where the player arrives rather than using normal warps. Maybe this transitional map does too?
Hi Forsy's cat!
why do they always have to walk on my keyboard
(is there a Data/Locations entry for the transitional map, and if so, does it have a DefaultArrivalTile set?)
I've been strugging with adding an item to a vanilla monster's drops. In this case, I'm trying to add Bat Wing [767] to Iridium Bat, but I keep getting the same error. I read the wiki and (probably?) understand which entry in Data/Monsters.json is the loot, but no matter what I put in, the log just tells me that my patch has "type 'System.String', which isn't recognized by Content Patcher". Can someone explain what I should be doing? I'm still very much inexperienced with code. I feel like I'm almost there, but I keep failing to reach the goal.
https://smapi.io/json/none/6398aceef6304caab6e52d8d2fdc14ca
You're trying to edit part of a slash-delimited string, so you have to handle that a bit differently, I think
seems to, and i had already changed it to what it should be to spawn you in correctly
Are you trying to get there via debug warp or from a warp somewhere in the world?
a warp from the backwoods (behind bus stop) is where, generically, the mod allows you to enter the PathToFarms map from
if i walk thru that transition INTO the map, it spawns me weirdly, even if i set the tile for it right via the .json
so i'm like 
Can you show your JSON where you have edited the Backwoods warp?
the only part of the json where it made sense is this bit here, the other Data/Locatons it shows are the farm maps and where you arrive on those at
Default arrival tile only affects the location you arrive at when you're not using a warp set in the world, so using the Backwoods warp will not make use of default arrival tile.
hmm, alright
You can test this by copying debug warp Custom_MPF_PathToFarms into your SMAPI console and hitting enter.
man, maybe i'm not quite ready for all the intricacies of map modding just yet haha
See where it warps you to. If it goes to 46 15, you'll know your default arrival tile is working properly and it's a warp you have to edit.
Yeah like fireredlily said, editing a slash-delimited string works differently than editing a model. And it's something that I can't do off the top of my head so I'm trying to find an example to show you.
The TextOperations examples for delimited lists are only editing a searched for value or Universal Loves, which.... is not slash-delimited, and thus doesn't help here either.
Let's hope someone in my playthrough mods has done it
I forget how you target a specific index in the slash-delimited fields
Yeah I was reading that example too. That only got me more confused lol
"Action":"EditData",
"Target":"Data/Monsters",
"TextOperations":[
{
"Operation": "Append",
"Target": ["Fields","Iridium Bat",6],
"Value": "767 .9 767 .4",
"Delimiter": " "
}
]
}``` this feels close
NOTE: This has been edited to be the working version of the code for anyone searching in the future for how to append values to a specific field index inside a slash-delimited list.
Hold up I have been thinking you wanted to replace what's in the field but you want to add to it?
but I don't know if the 6 to target the 6th slash-delimited field even works
I think that's close Lily. This is to add to gift tastes:
// add gift tastes
{
"LogName": "Leah Gift Taste Edit",
"Action": "EditData",
"Target": "Data/NPCGiftTastes",
"TextOperations": [
{
"Operation": "Append",
"Target": ["Fields", "Leah", 1],
"Value": "AgentLyoko.SaloonBreakfast_FreshOrangeJuice",
"Delimiter": " "
}
]
},
ah-ha, so try it without the quotes around 6
And I think it needs to be Fields instead of Entries
Because you just want to change one field, not a whole entry.
seems right that it'd be Fields
The key is Iridium Bat, so I feel like part would still be Entries, but I am uncertain how it'd handle the rest of the fields.
But based on the Leah example, change the "6" to 6 and Entries to Fields, see if it works.
You can't use both Entries and Fields AFAIK, so it's gotta be Fields in this case.
If I were trying to come up with it from scratch I'd probably do Entries as well, but since that example is from a working mod (Part of a Saloon Breakfast) I'm assuming it's the right way lol
Still getting the "EditData Data/Monsters" to Data/Monsters: the field 'Iridium Bat' has type 'System.String', which isn't recognized by Content Patcher" error in the console, and the patch didn't apply this time either.
Make sure you've adjusted your Target
You had Iridium Bat in TargetFields before, you can't do that here
Can you show exactly what you changed it to and also the log?
I am trying to learn C# but I am on linux, so I'm using Jetbrains Rider. And it is very frustrating to try and learn a new skill when the tutorial is using one program, I am using another, and I don't have any experience with either.

If I can just get Jetbrains to the point where I can actually start writing the code, I'll probably be fine, but I can't figure out how to get it set up with what I need and the only tutorial I found for getting JetBrains set up to write C# assumes the reader is migrating from VS and is already familiar with both Visual Studio and C#.
I am determined, but I am having A Time and needed to vent a little.
changed to: https://smapi.io/json/none/cfa569ddbb9644118da768ae62229ca0 (following what was suggested above)
log: https://smapi.io/json/none/18060cbaf5284503aec06d5974e18b1c
"Iridium Bat",
6
],
"Fields": {
"Campaigner.newdropIridiumBat": {
"6": "767 .9 767 .4"
}``` this is wrong, it was what was wrong the first time
so make sure you've got the updated link for the JSON
(I think you had the old URL still)
I had too many different json tabs open so I must've grabbed the wrong one. Trying the correct one now
There really isn't a lot of info for Rider unfortunately but are you using this? https://stardewvalleywiki.com/Modding:IDE_reference#Windows.2FMac.2FLinux_.28Rider_2024.x.x.29
So just to be certain, this is what I should be using right now for testing, right? I see it was edited.
this is what I wrote + Aba's corrections: https://smapi.io/json/content-patcher/5e0c70e7da404018b6883ec9d9ac1c24
At the very least, you should get a different error if it fails.
Oh my gosh, I missed that! I was literally on that page, but I must've scrolled too fast because I thought the whole thing was for Visual Studio. You are a lifesaver!!!! ❤️
(By the way, there's a specific page for the log rather than putting it into the json validator too. You don't have to go and put your log into it since Lily already identified the issue but just for future: https://smapi.io/log)
Got it bookmarked, thanks. Now for the patch, I did patch export data/monsters, and I see the change in the right field. Now...is there an easy way to just spawn a bat, or am I gonna have to trudge the skull caves to test it lol
for quick testing, you can do a patch export "Data/Monsters" to see if it actually changed and looks right in the JSON file the game is using. 😉
I just said I did that lol
oops, I had already typed it and hit send late. LOL
all good lol
But yeah, maybe I should test with an easier monster to find rather than that bat
there's a debug command to spawn a pepper rex, there probably is one to spawn a bat
debug monster <S:type> <I:X> <I:Y> [I:facingDirection]
The console commands page is one of the modmaker's best friends: https://stardewvalleywiki.com/Modding:Console_commands
not sure if you can specify Iridium Bat in there, but it's worth a shot.
I don't know what those I:X and I:Y things are. Do I put numbers in there? Or should I just take the route of editing an easier enemy to find lol
that's where it spawns it in at
Matter of fact, I'll just try it on a green slime. If it drops a bat wing, then surely the iridium bat will too lol
(Go to the console commands page and look at the command lol)
The X and Y are the tile coords you want to spawn it on
But it does look like Iridium Bat is not a valid option for that command
(btw, I went back and edited my Discord codeblock so that it's the working example with a note to make it easier for future people searching how to do the same thing)
(Ooops sorry Lily I missed you already saying that's where it spawns)
(all good aba!)
Yep, green slime dropped bat wings after I changed it to that instead of the bat, so clearly the patch works, hooray! I appreciate you folks holding my hand through that ordeal. I'm still bad with retaining what I learn since I'm no coder, so all this has been helpful.
You're welcome. It's definitely a bit mindbending once you start trying to edit individual fields in a slash-delimited string. Thank goodness 1.6 removed most of them.
Data models, my beloved
Yeah, when I saw "slash-delimited string" earlier, I was like "Aw hell, another new word I don't recognize"
anything that goes value/value/value is a slash-delimited list
And sadly, they still exist in a lot of places D:
ah yes like recipe data
(Furniture is in that same circle of sadness)
crafting/cooking being cursed moment
I think we might be getting some more converted in 1.6.16 but don't quote me on that.
events
Crafting didn't seem all that bad when I looked at it
its not terrible. doesn't mean i haven't had bugs that took days to fix because i messed up which field i was putting stuff in
multiple unused fields in crafting data moment
Oh, all those nulls?
the field is required but the value is ignored
Just like my applications 🥲
something something copy paste error resulting in putting unlock conditions in an unused field/
That part trips people up. They think they can just skip it, not realising that changes the index of the rest of the fields after it.
Okay, time to return to my ridiculous beast of a gift tastes file
gift tastes shudder
I'm gonna go back to gaming to rest my brain a bit, LOL
Have fun coding, I'll be working on mine some more later this week when my brain is less mushy xD
I am making Hiria reject almost all gifts which has meant a lot of testing RejectItem_<tag> over and over again
I have to add Lon Lon Milk as a loved gift for the Goron NPCs, but that's a later problem.
Thank you past me for editing the wiki after testing acceptance/rejection precedence so I don't have to test that all over again 🙏
how to get the NPC today dialogue? the one that will be display when talking to them? I tried with npc.CurrentDialogue but it doesnt seem to be correct in some case
are the incorrect ones being overriden by conversation topics or location-specific dialogue?
I am not quite sure. for example I test on lewis on the 1st day of the game, it show the rregular monday dialogue instead of the actual "how the first night"
so it seems like they don't account for CTs at all, then
You'd probably have to poke around in the decompile to see when/where CTs are added so you can check downstream of that
Am I reading this correctly that gift taste dialogue doesn't actually check for category specifically but rather checks for qualified item id and then context tag only?
dialogue = this.TryGetDialogue("AcceptGift_" + gift.QualifiedItemId) ?? (from tag in gift.GetContextTags()
select this.TryGetDialogueByGiftTaste(taste, (string tasteTag) => "AcceptGift_" + tasteTag + "_" + tag)).FirstOrDefault((Dialogue p) => p != null) ?? (from tag in gift.GetContextTags()
select this.TryGetDialogue("AcceptGift_" + tag)).FirstOrDefault((Dialogue p) => p != null) ?? this.TryGetDialogueByGiftTaste(taste, (string tasteTag) => "AcceptGift_" + tasteTag) ?? this.TryGetDialogue("AcceptGift");
don't categories become context tags?
Yes they do.
But there's also a category field. I'm interpreting this as gift tastes don't check the category field but rather check for the context tag for the category.
I checked because the wiki page for gift tastes doesn't mention that you can use context tags so I wanted to add that. But then I thought I'd better check the precedence in case it goes item id -> category -> context tag (or whatever). My conclusion from reading the code is that the code doesn't differentiate between category and context tag but before putting that on the wiki I wanted to get a sanity check from someone better at C# than me.
Oh I might have been looking in the wrong place anyway. I didn't notice that the wiki points to the method.
Well, trying to read NPC.getGiftTasteForThisItem leaves me thinking I'll just put context tag precendece as a TODO on the wiki page lol
get derby'd
what happens if a npc has a schedule point in a spot where a mod placed a building by the way?
the top parts of the forest are pretty heavily used by mods. i think the lower left part is least used, although even there several mods patch new entrances to their areas
depends, sometimes they walk into stuff until collision stops working and then they noclip really fast in a straight line
Aaand updated the paddy mod chu and I made to be less clunky! https://www.nexusmods.com/stardewvalley/mods/34254
@idle lantern Just so you know f Marnie 2 is 2 friendship points, not 2 hearts. You need to multiply it by 250.
Does anyone know where the jungle tank's texture is located, I looked at the furniture sprite sheet but it contains all the fish tanks except the jungle one.
TileSheets\\furniture_2 according to Data/Furniture
yep got it. thanks
is dialogueWarpOut only for one NPC or can i use it for two?
Lily says you can have end dialogue for multiple NPCs so that probably applies to end dialogueWarpOut too.
oh cool! thank you!
You can?
She has an example here: #making-mods-general message
All this time I just used Conversation topics
is there anyway to fix this custom window tile, i can't seem to find the solution after changing everything i can in content file
uh, is this in an npc house or a farmhouse or what
Is there a reason why the game loads Data/Furniture upon loading the savefile select screen?
@lucid mulch: port ScheduleDebugger to 1.6 (20h ago)
hi everyone! very new to modding, I was watching how to add a custom location (a farm map) into the game, SMAPI is installed, content patcher too, so far so good...
My issue is that since 1.6, the content json files are different than before, and I can't get it working...
so does anyone have a template for a content json file I can use for at least testing my map as it goes? (I think it's something about location data or something, can't figure it out!)
You don't need to edit Data/Locations for custom farms. You can, but you don't have to. You do need to add an entry to Data/AdditionalFarms. There's an explanation on this page and an example content.json you can use (I've used it before as the starting point for my custom farm): https://stardewvalleywiki.com/Modding:Farm_data
So I'm looking at this code in a mod, does this actually work?: "Action": "EditImage", "Target": "Characters/Sam_Beach.xnb", "FromFile": "assets/Sam_BeachOW.png" }, I've never seen the .xnb targetted before... or... is it wrong..?
(ignore the missing first bracket)
It's wrong, the data asset names don't include any file extensions
Well, I better fix it then
I keep getting the SMAPI error while trying to warp to my custom map "no location with name"
Why are you trying to warp there? Have you started a new save file where you chose your custom farm? You should just be able to exit the farmhouse and be on your farm.
it's really a proof of concept so far, no entrance or whatever, it's not finished, I just want to warp to it, to get a feel of my progress, the size ingame etc.. I haven't placed the farm, or greenhouse, or even warp tiles to bus stop or anything so far
what confuses me is that smapi seems to load it ok, and yet and <i can't get to that location using commands
!json Can you share your json so I can have a look at what you're doing with it?
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.
Can you please use the website like Governor's message says?
Thanks :)
yw!
What is your mod's unique ID?
that's what I don't understand in the wiki, how to get one?
You make it. Your manifest.json has a field called "UniqueID". That's your mod ID.
You need one for your mod to function, so you must already have one.
oh!!!! Ok OK!! well I 'll try that! thanks for replies and patience !
No, I haven't told you the issue yet.
I just wanted to know what your mod's ID is so I can check it against what you're trying to warp to.
Oh but since this is a farm, you should be able to warp there just by doing debug warp farm anyway. But if you didn't choose your farm at the character creation screen I don't think it's going to exist at all.
Also, you've named your AdditionalFarms entry {{ModId}}_1 while its ID is {{ModId}}_jeanfarm, but they need to be the same thing. And your Data/Locations entry cannot be Farm_{{ModId}}_PineappleFarm - it needs to match your AdditionalFarms ID.
A user on Nexus messaged asking if they could translate my mod into Mandarin. I checked their profile and it seems they've translated a few others as well this year. Is there anything I should know/consider before giving permission to do so?
Things to consider would be seeing if they reupload mod content in their own translations, or just the i18n file (most people now only do the i18n file) (if your mod is set up for i18n). You can also consider if you want to ask them to upload it separately, or if you want to put it in the mod yourself.
A handful use machine translation
If this bothers you you should mention it
(I wouldn't know about this person)
Yeah I was slightly concerned about that but I wasn't sure if it'd be rude to specifically ask that they wouldn't
Someone dm'ed me and told me one of the submitted Chinese translations in one of my mods is a machine translation
So when I get time I'm gonna text to voice it (I can't read Chinese well but I can understand by listening)
And remove it if I think it is bad in favor of the new one
Some people do crappy machine translations as fast as they can in order to DP farm, though they don't usually ask permission so them asking is a good sign (unless they decide that asking permission is the same as getting permission and upload before you can even respond, as some people also do).
I haven't looked into i18n and my mod isn't set up for it. Just for clarification, that's when they would download your mod in addition to the translation?
Yeah I'd really like to avoid machine translations
(Fwiw, I'm not against machine assisted translations, and I don't ask translators ask me for permission.)
When I was active I preferred it because I could give translators the i18n for the next version, but I've always been mit/cc-4 licensed
But you can ask for whatever
Ie, no machine translations, or always bundled, or never bundled, etc.
Yes it is. Typically we suggest making your mod i18n compatible so that mod users dont end up with outdated/buggy versions of the mod just because they have to use someone's older, translated version of it to play on their language. but its not a huge deal for your first mod
So in this vase, the translator will need to translate and reupload your mod separately, or upload a file to replace/overwrite one of your code files
Which can cause endless issues down the line
In case there are bugs that need fixing because then they'd have to fix it on their end as well, yes?
For example cornucopia has a third party translation which replaces the main code file unnecessarily. This caused multiple issues when I wrote an update for my mod and players using that translation had an outdated main file but up to date subfiles with mismatched code
Yes they will
yeah, or just if anything about the mod and its files changes, the translator is on the hook to propagate those changes and update
its likely they'd forget about it or not realize
Tl;dr just use i18n
you can even do i18n folders now, so you can split up files if you want and not have to have one huge monolith (although you may enjoy a monolith, who knows)
It depends on how many translations and how much I'm willing to rework things tbh
The final exception to needing to use i18n is if your mod is a content patcher mod and the ONLY thing that needs translating is the config options. In this case they can create an i18n file for the config without you needing to change anything
"Oh yeah, that's why I have to give the game the size of the Source Rectangle, I remember now"
Ah, no. It's a bunch of events and dialogue and such
Alright well, i18n support it is lol
can someone link the i18nifier for them? idk how to use it
!converters
These community tools help update mods to newer formats or frameworks:
- Convert to Content Patcher from Custom Furniture, Better Farm Animal Variety (BFAV), Custom Music, JSON Assets, More than Necessary (MTN), SAAT, Shop Tile Framework (STF), TMXLoader, or XNB.
- Convert to other frameworks:
- Other tools:
First thing under "other tools"
Thank you!
I don't know how to use it either
Loooook 6480 we consider may 2023 the date I actually retired from modding b/c that is the last time I did a real release wave
Also my heart is in "should I plant purple asparagus in the garden" these days
a soldier never truly leaves the battle field 
I vaguely know how to use it but most importantly I know how to ping Nomori and bug him about it if needed :D
at what point do you become "retired" for more years than youve been modding
so ive never actually been active at a time when youve been active either lol
when do i get to start saying im retired
What's funny is I don't think casey and I have both been active at the same time (not intentionally, but her hiatuses and me actually doing any modding work tended to line up. Coincidence?)
I distinguish retired from hiatus in only one way
Retired means there isn't hope of you coming back
Hiatus means there is still hope
thanks you hehe, i don't know how to trigger inventory.rightClick() on android
but here patch code, i think that should works fine
https://github.com/NRTnarathip/HappyHomeDesigner-Android/blob/a69429d21948f0ed031c9b6859d18e0aaca22c71/Patches/InventoryCombine.cs#L153
does the xnbhack only include sprites? I've used it twice and i don't have any access for content files
No, it should unpack barely all files.
does the animal folder have the json files for them or is it in a different folder, cuz i only see the sprites in that folder
In the animals folder, there are only sprites. JSON is somewhere else, IDK where, though.
oke thanksss
How do you normally put bait on a rod in android?
Thanks! I'll clean it up and put it in.
just drag & drop, it will fill bait into rod
but i don't know how to remove bait 😂
You want the Data folder for most of the json files that aren't strings or NPC dialogue/schedules. You're probably looking for Data/FarmAnimals.json.
no no, i suggest don't pull & push request from my fork
HappyHomeDesign i need to adjustment & fix some UI button
so don't worries about on my fork
already found it! thaanks
though i still don't know how to make an animal not purchasable from marnie. i want to make a golden purchasable in an event shop haha
Event shop?
hmmm so it's got like a custom drag and drop implementation.
Also as I think I mentioned, I believe you need chu's mod Livestock Bazaar to make it possible to sell animals anywhere other than Marnie's.
man I wish I had the android dlls
like maybe purchasable in the night market
oh yeah i already installed it
although I guess it makes no difference if I can't test it
Oh, at a festival. Hmm, I don't know if that's possible. Still, read the Livestock Bazaar documentation and you might find that it is.
doing my best haha
don't worries, my SMAPI Thai discord we have a lot people testing & help fix patch for android
If you can put a tile action it will work
Right now you do patch fixes by just having forked android specific versions of mods right?
Did you look into using Cecil to rewrite some binaries
I think it would be a less scattershot approach
does patching rightClick let you combine with drag-and-drop? or is there some other method I should be targeting on android to make that work?
if I can figure out the combination thing, that will also help me port MUS to android
i don't know haha, i think it will trigger rightClickI() when we connect keyboard or mouse
i not sure about that
yes, some mod i have fixed with Facade or Rewriter
For example i know this method is missing on android
StardewValley.ISoundBank.Exists
if you can ilspy the android dlls, you could lookup references to Tool.attach
In my own mod i got around it by doing lame reflection things https://github.com/Mushymato/TrinketTinker/blob/main/TrinketTinker/Wheels/Reflect.cs#L49 because i had zero way to test
yes, a lot of missing field or method, i have fixed
https://github.com/NRTnarathip/SMAPI-Android-1.6/blob/develop/src/SMAPI/Mobile/Audio/StardewAudioMethods.cs
Cool ty
The other definitely no work on phone thing in this mod is the trinket inventory menu but I don't think that's easily fixable
Atm i think it just crash if you tried to use 
Hm if the soundbank thing is good now does East Scarp C# work on phone?
Back in 1.5, there was a website that listed compatibility with Android SMAPI
The GitHub repo with the 1.5 source is still up, but that's not going to be super helpful nowadays.
compat was a lot worse in 1.5, though, because xamarin was allergic to annotations
It would be nice to have something like that again, though maintaining that is going to be a lot of work
this was the website (that i knew of) https://android.stardew.rocks/
Had a weird idea for a mod idk how feasible it is especially since I have no experience.
Essentially I would overhaul slime hutches. I would make each slime like a farm animal where it can be pet, named and etc… it won’t attack anymore as a bonus. They cannot breed to make new colors (I have a better idea) but you can still breed them to get “swirly” slimes where they are instead two colors half and half. Why? Because then you can feed optionally feed them sugar for a candy item that produces different food buffs based off the slimes color(s)
How realistic is this from the perspective of people who know what they’re doing. Cannot emphasize enough I have no idea what I’m doing
C# hell
some parts are easier than others. to make them into farm animals, you could essentially just add new farm animals that look like slimes and replace the slime hutch so regular slimes can't get put in it. (though if you did this, you would need to add another way to unlock the incubator and slime egg drops.) This would be low difficulty
you would need c# for the candy idea, and for the swirly slimes. That part is probably moderate difficulty.
Hm so maybe not then
If you don't feel ready for it now, I wouldn't abandon the idea completely, just put it on the backburner until you have a better idea of what you're doing
sometimes letting an idea sit can help figure it out anyways
No the issue is I’m just ass with code. I can learn it but I can’t use it well
Maybe you can write a detailed description of your idea to the mod submission list and someone could pick it up
don't remember where that is tho
!modideas
If you have a mod idea that you aren't planning to make yourself, you can put it in the mod ideas github: https://github.com/StardewModders/mod-ideas
However, this does not mean anyone is guaranteed to work on your idea—modders who are looking for ideas sometimes go through and work on what they find interesting off this list. If you want to pay someone to make your mod idea, there are a few people who do commissions (mostly art, sometimes code); you can ask around, search usernames for the word comms, or see !commissions.
I can do art I’m good with aesprite. I can try to learn how stardew is coded myself this would just be a long process just not sure diving into the deep end is right
in that case, why not try your hand at a furniture mod? those are mostly art, they're reasonably popular, and you can make them as big or small as you like
it's a great way to dip your toes in
Hmm maybe. I just need inspiration
!! Furniture mentionned !!
@rancid musk is it possible to use More Nightly Events to do custom junimo cutscenes?
It should be, as long as you write it like an event
bah, that's what I was afraid of
WorldChangeEvent has some secret sauce that's a PITA to do via manual scripting
maybe I can just subclass it
Personally i think slime farm animals are cool and fun
how can i chang the mizu's turkey mod to be in a coop, i changed it so that it can be placed into a big coop but now it ain't showing, like totally invisible
They can still drop slimes
i also tried to change their width and height so that they can get out of a coop
Thanks
Unless this isn’t referencing my idea to make them like chickens functionally
Someone made a mod doing exactly that, if you want to look how they did it: https://www.nexusmods.com/stardewvalley/mods/33514
thaanks!
Yeah and while you can't really do breeding (farm animals do not have genders) you can make them drop rarer eggs with low chance
That you can incubate
Slime hutches are somewhat hardcoded but there is a framework to let you raise other monsters
I would figure, they’re the only building slimes would have to check if water is available in and then do stuff to place slime balls
Hm
{
"Id": "{{ModId}}_SpiritsEve",
"Portrait": "Portraits/{{Honeyfuggle}}_SpiritsEve",
"Sprite": "Characters/{{Honeyfuggle}}_SpiritsEve",
"Condition": "IS_EVENT festival_fall_27",
"Precendence": -200,
"Weight": 0
}
],```
is this GSQ incorrect or something :( NPC isnt wearing the outfit but i also dont see any errors in the log
aghh it is
festival_fall27 not festival_fall_27 🫠
debug gq GSQ_HERE
Don't use weight=0
This was a mistake in the game code that people copied incorrectly tbh
When you're doing weighted lists you need to enforce weight > 0
So I'm in the process of converting everything to support i18n, using the converter, and went to test the events to ensure they were working correctly. The heart events all loaded correctly, but the wedding events didn't. I reloaded the original event and it played fine, so I tried converting it again and smapi said the event could not be found again. Any ideas why 1 out of 5 events wouldn't load correctly?
Here is the updated json with the i18n events:
https://smapi.io/json/none/5aa337607e0d434ebac5f6ced6d43743
Here is the original json:
https://smapi.io/json/none/125751a6f83b41909860ab7b0ac228ba
And here is the smapi log:
https://smapi.io/log/81b87ae4e9bf4e5196fca384ba8760dc
Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Unix 6.5.0.23, with 15 C# mods and 1 content packs.
Suggested fixes: One or more mods are out of date, consider updating them, SMAPI is out of date, consider updating it
i had something similar happen to me before, its because of the {{ImportToken}} thing that, in your case, replaced {{day}} and {{season}}. i think to fix it you have to pass the token through like this (and remove the {{ImportToken}}) textAboveHead Caroline \"{{i18n:FourHeart.12 |playerName={{PlayerName}} }}\". my experience with this is limited though so i could definitely be wrong and defer to anyone who knows better 
Thank you for the help!
does the animalsqueezethrough mod work with livestock bazaar? i already set up my string so that the turkey lives in the coop, but when i installed it, it lives in the barn again
i also can't put my turkey in either a barn or a coop because of the livestock UI
Livestock Bazaar is just a menu it obeys whatever the data says
You will have to do a patch export Data/FarmAnimals
Also try disabling your own edits first
this is really silly but where can i find fish sprites in the files? I looked thru every folder in my unpacked content folder but am struggling to find it
Maps/springobjects
thank you!
New quote added by atravita as #6392 (https://discordapp.com/channels/137344473976799233/156109690059751424/960705681906860052)
Atra archeology
the springobjects curse strikes again
any idea which username is dolphinisnotafish from nexus? i wanna ask for permission related to their marniner replacement mod!
their name in the server is also that
oh cool
i would've @ them but idk if they are cool with that or not
i mainly ask too since their mod which replaces the marnier with a mermaid... it turns out that the seasonal pendants will fit on the farmer's portrait made by jupm pretty seamlessly! i tried to make the pendants myself.... but they did not look right. at all..
cool! i did dm em as well but i'll ping em!
@devout otter mind if i either reference the seasonal mermaid pendants or use them from the original mod? i am helping JuPm out by sliding over some personal edits i did for an update to their farmer portrait-nyapu styled mod
and i found out through testing that they fit on the farmer wonderfully
does market day mod still work? it's totally bogged on mine. and i already got the 1 for 1.6
That's more of a #modded-stardew question tbh
I believe there's an unofficial update for that, i do not know if it works properly
!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.
Also !log
Question; I've made an egg item, a mayonnaise item, and a recipe for it to go from egg to mayonnaise. Problem is, it turned into vanilla mayo rather than the mayo it's supposed to. I'm at a loss here, as I thought I covered all my bases. Anyone able to troubleshoot this for me? (item and related are at the bottom)
https://smapi.io/json/none/070e4c949b904907a3213655f8ea2b89
did you move your machine output entry to the top of the list
I don't know what you mean. What list am I supposed to be moving to the top of?
machine rules evaluate from top to bottom, and your rule is at the bottom and below the vanilla "all egg to mayo" rule
you need to use MoveEntries and move your Campaigner.snailcrabMayonnaiseRecipe to the top of OutputRules
it can be done in the same block as your entry that adds the rule
Sorry, had a small emergency crop up after I posted (it's fine now, thankfully). I followed the guide and got my mayo to work, woo! Thanks for the link to that page. Didn't know I had to avoid some rule at all with the mayo machine lol
Though I probably shouldn't have copied ostrich. 10 mayo was too much lol
To change the output amount, that's minstack right? Edit: It was. Wish it said amount instead lol
it's cuz theres also MaxStack
so i figured out a way to spawn a npc in the farmhouse withuot being married or rommated to them
only issue im encounting now is they will not walk a schedule
even with the map saying npcs can path there, and even when i add a npc warp for them they dont walk
I DID IT
Watch out for modded farmhouses
oh i know thats why the warp will be in the spouse room
also the mod is sort of for me right now idk if itll be released
ooooooooo im dancin
in an event, how do i give an item based on season? for example, i want to give a seasonal flower.
Hi, how are you? I have a quick question — do you know how to use Portraiture Plus? I'm not quite sure how it works. If you know of a mod that uses it as an example, that would be really helpful too.
oh okay! thank you i think i know how
{
"Name": "SeasonalFlower",//Spring
"Value": "ITEM ID",
"When": {
"Season": "Spring",
}
},
{
"Name": "SeasonalFlower",//Summer
"Value": "ITEM ID",
"When": {
"Season": "Summer",
}
},
{
"Name": "SeasonalFlower",//Fall
"Value": "ITEM ID",
"When": {
"Season": "Fall",
}
},
{
"Name": "SeasonalFlower",//Winter
"Value": "ITEM ID",
"When": {
"Season": "Winter",
}
},
],```
and you palce the toek {{SeasonalFlower}} in the id part of your event command
token*
i might need to know too
for Portraiture Plus
cause i was told that using portraiture plus might be better given my current art style
you can look at its dependents on the Requirement tab
I know how to install it, but I don't know how to configure it so that the portraits are seasonal. I want to change the portraits in a mod to learn how to do this.
I meant the mods that use it
it directly states it in the mod description
thank you so much!!! this helps a lot
this cant be any clearer tbh
Yes, I looked but only found one, and it doesn't have seasonal portraits. I also don't really understand the explanation in the Portraiture Plus description
Remember what you did before? That's number 15 on that list
Yes, but I don't really understand it. I don't know what exact data goes there or where to get it from. I'm not a programmer, I'm just someone trying to learn how to make things for mods.
(also this looks a lot more than 1)
nothing to do with prgramming
I dont know much about this mod but there are mods that do this too, you can look at the mods that do it to see hwo its done
you jsut naem the file differently and it shows you how exactly it needs to be name
basically, just drop the pngs in the same place you dropped your base portraiture portrait but name it differently
I think the hang up is how is this implemented through the code of the mod?
let me go look at the mod i bet I could help
goddamnit i hate how i was replying and lost half of it because my antivirus program suddenly wanted to run and tabbed me out of discord :I
they made a Portraiture mod before, I helped them with it
the procedure is the same, but instead of NpcName.png you do NpcName_Rain.png for rain portrait
or NpcName_Winter_Indoor.png for indoor winter portrait
Hmm how do you tell your mod where your assets are does the mod automatically know?
you don't, you need to (tell the users to) drop the pngs into Portraiture's folder
that's my main hangup with Portraiture tbh
no content pack support
Oooo I see and the mod will be able to read what each namesake means from that?
yes
tho it does state this on the mod page so idk
After 1.06 you could use "ContentPackFor": {"UniqueID": "Arborsm.PortraiturePlus"} in manifest.json to make Portraiture find png in that folder now,
the game will traverse all png files in that directory and attempt to add them to the game
unless that doesnt work
Im struggling to write out a full cohesive explanation for this.
So it's like this right?
By following the naming method shown above, you can place your assets into the portraiture mod and the mod itself will read and apply the seasonals based on the namesake by default?
Sure, I was looking for mods that use Portraiture Plus to see how the images were named, but the one I found only uses a single image as a portrait.
now how to you seperate walksprites from the portraits?
yes
portraiture doesnt do walk sprites
it's portraits only
Oh I see so it's strictly for portraits, so any walksprites need to be applied via content patcher?
So example then.
Lyell_Spring
Would be the spring portrait name that I drop into the portraiture folder inside the portraiture mod?
Oh good so @valid folio does the conversation above help at all?
It's really hard for me to follow the conversation on my phone because I can't see well. I'll check it later from the computer when I'm back at it, thanks.
would you like me to DM you?
so you dont lose the info
Hi, do you mean that you want to use the designs of the seasonal pendants? The seasonal pendants were originally made by Rosenbug for her mod here, so it’d be best to reach out to her for permission.
ohh ok!
I think compiling a list of questions to ask new modders might be a good idea? it could help us help them. a lot of stuff new makers wouldnt know what certain words mean. and sometimes even context when related to topics and methods of mod making could be confusing?
It can be confusing and discouraging, esp cause sometimes new comers dont know what questions to ask or how to phrase questions either.
and also sometimes repeatly teaching is needed, I had to be taught like 3 different times to learn cause of my brain injury
i need this too! im relatively new and modding is hard ;-;
@ me whenever you need help nikki, i dont know about all the frameworks or how to do everything but I can help anyway I can
thank u ;w;
right now im working on a recipe mod for my bf's birthday
Sometimes I'm tempted to make a "content patcher for absolute beginners" tutorial but I feel like every tutorial will have holes in it no matter how hard i try
i am testing it out and i think i got it right
Ooo that's a pretty easy thing to do actyally!
please do
im not really new or have a brain injury i am just stupid. documentation is a God send
i am begging you please do
it doesnt matter if there are holes, what matters is the holes that some have you can fill
i swear ill get back to my tutorials one day too. after cmf,
mind if i dm you the files? i only got 1 item in it but i had to use a few mods as dependencies!
teaching modding is also a little difficult because you cant just teach mod making. A lot of what people will learn will be a single thing
i swear i'll write tutorials after i update my existing mods, release my WIP, and life is no longer busy
sure dm me your files and if you can explain what all you have done so far
Mod creation is such a broad hobby, someone who makes npcs will have a different skill set from someone who makes crops
the hard part of teaching modding is how much just seems to be digging. i also thought about making a video about making mods but then i realized that beyond the bare bones ModEntry class or content.json, 96% of what I am doing every time I work on a mod is scouring the source code/content 😭
Tutorials do work best when it's for a very specific thing ya
Question; where is the crab pot's possible loot located? I can't find it in any data file.
hardcoded 
Really? Big oof.
you can add new crabpot fish, and it will be added to the pool
Oh. That's what I'm after!
Do we not have a dehardcoding CrabPots framework yet?
tbh adding new fish is good enough 99% of the time
I think I worded it wrong. That's for adding new fish, right? I just wanted to add a single item to the crab pot's loot table 😦
I've started and stopped making an image-based tutorial trying to explain how Content Patcher works as opposed to the unsupported XNB mods about a dozen times.
yes, you add a new fish following the "crab pot" format
I'm just genuinely surprised it hasn't been created yet since there are quite a few frameworks handling most of the hardcoded things left in the game.
For anyone wanting to write yet another framework, there's an opportunity here
I for one can't wait to get duck mayo out of crab pots
So if I just wanted to add say Bomb to crab pots, I just follow the guide on adding a new fish, but use Bomb's ID instead of a modded ID?
Ok, please
no one likes crab pots 😌
there are 294631 new fish mods, but like 2 of them adds new pot drops
It hurts to be a crab pot enthusiast
I like Crab Pots when I play with Automate, which is not very often
omw
I just like having shrimp fish tanks. Love my little fellas.
So, looking at Fish.json, I noticed trash like driftwood isn't on the list. Is trash loot handled elsewhere?
Yeah
maybe? worth a try probably
https://smapi.io/json/none/1c4e22e1d8a8481d921aead3a9145e04
anything i need to fix with this?? do i need to do the same for the eggs?? like if im using mods that add egg laying animals? not as a dependency but more as if ya wanna use em ya can
I think the most I will bother with is a weighted table of additional drops where if an entry matches, the crab pot's loot for that day will be that item instead of the vanilla item
could be part of MTF once > 2 people request it 
I'm going to write down how I understood I should name one of the image files, as if it were the one I’ll use for fall:
{NPC Name}{Location Name}{season}.png
ichortower.HatMouseLacey_Lacey_{Location Name}_fall.png
I left part of it blank because I’m not sure what value corresponds there.
you need to make it more like this
ichortower.HatMouseLaceyLacey_{Location Name}_fall.png
I thought MTF let u do that
thats only if youre making a location only outfit though
on a glance that looks fine to me, feel free to test
not vanilla crab pots
kk!
You can put a mayo on the water
if you only want fall it would be
ichortower.HatMouseLaceyLacey_Fall
(minor correction it's ichortower.HatMouseLacey_Lacey_Fall)
(Discord eated the first underscore in their original message)
ooo i see
It kills me that nobody's taking advantage of the fact that you can have custom crab pot fish pools in different locations.
Got it, thank you sooo much! I’ll try it out in a bit and let you know if everything worked or if something exploded, haha.
@golden basin and @brittle pasture
VMV does (it's one of the 2 mods I mentioned) 
crab pot fish is what i plan doing for my island at some point :3c
the other is Cornucopia which adds salt to beach
I have to finish a translation before I can start editing the images—well, actually, the image names.
Yeah but apparently the rate is tragically low
I coulda sworn they patched the rate
it still has to compete with other vanilla fish which gets checked earlier
but yeah it did get bumped up
it used to be .1, which in practice is like .01 or something because of vanilla fishies. .6 now
(I actually can't tell if that helped because I play with Mariner in my current save, which throws all those numbers out the window)
Clearly you should framework it


