#making-mods-general

1 messages · Page 383 of 1

opal tendon
#

they are two different mods I already published that people commented on saying they wanted to use both at the same time but idk how to do that for them

#

and when they are installed at the same time you get that error yes

#

and it turns into a dog

uncut viper
#

you need to use unique Load targets

#

you cannot reuse them across different mods

#

they must be unique across ALL mods

red egret
#

that was me lol

uncut viper
#

if they are two different mods then i am unsure why they both have 21526 in the asset name

opal tendon
uncut viper
#

but this is why its recommended to use the ModId token in asset names

#

as those are guaranteed to be unique across mods

#

so long as you use different uniqueIds. which you should be

opal tendon
#

so even if the texture name thing in the red message is the same as long as the ID is different it will be okay or is that the ID name?

uncut viper
#

the Texture must match the name of the asset you want to use

red egret
#

what if they replace cat 1 and 2? and not both 3?

uncut viper
#

the problem is not your "Texture": 25216Texture line. forget about that line for now

#

the problem is you have two different mods that have a Load patch with the same target, 25216Texture

opal tendon
#

oh like this spot or?

uncut viper
#

yes. both of your mods have that first one written identically in them

opal tendon
#

that's because they are the exact same file only difference is the pixel art SDVpuffercoolest

uncut viper
#

doesnt matter.

#

the Target name is completely irrelevant to the texture itself

#

like i said, they MUST be unique across ALL mods

opal tendon
#

I have to change it to the name of the mod?

uncut viper
#

otherwise they will overwrite each other or, in the case of Load, only allow one to win

#

bc you havent set a priority

crude plank
#

not the name of the mod, just to a different one from your other mod

uncut viper
#

both mods are trying to say "I want to decide what this texture is"

#

they obviously cannot both be the one to decide

opal tendon
#

so I could change the 2 to a 3 for example and it will be okay?

uncut viper
#

why are you not using the ModId token

opal tendon
#

idk what that is

uncut viper
#

"Target": "{{ModId}}_Texture"

#

use the ModId token

#

your ModId should be different across two mods

#

therefore, this will make them unique

opal tendon
#

do you know which thing it would be in I don't see it with control F

uncut viper
#

you just posted a screenshot of it

opal tendon
#

okay I am not understanding 🥲

uncut viper
#

change the Target to exactly what i just wrote

opal tendon
#

okay ty

crude plank
#

modid is the mod's unique id so then if you rename your files to have that as a prefix, when you load the files you don't have to use the the entire filename, and if you need to change that filename you then don't have to change anything in the json

uncut viper
#

and then change everywhere else you wrote that Texture to match

opal tendon
uncut viper
#

if you replaced the Load target with {{ModId}}_Texture then everywhere else that said 25216Texture must match

opal tendon
#

okay ty!

gaunt orbit
#

okay enough Map Suffering, time to do something more fun

brave fable
#

would you like some more maths SDVdemetriums

calm nebula
#

Yes

tender bloom
#

maths SDVpuffereyes

ivory plume
#

Monthly mod stats time!

Milestones

  • Content Patcher now powers over 50% of all Stardew Valley mods! SDVpufferparty

Mod compatibility

