#making-mods-general
1 messages · Page 364 of 1
whats holding u back
Is the crop market top saturated LOL
If you discover that someone has made or is making a mod with a similar concept to yours, don't stress! Our community promotes the idea of "two cakes", where two versions of the same idea can peacefully co-exist. Your mod will have your own unique stamp on it that makes it special.
LOL im what cake pic ur talkin about
Yayy you got there!
My brain has no issues with the cake concept when writing fanfic or producing fanart cause my ass WILL read the same trope 50 times happily
But with mods i get hung up more xD
We can never have too many non-offensive mods of any kind imo
Fair fair lol
someone will prefer ur iteration
I'mma ask a question, can anyone point me to a wiki or tutorial on how to make a map for a mod, because I can use Tiled, I just need help with making the map I want
Are you looking for design advice or something?
Design advice
In general refer to the base game tilesheet a lot, try to keep things varied, I think
I wanna make an area for my npc's house and a church that he lives in and runs
You can't follow the technical instructions from this tutorial because it's using TMXL but it has some useful advice for what to consider regarding design: https://stardewmodding.wiki.gg/wiki/Tutorial:_Making_a_New_Area
gimme (pretty plz) would v much like
I will never not love more crops and trees js
Would you love 4 butters
I heard there once butter fiasco?
are they different types like garlic and herb?
Yeah I think I remember that too
I wanna figure out the best way to make cream cheese lol
It is, I updated it recently!
like do I try and do it with ingredients or do I just like, make a 'cream cheese machine'
How does cream cheese even get made irl
You could have cornucopia compat and put cheeses in the butter churn?
Ik the monster seeds. Im trying to find what fruit trees it adds, if any
according to a quick search Lactic acid is added to pasteurized milk and cream, which lowers the mixture's pH and causes it to form curds. When the curds are heated and stabilizers are added, it becomes cream cheese. lol so probably either cheese in the butter churn or just a 'cream cheese maker' where you add milk and a fruit if you want like, flavored ones (and salmon cuz salmon cream cheese slaps)
SVE 1.15 adds three regular crops and fruit trees, one for each season
all of which already has Cornucopia equivalents
absolutelyyyyy! I love me some baggels
You could do the cream cheese maker and do a whole line of schmears
(and also the money tree I suppose)
Ah ha! I knew this was there somewhere: https://stardewmodding.wiki.gg/wiki/Tael's_Guide_to_good_map_making
it shouldn't be super difficult considering that Auto Load and Skip Intro already exist, but would require knowing some c#
The whole cream cheese started in the name of making a buffalo chicken dip recipe too
Hahaha
or 'buffalocrabdip' if you don't have the mod that allows you to have meats
I have been sniped by scope creep so hard.
For one of my minecraft mods someone wanted me to make a singapore sling cocktail, which led to me making gin, which led to me figuring out how to make juniper berries drop from trees.
I love that! haha
ooh!~ I successfully made the DLL for my magiceggbuff! The buff attatches to a 'special egg' that sometimes hatches from my MallowChickens
Awesome!
It's my first time making something with C# - baby steps
I'm so afraid of when I get to that step. I've only made content packs with json up til now
Where did you go to learn C#?
it was both harder and easier than I imagined (I also had, a lot of help) uhm I followed this https://learn.microsoft.com/en-us/shows/csharp-fundamentals-for-absolute-beginners/ my husband bought me a lil book and an old roomate apparently loves C# and let me throw my code at him hahaha
Learn C# programming from an expert in the industry. Get the tools, see how to write code, debug features, explore customizations, and more. For newer videos head over to dot.net/videos
Bookmarked!
We also have a guide to making Stardew mods with C#: https://stardewvalleywiki.com/Modding:Modder_Guide/Get_Started
I really appreciate that the guy like, walks you through an active project - I find it helps so much to get my hands on it. OOOOh good to know! I'm pretty sure I found this blessing of a link on the SDV modding wiki too 😄
You can make an entire working mod following that page
oh yeah this link totally came from there, and the wiki was extremely helpful
and staring at the decompiled code
LOL Caracal that page is the one that Chu asked you several times if you'd gone completely through the process of making a working mod and you said yes every time and I'm pretty sure you hadn't
I had I just didn't really like, get it yet
Because it was only after you'd said yes several times that you asked how to build your mod
lol
my old roomate very extremely patiently talked me through it lmao
So baby you didn't even know to fear Harmony lol
I've not even attempted to look at Harmony yet
made the brain go 'click' I knew to fear it, but knowing better has never stopped me before T.T
My usual technique for starting to learn modding is to open up mods and see what's under the hood, then move on to programming. It's what I did 5 years ago and what started me into modding in the first place.
My C# learning is going very slowly because it taxes me much more than the json side so I run out of energy much faster
soo, i'm wondering if i could make the house i wanted as a pixel image in the program im using so i can make the church/house for my character, is that how i would be making the tileset png?
it's definitely not something I want to dip into again until I have a better understanding of how it works. VERY happy to be working back in CP again XD
U can use ur own tilesheet, yes
Yes, you need to actually draw the building you want, then place it onto the map in tiled
I enjoy learning it but I do have to get iro to explain a lot of it to me because it works so differently to R
Does anyone know how to have events trigger in the farmhouse?
I'm trying to have Morris break down my door and yell at my farmer at 6 am
afklsklfasdkl thats unhinged i love it???
The event works it just doesn't trigger rn lol
So Morris just I guess stands outside the house and gets cold feet
like the true coward he is
do you have code?
^
I've only ever seen farm/farmhouse events trigger at your front door. I assume it's because of a limitation in the code
yis, it do be a little hardcoded
but you can have events anywhere IN your house
wait what really? I thought that was tricky too
it's generally easier to avoid events on totally unknown map layouts
Not a code limitation, so much as the fact that the farm map varies and is probably full of obstacles like machines, crops, buildings, etc
Same reason npcs are banned from pathing through it
like the upgrades and stuff? could do a "if they have this put them here" when condition type deal yeah?
hm, I may tinker with the house event thing after I finish getting my NPC to work
I would be afraid to try, as the layout of everybody's furniture will be different
mods can add other house layouts and/or upgrades, and stuff like furniture too, yeah
(technically an issue elsewhere too, it's just far less likely outside)
that's kinda one reason I was avoiding it too is cuz of that but I have at least one event that could potentially r e a l l y benefit from being in the farmhouse or something because rn it starts on the porch and then fades to black. Speaking of breaking down doors mine is that Shane broke in cuz yannnow.. he loves ya
Yeah, the NPCs Beans and Isla aren't compatible because in Isla's intro cut scene, you have to walk through Bens' tent on the beach and you can't
it's a little awkward but it works
just event scripts. The event works as expected if I trigger it manually I just have no idea how to trigger it
I love the idea that Morris would come bother you at 6am XD
rn I'm using /J 5 for 'trigger on day 5' to test it
Shane isn't toxic in any way
nope.. never, not even once XD
Look at the open for commissions page and look at the posted prices
Is 150-200$ for a npc overkill ? 
But yeah I have Morris correctly doing stuff in the house, he just doesn't actually do it unless I force him to
Ballpark for an entire NPC would be $500USD minimum I think
Nope, as far as I've seen
at minimum wage, 12 hours on an npc would be quite little (in both payment and time)
Does anyone know of a way to force the event to trigger in the farmhouse?
Pick an hourly rate that's reasonable (based on going rate, minimum wage, etc) and then multiply it by how long you think it will take
post it regardless
also capital J is "joja bundles completed"
Loercase j is past 5 days i believe
Jello (the only person insane enough to do npc commissions) basically treated it as a menu
Actually it might not be the only problem but thats definitly a problem lol
this is why I recommend using the new longform format for event preconditions
Wow. Yikes thats a lot of money
I suggest not using the single letter aliases, they're deprecated. You should use the descriptive full word preconditions.
DaysPlayed 5 is much clearer
That sounds about right for the amount of work that goes into an npc
That fixed everything thank you!
I think when people have hobbies they tend to devalue their own craft
$320 for an NPC seems too low to me
Yeah this was just for testing it to make sure it could trigger at all
I have NPC commissions open; i had an inquiry and when i was listing all the prices for each separate thing i was like oh this is like
But it actually triggers now!
a lot of money
Also wait they're depricated?
yeah thats very low
Yup it says so on the events page but I think I'll make the clearer because far too many people are still using them
From a complete modding novice: What makes making an NPC so hard?
Many bits and pieces, some of which are really confusing to initially learn
it depends on how complex you want your NPC to be; you don't have to include events or quests or custom objects or custom locations
Sprites, portraits, events, dialogue, + 1000 other parts
what you want to add to flesh out your NPC depends and that'll change the amount of work it takes
It's not hard work, it's just a lot of work. Also requires a wide variety of skills (art, writing. Map design, for romanceable npcs)
Once you know what you're doing they're pretty straightforward but that learning is worth counting when offering comms imo
change in schedule if they're roommate/marriage able
And it takes a while because of how many parts there are, and ofc dialogue and events . People usually want their npcs to be substantial so that means spending a lot of time writing
Things like "they won't use location dialogue or CTs unless they have gift tastes even if they're anti-social and can't be gifted anyway"
The other context you need is that Chrissy is a meme npc built for a youtuber
i love making NPCs even if they can be a looot of work
She isn't like
Ignoring the fact i absolutely do not have NPC commission money.. i would want to do it all myself even if its hard and takes a long time
oh is that seaniedew's
i remember watching that video
Sometimes I wonder what the word count for npc writing is
id open up my files but not at my pc
anyone have their files on hand im curious too
Wouldn't change anything for me. Just because the person commissioning me is doing it as a meme doesn't mean I have less work lol
A beloved work of art with 100k words, OC mine do not steal kinda thing
Tbh npcs are petty much the only reason I haven't attempted an expansion
Where would I go to learn to update an NPC replacement to CP 1.6 from something in 1.5
The only part of NPC comms i dont offer is portraits because i'm not that good at vanilla and also its hard to motivate myself for art like that when it's not intrinsic
I dunno how I'd even count words
!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.
-
Aviroen has put together a template that will allow you to easily create a romanceable NPC.
-
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!
(I say this knowing I do not offer commissions but that's because nobody wants a comm that takes 2 years to receive lol)
if enough money was paid, i would spend all my free time on it
I've been considering opening comms for c#
i dont know how many words this is but this is my default.json
One Welsh word
My current projects are: Continuing to work on my Shane Expansion (made it to the trending mods forntpagecryingscreamingomg), Cream cheese machine with flavors and bagels, and some true labors of love, Iggy Nova and Riott Knight who are NPCS that I am making - it is a very slow complex process but I have loved basically every single second of making them
Do it
A german word with a lot of adjectives
Fwiw I would never commission a full npc
damn im reading over the lines i wrote and some of these are really sappy.
But I have considered commissions for parts
my default json is 45k characters thats fun
"Lise.Proposed": "...I had thought about getting married before, but I was so busy back then, that it didn't seem practical for me to try and settle down with someone...#$b#But well, I'm older now...$1#$b#Marriage isn't the easiest, so are you sure you'd like to spend the restof your life with me?#$b#I can't promise you a fairytale romance...$2#$b#...Even still, you want to marry me? I...#$b#...That's what I like about you, @. So yes, I'll marry you.$10#$b#I may not be able to promise you a perfect spouse, but I can promise you everything I am, and I hope you'll accept me the way I accept you.$4#b#...Ah, I think I got a bit emotional there. Don't worry, @. I'll take care of all the wedding preparations, alright?$8", like why did i write a whole paragraph??
Yeah but she has fewer events/less dialogue etc
I would probably offer like, sprites maybe for comms? but I have a hard time valuing my work enough to accept dollars even when they're being thrown at me
How do you even keep track of that many characters? Are each of those 45K NPCs distinct?
im allergic to deadlines so i could never do comms
if I have a deadline, I'll have to do it all the night before
one of the main reasons I have never done so - like just the idea makes me stress lmao
I am a procrastinate then panic type despite my best efforts
Symptom of ADHD my friend
My usual mode of operation is to start 1000 projects and not finish any of them
Don't I know itttttttt. Ooh that's also me
oops forgot my Mallowhens in my projects list
I "did commissions" for a while, but basically just took tips because haggling kills me 
(deadlines too, but that I can solve by overworking)
ADHD gang 
and that I'm making Axel from KH (the list probably goes on but I don't know where I left it)
Wait, is that why I have 50 Minecraft mods published that I'm not happy with?
Im doing my best to finish my wips
And by that i mean staring at them menacingly until i have an idea
me struggling with one mods progress and flipping to another one/starting a new one
like a rolodex of 'fidgetmods' the same way I 'fidgetcook/bake'
lol me too
i feel bad about basically putting one of my WIPs on hold
my current project is big and segmented, so I just keep working on different parts when I get stuck 
oh! I forgot about my salsa mod (breaks into the salsa song portion of my band)
because IggyNova lives off salsa - not really but she tries
Sigh maybe ill get better at spritework
@calm nebula can you step into the gamecode when debugging your mod in VS?
I did/still kinda do that with my Shane Expansion - struggling with an event? lemme go add some conversation topics or mail or maybe make a sprite for something he sends in the mail
Me with my expansion. Stuck on one thing? Avoid it by doing another thing
Sometimes i think im not making much progress but like. Im not making immediate progress, the stuff im working on is so i can just get it out of the way for later
currently I am stuck on when he sends gifts. regardless of what path you get I have 8 chicken plushies that he sends/gives you. Each separate path gets 10 gifts - darts, mixtapes, and 'dog tags' -each path has about 10 events but I don't want it to feel... i dunno boring? idk if that's the word i'm looking for
then there are 3 recipes, but Jas sends one of them lol so only two left.
My mail mod uses a lot of "Random after you've seen x event" stuff
Somewhat
It doesnt work very well and keeps dropping me into raw assembly
idea: social npc who doesn't like or love any gifts, and instead can assign you up to one task a week that rewards the same friendship as 3 loved gifts
what would be the best way to count how many items have a specific (custom made) tag?
I wonder what kind of npc that would be. A timeless immortal who has simply grown bored of the things mortals find interesting?
maybe if i can find again the UB command to open a shop with specific parameters and use the context tag as filter
i mean yeah probably 😅
using the count feature in notepad ++ may work too... i'm rubberducking
(at least as long as i'm dealing with my own items, vanilla may be more complex but one step at a time)
debug iq maybe?
i don't remember if it accepted the context tag argument
can you specify a PerItemCondition for debug iq? it doesn't seem like it from the wiki
without that i can't expect it would work
its only argument is a single string, so probably not
Ahhhh you can't
i believe it's why delixx did the ub command, it may be in the docs
I imagine lots of people would want to use this! It already looks plenty polished from a UX perspective, especially as a "just-for-me" type tool.
I can definitely at least have a look at helping out with whatever you feel you might need help with. Whether I know the specific aspects well enough is a TBD, I suppose. 
is it okay to bump a queston more than once if nobody has responded to it..? 
i don't want to be a bother, ahh
sure as long as it's not like 5 seconds since last time
things get lost here sometimes
nah its been a few days
debugging didnt work so im not sure how to bypass this besides setting the day back using console commands --> using sun totem --> resting and hoping lol
your goal is to show a specific dialogue for an NPC in your playthrough, and the weather isn't cooperating?
or is this about testing your mod, or setting up your dialogue keys for this situation?
it was mostly this first one, however if i needed to code something to overwrite weather dialogue i could probably do that
ok you can force load a specific dialogue with debug loaddialogue https://stardewvalleywiki.com/Modding:Console_commands#Dialogue
e.g. debug loaddialogue Caroline "Characters/Dialogue/Caroline:Mon8" to force Caroline to say her Mon8 dialogue. it will immediately open as if you talked to her
Are there night versions of the greenhouse wall tiles at the bottom right of townInterior anywhere? Can’t find any myself
the exterior walls or interior
There's no night version
oh you said townInterior so of course you meant interior 😭
Gotcha 🫡
oh my gosh you are amazing
guessing i didn't see that one when i was scouring the wiki
i appreciate you so much
ok so, absolutely no errors in SMAPI, but my NPC doesn't show up where they're supposed to in their schedule. T.T
no, I tried starting them in front of the community center and nada
!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.
can u upload it to that
do you have your custom location set up?
where your NPC starts at is in your custom location, not the community centre
im not 100% sure but if there's no way for them to get to the community centre i dont think they'll show up in their schedule
https://smapi.io/json/none/ac7f22dcd5194e648d8946ceebe2fb37 I can send my content json with the custom location stuff too
Yeah, thanks. 
I need to get the project to some sort of MVP, first release state. Then I think there's gonna be a lot of possibilities for community involvement.
Like I mentioned, my current project involves making a lot of events, so the UX of the editor better be pretty good or I'll snap 😅
I think even knowledge of the modding scene as a whole is very valuable if we want to get the editor pushed through the right channels so it reaches people who need it.
yeah that would be good
the custom location works and stuff? have you confirmed that
yeah it works
oh, I wonder if it's because I have a warp to the house in one place and the warp to the map overall in another place?
We can also easily get a thread made in this channel when it gets to the point of soliciting feedback on things.
I have a warp in the forest that takes you to iggy's house map and then another in the mountains that takes you to iggy's map where their house exists?
is excludefrompathfinding default true
my custom locations set up has more stuff than urs
hm, I set it up based on how I set them up for my other mod (not that that really means jack diddly cuz it's clearly not working here) wait where does 'excludefrompathfinding' go?
That would be nice. Probably when the first version is released
oh okay, uh no it is not set as true
ok thats good it should be false
oh
your warp
do you have a warp out?
you need a warp to get into the location and out of your location
but it doesnt look like you have a warp to get out of your location
oh nvm you do
what is IggyMap
i see you exit onto IggyMap, and then where is IggyMap's things
that's the map of their area, that their house lives on. Oh shoot okay weird cuz I could get there when I tested it but I might have tinkered with it since then and deleted something by accident trying to figure it out
ima go open up the map modding wiki again and do some squinting
I'm only partially following the conversation, but have you slept so your NPC can get their schedule updates?
oh, uh, I don't know if I have, I'll do that too
I gotta go do an irl fetchquest so I'll crack it back open when I return
!convert
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:
Is there some way to use a Prismatic Slime in an event that does NOT involve manually animating one as a temp actor?
Or is that the only option?
if you use spacecore or FTM, you might be able to look into spawning one? that’s been on my to-do list for myself but i haven’t gotten around to figuring out how it works yet
FTM currently spawns everything at the start of each day (or at specific/random times), so it'd depend on your event conditions, but iirc they do show up in events
I've received 2 bug reports that the engagement letter I set up for Harvey and Maru won't send. I've tested it on my end and it works but I'm not ruling out that I set it up wrong and maybe a fresh set of eyes would help. I'm not seeing any errors in the user's smapi log relating to my mod (aside from an update I just published today, which is unrelated to the mail)
Here's the json (mail is on line 32 and trigger action is line 46):
https://smapi.io/json/none/a486295571184c038535a320adba15e9
and here's the user's smapi log:
https://smapi.io/log/e47a8e16aff94100ba02d85e18a78393
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on macOS Unix 15.5.0, with 81 C# mods and 150 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
are you sure they havent just not slept enough days
bc you're using a When condition on the trigger action (you should really be using Condition instead), i dont believe the trigger will be there the day after they see the event, bc CP will add it after the DayStarted trigger technically happens. so the trigger action wont happen until the day after that. and then its adding mail for tomorrow, so they have to wait yet another day
They said a month in-game has passed since the engagement event
then you should have them do patch summaries/exports to make sure the trigger action is there. otherwise, theres really only 3 options:
- the When condition isnt applying, which means they havent seen the event or its been marked unseen
- the trigger action has already been applied once in their save file somehow (an old version that did something different, maybe?) or
- they got the mail and just forgot. should double check their mail collection
Okay, I'll ask them to do that, thanks
i need help... where is the animation editor icon??? ican't find it 
it's on the tilesheet itself
not on the map
you need to open the tilesheet
there
ohhhh okay found it now, thanks! ig that guide was outdated
wait no i was just dumb sorry
it literally was the editing tilesheets section
thanks lumina
Tired and annoyed, I’ve followed the interior door guide to the letter and got my doors to appear as solid objects but I can’t open the dang things
You have the :
Door property in map property (if i remember it properly)
Door property in tiledata on building layer
Door image on building layer for bottom and front for top?
If yes show them
Take a break first and show them second. Or show them first and take a break second while people look at them
map properties and the tiledata
the layering is correct for the images
it wasn't at first, fixing that was what got them to show up as solid objects
dumb question - I need to make an NPC warp on my maps for my NPC to be able to go places?
not necessarily
your npc can pass through warps like normal
but npc warp is warp only npcs can use
(so you can't use it)
is the spouse patio 4 x 3
I think it’s 4 x 2?
uh no i believe 4x2 is correct
In case it's helpful to be specific: NPCs can use Warps and NPCWarps. Players cannot use NPCWarps.
Okie! I’m mostly trying to figure out why my NPC isn’t showing up
Didn’t know if I forgot to give her a way to move
unn i think the basics for an npc at bare minimum is like
gift tastes, a schedule of some sort, portraits/sprites 🤔 im not sure if dialogue is actually required
I’ve got all of that. She isn’t appearing on the map yes I slept
Make me as an npc, bluebs
I'm just in the corner knitting
Silently
My gift tastes are i like yarn and hate everything rlse
like she's not appearing in her starting position?
Gil but with knitting needles
If you run a patch summary in the smapi console, are your patches shown as applied? Does debug where show their location?
replace gil with atra mod when ?
the single npc mod i have is a cat that does ABSOLUTELY nothing
i'm not for the npcs
Lemme run the patch summary real quick
the cat is innocent. the shop tiles are a map patch and i blame the users
i blame atra personally
okie so here's my log https://smapi.io/log/5f33759dde214884b076c2b9c8533c97 it looks like the NPC Data and the schedule isn't applying T.T
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Unix 6.8.0.60, with 20 C# mods and 6 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
can you share your json too? 🤔 maybe there's somethin in it
wow calm down ms i'm not even a minor version out of date
https://smapi.io/json/none/ebf49f7628424a26bbdb3228984b7f67 here's the NPC Data
https://smapi.io/json/none/ebf49f7628424a26bbdb3228984b7f67/edit herre's the schedule
@lucid iron Hey, something I noticed about the MMAP "SkipMoveObjectsForHouseUpgrade" command - it doesn't switch a single bed to a double bed when upgrading to Farmhouse1 like in Vanilla. Is there a way to do that built in that I'm missing?
😅
🤦
did you forget something
So you have sprites and portraits
do portrait commands work in the dialogueQuickResponse
not sure about this part:```
[X] | [X] | [ ] | Default | EditMap Maps/Custom_IggyHouse
[X] | [X] | [X] | Low | Load Maps/CacklingCaracal_IggyHouse
[X] | [X] | [X] | Low | Load Maps/CacklingCaracal_IggysMap
meanwhile your NPC is trying to spawn here:```json
"Location": "Custom_{{ModId}}_IggyHouse",
@lucid iron (Also, in your example version, you may wish to include Maps/FarmHouse1_marriage and Maps/Farmhouse2/Marriage, otherwise the items will still shift if the player gets married early.)
you have 3 different map names in use
🤔
yes I have both sprites and portraits. Oh it should just be IggyHouse not the custom Id
ModID one so that's probably part of it
thats just the physical map though, the home location should be the location ID, which need not be equal (and id think there'd be a lot of errors about invalid maps in the Data/Locations entry otherwise?)
not that you shouldnt try to consolidate them anyway
@lucid iron (Other than those caveats, it's been working great, as has the seed shifting - thank you so much)
i'm assuming the location name is {{ModId}}_IggyHouse, but you're editing the map with Custom_IggyHouse, and trying to spawn the npc at Custom_{{ModId}}_IggyHouse
yes!
were you previously using CustomLocations before transferring to Data/Locations
pick one and update them all! you can also make a new token "IggyHouse": "{{ModId}}_IggyHouse" if you like to keep it consistent
Okie, I think I'll just use the tokens. I don't think so I think I've always had it as Data/Locations
there's nothing stopping you from tokenising everything. tokenise your npcs. tokenise their schedules. tokenise the world
it's free and the cops can't stop you
lmfao I do like tokens
tokenise the world....
(except for the few things that stop you
)
Tokenize me ||atracoin||
i wonder, can i make things like "Maps/Characters" into one token called "{{Meep}}"
completely unrelated, but in C# land when dealing with global data (i.e. Helper.Data.WriteGlobalData()) that is automatically namespaced to my mod, right?
do we have any Tiled experts in here?
where are they hiding (the tiled experts)
thank you
time to see if i can bypass that—
I've done some thing in Tiled
What are you trying to do?
Smh (reflection)
What do you need?
i like that you say that as if im not very familiar with reflecting into things i shouldnt by now
i just want to write global data on behalf of another mod
shouldnt be too difficult
soooo i may have deleted the tabs by the layers and mini map buttons that have the objects and other assets and i don't know how to get them back
just tryin to make it accessible to content packs via trigger actions
The ones in the lower right?
Ooh!
simply rightclick the panel:
yeah, i figured it out, i needed to check them in the view tab
Go to View-> Views and Toolbars
the only difficult part is making sure people use their mod id for it so they dont fuck up someone elses mod data (on accident, anyway)
Choose "Properties", "Layers", etc
however it should be quite easy if you use my preferred method: lying
(tell people that im enforcing it but not telling them how im enforcing it)
it's better to start by asking your question than to put up a gate like this /pos
Ah, you did find it. Good! @sweet wharf. Feel free to ping me if you have any other Tiled questions. I've done a lot with it.
honestly the most accepted and successful method of getting answers just involves adding 'i asked chatgpt and it didn't work' to your post
quick, easy, effective
however it does incur a dignity and respect cost
i've got enough to spare 😌
Chatgpt please help me i wanna know if what happens if I put my house down payment in leveraged etfs
So, I do have another issue, the issues errors popped up and said that I don't have certain tile sheets but I do have them
If it's an error in SMAPI, can you send a log? https://smapi.io/log/ I have a suspicion what the problem might be, but I'd need to see the log to know for sure.
It's not in SMAPI, it's in Tiled and I'm just trying to edit the map and put my character's house down
incidentally, does anyone know where the option is to disable this thing in vs2022? i've asked chatgpt and it didn't work
Ah, okay. You've got the message up at the top of the screen? Are the tilesheets in the same folder as the map you're working on?
Yeah, they're in the folder that the map is in, but should I be working with the map that's in the unpacked files of the game because I put them in a separate folder for my mod
It sounds like you're doing it right. Copy the map you want to work on to a separate folder - don't ever modify the original game files. Then copy over any tilesheets you want the map to use to the same folder. For the error you're getting, click on one of the tilesets that's listed as missing at the top, then click the "Open Tileset" button that will appear on the right side under the "files could not be found" box
@sweet wharf Click on the tileset name again in the window that opens from there, and click the "Locate File" button in the same place as the "Open Tileset" button was before
@sweet wharf Navigate to the right tileset from there, click it, and open. Remember, choose the one in the same folder as your map (I know I keep repeating this, but I've made the mistake of picking the tileset in the wrong folder so many times, and it always screws me up later).
When you're done, click "Save" and close that tab to take you back to your main map
@sweet wharf You can also go to the tileset properties by clicking the Tilesets tab and clicking on the wrench icon just above it. Then go to the Property window on the left and scroll down until you see the Image line. Click that, then click the "Edit" button that comes up. This will show you the path that Tiled thinks your tileset should be at and can give you a clue as to what went wrong. Fix the path and your tileset will come back. This is a different way of doing the same thing as above.
@sweet wharf LMK if you have any questions
This map prop specifically does a skipping prefix on the function that would have produced the double bed yes, it's intentional
You don't have to use it
How would I go about making my own house for my character?
Which part are you asking about - creating the house in Tiled, or implementing it in the game?
Creating a house in tiled, because I know what I wanna make but I don't know how to make it so I can put it on the map
I love the skip move option! I am totally using it. ❤️ I wonder if there is a way I can still provide a double bed, though. Maybe I could have the player start with one instead of a single bed...
I should go update example tho, once im back from vacay
iirc u can't sleep in a double bed until house upgrade bc Reasons
I will do smth about it later as well 
I highly recommend starting here: https://stardewvalleywiki.com/Modding:Maps - Tiled is a bit counterintuitive at first, but this page helped me a lot when I was starting out. Also opening up game maps and examining how they did things, and opening up modded maps helped me understand a lot of things. Once you've started, if you run into specific questions you can't figure out the answer to, please let me know.
You are the literal best, you know that?
@brittle pasture Hi! Can I send you a DM with a couple of questions? It’s not about modding (for now haha), I just want to check if you’re okay with me doing something.
(i didnt know u were on vacation sorry for pinging u earlier
)
Hey, I wanted to ask you something. You said you liked the Broken Farmhouse aesthetic a lot - if it's something you would use, I'd like to make a version of the farmhouse with that aesthetic for you. Is that something you would use? It wouldn't have the mini quests from the Broken Farmhouse mod, it would just be a farmhouse replacement.
sure go ahead
I would but I gotta actually play game at reasonable pace 
I started my current save in jan and im not even y2
i was actually asking about how to make a house to use in tiled, i was looking at the tutorial for adding Dao's house into Sunberry, but i want to make my own house with a specific design
That page has a lot of information about Tiled. ^_^ My recommendation is to start with a map that is similar to what you're looking for, then modify it with Tiled. That way it will already have some of the important Map Properties built in. You can change the size and shape of the map under Map-> Resize map. That's how I would get started - don't copy someone else's design, of course, but start with it as a base and then re-draw it - change the walls and shape, etc, but you can see how the different layers interact by starting with an existing map. Does that make sense?
So if I wanted to use Alex's house as my character's base home design, how would I change the outside while in Tiled?
Ah, that's two different maps. The inside is one map, the outside is a different map. So for an outdoor map, it's similar - you open up a map that has an exterior you want to use. In the case of Alex's house, you would look at the Town.tmx map. It's a really big map, so you'd want to re-size it (after copying it to a separate folder first, of course!) Cut it down until it's the size you want, then you can "paint' the ground around it with grass and adjust the look of it as you like.
@sweet wharf So you'll ultimately end up with an "NPC_ExteriorHouse" and an "NPC_InteriorHouse" map
If you want to replace something in an existing map, you can make your own version that's the same size and shape, then use Content Patcher to replace it. If you look at various mods that replace buildings, it can give you an idea how that works - ones that replace buildings with medieval versions, for example, can be a good model to work from.
It's because you spend so much time helping people like me. XD;
So, if i wanted to use the exterior (edited) of Alex's house, say in the forest, how would i copy the edit to the forest where i want it to be?
I might make it anyway and just post it to Nexus, @lucid iron.
I am happy just seeing ppl use my toy for cool things 
Look at how other mods that add houses do it. A lot of them will have some sort of warp to a separate map so that it doesn't possibly interfere with other mods that modify the same map. So you could either make a completely separate map and then just add a warp to an existing map to take you there, or you can patch one of the existing maps and put the house into it. For an example of patching existing maps, check out Ornithologist's Guild, which patches a new building into the forest. https://www.nexusmods.com/stardewvalley/mods/14510
gently bumping this, followed the door guide and they’re present but not openable
I have to go now, but once you get started, @sweet wharf, feel free to DM me specific questions 🙂
I'll answer when I can ^^
I'm looking at the wiki trying to figure out how to update a mod I use (currently only for personal use for now
), however the mod I'm hoping to update uses a depreciated framework which I'd prefer not to use.
what to do in this case?
which framework? we have a list of convenient converters you can use
Your Action Door objects MUST be named TileData
The Name is currently empty
OH
Content Patcher 
that's current though
Content Patcher is the framework to use for just about everything nowadays
unless you're talking about another deprecated framework that mod relies on
For any tile properties to function, the Object has to have TileData in the Name field (which is why I always call them TileData objects)
(or if you thought I asked about the framework to convert to, in which case my apologies lol)
Just to check, is this a section of map being patched onto an existing one, or a full map?
Full, brand new map
hang on! hang on, sorry. It slipped my mind
. Shop Tile Framework was the deprecated one
I completely forgot 😂
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:
And it's on the Buildings object layer? And you have the bottom door tile on Buildings tile layer at the same coordinates?
If all of that is true, then you may need to copy/paste a vanilla map's TileData object in case you are missing another property on the object
And just change the Action on it to what you need
(saloon doors can be yoinked pretty easily for an exact working model)
yeah I’ve got everything set according to the interior door guide
will try yoinking an existing one!
Definitely not a stupid question!
The earlier screenshots are up here if that helps, atra. I almost certainly overlooked something since I only gave it a cursory glance.
Are you Load or EditMap
Load
Can we see your tilesheets page
One thing that I'm a little concerned with - there are both tilesheet file paths and tilesheets names
Ca tends to make the tilesheet name really generic
Like 1 (seriously) and untitled tile sheet
Make sure you're referring to the tilesheet name and not the file path
How hard would it be to create a simple ui that accepts text as input and store this input?
There's a vanilla ui bit you can use
You can reuse one of the game's many text input menus
But hm you dont wanna just use gmcm i assume?
yes, just a box not a configuration
how? didnt find anything
Did anyone note that your tile objects are not exactly 16x16 and are not exactly snapped into place? They can't have decimal places in their size or position.
i just fixed that on a guess
thank you for the confirmation, i didnt want to test it again without someone confirming that XD
Hi, Sorry I'm very confused with content patcher, can I add a custom path and not replace an existing one? like the pathway items? i.e. cobblestone path, Everytime i google it I get things relating to NPC pathing, paths tilesheet (the one that can spawn debris etc), and nothing about adding a new path only replacing one, If this is possible is there a mod that adds paths via content patchent that I can download and browse through the files to see how it works? I looked on the contentpatcher github but couldn't find anything on adding new things
NamingMenu is one
If it doesn't help I'll look more thoroughly when I finish folding
theres a snap to grid option in Tiled, right, to make sure things always snap automatically? might wanna look for that unless my brain made it up
i will absolutely look into that, it was driving me crazy when i was first putting them on that they didnt snap
https://smapi.io/json/content-patcher/afc2f9199da4416288ffcfa072bac7d5 someone please help, i'm losing my mind 😭 i've tried three or four different things to animate niko properly--my intended effect is that she sits down in despair, stays sitting down for a little while, then stands back up and turns to the farmer. despite interrupting her "stay sitting down" animation with her "stand back up" animation, and then additionally using stopAnimation, after the standing animation finishes, she goes back to a sitting down or half-sitting down frame (28 or 29). i can provide sprite indexes if that'll make reading the event script easier
(my map fixer will also catch misaligned tile errors among some other common ones if you ever run into other troubles and wanna try tossing your map in
)
still have to do the rest of the day/night tiling and lights tomorrow but those are just tedious XD
oh fantastic! thank you
(it wont catch TileData not having something on the equivalent layer below it though.... not yet)
did u specify a frame for which the sprite lands on after the animation stops
stopAnimation <actor> [end frame]
farmer does not have this but NPCs do
no, let me try that
i've never had an issue with stopAnimation like this before where i had to use it but if it works!
i did already try showFrame and for some reason it was also borked
i forget in which way
that worked! thank you
i can't believe it was so simple to fix lol
Yes you can add a completely new path with Content Patcher! Let me find you an example.
Thank you! using Content Patcher would be so much easier than my current attempt at making a whole SMAPI mod
You can ignore the include assets/props.json
Brilliant, thank you very much, I'll have a browse of this and see how it works, much easier for me to learn from an example than from scratch
This is my edited version of what chu just linked. I removed the MMAP stuff so it's just adding a new path.
Even better, Thank you both for your help
As a follow up question, whats the best way to add a custom catalogue? so avoid clogging up vanilla or modded catalogues or crafting menus or Alternative Textures menus? Idealy I want to avoid other frameworks but if it makes is substantially easier I'm not completely agaist it
You need one of spacecore calcifer mmap
you need a framework to add catalogues, either spacecore or calcifer or mmap
Everyone has spacecore so just use that
How it works is you add a Data/Shops entry
All items for 0 money
Then use something to open that shop via a furniture
Gotcha, given it's just a regular shop I'm guessing theres no restrictions on items available in the catalogue?
almost everyone
Nope you can put whatever you want
Perfect, Something new to do for the next few days!
One easy way is PerItemCondition ITEM_ID_PREFIX
is there a way to add a generic CT response to all vanilla NPCs at once, or do i have to write out each one?
gotta add each one
bummer, but makes sense
You can use conversation topic utiltiies
(Finally a usecase)
Can't she do multiple Targets?
(Tbh I wouldn't recommend putting the exact same line on every npc
That gets repetitive
Fast
You can do {{TargetWithoutPath}} fun
maybe a randomized choice from generic lines then
If it's the exact same text, would this not work?
{
"Action": "EditData",
"Target": "Characters/Dialogue/Abigail, Characters/Dialogue/Sam",
"Entries": {
"CT": "Same text!"
}
}
it's better for some people just not to respond to a certain topic
I personally agree with these replies tho lol
because otherwise it feels like the town is stalking you
(I agree about the lack of desirability for using the exact same line, but am just checking my thinking about whether it's possible).
hmm yeah, i guess in my playthroughs i only talk to 1 or 2 NPCs a day at most, but if you're the type of player who's more social then that would be so weird
Some days I talk to every NPC in the game
I think things like being caught cheating on your partner with several different people would make rounds fast but other things probably not unless they were there, yeah 🤔
I think in general, for me it starts feeling weird that everyone in town both knows about something and is interested in talking about it. NPCs are supposed to have their own things going on
usually my default thinking with giving someone a CT line is that it will be unique to them
bc i am also the kind of player who talks to a lot of people every day
I don't mind everyone having a say on a topic but if everyone is saying the same line it'd be weird
this would feel like a pretty major event (the player and my custom NPCs turned a ghost into a mostly-living girl who now lives in town) but yeah definitely not everyone would know, true
though like atra said you can just do TargetWithoutPath here
{
"Action": "EditData",
"Target": "Characters/Dialogue/Abigail, Characters/Dialogue/Sam",
"Entries": {
"CT": "{{ i18n: ConvoTopic.{{TargetWithoutPath}} }}"
}
}
i forget that the path tokens can be used outside of loading
maybe i could split the NPCs into groups based on personality so that i don't have to write 30 lines of dialogue about the same thing, but there's still some specificity. so like jas and vincent could pull from the same pool, but george obviously wouldn't
or maybe i should just forget the idea if i don't want to put the effort in 
i would still find that very very jarring as a player
imo, if you dont have something unique for someone to say, dont have them say it. thats basically the point of a convo topic
okay, i might shelve it for when i'm looking for something to do then, so i can give it proper effort. although i'm a little concerned about getting specific villager voices right 😬
if it helps, there are many people out there who already release mods that give vanilla NPCs new lines, and they werent concerned enough to not publish, so theres no need to limit yourself if they didnt
no need to put yourself at a disadvantage to them for no reason
Hi again, Looking at the Firefly Paths mod, I've come across this snippet
"ItemId": "{{ModId}_FireflyPathItem",
"Texture": "{{ModId}}/floor",
"Corner": {
"X": 0,
"Y": 0
I'm guessing what this does is tell it which texture to use, and where the top left corner is, if I had multiple different path textures in the texture.png , would I then use:
"ItemId": "{{ModId}_FireflyPathItemExtra",
"Texture": "{{ModId}}/floor",
"Corner": {
"X": 64,
"Y": 64
where X and Y are the top left corner of the second texture?
that seems like a correct assumption to me, that said im not 100% familiar with floor and path data
So sorry for the wall of text, I thought it would be a lot smaller than that
I also think rereading vanilla villagers mail (like the kind they send you) or their dialogue lines can get you a better feel for how they talk
looking in the decompile real quick it does appear to be the case
I was wondering if anyone could help me with a fashion sense conundrum. i'm trying to create a pair of pants for silver's farmer body, and since the author already has a converted pair of pants, i figured i would run them through skirt converter. it worked, except for side-view pickaxe. all the other tools worked, so i'm not sure how to figure out which specific section in the new fashion sense is pickaxe as opposed to other tools. thoughts?
There's no CP token to remove spaces from a value, is there? To make "White Chicken" into "WhiteChicken"?
Check https://stardewvalleywiki.com/Modding:Farmer_sprite for the sprite index corresponding to left pickaxe
I couldn’t find anything
My LocalTokens are just writing the animal ID four different ways and then two sprite indexes xD
{
"LogName": "Add White Chicken",
"Action": "Include",
"FromFile": "data/animal_objects.json",
"LocalTokens": {
"AnimalSpaces": "White Chicken", // Animal ID as it is in Data/FarmAnimals
"AnimalNoSpaces": "WhiteChicken", // As above but with no spaces
"AnimalContextTag": "white_chicken", // Snake case
"I18nIdentifier": "white-chicken", // Kebab case
"PhotoSpriteIndex": "1",
"ReceiptSpriteIndex": "0",
}
}
maybe you could do something really stupid with custom input separators and valueAt and HasValue tokens but
that sounds very stupid as mentioned
As it is, this is only hoping I can pass local tokens into i18n. If I can't, I'm going to have even more ways of writing the animal ID in here lol
I tried, but as I read it, pickaxe is combined with axe and hoe — they should all be the same animation, right? That’s why I’m so confused 🤣 🫠
Yeah they should be the same 🤔
I read through the source code to get the indices though so I don’t have any better answers
The code internally only tracks whether a tool is “heavy” or not iirc
Been a while since I looked
thank you for trying, I appreciate it!
The pants converter code has some lingering small issues but no one has ever been able to ID them exactly so I’ve never gone back to fix them
There’s some small chance it’s an FS bug, too, unfortunately
The process for testing this involved screencapping and slowing down the video a lot, which is kind of tedious unfortunately
it is what it is ❤️ I just was sort of hoping someone would say “fern, you fool, you forgot to include the pickaxe code” or something with an easy solution
The bugs I’m almost 100% sure have to do with transitioning between frames when changing animations
But they seem to occur mostly in very rapid sequence that’s hard to replicate
So it’s unusual you’re getting one that’s actually specific to a frame
The left and right are also typically just mirrored
So your guess is as good as mine for why they aren’t the same
oh it’s for both left and right! my only thing was that it’s just pickaxe, not other tools. but if it’s just “sometimes it be like that” that’s totally fine — I just wanted to be sure I wasn’t missing something obvious (which is very much always in the table)
No im not sure why that’s happening
I wonder if it’s the FS code, I think that part might be conditioned on “using a tool” or something
The pants converter generates pants packs that partially depend on tool/action conditionals and partly on frame number
In hindsight I was probably just making life hard for myself
did you make the pants converter?? because if so you’re an absolute life saver
Yess the local token passthrough to i18n worked! Now to figure out why the Lowercase didn't.
Oh. Hm. This is going to impact translation negatively if I do it this way 
being 90% of the way there with a small problem is so much better than just staring sadly at some pants sprites and wishing 😂 I’ll keep fussing with it tomorrow and report back if I come up with an exact issue 🫡
Yeah I did make it!
you’re amazing and you are the reason that i felt like i could start modding, because i wanted more pants options but the fashion sense example was scary. thank you so much for doing that!
(the fashion sense pack of course also makes sense now and i totally get why it is the way it is, but playing with the skirt converter is what helped me to grasp how farmer sprite and pants asset interacted!)
anywho as long as i’m not missing an obvious “it’s ABC, silly” I’m happy to keep experimenting. thank you! 
Drat I am going to have to write out the names manually so as not to confuse translators.
Oh well, at least I don't have to wrangle with Lowercase.
Oops I broke the shop
marnie didn't like your chicken kebabs i guess
Oh my gosh this is going to involve so much conversion to local tokens
Trying to figure out if turning a patch into a template will save me any effort is so hard to do without actually trying it
🫴 local tokens 🫴
Hold on this is crimes i think
question about text operations: can i collapse two patches:
"Operation": "Append",
"Target": ["Entries", "Set-Up_additionalCharacters{{FestivalYear}}"],
"Value": "CharlesRowland 18 12 right",
"Delimiter": "/"
},
{
"Operation": "Append",
"Target": ["Entries", "Set-Up_additionalCharacters{{FestivalYear}}"],
"Value": "EdwinPayne 19 12 left",
"Delimiter": "/"
},```
into one?
```{
"Operation": "Append",
"Target": ["Entries", "Set-Up_additionalCharacters{{FestivalYear}}"],
"Value": "CharlesRowland 18 12 right/EdwinPayne 19 12 left",
"Delimiter": "/"
},```
yes
thanks
It worked but I immediately had to scrap it because it'd be confusing for translators to have to remove the tokens for it to work properly in any other language.
Well you can keep it if u do it like
{{i18n: outerkey | inner={{i18n: localtoken }} }}
Wrote on a phone maybe formatted wrong
I can't because I was using an ID as a player visible name. But that ID is in English so if it stays for the translated version the name would still be in English.
This is my local token:
"AnimalSpaces": "White Chicken",
I am using it here in the Data/Objects entry:
"Texture": "Animals/{{AnimalSpaces}}",
I thought I could reuse it in the i18n because the display name is "White Chicken Photograph", so my i18n line was
"photo.display-name.white-chicken": "{{AnimalSpaces}} Photograph",
But that must be English for the Texture line and then able to be not English for a translation, which doesn't work
Where would I be doing that?
can you use the i18n token instead?
{{i18n:{{AnimalNoSpaces}}}}
where AnimalNoSpaces is some text operation on animalspaces
Good afternoon, everyone. I'm wondering if there's an expert proficient in Stardew Valley C# development who can help me. I'm willing to pay as much as I can, and the requirement isn't complicated.
!comms
Still i18n
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
Ig im not too sure if this is some kinda config
oh there's no text operation to remove spaces
How would that help with it having to be English for one use and not English for another? /confused
It is not a config.
I was just trying to avoid having to write out the animal name by reusing a vanilla ID
ig I'm confused about what you're trying to achieve too tbh
what is it that you want done?
oh you only replace the part that doesn't have to be English, is what I meant
so the texture line stays {{AnimalSpaces}}
If I have to write another token then it doesn't save me any work lol
no that's not a real new token, it's a placeholder for me trying to remember how to do things 
but you do get another token
(can i18n keys have spaces in them?)
Does LocalizedText work inside i18n?
I want to implement the function of automatically clicking on the first save file when I enter the host coop interface. I have another mod that can automatically jump to the host coop interface after launching the game.
Don't care, I am not using spaces in any keys even if it's allowed lol
Otherwise I'd just use the vanilla "White Chicken" ID instead of writing it four different ways lol
I can just change it all back and then share all the jsons if that would be easier for people to see what I was trying to do haha
It might depending on where you are putting the text
For example if it was an item name in Data/Objects
i18n is resolved by SMAPI, while LocalizedText is resolved by the game, so i'd imagine you can in fact put a LocalizedText inside of an i18n string
You'd start with
{{i18n: something }}
It resolve to
[LocalizedText blah] Chimkin
And then game do
Blah Chimkin
again though not everywhere actually bothers resolving tokens like LocalizedText
Whether the 2nd -> 3rd step happen depends on where u be using it
wait is "White Chicken" actually the in game id, including the spaces
(spaces do work in keys. thats the extent of my input here rn)
Okay here is my:
Include patch in content.json: https://smapi.io/json/none/e2be99de227d4304880d91e562db0c8f
animal_objects.json: https://smapi.io/json/none/d3c2204c5a6a44109d4224fec53d6d56
default.json: https://smapi.io/json/none/1fd0c3e6300c400e93beaa22a003ba1d
upsetting
do you guys reckon we can scope creep pathos into adding a text operation that removes spaces 
why dont you pr it
🥹
Token
like {{lowercase}}
Why tho
I barely count as a living organism rn
So I don't have to write "White Chicken" and "WhiteChicken", obviously
But yeah aba, I'm 99.99% sure you can use LocalizedText here
Just grab the one from FarmAnimals
UGH the localized text key is written in yet another way!
The only downside is the ????? translation for void chicken in chinese
Plus if I can't get lowercase to work I'll still have to do this manually for the description
can removedelimited handle the delimiter being ''
not if you mean the literal quote that makes something a string
otherwise the delimiter can be anything
This also only works if the name doesn't change in any way based on the rest of the text and I don't think I can do it for the description because the lowercase token isn't working in there.
wdym not working, the lowercase token isnt any different from any other token in that it should work anywhere that other tokens do
is that placed in the i18n?
Yes, I've shared all the json here if you want to see #making-mods-general message
The LocalizedText is working for the display name
you have the lowercase token a bit backwards
you've put the input argument inside the i18n
it should be |Lowercase={{Lowercase: {{AnimalSpaces}} }}
in the content.json
and then just {{Lowercase}} in the i18n
its a bit confusing bc they are syntactically similar but once its inside the i18n itself, it's not a CP token but a SMAPI translation placeholder
when you pass the value into the i18n, you are telling Content Patcher what to give to SMAPI as the placeholder
Yeah I figured it wasn't working as a token inside the i18n because passing the tokens through only passes the value
But I didn't know how to fix that
if it helps to parse it out, you dont have to use a token to pass into i18n
So I will adjust according to what you just said
you could do |Lowercase=Hello!
so you just gotta remember that what you're passing in should be the final value of whatever you want
Thank you, that fixed that and now I understand the syntax for passing through a bit better
(also it doesnt have to match the name of the CP token either. could be |animalName={{Lowercase: White Chicken}} and then {{animalName}} in the i18n)
Yes I made that leap 
Thank you Button and chu for teaching me these new things!
I think there is still a risk for confusion for translators but I guess I will face that hurdle if my mod becomes popular enough to translate lol
Oh poop CP is converting [LocalizedText Strings\\FarmAnimals:DisplayType_{{AnimalDisplayName}}] to lowercase instead of the value of the string.
I was aiming for “delimiter between every character”, which iirc is how an empty delimiter works in some languages
I don't think I can convert this string to lowercase if CP is finished with it before the game fetches it.
wait aba are you trying to get rid of AnimalNoSpaces
No
oh wait nvm I get you
I mean, ideally yes, but that has not been the topic of conversation for the past almost hour lol
I am back to being stymied
:(
I'd have to make it plural for another description too...
White Chickenses
The museum hired Gollum to write its product descriptions
@iron ridge how did you pull the data for y1/y2 festival positions? i noticed that my NPCs don't appear in year 2 images, which i suspect might be because i have my setup with a token at the end like MainEvent_additionalCharacters{{FestivalYear}} as suggested in the tutorial i followed here: https://stardewmodding.wiki.gg/wiki/Tutorial:_Making_a_Custom_NPC#Festivals
(btw, great resource, i've already gotten so much mileage out of it)
@crude plank
(got the link wrong; just fixed it)
Yes or no, should make an npc mod adding Shadow the Hedgehog as a townie?
Yes 
No 
i vote for "whichever option YOU want to do" 
LOL fair enough
Guess I was kinda hoping yall’d egg me on so I have the courage to actually do it
Probably the perfectionism, just a little
I’ve dabbled in making a few mods by now, but making a custom npc seems really intimidating
For me, the helpful thing to think about is "how much do you want to do the making part?" As in do you think you will find the journey of making the NPC fun or are you just wanting the NPC to be in the game?
Because for me, it's the modmaking itself that's fun (even though sometimes it is distinctly not fun haha) so my goal is to enjoy the process of creation. It helps me get through the sloggy bits and helps me to battle the perfectionism because the goal isn't a perfect end product.
If you just want the NPC to be in the game and for you to have to expend as little effort as possible to get to that point, you probably will get bogged down by the process because it's not a quick and easy one the first time.
I'll add to that by saying that I barely enjoy the process of modmaking and all my mods are basically "I just want to see this in game". So I do strive to expend as little effort as possible to do that.
Like, I wanted to have cute mouse friends in the forest, but I knew I wouldn't enjoy creating schedules, and gift tastes, and all the minutiae an NPC normally has. So I just didn't do any of those and made them static, non-social NPCs instead.
Ohh interesting
Okay that’s something to consider
Thank you both! I didn’t get the response I was expecting, but I think I got the one I needed!
ideally you want the two values to be roughly equal (liking the result and liking the process), if you're too far to the process end you'll never actually release anything since you're writing more stuff all the time
I am at risk of the never releasing part for Hiria xD
me with having alpha/beta builds circulating and just never doing the proper releases of them
yup it's because of the token, when i got the data i knew it wasn't going to be complete but i tried to get as much as i could do get Pillow some data to get started on, what i missed can be added when Pillow finishes
What was the data collection mechanism
If I was doing it, the least effort way would be to have the mods all loaded and then get to the correct date go into the festival and then patch export the relevant assets
Will need to do multiple iterations due to turning sve on/off, but static analysis of the cp packs is hard
how can I access these
is it a property of game1?
or
it doesnt provide any code snippets
i did not go to all festivals, i just patch exported each festival from the start and then used a script to put all the positions in a CSV, which is why some will be missing, because some have conditions to be met, also i simply might've missed some
that's the whole code snippet ☀️ Context is public static, just need to using StardewModdingAPI;
oh
my goal wasn't to try to get all the data, it was to get as much of it as i could pretty fast to get Pillow started i'll probably revising this to get more
pillow
am I sensing python here
i did use python but the Pillow i'm referring to is @iron ridge
who actually made the damn thing, i just collected some data
oh..
tbh if there's an automatable list of steps to do to do the data collection I could probably automate it off the pathos monthly mod dump
what would be really helpful for this would be something that would set all events to seen and all mail to read in a save
i tried to use Event Tester at some point but actually going through all of the events was problematic
all events is easy, all mailflags isn't possible
though could just mod the mailfalg check itself to just always say yes
well just events should still be extremely helpful
a lot of NPC just don't exist until you've seen certain events
I can also mod away most of those checks too
if you do end up doing that let me know, i wouldn't mind doing it again and actually trying to get as much as possible if i have a way to get a save as "unlocked" as possible
I can do a custom build of content patcher that just ignores conditions for specific assets to get things happening almost no matter what
that'd be perfect
you can always say what's happening in case it helps
how would you like to die 📝
Hi! wated to ask how do I rewrite the dialog when NPC accepts mermaid pendant? U_U
I tried AcceptMermaidPendant but it does not work
it just shows a generic dialog
your npc or a vanila one or someone else npc?
my npc
I tried to look into others npc for this option but can't find it either
Hi all, are there any guides on how to create custom shop items and include them as options in a custom NPC shop? I found this guide, but its only for items that exist already in vanilla: https://stardewmodding.wiki.gg/wiki/Tutorial:_Making_a_Custom_Shop
If you're looking to make a custom shop for your NPC, this is the guide for you! I will cover creating a shop, adding items, and making rotating stock.
Before you start: This tutorial assumes you know how to create a basic content pack with a manifest and make basic changes with CP. If you don't, start reading the official CP author guide and/or...
what do you mean it's only for items that exist already in vanilla?
i'm pretty sure this would work also for modded
apparently you need to target Strings/StringsFromCSFiles and add a line like "YourNPC_Engaged": "dialogue here",
https://stardewvalleywiki.com/Modding:Dialogue#Strings_from_CS_files
you need to add the items into the game first
you would need to create the items first
Hmm I remember investigating this engagement dialogue
oka thank you very much! UwU
holy.. never thought it will be like this and not just a simple line
the engaged dialogue was added a long time ago (stardew 1.4), and the rejection feature was added in 1.6, so the formatting changed somewhat
I don't see any tutorials for adding new items, but you just add a new entry to Data/Objects. https://stardewvalleywiki.com/Modding:Objects
this is my first mod so I'm quite dumb 😅
should I do stuff like this but with StringsFromCSFiles asfter strings in content file?
it's not dumb to not know things
ty!
It's def not dumb, you're learning something new!
I made a whole mod just to test it because I found the engagement stuff very confusing lol
I made my first NPC non-marriageable for now because I just don't wanna touch engagement stuff yet
I would really like it if TargetField could create the field if it didn't already exist
Ok! So I create the items, load them into the data/objects, and then in my shop code introduce them there
You should never have a file extension inside the "Target" field, so no .xnb. And no character name.
It should look like this:
{
"LogName": "Add CS file engagement line",
"Action": "EditData",
"Target": "Strings/StringsFromCSFiles",
"Entries": {
"Leah_Engaged": "Ooh a pendant! Shiny.",
}
},
Replace Leah with the internal name of your NPC.
Your NPC's internal name should have a prefix to ensure it's unique, by the way. I recommend changing it to {{ModId}}_Passenger ({{ModId}} is a token - you're meant to leave it exactly like that and Content Patcher will replace it with your mod's unique ID from your manifest when the mod is in the game).
yeah I know it should but as it is in testing stage I want to be sure it works a all at first
Good news! It does 😌
so now I'm doing stuff and testing it slowly
I don't like to do that with mods I know I want to release because I'm far too likely to miss a spot when I change things over.
I only ever do it with mods I know will never see the light of day because their only purpose is to quickly test one particular thing.
it's my first one so I need to check things UwU
I just now decided im gonna make apair of twin ring leaders for my circus expansion mod thing
I think thats be fun
I like to think one cutscene they would be arguing and be likr “what do you think farmer??”
I don't mean I don't like to check! I mean I don't like to use anything less than best practice right from the start because if I don't, I will miss bits when trying to fix it up later.
can I just install the whole .net aspnetcore server in a stardew valley mod?, are we using class library because it is simple, or because the other ones dont work
I try to do that too, especially since I new
stuff for transaltion and mod id is only confusing me now U_U
so I need to do basics first then improve
As it is, I wrote a bunch of local tokens and then I changed them and missed changing them everywhere so I had several errors all in a row from mismatched token names
like this stuff with engagement - without you I would be figuring it out for ages
I think mail just might hate me. Okay so when I'm adding an object via mail and I also have i18n keys, does the %action AddItem {{ModId}}_BlueChickenPlush 1 0 %% go in my default.json or TheWolfMail.json and just add it after the {{i18n:TheWolf.BlueChickenMail.2}} but before the next ^^?
Please use code blocks, much easier to read!
I personally try to keep as much non-translatable text out of i18n as possible because translators sometimes translate the commands/tokens by mistake.
But sometimes that's too fiddly or not feasible, so it can go in the i18n.
"{{ModId}}_BluePlushie": "{{i18n:TheWolf.BluePlushieMail.1}}^^{{i18n:TheWolf.BluePlushieMail.2}}%action AddItem {{ModId}}_BlueChickenPlush 1 0%%^^{{i18n:TheWolf.BluePlushieMail.3}}[#]BluePlushieMailLetter", like this? So this is my TheWolfMail.json
Also you don't need to use %action AddItem {{ModId}}_BlueChickenPlush 1 0 %%, there's a command specifically for adding items.
Lol Quill you forgot to escape xD
quill 
I'm on mobile
(To code block, use ``` before and after your code
If you do it like ```json, discord will do fun stuff with the colours)
(copy and pasted quill's but escaped correctly)
Thank you iro 
So nothing feels intuitive
Oh? I grabbed that format from the action triggers page, is there something else I should be using?
Back to my nest I go to hide 
also fun fact: syntax highlighting (the "fun stuff with the colours") doesn't work on discord mobile
you just see everything the same colour
It looks okay. It's not working?
The letter name [#]BluePlushieMailLetter will need to be in i18n as well because it's player-visible.
I just thought that it colours json all the same colour anyway
I've never seen the syntax highlighting change for json, whether I'm on mobile or desktop. It changes for cs though.
(where do players see letter names?)
no, it keeps showing the action AddItem line in the mail and not the item T.T
Well, you can use %item id [<item id> [count]]+ %% from here:https://stardewvalleywiki.com/Modding:Mail_data
It might work better?
Collections page
ooh, I'll fix those i18ns and maybe try using the other add item for mail and see if that helps
isn't that an ID though? IDs should never be i18ned
oh it's not the id
It is not an ID, no
one of these days I will go back and catch up on content mods so I'm not using half remembered stuff from 2024
I have often seen mail be finicky about actions and I haven't been able to pick up exactly why or how to fix them
Yeahhhh, I'm noticing that too
Also I say about trying to avoid tokens in i18n but...
"commission-receipt.receive-text": "Thanks for giving us this excellent photo of your {{name.animal}}. Come back {{TimeGateDate}} to see the {{name.animal}} sculpture!",
(Hmm are the key and value perhaps slightly different shades of blue? Maybe it does colour json but the colour choices are terrible.)
Oh poop I lowercased it
(they are, yeah)
Many hours later, I had a revelation about how I could do all my i18n so I only have to write out the descriptions once for all the animals and then only have to write out each individual animal's name instead of all 8 lines. Shortly afterwards I finally realised that was what you were suggesting I do here xD
The mailbox shows I have mail but the icon goes away when. I click on it and no mail happens
Is there a spritesheet in the game content (unpacked) folder for food items? if so, where is it? because I can't seem to find
Does your mail key in data/mail match what it is wherever you sent it? (e.g., data/triggeractions)
Maps/springobjects
(write out an explanation for anyone looking for this in the future!)
HA. NO.
thank you!
at least an example 
I can barely grasp what I've done myself, there's no way I can coherently describe this.
I can provide an example though
Yes T.T I'm gonna un-i18n the mail for now and then I'll re-i18n it once I figure it out better
not all my mail just this one XD
thank you very much Abagaianye | @ me please, it worked! 🙏
Example doesn't all fit in one message so I have to split it up
Hooray! You should be thanking Esca though, they're the one who pointed you at the right thing ^_^
is there anywhere apart from this channel to find people to collaborate with on making a mod?
Okay, example for how to reduce the amount of rewriting the same content in the i18n when the descriptions of objects etc are the same except for small parts like the name.
content.json
{
"LogName": "Include for White Chicken",
"Action": "Include",
"FromFile": "data/animal_data.json",
"LocalTokens": {
"AnimalSpaces": "White Chicken",
"AnimalNoSpaces": "WhiteChicken",
"AnimalContextTag": "white_chicken",
"I18nIdentifier": "white-chicken", // This is the only relevant one for showing the translation stuff
"PhotoSpriteIndex": "0",
"CommissionReceiptSpriteIndex": "1",
}
},
{
"LogName": "Include for Brown Chicken",
"Action": "Include",
"FromFile": "data/animal_data.json",
"LocalTokens": {
"AnimalSpaces": "Brown Chicken",
"AnimalNoSpaces": "BrownChicken",
"AnimalContextTag": "brown_chicken",
"I18nIdentifier": "brown-chicken", // This is the only relevant one for showing the translation stuff
"PhotoSpriteIndex": "2",
"CommissionReceiptSpriteIndex": "3",
}
},
animal_data.json
{
"LogName": "Add animal objects",
"Action": "EditData",
"Target": "Data/Objects",
"Entries": {
"{{ModId}}_{{AnimalNoSpaces}}Sculpture": {
"Name": "{{ModId}}_{{AnimalNoSpaces}}Sculpture",
"DisplayName": "{{i18n: sculpture.display-name |name.animal={{i18n: name.{{I18nIdentifier}} }} }}",
"Description": "{{i18n: sculpture.description |name.animal.plural={{Lowercase: {{i18n: name.{{I18nIdentifier}}.plural }} }} }}",
"Type": "Basic",
"Category": -24,
"Texture": "Animals/{{AnimalSpaces}}",
"SpriteIndex": 0,
"ContextTags": [
"sculpture_item",
"{{AnimalContextTag}}_item",
"not_giftable"
],
"CanBeGivenAsGift": false,
"CanBeTrashed": false,
"ExcludeFromRandomSale": true,
"ExcludeFromShippingCollection": true
}
}
},
is this your character image? crazy good
default.json
// Specific to each animal
//////////////////////////////////////
"name.white-chicken": "White Chicken",
"name.white-chicken.plural": "White Chickens",
"name.brown-chicken": "Brown Chicken",
"name.brown-chicken.plural": "Brown Chickens",
// Shared by every animal
// Translators please do not remove or change the tokens! The tokens will pull the name of the animal from the keys defined in the section just above this one.
//////////////////////////////////////
"photo.display-name": "{{name.animal}} Photograph",
"photo.description": "It's a stylish photo of your lovely {{name.animal}}. Maybe you should take it to the Stardew Valley Animal Museum...",
"commission-receipt.display-name": "{{name.animal}} Commission Receipt",
"commission-receipt.description": "Your {{name.animal}} sculpture will be lovingly handmade in Zuzu City and will be automatically added to the museum when ready.",
"sculpture.display-name": "{{name.animal}} Sculpture",
"sculpture.description": "A beautifully rendered sculpture of one of your {{name.animal.plural}}.",
"commission-receipt.receive-text": "Thanks for giving us this excellent photo of your {{name.animal}}. Come back {{TimeGateDate}} to see the {{name.animal}} sculpture!",
"commission-receipt.broadcast-text": "{0} has commissioned a {{name.animal}} sculpture for the Animal Museum!",
I redraw if from in-game sprite of this character so my work here is only redrawing in pixels and making expression U_U
I'm an artist though
I don't know of any dedicated place for finding people for collaboration, no.
but in this case I wanted to be as close to his authentic sprite as possible
@gentle rose #making-mods-general message Voila
still very impressive!! i unfortunately have very, very little ability when it comes to pixel (or any) art
hmm oke
Is there a reason you want to collaborate specifically rather than making a mod on your own?
so here is the comparison of source and my sprite sheet
(Not meaning it's a bad thing to want to, but I can maybe give you some guidance on where to look or how to approach it.)
honestly obsessed with how good it all looks but the FLUFF ON THOSE ears
Your blush is so well blenddddeddd ❤️ lovelovelove
All of those NPCs without unique prefixes makes me cry 😭
I should make sure I get that set up for IggyNova and RiottKnight
Hello, another question:, I am making a custom shop, with my own custom food items that the player can eat. Is there something I can input into the code segment here that tells it info about buffs when eaten, how much health/stamina it restores, etc?
Yup, that info is on the page that I linked for you earlier
yeah mostly its a lack of free time so unfortunatly can't fix that easily xD
also lack of pixel art ability. and lack of creativity/game design
also teams are fun
I think there's a section in the itemdata that you can edit about edibility
oh thank you! Im so sorry I missed
yes, this is your PSA to please include your modid in the internal names of NPCs
yeah you did a wonderful recreation then
yess the fluff and detail go crazy
really lights a fire under me to up my pixel art game, mega art goals
Ok, maiiillll time. and also figuring out how the best way to go about creating a 'wobble' for my cream cheese machine
That's fair! I can't speak for everyone of course but from what I've seen people tend to want to collaborate with people they already know, who already have a proven track record of making mods (even if said mods aren't finished) so the person knows a) that you are able and willing to do work and b) something about your modding values (e.g., do you want to make meme mods, item-heavy mods, narrative mods, and so on).
i have a pretty specific idea in mind so i think at least the latter issue would be solved
Sharing that idea might help gain interest
A lot of the stuff people do together in here tends to be because person A talks about possible implementation approaches for their idea and then person B gets interested and goes off to do a little investigation. Or in the case of C# modders, invent a framework lol
Never heard of it. Are they interesting characters?
hehe yes that was the plan, i figured it would probably get burried in the messages here though--thats why i asked if there was a forum or something. guess i'll plop it here anyhow and hope some interested folk read it!
well...
game has very VERY different tone
but the characters are cool
I talking about the 2 game btw
I have been informed that the game is very NSFW so it's going to be against the rules to discuss it or any mods based on it, sorry.
this art is so hard O_O
what is your idea (pixel art is kinda my thing)
yeah
I’m sure it will. You’re killin it ❤️❤️❤️❤️❤️❤️
ty 😭
that's why i was so vague
Always happy to provide hype 💕🎉
THE MAIL WORKS OMG
at last. Dis is de wey
rn i have 4 npcs planned and that might be it and ill just allow people to move their own npcs in and have some 'stand in' empty houses/trailers
i might even make an npc addon myself for it unless i get another solid idea
I think that’s a great structure ❤️❤️❤️ I’m already working on someone to live there.
woohoo! itll be a minute before its ready as i wanna have a couple npcs 'baked in' as living there already and i gotta make interesting dialogue for em XD
(They will not be ready for a while tho cuz I have 2 other NPCs to make first)
dw you got time XD
if you're vegan you'll love the idea 😭
Lmao absolutely. Still stuck on cream cheese maker animations


