#making-mods-general

1 messages · Page 568 of 1

hard fern
#

I guess you could alsoseparate your appearance from the character data and just patch it in when config thing is x if it's more complicated

ornate locust
#

sorry i realize typing one handed while eating fajita with other hand is not ideal and very slow hang on

elfin palm
#

this is a liiiiiiittle embarrassing and I'm not sure if this should go in modded tech support of mods general but I'm trying to use the florist dream bundle UI I made for Delixx https://www.nexusmods.com/stardewvalley/mods/17265?tab=description and I think I have to make a mod to use the ui? but I get so confused so fast when code is involved 😔 😭 does anyone have an easy tutorial on how? my stuff is already in the base mod file, I just dont know how to use it! or I guess in this instance, I don't know how to make a mod so I can use it? dead (and yes Ive been staring at the gitlab link, im just very dumb when it comes to code. I am but a simple artist)

Nexus Mods :: Stardew Valley

Unlockable Bundles enables content creators to add their own custom bundles into the game with ease.Anything from a small repairable bridge to elaborate custom community centers is feasible.

torpid sparrow
#

xd

lucid iron
devout otter
#

I can't give example here because I am on the road, but if you want you can look into my Eggiott mod for some simple config options.

torpid sparrow
#

ah eggiott.

#

thank u dolphin

hard fern
#

What an example

lucid iron
#

do you have something in mind?

ornate locust
#

oh thank goodness i have much fajita and much mess

elfin palm
# lucid iron do you have something in mind?

Yes! I'm just trying to use the Florist Dream theme I made for it but I have no idea how, and then I downloaded the demo thinking thatd show me how but I just got more confused 😭 im just trying to find an example of someone changing the Bundle theme so maybe I can just pop my stuff in there hahahaha

lucid iron
#

hm i think there's some misunderstanding here

#

you'd use unlockable bundles if you wanna create a new not community center bundle

elfin palm
elfin palm
#

time for an alternative approach!

lucid iron
#

if u wanna just make a normal "replace CC bg" mod that's merely content patcher

#

LooseSprites/JunimoNote

#

this is the asset and you would just EditImage over it, assuming the dimensions all match up

elfin palm
#

thank you!!!

ornate drift
#

handing out donuts as a heart event

cyan jungle
#

what is the best/easiest way to lock a custom npc's door unless you have 2 hearts with them?

shadow pagoda
#

bump

autumn tide
#

just wanna confirm (cannot help sadly), you mean the wild seeds right?

shadow pagoda
#

Yes

dreamy cedar
#

What do you mean by "guarantee"? The output of the crop is set once the seed is planted.

shadow pagoda
#

How do I know what it will grow into? Where is the code that establishes that

uncut viper
#

Crop.ResolveSeedId()

dreamy cedar
#

you can look at UIInfoSuite2's code if you want to see an example. (When you hover over a seed, it shows what it's going to grow into)

uncut viper
#

That's because the actual Crop.cs that gets placed doesn't know its a mixed seed anymore after its been planted, its just a normal crop

torpid sparrow
#

huzzah

ornate drift
#

also very nice nyapu portrait

torpid sparrow
#

thank u SDVpufferheart

#

how goes Manny

ornate drift
#

uhhhhhh not much atm
i still need to add a bunch of schedules 💔

#

the lack of ideas is killing me

steep viper
#

bug testing will be my downfall

half tangle
#

(unless you mean like an internal bedroom door, then that's a Door - there's also ConditionalDoor for other conditions)

fleet oxide
#

hopefully not a stupid question, but is everything that happens in the game in the unpacked content files? I want to change what happens when the player shows the club card to the bouncer (the dialogue and the poof animation) and I'm trying to find where that would even be as a starting point. I'm not having much luck

uncut viper
#

No, there are many things that happen purely in code that will not be in the Content folder

fleet oxide
#

Ok, thank you! So that's the kind of thing I would need to use C# to change?

uncut viper
#

Yep

lucid iron
#

but the logic of how exactly this text appears may be C# only

cyan jungle
#

does anyone have a tutorial for tilesheetinator? i am struggling to understand github

vernal crest
cyan jungle
vernal crest
cyan jungle
#

because at the bottom it says if you need help go to the github link

vernal crest
#

Also, can you explain what you mean by visual learner? I'm always confused by that term because to me anything not audio or kinetic is visual.

#

Um, it says to go to the GitHub to report bugs. It says to come here if you need help :)

cyan jungle
#

i simply would love better explanation or a video guide on how to install it since i am struggling to understand how to install it

vernal crest
# cyan jungle oh my bad ;-;

That's ok! You ended up here anyway so no harm done. Have you been able to follow any of the instructions on the mod page?

cyan jungle
#

yes i installed the extension but im confused on the rest

vernal crest
#

Okay, can you check your map menu in tiled and see if you have four new menu items with puzzle piece icons next to them?

cyan jungle
#

yeah ik it works but idk how to set it up ;-;

vernal crest
#

Ok, have you unpacked your game files?

cyan jungle
#

nu where do i get them and which ones?

ornate drift
#

whats the npc command again uhhhh

#

!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:

vernal crest
#

!unpack All of the stuff in the Content folder (pretty much). Use Stardewxnbhack to do it for you.

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!

cyan jungle
#

okie ill try that. after that what do i do?

vernal crest
#

Then come back here and say you're finished and I'll tell you what to do next

cyan jungle
#

oh thank you! do i @ you?

ornate drift
#

does the kiss sprite still matter if my npc isnt romanceable

#

as in can i just put something else over it

void aspen
#

Leave it blank

ornate drift
#

alr

void aspen
#

Or draw something if you want to

vernal crest
torpid sparrow
#

if u never trigger the kiss sprite u can just have something else there if u need it

void aspen
#

If anything, I can try and help with Tiled too, as well as any other active person here, so don't be shy to ask

#

Also good morning yall

ornate drift
#

okay uhhh

#

before using schedule i need animation....

#

hm

cyan jungle
#

@vernal crest sorry about that ;-; but what is Stardewxnbhack?

vernal crest
ornate drift
#

is there a wiki for animations?

void aspen
#

Most likely something like this

ornate drift
#

erm

torpid sparrow
#

are you doing schedule or event animations?

#

those are slightly different

ornate drift
#

schedule anims

#

animationdescriptions

torpid sparrow
#

ok one sec

ornate drift
#

this is gonna be either very easy or frustrating

torpid sparrow
#

its pretty easy

#

ctrl f animation

cyan jungle
#

im having a bit of trouble finding the stardew vally game folder. everytime i add the Stardewxnbhack in a folder i think is the game folder, terminal says it isnt

#

@vernal crest

void aspen
#

You can go to steam library, press right mouse button on SDV and go to local files

#

It should be the exact folder you need

vernal crest
ornate drift
cyan jungle
#

im on mac um is there something different i have to do?

ornate drift
#

i can probably do it its just not sure how i should lay it out first

void aspen
torpid sparrow
#

this shit is long as hell

cyan jungle
void aspen
#

Can you send a screenshot of the folder you put xnbhack in

cyan jungle
void aspen
#

Well that's new

vernal crest
#

Wrong folder

hard fern
#

Where's the rest of sdv

void aspen
#

Try opening the Contents

vernal crest
#

Go into Content and then macos

void aspen
#

mac handles steam games differently I guess

cyan jungle
cyan jungle
#

@vernal crest okay i figured it out and unpacked all the xnb files and added the whole unpacked content to tiled

valid folio
#

Hi, does anyone happen to know how to make the traveling cart sells the specific item randomly on some Saturdays and Sundays, not every time

half tangle
#

the traveling cart only shows up on Fridays and Sundays, not Saturdays, but for the rest of that you can use a random token if you want "not every time" to be random, or otherwise set any condition you want when you edit the shop

brittle pasture
#

(I recommend Conditions to avoid conditionally patching the asset)

#

(set the Condition of your shop entry to whatever GSQ you like)

valid folio
brittle pasture
#

DAY_OF_WEEK

steep viper
#

I have no clue if im asking this right, but is there a way to get your npcs events to show up under the event lookup tab 💀

#

homegirl is just.. blank

tiny zealot
vernal crest
tiny zealot
#

don't do that, though. it's event lookup's problem. use the good style

steep viper
cyan jungle
vernal crest
lucid iron
#

@ivory plume hey pathos you know this bit in lookup anything

// by convention
{
    Item? item =
        this.Reflection.GetField<Item?>(menu, "hoveredItem", required: false)?.GetValue()
        ?? this.Reflection.GetField<Item?>(menu, "HoveredItem", required: false)?.GetValue();
    if (item != null)
        return this.BuildSubject(item, ObjectContext.Inventory, null);
}

can you make it also check for props? It is so that i could do a Item HoveredItem => GetLookupAnythingHoveredItem() instead of updating the hoveredItem field all the time
same for the "hoveredNpc"
it is smol change but ill send you a PR if you prefer that

cyan jungle
void aspen
#

You gotta choose the Unpacked Maps since that's the folder you're mostly gonna use

vernal crest
#

Yes, it does say choose unpacked maps folder. It doesn't work if it's not the maps folder.

void aspen
#

And that button specifies that too so yeah

cyan jungle
#

alright i fixed it. now what do i do?

vernal crest
#

Now open a map and click fix Stardew tilesheets and you will see all the errors go away

cyan jungle
#

a map i have made?

#

my maps dont have errors but i was told i should change my tilesheets to the vanilla ones for easier organization

vernal crest
#

If you have tilesheets in the same folders as your maps, delete the tilesheets and then open your maps. You will have errors then

