#making-mods-general

1 messages · Page 307 of 1

calm nebula
#

What do I have if I have no nerd cred

#

I'd be worthless otherwise

tawny ore
#

You have knitting cred

lucid mulch
#

the debugger stuff in roslyn has license restrictions and legally only vscode/vs are allowed to use it

#

though I think some of the lsp stuff can flow into neovim

#

also my debugger mod being a DAP server should mean it should be relatively minimal effort to have neovim debug content patcher packs

tiny zealot
#

a debugger would be nice, but vs/code would not be (for me)

gaunt orbit
#

does anyone know what state 2 in houedirt represents?

calm nebula
#

Paddy

gaunt orbit
#

aaaaaah thank you

brittle pasture
#

...huh, didn't think I'd stumble onto a vanilla bug while working on this

#

brb preparing report (at risk of breaking my transpilers next patch)

visual dirge
#

ive been doing c# modding (unity) for a whiiiile so ill prolly only have questions abt stardew-specific stuff, but ty

brittle pasture
#

oh wait it's a vanilla bug so I should use the forums

sour sleet
#

Is there a faster way of testing dialogue in game?

brittle pasture
#
#

I've always wondered why food tooltips are so weirdly... wider than usual

#

and now you will too

visual dirge
gaunt orbit
#

... where actually is the paddy draw code? DrawOptimized just skips drawing the dirt entirely if it's a paddy crop, but Crop.draw doesn't seem to handle it

#

wait no it is handled

#

state 2 is not paddy crops it's something else

#

it seems to be used to skip a lot of dirt logic but I'm not sure when it's actually set

calm nebula
#

Huh okay sorry SDVpufferheart

#

I must have misremembered

rancid musk
gaunt orbit
#

is it?

#

Island West and Island North both set state to 0

#

oh wait you're right

rancid musk
#

IslandNorth and IslandWest both set it to 2 when spawning in forage

gaunt orbit
#

they set it to zero in the constructor and then initialize it to 2 for some reason

calm nebula
#

Oh, ginger!

gaunt orbit
#

ugh, crop draw code is messy. maybe I'll do paddy stuff later

unkempt valve
#

can i throw the folder that says [CP]modname into the mods folder or does it need to be in its own folder

gaunt orbit
#

I think you're asking in the wrong channel, but generally any folder that has a manifest.json in it can go in the Mods folder

unkempt valve
#

oop thank you

sour sleet
#

Um, I'm giving my NPC a mermaid pendant and she is saying "no, I won't marry you right now" Why is this?

pine elbow
#

Are you at full hearts?

sour sleet
#

Yep 10

#

I've never made a romanceable npc before lol

pine elbow
#

And there's no conditions like "must have seen X Y Z"?

sour sleet
#

Nopeee

finite ginkgo
#

Is your farmhouse upgraded

sour sleet
#

Oh no it isn't!

#

Haha thanks

pine elbow
#

LMAO I made that same mistake as well

sour sleet
#

And now when I kiss her, she turns invisible? What haha

pine elbow
#

100% a spritesheet issue methinks

#

Check if her kiss sprite is in the proper column

sour sleet
#

I've just opened up aseprite now, was thinking the same haha

pine elbow
#

Spritesheets are so fun until you realize you can't organize them the way you want SDVpufferwaaah

sour sleet
#

Yep, wrong columnSDVpufferwaaah

#

Fr

pine elbow
tiny zealot
#

(you can choose where to place your NPC's kiss sprite, and which direction it faces. it's in the NPC data)

#

but generally it's just as easy to use the default, so

lucid iron
pine elbow
vernal crest
#

Waow feesh

lucid iron
#

mr ape was right to not let us do animal cruelty SDVpufferpensive

calm nebula
#

Feesh

vernal crest
#

Fish king

brittle pasture
#

not that simple turns out, but woo

lucid iron
#

power

pine elbow
brittle pasture
drowsy pewter
#

Wow

boreal pulsar
#

how do I register to SMAPI my api?
'''Helper.ModRegistry.SetApi(this, new FortuneWheelApi(Monitor));'''
does not work but I cant find anything online and AI says this is correct

lucid iron
#

why r u asking ai about niche code

brittle pasture
#

AI is wrong

boreal pulsar
boreal pulsar
#

"last resort"

lucid iron
#

its all documented on wiki

brittle pasture
#

though that's describing providing a C# api

#

you presumably want to expose your stuff to content mods

boreal pulsar
#

es

brittle pasture
lucid mulch
boreal pulsar
#

I mean that is a bit different

#

Looks like its referring to AI generated images n stuff

brittle pasture
# drowsy pewter Wow

hey, since you offered earlier and is also the primary user of this feature here's the i18n file if you want
(turns out the vanilla strings contains nothing)

lucid mulch
drowsy pewter
brittle pasture
#

feel free to ignore the top 2 strings

drowsy pewter
#

I'll ping our translator team

tiny zealot
boreal pulsar
lucid iron
#

what is the other mod in this context

boreal pulsar
lucid iron
#

why isnt it the same mod NotteThink

lucid iron
#

you don't have to subdivide the dlls like this if you don't wanna

brittle pasture
boreal pulsar
#

mhh idk I probabl overcomplicate myself

the framwork is just a wheel that displays a fortune wheel spinning trough a given list, than the other mod would do whatever it needs with the selected item

brittle pasture
#

(well other than unlocking harder monsters that spawn based on player level)

drowsy pewter
#

I trusted the wiki

lucid iron
#

yea i dont see why this can't be same mod (as in the same dll)

brittle pasture
#

it does increase your combat level, however the only effect of extra combat levels are all handled in the leveling up

#

(recipes, health boost, profession etc.)

calm nebula
#

Yeah

drowsy pewter
#

lmaoo

calm nebula
#

+combat is useless

#

So is the precision

drowsy pewter
#

Okay I'll have to redo those +combat recipes

calm nebula
#

No vanilla monster has dodge chance

drowsy pewter
#

luckily i dont use precision because it sounds useless

brittle pasture
#

SVE + RSV does add monsters with dodge fwiw, and precision works with those

lucid iron
#

wait i thought mummies did

brittle pasture
#

doesnt work on mummies

lucid iron
#

aw ok

lucid mulch
#

the spawn monster code looks like it looks at CombatLevel including boosts at least on farm

boreal pulsar
lucid iron
#

sure but they can just get your C# api to do stuff

#

or they can make their own content mod to use it with

brittle pasture
#

so you can market your food as "hey are those dodging purple ghosts in RSV giving you a hard time? then eat this"

lucid mulch
#

ok yeah combat level (with boosts) does affect spawn rates on farm, you would get attacked by serpents if you are combat level 5 + 5 from a boost

brittle pasture
#

(very niche, but still lmao)

lucid iron
#

you are doing something similar here, except the content defines a wheel, and then u can make actions to open this wheel wherever

#

for further integration u can have the wheel raise a trigger perhaps, whenever u complete

brittle pasture
#

(@drowsy pewter I have a couple more features I want to bundle into this version before releasing, which might be a few days away, so if you need something to test ahead of time to make sure your food looks right, here)

drowsy pewter
#

Thank you !

brittle pasture
#

and I realized I could have sent that first instead of the i18n file separately

boreal pulsar
#

instead of framewrok etc

brittle pasture
#

yeah, start small, make sure the core functionality works

#

you can always add integration later

lucid iron
#

if u just keep the wheel data in a json it won't be that much work to turn it into custom asset later

boreal pulsar
#

yeah but the mod I inted to make makes use of the wheel in different ways (to assign items, quests, and other stuff) so I will have to make a modular standalone wheel anyway

#

its just a matter of making it a framework mod or not

#

for now ill just do one single mod

boreal pulsar
#

hell yeah this will be super helpful

lucid iron
#

theory is a WheelEntry model with these fields

  • Texture2D Icon
  • Rectangle IconRect
  • string Color (parse with Utility.StringToColor)
  • Weight
  • Condition (this is a GSQ)
  • Actions (list of Trigger Actions, which are strings)
  • ItemSpawn (this is an item query)
    A list of WheelEntry forms a wheel
#

when you roll a particular slice of wheel, fire the trigger actions and/or spawn the items

#

you can define trigger actions as your mod requires, but other people can also put their trigger actions here DokkanStare

boreal pulsar
#

omg GSQs

#

mhh

#

this would solve so many different things

lucid iron
#

wonders of 1.6 3sSmolMiku

boreal pulsar
#

my only problem toh is that I intended to add very particular malses/punishments when failign quests

#

like, you cant use pickaxes

#

or, half of ur inventory is not usable

lucid iron
#

yea you will need custom C# for that

boreal pulsar
#

yep

#

so I cant use actiosn for this

lucid iron
#

but at least you can set a flag (AddMail)

#

and then apply ur effect when thats true DokkanStare

#

or just use trigger action to set the timeout in ur mod save data

#

it is arbitrary C# method do whatever

boreal pulsar
#

mhmm

lucid iron
#

but yea u dont have to deal with this immediately blobcatgooglyblep

boreal pulsar
#

but since 3/4 of the things I would have would be Actions, maybe its not a bad idea ahah

#

Ill do the other stuff first and than work on punishments

#

so there wouldnt even be any reason to go back from wheel to other scripts etc

#

and I could make a JSON list of the items/elements/quests and those can be easily modifed i guess

