#making-mods-general
1 messages · Page 151 of 1
Amazing
It's not an allergen in anything I've built, but I think if I ever did an animal husbandry compat (red meat, etc. allergies) I'd include it. Not that I really plan to do that any time soon haha
I figure if someone really wants it, I've got docs and they can make a content pack
theres people allergic to water, theres probs unfortunately an allergy to every thing
(shout-out to my cinnamon allergy, you try your best to get me to not eat it but I refuse to listen)
i can't tell if i'm allergic to horseradish, or wasabi, but whatever it was i only narrowly avoided the hospital so i'm not taking any chances
btw is there a CP way to keep normal bushes(normal as in regularly spawned from the path tilesheet) from having any spawnables in a certain location
MCAS can make you allergic to nearly anything
Bug meat would probably go along with a shellfish allergy, I thin
k
My wife is allergic to shellfish and it extends to insects
Friends, my brain is a seive and I have forgotten already: are dynamic tokens able to be used across mods natively or do they also need something like the cross-mod tokens mod
dynamic tokens can only be accessed by the mod they are in
the latter
My metamour is allergic to most food, most skin products, and most fragrances
without Cross-Mod Compatibility Tokens
Thanks
maybe with bush bloom
hmmm, feared that 🤔 tbh not that big of a deal i guess i can live with random bush forage but i thought id ask anyway
Do the bushes need to be spawned by the paths layer?
if you want the shaking effect, yes, and it may be also better depending of the recolor used
i do have some map tilesheet bushes but i wanted to mainly use actual ones so theyre more natural but eh, guess random bush forage isnt that big of a deal since i wont put any on my own
How are we doing this lovely spring day
honestly wondering bout how much firework the neighbours been blasting before new years eve tbh really considering if i just stay up and make some more assets cuz i doubt i gonna get sleep
Thinking I should really go to bed, but it's so difficult
Hey Harmony friends, is new CodeMatch(OpCodes.Brfalse) going to match IL_02c7: brfalse IL_03a5? Can I tell it I don't care what the operand is, just the opcode? I don't want to edit labels or anything. Just trying to find a longer sequence of instructions so I can insert my code at the right spot
i only broke my game a tiny bit today so its a p good day tbh
yes, no operand specified means it matches everything

