#making-mods-general
1 messages · Page 525 of 1
oh yes i know how to do that, im not sure how to do the one where there's a blue highlighted button that you can click to go where the message is
Ohh, yeah you have to click on the channel(s) or person(s) you want to send it to first
So I downloaded your newest upload on Nexus to test it and apparently that one tries to edit Strings/maps instead of Strings/StringsFromMaps.
So maybe you uploaded an incorrect version?
Do you use the entry name or ID name for a weather type in regards to appearance modding conditions? I would manually test, but unless I missed a command, I don't know how to force modded weather types.
The ID, but ideally the "entry name" (I assume you mean the key you used in your patch?) would match the ID
What? But I've just tried to download it and it shows me the same entry Strings/StringsFromMaps
Seriously this is freshly downloaded.
Whoops, I pinged the wrong person. Sorry, TL13...
omg what is happening im so serious it says Strings/StringsFromMaps on mine

Fooled me, I thought I just missed some huge letter sign that was the equivalent of "USE THIS DUM DUM or bring me gum gum". Then I red the entries and realized was something completely different...
WHAT IS HAPPENING
So it's from a different mod. Was going to try and get Weather Wonders to work a seasonal outfit mod, but I think I ended up using all of config entry names instead of weather type names
Hmm, do any of your previous versions ever have Strings/maps?
No it's literally always been Strings/StringsFromMaps, even in the original mod
Okay no matter where I try to open my maps.json every version displays Strings/StringsFromMaps
Is it difficult to make mods for stardew? What types (if any) are easy, and which are hard?
really depends on what kind of mod you want to make
Really weird... maybe the problem is on my end...
Dialog mods, furniture maybe, maybe fashion sense clothes, maybe food / crops / recipes.
fwiw and if I'm looking at the right thing, it seems to say StringsFromMaps for me
I guess something "easy" would be a simple patch to change one thing, like an item sprite, changing an item description, or a crafting recipe
I might've thought that, but when I try to test out the map strings in my own game, it displays the same error message i showed previously which means there's still an issue on my end as well
What kind of mystery is this??
mm... I'd still say it depends on how complicated you want to make it.
one item of furniture? pretty easy
an entire catalogue's worth? maybe a bit tedious, but still somewhat straightforward
an entire catalogue's worth of animated, functional furniture? yeah, would probably take a while.
my advice would just be to look at the relevant documentation for what you want to do and go from there
!log run patch summary "supert.adventureguildexpanded" and then upload your log (don't need to turn off stardew)
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.
Hiiii I'm trying to create a map for the first time and I want to use https://www.nexusmods.com/stardewvalley/mods/10448 to create my outside, I'm using Tiled but I'm not sure how to open it and upload this tilesheet to create a new map, just need a hand getting started, this is my first time modding Stardew
Got it.
https://stardewvalleywiki.com/Modding:Maps here's the tutorial on making maps, but before you can do that
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md you'd need to read this one first
This part "danielsMessage": "{{i18n:MapStrings.danielsMessage.{{Random:00,01,02,03,04,05,06}}|i18n={{danielNPCnamedisplay}}}}",
is invalid, making the whole Maps/StringsFromMaps patch not running.
Looking at your default.json, I don't think that part is needed, actually. What are you trying to do?
One of my translators told me that when they talked to that NPC when he showed up in the guild, his display name wasn't showing up as translated. Since that version of him are map tiles I assumed that I could feed the name display through there to get it translated
apparently that...doesn't work
Aa, so danielmessage is actually all Daniel's dialogue?
Yep
Where is he located?
you mean his map tiles? or where he shows up in the game?
His map tiles, yeah.
Should be in Assets/Maps/Daniel.tmx
Hmm, if you have Daniel already loaded as non-social NPC, this should actually work as long as his display name field is {{i18n:danielNPCnamedisplay}}.
You shouldn't need the i18n={{danielNPCnamedisplay}} thing.
huh. alright then
It was an issue on the translator's end then I suppose...
(My NPCs are all map tiles so I should know. 😆 )
I did try to test it out after I added in the |=i18n:blablabla thing and it still worked so I assumed it was fixed but idk...weirdness happens
i'll push out an update when i can. Thank you again Naira 
Yar no problem.
I still wonder why it showed up as Strings/Maps for you though
is that the effect from the danielsMessage entry being invalid?
thats why I asked for patch summary to be run so he could find that themselves
Will it cause any problems if I delete the unpacked json files in Data for other languages?
Nope
The unpacked files don't do anything, they are just there for your viewing pleasure
Cool, ty!
the unpacked files do bring pleasure to my viewing
imagine trying to make a mod without them, actually dont imagine that...
(discord allows you to put pronouns in profile now!)
what do we want? stardewxnbhack param to omit files with locale extensions! when are we going to PR it? not now!
New quote added by atravita as #7123 (https://discordapp.com/channels/137344473976799233/156109690059751424/1465905872596238456)
noted, thank you ^^
Hello everyone~
Sorry if I am asking something wrong. This is my first time in this chat :/
I am trying to make a modification on the price for upgrading the tools at Clint's. I have tried to follow the documentation here as well as look through the unpacked files to make sure the names of the stuff are correct. However once I load into the game it doesn't work...
This is my current code: (Using CP)
"Changes": [
{
"Action": "EditData",
"Target": "Data/Tools",
"fields":{
"CopperHoe" : {
"UpgradeFrom": [
{
"RequireToolId": "(T)Hoe",
"Price": 5000,
"TradeItemId": "(O)334",
"TradeItemAmount": 25
}
]
}
}
}
]
}```
the copper hoe has ConventionalUpgradeFrom set which is overriding the UpgradeFrom field
you also need to null it out
Ohh I see! Thank you! ❤️
Hi there! Hopefully this is the correct spot to ask this. I'm working on making myself a custom farm map, but for some reason the map isn't spawning the ores or foragables as they should. I'm fairly sure this is an issue with my code on the content.json but I'm not certain. Would someone be willing to help me figure this out?
how are you spawning the ores
I think you need FTM/SpaceCore unless you're directly patching a vanilla map?
Is there a way to access the content patcher ConfigSchema using C#?
I have FTM and SpaceCore, and the map I'm making is replacing the Forest Map.
I'm not sure? I'm using Visual Studio Code to right and edit the .JSON files.
Would it just be easier if I posted the code for you guys to look at?
!json yes
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
what are you up to /gen
That's the file in question. I don't have nitro, so I can't just copy-paste it here.
use the link above to upload your file and send the link here
I mean, is it possible to access those settings from C#? That way I can do things like: if option A is enabled, then do this.
is this your own mod or another mod
if it's your own mod it's probably easier to just have the settings in the C# component and expose tokens for the CP mod instead of the other way around
if own mod u can also just not use content patcher 
actually looking at this now, this is not valid CP syntax in any version whatsoever. how are you getting this code
directly do content edit as you like
if this is FTM code it has to be in a separate FTM content pack
Yeah, it's my own mod.
(but that doesn't look like FTM code either)
I mean, I wasn't sure which to use, so I just have this file copy-pasted as a CP and as an FTM.
As for how I got the code, it was being used by the vanilla forest map and other modded maps that were somewhat similar, so I took what was applicable from them and modified their values to fit what I want.
aside from the map loading literally none of it is valid whatsoever
I also took a look at the modding guide on the Stardew Valley Wiki, and used some of the values from there.
if you're just guessing what to put in here then pls dont
Well shoot
I would start over and read the documentation for how to make an FTM pack
you can also see other existing maps that spawn forage for examples
(and if by any chance you were using AI, pls don't; it doesn't know anything)
I mean, I started from the base of other existing modded maps with foragables and worked from there to fit it to my map. And no, no ai.
There was a point when this was working on my personal save, but that was a few updates/patches ago and idk what changed to make it stop working.
I would be rather surprised if this worked at any point
what existing mod did you base it off of?
I honestly don't recall, sorry. I originally wrote this shortly after 1.6 first came out last year, and I let it sit for a few months.
Was it using Custom Farm Loader and not CP/FTM?
Yes! That!
this appears to be Custom Farm Loader format
But wait, doesn't CFL use CP/FTM folders?
CFL uses (or at least used to?) use its own content pack format
ah yes this is indeed CFL format; thanks button
but CFL uses its own format AFAIK
and you cannot drop these fields as is into a CP mod
they're not interchangeable or mixable formats
in fact I think if you use a CFL pack you would not use a CP pack at all
Okay, I looked at my nexus history. I took elements from Magic Starry Foraging Farm and Grandpa's Grove Foraging Farm.
im not familiar enough with CFL to know if there's good reason to use it over CP and/or FTM in a post 1.6 world
it certainly wouldn't be a common choice at the very least, which may affect the help you could receive if you choose to stick with it
(because people may not know it)
So is my issue that my folder is labelled incorrectly? I have two folders in my mods folder labelled CP and FTM. Should I change it to CFL?
the name of the folder is irrelevant
Oh, gotcha.
As I said, I originally wrote this code when 1.6 first released.
And at the time, all the mods I checked that were similar to what I wanted required the CFL mod to operate if my memory serves me.
yeah CFL was the main framework of adding custom farms in 1.5 (I believe it was made to backport some native 1.6 features to 1.5)
since CFL still works if you don't want to start over you can take what you have and try to put it in a proper CFL content pack
otherwise I'd look at modern farm maps for reference; I'm not sure if there's a simpler example but https://www.nexusmods.com/stardewvalley/mods/26672?tab=description is a good one that I randomly found
I mean, I have the 4 files required for CFL to operate as my memory serves. The .tmx of the map itself which I made using TileSheets. Then the Manifest, Content, and Farm_Name JSON files.
As I mentioned, I'm fairly sure it's only the manifest file that's incorrect.
But if I really have to start from scratch, I guess I don't have much of a choice since I don't know what's wrong with my file.
Wait, could it simply be the version number? The JSON validator says I need to update that...
I'm going to try that out really quickly.
you said you took things from other mods and adapted them, if some of those things were from mods that arent CFL mods then they will not work whatsoever no matter what you do to your file
As I said, it was working last time I used it, so I think I did something right, lol.
Okay! Just checked, and it seems that all that was wrong was the version number! Yay!
Thanks for your help @brittle pasture and @uncut viper! I appreciate it!
Not gonna lie, I'm honestly breathing a sigh of relief at not having to learn and do everything from scratch again, lol
doing it with not CFL does have various benefits i feel
but u can always look at that if u make a new farm
Perhaps. Though I rather like the farm I designed from scratch in TileSheets. 🙂
the tmx part doesn't really change 
Oh? It would just be the coding?
still gotta make that in tiled
the parts that change is you use content patcher to edit in additional farm data and location data, so that it can be a new farm option
compared to CFL the main benefit is that more ppl have content patcher installed 
but also i am tokens enjoyer
content patcher is also nigh but guaraneed to work in future versions of stardew
Oh, are you talking about sharing the mod to others? So far, this has just for my personal use.
cfl works in 1.6 tho, hence why i dont see reason to change now unless you make new farm
Fair enough. If I do end up making a new farm one day, I'll give that a look-see. Thanks!
i do tend to assume ppl here eventually would like to publish their mods
Perfectly understandable. It just honestly didn't even cross my mind since I'm blundering about in the dark for the most part, and this would 100% be my first ever published mod. 😅
Do I need to make all 6 portraits for an npc or just 1?
You should probably have portraits in all 4/6 spots, especially if they're romanceable, but there's nothing stopping you from just putting the same portrait in all the frames
Alright, I'm not too sure what I want to do with the npc yet in terms of "story" so i'm just making sure it works and refining it
the wizard has 2 portraits. marlon has 1. be lazy
I usually write the dialogue first and just draw any necessary expression to go with the dialogue.
Problem... It's a junimo... Do junimos ever speak in vanilla gameplay or is it just writing?
"Oh I feel like she's say this line bashfully. I guess I'd draw a shy expression then."
and now that means I have to account for SVE and all other portrait mods putting Marlon's expressions in different damn positions >:|
but you should just start with 1 and add the ones you need
Otherwise you'll end up with faces you worked on and don't even use
on the flip side it's fun making oddball portraits and then finding places to use them
inshallah i shall make use of these half dozen eating portraits
This is true, if you WANT more, definitely go for it
I made most of mine before I started my mod because I kinda got into a groove and realized it was fun
(I still ended up making more as I went)
i like thinking about what kind of faces my npc would make
and then making the dialogue accomodate it
I started with a handful and then it just kept kinda snowballing
"no this one doesn't fit this dialog" "this one's slightly too annoyed"
I struggle doing facial expressions so I haven't done any of my planned additional portraits yet
the only expressions i recognise are sandwich burger and noodles
I like doing portraits before making dialogue. I like doing a lot of the art first though.
Anything to push off the massive amount of writing and event making I have left. I'll even work on odd little json projects before getting to that. 😆
"Gud bai"
when is that?
cc completion
Is there a way to, on a custom map, have two separate ponds where one pond has all the ocean fishing options in it, and the other has all the freshwater fishing options in it? I'm specifically wondering if it's possible to save time and effort with some kind of blanket-statement without having to copy-paste the values and percentages of all the different kinds of fish that fit into that category.
im trying to be so careful because im worried of being accused of copying SVE's junimo story line 😭
Hello is it possible to start an event by talking to an npc?
Yeah, there's a dialogue action for that.
I am a Korean. I used a translator, so the readability might be low.
I successfully designated the Dwarf as a roommate and brought them to the farmhouse.
However, even though I wrote dialogue for the roommate, the generic marriage dialogue is being displayed instead.
Is the target Characters/Dialogue/MarriageDialogueDwarfRoommate incorrect?
Or is there another reason for this?
Well, if it helps I don't think Flashshifter will accuse you of anything.
When you say roommate do you mean you marry them? Do you give them a bouquet?
$v <event id>
oh this is new
I designed the mod so the Dwarf works as a roommate, similar to Krobus
Wiki has details! https://stardewvalleywiki.com/Modding:Dialogue#Dialogue_commands
The game sees that as being married which means it would use the marriage dialogue, easiest way to fix this is by just making the dialogue you want for the roommate as marriage dialogue.
Did you Load the MarriageDialogue or use EditData?
I used EditData. Here is part of my code:
"Action": "EditData",
"Target": "Characters/Dialogue/MarriageDialogueDwarf"
I completely forgot that the dwarf didn't have default marriage dialogue
okay
Yar, so you do something this "Action": "Load", "Target": "Characters/Dialogue/MarriageDialogueDwarfRoommate", "FromFile": "blank.json" with the blank.json only containing { }
Here's a Junimo talking: https://www.youtube.com/watch?v=xaQDCAuRHyA
The missing Stardew Valley bundle that comes along with the new JojaMart event. Opens the movie theatre.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
☆ Social ☆
➤ Twitter: https://twitter.com/Veilfyred
➤ Twitch: https://www.twitch.tv/Veilfyred
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Stardew Valley 1....
(I cannot find the text in the strings files sadly)
And then underneath you put your EditData for Characters/Dialogue/MarriageDialogueDwarfRoommate.
ohhh i normally just ignore that last one so i forgot about it talking, ty!
Thank you so much! I'll try it exactly as you suggested.
you can :
- have one area with one kind of fish and the other another
- have fishes that are based on what you can catch on another location
i don't think you can have the full list of ocean fishes and the full list of non ocean fishes like that, but since vanilla ocean fishes are mainly beach + some part of GI, using beach pool + main GI pool + adding the few that may be missing should cover pretty much most of the fishes.
For non ocean, you may have to grab more areas and add more exceptions
I used this animation from Shopkeeper Leela mod, but I'm not allowed to do so... could I replace this animation?
also this from Sunberry Village...
but I tried to not perfectly copy this phone animation
but still feels like I stole this phone animation from Sunberry Village
because there's no downside phone animation in Vanilla game
If you feel you're crossing the line of referencing and are copying instead, reach to the author to ask for permission
And if you cant do that or the author says no, redo animation differently
For HMK - If I have children that are 2+ years old (most of my children are born years apart from another in my main save) - Would they automatically be turned into HMK kids immediately?
And, if the children are born from different parents - Can HMK content pack delineates which kid are which spouse/ex-spouse's child or not (it would turn ALL children to children of the current spouse)?
@lucid iron afaik HMK stores stuff in child's ModData so it probably remembers a bunch of things, but i would get chu's input about it
when you first install a pack hmk will try to assign available custom kids, getting the right spouse assigned by free love is sketchy because free love only stored display names though
If u did have hmk installed already when kids are born then I do store the npcparent yea, you can see mod data in game with looking datamining fields on
So that means it would turn ALL children into a specific unique child - spouse-based or not?
So in that save, I am married to the Wizard, so if I have a HMK custom Wizard kid content pack - It would turn ALL children into Wizard kids?
Yeah up to the number of kids available
I am planning to install HMK when all my 12 kids are fully grown (all of them are born years apart from each other)
If then, would a content pack just universally be applied to all these kids?
Well u should probably just install it b4 they are born for this reason
Mod can't know about things happening b4 it's around to see stuff
Each custom kid is only allowed to exist one time, e.g. if you married wizard, had 4 children, made 2 wizard kid packs (or 1 pack with 2 kids)
Then you get the 2 custom kids and 2 generic children
So TL;DR:
- I have 10 children born to 4 previous spouses + 2 more from the current marriage with the Wizard
- I make a custom HMK content pack for the Wizard-born children ONLY and then install HMK...
- The content pack would be universally applied to all children (since HMK is installed AFTER all the kids are born)?
Honestly you are presenting a niche scenario that I can only guess about 
What I believe is that
- since all kids are born prior to hmk being installed, it has no knowledge of who the npc parent is for any of these kids
- thus it'll probably assume that they are your current main spouse's kid
Currently, in my main save - All my kids rely on Unique Children and Unique Children Talk.
that's about all you can ask for, too. children literally do not store who their other parent is/was, just the farmer
if your mod isn't running when the kid arrives, there's no way to know who it was (and even then it can be tricky, if e.g. poly mods)
So it is likely that HMK would turn ALL children into either generic children or custom content pack-added children (in this case, a custom Wizard children content pack)?
@lucid iron i have a question aout petshops
"Price": 2000,
"Id": "PetAdoption1",
"ItemId": "mushymato.LivestockBazaar_PET_ADOPTION {{ModID}}_ArcanianDog T true false",
},
{
"Price": 1000,
"Id": "PetAdoption2",
"ItemId": "mushymato.LivestockBazaar_PET_ADOPTION {{ModID}}_Shevit T true false",
},
{
"Price": 3000,
"Id": "PetAdoption3",
"ItemId": "mushymato.LivestockBazaar_PET_ADOPTION {{ModID}}_GuineaDog T true false",
},
{
"Price": 3000,
"Id": "PetAdoption4",
"ItemId": "mushymato.LivestockBazaar_PET_ADOPTION {{ModID}}_Miniphant T true false",
}, ```
is this corret? fo the shop entries and if not how is it written?
I'll have to indent it first to tell you lol
ooo ok
so am i doing it right? the entry for that, idk if its the way i wrote it but the adoptables pets arent showing i have the ability unlocked too
The args are correct and you can debug iq to test
thank you ill test right now
debug iq mushymato.LivestockBazaar_PET_ADOPTION {{ModID}}_ArcanianDog T true false
But replace the modid with your actual mod id
What is iq? Item query?
the debug came back as this That query did not match any items.
so its not reading it ?
You can't use CP tokens directly in SMAPI outside of the patch parse command
i know i repalced modid with my own id
but its still reading it as nto matching any items
I was confused because you replied to chu's message about replacing it with your mod id to ask if it was being read so I inferred that you didn't know to do that
its okay no worries
i mean, the game isnt reading my item a matching or being there so i was confusing
typing is hard today my fingers are so cold lol
Yeah so it means no pet matched the id
I don't know your pet data section but i would double check that
weird do i need to write it without the mod id token maybe?
nooo i mean in my shop entry not the command
The command chu got you to do should find any animals that match it, so it should've opened a screen showing your arcanian dog
oooh i see
let me see then
thats so weird maybe i wrote the id wrong for my momd i have so many different ids lol
thats strange its not working and I feel like the pets are there, i mean im not getting any errors at all and my include is parsing
its working in my other shop
Does your other shop sell the same pets?
i just opened up the pet menu in that other shop, the pets are gone????
like the menu opens with the supplies under adopt a pet but theres no pets
so its def my pet code thats...weird
Well then something borked between last testing and now
You can do patch export on pet data to see
it is showing in the patch export
It looks like you can convert an existing pet to one of your pets to see if that works
There's a console command for it on the wiki page
So it sounds like it's your shop data that is wrong
my shop data
pets
they seem to match to me so idk whats up, the shops are also working besides the pets
You can sell pets in regular shops?
yeah i can buy them from her
So what is not working? If the pets are there?
Or is that an old screenshot or something?
No its a new one, the issue is its not appearing in a custom pet shop im making
i dont want the pets at marnies
Oh so "her" means Marnie
yeah! sorry im not very clear im sorry
Why are you adding the plant shop to mushymato.LivestockBazaar/Shops twice?
chu told me i need both a petshop one and a shop one
Oh, you just have two separate patches to add ShopId and PetShopId instead of doing them in the same patch, for some reason
did i do it wrong
You are adding the same shop ID to both fields, but you need two separate shops
Well, it's just unnecessary to edit it twice instead of editing it once to add both fields.
But from what I can tell from backreading, they shouldn't both contain "{{ModID}}_PlantShop"
You should have two different shops with different IDs
And have the items in the supply shop and the pets in the pet shop
oh hm im still confused how that should look....is it possible to see a example? are their mods that do this too
Do you remember chu telling you to patch export mushymato.LivestockBazaar/Shops so you can see how it's set up for Marnie?
And then to copy that?
ill try
I'm not otherwise sure how to say "split your current {{ModID}}_PlantShop entry in Data/Shops into two entries. Give the second one a different ID. Put the pets into the second one. Then change your first patch targeting mushymato.LivestockBazaar/Shops so that its ID is the new shop ID instead of {{ModID}}_PlantShop"
Yes pet license is actually just a saleable
Livestock bazaar provides a custom item query that filters the pet license
Atm i think clown has to check the Data/Pets keys
To make sure they all match up with the arg
im sorry im looking at marnies patch export and im just more confused because there is no pet entries in there. and the pets work we checked it in marnies regular shop
because im confused
Well it's 2 Data/Shops entries
So yes a pet shop is a regular shop on the inside
But right now it seems like the problem is that the item query is not fetching the expected pets
Yes, and she only has one shop entry, with both the items and pet licences in it
I have checked the pet IDs and as long as the mod IDs are correct, they match
Yeah then I'm not sure why this didn't work
Either way one step at a time 
I'm gonna be away so I'll summarize real quick
- Make sure the item query itself actually shows the expected pet licenses
- Make a new entry in Data/Shops, and put the pet license item queries there, separate from the item shop
- Put the id of this new Data/Shops entry in PetShopId
okay so make a entirely new show for the pets?
shop*
If u still have problems in 8hrs then I can check your actual mod but im gainful employment rn bye
Have a nice work chu I am going to sleep
well... I have a question... how can I choose specific artisan goods? I mean what is should made from. I need that tag.
e.g. Dried Starfruit
what is the context (machines, shops, etc.)?
item
where
every dried fruit is the same item, and they're only distinguished via their "flavor" in the item spawn fields; consequently, contexts where item queries or context tags are not supported cannot distinguish them
[[Modding:Item_queries]] if you need to spawn them look at the FLAVORED_ITEM query, assuming the context you're spawning them in supports item spawn fields
or...
[[Modding:Context_tags]] if you need to distinguish them, every flavored item has an autogenerated context tag that denotes their flavor, and assuming that you can combine it with their item id you can identify them
I want it for gift tastes
then you doomed
it's not possible?
gift tastes only support one tag at a time, so you can only make your char like all dried fruit, or all starfruit-flavored items, not starfruit-flavored dried fruit specifically
so i'm lookin at my map data a bit
what? all starfruit-flavored items?
most of the tiles are 0s or three digits, but some are 2147484056
what's that tag?
is that like normal
the description is slightly misleading; this works for every flavored item
ok thanks
Sorry i know this isn’t a mods general place, but does anyone know of the new mod that came out not to long ago that lets you transfer stuff from an old save to a new save?
I was hoping I could use the second option, have the water be based on what I can catch in other locations, but it doesn't seem to be working in CFL. I know the following is super simplified, but should something along these lines work assuming I don't want to add anything extra and that I have included the coordinates of where I want the water to be?
"Location": "Ocean", "Chance": 0.6,
"Location": "MountainLake", "Chance": 0.4
Also, what is GI? I'm not familiar with that abbreviation...
When you're able to! I know you're very busy. I've successfully gotten the pet adopt menu opening.
The new issue is, the actual pet licenses for my custom pets aren't appearing. I've tested the pets as adoptables in Marines shop. It works perfectly. I think I might be writing the item entry wrong? I was wondering if I could have an example of it written out? My pet ids I swear are correct within my item entry but maybe I'm just missing some thing?
mushymato.LivestockBazaar_PET_ADOPTION Fellowclown.TAE_Miniphant T true false
I have it written like this is that even the correct way to write it?
The first argument is the pet id and the second argument is the breed id
You haven't shown me your pet data yet so I have no idea if that's correct
So if I write it out
mushymato.LivestockBazaar_PET_ADOPTION Fellowclown.TAE_Miniphant FC.Miniphant_cream true false"
}
Thank you chu I know this must be annoying
I'm studying that document too but I struggle understanding things on my own
Yeah it's that
Can you try this
debug iq mushymato.LivestockBazaar_PET_ADOPTION Turtle T true false
The expected result is that you see the turtles
Okay let me try that
yep shows the turtles!
Hrm the id is indeed Fellowclown.TAE_Miniphant 
That why i thought maybe it was something else? like how i wrote the item query or whatever cause the ids do match
Ah you wanted to ban this from Marnie right
ignoreCanBeAdoptedFromMarnie (default false): setting this to true makes this query ignore the CanBeAdoptedFromMarnie field, which allows you to ban this pet from Marnie's PetAdoption shop but still access it through this item query. If no arguments are given then this behaves identical to PET_ADOPTION.
yeah and have it only appear in the custom shop
Your 4th argument is false rn it needs to be true
I thought I was pretty clear about that but again if I can reword it to be more explicit then I'll do so
that was it!
its not you i promise
I have a pretty bad learning disorder
Like I was diagnosed as a kid and I literally need extra help my entie school life because of it, the hand holding was constant cause i just cant quite understand text on my own
I need straight forward examples, like images or videos most of the time lol
So just saying, youre doing wonderful if its def me
(You're both doing great. So there!
)
hey, sorry if this question has been answered elsewhere, but I saw this page: https://stardewvalleywiki.com/Modding:Farmhouse_Renovations about modded farmhouse renovation, I guess my "dumb question" is can I turn off the default renovations and if so, how would I go about that?
i wish there was a recent mod that allowed you to recruit NPCs to follow you around
there used to be two mods like that but theyre super outdated
you can null out the vanilla entries, but I cannot guarantee that wont have side effects
heck :< could I like...repurpose the vanilla ones? like edit them to redo a different area instead?
There are like two recent mods that do that as well, though someone else is gonna have to dig up the names because I am dealing with insurance on the phone and can barely keep my own name straight right now
I know one was something really weird like THEY FOLLOW YOU
sure
look at the fields + the unpack
- the map files
ok, cool, so it's removing them altogether that would be potentially a problem then?
can do, ty!
Oh it was "They Stay With You"
and The Stardew Squad
they put me on hold :V
@ornate drift this was all re you btw
huh?
There are two mods that do what you want. They Stay With You and The Stardew Squad
It is. but it works apparently. Stardew Squad is the other one, and it's in English
if you want, it's possible to make an NPC-shaped trinket with trinket tinker
Hi, im trying to add a new farm to the game, does anybody know if there are any video guides? im having trouble following the documentation on the wiki.
stardew squad is the plug and play one
you can use an existing farm mod to create your farm as a base
As in you install it and can then go recruit whomever, some have custom dialogue via content
This one is based on trinket tinker so you'd actually have to make a trinket
It is more customizable from mod author side
I have yet to try this mod but it seems like it may helphttps://www.nexusmods.com/stardewvalley/mods/41213
I tried it, but it put a menu option to make all tilesheet paths into absolute paths right next to Tilesheetinator's menu options to not do that and I accidentally hit it, sooooo I removed it
thanks i will give it a try
I don't know why anyone would want an option to just break your maps with absolute paths anyway
hmm ill have to try it ot
isn't that just for when the tilesheet load order is messed up or somehting
I mean, that's always going to break your map and you will always have to fix it
because it's an absolute path, it goes from C or whatever to where your file is
Game will complain and not load the map
To be somewhat fair, it was labeled! but it was also otherwise identical to Tilesheetinator menu options and right beside them and my keyboard was messing up at the time, so I hit that instead of the keyboard shortcut. And I don't know why you'd ever use it
Did u give feedback about that
i was excited about the copy/paste options but haven't tried it out yet
I held off mentioning it because... well, I mean, they made the function, they probably have SOME use for it, right?
but just be warned, do not click that if you don't have a use case of... I dunno, whatever you'd use that for
is anyone else having issues assigning pond data to custom fish? for some reason my fish keep asking for like bait
I planned to create my own events, but I need to choose free (not used) event numbers. How can I do it?
really?
Do something like {{ModID}}_WhateverEventName
post your code? your precedence value may not be high enough for it to take effect over the vanilla generic entries
id ont think i have that
ok so precedence is not the problem, but you dont have RequiredTags set in your entries
I wasnt really sure what to put there, do i make them up or?
RequiredTags = if the fish has these tags they're eligible
use the autogenerated item id tags
oooooo
thank you i appericate your help
i wish i could do my take on npc adventures
you still can
oh yeah the author's super chill about permissions/expansions
I can, but I don't really know how to learn how to do the npc movement parts, harmony etc
I got all the mod entry cs stuff down
you may be confused about "perms to add custom npcs to work with it" vs "perms to straight up fix/adapt its codebase"
hm, what exactly do you want? to learn harmony etc through this, or to do this project
because the latter is 100% not allowed
ohhh okay
u cant do this project without harmony cus you'd need to interrupt the existing code of how npcs work i think
with enough update tick events you can override npc behavior yes
bigger hurdle is probably mp compat
but telling mp users "non" is always valid
yeah so i think the only hurdle for me is just knowing the game code and reasonable ways to code it, but don't want to bother people to help me so its more of a if I learn ways to do it, I can do it myself later
hmm do all content packs (like FS and AT stuff etc) need CP?
no
gotchaa ty!
wanna update the !startmodding command to have more resources/be more clear, I'll be posting drafts and such here for review ofc
!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 list of framework mods page does cover whether the framework works via CP or not
Making mods can be broadly divided into two categories:
Content packs are formatted text files, and don't need any prior programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the wiki tutorial for Content Patcher, (aka CP, Content Patcher is the framework used for [idk, like editing vanilla assets? I'm not sure how to put this]), the Content Patcher documentation on Github, the and the list of framework mods. The SDV wiki's Modding Index contains explanations for many [no clue how to put this- features maybe?]. There's also a modding wiki with specific tutorials, though it should be noted that the modding wiki may not be as up-to-date as the regular SDV wiki. [needs revision for clarity]
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 C# programming.
To use this command, type !startmodding.
alr first draft, things surrounded by [] are where the text needs to be fixed, as much feedback as possible would be appreciated
ALSO- should I plug button's json tutorial? i found it very helpful
should ask permission first
Apologies as I'm rusty at setting up Visual Studio for SDV modding:
I'm trying to follow the steps here:
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/extensibility.md#access-the-api
to begin creating custom tokens for Content Patcher in my C# mod.
I've added a new IContentPatcherAPI.cs class to my project with the listed code copied in, however it is not recognizing / finding ContentPatcher.Framework or IManagedConditions or IManagedTokenString
Am I missing an additional step, such as importing a package for Content Patcher into my project for those to be recognized? (Although I'm not finding anything under "Content Patcher" with the VS NuGet Package manager)
I think that's a good inclusion for !json but ask button for opinion
hm, maybe attach the !software commands' text too?
I'm not really sure what this update adds content wise, compared to existing message
Like what's the thing u hope to solve
did you import the namespace
@uncut viper hello! summoning you yet again to ask for permission to include your json tutorial to my wip rewrite of the !startmodding command
could you clarify?
!startmodding og command for ref
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.
Hmm probably not, as I'm struggling to remember how to do that 😅
the api file is listed under the ContentPatcher namespace
What's the flaw or oversight in current command that u hope to solve by updating the command's text?
you wanna reference its types you import the namespace with using, or write out the full type name including it
or you rename the namespace
I think it should include more resources, more info about which resources to use when, and more explanation of how modding works
Ah oh wait, within my own mod's ModEntry.cs for example? Yeah I have
using ContentPatcher;
in there, and the
var api = this.Helper.ModRegistry.GetApi<IContentPatcherAPI>("Pathoschild.ContentPatcher");
I have in there is being recognized fine.
It's within the IContentPatcherAPI.cs itself (which I just copied verbatim from the supplied file in the documentation) where I'm getting the errors about things not being found / not existing
Including one of it's own using statements:
using ContentPatcher.Framework.Tokens.ValueProviders.ModConvention;
having an error for "Framework" not existing in the namespace "ContentPatcher"
i dont think the startmodding command should be changed and i wouldnt want my json tutorial in it as its not strictly related to starting to mod, as json is not a modding related concept. i would rather it be in that proposed command about getting help with json that a thread was made about some time back by a junimo
hmm try just removing that line
gotcha! thanks for replying so fast 
json is not strictly a modding related concept* i meant to type
Also remoce the fancy token parser api line
also if you're only using the simple registertoken function you can remove all the other function signatures and avoid importing all the types they need
beaten by atra but i'll submit anyway
Just use the single register token that is the simple version
Dont worry I'm dumb and just got out of a meeting I shouldn't have been in
Ah OK, I hadn't gotten further in the steps to determine which parts of IContentPatcherAPI.cs I wasn't using and would thus comment out, I guess I just assumed I must have done something wrong if I was getting errors already.
99% of the time you only need the simple api
It's a little fussy b/c back in the day u had to directly reference CP to use part of the API but not the rest
And that isnt clearly communicated
It was on my list to see if that was still true after....crap
What was the bird's name again
Pelican? Pigeon?
Pintail
I was actually thinking of having it in !json
!json
JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.
If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.
When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.
Unknown bread
Not a cat picture
Disappointmenting
its a thread in this channel so you can just click on it to know it
from the last time the json command was discussed
Yes i see 
and was generally (by those at the time including myself) agreed it should not go in !json
There is a good point about linking to validator being a separate command
I feel like ppl do gloss over the whole thing often and not understand that ppl want them to post json via this website
to be fair they should read
!jsonvalidator
Please share modding related JSON file via this website: https://smapi.io/json
maybe just !validator?
Jsoncheck
I can live with a longer command if it means lesser screenspace take up
!fuckingsharecodeplz
hehe
I just know I will typo validater
!jsonsite maybe
i feel it wouldnt make sense for typing the command itself to be just as long as typing "go to smapi.io/json"
yeahh but links are hard to get right
Also frankly I dont care how the code is shared
Command has more authority
..for me
a command has less authority to me and more dismissiveness the less text the command actually has in it
!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.
upload your code to smapi.io/json right now or suffer the sevenfold curse
Yeah log is long as hell and it is analog of !json in many ways
Does updating the compatability list require pull requests now or am i missing something?
yea
It would be nice to have a !logshort or something
The main log command does need all of those lines when used with support
(still drafting the command writing just takes me years)
yep, it was getting big enough that editing it caused problems for the wiki server
ah
!logplz
Tbh most of the time in this channel u can just ☆logplz☆
(whatever the case, given that !json was important enough for a junimo made discussion thread in the first place, no one should be just changing it or any of the other 2 "main" modding commands without strong junimo approval, imo)

To have people help you with your modding issue better, please share your work in progress JSON. To do so:
- Open this page smapi.io/json
- Paste or upload your JSON file
- After uploading, copy the resulting URL and post it here to share.
This would be proposed new command
For json the other option is a bot command /json <paste> and have the bot give us a json link
Like have gov upload json files posted here?
Yeah
That'd be nice too yea, who do I bug for this scope creep
Gov already detects raw pasted logs and makes log links though doing that specific behaviour for json would have a bunch of false positives
Can we limit that to just this channel
it would probably be fine if it only did it if they directly uploaded the .json, like it does for logs
like the file itself dragf and dropped into discord
Yeah that's the usecase here
i dont think i ever see anyone do that except when theyre supposed to upload to the validator anyway
God, making portraits for the denim cats is draining.
But they look surprisingly good, so I'm happy with that.
color me intrigued
yayyyy!
Actually after reading through the documentation I just had the thought before I get too far into this:
Will a custom token I add through the "simple" method (denoting the current config setting value) somehow automatically update its value each time the C# mod's config is changed (e.g. through GMCM), or will I still need to set up some sort of system to instruct it to update any time the config is changed/saved?
You are registering a delegate that returns the value(s) of the token
The token value updates but you need to force updates on the patches
Content Patcher decides when it's going to call your delegate for data
Every third person had to go write reflection/emit code to force a CP context updates lol
what? You don't have to force a context update
arrite this is what I got so far- hopefully the formatting's correct and the info is all good:
Making mods can be broadly divided into two categories: content packs, and C# mods.
Content packs:
Content packs are formatted text files, and don't need any prior programming knowledge. They rely on frameworks, which are mods made with C# that enable other mod authors to create a variety of content.
The most common framework mod is Content Patcher (aka CP). It's used for editing/adding to most vanilla assets. It can add/edit NPCs, maps, items, sprites, shops, and much more. To get started, see the SDV wiki's guide on Content Patcher, the Content Patcher documentation on GitHub, and the SDV wiki's list of framework mods. Note that some framework mods are extensions of Content Patcher, and will still require Content Patcher to run.
For further resources on creating content packs, check the modding index of the SDV wiki. There's also a dedicated modding wiki with specific tutorials, though it should be noted that the modding wiki may not be as up-to-date as the regular SDV wiki's modding index.
C# mods:
C# mods (also dubbed SMAPI mods) use programming code to change fundamental game mechanics. See the SDV wiki's guide on getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn C# programming.
-# To use this command, type !startmodding.
dammit the link thing didn't work
You do if you implement gmcm on your config on the c# side
You have to make the parenthesis touch
Because there is not actually a way to force CP to re-evaluate if the user changes the GMCM on your c# side
there is a way it's called sleeping or loading the save
Yw, I am fluent in little discord tricks
I think it's just up to you like do you care for immediate updates on all this
I guess as a workaround you can manually invalidate every asset you know your CP component touches
I think what I done in the past is to set a mailflag instead of cp token
invalidating an asset doesn't update a token
-# yayyy
And then use entirely content based conditions to do my config things
-# 
otherwise using {{Time}} in a non-timechanged rate patch would still update every time the asset got reset
oh yeah you're right, nvm, i got my wires crossed
But that is also another benefit of doing all your own data edits in C# (if it's something relatively simple
)
I don't really know what your mod is doing full picture so I got no opinions on this
but yeah there doesnt seem to be a clean way to have a config that's changeable live mid-save and accessible with a token that changes immediately
Yeah I'm considering that...
Basically my big goal at the moment is to convey to the player what this feature does (allow crackers to sometimes spawn when farming), and when it is enabled.
Since the player might disable / enable the config setting which controls that feature mid-day ingame, I was thinking I'd want the Farming Mastery description (which I want to edit to reflect the new feature) to always be accurate whenever they read it
hmm, is this good enough to submit to server suggestions yet?
Oh i thought you did that edit in C# already 
Though technically since I'm thinking to change this text via an asset Edit, maybe invalidating the asset even if the token stays unchanged could work? Make it revert to the vanilla text right away?
no that's not how it works
I am still not behind actually changing startmodding
the token doesnt get changed until the next time CP decrees it so, and CP would just apply the old value
Ew
Again I'm not clear on what the new version hopes to fix
I had begun the process of learning how to make that text edit in C#, but then it was recommended to do it in Content Patcher since I already know how to do it there, and use a Custom Token to pass through what the current value of the C# config setting is
I just found the og one pretty unclear when I was new, but then again I'm autistic and it takes me a long while to learn things
clearly we need a CP API function to immediately reload every patch and tokens, this surely wont have any unforeseen consequences whatsoever
Yeah that is a valid "what you hope to fix" item, but "unclear" is too broad and subjective sometimes
Pls gib a 1 page summary and open a jira ticket by eod thx /j
Make people do the painful reflection into smapi 
gotchaa, I just personally need and benefit from highly specific step-by-step instructions with a lotta resources and careful, slow explanation, but ofc that's not for everyone (which I honestly forget from time-to-time like wdym people are neurotypical!? /hj)
I'm assuming that if I remove the view port clamp on the bus stop through a patch it'll make certain events/actions like riding the bus janky, but does anyone know for sure if that's the case?
hm, do you think there's any worth in it being a seprate command?
it doesn't actually cause any problems it just causes lag for a moment but if you're doing it in a gmcm menu that's fine
I really like it, but that’s not super helpful because I have ‘autistic behavior’ written in my medical chart 😅
If you can point out the bits you particular like over current version that is also a support for the change 
????? pulls up tilesheet
why does the vanilla tilesheet not have wood marked for the wood bits I used?
LOL, I think I'll just see if other ppl find any worth in it and then maybe make a post in server-suggestions
gotcha! so I need to back up my claim LOL
hey i have a question : ) if i want to include some mapstrings but not as seperate strings file, just directly into the content.json, what action do i use? its not "include"?
aah thx : D
I didn't forget, I just used vanilla so I thought it'd just... work right LOL
the steps are marked wood fine...
-# please be right please be right please be right
xD
that's weird- ofc still no pressure to change or fix etc!
I would offer to send over my map strings but they're not working 
assuming you're editing Strings/StringFromMaps, you would use EditData in a patch to add your entries, yeah
Hmmm, maybe it would just be simpler to note:
(changes take effect on the next day/save load)
on my C# config setting in GMCM, if it's tricky to set things up to have it result in a vanilla asset text edit mid-day when changed?
(Assuming that both the C# custom Token for Content Patcher and Content Patcher's assets / asset Edits will be updated on DayStarted?)
You can use includes if you want, and those includes can have whatever patches you like
Include just means "pls copy paste the following patches into content.json"
Hi! Does anyone know how I can make my custom NPC send an email? I want to use it to activate the 8-heart event
do you mean a letter?
I'm assuming using the phone for phone calls would require C#
u can add incoming phone calls
it is subject to the hardcoded 1% incoming call chance + you'll compete with other phone calls
so not the most reliable method
from a thematic standpoint the farmer doesnt use a computer or anything aside from the farm computer
we living that #disconnect life
the farmer seen enough computers in their past life
alright I have added wood foot sounds to both the vanilla tiles I use on all my patches in both mods
I'll put it up maybe tomorrow.
omg i'm sorry-
it would bug me if I noticed it myself anyway, the real villain is Concerned Ape for not making those vanilla wood tiles have wood steps shakes fist
New quote added by atravita as #7131 (https://discordapp.com/channels/137344473976799233/156109690059751424/1466210978562834703)
you can ignore the base 1% chance
I was today years old when I learned that vanilla Stardew has a telephone
I never use it, but it does have one
... its not from a mod????????
can you with just CP though
yes thats literally in the data model
ignore base chance and control it via your conditions instead and you can reliably get the phone to ring
Alright, I WOULD say a concern about phone calls is the number of people admitting they had no idea one was in the game, so they would just miss your NPC's 8h event altogether
you dont have to compete either if you just null out the rest of the phone calls when you wanna guarantee yours
I have seen people talk about phones and assumed it was about a mod
well there is also a mobile phone mod, but that's neither here nor there
that's a lie actually, it's there. just not here
(okay technically you'll have to compete with other people who add phone calls unless you add specific compatibility, but thats far better than nothing)
if you'd like an equally niche event starter you could have a trigger on checking the calendar to make the farmer suddenly remember a date
specifically the calendar farmhouse furniture that doesn't tell you it's a functional calendar
i was literally there last time this was brought up how did i forgot smh my head
New quote added by atravita as #7133 (https://discordapp.com/channels/137344473976799233/156109690059751424/1466212596016480256)
Or they can just use mail since they initially wanted "email" and may have just meant mail in the first place
Hi, to anyone else familiar with using the tilesheetinator, I’m having some trouble repairing the tilesheets from another mod (downhill project).
I set my unpacked folder, opened the tmx, and then pressed repair tilesheets, but all that happens is that it changes the broken file path to Tileset image, and none of the tiles appear.
I know I’m misunderstanding something. 😅 Help would be appreciated.
IIRC Downhill needed special attention when I was doing compatibility for it, they did the thing where the tilesheet name has a . on the beginning
oh noo
I had to go into the maps and remove the . first in a text editor
yeah for my own mod i had to first rename the tileset in tiled before deleting the vanilla tilesheet images and then fixing the tilesheets with tilesheetinator
I may or may not know something about that extension
Oh hi!
did you manage to fix it?
tilesheetinator update to ignore leading periods when comparing filenames 
...sure
I didn't want to bother you with this directly 😅
I don't see why not tbh
yeah the leading periods are throwing it
it's fine! I also just happened to be here right now haha
do the leading periods not break it for the game too?
No, that was some... thing a bunch of mods did for some reason, I forget why
So, is what I'm trying to do not going to work with other's mods in a simple way? I'm kind of confused-
leading period makes smapi ignore it
but tiled still sees it
so you can leave sheets in the folder but still use the ones in the content pipeline when the game runs
which tilesets have the .? I found this fall_DH.Tile
Vanilla tilesheets
oh in the tilesheet name not the file name!
yes, yes
yep sorry, comparing tileset names to filenames
Look for vanilla tilesheets with leading periods in the file name
that is the problem
sigh
It's looking for .spring_town instead of spring_town because of an outdated map creation trick
what was the trick, by the way?
you mean an advertised map creation feature 
is it outdated if it still works
this one apparently
Ok, so my issue is specific to downhill then?? I'll test another map...
I mean, it may work, but also it causes problems with the thing that works better
that seems like irocendar's problem
thats not an outdated trick
Rename the tilesheet file to start with a dot
https://stardewvalleywiki.com/Modding:Maps#Local_copy_of_a_vanilla_tilesheet
Your issue is specific to any mod that uses this map creation trick
I think I'm going to end up having to just test downhill myself haha since I'm already working on the other thing
as in i do think tools should try their best to support vanilla workings 
while we at it iro can u strip the locale names too
while we at it iro can i get a cappuccino no sugar
Thank you for that, and this extension
no you can get tap water (oxford quality, with suspicious rainbows and flakes on top)
I'm going to test a not .tileset
water with extra crunch
do I not already do that... did I remember to do that for seasons and not locales... smh my head
All you have to do is remove the dot and it'll work fine
sounds like a tilesheetinator update is in the works though, yeah
It worked on the vanilla assets for another modded map!
Did they have dots on the beginning of the filename? because that is the problem
(its also not like a filesystem type hack on SMAPI either it has specific code for looking for the leading period. it does the same thing with mod folders)
locales is pretty niche anyways (it was just that one mod which had issues)
they did not, so it makes sense
Yes! I forgot the word, sorry
the dot thing has always annoyed me because I ended up with two copies of the tilesheets in my folders while working on compatibility stuff for maps that didn't use it and maps that did, but that is a me problem.
So, does tilesheetinator make it any easier repair modded tilesets?
my vote is yes but I'm a tiny bit biased
depends on how they broke don't it
Do tell!
my vote is no but i like to specifically be a contrarian to iro for fun
bc i know iro will react with the doge kek whatever emote
It's just me trying to load them for the first time in a different location on my computer
(my real vote is ofc that tilesheetinator is invaluable in all aspects)
you'd rather have the online map fixer tool if there's invalid tile gid errors, or move to nepal to live as a monk if you've got tsx gid errors, but it will make it easier to view mod maps in their own mods folder without moving files around
as well as overall making the map creation process way simpler and smoother by not having you add and remove copies of vanilla tilesheets whenever you edit or deploy the map
(honestly im like 85% the tile gid error is a bug in Tiled itself even since i feel like i recall at one point reading a changelog or something that said it shouldnt forget tile ids and whatnot and yet, here we are)
(so the true ideal for that is someone PRing in a fix)
i never ran into that but i made 2.5 maps
i hope to meet this 'someone' sometime
I also need to explain the features properly but for now they'll be Hidden Features
So, should I use haru's for plugin for fixing a mod's custom tilesets by putting them in the same folder as the tmx then?
im surprised blueberry hasnt been that someone for the unpacker, since blueberry hates localization so much
something that could be valuable is ensuring that some vanilla sheets keep the wacky "untitled tile sheet2" names
(thoughts spurred after watching someone here pull their hairs out fighting the game's island farm hardcode)
im not sure how you'd foolproofly track that
(for example, it fixes animation copy paste)
call me mr. worldwide because i hate locales
they don't have consistent ones. different in every map
I made a whole thing just to check that once haha
I know nothing about Haru's plugin and if you just want to hook up tilesheets to your map in Tiled, Tilesheetinator is all you need. It just has this one problem with leading periods.
mr. worldwide
thank you. that means a lot to me
I guess it's a good thing I'm not the author
haru's plugin says this: Automatically repairs tilesheet paths when the image is located in the same folder as the map.
good point. i think something that would be valuable in iro's plugin would be something that prevents any errors from being made in the first place
get on this, please
iro just needs a research team and five years
i would also like the plugin to know where i want to place my TileData
But... if the image is i nthe same folder as the map, you don't need to fix anything, it just works??
o h?
(please if someone explains this to me I spent hours yesterday trying to figure out what it fixes)
yeah, Tilesheetinator's whole thing is so you don't have to put the map in the same location as the tilesheets
I don't know what there is to fix if it's in the same location
so, I use haru's for the other features then I guess??
Again, I have no idea about Haru's, I uninstalled it after hitting a button and it put all my tilesheets at absolute paths
hey y'all, i'm needing some help if anyone is knowledgeable on the subject. i've created a custom room in Tiled and I have a piece of paper on the floor that, when clicked on, i want to be pulled up as a note with a paper-like background. kind of like how the notes in the library show up. what should i put in the code for that to happen?
I hope you'll ask haru about that, I'm really curious
I don't know why you'd want tilesheets at absolute paths and I don't know what "Automatically repairs tilesheet paths when the image is located in the same folder as the map." even does
I'm good personally but I hope their extension works for you!
No problem if you didn't want to get into that
aw swag i missed this mention when i skimmed
i'll take a look! thanks for the tip!!
I'm going to ask this last question at the risk of repeating earlier ones, because I didn't competely understand one of the answers. After repairing vanilla files, I'm left with blank tileset images instead of broken paths on my computer for the custom ones. The locate file option when on the blank tileset itself appears the same as before tilesheetinator. Am I missing anything that makes sifting through my folders to get to those custom tilesets any easier?
My folder always seems to bring me to the folder that I have some other open projects on tiled sitting in. Is having other projects open related to this?
Did you do "manage tilesheet mods" and set the locations of those tilesheets?
thisun
Oh, I did not. I'm guessing I do that once for all the mods custom tilesets I want to edit right?
hotfix, realize you missed something different, hotfix again, repeat twice.
bleh. 🤦♂️
Yeah, you only really need to set it once and when you work with new mods with tilesheets
Like if I was doing sve patches... I grab every png/tileset in all the folders so sve is never a problem again right? Thanks
You just need to set the locations. mine is pretty extensive
It'll grab any tilesheet in the folders you list
I've done a massive compatibility push though, so mine is huuge
Thanks, but I don't have that many I think I need. Downhill has been my only major encounter with something else trying to change the same location I am. I think there's one recent npc mod that's incompatible with DH which probably means issues for me as well, and there amy be a few smaller mods that mess with the location.
Yeah just pop in the folders you need and it'll work
Probably aesthetic mods haha
I'm still pretty lucky with compatibility I think...
DH is repaired 
Thanks for the help everyone!
Oh no what broke @blissful panther
back again--do i need to write up an "include" section in the content.json for the StringsFromMaps.json i created to store the letter text in? and is there a target i need to have in the code?
helloooooooo can i18ns have tokens like {{Random: a, b, c, d, e}}
yes, though I think it's conventional to put them in your non-i18n files if translators don't need direct access to them, for simplicity on their end
YAY okay, thank you so much Esca!! tokens and i18ns still confuse tf outta me-
like if the whole i18n value is inside one big random, you might be able to break it up into "your_i18n_line_1", "your_i18n_line_2", etc
(and use a random token in the spot where you use those)
depends on context though
i18n-ifying my token values rn :)
...oh, right, I said "yes" because the link did, but it's technically a separate system (you swap tokens with values yourself)
I'm not sure if it actually supports tokens with args like random from outside 
if you mean using something like {{Random}} inside the i18n itself, no, it doesnt
its not a content patcher token
once its inside the i18n its a SMAPI translation token, which is effectively just a string.Format() style substitution
yeah, I wasn't sure if it had an implementation for stuff like that
inside the i18n, {{Random}} is just like the {0} you sometimes see in strings
only you are telling it what the 0 is
idk what to call it-
(which means it being called "random" would also be meaningless. you can call it anything)
im not 100% sure what you're trying to do as i have no idea what either your i18n or your editdata's look like, im only explaining that content patcher tokens arent a thing inside an i18n file
okay
the thing I mentioned with multiple i18n lines should still work, you'd use something like this to reference it
{{i18n: your_i18n_line_{{Random: 1, 2}}}}
and that you can only pass values into the i18n via the {{i18n}} token
but yeah, using tokens with arguments like Random inside an i18n value wouldn't work
got it! is there any way to add tokens into i18n strings other than by referencing in the og line? chu tried explaining LocalizedText to me a few times but my brain is verrrry slow-
Localized text worked for me for stuff like gender swaps
you dont add tokens but you can tell the i18n what values to replace your {{ }} things with
you dont add content patcher tokens*
i18n tokens just let you swap values, like if the i18n file says
"example_key": "hi my name is {{name}}"
you can use this to swap that with something else, like
{{i18n: example_key |name={{PlayerName}} }}
or
{{i18n: example_key |name=Bob }}
Yeah that's passing it through
within SMAPI itself these things inside i18n are also called tokens, yes, but they are not the same as content patcher tokens, not at all
I'm aware of those! I just have a monsterous amount of tokens I wanna use in dialog-
got it
those are the answer to the question you just asked
Localized strings are really good for stuff like that
they are also separate from localizedtext
..oh..?
there're a few similar but separate text parsing methods, yeah 
but for what you're doing, CP tokens work outside i18n and that swap-token stuff works with i18n
If you want localized text string examples, I got some in Pelican Town Municipal I can point you at? Stuff that lets me do [LocalizedText Strings/MV.Municipal:RasGenderHim] in an i18n string and it automatically goes Him or Her for Rasmodius or Rasmodia
okayyy I think I got you..
oooh?
yes please I am a very slow learner-
I can try to walk you through it, I got time
It took me a minute to get it too, I needed solid examples. But once I got there, it's been great
that reminds me I need to add Rasmodia compat 
lemme show an expample of what I'd like to do..
good luck with the learning-teaching process you two 
for example one line: "i18n_Dialog.Krobus.Gift.Reject.DwarfScroll": "Oh, is that a Smoluanu scroll?$3#$b#I'm fascinated, but.. I think {{dwarfnameKrobus}} would enjoy this much more than I could.",
(ignore the huge key I am neurotic about formatting)
I assure you mine are longer LOL
What are you planning to put in {{dwarfnameKrobus}}?
YAYYYY
What changes DwarfNameKrobus?
uuuhhhhh, it's a dynamic token that depends on whether or not an event where dwarf tells krobus their true name has occured
omg tysm-
https://smapi.io/json/content-patcher/3bb3f268fce142359d6649bbeb71eac2
First one here, the event sets a flag and it checks for that. This is the part of my strings file that is for dynamic strings
https://smapi.io/json/none/b859cb6a489b424797273c53d7132ba1
Those tokens in there lead to my i18n here, so you can see what each one will say based on the hasflag being true or not, right?
If the event has happened, BillHusband says "Menawa". If it hasn't, he says "My husband"
To use that in an i18n, I do this:
[LocalizedText Strings/MV.Municipal:BillHusband]
Just slot that in where I want "Menawa" or "my husband"
be aware that you cannot do this in mail
That is important, doesn't work in mail
OHHHHH and that leads to the strings which leads to the i18n!!
omfg tysm-
And another trick, I can capitalize the first letter of the phrase like so:
[CapitalizeFirstLetter [LocalizedText Strings/MV.Municipal:BillDaughter]]
So I don't need a key with and without it capitalized
that's amazing! again tysm for this-
No problem, I had a hard time following the chain of what was going on too
But it's really nice not having to pass through stuff for tokens
it's always nice when it takes you forever to learn something and then you can explain it really well after (my entire existence LOL) 
Content Patcher has Uppercase (ALL caps) or Lowercase (ALL lowercase), which didn't work for what I needed
Because my tokens are a name and then a generic way to refer to them, so the name always needs a leading capital
mhm!
so I found "CapitalizeFirstLetter" and angels sang LOL
Getting elbow deep in the documentation once I got the basics figured out
oh, for SMAPI?
https://stardewvalleywiki.com/Modding:Tokenizable_strings
The end of this page
YAY
LocalizedText is a vanilla concept
(and CapitalizeFirstLetter. theyre b oth tokenizable strings)
perfect!
to be clear also, any tokenizable string is not usable in mail. not just LocalizedText
one day, mail will be free... until then, it's passthroughs or variants
all dialogue and events have tokenizable strings parsed
in the case of events, they wont remove the need for surrounding quotes, if applicable
perfecttt okay that's how I can fix that one problem- thanks so much guys 
I feel like i just unlocked the secrets of the universe (learned a modding thing)
oh, mail. please change 🙂↕️
we can fix him 🫡
..you mean irl or for modding-
ahem 1.6.16
likely too significant a change for 1.6.16
I've sent real letters!
Oh wait
the only data modelification in 1.6.16 is for Achievements, which are largely unimportant for modders, otherwise all the data modelings are in 1.7
(largely unimportant for the game too, likely, for achievements. not too much to rework there)
(imagine if my mod takes so long 1.7 is out by then)
!tiled
If you want to make mods that add or edit maps:
-
Use Tiled to edit .tmx or .tbin files.
-
Refer to the Maps wiki page for details on how maps work in Stardew Valley.
-
Content Patcher allows you to create custom locations through editing Data/Locations
-
Vanilla Maps can be edited via Content Patcher as well: EditMap
This is for you, spirit
AAAAAAAAAAAAA
i hath summoned you
apologies 🙂↕️
Everything you want to change about maps you can do it with tiled. (Obviously impossible things excluded)
nah dw i needed that ping- i have no ping in my name cause people would ping eply WHILE i was in convo
whar the impossible things,,,
i just wanna make the rooms even,, surely i dont fuck things up
time travel irl
Eh tiled has a bit of a learning curve
you prolly will, but that's the modder's way
anyone want to check some math code for me?
pretty sure i got it right this time xP
I don't think there's anyone who hasn't fucked something up spectacularly in tiled
Math code?
definitely never done that. but only because ive never tried.
You can just send it and hope someone here knows
true. well here it is
if (who.CombatLevel == 0)
levelMultiplier = 0;
else if (Config.PerLevelDamageMultiplier > 1)
levelMultiplier = 1 + (who.CombatLevel * (Config.PerLevelDamageMultiplier - 1));
else if (Config.PerLevelDamageMultiplier < 1)
levelMultiplier = 1 - (who.CombatLevel * (1 - Config.PerLevelDamageMultiplier));
float multiplier = levelMultiplier * Config.SingleDamageMultiplier;
int flat = who.CombatLevel * Config.PerLevelDamageBonus + Config.SingleDamageBonus;
minDamage = Math.Max(0, (int)(minDamage * multiplier + flat));
maxDamage = Math.Max(minDamage, (int)(maxDamage * multiplier + flat));```
I accidentally changed the tile size to 32x32 and Buttons commented on how I'm the first person to try!! (apparently casey did once but like - on purpose)
I once managed to offset the object layer grid from the actual tiles. So my tiledata would never line up no matter what
I fucked up my map so bad trying to enter it softlocked my game and my log was like 10mb of repeating red errors 
🤔 I'm not sure if anyone here atm knows, but it would probably be a good idea to stick around until other people show up
Hiding
you can lure the C# ppl by setting out some photos of cats /hj
well im pretty sure I got it right this time.
...and if not hopefully someone will randomly @ me later and i can fix it then lol
arrite time for me to change half my dynamic tokens to dynamic strings-
(i stepped out to order groceries, but now a store's showing me token problems
)
!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.
@\pathos help, it won't let me upload html
)