cyan jungle
#

what about custom tilesheets that arent part of vanilla? should i only keep those?

vernal crest
#

Those you should move into a separate folder and then load them into the game in your json

cyan jungle
#

oh now you lost me ._.

vernal crest
#

Are they your custom tilesheets or from other mods?

cyan jungle
#

also, when i click "fix tile sheets" it shows this. should i manually add them in

cyan jungle
#

but most assets i use are vanilla

vernal crest
cyan jungle
#

nono it's just for my personal use

vernal crest
#

If it's just for personal use you don't really need to do any of this. You can make your mods as messily as you like.

#

Keeping them in the same folder as your map means that recolours won't work though

cyan jungle
#

oh it's just i was told to do it ;-;

#

i see. i do need the vanilla tiles as vanillay-ey as possible because i do use recolors

#

also i am sure its easier for seasonal changes

vernal crest
#

If you do want to use recolours then yes you do need to do it.

cyan jungle
#

okay, what do i click on my screen? (see screenshot)

vernal crest
#

As in, you don't have to use tilesheetinator but you do need the tilesheets out of the map folder

uncut viper
cyan jungle
uncut viper
#

(Carry on then!)

vernal crest
uncut viper
#

No, because it can't know that Maps_ is not supposed to be there

cyan jungle
#

so should i just.. write the Maps/ thing in front of the tilesheets as normal?

uncut viper
#

Someone could theoretically have a custom tilesheet named Maps_mycustomsheet_wow or something

vernal crest
#

Yeah I didn't think so but I just wanted to check

vernal crest
cyan jungle
#

okay i understand

autumn tide
#

hellooo where is ring data stored?

uncut viper
#

In code

autumn tide
#

ohh it's hardcoded?

uncut viper
#

Unless you just mean the objects themselves, in which case they are just in Data/Objects

#

But you won't be able to alter their effects

autumn tide
#

gotchaa okay

uncut viper
#

(With CP anyway)

autumn tide
#

thanks!

vernal crest
# cyan jungle okay i understand

Once you have it open, find the line that starts like <image source="furniture.png" and change that to <image source="../TileSheets/furniture.png"

eager tree
#

does anyone know if i can add a condition with cp to when the island farmhouse has been restored?

urban patrol
#

sorry, do you mean you're looking for a GSQ for when the island farmhouse has been restored?

vernal crest
#

No he's probably looking for a mail flag so he can check it with a CP HasFlag check if he wants to use a When field to apply a patch

vernal crest
eager tree
#

thank you so much SDVemoteheart

ivory plume
ornate drift
ornate locust
#

you gotta repeat frames a lot to make them stick around longer

torpid sparrow
#

its not too bad i prommy

ornate drift
#

i see

#

hmmmmmmm
well uhh

#

what should i add to the entry name

ornate locust
#

Reading animations are very "Sit with book open for a while, do page turning frame, open book again, sit a while"

torpid sparrow
#

did u read my anim or is that a coincidence

torpid sparrow
ivory plume
#

@polar escarp FYI The SMAPI 4.5.2 release download on GitHub was incorrectly double-zipped, which might have affected Stardrop's ability to update SMAPI. I just fixed the release, and changed SMAPI's new build workflow to prevent that from happening in future releases. Sorry for any inconvenience!

ornate locust
#

It does say "read stand", I assumed it was a reading animation, and I have done one of those before so I know it

#

's like that

ornate drift
#

hmmm

ornate locust
#

MANY 37

torpid sparrow
#

pain

#

why not frame time duration in milliseconds

#

why not that

#

why make me type same number 80 times

ornate locust
#

No idea, but that's how it do. 37 37 37 37 37...

ornate drift
#

like this?

torpid sparrow
#

yes

ornate drift
#

okay great

#

now i gotta do another include 💔

steep viper
ornate drift
#

tytyty :3333333

ornate drift
torpid sparrow
#

add to ur schedule

ornate drift
#

do i just paste the entry name inside the schedule

torpid sparrow
#

put it in the spot you want it to be

#

like

#

900 Town 13 19 1 anim

ornate drift
#

like this

torpid sparrow
#

oui

ornate drift
#

gracias

#

:3

#

