#making-mods-general

1 messages · Page 483 of 1

royal stump
#

In general, you don't necessarily need Harmony for mechanical changes, but it might be a cleaner solution. Moreso if you want to stop something that's already happening, or to do something complicated that the game already does.

For example, you can use change monitoring techniques to detect things like "the player just stopped swinging a tool". But to see if the player hit a specific object & broke it, it might get a little more complicated (e.g. if the game deletes the object before you can look at it). SMAPI's "object list changed" events might help with that instead, or there might be a simple method to patch with Harmony, etc.

neat vigil
#

Okay thank you 🫡

neat vigil
#

Sorry to ask for help again, but I have my code and I’m struggling
I can’t get it to work and I don’t understand why…
My goal is to make an emerald, topaz, etc. spawn every time I break a stone or something similar with the pickaxe.

I don’t know where I can show you my code

brittle pasture
#

people have used pastebin in the past

neat vigil
#

pastebin ?

brittle pasture
neat vigil
lucid iron
#

Before we get into all that did you try making the button press mod work

#

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

neat vigil
#

I don't understand sorry

lucid iron
#

Yes u

#

If you look at the getting started with C# modding part

#

It has an example button press mod

neat vigil
#

I did it yes

#

wait

lucid iron
#

Did you get all that working

neat vigil
#

Maybe I am a dumbass but I don’t understand what you want 😭
English is not my mother tongue

#

I don’t need to add a button in my mod

lucid iron
#

I'm just trying to make sure that you have at least setup a C# project that can compile

neat vigil
#

Yes ?

#

Everything works

lucid iron
#

The fact that it's a mod which logs button press is incidental

neat vigil
#

I already have some codes that works

lucid iron
neat vigil
#

Yes

brittle pasture
#

can you elaborate as to how is it not working

neat vigil
#

Do you want to see my entire code ?

uncut viper
#

what are you expecting the code to do and which part is it not doing?

neat vigil
#

Okay okay

uncut viper
#

(it probably would be easier if all the code was visible)

neat vigil
#

The main issue is that nothing happens in game when I break stones….

#

I know the project is messy and kind of cursed…

blissful panther
#

Based on that, yeah, nothing should be happening in game.

neat vigil
blissful panther
#

Ah, sorry, I was looking at the wrong part!

brittle pasture
#

have you considered the SMAPI object changed event

calm nebula
#

I will say that unless you really need your own random instance, I would just use Random.Shared

neat vigil
#

I don’t understand what SMAPI’s ObjectChange and RandomShared are…

brittle pasture
#

ObjectListChanged

neat vigil
#

another Doc 😔

#

Thank you

#

I will try again

calm nebula
neat vigil
#

It works thank youuuu

karmic gust
#

I'm back with more schedule problems. They are the bane of my existence SDVpufferwaaah

This is Penny's new schedule: https://smapi.io/json/none/1c927c4b1ed54934a232454cfe829126

But she keeps walking off screen into the void at 900 and doesn't show up where she's supposed to. I changed Elliott's house but I double checked the tiles and warps and she's walking through the building layer

#

No log errors, though

#

Oh, and other NPCs are able to leave the map and show up for their schedules like normal

#

Ugh, another typo got me. Her 700 schedule point was set to 22 16 0 rather than 2 16 0 which led her off the map

latent mauve
#

And this is after you slept in game, yes?

karmic gust
#

Yeah I had slept, but I changed the points and it fixed

exotic token
#

i understand how to edit maps, but how do i make a new one to add?

brittle pasture
#

load the map tmx
add new entry to data/locations
(optional) edit existing maps to add warps to it

exotic token
#

if an npc cant get to the map but its in the schedule, do they just warp

lucid iron
#

No they give up

exotic token
#

oh

#

poor npc

lucid iron
#

You need to put NPCWarp if needed

#

(only if normal warp won't do)

exotic token
#

im new to stuff so i just want to make sure theres a way they get there if the regular warp doesnt work

hard fern
odd ginkgo
#

apparently I don't understand event question forks at all

#

does anyone have a really good template or wiki that they use for that?

#

I've looked a lot at the Eventing page by Lemurkat but I keep re-reading the fork section and am not getting ti

urban patrol
#

what are you trying to do with your forks? usually it's easier to use quickQuestion and/or switchEvent

odd ginkgo
#

I'm asking riddles, where the player has to answer the right question to get a reward

#

and the clear some rocks away from the exit warp

#

I guess my issue is wanting there to be several responses where more than one goes to "boohoo wrong answer" and I don't understand where to put fork0 fork1 fork2 etc to designate what the right answer is in code

#

especially if the forked answer isn't titled "fork1" but "wronganswer1"?

urban patrol
#

i see! and do you want the question to repeat if they select the wrong answer?

odd ginkgo
#

I would love that!

urban patrol
#

okay let me see if there's already a tutorial, or if not i can whip something up

odd ginkgo
#

that would be amazing, no pressure of course

urban patrol
#
  "LogName": "ALWAYS PUT YOUR LOGNAMES, ALWAYS.",
  "Action": "EditData",
  "Target": "data/events/Farm",
  "Entries": {
    "{{ModId}}_Heart0/": "continue/64 15/farmer 64 15 2/pause 300/switchEvent {{ModId}}_Looping",

    "{{ModId}}_Looping": "pause 300/quickQuestion {{i18n:3QKEY}}(break)switchEvent {{ModId}}_Answer1(break)switchEvent {{ModId}}_Answer2(break)switchEvent {{ModId}}_Answer3",

    "{{ModId}}_Answer1": "pause 300/message \"{{i18n:Speak}}\"/pause 300/switchEvent {{ModId}}_Looping",

    "{{ModId}}_Answer2": "pause 300/message \"{{i18n:Hear}}\"/pause 300/switchEvent {{ModId}}_Looping",

    "{{ModId}}_Answer3": "pause 300/end",
  } //close your entries
} //close your editdata```
yesss i knew there was one https://stardewmodding.wiki.gg/wiki/Tutorial:_Final_Boss_of_Events#switchEvents_and_You!
ornate trellis
#

quick question, if i want to do a special order with a donation box...is there a max amount of items that can be dropped in it? I have 20 diff items that need to be donated...

odd ginkgo
#

"final boss for events" lol that's perfect, thank you so much

gray bear
ornate trellis
#

damn

#

how am i supposed to do that....if i split it up that would be three special orders..

gray bear
#

i'll take a look at it

#

doesn't mention thonk

#

does this mean that's C# land

ornate trellis
#

idk but thats why im confused too, on the modding wiki i dont see it mentioned either in the tutorial

#

theres a required count but thats probs for the object itself, not the total amount

gray bear
#

yeah thonk dropboxes might be hardcoded

#

can just make it you need to give the items to an npc like Emily's but i think that's not what you're going for

ornate trellis
#

that would make it worse that means 20 orders

gray bear
#

wdym

ornate trellis
#

i have 20 items that need to be donated

lucid iron
#

No u can change the size psure

ornate trellis
#

i can?

gray bear
#

yes but how

odd ginkgo
#

"yes but how" ahh yesss that's what mod coding is all about, that's what keeps bringing me back

lucid iron
#

Yeah I'm trying to find it

gray bear
#

thank you

lucid iron
#

Jk i can't find it was it hallucination or mod who knew

gray bear
ornate trellis
#

ripperonis

gray bear
#

thanks for looking though

lucid iron
#

Ill look more when not on phone

gray bear
#

do mods that change the like size of containers edit it?

lucid iron
#

Possible

gray bear
ornate trellis
#

idk but im not really planning to add a dependency for just a few order slots

brittle pasture
#

i can confirm resizing the dropbox is a thing

ornate trellis
#

O:

brittle pasture
#

cornucopia did it for the milk yogurt order

ornate trellis
#

hmmm

gray bear
#

ooooh

icy warren
#

im trying to make a dialogue mod with RSV characters, specifically Jio, but im having trouble for the dialogue to actually work.

{
"Format": "2.1.0",
"Changes": [

{
  "Action": "EditData",
  "Target": "Characters/Dialogue/Jio",
  "LogName": "Romantic Dialogue Overrides",
  "Entries": {


    "Introduction": "this is a test. skibidi toilet amirite?",


  }
}

]
}

this is what i've written so far. i'd appreciate any help!

brittle pasture
#

ok the field name is MinimumCapacity

#

set it the same place you set AcceptedContextTags

