#making-mods-general
1 messages · Page 479 of 1
That's what Pathos has decided that texture asset should be called. It doesn't have to match the file name.
It only ever needs to match a file name if you use the {{Target}} or {{TargetWithoutPath}} tokens.
Wow sorry, I am rusty
That's okay! The fact that Targets aren't actually files catches a lot of people out.
They're just basically arbitrary names that the game uses as a way to find the actual file. Kind of like an index number in a library gets you a specific book, but the index number isn't the name of the book.
helloooo, i'm trying to add some sort of effect to a custom object when gifted (via BETAS), but I'm kind of lost. The custom object is supposed to have a similar functionality to the stardrop tea but a little better. in "conditions" and "actions", is there a way to target any possible NPC through a token? do I need to set up a dynamic token? am I doing it entirely wrong? 
This trigger action will not add friendship points. It sets their friendship points to 600 regardless of where they were before, so an NPC could actually drop a lot of hearts if you use this.
What is the characters token
ignore that one, it's just me bullshitting and failing
Well it's helpful to elaborate on what the goal is
You would want the vanilla AddFriendshipPoints trigger action to add points.
That being said, you'd need one trigger action per NPC and have each of them hardcoded into the condition and action for this to work and it wouldn't affect any NPCs you haven't specified.
as I tried to explain, I want it to add an X amount of friendship points, similarly to the stardrop tea somehow
I think you might as well use the recieveitem_youritem key at that point
If u gotta make a trigger action for every single npc
hmmmm I see, that's kind of not what I had in mind
I don't think this is currently possible to do in a way generic to all characters, but it may get dehardcoded soon
I think you may be yearning for the foreach
how does the stardrop tea even work then 
Hardcoding
Yeah i should clarify, not possible in a sane way in content patcher rn
A C# mod can just go and add stuff if it wants
i can't do C# 
Content modders yearn for the foreach
i be yearning fr
I am making a mod that iterates through all members of a list and I do have to do it manually, including mod compat.
My one C# implementation that I'm kind of proud of is an egg that buffs friendship when you talk to an npc
but then I forgot to attatch it to anything else so it's just sat in my 'wip' folder colecting dust
Today I am overhauling config
Hey, I just remembered, you made the wolf, right?
Do you happen to have any blank loads to vanilla assets still in there?
Another modmaker had their mod clash with yours because you were both doing exclusive priority blank loads to JojaMart.
Uhm like to jojamart and stuff? In the active version yes but they’ll be gone in next weeks update
Removed entirely? Are you no longer putting events there? /curious
I want to leave at least one or two there. Would changing the priority to low fix it?
(I helped the other modmaker change their blank load priority to low so it won't be incompatible with other mods' blank loads anymore so it's no longer an issue for them, but since you are coincidentally here on the same day I thought I'd mention it to you so you can switch yours to low as well.)
Oooh ty 😄
Yep, as long as the priority isn't exclusive it won't cause issues with any other mod anymore.
Heck yeah! It would be nice to leave the events. I’m really fond of Sam’s line about working in a cold warehouse of sad cornflakes
Yeah, definitely don't get rid of your events!
I counted yesterday and I have 54 of them XD
Woooooooooow
It takes me hours and hours and hours to do events
Testing them takes forever
I am incredibly picky about every single action in an event being timed perfectly so that probably contributes most of the time I spend working on them lol
It's SUCH a process. I usually write them down on paper first to help with pacing and such. Also at least 5 were added later as dating events. I feel way more confident about using some of the more 'advanced' event commands now too
That's awesome!
I feel so powerful tbh - and after all the work of point tracking and mail I've ultimately decided to change the 'path' options to a config toggle
I always plan mine out in my Obsidian planning doc before I start writing the json, so once I am writing actual event commands it's mostly just translating what I already know should happen into the game, plus tweaking as I see how it feels as I go.
Researching Obsidian rn because it sounds very helpful
I have 'Novelist' on my phone which I sometimes use to plot stuff out while I'm in transit but I hate trying to write events on my phone
ooh and there's a linux version
joy
It's a very customisable note taking app
I use it to plan my mods but also to track stuff IRL and as a weekly to-do list where unfinished tasks rollover to the next week
It uses markdown files so you're never stuck unable to switch to other programs
It just finished downloading - I'm so excited
Didn't you just post that, Erin?
I second obsidian! So so useful
So exciting we must see it twice!
I posted a picture of it earlier
I have multiple projects of multiple types (gamedev, 3 character expansions, cream cheese machines) and I desparately need the organization
Ohhh I see haha I didn't notice the difference so I thought the first one was the Nexus page too
I was building hype 😛
Someone was complaining about symmetry on Reddit https://www.reddit.com/r/StardewValley/comments/1p7kbvl/mr_concerned_i_have_a_concern/
Saviour of the people
Ooh I bet Bog's server would love that, I'm going to share the mod there
I love being able to centre buildings perfectly, this is a great addition to it my game
It could be a bit buggy, I'm not sure I caught every possible interaction buildings might have
but clicking on doors works
and bounding box is adjusted
actually bounding box seems a bit wonky on the left side, idk
ReplaceDelimited does not replace substrings. What would be the recommended method to replace a certain substring? Just copy-paste the full string and edit the part you want to change?
I shall have to test mine, not sure how it would fare but I imagine the same as a mill
What are you replacing a substring of?
Lewis' text for the Festival of Ice. I want to edit one line. The string is delimited by / into different animation values and such.
So to pick a random example, in the text speak Lewis \"Contestants, your goal is to catch as many fish as you possibly can in two minutes using the provided fishing rods.#$b#You must catch your fish here, from these holes in the ice.\" you would just want to replace the You must catch your fish here, from these holes in the ice. line?
Yeah, exactly. Sorry, I should have clarified that.
That's all good. Yeah, I think replacing the whole string would work best. If there's a better option, I can't think of it right now. Editing the event by field index without TextOperations would also require replacing the whole string and would be vulnerable to other mods changing the event.
Then I do it like that. I guess making a SMAPI mod would be overkill. Maybe I'll make a pull-request ReplaceSubstring.
(I mention it because it's the only other method for editing part of an event that I can remember, not because I think you suggested it.)
Thank you very much.
The only other thought I had is if you set the delimiter to . instead and then search for #$b#You must catch your fish here, from these holes in the ice
(And now that I have had that thought I am consumed with curiosity about whether it would work haha)
I feel like that might be too unstable and not precise. Or, maybe it would work flawlessly, but it's still more of a dirty workaround.
Why is it dirty?
Because it's not really intended to be a delimiter. I guess me working in software engineering makes me kinda anxious about everything that doesn't seem fully intentional. Had too much stuff break.
Nothing about ReplaceDelimited says you have to stick with only certain delimiters.
If it doesn't find that exact string, it doesn't replace anything. No breaking, no errors. So if someone has a mod that already edits that line, yours won't do anything. (Assuming my idea works at all, of course.)
Anything can be a deliminator depending on your usage and requirements, I have seen some wild things that work well outside of stardew mods
I guess. I will try it. Thank you.
Also not trying to pressure you into doing it that way! I am just trying to think it through regardless so if I think it's any good I can add it to my own repertoire lol
But alas I have already committed to going to bed so I cannot know if it works until tomorrow regardless of whether it's you or me testing it xD
I will test it now and tell you the results. Have a good night.
It works, thank you.

Yeeeeees 
Does anyone know if there's any tutorials (preferably video, but written is fine) for turning an existing NPC (non-marriage candidate) into a roommate?
Quick question: Which entry would I need to edit how to turn a -792 energy (cooked) food into something actually giving energy/health?
In the objetc data, "Edibility", make it a positive number
To be precise, energy is Edibility × 2.5, health Edibility × 1.125. There is probably a framework to customize that.
hm.. no edibility entry
Do I just add it in?
And what would be the sell price entry called?
Uh. ... Hmm i guess you can just add in "Edibility" and "Price"
Just like this?
Looks about right. You can easily test it by typing debug item BakingWithPride.PrismaticPride into the console window.
Yeah, exactly that
I'd have to restart the game for that 
I'm not too fussed about fixing it that very moment so I'll just see if it works properly once I'm back after dinner in a few hours lol
Thanks!
Have a nice meal!
Thanks! (I won't eat within the next hour or so)
I also want to see which numbers would be most feasible.
Given some ingredients a sale price of 150 are kinda low lol
When deciding the prices for the thing I'm working on today, I used a formula of 2.5 x {{price of fruit}} + 50, since they rely on fruit to produce and take a few days to make
I guess you could look at vanilla pricing for stuff and then decide?
Some vanilla artisan goods, like wine etc, use similar formulae to decide the prices, so you could try a similar approach!
I'm a bit confused how this works... is the location context id how you identify a location? what would that string look like?
It's cooking dishes. I might look at the ingredient prices and balance it around them
Oh yeah, check the ingredients for sure
Location context is not location
Like the demiboy needs a frozen tear and wheat flour, so 125 when selling both.
So I guess then 150 are decent enough
Hi everyone ! My names Dakota (or Koda ) I'm currently going to college for advanced software design and decided I want to practice what I learn (c#) by making a Stardew valley content expansion mod , any good starter vids or help tips anyone can offer for a first time mod developer starting out with Stardew ?
For location you need GameLocation.NameOrUniqueName
!startmodding
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn programming.
Check the C# section
-# where as demigirls melon is 260 lol
And also the content mod section
Location context is like Default Desert Island
They r what's in Data/LocationContext
Controls some stuff shared cross maps
is that something that would be interesting to have in conditions for ddfc?
I was so focused on Id I missed the name one
thanks
Maybe, though there are vanilla gsq for this so it's ok to slacc
Check the stuff in the command, the modding wiki and the modding index of the official wiki are both listed, which are good places to start! I recommend making a smaller mod first to get a feel of things before diving into a larger mod, since bigger projects can often have a lot of moving parts.
Thanks !
Just expanding on my initial two messages lol
Oh yeah for name or unique name they get the guid if instanced
You're welcome! Good luck with modding!
You may want just Name for that case
And feel free to ask questions in this channel, there are a lot of very knowledgable folk here
true... I'll assume modders who know about location context should be experienced enough for GSQs 
Ig there's the niche case where u actually want to check the speaker's location for some reason
I consider that niche enough to be a "I'll add it when someone asks" case
I'd love to see a mod that changes the dialogue's appearance based on location (e.g. desert, sewer, town, etc.)
maybe one day
Okay, I have a map for an upgraded pelican town, but I want it to be triggered upon a community upgrade, how do I do it.
maybe I should use ddfc DP to commission somebody to make a ddfc mod showcasing what it can do 🧐
hi everyone , im looking to make a new island area for a expansion mod idea that uses the boat/ship to travel to , what do people use to create new areas ? ive had tiled suggested to me but am looking to chat with anyone with experience ? thanks !
tiled
thanks
To make things easier, since I noticed you asking in making-mods-art, you can also use Central Station to add your new location to the transportation network so you can use Willy's boat to get there, if you weren't already planning to do that.
I understand now why making a ButtonPressed trigger is a bad idea lmaoo
Thanks a ton ! I was planning to focus on the map creation first then go about learning how to implement it into the game , and focus on implementing quest line /events afterwards and new NPCs lastly (im assuming they are probably the most pain and time consuming task )
If you wanted to jump ahead to making your NPC exist because of time constraints, you can also use my Pelican Valley Loft (NPC Apartment) mod as a staging area for your NPC so they have a ready made room in the world until your map is ready
Does anyone know the "flag" conditions for the Movie Theater for both the Joja Mart route and the Community Center route?
According to the wiki on the [[Modding:Mail Data]] page, it's ccMovieTheater and ccMovieTheaterJoja
Appreciated!
its case sensitive btw, so [[Modding:Mail data]]
lol it's okay. I just needed the ccMovieTheater and ccMovieTheaterJoja because I'm trying to make schedules based on if the movie theater is there or not.
Hello!! I'm new to mod-making (I'm just starting to plan out my first mod, a small dialog expansion) and just want to ask two questions I havent found answers for. Hope that's cool, and if I missed a directory or FAQ or whatever, I apologize for the redundancy! I'm really excited but admittedly pretty nervous wuahhhhhh 
- Are there any particular recommended ways to test my mod? I'm mainly worried about issues with my base game files, or potentially messing with other mods (tho I'd prob move them to another folder anyways to be safe, so that's a much smaller concern)
- how ambitious are dialog expansions considered? i want to know so i can manage my expectations
if you're not doing xnb replacements your game files are fine
your existing saves are only affected if you actively load that save and go to sleep
basically don't worry about it
I recommend loading your test saves with mods like CJB Cheats/Item Spawner/Lookup Anything to help speed up testing
Oooo thank you for the recommendation! i was going to look up stuff like that, so having a specific list to look at is such a big help. tysm!! especially since its dialog so i'll probably have to tinker with time/date and heart levels
fwiw, that'll probably be an issue with the UpdateTicked you mentioned earlier too; I decided not to release that in one of my frameworks, and I still warn people not to use OneSecondUpdateTicked unnecessarily 
if any mods actually use a trigger, there's some overhead involved every time it's raised, e.g. creating context objects & checking conditions
and any delay is more noticeable if it's not happening during warp/sleep/etc
Thanks, I just woke up and couldn't remember the formatting, LOL
i thought it was broken tbh
Learned this the hard way, after compiling the UpdateTicked trigger, I immediately used it, when I confirmed that it's working, I then used it on 7 Trigger Actions entry with no conditions, the moment I loaded my test save, the fps dropped to 15 FPS plus stutters lmaoo.
ButtonPressed on the other hand make the game stutter every time I tap buttonA or B
Sad that I won't be able to publish this cuz of the problems it's going to cause, but that's fine, I'm still learning c# afterall
it's probably a lot easier for you to just make a custom asset than to go through vanilla trigger stuff
that is, if you actually think you want to expose this to content at all
Heyyy, does anyone know how you can use "ReplaceDelimited" to change a characters schedule position? I've been fighting it for a bit but can't seem to get it to work. My NPC keeps getting stuck in the door as soon as they enter Pierre's shop.
`{
"LogName": "Mirren's Schedule with SKE Patch",
"Action": "EditData",
"Target": "Characters/schedules/{{Mirren}}",
"TextOperations": [
{
"Operation": "ReplaceDelimited",
"Target": ["Entries", "spring", "Tue"],
"Search": "640 SeedShop 23 30 3",
"Value": "640 SeedShop 19 30 3",
"Delimiter": "/"
},
{
"Operation": "ReplaceDelimited",
"Target": ["Entries", "NightMarket_1", "NightMarket_2"],
"Search": "700 SeedShop 23 30 3",
"Value": "700 SeedShop 19 30 3",
"Delimiter": "/"
},
{
"Operation": "ReplaceDelimited",
"Target": ["Entries", "marriage_Tue", "marriage_Fri"],
"Search": "730 SeedShop 23 30 3",
"Value": "730 SeedShop 19 30 3",
"Delimiter": "/"
}
]
}`
you’re replacing your own npc’s schedule?
Part of it, as a way to make it more compatible with another mod ^^" I wanna see if i can figure it out or if its better to just use the new stuff since it works fine on its own too
fairly sure your Target values are wrong here and you can't target multiple entries at the same level with one textoperation like this
I see, I see, okay makes sense
each target is a breadcrumb trail, same as targetfield
tbh if I wanted to have variable schedules like this I would probably just have tokens on the initial schedule patch like …/{{PierreShop}}/… and dynamic token PierreShop
that's usually my approach too
can also just conditionally patch that one entry entirely
although it gets annoying that dynamic tokens must be in content.json and can't be anywhere else in your data structure
Yeah but that's life, I don't have too many yet anyways so we'll see where we end up lol
yeah this is what i do
it's a little bit clearer to me when reading my own json
I figured the goal was to prevent rewriting the rest of the schedule twice but if it doesn’t matter then this is the simplest version for sure
if it's their schedule in the first place then it don't matter
Cus of other stuff, i can't just patch certain days because they have other conditional things on themselves (aka there two versions of the same day, just depends on if you saw an event or not) so they have the same key but different schedules
unless they have multiple sections of the schedule that each need their own compat changes
i mean you could still do that, though
just have the compat patch also have two versions, one for no event seen and one for event seen
True true, but i'll try the dynamictoken first and see where that takes me. I'll remember this too though and keep that in my backpocket!
is it possible to add a custom npc shop to the desert festival or is that yet another mega hardcoded thing 
you can add it yea
like to the random stalls or its own shop?
to the random stalls
Yeah, that's what I did, but will it be enough for CP to add my NPC there or is there anything else I need to do?
nothing else to do 
i am BRAND new to the modding community and just wanted to say hello!!! i have been playing with mods forever, finally decided to make some myself! i wanted to ask a general question, are any of you really in to the art piece of it and not so much the coding/writing text files part of it? i love the code writing but unfortunately lack artistic talent so i have such big ideas but cant make them pretty 😭 not sure if people ever collab on stuff like this!
people collab sometimes, but it's pretty rare. usually they'll post examples of their work and describe what their idea is/what they're interested in, although being more specific about your idea will narrow the pool of interested people. if you know exactly what you want, another option is to c*mission an artist (careful about that word, we have scammers sometimes) or offer an exchange
however i also believe that you'll never get good at pixel art if you don't try
plenty of us start from zero and you can get encouragement and feedback in #making-mods-art
also a belated welcome to the community!
thankyou so much for the thorough response!!! 💜 and the welcome
Commissions (spelling it out because I want one of the scammers to DM me
) definitely do happen! Though they're obviously significantly more likely to happen once you're... well, established and people know you.
Hang around, make some cool stuff, make friends!
And welcome to the mod making side!
(if you're looking for people to commission, check the wiki instead of asking here, or just ignore the eventual dms
)
(But yes, if you say the word commission and someone DMs you with the messages you said it in forwarded to the DM or screenshotted... it's probably a scam, and you should let us know.)
I haven't actually seen forwarding yet surprisingly
any favorite pixel art software/websites to check out? i’ve tried a few but haven’t gotten too in to it yet
I've seen screenshots of it but they never do that to me
aseprite is good for pixel art!
what kind of coding do you have experience in btw?
(Also casual plug for #programmers-off-topic on that same line of thinking.
)
it was 500k for pams house right?
Hmm, something i do a lot with some other modders i know is just trading modding-related favors with each other, (for example, if I’m really struggling with a specific drawing, i might ask one of them to finish it for me and i help them script an event, or something of that sort.) you might be able to stuff like that if you’re interested!
yup, I've done code for art trades in the past too
Or art for art if i get stuck on something!
but not everybody will take you up on that, you kind of need to know someone to ask them, and never assume that someone who has commissions open will accept code instead of payment obviously
Yeah, you’d generally only do that sorta thing if you’ve already established some sort of friendship, or if you’re genuinely interested in each other’s projects and want to contribute
that makes a lot of sense, i appreciate all of the insight! i am starting off building with content patcher while i refresh my memory on c++. i am a software engineer actually but that is not the language i use at work so i have to relearn it lol
Well fortunately, you won't be using C++ here!
c++ 
omg BIG if true
It is haha
It's all C# for the code side.
It's C#. or content patcher
Cp is its own language of sorts
shoot im down to contribute to helping code things , i joined the discord today to praatice my c# here since im going to college for it and want something fun to make
the only thing that uses c++ is tiled plugins, but you can also do a fair amount with javascript for those
I mean granted you can use C++ in mods you make... but you would want a very, very good reason to bother. 
but for both of you, I recommend just making stuff! a lot of c# stuff doesn't require art assets at all
also this is the nicest most supportive discord i’ve ever joined i was so embarrassed to start asking questions. thank you all for your responses and warm welcomes it means a lot 😭
we love polite new people here 
awww :) yeah ppl here are so sweet and helpful i was also so excited about it when first joining haha
lol seems like it , @prisma olive what ya interested in making ?
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 am mostly focusing on “machines” atm, creating new ones and modifying functionality on existing ones! i have one save where i went the Joja route and my farm looks like a factory/warehouse, i kept thinking how many more machines i could use to fill up the space lol. so far that seems like stuff i can do through content patcher
mines a content expansion where the player goes to some islands where the jumino come from to re-establish harmony/rebuild a small town there , that way people have a good dlc for end game (especially when you reach the 1m dollar and up in farm incomes as there isnt much to do as a millionaire by then )
thats an expansive idea
thats dope id had the itch to make a machine/automation mod but couldnt come up with much of a usecase aside from furthering artisain goods
Ooh love lore-based mods :)
I only know how to make maps so far. So I am working on making town upgrades.
ooohh yeah , id always wanted there to be more building customization/upgrades !!!
to me that would also bring a lot more game time to playthroughs and end game content (i always speed run community center )
as far as map creation what sortaa tips would you have for someone who hasnt played with tiled before with stardew in mind ?
its nothing with farm buildings
I would make sure to check each layer individually, and make sure edits to layers correspond to the right layer
if you accidentally change a tile in a wrong layer, like adding a cushion to buildings etc, it will make the player unable to travel over that spot.
id like to see the town actually progress a bit, like why wouldnt it if your there literally fixing up so many parts of the cummunity
And if you're making maps, to make things easier for you with Stardew: https://discord.com/channels/137344473976799233/1399862293331972246
Sadly I dont know how to actually add upgrades
So when I play I use add them as content packs at the appropriate points, and then remove the amount of money I would have it cost.
tfw you buy 5000 stone for roleplay purposes.
this is very helpful , lol i got lost in the channels for a moment and will have to actually take the time to read through more of the channels seems yall have way support and how to tips than id hoped for lol
that is indeed, its better than what I was doing
have you played with automate yet?
regardless, as long as no ai code or art is used generally we’re very happy to help with any questions so don’t hesitate!
nawh not yet had mainly stuck to content expansion mods primarily expanded and east carp , grandpas farm extended
niave question , as far as ai code how would someone actually be able to tell if its ai generated (images/assets i can certainly understand being able to tell the difference ) aside from how much ai just generates code comments every few lines ? im currently going to college and learning c# python , and java .
listen. personally I can tell ai code just from the vibe it gives when reading it a lot of the time, and I promise you your lecturers can too. you aren’t doing yourself any favours.
id be wasting 12,000 dollars if i went the ai gen route so i certainly frown at the idea in my own perspective
ah, you’re on the same page then
half the time the ai code either doesn’t run or doesn’t do what was prompted, so a lot of the time, running it is enough
so glad yall are anti AI code / art omg what a solid group
lmao
and then there’s the fact that at least once someone left some chatgpt stuff embedded in the dll
clankers be clanking
it’s actually against server rules to post!
(I recommend against using “AI slurs”. It humanises AI in a way that’s unproductive and gets us used to communicating in a way that isn’t exactly great. I’ll try to find the explanation an actual linguist gave for why it’s less than ideal)
ive seen people are getting refunds for cod 7 bc of them using ai to make the game and found it hilarious
I’m glad your uni is teaching useful languages though, the only ones mine did were scala and haskell 
huh ?
“clankers”, that’s where it started! I’ll try to send the video in #programmers-off-topic later if I remember
it was initially a fictional slur from a scifi book iirc
clankers are what characters called the basic droids in starwars
im confused on how it humanizes them , are you saying that anti ai collectives will be more likely to find symapthy for them ? i dont think even in star wars did that happen .... so im sorta sure im misinterpreting your message
as in, you generally only insult things that can think. I don’t usually call my calculator names haha
(i think insulting inanimate objects is pretty common...)
(I might swear at my calculator, but I wouldn’t necessarily call it names
idk if that makes sense though. anyway it’s just personal opinion, at the end of the day you aren’t actually calling a human anything so nobody is directly getting hurt)
I absolutely call my computer names
my laptop sometimes becomes my nemesis
huh, i didn't think of it that way before but it makes sense! it's kinda like by using a slur to refer to something in a way separate from venting frustrations, you're almost humanizing it by implying it can feel hurt or be stopped by these hurtful* terms due to its hurt
although i insult the shit out of inanimate objects constantly
..and sometimes praise them too-
like 'yay good job object'
So to make a new community upgrade, I would need Harmony correct?
like the shortcuts?
like pam's house
it mostly depends on how you wanted to sell it, otherwise its just map patches
I would have it cost money
i figured, i meant more a matter of where/how you wanted to sell it
you wont be able to add a dialogue option to robin's choices of things to buy but you've got options otherwise
what other options
you can just set a mail flag when purchasing an item, though i think its chu's PeliQ? that lets you sell insta-disappearing items whose main use is for setting flags
could do Unlockable Bundles
MMAP has some question dialogue stuff i believe
pick your most preferred way of setting a mail flag, basically
mail flags are for mail though
theres undoubtedly other options out there too
no, mail flags are for setting flags
most of the mail flags in the game are things the player never sees
some of them just also happen to have mail in the mailbox
ah
if it doesnt exist in Data/mail, then adding a certain mail flag will just set a flag on the farmer that can be read with GSqs or CP's HasFlag or whatever
if it does exist in Data/mail, then it'll still do that, and also show the letter in the mailbox
(if applicable)
if it doesnt exist in Data/mail then just make sure you send the flag directly to the received inbox
I might try the unlockable bundles. It seems the easiest codewise
can it perform multiple patches at once?
Quick question, how do you make the game check if you don't have a mod? I don't mean like check cus it's a dependency but If you have X mod then you get X map but if you dont have X mod you get Y map?
I could just make two downloads but i wanna make it a smooth experience and actually learn lolol
"when": { "hasmod |contains="y": false}
But in general cp prefers positive conditions not negative
So patch y map by default and if mod X exists then patch X map
dynamic tokens/etc can do similar things, but yeah, contains can check for false on most tokens
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/tokens.md#contains
Thank you! I was looking for how that command worked cus i've seen it elsewhere. And yeah i figured it's better to use positives but it's about moving around a shop on the same map, I'm worried i'd just end up with two shops?
Been scouring the page but can't get my head fully around it
Without touching priority, your patches for a given target will run top down in your content file, so last patch will do it's change last
Okok so i'll just have to put the changes on the same .json file, I'll try that cus i think it's the cleanest fix ^^
yeah, generally speaking it's cleaner to have your "base edits" that always apply, then follow up with additional changes if a particular map is installed
though negative hasmod seems fairly common in my not-really-a-CP-user exp
if the base edit is adding a shop then it sounds like thatd lead to the two shops issue they want to avoid, without a negative condition?
You can't have two shops with the same id, if it's adding the shop via entries the second patch will just replace the first
Does anyone know why my new shirt is rendering like this? 😭 I have an 8x32 sprite sheet and I'm using Load to bring the texture in
it's about moving around a shop on the same map
Yeah exactly, that's what i was thinking it'd just do
If you truly need them mutually exclusive then yeah the negative test is needed
I do ^^" But I'll see if this is a continual issue with mod compat, in that case i'll just stick to the new version (the one made for compatibility) cus it's fine, just not what i originally made lol I also wanted to challenge myself with an easier compatibility fix before moving onto more difficult ones
Once the conditions are mutually exclusive they don't have to be order specific anymore
Right right!
it'll help to share your content.json here: https://smapi.io/json
and probably to upload the shirt texture here in discord, for coordinate checks
They're switching back and forth perfectly now, thank you guysssss!! <3
I'm not familiar with the current shirt system personally, but judging by Modding:Shirts, you might need to keep the image 256 pixels wide even if you don't need* the space, e.g. like this
(well it's hard to tell with how they upload here, but it's 256x32
)
Yep, I am pretty sure you have to leave space for the dye mask even if it's not dyeable
Ah okay, I read it like that initally but thought "Well, that can't be right..." 😂
May as well try it!
Thank youuuuuu
some of the game's textures are picky like that, especially ones that have been around a while
Confirmed fix! Thank you so much!
If the wiki says it, it usually is right. Modding games (or basically working with any software on a technical level) often requires sticking precisely to certain conditions, even if they don't seem to make sense.
Oh yeah, of course! I meant more that I must have been misunderstanding it
Yeah, I more meant that you need to expect such weird restrictions when working on mods. So better try to take anything literally you read there. Even if it feels weird and you feel like you misunderstood something.
I’m making some new machines and need some help with flavored items. I want the product to inherit the flavor of the input item but whenever I use DROP_IN or DROP_IN_PRESERVE it’s not working how I thought it would? I’ve also tried selphs Extra Machine Configs with no luck and so many combinations of things at this point that I’m just lost.
Basically I want a machine that makes cheap wine/juice/jelly/pickles/roe fast but the output is either my cheap item but no flavor or it’s vanilla flavored item with a cheap price. I also got it to display my cheap item with flavor using
ObjectDisplayName: %PRESERVED_DISPLAY_NAME Joja Wine
But the problem is when you combine vanilla and modded items in your bag the prices change to match. They don’t stay as two unique items. Here’s my content.json and the Machines Data starts at line 329 towards the bottom. It’s a problem with both the jar and keg but the non flavored items like beer/caviar/coffee etc all seem to work.
https://smapi.io/json/content-patcher/ee3f34773b1948f79264b8171c28fc16
Should I expect some entries to be cleared if I don't specify them in EditData? I only wanted to update the price of a vanilla shirt, so I just wrote
"1260": {
"Price": 15,
}
}```
but it defaulted (?) the name to 'Shirt' and a couple of others
Like, from scratch-scratch?
I know I want to make a content pack because I wanna make my own npc but no clue where else
Id assume so I dont know any other way 😭
Start here! https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md
Oh, I maybe should have used 'Fields'!
yeah, "fields" (or if that's not working, the TargetField system) should let you edit values without resetting everything else
"entries" overwrites the whole thing and uses default values for anything not specified
!startmodding
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn programming.
!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!
Sorry for this dumb question: does the Content Patcher <> Fashion Sense integration allow FS actions on CP items? https://github.com/Floogen/FashionSense/wiki/Content-Patcher-Integration
The wiki entry makes me think CP can affect FS (like locking an item until getting an achievement), but not the other way around (which I want, so my CP hat changes appearance based on being indoors/outdoors)
breaking news: GSQs work in event dialog!!!
now to add this to the wiki
This feels like it should be so simple, but I'm trying to get it to do a lot of little things I guess 😭
no clue here sorry 😭
okay i wanna add the whole 'GSQs work' thing to the wiki entry for the speak event command, does this make sense? how could i phrase it better? highlighted what i added
i dont think there's any dialogue commands that don't work are there?
uhh could you clairfy?
the logic of speak is to construct a new Dialogue and push it onto the speaker's dialogue stack
mhm
if a syntax works in regular dialogue, it should work in speak
Okay, soo maybe something like (but with the proper formatting ofc)
Dialogue commands still apply when using speak.
hm it already links to dialogue page https://stardewvalleywiki.com/Modding:Dialogue#Format
i would update that link to the separate page instead of redirect probably
true true, but i didn't know that stuffs like GSQs work
well they kinda fall under the bucket of "is a kind of dialogue syntax"
okay
Show dialogue text from a named NPC~~; see dialogue format~~ with dialogue commands parsed and applied just like in standard dialogue. The quote marks need to be escaped (") when events are written in JSON as with Content Patcher. For example speak Leah " My dialogue has been escaped! ".
i would prob change it to this
oooh yes!
maybe change leahs quote to something complex that uses several dialogue commands?
the example is about quoting the dialogue string
yeah, that is true
not about advanced usecases
yayy new wiki thing is now live
is there a way to make an event trigger on a certain level of the mines?
asking cause I'm looking for location entries for specific mine floors and can't find any :(
oh i could just use spacecore
...hmmmm if i find out how to determine the specific level in the conditions
i mean, there's MINE_LOWEST_LEVEL_REACHED and LOCATION_IS_MINES but none of those are what I'm looking for...
I'm backreading very far back so I'm sorry if this was already mentioned or you've already changed your plans, but I really strongly recommend that you work on getting the map in game as soon as possible. Before you've even done any more than copy a vanilla map and rename it. It's extremely easy to put a lot of work into a map that's all wrong and not find out until you're trying to put it in game, where you then have to do a lot of tedious fixing and rework. Much better to get it in game asap so you can test as you go.
could adding trees that can produce moss be done with cp?
hmm, like a moss-generating fruit tree?
You can add wild trees that produce normal moss
I don't think you can make custom moss atm?
There was c# mod but it may have broke with 1.6.9
i see. thank!
I could probably make custom moss happen if u need it 
It's a little difficult to get it to work using CP alone, but I've found there's UndergroundMine1 - 119 (120 being the end). But there's also MineShaft as well, which is just the mines in general. If none of those work, it'd require you writing a small SMAPI mod for specific locations like those. At least from my understanding anyway.
hmm, could you clarify please?
I think the problem with this has less to do with checking mine floor but more the random layouts
I also don't know if event warp out is well defined
Yup that's the problem
hmmm okay
My recommendation is to simply have event fire on the top floor
It'll be less of a hassle and you can imply the player went down there
and then switch maps
hmmmm, what about constant/unchanging floors of the mines, like floors 10, 20, etc
there's this though not sure if it still works https://www.nexusmods.com/stardewvalley/mods/26220?tab=description
I see chu mentioned it already
It would still be "MineShaft" technically speaking. You would have to check using SMAPI for the location first, for example:
if (Game1.currentLocation is MineShaft mine && mine.mineLevel == 10)
...okay it'll prob trigger on the top floor then-
Sadly 🙁
I haven't messed around too much with it myself.
dw haha, tysm for helping me!
No worries! 🙂
Theoretically, mineLevel could be something ContentPatcher could expose, right? Or would that not fit for some reason? Like, if currentLocation isn't a MineShaft, it's null. That would be my idea. Any reason for why it shouldn't be implemented?
ooh?
Sorry, please don't get your hopes up. I was suggesting that theoretically that feature could be added to Content Patcher and asking whether there's a reason not to add it.
Totally!
It would be a nice to have feature if CP could directly call a method like:
Game1.enterMine(20)
OH dw haha, I'm just curious about your ideas :) i think you can suggest stuffs for future SDV updates here: https://discord.com/channels/137344473976799233/1387907186713301072
That's more for vanilla stuff, not for Content Patcher stuff.
I'll sit down tomorrow and look at the code then. Maybe I can get a pull request done at the end of the weekend.
Nice! Yeah something for later down the line for sure
Yay. Though it's almost 3 after midnight here, I should go to bed.
Yeah sleep is important, I'm in Australia so midday here lol
you should haha, gn!
Thank you 
LOCATION_MINE_LEVEL <location> <min> [max]
YES it's happening 
doing stuff like calling game functions to do something like that isnt really content patcher's purview. the token maybe, though you can already check if the location is a mineshaft with the LocationName token anyway
Okay so im in the middle of creating my own npc and im in a pickle that the tutorials dont seem to explain (Im probably just being slow) but I have my base content json and minifest json but im super lost about how to start off making her with what to put in between the brackets
of the content json
have you been following tia's npc tutorial? it explains all the basic patches you'll need (a Data/Characters entry aka a disposition, dialogue, gift tastes, schedule, portait and sprites, etc)
!npc
Keep in mind that making NPCs is a complex process that requires learning many different aspects of Stardew modding.
Here are a few links that can help get you started on all that you need to know:
-
Tiakall has a great tutorial on making a custom NPC for 1.6.
-
NPCs no longer use dispositions, check the wiki page for the new NPC data.
-
Feel free to jump into the https://discord.com/channels/137344473976799233/1277457201077813280 thread for more interactive feedback and help!
-
Fireredlily has a WIP NPC Builder Please do report any errors you get with it into the NPC thread!
if you have more specific questions we can help
i can't summarize it better than that wiki page though
{
"LogName": "Blank JSON load", //The logline is not required, but it's useful down the road for labeling your patches so you can tell your problem is, say "NPC Dialogue Patch" and not "NPC Patch #14"
"Action": "Load",
"Target": "Characters/Dialogue/{{ModId}}_NPCName, Characters/schedules/{{ModId}}_NPCName, Strings/schedules/{{ModId}}_NPCName",
"FromFile": "assets/data/blank.json", //this should be wherever you put it in your assets folder - put it in a subfolder if you want.
},
Thats confusing
that's loading a blank json, which is necessary for if you want to use tokens when you write your patches in the next steps
the blank json is a .json file that only contains {}
you're not too slow, it just takes some time to understand. making an NPC is one of the most involved parts of modding, but if you have perseverance you can do it
do I need things in my asset folder for this first part
your folder structure is entirely up to you! usually people put images and maps in their assets folder
the tutorial does instruct you to put a blank.json in your assets folder
as long as you tell the game where to find the files with FromFile, you can organize it how you want
the folder structure is entirely up to you however if you plan on following the tutorial you should endeavour to match its form exactly as it says
making an NPC is not a quick process btw, just keep that in mind
Sigh
I hate when I have to do things that require effort I typically give up way before halfway
well a mod isnt going to appear out of thin air unfortunately
the only way to improve at things is to practice
but the tutorial will at least guide through every necessary step
Neither is art thats why I quit it 
New update out for Sydney, she has a new custom location for her house. This should fix any conflicts with Zoro or any weird Luau/Moonlight Jellies issues.
is there way to test run to check progress or am I sol until I have to upload
as long as your mod folder is inside the Mods folder, SMAPI will try to load it each time you start the game
you could and should really test at every step of the way to make sure its working
Also
in the content folder at format do i unput the current version of stardew or what
ooh i have a question for you! i was approached about adding compat for sydney (i edit the beach on the top left to add warps), is this new custom location completely replacing her old one?
yes, it should be 2.8.0 as of right now
(aka no, its the current version of content patcher, not stardew)
oop yes that's what i meant
Basically the way it works is that her new map is a new location sandwiched between the top left beach warps and the warps by Leah’s house. So you now have a transitory map between those two which has Sydney’s new location
oh yikes okay that makes it worse lol
that's where my location is, but we could probably chain ours together like leah's house > sydney > my place (lighthouse) > beach?
or we could simply not be compatible lol i don't mean to force you into anything
Yeah I’d be willing to write a separate compatibility patch as a separate download. Because at this point trying to make maps compatible has been a multi-year issue and frankly there’s not enough space in the game anyways
yeah it's rough out here
It shouldn’t be a hard fix, just changing the warp properties for people who use both and yeah we’ll just chain it like you said.
I don’t see why that wouldn’t work

In my manifest json should it be the content patcher not stardew aswell?
i can send you what my map looks like if you need? and i can indicate where i warp to blue moon vineyard if SVE is installed
Just DM me on discord when you’re finished with working on it, and we’ll hash it out for a compatibility patch
if you're talking about the version number, no, you control that. you increase the number every time you update
it's already out! i'll DM you right now
congrats lex! 
and re:map compatibility, it is indeed rough out there. godspeed
Oh sick
Help yall [SMAPI] Skipped mods
[SMAPI] --------------------------------------------------
[SMAPI] These mods could not be added to your game.
[SMAPI] - [CP] Renee because its manifest is invalid.
Im confused
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
!json this tool will be very helpful going forward. if you set it to manifest it will check the format of your manifest, and if you set it to content patcher it will check your content.json (or other included files)
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.
Oops mb Nic
lol jinx
@brave fable question, I could have sworn LoC had the ability to sort recipies by not yet cooked and ready to cook at the same time, or at least had a "not yet cooked" icon, did I imagine that 
I put it there and it says no errors found?
in that case can you share the link with us
which one
the link to smapi.io in which you've uploaded your manifest
the green box at the top has the link
is your mod CP renee or HRB?
CP Renee
did you change your manifest in between getting that error in your log and uploading your manifest to the site?
No should I try to rerun stardew valley?
!log yes, restart it, and if you get an error in your log, upload your log to the site and share it here
Important note: Your computer username may appear in the log. If your username is your full name, please be aware of this before uploading it.
Please share your SMAPI log file. To do so:
- Open this page: smapi.io/log.
- Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
- After uploading, it will show a green box with a URL to share. Post that URL here.
Please do it even if you don't see any errors. This has useful info like what mods and versions you have, what the mods are doing, etc. If the issue didn’t occur in your last session, please load the game to the point where the issue occurs, then upload the log.
(it's much much easier for us to diagnose things ourselves when we see the log)
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24354 on Microsoft Windows NT 10.0.19045.0, with 7 C# mods and 15 content packs.
Is this what you need
I forget, what’s the command to send your post to mod showcase?
you right click on the post > Apps > publish
Thank you, thank you
yes, and since it's same error, can you please show me what the inside of your mod folder looks like
i'm confused how it's looking for [CP] Renee when your manifest has no mention of that
Sydney has been updated to include a new location for her and her house! https://www.nexusmods.com/stardewvalley/mods/14158
Uh idk how to clip on my pc without medal and it only clips games
windows+shift+s
no, i meant the inside of the folder for the mod you are making
hmm i'm not sure what a JSON source file is, but my thinking is that the game probably doesn't like it
Was I not supposed to use that?
it should just be JSON file like so:
what text editor are you using? we recommend things like notepad++ or visual studio community
no thats normal. the json source file
oh hm
it doesnt matter what windows calls it. its still a .json
oh okay then never mind
!json can you parse your manifest
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
I thought that it would be my content json folder giving me trouble not my manifest
well the error in your log is saying the manifest is invalid
they sent it earlier forsy
Is it because I havent closed to save visual studio in a while?
i'm checking it against the wiki now but it looks right idk
hm i noticed something
Lord bro 😭 🙏
it might not be anything but
does your current file reflect what you sent via the validator? for sure make sure it's saved
can you put a set of quotes in the "updatekeys" brackets
Closed to save visual studio? That sounds like the file hasn't been saved.
Nah I close it and it auto saves my stuff when I return
You can enable autosave in vscode
I havent done so in a min could that be a problem?
Are you manually saving as you go?
Havent had to
the empty updatekeys dont matter
you do have to
Never rely on auto save. Ever.
Ever ever ever ever.
otherwise the game is seeing an old version
ah ok, good for future reference. i was just comparing it to mine and looking for differences
idek how to save it never used this
Autosave is a backup for your manual saving. Relying on it for your primary save process is just asking to lose work.
but i guess the fact that it might not have been properly saved would be the problem
I mean, I never had issues with VSCode autosave since it saves on every edit
Ctrl-s is how you save in almost every program ever
even if you reload the game, it looks for the current state of the files in the mod folder. if you haven't manually saved, it won't see changes you've made
It's still a terrible habit to be in not to save things!
Im hitting ctrl s its not saving anything should I trust its saved?
how do you know it's not saving anything
saying*
I guess this is less of an issue for C# since I have the extra build step before testing
are you editing the correct file freeze, and not a copy somewhere else?
just to double check that too
youre editing the one in downloads and not the Steam or GoG folder
their earlier screenshot of their mods folder is the same folder, so presumably theyre running stardewmoddingapi.exe from in there
but if that presumption is incorrect that could be an issue
it's still under the Stardew Valley folder so it shouldn't be a problem, no?
Thats correct
Oh ye their log also says ~/Downlaods/Stardew Valley/Mods my mistake
Everything I have runs fine but this because of manifest when its through downloads
if you've saved your file, you can try restarting the game again
This has to be a new kinda slow I got like 6 people helping me rn
nah we just all love solving problems
oh fun
Is your Stardew in downloads because it's pirated?
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24354 on Microsoft Windows NT 10.0.19045.0, with 7 C# mods and 16 content packs.
oh. now it has no content.json
did you save your content.json
your content.json file also needs to be saved
They shouldve both saved when I closed the site
If you see the white dot next to the file name, it means it isn't saved btw, it's an easy way to tell
This is probably why im getting an error?
Why?
I'll take that as a yes.
I bought this game on 2 different platforms already man leave me be a pimp is broke 😭
that screenshot indicates that your content.json still hasnt been saved
(The "why" is that I don't help people with a pirated copy of the game so I wanted to make sure before I stopped helping.)
Sorry I guess
FYI piracy is against the rules of this server
I jus dont see why a man gotta spend more money to play the same game he bought on a dif system but alright ill delete it
It's not against the rules to help people with pirated games, I just choose not to.
(to be clear, it's not against the rules to help with things unrelated to piracy. its absolutely against the rules to help with pirating them or making a pirated game work. just so its not confused.)
Well you arent making it work or helping me do it
The content.json isn't saved
Yes, thank you for clarifying
Whoops I pressed the wrong button.
Thank you for clarifying 
Awesome it works I just gotta clarify more in the content
buying SV on 2 platforms that aren't PC is a skill issue imo
i bought a game on 3 different platforms before. xbox, switch, and pc. i play a grand total of none of them anymore
It's 15 bucks I just don't have right now
I plan on officially buying it tho when I get it
I was sick of playing with no mods
Tbh I'm semi surprised SDV isn't in the Xbox play anywhere system but might be an historical quirk
I looked for it but nah
I thought it's on gamepass
Can someone help me with the big error with my mod at 23:45:13 in my log? Here's the link: https://smapi.io/log/badf7bbfd64b45f5b65306b847d12bce
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26200.0, with 59 C# mods and 130 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
if i had to guess, you copied a patch or perhaps another entire CP json with format and changes and everything, after what was originally the last } in the file
Let me see if theres a separate problem?
it is, but the pc xbox store entry is a separate game to the xbox xbox store entry
im assuming due to it being on xbox since 2016, but wasn't until .net5 or .net6 and loosened publishing rules for microsoft store that let it have its pc entry later for gamepass but never ticked the play anywhere button (maybe due to pc not able to use xbox save file?)
huh
that's an oddity
"you should update this mod" mod URL is completely wrong
wonder if they used the manifest.json from a mod they had locally
I have risen from death!
I've lost my resources from a few years ago when I was wanting to make a custom NPC. Anyone happen to have the links or know where they're posted? Mostly about how many dialogue options it's recommended to have. I want to work on the hardest parts first, pixel art, then dialogue and events
!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!
Sweet, didn't know they had a command for it. Thank you!
I should probably update my mods.. Though they still work, technically
is this how i report mod bug in nexusmods? where do you guys recommend to put image on? because i found and kinda fix a bug in Machine Progression System mod
you'll need to use some kind of image host
can you recommend me one?
ive never used one before
imgbb is good
hey gang if im targetting a mod's i18n file, what path do i put so it doesnt get confused
You can't edit another mod's i18n file
You can edit the string in game so it points to your own i18n file instead, but the content of the other mod's i18n is off-limits to you
sooo if i wanna like, do a "not a farmer" patch to sve, how do i go about it?
mod that replaces ur job title
Download not a farmer and copy that?
If it's a personal use edit i would just go ctrl f replace "farmer" in sve's i18n
ouhg i wanna change it with configs and all 
For that then you'd need to override the actual lines of dialogue
i come here with outrageous or difficult ideas every time LMAO
Yep, for (a made up) example if it's Andy calling you farmer in his Monday 6 heart dialogue line you'd do this:
{
"LogName": "Change Andy's farmer lines",
"Action": "EditData",
"Target": "Characters/Dialogue/Andy",
"Entries": {
"Mon6": "{{i18n: nau.replacement.andy.line }}"
}
}
It's less hard and more tedious
It's not outrageous or difficult imo. Just involves copying the whole line into your i18n and changing just the "farmer" bit.
to this baby modder it is
thank u v much again chu and aba 
It's not harder than what you thought you were going to be doing
yuh 🔥 🔥 i love learning new stuff
That's the attitude that gets stuff done 🦾
does anyone have any youtube channels or videos they recommend to help with learning to mod? i have learned sooo much of my programming knowledge from youtube, figured id see if anyone had anything they liked!!
Most of the videos are out of date, unfortunately. There are some - like ones teaching how to use Tiled to make maps - that are still mostly relevant as long as you don't use it for any of the .json side. Some people have reported that the older videos are still helpful for grasping concepts even though the specific information being taught is now incorrect (not entirely incorrect, but some parts are and if you're new you won't know which bits).
I think most guides r text cus that's easier to update
yeah
video guide means sitting down to record, then all the editing
which takes a long time if it's not a very very straightforward "click this. now click that" type of tutorial
Easier both for the original tutorial creator and others: I can (and do) edit other people's text tutorials on the modding wiki but I can't do anything about a video.
And I can copy-paste stuff better if it isn't a video (of course you have to understand it first and edit it in your favor).
can confirm, have made video tutorials for other things, hated every minute
yeah that makes a lot of sense
It's wild to me that people like videos to learn how to do stuff, it has so many flaws compared to written instructions (if adequate pictures are included ofc)
like, I get that it's better for people with dyslexia and stuff like that, but other than this case, I don't get it
maybe good to precise that I'm talking about learning computer abilities
i have found i learn best when i have a specific example to build off of, which i’ve found a lot more videos give me “create this specific thing with me” vs a lot of the guides are just “here are instructions on how to do anything” and it’s a bit too vague. could just be the specific things i am looking at, but that is the best way i can explain it I’m not sure if that makes sense lol
it is indeed good to have both general documentation (how to do anything) and specific examples (what I call templates for FF)
there are some guided text tutorials for SV modding if that's what you're searching for
for me i kinda get confused more by the specific tutorials and templates because what i want to do is usually not cookie cutter enough for me to be able to use them
me neither, but I bet people who ask "what's a Jason file?" probably need them
which is why im usually looking at the very general sdv wiki for stuff rather than the modding wiki
😔 i still cant believe there's people who have no idea how to extract a zip file
feels like computers should have a "how to use a computer for dummies" manual built in
can't now that you need to look at the Shop Data structure if you don't know what is an EditData patch
Good Linux distros have this 
idk, i just like looking at other people’s code that does something specific and deciphering it and understanding what pieces do what versus just a general guide but again thats just how my brain likes to absorb knowledge
i don’t think any persons way to learn is wrong 😊
I think the best thing to do is to just say roughly what you wanna make
yeah, and these exist in text form for SV modding, what are you trying to achieve? Maybe someone knows where to find this for your use case
People here can usually point you to the right resources
beat me to it
As for general guide you can take a look at the wiki guide for C# mods as well as content patcher documentation
!startmodding
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn programming.
iconTexture: this.Helper.ModContent.Load<Texture2D>("assets/zoom.png"),
What if I want to use the vanilla spritesheet, what do I put here?
Do I just type "TileSheets/BuffsIcons"?
I'm gonna stop u right here if you do this then people can't retexture your ui
load into an actual asset please
Hey I have a quick question...if one of my mod users is having their "macos permissions" denied, is there anything I can do to fix that in my mod? I don't know anything about mac
Its for personal use only, I just to want add a weapon speed multiplier when I have the Scout profession
to get a texture from the game's content (or other mods loaded texture to content)
you can do Game1.content.Load<Texture2D>(blah)
why did nobody tell me this sort of thing when I started making FF? It would have saved one or two refactor 
well if i was around when you started making FF i'd tell you to not do custom content pack 
no one knows what's the best way to do thing when it's the first time
sometimes u luck out and get it right and sometimes u pay for tech debt 
meh, I still think custom content packs are cleaner than building an asset on top of CP. The FPack data assets go through the content pipeline anyway, so they are editable with CP
the benefits r more on benefiting from cp features implicitly
however, knowing how to do proper data models to import json in C# would have saved me three refactors 
and the "content editing" mod doesn't even have to be content patcher in the long run
i was influenced partly bc when i was starting framework type mods, casey was working on a content engine feature in spacecore
wdym?
lets say the unlikely event that content patcher the mod stops working or gets replaced by something better
istg npcs are addicted to randomly walking into the void during events
i wouldn't really have to change anything on my end for the alternate content editing mod to continue giving me data over content
because custom assets are format agnostic and only cares that there exists a content pipeline where i can do Load from
Isn't that true for either method? Custom Content Pack or just custom data asset?
yea sure, it is just that ppl could have choice in what base format they want to use 
still i do know im coming from a perspective of system design enthusiast and to a typical modder they just go
ah i write jsons like this and my thing goes in the game yay
hoping someone can help - i made a really simple mod through content patcher (for myself) so that my farmer can use the geode machine to open artifact troves, golden coconuts and both mystery boxes (i hate visiting clint lol). it is working totally fine, no error with functionality but whenever i run my game, SMAPI tells me i need to update my mod and gives me a link to LookupAnything on nexus. i have no idea why, i have been playing with it but cant seem to find a cause. again it’s working fine so its not a huge deal but i am just curious if anyone has seen that before ?
i think it means you put lookup anything's id in the update key
do you remember changing that
If you copied your manifest from lookup anything it's possible you forgot to change it
omg yep i accidentally saved an older version of my manifest file 😭 ty
it's also in half the examples on the update checks page 
ooooh, never knew it had support for betas and subkeys
farmhouse is a building so it's following building logic
player is placed 1 tile north of the first warp
nope animal shop is not a building
it's a map
building as in a farm building, something robin will move around for you
It's how the game handles building interiors. You could change it with c# but I'm not sure I would recommend it
you can use this to add a second "human door"
but it has to be placed on the building to work
whats your actual usecase tho 
yea if its events then that makes sense
usual disclaimers about custom farmhouse r u sure u want to do a event in farmhouse apply 
@rare notch do you know which mod you need to edit?
Cornucopia artisan machines and distillery, but I see the artisan machines needs an update.
Basically, the machines are overriding the malt. I get dried corn instead of malt.
I think I have to edit corn? To either prioritize malt or make it not a vegetable.
to prioritize malt you would probably be editing machine data (i say probably because i’m not familiar with either mod nor have i done a ton with machines)
[[Modding:Machines]]
Thank you! After I run my day in my save, I'm going to make a backup and attempt to edit these machines.
I've had some headaches with machines not producing what they're supposed to (dried corn instead of malt and sugar instead of molasses), so hopefully I should be able to fix it with the help of that link.
wiki says Molasses is a byproduct of sugar
good luck! if you don’t want to mess around in other mods’ files, you can also make your own content pack which will go in and edit on top of those. for that you should be familiar with content patcher documentation https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide
I know it's supposed to make both, but it annoys me because I have no use for the sugar. I'm trying to produce rum.
does it not make Molasses?
It does as well, but more sugar than molasses. It clogs the mill chest and such.
Basically, I'm considering editing sugarcane in the mill to only produce molasses. Might not be possible, but would make my life easier.
i'd imagine it would be possible
just gotta find the Molasses code
Hi all I was in here earlier this month working on a PIF and I had an issue where my room did not allow me to change the floors and walls. I had to take a break for a while after that but I am looking to fix it again. Here is what the room currently looks like in Tiled and I also have what the current map properties look like. Am I missing something or did I do something wrong when making the map?
I definitely need to edit the corn and such, though. I can't produce alcohol without malt.
how is malt even made
Do you have the walls and floor tilesheet
yeah i do I can load the map just fine and everything
dehydrator. Hence why I'm getting dried corn from the artisan machines.
I wonder if it's cus your wall tiles r only 2 high instead of 3
Don't remember how that works off hand sadly
What do you mean?
Your wall tile data stuff
Do they need to cover 3 tile is the Q
I'd go compare your map to a shed map
attempts to find malt in code
if I compare myself to one of Kisaa's this is what it looks like
yea it is just about checking if the tile data all match
oh also remember to turn on snap to grid
yeah I have snap to grid on
the tile data must align 100% to apply here
hm your flooring tiles
are they from walls and floors sheet?
yeah
they look horizontal tho
ah shit
yea make sure you use those and stuff
Ok let me fix the floors and see if that fixes the floors ingame
in terms of dialogue changes, what is the practical difference between Include and EditData?
Include itself doesn't let you edit dialogue unless you're including a json that has editdata
fixed it still no luck
im not sure then, u may have to send tmx to see if ppl can help check more
one thing u can do to ensure that it's not a pif bug is to set your map as the shed's map
like just edit ur map over Maps/Shed then make a shed in game
Oh ok gotcha
I'm gonna try that but I will also upload the tmx so people can check it
No errors so far, I hope this work as intended
Nvm, this is actually insanely awful
I did a bit of research and it seems like someone is selling a solution for headless server.
dont constantly do things in update ticked if u can help it 
you can detect player health changes with the net events instead
oh wait i guess health aint a netint doomed
Yeah, I just realized that UpdateTicked will also create buff every tick lmao, so I moved the buff constructor to GameLaunched instead. Now I'm having bigger problems lmao. C# is hard but I'm loving it
i feel like you dont really need to do the per tick checking in any case
those buffs aren't being created every tick
what if you just check health when the buff's about to expire
they're gated behind you not already having the buff
that update ticked event is really not doing much
Ohhhhhhhhh
it should be fine to subclass Buff (since it doesn't go into save)
it's doing basically nothing most of the time
then u can override OnAdded/OnRemoved to do stuff
aren't you the one who wrote it that way
Oh yeah, I forgot that I put the buff constructor inside the if statements XD
I'm too worried about the tick that I didn't realized it's gated
Okay, so, Cornucopia Artisan Machines looks like this.
I'm not well versed in code, but I would assume this means that if I want it to not turn corn into dried corn, I should remove the vegetable tag from corn? Or is there a way to add an exception?
You can add "!id_o_whateveridcornis"
you can add a condition of NOT corn—you’ll have to look up what the [[Modding:Game State Queries]] is for being a specific item, and you’ll have to look up the qualified item ID of corn
Put this in required tags and it will be excluded
Odd. Does this mean the cornucopia drying rack is supposed to work for malt? Because last I checked I couldn't give that thing corn.
those are just config strings. the actual code would be in Data/Machines
Id as in the number? Corn would be 270.
Yeah that
You can check context tags in game with lookup anything
the id_o_<id> is one of those automatic tags game makes for u
I'll attempt adding corn as an exception to the dehydrator.
For clarification, this goes under conditions, correct?
Is this correct?
u forgor the comma
I always do. Thank you
I revised it, I'm not exactly sure if this will work, but in theory it should
SUCCESS! THANK YOU @lucid iron and @urban patrol !! :D
i am a little scared that this is happening on a phone screen can phones these days compile C# 
I wanted malt instead of dried corn so I could make alcohol.
where does the malt rule come from
Distillery Building. It's used to produce alcohol.
If i put the corn into the distillery raw it becomes moonshine and Lewis yells at me.
it's probably better to go into the distillery mod and then moveentries the corn malt rule up
so if u ever uninstall distillery you can still make dried corn with cornucopia
I can't really find anything in the distillery mod to be honest.
I'm writing it in a C# IDE app, but I'm compiling it in either GitHub CodeSpace or Termux
i am very scared now 
is it this mod? https://www.nexusmods.com/stardewvalley/mods/31759
Yep!
yea u just need to search for data/machines basically
like this
there's a block targetting the dehydrator in the Harrys.json file
then u add moveentries here to make them higher up
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/action-editdata.md#moving-list-entries
Oh okay. I don't plan on removing either mod, so I think I'll stick with what I've already managed. Thank you though!!
the reason why moving here is better is just cus i also see wheat and amarath in the malt rules 
I got the bigcraftables json, but the machine json is saying my BC isn't a valid target field. I've made sure the values match but it's being stubborn
if its your custom item then you cannot use target field
just create the field from nothing
that wasn't it
turns out load order is important
😭
I had the machines json loaded before the bigcraftables
i dont think that matters but it does matter if you got a Data/Machines edit that creates your machine before doing target fields on it
hii i wasn't sure how to do this but i wanted to set a conversation topic through mail so that i could use the ActiveDialogueEvent precondition for an event so it only triggers after receing the mail. but then what would i set the duration of the conversation topic for? i don't want players to get locked out of the event somehow 
wait you can do that?? oops probably missed it 
ohh i see it's one of the gsq options sorry
also is it possible to set a mailflag based on friendship level?
yeah just trigger action
oh i see thank you!
condition PLAYER_HAS_FRIENDSHIP or whatever it is, action AddMail received
important though that’s different from checking the player has that current friendship level
you need to set the internal name appropriately so they don't stack
per the wiki:
The ObjectInternalName can optionally contain {0}, which will be replaced with the input item's internal name. This is used to prevent flavored items from stacking (e.g. apple wine and blueberry wine).
that mail flag would be “player has ever reached x hearts”
and yes I found your post via egosurfing
so for your joja juice for example set "ObjectInternalName": "Adam.Joja_Juice {0}"
oh hey selph quick question, can EMC bc used to randomize outputs? (from a list)
that's already vanilla
oh
if you put multiple entries in OutputItem one gets picked
if UseFirstValidOutput is true the first valid entry in the list gets picked
otherwise it's random
u can also use randomitemid on a single rule right 
yepp
i think that even work for item query
when exactly are events marked as seen? the moment they trigger or?
thanks
i know this is a super late response but you can remove sugar as an output in the mill.json file in More Crops!!! you can either adjust the amount of each item that gets produced or just remove sugar as an output all together
Thank you!
how can i specify 'any item with this context tag will work' as a machine input
requiredtags
[[Modding:Machines]] for full reference
hey! is there a way to find a list of SDV $schema-things?
It's listed on smapi docs
I assumed so haha, i specifically meant the sdv-modding-related ones
Some mods do have their own schema stuff too
HMMMMM intersting 
the ones on that page are pretty much the entire list
Are Robin's Community Upgrades stored in any json files? I would like to make shortcuts upgrade available sooner.
that's all pretty much hardcoded, as far as I can tell, though it *might* be safe to add a separate means of getting the "communityUpgradeShortcuts" flag that triggers those
Thanks
There is a mod that adds them based on settings, and you can do each one separately. I think it just does it by applying map patches
SOME of the vanilla shortcuts have map files and I could not find the others. I imagine they just made the map patch themselves for the others
it's a cheaty workaround kind of thing, but you could maybe do something to get them early using the same method? The second upgrade woudl still show up though
Yea, I have it, thank you, but it would be nice to make it fancy - instead of enabling/disabling.
https://smapi.io/json/none/1048a5c52dae47259a2fb294e8e6f944
Howdy, for sending mail after a quest completes, typically we have a now and tomorrow option, however, is there an option for setting an amount of days? (like 7, 14, 21, etc).
Didn't see much on the wiki about it, but I could have forgotten to expand a field on the wiki
and yeah useless 300,000 upgrade
Yeah, so you could hypothetically do the map patch thing they do and have it sold somewhere
You just can't really change the actual shortcut buying thing since it's hardcoded
There isn't a direct option like that, so you'd probably need to set up a separate trigger action in Data/TriggerActions. From what I understand, events automatically generate conversation topics, and those automatically generate "memory" versions of themselves over time, so you could try something like this:
{
"Action": "EditData",
"Target": "Data/TriggerActions",
"Entries": {
"{{ModId}}_SendLetterInOneWeek": {
"Id": "{{ModId}}_SendLetterInOneWeek",
"Trigger": "DayStarted",
"Condition": "PLAYER_HAS_CONVERSATION_TOPIC Current eventSeen_YourEventID_memory_oneweek",
"Actions": [
"AddMail Current {{ModId}}_YourLetterID now"
]
}
}
}```
...though I just realized that's a quest and not an event
you could use the action to add a CT instead, if they don't generate one
Hmm, I'll try this out! Thank you!
Also, last question, do you know where on the wiki it shows all the possible "Condition" properties? I was looking for one to check fishing level, but cant find the wiki page that lists them all! ^^
all the fields that use them are generally labeled "Condition", but GSQ is the internal term
This page is extremely delicious. "PLAYER_HAS_TRASH_CAN_LEVEL", this is one of the funniest things I've seen.
I am not joking, this is delicious, thank you, I am bookmarking it. I've been wanting to make my quests come more uniquely, and didnt know what else I could do for conditions. (Dont worry, garbage can level will not be apart of this)