#

idk

lucid iron
#

well this is just theory kyuuchan_run

#

its prob better to focus on make wheel work as intended

boreal pulsar
#

well

lucid iron
#

integration later

boreal pulsar
#

I had a wheel spinning, selecting a winning section and sending message of the selected section name

#

so the very base of the mod works

#

lol

lucid iron
#

rmbr to use i18n

boreal pulsar
#

?

drowsy pewter
#

How do the vanilla cookingRecipe mails work? Is it guaranteed to occasionally continue sending until all the valid cookingRecipes are depleted? Or is it sent after certain heart levels, etc

for example
"RobinCooking": "Dear @,^here is an old recipe that my grandma passed down to me. Enjoy! ^ -Robin%item cookingRecipe %%[#]Robin's Family Recipe",

calm nebula
#

It's in the cooking recipes data

#

If there is a valid one with a f NPC hearts it sends that mail

#

Tbh don't use it, just use a TriggerAction

drowsy pewter
#

Ah okay, so it sends that mail when the specified heart level is reached

drowsy pewter
tiny zealot
#

i guess if you only have one such mail recipe from an NPC it's fine to use the old way

latent mauve
# boreal pulsar ?

i18n makes it more accessible for translations (for the section names and such)

tiny zealot
#

one major disadvantage is it uses the same mail every time so the text has to be generic, like "got this from my pappy" with no specificity

#

trigger actions were also devised to replace this type of behavior with a general-purpose system, and tbh they are pretty good

calm nebula
#

And because it's the same letter key it can work weirdly if you have two at the same heart level or close heart level

drowsy pewter
#

I understand but that text repitition is a tradeoff for me to choose lol

#

I see

#

So if someone jumps from 3 hearts to like 5 or 6 hearts and triggers two recipe letters with the same key?

calm nebula
#

One letter the first day

drowsy pewter
#

Repeating the vanilla text is the purpose here, my translators are already going to be overloaded with other stuff

calm nebula
#

A second iirc if they restart the game on a second day OR if the friendship points change

drowsy pewter
#

As long as the letter is guaranteed to send eventually

tiny zealot
#

there is wonkiness because you can't have two of the same mail in any mail zone at once (they are hashsets)

boreal pulsar
lucid iron
#

so a trigger action in the data is just a space separated string

boreal pulsar
#

wait u sent me the documentation sorryù

lucid iron
#

a content pack would provide string like say

#

"ChoppingSlime.CoolMod_MySpecialAction arg1 arg2 arg3"

#

and as long as you registered the C# function to ChoppingSlime.CoolMod_MySpecialAction as a trigger action, it'll get called

#

and you get a string[] like ["ChoppingSlime.CoolMod_MySpecialAction", "arg1", "arg2", "arg3"]

boreal pulsar
#

well than this is the solution, I would use them for applying maluses

lucid iron
#

game ones work basically same way so take look at TriggerActionManager.cs in decompile

#

the guide also has stuff for registering GSQ item query and such

boreal pulsar
#

alr I think tomorrow Ill just rebuild everything from scratch with this new system lmao

#

thank you so much for your help!

orchid anvil
#

I'm currently trying to edit the vanilla seed maker for stardew valley, what config file do i open to change it?

lucid iron
#

Data/Machines

orchid anvil
#

got it thanks ❤️

drowsy pewter
#

I'm manually doing each mail recipe one by one with trigger actions. You win, atravita SDVpufferchicksolid

#

My poor translators

#

first two tv show channels and now recipe letters for all the vanilla npcs

drowsy pewter
#

sigh, if anyone actually enjoys writing flavor dialogue and descriptions and wants to work on cornucopia, you know where to find me SDVpufferchickluau

lucid mulch
faint ingot
#

for an event, is there a best way to set the viewpoint for a large outdoor map when the event takes place in the very corner of the map? I tried to give a little buffer but its still showing black or under-map artifacts

lucid mulch
#

the best is to not have stuff in the real corner of the map

#

take 1.6 bus stop, that is delibrately wider than what the player can access to keep viewports inbounds

vernal crest
#

You can try viewport clamp but I don't know if it would do much to help

rancid musk
#

