#making-mods-general

1 messages Β· Page 143 of 1

brittle ledge
#

presumably the problem would be friendship decay?

hard fern
#

If you wanted to make an npc dip and not affect perfection can't you just exclude them in some way

uncut viper
#

i would rather not find myself banned from this server

hard fern
#

Or have i been staring at objects.json for too long and think npcs are parsnips

tardy adder
#

They are not?

gentle rose
#

time to add a parsnip npc

brittle ledge
tiny zealot
#

i'll make a mouse, i'll probably end up making a crow, but i draw the line at vegetables

gentle rose
uncut viper
#

but anyway, the main problem would be if them leaving locked you out of any potential recipes

gentle rose
#

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?)

uncut viper
#

also, important to consider multiplayer too

patent lanceBOT
#
#6275

i made a whole NPC and what i learned about was myself ._.

tiny zealot
#

which is to say, sometimes a thing simply must come out of you, at any cost

gentle rose
#

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)

brittle ledge
gentle rose
#

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

wheat oyster
#

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.

gentle rose
#

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... πŸ’€

brittle ledge
ocean sailBOT
#

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!

wheat oyster
brittle ledge
#

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.

gentle rose
#

daisyniko's is another popular tilesheet I think

tiny zealot
uncut viper
#

(that reminds me, i really need to put that mod that lets you use tilesheets from other folders on nexus...)

brittle ledge
#

Cross-Mod Compatibility Tilesheets?

gentle rose
tiny latch
#

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 😭

uncut viper
#

i think thatd make the people who already dislike (lightheartedly) my acronyms swear me off forever

tiny zealot
#

Better Immersive Cross-Mod Tilesheets, then

uncut viper
#

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

gentle rose
#

I'm gonna make a mod that makes everything in the game into an acronym

uncut viper
#

hang a big poster of Lacey's face on the wall with it

tiny zealot
#

i'll stick with the standard-size spouse portrait from the traveling cart SDVpuffersquee

brittle ledge
tiny zealot
#

obviously the game just updated but last i checked doors only really work with the like three hardcoded vanilla doors

tiny latch
tiny zealot
#

getting interior doors to work is asinine and has at least three parts that all need to be correct

tiny latch
#

oh lovely

brittle ledge
#

don't the ones on the tilesheet come with all the tiledata built in?

gentle rose
#

for some tiles, the game detects the tile itself and is able to respond based on that

brittle ledge
#

(if you want it to be a locked door, you have to add some stuff but you can do that in CP)

tiny latch
#

thats what i thought i needed tile data for

tiny zealot
#

(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)

gentle rose
#

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)

tiny latch
tiny latch
latent mauve
#

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

gentle rose
latent mauve
#

(Just the exterior to go before I can publish that!)

tiny latch
tiny latch
vernal crest
#

Use the maps page on the wiki for the specific info about the properties you need

brittle ledge
vernal crest
#

Or just any vanilla map with an interior for

latent mauve
#

^

vernal crest
#

Or door, even

latent mauve
#

I just used HaleyHouse as my guide

#

Worked great, and it's got two of those friendship doors in it

vernal crest
#

Doors are only tricky if you want a custom texture, imo

brittle ledge
#

I mean also as a general example SBVLmaoDog 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

gentle rose
#

looking at SVE is like looking inside a racing car to learn about basic engines lol

brittle ledge
half tangle
#

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

vernal crest
#

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)

tardy adder
#

This reminds me I gotta deal with the BHI NPCs πŸ‘€

hard fern
#

just gotta open my spaceship to use as a reference

gentle rose
#

there are multiple things held togther with zipties, and none of those things look like that's a good idea

velvet narwhal
half tangle
#

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)

brittle ledge
#

cam, did you see the door tutorial on the modding wiki? there's also stuff about door logic there

velvet narwhal
#

(Lockeddoormessage has also changed in .15 to check for the Notfriend_NPCNAME and I am a happy camper)

tiny latch
#

firgured out why i couldn't add objects.. stupid layer was invisible πŸ€¦β€β™€οΈ

half tangle
#

Oh, I hadn't - that looks very cool. Not so relevant to me at this point, but that's some awesome info

gentle rose
#

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

brittle ledge
#

"Sebastian, you little shit, open your door"
"No"
"I have sushi"
"....okay"

velvet narwhal
#

I like this idea, but I also know that npcs are held together with spit, gum, and dreams

half tangle
#

this is true

gentle rose
#

I did think about having it be conditional on whether you have any quests with them/stuff for them

half tangle
#

for that kind of condition you'd need a ConditionalDoor

brittle pasture
#

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

brittle ledge
#

instead of having them walk over, you could just have them respond with "come in" or "go away" which is less NPC stuff?

half tangle
#

oh, or bypass it with C# since that's the context of your message

velvet narwhal
#

(And the pathfinder is held together with rubber bands and candy floss)

brittle pasture
#

the game doesn't know that Sebby is in his room, just that he is in a certain coordinates at a specific time

gentle rose
#

...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

half tangle
#

so I literally am writing code that checks if an NPC is in their room - for totally unrelated reasons from the current conversation...

tiny zealot
uncut viper
#

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?

hard fern
slender badger
gentle rose
#

but also that would be an issue in multi-room houses

uncut viper
#

(BETAS does actually have a GSQ for checking if an NPC is in an area too...)

gentle rose
#

I love how we all know this mod is aimed at sebastian

velvet narwhal
#

(and a problem for any mod that has changed vanilla stares disrespsectfully at...)

pine ermine
#

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.

brittle pasture
#

the alternative is doing computationally expensive flood filling

gentle rose
#

the coordinates one is definitely the safer bet

brittle pasture
#

which is liable to blow up in many different ways

velvet narwhal
#

how expensive is searching each tile for a door action

vernal crest
#

Yeah I immediately thought of Button's check for NPC locations for this.

slender badger
gentle rose
uncut viper
#

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

half tangle
#

