#making-mods-general
1 messages Β· Page 143 of 1
If you wanted to make an npc dip and not affect perfection can't you just exclude them in some way
i would rather not find myself banned from this server
Or have i been staring at objects.json for too long and think npcs are parsnips
They are not?
time to add a parsnip npc
So you'd like to create an NPC, you said? π
i'll make a mouse, i'll probably end up making a crow, but i draw the line at vegetables
how strong of a no can I reply without being automatically banned from the server
but anyway, the main problem would be if them leaving locked you out of any potential recipes
listen, I respect you npc modders, I do. But you have yet to infect me with whatever possessed you to spend as much time as you do making the incredible things you make (soon, maybe?)
also, important to consider multiplayer too
.q 6275
i made a whole NPC and what i learned about was myself ._.
- @tiny zealot (Jump)
which is to say, sometimes a thing simply must come out of you, at any cost
okay, I released the correct version of my mod now, if it breaks there's a non-zero chance I ragequit on it (I won't, it's just... ughhhh)
that's exactly it. we create, no matter how much we complain about it, because not creating is worse
ngl I'm just allergic to putting the work into my creations that is needed in order to take them from ideas to finished projects
maybe one day
Hi!
I'm here because I wish to create a custom farm type, but I don't know exactly where to start. For example, is there a universal tile set that knows to change with each season? Are there premade tile sets- already configured and set up for Tiled- that I can just grab and use, or am I meant to make my own using sheets pulled from the Spriter's Resource? Is there a tutorial specifically for the type of mod I want to make? I assume there is, based on the sheer number of custom farm layouts I see on the Nexus. That or they're incredibly easy, like SDV's equivalent to custom followers with vanilla voices, as one can find for Skyrim.
for now, atp my next mod will be adding realistic waiting times to harvey's clinic inspired by the five times I've been to urgent care in the past week just to get a dressing change on a burn... π
!unpack You can start with the vanilla tilesheets.
Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!
Most farms use those for the majority of things because they're recolor-compatible by default. Folks may also use modded tilesheets like Lumisteria's or HxW.
daisyniko's is another popular tilesheet I think
oh yeah. an unskippable four-minute event for the emergency surgery rescue
(that reminds me, i really need to put that mod that lets you use tilesheets from other folders on nexus...)
Cross-Mod Compatibility Tilesheets?
there's a 50% chance at the end that he half-asses it and you end up with even more items lost
okay hi so erm how do i add tile data? like i'm adding a door for the player to her room but i'm very lost π
i think thatd make the people who already dislike (lightheartedly) my acronyms swear me off forever
Better Immersive Cross-Mod Tilesheets, then
also its not cross-mod anyway
its for using e.g. TileSheets/furniture.png
so like it CAN use modded stuff i guess if they load things into there. or anywhere else
you could in theory use Lacey's Portraits image sheet as a tilesheet on your map
I'm gonna make a mod that makes everything in the game into an acronym
could and should
hang a big poster of Lacey's face on the wall with it
i'll stick with the standard-size spouse portrait from the traveling cart 
I would just use the doors from townInterior because custom doors is some shenanigans you probably don't want to mess with.
obviously the game just updated but last i checked doors only really work with the like three hardcoded vanilla doors
i am lol but i thought you needed to use tile data
getting interior doors to work is asinine and has at least three parts that all need to be correct
oh lovely
don't the ones on the tilesheet come with all the tiledata built in?
for some tiles, the game detects the tile itself and is able to respond based on that
(if you want it to be a locked door, you have to add some stuff but you can do that in CP)
it's her bedroom door so like they need 2 hearts
thats what i thought i needed tile data for
(also last i checked, the mirrored door in the clinic is hardcoded to mirror on that tile coordinate but isn't restricted to the clinic map, so if you use that coordinate for a door somewhere else it will be mirrored, because lmao)
it might help you to have a look at some other npc/map mods and see how they do it, and then you can look up the relevant things for more information (just don't copy anyone without permission obviously)
do you have any documentation for that cuz i don't know how to lol
i tried looking at stardew valley expanded but it was corrupted for some reason
you need a TileData Door <NPC name> object on the tile, as well as the Door map property for the coordinates and the door sprite
I just finished working with that for my NPC apartment mod
stardew valley expanded is not your best choice for examples because it's a massive and very complicated mod. Try finding a mod that adds maybe one npc instead?
(Just the exterior to go before I can publish that!)
oh let me try to figure out how to do that lol
ah okay, i dont think i have any of those but ill look
Use the maps page on the wiki for the specific info about the properties you need
Oh no, I would not use SVE as an example. Look for a small, basic NPC.
Or just any vanilla map with an interior for
^
Or door, even
I just used HaleyHouse as my guide
Worked great, and it's got two of those friendship doors in it
Doors are only tricky if you want a custom texture, imo
I mean also as a general example
if you want to learn NPC stuff from an example, you don't want to go look at an expansion, you'll get lost real fast
looking at SVE is like looking inside a racing car to learn about basic engines lol
a racecar that has a kitchen blender and a hadron collider inside
For interior doors, there is Door which checks 2+ hearts of friendship with said NPC (e.g. Action Door Abigail) and then ConditionalDoor for more advanced conditions (e.g. the Adventurer's Guild door) https://stardewvalleywiki.com/Modding:Maps
A race car that's been built over several generations so it's got a bunch of old stuff you really should not use in it as well as latest best practice (sometimes)
This reminds me I gotta deal with the BHI NPCs π
just gotta open my spaceship to use as a reference
there are multiple things held togther with zipties, and none of those things look like that's a good idea
maybe my gitlink is too small on my tutorial
I am currently neck deep in door logic myself... There's also LockedDoorMessage which is more related to ConditionalDoors and then LockedDoorWarp which has nothing to do with interior doors - it's for doors that warp to a new location (e.g. into a house)
cam, did you see the door tutorial on the modding wiki? there's also stuff about door logic there
(Lockeddoormessage has also changed in .15 to check for the Notfriend_NPCNAME and I am a happy camper)
firgured out why i couldn't add objects.. stupid layer was invisible π€¦ββοΈ
Oh, I hadn't - that looks very cool. Not so relevant to me at this point, but that's some awesome info
one of the mod ideas I have on the backburner is one that makes it so that if you have less than 2 hearts with someone but they're inside their room and you're at their closed door, you're able to knock and there's a chance they will come to the door to talk to you + there will be dialogue options based on that
just bc one of the most immersion-breaking things for me was being told "the room is locked, you aren't good enough friends with X" when that person is IN their room
"Sebastian, you little shit, open your door"
"No"
"I have sushi"
"....okay"
I like this idea, but I also know that npcs are held together with spit, gum, and dreams
this is true
I did think about having it be conditional on whether you have any quests with them/stuff for them
that's what scares me about it
for that kind of condition you'd need a ConditionalDoor
you'd probably need to do a bunch of heuristics to determine whether an NPC is inside a room, or allow people to define conditions themselves
instead of having them walk over, you could just have them respond with "come in" or "go away" which is less NPC stuff?
oh, or bypass it with C# since that's the context of your message
(And the pathfinder is held together with rubber bands and candy floss)
the game doesn't know that Sebby is in his room, just that he is in a certain coordinates at a specific time
...maybe if they don't come to their door, you could leave a gift outside the door to them (by basically gifting it to the door) and they can receive it that way
that is true, "are they in the room" is a big thing to code in itself
so I literally am writing code that checks if an NPC is in their room - for totally unrelated reasons from the current conversation...
(i have thought about rewriting the pathfinder, but not seriously)
could you just create a fake NPC and tell the game to try and find a path from the farmer to the real Sebastian's location, and if it cant, he must be in his room?
I was just thinking that
π this is me standing right outside his door to shove a plate of sashimi in his face and immediately leave. poor guy must be so perplexed
Could you have it check if the NPC is at one of a specific list of co-ordinates?
but also that would be an issue in multi-room houses
(BETAS does actually have a GSQ for checking if an NPC is in an area too...)
I love how we all know this mod is aimed at sebastian
(and a problem for any mod that has changed vanilla stares disrespsectfully at...)
Checking if they are within a certain radius of the door would probably work just fine. Sure there will be false positives, but it wouldn't be too bad.
this would be my approach as well
the alternative is doing computationally expensive flood filling
the coordinates one is definitely the safer bet
which is liable to blow up in many different ways
how expensive is searching each tile for a door action
Yeah I immediately thought of Button's check for NPC locations for this.
Elliott and Leah too, but Claire's not around and the Leah fans aren't as vocal as the Seb fans π
that wouldn't tell you anything about if they're in the room or not though, because you would cover just as much space outside of it as inside of it
i copied the way BETAS checks for an NPC in an area from the way the game does it, which is just by checking if the NPCs Point location is within a rectangle. super easy calculation
(that's a flood fill algorithm)
Oh hi! Welcome back!
Yes, there would be false positives, but is that really a huge issue in this case? They are still close enogh to see that you want to get in :P
though flood filling isn't so bad if you're not doing it every tick or something
there would be more false positives than true positives...
I think
idk, it's 3am lmao
I worry more about false negatives tbh, some npc rooms are way bigger than others
how small of a radius we talking though
something like fireredlily's boarding house can get crazy real fast
Alternatively, you could check if their tile position is further north than the door. That would work for most rooms, and would only require a few exceptions (sebastion)
there's no way to hook an event correlated specifically to the LoadString of the door message, is there?
regardless of how it's done, this mod idea would have close to 0 other mod compatibility out of the box it looks like
For that you could check if the player is next to the door
actually, the npc pathing version from earlier could work if you check the npc can make a path to the door itself AND it can't make a path to the farmer, meaning they're on different sides of the door
they are, just not in the modding channels lmao
since the farmer is pretty unlikely to be locked in, that should do the trick

Create a door that requires 2 hearts to enter and 4 hearts to leave... the player lives there now
PathFindController already has 3 findPath functions already you can probably just reuse. they just take points
we got enough yandere mods, we don't need a framework to create more
spiteful mod creation: go out of your way not to be compatible with my mod 
thank you! is that vanilla or from a framework?
vanilla
nice
I might test writing a function like that later on, if that's successful then this mod is a lot more viable than I thought
PathFindController itself is not a static class however so you'll need to find or make your own
yeah making NPCs go from point A to point B is easy, what's hard is doing so without messing up their existing schedules
you don't want to cancel Seb's smoke break walk when you tell him to go open the door
the funny logic of them always forced right when blocked is fixed, right?
I might not actually make them go anywhere and just use the pathfinding code to check if they're in the room
the idea of making a temporary fake NPC might help there
or have his smoke break walk canceled by you telling him to open the door
(can you actually create a door with different heart levels with ConditionalDoor?)
and just do all the actual mod stuff via door messages like was suggested earlier
ConditionalDoors just take any GSQ
cursed alternative: pause the game clock until the npc is back at their original spot
Doors are coded to only check 2+ hearts
i'd be lazy and do PLAYER_HAS_MAIL Current {{ModId}}_4Heart Received
The only ConditionalDoor in vanilla is in the Adventurer's Guild, iirc
@teal bridge would you prefer my GSQ for the gifts book check if the player can give an NPC a gift at all (i.e. it also checks against the daily limit) or just checks the weekly limit?
(waits for the ping from tia to say "CAN MY DOOR BE 4--")
(the ConditionalDoor and Door that I'm referring to are Actions (edit: though the game turns them into TouchActions as well in the latter case for in case the door is open))
why not just use the GSQ specifically for friendship points
extra cursed alternative: after you disturb an npc, they spend the rest of the day following you around and yelling. Your only escape is the backwoods
way ahead of you
#making-mods-general message
that's fair and valid, but i'm already writing all of the heart events, i may as well throw in the heart threshold flags for outside mods to grab
but... they can also just use the friendship points GSQ
i use the threshold then
(also in case someone didnt know, you can also customize the message that is shown when failing the condition on a ConditionalDoor)
[slams palm on the randomization button]
what'd i do
(Fwiw I've given way too much thought on the whole pathfinder)
Meow meow
So me as an NPC
Today my door is open, feel free to talk
The next day, I will yell at you dare bother me
If you went with the list of co-ordinates idea, would it be possible to make it like the base game Data file (I don't remember the C# name for that lol) so that other mods can add their own NPCs and co-ordinates to it?
you can make custom data models yeah
yeah custom assets
thats how a lot of frameworks work now after 1.6 with CP
it is, but I guess I don't want to rely on that? it could always have both. Like the coordinates for mods that are directly supported, and a fallback calculation for mods that aren't
Aha, it is called a data model! I second-guessed myself and removed it from my message, haha
that way mods can provide their own for more guaranteed, stable, low-impact results but everything is somewhat supported
ngl this is a lot of effort for something that's literally only a problem pre 2 hearts but I might genuinely do it lol
I would use it!
if you'd have mods editing the custom asset anyway, you might as well just have them define rectangles
on the other hand you're going to get lots of mileage out of the Seb simps on this server
go get that 30k udl
(the server owner likes Seb, you'd score some points
)
that's like, the majority of the vanilla isn't it
seb simps getting to talk to him through a door: 
speaking of, in another day or so if nexus still doesn't give me the recognised modder thing I think I'll have to ask in their server bc I'm nearly at 1.5k UDL now π
i just don't think about it
also, one little QoL thing thats only relevant for a small portion of the game may not be much on its own, thats true, but its also not gonna be the only mod someone has in all likelihood. i would be very happy to just add small QoL things for each portion of gameplay so that the entire game is then QoL'd up eventuallly
I'm just nosy and want to see what the recognised modder thing does lol
literally nothing but make you think you mightve been banned for a split second
uh, a little title if you've never had nexus premium
you get access to their discord and also no ads
i stand corrected. literally nothing useful*
my current three mods are all QoL (in a slightly different way) so I'm totally with you!
okay, the discord's not useful, but the no ads is if you're on mobile
i have an adblocker on mobile!
if you use a vpn day-to-day (which I do), a lot of them have ad blocking built in now
on all devices
and it's way more effective than browser ad blocking
also you need verified status to opt in to DP right, or am I misremembering
I don't use browser much on mobile so I haven't bothered to look into it. It's just convenient when I'm trying to grab a link from Nexus while on discord mobile 
i didnt need to be verified to opt in to DP
no, i've had dp on the entire time
i was earning very tiny amounts for like a year before i got verified status
I think I can opt individual mods to DP rn
Nah I've got like 150 UDL and I'm opted in for dp.
I think they're changing things so that you need to be verified if you want to remove the comments/bugs/forums tabs on your mod description
it's not worth it but I could 
Since there's been a ton of spam recently
yup, that change is already live
i was gonna say yeah, i guess that makes sense so spammers/scammers uploading bs cant just not let people make others aware of it
I was upset when I saw that change but then I realised I don't actually want to remove those tabs anyway lol
(but people can still just... upload a mod without said things looks disrespectfully at...)
unless they force it upon those without verified, then ok, i'll be satiated
i think the overlap of people who'd want to not be bothered with those tabs at all but would also get enough people using those tabs on a mod with less than 1k DLs in the first place is probably not that large
I'm not sure if it's retroactive?
i just don't want the comments tab, -10 sanity and all that
I think it isn't? from what I remember from their post
my bug reports are always open to the public
you should be well above the threshold to turn it off
I would've thought that people without verified can't choose to remove them at mod page creation either, not just that they can't remove them after initial mod page creation.
also can't hide the file archive if you aren't verified
Or did I misunderstand what you were saying Avi
i want everrything turned on always bc opening nexus with a lil +1 on the bell is some of the most validation i get on a day to day basis usuallyβ
I always get scared when i see it then breathe a sigh of relief because it's just smapi π
nice little reminders like "oh yeah! people enjoy my little things"
no you got it spot on
can't disable comments, can't ENable discussions
they do!
can confirm it's disabled on mod creation too
i honestly cannot think of a user-based QoL to edge myself towards permanent premium, nor will i ever release an aesthetic mod because i'm too lazy for it
the particular feeling of seeing the little badge on the bell and it says "xX_mrGamerTag_Xx commented on your mod" and you click on it and wait for the page to load and what is it going to be? did someone like my mod or did a cryptid leave me an impossible bug report or invalid feature request
release an empty mod called "download this or you don't like sebastian". repeat with other npcs
y'know the worst part about my notifs? "User has commented on--"
me: WHERE?? I HAVE COMMENTS TURNED OFF..
god i still wanna make the
while sometimes i get a bit exasperated by bug reports or very out there, definitely not gonna be implemented requests, in the end i do still just think "theyre leaving this comment/bug report/etc because they want to use my mod" and its good
obviously there are exceptions for the people who clearly dont want to use it, but yknow. those are rarer
"Reading Comprehension" mod, with the offshoot requirement "Congratulations for reading" mod
id rather get bug reports from people trying to use it and runnin into trouble than not get anyone tryin to use it at all
contents: readme.txt
on Lacey i have gotten "can you make her human instead" and "can you make a non-romanceable version" and those people have simply Missed The Point
How do I make an NPC that doesn't appear anywhere physically in the game?
like, with C# or
what do you mean by that
can't they just... not romance her???
I like this approach to it.
i literally replied to that one with "you don't have to date her"
Why do you need this?
If there's a way to do it without C# that'd be better
(tbf they might still want the extra hearts/events)
oh you want a valid NPC? set their home location to an invalid location, they'll exist but not exist in a schrodinger's cat kind of way
What are you envisioning this not-NPC would be able to do?
(not that im supporting the idea of a non-romanceable lacey)
Obviously they just find her too irresistible xD
but like, if they want them to be removed by making her not romanceable, then I don't think they do...
(unless .15 fixed that) but other thant hat SetInvisible <NPC> right?
maybe im too optimistic or benefit-of-the-doubty for my own good but i didnt get "i want you to remove these hearts and heart events" from just "can you make a non-romanceable version"
Does Lacey not have a platonic path? I've just been assuming she does.
she doesn't, actually!
Just need the exterior and to drop an NPC in to fully test, but I've got the spreadsheet ready for my apartment mod, I think xD
https://docs.google.com/spreadsheets/d/1kTktJXYIxF94_7eMNTvxwF2IpvBre-QlhsPr_QdkbsE/edit?usp=sharing
It's the magic NPCs I use to power Couple Events
I use separate rules and checks for daily vs. weekly limits, and there are several other non-giftable reasons as well - so definitely would want just the check for the weekly limit specifically.
If you're only using them for events you could just do tempActors?
I just assumed they'd want everything from the romantic part removed ig?
It used to be kind of a convention that romanceable characters would have the actual end of their arc at 10 hearts, so people that didn't date them wouldn't get the true resolution to their story
thats quite a bit different from wanting a non-romanceable version
but I think a lot of folks have gotten away from that
No, need them for lots of stuff, like birthdays, dialogue boxes,tracking relationship progress, etc.
I basically need everything that comes with an NPC except being there physically
Is them living in a warp room too "in the world" for your needs?
could you schedule the "dummy" npcs to just stay in an empty warp room (but without warps) for their entire schedule?
oh oops lol
How do Ido that?
her 10- and 14-heart events don't add much to her arc. it's mostly just extra perspective on, and more words about, the central thing. it's resolved enough (for my taste, anyway) at 8 hearts
A lot of people just throw NPCs in a void room
How do I throw my wife in the void?
Now look here, this is a family friendly server and we do not condone wife-tossing
you make an empty room with tiled and set their schedules to just stay there using content patcher. Nothing warps to it so it will never be visible
You just make a little map with no warps (or just NPC warp if you want them to be able to exit it sometimes) and then set their home and schedule to that. If you use the words warp room in the location name it keeps the NPC hidden from the world map for people using NPC map locations too iirc (though I'm hazy on that because I thought maps that aren't specifically added to the world map don't show anyway).
but also if your NPC is constantly in a warp room I don't know how you'd progress heart levels with them
Please put your divorced spouses in an apartment instead of the void, please β€οΈ
can the apartment be in the void?
no. the void is full. no vacancies.
That's fair! I haven't made much progress with her because I can never find her lol. She's so small I miss seeing her in the forest.
You talk to the player you're married to that they represent
(at least, not until the next Tater Toss update...)
Is there a pre-made warp room I can borrow from somewhere?
You can also put your NPC anywhere you want and set them as invisible but I'm not sure if that affects birthdays, dialogue boxes, relationship progress etc
Is this a proxy marriage situation, linkoid? Or a parallel for a long distance relationship?
It's a mod
Context helps I guess :P
I guess you could use GSQs and trigger actions to add friendship to the NPC!spouse while talking to the player!spouse but that seems pretty convoluted
C# feels like a better bet
If your issue is that you don't want to use Tiled I could make one for you.
my only problem is that the dummy NPCs are standing in the middle of town.
Spiderbuttons.ButtonsExtraBooks_WEEKLY_GIFTS_LIMIT_REACHED <Player> <NPCName>
if the player has read a book, returns true if GiftsThisWeek >= config value
if they have not read the book, returns true if GiftsThisWeek >= 2
returns false if they have not yet met the NPC (no friendship data in the Farmer.friendshipData dictionary for the given NPC name)
sound good to you?
I just basically trimmed four tiles from BusStop for mine
How do I do this? Would they still be collidable?
I'd recommend trying setting them as invisible first then because if that works then you wouldn't need the extra map.
No, you can't see or interact with them at all when they are invisible. They're still technically there and can be selected with lookup anything but the player would have to be trying to do that on purpose.
no, no collision. elliott is actually invisible when he does his book tour
(he was in your house the whole time, just on the ethereal plane)
They used to show up on the map in NPC map locations and UI Info Suite but both mods have recently fixed that.
(you can however still catch an invisible NPC with Lookup Anything, if that matters to you. they still exist at the normal locations they would be)
New Halloween mod idea
gotta wait til next years mod jam
That's fine. I might use the quirk of the NPC still being there for something later, like having the invisible NPC teleport to always be on the same map as the player.
But the likelihood of accidentally finding them with lookup anything is pretty low, I think. I would sometimes lose Hiria when I knew exactly what tile I'd put her on.
remind me in 285 days to remember the invisible NPC halloween mod idea
Roger that, spiderbuttons (#6430899) (285d | <t:1759378026>)
that was supposed to be october 1st for me... curse you EST vs EDT, i guess
i'm still waiting on it, lemme punt my buddy into the caldera
Me and my keys
How do I make an NPC invisible? Can't find anything about it on the wiki.
There is one caveat: the NPC would possibly be visible on the world map (with the appropriate mod) on day 1 unless you can set the NPC as invisible before the mod runs the check for eligible NPCs for map markers.
(in my case i only realized you could find them with Lookuyp Anything because in order to make room for the Bone Lord i just made the Dwarf invisible)
Also, [hiatus] and [hiatus]
Should be on the trigger actions page
this channel is pretty good at this retirement thing
for legal reasons, i am to be unknown, i guess i can set myself to π― amore
[[Modding:Game_state_query}}
[[Modding:Trigger_actions]]
Yup, it does. (But to repeat myself, it's going to be a while before I actually get to it, so there really is no rush...)
oh i made curlies
if i dont do it now i will 100% forget to later, so i might as well do it now when there is really no rush
I mean
Hiatus is different from retirement
(sometimes)
Hiatus is "taking a break"
Haha, ok. You could always ask uber to remind you.
But I will, eventually, remember to get to it in a few weeks myself.
Retirement is "okay, and I probably won't ever have time again."
Says the person who is now turning into an insufferable gym rat
theres a 50/50 chance id ignore uber every time bc a bot doesnt have the same impact as a person telling me to do somethin
So a 50% of a Halloween mod got it
uber holds no sway over me with a command i gave it some days prior to tell future me what to do
"Pffft, who listens to Past Button anyway? I'm Present Button!"
its the whole "i can give myself a treat after finishing this chore, or i can give myself a treat now bc i know i wont punish myself for it" thing
How would I make an NPC invisible from C#, that honstly seems easier at this point :P
Trigger actions are super easy, I promise
Probably tbh
the trigger action just does what the game does
You just....set their daysUntilNotInvusublr to int max value
it sets npc.IsInvisible and npc.daysUntilNotInvisible
with a check to make sure the NPC exists
Yeah, that sounds easier and would fix the day 1 issue
im not sure it has any bearing on the day 1 issue
If I do it inside the right hook, it will
Make it invisible before other mods check for NPCs
Yep, this feels very fool-proof
make sure they're excluded from perfection
They are
@tardy adder: You was supposed to be reminded. (2h ago)
This should be the last bug. Now I can procrastinate until people bug me about all the events being too boring and unoriginal.
scope creep until it becomes stardew rpg maker
The event I worked the hardest on was the birth event, but I can't include it in the mod because It's based on kristinthered's mod :P
oh is that what you were talking about earlier with the personal stuff
No
I am glad it is presumably a sweet gesture for your beloved rather than oops i commit my secret keys
I know better than to leak API keys :P
the sweet gesture is giving your beloved your secret keys as a sign of trust. the betrayal is when THEY commit them
Oh no, I accidentally leaked the key to my heart on GitHub 
Last Christmas, I merged in my heartβ¦
babe. will you take this PR and be my lawfully wedded wife?
The very next day, you reverted my commitβ¦
this year, to save me from tears, I'm setting my repos to private
Hey I am new here, so let me know if I should ask this in another area. Does anyone know if you can spawn a custom NPC in a custom map using Content Patcher? Any help would be amazing!
You can
"spawn" is a broad term, setting their home? yes
setting their schedule? yes
Itβs pretty much the same as spawning them anywhere
getting them to pathfind correctly? questionable
Gotcha, I made a fairly long map (300 tiles wide lol) and when I tried to set their home tile to 285, 15, I got this error " Error converting value "285, 15" to type 'Microsoft.Xna.Framework.Point'. Path 'Home[0].Tile'.."
THAT WORKED THANK YOU SO MUCH!!!!
just curious, are you looking through a tutorial?
Yeah, I was using the Dobson example on the Stardew Valley wiki, and it has the home tile data written as:
"Home": [
{
"Id": "Default",
"Location": "BusStop",
"Tile": "19, 4"
}
]
Which wiki?

it's on the main wiki, yeah
Its the one that linked to this discord
ig i can change that, idk why it's like that
Interestingβyeah that should be updated probably
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!
no it hates my π― ailed name
j'amore
Y'all are the best! Thank you for the quick responses! I have been making a custom mod for my SO for Christmas and I have been battling learning how to do this all haha. The Wiki has been a HUGE help!
if this is for a Christmas gift then, good luck,
yoba-speed, soldier
I appreciate it lol, should be smooth sailing from here fingers crossed haha
so who won the gamble on how many patch versions for 1.6.9+
me
Is .15 the for sure final?
I don't remember what I bet but I'm sure I won somehow
We all win when the game keeps getting updates
cant believe they fixed the fridge <2weeks after i had to do transpiler for it
What was wrong with fridge?
beat me to it
You know what the lesson here is? Procrastinate longer, someone else might fix it instead
it didn't respect chest size
or be annoying and pester Pathos, that works too
(my lawyer has advised me to clarify that that was a joke)
i had to change it so the game forgets its a fridge when opening the menu
big fridge go brrrrr
Oh, so how does it work now?
I'd love if I could use the bigger chest size for my global inventory
The chest.sourceItem field is no longer null for fridge chests.
#making-mods-general message
avi did actually win
i love my divisible by 5
yep it works now, only need a postfix on GetActualCapacity
whoo
that is definitely... a big boy fridge
and no color picker 
i can finish the collection with one fridge instead of... 12
yea 185 slots still crashes the chest lol
big enough to store my stacks of fresh and non-fresh veggies
Why that number specifically?
i dunno it happens in SetupBorderNeighbors and i aint looking in there
prob some nonsense for gamepad support
how much do i pay for pagination
stack trace?
pls π
link: "i am morbidly curious, but also, i have a violent need"
[game] An error occurred in the base update loop: ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
at StardewValley.Menus.ItemGrabMenu.SetupBorderNeighbors() in D:\GitlabRunner\builds\Gq5qA5P4\1\ConcernedApe\stardewvalley\Farmer\Farmer\Menus\ItemGrabMenu.cs:line 558
at StardewValley.Menus.ItemGrabMenu..ctor_PatchedBy<mushymato.CueSwap>(ItemGrabMenu this, IList`1 inventory, Boolean reverseGrab, Boolean showReceivingMenu, highlightThisItem highlightFunction, behaviorOnItemSelect behaviorOnItemSelectFunction, String message, behaviorOnItemSelect behaviorOnItemGrab, Boolean snapToBottom, Boolean canBeExitedWithKey, Boolean playRightClickSound, Boolean allowRightClick, Boolean showOrganizeButton, Int32 source, Item sourceItem, Int32 whichSpecialButton, Object context, ItemExitBehavior heldItemExitBehavior, Boolean allowExitWithHeldItem)
at StardewValley.Objects.Chest.ShowMenu()
at StardewValley.Objects.Chest.updateWhenCurrentLocation(GameTime time)
at StardewValley.GameLocation.UpdateWhenCurrentLocation(GameTime time)
at StardewValley.Locations.FarmHouse.UpdateWhenCurrentLocation(GameTime time)
at StardewValley.Game1._UpdateLocation(GameLocation location, GameTime time)
at StardewValley.Game1.<>c__DisplayClass735_0.<UpdateLocations>b__0(GameLocation location)
at StardewValley.Utility.ForEachLocation(Func`2 action, Boolean includeInteriors, Boolean includeGenerated)
at StardewValley.Game1.UpdateLocations_PatchedBy<spacechase0.SpaceCore>(Game1 this, GameTime time)
at StardewValley.Game1._update(GameTime gameTime)
at StardewValley.Game1.Update(GameTime gameTime)
at StardewModdingAPI.Framework.SCore.OnPlayerInstanceUpdating(SGame instance, GameTime gameTime, Action runUpdate)
Do I just set the sourceItem to a big chest?
no this happens when i mod GetActualCapacity to return more 185 or more
the ChestSize.cs i linked doesnt do that normally (since its what i use for actual play) but u will see it once u put either const above that num
gonna do a harmony patch to wrap the entire sdv source code with one big try catch argumentoutofrangeexception atp
can u stop ping me when im right here 
sorry, mb! I'm used to it from other servers
well this is what the smapi error handling already does i thought
what's the thing, ctrl+reply? turns off pings
you can patch a function with a finalizer to catch exceptions actually
ooo good to know for when I'm not on mobile, ty
shift reply i think
Well, just setting the sourceItem to a big chest doesn't work 
Oh I was trying to make my global inventory a big chest instead
I'm not using a capacity
When I go over the end it just overflows and fills as necessary
this controls how much appears tho
If I put a capacity then it won't overflow anymore
doesnt that stuff happen somewhere else 
It uses GetActualCapacity to determine it
At least for regular chests I think it does
These questions need to be asked when I'm in the midst of working on a thing, the second I click out of that code the knowledge starts trickling away
If you have to ask, you can't afford it.
eventually i'll just Do It Myself β’οΈ
(Time for "Better Backpacks")
tbh automate might already have what i'm thinking of, which is connected fridges
nintendo made a inventory thats like
1 x infinite
if thats good enough for zeldo its good enough for u
Nintendo frequently makes terrible design decisions
I get that Stardew has inventory management as part of the challenge...ish. But most modern games and frankly most old games have infinite inventory.
I suspect the cause is that this function is returning more columns than there actually are.
i think someone should mod stardew to replace the inventory with a weight-based one instead
with carrying capacity
Games without infinite inventory get modded
consider: Resident Evil 4 style inventory management
imagine dealing with that every time you open a chest
fun 
Ew
Then someone will mod it to have vastly increased or infinite carrying capacity, like what happened with all Bethesda games.
That was the worst part of RE4 and that game had fucking QTE's
i play enough path of exile2, i'm good, i wish to throw everything into a void chest and pull out at-will via some kind of computer (much like that one minecraft mod)
yea hm it does make some sense that 185 is die specifically
and then eventually, maybe someone will mod it to turn it back into slots instead
my inventory after going to coops and a fishing trip
cus theres 5 rows
ignore the guns
but why does 36 col work but 37 dont
thank you for the visual aid i had no idea what youmeant with the RE4 thing
Game: "You are over-encumbered"
Me: player.setav carryweight 99999999
Me every time Skyrim
Maybe it's only the addItem method that uses ActualCapacity to stop adding more items
I didn't use the base one because I didn't want to inherit from Chest anyways
Does the number of columns in the player's inventory always match the number of columns in the chest ui?
Big chests are much wider
I'm trying to imagine what a chestless inventory would look like, hypothetically:
- Infinite
- Scrollable
- Searchable
- Pageable by overall type (with an "all items" page first)
- Filter and/or sort by quality, recency, value, recovery/buff effects, maybe other things
- Assign hotkeys to any items in the list
- Assign filter tags, colors or other visual markers to items
...anything I'm missing?
Yeah, it doesn't look like it.
that's like better chest's feature list right there
I dunno... somehow Better Chests never clicked with me. It's not exactly the same.
StardewUI's next feature inventories?
are we assuming "buttons to drop/split stacks" is just inherently included
bc an inventory like that id expect to have like. a context menu for items
Better stack splitting would be nice
Well the inventory itself is just a data model, that's independent, but basically yes.
SDV's stack splitting stuff is... unwieldy
Are stacks still relevant if you have infinite inventory? I mean, you'd need the ability to grab X copies of an item in your inventory of course, for quests and shipping and such, but you don't really need to "split"?
Better Chests has infinite backpack inventory built in but it can only be enabled by manually changing the config.json file
As I said, need the ability to gather X copies of the item onto the cursor, I'm just less convinced of the need to have multiple stacks of the same item in your own inventory.
different qualities
I like the idea of item bags
i think i would lose my mind with an infinite inventory
Oh yeah, I wasn't worried about separate stacks, just dealing with the amount of the one stack
It sorts ur shit for u into slots
But I do see how quality would be an annoyance
You mean like the Bag of Holding or DQ model, you keep N items in your own inventory and put the rest in a bag? (That you have perpetual on-demand access to through the same menu)
Unless each stack of items breaks out into a separate context inventory that contains the various qualities
Yeah but also a mod named that
I would use item bags if they didn't pigeonhole their data model into having to manually add compat for every mod
pls... context tags support... I have twelve hundred crops and artisan goods... I can't add compat for all of them
I've never liked the idea of carrying a bunch of inventories in my inventory
Yeah same
i made the storage mod i wanted, which is portable hole
It's been done in various ways, of course, but I feel like it's unwieldy.
which is barely even a storage mod, really. it doesn't change anything about the interface or whatever
But tbh i don't particularly need anything besides just moar chest space
I made a storage building with a scrollable storage interface
I dunno, moar chest space seems like all you need until your chest has 5000 items and then suddenly you need organization.
All I need is a bigger landfill
i need stardew AE2
I might as well just redo the vanilla inventory menu, for the lulz.
I mean that is something my mod tried to do even though a lot of people donβt like it. Search bar, tabs, organization.
I like the search bar
People like simple search, where you just type text and it finds stuff. Advanced search is for... more advanced users.
The tabs were always weird for me bc I tend to sort by chest anyways and color code them
I love the search from MC where you can also search from like specific mods
And yeah, tabs are already kind of weird if you are using separate chests. Less weird IMO if you have one consolidated infinite inventory.
In my modded playthrough I usually do the unlimited Junimo chest and call it a day
Yeah for sure
Throw everything into one and then use the filtering features to find what I need
I'm biased of course, but a good test is how easy it is to navigate a large/full inventory with a gamepad.
If it requires extensive use of the keyboard, it's hard to use.
Not to mention carrying a Junimo chest so I have access to everything from everywhere
Even if you don't use gamepads yourself, it's a useful proxy, simply because certain inputs are automatically slower with a gamepad (like typing text into a textbox) so you get a good sense of what is eventually going to tire out users.
SkyUI went through several iterations and refinements to get it "mostly" right. Categories combined with sorting goes a long way.
I play with a gamer-keyboard, so anything that requires any keys that aren't on the core right side of the keyboard are an annoyance to me
The tabs were supposed to be the controller friendly alternative to the search bar
Anyway, that's enough of my musings. Maybe I will make it someday, or maybe decide that one of the existing mods already went far enough.
absolutely blessed that the remake removes the QTEs but keeps the grocery store shelf organisation simulator
lol, "Diablo and Titan Quest did it and those were super popular so it must be good design!"
Happy to see QTE's die, wish that had gone with it
i like the tetris inventories
I spent enough time pointlessly shuffling shit around a retail store shelf thanks
shuffle shuffle
I like the tetris inventories for the first 20 minutes or so, when there isn't that much loot to deal with. Usually I'm sick of it by the first hour or two.
i love weighing up my options between an actual item and a big ass bass
preferably 20 bass
Carry weight is actually kind of the same concept, really, just with a different graphical representation.
"Do I keep these heavy items that I kinda need but can't get into storage for a long time, or toss them all away to collect thousands of tiny but sellable items?"
It's an interesting challenge for 15 minutes, and then it's annoying.
carry weight doesn't consider that an item is simply too long to fit between my vast bass
Inventory size and weight limits are just a way to pad a game with pointless mechanics that take a lot of time to resolve if you're not cheating in some way
If I wanted to play the wood block puzzle game I would open my phone and burn some time watching ads
you say that like resident evil doesn't also have the wood block puzzle
the reason Umbrella corp lasted that long is that law enforcement couldn't get through their wack ass puzzle doors
Much like vampires and grains of rice, if you put a puzzle in front of a cop, they're not allowed to leave or progress until they solve it
I've seen some interesting material written about inventory limits, and how infinite inventories are perhaps prone to hoarding and making games less fun overall. There are definitely different perspectives on the issue. However I think that very often, even if an inventory limit is justified, the limits the devs set are way too small and based more on technical limitations or laziness of implementation than they are on real design insight.
Mr. X π€ Mr. Qi
dumb ass puzzles
When I don't have unlimited inventory, I just make more chests
Instead of having a nice clean house design, I have the chest hallway right next to the crafting zone
Like many of these tetris ones are just based on what happens to fit on the screen as a menu while keeping the size of the items appealing to look at, all completely divorced from the game mechanics and how many items you actually want/need to carry.
My chest hallway is more like a chest fence outside the house, but yeah.
In SDV I have a section of my farm dedicated to just storing a shit ton of chests that I access from Chests Anywhere
So it's just a big fucking unruly pile of chests that looks like shit and eats up space
The addition of a bigger chest size was such a boon, cutting my chest swamp down to like half
sounds like you should put those chests in a hole. maybe one that can be moved around, for portability
I did consider it 
I think it would be an interesting experiment to put out an infinite-inventory replacer and see how many users ask for encumbrance or a similar mechanic. Or release it with an optional encumbrance mechanic and see how many people actually turn it on or off.
My hypothesis is that no one wants to use it. But I've been surprised before.
π€ You got a deal Mod Peddler Lady
thank u i earn a commission on every UDL as a result of my actions
that's a thing
https://www.nexusmods.com/stardewvalley/mods/26693
Well, encumbrance and limited space together are just ridiculous.
It's always one or the other.
Not even Bethesda is that cruel
how unimaginative. punish those players
I don't think Stardew is suited for an encumbrance mechanic, even with infinite inventory.
carrying radioactive ore should also deal gradual radiation damage
This can all go hand in hand with the item spoilage mod
A limitation mechanic, you want it to encourage the player to play in different fun ways. Encumbrance in Stardew would just be different in unfun ways
I don't think any games are suited for encumbrance mechanics! But that's why the experiment is interesting.
carrying manure should make you lose friendship with villagers when you walk near them
And you shouldn't be allowed to just throw it in the trash can either.
one of my favourite games has encumbrance as a very core mechanic
i think it can work somtimes just like any other typically good mechanic can not work sometimes
People do play these, though... maybe not in Stardew but in Skyrim the survival-mode mods are hugely popular. And Minecraft has some of those mechanics too.
a related example: I typically hate durability mechanics in games because it's used to create artificial scarcity (unfun). I liked it in Breath of the Wild because weapons are not in short supply and it gets you to try all sorts of different ones (fun).
Lethal Company has both limited inventory and encumbrance.
I actually hated it in both BotW and TotK 
lethal company is a very good example of that actually
The fact that weapons weren't in short supply made it dumb that I had to spend any amount of time getting new ones when I was just re-using the same materials every time
Yeah it's not universal
but I actually liked having to switch up my weapons. And you had the master sword if you wanted a break from it.
BotW with the Master Sword exploit was hilarious
@calm nebula: go outside and howl at the moon (4h ago)
Roguelites like Dead Cells and 30xx have the best mechanics for getting you to learn new weapon types and play styles, IMO. Just straight up randomize it.
LC is also a game designed around inevitably failing lol
That was actually the opposite fun curve - for the first hour or so I hated that, but then after I got used to it I played the hell out of those games.
No matter how good you are or how hard you try, you eventually will lose
im not sure what the point is there though, plenty of games have that mechanic
one of them was up for GOTY
I tend to avoid them 
Which mechanic are we talking about here, durability or randomization?
the inevitable failure mechanic
Oh, that.
that's why I prefer roguelites over roguelikes 
Remind me in 30 min Why are I still here?
Apparently Uber doesn't want to
bot says no
.<
it doesnt know what a min is
Yeah, I'm not so much into games that just arbitrarily punish the player for no reason. I'm fine with a steep difficulty curve (a lot of the time) but not the capricious "haha you died because we said so" crap.
Remind me in 30 minutes Why are I still here?
ehhhhhhhh ok (#6431051) (30m | <t:1734764020>)
I don't mind dying over and over if I'm slowly making progress to get better. So the ones designed like Dead Cells where you upgrade yourself and your randomizations are great.
If you're crazy enough, the bbeg of my expansion is killable from 100khp
I don't necessarily hate a no-win mechanic game, but the fact that you can try your hardest and be crushing it and still lose sucks
No flags to reduce difficulty, no aids, raw dog it 
this is probably all very far from being on topic for stardew modding at this point, though
Like I play idle games, I'm apparently all for games with no win condition
Fair
Stardew Endless Survival Mod when?
The MoO remake had this ultra obnoxious mechanic where the lead player would always get attacked by the big bad and inevitably lose an entire system. It literally punished you for playing well.
Someone did do a randomizer roguelike of stardew.
Unless, we pivot to what an idle game in Stardew would be
there is, I think it just adds items, not mechanics
It is a start
like the hundreds of farming idle games out there? 
You are in crippling debt to the Joja Mafia, and have meet quota, otherwise they tie you up and dump you in the ocean.
Okay but actually the Skull Caverns is a good setting for an idle game
You could potentially do something fun with the fact that stardew does have different aspects (farming/foraging/mining/social/etc)
Not hundreds maybe but... dozens.
but also the next person that makes a "chop wood, mine iron" game gets smacked with a newspaper
Chop wood, mine coal?
Instead of having the farmer going to do those extra actions that give you resources to upgrade, you would have little Junimos
It's a twist!
chop iron, mine wood
ποΈ
This is literally just a reskin of every fucking idle game ever
Fine, it can be a FPS instead
Hahaha, farming FPS. That I'd like to see.
we already have Doom in Stardew 
I have fond memories of picking up that chainsaw in Doom and thinking "man, I wish I could go cut down some trees with this".
And the BFG? Why, that's just a more efficient way to gather coal.
(Also, I guarantee somebody has done this. Somewhere in the dark corners of Steam, or Itch, there already is a Farming FPS.)
Doom guy doesn't need to mine for coal though, he just steals the demon's Christmas gifts
Trying to decide how I should patch GetActualCapacity so it only affects my one inventory...
slime rancher is kinda a farming fps
though it's mostly ranching, and any farming is to feed your 'livestock'
Oh yeah, it kind of is
That's first person? I thought it was 3P for some reason.
Line 1: if (__instance != myInventory) return;
Hm, instance is chest though and I'm not technically using one
Their website hurts my eyes. So much iPhone mobile game energy.
can you just set the SpecialChestType to something for your inventory specifically
π i can't play slime rencher bc i am allergic to 1st person games (i get nauseous)
I think this is also specific to Chest
it actually is pretty good, if admittedly rather shallow mechanics wise (that was the 1st installment, haven't tried the 2nd one)
are you not calling GetActualCapacity from a fake chest?
Nope, ignoring inheriting chest entirely
im confused. why are you calling Chest.GetActualCapacity then
It's a global inventory so I'm just building an ItemGrabMenu from its contents
Well GetActualCapacity is what chu was using to change the size of their fridge
Oh
I was trying to mimic that functionality on a global inventory
Why do you need a patch then?
I want big box 
Not sure, it was the first option supplied to me so the one I was attempting, I'm still mostly unfamiliar with what I can do with this ItemGrabMenu
The capacity is based on Chest.GetActualCapacity
Which it uses to build a new InventoryMenu
You would have to make a fake chest then
but if it calls GetActualCapacity then it must be creating a chest at some point?
then what would patching GetActualCapacity do
I guess I can just set ItemsToGrabMenu to my own InventoryMenu
oh that's so sad D: im sorry
Well I tried supplying it a chest and the size didn't change and chu said to patch GetActualCapacity 
Maybe supplying it an instance of a chest that doesn't exist in the world isn't good enough
I supplied it with ItemRegistry.Create
Just write a postfix that creates your own InventoryMenu
a postfix for ItemGrabMenu's constructor
if you supplied it a chest then does that not mean you are using a chest, in which case why cant you set the SpecialChestType for the GetActualCapacity patch
The best way to do it would be to create your own class that just mimics the menu using a reverse transpilier for every method in ItemGrabMenu :P
Nothing could possibly go wrong with that approach. :D
A very loaded "best"
@pine ermine: are I still here? (30m ago)
what happened to the why
I thought by supplying it a chest that would have already had that SpecialChestType set it would work, but I guess I could try manually setting it
What happened to the "You"?
And failed this time, apparently.
Spectacularly
Existential crisis, uber
Oh I know why the SpecialChestType isn't working
Fucking this
Well I think I know anyways
The one time a reverse has higher importance
I'm barely passable at regular transpilers 
They aren't that different once you learn the black magic syntax involving the nested local function and have a general understanding of stack manipulation so you can change the number of arguments.
Step 1: learn black magic?
I wish I understood even a fraction of that
You guys talking about all those fancy things seems so interesting
It's interesting, but also hell when you do it wrong
All that fun we had debugging earlier, imagine doing that with a blindfold and someone describing what you're doing basically
Learning to code has been diffcult where im doing it by myself ...-
Harmony isn't blindfolded though, it can give you debug output.
That's why you should test all your transpiliers with ValleyUnit
You want to do it blindfolded, try using the Reflection.Emit APIs all by themselves.
i just test them by hot reloading until its right 
ValleyUnit?
You can hot reload transpiler patches?
(Integration test)
It's a mix between the two really :P
as long as you dont crash something vital you can Harmony.Unpatch and then Harmony.Patch again
Eeeeewww, I think I'll stick to my [HarmonyDebug].
much quicker for fixing off-by-one-line errors
especially since i can just log the IL every time i do anyway
in a way, you can hot reload anything with that
Fortunately, I don't have to worry about this since my patches always work the first time. 
Ya, I know about that (https://github.com/focustense/StardewUI/blob/master/Framework/Descriptors/CodeReloadHandler.cs)
I just didn't make the connection to "Harmony unpatch and then repatch"
does anyone feel like getting paid to add a texture to alternative textures mod for me? i tried solo and failed if u know what ur doing and think u can do it i can pay u for it its a silly snowman we made irl and have a cropped backgroundless png of it and want to add it to stardew valley for christmas if anyone is down dm me or something i can also send the uncropped image
!commissions
If you're looking for people who do mod commissions (either art or code), here's a wiki page with a non-comprehensive list of people who do them: https://stardewmodding.wiki.gg/wiki/Stardew_Mod_Commissions
@next plaza Something pretty strange is going on with GMCM. If I just leave the menu open, doing nothing, it gradually eats up close to 300 MB of private working memory before eventually triggering a moment of heavy lag and then freeing it up (presumably a big GC collection).
It doesn't exactly seem to be a leak, since the memory does get recovered eventually, but it's clearly doing something on every frame that's very hard for the GC to deal with - maybe creating a texture and not disposing it?
There's also a very noticeable increase in CPU usage while GMCM's main page is open that's retained until the page is closed. Happens whether the menu is opened from game or title screen and - as you can see from the graphs, it is not present when the game's main menu is opened, it's only GMCM.
Just thought maybe you'd want to know and/or look into it at some point. I wasn't specifically scrutinizing GMCM, was just having weird moments of "why is my menu lagging" before realizing that it was actually GMCM underneath it doing the lagging.
can you dm the .pngs and i can look it over, i don't necessarily care about the comm since this is probably something less than 30 mins
GC? Im currently testing out GMCM. I can't say I have the same issue though, for me CPU and RAM usage stays more or less constant
(garbage collector)
Hi guys! I released a mod, can someone publish it to #mod-showcase ? π₯Ή
sure, what blurb would you like with the post?
blurb?
usually people say something click-worthy or any special features of the mod not included in the description
Hey, this issue persits since a week.
I'm unable to update my mod on the nexus website. If i hit "save file" (tried winrar and 7zip, winrar usually worked fine) under manage files it's stuck loading forever an ever. i'd love to publish my mod-update. :/
uhhhh the only standard tech-thing i can think of is, have you cleared your cookies/cache
if it isn't on nexus' end itself
The nature of how Nexus works means the issue could be entirely unrelated to them, if there's any kind of network issue between you and their servers it's going to cause problems
There's really not much that can be done other than waiting for the issue to clear up
You can post it on an alternate site, github would be my suggestion
Simply because CF is bad
(CF has a clause that they own your mod if you post iirc)
I'm not sure if that's still accurate but it was during their little mod contest thing
moddrop too, but last i heard "it sucks" 
Which they only tried to walk back at like the very end of the contest and I don't know if they actually ever did
I actually wonder if using a VPN to access Nexus would help or cause more issues
thx i will try and wait 
Hello everyone! I've got a question. Someone left a bug report on the Machine Progression System page saying that their Upgraded Casks are reverted into regular ones when put into locations such as the Cellar or Sheds. I don't think MPS has code that could be causing this, but I have no idea what would, to be honest. This is the SMAPI log: https://smapi.io/log/7ab7b7a11740495f83c9a64cb78ea5cb
Log Info: SMAPI 4.1.9 with SDV 1.6.14 build 24317 on Microsoft Windows 11 Home, with 39 C# mods and 45 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
They need to delete CasksAnywhere (not to be confused with "Casks Everywhere"). It's an obsolete mod from 2019 that isn't on Nexus anymore. Installing it immediately resets my upgraded casks in the cellar for whatever reason.
Thank you so much (again), Esca β€οΈ
https://stardewvalleywiki.com/Modding:Player_Guide/Key_Bindings#Find_the_code_for_a_key
Does anyone know if the test_input command is still available?
[SMAPI] Unknown command 'test_input'; type 'help' for a list of available commands.
Are there any other town building mods besides maledieval and way back pelican town
On YouTube someone showed this yellog town building set but I canβt find it on nexus and only can find a set for this on some other side but itβs not for town buildings
Elle's Town Buildings, Flower Valley, Seaside Valley.
I don't think Yri's Yellog stuff is available anymore (but I say this tentatively because I've never looked)
Yea I think so too sadly
me if you're still interested: two! (1mo ago) [Requested by 6480]
Oh noooo.π
Looks like that was changed to log_context
(though despite the description, it doesn't seem to ever turn off)
@ivory plume re: above, it seems like the log_context command doesn't disable itself when re-entered
https://smapi.io/log/3e7c8bb9bec146fa93e57f70d828e4b2
Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24354 on Microsoft Windows 11 Pro, with 2 C# mods and 0 content packs.
good to know
Monitor.ForceLogContext = true;
but never sets it to false
Hi, I have a little question about Tiled and the farmhouse map and wondered if I am just stupid or if that's really something that won't work.
How is it possible to NOT move the spouse room position (29,4) - (so not making use of the Offset features) and expand the map so I can build rooms above?
I like this set a lot :)) wish this was also there for the town buildings sob
Monitor.ForceLogContext = !Monitor.ForceLogContext
should solve this
@calm nebula: add example to wiki (6d ago)
Hey
if you expand the map above, the y coordinate will change. You can move the rest of the farmhouse done and reconnect the spouse room to your expansion I guess?
There's already a vanilla renovation that goes above the spouse room so you'd clash with that. It's not impossible to work around (by disabling the renovation) but just be aware of it.
As for your actual question: you can't. If you want to expand the map up it will mean the tile coordinates will change.
sup
Remind me in 4 days to add whatever example that was on the wiki
mmmmmmmmmmmmmmmmmmmmmaybe (#6431584) (4d | <t:1735139548>)
I'm going back to bed
For having a Custom NPC have a schedule on a Custom map, should I use the Path icons when making the map in Tiled? I have gotten my NPC to spawn into the map, but he is always looking up and isn't following the schedule I made for him.
I think those path tiles are a legacy thing that doesnβt do anything any more. Npc schedules are pretty complex and are usually done via content patcher
Yeah, I am using Content Patcher for this mod, was just wondering if they were needed, so thank you for clarifying they aren't! Now I just need to figure out why the schedule isn't working lol
Three things you can try to help narrow down the problem: run around the map with your farmer to make sure there's no collision problems stopping the NPC from moving to their schedule coordinates, try setting their home to somewhere else (like town) and seeing what happens with their schedule in case there's a problem with your custom map that you can't find with your farmer, and try copying another NPC's schedule in case I the problem is that you wrote the schedule incorrectly somehow (I've done that a bunch of times when I started out).
Oh and make sure you've given your NPC gift tastes. Not having gift tastes can break an NPC in some incredibly weird ways.
I'll give these a shot, thanks for the help!
I assume your schedule isn't throwing any errors in SMAPI?
is there a guide for creating custom bundles (like Junimo's) that open when you click on an NPC?
||(I'm planning an NPC mouse who will open new locations)||
You can do that with the framework Unlockable Bundles. I think they have an example pack.
Unlockable Bundles mod
i'm not sure you can do that with a NPC but should be close enough
oh..
I'm going to go ahead and assume this is just some very messed up decompilation...
switch (actionType.Length)
{
case 9:
switch (actionType[0])
{
case 'P':
if (actionType == "PlayEvent") ...
Yup
Yeah, SMAPI has no errors on it sadly. Would be easier to troubleshoot them lol
Google "dotnet switch on strings trie"
This is more zoom right
(You may summon an atra with....)
interesting. It's a good implementation, I just wasn't expecting it in the decompiled code haha
if you're talking to me, this is me looking for the door code so I can start working on that mod idea I was talking about earlier lol. If not, sorry, I am very much half awake
I messed with ILSpy 's settings a good bunch and couldn't get it to un-weird-string-stuff it when decompiling, sadly. But it's still reasonable to read so it isn't a huge deal.
access to your official decompilation is for cheetos only, right? I can't wait to be able to access that stuff tbh
Yup, as well as being level 50 or something? I think? I don't remember if that's still a requirement and can't remember where it's written.
the most common reason for that is usually one of your endpoints is not accessible to the NPC (either the tile itself is not a valid place, e.g., a wall, or there's no path from A to B)
it's on a gist nowadays, linked in #roles (and still specifies level 50 for the repo, yeah)
https://gist.github.com/Pathoschild/927aa919a95cf0ddae542749bc9d9847#mod-author-roles
You bear me to it
Real talk answer q in #1272025932932055121
is this to me? and if so, which q?
ohhh I see, tyy
I'm always scared to help people with things like that when I'm new to a server bc what if I do it wrong π time to get over that though
I get the following error message and can't hug or talk to my spouse. What is this error?
[game] NPC 'Yamionisama' couldn't get marriage dialogue key 'funLeave_Yamionisama': not found.
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.
I copy and pasted the gift tastes from the wiki example so that should be fine, and they accept gifts correctly. I tried to place them in the town with a very simple schedule just walking in the town square, but they were still stuck. I copied Pam's schedule and threw that in for a test. but they were still stuck :/ My Custom map is just a straight line with nothing to really block any path, so I am unsure why it is still having issues
Many of the questions in modded support are things like "you didn't install the required mods" or "this mod is from 2019, remove it" or "yup this is a common error, here's the pre-written info for fixing it" so it can be pretty straightforward!
Then there are the things that stump all of us for weeks because they're really esoteric or take 5+ hours of painstakingly trying to explain how to unzip a file...but you don't have to opt in to those xD
super esoteric seemingly cursed bugs are fun to try to patch bc hey, if I suggest something wrong, it's not like any of us know what's up anyway
like with the qi mod the other day
But interestingly I found that my experience helping people in making mods didn't translate over much to helping in modded support because the problems are usually concerning different things. The general experience of being a mod maker definitely helps a lot though.
Lots of tickets at #1272025932932055121 are actually quite basic fixes, some forgot to update, missing dependencies, loose files, etc. The more complex issues, I leave it to the other voluntees and sigh from relief when I see Audri typing 
Vanilla tech support can be more cursed bc if that's not because if any mods, the what in the hell is going on?
on other news, someone commented on my light radius mod that it sometimes covers the entire map... which, yes, would indeed be a result of making a light very big? this "bug" is just the mod working as intended 
Hummm off the top of my head I can't think of anything else right now. Is their dialogue working properly?
Yeah, I just gave them introduction dialogue for testing and that works fine, along with the gift dialogue
Lol yeah Audri is our guru. I mostly do admin (or did - and hopefully will do again).
This includes you as well, Aba. The moment you and Audri chime in, I take a sigh of relief 
clearly I need to spend more time there bc I don't think I know who Audri is...
Audri's our strongest soldier from the support team primarily hanging out and helping people either at #1272025932932055121 or #vanilla-tech-support
She's almost never in here so that's understandable. You'll see her in a lot of support threads though. And vanilla support. Which I avoid like the plague because like Forsy said it's too cursed for me.
also aba fun fact: in Hebrew and some middle eastern languages, "aba" means dad, so your name confuses me literally every time I see it lol
Hahaha π€£ I was under the impression that it was "abba" with two Bs rather than one so I apologise for confusing you!
Audri's usually at the support channels, but yeah you'll see her in other channels as well, even at #modded-stardew
(I did Google in case it meant something awful but clearly I did a bad job if I didn't pick the dad thing up.)
Hmm, I'm not sure why it would be doing that off hand. I won't get a chance to look into it until next weekend most likely, my flight leaves in a few hours
since those languages don't use the latin alphabet, writing it in English can really go either way haha! but dw, I just figured you'd find it funny
tbf I'd imagine the band abba drowned out almost every other search term lmao
It really did lol
way better! 
Maybe try searching this channel for "NPC not moving" or something like that and check for previous people having this issue? I'd search but I don't find it very easy to do on mobile.
You're all good, I think I am just going to switch up my idea for this Christmas gift. Thank you for all your help! Happy holidays!
Standing still can also correlate to a cached schedule, sleep a few days and see if it persists
(Also sometimes we just forget to include the new file we just wrote, so that's my standard suggestion)
(Have a nice flight!!!)
Oh yeah I forgot the sleeping!!! Before you pivot, just try Jamore's suggestion of sleeping to make sure it's not just that you need to sleep a few days to reset the schedule properly.
But if it doesn't work, I'm sorry and hope your new idea works :)
This must've been it! I tried a new save and they actually followed it! Thank you so much!
Thank you for the encouragement, it was needed haha!
thank you!!
Fixed in the upcoming SMAPI 4.1.11. Thanks for reporting it!
keep getting this error, don't know what i'm doing wrong :(
https://smapi.io/log/a9c519f6da8546b0ade068272a1b547b
Log Info: SMAPI 4.1.4 with SDV 1.6.14 build 24317 on Microsoft Windows 11 Home, with 4 C# mods and 1 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
When creating or editing maps in Tiled, one common error is tilesheet climbing, marked by red text containing "invalid tilesheet path '../../..'. This is caused by SMAPI not being able to find the tilesheets needed by the map file. To prevent this error, make sure that you have a copy of all necessary tilesheets in the folder containing your WIP tmx file. Copies of vanilla tilesheets can later be deleted, but must be present while working on your map.
If you get this error with a completed map, an easy way to fix it is to open your tmx file in VS Code or a similar text editor, find all of the places with <image source=, and remove the filepaths to so that only the tilesheet names remain. For example, if the code says <image source="Content (unpacked)/Maps/townInterior_2" width="512" height="64"/>, change it to just <image source="townInterior_2" width="512" height="64"/>.
oh
tried to source it to just deluxe barn.png and content (unpacked)/buildings/deluxe barn.png and the other but its still not working
if you want to add new things to a map you'll have to either do the editmap format or load a tilesheet to Maps/YOURTILESHEET and use it there
if you're directly using the deluxe barn, you'll be seeing the duplicate in the map that you're working on, and the player's deluxe barn will be overwritten with that
if you use the deluxe barn *
what's the use case? use the deluxe barn's texture in a custom map?
yep
already did the first one. has it selected to the right cords
its illegal
tiled doesn't recognize folders outside of the maps folder
ohh ok
should i create a duplicate of the barn file and create a new tile sheet?
(Button might be working on something to allow loading tilesheets outside of Maps idk)
(i wouldn't bet on it because button is finishing school)
yes. unfortunately that does mean no compat with retextures
tbh i think this should be changed from smapi
unless you make compatibility files yourself (which depending on the permissions of the original mod you may not be able to)
ah, that sucks. okay thanks!!
yeah, no
in this case we would need an "asset alias" feature
how much should skipping (small) original methods with harmony prefixes be avoided? idk if it's a good idea for my mod to just skip showlockeddoormessage but I can't think of another way to do things
skipping is a crime but sometimes it's right to do crimes -ichor 2024
use your judgement really
"how often does the game call for this, are you willing to take the risk" - probably button 2024
i think if your transpiler would amount to "pls skip most of this method for me on some condition"
"fuck it skip Game1.update" - Abraham Lincoln 2024
it's a very specialised function that just displayes the door locked message, so I don't think anything vanilla should break just because it's skipped
then it might as well be a prefix lol
I was thinking of doing a prefix anyway lol
if you're just skipping it in a specific, identifiable context for your mod, it's probably alright
but yeah, very contextual
bc I need to skip the whole thing
"draw functions are always moral to skip" - me
the definitely avoid category is skipping prefixes that just rewrite half the function
and unconditionally
this is the full function I'm thinking of skipping:
public virtual void ShowLockedDoorMessage(string[] action)
{
Gender ownerGender = Gender.Female;
string[] ownerNames = new string[(action.Length == 2) ? 1 : 2];
for (int i = 0; i < ownerNames.Length; i++)
{
string ownerKey = action[i + 1];
NPC owner = Game1.getCharacterFromName(ownerKey);
if (owner != null)
{
ownerNames[i] = owner.displayName;
ownerGender = owner.Gender;
continue;
}
if (NPC.TryGetData(ownerKey, out var data))
{
ownerNames[i] = TokenParser.ParseText(data.DisplayName);
ownerGender = data.Gender;
continue;
}
return;
}
string lockedDoorMessage = ((ownerNames.Length <= 1) ? Game1.content.LoadString("Strings\\Locations:DoorUnlock_NotFriend_" + ((ownerGender == Gender.Male) ? "Male" : "Female"), ownerNames[0]) : Game1.content.LoadString("Strings\\Locations:DoorUnlock_NotFriend_Couple", ownerNames[0], ownerNames[1]));
Game1.drawObjectDialogue(lockedDoorMessage);
}
Try to isolate the skip to your use case as much as possible
yeah i hide all of my skip prefixes behind heavy conditions
what r u hoping to do here
it's literally just "make message. show message"
cant believe we r on this door nonsense again
make more immersive "door locked" behaviour
ATRA PUT IT THROUGH FOR ME
listen. what's more fun than dangerous code nonsense?
i had already gotten help doing a transpiler because prior, it was violently gendered
No! Pathos did!
I just asked. Slightly incoherently
Don't give any credit
All credit to the Pathos
if you're planning to replace it completely, a prefix is the simplest way to do it, just...keep in mind that it won't be compatible with anything else that wants to touch the code
I know nothing about transpilers but ig it's time to learn lol
ur decompile is out of date
yeah but you put it in the form of a question via your irritation with the violent genderization as well as me being annoying with it 
but yeah, just modifying it = transpiler, and prefixes are an easy but very messy way to work around that
(meanwhile i'm prefixing monster collision & "find player" just to make them run a little faster)
shit, it probably is, I forgot to do it again ty

ilspycmd -p --nested-directories -r "$GAMEPATH" -o SDV-CSharp "${GAMEPATH}/Stardew Valley.dll" "${GAMEPATH}/StardewValley.GameData.dll" -lv CSharp10_0
it does have the specific: DoorUnlock_NotFriend_NPCNAME
in the new .15, so i mean, you can throw in your new message into that string instead?
u can do i18n randomization on top of it, for a content patcher only solution
I'm going to start with the cursed part that checks if the npc is in the room first and then do the less cursed stuff once that's done
i think i shouldnt go into stranger's rooms regardless of whether they are there
yeah, it will just check if you can knock on the door and they might answer
i.e. if they're in the room, they tell you to go away/ask you what you want (they won't actually go to the door bc I don't want to mess with schedules)
How do you plan on testing this cursed logic?
tbh theoretically I don't even have to get rid of the message bc it's still true, so I could do everything as a postfix... "You are not good enough friends with <x> to enter their room. [next message] leave something outside the door?/[npc dialogue] I'm busy rn"
oh we were talking about that yesterday, but tl;dr is you'd have a rectangle saved for supported (vanilla+supported mods) characters, and for others, I would try to use the pathfinder to see if they can get to their door but not to the player
Now you're thinking like a developer. "How can I solve this problem, without rewriting half my code"
Okay, but you have to program that, and then test to make sure you programed it right. How are you gonna test it?
any way to make wood, stone, trees and weeds not spawn??
same way you test anything else...? I'm not sure I understand your question π
also it's a good thing I'm starting to think like a developer since I have some professional development experience, a CS (and maths) degree and am probably about to go into a development or development adjacent career haha
By hitting play, loading a save, waiting for 7/8am for someone's house to open, walking inside and checking the console?
If you use the stop time command, and hot reload, that might be enough acually
by heavily using cheats and debug commands to put myself in the right situations to test with? and then yes, relying to some extent on the console
if you mean in a map you're making, you could put the tile property NoSpawn: All on every tile, or at least the ones that would be a problem 
(or use map properties to flag the location as indoors, etc, depending on context)
Why is unit testing mods such a hard sell 
oh did not think of that. do you have any documentation on it?
lol I get you, it's just difficult to integrate unit testing into a game modding context
im editing the cindersap forest so i cant mark it as indoors
ty
also ngl when I develop for fun, unit testing can feel a bit much, so unless I'm making a big framework or something, less formal methods of testing are probably fine
(I feel like SMAPI itself is the only place I've seen any unit testing stuff
)
I've written plenty of unit tests in the past, just always for the job I had at the time lol (and once for a uni course where the TAs had less testing experience than I had)
I agree that if you're not doing anything complex, it's not worth it.
ngl I'm just glad the company I worked for at the time wasn't one of the ones that believe that "agile means no testing" and I actually got experience with that stuff
I've never heard of that one before 
I've written a lot of tests while developing my multiplayer mods. They were a huge time-save.
it's unfortunately common in Agile environments, especially startups/newer teams. My dad once even got told "Agile means no documentation" 