lucid iron
gray bear
#

[[Modding:Dialouge]]

#

i did not spell that right

lucid iron
#

So it never shows up in normal gameplay for Jio who is unlocked late

gray bear
ornate trellis
gray bear
#

selph here sharing the good knowledge

lucid iron
brittle pasture
#

hmm there's lot of undocumented stuff not on the special orders page still

gray bear
icy warren
brittle pasture
#

someone who isn't fighting a week long flu should add them

icy warren
gray bear
#

where would you add the MinimumCapacity field

lucid iron
#

Well you'd use your own i18n keys yep

rocky chasm
#

Hi, I got a question. How hard would it be to make something like a plaque as a furniture item? The idea is a customizable text sign as a wall item with a way longer character limit that works via clicking on it instead of mouseover

lucid iron
#

But the actual dialogue keys are what you'd use as well

uncut viper
#

"Introduction" is not a specific dialogue key the game uses the first time you talk to someone

icy warren
ornate trellis
gray bear
#

under basic fields? perhaps someone who understands shall do it

uncut viper
#

it's just a town conversational event that happens at the start of the game

uncut viper
#

called "Introduction"

lucid iron
#

But yeah this stuff is the {{i18n: blah blah}}

lucid iron
icy warren
#

alright thank you!!

#

hopefully i'll do it right 🙏

lucid iron
gray bear
#

if you're going for romance there's a dating key i think

brittle pasture
lucid iron
#

Because there's no such vanilla feature

ornate trellis
#

hmmm

rocky chasm
ornate trellis
#

I dont think this works for me or i understand special orders wrong

gray bear
#

ok so it is in basic fields,,, i can add it but can't say i'd describe it well

brittle pasture
#

!json pls

#

wow governor taking xmas vacation early

gray bear
#

damn

#

i can confirm i have no idea where one would add the min thing to the wiki

brittle pasture
#

yeah we need a new section for the Data field

gray bear
#

i fear formatting

#

also i should, prolly head to bed. maybe i can look at it tomorrow

#

.remind me in 24 hours look at adding a new section for special orders Data

#

did i use it wrong or

#

remind me in 24 hours look at adding a new section for special orders Data

patent lanceBOT
#