(that's a flood fill algorithm)

pine ermine
brittle pasture
#

though flood filling isn't so bad if you're not doing it every tick or something

gentle rose
#

I think

#

idk, it's 3am lmao

#

I worry more about false negatives tbh, some npc rooms are way bigger than others

velvet narwhal
#

how small of a radius we talking though

#

something like fireredlily's boarding house can get crazy real fast

pine ermine
#

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)

velvet narwhal
#

there's no way to hook an event correlated specifically to the LoadString of the door message, is there?

gentle rose
#

regardless of how it's done, this mod idea would have close to 0 other mod compatibility out of the box it looks like

half tangle
#

For that you could check if the player is next to the door

gentle rose
#

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

humble timber
gentle rose
#

since the farmer is pretty unlikely to be locked in, that should do the trick

humble timber
half tangle
#

Create a door that requires 2 hearts to enter and 4 hearts to leave... the player lives there now

uncut viper
#

PathFindController already has 3 findPath functions already you can probably just reuse. they just take points

velvet narwhal
#

we got enough yandere mods, we don't need a framework to create more

gentle rose
#

spiteful mod creation: go out of your way not to be compatible with my mod DogeSmile

gentle rose
uncut viper
#

vanilla

gentle rose
#

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

uncut viper
#

PathFindController itself is not a static class however so you'll need to find or make your own

brittle pasture
#

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

velvet narwhal
#

the funny logic of them always forced right when blocked is fixed, right?

gentle rose
half tangle
#

the idea of making a temporary fake NPC might help there

brittle pasture
#

or have his smoke break walk canceled by you telling him to open the door

brittle ledge
#

(can you actually create a door with different heart levels with ConditionalDoor?)

gentle rose
#

and just do all the actual mod stuff via door messages like was suggested earlier

half tangle
#

ConditionalDoors just take any GSQ

gentle rose
#

cursed alternative: pause the game clock until the npc is back at their original spot

half tangle
#

Doors are coded to only check 2+ hearts

velvet narwhal
#

i'd be lazy and do PLAYER_HAS_MAIL Current {{ModId}}_4Heart Received

half tangle
#

The only ConditionalDoor in vanilla is in the Adventurer's Guild, iirc

uncut viper
#

@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?

velvet narwhal
#

(waits for the ping from tia to say "CAN MY DOOR BE 4--")

half tangle
#

(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))

uncut viper
#

why not just use the GSQ specifically for friendship points

gentle rose
#

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

velvet narwhal
#

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

uncut viper
#

but... they can also just use the friendship points GSQ

velvet narwhal
#

suspicious i use the threshold then

uncut viper
#

(also in case someone didnt know, you can also customize the message that is shown when failing the condition on a ConditionalDoor)

brittle ledge
#

[slams palm on the randomization button]

uncut viper
#

what'd i do

calm nebula
#