77.6% of SMAPI (C#) mods are compatible or have a workaround, up from 76.8% last month.

Unique mods by type

July has been unusually active, with 510 (!) more mods this month. That includes:

  • +319 Content Patcher;
  • +68 SMAPI;
  • +57 Alternative Textures;
  • +42 Fashion Sense;
  • +7 Farm Type Manager;
  • +4 XNB;
  • +3 Mail Framework Mod;
  • 0 Better Artisan Good Icons;
  • 0 Custom Furniture;
  • 0 Custom Music;
  • 0 Dynamic Game Assets;
  • 0 TMXL;
  • 0 Shop Tile Framework;
  • -3 Json Assets;
  • -6 Producer Framework Mod;
  • and +19 for frameworks with <100 content packs.

Content Patcher packs

We have 11,678 Content Patcher packs.

The top five Format versions remain...

  • 2.0 (3,461 ↗ 3,547), 2.3 (811 ↗ 827), and 2.4 (590 ↗ 600) for Stardew Valley 1.6;
  • 1.19 (560 ↗ 563) for Stardew Valley 1.4;
  • and 1.3 (482 ↗ 484) in old unofficial guides.

Open source

  • We have 3,526 tracked C# mods, of which
  • 2,246 mods (64%) have a source code repo, with
  • 1,193 (53%) in a multi-mod repo and 1,053 (47%) in a single-mod repo.

Web costs

And finally, web hosting costs for the SMAPI.io site, update-check server, and API held steady around US$230/month. (The graph is always a bit behind due to billing cycles.)

See also

And that's it for this month!

tender bloom
#

pathos heard maths and said "stats!"

#

it's interesting to me AT is #2 framework

#

not too surprising that JA is on a slight downward slope

brittle pasture
#

XNB SDVpufferwaaah

tender bloom
#

For pathos: are hosting costs going ok? i see a lot more volatility recently

trim sand
tender bloom
#

and a somewhat higher level since 1.6 dropped

#

True but I feel like AT has never been like absolutely critical to me

gaunt orbit
#

> -3 JA
> +4 xnb
To obtain something, something of equal value must be given in return. This is the law of equivalent exchange.

tender bloom
#

It's nice but I don't always use it

uncut viper
#

(hey Pathos, what do you use to make the pie chart? or do you make it by hand)

tender bloom
#

i would rather +3 JA -4 XNB

trim sand
#

xnb mods SDVpufferwaaah

tender bloom
#

gotta be real

trim sand
#

true. JA is atleast outdated but compatible

brittle pasture
tender bloom
#

"other" is still #3 so there's a fair bit of diversity i guess

#

I continue to feel good about my choice to put some work into keeping JA functional

#

(very self-congratulatory bragging)

#

(credit also very much goes to Casey for looking at my clumsy code)

patent lanceBOT
tender bloom
#

maybe i'm just not enough of a horse girl SDVpuffersquee

calm nebula
#

Hi classical!

tender bloom
#

hello atra!

gaunt orbit
#

my avatar is a horse girl /jk

tender bloom
#

i did enjoy aster's fridge AT pack

#

helped me keep my fridges organized

#

not sure if it's still up

uncut viper
#

tbh i think one of the more surprising things to me is that the highest CP format in the top five is only 2.4

brittle pasture
#

(I added machine rule copying to EMC per request but tbh AT skins for big craftables is probably still the better method because you can uninstall it cleanly)

tender bloom
#

2.0 is a nice round number

#

i can see people just sticking to that

#

also i think a lot of 1.6 tutorials came out like right after 1.6? so maybe that's why?

uncut viper
#

im not surprised that 2.0 is number 1

tender bloom
#

modding wiki tutorials being updated to use the magic template might help tho idk

uncut viper
#

im surprised that 2.5, 2.6, and 2.7 arent even in the running

lucid iron
tender bloom
#

hmm — i wonder if the rate of new mods has slowed over time? but no, it looks pretty linear to my eye

calm nebula
#

50% of mods being content patcher mods is definitely a SDVpufferparty for pathos SDVpufferheart

lucid iron
#

Not expecting you to go do it so fast 3sSmolMiku

tender bloom
#

CP taking over the world for sure

calm nebula
#

It's awesome!

uncut viper
#

93.4% of mods are already propped up by Pathos—

brittle pasture
lucid iron
#

Hm maybe i can make like

calm nebula
#

Got it. Worse keg time

tender bloom
lucid iron
#

Lightweight mps or something

opal tendon
# opal tendon okay ty!

changing all my stuff to {{ModId}}_Texture fixed it so that the spectral bunny is showing up and the error is gone and everything but the cinnabunny isn't showing up does anyone know why that could be?

lucid iron
#

Just time reductions nothing else

calm nebula
#

No. Worse keg time

tender bloom
#

for the cinnabunny, where is it not showing up?

calm nebula
#

Suffering brings joy

uncut viper
opal tendon
calm nebula
#

(I'm not even home yet 😦 )

uncut viper
#

step 2 is turning those textures into new breeds instead of overwriting a vanilla breed

opal tendon
#

ohhhhh

tender bloom
#

did you make it point to a different place as the other bunny?

uncut viper
#

they both currently overwrite the same animal

#

(i presume)

#

therefore whichever mod loads later wins

opal tendon
#

idk if they overrite any

#

yeah the OG mod page says "Does not replace/overwrite other pets"

#

unless you mean they are overriding each other

uncut viper
#

well the screenshot you showed earlier showed you replacing the 0th rabbit breed

opal tendon
#

oh

uncut viper
#

the one with the 0 ID i mean

#

it also looks like it was replacing the entire Rabbit animal data?

opal tendon
uncut viper
#

yes the Nonconfigurable version of this is literally replacing the entire Rabbit pet

ivory plume
#

(I'm used to posting these late at night; I came back expecting maybe one or two comments. SDVpufferpensive)

opal tendon
#

oh

#

how do I fix that?

calm nebula
#

Quick, bluebs, distract us with math!

uncut viper
#

you will need to learn to use TargetField in Content Patcher to only edit the rabbit's Breed data and make your own new breed of rabbit, one for each texture

#

that said, i am not the person to ask about how to make new animal breeds

ivory plume
calm nebula
uncut viper
#

i think you need C# for that

ivory plume
opal tendon
#

say it isn't so

uncut viper
#

(for clarity's sake thats a joke @ atra cozy you dont need C# for breeds)

opal tendon
#

oh okay

calm nebula
tender bloom
brave fable
tender bloom
#

nooooo

#

this is the worst

calm nebula
#

Awesome

tender bloom
#

no math?

brittle pasture
# opal tendon how do I fix that?

The key of Data/Pets are the unique IDs for every pet. Right now that mod adds a pet with the ID "Rabbit", and your (two) mods are also adding pets with ID "Rabbit" so they're all stepping on each other's toes

calm nebula
#

Can I nerdsnipe y'all with my work problem in formal logic

uncut viper
#

if you really wanted math i could give you more combination problems

tender bloom
#

i don't know enough formal logic probably SDVpufferpensive

brittle pasture
#

what should you do to fix it? (I want you to try figuring things out yourself)

tender bloom
#

ok that's a dirty lie i did take logic in college but i suspect you have a programming type problem

brittle pasture
#

(it doesn't involve adding new breeds. you can, but you don't have to)

calm nebula
#

Wellll

opal tendon
#

(gonna just make a copy of this in case I ruin it)

iron ridge
vernal crest
round timber
#

pathos has a patreon that funds it i believe

ivory plume
tender bloom
#

interesting! right after 1.6 it looks faster than linear, but tapering off to linear after 1.6.9 or so, at least to my eye

uncut viper
#

dont like that i saw the title of that and thought "August 2025? future pathos..." before realizing that it is, in fact, actually already August tomorrow

tender bloom
#

time comes for us all SDVpufferpensive

ivory plume
opal tendon
brave fable
#

gmt+10 august 1st. time comes for me sooner. fear the future

opal tendon
#

welp

uncut viper
ivory plume
uncut viper
#

dunno about other git hosts

tender bloom
#

the database does store the licenses

calm nebula
brittle pasture
tender bloom
#

what atra said

uncut viper
#

does it? i never look there tbh

brittle pasture
#

remember, the Target that you Load into and the value of Texture must match

opal tendon
tender bloom
#

it does, i know this bc i sometimes get curious and look there

#

if you add any special notes ot the license it stops being recognized tho

brittle pasture
#

that is... definitely overzealous

tender bloom
#

so it's not a perfect system

ivory plume
brittle pasture
#

you only need to change the key of Data/Pets

opal tendon
#

okay I will try again

tender bloom
#

oh interesting, i didn't realize it's an image autogenerated

vernal crest
brittle pasture
#

hmm wonder why it thinks casey's repo is unidentifiable (it's MIT with exceptions)

opal tendon
uncut viper
#

part of me wants to write a little script now to find the most commonly used license is for stardew mods
but the other part of me just already expects it to be MIT

rich tapir
#

im using day/night tiles in content patcher do i put them both on the same layer?

brittle pasture
ivory plume
vernal crest
tender bloom
#

any exceptions make it unknown, yeah

#

i think one of mine has some extra notes

brittle pasture
#

they're trying to add a new pet rabbit, using another mod as a reference

tender bloom
#

and i could see it flip-flopping as i edited

opal tendon
#

oh yeah it kicked me it out again its very jarring too when it happens LOL

rich tapir
#

im using day/night tiles in content patcher do i put them both on the same layer?

tender bloom
tender bloom
#

typically you put the day tile in and make the night tile swap out via the map properties, iirc

#

you can reference the lightposts in Town for an example

brittle pasture
opal tendon
rich tapir
#

i put the day window sprite on back2 now do i put the night window sprite on back2 or no

tender bloom
#

i would say MIT and GPL are the most popular but it depends on how you count the GPLs

#

no, you use just use the map property to swap out the sprites

#

it needs to be on the same tilesheet iirc

uncut viper
#

i feel like i see much more MIT vs GPL even if i lump all the GPLs together. i know thats just anecdotal tho

tender bloom
#

but if you put the same thing on back2 in the same tile twice it will just overwrite

#

Well, the other thing is that casey and aedenthorn account for some staggering % of all mods

rich tapir
#

so i put the night tiles on back3?

tender bloom
#

no, leave the night tiles alone

#

add a map property

rich tapir
#

okay

tender bloom
#

though, idk offhand if day/night tiles affect back2, never tested personally

#

Casey's are all MIT with exceptions and aedenthorn's iirc are all GPL?

vernal crest
delicate smelt
#

i know decompile,but the decompiled game code is too long,i cant find the code i need

tender bloom
#

so, unfortunately that is sort of how decompiling goes

#

you likely want the Weapons.cs file

#

Try Code/Stardew Valley/StardewValley/Tools/MeleeWeapon.cs perhaps

rich tapir
#

i have my npc's house in the forest, how do i stop debris from spawning near his house

latent mauve
#

You can probably use the tile property NoSpawn All for a TileData object that covers the area of your house patch?

rich tapir
#

thanks

latent mauve
#

It goes on the Back objects layer

rich tapir
#

what if i want trees to spawn that the player can't cut down, because my npc is a forester and i want him to cut trees near his house

brave fable
#

unfortunately, protected trees are a feature specific to the Town location, and you can't mark other spawned trees as cannot-be-cut-down

rich tapir
#

oh

brave fable
#

you can still simply place trees as tiles around his house, and maybe there's other creative workarounds possible

tender bloom
#

i think there's frameworks to help add new trees like that, but i don't recall which one

#

like maybe EMP

#

or FTM or something

rich tapir
#

sorry im new to modding, what's a framework

tender bloom
#

a mod that lets you add extra functionality

#

like Content Patcher is a framework because you can write content packs for it

rich tapir
#

oh

tender bloom
#

Farm Type Manager similarly

rich tapir
#

okay

tender bloom
#

Esca's Modding Plugins (EMP) adds new features you can use in content packs like CP packs

rich tapir
#

can you have two framworks?

round timber
#

yes but they have to be separate manifests

rich tapir
#

okay

round timber
#

but you can bundle the two folders in a larger folder that people can download

rich tapir
#

can they have the same content.json

round timber
#

no

brave fable
#

(you can only make a single content pack per mod, but some frameworks run their behaviours through the game content -- so you could use spacecore extension features from a CP mod by targeting its data assets as specified in its documentation)

round timber
#

they are functionally separate mods but you just happen to bundle them together

rich tapir
#

that's really complicated

tender bloom
brave fable
#

i promise it's a simple concept and very simple in practice, but hard to explain simply hahah

round timber
#

you can look at some expansion mods if you want examples. theyre the ones that often do this sort of thing

tender bloom
#

I would not recommend copying that way of adding enchantments

round timber
#

sunberry, ridgeside, etc

rich tapir
#

okay maybe

tender bloom
#

I would instead recommend using an InventoryChanged event to check whether the sword you want to add the enchantment to has been added to your inventory

#

and then add the enchantment if it's your sword

round timber
tender bloom
#

everything is bats all the way down

brave fable
#

surprisingly clouds and possums are very closely related

tender bloom
#

i know what you mean but that doesn't make it any less funny

brave fable
#

it's a relief darwin never lived to see object-oriented programming

ivory plume
tender bloom
#

didn't you also say its release timeline is "haha eventually"? SDVpuffermlem

#

(but yes, that will be so much nicer!)

ivory plume
#

Yep, approximately.

tiny zealot
#

"haunted skulls, which are secretly a type of bat internally" is such a powerful phrase

tender bloom
#

anything that flies is a bat

#

isn't that basic bio? what are they teaching kids these days

hard fern
#

Bat or bug 🤔

#

What if things were secretly bug

#

Or are those bats too

tender bloom
#

oh sorry there are bugs too

#

i'm pretty sure bugs are real

#

also fireflies don't fly they just hang out

#

don't worry about them

round timber
#

are serpents bats or bugs

tender bloom
#

serpents might get their own class

#

they have lots of fiddly joints

ivory plume
#

(Serpents are serpents.)

round timber
#

hurray!

tender bloom
#

the joint animation code is mega mega haunted

#

i still have no idea how to make the serpents move

#

in my mod with a lure for them, it's literally an extra farmer they are forced to "target" with whatever diabolical internal targeting mechanism they have

inland rain
#

is there any way to get a farmer's coordinates using content patcher?

uncut viper
#

You see Calvin, there are two types of enemies. All enemies fall into these two categories...

tender bloom
#

there's all kinds of just raw numbers hanging out in the decompile

tender bloom
#

there's debug ppp, a classic

#

but that's debug commands

uncut viper
#

depends what you mean by "get" and depends if you want only content patcher

brave fable
#

mm, the motion behaviours for non-walking characters is very haunted, it's why snakes and ghosts aren't affected by lasagna

round timber
#

lasagna?

brave fable
#

simply not worth untangling it for specific monster use cases to be worthwhile

inland rain
#

I mean a token like LocationName

brave fable
#

oh, love of cooking item haha

round timber
#

i had a suspicion but you can never be sure lol

#

thought maybe it was a cousin of spaghetti code

uncut viper
#

no, there is no character coordinate token and it wouldnt really make sense as one

tender bloom
#

i assumed this was some sort of obscure garfield joke

#

the updaterate makes it hard to use farmer coords in CP I feel

brave fable
#

(july 29th was national lasagna day 🥳 to all those who celebrate)

uncut viper
#

it wouldnt, because of the updaterate as Classical Mathperson says

#

it would never be the "live" coordinate

inland rain
#

well, it could be the position on time or location change

#

actually I'm just being stubborn, nvm thanks!

#

someone was asking for it, now I can tell them it's not going to happen

tiny zealot
#

if you need it for a specific thing (whether to trigger an event), there's a Tile precondition. not really content patcher though

uncut viper
#

i suppose for very niche things it could be useful, though you'd then need to use a fast updaterate to redo your patch OnTimeChange which is generally avoided if possible SDVpuffersquee

#

and you would need something that can even use that niche thing, but you cant even do a time-based trigger action without another dependency anyway

tender bloom
#

doesnt vanilla use the tile precond for the community center event

#

you have to land on the entrance to town from bus stop or something

uncut viper
#

something like that

tiny zealot
tender bloom
#

i dont know of any others offhand

vernal crest
#

@opal tendon The json validator stripped out my comments so I am going to upload the file here instead. Let me know if you need further explanation for any of my comments or anything!

Also, just so you're aware: you don't need these to all be separate mods. You can do all of the same type of animal in one mod, either as separate animals or as one animal with different breeds. Let me know if you want to learn how to do either of those things.

bitter saddle
#

Hi guys! I have been playing Stardew Valley for so long and I’ve always wanted to adopt Leo so badly, I couldn’t find any mods that could get me to do so. I decided to take manners into my own hand and create one for me and for all Leo lovers out there except there is one small problem. I have NEVER programmed anything before. I got through a lot of things but one issue keeps facing me, The events never trigger and I have no idea why. I keep getting errors and I don’t understand them. Can someone teach me how to make an event?

hard fern
#

Oh come on

#

[[Modding:Event_Data]]

#

Sigh

#

Ok well

#

here is the page for event data, it has handy things like preconditions and stuff

#

on the modding wiki

#

there's others but i didnt know which would be the most helpful

#

and lastly it would help if you posted a smapi log along with the json file your events are in, just to see where andwhat the errors actually are

patent lanceBOT
bitter saddle
#

i also wanted to have the mod automatically detect the gender of the character playing and use “mom” or “dad” accordingly but i failed so bad i just backed down

hard fern
#

How were you trying to do that?

#

With dyamic tokens?

bitter saddle
#

i would say i did try but i have no idea if what i did was right, according to chatgpt it was supposed to be placed in content.json but it just kept giving me errors

round timber
#

well i wouldnt recommend using chatgpt to make mods

hard fern
#

That's probably the problem to begin with yeah

round timber
#

it will probably give you incorrect code or information

bitter saddle
#

yeah i figured that out after failing a thousand tries and decided to come ask you guys 😭

hard fern
#

Chatgpt doesn't actually know how to make mods via content patcher so it's trying to come up with an answer based on the limited information it has in its database

#

Also

#

!jsom

#

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

hard fern
#

There's a json uploader

#

So you can slap it in there

#

And send the link

round timber
#

anyway if you want to have dialogue affected by player gender do this blah blah blah ${dad^mom^parent}$ blah blah blah

hard fern
#

I thought there was no actual way for the gender neutral line to appear properly

round timber
#

idk but still nice to include anyway

#

i included it for completion's sake

hard fern
#

Honestly i dont think ive ever used the gender dependent token thingies

hard fern
bitter saddle
#

how bad is it…

hard fern
#

Well

bitter saddle
#

its so bad isnt it

round timber
#

id remove the action that edits Data/NPCDispositions first of all, since thats a format thats no longer used

bitter saddle
#

noted

calm nebula
#

I would say that is about... 75% chatgpt hallucinations

bitter saddle
#

its one hundred percent that

#

every time i check a website that taught the thing id leave with a horrified expression on my face

#

i spent 10 hours straight talking with chatgpt until i gave up

torpid sparrow
#

couldve been 2 hours here /lh

bitter saddle
round timber
#

those events are all flavors of wrong so id recommend just starting from scratch (besides saving the dialogue somewhere i guess)

bitter saddle
#

i dont know why i havent thought of coming here before

hard fern
#

It's probably better to start over tbh, so you can build it up cleanly from the start

#

Even the dialogue is wrong (a number of the keys, at least)

torpid sparrow
#

(unless you're adding ur own CTs SDVkrobusgiggle )

round timber
#

yeah its kind of like, what do you want to work on fixing first

bitter saddle
#

can you guys please send me links of where i could learn the things i have wrong without losing my sanity 🙏🏼

torpid sparrow
#

i can't guarantee you won't lose your sanity ^o^

round timber
#

forsy sent some event pages which are a good place to get started

#

also have you unpacked the game files?

#

having vanilla events to use as a reference will be helpful

bitter saddle
bitter saddle
torpid sparrow
#

also, you shouldn't need to edit leo's character data

#

he there already

hard fern
#

Events aside, the whole "putting leo in your house" is also a bit complicated

round timber
#

!unpack ok this is the very first step you should do then

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!

round timber
#

before everything else

torpid sparrow
hard fern
#

Looks like, yeah

torpid sparrow
#

i havent done it before but is it that much different than marriage?

#

could you not look at krobus

bitter saddle
#

there was an adopt leo mod on nexus but when i downloaded it instead of moving leo in as a child it made him a spouse

hard fern
#

Actually it's just like, reskinned marriage

bitter saddle
#

that made me feel so horrified of myself

torpid sparrow
#

i think they were just trying to hack the system to make leo "Adoptable"

hard fern
#

They have marriage dialogue and you need to "propose" to them with something

bitter saddle
#

i really have no clue what any of that is

#

what do you guys recommend i do

round timber
#

unpack first

#

look at the message governor sent above

#

we will worry about everything else after that point

bitter saddle
#

okay noted

#

which files do i need to unpack?

round timber
#

the unpacker will do all of it

bitter saddle
#

i wish i hadnt wasted that much time on chatgpt fr

#

i thought it could read the instructions and do it

#

i wasted the whole day on an uncomfortable chair screaming at a bot

#

okay im done unpacking

hard fern
#

Alrighty

#

What exactly do you want to start with first again?

bitter saddle
#

i wanted to start with the adoption thing the moving leo into the house but apparently its so complicated i dont know

#

what do you suggest i do

torpid sparrow
#

you just add him as a marriage candidate

hard fern
#

Ok, well for starters the events themselves won't actually move him into the house

#

You have to do that part separately

bitter saddle
#

alrighty

#

where do i start

hard fern
#

I would recommend just trying to get the basics to put him in your house before adding in the events 🤔

bitter saddle
#

that makes sense

#

is content patcher enough to do it? or do i like need to use something else?

hard fern
#

content patcher is enough

bitter saddle
#

okay so i need to learn the basics of it and to move leo inside the house i need to learn how to make him a marriage candidate correct?

hard fern
#

i thought you said you didnt want him as a spouse though

#

roommate is slightly different

bitter saddle
#

yes i would prefer it not to be a spouse

#

okay so roomate would also do the thing?

round timber
#

yeah id rather not have discussion of “leo as a spouse” here SDVpufferchickpaint

#

roommate should be enough for your needs tho yeah

round timber
#

also against the rules!

torpid sparrow
#

is there an entry that specifies roommate?

#

im unable to find it in the wiki

bitter saddle
#

okay and i can learn how to do the roomate thing from the links you guys sent me? or do i need another source?

hard fern
#

i had to do some backlogging

torpid sparrow
#

there's different dialogue keys for roommate but i cant find something that says "CanRoommate" or something

round timber
hard fern
#

there isnt iirc?

#

oh

torpid sparrow
#

right so...adding him as a "marriage candidate" (but going to roommate him) ?

#

Like in the NPCData would it still be "CanRomance"

hard fern
#

no

#

krobus doesnt have it

torpid sparrow
#

ohh it functions just from the proposal item

hard fern
#

you will need "marriage" dialogue however

round timber
#

so i guess step one is making an item with the propose_roommate_leo tag

hard fern
#

if you wanted it to be a vanilla one you could also add that context tag to an item too

#

i think

torpid sparrow
#

wouldnt it be better to have a custom item

#

or can it somehow be made conditional on number of hearts

bitter saddle
#

okay okay i don’t want to ask stupid question so i will be reading everything you guys sent me and come back with any questions i may have

torpid sparrow
#

ask all questions

bitter saddle
#

but thank you guys so much you really are so helpful

round timber
torpid sparrow
#

if u ask all ur questions it could possibly save you some time

uncut viper
#

(in case it matters to you though i wanna warn that you wont be able to adopt him if you are married or engaged to someone else, even though it is just a roommates proposal. you may know this but just wanna make sure it doesnt ruin any plans)

bitter saddle
uncut viper
#

thatd plausibly work if those mods respect the roommate proposal context tag correctly still

bitter saddle
uncut viper
#

testing it

bitter saddle
uncut viper
#

but in vanilla, its spouse or roommates, but not both

urban patrol
bitter saddle
#

if i would want to base it ok rommates should i still use it?

torpid sparrow
#

naur

#

model it off krobus

urban patrol
#

i'd have to peek at the code to be able to answer that

torpid sparrow
#

since krobus is a roommate specifically

urban patrol
#

but yeah you can definitely also just do it yourself using the resources on the wiki

hard fern
#

🤔 i know there's mods that remove spouse jealousy but what if... i added more...

torpid sparrow
#

you add more jealousy or add more mods that remove spouse jealousy

hard fern
#

more jealousy...

bitter saddle
#

do it do it do it

torpid sparrow
hard fern
#

haha, i have too many wips to consider making a mod like that rn

opaque field
#

gimmegimme more jealousy

uncut viper
#

not without a log we cant

tiny zealot
opaque field
ocean sailBOT
#

Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Unix 6.8.0.65, with 31 C# mods and 13 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

torpid sparrow
#

do you ahve a blank json

#

named blank.json

opaque field
#

I do!

urban patrol
#

does it have only{} inside it

opaque field
#

yes

torpid sparrow
#

hrm

#

is your path correct?

opaque field
#

it's in the dialogue folder named exactly the same

torpid sparrow
#

to your blank

urban patrol
#

is it secretly a text file? can we see a ss of your folder

opaque field
torpid sparrow
#

it also says your dialogue json doesn't exist

#

That's odd

uncut viper
#

are you using a mod manager?

opaque field
#

Nope, just me :3

tender bloom
#

Is there capitalization mismatch?

round timber
#

not that i can see

torpid sparrow
#

Hmm.....did you name your mod the same in your manifest as your folder?

#

folder name = mod name in manifest

#

although i guess it originally loaded

#

idk im just throwing shit at the wall

opaque field
#

I thought maybe it was that I had it looking in Characters/Dialogue/Iggy instead of Data/Dialogue/Iggy, but I just changed it and it still didn't work. Folder name and manifest are both NPCIggyNova

#

T.T

hard fern
#

Dialogue json's haunted

torpid sparrow
#

try a new folder maybe

uncut viper
#

did the text in the error change when you tried changing it just now?

opaque field
#

no changes

uncut viper
#

could be a read permissions issue on the files

opaque field
#

How does one test/fix that? I've been considering starting the project over and just making new folders and dropping the original jsons in it

#

Most of my curses lately seem to be dialogue related, I also can't get Shane's item specific gift dialogue to work XD

uncut viper
#

when not on windows, i dunno

opaque field
#

uhm, I think I accidentally said a bad while trying to be funny T.T

#

SRY

round timber
#

no harm no foul

opaque field
#

not even exactly sure what it was but auto mod was like "absolutely not fam" haha

round timber
#

it was the mispelling of "thought"

opaque field
#

ah, okay got it.

#

Let's see if using a new folder for the NPC dialogue de-haunts it

latent cape
#

https://smapi.io/json/none/9cf2de786d8245798ee41e89279b33a1

Can anyone spot what's wrong in this quickQuestion command? it always broke when it tries to merge back to regular command, tried to mimick the ones that work before and tried to mimick the ones that's in the wiki, but it always broke right after it tries it merge SDVpetcatsad

urban patrol
#

with that many commands inside the quick question, i would try using fork instead. i'm pretty sure quick question is usually meant for quick things (as the name implies, lol)

gray glen
#

Try removing the / after "end"

#

QuickQuestion works just fine for things like that

#

You missed a " at the end here ```\speak Albedo "I'm relieved I could do your beauty some justice$11#$b#Even if the real you is far more captivating than any brushstroke.$9\message "Albedo

latent cape
gray glen
#

As in after the speak Albedo command

urban patrol
#

you don't have to though if this solves your problem

latent cape
mighty ginkgo
# opaque field ye, gimme a sec

i don't recognize the file manager you're using so i can't say how to check it from there, but you can see the permissions/ownership of the files by opening a terminal in the location and executing the command ls -l (for example). the file manager might have a hotkey to open a terminal in the folder, possibly the F4 key. or a menu option for it somewhere

broken yew
#

This is a slight thing but I managed to get another abigail into the game and changed the introduction dialogue

#

It was a long process but I am actually learning of how content patch works. I just hope something doesn't destroy me in a longrun during a custom npc process

round dock
#

Is it for his regular or marriage lines?

delicate smelt
#

i had viewed decompiled game code baseenchantment and meleeweapon,but i still dont know how to make a weapon have default enchants,can anyone help me?

#

this is my code part modentry.cs and weapons.cs

vernal crest
vernal crest
hollow dust
gray glen
#

Hello!!! I've been trying to get back into the hang of modding haha ^^;;

#

I got a couple of commission requests and lurked a bit for answers to a few coding questions I had so I never really ended up talking.... but then I saw someone ask about quickQuestion....

inner harbor
ocean sailBOT
#

Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.19045.0, with 35 C# mods and 33 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

unreal spoke
inner harbor
#

I tried the same in my own mod, and it seems only the ones I'm married to are showing as loading, but... Daulton's still is and I'm not married to him - and in the first instance, the player does have Dwarf roommating with them and the spouse room is showing up blank

#

(but in my Free Love version with spouse plus Dwarf Roommate it is fine)

hollow dust
vernal crest
#

(Also, I recommend you don't use CustomLocations because that's deprecated.)

#

Finally, you can't use MapTiles in a Load action anyway. You'll need to move that to your EditMap patch.

hollow dust
vernal crest
#

Your Data/Locations patch for heathinwillows.lesbian/lesbian is also wrong. The key needs to be "Farm_heathinwillows.lesbian", not "heathinwillows.lesbian/lesbian".

unreal spoke
#

(Thanks for taking over, Aba! Turns out checking Discord at work and then having to leave might be related to, you know, being at work. You’re much better at this anyway, though. SDVkrobusgiggle)

inner harbor
#

I hate troubleshooting

#

Off to marry Dwarf now

hollow dust
#

so like- that can't happen?

vernal crest
# hollow dust so like- that can't happen?

I don't see why not. Just don't use CustomLocations. Load the map and create a location for it in Data/Locations just like you're doing for your farm map (just don't add an additional entry to Data/AdditionalFarms for the treehouse).

#

CustomLocations is a way of adding new locations into the game that isn't needed anymore because now we add the locations ourselves by editing Data/Locations. So I'm not saying you can't add a new location, just that you should use the new way of doing it instead of the old, unsupported way.

hollow dust
#

THANK YOU

brave fable
#

the duality of man

inner harbor
#

right Spouse Room loads fine with Free Love, if prematurely.

royal stump
inner harbor
#

Do you know what what be gnarly? The ability to have the bus drive into an empty bus stop as part of a cutscene

delicate smelt
royal stump
# delicate smelt oh thanks,but how to write the code of when get a weapon,add enchantment on it?

I don't know specifically, sorry. You need to get the instance of new weapons when they're created, or maybe just monitor each player's inventory with an event, like InventoryChanged:
https://www.stardewvalleywiki.com/Modding:Modder_Guide/APIs/Events#Player
After that, you would need to create a new enchantment of the class you want to apply.
Looking at the code in MeleeWeapon for attemptAddRandomInnateEnchantment might help with that.
After you have the weapon instance, you can probably just use weapon.AddEnchantment(enchantment).

delicate smelt
#

but i have another problem,i wanna if player is holding this weapon in my mod,combat level+5,how to write this code?

signal sundial
lucid mulch
#

pretty much, though the convention is generally to do {{ModId}}_whatever rather than {{ModId}}-whatever, but gets most of the desired outcome regardless

bleak spade
#

Ding dong me again

signal sundial
bleak spade
#

This fencepost is still here despite me literally erasing everything in Tiled (you can see the black tile behind it)

crude plank
#

did you check all your layers and reload the game?

bleak spade
#

(It's the area next to the Community Centre)

#

I reloaded the map but I'll turn it on and off again

#

Nope it's still there

#

(I'm using a tileset)

lucid mulch
#

is someone else putting it there after you?

bleak spade
#

As in a mod loading after?

lucid mulch
#

yes

bleak spade
#

Quite a few, but none that would actively put it there

#

For context, I've redesigned the area next to the community centre and moved the walls around

#

But when I go into the game, the wall tile shows up

obtuse wigeon
#

Have you tried removing all mods that don't relate to it then add them back one by one to see if it adds it back? (Or if its a large list of mods, group by group)

opaque field
round dock
#

Also what did you mean by it not working? Can you elaborate?

bleak spade
obtuse wigeon
#

A question about MultiSave - Continued, on windows SMAPI console says it changes the save game serializer however on linux (steamdeck) it doesnt come up in the same section, is the serializer on linux different to windows or is this unexpected behaviour

obtuse wigeon
obtuse wigeon
#

either loading your map late (Which I'm not sure how to do but it's on Content Patcher docs) or adding Way Back as a soft dependancy so your mod loads after it, youd have to check if that causes any other compatability issues however. If it just those tiles specifically I think you could also use Content Patchers remove tile feature, that way you can manage that specific tile using just json

opaque field
# round dock Also what did you mean by it not working? Can you elaborate?

Yes, absolutely! Okay so, I have dialogue for some of his loved items for him to say instead of the generic "oh wow this is my favorite" line, and when I patch export his dialogue my lines show up, but if I give him say a hot pepper - he's not giving me "Ooh, hot peppers?! Pain with flavor, I love it. Very poetic."

mental plaza
#

I've been throwing everything I have at trying to get a dedicated server working without connecting over IP, but I simply cannot get the server to generate an InviteCode.txt, and when I use VNC to play there is no invite code to be seen anywhere.

Can anyone help me point out what I'm doing wrong? So far I've tried to update all the mods and SMAPI from what Google seemed to think was the ultimate github project for hosting a server, you can check my repository if you want: https://github.com/marnason/stardew-steam-multiplayer-docker

opaque field
#

I even looked at some other mods that do the same thing and I can't see anything different with what I have vs what they have as far as set up

calm nebula
#

Happy birthday, Claire!

opaque field
#

ooh happy birthday!

round dock
#

Atra…. 😭

hallow prism
#

happy birthday, iro!

opaque field
#

no other Shane mods installed either

round dock
gentle rose
round dock
#

(welcome to my life chappal)

opaque field
#

but even the ones that use the item id like beer don't show

round dock
opaque field
#

I'll do another test run when I get back from taking hubby from work, but yeah, even like that it wasn't popping up

round dock
tawny viper
#

What happened here

obtuse wigeon
#

Possibly an error on the last line and the interpreter thinks theres an error further down, either missing comma, closing bracket, or something along those lines

#

I dont actually see the post to be able to look at the json, if you can link back to it I can have a look

#

Nevermind, google lensed that URL, I'll have a look at it now

obtuse wigeon
# tawny viper

Line 47, add a new line with a } then a new line belowe that with a ], that's an error I found

#

(Line 47 actually, not 48)

signal sundial
#

Lesbian butthouse 👀

obtuse wigeon
#

completely missed the name 🫣

hallow prism
#

(i also know it's not today, but this is irrelevant)

crude plank
#

it's their birthday everyday

gentle rose
#

to be more accurate, our birthdays are like a month apart, but since it's always one of our birthdays it's always the other one's too SDVpuffersquee

crude plank
#

technically Claire's and my birthday are also a month apart lol

calm nebula
#

Happy birthday, Scarlett!

crude plank
#

oh no

hollow dust
#

guys, question- how do you make wallpapers and floorings placeable on your custom location mod

#

did these stuffs but in-game i can't place wallpapers and flooring

gentle rose
# hollow dust

where did you find this syntax, for our reference? because it's not really correct

blissful panther
#

T superscript 2? SDVpuffereyes

gentle rose
#

well it might be if you have an area called wall ig SDVpufferthinkblob but you're missing a map prop

calm nebula
#

DecorableLocation

gentle rose
calm nebula
#

That looks like an edited shed map

hollow dust
hollow dust
blissful panther
hollow dust
#

I'm pro modder you see

gentle rose
#

oh wait no nvm they are

hard fern
#

I was abt to sag

#

Say

gentle rose
#

blame atra

hard fern
#

All those aesthetic Pinterest sheds must be hackers!

gentle rose
calm nebula
#

(Or a new standalone location)

gentle rose
#

if it's a shed edit, you're just missing a map prop (for this particular thing. There are other issues we need to get to in a sec.) If it's one of the other options, it may not be decorable

hollow dust
gentle rose
gentle rose
hollow dust
hollow dust
#

wait I'll send my . json

calm nebula
#

But it is alloeed

gentle rose
gentle rose
plush helm
#

Any idea how I can stop the weeds & stone from appearing? I erased them from the path layer in tiled but it's not applying to the actual game

calm nebula
#

Yes!

hard fern
gentle rose
plush helm
hollow dust
#

made a treehouse in farm that if u interact with the door youll get inside it, and this shed looking thing is the layout cuz i want it to be decoratable

hard fern
#

You need to either use rtf or I think betas has a function to do that

#

To reset paths

#

This wont happen on new saves btw

plush helm
hollow dust
gentle rose
hollow dust
#

but I did find myself here

gentle rose
signal sundial
torpid sparrow
#

mm popcorn

torpid sparrow
signal sundial
#

sure! 😄

#

thank you 💜

torpid sparrow
#

screams

#

ok there

round dock
#

(you can just hit publish, Wem SDVpuffersquee)

signal sundial
#

hehehe

torpid sparrow
#

don't look at me

hollow dust
signal sundial
#

either way, thanks alot, I appreciate it^^ maybe someone likes my silly little mod

gentle rose
signal sundial
#

made it cause I found myself having build a giant corn field only to find out Corn has literally no use

opaque field
hollow dust
cobalt lance
#

Sorry, I've been skimming through like 6 pages of event-related guides. Is there a way to set an event pre-condition that requires you to have seen a previous event?

cobalt lance
#

Thank you

round dock
#

or e {{ModId}}

torpid sparrow
#

ModId 👀

#

isn't it still event ID

round dock
#

yep event ID but it's safe to use {{ModId}}_eventID for better compat

cobalt lance
#

While I've got you, is there a way to set it up so that it takes a day between events? I specifically want this event to trigger on the prereq you've seen marlon's introduction in the mines, but this event also takes place in the mines and i have no other requirements in mind, so it would trigger directly after without something like EventLimiter. Which is kinda annoying, especially if u play with a lot of mods (i know when i enter the mines for the first time i used to have like 3 events trigger back to back lmao)

cobalt lance
#

conversation topics?

round dock
#

If you wanna space eventA and eventB from happening, you can use CTs yes

cobalt lance
#

I haven't gotten to that point in my tutorial studying yet, but I'm guessing for what I want that I would have to modify the existing event data for marlon's introduction to create a CT that doesn't normally exist (or at least I assume marlon's intro doesn't have a CT associated with it by default)? I think I can figure it out, I'll just need to find a tutorial on CTs lolll

round timber
#

CTs are very simple, i dont think theres a tutorial for one on their own

round dock
#

addConversationTopic <ID> [length] Starts a conversation topic with the given ID and day length (or 4 days if no length given). Setting length as 0 will have the topic last only for the current day.

#

Then for your next event just use !ActiveDialogueEvent <ModId> with the latter being the ID of your CT

cobalt lance
#

Ohhhh I did see the active dialogue event precondition but didnt realize it was related to CTs, ok cool

rich tapir
#

hi how do i make npc go to the resort

round dock
#

It includes CTs, the event wiki discusses them

round timber
rich tapir
#

im mean general (sorry for late reply i was coding something)

round timber
#

theres this in the Data/Characters that you can edit. then you need a portrait/sprite named like InternalName_beach, and i think you also need dialogue for the Resort key

rich tapir
#

i did that, but and i also added dialogue but will he just go there then?

round timber
#

if you already did all of this then yeah, there should be a chance for them to go there

rich tapir
#

im surprised you don't need like schedule

#

a schedule*

round timber
#

game already handles that

rich tapir
#

okay, also how do i make my npc participate in the egg festival and festival of ice

round timber
#

participate in what way

rich tapir
#

like fish in the festival of ice and walk around in the egg festival

#

like abigail in the egg festival

round timber
#

im not certain but i think fishing would require C#

rich tapir
#

can you do c# and content patcher?

#

i do know like a little bit of c#

round timber
#

theyd have to be separate mod files but yes you can

fossil osprey
#

You can, but technically that's "two different mods" that interact with eachother

rich tapir
#

oh okay

blissful panther
#

The ModBuildConfig package for C# even has a way to bundle content packs alongside the C# component nicely!

bleak spade
#

I want to add some of the Stardew Expanded trees to the custom map I've made, but I just want them to go transparent when you walk behind them - do I have to do all that adding into the Data/WildTrees stuff? I don't want them to be choppable or be plantable, I just want to be able to see behind them

round timber
#

and from the looks of it, you can have them walk around in the egg festival by having them do advancedMove during the mainEvent

rich tapir
#

okay, at least the egg festival will workSDVpufferthumbsup

plush helm
#

I'm having a problem where the interior of a house I've created doesn't exist? When I tried warping to it using a debug command and accessing the house through its door I get error messages. I've attached the related commands in the content file in case I'm missing something obvious

brittle pasture
rich tapir
brittle pasture
#

at least Town trees are not choppable

#

but only Town though

plush helm
rich tapir
bleak spade
#

I mean I don't mind them being choppable, but I don't want to add a new tree seed to the game

rich tapir
#

if not then it won't work

#

you need to add a new tileset and the tileset directory has to be in your mod

bleak spade
#

(seed as in plant seed not coding seed)

plush helm
brittle pasture
#

(see the coconut trees)

rich tapir
#

yeah you need to copy and paste the vanilla tileset images into a tilesets folder in your maps folder in your assets folder cuz it can't just access the games tilesets

plush helm
#

Thank you so much!

rich tapir
#

if it doesn't work maybe you have to add a new tileset that's from the tilesets folder and then redraw the map, then it will work

bleak spade
#

(btw I'm not coding in notepad, I'm just using it before pasting it into Visual Studio Code)

#

The new pngs are currently in the vanilla TerrainFeatures folder, but I don't know if that's right

brittle pasture
#

you want to add a new tree that looks like the SVE tree but is unplantable/drops no seeds?

bleak spade
#

Yes

#

They're already in my custom map mod, but they aren't transparent when you walk behind them

wanton pebble
#

Does anyone know why a stopswimming event command might get skipped?

brittle pasture
wanton pebble
#

There's a strange bug happening in Date Night Redux's Island evemt where at the end of the event where there is clearly a stopswimming command where - and I replicated this - ending the event normally keeps you stuck swimming

bleak spade
brittle pasture
#

(also just in case you should pick something other than "14" for the tree ID. perhaps "{{ModId}}_DecorativeFirTree"

bleak spade
#

Ah okay gotcha

brittle pasture
#

that code should work, though you may want GrowMoss to false since the textures you're using don't have mossy variants

bleak spade
#

Additional stupid question, does that code go in the vanilla Data/WildTrees json?

brittle pasture
#

you edit Data/WildTrees with an EditData action with that in the Entries, yes

shy harbor
#

Is there an extensive guide on how to add new crops to the game?

round timber
lucid iron
#

Is there a cp token or gsq for book seller is in town

round timber
#

i feel like i remember seeing someone request that in 1.6.16 thread so i guess not?

hallow prism
#

i remember it too, i was someone

round timber
#

i had a feeling it was you but didnt want to be confidently incorrect SDVpuffersquee

tawdry siren
#

How to know coordinates on world map ? Thanks.

torpid sparrow
#

lookup anything will tell you the coordinates

#

and also debug mode

#

Or you can open up the map in Tiled

tawdry siren
#

I mean the coordinates of the World Map as shown.

#

I remember someone before just taking a screenshot and opening it in photoshop, but I don't remember what size to open it in photoshop.

cobalt lance
#

warp Marlon -1000 -1000 continue

[game] Event 'alexanderthedead.eddiemunson_EddieIntro' has command 'warp Marlon -1000 -1000 continue' which couldn't be parsed: optional index 4 (bool continueImmediate) has value 'continue', which can't be parsed as a boolean.

what is the line supposed to look like? I tried [continue] and continue but neither work, so I don't really understand what value I'm supposed to put in that parameter?

plush helm
#

Okay, I'm still having problems with this! Even after replacing the custom location with a location I know for sure exists in the game the lockeddoorwarp doesn't work. A previous recommended solution (including vanilla tilesheets in the mod file) unfortunately didn't help.

"An error occurred in the base update loop: NullReferenceException: Object reference not set to an instance of an object.
at StardewValley.GameLocation.lockedDoorWarp(Point tile, String locationName, Int32 openTime, Int32 closeTime, String npcName, Int32 minFriendship)"

round timber
obtuse wigeon
tawdry siren
#

Not farm, but what is the size of all ?

obtuse wigeon
#

the red area you outlined is the part that changes with different farm maps, thats 131 x 61

tawdry siren
#

Thanks.

obtuse wigeon
#

is there a Tiled extension for VSCode? instead of having to open tiled I could instead use a basic version of it inside VSCode instead

tender bloom
#

I haven’t seen such a thing

#

What’s the issue with opening tiled?

#

Just that it is another app or is it causing you some problems?

obtuse wigeon
#

Nothings wrong with Tiled, it's great, I'd just like to be able to modify .tmx files graphically instead of by text inside VSCode, I've already got an extension that replaces an external photo editor software

#

I already know a bit of javascript so I might take a crack at making an extension that is able to modify .tmx files graphically

unreal spoke
#

For shop edits, it's not possible to use multiple TradeItemIds, is it?

obtuse wigeon
plush helm
shy harbor
#

Had issues with getting my seeds into the game, fixed that, thought I was done.
But my crop itself is invisible Bestiewhat

unreal spoke
#

Sounds like a slightly messed up patch, but if the item itself exists, you've already done most of the work. Wanna share the JSON and the spritesheet?

shy harbor
#

Oh wait I fixed it! Coordinates my beloved

#

Oh my god it works Bulbacute

unreal spoke
#

Congrats! Getting something to work for the first time is always a great feeling. SDVkrobusgiggle

brittle pasture
plush helm
shy harbor
lucid iron
obtuse wigeon
#

I give up with trying to do the shadows, I'm using a transparency layer instead, I'll just have to deal with not matching the origional shadows, atleast it makes the tilesheet atleast 8 times smaller

unreal spoke
bleak spade
#

Does anyone know where the spring tilesheet for Maple trees are (tree2)?

unreal spoke
#

(Sorry if I'm completely misunderstanding the situation. Brain's kind of fried, butI wanna be productive.)

bleak spade
#

I've found Summer Fall and Winter in the TerrainFeatures folder but Spring is missing

unreal spoke
#

Looks like it's also in TerrainFeatures.

bleak spade
#

Can someone send the spring_tree2 png?

#

tree2_spring I mean

obtuse wigeon
#

It should be in the same place, at least it is for me, you may need to re extract your game files if you deleted it or moved it by mistake

#

I'd recommend re extracting your game files actaully, cause discord may apply some kind of compression to the image

unreal spoke
#

Besides, distributing game files is kind of a no no, even if it's just the one file.

obtuse wigeon
obtuse wigeon
#

heres the link to extract your game files if you don't have it on hand

bleak spade
#

Ah I see, it's reappeared

lucid iron
unreal spoke
#

In that case, I'm afraid I don't really get what you meant with your first message, sorry.

long granite
#

Hi everyone! I don't speak English very well, but I think I'm in the right place — sorry if anything's unclear. 😭 I'd like to make my first mod for Stardew Valley and I need some help. I want to create a completely new NPC. Most guides I've found talk about replacing sprites, but that's not what I'm looking for. I want to add a brand new character who's on the same level as the existing ones — someone who can do various things, have events, and feel just as integrated. Are there any guides or resources that could help me with this? 💞 ✨

round timber
#

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

long granite
unreal spoke
round timber
# long granite

if you have any specific questions about the process you are more than welcome to ask here as well

cobalt lance
#

I feel like there is a common sound that is associated with the exclamation emote but I'm having some trouble sifting through all the possible sounds. Does anyone know the one that I'm thinking of?

long granite
round dock
#

(do you have a potential release date for your NPC, Vin? SDVpuffersquee)

round timber
#

August 8!

#

im basically just waiting to see if i get any last minute bug reports from my beta testers

unreal spoke
#

... I think I might've found a bug.

calm nebula
#

🐞

round timber
#

thank you atra

unreal spoke
#

Please tell me if I'm completely off, but take a look at this, please. The two sprites on the left are weapons I added while the ones on the right are vanilla ones. Mine are offset by one pixel to the right and top. SDVpufferthinkblob

#

Spritesheet for reference.

round timber
#

uh, your reticle looks off too

calm nebula
#

Is your weapon a dagger or a sword or a hammer

unreal spoke
#

... don't tell me it's related to the weapon type.

calm nebula
#

I'm not telling you that 😛

lucid iron
#

Christmas trees

round timber
#

drills!

signal sundial
#

I am also going with pine trees

unreal spoke
calm nebula
#

So why is your cursor like offset too

unreal spoke
#

I was afraid people would think they're too christmas tree-y... SDVpufferweary

crude plank
#

They could also be slightly opened umbrellas!

unreal spoke
#

If you mean that brownish square, that's not my cursor but just a test sprite. SDVpuffersquee

lucid iron
#

Christmas trees are drill shaped

#

No we mean the in game ui select box

uncut viper
#

that's their sprite

unreal spoke
#

Is... is that not just the way it looks??

round timber
#

the test sprite looks like a reticle

crude plank
#

Yeah that's a test sprite

round timber
#

smh dora why'd you have to make such a confusing test sprite 😛

lucid iron
unreal spoke
#

Better?

round timber
#

yes 😌

unreal spoke
#

I'm low-key peeved that dagger sprites apparently have that weird offset, but... animation. SDVpufferpensive

lucid iron
#

I would just not worry about the offset

unreal spoke
#

Difference for reference.

#

... you know, a video probably would've made more sense. Oh well.
The offset isn't terrible and most people probably won't notice, but it annoys me, lol.

round timber
#

pat pat dora

#

pat pat

wraith aspen
#

hi all, two questions. first, with this template that i found on the stardew wiki, is it possible to make it work for all garbage cans at once rather than having to do it for each individual garbage can? and second, is it possible to add custom items to fishing chests with content patcher, and if so how because i can't find any information regarding that

rich tapir
#

hello i have an error that my movie prefrences json can't load when i have the include

#

this is my code
"Action": "Include",
"FromFile": "assets/data/MoviePrefrences.json"

wraith aspen
#

i'm still in the process of figuring out ways to get my blind boxes to drop randomly SDVpuffercry

uncut viper
wraith aspen
#

oof, ok thank you

uncut viper
#

there may be a default garbage can entry you can try adding to

brittle pasture
#

look at the unpacked files

wraith aspen
#

will do! thank you

rich tapir
#

these are my directories

#

"Action": "Include",
"FromFile": "assets/data/MoviePrefrences.json"

uncut viper
#

you won't be able to move entries all garbage cans with that though

brittle pasture
#

you don't have to? there's precedence as well

plush helm
#

I'm experiencing a problem where the letter I wrote for my NPC's room isn't showing up correctly. any idea how to fix this?

wraith aspen
#

ok i found the unpacked garbage can file but as i'm very new to modding i'm not really sure what i'm meant to be looking for within it

uncut viper
plush helm
brittle pasture
uncut viper
#

you can just write it manually

brittle pasture
#

FTM is apparently adding support for CP assets eventually. still cant edit other FTM packs I think

#

1.6.16 will also dehardcode a lot of monster stuff. though again it still can't be used to edit FTM packs

urban patrol
round timber
#

(also fyi you've mispelt preferences as prefrences)

unreal spoke
#

Actually, one more question while I'm already looking stupid: Is there any funcitonal difference between what the wiki calls slashing and stabbing swords?

#

Yeah, we figured that out a bit ago, but thanks for the info! SDVpufferheart

karmic gust
#

How is Emily's parrot added to her room? I'm trying to move it to a different map. I found the perch in the indoors tilesheet but not the parrot

unreal spoke
#

Of course! I may or may not be looking into your mod at the moment. SDVkrobusgiggle
Thanks again! That's what I suspected from my short tests.

signal sundial
wraith aspen
#

sorry i am very new to all this so i dont know what alot of the coding means SDVpufferpensive

wraith aspen
#

ps picture of my modding assistant bc I feel bad for asking so many questions lmao

signal sundial
frank kettle
#

hello guys I need help, Im starting to play mod sdv on my android and the thing is the lookup anything mod is not working 😭😭

ocean sailBOT
#

Log Info: SMAPI v4.1.10.3 - 1735840167 with SDV 1.6.15 build 24354 on Android Unix 33.0.0.0, with 8 C# mods and 3 content packs.

cold marsh
#

How do DayTiles and NightTiles work, exactly? I'm making a custom tilesheet, can I use them with my window or I'll have to use OnTimeChanged to change it from day to night?

frank kettle
#

I don't know what to do 😭

uncut viper
#

and only in HaleyHouse

obtuse wigeon
#

I have this file structure:

TestMod
│   content.json
│   manifest.json
│   ToDo
│   
└───Maps
    ├───Assets
    │       zzz_StoneWShadow.png
    │
    ├───BusStop
            BusStop.json
            BusStop.tmx
            BusStop.tmx.orig

the BusStop.tmx references zzz_StoneWShadow.png tilesheet, instead of having it alongside the .tmx I want to keep it in the Assets folder, I know I have to load the tilesheet but I cannot remember for the life of me where to:

  1. Load the tilesheet i.e. the "Target" field
  2. Where to put the load function, in the content.json or the BusStop.json given the tilesheet is going to be referenced by many .tmx
uncut viper
#

it doesnt matter in what json its in for starters, as when CP loads your Includes it is functionally identical to it all being written in one content.json

#

as for the Load, you can make up whatever target name you want as long as its unique and starts with Maps/, but its probably easiest to make it match your tilesheet name, as thats what Tiled will have written in your .tmx (which means you should really have used a uniqueId in it)

frank kettle
#

idk whats wrong on lookup mod

#

my smapi is up to date

#

also my sdv is up to date

uncut viper
#

!mh

ocean sailBOT
#

For help with modding issues, please ask in #1272025932932055121! When asking for assistance there, sharing an error log will help others identify your issue (see https://smapi.io/log for instructions).

obtuse wigeon
uncut viper
#

the tilesheet image. you technically dont need to prefix the .png itself, but its easiest, because when you added the tilesheet in Tiled, it saved the image name as the same as the .png

#

so right now your map will be looking for zzz_StoneWShadow as its tilesheet image source

#

when the game loads it, this means it will look for Maps/zzz_StoneWShadow

#

which is where your Load target would need to be set to

#

but that doesnt have a modid in it so its not very unique, so potential compati ssue, however unlikely

#

you could edit the .tmx manually to chnage it to match your Load target, but you'd need to change it back again every time you went to edit the map and then change it back once more when finished editing, so pretty annoying

obtuse wigeon
uncut viper
#

then when ya do that just Load to the target that matches the png with Maps/ in front of it SDVpufferthumbsup

#

in whichever json best suits your organizational desires

obtuse wigeon
#

Perfect, I really should keep a copy before modifying my working mod so I can reference back to it

obtuse wigeon
uncut viper
#

if it suits you best, who am i, and who is Microsoft/Linux/whoever sets that limit most of all, to stop you and your brave heart

#

maybe itll be a selling point that it only works on specifically modified computer setups to bypass that limit

#

gives it some prestige

obtuse wigeon
#

Exactly! (tbf the path limit is a very much archaic issue that's really easily solved but isn't bc backwards compat)

wraith aspen
signal sundial
#

There it is, the Woolly Bison! A follow up from the Woolly Goat, this Bison can be milked for regular milk and will shed wool once a week!
https://www.nexusmods.com/stardewvalley/mods/36238

Nexus Mods :: Stardew Valley

This mod adds the Woolly Bison to your game! This Bison can be milked for regular milk and will also shed wool once a week once enough friendship is achieved!

brittle pasture
#

if you want it to only be checked after the specific drops then yes

wraith aspen
#

yeah i would want the items to just be generic drops

signal sundial
wraith aspen
#

like have a chance to drop from any garbage can sometimes

#

my main goal is to have ways to obtain my items that arent just buying them

signal sundial
#

could someone poke that to Leah pretty please? this is my last mod for a while 😄

signal sundial
#

thank you! appreciate it 😄

cobalt lance
round timber
#

Lasting Conversation Topics mod!

cobalt lance
#

so I would just need to add a dependency for my mod, basically?

round timber
#

yes and add some additional code for it

cobalt lance
#

well now I'm thinking perhaps just setting an arbitrarily high number would be a cleaner solution then haha. Thank you, though. Is there a limit on the number of days I can set for it?

round timber
#

that i do not know

cobalt lance
#

o7 thank u for ur help regardless

round dock
uncut viper
#

to make sure someone can always get the CT dialogue from an NPC, i imagine

#

but an arbitrarily high number probably is just better here

round dock
#

Yeah, I suppose so

uncut viper
#

you can use the max int value if you want which is like 2 billion

#

around there

cobalt lance
#

I don't want it to be missable, since it triggers the event, right?

uncut viper
#

if you dont care about dialogue and just want it to trigger things, use a mail flag

brittle pasture
round dock
#

Wait I thought you wanted to use CTs as buffers between events?

cobalt lance
#

Like just make an arbitrary letter and then tie a flag to it?

uncut viper
#

mail flags dont need mail attached to them

cobalt lance
uncut viper
#

if you just AddMail with a non-existent mail it just sets a flag on the player

#

as long as you send it to the received inbox directly

round dock
#

You want an event to occur right after another without EventLimiter getting in the way?

cobalt lance
#

I want it to NOT occur right after without having to use EventLimiter

brittle pasture
#

to clarify: you can set a CT for 1 day, wait for it expire, and the fact that it expired is permanent

round dock
#

Then yes, CT

cobalt lance
#

I don't understand

#

so wait, the CT being expired

#

can be the trigger for the event?

brittle pasture
#

permanent without further intervention*

round dock
uncut viper
#

its also important to note that you cant actually check expired CTs without a dependency

#

specifically expired ones, not just not-active ones

#

you'd have to mark when it WAS active and then check that it no longer is

brittle pasture
#

to summarize, what you want is:

  • event A sets a CT of one day
  • event B has a precondition of: had seen A, and the CT not being active
karmic gust
cobalt lance
brittle pasture
#

yes looks good
(and to clear more confusion as button elaborated, it being expired is the same as it not being active for the purpose of vanilla checks)