#making-mods-general
1 messages · Page 573 of 1
"Target": "Data/Locations",
"Entries": {
"Mountain": {
"FishAreas": {
"Lake": {
"DisplayName": null,
"Position": null,
"CrabPotFishTypes": [
"freshwater",
"pond"
],
"CrabPotJunkChance": 0.2
}
}
},```
Just a sample of what I'm doing
!log
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.
to be fair I think it can't recognize any of the areas I'm referencing, it's just that the mountain was creating the game breaking errors
can you share the error log as well?
Log Info: SMAPI 4.5.1 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 13 C# mods and 2 content packs.
Suggested fixes: One or more mods are out of date, consider updating them, SMAPI is out of date, consider updating it
I don't think you need to indicate null for displayname or position, you can omit those
you're telling the game "delete the entire vanilla Mountain and just insert what I have here"
what are you trying to do exactly?
if you just want to insert one entry into Mountain's FishAreas list use TargetField
oops 😂
alternatively just switching "Entries" to "Fields" would make your code work, but it won't be compatible with any mods that do the same thing
I'm trying to add another crab pot fish type
I have no idea if that will even work, but I'm trying to get it to the point where I can even load the mod even if it's ineffective
"Action": "EditData",
"Target": "Data/Locations",
"TargetField": ["Mountain", "FishAreas"],
"Entries": {
"Default": {
"CrabPotFishTypes": [
"freshwater",
"pond"
],
"CrabPotJunkChance": 0.2
}
},
this should do what you want if it doesn't fixing it is an exercise left to the reader
I'm trying to change more locations than just the mountain. Not sure what's the least clunky way to do a similar edit for all of them
there's local tokens which eliminate some repetition
ngl I'd just put my fish into freshwater
I might end up just doing that. I mostly want to see if it works or not! The mod overall is a large and ambitious project for me and I'm learning a lot in the process of making it
so even if I go in a different direction, I'll still have learned something
just a yes or no so i dont gotta look through the whole wiki to figure it out, you can use AT on the farmhouse yes?
yes
can the farmhouse be classified differently between upgrades? or for things i want to all be the same i just need all them to have the same first 2?
I did successfully get my game to load with my mod, but now I've got levitating ducklings. I'm pretty sure I know the cause, I just think it's funny
evil ducklings
nope, just ducklings that will grow into long-necked ducks that I made taller than the usual sprite
mmmm pretty sure only evil things float
@brittle pasture A one day upgrade is also now confirmed to work in Custom Builders. 
is there a more recommended way to have different text show in a letter depending on if the player has a mod or not? what I have currently works, I think, but it feels a bit clunky 😅 https://smapi.io/json/none/c49d15fb4880434eb4377b0acb95eb8d
i usually try to use a dynamic token or some other way to avoid having two copies of the same block. but what you have is fine i think
I tried a dynamic token at first, but I'm pretty sure I was setting it up wrong ^^' I wasn't sure how to have it so it could tell if it was an Evelyn location vs. Leah's
@brittle pasture I'm wondering if there is a way to limit what appears in the Custom Builder Dialogue menu based on specific criteria.
Currently the menu has two items: Add Broken version of Coop and Upgrade broken version of coop to Coop. If the Upgrade option is chosen when there is no Broken version of the Coop on the farm map, the game throws a "divide by zero" error. Is there a way to force a check for a particular builder to see if they have any building options, and not show their dialogue option if there are none? I can send or DM the specific code I'm using if you want.
an Action: Include gated by a check is my other standby. i tend to use that one if the condition requires a bunch of changes to patches (like with SVE, typically)
Any of YALL take commissions/mod ideas?
Sometimes, when making a mod, you realize that you sure can code, but art is one step too far. Or maybe art and writing is your jam, but you struggle with the code. One option in these circumstances is commissioning someone else to do these things.
Generally, people who do commissions will have a website...
@worldly mirage
best options if you want something made are ^ check that list or try to nerdsnipe someone in here
Ty King
thanks for the tip. When I have some freetime (which is unlikely now college work), I'll see if I can get some practice in.
Hello, I am working on a custom farm map for myself on the riverlands, however I broke all the walkways and can't seem to find how to fix this issue?
So, I've been messing around with creating farmhouse skins and I am noticing that the chimney smoke isn't moving as intended, even if I change the chimney value of the building in the skin Metadata field-- anyone know why this might behave oddly?
It is worth noting that:
- Before changing skins at all, the smoke appears in the correct place.
- Changing to a skin with the chimney in the same space results in the smoke being off by about one tile even if no chimney position value is set.
- Once the skin is changed, even if you revert to the base/vanilla skin, the chimney smoke is incorrectly placed.
Changing the chimney value in the skin also appeared to do nothing.
(For any mod authors who might have an interest in it: the latest version of Festival Nudge now lets you specify backup/secondary/tertiary/as-many-as-you-want-iary locations for your NPC to be moved to in case it overlaps with someone else.)
How are they broken?
I can no longer use the top pathway towards Robin's or any of the bridges to get to the other islands
that does sound like a use case I wanna support; I'll look into that!
I think the thing would be to check if the builder has any buildings in their catalogue, and if not, the dialogue entry doesn't show up.
Okay, most of the bridges use special rules in this map. Let me see how it does it. The bridges are on the building layer, which is normally impassable. I would have expected it to use TileData to make it passable, but it doesn't seem to, so it's probably baked in. Standby
Did you change the bridges to look different? ie use a different style?
I added a bridge but that's about it
Hmm, it could be a couple of things. When you started to new map, did you open the Farm_Fishing.tmx as a base and then save that to a new file to work on?
I think so
the water tiles under the bridge may be part of it if you have changed those at all
@cedar shell The reason why the bridges on this map are passable, even though they are on the building layer, is because they have special tile data baked in. So, for example, if you open the original Farm_Fishing.tmx in Tiled, go to "Tilesets" in the lower right corner, click on the third Tileset tab (untitled tile sheet), and click on one of the bridge tiles (like the one next to the tower halfway down on the right side), you will see that it has a Custom Property of "Passable: T". Hang on a second and I'll get you a screenshot.
@cedar shell
Those are from the right and left sides of the Tiled screen
is there any SDV mod about Diablo?
are you using the "Custom Question Dialogue" feature? this is proving slightly tricker than I expect and I'm thinking if you are using that feature to show the menu it might be easier for me to add a "Condition" field to the menu instead
so you can do something like "if no coop on farm don't show the entry"
If your Tileset doesn't have that "Passable" property assigned to those tiles, it won't work. In order to have that property, you either need to add it yourself, or start with a map that already has them in it.
Yes. Do you want to see the code?
ah okay, I see what happened now, my tilesheets were broken and in fixing them I lost that so I need to readd. Thank you so much!
that can be useful, but it's not strictly necessary
basically the DialogueEntryData model will have one more field named Condition which can accept any GSQ; if the GSQ's false the entry doesn't show up
Allow me to recommend the really excellent tool by Irocender that allows you to fix Stardew tilesheets without having them in the same folder: https://www.nexusmods.com/stardewvalley/mods/40281
Also, if you have to go and add the Passable property to a bunch of tiles, you may just want to start with a fresh version of the Riverlands map so you don't have to do that. ^_^; Also, there is another way to selectively add Passability by adding it as independent TileData (like those squares you see that say "TileData"). This allows you to add a property without adding it to EVERY instance of that tile on the map, instead adding it only to the selected area. Hit me up if you need more explanation.
@twilit quest try this; it has the new Condition field so you can set your builder dialogue entry's condition to "if have coop"
That sounds good. My only concern would be if we wanted to extend the menu. For example, Lewis could upgrade a Broken Coop, a Broken Barn, a Broken Well, a Broken Mill, etc, would I need to check individually for each building type?
yeah you have to
I can try an alt fix as well (not yet in the version above); it would involve the carpenter menu showing a dummy entry that says "no building available" if there's no other buildings
it's the most straightforward and forward compatible fix that doesn't involve me reimplementing much of the vanilla code
@brittle pasture I think this syntax is correct:
"Condition": "BUILDINGS_CONSTRUCTED Farm BrokenCoop",
Gonna go test it now
@brittle pasture Looks like it's working!
nice! meanwhile I'm still brainstorming the other fix and every solution so far makes me want to cry blood why does a blueprint entry store its own index why is this info not part of the carpenter menu
Honestly, entering a bunch of separate conditions won't be a big deal
yeah I think it's likely you'll know whether I gave up by Nexus release time
XD Fair
Now that I can get it to do what I want it to do I'm happy. XD
I'll probably be pinging you off and on as I keep working on the mod. I've got a partner (in crime) and we plan to use the heck out of Custom Builder.
Thank you for being so responsive and helpful. ❤️
Do you think you could explain the tile data to me a bit more? I've added the pass ability but it only works in one spot, but it's only one layer
Sure. There are two kinds of TileData, one that's "baked in" and applies to every tile of that type (the first kind I showed you). The second kind is created on the Object layers (the ones with the purple icon in front of them in Tiled). To make a section passable using the latter method, make sure you're on the Buildings Object Layer to start with:
Then choose the Rectangle tool:
Select the area you want to apply the property to. I used to do this square by square, but recently I've been doing it by area and so far it's worked fine.
Once you have the area created, a very, VERY important step is to name it TileData. It won't work unless it's named TileData:
Then go to the bottom left where it says "Add Property" and click the Plus sign:
This will make a new custom property that will apply to the selection. You can click the dropdown menu next to it to choose the kind of property you want. Most of Stardew uses "string", even for True/False options. "Bool" would probably work find for this, too.
Under Property Name, type "Passable"
Then fill in the box with "T":
This selected TileData on the Buildings Object Layer is now marked Passable, which means that even though it should technically be blocked (since there are items on the Buildings layer) you can walk right over it. This will let you walk through things regardless of what you put on the Buildings Layer, so be careful where you apply it.
@cedar shell for more ways to use this, I recommend checking out: https://stardewvalleywiki.com/Modding:Maps#Known_tile_properties. The whole page is very helpful, if a bit difficult to wrap one's head around at first. It's an enormously helpful resource for map making, and how I got started.
P.S. Note how the area now has "TileData" on it. If it doesn't, then double check the name. Remember, without being named "TileData", it will not work:
@cedar shell I'm heading to bed shortly, but if you have any further questions, feel free to DM me and I'll respond in the morning. ^_^
Thank you!!!!
farmhouse editing, HumanDoor, can it be two tiles? would i do [{x1,y1},{x2.y2}]?
nope, HumanDoor and AnimalDoor can only be a single point each, no decimal values and no multiple tiles
AT variations while having multiple textures with the variations, would that allow different colors of different styles?
Excuse me, I encountered some issues when creating a high-definition avatar replacement module for a content package.
I don't know how to use a 500x500 avatar in the game. Because there are many custom requirements (such as different seasons and events using different avatars), this feature may not be able to use existing mod.
Does anyone know how to implement this function? Thank you very much
Is it possible to be able to put animals into a custom building without first requiring construction of a coop or barn?
Well, after some digging it looks like the answer is no. Which sucks because that defeats the entire point of my mod...
Wait is making rectangles like this is SDV friendly?
Always seen vanilla maps using only 1x1 tiles for that
When they're unpacked or exported they get turned into individual tiles, but making rectangles with them is also acceptable.
Oh wow, that's neat to know
All this time I copy pasted the same tile data to cover multiple tiles
is it possible to use harmony patch a harmony patch method in other mods?
Do you mean to patch code in another mod's dll? Yeah, you can do that, you just need to make sure you get the full qualified name of what you wanna patch
You don't have to do typeof(Thing) to tell Harmony what to patch, there are overloads that accept strings. Or you can find the type with AccessTools.GetType() or something
i mean i want to patch another author's patches. for example, an author use postfix to change a method's return value but i want to keep the value, can i use a postfix to change the author's postfix?
Yeah, thats the same as what I just described
A patch is just a method after all
You would just be targeting the method they themselves gave to Harmony
You could alternatively just make your own postfix whose priority makes it go just before theirs, store the value before they change it, and then restore it in a different postfix that goes after theirs
ok thx
If I need to achieve my own HD avatar is to use Harmony huh?
Or maybe there's another way?
To make a portrait bigger than 64x64? You can use the Portraiture framework
I have a couple of questions.
#1 is this valid condition argument syntax:
"Condition": "SYNCED_RANDOM day key {{customtoken}} @addDailyLuck",
#2 Is it possible to use math to change the {{customtoken}} like say {{Hearts:Alex}} × 0.05 = {{customtoken}}
is this area used for anything in game? everywhere else I could put the buiding is busy or an npc path
In vanilla there is nothing iirc
ok great
harvey's hot air balloon cutscene narrowly misses it
Oh yeah it's true it's around here
isnt there a special order box there too
its on the platform
ah
There is also a unique (?) artifact on the tiledata, but as long as you don't block it it's ok
that is actually such a stupid place for the building I'm trying to put since it's blocked out for the first few weeks
Well SVE's Susan is in the railroad area too, and it's just in the lore
I'm trying to put a post office buiding
Like "oh no Susan is blocked on the other side, but Joja is mean and doesn't want to clear the road faster >:("
You can 100% do something like that
there isn't a lot of options to put stuff in the main area
if thats the top of town theres an unlockable shortcut
I believe that is a shortcut
I'll have to terraform ig
[[Community_Upgrade]]
Hi, I am very new to this and am barely passable at coding. I am making a mod where I pull data about seeds - including fruit trees and bush saplings (both vanilla and modded for all). I have it pulling data for the seeds and fruit trees but am having issues getting data on custom bushes (specifically testing with cornucopia more crops which uses custom bush). I have successfully loaded the custom bush api but it seems to only give me data about the bush terrain feature, not the bush sapling. I can get the bush sapling ID, which can point to the bush ID, but then I do not seem to be able to get further with getting data about the bush via the api. Is there some way to make the connection or otherwise get that data? Thank you!
May I ask if there are any sample projects or documents? I hope you can provide them. Thank you very much.
I think there's only the nexus description https://www.nexusmods.com/stardewvalley/mods/999
If you need examples, approximately all HD portraits use Portraiture
You can check the Requirements section of Portraiture, it'll show you all mods that require it
its also used for the gravekeeper npc mod i think but nothing else from what i know
Maybe a minecart from immersive minecarts too
after i finish my bear project, i may consider making a NPC about a certain SquarePants
Ok. I'll go and have a look
Thanks
Excuse me, I'm facing another problem here now. I hope to switch the HD protraits according to the season, but it seems that I can't write the conditions for the HD protraits.
Portraiture is limited when it comes to putting conditions on your portraits. If that's what you wanted to do, I'd suggest using Scale Up instead.
Hello, I'm trying to add a translation to my mod, and I don't know how to translate a section for the configs, using "Config.Name-of-the-section.section" isn't working, does anyone know what do i have to do for it to translate the "Section"?
if u show what ur config is we can probably figure it out
section doesn't have to be translated
i saw kailey do it 
i misread and thought you meant translate the word section
am i reading it wrong
i thought it said Config.General.section
is there a default json i missed
config.section.<section>.name this is from pathos' github
ohh i thought u were saying thats what they did put
This works, thank you so much!
"that's what you put" two ways xd
language is a fun thing
non native is my excuse
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/config.md also for future reference
I can only do english and russian languages cuz I know them and I don't trust google translator with any other language arr
you might have to use it if people comment in other languages on your mods
someone asked me to add the i18n under one of my mods but I haven't done anything similar to this yet
I have an idea of how it works but I'm not smart enough to add it till I reread the documentation million times
the converter or i18n?
replaces ur text with {{i18n: token name}}
but leaves the rest of the code
gives u a copy to put into ur regular json, and a copy to put into ur default json
https://nom0ri.github.io/sdv-i18nifier-app/ I believe it is this one
I see
Thats the thing right
Do I understand it right that both lines are technically the same?
"Query: '{{spouse}}' IN ('Abigail', 'Leah', 'Maru')": true
"Query: '{{spouse}}' NOT IN ('Abigail', 'Leah', 'Maru')": false
not exactly, how they handle modded spouses is different I think
wait no
yeah they're the same 
okay yay tyy
I ask b/c we may he able tk avoid it
learning it just in case
I know sometimes other ways are better than query
I have some tiles on a custom map that are still passable despite being on a buildings layer. What are some reasons why that might still be the case? Or could the reason be because I forgot to add the matching objects layers (I just noticed lol)?
just wanted be sure I got the logic right
Please open game, select tile, and use lookup anything on it
only Buildings has collisions, not 'a' buildings layer
only default building layer have the collision
all numbered layers are purely cosmetic

Also I forgot we can use -1 layers too
put invisible tiles in the same place on the buildings layer
same visual effect and they work
so even if i add 'draw: buildings' it doesn't really help?
what is draw: buildings
what if my tmx Im gonna overlay with has layers which map I plan to edit doesnt have, I wonder
I thought that didn't work because passable takes anything as a "yes, that's passable" 
(I am also not familiar with that but I figured that was me being ignorant of content stuff as always)
is it gonna create them or only pass the layers they share
probably, yeah, idk syntax 
you can use Passable T on the Back layer to mark it impassable
i saw it on other maps a couple of times and i somehow came to the conclusion it tells the additional layer to act like buildings layer.
I hate how this works tbh
you and me both
Passable T works as intended on Buildings but on Back its the opposite
I wonder if other layers support Passable properties
i'll try adding invisible tiles then or else my entire map will look botched
if 'as intended' is 'invert the passable rule for this layer' then it's working as intended
i avoid invisible buildings tiles wherever possible to reduce misplaced invisible tile issues down the line, i'd rather break my sprites into different layers
if i'm using invisible tiles it's usually going to be from a specific tile in the spritesheet that's hot pink in the editor until i hide the layer and export
makes it easier to reveal them later (visualising collisions, finding misplaced tiles)
Sometimes when I study vanilla maps I start to think that CA itself has no idea how this whole map thing works and also just play with layers to make it work
cuz yeah sometimes its not avoidable
he did also have to use tIDE instead of Tiled which gives him a free pass over doing whatever bullshit to make things work in the absence of an elegant solution
True
When in doubt put a bush on it
solution flawed, need reset terrain features
non-trivial number of 'remove bush at this tile' entries in savefixes.cs
Terrifying
the issue was that the fences aren't fencing
CA was brave...
Oh I wish there was a way to create a collision on the tiles edges
which isnt one tile wide
same........
this is a very one-tile-wide sort of game
yah
horse
truly
the Passable tile property doesn't care what the value is; if the property is present, whether it's T or F or anything else, it inverts default passability (on Back and Buildings only). so if it's on the Back layer, it blocks movement, and on the Buildings layer, it allows it
yeah, this is what I was trying to say in my amateurish lingo. passable and I have a history 
Hello, first time modder here. I've been attempting to create a dialogue expansion mod (mostly for my personal use) until I've run into an issue when using the $q and $r commands. For some reason, while the dialogue appears in game, I get stuck on the option selection screen. Selecting any option would cause a wall of red text to appear in the logs. Idk what causes this, can someone please tell me what I'm doing wrong?
Help would be much appreciated, ty in advance
the keys you're specifying in the $q/$r go in the character's default dialogue file, not the marriage dialogue
i.e. Characters/Dialogue/Sophia. you'll need a second patch
i see, I'll try testing it rnn. thannks\
Hello! I have a few questions (again) 1: What kinds of things should I make sure I include in my npcs house? I know I definitely need a bedroom and kitchen (is there a way I can make the kitchen actually usable, too?), but is there anything else I should add? Two: how do I actually add the house into the game? (It's not done yet, but I was just curious!) How do I make the doors and add lighting? Three: does anyone know if there are stair tile thingys? Like in the farmhouse? (At least, I think that's what it's meant to be-) Because I wanna make my character have like a two-story kinda house. Four: does anyone have any recommendations for how to make the outside of the house? I keep not liking anything I'm doing
And five: how do I make a spouse room/patio thing? Sorry for all the questions!
- depends on you. my list is: bed, fireplace, kitchen, some sort of sitting area with a couch and table. then i add whatever is needed for hobbies. If you have an idea of what ur npc's hobbies are, i can give some design suggestions. I love interior decorating. You can make the kitchen usable, yes
- you'll need to load a map, and create a new location, then add the appropriate warps to get into ur house
- should be in townInterior tilesheet
- are you drawing an exterior from scratch?
- new maps that you will load into the game, can help you with the code once ur done. the spouse room size is 6x9 and patio i believe is 4x4
I used to do that, too. But I saw mods using area TileData and said, "That looks so much easier", so I tried it and it worked! I didn't think it would, especially with things like wallpaper or flooring, but so far I haven't had any issues.
i keep forgetting to reply, see my msgs above
Start with an existing map that's something like what you want. Look at the Map Properties for things like lighting. For an NPC house, you actually need to add two locations: the outside of the house (which can be tricky, because a lot of different mods edit or add to vanilla maps) and the inside of the house. I recommend looking at other modded NPCs that have their own living space to see how other folks have done it. For things like lighting, that's built into the Map Properties.
My favorite resource for building maps is this one: https://stardewvalleywiki.com/Modding:Maps It will give you a LOT of info.
i'll only add that you don't need to add a bathroom. nobody in vanilla has one
Hi! Sorry for the late reply, I'm working on some pride flags for my npcs house whilst working on the hosue itself. That all makes sense, thank you! I'm (trying to, at least) draw the exterior from scratch, yes. I want eery part of this mod, if it can be, to be hand-made by myself. It's for someone really special to me
Try frankenspriting from existing buildings
Ooh okay thank you!
basically take from vanilla tilesheets (or anything u have permission to use) and tweak it until its ur "own" / looks good to u
I second the bathroom thing only because i hated drawing custom tiles for it XD
omg I love it
Oooo cool!
I'm sorry, but what does that mean-?
Hi how did you do this this is wizardry
exactly how
franksenspriting is basically putting together a bunch of sprites together
oooohhh okay
so i took from the coop and from museum and i put them together
Wait I'm allowed to do that-?
To what
for vanilla you can do whatever u want
😔
if u want to use someone else's tilesheets, you'd have to check their permissions or ask
uhhhhhhhhhhhhhhhhh
green wizard bed?
green wizard bed..
Vanilla art is up for grabs - you can build a map with it or use it as a base to make it your own. For other people it's polite to ask or to check their permissions on their mod.
my favourite building
ooo lovely
I need to get better at making building
I love the nice touch of the alternating stone at the bottom
Oh- Huh. That...makes sense somewhat in my head
That makes sense, it is their art so
CA gives all of us permission to use game assets
Oooh okay
One thing you can do, though, is use tilesheets someone else created in a map you make. You can't change that art, but you can build with it in Tiled as long as you make that tilesheet mod a requirement for the player. So there is a lot available for map builders. For example:
https://www.nexusmods.com/stardewvalley/mods/9599
https://www.nexusmods.com/stardewvalley/mods/20139
https://www.nexusmods.com/stardewvalley/mods/36102 This one even has buildings you can use!
If you search Nexus for "Tilesheet", you'll find a whole bunch of options that give you everything from pathing to foliage to building pieces.
(You're probably already familiar with DaisyNiko's Tilesheets if you've played modded Stardew at all XD)
i think they said they wanted to create it
Now again, you can't put this art into paint and change it (unless you have the permission of the creator) but you can put it into Tiled and drop it in a map. Tiled also lets you do things like flip and rotate tiles, so you have a certain amount of flexibility. (I used this to good effect in Broken Farmhouse, for example, to make it look like a lighting fixture was dangling.)
hand-made is what they said
should I put all the code in the content file or can I make a seperate file for some content
oo this is cute
It Depends on how your brain works
^
Ah, I missed that, sorry! I just got up. ^_^;
no worries 
hellos
you CAN
still is great inspo
whether u should is up to u
hi
Ooh okay! Well, thank you all for the help/advice!
I'm gonna go see if I can actually do something aside from make pride flags now-
have fun!
It's up to you. When I started, I used to have everything in one big file. As I started to make more complex mods, I found using Includes made it easier for me personally to find and edit the part I wanted to to work on. But it also means more files to run through the JSON checker.
my content now is basically all includes
Action: Include has two use cases that i consider obvious wins (although like atra said, it depends on how your brain works)
- local tokens (obviously, since it's part of the include action)
- gating a bunch of patches with the same conditions (put the condition on the include instead)
Broken Farmhouse would have been incredibly unwieldy without them. Hundreds of lines of code. But I didn't start using them until I really needed them.
I made a new one and the last curl bracket is in italic why is that?
its being silly
auuughhhh book nerd
@brittle pasture I was thinking more about Custom Builders this morning. Please feel free to correct me if I'm wrong about anything here; I'm talking through this as a way to make sure I understand it. In Vanilla, Robin is hard coded not to show an upgrade as an available option unless the base building is already on the farm. Custom Builders works differently: a builder will show all options that the builder is capable of building, even if the base is not available. I can create a series of GSQs with OR statements such that the menu will not display if NONE of the base options are there. But if the same builder can upgrade multiple types of buildings, and if even one is available, then the builder's full menu of options will display when clicked on, correct? (ie if Lewis can help upgrade Broken Coop OR Broken Barn OR Broken Shed, and if Broken Barn exists on the farm, then all three options will be available on the menu). I thnk you said that you already put in a catch so that if the player clicks on an upgrade and the base isn't available, it will tell the player that the base building doesn't exist instead of throwing the divide by zero error, right?
im uhhh gonna have to fix these downward tiles
the outside ones, theyre upside down
yeeeeeeaaaaaah i just dont like how they look here
Well like those are the tiles in the image above
i think they shared at the same time
no, a custom builder should still follow the "only show upgrades if base building exists in location" rule
are
are there vertical tiles
vertical beams ye
unless you mark it as also be able to be directly built
some tiles work two jobs and sometimes you may need to overlay them with other tiles to look nice
ill save myself the trouble of finding them
this looks good enough
i have some free space to add more furniture
Okay, good!
lovely toilet and shower in the kitchen
I think it’s meant to be the bathroom sink lol
The kitchen of the bakery is in another room iirc
These?
the kitchen is below it 😭
im not that gross
though tbh i shouldve added another door for the bathroom
yup!
this sink made me confused
I see that its the bathroom now
hxws?
himetarts x wildflour
oh
very good tile creators pls check them out
always can draw one yourself 
maaaaaybe but dont have the motivation
mmmmm feel like theres not enough stuff
or just feels unorganized
omg is this a cafe
you could add/fit more tables
mmm true
couch in the bedroom area
bakery
posters on the wall
awesome sauce
More counters near the oven for cooking too, maybe a small island
doesnt exist for all flooring
but there is a vanilla shadow tilesheet
u could try using that
is the bathroom layout a placeholder cus some of it could go on the leftside wall or something instead of it all being lined up
ye i didnt figure that out
Looking at stuff in https://discord.com/channels/137344473976799233/421386982787252224 might help?
I’ve seen quite a few designs with the HxW bathroom and bakery stuff there
hes a fucking tileset? 😭
yep lol
would adding rugs at the kitchen make sense
Yeah most kitchens have a mat or rug at the sink
Which I now notice, you don’t have a sink in the kitchen 
ohh wait true
mmmmmm maybe i should replace the HxW counters...
i dont think they blend very well
also some of the tiles not having a proper outline on both sides KILLS me
vanilla tiles r sometimes made with the entire row to be used
!ask what tilesheet is that one with the lower end/front wall lit windows? is that a custom one?
Ask your question or describe your issue here, and someone will help if they can!
r u referring to speedy's map or?
no I'm making my own mod and I can't find it
Yeah, that's probably it
thank you
I've seen it a few custom farmhouse maps and I thought it was vanilla
it's not on any vanilla map so I should've figure that out from that :p
do they have any dependencies?
If you check the requirements of the mods that use it, you might be able to find the tileset they’re using?

this one is Sharogg's Tilesheets https://www.nexusmods.com/stardewvalley/mods/27117?tab=files&file_id=161809... now I'll look up smth else
Quick question regarding when you add something to a map. It changes the map size if it goes off the edge, but if you do that on the left, does that mess with the coordinates of other events and paths?
Alright, good. I had my suspicions about it and wanted to make sure before I made any horrible mistakes if I were to add to a shop building. xD
oh yeah chaos would ensue
Oh, how does pathing work on custom maps? For NPCs, I mean?
itll work automatically
there has been some issues with adding warps and NPCs using them when they shouldn't though
cant remember how i solved it the couple times it happened
Oh, that's good. I thought osme extra work would be needed but that's good. I keep putting off putting more work on my first mod because I get so intimidated at the more ocmplicated parts. xD
1.0 of my mod didn't have an update key, I'm assuming any users who installed the original 1.0 version will have no idea my mod has an update available?
yes
The nexus website also shows updates if they happen to check, but SMAPI itself won't notify them.
So sad lol 
Huh, I see Nexus is probing around adding mod upload feature to Vortex... 
https://smapi.io/log/d571f074ad754c6e8fca8a5c5067b5da so I know it's to do with the big animation but I'm unsure how to fix it
Log Info: SMAPI 4.5.1 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 37 C# mods and 24 content packs.
Suggested fixes: One or more mods are out of date, consider updating them, SMAPI is out of date, consider updating it
yea yea i'm not updating governor
can you show the json
Hello, how are you? I want to do this. I want to create my own seasonal Sweet Gem Berry, meaning the fruit has a different sprite depending on the season, not the original one, but mine. Instead of creating three separate objects, I’d like my custom Sweet Gem Berry crop to change its sprite based on the season. Is this possible, or do I have to create three different objects, one for each season? I know this can be done with the vanilla Sweet Gem Berry using an image edit, right? But what if the item is from a mod?
once an item is loaded into the game, there's no difference between it and a vanilla item, and in fact there's no fully reliable way to tell that an item is from a mod (or a particular mod). so you would patch a modded item the same way you patch a vanilla one, and the only difference is what assets you patch (and sometimes how)
you also have to make sure your edits come after the mod you're targeting (so that their item exists by the time your patches run), but that's very straightforward
If I understood correctly, instead of using the numeric ID like I would for a vanilla item, I should use the mod item ID, right?
I didn’t quite understand that part.
Even numeric ids are strings now
You should take advantage of the fact that they are string when making your own item ofc
but yes you use the modded item's id and use EditImage on its assets and so on. you'll need to read the mod in question to figure out what to do
the short version is SMAPI has to apply edits one at a time, in some order, and you can control where in the order your edit goes by giving SMAPI a number about it. if you want to edit SomeMod.MyBanana, you have to give SMAPI a later number than SomeMod.MyBanana uses
I’m not very familiar with programming terminology yet, I still don’t fully understand terms like array and string. I usually learn things by repetition, I learn how to do them but I don’t always know why they’re done that way haha
The mod is mine
And how do I know what number the object I want to modify uses?
well
if it's a mod you didn't make (the putative SomeMod.MyBanana), you would read the mod's json or source code and get it from there
https://stardewvalleywiki.com/Modding:Objects/Object_sprites or Data/Objects for vanilla items
if it's your mod then all the stuff about edit order doesn't matter, you're in control
If the mod is mine, how do I know what load priority I assigned to the item?
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/action-editimage.md you can define a priority yourself
Thanks
if you didn't specify one (generally a good idea not to unless you need to), it is Default for edits and Exclusive for loads
within your own mod, you do not need to specify priorities except in narrow circumstances (see below). the order you list your patches in your content.json/included jsons determines the order they apply
I didn’t know that the order in which we place things in the content.json mattered.
the narrow circumstances: if you are blank Loading a shared asset that is in the global namespace (i.e. other mods might need to Load it and it isn't fully controlled by you), you should use any priority for your Load other than Exclusive.
for example: you need to Load something (an empty json, {}, is best) to Data/Events/AdventureGuild if you want to put an event in there, since it is missing in vanilla (no events are staged there). that is a global shared asset, so you should set your priority on the blank load to something not-default. it is customary to use Low but any value other than Exclusive is fine
Order only really matters if you have multiple entries targeting the same thing, since it determines which of them actually applies in the end
i use it all the time when applying compatibility patches, and sometimes config options
e.g. patch in the default dialogue, then patch in a modified version over top when a particular config setting is enabled
I understand. Well, I’ll see if I really understood everything correctly. I’m going to give it a try. Thanks everyone.
Good luck 
I´ll need haha
does anyone know any mods that use SpaceCore's custom buffs? Need to test and make sure my patches don't step on casey's
Clothes For Danger Weather uses the sc clothing buff stuff iirc
try getting rid of draw offset?
I have a question. Will the harvested fruit’s sprite change as well? I mean, will the one in the inventory change with each season? My idea was that the sprite would depend on the season in which it was harvested, but if the inventory item changes too, that would be too weird even for my mod. So I guess I’ll apply the change to the crop in the ground instead, which makes more sense, since the plant can change its appearance with the season while the fruit stays the same.
not too familiar with crops but i'm fairly sure the inventory item is a totally different texture/object than the growing crop sprites so you can do whatever you want. they're not inherently linked
Lovely
still occurs
My idea was to change the fruit sprite, but since the inventory fruit and the fruit harvested from the plant are the same object, I assume the sprite will change even after it's harvested. So to keep things simpler, I'll apply the seasonal changes to the plant, which makes more sense, and the harvestable item will remain the base game fruit.
Thanks Ichortower and @verbal glacier for clearing up my doubts.
can you share your patch to animation descriptions
and also screenshot your spritesheet
"LogName": "Neith Animations",
"Action": "EditData",
"Target": "Data/animationdescriptions",
"Entries":
{
"Wizadroid.TGWNeith_dishes": "16/16 16 17 17 18 18 19 19 18 18 17 17 16 16/16//offset 1 0",
"Wizadroid.TGWNeith_cooking": "20/20 20 21 21 22 22 23 23 22 22 21 21 20 20/20//offset 1 0",
"Wizadroid.TGWNeith_loom": "24/24 24 24 25 25 26 26 27 27 26 26 25 25 24 24/24//offset 1 0",
"Wizadroid.TGWNeith_eat1": "14/14 14 14 14 15 15 15 15/14"
}
}, ```
hmmmm it all looks right to me
wait i think it’s the frame 8
you only have 7 frames
... that could be it
Hi!
Is there a way to spawn coal nodes (which naturally spawn in quarry) via CP or FTM?
yep, coal is one of the supported types in FTM's ore section
thank you nic it fixed it 😭
yay!
oh my god i made this too fast she won't shut up now
munch munch crunch
It looks like he's growing a mustache hehe
well that wasn't very nice but alright
My building has two sprites, with lights-off by default and lights-on on the same tileset
How do I change FromArea to pick lights-on depending on the {{Time}}?
Lets say Time is > 1600 and < 2200
daytiles/nighttiles
oh is that a thing
tho i think you cannot fully set the time but you can make it so till 7pm you have a certain thing and then from 7pm on its whats considered "night" or w/e
its on the map modding page, just CTRL+F daytiles etc
I guess that also works, tysmm
it’s also much more efficient to use than to conditionally patch a map
people with 1000+ mods will thank you
If only there was a more visual way to see how to do it
How do I get tilesheet index with my custom ts
I have a question if anyone knows when the Building data is determined: I have skins that I have created for the farmhouse, and each has its own Metadata with values for the Chimney position as I am still trying to fix the smoke not lining up. Does this get updated visually every time the skin is changed, is it a location change, a day change, etc.?
i was talked out of doing conditional map patches for that reason too 😭 big animations it is
So far I've not seen it change, so I am trying to make sure that I am not just expecting a location change when it's only set in the morning or something.
Typicallly, every 16x16 pixel square is a single index, and the top-left is 0. So you just have to count (or use a program that does show the tile indexes according to a grid)
The only exception is when you have tilesheets that actually use the size of the object defined elsewhere to determine the width and height of the sprite index so they can sometimes be bigger than 16x16 (like NPCs)
thats something different in this context me thinks
from someones other code
that 3rd number
is always the same
so its not the tile number its something else
im doing nighttiles for the first time so its super confusing rn
nightiles is jsut like daytiles which is described on the wiki page
the layer you put is the one the tile you want changed is on, then its the coords, then the last number is the tile in the spritesheet you want to use the asset from is on
which is the same because i assume you are looking at a window tile or lamp or something similar which is jsut one tile big so its ofc always the same number
907 is the lamp off
oh
first 2 numbers are your tile coordinates on the map, 3rd is the sprite index on the tilesheet.
so nighttiles make 907th tile appear past 7pm
in this context
and daytiles are basically the same but they appear before 7pm
@spice inlet hi is there a GSQ or API to tell if current location is a PIF
Or any given location
PIF room location names follow a specific pattern: DLX.PIF_MINE_{layout id}_{farmerId}_{doorId}
so just check for that I suppose
there's also a few custom location modData entries
could check for them, though imo the name is more reliable and simpler
do you need a GSQ for that? I can add one in the next update
I think it could be useful for ppl and would let you formalize the name logic
The thing i wanted to use it for is Merchant, I'd like to check this and then know to use the PIF entry warp for where to queue customers
So, for anyone curious, I figured out something about the chimney issue on the farmhouse skins: Saving and reloading the game the day after assigning the skin makes the chimney smoke redraw in the correct position as set by the skin's Metadata.
Just sleeping doesn't change the position, but reloading the game after a save (so the game loads with the building skin already applied) does.
It's just a bit weird, because even if I draw the chimney in the correct space and don't set the chimney position, the smoke draws in the wrong spot until those steps are completed.
hello, so I am having a lot of trouble with this mod I am trying to make... I have ZERO mod experience and am basically trying to cobble this together using the FTM info on github and looking at examples, but honestly I have no understanding of what I'm looking at. I'm trying to make this mod that will spawn truffles out in the woods and I think I got it mostly down but I am having trouble with the syntax at the end.. like I said I genuinely don't know what the brackets even mean or do so if someone could take a gander at this content json and beat understanding into me I would really appreciate it
Yay finished my deltarune church mod
Only issue is to find a place to overlay a 10x21 tile building without it looking weird
Maybe I can create the whole hometown and fill it with all the buildings gradually

Could you do an Include with OnLocationChange?
yes but ill be sad about it
Aw, why. 😔
Monthly mod stats time!
Mod compatibility
83.5% of SMAPI (C#) mods are compatible or have a workaround, up from 82.5% last month.
Unique mods by type
We have 805 more mods this month (compared to our typical average of 398/month). That was probably driven by Nexus Mods' Stardew Valley Modfest, which just finished a few days ago. That's the biggest single-month increase since Stardew Valley 1.6.0 (when we had 1060 new mods in a month). So it seems that event was a big success!
That includes:
- +470 Content Patcher;
- +196 SMAPI (C#);
- +61 Alternative Textures;
- +31 Fashion Sense;
- +10 Farm Type Manager;
- +7 XNB;
- +4 Furniture Framework;
- +3 Mail Framework Mod;
- 0 Better Artisan Good Icons;
- 0 Custom Furniture;
- 0 Dynamic Game Assets;
- 0 TMXL;
- -1 Shop Tile Framework;
- -4 Json Assets;
- -4 Producer Framework Mod;
- and +32 for frameworks with <100 content packs.
Content Patcher packs
We have 14,137 Content Patcher packs.
The top five Format versions remain...
- 2.0 (3996 ↗ 4094), 2.3 (891 ↗ 907), 2.4 (667 ↘ 590), and 2.8 (844 ↗ 1064) for Stardew Valley 1.6;
- and 1.19 (570 ↗ 572) for Stardew Valley 1.4.
Open source
- We have 4,387 tracked C# mods, of which
- 2,513 mods (57%) have a source code repo, with
- 1,332 (53%) in a multi-mod repo and 1,181 (47%) in a single-mod repo.
The percentage of C# mods which are open source continued its steady decline this month (from 58% to 57%), probably related to the wave of closed-source AI-generated mods. The percentage has been consistently dropping by one point per month for the last several months.
Web costs
And finally, web hosting costs for the SMAPI.io site, update-check server, and API dropped slightly to US$199/month. (The graph is always a bit behind due to billing cycles.)
See also
- Stats for ← February 2026
- Full mod dump (93 GiB)
- Download all open-source mod repos
- Dynamic view of mod dependencies
And that's it for this month! Feel free to ask if you have any questions.
🤔 +7 xnb
+7 XNB 
+7 xnb 
I'm more curious about the +32 for smaller frameworks
I can think of at least a couple small frameworks that are relatively new
the thing is smaller framework here means specifically smaller contentpackfor frameworks
32 mods made for those frameworks is quite a lot still compared to previous months
Yeah, ones that aren't CP or AT or something
Does smaller frameworks exclude frameworks that work via content patcher? Like nature in the valley or secret note framework, which don't have their own contentpackfor field
Yes, those are not counted
That list only includes contentpackfor frameworks
(small nitpick also but those don't technically work via CP, they just work via the content pipeline. CP can access that, but so can any C# mod)
That's pretty cool to know. Thanks!
an accurate nitpick, though. It'd be interesting to find a way to highlight small framework mods that work via the content pipeline. Like I know Dora made Dora's Drills Deluxe and made use of my Ladder Chance Framework and I haven't heard of anyone else using LCF before so I was excited to hear about that
That was part of my reasoning for making the dependency graph
oh, yeah, that thing is cool
its cool that the modfest doubled the number of new mods 
makes me wonder if any xnb mods were submitted to the event
catfest to double the cats in mods
random cat girls in events...
I almost made a tortilla-based farmhouse (exterior and indoor appearance) for April Fool's in honor of the previous tortilla mods, but I will not have time to do it so I dropped the idea. xD
oh, man, is there going to be another influx of april fool mods this year? Lol
As seen in the photos, the mod has encountered an issue, where the 'search' page cannot show the newest version of the thumbnail after a few days. I have tried switching to another thumbnaill and switching back again, removed the 'Entrance' image entirely and tested a new image, but this image seems 'stuck' as the thumbnail.
Could anyone provide a solution? I'm a new modder. (Also new with Discord.) Thanks!
If it's the thumbnail on Nexus, there might be a server-side cache involved?
If it’s server side presumably you can’t clear it?
You can't clear their cache, only your own browser cache.
Nexus is sometimes wonky but I haven’t heard this specific issue afaik
so should I report this to Nexus
I would not be surprised if it’s nexus’ fault but I can’t tell for sure
Seems reasonable to report it
Yep, you just have to wait for the cache to update on Nexus's end.
I have already updated the mod thumbnail few days ago
If you've already clicked the Star to set it as the primary image, that's the most you can do on your end.
ah, I haven't gotten the new UI yet, then
I'm in this section, "Manage Mod" and then "Media"
(if gymnastic is on the beta UI, that's even more likely that it's a Nexus issue)
how do I get out of the beta
I registered few days ago, and have only seen the beta UI before
Nexus has a discord server or you can email them tbh
Yeah, at this point, report it to Nexus in case it's something with the beta UI causing it to not register the thumbnail change.
i have no idea but suggestions board makes me feel like no
i think this was buggy before too
as that sounds like its for suggestions, not bugs
try making a different image the ⭐
and then if that updates correctly, flip it back to ur desired
I have tried before
"website bug report" is probably a better place
It doesn't work, it does not update, it is practically stuck even if I remove the image
I'm not sure where that section is
anyways an admin will have to approve it so they will see it I guess
I see it now, thank you
I'll log the bug now
Is it normal to have content moderation at 0 warning points on Nexus?
i don't know, but if your handle contains "teen" and/or you verified your age with the site (which is located in the UK), they may know or have guessed how old you are and acted accordingly
I'm older than 13, so should be legal to use the site?
that certainly makes it sound like they have guessed you are not 18
im not sure what content moderated even does
or not <insert UK age of majority here>
(Tbh ask nexus)
found it
It's because I am a new user on the site
which is around...?
i don't know. i don't live in the UK
i read a comment on a mod saying that the user could not see the embedded imagur photos on the modpage description because of age verification stuff in the UK
I wonder if that kind of thing is why I’ve seen some people put those mod page photos in the media section of their mods? Because when you do that, the image is being hosted on nexus. Not a perfect solution I feel, but it’s interesting
yeah imgur is unusable in the UK (and some other countries)
would anyone know why my mod keeps making a data folder with a .save file in it? in the mod's folder
unsure if that's normal with a FTM mod
FTM packs always create a folder like your FTM pack folder/data with one .save file for each loaded save
they're json files that keep info about weather and what spawns will reappear overnight
the folder's safe to delete before uploading your mod, or while editing it etc
Thank you
Something's wrong with my lantern 
I am going to have to fight Scarlett
over
Never mind
I just had to make sure all her damn conditions were fulfilled before debug marrying her to test her room
figured it out LOL Just needed to complain and the solution came to me
wait it also occurs to me there's a Scarlett here, NOT HER, THE SVE ONE
fun fact, marrying Scarlett via debug before all of that marries you to a fake Scarlett with a fake room and boy nothing I was doing was fixing it to be the real Scarlett without just redoing things
I did think you meant Scarlett the person in here and was wondering where it was going
Very confused when you started talking about conditions 
that did not occur to me at all, whoops
i thought sve char was scarlet
am i berestain bearsing
Really confused me because I appeared to be married to Scarlett, but it wasn't a real Scarlett and so the marriage condition I had wasn't applying
i also thought u wanted to fight scarlett here
yes
i rly enjoyed berenstain bears growing up
the panda one was a...thing
but in general i liked it
Accidentally shouting a challenge to another human instead of expressing frustration at code
I think the final culprit was an invisible event that apparently activates actual Scarlett
sve's coding trickery always amazes me
sleeper agent Scarlett
wait huh
why
is that necessary?
I don't know! But there's a fake Scarlett you can talk to before she's giftable and after a certain event, it swaps over to a giftable Scarlett
Instead of changing the first Scarlett to make them giftable I guess
i'm guessing that's why there's a scarlettfake in seasonal cute's files
Yeah ScarlettFake was the one I was with and she had her own DIFFERENT spouse room that wasn't Scarlett's current spouse room
which BAFFLED ME
Tbh this might be how u had to do a conditionally socialable char
I assume it's just antiquated code, yeah
Back in olden days
ah that makes sense
but it confused the actual hell out of me when I had a Scarlett who would only say ... with a spouse room that I'd never seen before
Because if you type Scarlett in the console before then it goes to her. really took me on a journey
stardew arg
finally
okay i need help once again, i decided to start adding in configs to my mod. i wanna add in simple foliage to start ( anette has open perms but i did get perms from acerbicon and morghoula for the unofficial 1.6 update ) but when i tried black boxes appeared. 😭 also tried to make the gmcm buttons match my recolor but they just don't update? my content json: https://smapi.io/json/content-patcher/dae41d5027324239b5b7a856695f46f4
Is there a willy marriage mod?
this question is better suited for #modded-stardew
@tranquil olive I think I see a tiny issue in Bloom Again and I believe the fix is more quotes:
Trigger action 'ohitslunette.BloomAgain_OnSandyAccess' has action string 'AddMail Current BA_Letter_SandyClothing tomorrow, RemoveConversationTopic NewStock, AddConversationTopic EmilysNewMove' which couldn't be applied: optional index 3 (MailType mailType) has value 'tomorrow,', which can't be parsed as an enum of type 'StardewValley.Network.NetEvents.MailType'.
"Action": "AddMail Current BA_Letter_SandyClothing tomorrow, RemoveConversationTopic NewStock, AddConversationTopic EmilysNewMove"
to
"AddMail Current BA_Letter_SandyClothing tomorrow", "RemoveConversationTopic NewStock", "AddConversationTopic EmilysNewMove"
]```
ty radium
🩷
-# I really gotta get this update out...it might be out today perhaps?
also I hope you're enjoying the mod so far 
oop and some brackets
I have this for it now (I did not realize there was an Actions option at first oops-)
loving it! I saw the flower screen for sale and ran back to press more flowers 
ahhh yayy that's good to hear 
I really want to add more furniture and crafting things...but then that requires going back to the art spriting mines-

maybe sometime soon though
This is difficult to diagnose without knowing what is intended to go on those spots-- are any of your mods patching those particular tiles in spring_outdoorsTilesheet?
In particular, I can identify tiles 176, 206 and 207 that have manifested as black tiles
does anyone have a link to a tutorial for adding a custom items that are innteractable by right clicking?
You can do that with SpaceCore
I think it's with spacechase0.SpaceCore_OnItemUsed but take a look at the docs at https://github.com/spacechase0/StardewValleyMods/tree/develop/framework/SpaceCore/docs
I see
where exactly do put it i the code?
do I need to add anything to maifest to be able to use spacecore
Depends on the kind of interaction you wanna have
Some vanilla mechanics can be done within cp
raising fiendship with a specific npc when interacting
your new best friend
genuinely so annoying when it appears
how do i tackle it again?
is it something to do with content
!tilesheetclimbing
When creating or editing maps in Tiled, one common error is tilesheet climbing, marked by red text containing "invalid tilesheet path '../../..'. This is caused by SMAPI not being able to find the tilesheets needed by the map file. To prevent this error, make sure that you have a copy of all necessary tilesheets in the folder containing your WIP tmx file. Copies of vanilla tilesheets can later be deleted, but must be present while working on your map.
If you get this error with a completed map, an easy way to fix it is to open your tmx file in VS Code or a similar text editor, find all of the places with <image source=, and remove the filepaths to so that only the tilesheet names remain. For example, if the code says <image source="Content (unpacked)/Maps/townInterior_2" width="512" height="64"/>, change it to just <image source="townInterior_2" width="512" height="64"/>.
oh so im gonna need to copy things like interior and HxW tilesheets into my folder
Have them present when working on the map, yeah. Then delete them after saving.
basically like this right?
Doesn't Tilesheetinator fixes all these unnecessary things
it does, i have that
Yeah, don't keep them there if you ever want to upload, though.
All of them gotta be just the name
wait- why is it using TownInterior twice??????
Then when you load your tmx to Maps/ it's gonna find tilesheets in the relatively same place it's located, so you load your custom tilesheets to Maps/ as well
Something like that usually happens when you are working on a map on a folder, and then save it to another folder.
But for them to properly show up in Tiled, you need to have a separate folder in mods folder which you choose and then make tsinator fix tilesheets
That's how I think it works and it does work for me
If you open Tiled and all the textures are visible by default then there's a high chance some paths are wrong
oh that fixed it
hooray
even my custom object worked!
one thing though, my wall collision seems to be off
this is as far as i can get near the wall
i probably should put it a layer below instead
Well cuz for these bottom walls it's better to put them on front level
Or always front
So you have an illusion of walking behind a wall
yeah
happens with these ones too
those bottom borders go on front, and you use the black void on buildings
that way, you can touch the wall
oh, okay!
You may wanna study vanilla maps layers with H key pressed to see how it works
ill try that
I did that
Now I do perfect collisions and layers almost by eye 
Lowk I think of making a little guide for Tiled basics specifically for SDV which mentions all these things in one place
Since I gone thru them and now I see people stepping on the same stones
yay it worke- oh
the bottom of those plants are on building2
why can i just phase through them
Buildings2 is not really buildings
As in, only the original buildings layer has the impassable property
the others are purely cosmetic
Kinda?
It's up to you if you want to add them but i will say they are definitely useful
All my monsters had color blue context tag cuz I copy pasted their properties from joja cola lol
So yeah you can give your food colors and something else too
how do I get it to show up in game
use CJB item spawner to check if its there
I am but it's not there
no log errors?
no, just commas ad comments
hm
did you load the objects json
wait
do you have your objects in content or a separate json
seperate
the format is not needed for separate jsons afaik, its only needed in content
only in content
did you do an include in your content?
Change entry from pufferchick to paper first of all
Remove that extra coma in the end
I did ot do an include in content
you should
And comments aren't really needed too, seems like you ignored the second one anyway 😭
any separate json other than content must be included inside content
its the games way of telling smapi to include that json
anyone know how to fix this?
I don't get it
You are missing one } before the last ].
i dont do CP mods yet, but is the } properly closed?
line 9 { should be closed first before ] in line 40
You may wanna use VSC as well, it shows {} colors and you can validate your code in real time
also using a cleaner json formatter will make it easier to work
Fix the Entry ID, remove the extra coma in the end and add include
Not sure how including works yet so Speedy can help you with that
Since it's your separate json, game have to know all additional jsons to include so you do that in your main content json me thinks
Is it actually a separate json, or is that screenshot from content.json?
it's seperate. I'm tryig to do the include code now
oh ok
Ah, don't forget to erase the Format field, then.
oh that's why it gave an error
Includes copy the format of the main content json right
I did remove the format field but it still doesn't work
The content.json part of a working include should contain Format, Changes, and Action Include. Make sure to point the FromFile to the right folder (if the json to be included is in a folder, and the right name of the json).
The json to be included must not have a copy of Format (only one of these, and only in content.json), but it must have its own Changes before the Action : (WhatEverYoureUsing)
As usual make sure to check what the error is saying and make sure you have just the right amount of brackets 🥴 , enough commas (a missing one is a big deal when the game tries to read it, while trailing commas (unused ones at the end) are allowed). Generally make sure formatting is as it should be.
do included jsons support configs or only main content json does
since they also come before the changes
after format
hmm dont think so no, but not 100%. you could write it up and test
I see
if you mean having a second ConfigSchema that is
Thank you
yeah
but if included jsons can work with config tokens from the main content then its fine
though you can use localtokens to load a bunch of different things through the same included json, and you can gate includes with a When, so thats very useful
Include is supposed to work just the same as if the things were written in your content.json, aside from the duplicate Changes setup
yay
They can, yeah. No need to replicate configs or make specific ones for different includes… which shouldn’t be possible afaik.
I see..
Thank youu
this is sick 
????? where'd the blueberry one go
did you put the right id and entry
i ate it sorry
oh you had it
Does anyone know a convenient way to know which mod is the cause of a "No Translation" text?
Usually, the translation token includes the name of the author and the mod it's from... I think?
But this one is weird
I know that this is not the place to ask about mod issues but this is more on the technical side so mod makers probably know more.
If mod author bothered to do so yes
which is mostly a standart
In this example, do you think the mod author failed to do so?
Unless their name is "Core"?
Can't say for sure but most likely
Okay thanks!
Not sure how translations work so you may wanna wait for another person to reply or try some luck at #1272025932932055121
grep/"find in files"/tool of choice to search your mods folder for the string in question
That's lurking in the dark iirc
whats the maximum edibility number
on my linux install i would do grep -ri 'Core.Monsters.Construct' <my mods folder> and that would find it in a jiffy
But generally speaking no you can't know which mod led to the no translation error without looking through the file
i18n keys are not mod id qualified in any way
I kinda wish CP would log a no translation
mine is but thats because i unnecessarily add my mod id
something around 1000 me thinks
jeez im gonna have to find a balance
life elixir (the 100% heal) only has edibility 80 and is hardcoded to restore 999 health
I am trying to do that right now... :(((
i don't think edibility has a maximum (except the int limit, lol) but functionally you will get to 100% long before that
What if a mod adds int.maxvalue max health
skill issue
Lurking in The Dark... as in Sen?
Thank you so much! I will check it out.
okay it actually may be 200
ah the text display overrides and shows '100%' if the value goes over 999
You were right! Thanks!
ig tonic IS hardcoded due to recent changes
game doesn t have anything with above 200 edibility in data
at least I cant find it
-300 is inedible
puffer has -40 and its edible
just with negative stats
edibility does get buffed by quality. an iridium-quality magma cap is basically a full restore to health and energy and that's at 70->140. so 200 should be more than enough for whatever you are plotting
Guys. I have a question. What if my mod requires a framework mod in order for it to work. But then, the mod author of that framework suddenly deletes their mod from Nexus without any warning.
What can I do in this case to keep my mod working again?
implement your own version of the framework
I have no idea why they deleted the framework. It was working well...
Can you please explain further?
Do you mean that I should make my own mod that performs the same as theirs?
is there any way to add text color to GMCM menu options or it requires some C
it's more or less your only option, yeah. or get someone else to do it
The framework that the inital mod uses which got deleted yeah
what was the framework? i don't recall any being removed from nexus
they deleted all of their mods, so they were evidently leaving
slingshot framework
SlingShot Framework
Yup
I do have a file. I can upload it of course, but I'm not sure if it's okay to do so.
it is not
well its not but
you can still use it if you put it right or its something else to do
technically you can still download the mod from nexus if you have the exact url, since nexus doesn't allow authors to delete mods, but that's also dicey
Really?.. Now that's interesting.
i don't recommend it and i won't help. but in order to keep collections from breaking in a situation exactly like this one, nexus doesn't allow authors to fully remove their own mods (nexus can still delete them)
that's all the information i'm willing to provide
you have easier chances finding another mod atp
^
Okay, thanks. Now, I'll probably need to try making a framework mod just to keep my mod working. 😆
Thanks for the help y'all
So you're saying always make a collection with your mod and all dependencies :P
how does one even create such thing as framework
is this just a mod that provides useful things to other mods?
Like token or mechanics
Maybe u could use archery or something
Or extra machine configs which is secretly slingshot ammo config
Interesting. Thanks for the idea.
!chatgptcode
We don't recommend using generative AI (such as ChatGPT, Copilot, Claude, Grok, etc.) to write mods for Stardew Valley. There are a few reasons.
- AI-generated content is not allowed to be posted in the server. If you need help with your code, you won't be able to post it.
- Large Language Models aren't trained on enough Stardew-specific information to give reliable, accurate output. They also have no concept of what they don't know, and so cannot tell if they're incorrect. In short, they don't know if they're hallucinating a solution that simply feels like it makes sense or not.
This holds true for both SMAPI/C# mods, and mods for frameworks such as Content Patcher.
There's no shame in being new to Stardew modding, and you won't be talked down to for not knowing what you're doing. We strongly recommend consulting with other mod authors in the appropriate channels as a first step if you're completely stuck at step one.
Anyone here know a way to contact mod author AlichanST other than Nexus Messages?
Nexus messages send you an email iirc
what do I put in i18n? do I just use that instead of a dialogue.json file?
I'm no expert but i18n files are basically "Text Banks"
If my item's DisplayName is {{i18n:FjorlagRond.MWBRM/RubyRing.DisplayName}}, it goes to the i18n file to find what text or lines of text corresponds to the token
In this case, "FjorlagRond.MWBRM/RubyRing.DisplayName": "Ruby's Aura"
So the name of the item will be "Ruby's Aura" as displayed in the game
You’d still need a dialogue.json if all of your dialogue keys are in there. Having a i18n alone doesn’t do anything by itself.
So basically, the i18n files stores the Phrases and Sentences where the dialogue.json will summon them from, as long as you match the tokens correctly
i18n is pretty much an internationalization framework for translation ease
Thanks!
Aba makes a good example on how this works here: #making-mods-general message
understand it a little now
Hellooo. I was just wondering, how do the tile properties work? I am confused 
Tile properties is a way to add different mechanics to a purely visual tile
Usually tile properties on tilesheet are tied to the map tilesheet used on, so different maps using the same tilesheet may have different properties on the same tiles
Your tile can have properties in two ways, either by having it on tilesheet to give that property to every tile on entire map or done via TileData on purple objects layer if you want some individual tiles to have some particular properties
Usually only Back and Buildings layer tiles can have properties (Also to mention that all tiles on Building layer have collision property automatically, unless changed)
https://stardewvalleywiki.com/Modding:Maps#Known_tile_properties
Tileset properties can be access via this button on the bottom right if you wanna edit them or just see what they have
Oooh okay
You can also click on any tile on the tileset to see if it have any tile property
Cool! Thank you! I also have a follow-up question, if you don't mind answering that for me
Sure thing
So, I want to have some pride flags on the walls of my npcs house. Is there a way I can make it so that if you interact with the flag, a text box will pop up so I can put a small description of what the flag is?
Sorry if that doesn't make sense
Yes
Yes, thats TileData
Oooh okay
For that specifically you need 1. Something on the Buildings layer 2. A tileData box on the purple buildings layer on that tile 3. The property of Message “message” in that box
why does this need i18n?
thats the example of said TileData and its Property use
It's something that will display in the ui as text, so it needs to be translated
I think it comes up when one npc reveals the taste of another npc
yeah, like when jodi warns you never to give vincent alcohol /lh
Ex: penny won't refer to pam as just "pam", but say something like "my mom" or something
Im pretty sure this is how we get the elliott octopus daddy
The what
Thank you for the assistance! I'm gonna go do that-
the what
New quote added by p.llow as #7808 (https://discordapp.com/channels/137344473976799233/156109690059751424/1488542535679738099)
lmao
How do I use it? I'm trying to make two npcs and they are related
do't have a i18n file yet
Question about context tags. Are the cooking food ones used for anything in particular or there for potential future use?
there are some mods that use context tags for things like allergens and dietary restrictions for NPCs
Thanks Elliott
Allergy restrictions is neat. I’ll be sure to add context tags to my items in my mod’s next update lol
see here for some more info https://stardewmodding.wiki.gg/wiki/Context_Tags
and here i just manually put every food that contained eggs into a "rejectitem_" dialogue
is this a valid input? I'm so confused. I couldn't find anything onlie
the {{i18n}} token, a content patcher feature, pulls a text value matching the provided key (in this case, "son") from your mod's i18n files
meaning, that is valid if your i18n has a "son" entry in it
I font have a key yet and I cant find key exampöes for this
my questions is who's making XNB mods??
I suppose you create a i18n folder inside your mod folder and then add default json with all the keys and english text, once you finish, you duplicate it for each language you plan on supporting and then edit those jsons name and text content without touching the keys
then you use keys wherever as long as you do it like {{i18n:keyname}}
chosen language in game will automatically take the right json to pick text from
and if you dont have this languages it takes the default one
so english most of the times
this is way too confusing for me
github link above does explain it better with examples tho
do you understand tokens generally?
or its something with i18n being confusing
i18n is confusing to me. I have no idea where to begin adding keys and everything