(Fwiw I've given way too much thought on the whole pathfinder)

calm nebula
brittle ledge
calm nebula
#

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

slender badger
uncut viper
#

you can make custom data models yeah

brittle pasture
#

yeah custom assets

uncut viper
#

thats how a lot of frameworks work now after 1.6 with CP

gentle rose
slender badger
#

Aha, it is called a data model! I second-guessed myself and removed it from my message, haha

gentle rose
#

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

brittle ledge
#

I would use it!

uncut viper
#

if you'd have mods editing the custom asset anyway, you might as well just have them define rectangles

brittle pasture
#

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

brittle ledge
#

(the server owner likes Seb, you'd score some points SBVLmaoDog )

velvet narwhal
#

that's like, the majority of the vanilla isn't it

gentle rose
#

seb simps getting to talk to him through a door: kermie

#

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 😭

brittle pasture
#

there's a delay yeah

#

maybe another day

velvet narwhal
#

i just don't think about it

uncut viper
#

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

gentle rose
#

I'm just nosy and want to see what the recognised modder thing does lol

uncut viper
#

literally nothing but make you think you mightve been banned for a split second

velvet narwhal
#

uh, a little title if you've never had nexus premium

brittle ledge
#

you get access to their discord and also no ads

uncut viper
#

i stand corrected. literally nothing useful*

gentle rose
brittle ledge
#

okay, the discord's not useful, but the no ads is if you're on mobile

uncut viper
#

i have an adblocker on mobile!

gentle rose
#

on all devices

#

and it's way more effective than browser ad blocking

brittle pasture
#

also you need verified status to opt in to DP right, or am I misremembering

brittle ledge
#

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 SDVpuffersquee

uncut viper
#

i didnt need to be verified to opt in to DP

velvet narwhal
#

no, i've had dp on the entire time

uncut viper
#

i was earning very tiny amounts for like a year before i got verified status

gentle rose
#

I think I can opt individual mods to DP rn

vernal crest
#

Nah I've got like 150 UDL and I'm opted in for dp.

slender badger
#

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

gentle rose
#

it's not worth it but I could SDVkrobusgiggle

slender badger
#

Since there's been a ton of spam recently

gentle rose
uncut viper
#

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

vernal crest
velvet narwhal
#

(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

uncut viper
#

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

brittle ledge
#

I'm not sure if it's retroactive?

velvet narwhal
#

i just don't want the comments tab, -10 sanity and all that

gentle rose
#

I think it isn't? from what I remember from their post

velvet narwhal
#

my bug reports are always open to the public

brittle ledge
#

you should be well above the threshold to turn it off

vernal crest
gentle rose
#

also can't hide the file archive if you aren't verified

vernal crest
#

Or did I misunderstand what you were saying Avi

uncut viper
#

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β€”

hard fern
#

I always get scared when i see it then breathe a sigh of relief because it's just smapi πŸ˜”

uncut viper
#

nice little reminders like "oh yeah! people enjoy my little things"

velvet narwhal
gentle rose
#

can't disable comments, can't ENable discussions

gentle rose
#

can confirm it's disabled on mod creation too

velvet narwhal
#

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

tiny zealot
gentle rose
velvet narwhal
#

god i still wanna make the

uncut viper
#

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

velvet narwhal
#

"Reading Comprehension" mod, with the offshoot requirement "Congratulations for reading" mod

uncut viper
#

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

brittle ledge
#

contents: readme.txt

tiny zealot
#

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

pine ermine
#

How do I make an NPC that doesn't appear anywhere physically in the game?

uncut viper
#

like, with C# or

velvet narwhal
#

what do you mean by that

gentle rose
tiny zealot
pine ermine
#

If there's a way to do it without C# that'd be better

uncut viper
velvet narwhal
#

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

brittle ledge
#

What are you envisioning this not-NPC would be able to do?

uncut viper
#

(not that im supporting the idea of a non-romanceable lacey)

vernal crest
gentle rose
velvet narwhal
#

(unless .15 fixed that) but other thant hat SetInvisible <NPC> right?

uncut viper
#

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"

vernal crest
#

Does Lacey not have a platonic path? I've just been assuming she does.

tiny zealot
#

she doesn't, actually!

latent mauve
pine ermine
teal bridge
brittle ledge
gentle rose
brittle ledge
uncut viper
#

thats quite a bit different from wanting a non-romanceable version

brittle ledge
#

but I think a lot of folks have gotten away from that

pine ermine
#

I basically need everything that comes with an NPC except being there physically

vernal crest
gentle rose
#

could you schedule the "dummy" npcs to just stay in an empty warp room (but without warps) for their entire schedule?

#

oh oops lol

pine ermine
#

How do Ido that?

tiny zealot
latent mauve
#

A lot of people just throw NPCs in a void room

pine ermine
#

How do I throw my wife in the void?

brittle ledge
#

Now look here, this is a family friendly server and we do not condone wife-tossing

gentle rose
# pine ermine How do Ido that?

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

vernal crest
#

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).

brittle ledge
#

but also if your NPC is constantly in a warp room I don't know how you'd progress heart levels with them

latent mauve
#

Please put your divorced spouses in an apartment instead of the void, please ❀️

brittle ledge
#

no. the void is full. no vacancies.

vernal crest
pine ermine
tiny zealot
pine ermine
#

Is there a pre-made warp room I can borrow from somewhere?

vernal crest
#

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

latent mauve
#

Is this a proxy marriage situation, linkoid? Or a parallel for a long distance relationship?

pine ermine
#

It's a mod

#

Context helps I guess :P

brittle ledge
#

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

pine ermine
#

I have already solved that problem

#

It already wors

#

*works

vernal crest
pine ermine
#

my only problem is that the dummy NPCs are standing in the middle of town.

uncut viper
brittle ledge
#

I just basically trimmed four tiles from BusStop for mine

pine ermine
vernal crest
tiny zealot
#

(he was in your house the whole time, just on the ethereal plane)

vernal crest
#

They used to show up on the map in NPC map locations and UI Info Suite but both mods have recently fixed that.

uncut viper
#

(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)

calm nebula
#

New Halloween mod idea

uncut viper
#

gotta wait til next years mod jam

pine ermine
#

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.

vernal crest
#

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.

uncut viper
#

remind me in 285 days to remember the invisible NPC halloween mod idea

patent lanceBOT
#

Roger that, spiderbuttons (#6430899) (285d | <t:1759378026>)

uncut viper
#

that was supposed to be october 1st for me... curse you EST vs EDT, i guess

velvet narwhal
pine ermine
#

How do I make an NPC invisible? Can't find anything about it on the wiki.

vernal crest
#

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.

uncut viper
#

(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)

calm nebula
#

Also, [hiatus] and [hiatus]

vernal crest
lucid iron
#

this channel is pretty good at this retirement thing

velvet narwhal
#

for legal reasons, i am to be unknown, i guess i can set myself to πŸ‡― amore

vernal crest
#

I'll be off hiatus soon!

#

Hopefully anyway

pine ermine
#

!triggeractions

#

!acions

#

!actions

#

!trigger

velvet narwhal
#

[[Modding:Game_state_query}}

tiny zealot
#

[[Modding:Trigger_actions]]

teal bridge
velvet narwhal
#

oh i made curlies

uncut viper
calm nebula
#

Hiatus is different from retirement

tiny zealot
#

(sometimes)

calm nebula
#

Hiatus is "taking a break"

teal bridge
#

Haha, ok. You could always ask uber to remind you.

#

But I will, eventually, remember to get to it in a few weeks myself.

calm nebula
#

Retirement is "okay, and I probably won't ever have time again."

#

Says the person who is now turning into an insufferable gym rat

uncut viper
#

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

calm nebula
#

So a 50% of a Halloween mod got it

velvet narwhal
#

uber holds no sway over me with a command i gave it some days prior to tell future me what to do

teal bridge
#

"Pffft, who listens to Past Button anyway? I'm Present Button!"

uncut viper
#

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

pine ermine
#

How would I make an NPC invisible from C#, that honstly seems easier at this point :P

vernal crest
#

Trigger actions are super easy, I promise

calm nebula
#

Probably tbh

uncut viper
#

the trigger action just does what the game does

calm nebula
#

You just....set their daysUntilNotInvusublr to int max value

uncut viper
#

it sets npc.IsInvisible and npc.daysUntilNotInvisible

#

with a check to make sure the NPC exists

pine ermine
#

Yeah, that sounds easier and would fix the day 1 issue

uncut viper
#

im not sure it has any bearing on the day 1 issue

pine ermine
#

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

uncut viper
#

make sure they're excluded from perfection

pine ermine
#

They are

patent lanceBOT
#

@tardy adder: You was supposed to be reminded. (2h ago)

pine ermine
#

This should be the last bug. Now I can procrastinate until people bug me about all the events being too boring and unoriginal.

lucid iron
#

Just add a sdv event editor in game ez

#

Stardew film maker AquaThumbsup

gentle rose
pine ermine
#

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

velvet narwhal
#

oh is that what you were talking about earlier with the personal stuff

pine ermine
#

No

lucid iron
#

I am glad it is presumably a sweet gesture for your beloved rather than oops i commit my secret keys

pine ermine
#

I know better than to leak API keys :P

gentle rose
pine ermine
#

Oh no, I accidentally leaked the key to my heart on GitHub SDVpufferwaaah

tender bloom
#

Last Christmas, I merged in my heart…

gentle rose
#

babe. will you take this PR and be my lawfully wedded wife?

tender bloom
#

The very next day, you reverted my commit…

gentle rose
rose ivy
#

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!

tender bloom
#

You can

velvet narwhal
#

"spawn" is a broad term, setting their home? yes
setting their schedule? yes

tender bloom
#

It’s pretty much the same as spawning them anywhere

velvet narwhal
#

getting them to pathfind correctly? questionable

lucid iron
#

well u can always banish them to the npc warp house

#

and let them out where u want em

rose ivy
#

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'.."

uncut viper
#
"Tile": {
  "X": 285,
  "Y": 15
}
#

thats how it needs to look in their home data

rose ivy
velvet narwhal
#

just curious, are you looking through a tutorial?

rose ivy
#

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"
}
]

tender bloom
#

Which wiki?

velvet narwhal
rose ivy
velvet narwhal
#

it's on the main wiki, yeah

rose ivy
#

Its the one that linked to this discord

velvet narwhal
#

ig i can change that, idk why it's like that

tender bloom
#

Interestingβ€”yeah that should be updated probably

velvet narwhal
#

gimme a sec

#

in the meantime

#

!npc

ocean sailBOT
#
Creating a Custom NPC

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:

tender bloom
#

Thank u Jamore

#

Wow does autocorrect hate me

velvet narwhal
#

no it hates my πŸ‡― ailed name

lucid iron
#

j'amore

rose ivy
#

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!

uncut viper
#

if this is for a Christmas gift then, good luck,

velvet narwhal
#

yoba-speed, soldier

rose ivy
#

I appreciate it lol, should be smooth sailing from here fingers crossed haha

lucid iron
#

so who won the gamble on how many patch versions for 1.6.9+

velvet narwhal
#

me

rancid temple
#

Is .15 the for sure final?

brittle pasture
#

I don't remember what I bet but I'm sure I won somehow

rancid temple
#

We all win when the game keeps getting updates

lucid iron
#

cant believe they fixed the fridge <2weeks after i had to do transpiler for it

rancid temple
#

What was wrong with fridge?

pine ermine
#

beat me to it

rancid temple
#

You know what the lesson here is? Procrastinate longer, someone else might fix it instead

lucid iron
#

it didn't respect chest size

brittle pasture
#

or be annoying and pester Pathos, that works too

#

(my lawyer has advised me to clarify that that was a joke)

lucid iron
#

i had to change it so the game forgets its a fridge when opening the menu

pine ermine
#

big fridge go brrrrr

rancid temple
#

Oh, so how does it work now?

#

I'd love if I could use the bigger chest size for my global inventory

lucid iron
#

The chest.sourceItem field is no longer null for fridge chests.

uncut viper
lucid iron
#

let me actually try in game

#

i doubt they fixed the 184 crash tho

velvet narwhal
#

i love my divisible by 5

lucid iron
#

yep it works now, only need a postfix on GetActualCapacity

brittle pasture
#

whoo

velvet narwhal
#

that is definitely... a big boy fridge

lucid iron
#

and no color picker wew

velvet narwhal
#

i can finish the collection with one fridge instead of... 12

lucid iron
#

yea 185 slots still crashes the chest lol

brittle pasture
#

big enough to store my stacks of fresh and non-fresh veggies

pine ermine
#

Why that number specifically?

lucid iron
#

i dunno it happens in SetupBorderNeighbors and i aint looking in there

#

prob some nonsense for gamepad support

velvet narwhal
#

how much do i pay for pagination

pine ermine
#

pls πŸ™

velvet narwhal
#

link: "i am morbidly curious, but also, i have a violent need"

lucid iron
#
[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)
rancid temple
#

Do I just set the sourceItem to a big chest?

velvet narwhal
#

oh the decomp hates setupborderneighbors

lucid iron
#

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

gentle rose
lucid iron
#

can u stop ping me when im right here monS

gentle rose
#

sorry, mb! I'm used to it from other servers

lucid iron
#

well this is what the smapi error handling already does i thought

velvet narwhal
#

what's the thing, ctrl+reply? turns off pings

uncut viper
#

you can patch a function with a finalizer to catch exceptions actually

gentle rose
#

ooo good to know for when I'm not on mobile, ty

lucid iron
#

shift reply i think

rancid temple
#

Well, just setting the sourceItem to a big chest doesn't work SDVpufferpensive

lucid iron
#

the stack trace only says big chest cus

#

i happened to test 184 crash on big chest

rancid temple
#

Oh I was trying to make my global inventory a big chest instead

lucid iron
#

ah i see Bolb

#

but u should be able to just patch GetActualCapacity

rancid temple
#

I'm not using a capacity

#

When I go over the end it just overflows and fills as necessary

lucid iron
#

this controls how much appears tho

rancid temple
#

If I put a capacity then it won't overflow anymore

lucid iron
#

doesnt that stuff happen somewhere else think

rancid temple
#

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

teal bridge
velvet narwhal
#

eventually i'll just Do It Myself ℒ️

teal bridge
#

(Time for "Better Backpacks")

velvet narwhal
#

tbh automate might already have what i'm thinking of, which is connected fridges

lucid iron
#

nintendo made a inventory thats like

#

1 x infinite

#

if thats good enough for zeldo its good enough for u

rancid temple
#

Nintendo frequently makes terrible design decisions

teal bridge
#

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.

pine ermine
#

I suspect the cause is that this function is returning more columns than there actually are.

uncut viper
#

i think someone should mod stardew to replace the inventory with a weight-based one instead

#

with carrying capacity

rancid temple
#

Games without infinite inventory get modded

brittle pasture
#

consider: Resident Evil 4 style inventory management
imagine dealing with that every time you open a chest

lucid iron
#

fun Dokkan

rancid temple
#

Ew

teal bridge
rancid temple
#

That was the worst part of RE4 and that game had fucking QTE's

velvet narwhal
#

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)

