#making-mods-general
1 messages · Page 339 of 1
I set his home location back to the custom one, and put Club in his schedule. He walked around the map, outside of boundaries, like a lost dog
I made a new save before trying that
alternatively you can use what's called a 0-schedule to instantly set their location and tile for a schedule entry
unfortunately I've not worked with npcs enough to know the causes and solutions to voidwalking
could you send the full schedule entry here?
Sure. Let me save what I have really quickly. I appreciate the help!
{
"Changes":
[
{
"LogName": "Rahiel Schedule",
"Action": "EditData",
"Target": "Characters/schedules/{{ModId}}_Rahiel",
"Entries":
{
"spring": "610 {{ModId}}_RahielLamp 12 20 2/2100 bed"
}
}
]
}
it's very very simple right now, to try and get it to work
he spawns at 53 8. I thought he'd use the warp within the map. He just cuts through the scenery
sorry, I was fixing one of the maps
bah. he stopped following the schedule again
you've tested your warp works correctly? you may need to sleep another day (the classic troubleshooting manoeuvre)
Yes
I've been remaking new saves each time. Let me try sleeping
I retyped my warps, just in case
maybe his room needs to be a separate map, instead of map of the Lamp map, but far away
sorry, i’m at a party tonight! if you haven’t solved it by tomorrow i can take a look?
I'd love it! Have fun at your party 😄
i take it sleeping didn't work 🛌
no
I've separated the room into a new map altogether. Going to see what happens now
SUCCESS
the simple answer is to add an object with the same properties as item 685 (Bait, being "Type": "Basic" and "Category": -21 ) to give it all the basic functionality of bait
Though I also want it to be fishable as well.
fishable as in you can catch it, or you can attach it to a rod?
I want it to be both simultaneously.
anyway, as for unique behaviours for your custom bait, you'll likely need to use C# to apply a Harmony patch to GameLocation.GetFishFromLocationData
I don't think I can do that though.
you should be able to catch your bait while a new {} data entry to Data/Locations:Fish[] as well, which is shrimple enough
it's not as hard as it seems! but there is a knowledge and setup hurdle to get over before you can actually do the task
Well, I want it to be caught in crab pots because ammocoetes are too small for fishing rods.
ah, hm
i think in that case you'll want to add a new entry to Data/Fish with the same general format and values as other crabpot fish, e.g. "717": "Crab/trap/.1/684 .45/ocean/1/20/false"
the values are explained here:
https://stardewvalleywiki.com/Modding:Fish_data
And how do I allow it to be put in fish ponds so that there is an infinite source of them?
fishponds are a little deeper than you'd imagine, given they have item produce rules, but still very doable when you've worked that bit out:
https://stardewvalleywiki.com/Modding:Fish_ponds
Already got fish ponds though.
i suppose you could set "SpawnTime": 1 to have one spawn each day, and use "PopulationGates": null to remove any item requests?
i don't know whether there's existing behaviour for infinite fish, you'd likely want to make an object similar to the Worm Bin for that if a fishpond isn't productive enough
Would it be possible to have a fish pond fish somehow produce more of itself in place of Roe?
sure, i don't see why not - the "ProducedItems": [] field in Data/FishPondData just takes a generic item spawn query, so you could simply format it to make more fish. smart!
I think it’s a bug in archery framework because those few frames specifically need special handling, but I could be wrong.
Unrelated, but would it be possible to replace all newly-caught fish with a different fish when a certain quest is active?
I'm thinking of some sort of Qi Fish when the Qi Fruit quest is active as a (somewhat cruel) joke.
perhaps an entry added to a location's Fish: [] data in Data/Locations with "Chance": 1 and some "Condition" game state query for a given special order/rule?
there's no default query for quests, but special orders would work fine
Would be cool if one of Qi's quests could be used.
is there a way to add new emotes to the game??? i rlly want to add a smoking emote 🤔 i was thinking of using sebastians animation ....but i have no clue how itll affect the clothes the user is wearing
i tried finding similar mods online to see how itll work but i only found retextures of the emote bubble
maybe this could be helpful? https://www.nexusmods.com/stardewvalley/mods/10861
i havent made any custom emotes before so im not sure how it works but maybe you could use this framework
I had a working event. And after getting the schedule and maps to work - the event has stopped working.
I'm implementing something like that where I replace one of the existing emotes under certain conditions, like this: { //replace heart emote at the farm (random option 3) "Action": "EditImage", "Target": "TileSheets/emotes", "FromFile": "assets/Textures/tilesheet_emotereplace.png", "FromArea": { "X": 0, "Y": 32, "Width": 64, "Height": 16 }, "ToArea": { "X": 0, "Y": 80, "Width": 64, "Height": 16 }, "When": { "Roommate": "{{Ripley}}", "HasFile:{{FromFile}}": true, "LocationName |contains=farm, farmhouse":true, "Random: {{Range:1, 10}}": "{{Range:1, 4}}" }, "Update": "OnLocationChange", },
So I would maybe start by looking at Tilesheets/emotes in the game files and seeing if that's the kind of thing you want to change and if there's a safe one for you to replace under the conditions you need
to be clear, you want to add new animations to the player character, right? not speech bubbles?
anyone know how to fix? Seasonal version is working.... 
supposed to be an img, idk what is happening
did you rename the images in discord and remove the extension when doing so
yea, lemme retake again
I added 'png' to the end and got it to work
You mispelled 'variation' in your code
omg thank you
I hope that does it
yes!
oh dear
https://smapi.io/json/content-patcher/996e8f0757aa40669242e3d36a504811
I can't get this to work, for the life of me. I had the { Action etc } on an events.json, then I put it straight on content.json just in case (without the extra format and changes line). I also tried changing the entry id to a string of numbers
the event isn't loading. I don't know why
is it rlly hard 😓😓💔💔
to my knowledge, noone's actually done it yet hahah
there doesn't appear to be a Data/Events/Club asset in the decompiled game files for you to edit -- locations without events in the base game generally don't try to load one
I wonder what I removed from the script on accident. I had something that redirected to a blank json, and it was working.
you'll want another Changes entry to Action: Load some Target: Data/Events/Club asset with a FromFile: assets/blank.json file you create yourself before you edit it
possibly you left it in your events file or lost it in the transfer?
I must have deleted it while rewriting something. Let me try and get that working again. ty!
Anybody know if there's another version of the Character.doEmote method that causes the emote to show up for all players? That is, if you have code like abby.doEmote(Character.angryEmote); then the emote will only be visible for the current player - other players won't see the emote go off. I know how to work around this with mod-messaging, but perhaps this is a solved problem and I just don't know what the right call is...
found it. I had an old version still in my recycle bin
{
"Action": "Load",
"Target": "data/events/club",
"FromFile": "assets/events/club.json"
},
the only difference between that and what I wrote back up is the capitalization
trying to decompile stardew valley, and when i try to open avalonia ilspy on mac, mac trashes it automatically saying it's damaged and potentially corrupted. i also noticed that the last update was 3 years ago in the github
good night. good luck with your projects
I'm looking at the tokens and conditions guide for CP and I don't see a way to check a farmer stat in a CP WHEN clause. Is that possible?
Omg I feel such an idiotic newbie seeing both blueberry and nerm talking
I want to use an editmap command based on a custom farmerstat
it's ok, i'm an idiot too 
No you guys are awesome lol, i was about to ask something about modding but gave up 🤣
OK so I take it it's not natively available in CP, in that case I'll just add some mail flags for the stats I need. Thanks.
feel free to ask if you need something! there's usually someone around with answers
It's something very dumb, I wanted to check a mod dll to learn from some specific mods but I have no idea if there's a way to open one
Or if the point of dll is to close the code
DLL files are compiled C# source files, they're not readable by you or me. if you visit the mod page though you'll often find a link to the source code online on github or gitlab or somewhere similar
Oh, I see!
I will check if the mod is open, it might be cause there's an unofficial update
there's a list of all C# mods here: https://smapi.io/mods/
if you select show advanced info and options it'll expand to show links to the source code
Thank you!
I know one of them doesn't have open code but the owner replied to me it was okay to work on alternative sprites for their mod, they might help me then
for sure, the owner's going to be the #1 source of useful info for editing their mod
otherwise if you need a hand you can link the mod here and explain what you're up to
Idk i trust blueberry to do anything to me mods
I want to work on sprites for Stardio
Basically, I've been using it in tandem with the amazing Junimatic
So I wanted to try my hand on making cutesy sprites for stardio so the 2 mods look cute together
But I'm a bit lost on how to start setting up the sprites for them 😅
Im surprised neither things catastrophically explode each other lol
Nope
They work amazingly together so far
I use stardio to move items from one chest to another and junimatic for the automatization
@worldly sundial hello sorry for ping can we ask how to retexture conveyor belt
I wanted to try to convert the belt animations into junimos carrying stuff, not sure if it's even possible
Specifically did you load it to the content pipeline so that cp mods can editimage you
Did what? Sorry I'm that newbie
(that was towards stardio)
Oh
Well i think that'd need draw offset on the actual belt objects, so they'd have to expose this for u to edit somehow too
Ya I tried to check how nerm did with his own animation but when I looked at the code it was as if I was reading greek 🤣
Replacing it with mini junimos might work out but yeah u r at mercy of how stardio setup the textures
No one else besides author can help u here
Worst case u can at least just make a png replacer
Ya I figured I'd check nerm first to see how they did it but hit a wall
That's what I planed, the pngs from stardio look simple but they dont cover the animations from what I can tell
I think it is just animated in c#
If u recolor the whole thing it'll probably work just fine
Ya that's why I can't understand it I'm sure
i can't imagine it'd be easy to get a convincing effect; a conveyor animation is likely just a 2-frame png sequence, but a polished looking junimo anim would take something a little more bespoke
But yeah i say just do something simple like make the belt look more green
Anything more elaborate is gonna be send PR to stardio for anim so...
Guess my noobness made me imagine more than what I could take xD
Thanks guys, I will figure something out to cute it up
(Data/Boots is now a data model in the upcoming Stardew Valley 1.6.16.)
No guarantees yet, but I do hope to convert more slash-delimited strings to data assets in 1.6.16 or later versions.
excited for data model boots and anything else that may come then!
It's not changing automatically ;-;
what about Furniture 
Furniture will most likely be data-asset-ified in 1.6.16 too. (Previous Content Patcher packs will still work, since Content Patcher will have a compatibility migration.)
damn, more FF work then...
What's the best way to check for the game version in a C# mod?
game1.version
(See also Game1.versionBuildNumber or Game1.GetVersionString(), depending on the version format you want.)
Surely its less if it becomes a data asset and you get to do less work?
I mean u have to start supporting the new version but... if it does some stuff that you were planning you save work!
tbh I wouldn't bother with cross version compat
just tell people to stay on the old version if they are on 1.6.15
also woo, I can move furniture machine away from saving furniture non-machine data in Data/Machines because that's the only vanilla alternative lmao
yeah, I'll probably do that
FF replaces so much stuff, any change to the Furniture class will be a mess... The best case for me is if the new data model has the exact same fields as the current string data (so that I don't have more stuff to fill)
removing things that FF does because vanilla can do it isn't what I'd call "saving work"
I mean obviously it'd require changes lol
Anyway, please do not let anything I'm saying influence a potential change to Furniture: data assets are always better than delimited string
Yeah, I would definitely not bother keeping a 1.6.15 version up to date. I'd probably keep the latest 1.6.15 version available in the optional files section, but that's about it.
anyone know which file has the fire sprite?
cursors
i literally habr to redo an entire sprite i somehow merged my d8 layer with my d10 layer while the d10 was invisible and didnt realize until it was far beyond the undo limit so i unintentionally deleted the d10 sprite 
my sweet baby
it was my fav too

every opportunity to redraw is an opportunity to improve ✨
well heres the redraw 
are you... taking pictures of your screen with your phone?
yea
do you know that you can use discord on your computer?
(and it's leagues better than the mobile app btw)
yes i do but its a mild hassle as my laptop runs slow at times 
i can transfer the photo to my phone fairly quick tho
you can use it in your browser from the website if you like, a little more lightweight
I don't think using Opera is very good if your laptop is slow, there are much lighter browser available if you're concerned with saving ressources
wait fr-? my friend recommended i use opera
well, I don't think it's bad, but there are much lighter options
originally i defaulted to google chrome but my laptop ran lile hell so my friend told me to switch to opera
also there is the Vesktop client for Discord, which is much lighter than the official one
Opera is still chromium though
(personally i use firefox, with ublock origin and a script blocker it cleans up a lot of performance waste online, but i can't speak for overall performance since my pc is capable enough)
ill keep this in mind thank u 
I'll always recommend firefox over any chromium based browser. After that, the choice depends on your convenience. Even firefox can be a bit heavy, there are vrey lightweight forks out there that trade functionality for speed
all i can say for it is that it's very memory efficient with a truly obnoxious amount of tabs and windows, which i remember chrome scales very, very badly at
there, a more clear look at it ૮₍ ´ ꒳ `₎ა
hello everyone, how can i make a machine that only work in a specific location like desert?
just speculating, but I think you could set all the output rules' trigger conditions to something like this:
"Condition": "LOCATION_NAME Target Desert"
the bee house's machine data (BC)10 is probably the closest vanilla example, it uses "Condition": "!LOCATION_SEASON Target Winter"
am I imagining things? I thought there was a mass animation thingie for tiled somewhere...
I also added the ElephantNoseFish, which is caught exclusively on Ginger Island.
thanks, Aba!
damn, this isnt working how i want it to. doesnt seem to be able to do a bounce back version of the animation, hm
Bounce back?
Hm yeah it looks like you'd have to do it manually for that
Although you could use the bulk tool for the first 0 1 2 3 and then just add the 2 1 manually
well i guess its still the work being cut in half at least
Hey guys, does anyone know how to null an entry in Appearance in Data/Characters?
This is what I tried, but it was clearly wrong (EDIT: it was actually right): ``` {
"LogName": "Alex Appearance Data",
"Action": "EditData",
"Target": "Data/Characters",
"TargetField": [
"Alex",
"Appearance"
],
"Entries": {
"Winter": null,```
(then the rest of the editdata with adding new entries follows)
Winter is the log name of the entry.
You don't want him to have a winter outfit?
We want him to have an indoor and an outdoor winter outfit which we have loaded separately.
But the vanilla one is showing instead.
Alternatively, I guess we could use the vanilla winter entry for indoor, and edit it to "outdoor": false ?
You can null every field within the object or you can just set the entirety of Appearance to null. Or yes, you can edit that one (including its Id, I think, to make its ID consistent with the rest of your ID naming scheme) to make it one of your entries instead.
So how do I target that object?
oof i am messing up ma animation, i might jsut redo the sheet with all needed ones even if theyre doubled
Actually, I think I tried the approach of nulling every field and it didn't like that (different asset but still list of objects). It might be enough to null just the ID though.
I'd be happy to null Appearance, but I assume beach is on there too
Edit to save others from copying this incorrect stuff in future (correct one is this #making-mods-general message):
To null the ID it might be this:
{ // THIS IS WRONG, DON'T USE IT
"LogName": "Alex Appearance Data",
"Action": "EditData",
"Target": "Data/Characters",
"TargetField": [
"Alex",
"Appearance"
],
"Entries": {
"Winter": {
"Id": null // NO, WRONG, DON'T DO IT
}
}
}
Or it might be this:
{ // THIS IS WRONG, DON'T USE IT
"LogName": "Alex Appearance Data",
"Action": "EditData",
"Target": "Data/Characters",
"TargetField": [
"Alex",
"Appearance",
"Winter"
],
"Entries": {
"Id": null // NO, WRONG, DON'T DO IT
}
}
(Sorry I can't say with certainty - I don't know the underlying logic about how this stuff works so I usually do trial and error.)
Nope, Beach is not set via Appearance.
Yeah it predates the Appearance system and is hardcoded
Work outfit is though for other NPCs
Nulling the entire Appearance field is quite a nuclear option so if you can avoid it I'd recommend doing so
I think the best approach is just to edit the existing Winter one into your desired form, but I can also see an argument for just yeeting it and adding all the outfits in exactly the same way to avoid confusion.
Ok that first option didn't do it, trying second one now...
I'm hoping so, but I'm not actually sure. The CP docs say that you edit a list of models the same way as editing a dictionary but doesn't show how that works for deleting.
Hmm
Are you doing a patch export to check?
Ahh I was but I didn't that time because he was wearing the vanilla outfit lol
It might be worth doing it anyway because then you can see what, if anything, actually happened to the json.
If one of the C# people was here they could just tell us lol
As far as I can tell nothing happened to the json at all argh, I'll check log
If it's not doing anything, including throwing an error, that's a sign your patch just might not be applying. I definitely got errors when I tried setting some fields to null (because I was attempting to yeet the entire object and it was not working, so I was just setting non-optional fields to null instead).
Yeah it seems to be not applying. Hmmm, it was for the other seasons.
I'll put the code up on smapi
I might've missed context, but your* first example does remove an entry from the list, if that's the goal
"Appearance": [],
with this as my full CP file, anyway
{
"Format": "2.7.0",
"Changes": [
{
"LogName": "Alex Appearance Data",
"Action": "EditData",
"Target": "Data/Characters",
"TargetField": [
"Alex",
"Appearance"
],
"Entries": {
"Winter": null,
}
}
]
}```
Huh.
OMG I'm an idiot, I was updating the wrong copy of the mod, let me try this properly and once this is sorted I should really go to bed...
Okay, vanilla winter is nulled
Thanks Aba sorry I was a numpty and didn't successfully use your edit first time round
Now I just have to see if the indoor outdoor part worked!
It was your one that is the correct one anyway hahaha xD
The only useful thing I did was encourage you to keep using patch export and check your patch was applying lol
Oh it was mine, wow, my use of the wrong copy or the mod went way back OMG
So I can do that patch in with the rest of the EditData for Appearances
Ok I went back and edited mine so people know not to use it if they come across it but don't see the entire discussion.
I edited mine to say it was actually right lol....
Thanks for saving us, Esca!
Okay, now to pass on the good news ^.^ thanks Aba and Esca!!
Let's say I have two lists of names. List A: "Elliott, Shane, Abigail, Maru", List B: "Penny, Elliott, Sam". Is there a way to extract a value that exists in both of these lists with CP (e.g. "Elliott"). OK to return blank if no value is in both lists
I realize that I might be writing more C# for this, just wanted to see if there was an inbuilt already. I can't think of one at the moment :/
in the context of CP, what are you actually trying to do with the value you extract?
I have a token that returns a list of bachelors with 10 hearts. I also have a list of bachelors whose special events happen in the rain. I want to extract a "rainy 10 hearts bachelor" on days when it is raining
Right now, I can easily grab a random one and just hope that the preconditions match
But if I get a "sunny" bachelor on a day its raining, it feels like a waste because no event would trigger that day
And I'm betting that telling the game to start raining on day start would be a little janky?
You could maybe use Merge to do a check for both? I'm not exactly sure if it works the way you'd need it. I've never used it.
Merge would turn the two lists into one. That could work if there was a way of counting the number of "elliott" entries
But I don't think there is
What I need is a set of set theory methods xD
Union, Intersection, Difference, etc
Hey @ pathos
btw, is there a way to get content.json to reload? patch reload doesn't seem to do it
I've been restarting the game
Do you mean the config schema or dynamic tokens? If you do, no.
Yeah. Dynamic tokens specifically
I'll keep restarting then. Just a pain to completely exit everything
Patch reload doesn't do dynamic tokens
(btw it wouldnt work for that either. duplicate values get merged into one value, the number of a given entry will always be 1)
darn. That makes sense, though
someone needs to make a lilo & stitch mod 🥲
Be the change you want to see
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!
non playable guy
I just realized that the music ID for Sebastian's theme is "echos" and not "echoes", and this makes me irrationally angry
well, harvey's theme is kindadumbautumn so at least it's not that!
what's that weird word, au-tumn?
is this a reference or a question for me?
I never doubted my English this hard in my life
autumn like "fall"
that's a joke on how the game uses "fall" instead of autumn 
my bad 😭
I wonder if it's autumn so it would rhyme
i thought you were saying you had never head "autumn" before lol
oo didn't think of that
unfortunately I was briefly exposed to british english via mr bean so I know what autumn is
Kinda dumb autumn
meanwhile it's actually called "grapefruit sky" which I think is a very pretty name
although it'd be funny to release it on spotify under its internal name 
I thought harvey has the harvey jazz
in location.getObjectAtTile() there is a ignorePassable parameter, what would be these passable objects?
isPassable() true
thanks
It's one of my favorites
And Harvey my favorite bachelor
technically flooring are not objects when placed down
If you havent already, decompiling the code will help see exactly how it works under the hood
rahhhhh
mmm yeah i used the wrong command
backstory time
in say, but after animating, like 30 water tiles its time for a break
WORD indeed
idk this is jsut a CG image
But u put it in a tmx right
ya
I feel like water might work 
its a zoomed in image and i already did the work anyway
Yeah too late
idk who posted it onto the wiki but thanks to whoever posted arks explanation as a tutorial there
one day she shall come
Boat Woman Fanclub now
like the wellerman
i hope i wont disappoint then
I can't believe someone cited ChatCBT to tell me that a feature of FF doesn't work like I told them it did...
...now I'm wondering what will happen if I feed MEEP's documentation into one and ask it to do something.
every time this comes up i say quietly to myself "eh-choss" and have a sensible chuckle
...oh no, it actually successfully told me how to do a thing. 
(Disclaimer, though... don't use AI. I only know this is right because I made the framework.
)
[Content Patcher] Ignored Altagracia > invalid: must set the Action field.
what does that mean
Nah, the amount of pain it gives me really really matches the spelling I use
Well, this is about GSQ in a FF field, so not handled by the schema, but they have the wiki page, so Idk what to do at that point.
Ça marche aussi
Yeah outta ur hands
Oh sorry CONTENT WARNING : FRENCH
Unless u wanna write a GSQ vscode extension
tw//fr*nch 🤢
anyway what does this mean
Forgot to specify the Action type in a CP patch, or a syntax error that makes it so that the Action field isn't read by whatever gave the error
!json share it if you want more help
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.
yes i will
one moment
here you go
im trying to make a test 2-heart event
because i took my adderall with coffee just now and my big brain said "u should make a test!!"
i don't see any errors???
if you change the JSON format to Content Patcher you will get a ggood start on certain things in your json being wrong
Wow, the error descriptions are very good for format error
the power of a custom json schema: you define the error messages
True
@idle lantern did you get your schedule working? would you still like me to take a look at it?
I'm just not used to seeing them since most of the time people come here with straight up invalid json
the most agonizing part of testing events is waiting for the character to go on the schedule that you made
and walk alllllll the way to the library
did you know about the debug ebi command?
the wat
console command to instantly trigger your event
💀
I AM A GOD NOW; WHY AM I LIMITING MYSELF TO THE CONFINES OF STARDEW'S MATERIAL WORLD?!
debug commands are very useful
anyway could someone pls help me parse this error log 🥺 https://smapi.io/log/1e106065663749bc92dbf699e2f24e91
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home, with 6 C# mods and 1 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
@balmy valve NSFW comments/topics are not appropriate for this server. Please be mindful of the #rules
huh?
did i do sm wrong? sorry if i did
OHHHHH
THE FISH SONG
It's a parody of freaks by surf curse but instead of "i am just a freak" the lyrics go "i am just a fish"
Oh and probably also the cognitive behavioral therapy joke
Very sorry won't do it again
in the event setup you have “read” which isn’t valid (are you trying to animate a character to be reading? you have to do so manually)
i think you’re missing escaped quotes for your speak command
Okay, there is an animation titled "read"
you also need to set up the npc before you animate them, dont you
those are just for schedules
unfortunately you’ll have to use the animate command
it's only one frame
oh just one frame is easy
but it has to be after the required setup commands (music, viewport, positions, etc)
okay
if its jsut one frame you can use ShowFrame
will it show it until i make it show a different frame?
And how do I specify which character's frame to show?
i thought there was a stop show frame command but it doesn’t look like there is
it tells you on the event page i linked
the commands on the wiki have the required and optional arguments on the entry in the table
<> means required
[] means optional
needs a true or false to know if it needs to be flipped
true is flip
aye
Yea!!
-willy
nay
oh
the fishmonger
fair
xD
[game] Event 'FallSpice.AltagraciaMod_Alta2Heart' has command 'speak FallSpice.AltagraciaMod_SantosPerezThis is a test event.' which couldn't be parsed: required index 2 (string textOrTranslationKey) not found (list has indexes 0 through 1).
sm is still wrong
event starts then ends immediately
ima go eat rq
as i said before you need escaped quotes. check out the command on the wiki because i can’t type them in discord without them being eaten
\"This is a test\"
oh neat
i thought they would cancel out the `
anyway the correct command would be /speak {{ModId}}_SantosPerez \"This is a test event.\"
you can even do it with coding language but thats a non modding thing so uh yeah mods!!
mods?? in my modding channel? it's more likely than you think
New quote added by chu2.718281828459045235360287471 as #6420 (https://discordapp.com/channels/137344473976799233/156109690059751424/1383519078928617513)
60 more...
Hey! Quick question. I'm making a personal mod that changes how birch trees look in SVE. Do I need to update the tile set or can I just update the assets?
Is the tree something you can grow?
all u need is EditImage then
But if it is just for personal use u can replace the png directly too
yes ok
!startmodding
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn programming.
Also i guess if the maple you want is literally the vanilla maple, u can do EditData on Data/WildTrees
you need a space after the npc name
^
okay
make sure you're following the syntax of the commands according to the wiki exactly
This is perhaps most involved but it will handle any retex properly
yes seargent 
What are tile sets for?
make funy map
Basically, the tile sets tell the game how to put them together like puzzle pieces
Like
They are the puzzle pieces, and the game puts them together to make silly image
You can even make cool "custom" furniture by frankensteining together tiles
Tilesets are also just pngs
But they are arranged in 16x16 tiles for usage in map making
The birch tree is not part of map, but sve may have put purely decorative birch trees into it's maps (i.e. ones you can't chop down)
Whether they use same png depends on how mod is setup
Oh that's fine actually then. I only care about the ones I'm placing. Making a candy farm, but I hate the way the birch looks
Thanks for all the info!
hello everyone i am once again asking for the support of your massive minds
where would i find the help to figure out a retexture patch for another mod?
for instance i have recolored SVE trees and i want it to automatically use my recolor
howdy folks! I'm having troubles with the sprites of my fruit tree - when placing the sapling, the game crashes
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 4 C# mods and 1 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
are you sure the file "Mods/Alx.Additions/fruittrees" exists?
and im not sure cuz my brain is a bit wonky today but i think you may need to add .png at the end?
I'm pretty sure? it's in the same folder as my objects and crops and at the very least the objects are loading in succesfully
do you have an assets folder?
Basically you need to inspect sve's mod files to see where the texture is being loaded to, and then make a cp pack that targets them
i think you need to do "Mods/Alx.Additions/assets/fruittrees" then
Yes I have located! And made the files
Oh nice! I can reference that
Thank you chu
It's not the actual folder path u need, but the Target of the loads
After that it's identical to editing vanilla texture
ooh okay - and then whereabouts do I put that?
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.
sure!
Wait, I'm having a separate problem with no errors in my log - I can't plant my seeds at all, it's just not registering
so for example "{{ModId}}_VielefruitSeeds" would become "{{ModId}}_Vielefruit"?
for my mod that added a crop, i did {{ModId}}_FruitNameCrop for both seed and crop
The id on the crops.json needs to be the same as the seeds object id on the objects.json
Or however you set that up
and kept the actual fruit named {{ModId}}_FruitName
ah shit, they're meant to be seperate jsons? i've just got everything in one content.json
You can have it all together, sorry. I just separate them for ease of use
just that the id of the thing that's targeting crops.json need to be same as the seeds object (that's targeting objects.json)
So for example, in your json
"Action": "EditData",
"Target": "Data/Crops",
"Entries": {
"{{ModId}}_RegalTermor": {
"Seasons": [
"spring"
],
"DaysInPhase": [
1,
2,
2,
1
],
"RegrowDays": -1,
"HarvestMinStack": 2,
"HarvestMaxStack": 3,
"HarvestItemId": "{{ModId}}_RegalTermor",
"Texture": "{{ModId}}/crops",
"SpriteIndex": 0,
}, ```
The cropID needs to be `"{{ModId}}_RegalTermorSeeds":` The *harvest* item is the fruit itself
AAAAH! Thankyou!!
You're welcome!
I'm still unsure why my fruit tree is crashing, but hell, I'll come back to that!
Thanks, all! ❤️
Working on my unofficial update for the Archery Framework some more it seems the issue that prevents the new items being added to the shop is that when attempting to patch the ShopMenu class, Harmony Patcher returns null when it attempts to access the constructors. It still returns null even with the parameters updated to reflect the contructor's new parameters. Attempting to replace AccessTool.Constructor with AccessTools.DeclaredConstructor also hasn't fixed the issue.
apparently adhd/autisim/ocd makes me like modding more huh of course i am a novice
Use Data/Shops instead
The entire signature changed
...Ah.
Well, I guess I'll just have to do that then. This may cause an entire rewrite of the shop code, or at least commenting out the old code. Does it just get added to the shop automatically when the game loads up?
/quickQuestion null#You should be more aware of your surroundings.#What're you reading?#Are you okay?\\speak {{ModId}}_SantosPerez \"I...p-probably should.$2\"\\speak {{ModId}}_SantosPerez \"It's a c-cookbook. I'm t-trying to perfect a recipe...\"\\speak {{ModId}}_SantosPerez \"Hm? I'm fine....thank you for asking, though.\"/
What did i doooo
Would I also have to use Data/Shops in C# or just edit the item json files to add them to the shop like in Content Patcher?
you can do either
doing it in C# is just doing it yourself compared to letting CP do it for you
The mod I'm updating doesn't use content patcher, and I can't really find any documentation on how to add to Data/Shops in C#.
you forgot the / in front of speak
Thanks
Sometimes all it takes is one missing character 
and possibly added an extra \\? I'm not sure though, I'm not great at event scripts haha
Okay, now the question's showing up right but no matter what i click nothing happens and the question simply pops up again??
yeah, both times you wrote speak you did \\speak instead of /speak
yeah but the wiki told me to separate those commands by \
double backslask sry
so now i'm doing \\/speak
OHHHH
SO IF IT WAS LIKE A MULTI-STEP ANSWER
Okay okay I see
how do i separate the answer1 and answer2 scripts tho
honestly I'm not sure tbh
I think you were right the first time
(as in, after you added the /)
can we see the full event please?
Ok so I assume what I am trying to do is edit Data/Shops in the onAssetRequested event to tell it to add the new items to the shop, correct?
yes
now the question shows up just fine but the answers don't work
yeah like I said, add the \\s back, I was wrong about those
And would the shop essentially be represented as a dictionary or do I just call it using the id string?
I am testing it now
i think it would give some context to look at the OpenShop tile action
in the command you pasted earlier, you didn't have any (break)s
you have to use the literal text (break) to split apart the scripts (and the scripts are delimited by \, which requires you to type \\, as covered)
[[Modding:Shops]] it's a dictionary of string to the shop data type (figuring out what it is in C# is an exercise left to the reader)
Yeah, I'm on the page just now. I'm not exactly great at thinking abstractly so it's a bit difficult for me.
Should I put spaces before/after the (break)s?
it probably doesn't matter, but i never add spaces there
I should probably look a bit more at how the items are added.
should i put the \\ before or after the (break)?
im (break)ing down everybody
Okay yeah it's still not working
she just says all three dialogues in a row and says the (break) as part of her dialogue
I cannot figure out how this mod stores the weapons and stuff, I know thy're loaded in through jsons but idk how the data is passed into the mod or if the items are stored anywhere.
Maybe it's time to throw in the towel.
Hey guys, I'm wondering if someone knows what I'm doing what or what is going on. I'm trying to update my mods. I upload the zipped files, but when they appear on my page, it's old versions. Only the text on the page is changed, not the folder.
I have checked that I upload the right zipped folder so many times, I don't know what I'm messing up here
you shouldn't have / in front of speak in the quickquestion, it will end the quickquestion i believe
Are you trying to upload a mod on Nexus?
This is what I'm uploading and it clearly says 1.1.3
yes
h uh ok
Might be a CDN issue. Experienced that a handful of times when trying to upload a correct manifest file.
File says 2.0.2, but the downloaded content shows otherwise.
Yeah, because this is what it gives me when I download it. Which is not the updated version
Yeah, more than likely a cdn issue
There isn't anything I can do about that, right?
OKAY THE EVENT WORKS NOW YIPPEE
On my end, I just reuploaded the file on another day. Nexus just being weird
Or just wait it out
like wait an hour and try again, if it still doesn't work wait a bit more etc
Thank you guys. Thought I was going crazy for a second
is there a way i can create like a mystery bag of sorts? kinda like the chests that come up from fishing but instead comes from artifact spots with my own custom sprites aswell?
you can make a custom geode that isnt a geode
dora made chicken drop kinder eggs that clint can break oepn with a variety of stuff
if you wanna take a look at that
ooo yea that could work!! thabk you

My NPC's sprite and portrait are loading in the world, but sending an xnb error during events. Any idea how I can fix that?
log?
not without log and code
Sorry. Let me see if I can catch the code, it's repeating into infinity and freezing smapi
!logtoobig you can do this if necessary
If your SMAPI log is too big to upload, see some suggested ways to make it smaller.
ah! I got it! I was using the NPC's name in the event, instead of {{ModId}}_Name
How do I make a quickQuestion have no text?
i've been using "null" as a placeholder
nvm i think i figured out how
is it the fade at the end, and doing the double fade because of /end?
its not at the end but yeah it shows a fade, then the map and does the fade again
Try changing the viewport after the fade to -1000 -1000 before end, so when it does show the map again, it only shows black
i have that
oh
I FELT SO SMART
Sorry 😦
I wonder if the camera is still panning? Are viewport changes instant, or do they move to the new point?
should be instant afaik
instead of the viewport change, could you change to a map that's full black, as a bandaid?
im waiting rn cuz ark might take a look if im lucky
so...forced break time
I have an event where the NPC says 'You're not Qi. You're not even wearing that hat.' Do you think there's a way to code the game to play a different event if they WERE wearing Qi's hat?
I got it to work!
Ok, I wanted to come here to get the opinion of people who probably know a lot more about this kinda stuff than me. How hard would it be to make a personal mod for something simple (im guessing it would be simple anyway) without much knowledge on how to code? I wanna know how far in the weeds i gotta go before i end up frustrating myself.
I suppose it would depend on what it is. I did a very small one for myself a few years ago, that added Tree Fertilizer to Pierre's shop
There are some very good tutorials online fi you've got the patience and time
What I wanna do is find some way to make a crate always spawn in a particular place every day on the beach map if possible.
i would write the line differently bc theres no vanilla way to detect what hat nor a way for people to mark a hat as qi hat
It depends what you’re trying to make. I made my first mod without much knowledge about coding either. Had to learn from the bottom up.
beach crates are hardcoded somewhat
You can use ftm
Would it be easier to add somehting to a fishing drop table?
thats pretty straightforward, locationdata 
i can never get fades to work the way i want 😭 are you using fade, globalFade, or globalFadeToClear?
globalfadetoclear
i jsut took it out for now because im so done throwing hands with fade
Aba helped me last time and I thought I understood now but apparently i dont lol
Might just add the crates to the beach farm fishing drop table then, that would also work
wouldnt doing that just give you a useless crate item
those are world objects meant to be broken by tool
how do i edit an Action tile property without editing the map itself? I know there's a way to do it but so far I havent found it in the CP documentation. maybe someone with better eyes knows where it is
nvm i found it
i know you can make NPCs shake during events, but what about during schedule animations? i've got these frames, and i think it would be cool to have the cat shake on the last frame before reversing the stretch
Finally got Nexus to upload the newest version of my mod!
im not sure how to do that, i don't think there's a way without c# (correct me if im wrong)
youd do that with making more frames and make it part of the animation
hey folks! how do you find an item's ID? like, I'm moving something into Sandy's shop, trying to put it above the seasonal plant: I know the first part is (F) but how do I find the exact number?
lemme find a sheet
I use that site for it
thankyou!! ❤️
beat me to it haha
you can also dig through data/furniture.json, with ctrl+f, but the website might be more easy to use
but then it would be pretty dramatic (1 whole pixel, sized up 4x) offsets, right? i was looking for something a little smaller, like i think shake works at a smaller scale. if that doesn't exist then it's okay
!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!
man i thought about making chinese the default.json
however its just gonna show as 💢💢💢💢 for like spanish ppl until someone tl that
the SMAPI version which fixes en.json isnt out yet anyway
well i was going to be Extra and use LocalizedText this time
gotta spice things up so i dont return to dust u see
You can put them on the ground and break them
what if you add them to crab pot list
hmm, TIL
I thought they're like rocks lol
Custom boxes when selph
sounds like item extension's domain
is this sideways door openable? i know it's not one of the three as listed in the interior doors tutorial, but a front-facing one won't work for how i formatted the rooms :/
sideway doors aren't real
it's a cute idea though given the art is sort of already there
What stops one from making sideways door frsmework
having to work with doors
Put feature in mmap...
sideways doors were made up by Big Joja to sell more hallways
you're going to make sideways pool entry tiles too right 
Direct all inquiries to kisaa
Although i did remember how pool entry give u a big downward force
Would that be any easier?
Yeah, I just like having it be part of fishing so as you have to work a bit for em. I just want em more accessable in the early game
Since they aren't fish i don't think they'll do the fishing minigame
Thats fine, i was thinking of having em come up like trash/coral in the fishing
ig u have to make them fish
just a random question related to my work
what would yall name this dice set?
(and no thats not my photo its from pinterest :])
blueberry rasbery smoothy
Rusted Water
nebula
thank uu
anyone remember how to make aseprite stop prompting animation when u have file01.png and file02.png
don't show this alert again checkbox?
ah ty i was looking in config for a checkbox
i also found an option in the preferences menu
pref > alerts > "open a sequence of static files as an animation"
ive asked if i could use vs code for c# before, but since i cant get vs rn (since i have mac) is there a workflow that works? why is vs code a bad option for c#?
Anyone here friends/have contact with @half ether ?
I DMed them some weeks ago but I think they still haven't seen my message, possibly because of Discord settings or something.
I used to be able to message them on Nexus but now that's gone.
He authors some mods like Relocate Buildings and Farm Animals and some unofficial ones like Boss Monsters.
@blissful panther [Mapping Extensions and Extra Properties (MEEP)] Animal Book already exists with MEEP id DN.SnS.Book_Inside_OG in EastScarp_DruidTower. This means removal failed to happen for some reason.
[Mapping Extensions and Extra Properties (MEEP)] This means no animals will be spawned in this location, even if they don't have a duplicate for safety.
what does this mean ? oh no, is my save cooked guys ? 😭 😭 😭 😭 😭 😭
Makes sense.
Maybe I should just comment on one of their mods so they can notice me.
I just wanted to report a bug on one of their unofficial mods.
Thanks for the help!
VS Code just isnt an IDE. you can approximate it with soime extensions or whatever, but it just does not do the same building and compiling and debugging stuff that VS Community does on its own. Rider is an option for Mac i believe
if u use vscode the rec is to do everything on command line (except debugger)
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.
thank you!!
Alright, I think(hope) I'm understanding some of it. Ive found where I wanna add a value, though im a little lost on formatting the code, because there doesnt seem to be a difference between the relevant areas? I'm trying to set up an EditData at data/locations, but im having a hard time understanding how to distinguish where i want the data exactly. I know its under "Farm_Beach" and "Fish", but that section has multiple containers (one for the mussels and coral and such, and one for the seaweed). I'm trying to figure out how to add a new item to the seaweed exclusive pool.
Wdym seaweed exclusive pool
theres one section with a chance of .15 that only has seaweed as a possibility, and another section with .06 chance with the ids for mussel, coral, etc
id paste the relevant code but its a bit long
Does the Desert Festival have a separate map ID from the normal desert?
And can multiple locations be patched simultaneously?
Ghost town again?
hooray! I've got three done!
https://pastebin.com/MrJ7c3hz
Alright, this is the section I wanna change (found under Data/Locations). I wanna change line 192 and 193 to include the item id for Supply Crates (922). How would I go about that? I thought id use an EditData action, but im not sure how to specify that particular section, as there are several sections like that without some kinda unique header.
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
I wonder if you can utilize the conditions null section
Do you want it to be o152 until a specific point, or you just want that gone?
I want o152 to stay there. starting at line 237, you can see where this category has multiple items (covering the mussel, coral, etc that you can catch at the beach farm). I want to make the previous line like that by adding in the crate to the seaweed section (o152, which is the id for seaweed)
https://forums.stardewvalley.net/threads/adding-one-fish-to-beach-location-overwrites-fish-spawn-pool.28378/ check this forum post, it seems similar. They use Content Patcher to append data for fishing
Hello! I would like some help creating a small mod that adds one fish to the game as a starting point! I've been using Content Patcher as I think that's all I'll need to complete this. I've used Ridgeside Village and the in-game XNBs to formulate my JSONs. Furthermore, I've been able to spawn in...
Instead of Beach, maybe Beach_farm would work?
they used the SVE code as an example - I think SVE edits farm fishing, I bet it'd be copyable
if you're using targetfield you'd need multiple entries for each location
Okay.
Target Data/Locations, TargetField Farm_Beach > Fish, insert a new entry
TargetField allows you to insert new entries into a nested field
So something like this?
https://pastebin.com/Lm9PRs7B
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Entries is a dictionary, so you need a key before each object
"(O)922": {
}
otherwise yes 
Mmmm, that bit im a bit confused by
Consider using the json parser to share jsons
"Entries": {
"(O)922": {
// stuff
}
}
(Data/Furniture is now a data model asset in the upcoming Stardew Valley 1.6.16. That includes previously-hardcoded features like custom descriptions, custom TVs, and custom fields.)
pathos what about fish tank
can u make 1x1 tanks with this
and 1x1 storage furniture
This doesn't really change how fish tanks and storage furniture work. Are you unable to create 1x1 versions of those with the current Data/Furniture? Now that it's been data-asset-ified, it's much easier to make changes if needed.
well rn if u make a 1x1 fish tank u cant put fish bc the capacity is based on width
however if u do mod it to let fish in, the fish enter the Pain Dimension because the swiming bounds is too small and they turn around every tick
also if u did this and then put the tank on a table, u lose all the fish
so yea idk what is best here 
between dehardcode fish tank and not making fish enter pain dimension
That could possibly be something we look at when/if there's a mod author beta for 1.6.16, if there's someone with an repro content pack to test with at that point.
i have a wish for furniture data model to get something akin to buildings (collision maps, draw layers, tile actions) but aside from actions, im not sure if any vanilla furniture would use these
Tile actions are a definite possibility, and collision maps could maybe be added. Draw layers are likely out of scope for vanilla though.
aye ill just save these thoughts for beta 
still would be excellent to dehardcode actions like show calendar so ppl can make modded ones without additional framework
looking at the data for pets. higher decimal = higher pitched noise?
yeah. e.g. 1.25 on a cat gives you a higher pitched meow
If stardew 2.0 happens will object.helditem happen?

oh no
How does that work for the serializer
wait but thats gonna explode netcode- yea
Also a recipe can be an Object
Question about scheduling...
If I want my character to start at a specfic spot at the start of one day rather than their Home spot, would I just put 0 as the time?
I've only seen this done with Green Rain so I'm not sure if it'd work outside of it
I suppose I could just try it out and see if it breaks
oh cool, it worked. I'll need to keep this in mind
(yep, that's called 0 schedules!)
i have a question about pet behavior. i copied all the cat behaviors from Data/Pets, but now i'm encountering a frame issue where, for the LeapJump behavior, when the cat leaps to the left instead of the right, it's facing the wrong direction. i don't see any fields where i can tell it to flip that frame. do i have to define it as a right-facing behavior only or something?
is it possible to import the value of a dynamic token from a mod?
Thank you!
Is the XNB impact table the correct columns, it feels like xnb and cp packs are inverted
Just wanted to say thank you (again). This worked perfectly!
Oops, yeah I'll fix that up tomorrow.
Huh, I can put that in FF...
(wink wink)
Hey y'all, I'm wondering if there's anyone who could help me brainstorm on a heart event I'm making
So first things first, there's nothing wrong with your save! Secondly, let me make a guess... you're using Quick Save, right?
Can you give this test version a try? Make sure to back up your save first, and just play for a couple of days with this version. Should clear it right up!
can one make animated furniture with Content Patcher alone?
(Looks like can be done with SpaceCore)
procrastinating on my current mod by... making another mod! https://www.nexusmods.com/stardewvalley/mods/34867 adopt kittens as pets :3 current colors include black, tuxedo, and grey--more colors will be added in the future
If you pop what you want brainstorming help with into https://discord.com/channels/137344473976799233/1263202101803352106 you'll probably get some feedback!
(Unless you were asking for brainstorming help for how to actually write the event commands to achieve an idea you already have, in which case in here works instead ^_^)
I love the tuxedo one! Instant download ❤️
I made a mod that turned the toddler into a kitten once. It wasn't very good though.
Hi!
I'm struggling with correctly loading my map into the game. I know that the problem is the loading of the tilesheets. However, I'm not sure how it should be correct.
If I know correctly, I have to have the tilesheets next to the tmx map file to edit the map. Then, both the game and Tiled don't have any problems in loading the map. However, when I delete the tilesheets (which I will have to do (after I will create public releases) because of the rights (and also because of the mod size,...)), the game won't load the map at all, and Tiled will show the error that the tilesheets are missing.
Therefore, my question is - how to solve this?
Are you using base game tilesheets?
Yeah.
Can you send the smapi log with the error
https://smapi.io/log/e7f09cdd13024adbb8cb883b241e7fdb
If my .tmx looks like this: https://github.com/DenisSilent/Eleanor/blob/development_UNSTABLE!/[CP] Eleanor/assets/maps/Eleanor_home.tmx
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Pro, with 80 C# mods and 33 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
Those tilesheets (the furniture ones) aren't located in the maps folder so you would need Arbitrary Tilesheet Acess as an additional framework
unrelated but heres a tip: its always best to test your mods in the smallest modload possible(aka only using the mods you really need)
Oh! Well, this changes everything. Thanks!
Now... Either change the map to remove the tilesheet from it, or add Arbitrary Tilesheet Access as dependency...
Or I can have 2 different maps - one with them, and the other without...
... and once you've tested all your events and stuff, play the mod organically with as many mods loaded as your computer can handle. Lol.
I see an issue there... actually playing the game 
I still play it!
i should make a mod that adds the ponies from my little pony friendship is magic as adoptable pets 🤯
starhooves valley or some shit
is there a way to make a pet that always has one fixed name instead of being named by the player and that you cant have two of
it would probably require c# I'm guessing 
I'd like to make a cutscene where the player has choices to spy on other people. Would it make more sense to use the 'change event' coding than trying to do all of that withink quickQuestion or question prongs?
I think that using switchEvent with quickQuestion gives you the most flexibility in how to do things because then you can easily put more quickQuestions in the routes and/or give them separate endings etc.
thank you 😄
(And if you don't want them to have separate endings, you can write an "ending" fork that they all switch back to if you like)
Theoretical question:
How difficult would it be to make a mod that added a Farmhands Barracks which allowed the recruiting of farmhand NPCs that worked on your farm, watering, harvesting etc etc? Like, junimos on steroids?
You'd have to pay them, feed them, and they'd work better with better pay and conditions etc etc.
I have zero coding/modding skills and just want to know if the idea is viable and how difficult it would be.
are you ready to defeat the elite 4
- the pathfinder
- multiplayer ghost locations
- NPC.cs in general
- council of Crop.harvest transpilers
So... difficult?
the gist is that making something magically harvest invisibly overnight is simple, letting player see that happen is pain in the ass
still a C# mod either way 
Ahh k. Yeah, seeing them working would be part of it.
some existing mods in this auto harvest genre
- better junimos
- that one ridgeside thing where you pay someone to (invisibly) water your crops
- collector/deluxe autograbber
i also made a mod where one of the trinkets follow you around and harvests crops/forage https://www.nexusmods.com/stardewvalley/mods/29074
yea i mean the player always defeated the elite 4 in the games 
just gotta work at it so u can become champion of the harvesting mods
And would not make it your first coding project
You know the pathfinder is my white whale right
oh theres also this thing
it hasnt been updated since 2019 but it is a mod that pilots the farmer around as a bot
Morning, chue!
Lol, this looks mad. Cheers.
event tester has the farmer auto do the events 😛
(what they're not telling you is that this can become a team project by asking stuff in here and letting people help you)
What should I do in San Francisco today
I'm thinking Modern Art
I already made a sweep for yarn stores but can't make it to a local one
i agree with this on principle but i am not going to rewrite pathfinder
I am not going to rewrite the pathfinder because I have no longer the time in life for it
there was also this really cool wip where someone did slap a better pathfinder on the spouse npc so they can do stuff around the farm
But it is my white whale
never saw light of day though very sad
Hey, if you lot are willing to do some of (I.e. literally all of... I am a talentless hack who had a random idea) I will gladly lead this team. (As long as said team leading is strictly limited to this single conversation).
(I'm a boilermaker. I can't code.)
if u got any less ambitious ideas we can point you right way
the only real change I want on pathfinding is switching the source of truth of warps being the path finder itself rather than collision
Hey, I stepped foot on Purdue's campus four times in my life!
good to get yer feet wet first
Morning, SinZ
in second place is the ability to have path finding more aggressively prefer paths
clueless how hard can it be? A simple A* should do the trick.
the micro pathfinder is already A* to an extent,, the problems are how it interacts with the other systems
I've got one mod installed that auto waters for you. Pathfinds to unwatered crops/water sources. Isn't too cheat-y.
Its what had me thinking about farmhands.
I just feel like, end game, when you're drowning in casheesh... expanding your farm by hiring workers would be the logical next step for your farm.
there is farmtronics if it survived the 1.6 update to userland program your own robots to do it
It's not just a question of doing it
It's a question of making it not slow
My original midday scheduling out of gima would noticeably hitch
It's why gima midday was always sharded
async compute thread and have the mainthread update loop poll to see if the schedule has been finalized yet to execute?
(See, now this is the esoteric coder mumbo-jumbo I came here for)
Not sure tbh. I think they once has junimos background schedule but took that out
tbh its possible it just caused console problems as the consoles technically aren't running true .net core/framework and is some nda flavor
I feel that, though its nice to have something interesting to work on outside of work
(Legitimately. I could swing it if I working 40hrs/wk. At close to 80 I can't.)
ah yeah, I'm not working in the US that normalized such silly working conditions
my contract is 36.75hrs/wk and even then im reading discord on company time
Well, its 1am here and I'm up at 6 for work myself. Thanks for your thoughts on this, it's been illuminating. And keep up the good work.
New quote added by chu2.718281828459045235360287471 as #6421 (https://discordapp.com/channels/137344473976799233/156109690059751424/1383822417260052560)
I am also working too hard to make mods. Working my way through many Next Fest demos
Have fun?
Hey, I'm taking both weekend days this weekend
I'm, heck, even traveling lol
(I have added so many more games to my wishlist that I will never buy!)
Alright. Breakfast done, now I need to figure out how to return my keys
hm another localized text benefit: i can patch reload translations now
Tbh if I was doing content mods I think I ditch smapi i18n entirely and go all in on localised text.
Get the full power of the asset pipeline and in the case of cp, full use of tokens unrestricted without any of the weird plumbing
Blueberry already does it with love of cooking and the English localisation is just a content pack
but i like this more than the i18n way of formatting string
[LocalizedText {{ModId}}.i18n:couch.name [LocalizedText {{ModId}}.i18n:couch01.name]]
and then
"couch.name": "{0}黑金沙发",
"couch01.name": "玫瑰·",
so i get 玫瑰·黑金沙发 in game
Also means you never even need to think about when stuff gets baked into the save or not, as localised text is safe there anyway
hm i wonder if it would work for the weird ring description issue
Still need to semi think about it in terms of what keys are breaking changes
Tbh I think of it in this way
I18n has nice fallback
I would rather fall back to English over gibberish
Blueberry does that by doing an early edit data in English and then has the other languages default/late edit to populate with the language in question
{
"LogName": "LocalizedText翻译",
"Action": "Load",
"Target": "{{ModId}}.i18n",
"FromFile": "i18n/default.json",
"Priority": "Low"
},
{
"LogName": "LocalizedText翻译",
"Action": "Load",
"Target": "{{ModId}}.i18n",
"FromFile": "i18n/{{Language}}.json",
"Priority": "Medium",
"When": {
"HasFile:{{FromFile}}": true
}
},
i used . so that i dont have to \\
Doing it via load means you have lost access to CP tokens again
but i dont want to have them for this 
And it's all or nothing, the translation needs all keys populated as there's no per-key fallback
i am try to use {0} for things
but yea hm that one is good point maybe ill move it to include then 
that said it is also just for flexibility, able to i18n if needed
i dont think ill need it for this mod specifically tho
what i really would like instead is to use TargetLocale
but i dont want to make it hard for people to just toss in new i18n
I think I'll refactoring some of my dialogue to use localized text
Helloo! Do anoone know where in the Content (Unpacked) folder the food/object spirtes are lookated??
Maps/springobjects
THANKS!!
Basically everything is either cursors or springobjects
Even if you think it isn't. It probably is
I was shocked that seb event rpg backg is not in cursors
If I declare local tokens when including a file, will they be passed automatically to other files included by that file?
I think so
Ok, will give it a try
does anyone know how the better truffles mod work? i want to use its mechanics on my otters but it doesn't have a content file so i can't figure it out
it hardcodes truffles specifically
actually
To enable the bubble indicator for their products, the mod author will have to add "temisthem_bettertruffles" as a context tag to their custom item in content.json. Adding this context tag for other objects will also cause the bubble to display too.
so i can't do anything about it?
see my correction above
you need to add the tag to the object that your otters dig up
so it'll be like temisthem_betteroceanstone?
no, that tag exactly
and that will also remove the bubble from the otters like for pigs not having bubbles anymore?
that's a different mod I think
ui info suite 2 is the one I was thinking of that hardcodes truffles
do i have to add this to my otters mod file or the better truffles?
your own mod, use targetfield to edit ocean stone's context tags field to add your own tag
This might be me being dumb as usual bit why would you need to hardcode that
(does it still hardcode it after the big revamp?)
Question. If I'm doing a texture pack, can I just modify all the items I'm replacing in sprinobjects and then use edit image in content.json? Or do I have to do an action for every item I replace?
Rn I'm just dragging the textures over the unpacked map and then targeting the original.
if you can do an Overlay then one EditImage would suffice
1.5 stuff probably
animals are still a giant ol pile of hardcoding then
but overlay means you'd need to cover the existing pixels of an item with a new pixel and not have any transparent parts that dont overlap bc thats what overlay does
if you are replacing every single thing in springobjects (every thing) then one EditImage as Replace will also work or a Load
but if the things you'r replacing are disconnected from each other then you'll want multiple actions
bc you'll have to define the individual rectangles
oooof okay
I am going to replace everything eventually but I’m just tryna see them in game 😭
What I’ve done so far anyways
if you just wanna see them in game you can just Load or EditImage over the entire thing
Just temporarily load your entire sheet
Not great for compat but you can do the code later
Give me back the brain cell button
the reason you'd need multiple if you didnt change every thing is bc you would be editing the originals back on top of themselves by loading springobjects_edited on top of springobjects
I'll give you a popsticker in return
which isnt bad if you have no other mods... but odds are in a big mod list, theres some other mod editing springobjects out there who would be overwritten by you doing that
and effectively reset to vanilla
(button ignoring the chaos and continuing to give advice)
(or if you removed the unchanged ones from your edited springobjects.png, then you'd be replacing them with blank spaces)
Hold on
Ok
So why exactly can’t I just replace the objects I want and then…leave everything else there
bc you cant do "only replace these specific, disconnected sections" in one EditImage
Like what I’m doing is deleting the original image and replacing it. Am I supposed to put it on a new layer?