(It's fun playing on a 4k monitor. The number of maps I've been on that aren't big enough... lol)

lucid mulch
#

as a 4k monitor user myself I'm used to it, and even have a mod to deliberately never clamp when I'm moving around as I don't mind the black void and it means when planting crops or whatever can just keep my cursor stationary on my farmer and just move around, as the camera will always be in sync with the farmer and not stop moving if I get to the edge

inland cedar
#
    "/pause 500/speak Haley \"$4 string1\"" +
    "/speak Haley \"$y 'Question?_response1._reaction1_response2_reaction2'\"" +
    "/pause 500/end";

anyone know how can I set the portrait for the reaction?

faint ingot
fierce vault
#

Hi, I'm a little stumped on how to cancel out this green select in tiled?

#

Even when I place stuff it remains.

#

Oh, nvm

#

I needed to right click when on rectangular select

tardy tinsel
#

I have a question,if i want my NPC to have more dialogue to a gift,what should i doSDVpufferwinter

#

like they'll say 'thank you' and next time they'll say'i like this'

vernal crest
# tardy tinsel I have a question,if i want my NPC to have more dialogue to a gift,what should i...

You can write their default response for loved/liked/neutral/disliked/hated gifts in their entry in NPCGiftTastes and then on top of that you can write specific dialogue just for certain items or categories or context tags using AcceptGift_<id> etc in their Characters/Dialogue/NPCName entry.

https://stardewvalleywiki.com/Modding:Gift_taste_data
https://stardewvalleywiki.com/Modding:Dialogue#Item_dialogue

tardy tinsel
#

thx!will it work if i write two accepetgift for one item?

upbeat mango
#

is this correct way for line's of words for a custom npc??

ornate locust
#

I think they want multiple SPECIFIC gift dialog. You might be able to do that with i18n randomization

vernal crest
vernal crest
upbeat mango
sleek igloo
#

Does anyone know if the farmhouse is still cursed as far as patching it

vernal crest
#

Depends what you're trying to do, I guess?

sleek igloo
#

I'm trying to do a simple kitchen patch, I want an empty vanilla room because I'm moving my kitchen into a PIF room with a modular mod

#

OCD bothers me about the details ^^;;;

#

I dont want to change the size or anything, just remove the appliances/counter

vernal crest
#

Removing the kitchen furniture shouldn't be an issue but I can't remember if the functionality is controlled by tile objects or hardcoded and I don't have Tiled on my laptop to check - oh wait, yes I do.

sleek igloo
#

I know there are tiles in there for kitchen functionality, I just dunno if removing them will trigger the curse

vernal crest
#

Just tile objects. I don't see why it'd be an issue.

#

My understanding is that things to do with the crib are difficult (without MMAP to make it easier) and things to do with renovations are difficult, but I think the kitchen should be ok SDVpufferthinkblob

sleek igloo
#

awesome, I'm just superstitious about the farmhouse from the old modding days xD

#

Thanks so much!

vernal crest
#

If it does break you can just come back and make puppy dog eyes at chu about it lol

sleek igloo
#

lol, I'm not acquainted with chu but I'll be ok maybe?

#

(is chu the resident farmhouse modder?)

vernal crest
#

They've done some stuff to make farmhouse modding better for content modders:

  • Change where the crib is in farmhouse
  • Change where the fridge is in farmhouse, and optionally the door open sprite
  • Trigger when farmhouse is upgraded
  • Action to shift contents in a farmhouse when upgraded, so that people's stuff don't end up in the void in a custom farmhouse, plus a map property to block the vanilla shift contents action.
sleek igloo
#

Bless SDVpufferheart

vernal crest
#

Actually that one about the fridge makes me wonder if you might have a phantom fridge if you try patching it out but I guess you won't know unless you try (or someone like Kisaa comes along lol)

sleek igloo
#

I did get the inspiration from kisaa's mods lol but I didn't want to patch an entire farmhouse

#

just wanted a lil kitchen patch so I can decorate differently in there

versed wyvern
# tardy tinsel I have a question,if i want my NPC to have more dialogue to a gift,what should i...

I think one way you could do it is to have the AcceptGift dialogue to have a $query command that checks for a mail flag? If the mail flag isn't set, their response gives the first line followed by an $action AddMail command to set the flag, then the next time you give them the gift the flag is set so they'll give the other response, which can optionally remove the mail flag to make them go back to the first response

#

If you need more than two responses I think you could theoretically have separate EditData patches for the AcceptGift key using the mail flags as a When query condition, using the dialogues to advance the flags as needed? blobthink

vernal crest
#

It'd be easier to use the $1 dialogue command

calm nebula
#

You can use the $1 (that's a one) one time dialogue token

vernal crest
#

I knew you were coming with that Atra xD

calm nebula
#

My favorite dialogue token

#

Used widely in my never to be released or played dialogue mod to have Demetrius give unique responses the first time you give him something cool

versed wyvern
#

That does sound like it'd condense all that but I dunno how repeatable and extensible they want the dialogue WoahThink

calm nebula
#

$1 actually literally sets a mail flag too

tardy tinsel
#

SDVpufferwaaah thx for all the reply, I am taking notes now awww

#

The reason it all started was that I saw a mod that added more gift replies to the NPCs
It add about 2-3 dialogue to NPC's giftreact by simply suing 'xxx_AcceptGift_(O)575~1' (but it's i18n so i guess,so i don't how actually works)

calm nebula
#

Yeah no that's not working

versed wyvern
#

You'd have to look in the content.json to see where they're using those tokens as they're likely attached to various conditions

calm nebula
#

It's mixing up the old custom gift dialogue method with the new acceptgift method

vernal crest
#

If you look at the dialogue file itself, it will show you how they are doing it. I suspect it's using the Random token to pick a random i18n key from the pool of keys for that line each time - that's how we mostly do things like that.

tardy tinsel
calm nebula
#

Oh god okay that is what they're doinf

#

So, I wouldn't look at that. They're just using the random token to pick between options

#

And using the ++ as a deliminator because the classic deliminator is a comma

vernal crest
#

For example for Hiria's rain dialogue I have this:

"{{ModID}}_Hiria": "{{i18n: Hiria.rain.{{Random: {{Range: 1,5}} }} }}"

And then her default.json has this:

"Hiria.rain.1": "Rainy 1",
"Hiria.rain.2": "Rainy 2",
"Hiria.rain.3": "Rainy 3",
"Hiria.rain.4": "Rainy 4",
"Hiria.rain.5": "Rainy 5",
calm nebula
#

And sometimes commas show up on dialogue

#

The way aba is showing you (randomly picking the i18n key instead of values) is cleaner

flat sluice
#

Hi!
Recently, I got into making maps for my mod.
As always, there are some issues. And the one I'm having right now is the pathfinding for the NPCs.
I'm not sure if it is needed to somehow set it manually - I didn't find anything about that on the wiki, but I'm totally blind, so maybe it's just me not reading the wiki properly... again.
Anyway, the problem I'm having right now is that my NPC totally ignores the collisions (tiles set in the Buildings layer in Tiled) and goes where it wants to, not where I want it to go. My guess is that I made something wrong with the warps.
Including a video of the problem (slightly older because the new one is too big for Discord, but the behavior is the same).
Log: https://smapi.io/log/dd51d461fc6a45c18fa43502607f6445
Json for maps: https://smapi.io/json/content-patcher/f9fb6a537f824c1186660a29d1ed29fa#code.35
(There is some error with the warp, but it does work + it is the warp in, not out, which I think the schedule struggles to find, and therefore is bugging the pathfinding)
Map: https://github.com/DenisSilent/Eleanor/blob/development_UNSTABLE!/[CP] Eleanor/assets/maps/Eleanor_home.tmx

If you need anything else, feel free to ask or ping me!

GitHub

This Github repo is a repo for NPC Eleanor, which is a mod created by StrojvedouciDenis (a.k.a. DenisSilent or Denis001 (at Discord)) for game Stardew Valley. - DenisSilent/Eleanor

ocean sailBOT
#

Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Pro, with 75 C# mods and 33 content packs.
Suggested fixes: One or more mods are out of date, consider updating them, SMAPI is out of date, consider updating it

calm nebula
#

Here's another examplw

#
                "AcceptGift_(O)395": "$query TIME 0600 1600#{{i18n: harvey-gift-coffee-morning.{{Random:01,02,03,04}} }}|{{i18n:harvey-gift-coffee-evening}}",
tardy tinsel
#

i see, thank you so much ; ;

vernal crest
calm nebula
#

Four choices for coffee in the morning , one for after 4pm

#

(The dialogue parser can be persnicky)

vernal crest
calm nebula
flat sluice
tardy tinsel
flat sluice
vernal crest
flat sluice
vernal crest
flat sluice
#

Just clean start in a modding save, warp to her, walk out and watch.

flat sluice
vernal crest
# flat sluice Looks like she's OK when inside

Ok that helps narrow it down. When you had her schedule taking her outside her room, was it just into the wizard's basement or was it further afield? If it was further afield, try just adding one schedule point in the wizard's basement and see how that goes.

flat sluice
#

for example:
"spring": "610 WizardHouse 5 15 2/930 Town 72 54 2/1700 WizardHouse 12 2 2/2100 Custom_WizardBasement 13 5 0/2400 {{ModId}}.Maps.Eleanor.home 20 16 2",

vernal crest
#

Ah yes I see. I was looking at the warp back into her house.

#

Ok try just making her go into the wizard house. No leaving the house and no going back to her own house.

flat sluice
vernal crest
#

Basically I'm just telling you to go through it all one step at a time until you find the step that goes wrong.

flat sluice
vernal crest
flat sluice
buoyant solstice
#

Hi @vernal crest 👋 (and everyone else btw)

I want to add a condition that an item appears in the store when a player gets a specific achievement, but I didn't find it in the “conditions” (in the CP documentation). is there any way to check if a player has an achievement on his save?

drowsy pewter
#

Read the game state query page on the wiki instead and add it to Conditions inside the shop field

vernal crest
drowsy pewter
#

You can check the vanilla hatmouse shop data for reference

buoyant solstice
flat sluice
flat sluice
flat sluice
vernal crest
#

It takes Hiria around 4 hours to get from the wizard house (ish) to SeedShop

#

By the way if you're not already using it, a mod like Event Tester or Fast Forward makes it easier to follow NPCs around when you're schedule testing (plus Event Tester has a lot of other testing things in it too so I use that one). https://www.nexusmods.com/stardewvalley/mods/19458

sleek igloo
#

Wahoo, success~

flat sluice
flat sluice
vernal crest
#

I should've just checked your log but I'd already written the message before I thought to do that so I was already committed lol

flat sluice
vernal crest
flat sluice
vernal crest
buoyant solstice
#

soooo
I kind of tried every combination I could think of...

opaque field
#

My event triggers are set right - 3 hearts with Shane and seen the previous 3 events my music choice is legit (night_market) and as far as I can tell nothing else in my event is weird. But I get this every time I try

buoyant solstice
#

@vernal crest 🥺

vernal crest
vernal crest
opaque field
#

Okies. I don’t think I’ve done that before so I’ll try n figure that out. Thank you!

vernal crest
opaque field
#

oooOOOOOH excellent! I just exported it so imma go check now

buoyant solstice
opaque field
#

Hmmm interesting my event isn’t showing up.

#

Omg I figured it out

#

All of my new events work omg thank you

vernal crest
#

Nice!

unique sigil
# vernal crest Removing the kitchen furniture shouldn't be an issue but I can't remember if the...

@sleek igloo regarding this: as far as the farmhouse kitchen goes the only thing that's hardcoded is the fridge tile, which lets you open the fridge inventory if you interact with it (stupidly specific that one).

but as aba mentioned, it's been dealt with by MMAP; you can place the fridge with the map property mushymato.MMAP_FridgePosition: <X> <Y> without needing to use the fridge tile from farmhouse_tiles.

#

if you don't use the fridge tile in the map (like my Empty kitchen option from Cozy Rustic Farmhouse) then the farmhouse fridge will be entirely inaccessible. if you do not set the fridge position with MMAP, then user will have to either use 1) minifridge 2) fridge items added by Expanded Storage

spare sun
#

hey is anyone familier with producerframeworkmod? im trying to thin out an older mod to get olive oil from the oil maker but its not working :(
heres what my producer rules file looks like:

   { //Oil Maker
       "ProducerQualifiedItemId": "(BC)19",
       "InputIdentifier": "Olive",
       "MinutesUntilReady": 60,
       "OutputIdentifier": "Olive Oil",
       "Sounds": ["bubbles"],
       "PlacingAnimation": "Bubbles",
       "PlacingAnimationColorName": "Green"
   },
] ```
i don't know anything about modding and so far ive gotten the olive trees from the "more trees" mod to work properly but i cant seem to get the oil maker to produce olive oil or interact with olives at all
#

so far ive been taking snippets from other mods that do similer things to try to get it to funtion but my frankenstiening has been fruitless

#

this is just for personal use as i really love olives

#

heres producer framework if anyone can help! it has a guide within the files but my brain is the size of a pea

#

🫛

rough lintel
#

uh perhaps just look at cornucopia because they already did all of this work to convert ppja stuff to modern 1.6

#

pfm is obsoleted mostly now

#

so

#

cornucopia has a thing for olive oil

whole raptor
#

I missed my snippets SDVpufferparty

vernal crest
whole raptor
#

Custom snippets for VSC

vernal crest
#

Oh yeah I have those too lol. I just haven't been using them enough to be familiar enough with how they look

#

Mine are less fancy, too

whole raptor
#

I wouldn't exactly call them fancy hah

vernal crest
#

They are compared to mine!

stuck wraith
#

Hello quick question is there a way to remove all debris from farm in tiled software ?

whole raptor
#

Anyone knows where can I find the wedding arch in files? SDVpufferthink

ornate trellis
#

its on our favorite tilesheet Cursors

lucid mulch
#

I think I can do some fun things once I hit my next milestone

whole raptor
drowsy pewter
stuck wraith
#

I sww

#

See

#

Tysm

lucid mulch
#

Tiled only controls the initial state during save creation, once it's spawned it's all stored in the save file and what's in the map is no longer the source of truth for debris

whole raptor
#

Also adding to nice modding utilities, I'm so glad I wrote myself a script that deletes all the localization files from the unpacked folder

vernal crest
#

I didn't delete mine in case I want to look at them for some reason but I made an English-only copy of the Unpacked folder. It makes it so much easier to search lol

whole raptor
#

Although I still have muscle memory of needing to scroll down to the cursors SDVpuffersquee

#

Hmm... should I go the easy way of using Woods for the wedding map with some edits... or should I make a fully custom map SDVpuffersquint

calm nebula
#

Woods seems good!

whole raptor
#

Yeah, probably a better solution (lore wise too)

#

I wonder if there are any tilesheet mods with nice decorations that could work for a forest themed wedding

pine wedge
#

After an event, the screen goes black, then my farmer is suddenly in an inaccessible part of the forest. Any idea how to correct this? Everything works fine with the event, no errors or anything else.

vernal crest
pine wedge
rough lintel
#

this is a command specified in the event modding page

#

this is provided you dont switch maps or anything

rough lintel
#

🫡

tiny zealot
rough lintel
#

oh my god

#

ichor…. ichor youre growing wings

#

ichor oh my god youre ascending

brittle pasture
#

seriously though, thanks SDVpufferheart

tiny zealot
#

well, if pathos merges it, and when the next wave hits

opaque field
#

Finally getting around to adding the conversation topics dialogue

whole raptor
#

What's giving the woods their whole vibe...? SDVpufferthinkblob (Comparison between woods and my custom woods for the event)

#

Unless it's some kinds of mod I have in my test loadout...

calm nebula
#

It's because it's hardcoded

#

Try instead of loading the map do a changeLocation

#

And use temp sprites

scarlet forge
#

oh yeah that

whole raptor
#

As in changeLocation to Woods? I don't think I can do temp sprites for those extra things, since I'm using Tilesheet mod for them (I could probably get something similar from the base assets tho)... I thought maybe making a conditional edit map, just for that 10 minute timeframe... but I can't get rid of stumps and bushes that way.. or can I? SDVpufferthink

calm nebula
#

You can point the temporary animated sprites at every

#

Bushes I'm not sure

#

Would be nice to temporarily invisible them tbh

whole raptor
#

Yeah, that was the whole reason I tried custom map first

tiny zealot
#

makeInvisible works on a bunch of stuff, but not Grass

whole raptor
#

As in it'll work on stumps, etc? 👀 First time I'm hearing of makeInvisible tbh

tiny zealot
#

i'd have to check. it depends on the thing

whole raptor
#

Cause if I could hide them, I could just editMap the rest and be done 😅

tiny zealot
#

Object and TerrainFeature, it looks like, but of the TerrainFeatures, only Tree checks the field it sets

#

so no dice on the stumps (ResourceClump)

whole raptor
calm nebula
#

Hey @ Pathoschild

gaunt orbit
calm nebula
#

The thing I wanted was the object to own the asset holder

gaunt orbit
#

I'm trying sourcegen this time because then I can just bake it into a property and put it wherever you want

calm nebula
#

But I needed to maintain a weakref to it to update it

#

Thankfully, update is already the slow process

gaunt orbit
#

that is what I did before but it felt like it made more sense to have a single source of truth for an asset and simply pull from that

#

not necessarily static, or a single class, but some kind of singleton pattern

calm nebula
#

Well, the assetholders are cached

#

There is only one instance per asset

gaunt orbit
#

yeah, mine didn't do that, which is one of the reasons I didn't like it

whole raptor
#

I'm guessing there's no way to trick the game into applying the woods effect to another map? SDVpufferthink

calm nebula
#

Hang on, sims finished, gotta do real work noe

gaunt orbit
#

one of the other things I want to do with this sourcegen is bake the mod id into the assembly as a constant, for two reasons- the first is that it's more accessible than having to ask the manifest, and the second is that as a constant it can get compile-time optimizations.

whole raptor
#

Also huh...? I just noticed SDVpuffereyes

tiny zealot
#

shh they're having a moment

whole raptor
#

Sure looks like it SDVpuffersquee

gaunt orbit
#

where do you think aSDVstickbug come from?

calm nebula
#

Or I think mmaps

#

Chue mod

whole raptor
#

Lifesaver

#

It's probably even better, since there's no falling leaves SDVkrobusgiggle

merry rampart
#

Marriage spot?

whole raptor
#

Yep, custom wedding for Razzy

merry rampart
#

Pretty

whole raptor
#

I'm probably gonna have to ask around if other authors would like their NPCs included as guests if they interact with Razzy when I'm closer to finish, since besides SVE folk, from vanilla I can only see Linus, Marlon and Krobus attending SDVpuffersquee

merry rampart
#

Maybe Dwarf if smoluanu installed and you have gotten far enough in his storyline?

whole raptor
#

Good idea

#

Thankfully by a pure accident I have a solid list of people on a first name basis with Razzy SDVpuffersquee

woeful lintel
#

Yet another hour or so of debugging lost to a bad copy-paste... All the data in the struct was good, but it doesn't matter if I call draw on the wrong instance...

tiny zealot
#

f
glad you sorted it out though

woeful lintel
#

yeah

#

I hate myself from the past

odd ginkgo
#

hello! Huge thank you to whoever recommended using changeLocation instead of changeToTemporaryMap for re-loading the community center with the fish tank intact. That solved several other issues I was having in other heart events!

heady relic
#

Does anyone have the list of category id's? I'm trying to find the one for any egg to include in a recipe but I'm coming up short. Can only seem to find the id for specific eggs.

sonic ginkgo
#

Hi. I'm using mod "The Love of Cooking" and am wondering how to get Cooking Chocolate, and would it be possible to change the limit of ingredients, as I also installed Milk of Myth where several foods need more than 6 ingredients?

flat sluice
# whole raptor I'm probably gonna have to ask around if other authors would like their NPCs inc...

If you don't mind and if you find it appropriate (or just if you want to), you can add my Eleanor (https://www.nexusmods.com/stardewvalley/mods/31663) there so she'll attend. As their apprentice, I honestly think she should be there, but it's fully up to you.
BTW, the place looks nice!

Nexus Mods :: Stardew Valley

Eleanor is a young witch who studies under the guidance of the local wizard, Mr. Rasmodius. She is kinda shy at first, but she'll eventually open up to you (or, at least, that's how her dialogues &

brittle pasture
sonic ginkgo
tribal ore
#

Alright, I have two questions about event IDs, for those with more experience:

  1. If a player has seen an event, but then the preconditions for that event are changed in a future update, can they trigger that event again? (the ID of the event doesn't change)
  2. If I have two versions of the same event (same ID) with different preconditions, will CP allow that? Or will it take whichever version of the event comes later in the file?
rigid musk
#

Event wont play again as the save file already has the event with that ID as played

brittle pasture
rigid musk
#

Not sure about the preconditions thing ive never tested something like that

tribal ore
tribal ore
calm nebula
tribal ore
#

Niiiiiiice

#

That will make changing the way an event triggers for future players much much easier

tiny zealot
#

to elaborate on 2, the event id (just the id part, before the first /) is what goes into the "seen this event" bucket for checking later.
having longer keys (with preconditions) lets you define multiple versions of the same event id with different conditions. once one of them is seen, the other won't play, since the id was used

sonic ginkgo
tribal ore
#

Thanks guys

tiny zealot
tribal ore
#

Ok, you guys got me unstuck 🙂 Yay!

brittle pasture
calm nebula
#

I really need to actually play the game at some point with lacey huh

sonic ginkgo
#

Alright. Thank you for your time.

tribal ore
rigid musk
#

I love Lacey :D

#

i cant spell

#

im soo tired

calm nebula
#

I just stopped playing the game at some point

tiny zealot
calm nebula
#

But hats

tribal ore
#

Are there more hats?

#

Just tell me that

tiny zealot
#

lacey does not add any hats to the game (yet)

tribal ore
#

Awwwwww, dang. Ah well. She's still adorable

#

Lacey's value is not defined by her hattitude

tiny zealot
#

au contraire. have you seen how many lines of hat commentary i am up to

tribal ore
#

No xD I'm trying so so hard not to spoil it for myself. Just looking at the code without the dialogue

#

She can't conflict that much with the mods I want to make, so I should probably just install her next playthrough. I just try to keep extra mods at the absolute min

#

Patching Older Seb at the moment, then going back to Older Sam

tiny zealot
#

gotta put up that suggestion box so there's a place for people to request hats to support

odd ginkgo
#

is there any "bring to front" action during events? Like if I have actors layered, and I want one to be "on top"?

patent lanceBOT
#

@calm nebula: build a schedule linter (4d ago)

tribal ore
odd ginkgo
wispy bramble
#

How do I make a spoiler in a nexus description with links inside the spoiler?

gaunt orbit
blazing pumice
#

Hello, I'm wondering is it very difficult to make a custom monster? I googled and checked modding wiki but there's not much information, only found a outdated monster framework mod

gaunt orbit
#

The editor is terrible and doesn't support everything anyways

gaunt orbit
#

Monster Variety allows you to reskin monsters, and farm type manager can spawn existing monsters with custom loot and stats and some other tweaks

blazing pumice
gaunt orbit
#

If you just want another variation of an existing monster, you can use those. If you want custom ai/attacks/behaviors, you will need to make a new one with c#, which is a lot more work

whole raptor
blazing pumice
#

sadly I couldn't find any custom monster example🥲

gaunt orbit
blazing pumice
odd ginkgo
static otter
#

Do I have to do anything special in the the content file if I'm adding a map that doesn't replace anything. I'm assuming I still have to load the file right? it just wouldn't have a target to replace??

odd ginkgo
#

for example:

#

{
"Action": "Load",
"Target": "Maps/CustomMappo11",
"FromFile": "assets/Maps/CustomMappo11.tmx"
},

static otter
#

that makes sense, it still has to go somewhere it's just not replacing

#

thank you

latent mauve
#

For cross-compatibility/safety, it's generally advised to use your ModID somewhere in the target as well.

odd ginkgo
#

yes! That was an example but something like CCMaps_CustomMappo11

#

or {{ModID}}, right?

latent mauve
#

You can also do something like {{ModId}}_CustomMappo11, but you'd have to make sure you have the actual mod's unique ID written out on any warps, unless you are also adding those through code.

static otter
#

do I have to rename the map to that as well?

latent mauve
#

your TMX file doesn't need to be renamed at all, since the only place it should be used is the FromFile, which only pulls from your mod folder.

static otter
#

so it will just rename the file when it gets added to the stardew Maps folder?

latent mauve
#

Yep, it'll 'load' the file using the Target name.

static otter
#

that's cool

#

It says the location doesn't exist when I try to warp to it

#

I'm positive i've used the right location name in the warp

#

For some reason it's not loading my map correctly

latent mauve
#

How did you define your Data/Locations entry?

static otter
#

wdym?

latent mauve
#

You have to make a Data/Locations entry as well as loading the TMX map file

static otter
#

didn't know about that

inner harbor
#

So I've added a custom wedding, it's set in a temp map on East Scarp's beach. When I play through to the wedding, this is the error message that I get: https://smapi.io/log/52033d577ec54311a4fb0c2c652a5370 and I know that the orange text isn't breaking anything, and the warps aren't actually broken - (None of these NPCs are in my farmhouse btw, I'm not married) so maybe it's just an error that its looking for pathing that way? @next plaza X posted in the Krobus server since I know Casey is also there and it might be a Spacecore thing.

ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 57 C# mods and 70 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

latent mauve
static otter
#

I've successfully edited the farm and greenhouse maps, this is new for me adding a new map

latent mauve
#

It's really easy to set up a basic location!

latent mauve
inner harbor
#

yeh I don't know what mod is doing that, except that it's not mine

#

so I've ignored it

latent mauve
#

SMAPI fixed maps loaded by this mod to prevent errors. See the log file for details.
Fixed broken map replacement: Content Patcher loaded 'Maps/CommunityCenter_Ruins' without a required tilesheet (id: indoors2, source: Maps\townInterior_2).

#

Yeah, it's whatever mod you have that's changing the Community Center

inner harbor
#

okay maybe it IS mine!

#

I can fix that

#

(I thought I already had)

#

(tilesheet is in there just the name id is wrong)

lime seal
#

I'm converting an old JA scarecrow mod to CP for personal use. I got through adding all the code and it loads in-game. I finally thought to ask: how do I know that it's actually working as a scarecrow? :o I remember in JA as long as the word scarecrow was in the name, the game would recognize it. Not sure if it's the same rule with CP-added new items

lucid iron
#

Need context tag

lucid iron
lime seal
#

thanks, I'll take a look! The vanilla data doesn't have the context tag, so that mod will be good to reference

brittle pasture
#

the game checks the tag or if the internal name has the string "arecrow"

#

the tag allows you to specify radius as well

lime seal
#

Ah ok, so if I want it to function like the standard vanilla scarecrow, do I need the context tag? :o I also don't know what the radius would need to be for that maruthinking

brittle pasture
#

yeah you don't need it

lime seal
#

thanks!

#

Data Layers confirmed it's doing the scarecrow coverage, btw!

inner harbor
latent mauve
#

TRACE shows it 🙂

inner harbor
#

ah cool I think I looked there once and got overwhelmed

sour sleet
#

I've written all of the marriage dialogue for my NPC and she defaults to saying the generic lines. Why is this SDVpufferwaaah

rigid musk
#

like every line is generic?

sour sleet
#

Yep, until I speak to her in her spouse room and it says it couldn't find spouseRoom_AnyaLilybrook or something

rigid musk
#

well

sour sleet
#

Couldn't find the marriage dialogue i mean

rigid musk
#

what's the internal name of your npc

#

and can you send the json with the marriage dialogue

sour sleet
#

AnyaLilybrook

#

I'd rather not as I'd like to keep it as private as possible for my expansion! I was hoping it was something simple lol

#

I did an Include for the marriage dialogue, but is that enough?

rigid musk
#

you can redact the dialogue if you want (just create a copy)

#

its mostly just to see how you did the code for it not the dialogue itself

lime seal
#

there's a good chance the issue is with the formatting. If you want to yeet the actual content of the dialog and put a placeholder like asdf or something, that's fine too - Lily beat me to it

rigid musk
#

hehe

lime seal
#

!json this is how to share it with a link

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.

rigid musk
#

I do remember I was having some sort of trouble with the marriage dialogue too... I don't remember what the fix was because I just gave up and slapped it in my content json so I didn't have to think about it

lime seal
#

another approach would be to look at another custom NPC that has marriage dialog, and compare line by line, to see where your formatting is different

sour sleet
rigid musk
#

Hmmm yeah it might be whatever issue I was having, let me go see what they told me to to do to fix it (that I did not, in fact, ever do)

inner harbor
rigid musk
#

Of course it was Aba who helped me /pos

sour sleet
sour sleet
inner harbor
#

sounds like you need the blank, yeh

sour sleet
#

I was loading the blank for the dialogue and that works great. I didn't know you had to do it for the marriage dialogue too haha

rigid musk
#

I actually might try to remove the marriage dialogue from my content.json again.. it does clutter stuff up in there

#

if it causes issues i can just pretend i never did that

inner harbor
#

I'm really curious about your expansion 8BitAlien, probably because you're secretive about it. Lol. Curiosity will kill this Kat.

rigid musk
#

I don't know how to be secretive about anything I make ngl

inner harbor
#

me neither

rigid musk
#

Every time I have an idea I'm like "HEY guys what do you think about this!!!!!!!!!"

ornate trellis
#

mood tbh

sour sleet
#

It's gonna be a long time til it's out haha, but I'm glad you're curious lol. Half of me wants to share stuff and the other is like "Nooo have it as a surprise"

rigid musk
#

Was anyone able to get the sleep sprites to work for their npc when they're a spouse by the way? I can't figure out why mine aren't working for him

#

he just kinda sits in the bed :L

sour sleet
#

Omg didn't even think about sleep sprites! There's another "to do"SDVpufferclueless

rigid musk
#

it's really only one sprite unless you wanna make it real fancy

inner harbor
#

like.... my mind goes "why are they being so secretive if it's a regular expansion" so I'm therefore thinking it's aliens (cos of your name) or based on some other franchise. It probably isn't, ofc. That's just the way my mind works.

rigid musk
#

aliens...

#

Make a whole space location

inner harbor
#

Me? I have a public roadmap in my Discord so I can keep an eye on what I need to do and what I've already done for the changelog for people to reference and get excited about.

sour sleet
#

I have already made an alien npc in the past haha

rigid musk
#

Central Station? More like ... uh.. Central Space Station haha... ha... pensiveclown

sour sleet
#

Ooo, are you doing an expansion too Kat?

rigid musk
#

Lemur made East Scarp so... yes ?

inner harbor
#

I'm remastering it, enlarging it, and adding a shedton more content

sour sleet
#

Ohh, I didn't know that! East Scarp is fun

rigid musk
#

And Jasper... (Jasper my beloved 1000/10 no notes)... and Juliet + Jessie.... and Mr.Ginger...

inner harbor
#

it's about to get funner bigger

rigid musk
sour sleet
#

I will look forward to it:)

rigid musk
#

You make amazing content Lemur you're one of the reasons I got into modding

rigid musk
#

Chu! Hi :D

lucid iron
#

That's why i keep showing ppl liminal objects

ornate trellis
#

man, im back to my "i really dont wanna do events" mood but I got 22+ to do for my mod and its like...the only thing left to do before the beta i wanna throw out is ready :I

inner harbor
#

I've merged in all my existing NPCs (except Mr, Ginger, he belongs on the Ranch) and am currently adding 5 new ones.

#

Maybe 6 if I'm persuaded to add Antoine.

rigid musk
rigid musk
#

melookingupatu <-

rigid musk
#

long bench...

rigid oriole
lucid iron
#

Sit 6 ppl

rigid musk
opaque field
#

I still have to rewrite some of Shane's Vanilla events and test out the Dance on the Beach one I just added because NPC movement kills me

rigid musk
#

and I'm adding another 5 in the new update because of course im going to be extra and add dates or whatever

ornate trellis
#

i have most events written out on what theyre about but actually doing the vents....oof

rigid musk
odd ginkgo
# rigid oriole literally the reason i put one of my projects on hold lol

That's my holdup too... I've got all the events scripted, but little visual bugs annoy the heck out of me and I'm like... gotta go back and make sure that fade is ok... gotta make sure that doesn't clip there... gotta add sounds effects... I've accepted me events will just be a little stiff lol

rigid musk
#

Same Void... same... I still have the notebook where I wrote down everything lmao

ornate trellis
#

i should beg ark to give me some of the awesome event juice

rigid oriole
#

honestly my problem is the story writing, not the actual "make the event script"

rigid musk
#

I still need to go back and actually fix part of the 13h event so the movement is smooth but i couldn't figure out what was wrong with my advanced move commands and i realllllyyy dont want to

opaque field
#

I also write all my initial event stuff on paper before feeding it to the VSC machine

rigid musk
#

To be fair I can do simple events really fast now ... I guess that's the benefit of doing over 20 of em

ornate trellis
#

havent even dared to touch advancedmove yet

opaque field
#

I struggle with pacing

rigid musk
#

I just dont like doing them contrary to what that may seem

opaque field
#

I used it once and Sam kept walking up and down through the WHOLE REST OF THE EVENT and part of me wanted to leave it cuz it makes him look so excited but the rest of me was like "nope back to basic movements we go"

ornate trellis
#

well but i hope some gonna try my beta once its ready so i get some feedback on it, including the events xD

rigid musk
#

hah if I have time I would do it

#

I've been watching your channel and I love the stuff you put in there

#

so very amazing

ornate trellis
inner harbor
odd ginkgo
inner harbor
#

Also, for the purposes of keeping things sensible on the Scarp side, the majority of the Jasper marriage content will be transferred into a second mod and packaged with the Jasper's chidlren Little NPCs mod

odd ginkgo
#

since I'll also have a boat and an event in Ginger Islabd

rigid musk
inner harbor
#

I don't want people to think that every NPC will have the same level of detail as I've put into Jasper (And then I can go Extra Extra with him and do a full-on RRRR event and content overload)

inner harbor
#

(I'd need to write the events)

rigid musk
#

WeLLL
You still make very good content and put a lot of effort into what you make so even if it's another person's character you will still show their story in a wonderful way

#

Does not change my answer >:]

odd ginkgo
rigid musk
#

In the next few days you say

sour sleet
inner harbor
#

I believe he's Hime art.

#

all the text files are in gdoc file so I'll need to figure out how to open them

odd ginkgo
# rigid musk ***In the next few days you say***

That's the goal 😭 all I have left is movie theater data and slight event tweaking, and figuring out why items aren't attaching to mail, and one visual bug that happens during Squidfest, and figuring out why the custom dialogue I made for East Scarp (Eli and Dylan) coral isn't working

#

which compared to everything else is really all the last checklist items

#

I bet I can get it done before the end of the weekend!

#

Although... building the nexus publication page is its own journey..

rigid musk
#

Oh god yeah it was a whole thing for me too so ... I believe in you though! I'm so excited cause it looks absolutely spectacular from the snippits ive seen

inner harbor
#

Was anyone here a part of Fern River? Back in... maybe 2020-2021?

#

I just found the files on my Shared Google Drive.

opaque field
#

I haven't even tackled thinking about mail yet. Though it would definitely make sense for Shane to send little grumpy notes after at least one of my events.....

#

I can't do anything simple for my first mod no it has to have new events and rewrite vanilla events and have conversation topics and new dialogue XD

rigid musk
#

So for anyone who has their ModId for their NPCs internal name, and said NPC can become a spouse, were you able to figure out how to do sleep sprites?

#

Because the sleep sprite animation is supposed to have the NPC name lowercased but I tried like every variation and it does not... work

calm nebula
#

Doesn't smapi have a lowercase token

whole raptor
lucid mulch
# calm nebula Hey

It's on my to-do list, as I'm wanting to do a full content patcher LSP, and will have runtime stardew state for extra validation and goodies

#

Someone did a static linter for events so will leave that alone, and id rather do it once I have access to pathos's extra metadata on the event argument stuff anyway

calm nebula
#

You do the static analysis, I'll do the in game analysis

lucid mulch
#

Correlating the json to the cp patch has been non trivial

#

I think I can at least correlate a given line of code as being in a specific content patcher patch now at least (as long as it is a singular target and the other thing that can be comma seperated)

#

And I'm not sure it would work once a cp migrator has had to do changes to it

rigid musk
lucid mulch
#

Fun fact, extra commas between patches in the changes[] made my logic very unhappy.

Fixed it now though

#

Only a few cases of it in my huge Modpack, but it did come from vmv and sve, and once those blew up other stuff had cascading failures

lucid iron
rigid musk
#

nuh uh

lime seal
#

I'm working on converting an old JA crops mod to CP for personal use. I thought I had the necessary patches, but when I tried to buy the seeds at the shop, I got an error saying the textures couldn't load because the asset doesn't exist. Any ideas on what went wrong in the code?
I'm wondering if it's this part of the Data/Shops patch, the fact the IDs don't match maruthinking

          "Id": "{{ModID}}_Coal_Root_Shop",
          "ItemId": "{{ModId}}_Coal_Root_Seeds",

Log: https://smapi.io/log/ba4e38625707447797525e8d2880aed3
Code: https://smapi.io/json/content-patcher/612dbd7bcc4948e2b6baa277a11c77bc

ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Pro, with 17 C# mods and 2 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

rigid oriole
#

did you load the coal root seeds texture?

#

It's saying that the asset namedMods/ParadigmNomad.FantasyCrops/Coal_Root_Seeds doesn't exist in the content pipeline

#

It looks like you're loading the coal root seed texture to the Mods/{{ModId}}/Objects asset but the texture is Mods/{{ModId}}/Coal_Root_Seeds in the object data. You want them to match

lucid mulch
#

(same with crops)

lime seal
#

Ok thanks! Let me try that now

sour sleet
#

My NPC isn't following their marriage schedule, they just stop at the entrance to the bus stop and don't move

#

Is it because they need to get the bus to their location maybe?

lime seal
#

next step, figure out why I can't plant them even though it's supposed to be the right season lol

#

does vanilla now prevent planting of crops that will get to harvest after the season change? :o

sour sleet
#

Hmm, can I see your json?

lime seal
rigid oriole
#

The key of the crop data needs to be the unqualified item id of the seed item

sour sleet
#

Beat me to it haha

lime seal
rigid oriole
#

yup

#

I have never made a crop for what it's worth but that's my interpretation of what the wiki says

lime seal
#

what is the "unqualified" part of that meant to mean, btw?

rigid oriole
#

oh my link is bad

#

go to the "item id" section 1.7

lime seal
#

bless, thank you!

rigid oriole
#

Effectively multiple items may share the same unqualified item id (if i recall, baked fish and the telephone!), but the qualified item id can separate the two items based on their category, since baked fish is an Object (O) and the telephone is either a big craftable (BC) or furniture (F)

lime seal
#

success mm_yay thanks all!

sour sleet
lime seal
#

I don't know anything about schedules (SDVpufferyoba) but have you shared your schedule code for folks to look at?

sour sleet
#

This is an example: "marriage_Mon": "610 8BitAlien.Lilybrook_Lilybrook 66 23 2/1100 8BitAlien.Lilybrook_EmHouse 15 26 0/2000 bed",

#

So she will walk out of the farmhouse and then appear at the entrance of the bus stop and then won't move at all

#

Getting to Lilybrook requires going on the bus so maybe that's causing a problem?

noble prairie
#

I have a simple question that I can't seem to find an answer/tutorial for on the wiki.

I just want to change the color/appearance of one of the railroad station. I tried replacing the relevant tile area of the spring_outdoorsTileSheet.es-ES.png with EditImage but it doesn't seem to have worked.

To make this happen, do I also need to change the map file? I guess I assumed that if I replaced the relevant tile reference, then it would replace it automatically when pulling it for the map file.

vernal crest
noble prairie
#

Okay, follow-up question. It looks like the repeating tile pattern for the roof doesn't match the more random nature of the decor I'd like to add to it. Is the only way to get around that to make some new tiles myself and then go in and change the map to pull the new tiles instead of the repeating pattern its pulling now?

inner harbor
#

yes hmm...

sour sleet
#

yep

inner harbor
#

so they're leaving but not coming home?

#

are you using any maps that edit the farm map or busstop?

sour sleet
#

They leave the house and then appear at the bus stop and then nothing. I don't, no

rancid musk
#

@ivory plume Hey there! Don't know if this is an appropriate time, but I have a feature request for the next game update, after thinking about a bit of feedback my weather mod, Cloudy Skies, has received.

I feel like, a lot of the time, when a content author wants something to happen in certain weather conditions, they care more about something like... is it raining? And not the specific weather being "Rain". As an example straight out of the base game, there are fish you can only catch in the rain with condition checks like: WEATHER Here Rain Storm GreenRain

To that end, I'd like to propose a new game state query that reacts to the various boolean flags on LocationWeather, so: isRaining, isSnowing, isLightning, isDebrisWeather, and isGreenRain. The fish condition above could be, as an example: WEATHER_FLAG Here Raining

I feel like this would make things a lot more convenient for doing custom things with weather, since other content can then just check for specific flags and they don't need to be aware of every modded weather condition. And, as it's a new query, you'll still be able to check for specific weather types by ID using the old query.

And while other mods can add queries to this purpose (Cloudy Skies does, in fact), that would still require content authors to know about these other mods that add extra queries, and to depend on them. I feel like this would be a good fit for the base game.

#

(On that same note, I'd like an equivalent token for Content Patcher, but I can do a PR for that. The game itself, not so much :D)

lucid mulch
#

(this is actually a fun behavioural difference with the GSQ Weather which checks exactly, and the older forms of querying weather which was characteristic driven, as the Weather precondition and Data/Fish weather are both "rainy", "sunny", or exact match)

rancid musk
#

Yeah, that too.

lucid mulch
#

this was also a source of bugs during the modding alpha, where you couldn't fish the legend during a thunderstorm as it used the condition and not data/fish constraints
the fix rather than making the GSQ more flexible was adding Storm in its query

brave fable
#

what I'm hearing is you want weather context tags

rancid musk
#

Effectively, yeah.

brave fable
#

weather_rain westher_bakery weather_brown

rancid musk
#

Though it'd be annoying to add more to the game with how the game is coded, so just exposing the existing ones to GSQ/CP would be preferred.

lucid mulch
#

Also fun Content Patcher history, the first time content patcher did a data mutation as part of a version migration was adding Wind as a possible value the Weather token could spit out, previously in 1.5 and lower, if it was windy it was still the Sun weather state

#

if you have a <1.6 format pack and have a when condition on Weather checking if its Sun it will become Sun, Wind

rancid musk
lucid iron
#

Weather tags sound fun

#

Lot of times people just wanna know if it's dark out

#

That said I wonder if u can just do a crime and register over "WEATHER"

#

It seems unlikely that a player would want to install 2 different weather frameworks at once

tiny zealot
#

ooh, a query that takes the current season's TrulyDarkTime or whatever it's called into account would be neat

lucid mulch
#

can't register duplicates and vanilla registers first, can harmony WEATHER's delgate tho

lucid iron
#

Oh i thought u can reflect into the dict o GSQs

#

Choose your preferred crime i guess

brave fable
lucid iron
#

Maybe i should add those

#

To go with the map props that changed darken time

brave fable
#

those are usually paired with hardcoded behaviours that update the specific parts when it's dark/dusk though、you'd need an ontimechanged frequency patch for a CP mod to do something similar

#

unless you're fine with changes not propagated until you reenter an area or somesuch

lucid iron
#

Dokkan i have lights that support GSQ too

brave fable
#

i might have that on my todo lol

#

mmmm conditional lights and dangling swingly sprites

runic ferry
#

Hey guys. Need a little help here. Through "JSON validator" on SMAPI, I got this:

rancid musk
#

Please just link to your uploaded JSON instead of sending tiny cropped screenshots.

runic ferry
#

Oh, ok

#

idk exactly what should I do on the content.json

rancid musk
#

Just a guess but currently lines 836/837 are }, { while they should probably be } } ] }, { and then that might screw up indentation / brackets elsewhere in the file

runic ferry
#

Oh, I'll try it out! Thank you so much my friend 🙂

ivory plume
lucid iron
#

vanilla homfs another framework YuniHappy

ivory plume
#

But sure, I can look into adding game state queries like IS_RAINING <location>.

runic ferry
lucid mulch
#

you have your start (and end) multi-line comment in quotation marks, remove them and should be fine?

sour sleet
#

Any common reasons why an event might not be triggering?

runic ferry
round timber
rigid oriole
#

the event doesn't trigger because (a) it isn't loaded (b) the preconditions aren't met (c) you've already seen it

sour sleet
rigid oriole
#

an include is fine if the file you include edits the event via an editdata on a loaded asset, yeah

inner harbor
#

Is it for a custom map?

sour sleet
#

Yep it's a custom map

inner harbor
#

Cosnyou also gotta load a blank

sour sleet
#

Ohhh not this again lol

#

Haha thanks

lucid mulch
#

case insensitive paths are going to be the death of me

sour sleet
#

Would it just be loaded to Data/Events?

lucid mulch
#

Data/Events/{LocationName}

round timber
#

^

sour sleet
#

Thank you

runic ferry
lucid mulch
#

when you removed the quotes around the start comment, you deleted the end comments outright (previously on L1320 before Sprinkler Compatible Sand DMT, and surrounding its When block)
the error is that due to the comment never closing, it escaped and now the document and changes array aren't closed

rigid musk
#

How d'you make a fish catchable only once?

brittle pasture
rigid musk
#

O: very nice thank you

#

I love when I look for these things and can't find it, and then .1 seconds after asking I go to another page and find the literal thing I just asked here

sour sleet
#

I don't understand the move part of the event script. The farmer isn't moving where I want and they continue to walk into the doorway. Is this formatted correctly? move farmer 0 3 0/move farmer 3 4 3/

#

I want them to go up 3 tiles and face left, and then go left 3 tiles, up 4 tiles and then end up facing left

#

They're just walking into a doorway lol

rigid musk
#

yeah that's pretty accurate I think it depends on if there's something blocking the doorway or something

pine elbow
#

me starting to type as if I know fuck all about event coding

sour sleet
#

I wanted them to move away from the doorway and into the house but they're not even going in the right direction

rigid musk
#

oh actually you might need to make that negative

#

the 0 -3 0

#

(and maybe the other ones) the tiles are (in my mind anyways) weird, so usually when you go up you're going in the "negative" direction

sour sleet
#

Ohh that would be why they're walking down instead of up

#

Will try thatSDVpuffersquee

lucid mulch
#

(0,0) is the top left corner* (there is negative coordinate space too but we don't talk about that)

sour sleet
#

I know that, but in this case, it's moving the farmer along by the amount

rigid musk
#

The 0,0 thing is just to note how the direction might go .. if that makes any sense

#

Honestly I just stare at my map in Tiled and write a note about which direction they're going in lmao

sour sleet
#

Haha, I open up my map in Tiled and count the tiles lol

opaque field
#

So many notes. Also. I have to keep editing mine cuz I’m modding to account for map changes in stardew valley expanded. The Saloon is NOT the same.

#

Shane just walked through a wall in his rewritten 4 heart event.

lucid mulch
#

in like a few months I might be able to help with that, but I'd rather wait for what pathos is cooking first before working on tooling for events

tiny zealot
#

curious to see what else might make it into .16 re:events

lucid mulch
#

for my needs I just need the [EventArguments] metadata

rigid musk
#

my favorite fish...

lucid iron
median forum
#

beautiful

rigid musk
#

It turns out I literally just forgot to save my content json where I loaded the image...
anyways here he is

lucid mulch
#

Ayy it works

lucid iron
#

why am i being audited

lucid mulch
#

you were one of like 2 mods in my entire folder that actually used LocalTokens

#

my previous work could only run at the TokenManager level and so couldnt' see local tokens at all, after this rework to actually correlate the json with runtime patches I can now map local token state onto the patch

lucid iron
#

exciting DokkanStare

lucid mulch
#

I also can show the diagnostic state of the patch as well like if it was applied, ready, etc

lucid iron
#

but how does this whole lsp/debugger work

#

as a user do i have to setup stuff to start smapi in the back first

lucid mulch
#

install my vscode extension, install my debugger mod, when the game is running start debugging in vscode

#

going to be a bit more fun in LSP land as it would much prefer the LSP to be running the entire time, so will need to massage the extension side a bit more to handle the connect and disconnect

#

but this is all DAP currently

brittle pasture
lucid mulch
#

(atra's special orders)

lucid iron
#

audited...

brittle pasture
#

power part 2
(inb4 1.6.16 adds their own icons)

sour sleet
#

Is there a way of getting the farmer to open a door during an event? At the moment, they just walk through it

lucid iron
#

i think u should just start the cutscene behind the door and save trouble

#

thats what vanilla does for things like abigail game event

brittle pasture
#

doAction apparently works for triggering doors

#

so if the door is closed and do action on the tile it should open

sour sleet
#

Thank you. I will try doAction and if it doesn't work, I will take Chu's suggestionSDVpuffersquee

upbeat mango
#

can someone explain to meSDVconcernedCA how to put expressions?

vernal crest
upbeat mango
#

yes

#

i'm suffering from my stupidity

vernal crest
#

Are you trying to arrange them on the portrait sheet or use them in dialogue?

upbeat mango
#

thank you

rigid musk
#

you can be like me and NOT arrange them by the default expressions... (i probably should have but its far too late for that now lmao)

vernal crest
#

Oh no Lily why? Did you not know? /sympathetic

rigid musk
#

I didn't realize yeah :L

#

And then I was like, already using them in dialogue when I realized what things like $s and stuff were for

vernal crest
#

Did you have to edit all the default strings to account for it?

rigid musk
#

aaaaaaaand by then it was far far too late for me to change it, and now it is beyond far

#

I did

#

Besides a lot of them felt like they needed a more character adjacent touch anyways so ... c'est la vie I suppose

spare sun
inland cedar
#
    "/pause 500/speak Haley \"$4 string1\"" +
    "/speak Haley \"$y 'Question?_response1._reaction1_response2_reaction2'\"" +
    "/pause 500/end";

anyone know how can I set the portrait for the reaction?

opaque field
#

I keep getting " Ignored The Wolf > Generic Dialogue: the When field is invalid: 'Generic Dialogue' can't be used as a token because that token could not be found." how do I fix that?

#

I looked on the wiki but didn't find anything that exactly matched what I was looking for

#

nvm I think I fixed it and it's embarrassing af

vernal crest
#

Typo?

median forum
#

we've all done that

glossy cargo
#

Is there a way to detect, from C#, if a user has taken a screenshot?

#

I have this, it's probably good enough? It won't catch special things like an already-running snipping tool be used, but I think that would be overengineering to try to detect that

public static bool DidPlayerJustScreenshot(bool ignoreNonMouseHeldInput = false)
{
    var keyboard = Game1.input.GetKeyboardState();
    var pressedKeys = keyboard.GetPressedKeys(); 
    var hasPressedScreenshotKey = pressedKeys.Contains(Keys.F12) || pressedKeys.Contains(Keys.PrintScreen) || pressedKeys.Contains(Keys.Print);
    return hasPressedScreenshotKey;
}
lucid mulch
#

Detecting ingame screenshots should be easy

#

Detecting os or third party ones is a fool's errand, and not entirely sure why you even would want to

proud wyvern
lucid mulch
#

Does stardew's event loop even pick up keyboard input when tabbed out

#

And if the goal is to have stardew change what's rendering to react to the screenshot it would probably already be too late

steel plaza
ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home Single Language, with 13 C# mods and 0 content packs.

steel plaza
glossy cargo
#

I've never heard of win-shift-s in my life lol

#

I'm discovering it right now

#

I can add it

glossy cargo
#

it's for a community center bundle

lucid mulch
#

Anything that does a region based capture including win+shift+s, ctrl+prntscrn and others you have no way of knowing if stardew was even in the screenshot

brittle pasture
#

or even just fancy keybinds

#

I can set up my WM to intercept all keybinds of a certain type and prevents them from being seen by the game

#

also what about controller/steam deck players

#

does XNA even detect the "Steam" button or whatever it is

glossy cargo
#

I have no idea what would happen to a controller player. Presumably they can reach over to their keyboard for one bundle

#

you have no way of knowing if stardew was even in the screenshot
I wouldn't care about that. I don't care about what is in the screenshot, or even if the screenshot was saved vs discarded. I only care if they took one

#

or, even, if they attempted to take one

#

I added a check for the 3 keys win-shift-s and hopefully they register in-game for at least one frame before focus is lost and nothing registers anymore. If not, i'm fine with users having to figure out where the print screen or F12 keys are

#

if nothing else, maybe it'll help with bug reports if I accidentally teach my players that screenshots exist LUL

brittle pasture
#

I'm not gonna have a keyboard with my steam deck, and its on screen keyboard does not have function keys nor prtscr

glossy cargo
#

from what I heard it's a pain, if even possible, to run my mod on steam deck in the first place, as it does have special requirements in the first place

#

Plus, if the steam deck does not offer a way to detect a screenshot-key-equivalent, then it,s either I saw "rip steamdecks" or I say "rip my entire feature". I'd rather have a feature that is accessible to not all players, than no feature at all

#

maybe I'll add a warning about it or something, so they dont turn it on by accident

brittle pasture
#

well, it's your idea, and if it works with the in game screenshot button then it's probably fine

glossy cargo
#

the what now

brittle pasture
glossy cargo
#

oh that one is no concern

#

You can't go there while looking at a bundle

#

the menus are mutually exclusive

#

so this button, unless it has a hotkey for it that I didn't find, does not matter. It is literally unusable for my purpose

glossy cargo
brittle pasture
#

in that case, do what you want I suppose. I just wanted to advise against a functionality that's pretty non-straightforward in terms of compatibility with, not even non-standard just non-majority setups

glossy cargo
#

Yeah that's valid and appreciated as a warning

#

but in the absence of a good alternative, I'm not willing to kill the feature for it Sadge

fossil osprey
#

What are you trying to do with such feature?

glossy cargo
#

I'm making special bundles, for a setting called "Meme Bundles", and they all represent some sort of joke, trolling, gimmick, etc

#

This specific one is the "NFT Bundle". And to complete it, you must take a screenshot while the bundle screen is open

#

the joke being, of course, that NFTs can get screenshotted, which is a common meme counterargument against them

fossil osprey
#

Oh, alright, I thought you were on the contrary trying to prevent screenshots x)

glossy cargo
fossil osprey
#

That's fun!

glossy cargo
fossil osprey
#

But it's a fun idea, curious to see where you'll go with it ^^

glossy cargo
#

I have about 70 bundle ideas so far LUL

fossil osprey
#

Oh wow that's a lot :o

glossy cargo
#

about 3/4th of them are just a joke through what items they require, so no special code needed

#

And then I got about 20 that need special handling, including this one, so I'm coding that up right now

#

If you're interested, here are all the names of the ones on my list so far

trim sand
#

"Celeste Bundle" does that require strawberries?arbH

steel plaza
#

anybody got an ide as to why "using StardewValley.Buildings" is not working for me in VSCode 2022

trim sand
#

oh no. thats horrid.

glossy cargo
#

it's the exact amounts of these 3 items that you can find in the entirety of Celeste

#

Meme Bundles are not created with balance in mind. Some are trivially easy, some are game-breakingly hard (this isn't even one of the hard ones). The only factor that goes into their design is, "is it funny?"

#

I'll explicitly warn players about this when they select the setting

#

and I'll hope they ignore the warning so I can get joy by watching their pain EvilKermit elmofire

trim sand
#

no moonberry refrence falline
also fair. still thats just a huge time sink between. oh i guess this is for the randomizer so its possibly less bad strawberry access was my concern. and totally not me bein used to tea sapling strawberry bushes that you get 1 harvest from if planted on the day of the egg festival.

brittle pasture
#

is there a bundle for snail honey and carp wine

trim sand
#

snail... honey?
wut

glossy cargo
#

In Archipelago you can repeat seasons, so growing repeatable crops is a lot easier

trim sand
#

woe upon ye

brittle pasture
#

truffle juice honorable mention

trim sand
#

anything but the truffle juice

glossy cargo
#

I see. No, within reason, I'm not looking to create new items (or, in this case, illegal flavors for existing items), as that's a whole other can of worms

#

Archipelago has gotten away without ever creating an item and I would love to keep it that way forever

brittle pasture
#

very well. one more bad idea bundle before I slep: bundle for items that happen to look like poo
(clay, mudstone, truffles)

glossy cargo
#

lmao

#

okay that's good

trim sand
#

"droppings bundle"

glossy cargo
#

artifact spot, twig, weeds, stuff like that

whole raptor
#

Is the wedding event in vanilla bugged/cut now? I remember seeing some mods to add the missing Lines for Lewis and was wondering what that was about SDVpufferthinkblob

drowsy pewter
#

Does anyone know what sheet the mannequins are on?

trim sand
steel plaza
#

can i just make use of ContentPatcher to render the building, while using C# to do the behavior of the creature living there? cause I don't know what to do to make the building able to be built

whole raptor
#

Depending on what the "creature" does, you could do both with CP

median forum
drowsy pewter
#

I'm thinking about the furniture mannequins

drowsy pewter
median forum
#

ah, sorry. i think i see them in tilesheets

drowsy pewter
#

There we go! Thank you!

#

are they just on their own image? Thats probably why

#

I kept looking at craftable and furniture sheets

median forum
#

yeah, mannequin_furniture.png and mannequins.png

#

i looked at every sheet in the maps folder before i thought to look in tilesheets lmao

drowsy pewter
#

We both had blinders on haha

median forum
#

i'm trying to figure out how to make a spouse room rn so i definitely had my focus on the files in maps

calm nebula
hard fern
steel plaza
hard fern
#

the mannequins get a little quirky at night

versed wyvern
#

Apparently there's an easter egg where if you repeatedly rotate them they may jumpscare you shockedpeko

lucid mulch
#

they do a lot of cursed things

whole raptor
whole raptor
#

Does putting a ? after the NPC name in event actor setting makes it dependent on if the mod is installed? SDVpufferthinkblob
RodneyOBrien? -100 -100 0
I noticed it being used in S&S

steel plaza
lucid mulch
#

that looks like same collision, but different draw layers

steel plaza
#

wdym? and how would i fix it?

blissful panther
#

Yeah, it looks like you just have these tiles on the Front or higher layer.

Edit: Actually, maybe just Buildings or higher. The solution should be to just put the tiles that should be the floor on the Back layer, and the interior wall (with the workbench, etc.) on the Buildings layer.

whole raptor
#

Wait... how do stumps spawn in vanilla? Is it a map thing? Cause when I added a custom woods map on an existing save the stumps where not there, but on a new save they showed up SDVpufferthinkblob

hallow prism
#

does someone remember/know what happens if a npc has a recipe they send by mail but you can obtain it another way?

#

i don't remember if the maki rolls are in this case in vanilla (or another case in vanilla)

hallow prism
whole raptor
#

Oooh, right, I always forget about map properties, thanks!

mystic sparrow
#

Hey I'm having a bug that's kind of confusing me. Apparently when you give my custom npc a wilted bouquet before marrying them at the ceremony, they will divorce you as usual but become a squatter or something. I'm not sure if this is an issue with my mod or the game itself?

orchid glade
#

That's perplexing. Do you mean, after getting engaged with the mermaid pendant, but before the wedding, you use the wilted bouquet to break up with them, but they still move in?

orchid glade
#

That might make sense because the dating mechanism is separate from the marriage mechanism as far as I know.

mystic sparrow
#

yeah thats what someone reported to me... they were engaged but used the wilted bouquet before the marriage ceremony happend

orchid glade
#

So you would have to divorce them by requesting a divorce at the Mayor's house

#

Wilted bouquet is not a divorce item, it only stops dating.

mystic sparrow
#

ah good thats what i told them to do

#

my npc is just squatting in their house lol