lucid iron
#

yea hm it does make some sense that 185 is die specifically

uncut viper
#

and then eventually, maybe someone will mod it to turn it back into slots instead

brittle pasture
#

my inventory after going to coops and a fishing trip

lucid iron
#

cus theres 5 rows

brittle pasture
#

ignore the guns

lucid iron
#

but why does 36 col work but 37 dont

uncut viper
#

thank you for the visual aid i had no idea what youmeant with the RE4 thing

teal bridge
#

Game: "You are over-encumbered"
Me: player.setav carryweight 99999999

rancid temple
#

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

pine ermine
rancid temple
#

Big chests are much wider

teal bridge
#

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?

pine ermine
#

Yeah, it doesn't look like it.

brittle pasture
#

that's like better chest's feature list right there

teal bridge
#

I dunno... somehow Better Chests never clicked with me. It's not exactly the same.

rancid temple
#

SDVpufferwoke StardewUI's next feature inventories?

uncut viper
#

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

rancid temple
#

Better stack splitting would be nice

teal bridge
rancid temple
#

SDV's stack splitting stuff is... unwieldy

teal bridge
#

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"?

uncut viper
#

yes

#

i want to give my partner specific amounts of things

tawny ore
#

Better Chests has infinite backpack inventory built in but it can only be enabled by manually changing the config.json file

