#making-mods-general

1 messages · Page 541 of 1

vernal crest
#

My favourite music in Stardew is the rainy days

torpid sparrow
#

Although I want to play the voiceover mod

#

And that will require some coordination with whatever else is playing

pale river
#

i wish there was a mod that had those rpg "hmm" sounds when dialogue pops up

torpid sparrow
#

Ough now I want to add voiceovers to my NPCs

vernal crest
#

There can be

#

Use VoxBox, soup

torpid sparrow
#

I don’t know at all so

vernal crest
#

That is, I believe, the exact situation ichor made it for

torpid sparrow
#

Oh SDVkrobusgiggle

pale river
vernal crest
#

It's a framework

#

You can put whatever sound in that you want

pale river
#

I meant I thought it was for when the letters typing in the dialogue box sounds

vernal crest
#

How is that different?

#

Is what you meant just shorter? Only at the beginning?

pale river
#

only at the beginning

vernal crest
#

Poke ichor about adding that

pale river
#

oh and also linked to portraits so yeah uhh the C# stuff doesn't actually look that bad but meh it sounds easy just lazy

#

I don't think I'd use it though, it's like a "i wish this exists but I won't do it myself"

torpid sparrow
#

That’s why ur a Modder soup

oak plaza
#

do you know how to get voice permissions?

torpid sparrow
#

Could be a modfest thing too

pale river
#

you'd also maybe need permission to add them to other npcs or they're silent as well

torpid sparrow
#

Voice permissions as in to use someone’s voice or to add voice to an NPC

vernal crest
pale river
torpid sparrow
#

OH LOL

vernal crest
torpid sparrow
#

Aba more juniminded

#

I’m just modminded

vernal crest
#

It was amusing timing lol

torpid sparrow
#

Well that is why Aba is a junimo

pale river
#

arent junimos mods (kidding)

vernal crest
#

Yup that is the only reason

torpid sparrow
#

thank god there’s a different name for them here

pale river
#

making junimos general

torpid sparrow
#

ur a junimo! Ur a junimo!

vernal crest
#

That would be a very popular channel lol

oak plaza
#

lvlll

#

ll

#

mee

#

upppp

torpid sparrow
#

not here buddy

oak plaza
#

grahhhh

#

where?

vernal crest
hollow hatch
#

i gotta find out how to dump my HMDS rom to get the audio for this mod

torpid sparrow
#

I really should do more with audio for my mods I just play silent and I forget about it

opaque field
#

I love the rainy days too. I also have auditory processing disorder! I usually have crochet for loading screens :p

vernal crest
#

I downloaded a whole bunch of music mods for the first time this run and every time I turn my sound on when testing I glare suspiciously at my game because the music is unfamiliar

#

I don't know if I actually like any of them

#

That had better not be anything to do with game piracy, soup

#

If it's not legal, yeet it please

torpid sparrow
#

Arrest them!!!

pale river
#

I don't think it's game piracy, it's an archive for game music

#

i'll delete it in case though

hollow hatch
vernal crest
#

I can't find any mention of legality so I have to assume it's not

#

As for vantage, as long as your mod is for personal use and you legally own the game, that's fine

hollow hatch
#

i grew up on it so yeah

vernal crest
#

