#making-mods-general
1 messages · Page 465 of 1
vanilla can do that lmao /lh
its not the only option and its not the starting line, its simply an option
well im sorry i forget clothes grow on trees...
also: hm.. i dunno what to do... like, i wanna make a museum mod, but i have two separate ideas that i don't think really mesh well. One is a more story based mod that centers around a museum, and helping revitalize it unlocks more of the story.. but another is i just want more rocks.
but i kinda... dont want to make two museums.
i mean
more shinies is always a plus
maybe the museum has a minerology wing?
you could try to tie that into to the general musem lore by using it to like, idk expand stardew valley's past as a mining settlement?
OH
i had originally thought of my original idea + a separate geology museum but well who wants two museums.
..me
so i guess yeah your idea of a separate wing sounds better
but irl ig-
but then i need more museum wings.. lol
🤔 hm,, fish museum.
wait thats just an aquarium
nvm
give it so many wings it's a biblically accurate angel
oh shit yea-
the fish zones
I find it very immersive to find a single shoe entangled in a power line /lh
u can make a aquarium where player could leave fishies
with ftm
it just wont rly have rewards until you find way to check whats in a tank
🤔 hmmm
i dunno if i could have like... a special order.. submit fish,, then a map patch to make the aquarium Fish-ified
awwwwww maaaaannnnnn!
it feels good to finally publish a mod and be done working on it
that IS where I see most stray shoes
ooo congrats!!
is there a way to ban a flower from honey like you can ban seeds from the seed maker?
have to change its category to something other than -80
best i can think is editing the condition field to exclude the flower and see what happens
maybe u can make a special category with sc to justify it 
you can give it the category_flower tag to possibly hijack some modded machine rules that expects flowers
and yeah + fake it with SC
you can also delete the bee house from the game to prevent people from using it to make honey with your flower
oohhhhhhhh nvm
it has just one output item, which calls some C# to get a nearby flower
maybe this is a case where i tell players "if you don't want flower honey don't put bee house near flower"
new winter tilesheets are done and 2.1.0 is out now ;)
took a whole week of trial and error, but its finally done
I have a question. If two mods using CP edit the same file, how can I ensure that one mod wins out over the other in editing the file?
priority
patch priority or a false dependency. whichever mod loads later wins
That would be something that goes in the manifest, correct?
No
WEll
The dependency can be put in the manifest
Depends on if you want all your changes to apply
!loadorder
When two mods edit the same dialogue or images, whichever edit is applied last "wins" and is the one you see in the game.
If the mods don't set edit priorities (which most don't), that order is mainly determined by the order the mods were loaded by SMAPI. You can change that mod load order to influence the edit order.
Thank you, I'll check that out!
what p ng file are the trinkets in
TileSheets/Objects_2
tty
HasMod
The installed mod IDs (matching the UniqueID field in their manifest.json).
Oh thank you, much appreciated!
Aweome, setting a priority worked perfectly. Thank you all again!
So from what I've read in the chats, "skipping reload for asset because underlying asset no longer exists" can often be attributed to using a token that is save-related and is more or less harmless. (e.g "Spouse |contains=Abigail". ) But is there a way to stop the message from appearing at all? E.g. a different token mechanism to use? I've tried "relationship:Abigail": "Married" and a few others, but the message still appears. Again, it doesn't hurt anything, it's just kinda annoying.
🤔 uhhh maybe a log would explain some more stuff
you just need to make the Load unconditional
at least one of them
if you use priorities then you can make other conditional loads that r higher prio
or you can use EditImage/EditData on the thing you loaded
it depends on what you r trying to do really
Just modifying a sprite based on marriage. That gives me plenty to try.
Thank you!
Yeah in that case I'd do EditImage
Especially if it's a sprite that exists in vanilla
Perfect, thanks!
Sorry, I should have sent logs but that's my bad.
Just wanted to say that it worked perfectly and thanks a ton.
For anyone else who looks up this same error "the underlying asset no longer exists".
If you're like me then I was trying to put conditional values on a load for a custom character when I needed to load a blank sprite first and then afterwards do an "editimage" on it with the conditions.
Here was my issue:
\\ Load 1
"Action": "Load"
"Target": "Characters/Djinn",
"fromFile": "Image 1",
"When": {"Spouse |contains=Djinn": false}
\\ Load 2
"Action": "Load"
"Target": "Characters/Djinn",
"fromFile": "Image 2",
"When": {"Spouse |contains=Djinn": true}
Here was the fix:
\\ Load 1
"Action": "Load"
"Target": "Characters/Djinn",
"fromFile": "Base Sprite Image"
\\ Edit 1
"Action": "EditImage"
"Target": "Characters/Djinn",
fromFile: "Image 1",
"When": {"Spouse |contains=Djinn": false}
\\ Edit 2
"Action": "EditImage"
"Target": "Characters/Djinn",
fromFile: "Image 2",
"When": {"Spouse |contains=Djinn": true}
very kind of you to write it out for people to search for
Guys, am I doing my snippet effieciently?
https://smapi.io/json/content-patcher/79ab683a92014d5f8ec16081341e346a
https://smapi.io/json/content-patcher/b220f60d7a1a4feead9e2dbc2c380139 you can do many loads at once like this if you rename your pngs to be YourModId_Gyrados.png, etc
Tysm
Are you having only these five, or are you planning to add even more?
Planning to add more actually, my original plan was make a sprite sheet instead and use indexes so I can just use the "Load" just once. But I don't really know how
that would be even more efficient
however i don’t know furniture so someone else will have to weigh in on how
In that case, you may want to look into Local Tokens so that you'd only need to list each item once.
Aight, thanks everyone for helping
Local Token is a pretty new feature that can be a bit confusing. So please don't hesitate to ask if you need some concrete examples!
This is pretty neat - where can you get it?
hmmmm, on the fence about this. dust cloud while sprinting? yay or nay?
i like the idea of a dust cloud, but i think vanilla would do a particle that rotates and moves up slightly while fading 
like the difference between the walk and sprint clouds looks clear to me
oh wow, I never noticed the running dust sprite it's so faint
time to go yoink that and just make that larger
work smarter not harder !
just that but a little whiter/stronger+larger would be perfect
it's always better to have a spritesheet than many images for Furniture: less stuff to load. Especially since you're putting everything in a shop, so there are cases where they'll all be loaded at the same time anyway.
what mod is this for?
in travelling skill there's a sprint proficiency that lets you run faster after running for a second or so, but there's currently no visual effect for it.
I forgot to ask the question lmao: could I take some inspiration from this?
Thanks!
Got the various versions of events working without the When conditionals!
Look at this monster of a event precondition key
"DolphINaF.AdoptLeo_Event2/GameStateQuery mushymato.HaveMoreKids_WILL_HAVE_CHILD Player Leo, ANY \"PLAYER_NPC_RELATIONSHIP Current Abigail Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Alex Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Elliott Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Emily Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Haley Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Harvey Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Leah Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Maru Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Penny Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Sam Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Sebastian Engaged Married\" \"PLAYER_NPC_RELATIONSHIP Current Shane Engaged Married\"":
Beautiful
terrifying
you could shave off 24 whole characters if you swapped to single outer quotes
You use N++ iirc Button?
VSC flags single outer quotes as errors and I wondered if maybe N++ doesn't do that
(I know they're still accepted by the game even if VSC complains, I just don't like VSC complaining about them)
Hmm no N++ is complaining even more blindingly than VSC does
N++ doesnt complain but syntax highlighting in general breaks with long keys
you could always add json5 to VSC
Mine is definitely complaining and it is set to json5
thats vsc?
Nope N++
well i didnt say you could add json5 to n++ 😛
(There is no json5 available for VSC but it does have jsonc which I think? is basically the same thing)
But...N++ does have json5
vsc has extensions
I know and I use them extensively (ha) and there is no json5 extension
my N++ never highlights any errors whatsoever anyway
I don't remember tbh
i literally just installed a json5 extesion
Curious
works great too
Does it do any error checking?
(Time to google the difference between json5 and jsonc to see if this is worth me pursuing for myself)
otherwise itd be kinda pointless
VSCodium doesn't have a json5 extension, but I use jsonc, it's effectively the same, at least as much as ive noticed
jsonc doesnt allow the issue that is the whole point of this discussion
which is single quotes
json5 is a lot different from jsonc
"JSON5 allows comments like JSONC, but goes further by supporting trailing commas, unquoted object keys (which are valid JavaScript identifiers) and single-quoted strings."
as well as a handful of other things
like hexadecimal numbers, trailing decimals, infinites, and iirc with json5 you can write +5 for example instead of just 5
I wonder what's up with my N++ complaining about it then
Hrrrrrmmmm I wonder if this will get me my multilined events with error checking
This would be simpler with
keep in mind though that Newtonsoft =/= JSON5
G {{Spouse|contains=long list of vanilla NPCS}}
that was already suggested yesterday
i presume Dolphin went with the explicitly defined GSQs for clarity
and ease of copying for other mod authors for compat
You could also back that out into a token
Meaning just because JSON5 allows it doesn't mean Newtonsoft will?
Morning, button!
Yep yep!
correct
Newtonsoft allows most of the JSON5 spec
but not all of it
Not unquoted keys I'm assuming?
https://github.com/JamesNK/Newtonsoft.Json/issues/323#issuecomment-1382650016
this may be slightly out of date now as its been 2 years, i have no clue
no it supports those
The worry was using a token would make it not easily patched by another mod.
Interesting
the things it doesnt support are unlikely to be used, to be fair
i mean a mod still cannot patch it
You cant patch it anyways ool
Since it is in the key
You can play tricks like usijf spacecore to launch the event in special circumstances
Or removing the event in others
Wait, it can be patched if using the same key, right?
well, yes
but they cannot change the preconditions
because the preconditions are in the key
Well yeah that's hopeless.
theres literally no difference in patching between token and non-token
they would just use the same token in their patch
oh my god i have an ugly baby??
if Event Lookup wanted to show the preconditions though a "GSQ true/false" isnt very helpful compared to a list of relationship preconds though
Babies are ugly, it's just the hormones that prevent you from seeing it as young parents
Trust me, i'm a parent 🤣
It's just cute because of chubbyness
literally how do i prevent some tiles from being passable? i tried so much, from adding in tiledata tile by tile, by editing the properties in the tile sheet, but there's still some tiles that are passable. some of them let me walk on the water. guess my npc turns you into jesus or something
so basically put the same tile on two separate layers?
You can. Or think of it like a cliff. You don’t want to walk on a cliff so you only put it on the buildings layer. Doesn’t affect the look. Only function
But anything put on the buildings layer is non passable by default
Yeah, you can just put one tile on the building layer. Unless you have a reason to also put it on another layer?
mostly just overlapping tiles that cancel each other out my description makes sense
do you have a bridge? there are special water tiles for bridges that prevent passing
is there any good mod managers that arent vortex? i just dislike that i have to manually update each mod instead of just being able to click a button that does it for me. Curseforge has that, but it's missing a lot of mods
Theres StarDrop but you need nexus premium to update from within it, however if you click the update button it takes you to the mods nexus page
!stardrop
Stardrop is a mod manager written specifically for Stardew Valley. See the Stardrop wiki for installation and usage.
See this tutorial for connecting Stardrop to Nexus or updating mods in Stardrop.
If you have issues with Stardrop, see the issue report guide.
(but also that's more of a #modded-stardew question btw)
yes, i use stardrop https://www.nexusmods.com/stardewvalley/mods/10455. i believe there’s also a new one called dewdrop but i’ve never used it
ok thank you, also i am sorry i sent that in the wrong channel i realized that just now
no worries at all! unlike mod authors, they tend to play the game a lot more than us XD
yeah lol, i appreciate you responding to my question anyway though
I can still walk through tiles despite adding things to the buildings layer, setting passable to false and whatnot. I need a break. I hate maps 
you shouldnt be setting anything on the Buildings layer to "Passable", regardless of what you write in the value, if you want it to be impassable
anything put on the Buildings layer is by default impassable
by putting a property with the name "Passable" on it, you are making it passable. it is not checking what you wrote in the property value, it is only checking for the existence of the property

i.e. you cant "set passable to false"
you do not need tiles on two layers, either
you only need your fountain painted on the Buildings layer
Au contraire, swimming in the fountain is fun
more map unfucking for me tomorrow 
So I have just learned nearly a year past releasing my mod that there are some orphan dialogue keys without the required translation entries (when I was getting started I worked from a template without fully understanding what I was doing). Is there a way to systematically find all of these keys?
Patch export every file you touch
sheku made a tool at some point
Yeah I thought I remembered something like that but I can't seem to find it. Thank you though. I may be able to use coding AI to compare certain parts of my dialogue files to my i18n keys.
So my split-screen co-op compatible version of this one Farmer Portraits content pack is only partially working. The "emotion" portraits are showing up, but the "default" ones are not. And SMAPI and the JSON validator aren't giving me anything to go on. Does anyone have a guess about what the issue might be? Or would be able to take a look at a couple of my JSONs? I'm probably overlooking something obvious, but I've checked over them so many times these past few days and am just not seeing it 🫠
Feel free to; i dont know that framework so I cant help but maybe someone else can
this really depends, are you hoping for the results to be correct? /hj
also, did you use AI in other places in your mod already?
Okay, I'll put the Google Drive link here if anyone wants to look: https://drive.google.com/drive/folders/1n354-W6RmD_JJRTfUC85jr73CzTcU0e5
I wouldn't ask anyone to bother with checking all the JSONs, but if someone could look at the main content one and the locations one in the assets/data folder and see if anything looks wrong, then that would probably tell me what's wrong with the others. Each section has headers at the top. The sections in locations with "default" in the label are the ones that aren't working, whereas the sections with emotions in the label like "neutral, happy, sad, etc." are functioning as intended.
Also, I absolutely forgot about an appointment I have to go to now lol, so if anyone replying could @ me, then that'd be really helpful so I can come back and look later 😅
please can you upload through the json validator instead once you're back?
!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.
(google drive has a tendency to doxx people)
really need help closing the gap on my knowledge for c# moddng.
i grasped sending messages to monitor and hud but i cant quite figure out how to add a buff 😭
looking at the wiki for modding buffs gives what i think goes under some sort of private method? but im not even sure which private and public to use
https://stardewmodding.wiki.gg/wiki/CSharp_-_Beginner's_Guide this guide really helped me, and has an example of a buff
yeah im looking at that too but everything is telling me how to make something happen when something else happens.
i just wanna add an entry to data/buffs
do you need to do it in C#?
technically no. i could easily do just this in content patcher. im specifically choosing to do this because i know how to do it with cp so i feel i would gain better understanding of how things are handled differently between c# mods vs cp mods
that way i can hopefully understand how to do more advanced things with c#
sorry i got pulled away. my very elementary understanding is that you could just add it to the dictionary if that's the case, but everything in C# has to be tied to events
so like when game loaded, access the dictionary and add this information
the way i usually approach things is "data" and "logic", where "data" is all the stuff you can tell game to do by changing values in content via content patcher, and "logic" is the actual C# code consuming the data to do the things
In C# you've got a few options, you could either manually initialize a Buff instance with whatever arbitrary data you want and apply it to a player at any time, or apply the data edit it Data/Buffs with the AssetRequested event
for buffs there's not really a difference between how you might define it in C# vs how you might do it in data, until you need an effect that vanilla doesn't provide
oooohhhh i did not know "asset" could be a dictionary. i assumed it had to be an item/building/etc
so here data/objectswould be data/buffs.
data/buffs is the asset the game is requesting...
Most (all?) the vanilla assets are more or less Dictionaries, usually some sort of Dictionary<string, string/specific Type>
Yup!
ok so then i just delete the foreach block of code and drop in
idk im disconnecting again
maybe actually also the line above the foreach block should also be removed
This is the manually create buff approach that tedi mentioned
Rather than editing the data
It's a bit more complicated but at the core content patcher is big ol AssetRequested handler that takes all ur json and put the data into game
When you do things via AssetRequested you are loading your data to the content pipeline and allowing other mods to make edits to it
This is generally beneficial for compatibility
ok so after the e.Edit line, in the brackets>
var data = asset.AsDictionary<string, BuffData>().Data;
followed by the same thing i would do in CP started with the entry key/buff id?
actually string should be int since the buff ids are all integers?
I don't use AI to produce creative work of any kind. I use it to do some repetitive tasks like: use this list of JSON values, create a new array of keys where the value from the first array and append it with this string" kind of thing
Using it to find i18n strings that I missed implementing is an example of this.
They're not, buff IDs are strings, not sure where you got that they're ints from
because theyre all whole numbers... oops
actually since theyre in quotes i shouldve known better
they used to be an emu and hardcoded. thats why in C# you'll see like buff 13, buff 14, ect. but it's been changed to be data driven
thats good to know
can someone tell me whats going wrong?
https://smapi.io/log/b0a7e0a3b8d744689404070deb2cbddd
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 12 C# mods and 10 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
it looks like a type mismatch maybe? is your IDE not highlighting any errors
Hi, im trying to create a NPC using Content Patcher, but i'd like this NPC to disappear during the summer because he is supposed to be "exploring the world". But i don't know how to do that, does anyone have any idea?
nope. gonna rewrite it and see what happens
Trigger action, set them invisible
Every day in summwr
BuffData not Buff
oh i didn't know that, i'll take a look, thank you 
that just made everything red
Ah nvm i need to change the format from : to = apparently
the data model is a dictionary of string to BuffData objects, but you're still trying to assign Buff objects
i changed new Buff to new BuffData now.. if thats what you mean
hopefully this works
not sure whats different in the system but when i choose "show potential fixes" it makes things worse. when i choose fix with copilot it actually points me in the right direction and explains why
show potential fixes is pure language server stuff
in this case it might not have enough info to say "yea you need BuffData"
that makes sense
if you don't feel like you have a good grasp on C# fundamentals though it may help to do some general C# courses
sdv modding C# has a number of quirks
not in terms of syntax just what is available via api kinda thing
yeah im working through microsoft's C# course
recently learned do while which was pretty fun to play around with
for reference, everything vanilla in the content manager due to the quirks of the xna/monogame content pipeline system means all the types referenced in the xnb need to be in the separate StardewValley.GameData assembly which can't reference anything in the main stardew assembly to avoid circular dependencies
which is why many things have a <Type> and <Type>Data separation
sorry i had to make dinner. thanks for explaining that because it was frustrating trying to figure out the why
Hello guys. I'm trying to make a retexture of the bushes in Cornucopia More Flowers, but for some reason my code isn't working despite there being no errors (to my knowledge).
The bushes currently look like this
When they're supposed to look like this
Can someone help me out with this? I don't know what I'm doing wrong. Here is my SMAPI log: https://smapi.io/log/49eaf484d9a1431596238ec07659a8bd
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 130 C# mods and 792 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
Here is the code I'm using for this mod. The retextured flowers and crop growth stages work for everything else but the bushes themselves.
Ok thank you for telling me about it. I didn't know about it until now. Here it is: https://smapi.io/json/content-patcher/e0ec3dcee7a6450fbe17013bd8147fe9
Cornucopia's target is just Cornucopia.MoreFlowers/teabushes
no season token
Cornucopia.MoreFlowers/teabushes_indoors is correct though
Oh, really? I thought that there were seasons because when I looked at the assets folder, there was a season for each teabush png. Ok I'll try this out and report back on what happens. Thanks!
always check the original mod's content.json
in this case it has 4 assets but only load one at a time into Cornucopia.MoreFlowers/teabushes depending on the season
It works! Thank you again for your help. God bless and have a blessed week!
https://smapi.io/log/171b410b4a954854b4957de1159859fe
anyone know how to properly load custom textures?
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 12 C# mods and 10 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
thought it was this
Texture2D texture = Helper.ModContent.Load<Texture2D>("assets/candy.png");
if thats right then maybe i need to change how its written in the data?
IconTexture = "assets/candy.png",
IconTexture needs to be the name of the asset that is in the content pipeline
so just candy.png?
in CP that would be a Load action, in C# it is listening to the AssetRequested event and when its your asset name loading appropriately https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Content#Replace_an_image_file
assets/candy.png is a filesystem path in your mod folder, not the content pipeline
i thought the ModContent.Load line was putting it into the content pipeline with that as the name
or if you want to use internal asset keys, you can do IconTexture = Helper.ModContent.GetInternalAssetName("assets/candy.png").Name which will make a magic asset name that tells smapi to read your mod folder directly, but CP and other mods wont be able to edit it further (without replacing IconTexture to point to an asset in the game content pipeline)
ModContent is a separate instance of the content manager aimed at your mods folder directly with no cache, which is different from the main game content pipeline
its the main difference between Helper.GameContent and helper.ModContent
ok so i need to load my file into the game content pipeline?
yes, otherwise the vanilla buff code wont know how to find it, as it only knows what Game1.content.Load<Texture2D>(assetname) is
which makes sense in this example since theyre loading their custom image whenever the vanilla one is called
how do i do this for a nonvanilla item?
from a content pipeline perspective, there isn't a difference
just replace Portraits/Abigail with some other value that you also use in the IconTexture field
the main difference between a vanilla asset and a custom asset, is that you need to convince the game to want to load the custom asset to begin with, which the IconTexture field in buffdata is doing
is this the same concept as having to use the target of a load as a texture, instead of using a png?
yes
i thought it was
@lucid mulch @urban patrol holy crap that helped connect the dots
it actually worked
basically telling the game when youre told to use "texture x" load it from "this file"
i'm so glad that helped, because i wasn't sure if the concept would communicate lol
i also wasn't sure about it in general which is why i asked
its weird because i feel like i understand CP pretty well atp but it doesnt really translate to C# in my mind
yeah that's exactly what i'm dealing with right now trying to learn it
One way to think of Content Patcher is that its a fancy engine to just do OnAssetRequested and maps the Load and Edit calls based on what the content packs want
but with black magic
i really appreciate you basically holding my hand through this
the fancy part of CP is the update logic to know when to invalidate the assets
if you run for president ill vote for you
I wonder how y’all even make mods in general
while you were farming... i studied the blade... /j
i just throw spaghetti at the wall until something sticks
modding is taking the current state of the game, and making it the desired state of the game.
the basic way is replace the physical files (ie XNB mods)
the more interesting way is to intercept those reads via the content pipeline with the loads and edits
Keep misreading Demetrius’ name as dementia 😭
i desire for the current state of the game to be broken 🙂↕️
live, love, load conflict 
https://smapi.io/log/3be155d26fdc4e03b2a01972b4e96dd4
/pause 1000/end dialogueWarpOut MontyFinch \"I can't believe it didn't work...$s#$b#I have no idea what went wrong.$s\"", what's the issue with end dialogueWarpOut?
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.22631.0, with 20 C# mods and 2 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
@spice inlet Hi, sorry for ping
can you edit your nexus page of the mod QuickSave
about android support now on SMAPI 4.3.2.1++?
just a guess but does your event take place in an inaccessible map
I think the error is that it can't find a warp to get out of the map
it has a warp to and from it but the way to the warp is blocked yes
i was gonna make it a temp map instead of a changeLocation but i had issues with the transition in the event
oh is it trying to dump the farmer at the warp instead of the default warp location
the map where the event ends (warp is at the trapdoor) and the warp out map (warp to the attic is at the blue square on the stairs)
the books on the stairs block the path there, but the warp does work, i tested it
the player needs to be able to leave the location via a warp for dialogueWarpOut to work
elaborate 📝
it was just ugly, i couldn't put the viewport at -1000 -1000. instead it shifted as far left and up as it could go, which was like 3 tiles over and still showed most of the attic
yeah i have a buildings layer warp
that's odd, i've been able to use temp maps with negative viewports. maybe it's to do with the map being indoors, since mine are outdoors
perhaps? it's something that's happened before and i've just chalked it up to events are weird
does the map you used clamp the viewport?
oh it does, do you think that's it? i'll take that out
that would be it
i didn't think that would apply in an event where i manually set the viewport but oh well
that's a relic from when i was going to have the map be accessible
although back to the original issue: does warpOut dump the player at the end point of the warp, or the default warp location?
i don't believe you'd need it for a small indoors map either way, it's only used for the busstop
i added it for a reason but i don't remember why
i have one for another indoor map as well
iirc indoors locations already clamp by default for small maps
interesting
i could also just be imagining that though 🙂↕️
okay i just tested it again and i don't think an Action Warp works for end dialogueWarpOut. i added a map property Warp and now end dialogueWarpOut is working
How would one go about adding the gender tokens from gender neutrality mod into other mods ?
For Modders: To use this mod simply install Content Patcher and call the tokens listed in the config file in your content file. For example, if you wanted the dialogue to say "I like them/her/him" You would write "I like {{Hana.GNMTokens/ObjectivePronoun}}" and it would replace the token with whatever the user provided in that config slot. Further use details will be added later.
there's a better tutorial here: https://stardewmodding.wiki.gg/wiki/Tutorial:_Adding_Gender_Neutrality_Mod_Tokens_(GNMT)_Compatibility
it does assume you're familiar with basic CP modding and tokens
can c# use tokens? specifically {{ModId}} or will i need to just type it out
{{ModId}} is specific to content patcher only
C# mods can tokenise strings in their own way, and cannot use CP's tokens.
Usually you stick your mod id into a const str somewhere
or use this.ModManifest.UniqueID from within your Mod instance
e.g. string message = $"You have {ModManifest.Dependencies.Length} dependencies in mod {ModManifest.UniqueID}"
haha of course i forgot i could just declare a string and use it
Thank you !! I can probably figure it out ? I've done a bit of coding for this mod pack already so we shall see :)
Watch my files explode LMAO
that is convenient
There isn't anything out there that would let me move the layout of interface elements like shop stuff via Content Patcher, is there? Would probably need C# to mess with UI?
yeup
is that not what the visualtheme field does?
that allows you to change the theme (colors, appearance, etc.)
to mess with how everything is laid out in the first place you gotta get in the C# mines
like I'm assuming what Mud wants is something similar to this in principle: https://www.nexusmods.com/stardewvalley/mods/33271
oh right 🙊
how bad is it to use GameLoop.UpdateTicked? is it frowned upon?
in my mind it might be taxing to run something so often
the answer, as is oft the case, is "it depends"
if your logic don't have to be run every frame then don't
a tick is 16.66ms approx
if whatever you are doing + the existing draw and update work is higher then game starts feeling laggy
game doesn't store ui as any kind of data so it's a pain to mess with them even in C#
there are 21 harmony patches in that shop mod and most of them r transpilers
yeah there isn't much of a concept of 'interface elements' beyond clickable components and regions
there's design tools to make structured interfaces, but nothing in the base game is structured and cannot be edited simply
welcome to SDV UI modding, we draw directly to the screen here, take your MVC back to QML or whaevs
All I wanted to do was toy around with moving some of the elements left or right to get more space for other shenanigans 
well it's never too late to learn C# 😌
impossible with content patcher 🙂↕️
idk what is the menu anyways
"editing existing menu" is one of those things thats extremely unlikely to get a framework for what it's worth
(better game menu)
well no but it's about as good as you can hope
I guess there's SpaceCore guidebooks
what you want to do may not be that bad though, if you just want to reposition things it could be done in a menuchanged event 
unless it's not on a clickablecomponent then ur doomed
Just thinking about implementing a data driven UI makes my head hurt
stardewui is a data driven ui basically
but it's also not for content cus u need to write the model in C# 
I'll have to use it some day, so that's good to know
i was speaking mainly of existing menu which r kinda set in stone
before StardewUI there's also like 3 different UI frameworks that no one but their author use
a lot of other games do just use data driven ui of some flavor
What I was saying was just "I don't want to be StardewUI's dev"
I just want an excuse to share this video which is 100% harmony free and just involves menu changed/update ticked to reposition/redraw stuff
oh my god, because fishing needed to be harder? that's horrific i love it
well good news, if you want it in your life the mod's already out on Nexus
assuming the "using xxx" list at the top of a mod file is a list of subclasses.. what subclass is needed to use vectors?
correction: those are namespaces
and IIRC Microsoft.Xna.Framework? somewhere in XNA
thanks for the correction and info.
VS recommended that as a fix but i assumed it needed to be something smapi related
Is health restoration calculated automatically from the Edibility value?
if you just write out Vector2 it'll automatically add the namespace if you use either the intellisense(tm) popup, or press ctrl+. (or click the 💡) on a reference with a namespace available.
yes, items have 2 methods for getHealthOnConsumed and getStaminaOnConsumed or somesuch
you can override these in data with spacecore, though
Edibility (Optional) A numeric value that determines how much energy (edibility × 2.5) and health (edibility × 1.125) is restored when this item is eaten. An item with an edibility of -300 can't be eaten, values from -299 to -1 reduce health and energy, and zero can be eaten but doesn't change health/energy. Default -300.
sometimes i'm hesitant to use the suggestions because people were upset when i mentioned using ai for code before
i definitely dont bring it up on this server
intellisense(tm) is pretty much just autocorrect for your code, it won't write the thing for you
copilot and the weird annoying predictive text in VS is generative ai, however, which i don't bother using
i only mentioned using it to help me learn how things should be written. although its wrong like 80% of the time
the predictive text feels like a trap that tells you what not to do 😂
"this is the mod that never is working" hums
opens up notepad again
first theory is spacing. >_>
I thought I was doing this right but the energy control isnt working correclty. Anyone know what I'm doing wrong here?
{
"Action": "EditData",
"Target": "Data/Objects",
"TargetField": ["253"],
"Entries": {
"Buffs": [
{
"IconTexture": "TileSheets/BuffsIcons",
"IconSpriteIndex": 9,
"Duration": "{{Espresso Time}}",
"CustomAttributes": {
"Speed": "{{Espresso Pace}}"
}
}
],
"Edibility": "{{Espresso Energy}}",
"IsDrink": true
},
"When": {
"Enable Espresso Changes": "True"
}
},```
sample from the mod
that code looks correct; what does Espresso Energy evaluate to
Just setting it as a number, I changed them all to 10 and nothing changed in game
did you spawn new items
this is a wip
"{{ModId}}.MyoldfriendsN15": "{{i18n:MyoldfriendsN15.text}}%action AddItem {{ModId}}.CherryPaifait 1 2 %%%item cookingRecipe {{ModId}}.CherryPaifait%%[letterbg Mods/{{ModId}}/backgroundN 0][#]{{i18n:MyoldfriendsN15.title}}", I assume what I need to do is space things out so they're properly evalulated?
that worked lol
edibility is one of the fields baked into item instances, meaning you have to create new instances when testing
others include category, price and some other stuff
Maybe I could do some sort of conversion of the edibility value so in the config it directly translates to energy
Cause currently setting a value of 10 gives 11 energy, 20 gives 22, 100 gives 112 etc
I don't think you need that (spacing) even, the mail looks like it will evaluate fine
hm..
"{{ModId}}.MyoldfriendsE14": "{{i18n:MyoldfriendsE14.text}}%item cookingRecipe {{ModId}}.SichuanBoiledFish%%[letterBG Mods/{{ModId}}/backgroundE 0][#]{{i18n:MyoldfriendsE14.title}}", this line evalulated to no cooking recipe and the title was screwed up, so that's why I'm trying figure out what happened. >_>
you could try patch export Data/Mail and see the final form of your letter
interesting.. someone else said it earlier but spacecore allows you to override this and choose the values. i use spacecore for nearly all my mods so thats the route i would go
hmm okay Ill have to give those docs a read
I found the culprit. :S
"^^Ethan [#]%item cookingRecipe RayAmier.MyOldFriends.SichuanBoiledFish%%[letterbg Mods/RayAmier.MyOldFriends/backgroundE 0][#]Fishing Apprentice",
i bet the [#] wasn't stripped out
it was not
fixes it
Are there add ons for console??
🫤
The game is SOOOOO good but the dialogue is so boring only being able to talk to each villager once a day. And once you marry it's annoying that they kinda just stand there and do nothing.
well there are definitely mods that change those, and more... as long as you're on PC or Android 😌
(I recommend PC, it's more stable and more mods are supported)
Yeah I figured it was them. They're soooooooo stingy
None of the consoles are gonna let you just add arbitrary code and such
you CAN mod the switch, very very basically, if your switch is modded
Tbh it's not Nintendo specific, Sony are also not a fan of any user code running
abitrary user-created content on consoles is the exception, and nowhere near the norm
And Xbox also isn't a huge fan unless it's heavily sandboxed
and definitely never to the extent of what SDV mods can do
Why not do what farming simulator and Snowrunner do and have the mod center or whatever they call it in the game itself?
the game doesn't have native modding support in the first place; the modding API was created by a third party
A vanilla mod system would have a subset of content patcher with none of the framework mods assisting it
Maybe it's time to upgrade to a PC for games like this
There are only a handful of console games that have modding, and none of them are as feature rich as the PC modding equivalent with Skyrim being the textbook example
Yeah I'ma just get a gaming laptop to do my studies and play stardew ngl 😄
And even Skyrim needed a third party code program written for it to enable a lot of things the base tools didn't
Even though skyrim has a built in mod system, it's still horrifically poor, I think really the only game I've seen that has a pretty good built in mod system is Factorio, but even then you can't define custom machines type for instance, but you can get pretty close
the CK's not that bad. It's just not great at what people might want to do for major mods
Registering a custom token in GameLaunched and it logs as registered, but Content Patcher says it can't find it when processing a content pack that depends on my mod.
The content pack uses: {{MinutesToGameDuration:{{config:Coffee Duration}}}}
I see: Successfully registered token: {{MinutesToGameDuration:<minutes>}}
Then: '{{MinutesToGameDuration:{{config:Coffee Duration}}}} can't be used as a token because that token could not be found.
Basically I'm trying to make a helper function using a C# helper mod as a dependency. Is this a timing issue, or am I missing something? How do I make sure the token is available when Content Patcher processes the content pack? Sorry I'm very new to coding and especially C#, so bear with me if you can xd
I've updated the mod page.
Ty for adding support
iirc it should be the C# modid prefixed
so it would be {{MyC#ModId/MinutesToGameDuration:{{CoffeeDuration}} }}
Hello, I'm not sure how to add personal gift taste to NPC? Like a new dialogue for a specific item. I've read the wiki and they don't explain it, I dont think
You didn't find this page helpful? https://stardewvalleywiki.com/Modding:Gift_taste_data
Sorry, I missed you saying the dialogue for a specific item because I don't consider that gift tastes.
I do get the general gift taste, I'm looking to add more reactions, something like Elliot's hate toward Super Cucumber but he didn't use the default Hate dialogue
If you meant the dialogue keys, you want AcceptGift or RejectItem: https://stardewvalleywiki.com/Modding:Dialogue#Item_dialogue
They go into your NPC's Characters/Dialogue/<npc> asset just like the rest of their dialogue.
If you want them to accept it but hate it, you want to use AcceptGift. RejectItem is for when you want them to not accept the gift at all.
guess who has enough energy to be at their pc rn
I see! tysm, I understood better now
the hardest part of making mods compatible with gender neutrality is remembering the difference between subjective, objective, and possessive pronouns
finally putting this english degree to use
i would do it in native tongue but then i would have to translate 45 more mods
think smart not hard
whoever does do the work to make it compatible is a trooper don't get me wrong, but i don't think I can. not that isn't important for my mod anyway but yeh
i thought i might as well try and make the mods compatible and then i can give them to og creators maybe ?
hmm I'm pretty sure the gender neutral mod doesn't actually change the bodies? or...
All my mods are compatible, entirely bc they don't have a single mention of gender
no it doesnt
but you can pick your pronouns no matter the body
speaking of i have to do some crazy work. basically writing 3 sets of dialogue
one for m/f, and then one more for neutral
I love it when mods are compatible with GNMT 
probably the reason im avoiding it
Why three sets instead of using GNMT?
because i want actual differences
i figure it would be awkward if someone was using gnmt but was getting dialogue intended for a male farmer because they chose that body
Fair enough
oh, i have a question for anyone who knows GNMT-
is there a way to change honorifics, or would that have to be manually set to gender neutral stuff each time ?
the third neutral set i plan to use gnmt though, and just have it be a config option for if it's chosen or not
shouldnt that be in the configs?
im pretty sure it was a token
It's called Title
would that work for other added NPC mods as well ?
or would i still have to do it by hand since the mods arent compatible ?
If the NPC wasn't given GNMT compatibility by the mod author and you want it you'd have to add it in
for honorifics as well ?
Yep
okay, thanks !!
I got lots of "Hello Mr. Omondi!" in the mods that weren't GNMT-compatible when I was playing with "Mx." as the title I'd chosen in the GNMT config (male body)
ah alright
well i have encountered a new problem, my stardew will not launch at all
i have not added anything since i played this morning,,,,,,,
It sucked but that's what I get for indiscriminately installing every dialogue mod out there lol
!log We can help you fix that
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.
gonna restart pc first then if still not working i will make forum post :)
If it's crashing before the point of even generating a log, I can (hopefully) help with that too
smapi comes up, but then closes and goes back to stardrop, lol
Is it too fast to read anything?
yes
Might have to open with powershell then if restarting doesn't fix it
Might just be an AVE
you can launch it through powershell on windows or terminal on OSX and linux and it will stay up when it crashses
(actually not certain about the OSX, but I can't image it would be that different?)
oh wait
HAHAHA
i had a content file open so when i tried to launch stardew, it had heart attack </3
closed file, now it runs perfect
Does that happen with Stardrop?
How do modmakers work with Stardrop then?
close files before playing ?
I'd never close all my json files to run Stardew and then have to open them to edit them and then close them again
I edit constantly with the game running
im not sure, this is my first time trying to edit/make mods
maybe is because my computer is old and has a lot of stuff open
oh i had assets file open, not content
my bad !
that's certainly not something that should happen with stardrop, I edit mods all the time with stardrop and the mods open
is it because it was an asset file ? i mispoke originally, my bad
Nope
If it was an AVE, they happen unpredictably and go away seemingly randomly so that might have been it
AVE?
(Access Violation Error, it's a problem that happens sometimes with Harmony in C# mods)
sorry i have another question-
Ohhh ye I've had a few of them, especially on linux
shoot
where is the option to change honorifics ? i do not see in config anywhere
aba said it's title
Title?
are u editing it in game or the json file
might be a different name? I know it can be changed with i18n
Nope you should be able to edit it in game too
fifth option anyway
is this editing the base game things ? or is it for a specific mod
nah it's mod options
Have you got Gender Neutrality Mod as well as GNMT?
yes !
which ones config do u edit?
Are both up to date?
they are
i um...dont know where to go to open it
i thought you meant mod config menu, which was silly of me
sorry, i am very new to this
No it wasn't, usually everyone edits configs inside GMCM
And if it's available in a config.json it should usually be available in GMCM (although C# mods don't have to have GMCM support)
should be a "mod options" button on the game menu/cog in start menu
I am just hopping in game after having added GNMT to my 1.6.15 folder and I will have a look
thank you all for holding my hand through this </3
You're welcome, it's what this channel is for!
Okay this is the GNMT config menu in game
I wonder if you were maybe accidentally looking at the GenderNeutralityMod options instead?
oh no, pronouns
New quote added by irocendar as #6739 (https://discordapp.com/channels/137344473976799233/156109690059751424/1437755324038774815)
I'd use GMMT if me and English ever had an understanding of how stuff works
oh i was looking at the wrong one,,,, what a fool i am
at least i dont have to replace gerunds or anything fancy
how many languages do you speak, Bea? I know about two I think
~~mind u I've annoyed people by using they/them in Hebrew bc "that's for multiple"
~~
2 and im good at neither
same </3
~~the ACTUAL problem with they/them in hebrew is that it still isn't gender neutral 😭 ~~
Every time anyone tells me that "they" is plural only in English I am like 🩴
omfg ur right
I hate it here
we literally have a separate they for female and male

you can't escape gender in hebrew
and before anyone asks, it/that is ALSO gendered
there are simply no ungendered pronouns
(zeh/zot(i))
Hebrew: gender neutrality? I don't know her
russia 'it' is kind of confusing
but eto is basic go to
though...it is also gendered
I think when it comes to gender naturality English is one the best
Te reo Māori handles this so much better. No gendered pronouns!
oho >>>>>
according to claire, tagalog third person also isn't gendered!
the many forms of 'it'
why would u gender a pronoun? the table doesn't need a gender
Most pronouns are used for people
actually table isn't a pronoun it's uh
And lots of people feel very strongly about gender
idk
table is just a noun
the nouns are gendered and so are the adjective
table could be a pronoun if you use neopronouns :)
Welsh also has issues with gender neutrality, they and them do exist in welsh, but only for multiple people, and the soft mutations welsh has also don't have a way to ungender them, it's a pain at times XD
So I have been told me saying "the table is round" is wrong
(to be clear I mean in Hebrew)
thai is not gendered in third person but you have to gender yourself in first person speech, which is a different kind of anxiety

I would flippity floppity if I had to use gendered first person pronouns I think
me when someone asks me what gender "bird" is and I have to explain that a singular bird is feminine but multiple birds use the masculine plural suffix
russian is relatively neutral but technically using the pronoun они incorrectly but who cares
guess what hebrew also does?
(also second person)
with russian its fun to make up neopronouns
fascinating
sometimes people just switch between female and male but that's "confusing"
That's something I do often, e and o just get interchanged randomly depending on which makes the sentence flow better
the biggest issue with first person being gendered is that flipping to multiple, even if that works (which in hebrew it doesn't), requires you to start referring to yourself as "we"
just like. idk get posessed by an evil spirit
we are sad iro
then its accurate
I might refer to myself as a plural, sounds quite fun!
we (masc) are sad or we (femme) are sad? 
Referring to oneself as plural sounds very natural to me because of my best friend having DID so they frequently do that (and are they/them plural, not singular)

we actually do this in thai (but it depends on relative position so you can only do it if you're young talking to another young person you're friendly with on the same school level/rank)
russian 'I' is gender neutral thankfully
I wonder how hiveminds and other linked brains are portrayed in Hebrew because of the gendered we
sometimes I switch male nouns with female adjectives but that's "incorrect" and "not how you do it"
respect/age based language would drive me up the wall. how can I maintain my casual and incredibly cool reputation of respecting nobody
its not about being correct, its about being happy :)
masc (it's also used for mixed groups)
well yeah at least Hebrew doesn't have respect based language
booo men taking over everything /j
mostly cause we all lack it
that's the thing, you just don't need to respect anyone, respect no one and you have no issues
see in a group;
all female: fem
100 fem, 1 male: male
masculine hive mind but usually hive minds are mostly female/female ran, like bees, and ants
very funny languages hehe
did you know that that's genuinely one of the biggest issues of hebrew speakers communicating in english
the lack of politeness/respect doesn't come across well
100 femme, 1 undetermined: masc
yeah that checks
Welsh also is respect/age based, i.e. ti is used for peers and those younger, aswell as informally, and chi for elders, people you have respect for, and formally, it's so confusing, especially when you have someone you respect but are your peer, or don't respect and are an elder
hebrew is disrespect based. you must speak with spite /j
the difference in Hebrew is if u say dude or sir and no one says sir
formality however does take precedence in Welsh
learning to refer to my professors was so weird, it was a weird respect thing. Usually its professor (last name) but in canada, they just want first name basis ?? felt so disrespectful 
i think thats just a teacher difference
the only thing I associate the hebrew equiv of maam/lady with is a kids' song about a woman who takes up all the seats on a bus with her groceries
I have never referred to a single person by last name
mayhaps ?
that was the same for me when going from school to college and university, I hated it so much XD
omg .. u right
we use last name for EVERYONE in russia, especially someone of authority, but here, even people you dont know are refered to by first name so casually ?
u don't even call ur boss by their last name
how're the mods goin y'all
younger grades (in america) expect you to call them by their last name, like "Ms. Anderson" but in college you can honestly get away with calling them literally whatever they say you can
i am de-gendering my mods :)
bad
bad
teacher don't tell students their last names lmao
they're modding for sure XD
I figured out how to accessify my map! (With 6480's help)
great work!
goodbye
6480 is lying sick in bed trying to meet a mod deadline
im talking about pronouns while trying to figure out what 'it' would translate to as an honorific
Www yay! using the Stardew acessibility mod?
oh this reminded me of the weirdness when it came to making my language. It's just like.. <subject> , <object> but being me i have no idea what a grammar is... so a sentence like
"I like beans" would be <subject> <object> <Liking beans>. why are writing languages hard? this is so boring. i have to imagine the word for beans.
feel better soon 
button do you want to write my mod for me
beans are the object
grammar sucks
Yep!
Www a conlang? I love conlangs!
And "I" is the subject
yes the beans are the object but it is the liking of said beans that comes after it
apparently there's a way to number when using more than one adjective
object = thing that an action is being done to
subject = thing doing the action
if i feed myself i am both
that's fine, that's actually technically a valid way to speak in hebrew (though archaic)
And since your language apparently doesn't have verbs, I would say that it needs to modify "beans" depending on whether it's liked or disliked
beans (boooo)
this sounds like a very fun language, complete with things Welsh uses often XD
forsy's language has gift taste data built in (that's right, we circled all the way back to mods)
like how am I supposed to know it's 'size' 'color' 'other'
Now Forsy has to make new objects for every possible modifier beans could have
tbf I did get a 70 in hebrew-
specifically in english its Opinion, Size, Age, Shape, Color, Origin, Material, Purpose, then the noun
So that when you give an NPC the beans you're giving them the correctly named ones
atlas that's awful and I hate it
most cyrillic languages have so many gender... but its the 2 'main' genders plus it, and you mix and mash them together very pointlessly a lot
which is why making more pronouns is fun
also what's opinion
good/bad/useful etc
in Hebrew I can't figure out if the adjective goes before or after the noun most of the time
I have more info that will make you hate it so much more, basically they are paired and can be reverse at any point, so opinion and size can be swapped, age and shape, colour origin, etc
what if i make honorific Majesty because there are no 'it' titles :(

-# I wonder if I can build a map in c# without a map file
For yourself?
yes lol
-# iro commit crime
I have been toying with that idea using CP and a script but it seems like a lot of work but would enjoy doing
Why not? It's your game!
my last name is also a royal title anyways, so, could be funny play on it hehe
-# map crimes 🦹
I'm not making a framework haha, I'm making a debug location and don't want to load a large empty map
I like the gender neutral emojis they are so good
well i have two. one is <deny this thing> so you can write a sentence like "I don't like beans" (as in, "no, i do not like beans") as <subject> <object> <deny> <liking> so it would be
<I> <beans> <deny> <like>
and then theres a <the opposite of this thing> so the sentence "I dislike beans" would be <subject> <object> <opposite of> <like> to be
<I> <beans> <opposite of> <like>
but you can't just say "the opposite of dislike" because dislike doesn't exist. idk why i did that. only the "positives" of a thing exist, like, the presence of [feelings of fondness] towards beans.
🦹
Stardew Access hardcodes its water trough locations :(
So I trot through my monster hutch and all of a sudden "empty water trough"
programatic map creation sounds so much, might give it a go why not
how does stardew access actually work? does it like, scan the map and gives you information?
And I think the easiest way to fix this is just going to be moving the actual water troughs in my map
It mostly just tells me about the tile right in front of me
There is a radar option but I did not understand the pattern behind its pinging
🤔 so how do you know where you even are? like do you just hope you're walking in the right direction?
Some of the players in the Stardew Access server were saying they memorise the layouts of maps
I don't know if there's a whole lot of playing with other mods happening so far
I think there's also a tile viewer thing where you can enable it to move just the cursor around to have it read out what's there
Oh yeah it's telling me "empty 4 8"
And now "blocked 0 8"
Meanwhile a green with envy slime is trying to murder me
what does it mean by singular ?
If you hover over it, it tells you
Usually, yeah
And I'm a they/them so not singular because "they is" sounds too weird for me
It won't tell me where my hutch door is 😭
'They is treated as grammatically plural" sounds right to me /silly
broke my brain for a second there
can anyone tell me how the mini quarry on the 4 corners farm work? Similar to the quarry but with less chances? I do know ores spawn depends on mining level but that's it.
percentage chances/spawn per day helps too
Are you asking because you're planning to make or edit a mod?
no, my challenge broke me, and I need knowledge for a fast way out 
and I heard from someone code readers are here. Info that's are not in the wiki
oh wait, let see... I found something on the wiki
welp, at least it got the chances. Yeah that
not how it spawns or if existing rocks can block spawn. hmm, probably yes for the latter (assuming it works the same as the regular quarry)
yep, hilltop farm does mention spawn limits. Cool, hopefully that works the same more 4 corners. 
gah I cant never remember what to do to properly convert to local position
trying to draw the bounding box of an NPC so I can adjust it a bit better and the math hurts my very soul
plus remembering what is in world space and what is in local space
Just a quick tiny question, is it possible to copy all the custom property data on a tilesheet thats used by the game? I use the same tilesheet for my map, but the tile's custom properties doesn't come with it, do I just have to manually set them again?
You can export the tileset as a .tsx file and then import that and embed it into your new map! That will bring all the tile properties and animation with it.
Okay, I'll try that, thank you 
You're welcome! Here's some step by step instructions if you need any: https://stardewvalleywiki.com/Modding:Maps#Adding_tilesets
Ooooh now I understand what a tileset is XD I was kinda confused about it, but now everything makes sense XD now I can also use the Wiki better, thank you 
"They are confusingly named and often used interchangably", I see XD
Haha yes indeed
Man this C# helper mod is gonna be the end of me 😭
Wait, there is a whole unused secret Island map in the files? 😮😮😮 so unfortunate that such a big and basically finished map hasn't been used
I guess I should start with the simpler side of things, trying to use spacecore to override the health and stamina gained from certain foods
Is there a syntax error or something?
looks similar to the island west we have
"Action": "EditData",
"Target": "Data/Objects",
"TargetField": ["395"],
"Entries": {
"Buffs": [
{
"IconTexture": "TileSheets/BuffsIcons",
"IconSpriteIndex": 9,
"Duration": "{{7eventy7.CoffeeConfigHelper/MinutesToGameDuration:{{config:Coffee Duration}}}}",
"CustomAttributes": { "Speed": "{{Coffee Speed}}" }
}
],
"IsDrink": true
},
"When": { "Enable Coffee Changes": "True" }
},
{
"Action": "EditData",
"Target": "spacechase0.SpaceCore/ObjectExtensionData",
"Entries": {
"395": {
"EatenStaminaRestoredOverride": "{{Coffee Energy}}",
"EatenHealthRestoredOverride": "{{Coffee Health}}"
}
},
"When": { "Enable Coffee Changes": "True" }
},```
theres the full code for one item
This is what I found on the wiki that led me to making it
Vanilla Asset Expansions
Objects - These are in the asset spacechase0.SpaceCore/ObjectExtensionData, which is a dictionary with the key being an object's unqualified item ID, and the value being an object containing the following fields:
CategoryTextOverride - string, default null (no override)
CategoryColorOverride - same format as Json Assets colors, default null (no override)
CanBeTrashed - true/false, also prevents dropping, default true
CanBeShipped - true/false, default true
EatenHealthRestoredOverride - integer, override how much health is restored on eating this item, default null (use vanilla method of calculation)
EatenStaminaRestoredOverride - integer, override how much stamina is restored on eating this item, default null (use vanilla method of calculation)```
Is it just the spacecore part that's not working?
Coffee Speed is the only part thats currently working properly, I still need to sort out why the C# helper mod isnt working for the duration
I'm sure a C# person will come in to tell me that I'm wrong in a second, but I wonder if having the tokens in the override values makes the number value be a string instead of a integer
That is such a cool thing XD
I use tokens in int fields a bunch but I would personally remove the tokens to test, yes.
What does the patch summary say the spacecore patch is doing>?
i also just noticed that with this model, two mods cant write spacecore extension data to the same object without conflicts, which is unfortunate
Please use the json validator :)
Or rather, the log parser
With your whole log
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26200.0, with 20 C# mods and 11 content packs.
None of your data/objects patches are being applied because of invalid tokens but the same isn't happening with the spacecore ones. Try using int values instead of the tokens in the spacecore patch temporarily.
Well this is embarrasing, this modlist didnt even have spacecore in it
3/4 functions done then xd
Haha no it didn't
Might want to add the dependency to your manifest to avoid that happening again lol
Will do
(isn't it possible if everyone uses fields, not entires?)
but you cant use fields to add the first entry
yeah it looks for the entry with the key name and then goes wahh i cant find it help
Well maybe it did change
Its not like i repeatedly try things that didnt work before haha
neither of us are gonna test it now, right?
nope
I'm gonna coffee and touch grass 😛
uhhh how can one make a map larger in tiled?
right and down only
Do you not have the top options at all at the very top of the screen?
If anyone here is experienced with C# modding I could use a bit of help, this should be stupid simple but I'm doing something wrong and just cant figure it out. I can post what info I have about the issue here, but it would probably be easier to just send the ModEntry.cs file and the mod its supposed to provide the supporting function for
oh found it! i was in fullscreen so it didn't show
hello! sometime ago I got some advice to avoid doing many little patches to big assets like LooseSprites/Cursors but at the same time the NPCs there are scattered all over the place
any advice how should i tackle these edits?
hm, will there be any issues with expanding dwarf's cave to the right considering the other mine entrace on that map?
You might see one cave or the other?
hm
You might be able to see either of the areas from the other, I'm not sure if theres any special features that map specifically has however, hopefully someone else with more knowledge can give a bit more detail
Everyone beats me to it XD
i might be able to expand the area to push that other cave further away and then do some locations data editing to make it so that it would still teleport to the correct tiles?
that sounds pretty ambitious tho
and might have compatibility issues
compatibility issues is my biggest worry
Don't forget you can extend down too, extending down would probably be the least compat breaking method
if anything i would make a new map
oooh okay, uh how might I do that?
actually scrap my idea, 6480's idea is a much better idea
oh okay lol, no worries, and also gn!
hey, I've made a new map! I can help!
I've been working on my NiGHTS Custom NPC mod since it broke when version 1.5 dropped. Yeah. It's been... a hot minute. But I'm back in the groove again, and it's been going
I might've bit off more than I can chew with the idea of unlocking NiGHTS' dialogue through scroll items akin to the Dwarvish Translation guide...
that might be an update thing
How so? Are you just trying to add new dialogue based on acquiring an item?
no, like... you know how you can't speak to the Dwarf until you get all 4 scrolls and gain access to the Dwarvish Translation guide?
similar thing
oh, tysm!
Oh, so you would want the NPC to be nonsocial until that point
So CanSocialize in the Data/Characters would be false and you make that true with a patch once the scroll condition is met
right, I get that, the thing is actually implimenting the scrolls is kinda scary to me. Again, the last time my mod was working was during version 1.4
hm, there is a language thing in character data, where you can have a charcter speak either dwarvish or the default language
I'd hopefully make an entirely new language, since that's what NiGHTS speaks in their original game
and you can see why I'm starting to hesitate on that idea
hmmm i have an idea, lemme see if it's feasible
anyway, Claude, what do you need help with?
oh, I want to edit dwarf's cave to make it larger, I'm not sure how to go about it since the same map also has the quarry mine entrace connected to it
gotcha, and I see someone suggested making a new map
yup! no clue how though, or how i might implement it
Look at the wiki for how to make maps?
I can try and help- the wiki will be really useful, but then I can help with the coding aspect.
because that's where the wiki kinda lost me
Yeah, i'm just not sure on how to implement the map into the game, like would i re-do the whole mine entrance?
last I checked it didn't mention that you need a blank .json file. That sounds super dumb, but it's important. I learned this from the Stardew Modmaking Discord I used to be in
For coding, you want to use the Location Data wiki page for an entirely new map
uh huh
Well, blank.jsons AREN'T actually required, unless you are intend to use tokens, they are just a best practice
ah, yeah, I'm using tokens for my custom npc
hm, good to know
it's been a few months since I last worked on my mod
You can just load the actual entries directly to the new JSON instead of using a blank.json but if you are using {{ModId}} which is a token, it won't parse the token properly.
gotcha, thank you for correcting me
What is your intent with the mine change? Do you just need space for an NPC?
that's... a lot
Is it something that would make sense to have an alternate mine/cave entrance, or a door/opening in the existing mine map that leads to your custom map?
i want to make their cave larger, add more decor, add those item interact things so you can learn more about their hoard, and add a super primitive schedule
hm
i'm not sure
my first instinct is the second
As an example: for my Zelda mod, I am intending to have the Dwarf (reskinned as a Goron) block a doorway deeper into the mines to get to the Goron cave
And that doorway is unblocked when you get enough friendship
huh
Feel free to yoink that idea
nice! For my NiGHTS Custom NPC mod, it made more sense to have a warp space to their custom map because... well, their custom map is really cool
maybe I could add a basement instead of making the cave bigger?
with like an interactable trap door, similar to the NPC room things?
the wiki is a great resource
Yep, you could easily do a trapdoor or ladder with a lockedDoor warp
oh, yeah i adore the wiki
oooh okay! no clue what that is but it def sounds useful LOL
lockedDoor warp is what keeps you from accessing an NPCs room/area without enough friendship, or a shop when it's closed
hmm okay
A lockedDoor warp is the thing all the friendship locked doors use as a tile action!
okay
There's also a conditional door if you don't want it friendship or time based
still really new to maps so bear with me lol
Hey @dull schooner your other account is still a member in SMC. Have you lost access to that one completely now?
yeeep
it's gonna be deleted by discord staff eventually
yeah that account was hacked and it was rough
they said it'd be deleted within 15 days, so by the 13th of this month
Okay I'll chat to Elizabeth about removing it from SMC. Do you want an invite for your new account?
I'm sorry to hear that, it sucks to lose access to online amounts especially when you build up a lot of history with them.
yes please
Ok I'll dm you so I don't get bonked by the automod lol
and yeah, it sucked so much. My sibling got really angry about it- like, they don't emote much, but the sent a message in the discord server for my streams basically saying "I know the person who hacked [Alex] isn't reading this but I want them to know I hate them for what they put my sibling through" which is... more emotion than I expected
thanks!
fwiw you could try a query in place of all that, depending on the intended formula
(though you might need to remove the spacing from the other tokens)
{
"Name": "CoffeeTicks",
"Value": "{{Query: {{CoffeeDuration}} * 86}}"
}```
This could potentially work but when I tried to just calculate it out I ended up with some rounding errors
Some values showing up with 1 second less than the config specified
So the manual method might actually be better because I can specifically define the gameticks so it rounds correctly
thanks all, its finally done xd
I'm hoping to add just one weapon to the vanilla Stardew Valley. Of course, there's Smapi.
I really don't know anything about mod making. Can anyone help?
!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.
you can add weapons with just content packs, no need for C#
use Content Patcher, make a content pack that targets Data/Weapons
[[Modding:Weapons]]
JA is a relic of the past
oh.
Yes kinda, JsonAssets has been superseded by Content Patcher, but the way you write it is very very similar, so you should find it a lot easier than if you have had never used JsonAssets