Bwthhybl? oh sorry got distracted yep on it (#6979095) (24h | <t:1764970778>)

autumn tide
#

cursed animal mod creations

ornate trellis
#

HM

autumn tide
#

..yeah i'm actually gonna work on that cursed animal mod in the bckg

ornate trellis
#

im maybe stuck

autumn tide
ornate locust
#

yessss

fervent horizon
#

worked all day to get it, but I think this might be helpful on recipes - hopefully will get the update pushed out later today or tomorrow

lucid iron
#

Oo nice

#

Is it just hint or is it validating?

fervent horizon
#

for recipes it is just the hint, but items are validating in actual key:value fields

ornate trellis
brittle pasture
#

that will accept 20 items with the tag, not necessarily 20 different items (so 20 of the same item will work)

ornate trellis
#

damn

#

how can i make it not repeated

lucid iron
#

I think you probably want to just make unlockable bundle at that point

#

That would let you be specific about what's needed

ornate trellis
#

...

#

ill pass on that i really dont like making a new dependency for a single thing

fervent horizon
#

Unlockable Bundles is fairly easy to implement

lucid iron
#

A vanilla-ish solution is a "shop" that exists only to consume your items and set a flag

#

And you complete stuff by buying out the shop

#

You do have to give the player a dummy item though

brittle pasture
#

maybe you can try 20 different objectives with the same drop box

lucid iron
#

Does the journal implement scrolling

ornate trellis
#

hm

brittle pasture
#

the quest log is going to be rather wordy but that should be a pure vanilla solution for it

fervent horizon
#

Here is an example of what a crafting recipe shows

lucid iron
#

I think the shop way is fun and rarely done Dokkan

#

But it won't appear in journal if that is a problem

ornate trellis
#

oh man i didnt think this would turn so complicated

uncut viper
#

this is why dependencies exist

ornate trellis
#

what if i make individual context tags for each artifact

lucid iron
#

Sometimes you just want to do smth mr ape didn't think of

brittle pasture
#

that's my solution

lucid iron
#

Oh you can use id_o_ tags

brittle pasture
#

and you can just use the auto tags yes

ornate trellis
#

tho that would peobs jsut bloat the list of context tags, i guess

uncut viper
#

thats what would lead to the mile long quest log page

brittle pasture
#

every item has a tag automatically generated from its id

ornate trellis
#

is it jsut the id or some sort of with an added _item to it?

brittle pasture
#

id_o_theitemidhere

ornate trellis
#

hm wait, would that guarantee only one of each can be donated

brittle pasture
#

the idea is you make an objective for every item

ornate trellis
#

ah

fervent horizon
#

Here is the flow for item completions - First Category, Then you can search items in the category, once you pick the item you want, you get the options for inserts

hard fern
#

omg

#

thats cool

fervent horizon
#

I need to clean up some items in the vanilla list, and do a bit more bug testing, but I am pretty close

karmic gust
#

how are overworld sprites numbered? 0+ from left to right?

lucid iron
#

All sprites r 0 indexed yep

karmic gust
#

I'm looking at Willy's sprites and the dick_fish animation description and I don't see how they line up

hard fern
#

it's all going by 16x16 squares though

fervent horizon
#

It also builds a list of items based on your installed mods if you give it your mod root folder location

karmic gust
#

sprites and it says "dick_fish": "0/8 8 9 9 10 10 11 11/8",

hard fern
#

so like you won't just go to 4 once you get to the next row (of actual human)

ornate trellis
karmic gust
#

his animation uses 64 px length I think, but I don't see how

hard fern
#

maybe willy is cursed SDVpuffersweats e

karmic gust
#

very possible

ornate locust
#

Willy is hardcoded I am pretty sure

#

if you wanna do that, you need Spacecore

karmic gust
#

oh that sucks, I was hoping to make my NPC have a fishing animation too

ornate trellis
#

yup

karmic gust
#

dang

ornate locust
#

You can do it with Spacecore! It's not very hard

ornate trellis
#

you can with spacecore animations

ornate locust
#

I did it for my guy

ornate trellis
#

i did it for my fishmonger too

hard fern
#

spacecore has it for you.

karmic gust
#

I'll have to look into that, then

#

how annoying would it be to add a requirement for users 😅

ornate trellis
#

hm, so i have my special order...i have my dropbox....time to try it in game i guess? i feel like im missing something

ornate locust
#

Tons of people use Spacecore

karmic gust
#

yeah true

hard fern
#

eh, most players already use spacecore

#

so they probably won't even notice

karmic gust
#

okay I'll try and figure that out. Thanks!

ornate trellis
#

oh right the i18n

autumn tide
#

hellooo is there a way to make a custom bridge-thingy to make, like in the beach map?

hard fern
#

i know you can do it "the long way" by making a custom bundle...

autumn tide
#

..hm..

royal stump
#

there're lots of ways to trigger a mail flag and make something change, but those specific presentation details still need a framework, I think
not sure what's available offhand

uncut viper
#

MMAP + BETAS can probably get you there

#

aside from the obvious Unlockable Bundles ofc

brave fable
#

Unlockable Bundles is usually the way to go for a close-as-possible solution

#

the question-markbubble, fade-to-black-and-back, map patch, cost and payment, it's all hardcoded in the Beach location class

ornate locust
#

hardcoding shakes fist

brave fable
#

yeah it's honestly surprising how much 'aughhhh hardcoding' gets in your head when you're actually working instead of modding

#

but not everything can be or needs to be loaded from a totally generic data model

uncut viper
#

everything could be loaded from one... as long as you dont care about it being hyper specific and verbose SDVpufferthumbsup

brittle pasture
#

raccoon bundles in data i beg

brave fable
#

hey you're not meant to be this colour purple

#

shoo, off with your pants

uncut viper
#

you're late

#

ive already talked to you as this purple before

autumn tide
hard fern
#

purple button...

lucid iron
#

To flex on button ofc

brave fable
#

what do you mean 'again' SDVdemetriums

lucid iron
#

Idk i thought u had it b4

brave fable
#

anyway sadly i can't, you need local legend to be mayor

#

my own son eludes me SDVpufferchickmayor

lucid iron
#

Gotta yap 300 more levels

hard fern
#

huh

#

im closer to puffershorts

uncut viper
brave fable
#

please understand i'm new here

#

i need a lot of levels

karmic gust
#

I think I may have messed up adding the spacecore fishing animation a little bit SDVpufferclueless

hard fern
#

lol

brave fable
#

ah yes, dynamic reflections

ornate locust
#

SDVwizardXD just got distracted looking at emojis, why is this guy so cursed

#

did his ex curse him

royal stump
#

adding a 1.7 suggestion to make him do that face in-game, canonize it

#

SDVpufferthink now I've cursed myself, wondering how hard it'd be to make puffers do random emoji faces midair when caught

brittle pasture
#

need to catch myself a SDVpufferrad

odd ginkgo
#

looping question forks are a go! ty ty ty!

karmic gust
#

thank you! I commissioned her art from Hime!

ocean sailBOT
#

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

karmic gust
#

wait, is it because I used "null" rather than null (without quotes) for the onframe section?

uncut viper
#

"null" and null are not the same thing

#

so probably

karmic gust
#

ah, I'm so used to adding them for everything

uncut viper
#

though the error doesnt seem to be for the sound

karmic gust
#

yeah the error is still occuring even with that fixed

latent mauve
#

what does your sprite sheet look like and did you properly count your indexes when you changed the source rect size?

karmic gust
#

this is the sprite sheet

#

I thought I counted correctly, taking into account that it now considers them to be 64 px long

#

thinking I miscounted, it'd start at 12 not 16

latent mauve
#

Yeah, you'd be starting at 12 with that sheet

karmic gust
#

thank you!

latent mauve
#

16 would not exist on that sheet at all

ornate trellis
#

Well, I am getting closer

#

idk why some translation keys dont work emotiguy

brittle pasture
#

if you need help you know what to do

#

that's right, ||go have a nice pizza||

#

||im hungry||

tight rivet
#

hmm.

#

if I'm using CMCT to get tokens of other mods, I need to use Query: in CP, right?

brittle pasture
#

the cmct token itself is just a token like any others

lucid iron
#

what r the tokens you need specifically?

#

(selph is right about cmct tokens are just tokens, but sometimes there's other ways)

ornate trellis
#

ah dang i cannot donate shit, oh well, that is for tomorrow i really gotta go to bed now

karmic gust
ocean sailBOT
#

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

karmic gust
#

she is doing the fishing animation but she glitches out when it starts, and that's when the error comes up

hard fern
tight rivet
#

that's.. odd, because using them as tokens got lots of angry yellow text

#

prob a formatting thing tweaks, restarts

ornate trellis
tight rivet
#

it was a formatting thing

#

now time to test if the machines work

lucid iron
#

doesn't mean stuff is right at runtime more like a shrug i dunno deal

tight rivet
#

ah

#

..suspicion one of my mods is patching the standard map: rising

hard fern
#

ooh looks fancy

#

flying fish

karmic gust
lucid iron
#

g r a s s

tight rivet
#

first test: converting them to CP [success]

#

second test: getting the recipes added [not so much! D:]

#

third test: the prismatic one just failed

tight rivet
#
15:48:43    WARN    Content Patcher    SMAPI fixed maps loaded by this mod to prevent errors. See the log file for details.
15:48:43    TRACE    SMAPI    Fixed broken map replacement: Content Patcher loaded 'Maps/Farm' without a required tilesheet (id: extra_tiles, source: Maps\spring_outdoorTileSheet_extra).
15:48:43    TRACE    SMAPI    Fixed broken map replacement: Content Patcher loaded 'Maps/Farm' without a required tilesheet (id: v16_Outdoors2, source: Maps\spring_outdoorsTileSheet2).
``` i wonder why the map isn't working.
calm nebula
#

This is fine

#

It just means mod made before 1.6

tight rivet
#

hm.

#

Then i'm very confused, but good to know!

mellow laurel
exotic token
#

Ive been thinking more about that hypothetical combined joja and cc route mod

#

Would it be easier to modify the joja route itself? I could replace CommunityCenter_Joja with CommunityCenter_Ruins

#

and have custom bundles in the same place as the originals

#

The problem is the cutscenes I think

#

I dont have the specific coding done, but would that be the best way to do things?

brittle pasture
#

you still haven't solved the theatre problem methinks

hard fern
#

joja vs cc have the theater in completely different places

brittle pasture
#

maybe you can move it somewhere else

exotic token
#

What exactly is the theater, codewise? Is it it's own building?

hard fern
#

it is its own interior map yes

#

but there's a joja variant and a cc variant

exotic token
#

but the outside

brittle pasture
#

in the joja route the old cc becomes the theatre

hard fern
exotic token
#

is it the whole town map changing or is it just a patch on the jojamart or community center?

uncut viper
#

its a patch that differs based on route

#

Town-Theater/Town-TheaterCC in your Maps unpack

exotic token
#

oh I see the issue

uncut viper
#

and a halloween variant for joja apparently

exotic token
#

and its annoying

hard fern
#

huh. halloween joja.

exotic token
#

its not just the building itself, the patches contain outside area

#

the easiest thing would be to make a third patch that just has the building

tepid prawn
#

Hi everyone, how’s it going?
I’m starting to make mods for Stardew Valley and, for my NPC pixel art, I’m using the farmer_base file as a reference. I’ve got some questions about which animations use certain sprites (some of them seem random to me).

Can any of you explain what each sprite in the spritesheet is used for? I couldn’t find any explanation about this online, only about the pants. I think it would be really helpful for beginners.

If you have any website recommendations, or if you’d like to explain it yourselves, I’d really appreciate it!

exotic token
#

This is very rough, but what about here?

hard fern
exotic token
#

easy fix

#

remove harvey

hard fern
#

(not even mentioning how incompatible with other mods it would be)

brittle pasture
#

yeah I think at least a couple mods called dibs on that area already

exotic token
#

i cant think of major mods that do

#

Ive had stardew valley expanded, sunberry, and that area is fine

hard fern
exotic token
#

i guess harvey could just like movies

#

i dont play with every mod sadly, so its a bit difficult

stray hemlock
#

Is anyone using the playground?

hard fern
stray hemlock
#

I hate children, so I wouldn't know /s

#

What about putting it there and adding stairs?

hard fern
#

it's just There

exotic token
#

true, but the rich snobs live there

#

jk dont hurt me victor

stray hemlock
#

Wait, what about having it in the basement of the CC? Like a home cinema, but for the community.

#

Or can you use that area?

devout otter
#

That's where Little Red Schoolhouse is.

stray hemlock
devout otter
#

If you are concerned about mod clashes, then the Eastern / Southern outskirts of town is about the only places not claimed yet.

tepid prawn
# hard fern which ones specifically are you confused about? i can't say for sure what all of...

My question was more general, really — I wanted to use this spritesheet to create my NPCs. I’m a programmer and have no experience with pixel art, so creating my sprites this way would be easier for me. The walking sprites are already done, but I wanted something for sleeping, fishing, sitting, etc.
The player’s animations are much more complex than those of NPCs, so I thought it would be more useful and practical to use them as a base.
Anyway, do you know where the player animation files are located? That way I could take a look at the actions and see which sprite indexes the game uses.

uncut viper
#

in my opinion there is zero point to trying to find an unclaimed space in town. pick one you like, make it compatible with the things you play with or like, and care less about all the things that make it incompatible otherwise

hard fern
devout otter
tight rivet
exotic token
#

how about here?

uncut viper
#

looks fine to me

exotic token
#

its very rough but

uncut viper
#

doesn't replace much

devout otter
tight rivet
#

ah

hard fern
#

didnt you know, pierre's is actually a movie theater chain

stray hemlock
# exotic token

You could make it that Joja expands to movie business and the theater is on top.

exotic token
#

and its good because there is a doctor when you get sick from too much butter on popcorn

stray hemlock
#

Yeah.

exotic token
#

hmm

#

let me look to see how it would fit

tepid prawn
vernal crest
#

Characters/farmer

#

Ah I see you want info about the code. In that case you'll want to look through the decompile.

exotic token
#

ugh its not easy to copy

vernal crest
#

There's no player animation file in data

hard fern
exotic token
#

but it works theoretically @stray hemlock

hard fern
#

(dont you have to be a certain level to get access to the decompiled game)

stray hemlock
twin wadi
#

you can decompile yourself i believe but you can get the github repo with the decompiled game at.... mod author role + lvl 100 if my memory is correct?

uncut viper
#

lvl 50

vernal crest
#

!decompile it's incredibly easy to decompile yourself

ocean sailBOT
tight rivet
#

progress: prismatic shows up!

twin wadi
# uncut viper lvl 50

oh sorry got it mixed up!
how do you get access? im at lvl 90 something but im not sure where to find it squeee

tight rivet
#

negative progress: the animation isn't working. T.T

#

and god that means I have to trobleshoot how CP handles frames

#

(my bane is this kind of thing)

uncut viper
#

you ask pathos for access

#

he will ask for your github username

exotic token
#

oh i hate this

stray hemlock
#

Are we supposed to report any other GitHub repo we come across that hosts the decompiled code?

exotic token
#

this is not as easy as I though

uncut viper
#

any other repository that is hosting the decompiled game is not in the legal right to do so, but as far as i understand it ConcernedApe LLC is the only entity that has the authority to go after them since, yknow, its their stuff

#

you cant just file a DMCA on someone elses behalf without express authority to do so

stray hemlock
#

Yeah, I meant reporting it to CA.

tight rivet
#

"(Optional) The animation to apply to the machine sprite, specified as a list of offsets relative to the base sprite index. Default none. " ..

#

is that offset in pixels..?

#

how is this supposed to work.

urban patrol
#

i feel like you’d be playing whack a mole trying to report

uncut viper
#

its not really worth the trouble and many of them are already known about and have been up for years

stray hemlock
#

Alrighty. Thank you.

exotic token
#

is there a way to make all the tiles to always front, so I can look at it for testing purposes?

urban patrol
#

put them on the always front layer in your map

#

what are you trying to test

exotic token
#

this may work

#

edited to make sense

tight rivet
#

... I wonder if any of the vanilla machines use frames.

hard fern
royal stump
#

23 uses in vanilla, apparently

brittle pasture
#

the loom's spinny thing is actually hardcoded

tight rivet
#

Yeah, I found one, I'm just trying to work out why this machine isn't doign anything now

brittle pasture
#

cornucopia also has examples or mine

devout otter
# exotic token this may work

Yar, moving the ticket booth someplace else should be relatively easy. And if I'm understanding this map correctly, emulating the theater entrance thing should be doable, as well.

tight rivet
#
"WorkingEffects": [{
                    "Id": "Default",
                    "Condition": null,
                    "Frames": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24],
                    "Interval": 166,
                    "Sounds": [ { "Id": "furnace", "Delay": 0 } ],
                    }
                ],
                "LightWhileWorking": { "Radius": 1.5, "Color": "#ee82eec7" },
                "WorkingEffectChance": 1.0,``` feels like it should work. somehow.
#

i can't see visible mismatches with known-working machines

exotic token
#

there are no tiles that work for the spot behind where the ticket booth would be

#

I would have to make entirely new tiles

devout otter
#

Do you mean art-wise?

brittle pasture
tight rivet
#

yes

#

is that's what causing it..?

exotic token
brittle pasture
#

no, that's correct

#

full code pls

tight rivet
#

one sec

exotic token
#

I am not the best at pixel art

royal stump
#

I'm not sure if it's an issue, but everything in Data/Machines uses "Frames": 4 or "Frames": 6 rather than a list

ornate locust
#

It'd be pretty simple to just tile the wood off to the right if you wanted nothing there.

royal stump
#

...oh, that's on the sprites, not the base effect frames

royal stump
#

nevermind me, still poking around the code/docs

latent mauve
#

I only barely remember what I did for the spinny laundry machines

exotic token
#

Theres the shadow, theres no actual full tile

ornate locust
#

might also want to erase the door too really, so it's not floating, unless you're putting a platform there or something? with stairs up?

brittle pasture
#

your load effect just has the sound

#

try also adding the frames/interval/etc

exotic token
#

I prefer my first spot personally

ornate locust
#

Then go for it!

exotic token
#

but i was just testing out different spots

tight rivet
#

.. why would I need to add that to load and not working?

brittle pasture
#

last I checked there was some jank with if there's no load effects that runs some frames working effects won't run afterwards

tight rivet
#

... huh

#

that was it

#

thank you!

inner harbor
#

would produce excluded from the Shipping menu via "ExcludeFromShippingCollection": true, still be recorded when shipped? I would quite like to use PLAYER_SHIPPED_BASIC_ITEM to have someone send you a recipe once you ship one of the specific ingredients.

#

(an idea I got from Fields of Mistria)

rain matrix
#

Is...is manipulating farm animal movement in this game supposed to be an exercise in repeatedly hitting brick walls, or is it just me? My behavior code is engine-neutral (or at least mostly), but SDV doesn't seem to play nice with almost anything I do that isn't constantly running.

lucid iron
rain matrix
lucid iron
#

yea u gotta keep yeeting the vanilla one Dokkan

rain matrix
#

I'm honestly debating on just overriding the entire FarmAnimal pathfinding for it

#

I'd hate to lose barn warping but if I have to rewrite it, oh well

lucid iron
#

i mean its what you desire yes?

#

but yea if u look at FarmAnimal.cs, it has a lot of places where it just set controller to some other thing

rain matrix
#

Yeah it's super dumb

lucid iron
#

null or vanilla pathfinder

rain matrix
#

I was looking at it in horror

lucid iron
#

so i dont think u have a choice here monS

rain matrix
#

I mean I get it if farm animals are meant to be set dressing I guess

#

I mean good to know now and not when I have fifty things going on

lucid iron
#

for a mod like that i will forgive skip prefix on FarmAnimal.MovePosition sleep

#

do be aware that some other mods may have done this too

royal stump
brittle pasture
#

don't animals have a pathfinder controller that if set it will obey no matter what

inner harbor
rain matrix
brittle pasture
#

only for food I think

lucid iron
#

hm what if u make MaxPathfindingPerTick=0

#

that seems to stop a lot of the set to vanilla ones

brittle pasture
#

so if you keep setting it and the animal isn't hungry you can control its behavior nearly totally

rain matrix
#

I'd try it. And ultimately this mod is meant to make most of the behaviors a bit more charming so if I have to just yeet it all, good to know now

#

The cows when they are behaving so far

#

No collission logic yet but I've been stuck in 'what the hell is this pathfinding' for a couple days now

brittle pasture
#

that is definitely not the vanilla pathfindcontroller lol

rain matrix
#

Oh no this is all mod lol

#

when I put any condition at all on that behavior SDV took over

brittle pasture
#

for examples extra animal config has attack/harvesting animals that is achieved with judiciously writing and rewriting the pathfindcontroller var

rain matrix
#

Omg thank you! I have been flying blind with this

lucid iron
#

whats your ultimate goal bolbthinking

#

farm animals come with you?

rain matrix
#

To "charmify" farm animal behaviors - adding subtle personality variation, ultimatley not gameplay-impacting but emotionally compelling subtleties like cow clustering and observable babies following adults. Possibly some silly behaviors.

#

I've been modeling a couple things in an ASCII environment but figured I'd test a single behavior in SDV before I go back and forth and iterate too much

brittle pasture
#

but yeah disadvantage of pathfindcontroller is that the animal can only have one at a time, so you may be stepping on the toes of my other mods

#

if it's just vanilla though you don't have to worry since as mentioned animals only use it if they need to eat

rain matrix
#

I was trying so hard to make things clean and I'm running into those bite the bullet questions of pathfinding override mods

#

My original plan was to look and see how other animal mods did similar things but it seems like few do. So Extra Animal config? Any others come to mind?

brittle pasture
#

Like A Duck To Water is another behavior tweaking mod

#

though I believe that mod patches the random behaviors function

#

goodness that's a lot of patches

rain matrix
#

That's where I am rn...patching and holding my nose and hoping nothing breaks too much

calm nebula
#

Babies follow adults in vanilla

#

(Frankly no clue how often)

rain matrix
#

That's what inspired the idea actually

#

That the code exists and nobody knows about it

#

Because it's not telegraphed or easily observable

lucid iron
#

I think as long as you give people a way to opt out their custom farm animal it's fine

#

Not every mod gotta be compatible with every other mod

#

And maybe u just eat the functionality of duck to water completely

calm nebula
#

@blissful panther is there a way to know when an animal is a meep animal

#

I would also point out that Marnie has a few cows

#

Other than that, sounds like a fun mod!

noble ermine
#

Hey, I want to create an event-based extension mod, but I have absolutely no coding skills. So, does anyone know how to get started, or maybe what I'm making would interest you so we can collaborate? I'll handle everything except the coding.

devout otter
noble ermine
#

I want to expand the content of one of the character modules I'm playing with, such as inviting him out on dates and some additional events.

#

I really liked that mod, but the original author said she's moving on to developing a new standalone project, and there won't be any more updates to this mod. That's why I had this idea.

hard fern
#

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

noble ermine
urban patrol
#

everyone starts somewhere!

#

if you have determination i fully believe anyone can make a mod

karmic gust
#

is there a template or example I could look at of an NPC being added to the ice fishing festival main event using a fishing sprite? I see that mainEvent has the commands, "showFrame Elliott 40/extendSourceRect Elliott 16 0" which I tried to copy using text operations and fields but neither have worked and I'm not even sure if those are the correct commands to use

hard fern
#

yeah, the only way to get better at something is to actually do it

autumn tide
#

it definitely takes a while to learn, but it's absolutely doable and worth trying :)

autumn tide
tiny zealot
uncut viper
#

is Something About Cooking compatible with Love of Cooking and Yet Another Cooking Skill?

tiny zealot
#

no, Something About Cooking is incompatible by design with any mod containing the string "yet another" in its title (case insensitive)

karmic gust
#

That's really cool looking

lucid iron
#

one of these days i will release my cursed test mods into the world YuniShake

tulip steeple
#

hello im trying to understand Machine Progression System code (not mine)
where does this tag "large_egg_item" and "egg_item" coming from? i couldnt find it in other file inside the mod folder
i wanted to change it because this egg_item and large_egg_item tag include eggs other than chicken eggs, and thats making problem like void egg/dinosaur egg keep turning into normal mayo (somehow) even when the code for those type already above
and no, i will not repost the mods anywhere just because im too lazy to make anypost and fill anything in general (like that one bug i already fix and screenshot but too lazy to report because they wanted me to put the image in other website first before adding the link to comment)

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!

lucid iron
#

if you do this and then look at Data/Objects it should show things

karmic gust
tepid prawn
#

Hi everyone!
Some NPCs have animations where the sprite takes up more space than 16x32 (like Willy fishing or Clint at the anvil).
How can I create animations for my NPCs that also use sprites larger than 16x32? Is that possible?

devout otter
#

If it's in an event, you can load a temporary actor for it. If you want this animation to happen during their schedule, you'd need to use additional framework like SpaceCore.

tepid prawn
#

Ah, great. I’ll take a look at that. Thank you very much!

dense arch
#

is there like a json parser for dialogue string stuff specifically, like checking for correct command isolation (i.e. #$b# and not $b#)? I'm running into some issues with the portrait not updating to the correct one

ornate locust
#

ahhh, got my first user mad that my cop is gay! ...Well, not really, he's mad about my gay stamp. he seems to have entirely missed the LGBT tag, the mentions of gayness in the description...

gentle rose
#

gay stamp?

ornate locust
#

I have a clerk who sells stamps, one is a pride stamp

brittle pasture
#

ah, those people
why are you playing the gay farming game and getting mad at gay mods

gentle rose
#

damn, people really get mad about everything

ornate locust
#

This mod could not be more clearly labeled as gay, there's a tag and everything

gentle rose
#

oh just saw the comment lmao

ornate locust
#

I mention Bill's gay at least twice in the description

gentle rose
#

wondering if they think you can’t marry the opposite gender in stardew

ornate locust
#

That stamp's not even in the preview images, did he download it first and then notice it?

gentle rose
#

you can check if they downloaded your mod, can’t you?

#

oh it’s image 6 in the previews

ornate locust
#

AHA yeah there it is

#

So he didn't read, just looked at the pics, less surprising than it should be

#

Good thing he saw that before he got to the scary shot of the wizard and Bill dating

#

might have made his little heart explode

gentle rose
#

if you report the comment they’ll probably get a warning tbh

ornate locust
#

I could add to my -phobe kill count on Nexus, true. (I did a top scar thing for BG3, I got a lot of em)

gentle rose
#

(fyi, game paths change massively depending on how the user installed stardew, so you may want to change your instructions to “unzip to your mods folder” at some point)

ornate locust
#

ah heck

dense arch
#

"One day we'll need to smuggle in snacks and eat them in front of the fireplace.$l#$b# Not this one!$6#$b# Imagine if Penny caught us!$a"

can someone tell me where I am messing up?

gentle rose
ornate locust
#

well I'm already in here fixing a typo, may as well

#

There we go

ornate locust
dense arch
#

it's loading in the default portrait, even though the NPC has 9

gentle rose
#

for which line?

ornate locust
#

For all of it?

dense arch
#

it loads the default for both the second and third box, which should be 6 and 5

gentle rose
#

but it loads the first one correctly?

dense arch
#

I thought so, but I've been restarting the game so much, I lost track, I just did some edits so I'll check back in a couple minutes

#

I hate json 😂

gentle rose
#

if you answer which npc this is I’d be able to check some suspicions

dense arch
#

it's Leah

#

please explain why which NPC it is matters though, because I have no clue

gentle rose
#

some npcs don’t have certain portraits or don’t have them for certain appearances, plus knowing the context always helps

dense arch
#

I checked the portrait file to pick the corresponding numbered ID first, hence my confusion

latent mauve
#

You might be better off calling the portrait number directly in case the alias is not where you are expecting, also remember to start your index count at 0

dense arch
#

yeah, I did that just now
borked

#

"Nggh, another good morning! I'm a little short on sleep though.$h#$b# I just couldn't put down the book.$4",

this fails to load the correct portrait and default to 0 for the second line

gentle rose
#

could you share your full json?

#

!json

dense arch
#

no

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.

dense arch
#

I'm replacing the dialogue as needed for lines in here, I'll have to rewrite dozens of lines to not break the nsfw rule

urban patrol
#

you don’t have a mod that edits leah’s portraits do you

dense arch
#

of course I do, but I also have a mod that edits elliott and over there it works

latent mauve
#

Are you using EditData or Load for your dialogue changes?

gentle rose
#

could you share the full json but just remove all the other lines?

also, does your leah portrait retexture have all nine portraits?

dense arch
#

yes it does

urban patrol
#

well in general it’s ideal to test with a minimal mod setup so you can rule out other mod interactions

dense arch
dense arch
gentle rose
#

have you been testing with the version you’re actually sending here, or a completely different version?

dense arch
#

I only change relevant words and otherwise retain the full syntax

latent mauve
#

Can you change the NSFW dialogue to line 1, line 2, etc. for the sake of sharing the code block?

dense arch
#

I'm not sure what you mean by that

latent mauve
#

Meaning put dummy text instead of the NSFW text if that's your concern but leave the dialogue commands

dense arch
#

that's what I did when posting the line earlier

latent mauve
#

Yeah, but we want to see the Action: and Target parts with the rest of the block so it can be checked for syntax/formatting issues

#

Or at least I do

gentle rose
#

personally I just like to see the full picture as much as possible so if you’re testing with a different line to what we’re seeing then tbh I’m not super motivated to be trying to help you debug this without even being able to see what you’re doing to be able to try to spot any issues, good luck though

dense arch
#

"Changes": [
{
"Action": "EditData",
"Target": "Strings/schedules/Leah",
"Entries": {
"marriage_thu1": "Nggh, another good morning! I'm a little short on sleep though.$h#$b# aaaaa. aaaaaaa.$4",

for example

#

I just replaced the nsfw part of the line with aaaaa
even retaining the period

#

the dialogue itself fires fine, only the portrait is off

#

the json parser sees no errors, and the dialogue overall fires no problem, it's just specifically leah that fails to load the portrait correctly (elliott does)

vernal crest
#

Try patch export of Leah's portraits

dense arch
#

it's the portrait mod, I swapped to a backup mod and now it sets the correct portrait

#

they have the same amount of portraits, they're just different sizes, but I accounted for that with the display framework

#

so I am not sure /why/ it doesn't load the correct one

gentle rose
#

that would have also been good to know since hd portrait mods work differently

dense arch
#

this uses scale up

gentle rose
#

which is an hd portrait/texture mod

dense arch
#

it's the same mod across elliot and leah, elliot works, and leah works too, but not when I swap Leah to an alternative mod that is almost the same dimensions (I adjusted the display framework from 1000 to 1024 to account for the extra pixels), why that fails entirely to set any portraits is beyond me

#

if it set an offset of the portrait, that'd make sense, but to fail entirely is ????

urban patrol
#

you should probably check that portrait mod’s nexus page to see if there are instructions for mod authors

gentle rose
#

it’s because when the source box is invalid (even by just a little bit sometimes) the game reverts to default. which is why this would have been useful to know

latent mauve
#

I would expect that portraits that don't follow a size that is a multiple of 64 will have weird issues, because if your source rectangle goes beyond the image then it goes weird

gentle rose
#

it depends how the framework handles them

latent mauve
#

Or to default like irocendar said

dense arch
#

the regular sheet is 2000x5000 and the alternative sheet is 2048x5120

the framework is set to
"portrait": {
"xOffset": -850,
"yOffset": -932,
"h": 1024,
"w": 1000,
"right": false,
"bottom": true,
"scale": 1
to account for the alternative

#

oh yeah, I'm a fucking dumbass I forgot to adjust the w:

#

and yep, that was it. just. making a boo-boo and forgetting

#

both of you (irocendar and fireredlily), thank you for helping

dense arch
#

is there a specific reason the schedule cannot do this? the NPCs will just stand there and won't budge
(I see the 'bed' location on the wiki, I'll try that next, but that's not really what I want)

gentle rose
#

npcs can’t go on the farm

#

for the most part

#

(or ever, possibly? I can’t quite remember if spouses teleporting to their spouse patio is the only exception)

dense arch
#

these are spouses. wandering spouses generally adds the functionality (they wake up in the house and they properly pathfind out of the house and over the actual farm towards the bus stop) and I /can/ force the reverse with a manual schedule from the farmhouse spouse scheduler mod, but I cannot get the default game schedule to do the same thing

#

I was hoping the presence of wandering spouses would allow it do it, but I guess not, orz

blissful panther
#

It might be a good idea to add a section to the docs for C# people for things like this...

dense arch
#

I'm clueless, how do you use the "bed" argument in a schedule?

#

also, the wiki says this, but doesn't give an example of how exactly you preface it
a2100?
a_2100?
a 2100?
(I tried all of those and came up with errors)

vernal crest
#

The first. a2100. You have to make sure they have enough time to actually get there by that time.

dense arch
#

will the game outright throw me a smapi error on day start if it calculates they can't?

#

like this should be plenty of time

vernal crest
#

You can look at the vanilla data for how to use bed in a schedule and for how to format things like the a schedules.

dense arch
#

yeah I found the atime thing, after scrolling past it like 18 times

vernal crest
#

Where are they leaving from to get to the Saloon at 1740?

dense arch
#

the museum

vernal crest
#

And what time do they arrive at the Saloon?

dense arch
#

like this shouldn't be a problem?
ignore the probably incorrect bed thing

vernal crest
#

But no, I don't think it normally gives an error at the start of the day for insufficient time.

#

You've got them arriving at BusStop at 2110 but then making them change to a different schedule point mid-way through trying to get to BusStop.

dense arch
#

what?

#

shouldn't the a2110 work off the saloon?

vernal crest
#

Your bed schedule is set to start at 2100 but they're still trying to walk to BusStop then

dense arch
#

oh that's a typo

#

that was 2200 in the last test

#

I rewrote the entire line because I thought I had an invisible space

#

good catching that, saves me 1 more reboot

#

how do you do embed code in discord again

#
"Action": "EditData",
            "Target": "Characters/schedules/Elliott",
            "Entries": {
                "marriage_Thu": "
                620 BusStop 14 22 1 \"Strings\\schedules\\Elliott:marriage_thu1\"/
                800 ArchaeologyHouse 21 17 2 elliott_read \"Strings\\schedules\\Elliott:marriage_thu2\"/
                1300 ArchaeologyHouse 44 5 0 \"Strings\\schedules\\Elliott:marriage_thu3\"/
                1740 Saloon 25 18 1 \"Strings\\schedules\\Elliott:marriage_thu4\"/
                a2110 BusStop 14 22 1 \"Strings\\schedules\\Elliott:marriage_thu5\"/
                2130 bed 10 10 2",```
#

ok, that#s more readable

vernal crest
#

!codeblock

ocean sailBOT
#

You can embed code in Discord using a series of three ` :
```
Your code can go here
Even if not a haiku
Just an example
```

For syntax highlighting, add the language code on the same line as the first
``` (with no space, like ```json).
The usual codes are cs (C#) and json.

vernal crest
#

It will ignore the 10 10 2 in your bed schedule point by the way

dense arch
#

yeah I know

vernal crest
#

Also, without you showing me what your log error is, I can't help much

dense arch
#

I added that because it kept saying the bed line is invalid

#

it seems to have loaded without errors after adding the ignored parameter

#

it kept telling me the input wasn't valid

#

and NPC walking into the void again

#

frequently when I boot the game, one of the spouses just walks off into the void instead of pathing to the schedule point

ocean sailBOT
#

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

dense arch
#

specifically, Leah woke up, and as soon as the 620 schedule hit, she walked off into the void, but I have no clue what would cause that. Elliott has basically the exact same schedule, just offset by one x coordinate, and got there fine

sleek aurora
vernal crest
#

I am unsure which of these warnings I am meant to be looking at

dense arch
#

I think the issue is specifically linked to which spouse is in bed in the morning, I've seemingly only had them break and void walk that way. Not 100% sure, but I am certainly mule enough to find out

vernal crest
#

I am not experienced with polyam mods so I can't help with anything except syntax, sorry

dense arch
#

I'm good at smashing face first into walls until I have trial and error'd my way to a cause. mostly.

#

just trying to help is worth a lot, it makes someone not feel like they're just sitting there and on their own

#

now I just hope the bed command works as it should

#

well it seems to work for one of them...
oh I see it. case sensitive.

#

aaaaaaand the NPC gets stuck in the entrance.

#

it's strange, one of the other spouses manages to return home just by going to the bus stop

#

let's see what happens if I just send them to the bus stop

dense arch
#

oh right, without the scheduler mod... I am screwed here

swift falcon
#

ugh that gen ai guy is posting so much bloat

vernal crest
#

You can go to their profile and Ignore them and it should hide all their mods

#

And/or reporting them for undeclared AI might be helpful?

gentle rose
#

you can also report the particularly blatant ones like the "empty file creator" for DP farming

dense arch
#

time to figure out "when weather" conditions for schedules

#

this'll be a joy

#

wait a second
so what does the game do on a rain day?
do I have to put in redundancies with marriage_<season>_<day of month> just in case it rains?
SDVpufferthinkblob

gentle rose
#

don't they just stay home on rainy days

dense arch
#

I want to get around that

#

this does not specify that it doesn't work on rainy days

#

so by... just copying this 16 times to cover all saturdays in the game, would I be able to get around a rainy saturday preventing my schedule?

#

marriage_spring_6
marriage_spring_12
etc

#

I do have a rainy saturday right now, I could test this SDVpufferthinkblob

stray hemlock
#

Probably. I think the reason is that this can be used for specific things like checkups.

dense arch
#

yeah, I was thinking about the possibility of "this probably exists so a checkup isn't skipped due to rain"

stray hemlock
#

Does Emily still visit Sandy on her birthday when married?

dense arch
#

uh...

#

surely a veteran will know

#

well, time to dupe up

#

huh is there no way to force a different sprite sheet via schedules? I.e. make Maru wear her nurse outfit somewhere else?
the scheduler can do it so I figured there was a vanilla way too

stray hemlock
#

I'm pretty sure you can, but my internet is really bad now.

dense arch
#

I see being able to set animations of course, oh well, hopefully they auto-change when going to ginger island wait a second that should show me how to do it let's check SVE

#

I can't find anything in the schedule data that regulates this 😂

finite ginkgo
#

There isn't a way to do it through schedules, it's normally done through the NPC's appearance data and an appropriate condition

dense arch
#

I'm almost afraid to ask where that is

finite ginkgo
#

In Data/Characters

dense arch
#

like this?

gray bear
#

that's a config

#

the field would be called appearance

#

I'm on phone but there's example in the npc data wiki iirc

#

[[modding:npc data]]

dense arch
#

let's see if I can gamble with the scheduler function doing it for me because I throw myself into another thing that will make me go up the wall

gray bear
#

schedules have nothing to do with appearance

dense arch
#

the scheduler can force set the sprite sheet used

#

as in, the mod

#

not the vanilla function

gray bear
#

I mean... why tho

dense arch
#

why what?

gray bear
#

why use that instead of the vanilla function

dense arch
#

because it'll be 1000x more annoying to learn, understand and setup the vanilla function
I'll have to do that if I can't get it to work with the mod

#

I'm already losing my mind understanding schedule stuff

#

it's just a dropdown with this

woeful lintel
#

what if this uses the defined appearances?

devout otter
# gray bear that's a config

I mean, since Kuugen is editing vanilla character, that screenshot would be how to do it. Just maybe without the When field.

dense arch
#

at the very least, the season_day setup lets me get around the rain issue

versed wyvern
#

Hrmm... if another mod adds dialogue keys with i18n support, there isn't a good way to alter them without overwriting the i18n tokens, is there? Like I suspect TextOperations may not work on i18n-ed strings?

gentle rose
vernal crest
#

TextOperations should work because by the time it's in game it's going to be the actual string. But I can't see it working for anything except the language that you're using, unless you manually add a patch for each language.

#

(Though now that I think about it, ReplaceDelimited on any string - i18n or not - is only going to work for one language 🤔)

versed wyvern
#

Mm, what I'm hoping to be able to do is replace the portrait codes in the dialogue which should be consistent across all translations using ReplaceDelimited with $ as the delimiter, though I'm not entirely sure if that's doable

vernal crest
#

Won't work because the delimiter has to be in front of and behind the string you want to replace.

#

Unless there's only one line in the string and therefore the portrait code is the final character

versed wyvern
#

Well, there happens to be $ signs before the portrait codes and the #$b# line breaks, would that work? blobthinking2

gentle rose
#

actually it might SDVpufferthinkblob you'd have to replace the # too

versed wyvern
#

Ye, but I assume no one's ever tried anything like it before

gentle rose
#

only one way to find out!

versed wyvern
#

I'm only exploring it in hopes of making a very jank, very niche compatibility patch

vernal crest
#

You'd have to replace everything between them, so as an example, the line
"Thu2": "Miss Penny is teaching me how to write in cursive.$h#$e#She has such pretty handwriting.$h",

for the first portrait command you'd need to have your Search value as "h#" and your Value value as "19#" (in my example you're replacing it with portrait 19)

but then you'd need a separate TextOperations entry for the second portrait command with a Search of "h" and Value of "19".

versed wyvern
#

And I assume there's no way to just bridge my edits to use the other mod's existing i18n tokens? WoahThink

gentle rose
#

what are you trying to do?

versed wyvern
#

The ultimate task is to take a mod that adds extra portraits onto the vanilla portrait sheets to instead just swap to a custom portrait sheet

#

But even if I can successfully do that (using BETAS to change appearance is the plan there) all lines of dialogue would need to point to different portrait codes

#

Although said mod has open modification permissions so maybe it'd be easier to just directly edit and upload their jsons rosedopHuh

vernal crest
#

No, you can't touch their i18n directly, but CMCT can get other mods' i18n keys if that's any help

versed wyvern
#

Mm... alas I think that leaves the portrait codes out of reach

lucid iron
#

Eg if it was originally portrait 9 then leave it there and have 1-8 blank

versed wyvern
#

Unfortunately the root issue that required me to investigate all this tomfoolery is that I have to find some way to prevent portrait sheets from getting too big

lucid iron
#

Oh it's cus of the 4096x4096 limit

#

What you can do on the special sheet is to go horizontal

versed wyvern
#

Well, as far as I can tell I suspect it may be more like 8192

lucid iron
#

Normally ppl don't cus it breaks the $h $l whatever

#

But $11 does work for any sprite index 11

#

Even if ur portraits are like 12 things in a row horizontally

versed wyvern
#

Oh, you're saying that because these would all be unique portraits that don't use the hard-coded $h and $s and whatever they might be fine?

lucid iron
#

Yeah

#

Presumably they r beyond index 5 right

#

And u r only doing it in some niche places

#

Although are u using ddfc

#

Might also be a reasonable feature request to auto offset the indexes

versed wyvern
#

Indeed I yam, but then this is going into territory where I don't have an ounce of understanding about how it works mumei_thonk

#

The horizontal indexes might be crazy enough to work though, I'll keep it in mind googlythumb

#

Would be swell if I could figure out why some hardware can't display big textures in the first place but I understand that even less

#

Apparently someone using an Nvidia 4070 had the problem, managed to get it go away by changing his graphics card setting to highest performance, whatever that actually means. I on the other hand don't seem to have any problem in the first place on a 3070

lucid iron
#

The 4096x4096 is what's definitely safe for monogame I believe

dense arch
obtuse wigeon
#

Ye it's less so the hardware itself, and more the implementation or software to hardware communication, I am on a GTX 970 (11 years old) and I have no issues with textures larger than 4096²

versed wyvern
#

How mysterious...

lucid iron
#

Sdv vanilla basically never has to think about this so there's no infrastructure when someone decide that actually portraits r 4x tall now

versed wyvern
#

It's just that, as someone with no coding knowledge, I thought that kind of limitation would have shown up from the game engine, not the graphics card someone was running WoahThink

#

And especially with seemingly no correlation to the power of the card

lucid iron
#

It's lower level than game engine

dense arch
#

architecture level?

lucid iron
#

Graphic api impl level hence why someone could change some settings and have it work

vernal crest
vernal crest
#

I provide Pathos's warning about not using horizontal layout and then I bow out.

versed wyvern
#

Yeah, that was mentioned the last time I was trying to brainstorm ways to sidestep around this but I think in my specific use case it just might be fine

#

Because they'd never come up during any non-modded contexts

vernal crest
#

The NPCs won't be in any non-modded contexts? How?

versed wyvern
#

The appearances that I'd switch them over would never be used outside of mod scenes

lucid iron
#

I guess you can do it like

#

Hard coded portraits are where they are

#

But also go horizontal

vernal crest
#

So you'd assign them the horizontal spritesheets just for events?

versed wyvern
#

Yeah, something along those lines

#

Possibly also involving BETAS UpdateAppearance for particular schedule dialogue

vernal crest
#

It might work then?

(Also I bet I was the one who brought it up last time too xD)

heavy pewter
#

Guys, what am I doing wrong here? It's not working, I was expecting Smapi errors and I'm surprised there's none

vernal crest
#

Haha yes it was me sorry!

versed wyvern
#

Is all good, is better to go in fully knowing things could go wrong henyaDerp

vernal crest
lucid iron
#

But hm I don't think you even need to harmony here, there's smapi buttonschanged event instead

#

In terms of what's actually no work i would check if result and wasbtapped actually have expected values

heavy pewter
lucid iron
#

I see, probably a feature request to ask of android smapi person then

lucid iron
heavy pewter
exotic token
#

can unlockable bundles even do the same fixes as the regular cc bundles?

gentle rose
#

what do you mean?

exotic token
#

custom bundles apply a map patch to a certain area after completion

#

But would that be enough to remove the boulder, fix the bus, etc?

gentle rose
#

what are you trying to do? make a replacement for the community center?

exotic token
#

Basically, I am making the community center able to be used in the joja route. I assume I need custom bundles to replace the old ones.

#

unless the actual bundles can be placed outside of the community center route?

autumn tide
#

hellooo do tokens work in map tile action things?

tiny zealot
#

if it's content patcher adding stuff to the map (EditMap/MapTiles), yes. if it's in the tmx itself, no

lucid iron
#

That one's gonna be difficult without some C#

exotic token
#

Well, they could do either

#

is the point.

lucid iron
#

Well in that case it shouldn't really matter to you right

#

They would complete the cc/joja form

#

And then you apply your cc/joja coexist stuff

exotic token
#

hmm

#

would refurbished community center be the entirety of it finished then?

rose sequoia
#

can I reload my mod without having to relaunch the entire game ?

brittle pasture
#

!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.
rose sequoia
#

yaayyyyy

#

thx

obtuse wigeon
#

(if it's a fashion sense mod, it has it's own command too, available in the FS docs)

lucid iron
#

Basically just treat 2 different flags as the same thing for purpose of your mod

rose sequoia
#

i added warp to my new room but now gus apparently used it and went locked in the room

#

is there a way to prevent npcs to use the warp ?

lucid iron
#

Try using a TouchAction warp

rose sequoia
#

found this also i'll try both

calm nebula
rose sequoia
#

added a NoPath property in the end

calm nebula
#

He wont do that if that is a dead end

#

You have a warp from that room to somewhere else

rose sequoia
elfin palm
#

does anyone have frame by frame sprites of the farmer's sword attack animation? (and no, i'm not talking about the eldritch horror that is the farmer's sprite sheet)

urban patrol
#

how are you trying to animate the farmer? i can warn you now, trying to have the farmer swing a sword in an event doesn’t work

elfin palm
#

its for an npc mod, I'm trying to mimic the farmer's sword swing animation

urban patrol
#

carry on SDVpufferthumbsup

elfin palm
#

at the moment, I'm cleaning up screenshots from a video of someone playing stardew but I figured this discord could be my best shot of having a clean version of it instead of jury rigging it 😭

urban patrol
#

i think someone has made an overlay of farmer + clothes + limbs before but i wouldn’t be able to point you to it

lucid iron
#

The sord item is rotate and there's some tas from tilesheet animations iirc

#

For npc it's better if u just not think about how farmer do it Dokkan

elfin palm
#

i guess you're right 😭 it probably just matters if i have the same amount of frames

urban patrol
#

i’ve got a guy swinging a cricket bat if you want to look at that?

#

probably similar ish movement

elfin palm
#

sure

tiny zealot
#

abigail has two frames that get used for "swing a sword" in her 14-heart event

versed wyvern
#

Those look more like punches, though

elfin palm
#

this npc I believe is going to be able to accompany the player in the mine (it's a commission, I'm not the programmer just the artist haha) so I'm making versions with no effects, with their magic effect and with a special sword

urban patrol
lucid iron
fervent horizon
#

random question, can you use any item type in a crafting recipe or is it just (O) and (BC)? Like can you use a hat?

lucid iron
#

You can make a hat in crafting but i dunno about consuming hat (wanna say yes but syntax may be cursed)

elfin palm
fervent horizon
#

I know you can make a hat, but can you use a hat as an ingredient

#

I am thinking no, but the wiki is vague

lucid iron
#

The reason why I bring it up is cus if it is trinket tinker then you are allowed to pull temporary animated sprites directly so that only movement is needed

#

Can also probably do the sord directly as a rotation on a sord sprite (but drawing it is cooler)

fervent horizon
#

Another curiosity question, when you are editing your mod code, are you typically editing in your games mod folder, or do you have a second working folder and copy the code over to mod folder to test it?

lucid iron
#

I symlink my mod over

#

That's just cus I usually have version control though

brittle pasture
patent lanceBOT
tiny zealot
lucid iron
#

Why hath thou quoteth mine word

patent lanceBOT
calm nebula
#

I like how the programmers have different ways to handle this problem

versed wyvern
tiny zealot
fervent horizon
#

Just trying to figure out the best way to periodically update the installed mods ids on my extension. Right now it updates when a file is opened, but updating with every save got to be very strobing with the window reloads

lucid iron
#

All the flavoring comes in with the animation systems

tiny zealot
lucid iron
#

S&S keychains too like the pepper rex that shoot fire

fervent horizon
versed wyvern
#

Yeah but I was just meaning if anyone had actually finished such a mod, last I looked at it the systems seemed highly robust but also highly complicated

lucid iron
#

Yes i may have forgotten most people aren't programmers when i designed all that YuniShake

lucid iron
#

Those have attacc

tiny zealot
#

(i made font smasher, and a mod that uses it. the only other person yet to publish a mod using it copied and edited my mod)

lucid iron
#

But yeah I think the ability system in trinket tinker is not actually more complicated than like

#

Data/TriggerActions

#

You can think of it as trigger actions that only does stuff when trinket equipped

versed wyvern
#

The docs are understandable I think, but there's just a whole lot to keep track of

lucid iron
#

Always rmbr that there r like 100 knobs but most are optional Dokkan

#

When I do trinkets myself I usually just start with 1 Variant 1 Motion so that I get something visible into game first

#

Regarding combat though I feel there's just not enough stuff you can do besides "more damage"

gray bear
#

-# B?

fervent horizon
#

By the way, Chu, I am almost done with auto complete helpers for recipes

lucid iron
#

That's why I never really expand this beyond you can hit stuff and at different timing now

fervent horizon
#

basically it will give you a generic skeleton and then pop up helpers at the spots you need

#

I wish recipes were on the de-stringifying list for 1.7

versed wyvern
#

Combat pretty much needs to be more difficult to have much room for more complex effects, I reckon

tiny zealot
fervent horizon
#

That's true, I'm just going off the wiki, but they could be since almost all the other still string places are getting overhauled

tiny zealot
versed wyvern
#

Most I can think of for a party member to do would be buffing the player and debuffing enemies like slowing them down

blissful panther
fervent horizon
#

Oh, awesome that it is at least past the that's a neat idea phase

lucid iron
#

Hence why only stun is implemented by reusing ice rod stuff

#

(I feel like i probably wrote the same thing months ago in a nexus comment lol, hasn't really changed)

versed wyvern
#

Yeah I'd imagine nothing's really changed since a lot of that kind of stuff is still really hard-coded and has no frameworks to expand them

lucid iron
#

A monster framework would be cool (rip MTF)

#

Maybe after 1.7 Dokkan

versed wyvern
lucid iron
#

Buffing the player is quite straightforward tho

#

Like the dust spirit that buffs you on breaking a rock

sleek aurora
#

I just can't make this code work. If I put "ObjectInternalName": "Seasonings Butter ({0}{1})", then the objects are not accepted by the machine. If you put "ObjectInternalName": "Seasonings Butter ({0,1})", then only one flavored is displayed.
https://smapi.io/json/none/22ab837e7d7145f1adf3672a2f9ea9e8

versed wyvern
#

Too bad we can't just apply existing (de)buff effects to enemies, the Slimed and Defense Down debuffs would have sufficed

lucid iron
#

It may be possible to do something about the speed

#

Defense is a little weird because some mods intentionally make unkillable enemies by giving them 99999 def

versed wyvern
#

Also, would the frog's insta-kill effect happen to be available for use in there?

lucid iron
#

Nope, mainly because idk how to define the animation

fervent horizon
lucid iron
#

Effect wise it's kind of not different than a large damage with long cooldown tho

lucid iron
#

So you could do it like

  1. Large hit + long cd
  2. Procs a long anim clip on hit
#

It is the tongue part that is too ??? to genericfy blobcatgooglyblep

versed wyvern
#

Oh is the tongue hard fused to the effect shockedpeko

lucid iron
#

The vanilla frog tongue is drawn in code

#

It's a dynamically shaped line

brittle pasture
# brittle pasture {0} and {1}

also I just discovered I never actually included what the i18n text looks like in my examples and have been leaving that as an exercise to the reader, so uh sorry for that

lucid iron
#

There's some other jank related like how the monster is "alive" but on a netref on the froge until the froge digests

versed wyvern
#

Ah, oof. I was just figuring that instant kill effects should maintain the frog behavior of just instantly deleting the enemy and not giving you the drop

lucid iron
#

It is all around specific c# bullshit kyuuchan_run

#

Ah so the missing effect piece would be item drop redirection

#

I did do some of that for forage so I am open to doing it for monster drops sure

sleek aurora
versed wyvern
lucid iron
#

Well it has other applications

#

Like automatically redirecting drops to a trinket's inventory

#

There's just currently a mode where it redirects harvested forage to /dev/null

brittle pasture
#

(check the examples on the EMC page)

#

(the 4 fruit jelly item specifically)

sleek aurora
#

ugh, I figured it out, thank you!

regal leaf
#

Hi! Does anyone know if there is a way to set the chances to obtain a certain farm animal variant when purchasing it? Preferably with Content Patcher, if that's possible.

I want to make a mod adding the pokemon Spheal as a farm animal and tought it would be funny to have a 1/4096 chance to purchase a shiny one, just like in the Pokemon games. 😄

urban patrol
regal leaf
lucid iron
#

Are you doing skins or alt purchase type

autumn tide
#

pro tip: use the big puffer ascii art as a page separator in your mod bc just hitting enter a bunch of times is boring

obtuse wigeon
#

I use large comments as seperators to easily find in the preview so this is perfect

iron ridge
#

does vscode support //#region in jsonc?

#

it adds nice little headers in javascript files

#

it appears to not :(

obtuse wigeon
#

ahh thats a shame, that would be great!

#

Mods tend to not include a logo in the mod files right?

iron ridge
iron ridge