#making-mods-general
1 messages · Page 429 of 1
I see, before I had issues with animating it with non symmetrical x by y, but ill check if that works.
post your i18n file?
{
"JojaStorageRoom.name": "Joja Storage Room",
"jojadoor1.name": "Joja Glass Door",
"jojadoor2.name": "Joja Metal Door"
}
and you've done an i18n_reload or game restart since adding the i18n, too? since it doesnt get reloaded with patch reload
the actual i18n folder and anything inside it is not managed or at all touched by Content Patcher, it's a SMAPI thing
i'll make myself a note
Hey Thank You I got it working and now I know I got to be very specific. The source code where can I see it for future reference I still got some others I want to fix up.
!decompile
If you want to make SMAPI mods with C#, one important resource is decompiling the game to read the game code. Here's how to do it: https://stardewvalleywiki.com/Modding:Modder_Guide/Get_Started#How_do_I_decompile_the_game_code.3F
the ShopMenu class’s draw function specifically
Thank you again defiantly do download it when am done to spice up your money gain.
Hi everyone! I’m looking for someone who might be interested in helping me put together a simple custom NPC mod. I’ve already written out all of the dialogue and heart events in text files, so the creative side is covered — I just need help packaging it into a working mod.
Key details:
New NPC (unique design: pink hair, pink hoodie).
No schedule needed — she can stay in one spot (likely the Saloon).
Fully marriageable.
5 heart events, already written, with player choices.
Dialogue theme: she loves food, starts out a little shy, but her lines escalate into very funny/hungry requests as the relationship develops.
I don’t want to replace an existing NPC.
This is just for personal play, not for public release, so it doesn’t need to be polished for Nexus. If anyone is willing to help me get it into a Content Patcher or JSON Assets format, I’d really appreciate it. I’ll provide the full text files with all the dialogue and events.
Thanks in advance!
does anyone have a npc mod on hand that they know uses i18n sdo i can see how its usually set up?
im gonna go lookin as well but thought id ask
pretty much any of them with a translation does
it’s fairly straightforward; any time you have a string that’s user visible you just switch to {{i18n: your_key_here}} in the CP code and put "your_key_here": "The original string" in the i18n file
there’s also an i18n converter
!commissions while you may get offered help here, you’re much more likely to get it done via commissioning people instead, even if you have most of the meat so to speak
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
(just something to consider)
I took a break from the portrait mod for like a week and now I’m realising I want/need to restructure the entire data asset and part of how the mod works
it’s for the best but whoops
(especially for events where having the script is only half the battle)
In events, having the script isn't even half the battle if you don't know the code, I ended up changing a lot for dialog and events when I realized how the code worked
best time to realize this is before release, at least 
Yeah, I'm going through and doing the i18n for my Zelda NPC Overhaul mod and realizing that I could have handled some of these EditData actions in a much more targeted way, so I'm rewriting lots of code too. xD
ty icic
!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!
It really is not hard
definitely better now than later
tbh I knew all along that it felt awkward and kind of clumsy but I was convinced it was fixable with small tweaks
thinking i might make it where my character can sell some pets if thats simple enough with content patcher
mainly balloon doge
cant create a custom animal shop without a dependency
You don't need dependency if u want a pet shop in general (just OpenShop PetShop is enough)
But until next version u need dependency for filtering pets
anybody know if ellle's town mod also recolors the paths in town? i think it does but i can't find the file that recolors it.
is there anywhere i can find tips on spriting buildings accurately in the sdv style??
or if anyone in the server has tips and Tricks lmk….
is it possible to make an animal locked behind friendship with someone at marnies ranch like with a custom pet
sure, animal data has a Condition field that can take game state queries
https://stardewvalleywiki.com/Modding:Animal_data
there're a few tips and tutorial links here that might help
https://stardewmodding.wiki.gg/wiki/How_to_make_pixel_art
thank you!!!
flashshifter made a neat graphic for his buildings, you may find it useful
flash's is pretty close to my usual workflow. it's important to block things out first in vague shapes in 2 tones for whatever major colour blocks you're using; 1 tone each for lit and unlit surfaces. example from yonks ago
oh!! yes this is exactly what i was looking for lol
size references with base game features and characters are important, maybe even having a 1x scale screenshot of the location it's meant to be in as a canvas background on and off
perspective was giving me a bit of issues
so seeing just the shapes blocked out really does help
i think i should make my base npc sprite first then so i have something for scale..... 
well presumably your npc is roughly the same height as the others lol
chuck abigail in and call it a day
he's on the taller side so i might nab sam since his hair goes all the way up to the height limit lol
💭 need to make sure the doors big enough
i can tell you from my own work it is real easy to make buildings way too damn big
stardew buildings are unrealistically tiny
THATS WHAT IVE NOTICED TOO YEAH
im trying to make an abandoned church.. which would LIKELY be massive but this is stardew so i have the perfect excuse to not draw All of that <3333
i can't name a single game in this style where anything is to scale other than doors to people
which is to say make your buildings disproportionately small, but with to-scale features. chibi buildings
okay!! im pretty good at that.. i think
i think i also want to draw my npc sprite first because well.... i need to figure out how to dumb down this design to something itty bitty sooner or later
these look really good though!!! i see what u mean by the scale though <//3
i said though twice.... ignore That
thanks
two of those i think i'll make a couple new desert screens for
so they can breathe