teal bridge
#

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.

uncut viper
#

different qualities

lucid iron
#

I like the idea of item bags

tiny zealot
#

i think i would lose my mind with an infinite inventory

rancid temple
#

Oh yeah, I wasn't worried about separate stacks, just dealing with the amount of the one stack

lucid iron
#

It sorts ur shit for u into slots

rancid temple
#

But I do see how quality would be an annoyance

teal bridge
# lucid iron I like the idea of item bags

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)

rancid temple
#

Unless each stack of items breaks out into a separate context inventory that contains the various qualities

lucid iron
#

Yeah but also a mod named that

tawny ore
brittle pasture
#

I would use item bags if they didn't pigeonhole their data model into having to manually add compat for every mod

lucid iron
brittle pasture
#

pls... context tags support... I have twelve hundred crops and artisan goods... I can't add compat for all of them

rancid temple
#

I've never liked the idea of carrying a bunch of inventories in my inventory

tiny zealot
#

i made the storage mod i wanted, which is portable hole

teal bridge
#

It's been done in various ways, of course, but I feel like it's unwieldy.

tiny zealot
#

which is barely even a storage mod, really. it doesn't change anything about the interface or whatever

lucid iron
#

But tbh i don't particularly need anything besides just moar chest space

gaunt orbit
#

I made a storage building with a scrollable storage interface

teal bridge
#

I dunno, moar chest space seems like all you need until your chest has 5000 items and then suddenly you need organization.

pine ermine
#

All I need is a bigger landfill

uncut viper
#

i need stardew AE2

teal bridge
#

I might as well just redo the vanilla inventory menu, for the lulz.

tawny ore
#

I mean that is something my mod tried to do even though a lot of people don’t like it. Search bar, tabs, organization.

gaunt orbit
#

I like the search bar

teal bridge
#

People like simple search, where you just type text and it finds stuff. Advanced search is for... more advanced users.

gaunt orbit
#

The tabs were always weird for me bc I tend to sort by chest anyways and color code them

rancid temple
#

I love the search from MC where you can also search from like specific mods

teal bridge
#

And yeah, tabs are already kind of weird if you are using separate chests. Less weird IMO if you have one consolidated infinite inventory.

tawny ore
#

In my modded playthrough I usually do the unlimited Junimo chest and call it a day

tawny ore
#

Throw everything into one and then use the filtering features to find what I need

teal bridge
#

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.

tawny ore
#

Not to mention carrying a Junimo chest so I have access to everything from everywhere

teal bridge
#

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.

pine ermine
#

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

tawny ore
#

The tabs were supposed to be the controller friendly alternative to the search bar

teal bridge
#

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.

brave fable
teal bridge
#

lol, "Diablo and Titan Quest did it and those were super popular so it must be good design!"

rancid temple
#

Happy to see QTE's die, wish that had gone with it

uncut viper
#

i like the tetris inventories

rancid temple
#

I spent enough time pointlessly shuffling shit around a retail store shelf thanks

pine ermine
#

shuffle shuffle

teal bridge
#

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.

brave fable
#

i love weighing up my options between an actual item and a big ass bass

#

preferably 20 bass

teal bridge
#

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.

brave fable
#

carry weight doesn't consider that an item is simply too long to fit between my vast bass

rancid temple
#

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

brave fable
#

you say that like resident evil doesn't also have the wood block puzzle

rancid temple
#

Does a puzzle exist? If yes, it's in an RE game somewhere

#

Probably several

brittle pasture
#

the reason Umbrella corp lasted that long is that law enforcement couldn't get through their wack ass puzzle doors

rancid temple
#

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

teal bridge
#

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.

brave fable
#

Mr. X 🀝 Mr. Qi
dumb ass puzzles

rancid temple
#

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

teal bridge
#

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.

rancid temple
#

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

uncut viper
#

sounds like you should put those chests in a hole. maybe one that can be moved around, for portability

rancid temple
#

I did consider it dogekek

teal bridge
#

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.

rancid temple
uncut viper
#

thank u i earn a commission on every UDL as a result of my actions

brittle pasture
teal bridge
#

Well, encumbrance and limited space together are just ridiculous.

#

It's always one or the other.

rancid temple
#