I have this theory about myself but I’ve never tested
It’s just never felt like the right day to have an allergic reaction
Hey y'all! Super quick question to make sure I'm going about this the right way. I want to grab every fish via C# code, both vanilla and modded. I've found a few methods in the API but wanted to know if there was a clean one that just printed all available fish in the game!
The methods I found poking around the wiki and working with the API:
- GameLocation::getFishingLocation
- GameLocation::getFish
- GameLocation:getFishFromLocationData```
Because this feels location based and I feel it would be silly to have to iterate through every location to get a complete list of fish. I'm still rooting around the code for a more complete list but figured I'd ask!
None of those are good choices, use the ItemRegistry and filter by category.
I glanced over how the Almanac mod did it but a lot of their methods seem to have been for pre-1.6
I thought so, which is why I asked! Thank you!
And under no circumstances should you use getFish, that will actually "catch" the fish and change stats, achievements, etc.
What you want is something like: ItemRegistry.GetObjectTypeDefinition().GetAllIds().Select(ItemRegistry.GetDataOrErrorItem).Where(data => data.Category == Object.FishCategory)
It's not going to be the fastest thing ever, so don't run it too often, cache the results if you can.
Oh thank you! That was even more than I asked for, you're the best
I'll run it on startup and cache it
You might not necessarily want to literally cache at startup unless you have a way of invalidating, because their existence can be conditional from CP mods and so on. I just meant, don't query it every single frame, best to do it when you open a menu, or execute some occasional logic, etc.
Oh that makes sense
Item registry itself has a cache (which can be invalidated).
I ran it on location change with HFJ, although I never updated it for 1.6
that's generally still potentially going to miss things if CP mods are hyperspecific but it'll get what should be there
Yeah, location change (warped event) is probably a pretty good interval.
if you only plan on reading the data and not altering it, would it be faster to just iterate over Game1.objectData
i dont know what all goes into the ItemRegistry doing its stuff
Okay so I'm a touch confused on how to actually parse the data I have as a fish. I have it filtered from focustense's suggestion, but from what I'm reading on the wiki the actual data I need from said fish is stored in Data/Fish.xnb
Looking at how the Almanac mod grabbed fish they basically just:
Dictionary<string, string> data = Game1.content.Load<Dictionary<string, string>>(@"Data\Fish");
Parsed the content directly into a Dictionary
Is this still the best method post-1.6 update?
Because I feel like it's not but maybe I'm wrong
do you want the fish items or the fish data that goes with the items?
To be specific about what I want so there's no confusion:
- I need the location the fish can be caught in
- All weather/seasonal conditions
- Whether the player has caught the fish (that one's in GameState IIRC)
- The Fishing Level it becomes catchable
if you just want the data and not the actual objects that go in the players inventory then you can just load Data/Fish like that
So I believe I need the fish data that goes with the items
Okay so that IS the best method for it in 1.6? I figured it worked but thought it might have been improved upon somehow
however for locations im pretty sure thats set in the Location data?
like each location can decide what fish is caught there i think
Gotcha gotcha
someone can correct me if im wrong on this too but i dont think fish have a concept of "level it can be caught at"
its just going to be difficult to catch the higher difficulty fish with a lower level
The Legend can't be caught until Fishing Level 10
All the legendary fish have level requirements
There can be a minimum level. https://stardewvalleywiki.com/Modding:Fish_data#Fish_data_and_spawn_criteria
fair enough, i stand corrected. i dont work with fish often
pretty sure you also can't reach certain fish spawn areas without a certain level because your line isn't long enough
thatd be different from a level requirement though, since you could get around that with a strong enough buff or just a mod that makes your fishing line longer, regardless of level
Button question, if I'm trying to get the name/title of Elliott books (from Tia's mods), do I still need CMCT or will Dynamic Tokens be enough? Thank you! 
is Elliott Books a CP-only mod?
Yep! I use %book in some of my dialogue and I'm trying to ensure compat with RWE's new book titles.
then unless Elliott Books stores the book title somewhere like mod data you will need CMCT to read any of its dynamic tokens
Thank you, Button!!
man your mods are an author's saving grace
yeah, pretty sure you'd need CMCT because it's just a dynamic token
I should have the CMCT names on the mod description tho!
Working on it now, thank you Tia and Button! ❤️
Stardew Aquarium 2.0.0 is now out! Huge thanks to @ivory plume for helping me with this update 
https://www.nexusmods.com/stardewvalley/mods/6372
Congrats!
We're officially STF and JA free! 

Make a mod for switch Modders or, you can't do that?
Not unless your switch is jailbroken.
i hath been summoned
!switchmodding (but Pillow’s the best person to talk about it further in regards to the topic)
Modding on the Nintendo Switch is technically possible in a very limited capacity, but it requires jailbreaking your Switch, which is only possible on select models or by physically altering the hardware of your Switch, and can run the risk of bricking your console and/or being banned by Nintendo. Only visual texture and dialogue replacer XNB mods can be installed. Due to these limitations, we do not provide guides on how to mod the Switch and it is up to the individual if they want to take these risks.
for conversation topics in dialogue commands - do you add them at the beginning or end of a dialogue string?
Hooray! That's awesome!
Testing my mod's baseline (just getting all the fish visable and clickable in the UI before sorting them by current location and other variables)
Proof of concept
I'll share screenshots if it works!
End
Huh... maybe im formatting it wrong I'll fiddle with it
Also what item category would I put a lost item into
Hi all! I’m trying to make my custom wine and jelly from a custom fruit I tweaked from the mod “Ancient Starfruit” that I found on Nexus. (It was made as a one-up to Aged Blue Moon Wine from SVE, so I renamed it and tweaked the buffs/prices to my liking so I can practice using vscode and writing json).
The problem is:
Ever since I put the mod in my game, it doesn’t produce the custom wine or jelly with all the buffs and descriptions etc., it makes a vanilla wine with the name of my custom one sans all of the modded elements! I’m trying to figure out what is causing this or how to get my custom wine/jelly out of the keg when I put my custom fruit in instead of a vanilla wine.
I’ll upload screenshots and whatever else is needed just tell me - I’m losing my mind over here because I’ve been trying to figure this out for days and the buffs I put on it are so great and useful
it’s a really wonderful mod and the first one that I’ve ever made for myself in sdv so I really want it to work
I want these:
But keg give these:
but the processing isn't working
it's likely because you didn't put your entries higher than vanilla ones
and vanilla take precedence
How do I go about that?
{
"LogName": "Editing Dehydrator",
"Action": "EditData",
"Target": "Data/Machines",
"TargetField": [
"(BC)Dehydrator",
"OutputRules"
],
"Entries": {
"Lumisteria.MtVapius_Dehydrator_SunGrape": {
"Id": "Lumisteria.MtVapius_Dehydrator_SunGrape",
"Triggers": [
{
"Trigger": "ItemPlacedInMachine",
"RequiredItemId": "(O)Lumisteria.MtVapius_WhiteGrape",
"RequiredCount": 5,
}
],
"UseFirstValidOutput": true,
"OutputItem": [
{
"Id": "Lumisteria.MtVapius_SunGrape",
"ItemId": "(O)Lumisteria.MtVapius_SunGrape",
"MinStack": 3,
"MaxStack": 4,
}
],
"MinutesUntilReady": 1750,
},
},
"MoveEntries": [
{
"ID": "Lumisteria.MtVapius_Dehydrator_SunGrape",
"BeforeId": "DriedFruit"
},
]
},```
this way, but with of course the adjusted names/values 😄
basically you already have the first part, what you need is the moveentries part added right below your entries
you look at the name of the vanilla rule (it's what you'll put in "beforeId", and the name of your rule
I'm sorry, I'm still new at this and don't read code the strongest yet
Is there any chance you (or anyone really) could break what I'm supposed to do into bite size? Like... okay so I have my mod file, where does this code go? do i create a new json? what names do I switch and where?
@chrome mountain I'm going to DM you about something
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.
!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.
and provide the json code of your machines?
it'll be easier for me to show you with that as example
They're just the vanilla kegs
Yes, you need the json for which thing, the fruit?
any!
while I wait for DMs.. hi everyone.. I hope your holidays were better than mine.. everyone in my house got either the Flu of Pneumonia
Do you have production rules for the output for your fruit?
Dang it, encountered an error I don't understand that crashes the game. Maybe I should take a break...
feel free to share the error if you want others to give clues if they have any, lulu
I hope you feel better soon!
My code's messy so I'd feel bad, but I certainly can
oh I didn't get sick... everyone else did
It's a C# mod
This is the json for the fruit
Hold plz
Oh... well I mean.. small gifts I guess xD
!log share the log for the crash
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.
https://smapi.io/log/414390475cf64995a81736ad32217b15
Here's the error! Ignore the manifest stuff, those are just the configs of all my mods I disabled to test my mod on its own
!json you can also use this page to upload your code so people can see it more easily
Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 4 C# mods and 1 content packs.
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.
wifey wanted to see her family.. they all were sick and didn't care sooooooo I had the advantage of recovering from the flu a week before so I am good
It is a JA mod
it's pretty late here so i will not be able to guide you to the whole process
I can upload a VSCode instead, I use that to view
but basically JA can add item (even if most updated mods use CP for that now)
but not recipes to machines
That's okay, I'll do my best to figure it out the best I can
There's a framework for that IIRC
Your fruit is fine? I think? But if you aren't having the produce you want for it you would need to provide the producer rules for whatever it is you're trying to make (if you're using PFM we would need to see that part of it)
you want to add that to produce your item so you need either CP (advised) or PFM
I have CP
I can help you convert the fruit to be a CP item, I'm not super familiar with how to do producer rules but with Lumina's example I could probably walk you through that too
(i cant help with C# but you may want a bit of context in what the mod is doing? it changes big craftable somehow?)
also does anyone know what these would be categorized as? I tried to set it to "basic" but that just makes it so nothing shows up
Category or Type?
technically keeping items as JA then CP for the machine is doable but i would advise using only CP
Basic is only a valid value for Type
bless you guys, I'm trying to learn this but I'm going insane at this point reading the guides is hard to actually understand when you can't ask questions
(That's why I'm confused, it doesn't. Currently it just throws all available fish into a UI. That's all it does. Hence why I got confused by said error)
Type... esssentially i just want it to be a generic item like the lost axe and stuff like that
I also advise making an entirely CP mod
I have a template for making items in CP, not for machine rules though. But the format is more similar once you understnad it
That's what we're here for :D never feel pressured to not ask questions (trust me, ive asked my fair share)
Basic is fine, make sure it's capitalized properly
(and am continuing to ask my fair share)
lily, can't you look at what the axe uses and then use that too?
Okay, so I have to take everything that's here and convert it to CP - where should I start?
IF it's not showing up ,then check for errors or a patch export
(while keeping in mind some stuff may be hardcoded on the axe stuff, so it may not behave EXACTLY like it)
Oh i just realized what I was doing wrong.. misplaced capital letters 😬
Start with this guide https://stardewvalleywiki.com/Modding:Content_Patcher
Here's my template which you can copy after following the guide to set up a working mod. It adds a single crop https://github.com/6480k/6480-Stardew-Mods/tree/main/[CP] Mouse-Ear Cress
Once you've converted it, you can ask again or use Lumina's example to try editing machine rules.
Content Patcher mods are a lot more extensible because you can edit many elements of the game with CP alone. So getting familiar with this format will open more doors for you
It really will - I've been able to do a large majority of my npc mod with just CP and I've added crops, dishes, quests, weapons, and a bunch of other stuff
Some other frameworks are nice for other things too but for more 'simple' stuff - like adding crops - you wont need those
and feel free to ask questions here if you get stuck on something!
(also no wonder you were confused by my bit of code, ultravioletrei, i assumed context of CP, which was not the case 😄 )
So a question about those conversation topic commands... how do I add it to the end of this? I tried with and without spaces and neither seems to work
"Aos.QiBriefCaseQuest.reaction": "Ah, there it is. Thanks Kid, there's important stuff in here.$7#$b#You'd make a good agent some day.$0#$b#...$7#$b#Don't worry about what's inside of it. There are some things you aren't ready to know.$0 $t AOSBriefCaseQuestFollowup",
🥹 Thank you all for this, it really helps anxious people like me to not feel like a burden for being a beginner. I feel like I should know what order to do things but I'm not sure yet because I've only worked so far by editing existing mods that already do the thing I'm trying to get. I'm probably going to ask a lot more questions, but I appreciate you being so patient 
Again it really isn't a problem - we all start somewhere :]
You have to break up dialogue commands with the #
Rei, another thing I would recommend is finding a small mod that does what you want to do (add a crop and an artisan good in CP) and look at what it does.
I always find examples helpful for putting it all together 🙂
So $0#$t
I started by making a furniture mod and I asked like 30 questions all about how to use one framework for it so... - OH
i cant believe i forgot that
I was literally using it earlier IN the dialogue 😭
(also I don't think you need the $0 there because it should use the default by, well, default)
yeahh I mostly do it out of habit so I don't forget to actually add in other portraits when it calls for it
I don't do dialogue so I actually have no idea if this needs another # at the end too
wait, $t exists?
I'm keeping an eye out for one - I have some CP mods in right now but the closest is a furniture mod, they don't do the thing I want here so I'm going to start from the beginning so I can learn properly but if I come across a mod that just adds a new crop with processing then I'll pick it up. lots of mods just have so much extra stuff and that jumbles things in my head.
Yeah, apparently not used by vanilla but it's on the wiki at least
it does :D
Yeah, Cornucopia and VMV have good examples of adding crops and machine processing, but there's also a lot of stuff around all that
6480 sometimes posts standalone snippets, not sure what all they have though
I can give you examples of a crop and an item to go off of without any sort of extra stuff - then Lumina's example is one I can walk you through for producer rules
yeah VMV isn't a small mod, it has a lot of examples but you need to be familiar with stuff at least a bit
and there are very many examples of some stuff that people have made :]
https://www.nexusmods.com/stardewvalley/mods/22376 this one is probably moderately sized but still not small (not my mod)
I want to create a folder and name it something like "[CP] Indigeauxfruit" and then inside I will create a new .json file in VSC called manifest.json , another called content.json, and an empty folder called "Assets". Is this right to start?
https://www.nexusmods.com/stardewvalley/mods/23197 this might work, it's one tree + item
though fruit trees are a bit different from crops, I suppose
I had a bunch of simple examples up on my github but took them down and haven't gone through to update them and reupload them
This is a single crop, produce and seed
thats a good start yeah!
There's examples on how to format your manifest if you need that as well
soybean and soybean seed
though it seems like that part is good since you were able to load your mod with JA
has someone made soymilk yet
This is what I put inside the content.json and I just swap the names for the names of my crop/items?
Cornucopia does I believe
yeah we have soymilk
Look, it's not supposed to be clever 
WAG probably also does
yeah, it's just getting vanilla wine to go away 😅
The template I posted is annotated with "comments" that tell you what each line of code does!
In essence, you would want to change the details of the crop and stuff to match YOUR crop but you would essentially be replacing whats there with your stuff (with the afformentioned annotated comments to assist you)
Where template? I need to bookmark whenever you link to snippets 
Like almondcow machine? I've had my eye on that one cuz I'm an almond milk girlie :3
i have to go, good luck (and good night/day)
You know, I never actually figured out how the days in phase thing works with regrowable crops
I kinda just messed with it until it worked
There's a RegrowDays field
The one in the github you posted?
I set them all to 1 so that each phase just takes 1 day then 1 day to regrow 😅
heeeeeey 6480 ever thought about doing an item/crop tutorial or template for the modding wiki 
I turned the ancient strafruit mod into a regrow crop and used gimp to frankenstein the crop png until it made sense
No no, i know that - i meant the sprites for it and stuff. It threw off how it pulled from them and I kinda just had to wing it until it worked and properly cycled through them all
Im lazyyyyy
So this is how the folder is supposed to look when done? (w/o the annotations?)
yes the regrowth sprite always needs to be in the last position regardless of prior crop phases
then you need the re-harvest sprite in the second to last position regardless of prior crop phases
took me 8 edits to figure this out, it was a hard day
I think I have an example
Yes
like this
No that's different from what I mean
?
Ah now I remember. The example I was thinking of was one of Lumina's crops, which I pointed out
so nvm
This is the typical format for a regrowable crop; Lily is talking about what happens to a regrowable crop that has less than 5 phases
Ohhhh
my crop had five phases... I think
Could have been a different issue then
I am completely wrong it does not ? I guess?
It's no matter I figured it out eventually
Me: I'll play a bit with DNT enabled, see how I enjoy it's feel
Weather Mod: Oh, you want to see how it feels? fog and rain entire in-game week
This is the example. If you have less than five phases, you need two copies of your harvest sprite
Me: ... well. I like the ambience, but it's not a great test. c.c
huh... well I ... did not do that
Eh... silly question here but I've created a new text file in VS Code - How do I make it into a .json? is it just an option when I go to save it that I rename it "content.json" and save it as json?
I mean the crops regrow properly! so there's that! but I absolutely did not do that
Lol
I dont use VSC for coding but I think so? you should be able to save it as a specific file type
for example this is what I have for one of them
as you can see, i did not do that
don't mind me just saving this for future reference to save my hair follicles from frustration
I did this and it kept using the last sprite as the harvest ready and the 2nd to last as the regrow phase. looked wonky having the fruit right there but not harvestable and the invisible fruit the harvestable one xD
In my mod, Junimatic, Junimos come along and help with farm chores and such. I want to make the Junimos afraid of villagers. What I've got implemented in the shipping version is basically a list of places where Junimos work and where they don't. This often runs afoul of other mods that introduce new areas and players don't get any feedback over why the Junimos don't show up.
I cooked up this idea instead - as you can see here, the Junimos have a chance, every tick, to notice nearby villagers:
If they see a villager, they run off and disable the hut. The thing is, realistically there's a great chance that the player won't even be in-scene or may just not be paying attention when a Junimo-sees-villager thing happens. Even if that happens, the player gets a solid clue that something is wrong because the hut is very visibly busted and when they pick it up, the item description tells the whole tale.
What I don't like about it is that the Junimo huts are, by design, a little bit of a PITA to make: They take wild seeds. I'm trying to come up with a way to make it so the player can easily convert one of these disabled huts back into a working one. I don't think I can do it with a crafting recipe, since I don't think you can have two recipes that make the same thing... So I think something entirely different needs to be thunk up. Ideas?
You can have two recipes that make the same thing!
Personally, I didnt find junimo huts to be a terrible burden to make
^ they just need to have a different internal recipe name iirc
I did it with my transmutation mod :]
Yeah, but if you're new to the mod and experimenting, and this happens several times... I'd get grumpy.
Okay thank you! I can start typing and moving code over then I think
I'm just obsessed with jumimos they're the cutest thing in the world, I love the idea that they'd scurry to hide from people when they're nearby >.<
Hm. I guess I could have the second crafting recipe. Seems like it might be a bit confusing to the player... But maybe not. I'd give it a try. The other idea I had thought of was to make it so that if a player put the busted one in a chest that was in a network serviced by Junimos that the Junimo would take it and rehab it. But that sounds like a whole lot of fancy.
Is there a way to make a crafting recipe not be required for Perfection?
no
well technically you're in C# so you can do anything
but none by itself
I guess you can just make your recipe have crafted count = 1
Why not have it convert to fixed on pickup?
Can't have it fixed on pickup because then the player wouldn't get a chance to read the "Here's what happened" item description.
Aaaah
The idea of artificially setting it as already crafted sounds promising tho.
Well actually you could
You could have it do the hold-up-and-message thing the first time
Could send a little notif message in the corner when they collect the item as well
Like vanilla does with geodes
Yep, that could work too.
I've already got stuff monitoring inventory intake.
The hold-over-head move would be even more of an in-your-face way to tell the user what went wrong than the item description...
There's a method to do that to, I think on Farmer
Yup, I do that with something else in the mod. Don't recall what it is, but I apparently know how to do it 😉
nerm, I'm thinking I'm going to try Junimatic on my next run
I enjoyed playing through the quests for Questable Tractor!
Its so amazing!
I love Automate, but I cant imagine ever going back now that I've experienced junimatic
My issue with automate was always that it's too powerful earlygame
Exactly, it's so cool that junimatic makes it feel like you're building something from nothing, just like you're putting in the work to slowly repair the farm and everything. And the junimos carrying stuff around make it feel like even though it's automated, it's not just a do-everything-instantly button
Plus I can change the recipe to adjust when it can be unlocked
Thanks for the positive vibes. I'm intending to do what 6480 told me to do a long time ago and make a video that explains all the features and how to unlock them. I also got some feedback recently to support https://www.nexusmods.com/stardewvalley/mods/22300?tab=files (Special Power Utilities).
this reminds me to install Junimatic for my new save lol, I knew I forgot something
I haven't done spu integration only because my mod adds a single power and it seemed dumb to put it in its own tab
hmm I should throw together a PR that makes custom crab pots reachable by junimos. I think only vanilla crab pots are supported
because water machines can be like 2 tiles away
their tiny little arms cant reach 
(vacation mode though, so maybe Feb)
Ah, you're on vacation and are not secretly using it as additional modding time. Very admirable of you
Why did you @ me with this message
Oh god, I thought my discord glitched
I'm literally doing the same thing haha!
I was looking forward to the holidays just so I could have more modding time - turns out there have been too many friend/family gatherings and I’m always starving for more alone time 
well I did violate it a bit by uploading the new version of FFP just now. but it only contains the Fr translation + one line tweaks I did before
Meanwhile, I'm taking full advantage of this slight lull to go knit a hat
And some socsk
be proud of me! I only worked half a day today
So only 9 hours instead of 18 
Hey all. Weird issue. Here you can see a fully functioning Crib that spawns into the farmhouse as intended:
However, for some reason the baby is possessed and only sleeps here:
I've added the Action: Crib Property to the bulding layer. Loaded the maps properly. I cant get the baby unpossessed. Any ideas?
the baby's spawn position in the crib is hardcoded in Child.cs. are you patching those parts of the game code?
(
if your powers ID has your mod ID in it then it automatically gets its own tab anyway!)
I am not. I dont think any of the farmhouses I've looked at as examples did either. I will look into how to do that
!harmony is the tool to use to patch the game code, if you're not familiar. if you aren't already doing C# for your mod (or if you aren't comfortable doing so), it may be easier to redesign your farmhouse so the crib is in the same location as vanilla
Here be dragons. Venture forth with bravery, young warrior, for thou art alone in these dark lands. See the Harmony wiki page for more info.
literally me this morning
This code makes me wonder how this works lol, the position seems to be 16, 4 with an offset of -24 y pixels, but like that shouldn't be the correct position given how the map works
Oh, probably resetForPlayerEntry
So dayUpdate wants to put them in the void and reset puts them where they belong 
considering rewriting the silly warning text in the harmony command. harmony isn't that scary and there are tons of people on here who can help you, so you're not alone
(tbh i also feel like the strong warnings on that wiki page are over stated too)
Emotionally not alone, physically you still have to handle writing the code yourself lol
no different from any other C#, though
Most people aren't so energized to write harmony for others
At the very least, it's pretty unhelpful as introductory material.
They can meme after they've tried it out.
Roku what kinda silliness is sve premium barn/coop lol
its possible it was more true back when that command was made, i dont know how old it is
I didn't test em cus sve hueg
Uh, I have no idea, I mean the same level of silliness that most of SVE is
What is make them no work for livestock bazaar
They aren't upgrades of the barn or coop
Is the building too big or smth
But somehow the base game is fine treating them as barns and coops
shouldnt that not matter? i thought the adoption stuff looked at what animals a building could house
So there's like 2 checks
The barn and coop animals show up greyed out if you only have premium barns and coops in Livestock Bazaar
Buildings have a field that specifies which animal house's animals it can accept
One is "has at least 1 required building"
that same field is used for the big/deluxe barns and coops, otherwise you cant put your chickens in them
The other one is "has any room in a matching building with house type"
I'm using less than half of the capacity of both
I reimpl this rather than use vanilla so im guessing premium banr coop patch em
It sounds like gist is i just gotta refit that to use vanilla even though inconvenient
But is the only broken case is like, only have premium coop without deluxe coop?
Pretty sure, I destroyed those when I got the Premium because I had no intention of even filling the Premium
I could build a deluxe or regular to test
ah, I see the problem, I misunderstood what was happening
it seem like ppl will also have this problem if they use one of those standalone modded buildings that can accept coop/barn animals
What it it?
does SVE actually patch that code?
Idk im speculate from me bed
I am unsure SVE does anything to that, the Premium Coop and Barn are both in the CP code
the problem where you still need a regular coop/barn to be able to buy animals, even if you have a modded building that can house them
because said building isnt a coop/barn upgrade
Is this an issue specifically with Livestock Bazaar? I just bought a rabbit to test
It worked with Marnie's default menu
Now I need to come up with a name for this rabbit 
yep, confirmed, SVE patches HasBuildingOrUpgrade
Blorf
to make the Premium Coops/Barns be considered upgrades of the regular ones
Is that even necessary anymore?
as I said, without that patch the "no coop or barn, can't purchase animals" problem happens if you only have the premium coops and barns, but not regular ones
personally, since livestock bazaar is already yeeting the regular animal shop window I wouldn't mind if it also relaxes that requirements
though how, idk
Maybe always allow trying to buy but when selecting a building you'll be able to see if you don't have any that match that accepted type?
Ok. So. This seems like this is what I need to edit using harmony to change the crib location I think?
I haven't actually looked at Livestock Bazaar's code, so I have no idea how feasible that is
That's a bool checking if it's in that area, so you will need to patch that too
In order to make it check your new coordinates
But you also need to patch Child.resetForPlayerEntry
I feel like I should just redesign my farm house. Im not incapable of learning this....I just dont really want to right now xD
Does anyone have a mod that uses harmony code they can think of off the top of their head so I can reverse engineer what they're doing. I work better when I can take apart something functional
take your pick: https://smapi.io/mods
mods listed there are C#, and a fair number of them uses Harmony
hmm wait, that page doesnt link source repos
https://github.com/rokugin/SafeLightningUpdated/blob/main/Patches/UtilityPatch.cs
I had to convert this mod to a prefix because I've been too low on spoons to fix my transpiler
Though, you might be able to complete this with a postfix
I haven't looked closely at the reset method to even see what you need to change, might just be the Position of Child
side note, but welp, that isnt compatible with MTF's custom lightning rods
when I'm back from vacation may I coordinate something?
Mmm, yeah, I was worried I'd be fucking compat up by doing that, I'm still planning on fixing my transpiler but I dunno when
but if you turn it back into a transpiler it should be compatible
More conversation topics is basically a pile of harmony. Lots of it isn’t necessary anymore but I did deliberately comment my code and everything https://github.com/elizabethcd/MoreConversationTopics
https://github.com/zombifier/My_Stardew_Mods/blob/master/CustomTapperFramework/HarmonyPatcher.cs#L552 for the lightning rod stuff
(and I suppose also an example for huskyn1nja)
Quick question, what is a characters emoji and do calendar sprite edits just change the head on the calendar?
(though now that I think about it I can convert that transpiler to a skipping prefix, which will actually make it compatible with Safe Lightning as long as it runs earlier. The only loss would be that lightning will prioritize modded lightning rods over vanilla ones)
(and also marginally worse performance, but eh it would literally be too small to measure)
if you mean the emote bubbles, there are some cheatsheets floating around. here's mine
the character faces on the calendar are rendered using the character data's MugShotSourceRect (just like the ones in the social tab)
okay, looking at seasonal cute characters to see what all they had for their seasonal characters and found two blocks in miscelanious that I'm trying to see what they actually edit
{
"LogName": "Penny - Emoji",
"Action": "EditImage",
"Target": "LooseSprites/emojis",
"FromFile": "assets/{{NoNose}}/Random/emojis.png",
"FromArea": {"X": 9, "Y": 99, "Width": 9, "Height": 9},
"ToArea": {"X": 9, "Y": 99, "Width": 9, "Height": 9},
"When":
{
"HasFile:{{FromFile}}": true,
},
}
{
"LogName": "Penny Calendar Sprite Edits",
"Action": "EditImage",
"Target": "Characters/Penny",
"FromFile": "assets/{{Target}}/{{TargetWithoutPath}}_{{Aerobics}}.png",
}
you can put emojis in chat in multiplayer
You could also just go look at the base assets mentioned in the code and see for yourself what it's editing
Hey guys, Is anyone here from earlier who can help me write a proper content page for the CP mod I'm translating over from JA? I'm drowning in info and guides again and I'm getting stressed out
It’s fairly rare that someone has the time and enthusiasm to do things like that for other people
If you are getting confused between guides, you can link them here for us to check if they’re up to date
You also might want to consider taking a break and doing classic IRL things like eating a snack, a short walk, drinking water, that kind of thing
I dont habitually do many of those things IRL... I should reconsider my life choices
I think there's JA converters right
in my experience watching people struggle, running a converter is more confusing than converting it
I know people threw a lot of info at you all at once. People in this chat typically like to jump in and add their two cents to any convo--which leads to a whole lot of voices to listen to. Realistically you can just start with one step and ignore all the rest for now. If you ask again later, you'll get all the same help again. So focus on getting the basic CP guide to work, before doing other things like fiddling with the item data
In fact, you can just close those other tabs, and when you need them again, feel free to reread the conversation. With any modding, you have to take things step by step
I went and took an almost 3hr break already. That doesn't change my understanding of words or what is being asked here. I just am a more interactive learner and I understand people might not "have the time and enthusiasm" for things like this, but am I supposed to ask somewhere else? If I am, please let me know - I'm not forcing anyone to do anything, I just need to understand better than what the guide is giving me to make sure I'm doing the correct things. People are free to do what they like, so please don't assume that I'm just asking willy nilly. It's a question. I'm only asking if someone can take a look at a content page for me as it's my first time compiling one. I would imagine if it's something you personally don't want to do then it's more productive just to ignore me than tell me how much I need the break I already took and how much people don't want to help me. Not to come off harshly - I mean no disrespect, I just don't much get this response.
I'm trying to make sure that my content page will have the information that it's asking for, simple things like making sure my numbers in crop data are correct and that ModID means what I think it does. It's all formatted differently and if I misunderstand something it won't work. I gave my mod the name "Indigeaux.AncientIndifruitMod" in the manifest and it's asking for the ModID inthe content page. So that's what that is, right?
Okay, so {{ModID}} is indeed your mod's UniqueID as defined in the manifest file.
But when you see {{ModID}} used, it's a token that will automatically parse to that value in code, outside of a few circumstances.
Is that specifically what you were wondering about?
(not to confuse this person, {{ModID}} token is fine next to the Action: Load in the template I provided)
(Oops, sorry, didn't mean to confuse!)
@pine zenith You're welcome to provide your content.json with the following link so people can look
!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.
The reason Elizabeth said what she said was because the original comment sounded like you wanted to ask someone to convert the code for you, and she wanted to give you a warning that you might be waiting with no success if that was the case. If you have specific code and specific questions, people will be quick to help
(i would also like to gently point out that I don't believe math person was saying that no one wants to help or even that they personally don't want to help, but just trying to help prevent the "burning out before you really get started" that a lot of new modders risk, and I think there might have been some misinterpretation with what kind of help you wanted)
hypothetically, what sort of steps would i be looking at if i was looking to make a fashion sense heterochromia mod? the one i found looks like it broke in 1.6
Yes, okay I see. I was more asking if someone was available to clear up some questions like the above rather than like...write my code for me or something. If that's the case then I apologize for the misunderstanding. I've modded for years in other games just never with this one or with json so I'm green here but I do pace myself. I'm not trying to hog or waste anyone's time.
It shouldn't have as FS is updated for 1.6.
No problem. It's good to know as well that you have modding experience and at least broadly understand the process, since many new people don't
Oooo okay, I'll try this then
I'm off to sleep now but I'll be around to help with stuff tomorrow if you need
(I'm sure you'll get plenty of help though)
i dont mean its fashion sense thats broke, its the heterochromia mod for fashion sense, i havent checked but every comment says it broke around one of the hotfixes for 1.6
Thank you so much for your help
I hope you rest well!
Yeah, content packs generally shouldn't break as the framework should handle updates for them. Got a link?
or wait, I think I can find it
hm did the folder trick work for you? I'm not sure why that would but also I'm not sure why it would break
i was just about to try that, like i said i havent tested it but everyone else is saying it broke and the lack of replys on that fix, plus another person saying its broke after it was posted wasnt filling me with lots of confidence
im also not super clear on what they mean, like, grab all other mods that use fashion sense and put them in one folder total? or one each? does that include fashion sense itself?
I wasn't either 😓
I sent the link over to the mod author to look at, but they've been AFK lately, so if the folder thing doesn't work you might want to try making one yourself, yeah. I haven't made anything in FS so I can't help there but they do have a pretty good wiki.
Yeah, 6480 and button basically covered what I was trying to say—sorry for the misunderstanding
just to double check that I understand the wording for this correctly. If I want to edit an object file my file does not have to be the same name, correct? I just have to specify target file x from y
is there a command for the link to said wiki maybe?
Fashion Sense is a framework mod that allows modders to create static or animated clothing, hair, accessories, and shoes that can be accessed through a special in-game menu. To access this menu, players will need to obtain the Hand Mirror from Pierre's Shop. The framework supports multiple content packs and also adds the ability to save, load, and export custom outfits.
Mod Users: Install Fashion Sense as well as any desired content packs. Content packs can be found by searching Nexus, or for an interactive list, click here.
Mod Authors: Instructions, tutorials, and tips for creating FS content packs are available on the mod's wiki.
Last link in this command
yee that one, ty ty
if you're editing e.g. Data/Objects then all that matters if that your content patcher patch has a target that says "Data/Objects"
the actual json you're using in your content patcher mod can be called whatever you want, as long as you have a main content.json
Quick question: Is there a reason for the underscore in the mod title and the fruit object file here? Can I get rid of these since I'm converting it to cp anyways? (pictured here)
It was probably a relic of times when name conflicts were a struggle
You can ignore this safely
I could use a quick sanity check here: is it clear what this UI does and how to navigate it? (Or, to put it more open-ended, what do you expect to happen when you navigate/click on stuff in this section?)
i expect that if i hit, for example, my X button, i will eat a Cheese if its in my inventory
and if i want to change cheese to something else, i should put my cursor over it and click A or my action button or whatever
Thank goodness! Thank you~
and it should open a menu to let me choose something else?
i agree with button's assessment
unless this is like, an inventory screen, in which case id move items into those slots like a chest or smth
Ok, good, I was hoping the expectation here was "open a submenu" and not something like "actually use the item right here right now".
This is part of a config screen.
would it let me choose from any item in the game then?
I think to avoid headaches I would have it pick from what's in your inventory right now.
You can, technically. I guess in that case it would just say "please load a game to choose items" or something.
i think that makes sense, my most used items will likely be in my inventory
thats a very zeldo item quick sloty menu
so i would think if i press Y in game i drink the coffee
this is more a question about your plans than about the UI, though: will the slots be reset if i remove those items from my inventory?
Binding it directly to X or A would, of course, be extremely hazardous and unlikely to work, but it's bound to menu trigger + X or Y, so e.g. Left Trigger + X button would use the item.
if it werent for the text telling me itd only happen when i had the pie menu open i also initially thought the same as chu, though the text does clear that up
Nope! That's the whole idea here.
From my observation, the #1 thing users struggle with is quickly switching between items and the #2 thing is muscle memory when items move around or are removed.
i hope ill be able to put cheese in all 8 slots so i can make sure i hit my panic cheese button correctly when im about to die
If you... really want to, then sure, it won't stop you from doing that. Do you even use a controller though?
i only use a controller to play stardew, unless im doing modding work
(unless unless im doing modding work that involves controller support)
Well then, panic cheese to your heart's content.

(Somebody's eventually gonna ask me about stuff like "can you merge all quality into one slot and have elaborate rules for which quality to use" and my answer's gonna be... I don't know, maybe later)
tbh i would much rather not have merged qualities and would expect that if i chose an iriduum cheese then itd only use iridium cheese from my inventory, and not work if i didnt have iridium cheese on me
Then you are in luck, because that's how it's going to behave, because anything else would take too much work right now.
that's why you need eight slots for your panic cheese, one for each quality
(Although - iridium cheese? Do you cask cheese?)
Yeah, of course I thought "goat cheese" but then goat cheese is for giftin', not for eatin'.
you can. i also just dont play with the most balanced of mod lists though
so iridium cheese is not difficult to come by usually
Oh right. I get users mod lists confused sometimes, you're the one who plays with the 10,000 cask basement mod right?
i dont think ive ever owned a goat in stardew
nope! i just play with mods that let machines produce higher quality things based on input and sometimes it can be iridium and also automate and casks anywhere 
button is the "multiplayer must" and that's all i'm pinning button with
that is also true if something doesnt support multiplayer its a no-go for me
including my own mods
Iridium cheese feels like it's getting into the "too good to use" category, like the fabled megalixir.
You just end up hoarding them forever.
i eat them like candy in the badlands or w/e that SVE area is called
I mean, unless they are so easy to get that you have hundreds of them.
thats not an inaccurate assessment of things

I sell all my iridium cheese for that sweet sweet cash
throws ATA into the requirements for my expansion ig
sounds like a good requirement to me
Sacrilege. Only starfruit wine and ancient fruit wine should ever be sold by the time you get access to casks.
all bc i know people retexture furniture.png so much
And maybe the occasional gem berry.
update in case people were curious which i will also post in comments of the mod, the eyes dont seem to exist until, in the fashion sense mirror, you pick one of the eyes at which point the eye will exist and you can color it, you then have to add the other "eye accessory" to color that one, the mod works fine, its just kinda weird in how it works
the reason the commenter thought sticking the mods in a folder fixed it, was probably because it put the eyes in the first slot of possible accessory options, because the game found those ones first i assume
I have a question that feels dumb but I cannot find the answer. When you’re running multiple mods that change the same things, how does the game know which mod should be the one you see? Ie, I’m running SVE which changes portraits for several vanilla characters. I’m also running Seasonal Outfits which also changes portraits. What makes Seasonal Outfits override SVE?
mods can set dependencies which will change the load order of mods, and they can also change the load order of specific edits they make
Slightly Cuter Aesthetic doesn't actually override SVE either, it just disables its edits for SVE-edited characters if it detects SVE is installed
they can also make specific edits only happen if specific mods are installed
Those characters are then edited by SCA for SVE
(or the opposite as airyn mentions)
Honestly load order is my best friend for the number of mods i have that do the same thing 😭
Ok that makes sense. I really want to learn to mod, but everything is so spread out, with like five files to do one thing and I’m having a heck of a time figuring out where to even start 😕
Well, what do you want to do?
pinpointing exactly what you want to do is first order, tbh portrait/sprite replacement disbarring all other mods that do it (get yours to work first then work from there) is usually baby's first steps
No. 1 tip: don't use SVE as an example mod, it's both overwhelmingly big for a beginner and uses a lot of bad & outdated coding methods
for content patcher mods, you only ever need two files + whatever assets you have (i.e. images), but mod authors have a decent degree of freedom in how they want to organize their work and can make more files for organizational purposes
(and one of those required files is just your mod info and doesnt control any of the editing besides load order)
I want to edit requirements for heart events to space them out more. Like this event can only be seen at a week after this other event, or in year three, etc.
that would be doable but is not as simple or compatible with other mods as you might be imagining it could be
But I have RSV and SVE and probably other mods that all edit events or add events 😅
That's easy enough, though it'll break compatibility with other mods that rely on those events like Button said. Basically what you'll want to do is edit the old version of the event to be null (which removes it) then add it as a new event with the edited event requirements
y'know, going down the "crazy amount of trigger actions" route i just did, i wonder if i could do something like that without touching the actual events 
(the event requirements themselves would also require some special attention if you want to count "days after X event")
RSV doesn't edit vanilla events, and if you're wanting to edit any mod-added events, you'll need permission from the mod authors
Could probably do something with nulling out the vanilla events until the new conditions are met 
Even if it only edits the timing of an event? Part of my issue is I keep seeing events out of order lol. Like Leo/Morgan even in the forest before Leo left the Island, that sort of thing.
Yes, because you're editing someone else's work
yeah that's what i was thinking of, Addconversationtopic {{ModId}}_SomeArbitraryFlag #number of days, set all the other events to a true seen, and then slowly but surely false them once the CT is over
Well that's on sve
Unless the mod author has open permissions, you need permission to edit anything of theirs if you want to publish it
if you were simply replacing the entirety of the event with all of your own original work itd be one thing, but with Stardew if you want to edit the requirements of an existing event, it would require you to then distribute that event again
If you're doing it for personal use, then do whatever you like
i.e. in order to publish a mod that edits an SVE event, you need to include a copy of that SVE event in your mod, even if you're only changing the requirements
its a consequence of the specific way Stardew handles its event data
Ooo ok that makes sense. If I could edit the triggers alone, that’s one thing, but because I’d be overriding the original event with a “new” event, because it’s the same dialogue… Yeah that tracks.
Though tbh I was more looking personal use. I doubt I’ll ever make anything decent enough to publish lol
if you're changing dialogue, you'd either have to do the field finagling or silence the original
if you're just changing when these events should be seen because you want pacing, i might honestly dig deeper into the trigger actions thing
airyns idea of simply nulling out the originals until the right time has promise too, but is also more complicated than simply editing the event and may not be the best starter mod. not the worst tho either
(how bad of a starter mod it might be really would vary from person to person and how quickly they can pick up the new concepts, so, hard to say really)
If it's for personal use, then you can just edit the event preconditions however you like. Download a mod that edits a single vanilla event first to get an idea of how the event code works though, because if you're trying to edit RSV or worse yet SVE as your first project, you're gonna get lost fast
i may as well delve into the "not gonna touch a single event" since i'm already neck deep in these trigger actions
I’ve coded before, mostly frankencoding in JS, and of course xml/css stuff, so that bit isn’t intimidating. C# scares me though
You can't exactly just edit the event, right? Because the event requirement is in the field name?
correct, the key holds the prerequisites
and you cant edit a key
(which is also why the "null until the right time" can only ADD requirements too, not remove any)
Yeah, RSV events were… a lot 🤣 I saw a few Seb mods that edited vanilla events, I’ll check out a few of them and see if I can get a better feel for what’s going on 🥰 Thanks!
(1.7 feature: data model for events /lh)
i still have yet to conceptualize what that would look like
ig just the movies.json?
much more like movies.json i would think, yeah
are there any preconditions that cant be replaced with a simple Condition field with a GSQ?
Hello
even if we just got, like, prerequisites: [] (or Condition) and commands: [] we'd be in a much better place
aside from breaking every event mod ever 
yeah that's uh, fear
i can't think of any offhand. but there is a GSQ event precondition, so
i know about that one, i was just tryin to think of how you would define the preconditions in a model
FreeInventorySlots <number> c Current player has at least this many free inventory slots. 
since itd be unwieldy to have a separate field for each precondition
i was picturing list of strings
finally, a valid use for BETAS
Hi
hasitem exists...
hey dreamy, what's up
HasItem wouldnt help for FreeInventorySlots though
(i also didnt actually know FreeInventorySlots existed... i wonder if i should look at that to compare to my BETAS GSQ for it to make sure im doin it right)

Honestly the more i look at conditions and gsqs the more i start wanting to stick them in places
oh it uses Farmer.freeSpotsInInventory and i remember thats what i use too so thats fine
Tile <x> <y>+ a Current player is standing on one of the given tile positions (can specify multiple x/y positions). This works even if the player is not currently warping.
is there any vanilla event that actually uses that?
uhhhhhhhh
i wouldve thought you wouldnt need that with a tile/touch action or whatever
but i dont know much about events
i'm honestly trying to dig into the deep recesses of my smooth brain but mods use it
If I remember right, the intro to the CC event with Lewis does require you to enter from the bus stop specifically 
oh thats true i think youre correct
The krobus one at the bus stop requires you to land on a specific tile for it to trigger
SpouseBed B Current player has a double bed in their house (or, if they have a roommate, a single bed). But if the roommate is Krobus, will never match.
i think this can be correlated to PLAYER_FARMHOUSE_UPGRADE but there might be some niche cases
so if i always go to marnie first ill never unlock krobus or the CC 
er, robin
but marnie works too
I helped someone whose krobus event wasn't triggering because they had a mod that changed the warp from the farm to the bus stop so the player never landed on the right tile.
"611439/j 4/t 800 1300/w sunny/a 0 54/H": is the a 0 54 the thing where it needs you to be on One Tile
i would never have thought to even check for that when doing any warp edits
Yeah looks like it forsy
i think those are the only ones that gsq doesn't cover though
No I wouldn't have either button
I feel like making event conditions and events two separate dictionaries would be an interesting direction to explore
NPCVisible <name> v The given NPC is present and visible in any location.
NpcVisibleHere <name> p The given NPC is present and visible in the current location.```
Also a potentially extremely far-reaching thing to mess with
But events already have to be processed separately for their conditions and their actual script
In the game code
IS_FESTIVAL_DAY can almost do it but not quite. i am surprised theres no GSQ for NPCs being visible actually
yeah i had to squint at the festival_day one, and went "nope that doesn't cover it"
oh yeah, this one was confusing as hell and i have no idea what events use it.
if anyone has corrections, please make them (this applies to all of the precondition stuff i put on there from the 1.6 migration page)
Penny's 14 heart?
item wouldn't work
that one calls your spouse's GetSpouseBed function. krobus is hardcoded to return null (no bed), and it just like finds the first double bed in your house (or single bed for a roommate)
"4324303/e 4325434/O Penny/A pennyRedecorating/l noQuilt/B": there's a B here which (i hope? i'm right) Might be that thing that checks for a double bed in your house
theoretically if you roommated Krobus and have a double bed but a mod set your farmhouse HasOwner field to false, it'd match
this is not a situation that should happen to be clear
(which is a slightly different scenario from a mod simply editing the precondition bc this way wouldnt require touching the precondition at all, it'd just be collateral damage
)
I've successfully overcomplicated the add_bush command without any new bugs 
(add_bush <size> [townBush] [tileSheetOffset] [x y] [location])
remove_bush is here, but I'm not about to figure out how to throw them anywhere
(and I'm just gonna hope the walnut mutex locks don't mind when people randomly spawn them)
(they're surprisingly fine with being cut down, at least)
Does the player swimsuit state not natively disable tool use? Trying to create a new bathhouse set up like the vanilla one but I just noticed, though it disables my tools right after changing, I can use my tools again after entering the bath map, do I need to set something up with the map tmx or something?
it looks like your map's internal* name might need to contain the word "bath" (not case sensitive) for it to preserve the "can only walk" flag when you change locations 
that or you could maybe have them walk over another swimsuit tile on the way in
(part of the "reset everything on warp" code for locations looks like this, presumably to keep people from getting stuck in walk mode if they're outside)
if (Game1.CurrentEvent == null && !this.Name.ContainsIgnoreCase("bath"))
{
Game1.player.canOnlyWalk = false;
}```
Dang, that really was it, that would've driven me crazy trying to figure out the cause, thank you 
@tardy adder: start work on Cosmos (7d ago)
AAAAAAAA
I need to chat on this server more.... I need to get to level 25 haha
lolol idk why I'm putting alternate dialogues for male and fem farmer on these dialogue I'm making when I aint even gonna upload this
I found jumping on any opportunity I could to help people with things I understood to be a good way to level up
Though if you're only on during the dead hours that's not as easy
Just gotta engage in the community anywhere really though, plenty of channels to chat in
Haha. I dont chat in Discord much as a whole
Before joining here I didn't really either
Used it for VC for game dev and playing games with friends occasionally, but text chat wasn't a big thing for me
I've re-used the code to dig up artifact spots, only for some reason I'm still rolling library books despite having gotten them all
Pretty much every one of my posts is in here asking for help so it'll take me a while too 
the thing about asking for help is that eventually you learn enough that you can then offer the same help you got to other people later 
But it'll also be a while before I have anything ready to release worth needing the showcase ability for anyway 
(apparently i have sent over 22,000 messages in this server, which doesnt seem right... but apparently is. 99% of them are in this channel though)
(i forgot i could actually verify that and its actually 94%. sorry for lying
)
"worth needing" is a bad way to look at it. Im not going to change the game with my mods, but im proud enough of my Farm and Farmhouse to show it off 🤷♂️
I meant it more as in I've chosen a doozy of a project to work on for someone starting from pretty little CP knowledge and it's gonna be a while before that's done 
And any other miscellaneous projects I think up in the interim are probably gonna be small things like when I asked here yesterday about whether it was possible to make Dust Sprites spawn in more floors
ah I follow
as someone who only started modding stardew from nothing just some odd 6 months ago, to Being Able To Commit Crimes™️ and get yelled at for the obnoxious ways that i go about the harder aspects of modding, it's purely down to your drive to see your own creations come about
i need to catch up apparently, i'm only at 19.6k
I have at LEAST 10
Heey Finally back to my mod work, and I'm having a small problem. How do I get the weather status for current day? I'm doing this now by saving the weatherfForTomorrow from the previous day, which is causing me some trouble.Is there a better way to do this? thx a lot ^ ^
iirc it should be gamelocation.GetWeather
since the weather can be overwritten or be different depending on location context
GetSeason for the weather?
shouldnt respond half asleep 😄
(i dont know the best way off the top of my head either ftr i wasnt just like ignoring the message for 20min. i cant look at the decomp atm to check)
thx I m checking it. And actually I dont need weather status everywhere, I just want to remind player to go fishing when raining(or other thing like this)
Sad
. In fact I'm confused about when to ask beacuse different timezone
Pina Colada edited their message to correct, there is apparently a GameLocation.GetWeather
Game1.isRaining shows when it is raining for the default location context on the current day as far as I can tell
yep but I need other weather too. and idk if Game1.isRaining will cause bug when player waking up on the island
that would be the use of GetWeather id assume which is per location
I'm also not at pc but here's how I get today's weather for the default context, you can probably enter another name like island if that helps
https://github.com/Esca-MMC/FarmTypeManager/blob/998c2a4efe4abdba67e623a25e2a50e13e053d12/FarmTypeManager/Utility/Conditions/CheckExtraConditions.cs#L278
I don't understand. 
thx it helps!
I probably should poke at converting this JA mod. (I'd throw it back to the original modder, but I don't think Kaya's really reachable anymore.)
(probably won't even be able to upload, I think her permissions are set to "do not distribute")
She removed her mods from Nexus is why I suspect it'll just be so methign I make to get rid of JA locally but that'll be it
One fast way to level up is to start helping other people! Helping in here or modded tech support can rack up the levels pretty quickly without risking feeling like you're being spammy. I was over level 50 before I started helping in tech support but I know other people have upped their levels in there. I got mine quickly from helping in here, mostly.
(Not saying you have to do this, obviously! I am just suggesting it in case you don't feel like making chitchat to gain levels, since that was the position I was in when I joined the server - I didn't want to just chat with people I didn't know because it's not my thing.)
@calm nebula The funny thing about your comment on Gold to Titanium is that I've just finished rewriting the mod to do that and support i18n.
(esp because the way it handled tool names doesn't appear to work)
@next plaza Just wanted to say I love your item use trigger actions. This is going to be so helpful
Yeah, the last post on her blog where she moved them is three years old now
I hope she's doing okay at least.
same
hey, how can i check edits of spouserooms ingame if i have no gamesave with unlocked spouserooms yet?
You can use patch export on the spouse room file
I don't remember where the spouse room file is located, but as an example, if you wanted to check an edit to Alex's portraits, you'd do patch export Portraits/Alex in the console
It's also very easy to use debug commands to quickly marry someone. Just debug houseupgrade 2 and then debug marry Alex and you will be married to Alex.
Hey! More of a complex question, but maybe someone has a tip for me: I already have a custom location patched-in using Content Patcher. I now want to add custom "bundles" to this location. These bundles should behave like the normal community center bundles but of course with custom names / required items etc... Of course actually adding events when these bundles are completed will be a another different challenge, but I can deal with that later. When looking at the unpacked "CommunityCenter_Ruins" tilemap, I noticed that they bundles were actually not included in the object layer as I thought they would be. After then looking at the "CommunityCenter" class in the games code, I realized that they were hard-coded at runtime. Now I dont really know how to continue. If I created a custom derivative of "GameLocation" class, containing all the hard-coded bundle code, how could I "connect" that to the patched-in location? Btw Im not a C# beginner, just very inexperienced with XNA / Monogame and of course Stardew Valley's source code.
there's a framework for that
https://www.nexusmods.com/stardewvalley/mods/17265
no need for C# stuff
Tysm! I didnt think there would be a framework for this
(Visit Mount Vapius uses it extensively, if you want a working example)
realizes i don't actually remember how to edit data
uhhhh so yeah how would you go about editing the display names of monsters? 
i know it's edit data but i'm kinda, lost heh
I think because monsters are string models (I can't remember if that's the actual name) you have to use TargetField to get to the last field for each monster which looks to me like it's the display name.
Wiki says it's 14 which is the last one
"Action": "EditData",
"Target": "Data/monsters",
"Fields": {
"Green Slime": {
14: "New Name"
}
}
},```
Should be how you do it 🙂
One day I will learn when TargetField is necessary and when it isn't
ty both for the help! i understand now
(hmm TIL CP can do that for slash-delimited strings)
"Like": ["Abigail", "Alex", "Caroline", "Clint", "Demetrius", "Dwarf", "Elliott", "Emily", "Evelyn", "George", "Gus", "Haley", "Harvey", "Jas", "Jodi", "Kent", "Krobus", "Leah", "Lewis", "Linus", "Marnie", "Maru", "Pam", "Penny", "Pierre", "Robin", "Sam", "Sandy", "Sebastian", "Shane", "Vincent", "Willy", "Wizard"],
Am.. I right in assuming I could just make this a universal like and save myself a lot of time writing out append entries?
mhm! that way, custom npcs will also like the item aswell
Well. Now for no reason I’m going to name every slime in the game “Jeff”
when you only want to edit parts of an entry you need to use fields editing
What is TargetField for then? Because to me that sounds like it is for editing part of an entry?
TargetField is for when you need to edit nested fields without overwriting everything
isn't that what im doing?
Specifically you'll find the best use when editing a list or array

Fields is a shorthand for targetfield
If you use Fields on an array or list it'll overwrite the whole thing
There is also a mumble deliminated str editor
so i shouldn't edit the display name using fields? sorry, am a bit lost, still
You can edit DisplayName with Fields, that's fine
If you wanted to edit ContextTags or something like it, then you would use TargetField
ohh, i see. i think
I know there's other things where you would definitely need a TargetField but I can't remember them off the top of my head
I remember editing fish available in a location needed TargetField
it's when you are two or more layers deep that you need TargetFields
because Fields would just overwrite everything
Hm, I thought you could keep diving down models/objects without any issue
you can keep diving with TargetField yes
I mean with Fields
CP dosnt like that for some reason, no 😦
Would have to find something to test on
Could test it on fish in a given location
So Fields is what you want for editing just one field in data that looks like this
Fish in Locations are in a list though, I know that wouldn't work
And TargetField for one field in data that looks like this?
Like if I wanted to edit the IsRecipe inside Fruit inside 628?
Yeah
Remember back in the day when everything was Slash deliminated strings
Thankfully, no
In that case couldn't you use either? Im learning too, sorry
yeah you can use Fields to modify something like the top level Texture field, since "Wipe the Texture field and just use mine" is okay because it's not a nested field
Whereas "Wipe all of Fruit and use only my entries" is more problematic
The only nested object I can think of right now is CustomFields
which is okay if you are replacing Fruit wholesale, but you don't want to add a new rule to the mayo machine with that
Okay I think I am following that
I guess that's a fun exercise to actually see what I mean, try just adding a new rule to the mayo machine using Fields
(spoiler, you can't)
And the reason you'd use Fields instead of Entries for Texture is because using Entries would overwrite every field in the whole of 628?
A blank emoji as far as I can see 
A plus sign, which I assume means yes lol
so much better 
... so much better now or so much better then
Thank you everyone for helping me to understand 
Oh here we go, Locations DefaultArrivalTile is a nested object
that is a simpler example than machines lol
I don't know, pitting a full band in between each field was kinds weird
(Side note, I feel like 99% of machine data's reputation of being hard is due to it being so nested. It's rather intuitive once you figure out what every field is doing)
The npc model too
Hm, I thought FARM_CAVE returns the type of cave it is, and having the ANY there would make it actually evaluate it
it does indeed wipe the whole rest of the model
no, ANY is if you want to evaluate multiple GSQs and return true if any of them is true
oh but i forgot the quotes that would make it not work at all in the first place
there's only one (FARM_CAVE) here, so you dont need any, and as mentioned you need to wrap it in quotes
GSQs only return true or false
they are not like CP tokens
question about colored items, does it need a second sprite? I'm working on converting and ran across a JA crop with two sprites
and as you acn guess did not find a CP mod to look at how it handleed it
Yes
i think they have both? uncolored for the base non-flavored and a grayscale one for the coloring which is overlaid
It needs a greyscale one on the right
ah-ha
so I would then move every other spreadsheet index up by 1, right?
Yeah, assuming you moved them all around
sort of it looks like this rn:
so the flower is.. index 4, the seed index 6, i think
you can also just check vanilla flowers 
Yep!
Assuming I can count
also dont forget to set the ColorOverlayFromNextIndex field in object data, otherwise the game tints then entire sprite instead of using the overlay
.. I'm glad you said something because I would never have figured that out from looking at tulips and the JA code lol

hi guys, i'm using a farm cave mod that spawns fruits from day 1, i want to stop that, can i get some help? 
to be fair, Charaters/Farmer is where I should've looked first
remove mod? or are you wanting to make the cave different but still have the same effects as vanilla
yup!! i want to keep the mod because of the layout and green house effects, but w vanilla fruit spawn
is this your mod or someone else's?
is kisaa's, already got permission
thay told me to check the CustomField section 
Is it all json?
ye
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.
you can also perhaps download the mod? so we don't have to share kisaa's files here 
Give me a moment to gat back to my computer. I need to let my dogs outside
DOGGIES 
Me: "I should use this mod to learn how to convert stuff"
Also Me: "Maybe I can add animal crossing cosmos variants!!!!"
Scope creep scope creep
Guys I need help 😭 I'm trying to make a mod that adds some shortcuts to frequent player actions, and I need to figure out a way to either forcibly use an item(not a tool, that one I got) or force the use of the "action" key, and I think I'm in the right direction. I found a script to force the activation of a keybind, but I can't figure out how to find out which key is set as the action key for the current player. Is there a class that provides a list of the current keybinds? Am I overthinking this or do I have to think harder?
I can’t help at all but love the pfp that movie is. A masterpiece
I'm finding out the hard way my Unity knowledge isn't as useful as I thought it'd be here ^^'
Yeah unfortunately the only really transferrable skill is any C# you know
Have you already decompiled?
I have done the standard procedure to work with SMAPI, so there's some decompilation of the original game code but not everything, is there more I can do?
Well the regular decompile is good enough for most things, there's the game data but that's not as necessary
That's like the internals for all the things CP handles
Data models and whatnot
Yeah I don't think I need to dig that deep
It's frustrating because I am sooooo close to being able to do what I want
Hmmm, there's Game1.pressActionButton
Man this method does a lot...
SMAPI itself also does have a way to know which button is the action buttion
I saw that, but first I need to have a button to check against right?
I think documented here https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Input
Unfortunately I’m on mobile and that makes this page unreadable
Yeah, you’re right
I forgot it was a method on the button
But internally SMAPI is probably using game code to check that?
You can actually just look at the SMAPI source, it’s open source
button.IsActionButton()
I find navigating SMAPI source confusing sometimes but it should be possible to track that down if you need to
(I don’t think I can find it for you on mobile unfortunately)
Maybe I'm missing something, but I've read this page a few times and it does have a lot on analysing individual buttons and such but not like a list of the existing buttons so you can check which one of those is the action one
I could manually go through each possible keybind but that doesn't seem right hehe
shakes the Content Patcher documentation
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md#tokens <- uses booleans
This one can definitely help me though, eventually I want to figure out a way to do it cleaner
@lilac acorn can I dm you rq?
yeeeee
Hey guys, I'm making a mod that adds a crop with craftable wine and jelly and I'm working on a content.json for it. Can someone take a look at this and tell me if it's okay and maybe what I should add (For the wine+jelly part next since this looks like just the crop)
Look at Game1.options iirc
Something like that
Me: Has made animal crossing style mod
Do the mod, do the mod
Game1.options.actionButton
SMAPI could really use a class documentation website
goddamnit
I freakin' stumbled on this the other day when I was trying to fix my hardware cursor issue
You feel free to document the game
That's why I was looking in Game1 because I was certain I had seen something
Have fun!
Honestly yeah it could be a fun project!
Yeah, could be working for years to disentangle all these classes into understandable documentation
The time will pass anyways :)
Game1 is only 16k lines, ez-pz
And by the time you do something will have changed
sdv 1.7 comes out with a new FPS mode in 2026
I think just like a list of the existing methods and classes that you can search on would already do wonders
wouldn't be too hard to do
Your Data/Crop entry looks wrong; the key has to match the item ID of the seed item
first i need to learn to mod though lmao
ILSPY has an incredible search feature
also they're returning a nonexistent soybean item, while you presumably want the fruit above
I'm sorry I don't speak json just yet - what line does it start on?
48
Oh that's interesting, imma look into that
Ah, "Entries": { I'm not surre what goes here?
whops, I meant 49
Does this mean my file names need underscored to match?
Phase 2 has begun
Hey so, I wanna ping esca to ask a question but it appears they are offline, so my question is;
is it possible to stop things from spawning until a certain day has passed in game using FTM?
your crop is "{{ModId}}Ancient Indifruit", which does not match the seed (which is "{{ModId}}_Ancient Indifruit Seed")
file name doesnt matter
Where the ModID is? Ehhmm... Just he mod unique ID goes there, right?
What did Lewis do to you? <_<
Cuz like the config editor has a option for extra spawn conditions.
see this reply
Or...
methinks me seen your tt post? XD
Oh uhhh.... How do.. wait is it not the
Okay so what do I put there?I don't get what's wrong with that - it's the seed of the ancient Indifruit, right?
I mean, honestly, if Lewis spends all of his spare income on it I don't care he has a ego problem. 😄
make them identical
if you add a new seed item named "{{ModId}}_Ancient_Indifruit_Seed" in Data/Objects, your crop in Data/Crops must also be "{{ModId}}_Ancient_Indifruit_Seed"
Okay so they both need to be names "Ancient Indifruit Seed"
yes (also as mentioned use underscores instead of spaces)
It seems a bit far fetched to assume that his legitimate mayoral salary could cover the cost of that statue, does it not? Is it not clear CA implies that this statue is funded by 'ill-gotten gains'?
is it? I feel vaguely CA's implications are meant to let people to decide.
your object entry in line 31 is still using spaces
fix that and I think you should be good
I do think, though, that Lewis is more of a target tha nPierre
definitely test in game
because you do get the feeling Lewis is testing the boundaries a lot more lol
PIerre's just being shady. c.c
Fixed!
of course it's meant to let people decide, that's what an implication is, after all.
Now I want to create the wine and jelly with custom sprites, is there a reference for those? I'm not sure how to do them
figured out this issue
do you just want to do whatever the base game does with its apple/oranges/etc. wines and jellies
if yes then you dont have to do anything
No I want to have custom sprites with custom buffs
those are automatically made for every fruit in the game
ah okay, then you add new entries to Data/Objects
In my content.json?
yes, in the same place you're adding the seeds and fruit
you'd also need to modify the game's machine rules to output those custom items instead of the generic fruit/wines
but we'll get to that later
Hmmm, okay
for now modify the Entries array of the Data/Objects entry to add two more entries, one for the fruit and one for the wine
I'm looking for the page with all the entries to see what I have to put here
Could someone please update the Skill Prestige compatibility? Its broken because of the latest SpaceCore update, and I don't have a GitHub account.
Thanks in advance.
I don't know how to do this, is there a guide or example for this anyone has?
see how your code in Entries has two blocks that look like "{{ModId}}_ItemId": { code that details what the item does }, one for the fruit and one for the seed
just add two more like that
https://smapi.io/json/content-patcher/5f751fbfc78446b68f43c5a4c01a9037 Like this? (haven't corrected any info - just checking format)
^
yep, looks fine to me
now just fill in the relevant stuff (id, display name, type, category, etc.)
Okay so I'm making a wine and a jelly so for "Type" is also "Basic" for both and their categories are the Item IDs for basic wine and basic jelly?
But I add their edibility and buffs?
Yes their type is basic but their category should be the nunber for artisan goods
Artisan goods is -26, right?
Silly question. If I wanted to make a farm map that has more areas of the farm unlock as you accomplish different feats and tasks. Would the best way to do this be to pair it with unlockable bundles? Or is there a different approach others would recommend
Ex 8 heart friendship with Linus unlocks a foraging area. Etc.
off the top of my head i think so
stuff like "8 heart with Linus unlocks new area" can be done with map patches and a When condition
(Now I'm thinking about what happens when you lose hearts)
UB is for if you want "completing a bundle unlocks a new area", which can then be done with, you guess it, map patches with a When condition
Does anyone know offhand how to edit fishing chest loot pools, if we can?
Item Extension supports that
Ah thank you
he comes to your farm and reblocks it himself
It won’t undo the event. Just like Leah won’t take her statue back if you lose hearts
a more seamless approach is probably a 8-heart event that sets a flag to unlock it
yeah
Like the idea to me is Linus likes you enough he shows you a secret foraging area he uses to find food.
(yeah its perfectly possible to do that, you just have to pay attention to how you set up the When checks)
I have zero idea how to do checks like that yet. So time to go down a rabbit hole haha.
Me: "Oh, there's a giant crop here."
looks at how 6480 did it Me: "Okay. I see JA just.. handled this somehow. o.o."
JA incorporated giant crops sometime around 2021 or 2022
maybe 2022
since I never used that feature
yeah, I ran a cross it since I'm doing the crops first in Korea Blossom and
suddenly "giant.png" appeared!
but there's no entries in the crop.json or object.json. 😄
Yup. It just needed thr giant.png
Tbh 1.6 giants are far more like
Flexible
I read a book on mushrooms and now would like someone to make an accurate mushrooms mod
(I'm kidding.)
(Irl truffle farming sounds less than fun.)
i kinda wish i had a GSQ to check trees planted in a location to get white truffle
Do you want one?
would it be complex/heavy in term of performance?
ok! well, why not, if you get some extra free time (pls keep some free free time)
at least SDV/smapi should be globally more stable now
Last time I was doing Actual Modding stuff I was peeping into the wonderful world of poking with the netevents
(In before 1.7 drops tomorrow)
(Jkjkjk jk)
(ahah 😄 )
*SDV 1.7 drops, making everything 3D
that'd be the worst outcome, because everyone would learn..
Blender.
More seriously.. I'm actually happy tht GSQ stuff is a lot more prevalant
I have a doubt, is there any technical impediment about why you can't create mods that add floor designs to mines (both normal mines and desert mines)? I search and nobody has done something like this
it's not technically impossible, i remember i saw such mods, but i think possibly youi'll need C# for the spawning to adjust?
is there such thing as mods that dont require smapi?
Additional Mine Maps used to exist, dunno if anyones updated it for 1.6
technically yes, but they aren't advised as they are fragile and limited
I know you can create custom maps for new mines, but I haven't seen anyone adding designs to existing mines.
okay yes additional mine maps update does exist by mouahrara... though not sure if it's broken again inbetween 1.6 release and now
I was thinking you might want to look at Graveyard
it changes some minelevels
(although it might just be using an existing one, now that I think about it..)
https://github.com/mouahrara/aedenthorn/blob/master/README.md#AdditionalMineMaps ig you can check to see if this works anymore? though it doesn't look like there were ever any content packs made for it aside from a template-ish one
it might still work, it only has two very simple prefix patches
In a short change of subject… If I wanted to increase the forage that spawns on my farm. Do I need to individually add the items and set the spawn rates. Or is there a generic “global” map setting I can change


