#making-mods-general
1 messages · Page 17 of 1
starting small is highly recommended. adding an NPC is a big job (it's not much more difficult, but it takes a lot of effort)
ohh ok
so i guess making a few animals shouldnt be hard
theres 2 other submods doing that exact thing so ill just look and see what they have done
another excellent strategy
this actually works it seems 😄
__instance is FishingRod despite it being WateringCan as static type
by any chance do you know of any guides to making wildlife (like birds and squirrels)
so having an issue with two modded things not showing up in game. first, the island farm obelisk which is in buildings. none of my other building mods seemed to have this issue. so idk why its not working.
then i have the greenhouse interior not working either. its in maps so maybe i might need some kind of json to go with it but i dont think so.
maybe ive made a tiny typo but i looked over it a couple times and i dont see anything wrong with it
do you get any errors?
can you please send your whole file?
you've ruled out other mods interfering?
etc
yeah and im getting an error but its unrelated and only just noticed it. u want my whole content json??
yes.
ok
and send your log too (you might think the error is unrelated, but someone else may think it is related, i have no way of knowing without more info)
its big
thats what the json sharing website is for
Log Info: SMAPI 4.0.8 with SDV 1.6.8 build 24119 on Microsoft Windows 10 Home, with 18 C# mods and 12 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

greenhouse interior is not used
i don't, sorry, but there's a framework called Custom Companions that can do things like that. worth checking out (i don't know how to use it)
i just need to figure out where it's suppose to go
wow ty for checking
ahh
its suppose to go in maps
greenhouseinterior consists of old unused assets, i think the actual tiles you want are somewhere on the town indoors tilesheet or something
not sure
Hello. Sorry, but I am seeking advice.
Is this the right place for questions and discussion regarding the content I will create and actually publish in the translated data that has not yet been created?
if it's translation to japanese (or any other non english language) then this server won't be very helpful
for translation to english you can ask here yes, or perhaps #1263202101803352106
Oh, it is not a question about the creation of the data. We were able to successfully resolve the question we asked today. Thank you very much!
It is about the method of distribution. I asked for opinions in the Japanese community for a while, and I was slandered by people who have never created a mod before about how to distribute it.
I am shocked and distressed.
can you link the mod you are translating?
Oh, the translation data is not yet available to the public.
I have created about 20 translation data, but only one has been published on NexusMOD. The rest have not been published yet. Or about 10 cases I entrusted the data to the creator.
Some producers do not want to incorporate translated data into the original data. In such cases, I publish them individually.
In response to that
“It is very annoying to release the translation data individually to NexusMOD because the original new mod cannot be found!”
“Distributing them on private sites (other than NexusMOD, for example) makes it hard to find them!
I was told, “It's very annoying!
so assuming you have your translation mod set up to require the original mod in order to work at all, there's no "redistribution of assets", since you are only distributing the translation files you made
I am a little concerned about what I should do about this.
I am Japanese, so I only distribute translated data with permission so that Japanese users can enjoy it more.
However, I did not expect to be called “annoying” for using a new page of translated data in NexusMOD.
Is this an opinion that is not often expressed in other countries?
nexus mod users are random people on the internet, some of whom are quite dumb and entitled
it's not your fault
Hi, I've been away for a while, and I'd like to learn how to make mods with C#, but I can't seem to find a website that I think had small examples/projects to learn from.
!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.
the link for C# modding has a tutorial with a sample mod
the purpose of posting the translation as a separate mod that require the original mod to work is so that the original author can keep control over their assets
Okay...thanks. I am relieved.
I didn't expect to be slandered by the same Japanese people, and I lost confidence and cried a little.
Your words cheered me up. I will continue to do so.
I've already read that one, but wasn't there another website with more comprehensive examples? Sorry for the confusion if that's not the case.
oh sorry that was different convo
i think it's best if you have a mod idea to try and make
Okay, I wanted to try with tutorials because I barely know anything about C#, but I'll give it a shot. Thank you so much!
I am currently making MAP data mods and accessory mods in addition to translation data. That's just me doing my best to make it as enjoyable as possible for those who play. I think the people who are making translation data feel the same way.
I'll come back to ask about my mods the next time we talk. Thanks.
Also, to look at the code of other mods and get an idea of how it's done.
just realised that some of the shane's arms differ in width on original sprites. never noticed it before.
1st is from clothing therapy. 2nd is regular.
never paid attention to it when drawing my sprites
interesting
i might need to redraw my beach sprites then. to keep things consistent among all sprites.
Hey, don't take it personally, a lot of authors prefer not to include translations directly with their own mods because it becomes a blocker to further work. If we add new strings, do we need to reach out to every translator to get new translations? Do we release the new version without proper translations and have users complain about broken strings? Etc. We also are generally just programmers, not linguists, and therefore can't validate the translations, if they preserve the original tone, if they're really appropriate for the locale and not just the language, etc.
So sometimes we'd rather not accept PRs, but we do still appreciate people adding translations as their own mods, and Nexus has translations pretty tightly coupled with the original mods so they actually show up on the translated mod's page as well. There's really no downside to doing it that way, except I guess it's a bit of extra work for the translator to add their own Nexus mod (but not a ton of work really).
I definitely wouldn't call a translation PR "annoying" and that was rude of whomever you spoke to, just explaining how this often works.
I thought they were being told by a mod user that they were annoying for posting their translation separately on Nexus because the mod user thought it was too much work to then have to find the original mod themselves.
The OP said only 1 translation mod was published separately, and 10 cases were sent directly to the mod author.
I guess the author complained (weird) but sounds like an isolated incident.
If you really want to cover all your bases, you can just ask them which they'd prefer (post on their mod, contact on Discord, etc.).
my reading of their post is that the user complained. mod authors are fine
Yes, I understand that as well. It would be a burden on the distributor, especially if it is a mod that will continue to be updated in the future or if there is no immediate contact with the translation provider. If it is difficult to incorporate, it would be ideal to distribute them individually, and I hope that people who understand that and can work on them will update them. However, I explained that in a topic on the Japanese Stardew Valley forum, and the conversation has escalated to the point where I am being portrayed as the bad guy. Even now...
I found it very difficult to get users to understand the system if they don't understand it. At least I don't visit that forum community anymore.
Earlier they said they were "slandered by users who never created a mod"
So I read it as users complaining, not authors
Well, I won't be able to look at the context or understand what they're saying, but I believe those users are incorrect. Translations are a normal and expected part of the Nexus release process. They show up directly on the original mod page.
Sorry. I don't mean to argue here either, but rather, “I will continue to publish individually on NexusMOD,” “I will provide data to mod authors,” “Should I care about this? Or not?” Do you have a solution to the problem, such as? I posted.
Like, here is one that someone did. It shows up on my page, not the translation page.
So if these users are saying that translation mods are "harder to find", then that is nonsense and you should ignore them.
If you want to do one thing and only one thing, I would suggest you publish translation mods individually on Nexus. If you're worried about offending some author, then you can ask them first if they'd prefer to include them directly in their mod (most of us will not).
You are not a bad guy. You are a wonderful person trying to help other people have access to Japanese translations of content so they can access mods. Anyone who is rude to you about how you do that is not worth your time ❤️
(And for the record, I don't think any of us perceived you as argumentative; just trying to understand how the system works)
I know it's just a partial opinion, but “Is there any information about the mod that you would like to see translated?” I know this is a partial opinion, but here is the response to my question to the community. I know there is some Japanese slang, so some of the sentences may be translated incorrectly.
I want to reiterate that it is important for me to focus on the opinions I have received here.
They can just filter out translation tag on nexus 
Oh, I see what they're saying. Not that it's hard to find your translation, but essentially "there are too many translations and it buries the new mods". But it's still a ridiculous complaint, per chu above. ^
I understand that the game itself, the users who play it, the original creators who publish it, and the supporters who make the translated data are all users who make it fun and exciting.
However, I have been in the position of creating both translated data and original mods, and I feel that a community cannot exist if there are only users who complain about the creators.
If I go to the Nexus page for SDV right now, out of 20 new mods, 2 are translations. I don't think there's a problem.
The users might prefer that a translation be integrated into the original mod page but that is not their decision to make.
Yes, precisely. It's good to get feedback from users on how a mod plays, but we do not take advice from users on how to build or release them, lol
I would personally decide that those users (the ones complaining about you) are not people I'm providing translations for. So too bad if they're unhappy. Plenty of other people will be grateful.
I suppose I understand the complaint about there being too many new mods, like, if you're really obsessed with modding the game and constantly monitoring for new mods and trying out every single one, but those are going to be a very tiny minority of users.
And that's not just translations, there are many actual mod authors who spam trifling 1-line mods.
Of course, I am also a user of NexusMOD, as I am in the position of being a playing user, and I agree with some of their opinions. Just a little!
But I have never complained about the well-meaning mod authors and collaborators.
So I hope to remain a good collaborator and playing user.
(Gratitude matters a lot to me. If someone who expresses gratitude has a suggestion, I will listen to it. No gratitude = I kick them into the sun.)
I really feel more confident now that I have the input of the community here. Thank you.
I want to express my heartfelt thanks to all of you.
I think you have nothing to worry about. Translations are valuable to authors and users. Publishing a translation mod on Nexus is the normal process. Sometimes you can also submit them through PRs, but mod authors generally prefer you to publish your own translation and it's better to listen to the other authors here, not users.
I'm in the camp of accept translations as PR but that's cus I'm never making mod with actual creative writing in it 
TBH it matters rather less to me. It's nice to be appreciated, of course. But whether or not I will act on a suggestion is largely a question of whether it's (a) interesting to me and (b) reasonably practical to do.
If someone says "your mod blows chunks, but it would be halfway usable if it did X or Y differently, etc." then I wouldn't immediately dismiss them as a crackpot, just evaluate whether what they're saying makes sense if I take off my dev hat and put on my gamer hat.
(That being said, 9 out of 10 user suggestions are crap, and virtually no other profession takes audience suggestions. Can you imagine an artist, or a musician, or even an accountant acting on a client/spectator telling them how to do their craft?)
Is Nexus being crazy slow and unreliable for anyone else right now? Like 30 second page loads and Cloudflare gateway errors? (Edit: ok yeah, their status page says "degraded performance")
i hate global fade and global fadetoclear commands, they never looks nice
Why, because of the callback?
because i never manage to get something smooth, i want a fade to black, some time in black, then slowly unfade, and what i got usually is fade to black, stay black a bit, then sudden unblack then weird unfade
yeah I noticed that happening occasionally
What exactly is the $h
I noticed it in a lot of dialogue files and on the wiki, but no explanation of it
the opposite of my current mood
updated UBs overview menu for the book bundles and changed the layout to be more centered when there is no description 
it's explained, just not on one big block
it's explained that $ is the code for portrait, and then that portraits accept some letter value or some index value
Oh! So basically I would put $ followed by the number of the portrait I want for that dialogue?
I know that there is a workaround for this, where you fade to black, then change the viewport to eg. -500 -500, fade back in and then change the viewport back to where it should be
Which page is this...I have so many open I'm not even sure anymore
It's the dialogue page: https://stardewvalleywiki.com/Modding:Dialogue#Portrait_commands
Sorry for embed everyone I can't remove it on mobile
maybe i'll try that
thanks 🙂
(posting the link between one < and one > should do the trick)
any idea how I would tell a fruit tree to grow a different item on certain days of the season?
I tried creating a whole new tree entry to swap based on day logic but realized that was far too much 🤣
I just want cherry trees to grow harvestable blossoms instead of cherries early in the season and have already created the new object
you can insert a new entry in the fruit tree's Fruit array
something like ItemId equals your cherry blossom item with Condition on the days you want
and use MoveEntries to push your entry to the top so the game checks it before the cherry fruit
ah ok that must be the bit I was missing
I had this (without the conditional bit yet):
{
"Action": "EditData",
"Target": "Data/FruitTrees",
"Entries": {
"628": {
"Fruit": [
{
"ItemId": "ShipsAhoy_CherryBlossom"
}
]
}
}
},
but it was still loading cherries
your patch probably isn't loading since that would break the entire fruit tree
since you're replacing the entire entry
It only works because you don't actually touch __instance iirc
If you do it should segfault
it's probably not a literal segfault but some other error that's functionally similar
probably AccessViolationException or EngineExecutionException
although harmony should forbid you from creating __instance patches to static methods in the first place 🤔
Why does the SMAPI use a custom harmony build btw?
That's what it says
according to the readme on the linked fork, this is why
This fork is identical to the official version, with two changes:
Generated method names include the patching Harmony IDs to help troubleshoot error logs: // with original Harmony at StardewValley.Farm.resetLocalState_Patch1(Object ) // with fork at StardewValley.Farm.resetLocalState_PatchedBy<Pathoschild.SmallBeachFarm>(Object )The 0Harmony.dll no longer has Mono.Cecil and MonoMod merged into it. This fixes some of their types being available to mods, and avoids compile errors in SMAPI since it uses Mono.Cecil too.
which makes sense
Yeah, I figured it had something to do with dependencies
It does not
I mean harmony is definitely unsafe yes 😛
immediate window worked
but yea I assume if I actually call a func that doesnt exist
I wonder if pathos has any plans of updating harmony at some point
1.6 would have been the opportunity to do that
Is it possible to use a token in a content patcher edit-data target?
Yeah, it's a major breaking change
If there is something you want you can make the argument to Pathos
that's commonly used to make sprites seasonal
so if a mod requires BFAV, JA, and PFM, which converter should be used on it?
!converters
A lot of converter tools have been made by helpful members of the community to update outdated mods or convert existing mods to modern or alternative frameworks, and for 1.6. Here's a list:
- Convert XNB mods to Content Patcher
- Convert pants/skirt spritesheets to Fashion Sense
- Convert Custom Furniture mods to DGA/1.6 Content Patcher
- Convert visual Content Patcher mods to Alternative Textures
- Convert BFAV mods to work with 1.6 Content Patcher
- Convert TMXLoader mods to 1.6 Content Patcher
- Convert Custom Music mods to 1.6 Content Patcher
- Convert Shop Tile Framework mods to 1.6 Content Patcher
- Convert hair spritesheets and JSON Assets shirts & hats to Fashion Sense
- Convert regular Content Patcher to i18n format
- Convert JSON Assets to Content Patcher
- Convert fish data from field names to slash delimited values
- Convert markdown text to Nexus' bbcode
- Convert Custom Ore Nodes and Custom Resource Clumps mods to Item Extensions Framework
- Convert Content Patcher Animations to SpaceCore
- Convert More than Necessary to Content Patcher
- Convert SAAT to Content Patcher
Yes, but the mod I'm talking about requires all three I listed.
I sent two messages
I thought pfm was being retired
last updated in may, which is more recent than march
I thought that was for the FromFile, not the target?
whats the breaking change?
oh yea i misread apologies
You can still do it though
Frankly, linkoid, if you want a test case that gets pretty nutty about what you can do in CP, use that
I preferred to just Harmony patch my Harmony in Nickel, instead of screwing around with a fork
JA one is far beyond me. Welp
you have the full command with placeholders
I'm trying to make a clean and simple example content.yamlthat shows best-practice syntax keeping in mind issues users might run into. In this instance, anything users might want to use a token in, I'm wrapping in quotes. I'm trying to decide if Target: Data/Objects should be wrapped in quotes or not.
Would there ever be a token at the beginning of a target though?
Sure!
In the same mod I have a target that changes depending on what other mods are installed
To make my life easier it js assigned to a dynamic token
Sounds like an advance use case
oh yea i made a token for the name of my custom asset
so that if i ever change it no one has to know
Hmmm
@desert vapor did y'all make any changes to monogame in 1.6.9?
Figured I might as well ask.
Maybe I should weight it instead as: Would using quotes here lead to more people having syntax errors due to missing quotes, or lead to more people confused why there is a red line under their unquoted string that starts with {{
I thought there was no MonoGame update in years
So I don't think it's levels personally
But figured i should ask
Also stardew has it's own monogame fork anyways
Yes
Oh?
Actually, a lot
Any change to how textures...oh
This one is out of my wheelhouse though, textures were changed slightly by the mobile team
To support power of two or something
Worth testing if it works on 1.6.8 monogame fix beta though
Once I have a test group I can start testing
Until then I can toss numbers info wolframalpha lol
If it works there, then the issue will be with the new Monogame stuff from mobile
Thank you!
We are trying as much as possible to keep the codebases for the two of them the same
Which also unfortunately broke modded audio recently, but I think that should be fixed in the current beta?
Anyhow, modding is where I'd expect the new Monogame changes to cause issues, so please let me know if there's anything even hinting at it being a MG issue
I fucking love object disposed errors, don't you?
(The element count not matching is my hint it's either the image changing size or a monogame issue.)
The last time I looked at setdata/getdata was about six months ago
But I still mostly remember
A proper programming language would make ownership clear...
gets kicked out of the room
Alright, now I've got another question: how long would you say it would be before a mod could be considered 100% abandoned and able to be taken over, if ever? We're talking no sign of the creator, they haven't been on the nexus is over a year, and so on.
If permissions do not exist or do not explicitly state that you can reuse/redistribute assets, then you pretty much cannot/should not take over the mod for public distribution without direct permission from the original mod author.
Personal edits for personal use are a bit of a grey area, depending.
Where is the grey area for personal use?
mod authors can't really stop someone from editing local files on their own computer
(Microsoft might try though)
So if there are no permissions or the permissions do not allow modification, that means that modification for personal use is also forbidden but the grey comes in because it can't be policed in any way?
(I am specifically talking about mods here, not paid products with warranties or anything.)
I am also curious if this is a legal thing, a website-specific rules thing (for Nexus) or just an ethical thing.
Mostly because I tend to encourage people to edit things for personal use and I want to know if I am breaking any laws or rules doing so xD
That's a very gray area question
Even licenses are not strictly the same in every jurisdiction
Disclaimer: I am not a lawyer, however, in the US, it is my understanding that any creative work is subject to copyright law, and that upon conception a work is someone's intellectual property will all rights reserved unless otherwise stated
Generally speaking, no one will be taken to court for modifying something locally for personal use, as long as it is not redistributed in any way
One exception would be if somehow, personal modifications could interfere with a service working as intended
i.e. if I modify, idk, SpaceCore locally so that I crash the game and/or exploit someone else when I connect to them in multiplayer
But generally speaking, the "no derivatives" clause of a license tends to only apply to distribution
that might come up more with server-client game like minecraft
Yeah, for instance, Minecraft hacked clients yeah
Thanks Myuu
In technicality, I think that's more in violation of Terms of Service/End User License Agreements, which aren't legally binding persay
So generally speaking, when it comes to intellectual property, personal use modification is, in practice, 100% okay
idk exactly what the law says about it, but it is just very hard to police in any case
hello
hey 🙂
hello!
I'm trying to find some bit of code
i'm working on some dialogues
I can't find it.
i can write them
I'm looking for the code that switches the players sprite from swimming into the default walking sprite.
I already looked in farmer.cs but it doesn't match but idk...
I'm wondering if someone can help me figure out why this isn't working:
// swap cherry blossoms to fruit tree for cherries in the first few days of spring
{
"Action": "EditData",
"Target": "Data/FruitTrees",
"TargetField": [ "628", "[LocalizedText Strings\Objects:Cherry_Name]", "Spring", "Fruit","Default"],
"Entries": {
"ItemId": "ShipsAhoy_CherryBlossom"
},
"When": {
"Season": "Spring",
"Day": "1",
"Day": "2",
"Day": "3"
}
},
you want "Day": "1, 2, 3" instead of separate Day entries
{
"LogName": "Orange Trees Produces",
"Action": "EditData",
"Target": "Data/FruitTrees",
"TargetField": [
"630",
"Fruit"
],
"Entries": {
"Lumisteria.MtVapius_OrangeBlossom": {
"Season": "spring",
"Chance": 0.3,
"Id": "Lumisteria.MtVapius_OrangeBlossom",
"ItemId": "(O)Lumisteria.MtVapius_OrangeBlossom",
"StackModifiers": [
{
"Id": "Lumisteria.MtVapius_OutdoorDouble",
"Condition": "LOCATION_IS_OUTDOORS Target, RANDOM .3, !LOCATION_CONTEXT Target Island",
"Modification": "Add",
"Amount": 1.0,
},
],
"StackModifierMode": "Stack",
}
}
},
{
"LogName": "Orange Trees Summer Produces",
"Action": "EditData",
"Target": "Data/FruitTrees",
"TargetField": [
"630",
"Fruit",
"Default"
],
"Entries": {
"Season": "summer"
}
},
{
"LogName": "Orange Trees Season",
"Action": "EditData",
"Target": "Data/FruitTrees",
"Fields": {
"630": {
"Seasons": [
"spring",
"summer"
]
}
}
},```
How i do it in VMV for orange blossom
hey, can somebody help me out here? one person who uses my mod found a bug where they can't smelt anything other than fire quartz, and i think i did something wrong with the code, i'm just not sure how to fix it. i'll upload the .json to smapi.io in a minute.
(in technical terms, repeating an identical key in one object, like with the multiple Days, is not valid JSON, so the results are undefined. at any rate, at most one of them will have worked)
first is to add the product i want in the tree, second is to make the orange a summer product, third is that so the tree produce in spring outside of greenhouse in addition of summer
yeah you are likely replacing the whole machine data
(also I can't imagine you want to be targeting the localized text token in your target field)
you need to target field
Farmer.changeOutOfSwimSuit ?
oh i didn't even see that. jumped immediately to duplicate keys 😅
alright, let me read up on how to do that, as i'm a little bit rusty with that
Regrettably, I return once more. The JA to Conpat converter says it's looking for a textures folder? The mod I'm trying to sort out just has "assets"?
okay, this is a little confusing, but i'll do my best.
it's NOT that different from what you have
made the folder and now the script just runs, throws no errors, and closes. No new files
basically, you need to add a page to a book, rather than replace the whole book by your page
so you need to open the book first
it's what target field do
"Target": "Data/Machines",
"TargetField": [
"(BC)20",
"OutputRules"
],
"Entries": {
this part
Yeah I have something like that already implemented in my code. But the farmer is not changedout of the swimming state. They are changed out of the farmer clothes however. They still are shown swimming with half the sprite cut off and slowed.
cheers, I'll try it out. Thank you!
hmmm stopSwimming in event.cs?
StardewValley/GameLocation.cs
feel free to return with a fresh json if it doesn't work
case "PoolEntrance":
if (!Game1.player.swimming)
{
Game1.player.swimTimer = 800;
Game1.player.swimming.Value = true;
Game1.player.position.Y += 16f;
Game1.player.yVelocity = -8f;
playSound("pullItemFromWater");
Game1.multiplayer.broadcastSprites(this, new TemporaryAnimatedSprite(27, 100f, 4, 0, new Vector2(Game1.player.Position.X, Game1.player.StandingPixel.Y - 40), flicker: false, flipped: false)
{
layerDepth = 1f,
motion = new Vector2(0f, 2f)
});
}
else
{
Game1.player.jump();
Game1.player.swimTimer = 800;
Game1.player.position.X = playerStandingPosition.X * 64f;
playSound("pullItemFromWater");
Game1.player.yVelocity = 8f;
Game1.player.swimming.Value = false;
}
Game1.player.noMovementPause = 500;
break;
case "ChangeIntoSwimsuit":
Game1.player.changeIntoSwimsuit();
break;
case "ChangeOutOfSwimsuit":
Game1.player.changeOutOfSwimSuit();
break;
this is the pool touch action handler
for the map thing
tbh maybe u should just do it this way
put a change into/out of swimsuit tile in your map
and not use bespoke C#
got it.🫡
the issue occurs when the player is defeated when swimming that's why some extra code is required.
congrats!
oh ok
anyone got a sec to help an idiot with ja2conpat?
did you open the terminal in its folder
Yes.
Attempting to run it makes it ask for a folder outside of its directory. Making that folder causes attempts to run it to just do nothing
whats the exact error
and then if I create that folder, we get this:
just does nothing, produces no files in either place.
https://www.nexusmods.com/stardewvalley/mods/4487?tab=description
this one, which I already ran through BFAV to conpat, but it has aspects that require JA, which I"m trying to cure it of. I have no intention of distributing this as the author is not on the internet anymore, near as I can tell. No way of reaching them
A while back I made an add-on for it that adjusts them to use the recycler via PFM to remove the dependency on Trent's machine, since his machine was deprecated.
my little ghetto add-on is here, for reference https://www.nexusmods.com/stardewvalley/mods/7832
is there anything in the output folder
Thank you for sharing this! I've tried swapping in my cherryblossom item where you have orange blossom but it's still not working. What does this part mean: "Lumisteria.MtVapius_OutdoorDouble"
I tell you, a lot of frustration would be saved for the converters if they were just like, bat files that had requirements for you to install python
it's just the id of the stack modifier
you'll need to provide a fresh json and maybe a patch export
!patchexport
A patch export makes a copy of specific stuff in your content folder so you can see what changes have been applied.
- Load up a save (with Content Patcher installed)
- Type
patch export <FILEPATHOFTHING>in the SMAPI console and hit return - Look in your
patch exportfolder in the game folder for the relevant json file or image - If it's a json file, you can share it via smapi.io/json. If it's an image you should just be able to look at it.
portable python is a pain to use
hence "install these or the file won't work"
Granted I"m not much of a coder, more of an outdated website builder wit a mildly unhealthy obsession over a few obsolete dead mods
you could find a CP animal mod and remake this fox mod if you want
? What is this for?
to see if your edits are applied
Hadn't thought of that. wouldn't that require coding?
json not really coding
sNaKeCaSe
okay jsons I can do as long as I don't have to write them from scratch
i think it's similar level of coding as writing html/css 
just adding it as a requirement is credit enough, i dont mind, but i appreciate it either way
dont be afraid to ping me if you have any questions/get confused!! (but ofc it does seem like our timezones are a bit misaligned lol. but i dont mind bein pinged ever, no worries)
tones of examples here
css is what dreamweaver and online web design forums are for lol
I'm pretty dumb and I write my css by hand lol
this occurs when I am defeated when I'm swimming
ah yes become voodoo
think that trick would work for this one as well? https://www.nexusmods.com/stardewvalley/mods/4846?tab=description
how did the uh, previous thought from a few days ago, go? the idea of copying passoutdeath into swimmingpassout
(tbf like half of web devs would agree with this. the other half would bug you abt using tailwind/bootstrap/materialui/etc)
I know there's a conpat version but it's a replacer and I ain't about that life
doable
basically if you don't see a .dll and it's all jsons you're free game
conpat
I'm trying to catch up on the chat like "what does making ja compat mean"
I have no context either, but python and suffering
I kinda lied we like sass over here
- thats patch summary not patch export and
- she wants you to look at/send the exported json file
could maybe just use this mod instead https://www.nexusmods.com/stardewvalley/mods/22806
so type patch export Data/FruitTrees in your smapi window for example and then put the file in smapi.io/json
ill give you half points for that one. i guess thats not technically writing it all by hand
sorry, I'm not understanding this (still pretty new at it all); I got the Data_FruitTrees.json file but I don't know what you mean by put the file in smapi.io/json
what's the best way to do OR condition in CP When fields? specifically I need a patch to apply if a config field is set OR a mod is installed (it's complicated)
go to the website smapi.io/json, put yhe new file thete, send the link here, also put your content.json or code file on that website and also send the link
also im carrying multiple chemicals so i cant help further
dynamic token, maybe?
query
i alwayus forget Query exists
i prefer dynamic tokens because i can understand them
didn't know they existed to begin with! thanks both, I'll take a look
but query are great if you like them
Why thank you (jumps out of the convo) 
ok so your patch is appled, prof twizz
but you also made the only season of the cherry tree spring
what was the issue you had in game?
my cherry tree still grows cherries, not cherry blossoms (an item you can pick)
I have created a whole item meant to fall off the tree instead of cherries
ok, you didn't do anything to limit cherry to summer, so it'll grow both with likely equal chance for both
how many days did you test?
I recall fruit trees short circuit and pick the first eligible item?
What do you mean about limiting cherries to summer? They grow in spring?
so you have to:
- Move your entry to the top
- Add a condition field to your entry
sorry, having a sheku moment here
how do I tell it my item is the priority?
hmm, do they?
MoveEntries
I tried finding the page for that in content patcher but couldn't figure out the syntax at all
yeah, if my reading of the code is correct
hmm
i thought i got orange blossom in the greenhouse before, but maybe i'm misremembering
ok! then maybe i need to move entry too one day (but at least its less urgent with the way it works outdoor)
Do I perhaps need both Entries and MoveEntries then?
yes
I saw that I just couldn't figure out how to move it correctly
am I moving cherry blossoms or the tree entry?
because when I tried them it said "fruittrees isn't an ordered list"
put something like this
"MoveEntries": [
{ "ID": "ShipsAhoy_CherryBlossom", "BeforeID": "Default" },
]
in the same change block as where you added your Cherry Blossom Entry
sorry, same block where you added your cherry blossom drop to the cherry tree in Data/Fruits
{
"LogName": "Cherry Trees Produces",
"Action": "EditData",
"Target": "Data/FruitTrees",
"TargetField": [
"628",
"Fruit"
],
"Entries": {
"ShipsAhoy_CherryBlossom": {
"Season": "spring",
"Chance": 1,
"Id": "default",
"ItemId": "(O)ShipsAhoy_CherryBlossom",
"MoveEntries": [
{
"ID": "ShipsAhoy_CherryBlossom",
"BeforeID": "Default"
}
],
It's still populating cherries, not cherry blossoms, I'm just not sure which part is wrong
MoveEntriesmust be on the same level asEntries. put it below- Set
Idin yourShipsAhoy_CherryBlossomblock to also beShipsAhoy_CherryBlossom.
fix that and it should be good to go!
well it's now at the top of the list
I checked patch export
but in the game itself I still see cherries popping up on my tree
not the blossom
did you test over multiple days?
can you post the updated patch export?
does tree data persist in the tree like crop data does
OH IT WORKS
i know the texture doesnt persist but you--nvm
guess not haha
one last thing, did you add a condition/chance to the cherry blossom entry?
if not then it'd produce only cherry blossoms, and we wouldn't want that
wait it's dropping in duplicates 🤣
oh I'm about to add the condition, I just wanted to make sure it worked at all first
multiproduce aka another thing I said I wouldn't do because it's hard
(it was hard)
you're wild
that means a lot coming from you lol
oh this is sooo cool selph!!!
(credits to Lumi's Ewe Milk item from Mt Vapius for being the test subject. this is part of an upcoming mod solely to make ducks drop both feathers and eggs because I was miffed I'd stop getting duck eggs I don't get duck eggs if they drop feathers)
(and also maybe an immersive manure thing idk)
does anyone know how I could reskin the slime in the secret woods as pigs and make them drop a custom item?
you can retexture them but not get rid of the colors
hmm, since my initial wish was to have them have both products, if you still have the code on hand i can look itno adding it at some point
so youd have green and blue pigs in the best case scenario
Dont know if you can change the item drops without C# though
also i wonder if i'd like to have them give some fancy wool
yes, you can append the drop list, with an update rate + location condition this may work
but it's a bit advanced
I can't do C#, nobody's been able to figure out what's wrong with my Visual Studio config
how would I go about changing the texture though? I can't figure out what that specific slime would be called/referred to if I wanted to use EditImage
OH conditional
if in X location
but I still don't know how to tell it to reskin any slime 🤣
that sounds interesting! The syntax's not finalized, I'm still testing this out and it's likely I won't finish it before 1.6.9 comes out. How would you want to receive the code when it's done? A post on the Mt Vapius server?
whatever is convenient for you at the time 🙂 message on dm, on vmv server, on nexus... and sure, no rush!
it'll let me time to see which option i prefer 🙂
omg I forgot my pig sprites are too big 🤣 I'm going to animate boar slimes
I got it though
thank you all
I never noticed this. You sure that's the case? Or did you just mean, they won't produce both on the same day?
you cannot have animals produce both items on the same day. it's one or the other
oh yeah that's what I meant haha
like it's a very tiny annoyance
Ok, you said they "stop producing" duck eggs which surprised me.
probably should have used better wording haha
But I think it's true that you can only get one per day, same as the rabbits.
(I may also have added that functionality so that Pigs can still dig up truffles after I milked them for Truffle Juice)
This is kind of a longshot, but is it possible you don't have the SDK installed? Not sure how you'd get into that state, but when you showed your VS installation screen it wasn't there, and while you wouldn't be able to run SMAPI at all without the .NET 6 framework, the SDK could still be missing.
https://dotnet.microsoft.com/en-us/download/dotnet/6.0
Also, I don't recall if anyone asked you already but it might help to try running a dotnet build from the command line instead of building in VS, just to see if the result is any different.
thank you, i'll give that a look!
(milked them for truffle juice is going to haunt me, thanks)
Great, I'd almost suppressed that memory and now you had to go and repeat it.
hey does anyone know the mod for changing the wallpapers in the hallways? i think i saw it a few days ago on this server but i cant find it now
#modded-stardew is more likely a better place to find that
sorry i didnt really know where to put it thank you
you already can change them
the mod you have in mind is to make them entirely visible
really? i tried to but i couldnt
maybe the mod about the whole thing was just a fever dream then
not meant sarcastic
I mean, a map edit to get rid of the like flashing or whatever it's called that is on the bottom
Would be pretty straightforward and I'd be surprised if there isn't one for at least some of the house
But yeah, I thought the room dividers could already be wallpaper'd
maybe i got something mixed up then
thanks anyway
yeah you can change it I’ve just been right clicking the entire time
Is it possible to use a token to define the name of a dynamic token?
@pine ermine hello, I got an update upon the RSV and fishing rod issue
seems like it's not RSV, but a mod that do a patch when RSV is installed, the "Adventurer's Guild Expanded for 1.6". It's only a CP mod I don't now why it does this
gotta link to it?
If it's a CP only mod then it can't affect harmony patches
Unless another mod is intentionally changing it's harmony patches when that mod is installed, but that still falls on the other mod
Ironically, that's the same mod I kept getting reports for before I found out it was actually Downtown Zuzu that was doing an aggressive prefix
I feel like this problem probably needed its own thread like forever ago
I just considered trying to find everything about this in the sea of this channel and died a little inside
I don't have downtown zuzu, I'll test just with my mod + RSV + ""Adventurer's Guild Expanded for 1.6"
I don't imagine your particular issue is from DTZ, at least I hope it's not patching any fishing rod or pond stuff
I just mean that your culprit likely isn't a CP mod
only my mod + RSV + "Adventurer's Guild Expanded for 1.6" didn't work.
only my mod + RSV worked
https://smapi.io/log/5ae1c4caea52437b81d465023f997b63 (didn't work)
Log Info: SMAPI 4.0.8 with SDV 1.6.8 build 24119 on Microsoft Windows 11 Pro, with 8 C# mods and 4 content packs.
Log Info: SMAPI 4.0.8 with SDV 1.6.8 build 24119 on Microsoft Windows 11 Pro, with 8 C# mods and 3 content packs.
you can see on this "20:18:39 INFO QualityFishPonds pullFishFromWater_Postfix" it did enter the function. The other one didn't
Harmony_summary with only Quality Fish Ponds + RSV + Adventurer's Guild Expanded for 1.6:
I really should have made a 1.6.8 back up before updating
could you tell me how to do this? I haven't figured out how to change the drop list
{
"Action": "EditData",
"Target": "Data/Monsters",
"Fields": {
"Green Slime": "100/10/0/0/false/1000/ShipsAhoy_BoarMeat 1 881 .2 430 .1 /2/.01/4/2/.5/false/6/Wild Boar"
},
"When": {
"LocationContext": "Default"
}
}
I've been trying to do it like this but that doesn't change the model at all
oooh fancy, thank you!
is this When correct?
"Target": "Maps/Custom_MT_Island_House",
"FromFile": "Assets/Custom_MT_Island_HouseEdit.tmx",
"PatchMode": "Overlay",
"When": {
"HasReadLetter": "{{HasFlag: anyPlayer}} MT.IslandBedroom"
}```
mt.islandbedroom is a letter
I believe it would be "{{HasReadLetter: anyPlayer}}": "MT.IslandBedroom"
seem not quite right. CP throw parsing error for this token
this one seem work "HasReadLetter: anyPlayer": "MT.IslandBedroom"
i'm a person with like zero modding experience but i want to try and see what the problem is with this mod and if it's an easy fix, it throws this error randomly: 20:13:38 ERROR Spouses' Island This mod failed in the GameLoop.TimeChanged event. Technical details: NullReferenceException: Object reference not set to an instance of an object. at SpousesIsland.Events.Time.OnChange(Object sender, TimeChangedEventArgs e) in /home/milan/Programación/SDVmods/SpousesIsland/Events/Time.cs:line 17 at StardewModdingAPI.Framework.Events.ManagedEvent1.Raise(TEventArgs args) in SMAPI\Framework\Events\ManagedEvent.cs:line 101` so i looked into the github, to download the mod's files, and checked line 17 of "time.cs". but i'm kinda lost now.
i'll post a log
Interesting, I pulled that format straight from the git, but I still don't know why some tokens are in {{}} and some aren't on there
Log Info: SMAPI 4.0.8 with SDV 1.6.8 build 24119 on Microsoft Windows 11 Home, with 96 C# mods and 97 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
(i've tried the latest build but it has the exact same issue)
the outer most token in a When condition field cant have braces
this is the line that's apparently causing issues, line 17.
The key? Or is it more nuanced than that?
the key yeah, thats the word i couldnt remember for a sec lmao. the key of the When condition cant have braces on the outside
where are you defining IslandToday?
Sometimes the line that it says is the problem isn't, because of debugging weirdness
i don't think they've made the mod, so that's probably a #1272025932932055121
yeah, mb
They're trying to fix it, seems like
yep
i want to see if my extremely limited knowledge can do anything lol
you'd have to rebuild the mod after the fix too, you cant just edit the .cs files
So defining, that goes at the top right?
wait lemme check
hmm yeah, let me just download the entire uncompiled mod rq
if it was defined, would it be in the same cs file?
Depends on the author, everyone has their own way of doing stuff
aight, looks like i'm gonna have to go on a bit of a chase then!
its just defined in ModEntry as a static bool
so possibly just putting ModEntry. at the start of the variable would let it find it
Did you manage to build mod yet
brb
Bools can't be null though
me? the error log was from one of the original dev's uploads
i have to set up an environment rq to properly approach this
yea i was ask if you got a local build working, you have the C# guide open right
!startmodding this one
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.
Yeah, gotta install some stuff rq.
alright now i just wait

okay my environment is FINALLY set up
okay i'm gonna try with the change here
i doubt this will help, no offense, but it's learning regardless lmao
How to use both CP and C # in one mod? VS provided the following error message:
[mod build package] The mod's manifest.json file is invalid: manifest sets both EntryDll and ContentPackFor, which are mutually exclusive. InvisibilityElixir C:\Users\123.nuget\packages\pathoschild.stardew.modbuildconfig\4.1.1\build\Pathoschild.Stardew.ModBuildConfig.targets 87
you need two mod folders, one for each mod
each mod gets its own manifest.json
you can put both of those two folders inside another folder after
(you can also edit assets with just c#. if you're not doing anything too large or complicated with the CP part that can be a good option)
Does this mean that I need two different UniqueIDs and UpdatingKeys?
two unique IDs yes, but the update key can be the same nexus page
(or wherever else you release it)
thank you
Hello
I successfully used text operations to modify Green Slime: "Green Slime": "40/10/0/0/false/1000/ShipsAhoy_BoarMeat 1 881 .2 430 .1/1/.01/4/2/.00/true/6/Wild Boar",
But when I'm actually fighting them they're behaving as normal slime
even though the patch export function shows the code above
you can only reskin monsters
Use harmony patch
because the monster data is determined by the class name not the other way around
need to actually make a custom monster class in C#
I patched it
you have to use harmony or subclassing for custom monsters
I just wanted a custom item drop which someone earlier said they could do with content patcher
@lone ice You leveled up to Cowpoke. You can now speak in our voice channels and share images in all channels!
but they didn't actually say how
I used a location in mine so in set location monster stat changes
you can change appearance and drops, just not behavior
that's exacyly what I need
well you can make all green slimes look like boars and drop boar stuff 
yes this, how do I do that 🤣
C# was used in mine
oh I see, I misinterpreted what you meant by "behavior"
Harmony
okay so this is the part where i suck, i'm trying to build the mod but i get these two errors 1>------ Build started: Project: SpousesIsland, Configuration: Debug ------ 1>C:\Users\OkeiN\OneDrive\Documents\SpousesIslandFix\SpousesIsland\ModEntry.cs(63,45,63,63): error CS0246: The type or namespace name 'IContentPatcherAPI' could not be found (are you missing a using directive or an assembly reference?) 1>C:\Users\OkeiN\OneDrive\Documents\SpousesIslandFix\SpousesIsland\ModEntry.cs(117,52,117,76): error CS0246: The type or namespace name 'IGenericModConfigMenuApi' could not be found (are you missing a using directive or an assembly reference?) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== Build failed.
I was hoping to avoid putting other peoples' mods in my mod, I'm not really sure what the consequences are of doing that
Farm type manager works for custom loot drops
its ok most ppl have ftm already
i am like, ***really ***bad at this lol
you arent putting all of ftm in your mod, just using it as dependency for a ftm content pack
what's harmony, a mod?
harmony is a C# library included with smapi
it's used to alter game functions at runtime
you need to copy the API code into your own mod
oh yeah I can't do that, I can't get C# working yet
Basically you are writing a pack that uses FTM's framework to operate, but as a result, your mod should have FTM set as a dependency. You aren't packing FTM's files into your own mod, just your own content file that uses their framework for the code language. <-- this is in response to Prof. Twizz
something wrong with my visual studio setup
you dont need to make bespoke c# for this tbh, ftm should cover what you want 
I guess if it's that popular it probably won't break or not be updated next time SV is
Harmony is one of the modding libraries available to use through SMAPI. it allows you to alter game code. You can use it by adding <enableharmony>true</enableharmony> to your csproj
but you may not need it
ok, thanks everybody, i'll go poke around FTM
I needed it cause I altered the speed
FTM is probably what you want
Aha, i get it now.
let me try that
make sure to change the namespaces when you do (to something in your own mod), and also make sure to delete that one line out of the GMCM api that it says to delete
that's confusing me too ngl, could you clear up what line has to be deleted? i'm so sorry to bother you about this i honestly bit more off than i could chew lmao

partially i want to give up, but i just don't wanna feel like i failed something lol
wait does modding with FTM also require C#
i'm not sure i'm reading the correct information about this
i'm looking at this
i was able to fix the first error tho
So somewhere at the top of the copied code it will say "namespace GenericModConfigMenu" or something like that. And you want to instead change that to the same thing that shows up in all your other code next to namespace
yea that's correct
oh I wasn't scrolling up high enough lmao
FTM pack needs a separate manifest.json
It won't give you errors if you don't do that but might end up being confusing later
so it's 2 mods to smapi, but ofc users can download both ur CP and ur FTM from same mod page
Yeah i don't see that here. just namespace SpousesIsland
Namespace all you looking for
Name it anything
I'd recommend downloading Visit Mount Vapius and looking through it, since it has custom monster sprites and loot drops using FTM.
thank you!
FTM has a neat configuration tool
I...don't understand. i'm sorry. i'm really gonna just give up i think
I'll try one more thing
I thought this would be easier, i was naive lol
C# hard learning curve CP a little easier
Yeah, i'm just trying to fix a c# mod
Hmm
but i would definitely of just done content patcher if it was an option lol
What's the problem you can't build? You are missing usings it says
yeah i can't build, it throws an error about generic mod config.
Using Stardewmoddingapi;
i was able to fix the content patcher error
now it just says this
1>C:\Users\OkeiN\OneDrive\Documents\SpousesIslandFix\SpousesIsland\ModEntry.cs(117,57,117,81): error CS0246: The type or namespace name 'IGenericModConfigMenuApi' could not be found (are you missing a using directive or an assembly reference?)
That's not so bad need to tinker a bit
Did you see Wren's message about renaming the GMCM namespace to match your others?
Oh you did, sorry
My eyes just skipped over your reply
all good.
Tinkering time
Yeah, i'm not skilled in the slightest but i'll try a bit
Okay, so on my previous issue with the cellar entrance and spouse room decor disappearing when a config is changed, how would I simulate reloading the game with the Patch UpdateOn options? Can I?
Because rejoining the game does in fact fix it, but that's not feasible for the host player.
Basically, my question is: If the change to the config (which then changes which map is loaded to the FarmHouse) breaks those entrances, what do I need to do to NOT break them, and is it something I can append to the patch itself to somehow change WHEN that config option gets applied?
okay so it looks like i fixed those two errors i got
i'm able to build now.
so now i just fiddle with the source code and hopefully fix things lol
I guess, alternatively, I can change my mod construction so that they can't do any config options, but that seems sad. :/
I can't think of how to make it so config options made in game don't apply until you open the save again
i spent an hour of my life trying to not to message this channel because i've asked this kind of question a couple of times but could somebody let me know where the sprites of the cooked items are? and more specifically where the ginger ale sprite is?
Maps/springobjects
Ginger ale is the second row from the bottom a bit to the right of the middle of the sheet
Tysm! also do you know of any resources where you like search an item up and it shows you where it is in the unpacked content folder? Or something along those lines?
!springobjects has a page but there's nothing for like the whole content folder
Most vanilla object sprites are in the Maps/springobjects asset. See a table of springobject sprites by index.
Some newer object sprites are in TileSheets\Objects_2. You can check the entry in Data/Objects to see where its sprite is stored; SpriteIndex is the position, and Texture is the asset name (defaulting to Maps/springobjects).
Ooh there's a cursors page too now
say is there some kind of projectile data model
But otherwise no, it's just mostly about skimming the png files in Content (unpacked) and getting a feel for what groups of stuff go where so that when you're looking for a specific item you at least know what sheet it's probably on.
or do all things just hardcode their projectile
https://stardewvalleywiki.com/Modding:Items#Weapons
Weapons have a projectile field
Not sure about other sources of projectiles
it looks like monster ones are hardcoded at least
and hm the weapon one doesn't support debuffs
Hi guys my friend and I just made a mod where it'll draw the shortest path to a container with a specified search item so you wont spend all of your time looking through chests for an item!! It would be greatly appreciated if you guys gave it a look :D
https://www.nexusmods.com/stardewvalley/mods/27409
would you like a #mod-showcase ?
I would love that :D
what do you want to put in the message? i can just copy your comment
hm i noticed that the mod page says Used Generic Mod Config Menu API from spacechase0 under permissions
you should instead add that as a dependency, so that people will be prompted to download that
Okay so now when i try to play with the build of the mod i made it throws this error
i'm honestly gonna call it a night and continue tomorrow
i AM making progress.
so hopefully i'll get to the bottom of this lol
Is a TCC abbreviation currently in use?
I wanna park Toni’s in front of Crystal Clear to avoid obvious confusion between CC and CC
Many popular mods in the modding community are often referred to by their acronyms. Here's a list of common abbreviations: https://stardewmodding.wiki.gg/wiki/Abbreviations
I searched Nexus for TCC and nothing came up
TCC isnt very pronouncable
Ehhh fair
perhaps you should make up some word instead 
Hey do you think I would be able to get the mod author role with out actually having any mods posted on nexus? Like I know you need to have at least 1 but my mod isnt out yet and 'd like to put it in #mod-showcase
you can just post it on nexus first
apply for role
and then come post for mod showcase
👆
oh right i didnt think of that
Hi, unsure if this in supposed to be in here but my gifs aren't uploading correctly on Nexus; if this a common problem?
Ah okay
To qualify for the role, your mod must be published first. That being said, anyone with the role (or a junimo) can post in the showcase for you!
Friends, can someone more familiar with the intricacies of the game code tell me exactly what happens to the map on house upgrade? Upgrading the house fixes my weird issue just like reloading the save does, so if I can replicate that behavior when the config options change, I may be able to keep the cellar and spouse room from disappearing.
Mainly need to know if it is completely reloading the farmhouse map again so that my patches can apply after it, and if so, I will try to figure out how to make it reload the vanilla map on config change before my own patches start
That would likely fix all the empty spouse room issues if it's just a matter of reordering the patches
what does l 2 mean in recipe unlock condition 
i don't believe house renovations completely rebuilds the farm house map so to say
I specifically meant the upgrade levels (kids room, cellar, etc) for whether or not the map gets fully reloaded
l 2 isn't used so it defaults to null basically
Essentially you can take it to mean it's a recipe learned through the TV
oh this is crafting recipes, and yea it seems to be quest/mastery only
Oh, crafting, yeah then whatever means is chosen for those specific recipes
Cooking is usually done on the TV but I can't remember how crafting recipes are generally given lol
the way it works seems to be apply and removal of map patches as things change, either by level up or by rennovation
so game never rebuild house from the base map, except on save loaded maybe?
Well, the upgrade from farmhouse to farmhouse1 is a full map change
As well as farmhouse1 to 2 and the marriage variants, all the renovations are just map patches
I'm wondering if it does rebuild on major upgrade tiers (2 to cellar) because it cleared my visual issue
And I was only able to clear it through reloading the save otherwise
Honestly, your best bet is probably just reloading your save
i guess it does maybe 
The problem is that's not realistic to expect of someone hosting in multiplayer
What is the visual issue?
FarmHouse.setMapForUpgradeLevel
i mean can't you just limit your gmcm to main menu only
Is that something CP mods can do?
oh right, idk 
I have two variants of my map, one is the renovation and one is a map patch. Swapping them via config while in game removes the entrance to the cellar and makes the spouse room appear empty
I can also cause it to happen by using patch reload
It's consistent, happens every time
Yeah, FarmHouse doesn't appreciate some patching during regular runtime
IF I can force the CP mod to lock config to main menu, that works too, but I don't know how to do that
I don't think you can with CP, pretty sure that's also a C# only thing
Yeah, hence me trying to find a workaround
I think the workaround is make a C# element unfortunately
I'm currently messing with priorities but I don't think it will help
I think the problem is that patching the FarmHouse causes it to lose your renovations and those aren't reloaded on the fly
My renovations didn't vanish at all
Only the cellar and spouse room
That's why I am lost, LOL
Oh, those are technically renovations, I didn't know all your others stayed though
At least, they're patched on like renovations
Yeah, everything else is fine, including my custom renovation
Maybe they would stick better if they were actually like the rest lol, that's kind of annoying
Why do you need option to swap between reno vs map patch
What if you just make reno 0 cost
You could just make it a separate mod file I guess
I do intend to remove it once 1.6.9 rolls out, it's because of the wallpaper and flooring change
Oh right, in 1.6.8 the custom renovations don't work
So patch mode will go away at that point anyway, BUT the issue happens with any config change, including one for a larger version of the room
Yeah, I've currently got one mod sleeping until 1.6.9
And I really don't want to make that a separate reno xD
I will if I have to, but I didn't want to
May have no choice but to offer separate files then
Though that's mostly just because I don't want to rebuild it against 1.6.8 now lmao
I'll give it the corner room treatment only if I absolutely have to
I can poke the code, but I don't think I'm gonna find anything that can help a CP mod
I am slacc on some ideas but they r like
Still just rotating in my brain, not implemented
Fair enough rokugin, I'm mostly just very curious as to why it fixed during cellar upgrade
Since I discovered that trinket slots was gonna be more work than "just spacecore lol" I was gonna make trinkets combinable like rings
Combined rings r so weirdly implemented tho 
Soooo, secondary idea: if I make a Reno that's upgrading the bathroom size, can I completely change the map patch used to replace the smaller bathroom it starts as?
Or does it have to be a separate map space?
I think the problem with that would be the original renovation and its flags
Hmm
I guess you could use some additional flags to set up some When conditions to stop patching the renovations menu with those?
I think you should do it like the open/close room renos
Which is additional patch on top
Not replace
That's what the current bathroom is, but if you wanted to upgrade the same space the original renovation would need to be dealt with
Can't u just block out the expand space only
Can the build rect and the map area be different dimensions?
I'm more worried about the renovation menu
Every renovation is remove the walls somewhat, just degree of it
Ah, the menu could be handled the same way I have the Destroy option added
And how you'll differentiate when the upgrade should be available and how to get rid of the base renovation from the menu
Which is a When condition
Yeah that's why I mentioned the open/close room renos that you can't do without having the new room first
The upgrade should initially only be available when you have the base bathroom, but what if you want to destroy the bathroom, do you have to downgrade first and then destroy?
The dining room one in particular
I forgot about the patches to open and close the rooms, I was confused because the renovation menu uses that same terminology everywhere
When it actually means build and destroy a room
It's also used for the corner room expansions
Could maybe check how those work for removal
So yeah, you should be able to patch directly over your bathroom with just a bigger patch
Oh yeah, man, I totally forgot about that lmao
I think I've upgraded my house fully in 2 games and completely forget about it after
I remembered because I considered replacing the last corner expansion step with a half bathroom over there xD
As an optional prefab room
Oh, there's a debug command I guess
Okay, yeah, remove corner room requires that the two values for the extended corner pieces are 0
So standard operation seems to be downgrade before room removal and I have a ready made example 🙂
hello
https://stardewvalleywiki.com/Modding:Console_commands#Farmhouse
Not greatly useful as there's no way to automate it, but you could try these to refresh the map
I don't have any good "hello" emojis, so you get a junimo
Thanks for helping me look into options, rokugin, and thanks for brainstorming with me, chu/e! It's appreciated.
im trying to use harmony like this:
harmony.Patch(
original: AccessTools.Method(typeof(StardewValley.Monsters.Monster), nameof(StardewValley.Monsters.Monster.findPlayerPriority)),
postfix: new HarmonyMethod(typeof(MonsterPatches), nameof(MonsterPatches.findPlayerPriority_Postfix))
);
however, this code reports an error because findPlayerPriority is a protected method instead of public.
how can i solve it?
This is how I'm doing it for fish ponds
I have a using StardewValley directive at the top, hence why it's not in my method finding thing
I believe you're just using reflection to try to find a method named that
ok, I'll try using a string directly instead of using nameof. In addition, in multiplayer games, which player does Game1. player represent?
ok I'm implementing a new feature that will switch the player from swimming state to normal state when defeated while swimming. So far the code builds and in my in-game testing. I get a black screen
There's special case for split screen coop
Player gets swapped
Can lead to shenanigans, I rmbr in support someone was getting massive amounts of exp every second due to a mod that add rings with skill exp mult
yup lot harder than I thought.
Game1.player is literally "current player" and in co-op the entire game loop is run for every player on every frame. If you're concerned with co-op play at all then you need to make sure any player-scoped state is PerScreen, and then you don't really need to worry about who Game1.player is, just treat it like single-player.
now they frozen
#1272025932932055121 is gonna be a better place to get help with that
thanks i made a post!
im using button's extra trigger action stuff and am following an example, this should work right? dont know what to put in the "ExampleTriggerAction" fields though
I've discovered a quirk with conditions, I think? I currently use Weather conditions to turn the spouse room windows dark on rainy days, and it works when one logs into the game for whatever the condition it is at that point, but it doesn't reapply the condition daily. { "Action": "Load", "Target": "Maps/Lemurkat_EastScarp_SpouseRoom", "FromFile": "assets/Maps/SpouseRoomsEastScarp.tmx" }, { "Action": "EditMap", "Target": "Maps/Lemurkat_EastScarp_SpouseRoom", "FromFile": "assets/Maps/SpouseRoomsEastScarp_dark.tmx", "Update":"OnDayStart", "When": { "Weather | contains= Rain, Storm, GreenRain": true } }, This is the code - I addd in the "Update":"OnDayStart" to see if it made a difference, but it didn't. Are spouserooms different from anything else?
"{{ModId}}_ReloadAmaranthPrice" is what I would use
Changing with whatever I'm reloading
"Id": "{{ModId}}_WarpMailer",```
ahh i see tyy
was stumped by that one for a bit
i just copy paste whatever i'm doing in trigger actions too
I try to make my keys pertinent to the thing they're for
Which can make them more or less descriptive depending on what I'm actually working on
mine are sometimes puns just incase i get a funny error at least i get a laugh 
Lmao, you can also use LogName for that :P
Spouse rooms are a map patch, the info is only copied from them once per load
also would i just copy paste the trigger actions like this?
So in order to get the windows to change, you need to apply those tile changes to the farmhouse instead, which might cause issues lol
you can keep your trigger actions under a singular editdata
As I've been discovering lately, FarmHouse doesn't like to be patched very much
Drat... why do the farmhouse window changes but the spouse room ones don't? I don't think they even do in vanilla.
waitt how?? 
I think maybe the windows were abandoned because not every spouse room has them?
night and day tiles could be used for it but I tried that as well and it didn't work
each codeblock is it's own "entry"
I removed most windows from spouse rooms, but I need on in Jasper's for story purposes
iirc spouse rooms don't "refresh" as per the previous issues with uh, firered
You can do Aba's hack
Manually patch the spouse room then patch the farmhouse with the spouse room conditionally
I imght try a custom tilesheet
and then have that tilesheet have an animated window? 
I wish you luck, my attempts to cheat the system were thwarted by FarmHouse being a punk
farmhouse needed pathos' touch for wallpaper eating
Still not entirely sure why it wasn't recognizing the walls_and_floors tilesheet as the walls_and_floors tilesheet for that issue honestly
oh yeh that's what I was trying to do first, and why I looked at your mod I think, but it confused the heck out of me.
I'm tryinh to work out how to do it with the minimal amount of fuckery
Like as far as I could tell, it was supposed to compare the source of the desired tilesheet with the expected tilesheet and they should have been the same, and yet
For vanilla renovations it had no problem, but if you used a custom map suddenly that wasn't okay
It's fixed in 1.6.9
#making-mods-general message
This is the file Aba sent the other day, could crack it open and see how they did the patch
i take it back, i enjoyed doing all of my editmaps in content patcher, it's a mess in there now but at least i can add locations on the fly without worrying about the warps
I have decided that FarmHouse patches lead to madness
viewport is also a lesson in insanity
do i have to add a comma after the false
No, but you do need to add a closing brace and remove the following stuff up to "{{ModId}}_ReloadBeetPrice"
if it makes it easier for you, you can also put multiple actions in one trigger action entry
Mmhm, just make sure you put commas between them all too
instead of this:
"Action": "Spiderbuttons.BETAS_ReloadItemField (O)274 Price",
you can instead do this:
"Actions": [
"Spiderbuttons.BETAS_ReloadItemField (O)274 Price",
"Spiderbuttons.BETAS_ReloadItemField (O)300 Price",
"..."
]
OHH okay, ty!!
hi! does anyone know which xnb files are scarecrows in?
so would i make it like this?
wait i should change that field..
haha it appears to have worked
no, you'd need to write it like i did, with Actions (plural!) and the brackets to make it a list
ahh i see, what about uh these two lines? do i change amaranth to item?
do i put a comma after "Price": 205 ?
you can, you dont have to
I suggest to use VSCode and set the filetype on the bottom right to "jsonc", then it'll yell at you when youre missing a , or you have one too much
!vscode
k no command for it 
!vsc oh there it is
When creating content mods, it's useful to have a program that will check the validity of your json for you. We tend to recommend either VSCode https://code.visualstudio.com/download or notepad++ https://notepad-plus-plus.org/downloads/
@calm nebula: poke this (36h ago)
in theory, if i want a dialogue to change based on if it's raining in PT but i'm checking that in another location i can do a Weather Mountain Rain for ex? (can use Town, but i'm not sure if Town will be checked properly on festival days, which arent rainy of course, but still)
@calm nebula: take a look (24h ago)
Never knew you were a cat, good to know
I think Town and Mountain would have the same result anyway, but yeah, that should work. The WEATHER GSQ accepts a specific location name, gets the location context from it, and checks the weather for that context.
(and if it can't figure out where a location's context is, it tries to use "Default" anyway)
Is there an easy way to get an extra collections tab 😅
thanks 🙂
Hi guys, I designed a metro system with several lines connecting Pelican Town, the Desert and Ginger Island in the game, just for fun. I posted the metro maps online, and some people told me they wished to have such a mod. But hardly do I know anything about coding or mod design, so I wonder if any mod-maker is interested in this topic.
I’m thinking about a mod similar to the current minecart system but with a time-lapse mechanism when traveling (rather than real-time teleport), and a fare system that charges you some golds according to the distance you travel.
Metro maps are posted below. If you got any idea, feel free to reach out to me. Thanks!
Oh I seen those maps I think 
Adding minecart is straightforward, see mods like integrated minecart
Adding time delay, and possibly an animation, is C# territory
there might also be the possibility that should the mod ever get popular, people will ask for train systems for other expansion mods (maybe, highly likely 🙏 )
It seems like your images didn't post tho, try #images-and-memes
Here're the maps
I've contacted the author of integrated minecart, but they thought these plans were too difficult to carry out
Also, I'm so bad at programming. I once spent several months learning a Python class in university, but I could only rely on AI models to write codes now. I don't have the confidence to learn another coding language at all
Well uh don't use ai for modding stardew it'll hallucinate 
I think as a first step you should try just making the subway as minecarts
This you can do with just content patcher
!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!
Data/Minecarts is what you gotta edit (with EditData)
content patcher guide:
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md
Thanks! I'll focus on designing the metro fare system these days, then if no one wanted to make a mod based on these systems, I would try on my own.
oh yea u can make minecarts cost money 
i dont think you could make it dynamically cost more though
Dynamically in what way?
yeah maybe some stuff can be done with token, so it depends which kind of dynamic
Like how the Beijing metro works I assume
yea chinese metros increase fare if you go farther
(If you didn't know, you pay more the more stops you want to go.)
I love the little fake blue coin you get lol
lots of north american metros just charge u flat rate for 2hrs free transfers
the amount of gold it costs is related to the distance you travel
like if you go from town square to ginger island, it would cost a lot more than to the mountains
so unfortunately i dont think that is doable with the minecart system currently in the game
I think it's just by entry in the list
Interesting
I think it might be possible by listing all travel routes in the code, and give each route a fare value
Thanks to NetworkX, the job of listing all travel routes and their fares can be easily done
just like the subway ticket machine, "select your destination"
no but you cannot like, restrict the menu options depending on your station
I mean, you could use When conditions and Update to change the price depending on the player location
so you would get ginger island port for 1000 as well as ginger island 100
If even that lol
Usually you go in and you aren't charged again until you go out
"M.T.A.", often called "The MTA Song", is a 1949 song by Jacqueline Steiner and Bess Lomax Hawes. Known informally as "Charlie on the MTA", the song's lyrics tell an absurd tale of a man named Charlie trapped on Boston's subway system, which was then known as the Metropolitan Transit Authority (MTA). The song was originally recorded as a mayoral...
Rather than the minecart list being long, the patch list would get pretty long lol
yea 
well as mentioned, one feature at a time
put yer minecarts in first
the fancy stuff comes afterwards
Arizona doesn't have a real metro, our public transit is either single ride fare, all day pass, or multi day passes
On the other hand, our public transit is absolute dog water
In that case, it might be easier if I keep the system free. After all, the player has paid money to repair the minecarts.
I'll do the basic minecart locations first
Rokugin's suggestion will prob work, just a lot of tedious writing out all prices
You could also make the destination patches conditional to where you're at, if you wanted to lose your mind
Actually Beijing Metro was once a fixed price system before 2017. You paid ¥2 no matter where you wanted to go.
(At this point, you're getting into some wild and crazy dynamic tokens lol)
SDV thrives on simplicity, I think the more basic you can make it while still capturing the essence of your idea the better
@rancid temple It's able to write out all routes and prices via the Dijkstra Algorithm. But I know nothing about what's next
and keep your sanity if you need to change stuff and all
(so too does motivation to complete a project, for that matter)
Using a tool to handle the destinations/prices isn't really the part I would be concerned about lol, there's nothing you can use to convert that to a working mod for you, that's going to be all manual work and the more complicated it is the harder it's gonna be to get it to work properly
Well, nothing but money I guess, assuming you can find someone willing to do the project for commission anyways
The current Integrated Minecart mod includes an option of fixed charge for each time you use the system. I just want to do sth more