Not even Bethesda is that cruel

brave fable
#

how unimaginative. punish those players

brittle ledge
#

I don't think Stardew is suited for an encumbrance mechanic, even with infinite inventory.

brittle pasture
#

carrying radioactive ore should also deal gradual radiation damage

rancid temple
#

This can all go hand in hand with the item spoilage mod

brittle ledge
#

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

teal bridge
#

I don't think any games are suited for encumbrance mechanics! But that's why the experiment is interesting.

brittle pasture
#

carrying manure should make you lose friendship with villagers when you walk near them

pine ermine
rancid temple
#

Realistic bathroom needs mod

#

No bathroom on your farm? Better get a mop

uncut viper
#

one of my favourite games has encumbrance as a very core mechanic SDVpuffersmile i think it can work somtimes just like any other typically good mechanic can not work sometimes

teal bridge
#

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.

brittle ledge
#

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).

pine ermine
#

Lethal Company has both limited inventory and encumbrance.

rancid temple
#

I actually hated it in both BotW and TotK dogekek

uncut viper
#

lethal company is a very good example of that actually

rancid temple
#

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

brittle ledge
#

Yeah it's not universal SBVLmaoDog but I actually liked having to switch up my weapons. And you had the master sword if you wanted a break from it.

rancid temple
#

BotW with the Master Sword exploit was hilarious

patent lanceBOT
#

@calm nebula: go outside and howl at the moon (4h ago)

teal bridge
#

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.

rancid temple
teal bridge
#

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.

rancid temple
#

No matter how good you are or how hard you try, you eventually will lose

uncut viper
#

im not sure what the point is there though, plenty of games have that mechanic

#

one of them was up for GOTY

rancid temple
#

I tend to avoid them lizDerp

teal bridge
#

Which mechanic are we talking about here, durability or randomization?

uncut viper
#

the inevitable failure mechanic

teal bridge
#

Oh, that.

brittle ledge
#

that's why I prefer roguelites over roguelikes SDVpuffersquee

pine ermine
#

Remind me in 30 min Why are I still here?

rancid temple
#

Apparently Uber doesn't want to

brittle ledge
#

bot says no

pine ermine
#

.<

uncut viper
#

it doesnt know what a min is

teal bridge
#

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.

pine ermine
#

Remind me in 30 minutes Why are I still here?

patent lanceBOT
#

ehhhhhhhh ok (#6431051) (30m | <t:1734764020>)

brittle ledge
#

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.

velvet narwhal
#

If you're crazy enough, the bbeg of my expansion is killable from 100khp

rancid temple
#

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

velvet narwhal
#

No flags to reduce difficulty, no aids, raw dog it SMCKekLmaoDog

uncut viper
#

this is probably all very far from being on topic for stardew modding at this point, though

rancid temple
#

Like I play idle games, I'm apparently all for games with no win condition

pine ermine
#

Stardew Endless Survival Mod when?

teal bridge
#

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.

brittle ledge
#

Someone did do a randomizer roguelike of stardew.

rancid temple
#

Unless, we pivot to what an idle game in Stardew would be

tardy adder
#

Wasn't there a Don't Starve mod for SDV?

#

Or did I dream that

brittle ledge
#

there is, I think it just adds items, not mechanics

tardy adder
#

It is a start

brittle ledge
pine ermine
#

You are in crippling debt to the Joja Mafia, and have meet quota, otherwise they tie you up and dump you in the ocean.

rancid temple
#

Okay but actually the Skull Caverns is a good setting for an idle game

brittle ledge
#

You could potentially do something fun with the fact that stardew does have different aspects (farming/foraging/mining/social/etc)

teal bridge
brittle ledge
#

but also the next person that makes a "chop wood, mine iron" game gets smacked with a newspaper

teal bridge
#

Chop wood, mine coal?

rancid temple
#

Instead of having the farmer going to do those extra actions that give you resources to upgrade, you would have little Junimos

teal bridge
#

It's a twist!

tardy adder
#

chop iron, mine wood

brittle ledge
#

πŸ—žοΈ

rancid temple
#

This is literally just a reskin of every fucking idle game ever

pine ermine
#

Fine, it can be a FPS instead

teal bridge
#

Hahaha, farming FPS. That I'd like to see.

brittle ledge
#

we already have Doom in Stardew SBVLmaoDog

teal bridge
#

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.)

pine ermine
#

Doom guy doesn't need to mine for coal though, he just steals the demon's Christmas gifts

rancid temple
#

Trying to decide how I should patch GetActualCapacity so it only affects my one inventory...

brittle pasture
#

slime rancher is kinda a farming fps

#

though it's mostly ranching, and any farming is to feed your 'livestock'

rancid temple
#

Oh yeah, it kind of is

teal bridge
#

That's first person? I thought it was 3P for some reason.

pine ermine
rancid temple
#

Hm, instance is chest though and I'm not technically using one

teal bridge
#

Their website hurts my eyes. So much iPhone mobile game energy.

uncut viper
hard fern
#

πŸ˜” i can't play slime rencher bc i am allergic to 1st person games (i get nauseous)

rancid temple
brittle pasture
uncut viper
#

are you not calling GetActualCapacity from a fake chest?

rancid temple
#

Nope, ignoring inheriting chest entirely

uncut viper
#

im confused. why are you calling Chest.GetActualCapacity then

rancid temple
#

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

pine ermine
#

Oh

rancid temple
#

I was trying to mimic that functionality on a global inventory

pine ermine
#

Why do you need a patch then?

rancid temple
#

I want big box meow_bongoderp

#

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

pine ermine
#

You would have to make a fake chest then

uncut viper
#

but if it calls GetActualCapacity then it must be creating a chest at some point?

rancid temple
#

Well it only calls that if a chest exists

#

Which I'm not using one so it don't

uncut viper
#

then what would patching GetActualCapacity do

rancid temple
#

I guess I can just set ItemsToGrabMenu to my own InventoryMenu