Would you say that this is a good check to determine if the player has participated in an festival, or at least gone into the festival?
IS_PASSIVE_FESTIVAL_OPEN NightMarket, PLAYER_LOCATION_CONTEXT Current BeachNightMarket
IS_PASSIVE_FESTIVAL_OPEN: Whether a passive festival with the given ID is active today, and the current time is within its opening hours.
PLAYER_LOCATION_CONTEXT: Whether the specified player(s) are in the given location context.
I dont know the festival ID yet, but thats a good guess, I can always check later so thats not a worry, just a basic example
It would work logically, but only when the player is currently at the Night Market, yar? It's not going to the trigger if the player has gone that day, but currently not at the beach.
The goal is to make it so:
Event NightMarket (gotta check its internal ID later) is active, and the hours are OPEN (which will work)
Player is at the events location, as well
however...now that I think about it...dont almost all festivals contain unique maps?
so, festival open condition may be useless?
and just use the location context?
Yar, but the Night Market map is already available since morning.
So you could have PLAYER_LOCATION_CONTEXT Current BeachNightMarket active before the Night Market is open.
Ahh
For IS_PASSIVE_FESTIVAL_OPEN
It asks for an ID, is this internal event ID?
i mean internal festival ID*
Yup, you can check in Data/PassiveFestivals.
ahh thanks, ima check it, also nice pfp
but dolphins r fishies : (
(jk)
(theres no such thing as a fish in fauna /lh)
Thank you. It's Nyapu-style Jinu from KDH.
"Condition": "IS_PASSIVE_FESTIVAL_OPEN NightMarket, PLAYER_LOCATION_CONTEXT Current BeachNightMarket !PLAYER_HAS_MAIL Current {{ModID}}_QuestSpooktopusLetter",
Awesome! Thanks! I found the passive festivals here! Much obliged ^^
that's not what a location context is
a location context is either Default, Desert, Island, or a modded context. it's not a map
conceptually it’s like, a region
Bleh, I missed that. So should be PLAYER_LOCATION_NAME?
(it’s used for things like who should show up for certain festivals, which buildings should be locked during certain festivals, etc, because you want a festival usually to only affect one region)
just LOCATION_NAME
the player_ version would work if you had some other way of triggering this besides locationchanged
(typed that before button replied with the better answer
)
Ahhh my bad
tyytyy
this is my first message here and idk if this is the right place but recently me and my partner have been trying to get some of the features of this adopt leo mod to work . so far, he works completely fine, he has a schedule and lives in the house, but things like his custom dialogue, "spouse" room and patio arent working at all . so he just defaults to the default spouse dialogue which can be a Bit Strange to hear considering hes supposed to be like 😭 the farmer's 10 year old adopted son but anyway theres a few theories we've had as to why they dont work but neither of us are Truly familiar with coding (but are interested) so we dont really know Exaclty why...
one of the reasons we thought it might not be working is because the dialogue's target is MarriageDialogueLeo which we can't find the xnb (or any) file in the mod folder, and it obviously doesn't exist in vanilla, we were trying to look at stardew valley expanded as a frame of reference to where they put their targets for dialogue for their custom characters and we couldnt even find that so we are Stumped
also this mod isnt being maintained anymore which is why we're trying to do this 😭 💔 sorry for the wall of text and if this is too much trouble
i have no idea how this mod works or why it may not be working but Characters/Dialogue/MarriageDialogue<name> is just the format the game uses for marriage dialogue
that is where any NPC, custom or not, will have their marriage dialogue
ouu i just didnt know if it needed to have like its own . File or something?? Unsure how to explain ...
I believe there's a new Leo adoption mod currently in the works?
the targets dont need to exist in the content folder
not out yet but if you're willing to wait it may be worth it ig
everything in the content folder corresponds to a vanilla asset, yes, but SMAPI and Content Patcher just let you create new, virtual files, essentially
the Adopt Leo mod is what makes Characters/Dialogue/MarriageDialogueLeo exist
when the game is running
Noted .... will try to look more into it to see why the assets arent loading
it seems to be a problem in the posts too so its not just us i think the mods just broken
😭
unfortunately, mods do break sometimes, when the game updates and they do not
or in this case, where the mod was updated! it just... wasnt tested to see if it actually worked
😭 yeah
public string GetDialogueSheetName()
{
if (base.Name == "Leo" && DefaultMap != "IslandHut")
{
return base.Name + "Mainland";
}
return base.Name;
}
