#making-mods-general
1 messages · Page 168 of 1
Yup, exactly, I'm looking for something exactly like those but pixelated and with shading that at least vaguely resembles Stardew, doesn't have to be perfect.
Well, not exactly like the middle one because that's the error item sprite.
What's the intended use case here? A UI thing? An emote?
Anyway, I guess any open license, just CC ones are the most common.
Well I found my mistake so my null ref is fixed :3
Yeah, it's UI. Just next to a warning line.
Ah, i see, what was causing it if you don't mind me asking, I'm curious now
(I assume it's something to do with the delivery objectives? Since i see an error in your log mentioning one)
there is a ! character in the base game so making a warning triangle from scratch shouldn’t be too hard if you can’t find anything ig?
Something like one of these two would be ideal. But obviously these are paid.
(I honestly don't care about paying a few bucks, I just really don't want to deal with the hassle of redistribution rights)
There should also be a cancel sign in the base game that you can modify, it's used on the animals icon I think?
Me forgetting to target the delivery of item to Caroline
how big do you need the icons to be?
Just 16x16 or smaller.
Its always me forgetting or me commas
I see i see, that would make sense, glad it's fixed now though
Time to review Cursors again
The cancel icon is like 🚫 which is one of the few wrong choices here.
That doesn't communicate "something's wrong", it communicates something more like "can't do that" or "disabled" or, well, "cancel" or in the game's case even "exit".
Believe me, I have searched Cursors through and through, including Cursors1_6 and Cursors2.
You need art for a ⚠️ ?
Yes, as silly as that sounds. Doesn't seem important enough to start a whole commission request over, I just figured somebody might have one tucked away.
I can try to whip something up! Just a 16x16 ⚠️?
If it's pixelated and semi-consistent with the game's shading then yes, that.

Discord really said "no sharpness" 💀
banished
Haha, small is good in this case.
Discord needs a nearest neighbor setting 😂
i can drop mine here too, i'm using them for other things
Trying to tell if it's circular or octagonal though.
i'm learning to use aseprite 🙂
It cute
Let me see real quick if that fits (thanks!)
there's also this from the build menu that could be modified
i did not realize how crispy that is
(This is taking me a long time because I didn't realize the aseprite trial version doesn't let me save. I'm still trying out that first image)
Hmm, my eye isn't very well-trained for this but it seems like something's just a little bit off around that top-center/top-right section? It's pretty good, though I'll try Avi's as well.

I think I like this one better. Thanks to both though!
yeah the highlights are blending into the background
hmmm
i prefer to red one tbh
They're both a lot better than a vector style icon, or repurposing an unrelated game icon, or anything I'd have tried to do myself.
they're very cool i agree
Does this work?
Splicing of these two.
Interesting... can give that a try too. Might be slightly oversized for the use case (17x17 and all edges are used).
Side note, Discord really mangles the hell out of these images, doesn't it?
has anyone tried making the greenhouse a decorable location yet
That's actually perfect for a base!
I haven't seen mods that specifically make the greenhouse decorable, but there is a mod "Anything Anywhere" that does something similar I think! Let me pull it up
It's VERY useful!
I have a silly idea. I'm sure it involves replacing the audio file(s), but has anyone made a mod that replaces the "speaking" sound effect with the Animal Crossing voices?
(sorry, but when I said "decorable location", I was referring to the game class, which allows...placement of wallpaper.)
I realize that is not what most people think of as "decorable".
I'm thinking, how would one even do that... like make the Greenhouse location inherit from DecoratableLocation
Wallpaper... in a greenhouse...
oooo
I mean, I know the game makes it look like the "greenhouse" has solid "walls", but that's going to compromise the green-ness of the greenhouse.
i mean the wall it does have is uh
Maybe flooring might be more of use
a bunch of windows
It does have window-ish things in vanilla. (As it should)
pls ignore the cursed sprinkler layout (this is from the wiki)
i mean i find it cursed i guess it's optimal. but yeah i wouldn't say this is a wall
Low-tier sprinklers in greenhouse are an abomination.
That makes sense! At least I tried 😂
are there decorable locations other than the farmhouse in the base game?
I can feel the farmer bumping into them 😭
this design is painful to observe...
please don't ping me in replies
shed and islandfarmhouse!
TIL C# supports this kind of switch
Action<Vector2, bool>? shakeFunc = feature switch
{
Bush bush => bush.shake,
Tree tree => tree.shake,
FruitTree fruitTree => fruitTree.shake,
_ => null
};
what does that do
I wish we could mod in Scala. I liked scala
the shake function is different based on what the feature variable is
that kind of switch has been very useful for me I like it
yea it make sense that u can do it given the general pattern matching stuff
i just havent ran into a chance to try until now
see this wouldnt have been needed if all 3 shakable things r just implementing (the nonexistant) terrainfeature shake or smth
Pattern matching is great. You can also use {} for "non-null thing" with type inference, or specify properties with pattern matching like x is Foo { Bar = 42 } or Baz { Quux = "abc" }.
Though the rules can be a little ambiguous and fail in mysterious instances.
You know it's bad when your save file names go from "Test" to this
Hey, made a custom farm and everything seems fine but I can't seem to move the farmhouse when in-game, building and moving every other type of building is fine but the farmhouse just refuses to be placed anywhere, I also can't build paths under it and in one tile in front of it oddly.
Any suggestions? been tearing my hair out with this and am absolutely sure I missed something super obvious.
#making-mods-general highly suggest to post it here! very helpful for this kind of scenario!
(this is here)
im a blind noob
LMAO
Lol
why did I THINK I WAS IN SEASONAL FARMERS
I appreciate the gesture 😂
o my !!!!!
Not sure though, I set farmhouse using tiled, and haven't had that issue
Same here
there was a time I used an author's custom farm to help him update t 1.6 and under the farmhouse he had some weird building tiles
I just removed those and solved the issue, but idk if it's your case
Yeah, nothing but back tiles on the spots I'm having issue with
tiles under the farmhouse also need the Buildable property on the Back layer, unless you have the LooserBuildRestrictions T map property instead
normally that's attached to the tilesheet, I think, but if you customized the space underneath the farmhouse, it might not be there
That might be a good shout, I'll test it.
My farm map is quite abnormal as well, so I've been having a million and one strange issues
buildable/diggable and the Type properties are mostly what make random stuff weird, aside from invisible layer debris
didn't work
tiles are all green, I'd have assumed that the farmhouse would be able to be placed but it just won't let me.
says I can't build here, but I can build every other building on the spots it tells me are invalid.
Also my tiles were already marked buildable, I was so hopeful that it would've just been that T_T
looser building restrictions also didn't work sadly.
What's confusing me the most is why this is exclusive to the farmhouse.
Would there be a way for me to make it so I can use Generic Mod Config Menu to have a way to switch between the options I have for Daia? Because I want to be able to switch between two in config and I'm unsure as to how to go about trying to be able to do so. I was messing around with replacing the Seasonal RSV files for Daia to the ones I have and that has worked as I wanted it too but if I could learn how to make it so I don't directly move and replace the files every time I want to change Daia, I would be happy.
I have never seen this bug before. Are there any mods that need updating or maybe the base game needs an update?
I've got a seperate stardew install with only my mod and it's requirements for testing that I make sure is up to date
You've also tried on new save files?
I am headed out the door immediately so I can't stay to check but one possibility is that the game does not think there is a route from your farmhouse to a valid warp
Yeah I have
Ah.
I'm out of ideas then 😭
is pathing access to a warp a requirement for moving the farmhouse?
If so, is it any warp at all or the bus stop or something?
can someone please help me i trying to create a make and it keeps saying "[Content Patcher] Ignored Emalona > custom location 'Emalona': the Name field must be prefixed with the mod ID (like 'Uniqqxli.Emalona') or 'Custom' to avoid conflicting with current or future vanilla locations."
Help Please

you're using the old CustomLocations method, and that error tells you what you need to do. but you should be usingf the new way by editing Data/Locations instead, using CustomLocations is deprecated
im not sure how to. i using a turorial from the guy that created downtown zuzu. its my first time creating a mod
that tutorial is likely outdated
Thank you SO much for this breadcrumb.
I was so incredibly worried that the whole concept of my farm would function at all but this was the issue!
For anybody searching for the same issue, the issue was that I had a custom exit to my map and no technical warp to the BusStop, and this prevented the Farmhouse from being moved within the map, but the addition of an NPC Warp to the BusStop fixed the issue.
any tutorial made before march of last year is almost definitely out of date
you know any updated tutorials?
the wiki page fireredlily linked tells you about the Data/Locations asset which you will edit with Content Patcher
otherwise you need to look at the Content Patcher documentation
im not aware of any location specific tutorials for 1.6
Maybe I should make some YouTube tutorials on some simpler aspects of CP mods
(doesnt mean there arent any. i just dont know any myself)
please do
its okay
Just be aware that you will constantly be pestered to maintain them when anything changes
ill figure it out some how, cause the wiki is a bit confusing for me
(and also as soon as something DOES change and your tutorial is out of date, suggestions to use it will be immediately replaced with "dont use video tutorials, they go out of date easily")
its also not qol to copy paste code out of a video
you r welcome to write a guide tho, we have a modding wiki on wiki.gg for this type of thing
Hopefully the people watching the videos are following along enough to not decide to copy/paste 🥲
I mean if you're following a tutorial, i think it's kinda expected to copy/paste some code once you understand it since you typing out, say, a bunch of boilerplate, just takes a lot of time for not much benefit
When I write my c# mods I totally just borrow the mod entry template from the wiki every time (or a mod I've already written lol)
dont condemn ppl into hell of missing a comma 
there is definitely some level of demand for video tutorials, but my arguments against is not "tutorials shouldnt exist" but "text tutorials are easier to read, and less work to update as things change"
I just manually add the inheritance and let vs add the method stub. Everything else I do manually
Though I do use khloe's package so I never have to write a manifest again
(The upcoming Debug Mode 1.14.0 now shows dialogue keys, to help with dialogue testing.)
👀👀👀 I'm about to write a buncha dialogue and events, super excited for that
(does it just show null if there is no dialogue key)
(It omits the 'dialogue key' line if there isn't one.)
(Am I misremembering, or was that temporarily a thing in Debug Mode when you were making the dialogue changes during the alpha?)
(Yep, it's an old test change that I'm polishing and releasing.)
(Thank you again for those dialogue changes, by the way!)
"Appearance": [
{
"ID": "RydenDefaultOutfit",
"Portrait": "Portraits/{{ModId}}_Ryden",
"Sprite": "OverworldSprites/{{ModId}}_Ryden",
"Condition": "LOCATION_NAME Target Custom_Malha_Castle Target Custom_Malha_Malha"
},
{
"ID": "RydenSurfaceOutfit",
"Portrait": "Portraits/{{ModId}}_Ryden_surface",
"Sprite": "OverworldSprites/{{ModId}}_Ryden_surface",
"Precedence":"-1"
},
{
"ID": "RydenSwimmingOutfit",
"Portrait": "Portraits/{{ModId}}_Ryden",
"Sprite": "OverworldSprites/{{ModId}}_Ryden_swim",
"Condition": "IS_EVENT festival_summer28 festival_summer11 festival_spring13",
"Precedence":"-10"
}```
Does this look correct to load the first outfit only in those two custom locations?
no, remove the second Target
well. technically it shouldve still worked
Can someone help me? When I join in a MP game my game crash, and I don't know why
it wouldve just been checking if the location name was "Target"
!mh
For help with modding issues, please ask in #1272025932932055121! When asking for assistance there, sharing an error log will help others identify your issue (see https://smapi.io/log for instructions).
Hm it's still not working
your precedence is making it look at the other two first
Does it load the first outfit checked or last outfit checked?
Thank you so much
this is actually such a handy tool for me and us as a collective
it stops after finding the first valid appearance
That would explain my confusion then
Easiest way to do it is to put your Default/no conditions appearance at the bottom
as long as the other ones above it actually have a lower precedence than 0 to be checked first
the actual order in the list of appearances doesnt matter
it just finds all the ones with the lowest precedence number and puts them in a list of options to randomly choose from
the BigCraftable has a key for "IsLamp" - but does that actually make it light up?
I'm trying to make an existing bigcraftable item give off light using content patcher. How do I target the item and how do I make it light up?
(so i should clarify, when i say "stops at the first valid found" it was bc your list had all different precedences)
Do the same precedence rules apply to NPC homes?
(so there is only one valid one bc only one has the lowest precedence)
if you have multiple tilesheets, how do you make the furniture only target a specific one? 
I see I see
I did the entirety of my mod in 1.5 and waited way too late to learn all this 1.6 stuff lol
(to clarify more bc i backread myself and realized i accidentally misspoke here (i had it right in my brain but not in my typing
), if it finds a low precedence number (with a valid condition), it will stop looking at higher precedence numbers (and remove any it found previously), bc appearances with a higher precedence are not valid options anymore. in your appearance list your precedences in order went 0, -1, -10, so once it found the -1 appearance, it ignored the default appearance, and -10 didnt have a valid condition, so the first valid one it found was the middle one, hence why it stopped there)
ah ok! I understand now. Thank you so much for the help
Hey guys, just checking before I spend too much time on something, I can add more than one NPC to a basic mod, right? I got one npc loaded and fully working. Then tried to add a second npc with basic schedule but he won’t load in. Either im missing something or id need to do something more complicated to have two idk 🤷🏻♀️
let me check mine, I made a lamp items in my unreleased mod, one sec
any amount of content patcher mods can be combined into one content patcher mod if you so choose
so there is a separate issue causing your second npc to not load
Ah ok gotcha. I’ll check through everything again I just can’t see where I’ve gone wrong and smapi doesn’t flag any errors 😮💨
@gritty furnace here is my lamp item:
{
"LogName": "Add new big craftables for Darkest Depths.",
"Action": "EditData",
"Target": "Data/BigCraftables",
"Entries": {
"{{ModId}}_Glowsap_Lamp": {
"Name": "Glowsap Stones",
"DisplayName": "{{i18n:BigCraftables.Glowshroom.Torch.Name}}",
"Description": "{{i18n:BigCraftables.Glowshroom.Torch.Description}}",
"Price": 0,
"Fragility": 0,
"CanBePlacedIndoors": true,
"CanBePlacedOutdoors": true,
"IsLamp": true,
"Texture": "Mods/DarkestDepths/GlowshroomTree",
"SpriteIndex": 43
}
}
},
- is there something that can target the radius of how bright it is?
- What's the right way to write the ID for a vanilla item I am editing?
not that I saw, my trees I made glow by making them add a light source on placement, and deleting it when they are removed, but that requires a c# mod, but for the lamp I didn't see much configuration
I didn't see any obvious way to alter color or radius
the ID you would just put in the ID of the item where I have {{ModId}}_Glowsap_Lamp, but I don't have an example of that
and obviously you could conflict with any mod that also alters the same items
if you use Fields instead of Entries you can edit just specific fields and maintain compatibility
(unless of course someone else edits the same field, obviously)
Double check that your NPC has all the necessary components and that your schedule doesn't have any locations that aren't loading or are otherwise impassable by the NPC
yeah, a better way to handle it, I have an exmaple of that editing shops, but not bigcraftables
I’m hurrying on writing an npcs dialogue so I can refine it
the ID concept is the same, though
The Npc im writing for almost has a finished ref sheet so I gotta hurry so I can do her sprites 
Thank you I’ll triple check this. I must’ve just missed something or made a typo somewhere because his schedule barely has anything in it yet
You can also use EditData with a "TargetField" entry, right?
or will that only add new entries to an existing list on an item?
you can use TargetField with EditData yes
I might share the ref sheet progress since I was told I could with credits
(TargetField essentially just makes whatever field you stop at the top-level field, so from there you can do the same Fields or Entries stuff)
yeah, I mostly use it when adding entries to shops and machines
Would yall wanna see the ref sheet im gonna be basing my sprites on
itd probably be better in #making-mods-art i think
I was gonna send it there
I’m just wondering it it’s worth sending LOL
this has the IsLamp: true again, but I don't see the key for the radius
or light source effects
if you dont see it its bc it doesnt exist to edit
again, there isn't one, as i said above
So I got a quick question, logistically speaking how hard would it be to make a puzzle on a map I have made using only CP or CP & SC, and if it is definitely doable what ways might I go about this? I am not picky
you can't control radius or color based on anything I can see in the documentation
if you want to control things to that level you'll probably need to make a C# level so you can control the light sources manually
"puzzle" can mean like a million different things
Somebody was working on a light source mod but I blank on what it was.
I suppose I will give up on trying to have it be a light source then
it simplifies the scope and I can use Alternative Textures
Ok I plopped the ref into the channel. Yippeeee
Yea its hard I just want to add some more depth into the mod, completing a puzzle for example like the gemstone one on ginger island, would unlock a certain area or item etc. It could be like the gemstone one if that is possible or it could be like interacting with 3 different objects on the map in a specific order, idk, the only thing I could think of is by doing like a quest or something, but that seems lack luster
thanks for the knowledge
Does anybody know from the ref sheets if my ocs sprites would be hella complicated?
Or just moderately
i mean the people in the art channel would be the better place to ask that too, theyre the artists
Ah. That’s fine if I can convey the basic design
people have been able to fit a lot into the small sizes, tho
also yeah the art channel is better for this, probably
They don’t really specialize in sprites that’s the issue
?
the people in the making mods art channel?
I mean the normal art channels
yeah, im not talking about those
I didn’t know we could ask stuff in the mod art channel
im talking about #making-mods-art is generally the place for discussion of art assets for mod making
not that you strictly cant ask that question here, its just that you'd get a lot better answers from the people more knowledgeable about it 
😔 back to me beating my dialogue into shape
Usually the enterabce or down to at max floor 5.
can you schedule an NPC into the lower mine levels? I can't recall
I think with enough c# surely
the mine floors dont exist until theyre created, so probably not
the mines are a unique and tricky beast in many ways
Okay so she’ll sit at the enterabce then lol
(i mean that sounds obvious now that i reread what i wrote but i meant, they dont exist until someone goes in them)
can you spawn an npc at one of the fishing floors?
yeah, entrance is just a normal map, it works fine
She likes rock crabs
the fishing floors arent special either, they dont exist until walked into
I know I tried to do events at the lower mine levels and struggled to get it to work
She mentions sitting in the mine enterance to try and lure rock crabs out so she can pet them
She loves them :D
but in vanilla, can't you encounter abby on one of the floors?
you could look at mateo, that one has an event where they fight some slimes when you walk down the ladder, might mean you gotta make a fake mines map level for the event probs
I know you encounter her at the entrance, and level 100 in the skull caverns has an event, but i think it's baked into the mine class
Sylvestra whenever a rock crab: 
Abigail can be found at Lvl 20 in the Mines after her 10 heart event
but it is very hardcoded into the class mytigio is correct
yeah, I ended up making some custom maps and using the entrance for all of my stuff because i didn't want to harmony patch the mine location class
This is hardcoded
(also doesnt happen in multiplayer)
She is a clone
hardcoded...
atra
I love Sylvestra so much 😭
It is more accurate to say a clone of Abby appears in the mines 😛
She’s just rock crab bestie

I was a little late!!!!
i guess i can't CP my way out of everything 😔
you can CP a suprising amount though, honestly
Found my first true Heisenbug in Stardew modding today. 100% repro normally, 0% repro with debugger attached.
I wanna make a mini cutscene where you find Sylvestra in the mines enterance hugging tons of rock crabs
you could probably go start on the event scrpting for your crabs with a stand in NPC until your sprites are ready, the event system takes awhile to get the hang of
Will probably do that. Ty
Typically she sits in the adventurers guild if she’s not in the nine enterabce
and dropping a different NPC into the event once it's ready would be a simple replacement process
Something I have to think about to determine if it's possible same-day: if I want to put a doorway behind the Dwarf that they will move out of the way of after an event, would that have to be a schedule change that happens on the next day to unlock the door? Or should I make the event trigger automatically on entrance on a day when the Dwarf is already unblocking the door once the event fades out?
(New feature in the upcoming Lookup Anything 1.47.0: NPC schedules, thanks to @upper jackal!)
She really really likes rock crabs
Bless
They’re her favourite critter because she thinks they’re “neat”
That is nice.
out of curiosity, does it actually say where they are or where they should be (if a schedule gets interupted by blocking the NPC or something)
assumes where they should be, for the sake of not doing constant NPC location checks, but who knows! :P
It says where they start walking to at the listed time (which is why it's phrased as "walk to <location>"), since there's no realistic way to programmatically predict where they're actually be at a given time.
makes sense
What about if the schedule entry uses the arrival time instead?
Schedules don't have an arrival time, so far as I know? Each entry is just "at <time>, start walking to <location> and tile position <tile>".
(Which is why they can do weird things like walk into the void forever if anything goes wrong.)
Spouse rooms are fun to look at to be honest
Referencing this: The time may be preceded with the single character 'a' to indicate that the event should end (that is, the NPC should arrive at the destination) at the given time.
As per the wiki, it is a potential use case, though I don't know anyone who has used it off the top of my head for a custom NPC
emily uses it for her scheduling on sandy's birthday

does anyone have any idea why an NPC might be getting stuck right before the warp tile (which is on y = -1)? Are warps off the map still valid in 1.6?
AAAAAA bless these new features 
oh i think i used arrival times a bunch
that one is especially complicated because it can't be evaluated before the previous segment of the schedule has started, so it can cause the first segment to fire, then immediately the arrival time segment
Sorry Pathos! 
What’s the basic stuff most spouserooms have?
It normally looks like a bedroom
Something relating to the NPC's hobby or personality, for the vanilla NPCs, it tends to be their bedroom without a bed
Elliott has a library, for example
the game uses a simple formula to back-calculate when the npc should move
"basic stuff"
a spouseroom can be anything if you really want?
arrival times are just real simple
krobus brings the sewers to you if you roommate him
you can look at the spouseRooms.tmx file in the Maps folder to see all the vanilla spouse rooms
if you want to look at all of them easily
Oke
they are all in one big file, so you can see them all at once
krobus' is the funniest to me, it's like to took a bunch of sewer tiles and puts them in your house 😛
they're even broken
speaking of spouse rooms, i. still dunno how they work
I had to add a custom wallpaper and floor to add the sewer tiles for one of my multiplayer partners' houses because they wanted to match Krobus. xD
they're a map edit, you specify the spouse room map as part of the NPC record if I remember right
I wonder how hard it would be to make the spouse rooms wall-paper-able
and floor-paper-able
(I know, be the change.)
(the change needs a shower though.)
Sylvestra with the peak design (rock crab plushies, and a living one in an enclosure.)
tbh I actually think the ansewr is "pretty easy actually but it won't be automated so npc mod authors have to opt in"
Her spouse room has a non animated living rock crab in a fish tank
I think someone has done a decoratable spouse room mod before (for vanilla NPCs), unsure of it is still working in the current version
i know of spouse room renolocaion but that doesnt let you wall and floor paper them
I meant decoratable as floor and wallpaper in this case
atra your IDE font makes me cry
that's just my ilspy font
But I could also be mistaken as to how that mod worked
Sylvestra stop keeping rock crabs in ur room /j
will staring at my dialogue make it scared so it will write itself
non monospaced fonts just feel wrong
depends... are you also typing while staring
...
this is my ide font

as long as it's mono it's fine by me. You could be using monospaced comic sans for all I care. Wingdings Mono
I recall one. It emptied out the spouse rooms and mailed you their furniture
did not come with wallpaper
it was an Aster mod
I just looked up two of them, they both mention wall and floorpaper being able to be changed
Neither was an Aster mod, that's not what I was thinking of
huh, okay, cool!
huh, so, like, I thought it was C# land lol
Thankfully not anymore!
But anyway, I got derailed. Thoughts on this?
does anyone know where this tile is located...... This is from my custom sprite sheet where I animated it and I cannot find the unlit version for the life of me X|
nvm I give up I'll just make an unlit version myself X_X
atra, are you making some mods again then?
is that in one of the mines tilesheets?
So in theory that should already be handled. Lookup Anything is showing the parsed schedule info (i.e. npc.Schedule), which should already have the raw a<time> converted into the normalized departure time.
I swear if it is I'll go crazy LOL, I don't remember ever opening them so I don't believe so, but I already made an unlit version, I hope it doesn't bug people not looking like the games original one... XD
I'm pretty sure the unlit one is just in the normal outdoors tilesheet isn't it?
oh, that's on the side of a mine entrance thing, nm
it's similar, but it has a rock wall behind it
Yea I just referenced that when making my own
The grey pixels are 50% transparent so I think itll work as intended
Double-check furniture?
that may be it actually I didn't think to check
someone already checked Cursors right? 😛
There's a lantern furniture item that can sit on a table, and that looks like it
You get it in one of the starter farmhouses
hm question, for these bushes, there's a little one and a big one, do these when spawned in-game, extend to the right?
the mining one, yeah
Yes, if on the paths layer, the icon signifies the left-most tile of the bush
got it
yup, it's on furniture
(I found that out the hard way with my initial Pelican Valley Loft entrance)
below the big 3 part skeleton a little to the right of it
Are there any sneaky requirements for an NPC to be giftable other than the NPC is sociable and has an entry in NPCGiftTastes?
I can talk to my NPC and giftable is true but I can’t gift him anything 💔
I copy and pasted a vanilla NPC’s gift taste just to make sure nothing was wrong
Double check your log for errors
Odds are good that your JSON isn't being parsed properly, since CanReceiveGifts is true by default.
I’m looking at my log, and it says that NPCGiftTastes was edited. So it’s definitely being added
I can also verify my json rq
yup no errors found. That sucks lol
I can send the link to the json I just validated if that would be of help
yes
you may verify you are targetting the right stuff too
typos are a leader in issues like that
what is the token that is related to the socialize part?
It's true at the point I'm testing at
I set it to true always for testing
oh my god nevermind I found the typo
dead
"{{ModId}}_Ryden": "*gasp*... This is absolutely marvelous!$u#$e#You've made an old lady very happy./72 220 239 284 591 595 Raisins/Oh my, it looks wonderful! That's very kind of you./-6 18 402 418 170 forage_item_beach/Um, Where will I put this?/16 80/...it smells awful./225 226 227 228 219 396 248 296 -4 330/How nice. Thank you, dear.//"
i wonder if there's an extra slash here
I put a typo in the conditional name
also I copied Evelyn's gift taste pfft
It’s always typos
In between the slashes would be their neutral gift tastes
copying vanilla stuff isn't a bad approach anyway
But Evelyn doesn’t have any specific
yeah
So it’s just a blank spot
that i figured, i didn't remember the last things being ended by a slash
aka /neutral/ rather than /neutral
I wanted to make sure I hadn’t made a typo in the actual gift taste so I temporarily pasted hers
yeah that is a good approach
cracks knuckles now it's time to figure out what the hell im doing with this map patch
any way i could express the purpose of this ability better
# Nop
Does absolutely nothing.
Exists to act as a container for various generic proc effects, without doing anything as an independent ability.
This exact thing would have been so useful to me a week ago, and I barely touch dialogue. This is going to be an absolute lifesaver for NPC modders! 
the word 'container' w ould be confusing in context to me here, i would probably just say "Does absolutely nothing except triggers proc effects."
What's the context of where this is used?
i assume its for chu's Trinket Tinker mod
yea ability is a trinket tinker concept for "things that happen in response to other things"
how about Does absolutely nothing by itself, will activate any generic ability proc effects.
the proc effects in this case is like, play a sound, show a temp anim sprite etc
So this would be the AbilityClass value?
yea
I think "Does absolutely nothing. Can be used with various generic prop effects." is a good summary too?
I would suggest renaming it (since nop is a bit technical); maybe something like this?
# Default
Applies the generic ability fields you specify (like `ProcSound`), but has no special behavior beyond those.
This is true but i used nop in 2 other places already 
Listing what count as proc effect makes sense here though I'll do that
Is there a onBuffEnd type of event?
mmm I can just check if player.hasBuff in tickUpdate. any better solution? 
harmony patch Buff.OnRemoved()?
okay, so something occurred to me: can you do a machine with multiple skins? In CP, without AT?
a simple postfix should do it see BuffManager
nope
ahahahaha I have played myself, then
you technically can have "have different skin depending on what it's processing"
i think u sorta can actually
thx
since BETAS has a thing to change sprite index right
👀 does it?
and i believe big craftables behave like objects in that the data's sprite index has nothing to do with the actual spawned item
this is all very "in theory" though 
It would be rather tricky since machine code liberally call ResetParentSheetIndex
unless BETAS all have triggers for every possible cases where the machine resets its index
unlikely 
mmm so if I wanted to have two machines have different appearances, I'd basically have to make two machines with identical rules, yeah?
yeah that's the most reliable approach
BETAS has an action that can update the field of all items in the world with a matching item ID, but you cant set it to arbitrary values, it will make it match what a newly spawned item would
you can choose what field, so you could have a CP patch change what the field should be, and then update every machine in the world to match, but that doesnt sound like it'd be helpful here anyway, even if it didnt get resetparentsheetindex called all the time
that said if it did you could just BETAS harmony patch ResetParentSheetIndex to always run the action that reloads its item fields anyway
though, that would be pointless since that also does the same thing the action does anyway
personally i think AT is the correct answer here, are u doing it for multiplayer reasons?
was the hornet's nest kicked
fixed in the upcoming BETAS 2.9.2 btw 
(it wasnt actually anything wrong with your code still, i just saw this message again when trying to debug it, QuestAdded has been broken for daily billboard quests and ive never run into it myself and no one else has ever reported it to let me know it happened, let alone that it happened for daily quests specifically)
(until recently)
ah fair enough
idk if it broke with the 1.6.9 quest changes or if i just made a change at one point and forgot to re-test on daily quests but i was pretty sure i tested it on the billboard and it was fine when i originally coded it
but i did not know that daily billboard Quests apparently get null for their Quest.id...
i still find it funny that i'm completely unrelated to the warning message so we had a fun lil game of telephone about it
that reminds me
I wonder if it would be possible if you marry my npc her pet rock crab can wander around the house
Rather than be confined to an enclosure
Or maybe I’ll make it so it’s a reskin you can get for ur pet
Ok so I got my lampposts to work with the day/nighttiles property, but I cannot get the lanterns from my custom sprite sheet to work? I added them the same with the proper layer and tile index for on and off but nothing
Any ideas as to why
I am assuming it has something to do with it being a custom made tilesheet, but that's all I can come up with
did u put the animated tile
Yea, is that not compatible
it looks like u put the second one but this shit is hard to see
you'd have to editimage on the originals, no?
The animated tile is 56 and the off is 59
Front 32 33 369 Front 44 24 369 Front 79 10 369 Front 87 16 369 Front 100 18 369 Front 87 37 369 Buildings 2 1 59 Buildings 8 1 59 Buildings 14 3 59 Buildings 21 1 59 Buildings 27 2 59 Buildings 33 3 59 Buildings 38 2 59 Buildings 45 2 59 Buildings 51 2 59 Buildings 59 1 59 Buildings 67 2 59 Buildings 73 3 59 Buildings 79 2 59 Buildings 86 1 59 Buildings 93 1 59 Buildings 100 2 59 Buildings 22 15 59 Buildings 38 7 59 Buildings 27 39 59 Buildings 52 28 59 Buildings 99 16 59 Buildings 90 24 59 Buildings 100 33 59
that definitely looks like what chu says and that you put the non animated tile down
the only difference is the tilesheet index for nighttime tiles
afaik you can't have custom tilesheets for daytile/nighttiles, so you'd have to force an editimage on uhhhhh spring_OutdoorTiles
In tiled it shows theyre animated?
that was next on the dock of my tirade but i had higher priorities 
Ok so editimage and add both animated tiles and the off tile for the lantern?
did you make the animation cause you wanted it to light up? or do you want to have some kind of flickering effect
its for flickering, the light is just added via the light property
oh, then tbh you don't need daytile/nighttile
I'd like to run code when the player presses the action button while holding a specific item but also for the code not to run if another action takes place instead - e.g. opening a chest, shaking a bush, talking to a villager, etc. I have added a postfix to pressActionButton but even if I use different logic with the __result, it causes my code to run every time (with the held item).
Is there some other way to handle this so that my action is in effect the lowest priority? All I can think of is a transpiler which, fine, but it'd be nice to know if there's something I'm not thinking of.
So it should work as intended or are you saying that I should just leave them on?
does MMAP force lights no matter the time, chue?
yeah so daytile/nighttile gives the "godray" effect of windows, changing lamps
if you have a flickering lantern thing that isn't affected by the game's current time, then it'd be unnecessary as a daytile/nighttile
if you want it to only flicker during night, you can probably just uhhhhhhhhhh 
Do you mean flickering as in the light source size is expanding and contracting or just refering to the animation the lantern has from the tilesheet
what are you checking with the __result?
i mean the animation from the lantern flickering
sorry I am slow at understanding things X|
you can probably editmap with a when patch at a specific time, but usage may vary
i try not to do those kinds of patches
it just returns a bool but it doesn't actually seem to indicate if an action took place, so all I can check with the __result is whether it was true or false
well u can just do location change update
im sure most ppl r fine with lamps being a lil weird until they exit map
right but i meant what was your logic, were you checking for true or were you checking for false and what were you doing as a result of it
So if I remove the animation it should work fine?
what if u patch Object.performUseAction instead (for cam's problem)
Never heard of that
if you want the godray/lantern effect, you'd have to editimage a different lantern from probably a different tilesheet(?), do the daytile/nighttile of the one you're replacing
I tried both... this was yesterday, but one always ran my code and the other ran my code but also froze the farmer (which might've been a mod interaction, but I dunno)
I hadn't come across that... that's probably the better choice
well, it seems like it returns true if no action occured, but were you remembering to actually change the result to false after your code (and only running if the result was true originally)
I can, but I really don't want to mess up someone elses mod by doing so, I guess the best plan of action would be to do a map patch for the lanterns, but I would need to make it conditional for the time lights change and specifically for each season as that time is different. If i did that would the map patch apply if the user was still in the location or would they also have to leave and come back after said time
uuuuuuhhhhhhhh theeeere's something else in there that you can condition out for it to only editmap while in your map
but unfortunately my brain has the hamster song playing right now
Lol understandable
it'd probably have the same effect as this tutorial though: https://stardewmodding.wiki.gg/wiki/Kailey's_Interior_Door_Guide#townInterior_Door_Sprite
I think so... but I'm gonna mess with it some more now, probably try chue's idea as well
alright, yep, Object.performUseAction was the right solution here - thanks, both!
I have done it again! Creating something out of nothing......
These tiles all appear to having something blocking you from walking on them but as if it were an npc so running into it long enough will allow you to pass. The tiles are on the buildings layer but have the passable property set to true and no tiledata or anything else is interacting with those tiles
this applies to every wave tile placed except a select few that work absolutely fine
I also tried to just remedy the situation by adding passable TileData sections on the back object layer to see if that would work as a temp fix but that did nothing either
Also some of the tiles are not passable at all even if you continuously walk into them
i was thinking of providing a trinket tinker C# api like this, for custom abilities
public delegate bool AbilityEffectDelegate(Trinket trinket, Farmer owner, Vector2 position, object? rawArgs);
void RegisterAbilityEffect(string abilityEffect, AbilityEffectDelegate abilityEffectDelegate);
is there any point do defining a delegate type vs just using Action<...> generic
i copy this from some of the game's delegate
So just to clarify: Passable will only make it impassable if used on the Back layer
Yes
On the buildings layer, it makes things passable instead
Yea I have it set the exact way as the beach.tmx
oh, I'm not in my best condition rn, but, basically, you're using the building beach waves but you can walk through the, right?
I believe the beach tileset natively has a tile property on the tile itself (baked into the tilesheet)
Yea thats it
Are you using the vanilla beach map and creating a copy to make edits to, or are you starting from something that didn't have the beach tilesheet in it already?
you see the tile I marked in blue in the tilesheet?
that's my trusted ''nothing'' tile. mark it and draw on top of the water on front of the waves with the building layer
It will make it work, and you can still place crabpots
problem solved
Gross, invisible tiles.
/joking
XD Ok I am kinda following and yes it is a map from scratch, but I have made no errors with the properties for the tilesheet or map
I tired that but it didnt work either
use that invinsible tile in front of each animated wave, NOT on top of the wave tile
invisible tile is what game typically does though
Yeah, I used TileData objects one out into the water on the Back layer to block travel
I have used them, but the issue is still gonna be present as I cant have the waves on back or back 2
I'm just confused as to why its happening at all, Ive made 2 other beach maps with the same layering and tiledata usage and no issues
I personally don't mind being able to walk into the wave so long as I can't walk deeper
the only issue you could encounter using invinsible tiles is if the water tile height is less than 2y. For instance, on these bottom tiles, it works, but makes placing crab pots more tedious. The solution is just increasing the water area to -2 y axis and that should fix it, otherwise u can leave it with -1y height and still works, but placing crab pots it's annoying for the player ye..
...
There is nothing else on any layer so it has to be an issue with the waves themselves
I did that as well with no luck
I think this is the issue
Make absolutely sure it's on back layer with a tile on Back to apply to
if u check the beach farm itself it doesn't have those tile data areas on the shore, I legit think even the vanilla beach has invinsible tiles
they use either water tiles on the buildings layer or invisible tiles, I prefer tile data
Specifically Back, Back2 will not cut it
because if you try to fix the issue with the waves, what's gonna end up happening is, you won't be able to walk on the wave tile
which you are supposed to do
My suggestion is for the water tile one out, not the wave
The wave absolutely can be on a Back layer, I have done it.
I think I incorrectly highlighted the tiles when doing properties so a few that were not the animation tile themselves did not have 1 or the toher property given
remember water is walkable in stardew valley, always has been, if you perform the sword swing in vanilla, you see you'll be able to walk around water anywhere, except the ones near the edges
this is why I say open and unpack the beach farm from vanilla
you'll see it doesn't have those tiledata areas around water
I'm a beach enthusiast, I love beach farms lol
I always check the vanilla maps per type of map I am making, I just really like being able to see the border with the tile data and if I do want to or need to place something on the buildings layer in those spots it I don't have to worry about tile properties
I am a bad about my habits
god I love setting my speed to max in CJB to get to where I need to go for testing lol
see? I told ya! I knew it!! CA did it that way! invinsible tiles all the way!

speaking of invisible tiles i had to remove some earlier on a map patch
CA absolutely uses them, but I try to avoid them as a rule because they can be a nightmare for crossmod compatibility with patches later xD
Ok that fixed the majority of my issues but I still have a few tiles not being passable when they should be and 100% all tile properties are correct now
which ones?
that's why I say that specific one I marked has worked for me all the time :p
hopefully it never gets updated!
It's not even the tilesheet being updated that is the concern for me
where the red line is
It's if someone does an overlay patch not realizing there's an invisible tile there
i'd say remove your tiledata areas
I will for testing purposes
the boat tile data is for a warp so it should mess with anything
I use the warp property for that, tbh I only use tiledata for uhh cabins! anyway, bear asks if you marked these as invinsible tiles?
omg i just wanna finish dialogue so i can test this npc-
I havent put any there just the tile data for not being passable on the back object layer. but right now they have been deleted to see if I can even walk in the area with nothing there
remove em' tile datas and put invinsible building tiles there, try
the tile data i mean has been removed
I will just for you after I test this
I STILL CANT WALK THERE 
I also cant walk onto my dock and there isnt even tiledata or anything on the building layer for those tiles
wHaT iS HaPPeNinG
bear asks if, are you using the animated waves in the ''building'' layer, and also, did you modify anything in the tilesheet properties? (did you edit em'?)
you don't have to modify em' at all
But since theyre on the building layer wont it prevent walking
vanilla spritesheet has the same properties
some tiles can be placed in the building layer without you having to edit them and you'll be fine walking on them
like bridges, the stepping stones in the beach farm, waves
Alright I'll give it a shot rq
but that still wouldnt explain why I cant walk onto the first part of the wood
the wood would count as back layout
even the one around water
so you use invinsible tiles around it
the wood is on buildings 2 so it shouldnt be collidable at all
and it has no tile properties
0 tile data for building layer
This is done doing just invinsible tiles, you can also (if you're creating a custom farm) use the map properties at ''warp'' and use ''farm'' tag to use boats as tps
I just used the same tiledata as an exterior door I have replaced with invisible tiles and still ran into the issue, now I have made 3 more back layers....... If this doesnt work
I ran through the same you're experiencing long ago because I was editing the tilesheets, had to redo the map without modifying them using invinsible tiles and all was good
I am assuming Im gonna have to start the map from scratch if this is a no go so thank god it was a smaller map if it was the 180*100 beach map I had to make I would be sobbing
do not try to copy and paste from a tile file to another also
I learned that lesson already thank god XD
it actually pastes the whole thing with the modified tilesheet lol
Starting from scratch because im a ditz 
The hard part tbh is not building, is the freaking fishing thing that changed in 1.6
in 1.5 we had a tile property to modify the fishing aspect easily, now it changed so you have to edit the content file
if you don't, it's gonna just spawn sun fish
?? wHaT
for instance:
}, "Fish": [ { "Id": "Green Algae", "ItemID": "(O)153", "Chance": 0.2, "Condition": "LOCATION_Season Here Spring" }, { "Id": "Flounder", "ItemID": "(O)267", "Chance": 0.9, "Condition": "LOCATION_Season Here Spring Spring Summer" }, { "Id": "Sardine", "ItemID": "(O)131", "Chance": 0.3, "Condition": "LOCATION_Season Here Spring Winter"
This is your location data right
feel free to use it, you can add more and more fish using the same format, this is so you add what fish / loot, season, % to catch
Oh yes I already got all that
ah great!
Sorry I only started modding in 1.6
you can also use items there btw
So I am only accustomed to the new formatting and way of life
you can catch an iridium needle if you wanted to
Yea I added a magical stick to my mine
It’s just a stick that’s magical
Nothing else
great. You also can modify the starting pack through tiled
Starting pack?
the box u open on day 1
yes, add this property in tiled:
LOL
So you can add multiple items to?
make sure you use the format like in this website https://mateusaquino.github.io/stardewids/
yes
you can start with 999 iridium bars
or 500 iridium slingshots
whatever u want
even big furniture like furnaces
well, there u go!
I wish there was ai for map making I have about 15 I have to make and a few of them are quite large

u can always make less if u dont want to
and theres tiled extensions that can help with things
What the heck do you need 15 maps for if you don't know what you want to put on them? 

i am also lost in the premise here
there isn't a single mod I can think of that has "15 quite large maps" rn and that includes ridgeside and sve, they each have like 5 of the large maps and a bunch of small/indoors ones, so idek what you would do with 15 large outdoor maps tbh
and tbh from a play perspective, I kind of hate massive, overly spacious maps. They're annoying to navigate and take ages to travel through. I prefer when mod authors use their space efficiently for the most part
I don't have the soundbanks on this machine and don't think I can run unxwb, can anyone point me to the "phbt" sound that hovering over the title screen buttons makes? (The name of the cue, that is)
(which is easier to design too because there's less open space for you to have to decorate)
I can also try to make a few guesses if anyone's got the link to that Google spreadsheet with all the sound names... I don't have that with me either.
Yep, that's a match, thanks.
What an intuitive name, totally sounds like a cowboy's footstep...
(If you enter debug logSounds in the SMAPI console, it'll log the ID for each sound that plays in-game.)
Oh, that is useful. Will definitely use that for the sounds I can remember how to trigger.
Content Patcher 2.5.0 is now released!
This adds a new local tokens feature, improves NPC token validation, and reduces warnings when using MoveEntries. See the release highlights for more info.
Oh nice! Less MoveEntries warnings!
ooh you did push through with the local tokens thing
hello gaymers, i have a question about event modding and forks.
so, in penny's bathhouse event, it mentions a fork titled pennyHeartbroken but it's never specified as a response ID or anywhere else in the event as, like... the fork. so i was wondering where that even got set?
#$r -1 0 event_pool4#I feel the same way about you.
#$r -1 -1500 event_pool5#Sorry, but I don't like you in that way...\"
/fork pennyHeartbroken```
Thank you Pathos
Elliott has two t's in it...
Fixed!
Hahahaha
it doesnt seem to follow this format either, so i'm just. confusion 😔
so the rest of the BathHouse_Pool has an additional subevent command called "pennyHeartbroken" which is what that fork transitions to
(Note that it's using the /fork command, not /question fork<id>.)
whats the diffwence
the $q answer, that being the 2nd command where it says "Sorry I don't--"
When the /fork <id> command is run, it immediately ends the current event script (so the rest of it is ignored), loads the specified event ID, and continues from the start of that script.
uh huh
That's used to have two different endings to an event. If that command is skipped (e.g. because it's only run for one branch of a $q), the current event continues instead.
oh, wait, i- ok. so how does it... skip or not skip?
do you fork at the end of a q?
like uh
hold on
ok i thought i got it and i still dont 💀
if you choose event_pool4, it knows not to fork, even though the fork command follows it... if that makes any sense
sorry i probably sound stupid this makes zero sense to me 😭
In that script, $q starts a question, with several $r responses which the player can choose from. If the player chooses "Sorry, I don't like you in that way..." it triggers the /fork pennyHeartbroken command to switch to the heartbroken variant (you monster).
uh huh
why does that one specifically trigger it? because it's second?
in the response order or whatever?
it just doesnt follow the format of the event data question fork OR the dialogue formats on the wiki, which is why i'm like "bweh?"
is there a GSQ for number of mystery boxes opened or a GSQ/mailflag for having opened at least one?
theres a player stat for MysteryBoxesOpened
I'm not sure off-hand of the particular format; that would mainly be a question for an event modder, I've never actually created an event myself.
okay so the list on the wiki for player stats is not a full list, yeah?
ahh, that's ok. i'll just follow the question fork example on the wiki then
whatever CA does in his game is black magic at this point
i'm mildly confused about the difference between the $q iteration, because a question fork runs:
Answer1 -> fork
Answer2 -> ignore fork
i checked the sebastian event with the dnd thing too, made zero sense how it knew to fork
probably not! especially since a stat can be literally anything, and any mod can easily make their own.
i have a very very short exerpt of question fork but honestly quickQuestion my beloved
do you know if there's a particular reason to ever use $q with a /fork instead of /question fork? (unless I misunderstood something lol, I think those two are generally the same idea)
(the StatKeys class has a long list of constants in there though that you can check for some default ones)
i tend to not use $q and such in events though so 
What UnconcernedLani said. ^
tbh reading the event and my own working example, it seems like $q runs as
answer1 -> ignore fork
answer2 -> fork
pathos, i thought we were on a first name basis! after all this time, you call me my full government name? 😔
black magic, got it 
I have to learn all of these things so that when I write my own mods, I can use the most obscure and cursed syntax possible to achieve any given result, you know? /lh
oh god no
I do know yaml 
would that be looking at the uncompiled code? I am only a fake coder.
technically yes but in this case its as easy as just opening ILSpy, searching for "StatKeys" and then clicking on it to see a list on the side
(If you have access to the decompiled repo: StatKeys.cs.)

I do not but I think I could request it?
cheeto in spirit, lofty goals of pants
just need to be a level 50 cheeto
I'm uh
Huh, wonder what CheeseMade is used for.
level 500 
Yep! You just need to ask for it here to get it.
I think he needs your github
Are there any good tutorials out there on making your own portrait mod?
Invite sent! See the repo readme for more info when you get access. It currently has every release between 1.0 and 1.6.15.
Appearances is probably your best bet
i think there should be an exception to the cheetos only rule for mod jam contest winners /j
Twist: it's only valid while you have the role.
well you keep the winner role forever
there should be an Honorary Cheeto role for people like Button and Blueberry
Do you? I see no such role on your profile.
who are insisting on eschewing their cheeto tendencies
Oh, "Contest", right. I was looking for the phrase "mod jam".
but its verifiable through the announcements channel!
(The specific roles like 'mod jam winner' are temporary, the generic 'contest winner' is longer-term.)
its a purple role i got for winning a mod-jam-in-all-but-name-kinda so thats good enough for me 
Anyway, your user name is not red, so it doesn't count.
if only the red was permanent 
not yet
You have to be either orange or red.
theres still time for me to become a 1.7 developer
You have to be warning- or error-colored unfortunately.
(Or green, I guess)
pumpkin orange warnings...
are the junimos hosting a council meeting for the a new summoning? (are more junimos getting onboarded?)
p[ff
I'm fully onboard with error coloring. Let it be a danger sign to the masses.
dibs on being the next junimo! /lh
god i miss the blaringly yellow text from the halloween event though
i would sooner become a cheeto than a junimo
not because i have anything against junimos, but because i know i would absolutely not want to be one nor would i make a good one
ah yes, m-f finally got hit with the notif to update cp lmao
also I'm officially level 100 now which means I can theoretically create a million stupid commands and unleash them on modded farmers. I am surging with the power I wield right now
i'm pretty sure that's a fast track to being licked clean of cheeto dust

so to get your cheeto dust removed, it is licked off? by bouncer?
YAML is not cursed! 
who's bouncer?
listen here you
my mistake, *boncher
thank you
I assumed it was washed off using condensed air or something
like how you clean keyboards
(tbh i much prefer json to yaml but if you know one you basically do know the other)
I only know yaml because of a tool called ansible
i don't wanna know, i am blissfully unaware even though i let link use my custom npc template as a yaml guide 
its just minimalist json
It's technically, historically a superset of JSON, so wouldn't that make it... maximalist JSON?
json after it read The Zen of Python
technically maximalist, visually minimalist
MAX POWER JSON
It's like JSON, except that it breaks when you forget a space instead of a bracket.
luckily, tabs and spaces have never been something people have messed up
it also breaks if you space too much
yoba help you if your IDE auto converts spaces to tabs or vice versa, too
Either way you have to use a validator/syntax highlighter. It's just a question of which one hurts your eyes less.
(not that it should if it detects you have a yaml file open, tbf)
my fave files are the ones where there are both tabs and spaces as indentation on the same lines
that's when you really have to wonder what cursed series of IDE swaps took place
me formatting my stupid nexus BBC:
What
Never mind. I don't need to know
making spam commands. like, say, making a command for a specific year
XD i was about to ask what the british broadcasting corp had to do with this for a second
.q 6284
Enjoy your British broadcasting company I'm drinking my Chinese cold medicine and going to sleep
!ask
Ask your question or describe your issue here, and someone will help if they can!
!2020
That was five years ago, mate.
!boncher
nope that stays in m-f
I like how that command explains literally nothing.
i have a cursed idea, i am off to your thread
I like how it tempts you with a photo but it's only like 3 pixels total
okay, so opening Artifact Troves increments the geode counter and there is no separate counter for artifact troves, yes?
there does not seem to be one no
Okay, I don't completely suck at reading this 
Well, that's a function I wish I hadn't looked at. Important pieces of game logic tied to specific NPC animation frames.
clint's?
Raise you important pieces of game logic tied to farmer animation framss
That seems somewhat less toothachey to me. Still somewhat, but not as much.
It makes some sense that the game would have to respond, with some delay, to player action. NPCs are already following a script, though.
I have a question!! I am not blaming any modder but why every song mods or audio mods always have weirded codes on theirs Content Patcher?
Yes, except the animations can take a delegate
I meant
why the code looks like this
I need to rewrite it everytime I want to make it more compatible with another platform
which part of that do you consider weird?
This is true, injecting arbitrary non-animation logic into the animation runner is very SDV.
the line the space the coordinate the . Before the { idk what are these
but I only know it will give errors if we didn't run it on PC
but if I fix it to the format I done it will be no error
seems like some sort of weird unicode encoding error or something?
YYes
Oh, that's probably a BOM.
What’s the manifest json for in mod folders?
probably not something that the mod authors really at fault for
tells SMAPI information about your mod
it's like ID card
required in order to actually load the mod
Aaah ty
are you sure that problem isn't with the editor rather than with the file?
no it from Nexus
I changed many editor it still the same
they meant the text editor you're using on your phone
It's not a "problem", some editors just add BOMs and most JSON parsers should be able to handle it.
Well really, not even the JSON parser, rather the underlying text reader.
regardless, mods aren't really written with mobile in mind right now, so there could be a lot of reasons why they break when loaded on mobile other than encoding/BOMs
it's only happen when we download song replacement mods
it's never happened on another
then its coincidence
I really doubt that, unless it's because some/all the mods are derived from one template they all copied.
or it's all one mod author or something
it being a music replacer mod has no effect on that
I talked about this last month I guess
If it's maybe a half-dozen mods then I could see it being a copy-paste situation.
I guess I wasn't here, I'm sorry
silly of me, maybe: in quickQuestion, what exactly is a (break)? do you literally type (break) or is it just ..../? some other character
also if bonchoen is still here im looking at your tutorial, so helpful with the switchevent thing, ily
opening up their mod does have N++ open it in UTF-8 BOM by default unlike my other jsons though, which is interesting.
are you sure its not just happening with that mod authors mods specifically
Yeah, it just depends on what editor was used to create it and/or what settings the editor was configured with. BOMs are legal but not required.
my editor is UFT-8 by default IIm not sure if this is OS issues
ok
I dont need to ask more maybe chat GPT is better option
like focustense says, its just a quirk with both the mod authors editor and your text editor/smapi android not being able to parse it
but not music mods specifically
chat gpt is always the worst option
if it prevents the mod from working on PC too, it could be worth reporting to the mod author. If it works on PC, unfortunately mod authors just aren't writing with android in mind right now, so they probably won't be willing to fix it especially for that
do u want to hear confidently wrong answers lol
...we answered your question. Some editors add a BOM, some don't, some depend on config. It's still totally valid UTF-8 JSON. Most code shouldn't choke on it. If Android chokes on it, then that's a problem with the Android code. It's got nothing to do with music mods in particular unless they're all from the same author or all the authors copy-and-pasted from the same template. What more do you want to know?
Does anyone know if the vanilla spouses still use stuff from MarriageDialogue.xnb or was all of that moved to the character-specific marriage dialogue xnbs?
it's not editor problem it seems because I can open any json file without errors I have mentioned these
and I use more than 200 mods
It's not a problem, period.
does it actually prevent the mod from working until you edit it? if it does, the issue is with android's handling of something
we can't help with that
the json having the weird character is not a problem, because its something that should be handled gracefully by other software
yes you write (break) as it does actually break the event command
this is an issue with SMAPI android, not with the mod
Honestly, I get the sense that you are fishing for a particular answer, which is probably the wrong answer, and in any case we don't know what you're trying to catch. If deleting the BOM solves the problem for you on other platforms then delete it. Or ask the mod author to release a version without it for that reason. But it's not invalid JSON, it's just something that specific platforms aren't handling well.
i was backreading what happened i just skyrocketted
and there is a different server for SMAPI android now i believe, so whoever's maintaining/updating it there would probably be genuinely interested in knowing this breaks it
All this "I looked at a hundred other mods and they didn't have it" is just noise. So what? A BOM is a BOM is a BOM, it's either there or it isn't, depends on the editor and the author.
(it's the thai sdv server, the one they forwarded the message from)
you guys say im fishing
when i literally tried all app
so I assume it as OS issues
that's the end
we're telling you that we already gave you the correct answer
and that its not an issue with the mod
The byte-order mark (BOM) is a particular usage of the special Unicode character code, U+FEFF ZERO WIDTH NO-BREAK SPACE, whose appearance as a magic number at the start of a text stream can signal several things to a program reading the text:
the byte order, or endianness, of the text stream in the cases of 16-bit and 32-bit encodings;
the fac...
There's no "issue" here. Some editors won't display the BOM (on purpose).
yup. And we can't help with android stuff, so it really is the end.
wait, the thai server is in charge of smapi android? i figured it would just be a generic "SMAPI Android" server
ive never looked into it
well a thai person wrote the androidsmapi
nope, it's the thai server - what's weirder still is that it's not in the #friends channel
re: switchEvent, in your example, you circle back to the original event script. do you just switchEvent {{original event ID}} and it'll continue past the ... question, again? i suppose
or wherever it left off?
i imagine that channel is a two-way street and that both servers need to agree, not just this server adding em willy nilly
is it cus thai is not actually official sdv translation language
i do think it'd be useful ofc, to redirect ppl there
uh, i'm quite unsure what part you're looking at, but i do call something called transition when i'm doing looping events, and at the end of every subevent, i switchEvent transition to continue the loop
in the switchEvents and you section is where i am at
I think vietnamese isn't either iirc but that server is in the friends channel? I could be wrong about both though nope
it's not necessary to call it transition of course, that's just my brain speaking lmao
I am indeed wrong
actually we can hop over to #1277457201077813280
making mod is kinda addicting. Just finished one and already moved on to next idea 
I'm pretty sure i spend more time testing/debugging mod than actually playing
Hi! Im new here and wanting to make my first NPC mod. I followed the guide here in "Full NPC" to create a test, but it didnt show up in game. I used Abigail's dialogue, schedule, portrait and sprites to replace later, but only the real Abigail showed up in game. https://stardewvalleywiki.com/Modding:NPC_data
Is this section of the wiki not 1.6 friendly? Or is there a better guide somewhere?
Keep in mind that making NPCs is a complex process that requires learning many different aspects of Stardew modding.
Here are a few links that can help get you started on all that you need to know:
-
Tiakall has a great tutorial on making a custom NPC for 1.6.
-
NPCs no longer use dispositions, check the wiki page for the new NPC data.
-
Aviroen has put together a template that will allow you to easily create a romanceable NPC.
-
Feel free to jump into the https://discord.com/channels/137344473976799233/1277457201077813280 thread for more interactive feedback and help!
-
Fireredlily has a WIP NPC Builder Please do report any errors you get with it into the NPC thread!
npcs are one of the things that has a lot of moving parts
(tbc the "yeah" is bc theres a better guide, but that page IS 1.6 friendly)
Thank you! Ill check it out. And I just realized I have this error, can anyone tell me whats wrong here?
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.
!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.
Which json file is it saying is incorrect?
content.json
Does a texture2D load need the full path or just the asset path?
I copy and pasted directly from the wiki into content
please upload your json and send it here regardless
use the uploader next time please, but regardless, you've extra stuff at the top prior to what you copy pasted
Sorry about that! and yeah I see what you mean, I copy and pasted that from the wiki too so I thought I needed both