rancid temple
#

Well I tried supplying it a chest and the size didn't change and chu said to patch GetActualCapacity lizDerp

#

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

pine ermine
#

Just write a postfix that creates your own InventoryMenu

#

a postfix for ItemGrabMenu's constructor

uncut viper
#

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

pine ermine
#

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

lucid iron
#

A very loaded "best"

patent lanceBOT
uncut viper
#

what happened to the why

rancid temple
pine ermine
#

What happened to the "You"?

rancid temple
#

Uber tries to frame it from your perspective

#

If you use words like that

teal bridge
#

And failed this time, apparently.

rancid temple
#

Spectacularly

velvet narwhal
#

Existential crisis, uber

rancid temple
#

Oh I know why the SpecialChestType isn't working

#

Fucking this

#

Well I think I know anyways

pine ermine
#

A revers transpilier can fix that

velvet narwhal
#

The one time a reverse has higher importance

rancid temple
#

I'm barely passable at regular transpilers SDVpufferpensive

pine ermine
#

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.

tender bloom
#

Step 1: learn black magic?

rigid musk
#

I wish I understood even a fraction of that

#

You guys talking about all those fancy things seems so interesting

rancid temple
#

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

rigid musk
#

Learning to code has been diffcult where im doing it by myself ...-

teal bridge
#

Harmony isn't blindfolded though, it can give you debug output.

pine ermine
teal bridge
#

You want to do it blindfolded, try using the Reflection.Emit APIs all by themselves.

uncut viper
#

i just test them by hot reloading until its right SDVpuffersmile

proud wyvern
#

ValleyUnit?

teal bridge
#

You can hot reload transpiler patches?

uncut viper
#

linkoid made a unit tester called ValleyUnit

#

for stardew mods

teal bridge
#

(Integration test)

uncut viper
#

im just goin off what the repo description says

#

dont blame me

pine ermine
#

It's a mix between the two really :P

uncut viper
teal bridge
#

Eeeeewww, I think I'll stick to my [HarmonyDebug].

uncut viper
#

much quicker for fixing off-by-one-line errors

#

especially since i can just log the IL every time i do anyway

proud wyvern
#

in a way, you can hot reload anything with that

teal bridge
#

Fortunately, I don't have to worry about this since my patches always work the first time. SDVpufferchicksolid

teal bridge
sharp plover
#

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

teal bridge
#

!commissions

ocean sailBOT
teal bridge
#

@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.

velvet narwhal
winged basin
velvet narwhal
#

(garbage collector)

tight loom
#

Hi guys! I released a mod, can someone publish it to #mod-showcase ? πŸ₯Ή

velvet narwhal
tight loom
#

blurb?

velvet narwhal
#

usually people say something click-worthy or any special features of the mod not included in the description

tight loom
#

oh okay, you don't have to put anything πŸ˜„

#

thank you so much!!! ❀️

granite bluff
#

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. :/

velvet narwhal
#

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

granite bluff
#

i will try : ) - didnt work :/

#

i tried a different browser, same issue

rancid temple
#

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

velvet narwhal
#

(CF has a clause that they own your mod if you post iirc)

rancid temple
#

I'm not sure if that's still accurate but it was during their little mod contest thing

velvet narwhal
#

moddrop too, but last i heard "it sucks" KEK

rancid temple
#

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

granite bluff
#

thx i will try and wait SDVkrobussad

distant radish
#

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

ocean sailBOT
#

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

royal stump
distant radish
silver coral
winged oyster
#

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

devout otter
#

Elle's Town Buildings, Flower Valley, Seaside Valley.

winged oyster
#

Thank you :))

#

For me the flower valley one doesent work

vernal crest
#

I don't think Yri's Yellog stuff is available anymore (but I say this tentatively because I've never looked)

winged oyster
#

Yea I think so too sadly

patent lanceBOT
#

me if you're still interested: two! (1mo ago) [Requested by 6480]

drowsy pewter
#

Oh my god

#

Nobody asked you robot

devout otter
#

Oh noooo.πŸ˜†

royal stump
#

(though despite the description, it doesn't seem to ever turn off)

ocean sailBOT
#

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.

silver coral
silver coral
tropic bronze
#

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?

winged oyster
#

I like this set a lot :)) wish this was also there for the town buildings sob

silver coral
patent lanceBOT
#

@calm nebula: add example to wiki (6d ago)

calm nebula
#

Hey

gentle rose
vernal crest
gentle rose
calm nebula
#

Remind me in 4 days to add whatever example that was on the wiki

patent lanceBOT
#

mmmmmmmmmmmmmmmmmmmmmaybe (#6431584) (4d | <t:1735139548>)

calm nebula
#

I'm going back to bed

rose ivy
#

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.

gentle rose
rose ivy
#

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

vernal crest
# rose ivy Yeah, I am using Content Patcher for this mod, was just wondering if they were n...

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).

vernal crest
rose ivy
#

I'll give these a shot, thanks for the help!

brittle ledge
#

I assume your schedule isn't throwing any errors in SMAPI?

hoary zodiac
#

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)||

brittle ledge
tender bloom
#

Unlockable Bundles mod

hallow prism
#

i'm not sure you can do that with a NPC but should be close enough

hoary zodiac
#

oh..

gentle rose
#

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") ...
calm nebula
#

Yup

rose ivy
calm nebula
#

Google "dotnet switch on strings trie"

lucid iron
#

This is more zoom right

calm nebula
#

(You may summon an atra with....)

gentle rose
gentle rose
# lucid iron This is more zoom right

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

rancid musk
gentle rose
rancid musk
#

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.

brittle ledge
calm nebula
#

You bear me to it

gentle rose
#

and I thought I only had to yap til level 25... /lh

#

thanks guys!

calm nebula
gentle rose
calm nebula
#

Yup. Level up fast in tech support

gentle rose
#

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

serene quarry
#

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.

hard fern
#

Missing a dialogue key

#

!json?

#