(yes i know yours is french i just dont know how to say thanks in it LOL

torpid sparrow
#

it's merci

#

#canada

ornate drift
#

merci beaucoup

#

and then the uh

#

include

#

if i add a weeks worth of schedule
and then add a season schedule
which entry is it gonna pick first

torpid sparrow
#

depends on what the entry is

#

with no season it's default

#

if u add a season season will take precedence

ornate drift
#

so itll only use the season one

torpid sparrow
#

yes

ornate drift
#

i see
Ty

#

hmm which days should my bear be off 🤔

#

friday is automatic cause hes always gonna go to the left of the beach

#

for sleep animations is it always just something like 20/20/20

#

cause sleep is one frame

tiny zealot
#

typically it's one frame but the beauty of animations is you can make it more if you want

#

the only thing that's weird about sleep animations is they need to be explicitly in lowercase for unknowable reasons

uncut viper
#

(Which includes your Mod Id, so don't get caught out by forgetting to lowercase your {{ModId}} token too)

ornate drift
#

so {{modid}}_speedymanny_sleep

uncut viper
#

No, {{Lowercase: {{ModId}}_SpeedyManny_Sleep}}
(or manually writing out your ModId instead of using the token)

#

The capitalization of the token itself doesnt change anything

ornate drift
#

ah

uncut viper
#

It also doesnt matter if your mod id is actually all lowercase alreeady in your manifest

dreamy cedar
#

lol, looking at that card, you can see I have no skill at marketing whatsoever.

meager ginkgo
#

that looks like a super cool mod :D

dreamy cedar
#

I'm especially proud of the totem-wallet feature. To me, that feels like how totems should have been from the beginning.

worn turret
#

Anyone interested in helping me solve a mystery?

dreamy cedar
#

A mystery? Ruh roh raggy...

worn turret
#

Yeah, so I have a mod that's supposed to be recoloring the wallet items, and it's working on all of them except the Dwarvish Translation Guide. I used the Trace button in the SMAPI log parser to look for everything editing Cursors (removed them all except the one that I want to be editing it). I also searched for Dwarvish just in case and removed the only things that reference that too. Still no dice. Why won't it change? Is this a known thing? https://smapi.io/log/040b2a8a80424a9e9d15b5c2354b2327

urban patrol
worn turret
#

I'm not sure what that means, so I'm guessing no?

urban patrol
#

patch summary asset LooseSprites/Cursors

worn turret
#

Like, search for that phrase with Trace?

urban patrol
#

no, type that into the terminal

worn turret
#

Truly sorry, but I'm not familiar with "terminal". Can you put a picture of where that is?

urban patrol
#

the black window that pops up when you run SMAPI

#

where your log is written in

worn turret
#

So, start the game, then tab out and put it in the black SMAPI window?

urban patrol
#

yep

#

also load a save

worn turret
#

Ok, as long as it won't hurt anything. I'm scared to mess with that thing.

urban patrol
#

troubleshooting commands are perfectly safe

worn turret
#

Ok.

urban patrol
#

pathos is very good about making things not very breakable

worn turret
#

So, start the game, load a save, then enter "patch summary asset LooseSprites/Cursors"

urban patrol
#

yep, without quotation marks

ornate locust
#

You also aren't gonna save unless you sleep after doing it, so even if it did something, that something won't stick around

worn turret
#

Ok. Back in a minute.

ocean sailBOT
#

Log Info: SMAPI 4.5.2 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 111 C# mods and 342 content packs.

urban patrol
#

okay so every mod listed under there is editing cursors somehow

#

frog tank, moon farm, sebastian immersive wedding, spouse room renovation, blue grass recolor, elle's cuter coop animals, rose iridium tools and weapons

#

although it looks like only blue grass recolor has changes applied

worn turret
#

Bluegrass is the one I want to edit it, the only one I'm suspicious of in the rest is the spouse room renovation one...

urban patrol
#

those ones weren't applied because conditions didn't match

worn turret
#

Just because I know it comes with a bunch of vanilla looking furniture. I'm not using any of it though.

#

Yeah, so by your reckoning Bluegrass is the only one doing anything?

urban patrol
#

yes

worn turret
#

What the heck then. Why is it not doing it?

urban patrol
#

what does your patch look like

worn turret
#

It's pink.

#

Or do you mean the code?

urban patrol
#

yeah the code

#

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

worn turret
#

It's just a full replace of the whole cursors sheet.

#

{
"LogName": "Cursors",
"Action": "EditImage",
"Target": "LooseSprites/Cursors, LooseSprites/Cursors.{{language}}",
"FromFile": "assets/LooseSprites/Cursors.png",
"PatchMode": "Replace"
},

urban patrol
#

can you share the code and screenshot the file you're replacing it with

worn turret
#

That's how it should look.

uncut viper
#

(You do not need to target the language specific versions, and that is not how you would do it anyway, and also the token wouldn't make it the right format anyway)

worn turret
worn turret
urban patrol
#

try taking the second target out

uncut viper
#

According to Data/Powers, it does not use the icon on LooseSprites/Cursors

latent mauve
#

Check springobjects instead

uncut viper
#

It is indeed springobvjects

latent mauve
#

I found it in there, so you want patches editing springobjects

urban patrol
#

ahhh thank you button and lily

worn turret
#

That'll do it. I was wondering since I didn't see the forest magic one on cursors either.

uncut viper
#

The Data/Powers asset is what controls that menu screen so it'll show where everything is from

worn turret
#

Just for future reference, is there a way to know (besides just knowing/remembering) where the different sprites come from in the game? Like, if I want to know what file controls any given thing, is there a place to look that up?

latent mauve
#

The Data entry usually defines a texture

uncut viper
#

In this case, Data/Powers defines it

latent mauve
#

and if it doesn't (or is null), the wiki will tell you which is the default texture for that data entry.

worn turret
#

Are those xnb files that you can "decompress" or whatever with the editor and then read inside?

latent mauve
#

!unpack

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!

uncut viper
#

You should definitely always have unpacked files when making a stardew mod

worn turret
#

Sorry, I'm not wording this right. fireredlily says "Data entry" usually defines a texture. If I open up the powers.xnb is there text in there I can read that will say where the texture comes from?

uncut viper
#

No. Unpack your files

#

That will give you all the stuff in your Content folder in an unpacked, readable format

#

The same format you are using to write a CP mod

worn turret
#

By "open" I mean unpack with the xnbcli editor since xnb files don't actually open if you click on them.

latent mauve
#

Unpacking the files will turn your XNBs into different readable file types!

#

Use the StardewXNBHack unpacker from the link to get all the game files unpacked at once, it's more reliable.

#

It puts a new folder named "Content (unpacked)" in your game folder next to the normal Content folder, so it's nondestructive and it just gives you workable copies of everything.

#

Some of the XNBs will be unpacked as JSON files, some will be TMX files, some will be PNGs, etc. It depends on the asset.

worn turret
#

Ok, yep, 100% solved. So, as fireredlily and Button said, that sprite is controlled by Springobjects, not Cursors, so my edited cursors sheet won't do it, and I guess the person who made the animated wallet items mod didn't know either (or maybe it used to be controlled by cursors at the time) because their code also references cursors, so that's why it's not working. Thanks to everyone for your help. ❤️

And I'll see about unpacking the whole thing just for the future. It would definitely be more convenient than opening them one at a time.

worn turret
#

Is this "fish" normal? I haven't actually "played" the game in a while, so if new fish were added I wouldn't know about them, but I don't recognize this shadow. If it is vanilla don't tell me what it is, but if you could let me know if it's from the base game that would be great. I've removed all the mods I had that add extra fish but this one hasn't disappeared so it must be base game?

rain inlet
#

not one that i recognise

#

give it an f1 (lookup anything mod)

#

it'll show you what fish it is and what mod it's from

worn turret
#

I'll get the mod and give it a try.

#

Thank you. ❤️

rain inlet
#

np

worn turret
#

I didn't know that one could look up stuff about other mods.

rain inlet
#

it's really good

#

the thing i use it most for is finding loved items for modded villagers

worn turret
#

It honestly almost looks like a sprite for one of those battered prawns or something...

rain inlet
#

lol i see it

worn turret
#

That worked like a charm. Apparently a frog tank mod I have adds a little tadpole to the game. It's pretty cute actually.

#

And looks not unlike a battered prawn. 🤣

#

Do you know, just for arguments sake, if you have two mods that edit the same sprite for example, could it tell you which mod is currently coloring the sprite? Or can it only look up information about base game stuff (like the base game info, not texture stuff) or stuff about things not native to the game like this little guy?

eager tree
# vernal crest `Island_UpgradeHouse` is probably the flag you want. `"HasFlag": "Island_Upgrade...

Am I doing something wrong? It works when it doesn't have HasFlag but stops working if I add it.

"LogName": "CrystalIsland Island Cabin", "Action": "EditMap", "Target": "Maps/Island_W", "PatchMode": "Overlay", "FromFile": "Assets/Maps/Cabin/Potatoes_House_Restored.tmx", "FromArea": { "X": 0, "Y": 0, "Width": 9, "Height": 8 }, "ToArea": { "X": 73, "Y": 31, "Width": 9, "Height": 8 }, "When": { "HasFlag": "Island_UpgradeHouse" }

worn turret
#

I have no idea, but I'm sorry you're having problems. 🙁

#

What does having the flag do?

#

More rather, what is it supposed to do?

eager tree
#

it's supposed to apply the map edit if you restore de island house. but this not might be how hasflag works, idk at this point lmao

worn turret
#

Hm...does the base game have an example you could look at?

eager tree
#

not that i know

worn turret
#

This is super rudimentary, but is it possible the flag is wrong? Like, is this supposed to be when you repair the island house for the first time? Or is this letting you upgrade it--as in it's already repaired, and then you upgrade from the basic one you get from repairing?

eager tree
#

tbh im not sure, i just copied what aba wrote. it is mentioned in the wiki + pathos has confirmed it here to someone else

#

i might just be using hasflag wrong, maybe it doesn't work with maps edits?

worn turret
#

Couldn't tell ya, I'm sorry. 🙁 I really respect the folks who know how all of this stuff works. Could be a full time job it seems.

eager tree
#

oh i figured it out. it only shows up after sleeping through the night. well that's a bummer but at least i know how to proceed now

worn turret
#

Oh!! Well hey, that's something at least. 🙂

#

I guess that's why Robin makes us wait for a few days and it's done when we wake up.

eager tree
#

lmao

worn turret
#

Congratulations on figuring it out! That can be a real struggle. I'm a total n00b and I get stuck on the silliest stuff. 🤣

#

Are you an admin or something? Your name is in a fancy font and you have the cute little leaf flag next to your name.

meager ginkgo
worn turret
#

Does the blue font mean anything or is that a choice with Nitro as well?

#

Oh, well, I guess my name is blue too. I didn't pick it though. 🤣

vernal crest
# worn turret Do you know, just for arguments sake, if you have two mods that edit the same sp...

You can find out which mods are editing assets and in which order. You can't find out about specific sprites on a spritesheet without looking at the mods' files, but you can find out which mods to look at. And if you're interested in something that only has one thing on it (like an animal) then just seeing which mods affect it will be enough.

The easiest way to check if you don't need to know their order is to put patch summary asset "foldername/filename" into your SMAPI console (eg "maps/springobjects"). If you do need to know the order, you'll need to check the log because that gives timestamps.

vernal crest
worn turret
fathom hound
#

#roles SDVpufferchickmayor I'm purple & orange bc I'm level 2000 + mod maker

vernal crest
#

Neither. It's a mod author role

hard fern
#

Pufferhorts...

worn turret
worn turret
fathom hound
#

Yeah they did a really great job choosing the colors SDVconcernedpride aSDVpufferchickpride

hard fern
#

Too bad my name is too short to get the orange in there

fathom hound
#

Maybe if you put (tomato) instead of the emoji... krobus_giggle

worn turret
#

Is there a place in discord for people to suggest mods? I had someone link me to a place to do it, but you have to sign up for a github account and everything. Pathoschild is on there I think, so I'm relativly shure it's legit, but I'm more comfortable with Discord.

worn turret
fathom hound
worn turret
hard fern
#

To suggest mod ideas, the GitHub is more or less the only organized place

worn turret
hard fern
#

Or you could comm an author direcly

ocean sailBOT
#

If you have a mod idea that you aren't planning to make yourself, you can put it in the mod ideas github: https://github.com/StardewModders/mod-ideas

However, this does not mean anyone is guaranteed to work on your idea—modders who are looking for ideas sometimes go through and work on what they find interesting off this list. If you want to pay someone to make your mod idea, there are a few people who do commissions (mostly art, sometimes code); you can ask around, search usernames for the word comms, or see !commissions.

worn turret
#

Yeah, that's the one.

hard fern
round dock
#

Github is definitely the most organized place to send out mod ideas/request. It’s also maintained.

vernal crest
#

Yeah we suggest the github because it's organised and also because people don't realise how annoying it is to have people come in and tell us all about their ideas that they want other people to make lol

worn turret
# hard fern Or you could comm an author direcly

I actually did. It's kind of a long story, but I've been messing with my fishing rods for days trying to change the color, and I realized that they're one of those things with a hardcoded color, and then by pure chance I stumbled upon a mod (C# I think?) that actually does let you assign different RGB values to it. And the person who posted it on Nexus said it was written by a different person, so I reached out to them to see about if the same think could be done, but for the grass clippings and leaves that fall when you cut down grass or bushes, and that blue sewing machine and dye station interface that won't change no matter what I do. And I never really know if it's appropriate to offer commissions or not? Like, I don't want people to think I expect them to just do all this stuff for free, but I also feel like offering to pay isn't always allowed either? What is the etiquete/rules there?

vernal crest
worn turret
vernal crest
worn turret
#

Oh, yeah, I forgot to even tell the end of my story. Doh. Yeah, the person who wrote the mod told me they don't mod at all anymore at all (no time), but that I could put the idea out there on Github at that link that was mentioned a little earlier. The end.

#

I would be very interested to talk to Harvz. Do you think they could make something like this that turns your unwatered crops all dried out looking? I've never found another mod that does this and this one hasn't worked for a long time. There are ones that turn your crops darker green once they have water, but I love the normal crop sprites that I have and I love them starting off dry and in need of water and then you water them and they're all happy and beautiful. https://www.nexusmods.com/stardewvalley/mods/1583?tab=files

Nexus Mods :: Stardew Valley

Make watered and not-watered crops' sprites visibly different.

vernal crest
ocean sailBOT
worn turret
#

I think I saw it once a long time ago but I wasn't sure if it was up to date or anything.

#

Do you know if on Github we're allowed to say we're offering a commission to anyone willing to make the mod?

vernal crest
#

If I had more time it'd be something I'd be willing to take a look at. I'm not very good at C# yet but I've managed a few things.

meager ginkgo
#

are there any resources for planning an NPC?

uncut viper
#

C# is the base case. Content Patcher is just a C# mod that does things for you.

vernal crest
uncut viper
#

It deals with things that can be found in the content pipeline, aka anything in the Content folder and other mods that utilize it. But the content is not all that makes up the game, since it includes none of the code

#

(The game is also written in C#)

worn turret
#

So, Content Patcher itself is a C# mod and it lets people use non-C# code to like, inject stuff into the game?

uncut viper
#

Correct

vernal crest
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:

meager ginkgo
#

oooo pawsome thanks :D

uncut viper
#

SMAPI is not the one figuring out what to do with your content patcher files. SMAPI loads Content Patcher, and SMAPI can tell Content Patcher which packs belong to it, and then Content Patcher does most of the rest of the work

worn turret
#

Wait a minute. @vernal crest , are you Bog?!

ornate locust
#

Is Bog friend

vernal crest
worn turret
#

Oh, I see! Well, it's really cool to meet you! You guys put out really high quality stuff. Very cool aesthetic.

ornate locust
#

Bog-adjacent

worn turret
#

Bog-adjacent. I love that. 🤣

vernal crest
worn turret
#

Does anyone know why Concerned Ape decided to hardcode the colors for certain things? It feels like he made the game so customizable and accessible for modders, so it's odd to me that certain things are locked behind the C# wall like that. (ex. fishing pole, sewing machine, cut grass/leaves, etc)

vernal crest
#

The game started a lot less accessible for modmakers than it is now. CA did whatever was easiest for his purposes and has made some things easier for us in updates.

worn turret
floral stream
ornate locust
#

It's been made a LOT easier over time. Seeing how people did some stuff before 1.6 is wild

floral stream
#

i started modding right after 1.6 came out lol

worn turret
#

Yeah, that was a rough transition but I think the modding community is better off in the long run.

#

I'm still trying to recover. (Some of my most beloved mods were lost in the modpocalypse), but I am determined to rebuild, slowly but surely.

ornate locust
#

there's so many things I see the implementation of in older stuff and people go "oh we can do this way easier thing in 1.6" and it makes me so glad I started modding after 1.6

vernal crest
#

I also started modding right after 1.6. It's much easier for content modders now than it used to be.

worn turret
half tangle
#

I've lost track of the number of things I wanted to do and it was something like "you use to have to do a, b, and c, keeping in mind d and e, but also maybe use f, but now this line of code handles it all"

worn turret
#

That's really great, Cam. I'm glad it's so much more accessible now.

ornate locust
#

Sometimes a whole deal turns out to just be one line now

#

And there's more stuff getting easier all the time. Can't wait until they dehardcode that damn trash bear

worn turret
#

Here's a big question that plagues me daily when I look at my SMAPI log. I only have one mod left that's throwing errors. The Unofficial Conent Patcher Animations mod. It throws several errors but I never notice it not working. Does anyone know why that one stopped being supported? It's a great mod, and I don't know of anything that has taken its place. I feel like it's rare to see animated items so they're really special and neat.

floral stream
#

its also nice having so many frameworks to do stuff without needing C#

#

i find it a lot more fun using frameworks, ive tried C# a few times and its just a headache for me lol

ornate locust
#

Chances are either Content Patcher itself or Spacecore can just do what that mod did now

#

It looks like Spacechase made that mod so probably the latter

vernal crest
#

I wouldn't be surprised if it's somewhere in spacecore

ornate locust
#

can't find anything that says what it does, just a git for it, so I'm not sure

brittle pasture
half tangle
#

!converters even has a CPA to SpaceCore converter

ornate locust
#

Aha, that tracks

worn turret
#

I honestly wish I understood frameworks better (i.e. at all). I have one of my most beloved mods of all time that died in the wake of 1.6, and my friend helped me rebuild it mostly, but we can't figure out how to get the smoke (same smoke effect that comes out of the chimney on the farmhouse and the cookout kit) to come out of the smokestack while it is running. It's technically a custom building, rather than a machine, so I think that's part of the difficulty...Chu was trying to help me do it with TAS/MMAP, but I just don't have enough baseline knowledge to even understand what they're saying to me. It's embarrasing, and I feel like it must be annoying talking to me...

worn turret
hard fern
#

Replacing sprites is easy

ornate locust
hard fern
#

Making trash bear obey your will is not

floral stream
#

MMAP is one of my favourite frameworks, i hate reading but i have read so much documentation over the last few months lol

vernal crest
#

The more you tinker with mods and read the docs, the more you learn

worn turret
worn turret
# hard fern Replacing sprites is easy

That is basically all I can do (and more in a "cobbling together existing stuff" kind of way. I'm no artist). I'm decent at adding in coding that I know of (literally just copy/paste and then swapping out the details), but as far as writing anything from scratch I'm useless.

worn turret
vernal crest
#

When I started all I did was find bits from other mods that did what I wanted to do and copied and then edited them. It's still what I do when I come across stuff I'm not sure about.

worn turret
half tangle
#

Yeah, I'm currently learning more about how to make menus in game (with C# - can't do that with CP) and I started by finding a very simple menu from the game and using that to put together a menu of my own with various bits and bobs so I can understand how to do similar with my actual mods later on

worn turret
ornate locust
#

That's how it goes. I spent the last over-a-year figuring out how to Stardew mod. Started out just barely understanding how to change a few lines, ended up with a NPC

#

gotta start somewhere

#

Take it one bite-sized chunk at a time

worn turret
#

Wow! NPCs are really complicated! That's amazing you learned that fast!

ornate locust
#

I had a ton of help from here and the East Scarp discord

floral stream
#

ive slowly gotten less anxious about posting mods also lol

ornate locust
#

Also I've modded other games, so I am at least passingly familiar with reading jsons

half tangle
#

the community, the wiki, and the search bar are tremendous help

worn turret
#

Do people here mind helping the same person over and over? I've been asking for what feels like a lot of help lately and I don't want to overstay my welcome...

ornate locust
#

Absolutely not, I'm still here after all :V

#

if I can endure after that one time event movement doubled and I was having a coding panic attack, they don't kick anybody out of here for bugging them with questions

#

I still don't know why that happened

opaque field
#

I really appreciate everyone who’s ever helped me with my mod journey the past year and some change (I’m also finally feeling brave enough to go down the road if NPCs) they’ve all been really cool

floral stream
#

90% of my issues early on was forgetting to load a json and not understanding why it wasnt in game 😭

opaque field
#

Typos and commas too

ornate locust
#

that is an easy thing to stub your toe on

#

For a while, I had "UPDATE YOUR INCLUDES AND LOADS" in my to-do list perpetually

opaque field
#

(I’m also trying to learn C# and I thank everyone in advance for my 1 million questions)

autumn ivy
#

ive done it.... kinda,.... my goal was to make a content patcher version of prismatic tools andf i hit a wall with the sprinkler... but i found Sprinkler Mod Redux.... that can allow anything to be a sprinkler.... so yea im piggybacking off that

opaque field
#

I still have a post it with facing directions, x and y movement and emote numbers 😂

ornate locust
#

now I've got it beaten into my own head, but for a while, man I kept forgetting that

opaque field
#

I’ve gotten more confident too - except I’m always swapping the heart and the little sweat drop emote 😅😅😂

#

~~no I’m not awake doing portraits nope ~~

worn turret
#

I'm really glad to hear that people don't get sick of you. I get kind of overwhelmed sometimes when everyone is telling me stuff that I should do and I don't know what some of the terms they're using mean, and I get nervous and don't articulate what I'm trying to say very well and just confuse everyone. 😓

lucid iron
ornate locust
#

Yeah I've been there. You absorb it over time

worn turret
#

And I 100% feel you on the modding panic attacks. Mine are more when something is working, and then I end up breaking it and I freak out thinking I won't be able to get it working again (and wondering if I did actually fix it properly or if there's something wrong now that I don't even know I broke).

lucid iron
#

Not onto buildings in particular but to a map

opaque field
#

I still get all anxious and feel that way sometimes 🤝 but it gets easier and people have been extremely kind and patient with me no matter how small/silly the issue was 😂

worn turret
# lucid iron Did u try the base thing of getting smoke into game yet

I haven't. I'm really sorry, chu!(e), but you're lightyears ahead of me knowledge wise, and I just don't even know what you're saying. That's on me. I literally need step by step directions. Like:

  1. Open your content file
  2. Go down beneath the part where it says "changes"
  3. Insert code that reads exactly like this, but swap out the coordinates of where you want the smoke to issue from

That level of specificity.

#

I'm sorry. I'm a complete novice.

meager ginkgo
#

everyone starts somewhere

lucid iron
#

Well that is kind of what my example is Bolb

worn turret
#

I would need a lot of help and someone willing to literally hold my hand and walk me through it, and I don't want to be that much of a burden to you.

lucid iron
#

But I think you may want to read more about EditMap in particular

worn turret
#

Yeah, I don't even know what a "Map" is...

lucid iron
#

[[modding:maps]]

worn turret
#

I know there are files in the "Maps" content folder, but those are just pngs...

hard fern
#

The .tmx files are the real maps

lucid iron
#

The relevance here is that many mmap features obtain data from map TileData

#

Which are data associated with a particular tile on map, and sometimes with a building or a furniture on map

autumn ivy
#

man i havent messed with maps in a long while...but i remember it can be a bit of a pain

worn turret
#

So, it looks like I need a whole separate editor tool to work on maps?

hard fern
#

Yep

#

!tiled

ocean sailBOT
#

If you want to make mods that add or edit maps:

  1. Use Tiled to edit .tmx or .tbin files.

  2. Refer to the Maps wiki page for details on how maps work in Stardew Valley.

  3. Content Patcher allows you to create custom locations through editing Data/Locations

  4. Vanilla Maps can be edited via Content Patcher as well: EditMap

autumn ivy
#

Tiled

lucid iron
round dock
#

blob

worn turret
#

Why is this part red? Is it just text to read? Like how the red highlighted yellow text is in Notepad++?

lucid iron
#

This (commented out) example says "add tas {{ModId}}_CauldronSmoke to tile 14,23 on bus stop

worn turret
#

Cause it seems like code that's supposed to be used...

hard fern
lucid iron
#

It's red because I didn't want to get green smoked all the time in my testing save kyuuchan_run

worn turret
#

Oh, ok, so it is the same sort of thing then.

hard fern
#

Hm 🤔 i could probably use mmap to actually get my cauldrons to work

autumn ivy
#

i may look back into making a 2nd green house connected to the bus stop map connected to a quest that takes place after CC.... but ginger island kind nullifies the need

lucid iron
#

I don't recommend directly using the example mod, instead start your own content json and try copying the EditMap which spawns tas as well as the EditData to define the tas

#

Then u can get green smoke in u r bus stop

vernal crest
# worn turret I would need a lot of help and someone willing to literally hold my hand and wal...

I don't want to be too presumptive, but I'm getting the impression that you believe that you need some sort of pre-existing knowledge or skill to be able to learn to mod and that we all have it and you don't. While some of us do have backgrounds that have made learning to mod easier than it might otherwise have been, there are plenty of us who have started from a position of knowing nothing more than how to browse the internet and start a program. And even those of us who knew more when we started modding weren't born with that knowledge. We have all started from zero as well at some point and therefore you're just as capable as we are.

worn turret
#

Yeah, so in that example, I'd need to specify a custom building, rather than a map (like, a building layer rather than the literally enrironment). How do you make it recognize a custom mod?

lucid iron
#

You are skipping ahead when you didn't do the assigned homework yet

autumn ivy
#

my first coding was a mod.... an ugly mod but still

vernal crest
#

Getting overwhelmed is a completely normal part of this learning process and it doesn't mean you aren't capable, it just means that you have to break things up a little bit into a smaller chunk.

worn turret
#

I like smaller chunks. Easier to wrap my head around.

hard fern
#

(it's been six years and i still don't know how to code. )

lucid iron
half tangle
#

You can do that smaller chunk and get it working as chu said, and then after you see it working you can worry about the next step

worn turret
#

Like, get my bus stop to smoke?

lucid iron
#

Yep

half tangle
#

yes

worn turret
#

Ok, so put that code in my mod, get my bus stop to smoke, and then we gradually shift it away from the bus stop to the building instead?

lucid iron
#

The association with a building is actually the simplier part

#

The tedious bit is actually tweaking the smoke to look how you want

worn turret
#

Ok. I can try. Does it need to go any ceratin place in there, or be indented a certain amount to work right or anything?

lucid iron
#

Well you can just copy the example for now, which puts smoke at tile 14 23

meager ginkgo
#

does content patcher like/accept jsonc files or does it need to be just json?

lucid iron
#

A useful mod is debug mode which will show u tile coords in game

floral stream
#

to add onto that

uncut viper
lucid iron
worn turret
# lucid iron The tedious bit is actually tweaking the smoke to look how you want

I don't mean this to sound petulant or anything, I literally just don't understand, so please don't read it in a whiney way, but why can we not just use the preexising smoke that is coded into the game? It seems like your thing is using preexising cauldron smoke (like from the wizard), so why can't we use the existing chimney smoke in the same way?

lucid iron
#

It's not the preexisting cauldron smoke

#

This is a temporary animated sprites whose fields were configured by the data to behave like the cauldron smoke from wizard tower

meager ginkgo
#

ok thanks :D

uncut viper
#

You cannot make the game do something it was not programmed to do, unless a mod (like MMAP) sets up its own rules and methods to help you do something similar. The game is not programmed to allow you to just arbitrarily place smoke anywhere, so you cannot just do it.

worn turret
worn turret
lucid iron
#

It is a class name from vanilla

#

And refers to a (usually but not always) short lived sprite used for visual effects in many places

worn turret
#

So the game doesn't really have predefined smoke perameters we can just copy and plop somewhere? We have to figure out how to make it look that way somehow?

lucid iron
lucid iron
worn turret
#

Is it going to have the same base shape as the wizard smoke, or what defines the staring shape that then rotates and fades and accelerates and stuff?

lucid iron
#

I'm not really sure why you have adamant belief that there's a DoSmoke action but it doesn't exist rn

#

Hm do you mean the texture? That is indeed sourced from LooseSprites/Cursors here

#

So it's not a custom draw thing

worn turret
# lucid iron I'm not really sure why you have adamant belief that there's a DoSmoke action bu...

I'm sorry. I'm not trying to be argumentative or anything. I just see, as a layperson, that in-game the chimney on our house currently makes smoke, and the cookout kit makes smoke when you turn it on, so making smoke is something the game can do, so it feels like we should be able to take whatever it is that the game does to make smoke and stick that same code in a mod and make the mod make smoke too. Does that make sense?

#

I'm probably thinking about it wrong, but, it makes sense given my current understanding of the universe.

lucid iron
uncut viper
#

You cannot, not with CP. Someone who writes C# can do that, and chu has, and made it available via MMAP.

#

If you write your own C# you can also do that, but a lot of people let the framework authors do the heavy lifting SDVkrobusgiggle

vernal crest
lucid iron
#

Yeah feel free to go look at the sauce/decompile and do it in your own C# mod Dokkan

worn turret
lucid iron
#

Well that is why the only instruction i gave you right now is "copy the example and see how it functions in game"

#

I think this would help understanding

worn turret
worn turret
#

I truly want to apoligize to anyone that I have inadvertantly offended. I am not questioning your knowledge or authority on this stuff at all. You know better than I in every respect. I feel like anything I say is just gonna sound like doubleing down or justifying or whatever, but I'm really trying (and apparently failing) to convey that I'm just trying to ask questions so I can understand even a little bit of this stuff someday. I'm trying to explain my thought process so people can tell me where I'm going wrong and why. I realize I have asked the same thing mulitple times, and that is mostly because the answers I have received (while undoubtably correct) are proving tricky for me to understand from a practical perspective. Like, if you gave me a test on whether something requires C# or can just be done in CP I would fail. I'm willing to just accept that this is the way it is and not talk about it anymore, but I'm trying to understand "why" this is the way it is, you know? Anyway, I kinda feel like anything I say is just digging me in deeper at this point, and it was never my intention to even do anything rude or bad at all. You've all been very nice to me and I respect you greatly, and I'm very sorry. I hope I can make it up to you all.

half tangle
#

One of the things that's repeatedly relevant around here is that most of the time you have to start by actually trying out the tools that are available. Get the example code working. Do the thing. You will get it wrong sometimes and that is the way you learn. You yourself cannot know everything about the game and how it does things. What you can do is take one step at a time. Once you take a step, you'll understand a tiny bit more and your foundation will grow.

If you never put the code into your mod and start the game, we can't do anything to help. In the above conversation, you never actually took the example code and put it into the game to discover that you could do something. Give yourself a chance to succeed or fail.

worn turret
#

That is a very good point. I know people have literally said they don't mind helping, but I guess I just fundamentally dread having to come back and tell them that I'm not able to do it. Like now. I've inserted that code into the game and succeeded in breaking the building. And I feel like the instructions I've been given are straightforward in a way, so I feel really bad having to say I couldn't even do it. Like people will secretly be disgusted.

#

And I have like a million clarifying questions to ask that I feel like are just annoying.

autumn ivy
#

you dont know what you can do until you buckle down and do it

hard fern
#

Yes, it's totally fine to try something only for it to not work at all versus trying to do it perfectly from the start. If something doesn't work right, you can come here and ask for advice, and someone will try and explain what went wrong

worn turret
#

I'm definitely a "measure twice cut once" kind of person. So I really do like to know what I'm doing before I start. It's very hard to just jump in. I will try to be better though.

#

It would be good for me. It would probably cut down on the paralysis/dread.

autumn ivy
#

im a "measure 5 times and cut 10 times... ahh sh*t its too much " kind of person

worn turret
#

And I guess I also feel (probably incorrectly) like people think that I should know more stuff before I start. Like, "What are you even doing trying to do this if you don't even understand the fundamentals? We're not going to just do the whole thing for you. Come back when you know the difference between what requires C# and what can skate by with CP."

#

And to be clear, nobody has said anything to give me that impression (that I'm supposed to know a bunch of stuff before starting). That's my internal feelings. I think I need to get over that. It seems more like you're supposed to just start and that's how you learn. Not the other way around.

#

Like, I feel ridiculous asking half of the stuff that I need to ask...and I was hoping that if I understood it better before starting that I wouldn't have to ask some of the really "dumb" stuff.

#

I feel like asking that stuff means I'm not even trying. Like if I was trying harder to understand I wouldn't need to ask.

#

And I don't want people to feel like I'm disrespecting them and their time by not trying hard enough.

#

I'm blathering now, but I hope that was all semi-coherent at least.

hard fern
#

Ultimately, I think what people were trying to say earlier is that it's just hard to know everything before you even start, and that a part of modding is the trial and error of trying to get something to work, and to encourage asking questions about things instead of feeling as if you have to know everything first.

When it comes to actually starting modding, having even a faint idea of what exactly you want to do first is key, because then you have something to focus your attention on. There is a lot of "learn as you go" but that's partly because there's so much to learn, it's unreasonable to know everything about everything before you start. Having an idea in mind gives both you and people trying to help a place to start from.

Knowing whether something can be done in just CP or if it needs C# is kinda something you won't always know unless you throw the idea out there too.

Even if you think a question may be dumb, if it being answered helps you in the long run, then I don't think it's dumb at all.

#

Oh man that was a wall

#

Oops

void aspen
#

Good morning everyone

#

I see you got some good discussions here

worn turret
hard fern
#

I guess tldr: pls don't worry so much or feel you're not trying hard enough, everyone is free to ask questions here no matter how small

rain inlet
#

I'm a measure none times, cut 50 times type of person lol

autumn ivy
void aspen
#

I once measured only two times and then had to sew everything back again

autumn ivy
#

should i add... another tier off tools on top of prismatic??

hard fern
#

Radioactive?

void aspen
#

But it worked afterwards so it's fine to make mistakes

#

As long as you learn

#

And it's okay to ask others multiple times too, isn't that the way people generally learn

worn turret
# hard fern I guess tldr: pls don't worry so much or feel you're not trying hard enough, eve...

I really appreciate it. I'm truly in awe of all of you. You know how to do so much and take the failures and setbacks in stride and get through them. I just kind of start to viscerally panic the more times something doesn't work and then I'm even less capable of actually fixing anything. 🤦‍♀️ And people try to help but I'm not even in a state to really comprehend the directions at that point, and then I panic about not being able to do what they tell me and letting them down.

worn turret
void aspen
#

I think radioactive should be in between iridium and prismatic quality

#

Unless the radioactive is super cool but has downsides of being unstable

#

Like power to chop a tree in one hit, give x3 wood but make you slowly lose life or energy while you hold it

#

Or a chance to give a random debuff on use generally

worn turret
#

I haven't really played since they added the green rain. Is that related to the radioactive stuff? (Without spoilers)

void aspen
#

Just the radioactive feature I made up in my head

worn turret
#

I really like the vanilla sprite for the radioactive ore. It looks kinda like the pebble from The Pebble and the Penguin. Has anyone else seen that movie?

void aspen
autumn ivy
#

is there a new xnb extractor we are supposed to use or is it still xnbcli??

#

because i cant get it to work anymore

worn turret
#

My xnbcli does still work though, for the record. Have you tried downloading it fresh? Maybe something happened to it.

#

Oh, you know, it might just be what you're trying to unpack. I've had certain files I've tried to unpack but nothing happens. I was looking for .pngs though so I figured there were none in there and moved on. It has successfully unpacked the ones I need it to I should say I guess. It's still a mystery what was in those other ones...

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!

worn turret
#

Do you need a certain one unpacked right now? I could do it for you and drop the stuff in here.

hard fern
#

Xnblci can't unpack some of the files

worn turret
hard fern
#

I just know i have run into some issues before

worn turret
#

Weird. I guess the world may never know. Hopefully it's nothing important in there. 😂

hard fern
#

Xnblci did not want to unpack shoecolors.xnb 😔

worn turret
#

Shoes are hard in this game. I downloaded a mod years ago that was supposed to let you have cute little heels, but no matter what I did I couldn't get them to show. (My character wears all black and I wanted to ditch the big brown boots)

worn turret
#

I'm gonna go to bed now. It's late. Hope everyone has a good day/night, depending on time zone.

vernal crest
ornate drift
#

Or if you do, just post them in DMs? probably

vernal crest
torpid sparrow
#

counts as piracy i think

ornate drift
#

oh, okay

#

wait- then why does TSR exist?

torpid sparrow
#

but i do remember once or twice asking for a png file here...i did not get bonched but i wont do it again SMCPufferSquee

torpid sparrow
#

or

vernal crest
#

Spriters

ornate drift
#

The spriters resource

torpid sparrow
#

oh lmfao

vernal crest
#

But yes I thought sims first haha

ornate drift
#

xd

torpid sparrow
#

i mean this server doesnt run tsr

ornate drift
#

that website has most of the png files

torpid sparrow
#

its a server rule

vernal crest
#

And I'd hope that TSR only shares things that are legally able to be shared

gentle rose
ornate drift
#

Ah

vernal crest
#

CA is very gracious in allowing us the freedom to use game assets that we do have and in return we like to be as considerate about how we use them as possible.

tribal ember
#

i was summoned

wispy bramble
#

It is also super duper easy to unpack the game files yourself

vernal crest
#

I was greatly honoured by being mistaken for you, Boggy!

torpid sparrow
#

when is the video tutorial from?

#

things get updated all the time

rugged bolt
torpid sparrow
#

im not sure what changed in 1.6 but i would not rely on that video

#

unfortunately reading the wiki, the documentation (and asking here) is the best way to learn imo

rugged bolt
#

Like I said, things seem to have worked pretty well, and nothing done in it seems to go against the documentation at least (I have been double-checking)

In the very least my custom map works and I can go there. I just really don't learn well via reading alone

torpid sparrow
#

so you said you're looking to add a custom warp in an existing map?

#

there are two ways for you to do it

rugged bolt
#

Yeah. I've been able to get my custom map working fine, I just need to be able to edit part of the town map to add a little path for the warp to the new map to go

torpid sparrow
#

you can do it in ur json or you can create a tiny little map and patch it over the existing map

#

which sounds preferable

rugged bolt
#

A tiny map... Yeah that might work
This was a quick mockup I did of what I intended to do. (the additional length is just because of that one tree stump by the museum) (and the actual warp is under the cherry tree)

torpid sparrow
#

ok you can add a map property inside ur map file

#

ur tmx

#

and then in ur json edit the town map

#

oh this is better

rugged bolt
#

I'll take a look in a moment.
Seems I made an oopsie on the tilesets at some point I need to quickly fix. Something about the filepath being wrong

#

I know when I was in Tiled I told it to make a new tileset using copies of the extracted vanilla tilesets kept in the mod folder, but for some reason the path had changed to be the original unpacked version even on my brand-new map, that was weird.

torpid sparrow
#

if anyone is familiar with tilesheetinator they could explain it to you since it's suppposed to make map making a lot easier and prevent you from having to struggle with stuff like that

#

put a pin in that if ur interested

vernal crest
#

Do not fear, I am here to preach about our lord and saviour tilesheetinator

torpid sparrow
#

to add a warp to your tmx, you need to add a Warp map property and then the information is x yof your current map, aka where you want the warp to be then Location name of where you want the warp to lead, and then x y of the coordinates of where you want to arrive in that location

#

ex. 12 12 Town 115 18

#

The warp is at 12 12 on my map, and leads to 115 18 in Town

rugged bolt
#

So how do I handle there being multiple warps to different locations? Or a path that's 2-wide?

torpid sparrow
#

multiple warps to different locations?

#

like on the same map?

#

you can just add more warps provided they dont overlap

#

2-wide, you'll need two warps

#

you can make them lead to the same place

rugged bolt
#

So warps are tiledata things then?

torpid sparrow
#

No

#

regular warps no

#

you can just add to map properties without touching any of the tiles

#

there are other warps that require tiledata but a regular warp you don't need it afaik

rugged bolt
#

Okay it's just when I tried having multipel warps in the warp property it threw back errors so I wasn't sure how I'm meant to fix it

#

If I just have the one (0 13 Town 115 94), it works. If I tried adding a second (0 13 Town 115 95) after it didn't like it

vernal crest
#

You can add tiledata warps but I wouldn't recommend it for a situation like this where there are no doors or other things to click on, as NPCs can't use most tiledata warps.

#

You can't have two on the same tile

rugged bolt
#

But the warp data is on the map, not a specific tile

vernal crest
#

But "0 13" refers to a specific tile

#

The tile at x = 0, y = 13

rugged bolt
#

Oh that's just a typo on my part

torpid sparrow
#

yes you add the coordinates into the map property

rugged bolt
#

The original text I had was 0 13 Town 115 94
0 14 Town 115 95

vernal crest
#

Did you have it with line breaks like you have there?

rugged bolt
#

I did at the time

vernal crest
#

You cannot use line breaks

rugged bolt
#

ah. Does anything else break it up or is it just an endless string?

#

i.e if it's written 0 13 Town 115 94 0 14 Town 115 94 or do you add separators?

vernal crest
#

It is an endless string and no other characters are allowed

#

That is the correct way to write it

rugged bolt
#

okay that makes more sense. It didn't seem intuitive but okay, that's a lot better. THanks!

Let's see... oops. A lot of my tiles are on the "Paths" layer which made them invisible. I guess that's an easy fix. I thought i was limited to just 1 layer per type but when I opened the Town map earlier it seemed that wasn't the case

vernal crest
#

It won't work for the Town->Your Map warps though, they can't be done in Tiled

rugged bolt
#

Oh yeah I know that, I already have the town's warps set up via the eidt map so all I'll need to do is apply the replacement area

vernal crest
#

Yeah 1.6 let us start using numbered layers which has made layering so much easier haha

#

Just be aware that numbered layers are for visuals only, so none of the hardcoded logic associated with layer types will work with them (e.g., Buildings layer tiles are impassable but Buildings1 layer tiles are not)

rugged bolt
#

Alright, that's doable. I should be able to fix my mistake just by renaming my current "Paths" layer and making a fresh, empty one to replace it

#

I'd already set up the Buildings layer with walling in mind

#

What's the map boundary limit for the camera to avoid black space in outdoor areas?

torpid sparrow
#

If you care about compat that map patch would be incompatible with SVE I think

polar escarp
torpid sparrow
#

If not then who cares SMCKekLmaoDog

rugged bolt
#

Yeah I'm not. I do like SVE in principle but a lot of its extra maps between locations are just way too big for my liking

#

That said if I ever did want to re-implement SVE I'd modify my mod to compensate. It's just my first mod so it's only ever meant to be used by me and my BF anyway (currently just a farm location, but the general idea is just to make little NPC versions of us...which is going to be weird when we're playing ourselves in our multiplayer game)

vernal crest
vernal crest
rugged bolt
#

True, that also would work.

And ah, I hadn't considered zoom size affecting it. Hm... Best leave it for now I think. Besides, if I try to fix it now I'll probably get a lot of weird issues trying to move everything

autumn tide
#

helloo I am nearing the brink of insanity, still no clue why this doesn't work (have updated all the jsons)

vernal crest
autumn tide
#

will do!

#

doesn't look like it :/

vernal crest
#

Okay well that is hopefully an easy fix then

#

You have possibly just accidentally got two copies of the mod so you need to figure out where they both are and then put the right one in your mods

autumn tide
#

huhhh okay lemme see

#

hmm there doesn't appear to be?

tall inlet
#

I've created a working foundation of a custom NPC and I'm wondering as I'm reading about creating the dialogue about i18n but specifically if I should be investigating and creating i18n specific code immediately for the dialogue. Or am I understanding correctly that the i18n converters I've read about can take a standard dialogue.json file and convert it after I've written the dialogue already.

#

Or if I'm misunderstanding altogether please let me know

lucid iron
#

Besides translations you can also use em for other fun things like randomization

tall inlet
#

Well it's certainly a new thing for me and I'm trying to read about it so I guess I'll figure it out.

vernal crest
#

!converters You can also experiment with the converter yourself using just a couple of lines and see how you find it and then decide from there

vernal crest
#

It's the first link in other tools

#

I like to use it for some things and then edit the key format. Other things I write my i18n tokens out manually for.

tall inlet
#

Is the content.json referenced the main content.json file or is there more than one content.json file (the second one being in the i18n folder)?

vernal crest
#

There can only ever be one content.json

#

However, the reference just means "the file that isn't the i18n"

tall inlet
#

So that file ends up just being a really long file

vernal crest
#

It doesn't have to go into your content.json

#

You can use Include patches to split your content.json file up into other files if you like (not named content.json)

tiny zealot
#

it's very funny when you fuck up and SMAPI errors out with "your mod crashed while editing [asset], which may cause errors in game."
i can see that! this is the error! /lh

vernal crest
#

Oh no I am scope creeping myself

#

What if....I use draw layers to make the sign

#

I must try this

tall inlet
#

Actually I realized, so instead of a dialogue.json file it's specifically the i18n file that replaces it, correct? I of course have been referencing the modding wiki as I've been working

#

Where the main text goes that I'd write

vernal crest
#

Erm, I'm not entirely sure I follow the question

#

If you already have dialogue written into your NPC's "Mon" key, for example, that dialogue gets moved over to the default.json file and what is left in the "Mon" key is the i18n token for the key in the default.json file

tall inlet
#

Well based on what I'd done with the creating a custom NPC, I'd understood there to be several files, and the dialogue.json file to include things like "cc_begin" for example. If I'm understanding correctly, if using i18n, then there isn't a need for a dialogue.json as it functions filling that role.

vernal crest
#

No, you are incorrect, I'm afraid.

tall inlet
#

No worries, I haven't messed up things yet

vernal crest
#

You do not need a dialogue.json file regardless of i18n but you still do need an EditData patch that adds the dialogue keys (e.g., cc_begin) to the game.

#

Would it help if I typed up a little example with just one line to show you the change?

tall inlet
#

Why not sure

vernal crest
#

Okay one sec

#

What is your NPC's name?

tall inlet
#

Gerald

rugged bolt
#

Just wanted to say thank you very much for the help! Now the replacement area works and I can fine tune the errors. xD

vernal crest
# tall inlet Gerald

So this is what you've got now:

// content.json or dialogue.json or skibidi67.json - it doesn't matter if this part is in the content.json or in a file of any other name (as long as it isn't content.json, manifest.json, or in the i18n folder)
{
    "LogName": "Add Gerald's dialogue",
    "Action": "EditData",
    "Target": "Characters/Dialogue/{{ModId}}_Gerald",
    "Entries": {
        "Mon": "Wow, Monday already?"
    }
}

This is what you'd change it to:

// content.json or dialogue.json or skibidi67.json - whatever
{
    "LogName": "Add Gerald's dialogue",
    "Action": "EditData",
    "Target": "Characters/Dialogue/{{ModId}}_Gerald",
    "Entries": {
        "Mon": "{{i18n: dialogue.gerald.mon}}" // The key inside the token does not need to be dialogue.gerald.mon, it can be anything you like. This is just the i18n key convention I use to keep my i18n tidy.
    }
}
// default.json
{
    "dialogue.gerald.mon": "Wow, Monday already?"
}
#

Drat I cannot do draw layers for the farm one because it is a map! Curses!

tall inlet
#

Small side note, I'm noticing your initial //comment says content.json and then also says (as long as it isn't in content.json)

#

I appreciate the writeup

#

If I might ask another question, and I recognize it's somewhat unrelated but I was thinking about it last night, I already have created a schedule for the character but I would be more than happy to make it compatible with the biggest overhauls such as SVE, as well as, if I can get the time to do it, the dialogue compatible with it as well. What would need to be done, if anything, early on to make this happen? I have not done any festival data or events yet.

vernal crest
tall inlet
#

I'm just going to work on dialogue today

vernal crest
# tall inlet If I might ask another question, and I recognize it's somewhat unrelated but I w...

Dialogue is pretty easy because you can just make sure that your NPC doesn't say things that actively contradict the other mods and then you're compatible. Schedule is harder because the maps change, so if you want to do early preparation the best thing you can do is have those mods installed and check if there are any major changes in them to what you're seeing in vanilla. However, it's more the maps themselves that are at risk of clashing - are you giving Gerald a house or anything?

tall inlet
#

Not yet. I actually am considering him "living" at the saloon for the moment. If I address that later I'll look more into it

vernal crest
#

If you want to add integration to other mods (so your NPC actively participates in things added by those mods, comments on the characters, etc) people usually make additional dialogue patches that are only active if the respective mod is installed.

vernal crest
tall inlet
#

That makes sense. I hadn't thought about that because I don't use a lot of individual custom character mods, primarily just using the overhaul ones in my own playthroughs, so I can see that.

#

I will look into creating a more personal space for Gerald. I think the saloon idea fits the character (and I'm not just saying that to be lazy :P) but I obviously need to make sure that he fits with a degree of future-proofing too as well as unexpected compatibility

#

I'm not the most well-versed in other stardew character mods but I'm 95% sure, having done the research, that my character fits a certain niche that people will appreciate if I actually finish and publish it.

round dock
tall inlet
#

100%. It's the "what if I finish, that's the next step" thing. Which, frankly, I want to have a release, but I will not let that stop me

#

And just thinking ahead so I don't end up regretting not having prepared for it

vernal crest
#

I love NPC mods, I download so many of them

tall inlet
#

Minor question: is the {{ModId}} snippet as written or is it generic and needs to be replaced by the unique one specific to my mod, or does it call that on its own?

void aspen
#

no need to replace

#

in content and manifest

vernal crest
#

It is as written. It's a CP token that CP automatically replaces with the value of the UniqueID field in your manifest

tall inlet
#

Thanks!

void aspen
#

tho Tiled doesnt recognise it so you have to manually type that when you work inside of it

tall inlet
#

What is tiled?

void aspen
#

a software to edit and create new maps

tall inlet
#

Ah, not doing that yet.

void aspen
#

yeah it can wait

tall inlet
#

I'll figure that out when I get there I guess

slow basin
#

.if i have an npc on a map connected via central station can i still have the characters from that map visit the main stardew vanilla map?

vernal crest
#

Yes but they will need an NPC warp because they can't use central station

#

I set my NPC warps up so it looked like they used the central station ticket machine too lol

slow basin
#

ooh fun!

#

i want to do that but do i have to set up a map edit to the bus stop so they can return 2 (i assume yes but i wanna check)

vernal crest
#

Yup

slow basin
#

cool

#

ill worry about that when im setting up my custom trailer town map

#

a town i might expand upon further in the future when i add more npcs in the future after these guys

vernal crest
#

It's very straightforward but let me know if you need an example when you get to it

slow basin
#

ty aba!

primal garden
#

How do I make a content json for content patcher?

autumn tide
#

!startmodding

ocean sailBOT
#

Making mods can be broadly divided into two categories:

Usually it’s easier to start with making content packs, since you don't need to learn programming.

eternal glade
#

how does the opaque effect in layering work for tiled? like when i walk behind a tree in game and you can see your character?

tall inlet
#

Is there a comprehensive list of sorts that states all of the things that happen during the year(s) that aren’t festivals located on the calendar but that still happen on specific days? Such as berry season, the mountains opening up, etc?

ornate locust
fossil osprey
eternal glade
#

ahhhhhh ty ty

ornate locust
#

Building layers are ones you can't walk through, Back layers are like the floor, you walk over them

eternal glade
#

yes im just being silly

fossil osprey
#

The transparency is automatic if that was your question

tall inlet
# fossil osprey Maybe there is such thing on the wiki?

I was unable to find anything compiled specifically. There’s the calendar but those events correspond to festivals. And I’m looking to make dialogue that suggest awareness of all the other stuff that goes on that isn’t specifically tied to a conversation topic or a festival, if anything.

fossil osprey
#

I guess you'll need to compile it yourself, that just means no one had a use for such thing yet

quasi dew
#

hey, in your mod description on nexus, can you use a bulleted list in spoiler text?

#

or even a list with multiple lines of text?

fossil osprey
#

I think I've seen people do it, but no idea how it works

quasi dew
#

nevermind, I figured it out!! I think I had too many spaces

modest dagger
#

question, how is the gift taste determined for an npc if the group isn't defined in their gift tastes. Ie non fruit tree fruits. All Vanilla NPCs have it specifically tagged but modded NPCs might not so how would we determine their reaction without going into the game and giving them one

brittle pasture
#

they fall back to universal tastes

modest dagger
#

okay but how can I determine that for the stuff not listed on the wiki? ie eggs, milks, forage and fruits

torpid sparrow
#
Stardew Valley Wiki

The following is a sortable table of gifts relevant to each villager in Stardew Valley.
Universals apply to all villagers, but there are exceptions. Individual villager tastes override Universal tastes in many cases, as shown. See Universal Gift Tastes for more information.

#

wiki

modest dagger
#

i'm asking for non vanilla npcs who don't have it listed.

torpid sparrow
#

isnt that what selph said

#

default to universal tastes

modest dagger
#

it is but the wiki doesn't list default universal tastes for some categories

autumn tide
#

oh?

modest dagger
#

bc it varies villager to villager

#

specifically it lists eggs, milks, fruits and forage

autumn tide
#

aaah, like quartz

#

got itt

#

you could check the decompile? afaik all objects should have a universal taste, even if everyy villager has a unique preference

torpid sparrow
#

i think it might have something to do with category

#

i was changing categories for my custom items and the default gift taste was changed

primal garden
autumn tide
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.

dire kestrel
#

txt file?

#

!fileextensions

ocean sailBOT
#
Hidden File Extensions

Windows and Mac hide most file extensions by default. If you are creating or updating mods, it's helpful to show file extensions so that you can be sure all mod files are named correctly.

To show file extensions on your computer:

On Windows 10, open File Explorer, click on the View tab, then check the File Name Extensions box.

On Windows 11, open File Explorer and click on View > Show > File Name Extensions.

On Mac, open Finder, and in the menu bar, click on Finder > Settings (or Preferences) > Advanced, then check the Show all filename extensions box.

autumn tide
#

(new command unlocked)

primal garden
modest dagger
#

screw it i got a blank npc i'm going to just start giving her items and writing down the reaction

#

we doin this old school

autumn tide
#

could you still upload it please?

half tangle
#

post the link to here

primal garden
#

oh it said .txt '

#

sorry yall...

primal garden
half tangle
#

yeah, an OS not showing file extensions will get you

autumn tide
#

it's okay LOL

proven spindle
royal stump
#

afaik, the dialogue key "Rainy_Day" also won't be used
only the marriage dialogue asset uses it, and in there it's also formatted like "Rainy_Day_0" (and should have multiple from 0 to 4, etc)

modest dagger
#

me realising i made this npc so long ago I can't remember what the dialogue lines mean 😭

calm nebula
#

On the npc

verbal glacier
brittle pasture
#

not all of them are listed (eggs, milk, etc. as mentioned)

#

if they aren't listed they're neutral

primal garden
torpid sparrow
#

Upload through the json validator

#

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

half tangle
#

For short bits of code, you can embed them using three backticks
```
code
here
```
looks like

code
here
#

otherwise we only see a bit of a preview of the file (and it's usually even worse on mobile)

#

for longer stuff, use the website that wem linked

primal garden
torpid sparrow
#

It’s not for just errors

#

It’s so we can read it easily

#

With no need to download a file

primal garden
half tangle
#

(I can't offer insights into this particular code, though, so I'm trying to make it easier for other people to help you)

torpid sparrow
#

i probably could help but ill need a json link

modest dagger
primal garden
#

{
"Format": "2.9.1",
"Changes": [
{
"Action": "EditData",
"Target": "Characters/Dialogue/Abigail",
"Entries": {
"Rainy_Day_0": "This rain reminds me of herby oh that dawg makes me crazy. Did he make you?"
}
}
]
}

what's wrong with the code?

torpid sparrow
#

rainy day is marriage dialogue

primal garden
#

how do I change it for normal

torpid sparrow
#

im 80% sure let me check

primal garden
#

rain

void aspen
#

if I have several new same-type objects, can I batch load them or I have to load them one by one with this for each load?

torpid sparrow
#

rain

#

its just rain

void aspen
#

scaled down cuz it doesnt matter its just an edited joja cola data

torpid sparrow
#

actually that might be the schedule key

#

thinks

void aspen
#

and If I do load them then which ID do I give them

torpid sparrow
#

similar to engagement dialogue

brittle pasture
#

it's basically a template system; you load one json file multiple times but with different values passed into it

#

so there's still some repetition but it saves you having to repeat the common fields

torpid sparrow
void aspen
#

My objects will only differ in texture and buffs they give

#

and oh I forgot to create a new shop

torpid sparrow
#

hm i should add rainy dialogue

#

how did i miss that

void aspen
#

which tmx is the best to use as a base for future rectangular replacement

torpid sparrow
#

what does that mean

#

rectangular replacement?

void aspen
#

one sec trying to come up with a better phrase

torpid sparrow
#

real

primal garden
#

So what should I change it to?

void aspen
#

when you dont need to replace a whole map but only some tiles

torpid sparrow
#

open the vanilla file

#

to see how the entry is formatted

#

i cant currently

torpid sparrow
#

is it not different for whatever ur trying to patch

lucid iron
#

I got smol examples of both

void aspen
#

map patch is the thing

torpid sparrow
#

if ur patching town you wouldnt use a base taken from mountain, im confused

void aspen
#

so am I and im so sorry idk how to explain it better

#

😭

torpid sparrow
#

what are u trying to do specifically

latent mauve
#

Any map patch can use ToArea and FromArea to only grab a rectangular section to replace rather than the entire map

lucid iron
#

The second way of using MapTiles has a limitation, you can't use any tiles that aren't in a preexisting tilesheet on the map

void aspen
#

I wanna create a 2x3 vending machine with animation and Action Shop which then I could patch to different places in world

lucid iron
#

But i prefer this way if it's just 2 times whatever

void aspen
#

is creating a separate tmx is too much for that

lucid iron
#

Oh yeah animation is another limitation

#

Follow example 1 then

#

It adds a 2 tile tall animated chimkin

#

Next to krobus

#

Another sillier approach is to make it a furniture or a big craftable

torpid sparrow
#

oo overlay

lucid iron
#

You can spawn stuff with ftm

#

And then make it do shop things with spacecore

#

This is sillier but potentially bypasses map compat woes kyuuchan_run

void aspen
#

I gotta learn new frameworks yeah

#

all I do is cp only

lucid iron
#

If u were doing the map approach content patcher is all you need

buoyant moon
#

If an NPC is invisible for the day (e.g. end invisible from an event), will events that have them as an actor but don't have NpcVisibleHere as a precondition still trigger and show them in it?

void aspen
torpid sparrow
#

that is a great question

void aspen
#

thanksss

torpid sparrow
#

test it xd

tawdry hazel
#

hi anyone online who has experience doing farm renovation maps?

buoyant moon
#

I'm unfortunately nowhere near a computer to check, that was just idly wondering

#

I want to say yes because I think I ran into that testing something the other day but would have to double check both events to be sure, wasn't thinking about it at the time

void aspen
#

hope this will do

half tangle
ocean sailBOT
#

Ask your question or describe your issue here, and someone will help if they can!

half tangle
#

oh, Governor's response was less descriptive than I thought it would be... but there are lots of people around who may be able to help with whatever you're wondering about. It helps to ask a specific question!

void aspen
lucid iron
#

No it's for me

void aspen
#

ar

lucid iron
#

!vscjsonc

ocean sailBOT
#
How to make VSCode not scream at json comments

In Visual Studio Code, go to File -> Preferences -> Settings, then search for "associations", and in the "Associations" setting, click the Add Item button to add an item with key *.json and value jsonc (see image).
If you are making a content pack for Content Patcher, you should consider using its json schema so that VSCode can tell you if your patches are valid, you simply have to add

"$schema": "https://smapi.io/schemas/content-patcher.json"

at the start of your content.json file.

lucid iron
#

I prefer to commit the $schema some people just set vsc to auto use it

void aspen
#

I love when my mod doesnt scream with ton of errors in the log on the first launch

#

but does on save load yay

#

oh its from the other mod phew

#

yay it works

#

now all is left is to creat 32 object entries and then add them to my shop menu

agile terrace
#

WOO! That's awesome

meager ginkgo
#

I'm trying to make a mod that adds a new npc & shop but there's no room for a store building so instead my plan is to make her come to pelican town every couple of days and set up a booth/stall instead

#

does it matter if the bus is repaired or not in order to let her visit?

void aspen
#

I think it could have the bookseller logic and just appear out of nowhere

#

like some npcs on luau

#

or was it some other festival

meager ginkgo
#

I guess I could give her her own truck and just put it on the road behind/in front of the bus

torpid sparrow
#

for realism a truck probably would be best

brittle pasture
meager ginkgo
#

would it be better to make the truck a shop or just have the truck there and the shop in pelican town?

brittle pasture
#

as for immersion/lore/balance/etc., it's all up to you

meager ginkgo
torpid sparrow
#

yes u could

brittle pasture
#

possible too

meager ginkgo
#

ooo ok, lots to think about thx