theyre really cool..... i love the shape and style of them.. 1 day ill get that cracked at spriting buildinfs
i just kind of banged my head against them for weeks so don't feel bad about where you are
i really love that ufo 💞
How do I go about adding custom behavior to furniture? I have some skeleton code for the behavior and a Furniture.json with the custom item but I'm a bit lost on where to go from there. Do I need to define a new furniture type in my code then define that furniture piece as the custom type in the json? I feel like that's not right.
it's one option, but not ideal imo. i've messed around with custom furniture types and it's a mess having to make a whole new class and type definition, it gets out of hand fast especially for one-off furniture pieces.
imo it's simpler, cleaner, and more maintainable to do it as vanilla does, and just add your entry to Data/Furniture with the usual expected behaviour, and any custom interactions can be handled with a harmony patch on the appropriate furniture action method
there's also the option of using furniture (tile) action frameworks such as spacecore for some simpler behaviour, or if you wanted a non-harmony method of calling a registered action
(note: this is a non-harmony method only in that spacecore does the harmony for you)
Thank you for all of that! I am going to try coding up the classes for it. I'm not a fan of harmony api tbh, but it is good to know there's a fallback if i cant figure out how to do it otherwise. Thank you again, much appreciation!
harmony's a sharp knife, it's usually a very quick and clean way of getting into the game code. you don't have to go in stabbing and rearranging everything and cutting bits out, but the more unhinged people here usually can't resist the temptation
just keep it simple and don't listen to what the knife tells you
ok im gonna try to do an npc over the next few days exciting!
might take me longer than a few days but ill need a few days to wrap my head around it :3
Damn these are awesome. The space ship makes me want to go play Helldivers and blow up some aliens
if i want to have a scene event where my character is wearing a different look (shes a clowna dn i want an event without her makeup on) would i need that on a different spritesheet or would i need to put that on the same as the other sprites like the regular look sprites
up to you, whichever's easier. vanilla generally puts unique event portraits on the same sheet, since they only use 1~2 new frames
you'd need to keep in mind though that the usual dialogue portrait commands would still use the regular portraits though, so you'd need to specify the new portraits in dialogue
aaah ok
is there a vanilla or modded method of having male-female clothing variants for a single item? my current setup chooses the asset based on the current player's gender, so male players will see male shirts, and female players will see female shirts. obviously this completely flops in multiplayer, because the current player will only see boobs equal to their own
also probably doesn't invalidate on cmenu gender edits during gameplay
this is something of a relic of json assets' gendered clothing setup, though it's since been migrated to content patcher only after ja was discontinued, so this was the compromise solution
Vanilla no longer does that iirc
You just have a (W) item or a (M) item
I guess the closest and fastest would be to define a method that swaps one to the other upon getting the shirt in your inventory
this is less than ideal lol
also does FS take game asset names as texture sources at all, or just local filenames?
I’m one of these /s
in any case defining double the items sounds like an absolute drag
being able to set one or the other appearance per body shape would be the simplest solution
at least it wouldn't be almost guaranteed wrong for everyone in multiplayer
could do what the pan thing does and convert between the regular item and equipped item when going into the equipped slot, and convert it to the gender specific equipped form
Is the spriteindex persisted
this all sounds very C# for my shirts and pants mod
Just make yourself a framework
i feel like i'm being called out
Dont worry you can call me out
atra, i would never
Tell me that every extra minute of my lifespan I'm getting by exercisin is being spent on the stairs torture machine
(me with my 4-6 frameworks depending on how you count them
)
Or I'm a basic bitch for liking Taylor swift (I am a basic bitch)
i'll take that as a 'no, you cannot do this' then
That's quitter talk
then i quit
Dont worry I quit too
also sure doesn't look like i can make someone's FS repack of my mod use my CP mod as an asset source
why must things be slightly difficult and not very very easy
a (non-replacing) prefix or postfix also gets the job done 90% of the time.
i have a dance sequence i want my character to perform at a certain time during the day, how do i make them do that?
Schedule animations
oo ok lemme look that up
do i put the scheduled animation thing in the content json between the brackets or is that stored elsewhere
You can make a patch to edit Data/animationDescriptions in your content.json file between the square brackets (which is where all your patches will go)
aaa ok
This has an example of the sleep animation, but you use the same method for any custom schedule animation for an NPC: https://stardewvalleywiki.com/Modding:NPC_data#Sleep_animation
Just change the key and the sprite frames accordingly!
hey! I wanna make a thought bubble show up over a character's head during an event like a normal speech bubble, would that be possible without too much coding?
mostly just change the shape of it, maybe make it partially transparent
:0 thxxxx
That's hardcoded i believe
gotcha
You can use normal emotes it's adding any custom one that is hard
what's stopping you from just adding a new temporary animated sprite?
i suppose the text
my clueless ass has no idea what that is
that observatory is cool as hell
i would suggest simply editing the speech bubble sprite for the duration of your event, which would be fine if no other speech is used, but given it's a stretched 3-slice sprite it probably wouldn't look good
how do you imagine the end product looking?
my idea is it looking similar to a normal speech bubble, but make it semi-transparent, and make the edges look cloud-like
rrrrgh i can't even try and send a PR for FS to use texture targets since it's apparently not even being updated
total modding novice btw
would there be text/translations in the thought bubble, or just a bubble sprite?
Doesn't /textoverhead exisr
if you were fine with the text possibly extending past the thought bubble, you could use a conditional EditImage action to clear/wipe the speech bubble sprite during your event, use the textAboveHead event command to show the text and invisible speech bubble, and at the same time try the temporaryAnimatedSprite event command to add a non-stretching thought bubble where the text appears for the same duration
uhhhhhhhhh okay!
not that i've tested any of this, mind. it could easily be the case that the sprite appears in front of the text or whatever other issues come up when trying something new and silly
events are something of a cursed entity
that's alr, tysm!!
blueberry clothes framework when
More seriously I think u can just distribute it if u really gotta
It's GPL
uhhh where might I be able to find the speech bubble in the game files?
(can't believe I'm trying this lol, I still barely know how to code-)
you are out of your mind
maybe moreso than the person who commented on desert bus to request i choose from one of several entire games about cooking to add to the love of cooking, since apparently kanade's minigame addon did in fact not stop the cooking minigame requests
I believe the speech bubble is in Cursors, but I could be wrong.
i'd really rather not have to support an unofficial fork of fashion sense
like, extremely absolutely not. ever
https://stardewvalleywiki.com/Modding:NPC_data#Sleep_animation
when doing this do i make a new text json called animationDescriptions?
i spelled it wrong my bad
hmm lots of various bubbles but I don't think any are the like official speech bubble?
no, you are targeting the base game file in your patch (hence the "Target": "Data/animationDescriptions"), which is called animationDescriptions, and your action block will make a new entry that will be added to that file virtually by Content Patcher at runtime.
Aa ok, I thought since it said data then that it wanted a json file in the data folder or something 🙂↕️
The file already exists in the base game's content files, in a folder called Data. You're just telling the code where to put your changes. 🙂
oo gotcha thanks smm sm
!unpack
Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!
also i just noticed but fire red lily did you make the pelican lofts
Yep!
cool! im gonna be using it as a dependancy for my mod :3 thanks for housing my npcs :3
its a lot less terrifying when i know i dont gotta make a whole new spot for em X3
Awesome, always glad to see new NPCs taking up rooms in the apartments!
I tried to make it fairly easy to set up NPCs in the rooms, but feel free to ping me if you have any questions.
wait there’s an apartment mod…. user fireredlily i owe u my life and will keep this in mind for when i make more npcs out of my ocs 💭💭💚💚💚
Yep! My mod is here: https://www.nexusmods.com/stardewvalley/mods/30295
is it possible to get the map name in the location that the game is busy messing with?
messing around with Crop.harvest, and want to get map name so I can use mod data saved under that map name. I would assume currentLocation doesn't work when junimos or something else is harvesting and we're not on that map
Quick question, I'm writing an event and I'm trying to get an npc to walk a few tiles then make an emote but they keep making the emote WHILE walking. I keep looking through the commands to fix this but I cant see any commands like "wait" (the closest is "halt" which didn't work), is there anyway to fix that?? Or make the npc wait before executing the next command??
some options like waitForAllStationary exist, but as far as I know, commands already wait for completion by default; you might just need to remove the "continue" flag from your move command (the true part at the end)
a lot of the built-in events also include a pause 500 or some such before emotes, though, so that might improve how it flows
good news, this was a truncation error rather than an actual issue with the ingredient matcher 🥪 should be fixed in the next version, whenever that is
Ooohh!! Ty ty!!
context: still learning Transpiler
Question: I want to insert code right before a return. So in the transpiler I look for OpCodes.ret and then insert the code there. The code normally returns a value. Since I stuck something right before the return, will that value not be returned?
yes, i'm quite sure you'd be creating an invalid program by inserting IL between the return value and the return operation
it actually compiles and runs, and no ill effects has been seen yet form testing.
so you just posted that as a question to make me look foolish eh
i know your games now
no, i still have a question on if I interrupted the return value.
was just commenting on that it does compile and load in game since you said would create an invalid program.
so does the 'something' you stuck between the return value and return operation provide a new return value?
e.g. call operation with a matching return value type, ldarg with matching type, etc
nay, it's a public static void operation. That said going off this, I'm going to store the original return value and then return it so it's on top of the stack
not sure what to say. upset my transpilers catch fire on sight but yours let you put method calls between stack loads and return calls 
if the value to be returned is not on the top of the stack when the ret happens, it does not return the value
but putting a method call between it does not necessarily mean the value won't still be on top of the stack when it returns
I'm editing a custom farm house mod for personal use, I'm trying to add light using the paths tilesheet but it doesn't seem to be working.
Just to make sure I haven't forgotten anything, I add the tilesheet to the same folder as the map, add it in tiled and check Embed in map, then place the light tile anywhere I want on the Paths layer right? Do i need to do anything else?
I think I've edited the right map, I just got the cellar upgrade so thats Maps/FarmHouse2 and Maps/FarmHouse2_marriage after getting marries right?
Even adding it as an overlay rather than in the farmhouse file itself isn't working, odd...
For someone with no modding experience at all, how hard is it to make a custom farm? I want more space than my current modded farm, but also want it to perfectly fit my laptop screen with no scrolling 😆
honestly! im making a custom map right now and it seems pretty intuitive :o... just make sure u have the stardew modding wiki opened and a bunch of tutorials lol
speaking of.. :/ i want an npc that lives in the secret woods, but apparently that's an area i should avoid if i want them to leave and do things around the town?? 😭 is there any work around for this or am i just fucked and have to figure out some other area for them to live in the woods
a little extra animation while i'm fixing up the cooking behaviour
it's a common 'gotcha', the game doesn't allow pathfinding for any NPCs in the secret woods. your alternatives are either picking another location, or adding a location inside the secret woods with an NPC-only warp directly out of the secret woods to wherever else in the world you'd send them. a warp room is a fairly common thing to make in this situation, since you'd have an npc-only way of sending them to wherever you need
!startmodding -- varies per person of course! i'm not aware of a getting-started-with-maps guide specifically, but this is the go-to for first-time creators
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.
if you can work your head around both Content Patcher (well-documented and with logical solutions) and the Tiled map editor (not particularly documented, lots of funky sdv-only behaviour, lots of pitfalls but ultimately quite fun) you're golden
there's examples to work off already of course, i'd recommend Pathos' Small Beach Farm as a reference since it was made to showcase how to create custom farms with content patcher
it even includes a wikipedia link for the relevant geological features in the farm. how fortunate for you
OOOH THANK YOOUU!! 🙏 warp room is a really good idea
(Small Beach Farm is a C# mod)
tbh i think i mightve chosen. the most complex oc of mine to turn into a mod first 😭 bc hes technically like. two people... idk how im gonna make that work.. but ill figure it out....... even if ive never modded before
ty btw
Thanks!
Lol I get it, I have such complex ideas I wanna do for my first mod even tho I know nothing 😭
we both can do it ❤️
version 1.3 compatible....
mother
i can't even pretend i meant Jen's Small Beach Farm since that one uses some custom tilesheets and other fluff we don't want right now
fuming atm
your crimes are unforgiveable, blueberry
MY crimes
sentenced to 2 more years of LoC minigame comments
do NOT test me i WILL choose not to push the update
is this a bad time to say i dont have it installed
GOOD
(not for any particular reason i just havent done a modded 1.6 playthru yet)
true !! im currently. reading through the author guide on the content patcher github and i think. my brain is frying 😭
its 1:33 am rigjt now i dont think it'll cooperate and let me understand what the hell im reading
forget Small Beach Farm it is a terrible example and i hate it now. my new best friend is Natural Mini Farm which is a wonderful example on adding a new farm map and all the relevant extras, like the name, icon, fish, and so on
https://www.nexusmods.com/stardewvalley/mods/28430
out early for good behaviour
I feel that on a fundamental level, I've been hyper fixating on my Idea for weeks now so all I've been reading are tutorials. Writing dialogue, trying to figure out how to pixel art and all that other stuff. I keep re and re reading the tutorials too, because my brain doesn't even process it half the time 😭
the cat giveth and the cat taketh away
Thank God I managed to churn out a single portrait 😭
DUDE YEAH <//3 EVERYTIME
i finished like... a base portrait also and the Concept of an overworld sprite and right now im working on the church hes gonna be in (which i think being somewhere in the secret woods is PERFECT for) but then i remember
coding <///3
i am also writing dialogue but i still need to work on heart events... trying to focus on giving him his own personal map in game so i have something to base everything on bleeghhhhhhh oh and i started this Last Night
oh beautiful i will thrive when you are in my Game 💚💚
I've just been writing more and more dialogue, because I'm too scared to try out events right now. Most of my ideas are so coding based 😭😭
That's so beautiful ❤️
cain ur oc is so pretty i like his design a lot
THHAANK YOU!!!! hes originally a curse of strahd player character and i have Sooo much art of him
its ok ive been avoiding events too <///3
I've literally just kept planning and re planning on how I'm going to tackle my mod 😭
ME AS WELL
the most ive done is open up a map editor and draw..
😭 bc im an artist.. its all i Can do,...
coders will relinquish their witchcraft to me SOONER OR LATER!
Lol I get it, I'm an artist too. Thank God I have some experience writing ( fanfics), but coding I have no idea. Also kinda have no idea with the art too cuz pixel art is so different from the art I'm skilled in 😭😭
I find coding easy enough but character writing always has me staring at a blank word doc and sobbing
extremely grateful tjat ive always has a fascination with pixel art but lird. it does test me
especially the 64x64 canvas size
Ive been doing this stuff for years why is it suddenly difficult!!
Omg I was so scared when I saved my first portrait art to show my friend, and it was blurry. I didn't put two and two together 😭
ALSO I UNDERSTAND U AS WELL.. i have like. the concept of a character in my brain bc. well of course i would this is the oc ive been obsessed with for two and a half years
but how do i Write You...
im only an artist i lowkey suck at everything else BUT I WILL LEARN 💚 for him
💚
I feel you, I feel so much passion for the character I'm making as well ❤️
whicj means we can do everything we set our minds to btw just so u know 💭
crossing my fingers that i dont burn out too soon
my brain keeps wanting to scare me out of this. But I keep telling myself it's okay if I work on it just a little everyday lol.
YUPPP u just gotta keep at it
even if its like 20 minutes a day
i <3 being unemployed i have nothing else to do all day
I DO have school, but it's like 3 hours everyday. So I have A LOT of free time, so I feel you.
Wish i didnt have to go to work damn
i want a job so bad u dont understand . social security is refusing to let me get an ID bc theyre taking their sweet ass time NOT UPDATING MY SSN CARD <////333333 but while i wait im doing more productive things (like modding my all time babygirl into stardew valley so i can marry him in every save)
😭 mine is super self indulgent too tbh, he's super fine tuned to my taste and what I want to see. I honestly won't care if no one else uses my mod when the time comes.
Be the change you want to see in the world lol
ME TOOOOO 💯 💯 💯 no one wants to romance the haunting corpse of a priest who has a head neighbor (its the true owner of the body he's possessing) canonically but i do...... Boy do i want to...
Omg lol 😭 that sounds so interesting. I might try that out when you're done.
HES A VERY INTERESTING CHARACTER TO ME!! as well as his counter part..
super fun to draw and write
Man fuck this "no access to a computer" stuff im gonna start writing code on paper. (If theres any errors it can be considered part of the goof i dont have my reference materials rn)
HHHEELLPP NO YOURE REAL AS HELL ACTUALLY
missing closing brace on line Bottom of Paper /j
I want to make a yandere, but like lean lean on the horror aspects of it. Like he'll actually hurt you and stuff, I really like horror. I played the yandere Elliott mod and wanted to do worse 😭
Which will be super fun to write
URETHRA! ☝️💡/ref
(please be aware that yandere mods and mods that feature violence like that are not permitted on this server)
Ohhhh okay then 😭 good to know. I'll just talk about basic stuff then lol.
Are you happy now (also /j)
as long as any assets (including just text) that fly afoul of that rule (rule 6 specifically) are removed then you'll still be allowed to ask for help in here
Rock that's worth a million gold but if you eat it it kills you instantly
no bc now your i18n tokens are wrong and this will cause errors in your console
i can picture the console yelling at you in my mind
the braces are right tho
time to bust out the whiteout
the traditional patch reload
thats how our ancestors used to do it
Somehow, somewhere, I have changed something in a mod that causes the game to crash when I full screen it... I really should change only one mod at a time, and only little bits at a time too
Well it only occurs when the save is loaded and I'm inside the farm house, I now have idea which mod is the cause
thats a kind of impressively specific and niche crash circumstance
It really is, especially when only changing a content pack for CP
is it MMAP
Oh and the logs show nothing, like at all, it crashes before printing the issue
I don't think it's MMAP
yet atleast
well its not going to be a content pack
Oh is certainly something I've done in a content pack that a framework isn't liking and causing the crash, weird that it only happens some times though
hi.. i need quick feedback does this look enough like a fist or just. closed hand in general? 😭 hands are so difficult on a small scale..
Kinda?
But like im also a little tired so i thought it was a banana
looks to me like someone holding a closed fist up to their mouth like "ahem..." or just thinking maybe
It looks like a thinking pose to me, fist to mouth "Hmmm..."
yes... thabjk you.... 
( #making-mods-art is generally a better place for art feedback though. not that its disallowed here (i think?) but thats the intended place for it)
OHHH
(in case you wanted more specific feedback or tips or w/e)
i thought that was kind of just a gallery at first KLSFKJGAKSJF THAT IS MY FAULT ill post this kinda stuff there next time
i mostly just wanted to see if it was understandable to like. general eyesight...
does that even make sense
like is it conveying what i meant to the general audience yes thats what i was looking for
banana coment is funny though itll try to make it have more clarity after i polish it xP
i'd suggest writing down the CP json schema url so you can get some error checking on this bad boy
Ur so right
When im at my computer i make much fewer mistakes tho bc i have the cp docs up on my second monitor and my main screen split between the project im working on and some sort of example code from a previous project.... doing it all from memory was 😵💫
But worth it for the goof
Okay so I have spent hours making a custom NPC and have done everything I was meant to but every time I try to load up the game it says files are missing and dont exist and I have tried fixing this and have come to the point where I need to ask for help.
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.
evolution....
Artemis?
That first one desperately needs to be an emote
the first one desperately needs coffee
naturally. six years of artemis
still gormless
honestly luna turned out way better but wcyd
"Misread tuna" sounds like a band name I'd listen to often
New quote added by atravita as #6634 (https://discordapp.com/channels/137344473976799233/156109690059751424/1418201767044186223)
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 43 C# mods and 58 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
probably messy got so may mods on there im so sorry
Yay! Glad it was an easy to find issue
Do you have the portraits for the NPC in the right folder? that seems to be what's missing, could you send us the json file where the portraits are loaded too using this tool please?
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
Also it's often best to test mods on a very minimal mod list, ideally the modlist should be the mod you're working on, it's dependencies, and any other testing mods like CJB cheats for instance, it helps eliminate any potential incompatibilities
damn, forgot that it's pointless to post a progress slide. i just look at it again and notice all the stuff that needs redrawing
Anyways make sure it isnt a .png.png situation
ear need to be fluffy, chin needs to be wider, neck less defined, eyes tweaked, soft edges adding, tail redone, ..
desperately just trying to drop the mod updates and be productive again
you forgot these two! (removed out of generosity)
i do not want to see those two so i leave now
iro why
incredible work 
What sort of folder are they supposed to be in? I have the layout as [CP] Archer/ Content.json, Manifest, assets/ Portraits, sprites, dialogue, schedule. I'm so sorry I'm just so confused and tired.
If you're tired it's okay to take a break and come back later ^^ Troubleshooting is going to be a long process, so its better if you're able and wanting to follow everything we ask about
people will definitely be here to help whenever
modding especially npc modding is a marathon not a sprint 
Looking at the log and without seeing the content.json the error is less about the images not being in the right place, and more that the content pack is missing a Load action for target Portraits/{{ModId}}_Dobson and as a result smapi tried loading it as a vanilla XNB instead which failed
I have a mod that has its configuration options created with CP, but I want to use the GGCM API to make the configuration options available only in the main menu. Is this possible, or only with configuration options created without CP?
Hello Guys I'm an android user and I downloaded the Sunberry Android version on GitHub. It doesn't work because there're error. This is my error log. Can you take a look at this?
Log Info: SMAPI v4.1.10.3 - 1735840167 with SDV 1.6.15 build 24354 on Android Unix 35.0.0.0, with 42 C# mods and 39 content packs.
I think there's a modded tech support channel that might be able to help you!
!mh but also ask in android smapi server instead
For help with modding issues, please ask in #1272025932932055121! When asking for assistance there, sharing an error log will help others identify your issue (see https://smapi.io/log for instructions).
You cannot do this with cp
honestly disappointed that the tortilla fad died out so fast 💔
It won't die if you dont let it, make more tortilla centric mods
I WILL
gonna break into your farm and add tortilla artifact dig things
Still haven't seen a tortilla fish yet
There is a tortilla fish
oh there is?
ooh okay!
tyyyy!
I know I meant like, use the API on a C# mod to make the configuration options from my mod that I set with CP only available in the main menu
the general approach is having all the config in the C# mod using the api, and expose the config as CP tokens
why is it necessary to have the config options only available at the main menu and not in-game?
Depending on what is being changed by the config, the setting changing while in the save may cause things to behave badly.
My unpublished bathroom renovation mod had that issue if you attempted to change the bathroom from a farmhouse renovation to a map patch, because of how the farmhouse works.
The spouse room and cellar doors went poof if you changed it mid-save, and mods like Farmhouse Fixes did not resolve it
I have a proposed fix for the spouse room part in smapi, didn't see if cellar door had the same problem
It fixed when you reloaded the save, but that made me not want to publish it in that state
How do i go about changing the town path to this texture? I like it but its just a broken mod
that makes sense, although i would probably just warn people about it and not try to prohibit access
Spouse rooms and cellars are issues I've seen on many house maps, the house I'm using rn has that issue
you can "EditImage" the spring_town for the different seasons if you have the texture
Do check to see if the original uploader allows for it though if it isn't your texture
Patching sections of the farmhouse is frustrating at times because of how it interacts, LOL
yep you're right, thank you for the correction, getting tilesheet blindness bahaha
But you'd basically want to extract just the pathing from the town png from the mod, and put it onto its own sheet
And then PatchMode: Overlay that over the town tilesheet
do this if you intend to republish or reupload the texture. if it's just for your own use on your own computer, you can just do it
The farmhouse is a location I refuse to make now, even though I really want to
!cp You'll need to know how to make a basic CP mod for that, so check the CP documentation first
Content Patcher (https://www.nexusmods.com/stardewvalley/mods/1915) is a mod which loads content packs to change the game's images and data without replacing XNB files. If you want to make mods using Content Patcher, start at https://stardewvalleywiki.com/Modding:Content_Patcher.
do i have to do this in tiled?
No
its for my own use i already have the mod
You need some kind of image editor
One that can preferably handle pixels
Well actually all of them should be able to
But well something like grid snapping will help
Remind me in 18 hours to fix cellar tiles going poof in propagation
heh heh I hope it's not too important... nefarious grin (#6869304) (18h | <t:1758271343>)
im having trouble locating the pathing on the png
right ill need to get something like that i only have paint
Should be top left on the Town tilesheet, it has grass on the paths too
Paint is fine, it works
!software if you want something more specific
Here's a list of software for pixel art and JSON text editors we recommend: https://gist.github.com/ishanjalan/c8efb21afa21f74a052293176db107f7
For making SMAPI (C#) mods, see the Requirements section here for which IDE to install https://stardewvalleywiki.com/Modding:Modder_Guide/Get_Started#Get_started.
Below Pierres and... Uhh what i assume is the library
Will probably need to edit the town square block too to match
That red area includes bridges, playground and a few other rarely used path bits
Oh ye and the red circle to the right
thank you so much i really needed that its kind of confusing lol
it matches no?
It is quite confusing and overwhelming when you look at the tilesheets, I still can't find things I look for
If you are changing the light brick path, then you will need to change it there too, because the town square meets up with the path
Tilesheets are like fridge blindness tbh
It's not just a red circle overlaid on top, it has the background that matches the path
I ciuld stare and just not see what I need lol
its fine if i just use the same logo right
im trying to add the light brick path instead of the regular grey stone one
I like to pretend i know where everything is on a tilesheet
for making portraits im seeing stuff about each portrait having a number.. what does each number mean and like how do i place it
I believe that's for dialogue, when writing dialogue, you can add commands, and theres a command for different facial expressions and the number is the portrait index I think
i understand that bit but i more mean like what each number means like for emotion, like for 0 do i draw a neutrel face or a happy face yk?
I don't think it matters as long as you use the right one in the dialogue for which ever portrait matches the emotion?
oh hang on no
there is a grid
I think theres a few things where it may matter, have a look at the vanilla portraits and see how they've layed them out
When making a new item, how do you pick an item ID for it? Since you don't wanna accidentally have the same as someone else's items ...
prefix with {{ModId}}
Aren't they numeric?
Usually you should do {{ModID}}_<YourItemName>
Nope, not since 1.6 de hardcoded new ones
Ah I see. That helps a ton
the old items from before 1.6 are still numeric however
that goes for almost every unique id now, you no longer have to pick a number and pray they’re not used
I suspect many of the modding tutorials are from before 1.6 then?
technically they are strings, just "123" instead of 123
https://stardewmodding.wiki.gg/ this is also good
The Stardew Valley Modding wiki (aka the Modding Tutorial Wiki or the Modding Wiki for short) is a companion to the Official Stardew Valley Wiki.
You can think of stardewvalleywiki.com/ as a sort of "textbook" or "dictionary" containing vast amounts of useful information and as the resource for things...
Always use the wiki as a first source, it will almost always be up to date
That's where I found said tutorials
The official wiki goes into the basics, and the modding wiki can do into more depth, they compliment each other well
Could you get the link for the outdated tutorial please? I'll go ahead and add it to the update list
vanilla, and most mods by extension, follow the neutral-happy-sad-unique-love-angry convention
you don’t have to follow it, but it’s probably a good idea nonetheless
and you can add as many portraits as you want not limited to those 6
im using sve as a reference rn
Hello, I published the mod I talked here some weeks ago. I don't want to spam here the link. What's the procedure for it to be showcased in #mod-showcase ?
extremely random question if i wanted to give an npc vfx (ie. making them glow at night) is there a framework already out there for it? i’m assuming if not i’d have to make a c# code from scratch huh.. 😭
Once of us yellow names can publish in there, write a message with what you want the description to say, and include the link in the message
I'd reccomend posting it in #modded-stardew , I can keep an eye in there if you want to publish it in mod showcase?
Ok. I'll send a message in that channel soon.
lmaooo
wait this is great i was looking for exactly this earlier
-# you can even go beyond 11 up to 100 if you so wished
i found one but it’s short.. only 6 frames and i got too lazy to expand it
i cannot imagine a single person insane enough to do this/lh
Heyy avi is sane 
maybe i’ll be that person too.. (absolutely unnecessary for everything i’d ever do with my npc)
SOMEONE HAS ACTUALLY GONE UP TO 100?
Is it just for different emotions or is it also being used for various occasions, like, a party?
is 100 a hard limit or only a soft one? asking for an insane friend
I'll have a look when I get home - at the moment I can't find the one I tried to understand last night
wait not that im insane enough to do it but would you be able to use content patcher animations to animate the portraits when speaking and stuff
Thank you! if you do end up finding it feel free to @ me so I don't miss it
wait this would be really cute actually
NO!!!! GET OUT OF MY SKIN!!!!!!!!!!
Not exactly 100 
You can already do that with portraiture I think, possibly spacecore too? not certain about spacecore
104 to be exact lol
that 4 is very neccissary
literally would be a huge project
you can animate any texture segment with spacecore
iro is also working on something™
i feel like thatd be hell to do on a 64v64 canvas though
For various events as well as for festival outfits, iirc
even if i complain about the canvas size however it doesnt feel right doing anything else...
what are these lies
In that case, the year having 104 days to celebrate in, you need the basic 6 and 104 = 110!
I can't tell what we're talking about but if it's animated portraits, yes yes I am
I’m tellin on you 
if anyone ever makes a framework on making npcs have special effects........ someone ping me asap
im not going down a c# rabbithole just to make my npc glow 💔
100 used to be a hard limit on one portrait sheet because the dialogue parser only read up to two digits. this was fixed in approximately 1.6, but quietly, so most of us didn't know the limit was removed until aviroen made the sheet with 104 expressions
also guys for portraits its 64x64 for content patcher right
I know there is a framework for that already, I just don't remember the name
last I remember chu has something but it’s a bespoke C# component
aerocore? i know it does the bee thing
THERE IS?? if u remember please send it my way 🙏🙏 would be greatly appreciated
oooh...
spacecore does some kind of NPC glowing effect, innit
IT DOES?
aerocore is deader than dead lol
Thank you aviroen for testing the limits of portraits
sorry im kinda new to this modding thing and you can tell 100%
avi testing the limits of portraits, local tokens, button's patience--
I don’t see spacecore having it
Thank you aviroen for reformatting my code away from pesky t— i have been handed a note
oh my bad then. i thought i remembered it having one (side effect of interacting with kitchen sink mods)
What did our local betasgeorg do this time 
the closest thing is my glowing farm animals
does spacecore have a kitchen sink feature. and if not why not
https://github.com/spacechase0/StardewValleyMods/tree/develop/framework/SpaceCore/docs here's the page!
You are modding your kitchen sink? 👀 Now that's modding power!
is 64x64 the max i can do
you can do larger with portraiture and eventually my portrait mod
question: if I have two transpilers affecting the same method from the same mod, how would harmony decide the order they are applied?
class name in the file?
you can set priority iirc, but why not do it all in one transpiler?
I can't think of a benefit to having two 
without explicit ordering/priorities I wouldn’t rely on any deterministic ordering
You will have to make them 1 transpiler if you want ordering
if you find please let us know omg
I'm not actually having two different transpiler affect 1 method. but I want to see the affect by logging the instructions in a second transpiler patch to study how it works / functioning
why not log them in the same transpiler? that's what I do
when I want to see the IL I generate
Yeah i just foreach the matcher.Instructions
Now if u want to find out final state i guess you can put a transpiler with priority Last
To capture other mod's transpilers
That is too sensible
priority, higher number better or worse?. ah I can just google it
bad news... im seeing a feature that allows for longer npc animations, but none for applying an ingame effect to them... L!!! tbh i feel like an npc vfx framework would be so niceee... imagine breath clouds in the winter
But again moonslime if this is just your transpiler you don't need a second one?
What are you trying to debug here
yesss and a custom text bubble framework would be great
nothing. Like I said I just want to disect and compare and see the changes.
BETAS might have something?
ACTUALLY TRUE!!! uggh imagine npcs having custom text bubbles that suit their personality and design that would be to die for
if only i knew c#
betas does have custom colored text bubbles! idk if it works for events tho https://stardew.button.gay/docs/betas/tractions#WeatherForTomorrow
OOOH TYTY
now if only i could figure out how to get my npc to glow... why cant they just have their own inventories so that i could just slap a glowring in there and call it a day
its like that sims mod where you can control townies lol
custom npc!!! hes kind of undead and he glows and stuff.. just such a minute detail that im okay with him not glowing if it means i dont have to use c#
For sdv most people just bake that into schedule anim
damn that looks so cool!
It is indeed possible to do this in C# and there actually is a class (temporaryanimatesprite) that supports attaching such things to a character but it's all pretty manual
TYTYY... one day ill get him to glow in game after i have more modding knowledge
ooooh..
i'll keep this in mind.. i only really want him to glow at night so maybe its for the best if i do it manually/with more specifics 💭
wait
this probably isnt related as i know nothing abt modding but i know in cutscenes sometimes the npc will like fade in or wtv. i also feel like i saw a custom npc who's sprite would like have glitches?
ooh that sounds so cool!
i havent personally played those mods so i wouldnt be able to say <//3 that sounds dope af though
do i do this in the content patcher? i dont see patchmode in the action list
nvm that the asset name for the town path i have to find that 
im reading it rn, my first time trying this
question for those who might know...
in all my testing, I can't figure out what is a treasure tile. Code snippit from the vanilla game.
public virtual string checkForBuriedItem(int xLocation, int yLocation, bool explosion, bool detectOnly, Farmer who)
{
Random r = Utility.CreateDaySaveRandom((double)(xLocation * 2000), (double)(yLocation * 77), Game1.stats.DirtHoed);
string treasureType = this.HandleTreasureTileProperty(xLocation, yLocation, detectOnly);
if (treasureType != null)
{
return treasureType;
}
Like, I been trying to figure out what treasure type is, because it isn't artifacts from artifact spots. that is handeled elsewhere. anyone know what that tile property is?
can you check what the HandleTreasureTileProperty method does?
it will also help us if you tell us what class that’s on (I’m guessing Game1?)
gamelocation
shhh don't give away the answer /j
that's what I figured but wanted to ask since I dont know 100% know vanilla maps inside and out and what property each tile has.
(It was a hard limit in 1.5 but is not in 1.6)
now i'm not sure which type of limit it is, but the only one remaining is that the texture has to be addressable by your graphics card, so if you exceed the maximum texture height you will have a bad time
if memory serves, 4096 pixels is the safe, conservative upper bound for textures, which would be 64 portraits high (128 total). in practice, your card can probably use larger ones than that but things like phones and old computers may not
hey guys
Just require a graphics card for your mod 😛
Well, every mod needs it, this isn't a text-only game after all
(It was a parsing limit in 1.5.x. it assumed 2 digits max)
I can't believe Claire is making these lies on my birthday
Happy birthday Avi!
oh happy birthday!! 
testing out a kaiju mod
HAPPY BIRTHDAY MAAAAAAAA @velvet narwhal 
@latent mauve Hey lily could i dm you about your hotel mod?
I have a random question. So my understanding of the light index is that 10 should just be a small pinpoint light ie
But when I set it at that value for light in MMAP it's going a bit...wild
Am I misunderstanding how it works?
i don't know the details of mmap or light indexes, but those index numbers in your first image don't look right to me
usually indexes start at zero and don't skip 3
me and my beautiful son XD
i love modding i gotta go back to look and see what i did wrong lmao
I pulled it from here
update. Ok. It looks like it's setting a radius for the light and not lining up with light levels as standard. I put in .5 (which is not a normal light index number) and got this:
mushroom
i have a big idea for a stardew mod
Did u get light index/texture and light radius mixed up
I don't think so...? Maybe
//Medium Mushroom - Pink
"Layer": "Front",
"Position": { "X": "73", "Y": "44" },
"SetProperties": {
"mushymato.MMAP_Light": ".8 #fd5181"
}
},
```
Thats working
Yeah the first arg is radius
Which i got off the examples
ah ha, ok. I get it now.
So "mushymato.MMAP_Light": "6 #fd5181 10", would be the line then
How do yall deal with i18n maintenance? Someones requested translations support in my mod, but frankly, it seems like much too great a maintenance burden to keep translations I cant personally read in the main mod
i mostly just uh tell people to upload their i18n as a seperate mod
Ye, tho usually the built-in lights r too specific
I put 1 or 4 for index 90% of the time
If you need a special shaped like then make the tx
Did you mean incorporating i18n to your mod or adding translations in the main mod itself?
first ones easy
for my earlier mods I just accept them as long as the translator is one I recognize from other mods and it looks good in a quick Google translate just to check for hidden profanities or something
nowadays though I just let them upload as a separate TL mod
Just allow them to post i18n as different mod if you don't wish to deal with it
Yeah there’s no standard, some people prefer translations posted separately, some to include them in the main mod, some do a mix, it’s really just what you’re most comfortable doing, if you don’t want to risk outdated translations included in the mod with future updates then feel free to add i18n support on your end and tell translators to upload the translations separately
fixed it 😄
People understand that you need to put the fr.json into the i18n folder usually
I personally do accept PR if it's just a few config but i also don't go out of my way to update them cus I don't speak french/german/etc
(i don't know what was broken but congrats and she is very cute)
Ill include include translations for eng/ger then and ask other languages to be maintained separately. I also recognize there's slightly increased friction in dealing with my source code because I'm self-hosting a forgejo, and even though I have github login set up, a lot of people wont be comfortable with that so maintaining translations would be hard
i never figured out the github thing
(that reminds me I think I have a translation PR for BEB that I've forgotten about...)
Theres one guy who tried to interact with my forgejo and that was before i allowed sign-ups, which i fixed more recently, but they havent put their suggested changes into PR form and at this point its kinda outdated as well
Had to do with supporting fast forward mod better
(probably obsoleted by input simulation rework)
Letting them post separate also allows them to opt into DP if they want 
I don't opt mine in generally (for personal reasons), but I'm fine with translators doing so if they want
can you make schedules for independant days like monday - friday and then also vary it per season or is that not a thing
have you looked at [[Modding:Schedule_data]]
I had an idea. Here's the Content Patcher files with some Alternative Textures files overlayed on it (the red parts). Basically you'd need to use either a CP+AT combo, or an AT+AT combo to make the perfect wrought iron fence, like the wall left to the player which now looks properly aligned and "closed" (it doesn't normally, as you can see on the leftmost wall). Kinda complex but also easy? How does it look? Too much work?
Walk of Life requires hoppers for Automate to apply profession perks. Filtered Chest Hopper is excellent for automatic organization, but makes Automate ignore hoppers.
i'm trying to figure out how to get everything working together. first idea is to add a new hopper item, modify Filtered Chest Hopper to use that instead of the original one, and remove the line that makes Automate ignore hoppers
is there an easier way to do this or another approach that might be better?
https://github.com/Shivion/StardewValleyMods/tree/develop/FilteredChestHopper
If u want u can use the connected textures thing i made
It allows you to define all 47 variants but u need to make them not a fence (gotta be furniture or big object)
thank you, I'll check them out, though this also sounds a bit complicated (I am bad at coding). 
You need a sheet like this basically https://github.com/Mushymato/MiscMapActionsProperties/blob/main/[CP] MMAP Examples/connected-textures/assets/rug_full.png
It is possible to connect 2 different kind of furniture as well
I think the main problem perhaps is that u get none of the fence gameplay so to say
It's a wonderful resource, but I don't think I have the brain energy to learn all that.
I am already taking too long with writing the -content patcher furniture directly in game via catalogue- thing, I do not think I can add more workload. I do appreciate the suggestion though, you did a great job with that! 
Somehow, miraculously, the move to the new and improved data structure went off without a hitch
hello, i am trying to edit a modded map, but when I open on Tiled, it still screws me over. what I am doing wrong?
copy the tilesheets from the vanilla content (unpacked)/maps folder to where you're editing
or use iro's script #1399862293331972246 message
i didn't do that? i picked the vanilla stuff and dropped at the same folder...
you can't just put the extension in your downloads folder, it has to go where the instructions say to put it
see this message: #making-mods-general message
either that or you need to move all the vanilla stuff into the actual folder the map is in (Downloads/[CP] .../assets) , not just your downloads folder
oh it worked, thank you
So chu. Any chance you’re going to scope creep some more and add custom critter functionality?
Working on documentation and cleanup, sourcegen package will be available soon ✨
Please ignore that I haven't written any analyzers for it yet
Hi there can anyone help me with json assets and SeedPurchaseRequirements?
I want to know if it supports game state queries
why are you using json assets? are you adapting an old mod?
pardon? because I use json assets lol
It does not. JA is for legacy mods, for newer mods you should just use cp
JA is not for legacy mods, it is just a wrapper for CP to make easier to bundle objects, items, crops, etc
JA is for legacy mods.
the edits it does now are not the edits it did back when it was first made
It is a wrapper for the vgame's assets, but it's not meant for new mods. It was only updated so pre-1.6 ja mods could still be used
it predates the feature you want
JA doesn't wrap content patcher
guys, lol
Wren already gave you your answer
ok, so I should update to use cp directly
Yes, you should use cp instead of ja for 1.6+ mods
My son is teaching himself to make a custom Roblox games
Me: what language is this written in?
Him: Eng…..lish? I don’t speak any other language.
Me: ……
(Lua)
Oh I looked it up. Just thought you all would appreciate the comment 😝
Smh
I code in emoji
Bluebs!
Long time no see
How goes my favorite cooking modder
light index 3 either does nothing or crashes, hence why it's skipped. light index 0 also doesn't exist in sdv1.6. they're just arbitrary const int values that decide the texture to use
It did nothing. I tested. For science
I don't know why this keeps happening. I did the translation just right, but only the event is bugged for some reason?
!json please use the validator
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.
stirring over what i'm meant to do about the fs repack for sailor moon outfits
well the key in your i18n token doesnt exist in this json
Option 1: just ignore it
I like ignoring things
no i mean your i18n file literally doesnt have the key you're trying to use
EventDialogue.34259_5 doesnt exist
why is there an event in this mod that has no dialogue
This 9isn't even mine I just translated it
You should make them say “gibbity goba. I’m mother effin’ Yoba”
Because why not
I SHOULD
please do omg
Hey, I’m working on a personal Stardew Valley mod where Abigail is rewritten into a “foodie” version (less goth/dark, more fun and snack-obsessed).
I’m using Content Patcher and I’ve already got custom daily dialogue working, but I need help rewriting her heart events with new text.
For example, here’s my rewritten 2-heart event (ID 1 in Data/Events/SeedShop) that swaps her gaming dialogue to foodie-style:
"1": "speak Abigail "Oh—hey! I was in the middle of this game, but honestly... snacks keep distracting me."/pause 400/speak Abigail "I brought a pile of cookies in here. Um… most of them are already gone."/pause 500/speak Abigail "Want to play? I warn you: I get competitive… and snacky."/pause 400/question fork0 "Let’s play!" #"I’ll watch — but share the snacks."/fork fork0/speak Abigail "Yes! Teamwork time. You can even pick the first cookie."/friendship Abigail 40/end/speak Abigail "Haha, you’re fun. Next time I’ll bring twice as many snacks. Maybe three times.""
I load fine, but with original dialog
All of Abigail’s heart events (IDs 1, 2, 3, 4, 195019, 195012, 901756, 6963327) get properly rewritten and replaced.
The rewritten events flow smoothly and don’t break conditions.
If anyone’s experienced with event scripting in Content Patcher or SMAPI, I’d really appreciate some guidance. This is just for personal play, so a clean “foodie Abigail” rewrite would make the game a lot more fun for me. Thanks!
brb gonna make Yoba call you out for being a modding crazed fanatic
I don't have much disposable income so with have to be free or cheap
sounds like something that can give a bad impression of the original mod author of the mod you are translating.
which is to say, i personally think "translating a mod wrong on purpose" is a pretty terrible practice
!startmodding you can make a content pack for this with just a bit of work! [[Modding:Event_data]] is a page for events you'll want to use
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.
well i was hoping to do that since it's been a few years since it was uploaded and now it's outdated, but ofc the author is still around and eager to update it with all my new content
I feel like there should have been a /s on my statement to avoid misunderstanding
Quick Question: Does anyone know if FTM or any other mod that can create items spawns has a way to code for spawning by item type or context tag? So it would randomly choose an item to spawn by that type or context tag? I'm no coder, so I'm looking for something about the level of FTM for complexity at worst.
half the reason i didn't bother updating the mod for 1.6 for a year is because someone posted a repack in the comments which apparently everyone uses instead of the original anyway since it's fs instead of cp
they did offer to hand the updated repack to me to host but i dont particularly know. weirdly biased against fs for unknown reasons. maybe just repack spite that wont go away
for the record i'm glad they made the repack since there was a solid period of time where i just wasn't updating the mod and it meant that people could still use it, but also i didn't actually allow it myself and the permissions disallow it. they're also not profiting off it and are polite about it. but all the same 
So from what is available, this event is just completely EMPTY. The other available versions don't have it anymore. There is a scripted event but no dialogue, which is weird.
I can't tell if this is on purpose, a leftover from the old mod that isn't available anymore or what
Do I just remove that event?
my opinion is that if you are only translating a mod, you only translate the mod. and not alter the mod. regardless of any issues within the mod itself
yep, just stay in the i18n folder in your own file. whatever happens outside of that file is not your concern
Gotcha, I'll make sure to post that in my mod page.
from glancing at FTM's documentation it doesn't seem to support item queries. if item queries are involved you can totally spawn random items by type/context tag/any other condition
I think this concept may be more advanced than my skills are. Is this a C# thing? I'm not even close to looking at that aspect. I'm just looking to spawn items on a map in certain locations the way FTM does. Trick is, I might prefer to do it by item tag so I can make it work with a content pack concept. Have things with common tags always be eligible to show up without having to redo the list of options each time a new pack gets added.
You are probably using an outdated version? This was a bug in the previous version of the mod.
Just redownloaded the newest one and the bug is still there.
the documentation's wordy but comprehensive. The TL;DR version is that if the game data supports passing a list of objects that look like these (like shops) then it supports item queries
Can you share the mod's Events.json?
FTM doesn't seem to support item queries, however the vanilla game does support forage location spawns so worse come to worst you can use that
people usually use FTM instead of the vanilla forage spawn functionality because they don't want their stuff to replace the vanilla spawns
Alright, honestly that is weird because the key is not in this file. Do the entire event dialogue give the error?
yup, like in my screenshot
I've taken the other route
yeah, FTM currently doesn't support item queries, it just recognizes unqualified IDs or internal names
(FTM's upcoming 2.0 stuff does use 1.6 spawn data, so queries will be possible when that's done)
Man, I just like translating Korean, I didn't sign up for the phantom event in a broken mod lmao
That's probably the second event, right? The one that happens in custom Yoba woods?
You can try just adding the key yourself in the default.json.
well sure but this is also my first mod and i kind of like it. maybe even a little proud of it. it's not something i much want to give away
I don't know how I feel about that
I mean, just to see if it'd work.
Button brought up a really great point, which is that my job is just translating
No, I mean, you're still translating right?
The Korean script is already in the Events.json.
(to be clear, I thought you meant like the original lines didnt exist for you to find, either)
like the mod is nothing without the art, so having all the art repacked just for a format change stings a little
ideally i could just tell FS to use the CP assets as texture targets but apparently that's not possible, so even the best-case scenario of having the CP mod as a loaded dependency for an FS data pack isn't there (which would mean they can host theirs on nexus legit with credit for the work they did, being solving wild FS data models, and i still get the engagement or whatever and my slice of pie for the art)
You can just trqanslate that using your new added key.
It is?
Yeah, the 4 hearts event, right?
Oh yeah! I see it!
I think this might be beyond me. While all the pages of tags and such give me some context, I kind of need a format to follow, like an example of the whole thing at once. I'm not sure how the whole thing should look when it's done. I think there's some frame of reference I'm lacking overall.
Welp, gonna get started on that
the wiki does assume you're familiar with content patcher editing, so do give it (specifically the guide for using EditData). it probably helps to break it down, like the following example for editing the Town's list of forages:
- you're editing forage spawns of a location, so you're editing
Data/Locations - you want to edit
Town's forage spawns, so you target edit theTownentry'sForagefield - in
Entriesyou put a list of item query objects that you want to spawn
I'm looking to add spawns to a location that doesn't normally have any (interior maps for example).
I need someone to make for me i tried
then you put in that location's name
is this a new location you're adding?
No, existing.
then yeah target field into forage
{
"Format": "2.8.0",
"Changes": [
{
"Action": "EditData",
"Target": "Data/Locations",
"TargetField": [ "LocationIdHere", "Forage"],
"Entries": {
"NewForageItem1": {...},
"NewForageItem2": {...},
}
}
]
}
the ... part is the item query for your stuff
Amazing! Thank you!
And to randomize what appears of those items?
You can put it on the modideas page or commission someone. It’s unlikely someone is going to randomly jump on it
see the guide I linked back here
or just look at the [examples](#making-mods-general message)
So, for random custom items:
"New Forage Item1": {
"ItemId": "RANDOM_ITEMS (O)",
"MaxItems": 1,
"PerItemCondition": "ITEM_ID_PREFIX Target MyAuthorName_MyModName_"
}
?
assuming all your items are named MyAuthorName_MyModName.TheActualIdHere then yes
(you don't need the "MaxItems": 1, line, since locational forage already spawns a max of 1 per entry anyway)
How does it know where to put the item within that map?
random unoccupied tile
Any way to control that or constrain it?
Instead of commission maybe someone could tell me what's wrong
if you describe your issue here then ya someone should be able to help you out
Hi Vin
hi!
to answer my own question, JA supports game state queries, it is just the regular query "g IDENTIFIER params"
Here is one of the codes I tried
{
"Format": "1.24.0",
"Changes": [
{
"Action": "EditData",
"Target": "Data/Events/SeedShop",
"Entries": {
"1": "speak Abigail "Oh—hey! I was in the middle of this game, but honestly... snacks keep distracting me."/pause 400/speak Abigail "I brought a pile of cookies in here. Um… most of them are already gone."/pause 500/speak Abigail "Want to play? I warn you: I get competitive… and snacky."/pause 400/question fork0 "Let’s play!" #"I’ll watch — but share the snacks."/fork fork0/speak Abigail "Yes! Teamwork time. You can even pick the first cookie."/friendship Abigail 40/end/speak Abigail "Haha, you’re fun. Next time I’ll bring twice as many snacks. Maybe three times.""
}
}
]
}
I'm not really a map modder but you can look at the vanilla mountain.tmx map for example
Hi! If you look at the unpacked vanilla content, the entry for that Abigail event is not just 1.
So you need to put the entire "1/f Abigail 500/p Abigail/d Sat" there.
And you can't put in just the dialogue. You'd need to copy all the other actions too.
How would I set the coordinate range for a NoSpawn property?
feeling obligated to mention that format 1.24.0 is ancient and you should be using whatever content patcher's current version is (2.8.0, last i checked)
And that's where this exercise goes beyond my skill, sadly. Sounds like I need to learn map modding just to get something random to spawn in a restricted range of squares without using FTM. If only FTM supported random item spawning.
Still new tools in the tool box. Thank you @Selph! Super helpful!
Hol’ up. Why are you trying to change nospawn ranges on an existing map
I maybe missed that part
Those are in place for a reason usually
(I may have forgotten that they weren't adding a new map)
So, it's a map that doesn't normally spawn items. I'd like to have a random item of a certain type (custom items by context tag) have some chance to spawn there anyway, like FTM does. I may have content packs so I'd rather do it by tag, so I don't have to mod the main spawn list so situationally.
but yeah this is where the vanilla data shows its limitations
FTM doesn't support calling random items apparently, so I'ms tuck with looking for another option.
Item Queries could work, but to constrain the spawn to a specific part of the map (say the back room of the saloon), I'd have to learn map modding, which I am not ready for.
How many different random items are you trying to do?
Or at least so it seems at the moment
!anyonecancook one step at a time
Any item with a given context tag, and the list may change.
you actually can make items spawn in a restricted range with spacecore setpieces
so do the random choice yourself and get ftm to spawn the result?
I do this for forage in cornucopia flowers so they dont spawn out of bounds
Already have that, but content packs mess that up.
curious, how so?
If you're willing to narrow your list, you might be able to come up with a wonky solution
and yes. Wonky is the accurate HIGHLY technical term here
So, (assuming I am following you right), in my core mod, I have up to lets say one of 10 possible items to spawn in an area. Fine, set list, no problem. Now, I want people to be able to add content packs and have the content pack item get added to the list of options that can spawn in that same location, but without adding more total items to the spawns.
oh great, i cant link the spacecore docs cus i have no idea where they got disappeared to
yes its down at spawnables you set a random item query as the item to be spawned then set the range you want and trigger the spawning every week/day/etc with a trigger action
it can all be in a cp pack
sounds complicated but you can get the hang of it once you do one
I don't see why that's a problem? the list is to store options, and then you call random on the list 10 times.
if I'm understanding correctly
Probably just missing syntax. Can you share your default json again via the json validator?
kk
you can do it with CP technically. Like if i wanted to add forage to Robin's house i could do:
"Action": "EditData",
"Target": "Data/Locations",
"Fields":
{
"ScienceHouse":
{
Target forage
(yeah I explained this above)
here you go
Yep, you're just missing a , after each of your added event lines.
ahhhhhhhhhhhhh
Not sure I'm following you either. So, core mod spawn list would be ten possible items. Content pack adds two more I want it to look for. Whatever mod determines the spawns should look for any of the twelve items. If that made sense. 🙂
(My goal is to have content packs that would add spawned items unique to new custom NPCs, so you wouldn't have to worry about which content pack was installed, it just picks from the available options with that context tag, thus anywhere it can find an "npc_special_item" tag, that item is now one of the possible spawns.)
To be as straightforward as possible....if you worry about being compatible with all content packs...you're going to go insane
Husky, i dont think so at all
No, I'd be making the content packs.
context tags are like ideal for this kind of mod interaction
Maybe the main ones are fine. But there's going to be outliers.
You can't accomodate EVERYTHING
they're talking about their own content packs
All good, not trying to.
Okay I do think spacecore spawnables is your best bet here, I just dont know enough about ftm to say it cant do what you want, you know
i have ambitions
Yeah, if FTM could just pull items by context tag, I'd be golden.
does esca take feature requests 
As it is right now, I made a bunch of mini FTM mods, one for each content pack, but the drop rates get too high after awhile, and break the feel I'd prefer.
yeah that happens when stacking ftm mods
well if you do decide to swap to spacecore and want help you can ping me, otherwise i'll bugger off for now since it sounds like you want to use ftm
I'd love to use it if I could, but don't see how I might at the moment.
Why not?
Oh, FTM I meant, sorry
Uh ok
SpaceCore looks possible, but it's learning curve looked ominous from the examples page.
future features aside, one option might be to use a GSQ like synced random in each FTM pack and only enable the pack/spawn area when it has specific results 
https://stardewvalleywiki.com/Modding:Game_state_queries#Randomization
e.g. for 5 packs,
SYNCED_CHOICE day {{ModId}}_ForageKey 1 5 1 in the first pack
SYNCED_CHOICE day {{ModId}}_ForageKey 1 5 2 in the second, etc
each area with a GSQ condition like that would be mutually exclusive
yeah its a multi step process, but I have examples I can help you template with, and it can be integrated into your existing npc mods cp packs. But let's see what esca says first
that's an interesting workaround
Referencing some things there I don't think I have a frame of reference for. GSQ?
game state queries (a.k.a. queries or GSQs) are explained at the top of that wiki page; the game's various "Condition" fields use them, while FTM spawn areas each have a list of them in the field "GameStateQueries" (in the "ExtraConditions" section, iirc)
e.g. in an FTM pack, each relevant area could have a setting like
"GameStateQueries": ["SYNCED_CHOICE day {{ModId}}_ForageKey 1 5 1"]```
something similar could probably be done with Content Patcher's randomization tokens in FTM packs' "CPConditions" fields
Just wanted to show off WIP progress I'm proud of for my dialogue tool. :3 It lets you see what is currently valid from all CP mods, heart event mods, and what mods are using the same keys. Yeah the UI could be..better lol
I think I'm following that now. "ForageKey" being the context tag?
ForageKey there is the synced randomization key; if it's the same in every mod, "synced_choice" will always roll the same number in each mod
e.g. if you have 5 FTM packs and they all say SYNCED_CHOICE day {{ModId}}_ForageKey 1 5 1 or SYNCED_CHOICE day {{ModId}}_ForageKey 1 5 2 or etc, every day each pack will see the same random number from 1 to 5, and only the one that matches will activate
So in your example, it will pick one of the content packs to use if each is numbered differently? Otherwise if the packs were numbered the same, then...? I'd love to co-mingle items from the packs, rather than have one or the other. Ideally it's a a "pick from core options + all loaded pack options" spawn output. Sounds like this would only one pack at a time, but would randomize between which pack?
essentially yes, but synced_random accepts multiple options at the end; it can get pretty complex, but for example:
SYNCED_CHOICE day {{ModId}}_ForageKey 1 4 1 2
SYNCED_CHOICE day {{ModId}}_ForageKey 1 4 2 3
SYNCED_CHOICE day {{ModId}}_ForageKey 1 4 3 4
if you had 3 forage areas set up like this, then each day:
- if 1 is rolled, only area 1 spawns forage
- if 2 is rolled, the first and second areas spawn forage
- if 3 is rolled, the second and third areas spawn forage
- if 4 is rolled, only the third area spawns forage
A stupid thing you can do is randomly set a mail flag
And then only spawn if the mail flag exists
Where that is controlled by q trigger action
So you can add to it via your content packs
other workarounds like that might dodge the "limited number of possible rolls" issue, yeah
or just switching to vanilla/spacecore for direct item ID randomization, since that's ultimately the chosen goal
there're a lot of ways around it with most mods, but complex randomization gets like this most of the time
This also sounds like it might speak to a second question I had. I was also wondering how to limit the number of spawns globally to a single item, but have the exact map it appears on be random (within a list).
So for example, the "lost item" could be in one of three maps, but the player has to visit all three to find out.
Only one should spawn, but could be across three possible maps.
That might also fix my problem
that might be possible with a recent change in FTM, though I need to double-check something in the code
one sec
at very least, atra's trigger action suggestion could do that
Would this mail flag be randomly triggered (or not) per day?
unfortunately, I don't have FTM set to use the spawn area's map in the context when checking GSQs, so I don't think a 1-spawn-area solution is viable, but
Say you have an FTM pack with 3 forage areas, or 3 packs with 1 area each, etc. Each has the same forage ID for the lost item, and each area is set to a different map where it could spawn.
In a synced random setup, each area would use one of these settings:
"GameStateQueries": [SYNCED_CHOICE day ForageKey 1 3 1]",
"GameStateQueries": [SYNCED_CHOICE day ForageKey 1 3 2]",
"GameStateQueries": [SYNCED_CHOICE day ForageKey 1 3 3]",
With that, once per day, exactly 1 of those areas would activate and spawn the item in its particular location.
(edit: fixed the numbers
) (and the key, because FTM doesn't support ModId & it can be any text)
Sorry for the digress but in humor, this just happened. (Probably..not the best tile location choice.)
Alternatively, as atra was saying, you could check for mail flags with that, then use Data/TriggerActions to set a mail flag each day, e.g. "YourItemFlag_Forest" or "YourItemFlag_Town" etc. If you want that to work more than once, though, you'd also need to unset the flag each night.
Neon Genesis Stardewvelion
Thank you so much for the advice!
Thanks to everyone who added their thoughts. A few new tools to consider now!
I have a long way to making lvl 25, 😅 , but I will get there
So potentially dumb question when filling out the manifest.json can I have two Author's or just one, ie make Author's an array [] instead of a value
no, it's a string
that's what I thought
you can do "Author1, Author2"
thanks for that
Alright, well I would like to take some of the older content packs and make them current
but I'm worried about permission
I have some permission but not everyone
so I thought Author1 and Author2 but maybe I just need to put the shout-out in the README
if u r in contact with them and gotten perms you can ask for opinion
Do you mean that there are mods you haven't got permissions to update? Or that there are mods with multiple authors where you've only been able to contact one of them?
Mods that I don't have permission to update as in no answer not someone necessarily telling me no since I wouldn't do that but they don't answer me back when I reach out to them
Oh, then you just can't publish updates for those unless their permissions are open on Nexus (or wherever they are published).
No answer = not allowed
Okay I wanted to be sure because you were talking about putting author names in, as though you were going to just publish them anyway and put their author name in.
I wouldn't do that:))
If they don't have an open source licence, they're all rights reserved so not allowed
That does give me an idea though, I should probably check that out to see what license they are using
Does anybody have insight on what the C# part of Make Gil Real is for?
y it adult...
Aa, thanks!
I'm guessing because at certain moments Gil would "merge" into his sleeping-on-chair map tile version and a shadow would be weird there.
i guess so 
is there a way i can fix these fences? theyre out of place
Fences i believe are in springoutdoors so you'll have to do something similar with the fences like you did the town path..but i think in this case if you have a fencing from another mod you like more you can just replace the white one with the one you like
im just not sure why the fences are showing up misaligned like that
i tried a different cp fence and the glitched ones showed through still
you mean why some fencepots are closer together than others?
ok really random question. and Im sure I could figure it out but im also mentally lazy atm. The Junimo sprite is gray. How does the game assign them colors?
yeah and one is lower and in the ground
c#
tint the sprite
got it
It's like that in vanilla so that's probably the art direction CA was going for; for the fences to look haphazardly-made and deteriorating. So if you wanna "fix" it, the simplest way is to overlay your own map patch over it.
(in this case, tint would be using the color param in either the junimo draw method or the spritebatch draw method inside)
(i forget if the junimo class has a method for fetching junimo colours)
"MINES": {
"Texture": "Mods/{{ModId}}/assets/Xavierevol",
"Width": 16,
"Height": 32,
"TextureScale": 4,
"ShadowScale": 3,
"NPC": "Xavier",
"Name": "Xavier",
"Portrait": "Portrait/Xavier",
"ShowBreathing": true,
"Condition": "PLAYER_LOCATION_NAME Current Mine" ,
"Priority": 6
},
"CAVE": {
"Texture": "assets/Xaviertinkercave.png",
"Width": 16,
"Height": 32,
"TextureScale": 4,
"ShadowScale": 3,
"NPC": "Xavier",
"Name": "Xavier",
"Portrait": "Portrait/Xavier",
"ShowBreathing": true,
"Condition": "PLAYER_LOCATION_NAME Current SkullCave" ,
"Priority": 6