!json

ocean sailBOT
#

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.

rose ivy
# vernal crest Oh and make sure you've given your NPC gift tastes. Not having gift tastes can b...

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

vernal crest
# gentle rose I'm always scared to help people with things like that when I'm new to a server ...

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

gentle rose
#

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 snort like with the qi mod the other day

vernal crest
#

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.

round dock
#

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 SBVMischief

hard fern
#

Vanilla tech support can be more cursed bc if that's not because if any mods, the what in the hell is going on?

gentle rose
#

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 SDVkrobusgiggle

vernal crest
rose ivy
vernal crest
round dock
#

This includes you as well, Aba. The moment you and Audri chime in, I take a sigh of relief SBVMischief

gentle rose
#

clearly I need to spend more time there bc I don't think I know who Audri is...

round dock
vernal crest
#

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.

gentle rose
#

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

vernal crest
round dock
#

Audri's usually at the support channels, but yeah you'll see her in other channels as well, even at #modded-stardew

vernal crest
#

(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.)

next plaza
gentle rose
gentle rose
vernal crest
#

It really did lol

gentle rose
#

way better! snort

vernal crest
rose ivy
velvet narwhal
#

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)

vernal crest
rose ivy
rose ivy
serene quarry
ivory plume
tiny latch
ocean sailBOT
#

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

velvet narwhal
#

uhh what's the command

#

!tilesheetclimbing

ocean sailBOT
#

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"/>.

tiny latch
#

ohhh ok ty

#

okay so i tried doing it, but it's still not recognizing the deluxe barn

velvet narwhal
#

oh

tiny latch
#

tried to source it to just deluxe barn.png and content (unpacked)/buildings/deluxe barn.png and the other but its still not working

velvet narwhal
#

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 *

brittle pasture
#

what's the use case? use the deluxe barn's texture in a custom map?

tiny latch
lucid iron
#

its illegal

velvet narwhal
#

tiled doesn't recognize folders outside of the maps folder

tiny latch
brittle pasture
#

(Button might be working on something to allow loading tilesheets outside of Maps idk)

velvet narwhal
#

(i wouldn't bet on it because button is finishing school)

brittle pasture
lucid iron
#

tbh i think this should be changed from smapi

brittle pasture
#

unless you make compatibility files yourself (which depending on the permissions of the original mod you may not be able to)

tiny latch
brittle pasture
gentle rose
#

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

lucid iron
#

skipping is a crime but sometimes it's right to do crimes -ichor 2024

brittle pasture
#

use your judgement really

velvet narwhal
#

"how often does the game call for this, are you willing to take the risk" - probably button 2024

lucid iron
#

i think if your transpiler would amount to "pls skip most of this method for me on some condition"

brittle pasture
#

"fuck it skip Game1.update" - Abraham Lincoln 2024

gentle rose
#

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

lucid iron
#

then it might as well be a prefix lol

gentle rose
#

I was thinking of doing a prefix anyway lol

royal stump
#

if you're just skipping it in a specific, identifiable context for your mod, it's probably alright

#

but yeah, very contextual

gentle rose
#

bc I need to skip the whole thing

brittle pasture
#

"draw functions are always moral to skip" - me

lucid iron
#

the definitely avoid category is skipping prefixes that just rewrite half the function

#

and unconditionally

gentle rose
#

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);
    }
acoustic summit
#

Try to isolate the skip to your use case as much as possible

velvet narwhal
#

yeah i hide all of my skip prefixes behind heavy conditions

lucid iron
#

what r u hoping to do here

gentle rose
#

it's literally just "make message. show message"

lucid iron
#

cant believe we r on this door nonsense again

gentle rose
velvet narwhal
#

ATRA PUT IT THROUGH FOR ME

gentle rose
#

listen. what's more fun than dangerous code nonsense?

velvet narwhal
#

i had already gotten help doing a transpiler because prior, it was violently gendered

lucid iron
#

i'd probably do stuff to arguments of Game1.content.LoadString

#

in a transpiler

calm nebula
#

I just asked. Slightly incoherently

#

Don't give any credit

#

All credit to the Pathos

royal stump
#

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

gentle rose
#

I know nothing about transpilers but ig it's time to learn lol

lucid iron
#

ur decompile is out of date

velvet narwhal
#

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 SDVpuffersquee

royal stump
#

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)

gentle rose
lucid iron
#

AquaThumbsup

ilspycmd -p --nested-directories -r "$GAMEPATH" -o SDV-CSharp "${GAMEPATH}/Stardew Valley.dll" "${GAMEPATH}/StardewValley.GameData.dll" -lv CSharp10_0
velvet narwhal
#

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?

lucid iron
#

u can do i18n randomization on top of it, for a content patcher only solution

gentle rose
#

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

lucid iron
#

i think i shouldnt go into stranger's rooms regardless of whether they are there

gentle rose
#

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)

pine ermine
#

How do you plan on testing this cursed logic?

gentle rose
#

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"

gentle rose
# pine ermine How do you plan on testing this cursed logic?

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

pine ermine
pine ermine
tiny latch
#

any way to make wood, stone, trees and weeds not spawn??

gentle rose
#

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

pine ermine
#

If you use the stop time command, and hot reload, that might be enough acually

gentle rose
royal stump
pine ermine
#

Why is unit testing mods such a hard sell SDVpufferwaaah

tiny latch
gentle rose
#

lol I get you, it's just difficult to integrate unit testing into a game modding context

tiny latch
#

im editing the cindersap forest so i cant mark it as indoors

gentle rose
#

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

royal stump
#

(I feel like SMAPI itself is the only place I've seen any unit testing stuff SDVpufferthink)

gentle rose
#

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)

pine ermine
#

I agree that if you're not doing anything complex, it's not worth it.

gentle rose
#

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

pine ermine
#

I've never heard of that one before SDVpuffergasp

#

I've written a lot of tests while developing my multiplayer mods. They were a huge time-save.

gentle rose