(I'm very happy to be shown evidence of legality, we just have to stay on the safe side.)

pale river
#

my reason 4 disk arrived today, but I'll take a look at it on monday; it'd be interesting to figure out how the sound effects of the game were made, so far I only discovered how the lightning and clint/robin hammer sounds were made

torpid sparrow
#

Oo foley

unique tusk
#

I'm finally making the spousal area for my custom npc but I'm confused on where I'm supposed to find the numbers or whatever to indicate which flooring or wallpaper should be used?

torpid sparrow
#

Foley is so cool

#

You could create your own sound effects

torpid sparrow
vernal crest
torpid sparrow
#

I’m unfamiliar with other ways to make a spouse room so curious

vernal crest
#

Oh, wait

#

No, those fields are unrelated to the spouse room

#

They are the possible wallpapers and floors that your spouse will use to rudely redecorate other parts of the farmhouse with

torpid sparrow
#

HAHA

vernal crest
#

(I hate that "feature" so much)

torpid sparrow
#

I think it’s so funny

vernal crest
#

I have to remove everything they do and then fix it back to how it was!

torpid sparrow
#

If ur making them in tiled, they’ll be there

vernal crest
#

If Mouse redecorated part of our house without talking to me about it we would have Words

pale river
unique tusk
#

Welp onto drawing the spousal room then

vernal crest
#

Start with the vanilla spouse rooms file as your base

torpid sparrow
#

Or drawing new assets (also valid ofc just wondering SDVpuffersquee)

unique tusk
torpid sparrow
#

Oof have fun

#

Honestly surprising how much you can fit in a 6x9 box and still make it walkable

unique tusk
#

I updated the dispos with a template (I was missing a lotta the spouse coding) and something may have gone wrong worry

#

I MAY ALSO BE UPDATING THE SPRITE UHH,,

torpid sparrow
#

Oh that happened to me

#

Can’t remember how I fixed it

unique tusk
#

It's fine, I've been meaning to update his sprite for some time (it only has walking animation and nothing else) breaksdown

torpid sparrow
#

It’s not an issue with the sprite

#

Something with the code

vernal crest
unique tusk
vernal crest
#

It can if you use Tilesheetinator

#

And the reason I say not to do it is because if you want anyone, including yourself, to make any sort of edits to your tilesheet through CP the tilesheet cannot be in the same folder as the map.

unique tusk
#

I seeee

vernal crest
#

And absolutely do not publish your mod with vanilla tilesheets in it

#

Or I will scream and cry and that would be very undignified

pale river
pale river
#

i have to go through them eventually anyway, their building layer is on the back layer 😔

oak plaza
#

Feels bad man

vernal crest
#

Having to fix maps?

#

It is if you're unfamiliar with them

#

I like wrangling Tiled with a whip and chair until it does what I tell it to SDVkrobusnaughty

torpid sparrow
#

Ignore Aba put your sheets wherever u want /j

vernal crest
#

Ignore me at your peril!

#

I have influence here! I can raise an army of disgruntled modmakers to frown at you!

torpid sparrow
#

I won’t notice a difference bc I don’t play with recolours you’ll have one ally!

opaque field
#

I’m painstakingly going and adding my the {{modid}} to all my conversation topics and checks list 63 events. adds note to check for map crimes to avoid undignified Aba screams

torpid sparrow
#

I still haven’t switched over to {{modid}} 🤓

#

If someone is impostering me I must know

ruby marsh
#

<@&239770080378880001> Finally reached level 25 on discord after years of modding. I humbly request the modder role, please. 😄

torpid sparrow
#

Do you got a link to a mod

#

Idk if it’s protocol but I’d like to see anyway SMCPufferSquee

ivory plume
#

Hi! Can you add yourself to the mod author list on the wiki? (You'll need to create an account if you don't have one.)

ruby marsh
#

Thanks, will do that.

valid folio
#

Hi! I was authorized to make a patch to change the names of certain items that are duplicated in other mods. I know how to do that for the base game, but I am not sure how it works when it comes to a mod.

I wanted to offer it as an optional download alongside one of my translations. I know I could simply upload two versions of the same translation and let people download whichever they prefer, but since I was specifically told to make a patch that edits the names, I would rather follow their instructions.

valid folio
#

If you remember any mod that already does that, that helps me too haha.

ivory plume
valid folio
ivory plume
valid folio
#

Ok ty, Pathoschild!

ivory plume
#

Yep, that's the link in my message.

valid folio
ruby marsh
#

@ivory plume OK, entry added. Fingers crossed...

ivory plume
#

Congrats to our freshest cheeto @ruby marsh! SDVpufferparty

ruby marsh
#

Thanks!

torpid sparrow
#

Yay get showered in Cheeto dust!

unique tusk
torpid sparrow
#

What did u change from last time

unique tusk
#

Uhhh I added a buncha new code qwq

torpid sparrow
#

I can’t remember if that’s the correct way to add a spouse room

#

I don’t remember if I’ve ever added .tmx to anything

#

Thinks

ivory plume
#

MapAsset should be the asset name without the Map/ prefix, not the filename in your content pack folder. You'll need an "Action": "Load" patch to add the map asset if you don't have one yet.

torpid sparrow
#

Oh right have you

#

Yeah

unique tusk
#

Oohh!! :O

#

Scurries off to fix it

hollow hatch
#

pathos i have a question

#

is it possible to have CP replace music files based on heart level during a heart event

ivory plume
#

There are two approaches:

  1. The most efficient way is to edit the event script to reference the different audio cue ID.
  2. You can also conditionally edit Data/AudioChanges, but that's a fairly expensive edit and it'll apply globally (not just for the current event).
hollow hatch
ruby marsh
#

Is there something like a musical note to use as a symbol in dialogue? I'm thinking about my NPC whistling a melody when I meet her.

lucid iron
#

There's a 🎶 emoji i think?

#

You could also do something like this

ruby marsh
lucid iron
#

i would like a way to know which children have been selected by littlenpc for grow up

junior gorge
#

MY MOD DON'T WORK!!!

#

Why?

lucid iron
#

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

junior gorge
lucid iron
#

you can put it into the parser to validate the format

junior gorge
lucid iron
#

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.

junior gorge
#

I am brazilian, so my english is not very good

ruby marsh
lucid iron
#

from the screenshot, it looks like a missing comma problem, but i am trying to tell you about the validator site (smapi.io/json) so that you can solve these types of problems in the future Bolb

junior gorge
junior gorge
lucid iron
#

curly braces = { }

junior gorge
lucid iron
#

if you copy paste your json into the smapi.io/json site, it'll tell you which lines

ruby marsh
lucid iron
#

would it be possible to have a C# api that is like bool IsLittleNPC(Child child)?

#

it is better if i don't assume any implementation details so that you can change it freely

torpid breach
#

New to SDV modding, trying to solve a problem: more dynamic dialogue. EG, I already made a dynamic token that will be true if Haley is in the kitchen specifically, based on her schedule. Then I add dialogue targeting her character:

"HaleyHouse_Mon": "{{i18n:Haley_HaleyHouseMon{{HaleyInKitchen}}}}"

And in the i18n file:

"Haley_HaleyHouseMonTrue": "Ugh, I hate cooking. I never know what to make.",
"Haley_HaleyHouseMonFalse": "I hate Mondays.",

I thought for sure this would work but the docs aren't kidding when they say dialogue is set at start of day, are they? I sort of assumed the topic would be set, not the actual string as well...

Is there no way to do what I want? I already tested that this isn't a dynamic token problem, it's correctly being set when she's in the kitchen

lucid iron
tawdry hazel
#

hello, the ghost of intrusive mod thoughts is back and she has news: the dynamic windows mod creator is incredibly helpful and his new template is much easier to use.

ruby marsh
tawdry hazel
#

goodbye~~

lucid iron
#

can you do a patch parse {{i18n:Haley_HaleyHouseMon{{HaleyInKitchen}}}} in game to see what happens

lucid iron
ruby marsh
#

OK, in order to define an API that's actually useful, let's gather some use cases. What are yours?

lucid iron
#

this is what i want to use it for and i only really just need a "is this a littlenpc controlled child" check somehow

#

hence if you don't want to commit to a public api ill just do reflection to IsValidLittleNPCIndex AquaThumbsup

#

some other usecase for you is displaying the state of child on lookup anything, pathos is pretty open to that as long as you send in PR

ruby marsh
#

I don't mind adding an API, sounds reasonable. In the mean time you can call
static bool LittleNPCs.Framework.Common.IsValidLittleNPCIndex(int childIndex)
by reflection to see if that solves your problem.

junior gorge
torpid breach
#

maybe it will still not work after I fix this, as is tradition

lucid iron
#

i think you may have a simplier solution tho

#

haleyhouse_x_y key where the x y is her kitchen tile should work?

gaunt orbit
#

hmmm, so it seems like most of the instancing time for furniture is actually from texture loading.
I think it will be fine if I kill that with harmony though, since neither draw function actually references the stored texture

torpid breach
lucid iron
gaunt orbit
lucid iron
#

does sinz thing make a difference

gaunt orbit
#

which thing?

lucid iron
#

speedy solutions, it has a image cache that assumes no filesystem changs during game

gaunt orbit
#

not sure, but unlikely

ruby marsh
#

@lucid iron So you're the author of Have More Kids? That's great. There might be some compatibility issues that we can tackle together.

gaunt orbit
#

the main bottleneck is the first time that furniture is instanced, since the textures haven't been loaded yet and the game has to load all of them at once

gaunt orbit
#

speedy solutions would help with repeat texture loads though

lucid iron
#

yea as a user i find that i dont mind 1 time slow as much as repeated lag spike

#

but ofc making the 1 time slow more fast is good too DokkanStare

gaunt orbit
#

and it would be a fairly trivial transpiler to fix

lucid iron
#

hm but would you want to exclude furniture with bad textures

#

or would that be thing u can do incrementally in the ui

gaunt orbit
#

wdym bad textures?

lucid iron
#

invalid textures that don't exist

gaunt orbit
#

ah, hm. that is a good point

#

right now I have the constructor wrapped in a finalizer which would be catching those, but if I lazy it, that would cause crashes

#

though the vanilla shop gui doesn't handle it at all, so I might just say "fuck it, author's responsbility"

lucid iron
#

oh i thought vanilla show u Cursors

gaunt orbit
#

no, if the constructor has any kind of exception it just immediately crashes the gui

#

that's the reason I have the constructor wrapped with harmony; people were writing bad bounding boxes on furniture and it was exploding the whole menu

#

to be clear this may not be the case for all items, but that is what happens with furniture

ruby marsh
# lucid iron yes it sure is cursed <a:RunRun:689530391291494595>

Found your mod in some logs about LittleNPCs issues. And since I'm a curious person I looked at your code. There's a lot of complicated stuff going on there because it's, well, complicated 😉 Seriously: Let's use the alpha period of 1.7 when it starts to suggest some features. That way I got rid of almost all Harmony patches for 1.6 . I made suggestions to change class NPC to be usable as a base class so I was able to derive from it. That helped a lot to get maintainable code.

lucid iron
#

I don't think i can realistically escape all the harmony kyuuchan_run

#

Due to stubbornly not giving up on the Child instance

#

Mr ape did say more family and child content though excited to fix things

ruby marsh
#

Probably not, but reducing the amount of harmony stuff. And maybe getting some properties instead of having to patch hardcoded constants.

#

I'm excited about new child content, too. I don't mind retiring LittleNPCs when there are vanilla features that work the same. Would be all the better.

gaunt orbit
#

oh wait, it uses the texture to calculate the source rect. hmmmm, that is tricky

#

wait why does it even need that

#

it already has seprate calculations that dont use the texture

analog yacht
#

Hi. If I want to use "NetWorldState.isTimePaused" it says that it can’t be used because of savety. Do you know why

gaunt orbit
proud wyvern
#

is it about NetBool and implicit conversions

analog yacht
#

It’s red. Rider says 'Access to „NetWorldState.isTimePaused“ is not possible due to the degree of protection.

proud wyvern
#

nevermind me then hah

gaunt orbit
ruby marsh
#

You have to use IsTimePaused Note the capital first letter.

analog yacht
#

Thanks

#

Will try

old edge
#

Anyone doing the modding contest?

torpid sparrow
#

yurr

#

well ill see if i get around to submitting

#

but as of right now yes i am/will

pale river
#

im participating for fun but not trying to win

blissful panther
#

I'm using it as an excuse to get something I've been passively working on for a while out.

gaunt orbit
#

I'm planning on it

#

I hope to win but I doubt I will

blissful panther
#

It is a little weird with the total downloads/endorsements being the deciding factors to me for that, though.

gaunt orbit
#

I really want to do something big but I just don't think I have the time, even with a month

ornate locust
#

Yeah it's a popularity contest type thing.

blissful panther
#

Not even just that, more that it would inherently reward mods released earlier than others versus a super in-depth and high quality mod released closer to the end of the submission window.

ornate locust
#

Also true

#

And if someone release something complex they happen to already have done very early...

torpid sparrow
#

im 33% through an NPC so hopefully i can get it out soonish

ornate locust
#

But if you release really late, even that won't help

torpid sparrow
#

yea

#

i feel like it should be

#

release period

#

but even then when u finish = more/less time for advertising chiiThink

pale river
ornate locust
#

wait I have finally had an idea woo

#

It's a skin of my own dang mod, but I just wanna participate

proud wyvern
blissful panther
#

My plan is either to get the farm map I've been working on out, or I could go for a much quicker, smaller, more utilitarian but useful idea to get it out faster.

ornate locust
#

I'm gonna try to turn the Municipal Building kinda styled after a castle for mods that go old fashioned

#

Like a little keep

blissful panther
calm nebula
#

Either will be fun to see

torpid sparrow
#

guh i have to work on sprites

proud wyvern
pale river
#

my plan is to reuse a gimmick I made for one of my mods, then do one of the mod ideas I wanted to do and never had a reason to

lucid iron
#

I condemn self to terrible UI fiddling once again

proud wyvern
#

already got linked that, thanks!

pale river
#

the rules are on this one

#

oh wait DH did it first thanks

torpid sparrow
#

do i not do seasonal outfits to save time or do them anyway bc Perfectionism

calm nebula
#

I guess they wanted numerical metrics wrt to the big ticket prizes?

proud wyvern
#

yeah, most endorsed + most downloaded being the criteria sucks...

calm nebula
#

(Shrug emoji)

proud wyvern
#

like, it just feels not very well thought through

torpid sparrow
#

anyone got an expansion almost done SMCKekLmaoDog

ornate locust
#

man I released my biggest mod ever just a couple months ago, can't say I didn't wish I took a little longer on it

torpid sparrow
#

oh wait did I message you about the functional couches

ornate locust
#

Me? I don't think so, whatcha need

torpid sparrow
#

its been a while since i last worked on my mod so i cant remember

#

just needed perms for tilesheets

#

cause vanilla couches are grr

ornate locust
#

Permissions for what? I assume not using the tilesheets in your mod, because that's what the mod is for.

torpid sparrow
#

hmm mayhaps not you then

#

or maybe i asked anyway bc i wanted to make sure

ornate locust
#

Well, if it's me, go for it, happy to share the sittable couches

buoyant jackal
#

Honest question: is it considered bad form to like... take a mod that does something small and replace the custom assets with your own? Like,,, there was an Undertale text sounds mod mentioned recently and I wanna know if it'd be bad to like take the "text sound" code and replace all the text sounds with what I need for my mod??? Obviously with credit. Or like using a portrait mod and replacing all the portraits to make that easier??? Sorry if this is worded badly

torpid sparrow
#

eeemmmm

#

i mean a lot of content patcher code is the same

#

bc its content patcher

#

i wouldnt copy paste

torpid sparrow
#

also if ur using it for urself it doesnt matter

ornate locust
torpid sparrow
#

if u plan to upload it thats a diff story

analog yacht
ornate locust
#

The framework does the sound thing. The sounds are what the Undertale style sound mod does. So you can just do your own thing with the framework

torpid sparrow
#

is that the VoxBox

#

by umm ichor

ornate locust
#

Yeah VoxBox is the framework, the talking sound mod just uses it

lucid iron
#

yea you just make ur own sounds to work with voxbox

#

@tiny zealot voxbox when

pale river
#

voxbox but one time playing sound effect but linked to portraits when /j

torpid sparrow
#

also replacing code feels easier said than done, what if u mess something up and dont know how to fix it; write it urself so u know whats going on

fossil osprey
junior gorge
analog yacht
slender wave
#

Am I the only one for whom BackedPotatoes link on the modfest page is broken? SDVpuffereyes

lucid iron
#

no its been borked i think

gentle rose
#

(I let Modsetti know just in case)

analog yacht
#

I have also the problem that when I froze the time monster don’t move anymore. My idea is to set the timer every tik back to 2550 (1:50) would this work. And how is performance with this method

urban patrol
#

there's no way to edit another mod's i18n, right? i want to text operations a signpost that SVE adds

lucid iron
#

Nop u can't edit

pale river
#

SDVpufferwow nic is there a secret trick to how you did your schedule animations

urban patrol
#

there is not

lucid mulch
#

You can't edit another mods i18n but you can edit the places the i18n was used afterwards

urban patrol
#
{
        "Action": "EditData",
        "Target": "Strings/StringsFromMaps",
        "When": { 
            "HasMod": "FlashShifter.StardewValleyExpandedCP" 
        },
        "TextOperations": [
            {
                "Operation": "Prepend",
                "Target": [ "Entries", "Railroad.1" ],
                "Value": "{{i18n:Maps.RailroadSign}}",
                "Delimiter": " "
            }
        ]
    },```
this is what i came up with but i'm not sure the delimiter is correct
scenic ferry
#

Question!
I got a basic shop up and running, but right now interacting with the shop tile just imediately brings the player to the shop UI. If I want to add dialogue /portrait before the shop menu, how would I go about that?

#

oh and, dont mind the Item ID being wrong for mixed seeds, its placeholder anyway

vale stream
#

I don't know if you can add a portrait before the shop menu in current SDV (unless something has changed since last time I checked). You might need C# for that?

#

Also, while I'm here:

scenic ferry
#

ah darn. I was hoping to have the shopkeepers opening dialogue change as their hearts increase, and adding some portraits would be a nice bonus

vale stream
scenic ferry
#

As a separate question, I really want to add a 'familiars' system, making little pets that follow you and give the farmer some basic buffs, but I'm not really sure where to start. Trinkets, maybe? Though I'd like them to be a little bigger, pet sized possibly

gaunt orbit
scenic ferry
urban patrol
#

trinket tinker is soooo powerful and granular the sky is your limit with that really

#

plus chu writes nice docs and is around to help if needed

soft lance
#

For "PLAYER_HAS_CAUGHT_FISH"

is it possible to check the quality of the fish tehy caught? Like: PLAYER_HAS_CAUGHT_FISH (O)_100 IRIDIUM, or similar?

#

i didnt see it in the wiki, but was just curious

urban patrol
#

@gentle rose does the most recent version of tilesheetinator allow for the use of vanilla tilesheets outside of the maps folder? do i need to set it up somehow?

brave fable
gentle rose
urban patrol
#

awesome! i'm getting user error then lol

gentle rose
#

ah, show me what's going on?

scenic ferry
gentle rose
#

that should be how it should work, yeah

urban patrol
#

i can manually locate each file fine, but every time i close and open the map it throws up again

scenic ferry
#

Are you able to double check the path that each tilesheet is pulling from?
I briefly had an issue for mine where it defaulted to tilesheet/wizardfurniture instead of ../tilesheet/wizardfurniture which broke mine for a little while

uncut viper
#

(the map fixer is not updated for latest SMAPI tilesheets)

urban patrol
#

i also did ye olde open up the tmx in notepad to remove the ../ myself so i may have fucked it

#

aha!

gentle rose
urban patrol
#

should it read like this or do i need to specify Buildings/ Animals/ etc

gentle rose
#

oh, beat me to it

#

you need to do ../ and then the path inside contents/the full asset name

#

e.g. ../LooseSprites/Whatever

urban patrol
#

excellent thank you

#

all fixed in tiled now! let me test in game

#

nooo not the gid error

uncut viper
#

you can try turning off every fix in the map fixer except for the gid fix

scenic ferry
#

I too come bearing a question, not about tiled though

I'm making my first custom item and struggling to load the correct sprite, it shows up as some random grass texture or something instead of my custom png?

#

everything else appears to be working, just the sprite

#

I sense I have done something foolish

urban patrol
#

you need to set a texture. it should be a field in object data

uncut viper
#

sprite index*

scenic ferry
#

Oh thanks! Cant believe i missed that
For now its the first on my object sheet, so I have it set to 0

urban patrol
#

pro tip: if you're going to add more objects later, it's slightly better to load one big sheet than to load a bunch of tiny sheets

scenic ferry
#

good to know! Ty!!

scenic ferry
#

I. may be a fool. what should the "texture" entry actually say? I've tried a handful of variants of assets/objects or {{ModId}}/objects but just keep getting back the same
"[game] Failed loading texture assets/objects for item (O)CodysOasis.VaelDeityOfThePack_MysticBounty: asset doesn't exist." error

brave fable
#

interesting. loading a save with the wedding location set to the town (via c# assetrequested changes, not cp conditions or c# basic tokens) and then loading a new save with the wedding location set to the island shows that the wedding event isn't invalidated when loading a save

brave fable
# scenic ferry I. may be a fool. what should the "texture" entry actually *say?* I've tried a h...

Texture uses an asset key (not file path) as the value, which should match some asset loaded by the game, such as LooseSprites/Cursors or Maps/springObjects, or of course any that you load yourself. for example, my feather item uses:json { // ... "Texture": "Mods/{{ModId}}/Sprites/Objects", "SpriteIndex": 14, // ... }
which is loaded as an asset elsewhere:```json
{
"Action": "Load",
"Target": "Mods/{{ModId}}/Sprites/Objects",
"FromFile": "assets/Sprites/Objects.png"
},

#

you can't use assets/Sprites/Objects.png as the asset name because it's not an asset, it's a path to a file that you want to load as an asset

#

the Texture and Target values must match, of course

scenic ferry
#

Ahhhh that makes sense! Fixed the issue, thanks so much!
I always get confused what should and shouldnt be a path :')

brave fable
#

you'll only ever use file paths in FromFile values, the game doesn't deal with those at all 🙂‍↕️

scenic ferry
#

That helps a lot actually! to my amateur eyes they all look so similar haha

#

While I'm here, I want to make the potion drinkable and give some kind of effect, like foraging +1 or speed or something. Is that something I can do as is with content patcher or do I need something like Buff Framework?

brave fable
scenic ferry
#

Oh awesome, thank you!

uncut viper
brave fable
#

you can ignore Data/Buffs since that's for specific buffs like Tipsy and Ravioli

#

data/audiochanges is an outlier and should not have been counted

gaunt orbit
#

stress-testing optimizations on my main mod loadout
side-by-side comparison shows the new method taking 5 seconds and the old method taking 2 minutes
still some work to be done, but if those numbers hold up, that will be excellent

pale river
#

is it possible to change breathing offset during a schedule animation for a npc?

brave fable
#

i don't believe so, but oversized sprites and frames >= 16 don't draw the breathing sprite

#

rightclick+scrollwheel to change tabs in sublime text is definitely one of the hotkeys of all time

#

and yet i can't find the preferences key to disable drag-and-drop text editing

pale river
#

is there a way to mimick the breathing? I can't remember what it looks like off the top of my head

#

looks like not really

azure raven
#

hey, anybody knows how to append custom option in Robin's carpenter menu, wanted to append another option, while making sure default ones work properly, or is that not possible?

#

by carpentermenu i meant the dialogue

gaunt orbit
#

hold on let me find the exact snippet

azure raven
#

yeah i was reading a mod's source and what they've done is just recreate the dialogue, but that seems destructive, especially when i have anothermod that does the same

gaunt orbit
#
    [HarmonyPatch(typeof(GameLocation), nameof(GameLocation.createQuestionDialogue))]
    [HarmonyPrefix]
    internal static void AddBridgeOption(ref Response[] answerChoices, string dialogKey)
    {
        if (dialogKey != "carpenter" || !ModUtilities.IsFarmInUse())
            return;

        var option = new Response(ModId_MyDialogueKey, "display text");
        answerChoices = [answerChoices[0], option, .. answerChoices[1..]];
    }

    [HarmonyPatch(typeof(GameLocation), nameof(GameLocation.answerDialogueAction))]
    [HarmonyPostfix]
    internal static bool CheckBridgeConstruction(bool result, GameLocation __instance, string questionAndAnswer)
    {
        if (questionAndAnswer is "carpenter_" + ModId_MyDialogueKey)
        {
            ...
            return true;
        }
        return result;
    }
#

you're not supposed to use the annotations though

#

cleaned out all the mod-specific stuff

azure raven
#

yeah ty, will try this one

gaunt orbit
#

again I would manually patch for a variety of reasons, I just havent gotten around to refactoring this particular bit yet

brave fable
#

why wouldn't you be supposed to use harmony annotations?

calm nebula
#

Smapi rewrites dont quite handle it

#

Ur mod might have weird looking errors on android

brave fable
#

acceptable losses 🙂‍↕️

gaunt orbit
#

for me the main thing is that if you have patch errors it will blow up all of your patches instead of just the broken ones

brave fable
#

fail safe 🙂‍↕️

calm nebula
#

Btw bluebs I love the heal over time feature of LoC

brave fable
#

isn't it beautiful tho

#

you can eat a farming buff food and get the buff effects and pretty much all the stamina while harvesting. unbelievable efficiency

calm nebula
#

I mostly like it because it means I have to actually try in Skull Cavern

uncut viper
#

I'm also on team annotations because if one of my patches explodes that's going to be a problem regardless and I should fix it

pale river
#

I like how it gives a reason to have life elixirs

brave fable
#

i try and prevent as much of the mod from loading as possible if anything fails so that behaviour is useful for my case

gaunt orbit
uncut viper
#

I will know the others are failing when I fix the first and it still crashes 😌

#

If multiple different patches are failing in one launch then something has gone terribly wrong anyway and there is little hope of the mod doing things correctly

calm nebula
#

I prefer to fail fast

#

drops a weight on my face

opaque cobalt
#

if hearts go by 250, what does it mean if an event wants a friendship value of 2600? It is 10 and a bit hearts?

tiny zealot
opaque cobalt
#

okay thanks

tiny zealot
#

(the actual friendship cap is, if memory serves, one point less than the next heart, so just shy of 9th/11th/15th)

gaunt orbit
#

apparently I hve a lot of broken mods that I didn't know about

opaque cobalt
#

Also, what does the letter "a" do for events? can't seem to see what it does on the modding:Event data page on the wiki.
goes:

event_id/a 0 23/t 600 1600/

karmic gust
#

It's the tile the player is standing on

#

It's a deprecated precondition

#

@opaque cobalt oops forgot to ping

opaque cobalt
#

okay, thanks. Going back through to better format a mod I converted to 1.6 and had this event which I can't tell why it is in there. Can't tell if it was a vanilla event that was leftover in there (original mod was from xnb modding days so it had all vanilla and added events in there) or if it has a purpose.

TL13.PennyExpanded_BusStopEvent1/a 0 23/t 600 1600/z spring/z fall/z summer": "winter_day_ambient/-1000 -1000/farmer 0 23 1 Krobus 16 23 3/viewport 14 23 clamp true/addQuest 31/skippable/move Krobus -2 0 3/pause 1000/emote Krobus 16/jump Krobus/pause 500/speed Krobus 8/move Krobus 20 0 1 true/move farmer 2 0 1 true/move false/playSound shadowpeep/warp Krobus -1000 -1000/pause 500/emote farmer 8/pause 1000/end

secondary qustion. Can I line break events so it is easier to read them in notepad or will that break the events?

karmic gust
#

Is that a modified version of the event where you have to find the shadow guy in the bush in winter to get secret notes?

#

I use word wrap to read events easier

tiny zealot
#

you can line break your events, but don't forget you still need the slashes

opaque cobalt
#

thank you. Will have to use that. Still don't know have thelittle tools in notepad++

tiny zealot
#

your editor may complain about it but SMAPI (and the game) will accept it

opaque cobalt
scenic ferry
#

I have a question about TrinketTinker;
I'd like to make a Wolf companion, which would move similarly to the in-game dog - but I'm not sure how to set up the spritesheet for that. Theres examples for tall companions, and wide companions, but if I want them to be "tall" (16 x 32) when moving up and down, and "wide" (32 x 16) for left to right, how would I set that up? Or, should they just be 32x32?

((The sprite is very much a wip dont judge it too harshly SDVpufferwaaah ))

calm nebula
#

32x32 should work fine

scenic ferry
#

Should I put the vertical sprites in the middle then?

#

Or will them being in the middle of two tiles make their movement seem wonky?

lucid iron
#

you should just make then 32x32 yea that is how game itself does it

#

requiring consistent sprite size is for your convienence since there's lots of logic that calls for a frame number

scenic ferry
#

makes sense, just wanted to make sure before I fleshed out all my sprites for one size haha

lucid iron
#

maybe u can use the pet dogs from vanilla as a placeholder Bolb

#

it has the layout trinket tinker calls "DRUL"

scenic ferry
#

I probably will for other familiars I make, but for now im in a sprite-drawing mood anyway haha

#

and now I get to make my side profile wolf taller so he looks... less like a goofy puppy

uncut viper
#

(re: wren in the wrong channel: they are case insensitive)

gaunt orbit
#

are CP tokens case-sensitive?

#

weird

#

I've been tinkering with shop data and noticed a bunch of it has {{ModID}} tokens unreplaced in it, and I can't figure out why

uncut viper
#

case sensitivity wouldnt cause that anyway, as CP would instead throw an error if it didnt recognize a token

gaunt orbit
#

hmmm

uncut viper
#

often times the reason for tokens being visible in game is someone did a Load instead of an EditData

#

though im not sureh ow one would do that with a shop edit, unless they were actually replacing the entire shop json

#

or their i18n got into it somewhere somehow and their i18n uses a token without proper passthrough

gaunt orbit
lucid iron
#

I vaguely remember using lookup anything on a FF added furniture and seeing a weird id

gaunt orbit
#

oh yeah it is FF

#

leeeeerrooooooy

lucid iron
#

Leroy has a bread

gaunt orbit
#

bread?

lucid iron
#

Thread

gaunt orbit
#

oh yeah

uncut viper
#

Wait what would FF do about it. It's not FF's fault people use CP tokens, no?

lucid iron
#

Tho i wonder if people are just putting {{ModId}} when they should use [[ModId]]

gaunt orbit
#

probably

lucid iron
#

If it ends up being the true furniture id anyway then nothing to do here

uncut viper
#

well it'd make it impossible to edit that furniture via CP

#

or call it in any way for something

gaunt orbit
#

tbh I should just uninstall all of my FF packs because the only one that's not like turbobroken is StarAmy's Museum furniture

lucid iron
#

Can u make a DT with calue {{ModId}}

uncut viper
#

I don't get what FF is supposed to do about it though

#

No

gaunt orbit
#

most of them are old and not updated either

uncut viper
#

Well

lucid iron
#

Pensive

#

What if u use \u

uncut viper
#

No you can't because it's just gonna be replaced with your modid

lucid iron
#

Weh

gaunt orbit
#

I just dngrepped it

#

hopefully that will fix i

opaque cobalt
#

what is the proper way to set prerequisite of player being married to an NPC for an event? Is O outdated and now I should use "Spouse"? Also, is there a way to specify only married, not married/engaged?

tiny zealot
#

yes, you should use the longer full-word preconditions now instead of the short form ones. the short ones still work but there's no benefit to using them in new mods (the benefit for old ones is backward compatibility)

gaunt orbit
uncut viper
#

(Plus them being officially deprecated means you can't complain if you use them now if they are ever removed for whatever reason)

#

(The odds of that happening are low but never zero 😌)

opaque cobalt
#

Okay, thanks. Will go back and update code for Penny Expanded for 1.6 then. Is there a tool like json validator to point out all deprecated code I'm using?

charred plank
#

can you use contentpatcher in conjunction with dll to make new tools?

tiny zealot
#

a single mod cannot be both a content pack and a SMAPI mod (at least, not with how smapi currently works)

#

you have to specify exactly one of ContentPackFor and EntryDll

charred plank
#

you can have two projects in one mod.

#

it's pretty common to have a CP mod and a dll packaged together if you want CP to make the item and then add extra functionality.

#

i can do it with objects, but my tool entries in CP keep failing

uncut viper
#

those are not one single mod

tiny zealot
#

sure, you can bundle multiple parts like that, but they are separate mods from smapi's perspective

uncut viper
#

which is what ichor means. they have different manifest and different uniqueids

charred plank
#

ok, let me clarify because i didn't say one mod at any point - i have a cp mod and a dll - the dll access the other one through the api

#

but the issue is i can't find a template for a tool for CP

uncut viper
#

CP can only access whatever is available via Data/Tools

charred plank
#

i did say one mod

#

cos i'm dumb

#

can you add entries to data/tools like you can to data/objects

uncut viper
#

yes

#

from a Content Patcherable perspective, there is no difference between the two assets in terms of whether or not you can edit them

#

you just might not be able to get to the tools to actually do anything useful without C# controlling it

tiny zealot
# charred plank i did say one mod

sorry, all i really had for context in your first comment was "content patcher in conjunction with dll" so i guessed that you were asking about having two components in one mod

charred plank
#

i'm getting errors saying type is "" but i have a type of "tool"

#
  "Action": "EditData",
  "Target": "Data/Tools",
  "Entries": {
    "Trunip190.CP.NewTool": {
      "Name": "New Tool",
      "DisplayName": "{{i18n:trunip190.NewTool.NewTool.name}}",
      "Description": "{{i18n:trunip190.NewTool.NewTool.description}}",
      "Type": "Tool",
      "Category": -99,
      "Price": 300,
      "Texture": "Mods/Trunip190.CP.NewTool/Objects",
      "SpriteIndex": 1,
      "ContextTags": [
        "not_giftable"
      ],
      "AttachmentSlots": -1,
      "SalePrice": -1,
      "UpgradeLevel": 0,
      "ConventionalUpgradeFrom": null,
      "UpgradeFrom": null,
      "CanBeLostOnDeath": false,
      "SetProperties": null,
      "ModData": null,
      "CustomFields": null
    }
  }
},```
uncut viper
#

several of the fields you have there dont even exist in Data/Tools

#

like Type for instance

charred plank
#

Whether i have Type or leave that blank (and everything after contexttags) i still get the same ' type "" ' error

#

Could not instantiate tool 'New Tool'. Type '' does not exist in StardewValley.Tools, and was not registered with SpaceCore's serializer.

uncut viper
#

well it wont make a difference because its not a thing that exists on tooldata, so its being completely ignored either way. same with Category and Price

#

!log if you have an error please share it with the log uploader

ocean sailBOT
#

Important note: Your computer username may appear in the log. If your username is your full name, please be aware of this before uploading it.

Please share your SMAPI log file. To do so:

  1. Open this page: smapi.io/log.
  2. Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
  3. After uploading, it will show a green box with a URL to share. Post that URL here.

Please do it even if you don't see any errors. This has useful info like what mods and versions you have, what the mods are doing, etc. If the issue didn’t occur in your last session, please load the game to the point where the issue occurs, then upload the log.

charred plank
#

one mo just relaunched so its blank

uncut viper
#

also the ID of your tool wouldnt be "New Tool" itd be the one with your modid

#

you should make it match the Name field

#

or rather, make the Name field match it

charred plank
#

roger that.

uncut viper
#

you also havent set a ClassName, which is required

#

and likely the cause of the error

charred plank
#

classname in cp?

uncut viper
#

(i overestimated the visibility of a link being in that text when its so short. there is a hyperlink there)

charred plank
#

i saw it. 🙂
gonna try with that in there. seems likely.

charred plank
#

and to you button.

tiny zealot
#

no harm done. just a little misunderstanding SDVpufferheart

charred plank
#

errors all gone

#

thanks 🙂

woeful lintel
#

You might want to report that to the author of the Furniture pack, although fixing that will cause all their furniture to error out in saves that have them (which might already have happened in the transition to FF3 if they didn't change the "token").
It's still possible that it was one of my mistakes if it's in the FF2->FF3 migrator skip.

#

Although if that was a migrator mistake, I would have had more reports about error furniture

#

I should add a warning if CP tokens are found in FF text

opaque cobalt
#

Is there a good place to see what the one letter codes became for the full words? Trying to see if k should be replaced with eventSeen or SawEvent

vernal crest
#

It's on the Events wiki page

#

If you need to see the deprecated aliases they're in collapsed tables at the bottom of that section and you can expand them to see the old alias and the new full word one

opaque cobalt
#

thank you. missed the collapsed tables

hollow hatch
#

is there a way to replace the text scrolling sound in a comprehensive way to emulate HM text scrolling? id assume not

hollow hatch
trim sand
#

map making question;
does setting tile properties in the tilesheet itself effect all maps with the tile or only my own map file where ive added the property? (trying to make some tiles that arent normally tilable tilable without needing to spew object tile data on over half the map.)

hard fern
#

...probably towninteriors

#

or towninteriors 2

#

(you're using a recolor so i can't be sure which part is is)

trim sand
opaque cobalt
#

What is the better way write this so an event only triggers in winter? Haven't seen either work, but 90% chance I just haven't typed something wrong

eventid/Time 1800 2200/GameStateQuery "SEASON Spring"/:
or
eventid/Time 1800 2200/!Season spring + summer + fall":

gentle rose
#

why are you putting all the non winter seasons instead of just winter? /gen

opaque cobalt
#

that is a good question. I think I was just trying to keep it how the original mod author had it. much smarter idea

hollow hatch
#

wait i might have got it

granite bluff
#

hey, i does someone know if there's a a specific tile that let you sit on the duckie at the playground?

hard fern
granite bluff
#

ah, how do i do that?

hard fern
#

should be a page on a wiki

granite bluff
#

thanks :3

hard fern
#

[[Modding:Chair_data]]

#

oh god

#

well

granite bluff
#

i only seem to find modding:furniture :0

hollow hatch
#

bruuuu

brave fable
# hollow hatch bruuuu

how did you export/convert your file to ogg? if you install ffmpeg it should be as easy as ffmpeg -i file.mp3 file.ogg from the terminal in your file directory for defaults

#

assuming an MP3 ofc

hollow hatch
#

i tried to use ffmpeg but i dont know how to operate it

brave fable
#

ah. midi

#

ffmpeg runs commands from your terminal, so for example you'd navigate to your mp3 (or in this case midi) file, type cmd in the explorer address bar to open up the terminal, then write the above command with the appropriate filenames and filetypes

#

that said, i've never actually tried converting a midi hahah

vernal crest
#

Why oh why are these aquarium fish edits not applying

#

Apparently they are just too lazy loaded so I had to put a coral in a tank before the edit would apply

#

Not ideal!

hollow hatch
hard fern
#

gotta open it via command line

#

or well. "open"

#

you do everything via the terminal

hollow hatch
#

ah i see

ruby marsh
#

To convert a midi file you need something that processes midi. Midi is just bare musical information that has to run through a synthesizer (hardware or software). The result depends heavily on your synthesizer's capabilities.

hollow hatch
#

well i dumped my HMDS rom from my 3ds directly and vgstrans only converts via midi and sf2 so i dont know how to convert it to ogg rather then just pirating the ost off the internet (and also certain sound effects i cannot find that i wanna use)

ruby marsh
#

So you need a tool that loads your sound font (sf2) and processes your midi. I never did that on windows but I'm sure there must be somebody who knows how to do it.

hollow hatch
#

yeah, itll be for quite a few tracks too

ruby marsh
hollow hatch
#

ill give it a try

ruby marsh
#

Sorry, might not be the best idea, you either have to build it from scratch or use cygwin. Here's another one: https://www.fluidsynth.org/

hollow hatch
ruby marsh
#

First step is MIDI to WAV.

hollow hatch
#

and then wav to ogg

ruby marsh
#

That should work. It's a very long time since I did that myself.

hollow hatch
#

now i gotta figure out how to laod midi into this and how to work it lol

hard fern
#

🤔 well, first place to start would be the docs

hollow hatch
#

there doesnt seem to be a readme

lucid mulch
#

Strictly speaking the wav to ogg step is optional, but recommended for minimising file size

hard fern
hollow hatch
elder scarab
#

Excuse me, could someone send me the Wiki on how to create a new festival in Stardew Valley?

vernal crest
hollow hatch
brave fable
#

hm. is it not possible to add a second, alternative AdditionalConsumedItems ruleset to a machine

#

somehow i thought this items list would be per-rule rather than per-machine

analog yacht
#

Is setting the time back to 1:50 every tic performance intense?

#

I used freze time. But then the monster where also frozen.

calm nebula
#

Use emc for otherwise

brave fable
#

selph.ExtraMachineConfig.RequirementId.1
The additional fuel that should be consumed by this recipe in addition to the ones specified in the machine's AdditionalConsumedItems field.
dam

#

i don't think i understand what this field is for. can't you just add the additional fuel to the original field

lucid iron
#

it's for having different additional fuel per rule

brave fable
#

hum. i was just going to see about having a rule that replaces may substitute 5 ore + 1 coal with like 25 ore + 1 supercoal™ but i'm not particularly attached to the idea

calm nebula
#

Supercoal

#

Where can I get this supercoal

#

Asking on behalf of a formerly industrialized nation

brave fable
#

as someone from the 'we invented coal' nation, iunno find it in the woods

#

its fine tho im allergic to machines anyway

woeful lintel
#

you'll never be able to play Satisfactory, so sad SDVpuffersob

calm nebula
#

What's Satisfactory

#

Sounds like a grade level from Harry Potter

vernal crest
#

One of those giant production line making games iirc

#

I always get Satisfactory and Factorio mixed up

calm nebula
#

How It's Made as a video game?

hollow hatch
halcyon nest
#

silly question, but how big are crop/item sprites? I assume they’re 16x16 but I wanted to verify that before I went with it

vernal crest
#

!unpack You should unpack your game files so you can check against the actual files

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!

restive scarab
#

Anyone know how to move the dialogue.json to i18n files?

vernal crest
#

But inventory items like harvested crops are 16x16. Growing crop sprites are 16x32 per frame and....a variable number of frames per row

vernal crest
vernal crest
halcyon nest
# vernal crest This page will also be helpful if you're doing crops specifically: <https://star...

I do indeed have the modding objects and crops wiki pages opened up!!! Stardew wiki my beloved 😭

I just noticed they hadn’t mentioned the dimensions for icons and the like, and went with an assumption based on what I had known from my scouring on the files, and wanted to verify my assumption before actually committing to it bc I’ve been known to be wrong™ (glad I did bc crop stages can be 16x32!)

#

thank you so much for the additional tips though, and all of your help in general!!!

vernal crest
wanton tulip
#

what was the command to jump into an event with smapi to test the event?

vernal crest
#

debug ebi <event id>

wanton tulip
#

thanks

restive scarab
slow basin
#

you can use content patcher to add unique animal sounds to your pet mods right

#

like if i wanted a Dook from a ferret instead of a meow from a cat

vernal crest
slow basin
#

oh aesome thanks aba

#

skitters away

spice inlet
#

@agile apex
Hello, regarding the QuickSave bug report you made a few months ago.
It got fixed in the QS update that just released.
Thank you for your report and patience SDVpufferheart
#1442698557655220374 message

restive scarab
vernal crest
#

You also shouldn't have to update any Content Patcher mod to make it work.

#

Although old mods are often missing more recent features, all the CP mods right from the beginning should still work without errors.

#

I have quite a bit of experience of using old mods because I will use mods of any age.

#

(I am not meaning to discourage you, just making sure you are not giving yourself unnecessary work without realising ^_^)

restive scarab
#

Thanks!

I've alrdy publish my first translation, i still working on the others...

vernal crest
#

Ah, so you're wanting to publish a translation of the mod?

#

That will be more difficult, because unless you have permission or the mod's permissions are open, you won't be allowed to publish the one that is converted to use i18n.

restive scarab
#

Thanks for the reminder!

I always ask permission first before i publish it

quasi dew
#

question re: Nexus modfest
so it seems like the best "strategy" to get the most downloads is to upload your mod on the first day...? just wondering how y'all feel about that
(I just want my mod to be well-received. there's no way in hell am I winning anything.)

#

I love the idea of having a category for new modders, but it seems like the actual contest part is geared toward people who were going to release their mod in late february/early march anyway

torpid sparrow
#

im hoping they change something to make it a more even playing field but idk

quasi dew
#

agreed! just looked through the conversation from yesterday. lots of good points there

torpid sparrow
scenic ferry
#

I might upload my mod early on and then provide content updates as the fest goes on, but thats assuming I finish something quickly haha

spice inlet
#

the rules as they are don't make sense, so I am hoping they just didn't disclose how long downloads will be counted after release

torpid sparrow
#

button commented on the post

spice inlet
#

either way I feel like it's a bit too stressful : P

torpid sparrow
#

but no reponse as of yet

quasi dew
torpid sparrow
#

i could technically release my mod when it starts but it'd be rly barebones

quasi dew
#

and I know I have no chance in any categories, right? I can't imagine how stressed the big hitters are rn

torpid sparrow
#

what do u need for an npc? walk cycle, 1 portrait, and 1 schedule

quasi dew
#

flash dropping SVE 2 to win a computer lmao /j

torpid sparrow
#

it will just suck

hallow prism
#

i'm not sure what big hitters are, but i think stress is pretty relative

scenic ferry
#

I still need my events set up, right now ive only got my NPC intro lol

#

but alas I've gone down a rabbit hole of other features and keep getting distracted

quasi dew
torpid sparrow
#

i mean i would argue, if big modders will be participating, it wont be all that stressful. this is a good chance to get eyes on mods and they already have eyes

quasi dew
#

just the deadline in general

torpid sparrow
#

yeah thats the only point of stress for me too

#

but its motivation and im happy to be back to modding after a long while

quasi dew
hallow prism
#

i don't think i have something that could win unless i got lucky, so i approach this with the idea that this is an opportunity to release unfinished projects, and have potentially a bit more attention than usual

halcyon nest
torpid sparrow
#

There are certain “ways” to hack downloads but I hope everyone makes something they enjoy

#

Keep the fun in it

hallow prism
#

the thing with big modders is that often they have already big projects, so they may not be able to release something new and big for the contest

quasi dew
#

the idea of a "contest" in general just feels a bit yucky. I wish it was more of a participation prize

quasi dew
#

I have such mixed feelings about all of this

hallow prism
#

i think it's nice that SDV is getting a bit more shiny rewards/attention, it was not treated well by nexus in comparison with other games

torpid sparrow
#

The playing field is only not level bc there’s no guardrails around how downloads and endorsements will be counted imo

hallow prism
#

i wouldn't say there's plenty of opportunity for contests but if you want participation prize, well, that's kinda regular modding, or modding events/mod jam here

torpid sparrow
#

I want the tag

#

Or whatever it was

#

I’m happy to be here SDVpufferparty

scenic ferry
#

I still think its funny I started making my mod, and then literally ONE day after starting, the announcement hit for the contest
Crazy timing!
So for me its just bonus motivation for a project I was already starting anyway

quasi dew
#

I come back to modding every... 12 months or so? whenever I get a SV hyperfixation 😅

scenic ferry
#

I know theres no chance I win as my first ever mod but I'm just here to have fun and get a title

torpid sparrow
#

Well new modder is a category

#

So there’s a chance SMCPufferSquee

scenic ferry
#

haha, a man can dream I suppose

ornate trellis
#

I already know I wont be a top spot but ngl I dont even care to be? A pc is a rad price but I already built myself an alright one so maybe thats why it doesnt faze me that much. but some merch does sound nice, well, either way cool enough for me to get that tag thing for participating lol

#

I do like that theres a possibility of teams so people have a higher chance to win and stuff

quasi dew
torpid sparrow
#

I’m excited to see just a lot more mods during this period

blissful panther
scenic ferry
#

Team Bog all the waayyyyyyy!!

quasi dew
#

again, I have mixed feelings.

#

also curious as to how the teams work!! I want more info there

#

I need friends lol

torpid sparrow
#

I just want to get my mod done

#

My last deadline for it was August

#

So 1AjLaugh_anim

scenic ferry
#

Ah, an actual modding question:
I'm making a "familiars" system, magical companions of sorts, to go along with my NPC mod
But I'm torn as to how to design my familiars
I started with TrinketTinker, but recently ive been thinking maybe I should gear towards something more like Pets Enhanced? Being able to have friendship and name the familiars would be awesome, and it would let them hang around your farm when not "in use"

#

I have no idea how to make a pet, but I had no idea how to make an NPC either and yet here we are, so im workin through it no matter what haha

quasi dew
vernal crest
#

I like the excitement and enthusiasm about participating. Regardless of who gets the big prizes (my money is on the really popular aesthetic modders if any of them enter) everyone who works on a mod because of this modfest will be further ahead than they were before - especially the people who are seeing this as encouragement to try out modding for the first time.

hollow hatch
vernal crest
#

They don't have to be, I don't think? But I don't know I've never actually looked into trinket tinker

#

Chuuu where are you

hollow hatch
#

the trinket slot i meant

scenic ferry
#

All good points... I was going to make the trinket itself available via my NPC's shop, but I dont know if that alone works

fallow musk
#

For some reason the string " (+250g)"

is showing up in the createQuestionDialogue as cool skateboard something, how to fix this?

hard fern
#

+ = cool skateboard

hollow hatch
#

a cool concept would be befriending enemies into companions or something along those lines

scenic ferry
hard fern
#

🤔 i dont suppose trying to escape the + works to un-skateboard it, does it?

vernal crest
fallow musk
#

oh ok, yeah i didnt esccape it

#

thanks

vernal crest
#

Woo Monster Sanctuary!

scenic ferry
#

always gotta rep team Bog 💪

hollow hatch
#

99% of my mods are QoL lol

scenic ferry
#

ah thats fair enough!

vernal crest
#

I am the opposite. Sometimes I have to remind myself that things being vanilla is still ok lol

#

I don't want to miss out on all the cool ideas everybody else has

hard fern
#

i think if i showed any random stardew player a screenshot from my game they wouldnt even believe it's still stardew LOL

vernal crest
#

And especially all the great NPCs (looking forward to seeing yours too Cody!)

scenic ferry
#

I similarly maximize my playthrough with as much witchy-vibe stuff as possible until it is almost unrecognizable

slow basin
#

my sdv is bright pink SDVkrobusgiggle

hollow hatch
#

you think theres a way to play doom in stardew

hard fern
#

already is

hollow hatch
#

insane

slow basin
#

Aa i love npcs mods!! i think its fun to make a whole big world X3

hollow hatch
#

FPS stardew

hard fern
#

😅 speaking of npcs im having trouble again. the temptation to scrap everything i have is strong

scenic ferry
#

whats goin on? Maybe itll help me with mine too 👀

vernal crest
#

I really need to get back to some of my mods. And update Monster Mash.

vernal crest
hard fern
scenic ferry
#

ahhh thats fair. I

hard fern
#

i can never really just have an idea and stick with it

scenic ferry
#

oops. I'm looking at redoing my sprites because I'm not sold on them after spending like. way too long on them in the first place

#

not to mention my portraits, oh dear.

hard fern
#

there's always something or other i'm unsatisfied with and it ends up killing my motivation entirely

vernal crest
#

My advanced age has let me achieve some success against the self-criticism but when I was younger I was much the same

ornate trellis
#

thats one of the few moments where my lack of attention feels like a blessing because i just get distracted and carry on with other things and later was like "hm...I did finish this, right..."

vernal crest
#

Perfect is the enemy of done

ornate trellis
#

usually the artist curse of hating what you jsut created is by then lifted lol

vernal crest
#

(People often say good enough but I say done because I want the reminder that perfection causes you to never achieve anything ever.)

hard fern
#

at least i didnt finish making my sprites or portraits yet lol

scenic ferry
#

The artists curse is so real. I'm an animation student and oh god, I dont think ive liked any of my projects for like a year. But modding has really brought back what I loved, even if I''m new to it -- watching my creations, even if ammateur, come to life and move around in the world is just so rewarding.
Once I see them move I'm attached!

#

that said, before they're movin around in the world?.... very possible they get scrapped by perfectionism mind haha

ornate trellis
#

it took me ages to realize that perfection is nothing one should strive for because in the impossible case youd achieve it that meant, well, thats it. no more progress. time to pack your bags. you'd have no room for improvement and I'd hate that. so i began to not care too much bout perfection anymore. still struggling, but hey, its better than in the past

hollow hatch
#

i just thinking giving up invalidates any effort put into it in the first place, if i spend an hour on something im not getting that hour back i might as well finish it

scenic ferry
#

For me... The way I try and look at it is something like this:
"perfect" is without fault, without fingerprints, without dust - it is without the human touch, in my opinion. It is flawless, in the way that a solid slab of cold steel is flawless. It has no divets that gives it personality, no scars from battles won, it is boring, and moreso, lifeless, because life is impossible without imperfection

ornate trellis
#

besides, just as most things perfection is very subjective anyway

scenic ferry
#

.... sorry to go all Poetic on yall, I get artsy with it now an then haha

scenic ferry
#

okay I'm locking in
Anybody got tips for making a Pet mod?
I've got the Modding:Pets wiki page up but am otherwise clueless

hollow hatch
#

i couldnt understand the modding audio wiki page at all

dire kestrel
hollow hatch
#

this chat is a blessing for asking questions too

dire kestrel
#

(which isn't to say i made that. i only used its beautiful json for my own means 🙂‍↕️)

scenic ferry
#

youre so right reference mods my beloved

lucid iron
scenic ferry
gentle rose
tender minnow
#

for dialogue, is there a way to have multiple entries under one dialogue option? say if i wanted multiple things abigail Could say if you had 10 hearts on a sunday. i made a mod a long time ago, like 3+ years? ago that had a random input separator that worked at the time, but it doesn't seem to work now.

hallow prism
#

you can still use that if properly set, use random in translation key, or use the || which is cycling per week

#

the latest is great, even if technically, not random 😄

tender minnow
#

do you know how to set up random by chance? im wondering if the old mod's setting might be outdated....will look into weekly cycling though if all else fails!

lucid iron
lucid iron
#

It was their profile link

lucid iron
#

This shows a dialogue w/ portrait and then shows u the usual multiple choice menu

#

You then define the choices in ResponseEntries and provide an OpenShop from there

hallow prism
tender minnow
#

no worries! I'll try and do some more digging on my own. thanks!

tender minnow
lucid iron
#

So that's a content patcher token, and it updates once per in game day

#

What do you currently observe in game? Do u have errors?

tender minnow
#

nope, no errors. everything is fine, no errors parsing.. it's just that my other dialogue options won't show up

lucid iron
#

You have to actually sleep to get the random to change right

#

You can patch export the dialogue asset to see the strings without having to talk to npc

tender minnow
misty lintel
#

is there a token for friendship points (ex replace a map when user has x friendship) in content patching

autumn tide
#

hey! how can one ban a fruit item from being used in any machine? (ie preserves jar, cask, etc)

#

could I just set these to false?

agile apex
golden basin
#

I figured out how to make dynamic rugs like lina did im so happy with myself haha

autumn tide
#

aaa congrats!!

golden basin
#

still learning about connecting textures though

lucid iron
golden basin
#

I'm considering making them regular rugs because I'm lazy xD

lucid iron
#

lina made this helpful visual

#

tbh i think for rugs it's ok if u just do a horizontal connect version and a vertical connect version

#

that means u only have to draw 4 sprites and ppl can still have a big long rug for their hallway

analog yacht
#

How can you change the mines ? My plan is to make a custom mine layer.

gentle rose
#

the mines are complicated, your best bet is to check if spacecore can do what you want

blissful panther
#

I was going to use this modfest as an excuse to get my farm map out, but now I've accidentally nerdsniped myself with a, uh... a different idea. SDVpufferwaaah

gentle rose
#

spill?

autumn tide
#

helloooooo what framework can be used for custom wallet items? completely forgot-

hallow prism
#

i think the feature is on unlockable bundles

#

if not, it's definitively one of delixx' mods

autumn tide
#

gotchaaa okay!

uncut viper
#

Wallet items are just Data/Powers

autumn tide
#

OH

#

thanks!

uncut viper
#

You can't make them do anything special on their own but otherwise it's just mail flags or any other gsq to make the icon appear.

hallow prism
#

well, for my defense, i was thinking about currencies, that you usually put in a wallet

autumn tide
#

I prolly could've phrased it better LOL

hallow prism
#

not really! it's just how it's named in game

autumn tide
#

I assume I can use trigger actions daily or something like that to add the actual effect of said wallet item?

uncut viper
#

Well in your defense, they were called wallet items up until 1.6 and the content patcher token is still HasWalletItem, so you're probably not the only to still call them that

#

They don't need to exist in Data/Powers for you to do anything. Literally the only thing differentiating a special power and just doing anything else with trigger actions or map actions or anything else is just whether or not you show a picture on the menu tab

#

The actual tab is meaningless when it comes to functionality.

autumn tide
#

mhm!

#

I just want it to show up LOL

uncut viper
#

My point is you can already use trigger actions to do whatever you want. Whether or not you make it show up in the tab

autumn tide
#

got it!

wanton tulip
#

if i do this and tell the content json to targeet the data default event <eventid> json will it work the same is i18n or will it cause problems? i did it like this cause this felt more orgnaized for my ocd brain

#

the mod is just dialogue edits

bright moat
#

Hi i want to start to make mods for sv. I have much ideas, but dont know where to start.
Of course i want to start with a small one 🤗

iron ridge
#

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

hallow prism
wanton tulip
# hallow prism (i'm not sure what you're trying to do)

so instead of having a huge chunk of speak, mail , textabovehead, daily dialogues in i18n

i took them from content unpacked organized it in my mod

the mod structure became

content.json
manfiest.json
folder[data]

inside data folder there is another folder called [defaul]

and folder called patches[for any mod compitablites in future]

inside default

there is events, dialogues, festivals, mail
misc folders

with their respective jsons inside of them

hallow prism
#

i'l not sure you can split i18n currently, unless there was some CP update allowing it

lucid iron
#

You can yeah the update was several smapis ago

wanton tulip
lucid iron
#

You put all i18n under default/ or <language code>/

wanton tulip
#

hold on lemme just

lucid iron
#

That said you still use i18n token

#

And do the same sort of text operation edit

wanton tulip
#

"Action": "EditData",
"Target": "Characters/Dialogue/Shane",

uncut viper
#

i18n is also still expected to be inside a folder called i18n and not data or anything else. If your intent is to just drop these jsons in the folder and expect them to be automatically patched in the game, that is not how it works and would also break every other mod that edited the same targets as you anyway, since you just took it from the unpack. You also wouldn't really be allowed to distribute the mod with all of the unpacked files in it as well.

wanton tulip
#

but i meant do i still need to add the entries under target or not

lucid iron
#

You still do EditData yes

uncut viper
#

Yes, because just putting files in there is not how it works. You have to actually patch the target yourself.

wanton tulip
#

isee thx

lucid iron
#

It may help to be more specific about what you want to achieve

#

So people can tell you what you should do rather than say "you cannot do X"

wanton tulip
#

dialogue and event edit, have it just get it from the folder without manually re typing the edited data inside the content or i18n just for it to target the folder that already has the edited dialogues

uncut viper
#

Content Patcher does not support that outside of directly Loading a file, which will also potentially break other mods or the vanilla game itself.

#

And even then, you'd have to Load each individual file.

#

Can't point it at a folder.

wanton tulip
#

i see . . .

#

thx anyway

mortal blade
#

I'm trying to add a new hairstyle via [CP]. Do I make up a random number as the 'key', or is there a way to just append it to the list of hairstyles? I'm "borrowing" from another mod, and this is their content.json:

{
   "Format": "2.9.0",
   "Changes":
   [
   {
       "Action": "Load",
       "Target": "Characters/Farmer/XYZZYHair",
       "Fromfile": "assets/hairstyle.png"
   },
   {
       "Action": "EditData",
       "Target": "Data/HairData",
       "Entries": {
           "433893783": "XYZZYHair/0/0/false/-1/false",
       },
   }
   ] 
}
hallow prism
#

i think the suggestion was to use nexus ID

uncut viper
#

Data/HairData is still keyed by ints so you need a number, and its recommended to use your nexus id yes

mortal blade
#

And if my mod has multiple hairstyles? Is it a string or an integer?

uncut viper
#

Append a number to the end of your nexus id

mortal blade
#

.oO( Button is as cute as a Frieren... wait... that's backwards, isn't it?? )

uncut viper
#

It is an integer. But you probably need to put it in quotes in CP

mortal blade
#

So like:
"Entries": { "12345XY": "...."}
Where XY are two more digits, and 12345 is the mod ID?

uncut viper
#

Yeah pretty much

mortal blade
#

Cause HairData is a hash/map, no? Not a list.

uncut viper
#

People used to do that for things like events too when they only allowed numbers. If everyone prefixes with their nexus ID then there's no clashes.

#

Well it's a dictionary of int to string yes but you'd write it the same regardless, even if it was a list.

mortal blade
#

NexusID of the mod? Or my account ID? (I have one??)

uncut viper
#

of the mod

mortal blade
#

So, I have to pre-create the mod to get its ID. 😉

uncut viper
#

(That said it's worth mentioning that HairData is becoming a proper data model in 1.7. Content Patcher will probably auto migrate it for you, but if you come back in like 2 years don't expect this information to be the same, potentially)

#

Actually ignore that

#

It's Data/Hats

#

I was getting them confused. My bad!

mortal blade
#

I could REALLY go crazy, and make the hairstyle into a "hat" =giggle=

uncut viper
#

And you just have to create the mod page.

#

People do the same thing to get update keys, it's nothin new

hallow prism
#

at this point you may want to look at fashion sense rather than hats 😄

uncut viper
#

As soon as you go past the first step of making the page you get the ID.

mortal blade
#

Thank you both so much for your help, Lumina and Button!!

#

42735

#

Feel free to check out my two other stoopid CP mods! Muahahahha!

tender bloom
# autumn tide hey! just bumping this LOL

It’s not straightforward but look at the wiki page where it says

You can negate a tag with ! (like "RequiredTags": [ "bone_item", "!fossil_item" ] for bone items that aren't fossils).

You’ll have to edit the original rule to use this type of format

autumn tide
#

aaah okay I think I got it!

#

thanks elizabeth!

mortal blade
#

Ok... one last question... any way to dynamically reload a CP mod so one doesn't have to restart SdV all the time?

hallow prism
#

!reload

ocean sailBOT
#
How do I reload my changes while I'm still in game?
  • Content Patcher pack: enter patch reload <your_mod_id> in the SMAPI console window. This will reload and reapply all your patches (but won't recalculate the ConfigSchema or DynamicToken sections if you use them).
  • Translation files: enter reload_i18n in the SMAPI console window. If it's for a Content Patcher pack, also run patch reload afterwards.
  • C#: see the Visual Studio hot reload or Rider hot reload feature.
mortal blade
#

NOICE!

#

Y'all are swell!

tender bloom
#

(Some other non-CP mods also have reload commands, like FS)

scenic ferry
#

Question!
I'd like my custom pet to be adoptable from a shop other than marnie
is that??? doable??

mortal blade
#

tries to reload SpaceCore while running a game...

#

😉

uncut viper
#

Chu would know more than me

lucid iron
#

so if u just want another pet shop u can just have OpenShop PetAdoption somewhere else

#

livestock bazaar adds ability to filter for specific pets, and 1.6.16 also has that

calm nebula
#

Can you not use a per item gsq

#

Chue

uncut viper
#

Iirc the way pet licenses are, no

#

They're a bit scuffed

lucid iron
#

naw atra it returns a list of all pets rn

#

and theres not rly any way to check breed cus its concat into 1 thing

uncut viper
#

ITEM_NAME_CONTAINS when

lucid iron
#

maybe item id prefix could work? i dunno

#

at least for "only cats"

uncut viper
#

They're not in the id though, no? Just in the literal name I thought

lucid iron
#

also i lied about it being in 1.6.16 RunRun

#

ah yea it is name blobcatgooglyblep

uncut viper
#

terrible times for peritem

uncut viper
#

remind me in 38 days to ask chu about adopt wild pet features

patent lanceBOT
#

rofl that's what you need a reminder for? yeah ok (#7080455) (38d | <t:1775075125>)

mortal blade
#

Steals the batteries from Maru's Robot

lucid iron
#

say where is marubot sprites

#

ah characters/robot

scenic ferry
#

My goal is to have a shop that sells potions and, separately, has pets, with particular unlock requirements (triggered by events)
I have the potion half of the shop functional as is , but would I be able to make the same shop able to sell animals with livestock bazaar?
Could be through MMAP question at the start?

lucid iron
#

yea u can have multiple responses

scenic ferry
#

awesome!! Just wanted to double check

lucid iron
#

and each response can have a Condition

scenic ferry
#

ty for all the help chu

lucid iron
#

livestock bazaar does actually have it's special sauce thing, which specifically makes menu like marnie's (items, farm animals, pet shop)

scenic ferry
#

oooo

#

yeah this looks awesome im excited to dive into livestock bazaar now

calm nebula
#

So how goes modjam?

hard fern
#

strawberry, grape, orange, peach, raspberry apple

#

maybe bacon if you look for it 🤔

opaque field
#

Also rhubarb

urban crest
#

hi! can anyone help me check if a message I wrote using the dialogue formatting is doing what it's supposed to do?

#

I have no way of testing right now because the code isn't complete to parse yet, I just wanted to check the message before placing it into the code

#

Here is how I would like it to show up, since it's gonna show up in a generic text box instead of the dialogue textbox (which contains portraits):

(click to continue) 'We thought you might appreciate a few things to help you settle in your new life! 
(line break) We're very proud of the choice you made and it makes us eager to see you progress in the land your Grandpa once owned. We miss him very much too. 
(click to continue) Oh! And I should mention... Your dad is has been completely obsessed with brewing coffee lately! 
(line break) Send some of your produce for us, I bet he'll be stoked to try something from your farm! 
(click to continue) Don't forget to write and make sure you’re eating properly, okay?
(line break)  —Love, Mom and Dad 
(click to continue)P.S. We've included some photos of you as a kid playing in your Grandpa's farm! Look at you wearing the scarecrow's hat!'
(click to continue)You smile.```
#

here's how I tried to format based on what I've seen on the wiki:

$1
\n\n
'We thought you might appreciate a few things to help you settle in your new life!
\n
We're very proud of the choice you made and it makes us eager to see you progress in the land your Grandpa once owned. We miss him very much too.
$1\n\n
Oh! And I should mention... Your dad has been completely obsessed with brewing coffee lately!
\n
Send some of your produce for us, I bet he'll be stoked to try something from your farm!
$1\n\n
Don't forget to write and make sure you’re eating properly, okay?
\n
—Love, Mom and Dad
$1\n\n
P.S. We've included some photos of you as a kid playing on your Grandpa's farm! Look at you wearing the scarecrow's hat!'
$1\n\n
You smile."
calm nebula
#

.....it would be nice to have those objects have context tags SDVpufferthinkblob

vale stream
#

Hi, has anyone here used SpaceCore's CraftingRecipeOverrides before? They were working for me a few versions ago (around... 1 year ago), but now I can't get them to work and they don't appear in the player's inventory when bought. I can give a repro pack if needed

#

I wonder if it's something on my end with how I made the shop-- but I checked the wiki and I don't think I made anything out of the ordinary. Specifically, I have a placeholder item that, when the recipe is bought, can craft a tool. But the recipe appears like this:

#

The vanilla recipe looks like this
"{{ModPrefix}}VoidPlaceholder": "{{ModPrefix}}VoidShard 2 769 10/Field/{{ModPrefix}}VoidDust/T/l 0/{{i18n: VoidDust.Name}}"

I remember seeing this issue before, but I can't remember how I solved it. SDVpufferchicksweatsip
EDIT: Spacecore is up to date, jic

torpid sparrow
#

I cant remember if this is the case for spritesheets; can i make them longer than the default?

slow basin
#

does anyone know where the little faces of the pet select is? like the ones you choose your first pet with on the start menu?

#

i wanna see how big i need to make the png

#

for my ferret face

torpid sparrow
#

uhhhhhhhhhhhhhhhhh

#

hold on

#

i made a pet before let me check

ornate trellis
#

cursors

torpid sparrow
ornate trellis
#

in doubt its always cursors

slow basin
#

thanks wem thanks void!

trim sand
#

oh dear, ive botched something really badly with this custom farm map... can't load the testing save after making it

#

oh wait, its failing to place the fish pond.

golden basin
#

I have written so much dialogue today i think i might melt into a pile of clown mush

hallow prism
#

i remember that for cooking recipes i had the issue of sap recipe but it worked fine once bought

torpid sparrow
brave fable
lucid iron
brave fable
#

imperfect 🙂‍↕️

#

if nothing else it's far more complete now than it was last month

#

not that this means it's remotely complete, of course SDVdemetriums

hard fern
#

🐛 🪲 🐞 so exciting