#making-mods-general

1 messages · Page 243 of 1

tidal stone
#

if i want to add in a furniture item and not replace anything would i use the field "Create on load"

lucid iron
#

you would EditData on the furniture asset and add new key

#

{{ModId}}_PinkCauldron or whatever

tidal stone
#

aaah ok

lucid iron
#

but yea im not 100% against having AT if thats how you prefer to decorate

#

its just that we arent limited in adding furniture anymore

tidal stone
#

trueeee

#

i actually do prefer CP I just thought others prefered AT

#

can i have all my furniture on the same sheet like a tilesheet or does it have to be seperated

lucid iron
#

same sheet is fine

tidal stone
#

epic

lucid iron
#

u need to put in the right tilesheet size and sprite index

tidal stone
#

i basically need to make the canvas be a total of number sizing 16 squares right

cunning kiln
#

It turns out you can drive off into the void at some of the shortcut walls. There's only one bug report, so I'm guessing most people aren't trying to drive into the void SDVpuffersquee

lucid iron
#

what numbers a spiral mine again

ornate trellis
#

man, i am just realizing I understood it wrong on how I can put my furniture on the tilesheet thonking

tidal stone
#

is there amax tilesheet size

cunning kiln
#

(Sorry for the ping - I wish it defaulted off instead of on.)

lucid iron
#

i think this is a soft max tho, ppl with better computers can prob go higher

dusk mulch
#

!json

ocean sailBOT
#

JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.

If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.

When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.

tidal stone
lucid iron
brittle ledge
#

dang, chu got that fixed faster than I could suggest how to fix it SBVLmaoDog

lucid iron
#

well jane asked earlier

#

so i was doin it already

cunning kiln
#

Are you sure you don't want to take over the mod? I really feel that someone who actually wants to play it should be in charge of it.

lucid iron
#

it is just case of drawing stuff on Front when it should go on Buildings

brittle ledge
#

for future reference, Jane: you can use this mod to see where the gaps in the walls are. From there you just have to put a tile on Buildings to block it. https://www.nexusmods.com/stardewvalley/mods/1691

Nexus Mods :: Stardew Valley

Overlay the world with visual data like bee/Junimo/scarecrow/sprinkler coverage, hidden paths and warps, and more.

lucid iron
#

i have 18 mods which is already too many

#

but also i dont think this would ever need more fix

cunning kiln
#

You are a lifesaver. Thank you!

lucid iron
#

if someone else edit the 19.tmx then well, not supported™️

sour sleet
#

I'm trying to do a map patch and it works fine for Vanilla, but the SVE patch isn't working. Can anyone take a look?

lucid iron
#

are u doin it after SVE

#

and whats the error exact;y

sour sleet
#

I'm trying to make it compatible with SVE and the error mentions directory climbing which I do not have. I'm trying to patch the Town

sour sleet
lucid iron
#

Do you have an optional dependency on SVE

lucid iron
sour sleet
lucid iron
#

Yeah

#

Still I'm 95% sure it is file nonsense in your case, happens a lot with map making

#

Forgor to save or forgor to copy etc

reef kiln
#

Follow up question from earlier, I was away and want to know the answer. Did we ever figure out how to use the other set of arms for the sitting animation?

lucid iron
#

If you really can't find then you will have to send the tmx here for everyone else to look

sour sleet
#

I don’t have an optional dependency - do I need one? Although the error was about directory climbing

uncut viper
#

send your log and your tmx

sour sleet
ocean sailBOT
#

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

sour sleet
uncut viper
#

this log isnt complaining about one of your maps

reef kiln
#

Did you copy and paste title property from a different map (tmx). I get that error when I copy from one tmx to another.

uncut viper
#

did you make an edit to the tmx inside SVEs folder in order to create your map patch?

sour sleet
#

I copied the Town.tmx file from SVE and put into my Mod folder, then I edited it

candid stratus
#

Are there docs on how to make a custom menu? Presumably C#

uncut viper
#

well, its complaining about a tilesheet in one of SVEs files, so presumably an accidental edit/save was done to it, as a fresh download of SVE has no tilesheet climbing. delete your SVE folder and reinstall it

reef kiln
#

This happened to me making a map and it was because the little white boxes (not sure the proper name for them) on the "path" layer that do special things are looking for the sve directory but you removed the map from that directory. So it is thinking you have title sheet climbing. Hope I explained that well. It felt like word salad actually.

gaunt orbit
sour sleet
gaunt orbit
#

that said the StardewUI framework does make complex menus easier to work with

lucid iron
#

it depends on what kind of menu do u want

candid stratus
#

I want to be able to enter and check for a code

lucid iron
#

since menu never go into save its perfectly safe to subclass a game menu to do what you want

candid stratus
#

Which I may be able to do through chat

gaunt orbit
#

the game has a resusable menu for that

#

the same one that's used for naming pets/animals

#

you still need c# but you don't need a custom menu

candid stratus
#

Yeah I figured I could use that

lucid iron
#

just gotta assign to activeClickableMenu and u good

gaunt orbit
lucid iron
#

what is the entered name for tho

candid stratus
#

1 year of C#, 6 years of C, some delphi, visual basic, 5 years of java, 8 years of python, assembly, matlab, some html rubbish

#

I write machine software for a living

gaunt orbit
#

oh then you'll be fine

#

have you decompiled the game yet?

reef kiln
# sour sleet Yep I understand you - I just don't know what to do to fix it lol

I fixed it by making a "new box", manually typing all the properties into it, then deleting old box. so the new box knew the correct directory. Not sure, if that was the correct way to fix it. It seemed like there should have been a better method, maybe someone else knows a better way. Because if you have alot of those boxes that is alot of manual typing.

candid stratus
#

I have, but it was too much to properly sift through it yet

#

We don't usually "hook onto" existing applications for what I do because of risks, so this kinda thing is fairly new to me though

sour sleet
gaunt orbit
reef kiln
#

@hard fern did you ever figure out how to use the other set of hands? I am just wondering the answer?

candid stratus
#

Ohhh okay I get the name of the class now

#

I'm stupid

lucid iron
#

theres not really point in knowing whole code base

#

ctrl+f for relevant sounding things until u find Dokkan

candid stratus
#

I first always look for means that wont require me making derived classes of the base code though :p

#

There may have been a CP way to do it so good to check first

lucid iron
#

oh its fairly dangerous to subclass things in sdv kyuuchan_run

#

you need to make sure you are not subclassing anything that will be serialized

candid stratus
#

I'm aware, not to mention there'll be some roadblocks

lucid iron
tiny zealot
#

yeah if something gets serialized to the save file it blows up the game when the serializer encounters an unknown class

candid stratus
#

even if you implement serialisable interface?

gaunt orbit
#

yes

candid stratus
#

damn

lucid iron
#

the general way rn is to use a feature from spacecore

gaunt orbit
lucid iron
#

but 90% the time i just go

#

postfixing <the base class> and checking is fineeee

gaunt orbit
#

usually subclassing isn't needed though

tiny zealot
#

depending on the thing, you can get away with erasing it just before save and recreating it when the save loads

gaunt orbit
#

yeah

#

I figured out a thing with locations that replaces them with vanilla locations while serializing

lucid iron
#

oh button was ask about that

#

for museum framework

calm nebula
#

You also risk someone else putting an unexpected class in your locatio

gaunt orbit
#

let me dig up the transpiler I wrote

calm nebula
#

Tbh just use spacecore

gaunt orbit
sour sleet
#

Is it possible to have a custom shop that sells random food items rather than set ones? I can't seem to find anything on the wiki

calm nebula
tiny zealot
lucid iron
#

yep item query

candid stratus
#

I know way too little about stardew's saving mechanics to make sense of any of this hahaha

gaunt orbit
lucid iron
#

then u can just proceed with "dont do it" for now

lucid iron
sour sleet
lucid iron
#

do a PerItemCondition then

sour sleet
#

Can you explain?

lucid iron
#

So ITEM_CATEGORY Target -7 checks that an item is category -7 cooking

dusk mulch
#

i think i am ready to get some beta testers for my mod

sour sleet
lucid iron
#

you can then have a shop item like this

{
  "Id": "RandomCooking",
  "ItemId": "RANDOM_ITEMS (O)",
  "PerItemCondition": "ITEM_CATEGORY Target -7"
}
sour sleet
#

Oh! That makes sense

lucid iron
sour sleet
#

Thank you SDVpufferthumbsup

lucid iron
#

might need the @requirePrice thing too bolbthinking

#

not super sure about that but try it out

sour sleet
#

Oh, to set the price as vanilla?

lucid iron
#

to make sure you are grabbing a cooking item that has actual valid price

sour sleet
#

Right ok, I shall try that now

halcyon prawn
#

Hiiiii

#

Hey, I'm starting my mod but I'm not sure which program to use. Where do I find it?

lucid iron
#

what kind of mod are you making

halcyon prawn
#

It's like a content pack with more characters and new fishes

lucid iron
#

!json

ocean sailBOT
#

JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.

If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.

When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.

lucid iron
#

if it's a content patcher pack, use one of the json editors

halcyon prawn
#

Ohh thanks you

lucid iron
#

!cp

ocean sailBOT
lucid iron
#

here be docs

halcyon prawn
#

I'm not specially good at coding, unlike my friendo Who is the one Who codes the mod

lucid iron
#

its a learning curve but i believe in you and friendo SDVpufferthumbsup

reef kiln
halcyon prawn
reef kiln
#

Does someone happen to know how to use the hands circled in blue and not the ones in crossed out in white

lucid iron
#

can you remind me what the actual bug you are try to fix

reef kiln
#

It is the sitting animation and earlier we found that using it in events it automatically uses the one in white. Which is holding reins. So the character is holding reins when sitting in events (even if not on a horse) the hands in blue are the one that are not holding reins and the one the game uses for sitting when not on a horse.

#

We could not figure out how to tell the game to use the other hands. I had to go so I never found out what the answer was, if it was found.

sour sleet
#

Hmm, my custom shop isn't appearing when I'm pressing A. I've added TileData

reef kiln
#

What actually happens? Nothing?

sour sleet
#

This can be done with CP right? And yea, nothing appears

#

For the TileData, I put Action: {{ModId}}_CustomShop. Is this right?

reef kiln
lucid iron
#

you need OpenShop

#

[[Modding:Maps]]

hard fern
#

Since before, you couldn't even sit on chairs

reef kiln
#

OK, at least I know. It has been bother me since I had to go 8 hrs ago. I hated not knowing the answer.

hard fern
#

Sorry i took a nap

sour sleet
#

Thanks both! Also, is it possible to add a portrait as a vendor?

reef kiln
#

I left too, so it is all good.

lucid iron
#

yea

#

you can have a portrait without npc by populating the owner data with one

reef kiln
sour sleet
reef kiln
#

I left mine very simple.

sour sleet
#

Sorry, this shop stuff is all new to me

lucid iron
#

this is part of the Data/Shops edit

sour sleet
lucid iron
#

im psure WAG has a bunch if u want example

reef kiln
# sour sleet Yours is really good Frog, great utilisation of the tunnel

The idea was not mine. But the original author left stardew modding and said people are free to update. So I made it agian from scratch. I eventually want to make it a real npc. But have not had the motivation to tackle that yet. The first step would be moving out of the tunnel as the tunnel does not allow npc path finding.

reef kiln
#

Hope that helps

sour sleet
#

Thanks again Frog SDVpufferheart

reef kiln
#

Np

sour sleet
ocean sailBOT
#

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

brave fable
#

invalid tile gid errors 🔥SDVdemetriums

sour sleet
#

Changing the TileData has caused this error. Is this correct?

brave fable
#

make a backup copy of your TMX file, then try embedding any TSX tilesets into your map, save, and try again

sour sleet
#

But it was working fine before I changed the TileData

brave fable
#

the tiledata is irrelevant

uncut viper
#

did you have the tilesheets present when you changed the tiledata

brave fable
#

coincidental at best

sour sleet
#

Yea Button

#

Oh wait no

uncut viper
#

the only two ways i know of having the invalid GID error appear is by either making a change without having all the tilesheets present, or using a tilesheet that no longer exists

#

never save a map without the tilesheets, even if you dont actually change anything about the tilesheets

sour sleet
#

Thank you, I think you've got it. Will redo the TileData with the tilesheets present

uncut viper
#

you may have to like, delete the tiledata, save (with the tilesheets ofc), and then re-add it to get the save to stick

#

(really any minor change that makes it detect that something is Different and needs to be saved, to get it to recalculate gids)

sour sleet
#

My shop now has a cursor over it but nothing is happening when clicked on aaaaa

reef kiln
#

That means it is detecting your tile data, but not finding the shop when you click. (Or was what was wrong for me) I had that too. Make sure the tiledata and shop data match.

sour sleet
#

Just checked and the names match. Is there another step I've missed out?

reef kiln
#

Hmm, can you upload the json. And take a screen shot of the tiled data. I am really not sure what else it could be off the top of my head.

uncut viper
#

no tokens in Tiled

reef kiln
#

You may need to type out the mod name and not use the token

#

Oh button beat me to it.

sour sleet
#

Ohhhh

uncut viper
#

(i should have noticed earlier but i didnt even think about it tbh, sorry!)

sour sleet
#

Not a problem, just glad it's solved now lmao

uncut viper
#

(too focused on the gid error)

reef kiln
#

They can leave the token in the json right. Just need to type it out I tiled? Or do they have to type it out in both places?

uncut viper
#

assumiung its a content patcher json, sure

#

content patcher will replace tokens in jsons it reads

#

content patcher doesnt open a tmx

sour sleet
#

I thought it was good practice to use the token. Didn't know Tiled didn't read them

lucid iron
#

if you want to use token you can use editmap

uncut viper
#

Tiled has no way of knowing them bc tokens are just a Content Patcher thing

#

CP made them up

reef kiln
#

So in tiled just replace {{modid}} with whatever you used in your manifest as your ID. Just in the tiled though, leave the .json as is. It should work.

reef kiln
uncut viper
#

its not really an advantage or a disadvantage outside of being able to use tokens

#

its like half of what EditMap is for

lucid iron
#

if you have a really small edit then use this to avoid having a tmx

#

but sadly its not applicable for me in this mod since i also needed animations

#

as soon as u need either anim or new tilesheet then u need a tmx so

tidal stone
#

do you think i should include the base color for the cauldron in me mod

#

actually nvm ill include it in case someone wants to use it lmao

sour sleet
#

My shop has no inventory SDVpufferwaaah

reef kiln
sour sleet
#

I know right lmao SDVkrobusgiggle

#

Guessing the context tag I've used isn't working

#

I think I will come back to this tomorrow

reef kiln
#

I am pretty sure -7 is cooking.

sour sleet
#

Just realised the dialogue isn't there either

reef kiln
#

I wonder if you need need to type out the context tag rather then use the number. Like category_cooking

brittle pasture
#

you can use either, there's a GSQ for both

#

if you need help feel free to post what you have

tidal stone
#

ok i fina,lly got everything on a tilesheet now i just gotta hope i spaced it all right

#

omg

#

i found a grid on krita i can customize to be 16 tiles

gentle rose
#

@dusk mulch just a note on your announcement, if you're struggling to get beta testers, it may be because it very much comes off as an unprovoked threat? it's okay to say "this is a closed beta and you are asked not to release any details until we/I release the mod" but immediately starting off in this relatively hostile way in a post where you're effectively asking for help may be putting people off.

Also, you need to include more of a reason for why they should want to play it - what is your mod about?

lucid iron
#

No test only ship

gentle rose
#

labelling it as a "job" with responsibilities may also be off-putting tbh, remember that beta testers are people who are doing you a favour in exchange for playing your mod early, not your employees

lucid iron
#

I would love to say no maint either updating anything makes me want to perish

calm nebula
dusk mulch
calm nebula
#

No? Well. Keep it that way

brittle pasture
gentle rose
lucid iron
#

I dunno what the exact number is gonna be but sooner or later i will hit max number of mods that u can reasonably keep updating blobcatgooglyblep

rigid oriole
#

The urge to make a bunch of small mods is so high tho

calm nebula
#

Some designers ask for stupid shit like "you must take a photo of your finished object and put it on Instagram"

lucid iron
#

Mood

rigid oriole
#

Like it's just another little project....

tidal stone
#

i like making stuff so i imagine eventually ill ahve a graph of mods to update on google docs or w/e

gentle rose
lucid iron
gentle rose
calm nebula
#

No idea how Pathos does it

rigid oriole
calm nebula
#

Anyways

#

Night night

lucid iron
#

Pathos is a Large Modding Model

tidal stone
#

night quantum

gentle rose
#

night atra!

sour sleet
#

Night!

reef kiln
rigid oriole
#

Pathos is that one 10x developer they talk about on linkedin /lh

brittle pasture
lucid iron
uncut viper
#

mods pathos is an outlier adn should not have been counted

lucid iron
#

It's night

gentle rose
brittle pasture
#

it's night, fuck
I tried "bed" "sleep" "zzz"

lucid iron
#

I agree i always have to second guess

rigid oriole
lucid iron
sour sleet
#

It's listing all of the cooking items for sale now! How do I make it so that only 6 per day are randomly listed for sale?

reef kiln
#

I should have gone to bed 3 hrs ago. But sitting her on discord instead.

sour sleet
#

Thanks!

tidal stone
#

if i make a custom shop can i use custom items i made in it

#

like furniture and such

sour sleet
#

Yes you can

tidal stone
#

awesome

hot gale
#

If I want to place a building in Forest.tmx do I need to edit/add the entire tmx to my mod or can I just insert my changes overtop? I looked at a couple mods and I see that its easily achievable with objects

tidal stone
#

i can make 2 files maybe one for compat with my mod in the future and one for basic stardew i.e. robins shop

sour sleet
lucid iron
#

look at the EditMap docs for content patcher

tidal stone
#

hmm how hard would it be to add custom crops and items to stardew i might go look up some herbs and things and make a crop mod in the future
is that content patcher or is there a framework for that? or is that like hard coding C# stuff i gotta learn

hot gale
#

Content patcher

tidal stone
#

oh yay

lucid iron
#

[[modding:crops]]

#

[[modding:crop_data]]

tidal stone
#

the scope creep is real actually omg me :"i will make this one mod for fun" also me "hm i will makecustom map tilesheets, hm i will make custom furniture, hm i will amake custom crops, hm i will make cust-"

hot gale
#

I edited Forest.tmx and cut out everything except the building and its immediate surrounding area. Now the .tmx file is still full of animation data and stuff like that from the original. Is there an easy way to c/p my tiles to another tmx files so it only contains my data?

lucid iron
#

you shouldn't

hot gale
lucid iron
#

at the very least, you want to keep all tilesheets named as they are

hot gale
#

This is 3500 lines

lucid iron
#

what you do want to do is remove the surrounding tiles if they aren't supposed to be changed

#

and use Overlay

hot gale
#

I did remove the surrounding tiles

tidal stone
#

mod idea im gonna work on after i finish the furniture and do some more maps: I would love to hear thoughts on this btw
a mod where you grow various herbs and then dry and steep them to make various teas and herbal remedies

lucid iron
#

the actual tilesheet being there isnt important cus it's all 1 shared asset

hot gale
lucid iron
#

like this i mean

#

dont even have the grass tiles if you aren't gonna edit them

tidal stone
#

if i want to add usability to the crops like drying them and then steeping them in custom machines that would still be cp aye?

brittle pasture
#

and yep

tidal stone
#

cool cool

#

and im glad you think so !

lucid iron
#

[[modding:index]]

hot gale
tidal stone
#

i want to add it to a custom shop in the future but im gonna add them to pierres for base game, i think people who like cozy vibes would dig it

lucid iron
#

if u see a thing under Specific topics then its probably CP

tidal stone
#

Oo ok ty

lucid iron
#

for furniture though, people usually expect a catalogue i feel

tidal stone
#

im always worried im gonna accidentally stuble into an idea that uses hardcoding because idk anything like that

lucid iron
#

might not need to do anything in particular to expose it to the generic catalogue, but you can use calcifer for a custom catalogue if you want

tidal stone
#

Hmm then ill try and make a catalogue i can put in a custom shop in the future / a vanilla file for robins

#

yea ill prob use a custom catalogue so i can pretty it up

reef kiln
sour sleet
#
            {
              "Id": "RandomCooking",
              "ItemId": "RANDOM_ITEMS (O)",
              "PerItemCondition": "ITEM_CATEGORY Target -7",
              "MaxItems": 8,
              "AvailableStockLimit": 3
            }
          ]
``` This makes it so that there are 8 random cooking items for sale each day but an infinite stock despite me adding a stock limit??
tidal stone
#

haha yea XD i really love stardew so coming up with fun content is easy X3

reef kiln
# hot gale

Yup, then you just map patch it where you want it. Do you know how to do that?

tidal stone
#

i might add in some flowers i really like

#

like foxglove

#

❤️

hot gale
#

I do not. Im trying to understand how to truncate the superfulous data from the forest.tmx I edited

#

My singular building still has 3500 lines of data in the tmx

lucid iron
#

i dont know why it matters tbh

#

xml is just Like That

sour sleet
#

So if one of the random dishes for sale is Spaghetti for example, I can buy an infinite amount of them when I only want 3 available

lucid iron
#

AvailableStock

#

set this one

#

AvailableStockLimit is an enum

sour sleet
#

Ahhh ok gotcha

celest creek
#

hello modding besties, I am new to modding and I was curious if there was a way (using dynamic tokens if possible) to pass the npc with the highest friendship amount to the mod

lucid iron
brittle ledge
celest creek
uncut viper
#

a GSQ also wouldnt be the right tool anyway, you would want a tokenizable string or a CP token

brittle ledge
#

Heh, BETAS was my next thought--don't suppose you have something for that?

lucid iron
#

where is this string getting used in

uncut viper
#

i do not! very very few tokenizable strings, and no CP tokens in BETAS

gritty summit
#

I made a bathroom in my house myself, with some furniture I edited, the only thing is I want to create an attribute to change to bathing suit before getting in the bath but I don't understand why it doesn't recognize it, I looked through some bathroom mods and made that attribute. but it seems nothing changed :< I have tried many ways but it doesn't work, can someone help me 😭

uncut viper
#

remember a GSQ is just a true/false question it cant give you data in return

#

so you cant get the highest friendship NPC to store with a GSQ, as you can only ask it a question

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.

lucid iron
#

also you should try using Lookup Anything (tile lookup on) on the tile that's supposed to have bathroom

lucid iron
#

oh hm i see it actually you didnt name it TileData

celest creek
#

i appreciate it yall, i might just do checks and have the game make a list of the characters with 10 hearts and then randomly choose one of those instead lol

uncut viper
#

hm

lucid iron
#

would you be able to do that with dynamic tokens tho

celest creek
#

i think so? it would be more complicated tho fs

uncut viper
#

there is a possibility

ornate locust
uncut viper
#

that Content Patcher's "Hearts" token sorts the values by highest to lowest

ornate locust
#

you're never safe from the scope creep

uncut viper
#

which might be useful if so. potentially.

#

though, i guess you'd only get the number of hearts, and not the name. do you need the name

celest creek
uncut viper
#

actually it might also include the name. though it might also be in a format thats hard to make use of

celest creek
#

in that case, the way i might do it is have it check all the characters for if they have over like 7 hearts and then randomly select like 3 of the characters that meets those conditions

#

like if i value them like "character-1", "character-2" etc and then do a character-{{random:1,2,...}}

fierce vault
#

Hi, anyone know the simplest way to add an item directly to your inventory after a piece of dialogue?

celest creek
#

grrrr lol i should just learn c#

tidal stone
celest creek
celest creek
uncut viper
#

okay well it seems that the Hearts token is only ordered alphabetically (which might just be coincidence and not guaranteed) so rip

celest creek
#

ill lyk if I figure something better out, I was trying to avoid individually checking each character

fierce vault
dusk mulch
#

How can I fix this layering issue? I need the bottom bit of the table to be on the buildings layer

lucid iron
#

[[modding:dialogue]]

celest creek
# fierce vault Ok thanks. Do you know a wiki page on the modding or regular one that goes a lit...

from the wiki: <id>+] Gives the player a random item, from the pool of item IDs within the brackets. For example,
"I spent the afternoon daydreaming about the ocean. So I decided to cook some seafood. [(O)198 (O)202 (O)727 (O)MossSoup]$h"
...gives one of 198 (Baked Fish), 202 (Fried Calamari), 727 (Chowder), or MossSoup (Moss Soup) as a gift.
Each one can be a qualified or unqualified item ID.
Wiki link: https://stardewvalleywiki.com/Modding:Dialogue#Gender_switch

Stardew Valley Wiki

← Index

brave fable
fierce vault
dusk mulch
#

To add a pass out penalty do I have to set the Passoutsafe map property to F or is it default?

brave fable
#

if you set it to F it will be safe, same as T or Egg or 555

#

null/undefined will render the location unsafe

#

(which is to say, don't add the map property)

gentle rose
#

but I also genuinely can't see a layering issue

dusk mulch
gentle rose
#

...I think the solution is not to water your table tbh

brave fable
#

no drinks on the pool table please. there are rules for a reason

dusk mulch
#

I will check if it is vanilla behavior first

#

It is

reef kiln
dusk mulch
#

He wasn't very happy with it.

reef kiln
#

🤣

brave fable
#

petition to add spa action tiles to the saloon so we can have a swimming pool table

brave fable
#

it's the weekend 😌

rancid musk
#

This sounds very cursed

uncut viper
# uncut viper okay well it seems that the Hearts token is only ordered alphabetically (which m...

after some testing and abusing the Render token and the |inputSeparator thingy i can say now that the only reason it isnt possible to store the name of the NPC with whom you have the most friendship in a dynamic token is because the Hearts token is not ordered in any way (just incidentally alphabetical)
do you think Pathos would be open to sorting by friendship points or do you think that'd be too much of a change for the token after this long (though i dont know why anyone would already be relying on the order of the Hearts token anyway since its... not ordered)

#

{{Hearts}} on its own without any input gives a list of name:Hearts like Abigail:8, Alex:0, Caroline:0, ... but you can do this:

"DynamicTokens": [
    {
        "Name": "FirstHearts",
        "Value": "{{Hearts |valueAt=0}}"
    },
    {
        "Name": "HighestHearts",
        "Value": "{{Render: {{FirstHearts |valueAt=0}} |inputSeparator=:}}"
    }
],

and HighestHearts would return the NPC with the highest friendship.... IF {{Hearts}} was ordered by points. but it is not. alas.

tidal stone
#

😭

#

my tilesheet is finally done

#

that took so long man

gentle rose
uncut viper
#

that wouldnt help bc Hearts rounds to... well, hearts. ints between 0 and 14

#

needs to be sorted before the conversion from Points to Hearts

#

that said, wouldnt have to do that fuckery with the Render token and input separator if there was a {{Split}} string manipulation token

#

it doesnt make sense to me that i have to do things that way with Render and with the second valueAt inside the Render inside FirstHearts, since "FirstHearts" itself will resolve to e.g. "Abigail:8", but it wouldnt work any other way i tried

gentle rose
#

I thought there was a split token SDVpufferthinkblob

uncut viper
#

theres a merge token, which is like, a split in reverse

#

not helpful here tho

gentle rose
#

I could have SWORN I saw a split token Squint or maybe it seemed so obvious that I thought I did

#

does content patcher even have a concept of a list other than a string with comma separated values?

uncut viper
#

thats all its lists are

#

you can change the delimiter, but thats it

#

(and as evidenced by the requirement of that Render token fuckery, im not even sure inputSeparator was even meant to be used that way)

brave fable
gentle rose
#

how would a split token work then SDVpufferthinkblob wouldn't it end up just being another version of our mythical foreach token SDVpuffersquee

lucid iron
#

pooled

gentle rose
celest creek
uncut viper
celest creek
#

but thank u anywyas tho fr

#

i might just have a player input thing instead

uncut viper
#

so then i could do |valueAt on the result of the Split token

#

without the intermediary Render step with inputSeparator

brave fable
#

if you keep this up you'll need an IDE to make a content patch

uncut viper
#

bc fsr it only correctly splits it like that if i do the Render step

#

and i dont understand why

#

it only works correctly if i do {{FirstHearts |valueAt=0}} inside the render step, despite the fact that FirstHearts is not even a list

#

and i dont understand why

celest creek
#

that's so bizarre huh

#

do you think there's a way to just return like a list of characters above a certain heart integer?

#

(this might be a stupid question sorry if it is lol)

uncut viper
#

it also only works inside the json. it does not work in patch parse

gentle rose
#

I wonder why valueat doesn't work without render in this case SDVpufferthinkblob maybe there IS an underlying list which isn't just a string?

uncut viper
#

something to do with Render itself taking input arguments separated by a comma

#

but im changing the separator to a colon

#

and maybe some weird order of when things are resolved?

#

idk

#

oh i forgot to mention you cant just use {{HighestHearts}} you have to use {{HighestHearts |valueAt=0}}

#

i feel like ive tried every combination of where to place the valueAt and this is the first one i got to work

gentle rose
#

if you're changing the separator to a colon, isn't it reading them at an offset?

uncut viper
#

i dont know what its doing

gentle rose
uncut viper
#

no remember i have two dynamic tokens

#

FirstHearts and HighestHearts

#

FirstHearts is just {{Hearts |valueAt=0}} so just Abigail:8

gentle rose
#

oh right you separated after splitting

uncut viper
#

the fact that some variations work in patch parse and not the json and vice versa makes this real annoying to iterate on

gentle rose
#

I get you I get you

ngl this is why content patcher and I are not friends, I am too used to actual programming languages SBVLmaoDog

#

declarative json programming makes my head explode

#

...stardew jdsl when

uncut viper
#

okay update just {{Render: {{FirstHearts}} |inputSeparator=:}} does actually work for {{HighestHearts}}'s value

celest creek
uncut viper
#

but you still need {{HighestHearts |valueAt=0}} i cant figure out how to separate it before then

gentle rose
#

I don't actually recommend doing content things with c# if you can help it!

#

content crimes should be done via content patcher when possible

celest creek
tidal stone
#

if i use calcifer to make a catalogue does the catalogue have to be a seperate mod or can it be bundled in with the furniture? idk fi anyone knows the answer but thought id ask

#

nvm found my answer i think

#

i went snooping for some furniture that uses catalogues :3

celest creek
#

thank u all lol i appreaciate it

hot gale
#

I replaced this portion of the forest map, but I cant seem to walk up to the door? lol

ornate locust
#

You have a tile there that's on the building layer probably

#

Maybe an invisible one or just a fragment of the bottom edge of the door

#

I did that on accident with a building with pillars on either side of the door before

#

Notice how you can't pass where the pillar collision would be, that's why it's my guess

tidal stone
#

yea if you grabbed it from the thing as one image it prob has an invis tile there

#

just go over it with an eraser on the building level :3

hot gale
#

Gotcha Ill try that

tidal stone
#

might do all 3 tiles to keep any weirdness from being there feels wise

ornate locust
#

Yeah, if it's one, it's probably all three

#

pictured: where I also made The Mistake

tidal stone
#

oh yea midnight idk if u saw my message but i found 2 (3 if its not already in the junimo thing) that might fit your style of tilesheet if you want ik u said no more updates for a bit though iirc but i thought id bring it up

hot gale
#

That did it haha ty

ornate locust
#

Whatcha find? I can at least put it on the future list I have in "scope creep" LOL

tidal stone
#

XD

hot gale
#

Now how do I make this door work lol

tidal stone
#

theirs the junimo star thing above the fireplace, the phone thats attached to the table in towninterior and then there's a piece of long straight ivy right next to the regular transparent background one, I can also go grab u pics if you want since ik it can be hard to find on a sheet lmao

ornate locust
#

Oh I got some phones

tidal stone
ornate locust
tidal stone
#

ooohhhh

ornate locust
#

normal phone, phone off hook, both recolored red because I was using it for my other mod tilesheet so why not

#

Where's the other things?

tidal stone
#

the map being the one your trying to go to

#

like this is mine
Action Warp 15 18 KandiKraze.TheNeighborhood_NeighborhoodJoja

ornate locust
#

Here's the door that I was pointing at. This one is a type that has an open/close time

tidal stone
#

oh let me grab them

#

oooh smart

#

i havent done that yet i forgor

#

OH and a bear rug might be good too Midnight

#

the bear rug and the junimo stone tablet thing on the fireplace

ornate locust
#

Rugs are on the future list. I thought there was a mod that added them but whoops, it was for furniture in your house, not tilesheets

tidal stone
#

aah ok uwu_nod

lucid iron
#

u can sorta get them now

ornate locust
#

A lot of rugs are on towninterior2 now

tidal stone
#

ohh

#

another idea

ornate locust
#

That... hm. That is correct, but it's supposed to be 9-5, I army timed wrong

tidal stone
#

seperate linus sleeping bag from the tent ground? i had trouble with that in one room i wanted to use it, had to disguise it

ornate locust
#

Alright it's on the list. And I don't see that fireplace thing on JunimoFurniture so it'll go too

tidal stone
#

cool ^_^

ornate locust
#

and the ivy. And the rugs that are not on towninterior2

dusk mulch
#

Do I need the one with and one without condition or can I just have them all without condition? (This is for a garbatge can by the way)

ornate locust
#

oh god I don't know how trashcans work

dusk mulch
#

They are a bit confusing lol

ornate locust
#

I absolutely could not find anything on how they worked, I just looked at a bunch of examples and hoped and it's either never thrown the additional item I wanted to add to the pool or it's given nothing every time

lucid iron
#

like Data/GarbageCans?

dusk mulch
hot gale
#

Whats the console command to warp somewhere

dusk mulch
tidal stone
#

i think its debug warp

dusk mulch
#

Debug Warp (Location ID)

tidal stone
#

debug warp nameoflocation i think

#

ye

hot gale
#

ty ty

ornate locust
#

wait that was before I knew about the modding section of the wiki needing the Modding space to search it searches

ornate locust
#

Yeah I have now found it. that modding space thing really got me

dusk mulch
#

yeah lol

lucid iron
#

looking at the data, you need to TargetField GarbageCans

#

rather than just editing at top level

dusk mulch
lucid iron
#

JodiAndKent has no can specific entry

dusk mulch
#

So that would be a no?

lucid iron
#

should be optional yes

dusk mulch
#

Amazing, ty!

gentle rose
#

so you don't have to add it every time

ornate locust
#

think I found my problem. Now to play with my mod in and never forget to smack the trashcan

ornate locust
#

Ah thank goodness

#

trash came out of can

#

Success

urban patrol
#

is there a way to replace the door sound with the elevator ding for an Action Warp ?

ornate locust
#

Trash, gift tastes, generic gift dialog sorted.

viral ferry
#

Does anyone know what the Path ID is for the underground secrets mod tileset is? I'd like to do a retexture as part of my own mod, but I can't seem to figure out what the source code is doing to assign it.

uncut viper
#

apparently its just any asset name that ends with "underground_secrets"...

viral ferry
#

but to patch it, don't you need the right data?
"Target": "Mods/MOD PATH/assets/underground_secrets"

#

I'm having trouble figure out the exact path

uncut viper
#

yeah, thats the thing. you're supposed to match an exact path. the mod isnt doing that. its matching any path that ends with underground_secrets

viral ferry
#

or is it literally just "Target": "underground_secrets"

uncut viper
#

that would work. so would "Target": "fkdjghkdjfg/dfgjkhdf/dfkgjhunderground_secrets"

#

any asset that ends with underground_secrets will be the tilesheet

viral ferry
#

this is even more confusing now lol

uncut viper
#

its not the correct way to do things, so i dont blame you for being confused

viral ferry
#

well this didn't work

uncut viper
#

also, its doubly bad, bc its not actually using it itself

viral ferry
#

"Target": "Mods/prism99.aedenthorn.UndergroundSecrets/assets/underground_secrets",

uncut viper
#

yeah, its overwriting any asset that ends with underground_secrets, but then its using its own internal asset name in the mod itself still

#

which you cannot edit

viral ferry
#

so.. no way to patch it then?

uncut viper
#

correct

viral ferry
#

sigh

uncut viper
#

its not the best unofficial update of a mod, thats for sure

#

the old version didnt make it patchable either

#

but idk why the new one uses AssetRequested like that

viral ferry
#

I mean the new one was just a jury rigging, wasn't it?

uncut viper
#

i dont know what needed fixing between the old version and the new one

viral ferry
#

honestly, really hope someone can get it MP compatible =/

uncut viper
#

thats a much bigger ask if the mod wasnt made with it in mind from the start

viral ferry
#

but damn.. gonna have to entirely overwrite the base mod's image

gentle rose
#

which unofficial update is this?

uncut viper
#

the redux, i assume?

#

only other one i could find

viral ferry
#

yea the redux

gentle rose
#

oh that's also interesting with the new mod ID being like that

#

I've never seen anyone do <new author>.<original author>.<name>

uncut viper
#

there is unfortunately nothing you can do here. its the equivalent of using content patcher's InternalAssetKey instead of loading your stuff, except you cant even target whatever asset is using these sheets bc its all done manually

viral ferry
#

I got my mod already patching certain other mods I'm using that's got steel tool sprites to match my steel tool recolor, and it works pretty nicely.. shame I couldn't get the underground secrets one working too hah

gentle rose
#

oh idk why I was expecting a content pack even though I knew this was an aedenthorn mod SBVLmaoDog

viral ferry
#

lol

#

are content pack stuff from after Aedenthorn left?

uncut viper
#

no

viral ferry
#

oh

uncut viper
#

aedenthorn just has a lot of mods

#

lot of C# mods

viral ferry
#

right

gentle rose
#

over 600 mods, almost all c# afaik

#

monorepos my beloathed

viral ferry
#

damn

uncut viper
#

looking at the changes im not even sure why they added the assetrequested event at all

viral ferry
#

to mess with people maybe? lol

uncut viper
#

seems like they were just goin thru after 1.6 and fixing any red squiggly lines from changed method names or parameters and such

#

i dont think it was malicious

gentle rose
#

yeah that's 100% the vibe I get from their entire repo

viral ferry
#

I mean I was joking honestly

gentle rose
#

also just found the asset requested method myself and I'm very much confused, unless they're TRYING to override another mod's asset/retexture on purpose?

uncut viper
#

no, it strikes me as just knowing that using assetrequested is the right way to do things but not really knowing how to do it

gentle rose
#

I looked to the commit messages for some clarification and unfortunately there is none to be found haha

uncut viper
#

just one of those "oh well, nothin i can do" moments

gentle rose
#

just looked, there's also no mouahrara version unfortunately since it seems their unofficial updates to aedenthorn mods are usually pretty reliable

#

they do seem to be going one by one though so maybe they'll do it at some point

viral ferry
#

I just downloaded the treasure mods from mouah's git too lol

#

so I'm glad to hear they've got a good reputation

gentle rose
#

I don't know much about them but I got a good impression from what little I've seen ig?

viral ferry
#

though those mods look like they completely replace the loot possibilities, instead of a % chance to give different loot

vernal crest
#

I really need to stop using my in-development mods to test random stuff. I never change it back. SDVpufferpain

orchid glade
#

Does a custom NPC have to have a 'spring' entry in their schedule, or just vanilla NPCs?

uncut viper
#

there is no difference between a custom NPC and a vanilla NPC from the games perspective

#

anything that is required for a vanilla NPC is required for a custom NPC

#

spring is one of the required ones i believe

orchid glade
#

Ok, that may be what's causing the schedule on this NPC I'm looking at not to work then

uncut viper
#

important to remember that for any vanilla asset, the game has absolutely no way to tell whether something is from vanilla or from a mod

orchid glade
#

So you mean like, Content/Characters/schedules/name.xnb is a vanilla asset even if it's for a custom NPC right?

uncut viper
#

i wouldnt call it a vanilla asset, its just that the game has no way of knowing where it came from

#

(obviously beyond the very very root steps of actually loading the literal xnbs)

orchid glade
#

Cool, I think I gotcha

uncut viper
#

basically when the game looks at the list of e.g. characters it has loaded, "Penny" and "ModId_MyCustomName" are just meaningless letters to it. for all it knows, CA added an NPC named ModId_MyCustomName

#

so, it doesnt treat modded stuff any differently than it would treat vanilla stuff, bc it cant

orchid glade
#

Great. I just thought I'd check in case I was completely misunderstanding the way things worked 😉

#

Do you know if the requirement for having a spring entry in the schedule is new / i.e. 1.6? (Mostly just I'm curious why it was left out in the fist place)

uncut viper
#

i have no specific knowledge pre-1.6

#

it was largely before my time

vernal crest
#

Left out of what?

#

(There's no mention of adding spring as a default in the 1.6 migration page on the wiki nor on any of the other version migration pages, so I suspect it's been mandatory for a long time.)

orchid glade
#

Left out of the schedule for this mod I'm troubleshooting

vernal crest
#

Oh I see. Is it an old one?

orchid glade
#

probably just an oversight

vernal crest
#

Ooh you can have relationship-specific resort dialogue as of 1.6.9

orchid glade
#

Oh that reminds me

#

I have a question about fixing my own mod that I've been avoiding because I couldnt figure it out by myself

#

It's about beach portraits and testing if they are working or not

#

First question: are beach portraits and sprites (in vanilla) always used on the beach, or only under certain conditions, or only used on ginger island?

vernal crest
#

Only GI

orchid glade
#

Oh okay

vernal crest
#

Them being called Beach is misleading

orchid glade
#

yeah

#

So unless you use appearances to tell the game to use them on the beach, it won't

vernal crest
#

Correct

orchid glade
#

Okay, related question, how do you test whether that's working? I tried by using a debugging thing to warp the character to me on the island, but they didn't change into their resortwear

#

Probably because i didn't change the schedule, or something, right?

#

How would I test, or do I just have to hang out on the island until they randomly show up?

vernal crest
#

You can test if it's been loaded to the right asset by doing a patch export, you can check the animations by loading the spritesheets to a different target, or you can test them in their real context by waiting for them to get picked to go to the island.

orchid glade
#

Ahh good ideas

vernal crest
#

I speed the last one up by excluding every other NPC from being able to visit the island so Hiria gets picked faster (or always? Haven't bothered checking).

orchid glade
#

How do you do that? Did you make a mod to EditData the character data that you use when testing?

vernal crest
#

I just have it as an include inside my mod for Hiria that I will delete once I am ready to publish, but you could make it a separate mod if you wanted to.

orchid glade
#

Oh that makes sense

#

Thank you so much! You've been very helpful once again

vernal crest
#

You're welcome! I dabble with many parts of modding so I have approximate knowledge of many things.

violet grotto
#

Is there a way to manually define the order of Fashion Sense items?
I have a bunch of numbered accessories such as Horns 1, Horns 2, Horns 3 and so on. I also have helmets, visors and such that are also numbered like this.

I hoped they would be sorted like this:

  • Horns 1, Horns 2, Horns 3, Helmet 1, Helmet 2, Helmet 3, Visor 1, Visor 2, Visor 3

But instead they get sorted like this:

  • Horns 1, Helmet 1, Visor 1, Horns 2, Helmet 2, Visor 2, Horns 3, Helmet 3, Visor 3
#

I honestly can't tell why they're sorted as the latter, since I assumed it would be sorted alphabetically.

#

But all accessories with a specific number are clumped together.

#

Maybe there's a trick to naming the items, but I can't think of any.

brave fable
#

are those the actual IDs of your items?

#

not that i know the first thing about FS, but it'd be good to see what you have now

violet grotto
#

If you're refering to the 'Name' inside the jsons, then yes.

#

Is the name of the folders they're containted in important? Because I have them laid out like this:

brave fable
#

that's probably it, i'd try renaming 1, 2, 3 to Horns 1, Horns 2, Horns 3 and so on for each folder

#

after all, if it's simply selecting all folders with content files and then iterating over them, it's going to end up with 1, 1, 1, 2, 2, 2, 3, 3, 3

#

assuming it's sorting alphabetically that way

violet grotto
#

That seems plausible.

#

I'll give it a try.

vernal crest
#

I thought that the docs said that folder name doesn't matter.

violet grotto
#

I'll give it a try ayway, cause I'm running out of options.

brave fable
#

probably in that it doesn't need to match the inner item and doesn't affect the ingame object

vernal crest
#

Yeah, that's fair enough

brave fable
#

but the folders have to be read in some order, right?

vernal crest
#

I couldn't find any info about what does affect the order and the code is too complex for me to sort through

violet grotto
#

That kinda worked!

uncut viper
#

the folders are ordered by name

violet grotto
#

But now they're sorted like this:
Horns 1, Horns 10, Horns 11...

#

That's at least one step in the right direction.

uncut viper
#

Horns AAA, Horns AAB, Horns AAC, etc

#

if you have less than 26 folders you can just do Horns A, Horns B, etc

brave fable
#

i think just using Horns 01, 02, 03 would solve it

violet grotto
#

Oh! Great idea!

uncut viper
#

that too

brave fable
#

classic sort

#

dw my first thought was 'at last, time for roman numerals to make a comeback'

uncut viper
#

unless you want more than 99 folders, then do 001, 002, 003

violet grotto
#

I don't have that many accessories, fortunately!

uncut viper
#

id say i dont think you'd have that many, but i dont underestimate fashion sense people

violet grotto
#

I have about 30 horns, so I guess that checks out.

#

And soncidering how my current spritesheet for all the planned FS items looks like...

#

In total probably more than 100...

uncut viper
#

without clicking to zoom in that just looks like a breadboard to me

hot gale
#

Do my eyes decieve me?! Male clothing?

violet grotto
#

Just armour and other knightly things in general.

#

And some Western themed ones too.

brave fable
#

any clothing is male clothing if you're brave enough

violet grotto
#

Aye!

hot gale
violet grotto
#

I plan on releasing it early, because a sizable amount is already implemented.

umbral robin
#

Hello, I'm trying to add/change a dialogue entry from a mod without changing the content of said dialogue that's in the i18n.
But, no matter what I do. Nothing has been changed. (Keep in mind that I'm very much new at this but has been reading the content patcher page as well as the modding guide founding no resolve.)

hallow prism
#

is it your mod? what is the mod in question?

umbral robin
uncut viper
#

that mod is not allowed to be discussed here

vernal crest
#

Well that really limits our ability to help.

uncut viper
#

here being in this server

#

just fyi

umbral robin
#

ah, sorry then.
is there an appropriate server that can discuss this?

uncut viper
#

if there is, its not affiliated with this one, and wouldnt be allowed to be linked here either as a result

#

to be clear, we are permitted to help with the technical modding aspects regardless, of our own volition
however, like Aba says, it will be very limiting, especially since it relates to i18n, but you would not be allowed to post the content/i18n itself

#

("of our own volition" maybe not the right turn of phrase there. i just mean "if someone wants to, they can. but someone ofc reserves the right to not want to help due to the nature of the mod")

vernal crest
#

I'm happy to explain what I can about editing a mod in general without reference to a specific mod, or if you happened to find a way to recreate the technical setup with nothing from the mod itself.

umbral robin
#

Sure, thanks for the help. I'll prod around some more.

It's not about the content of the i18n itself.
But, It's about the function to call that i18n.

based on the image I sent, when you date Penny, the dialogue should have changed to the (Sam.PennyDating) But it's stucked to the (Sam.Penny.)

vernal crest
#

Are you trying to talk to her during the relevant animation on the same day that you started dating her?

#

Or him, I don't know who it's for lol

umbral robin
# vernal crest Are you trying to talk to her during the relevant animation on the same day that...

Let's just say that I've been dating her for a month now and there is a custom animation of penny talking with sam that'll happen regardless of dating her or not that has a custom dialogue if I talk to Sam during this animation.

If I haven't been dating with Penny, the line should be picking up the {{i18n:Sam.Penny}} and if I'm currently dating Penny, the line should be picking up the {{i18n:Sam.PennyDating}} but, even though I Checked the "dating" the line still picking up the {{i18n:Sam.Penny}} one.

vernal crest
#

I am asking because dialogue changes don't usually happen until the next day after the day your save was on when you edited the dialogue because it's chosen as part of the day starting code. Same with schedule changes, which animationDescriptions is part of.

hot gale
#

Making maps is hard

umbral robin
#

what could have make this so...

vernal crest
# umbral robin Still hasn't changed...

Try copying this into your SMAPI console: patch export Strings/animationDescriptions. Then go to your Stardew Valley folder and find the patch export folder and open up the file inside and see what line it has for "sam_penny".

umbral robin
vernal crest
umbral robin
vernal crest
hot gale
#

I was about to ask a question but I realized the answer as I was typing

umbral robin
vernal crest
hot gale
#

How do you layer a bed so you can crawl under the covers

#

in tiled

brave fable
hot gale
#

Amazing! Ty :D

hot gale
#

Finally got my mead saloon and NPCs done 😭

#

Now I gotta add their shops

#

Is there a way to make doors work like they are supposed to and not just teleport you from the tile in front of it?

flat sluice
hot gale
#

Between maps

#

and thank you :D

brave fable
#

yep! there actually is a way, it's just a little harder than indoors doors like in pierres

#

so first you're going to want to write a new c# solution to do that

hot gale
#

lol

#

okay, let me install VS rq

brave fable
#

you're on your own from there SDVpufferthumbsup

hot gale
#

So the only way to make a door work is C# rofl

#

damn thats ugly af

#

I see why everyone just does edge of the map additions

brave fable
#

well the whole game every framework is c#

#

you gonna call em all ugly

hot gale
#

Leaving my saloon I warp into the warp to go inside

#

creating a loop

#

Should I just spit the player out 1 below the into warp? ;p

brave fable
#

typically the warp target is placed further away from the door than the warp action

#

just 1 tile further

hot gale
#

Alrighty

hard fern
#

Man i remember i need to get back to making custom furniture for my mod..

#

I guess i could release the furniture i made for my mod as an actual furniture set too, i gues..

hot gale
#

Theres a real lack of good indoor furniture tilesets on nexus for modmakers I feel like

calm nebula
#

There are like three ir four

#

Check out Town

hot gale
#

I mean I tried it does nothing

brave fable
#

to be clear door warps are still warps and none of them will play out like GTA 4

calm nebula
#

Not that warp, it's a different eaep

brave fable
#

eaep

calm nebula
#

See how Town works

#

Anyways

hot gale
#

Thanks

calm nebula
#

Lumi interiors, also I could have sworn hxw had interior tilesheets

hot gale
#

Lumi's is actually gangster

#

I used Lumi's MidnightMisc and Xiddav

#

LockedDoorWarp 6 29 SeedShop 900 2100?

#

Is this not the same thing except denoting a time in which the door is locked?

#

or does Warp as is not work

brave fable
#

it plays a door sound SDVpufferthumbsup

hard fern
#

Warp also plays a door sound i thought

calm nebula
#

You need to align to a 16x16 grid

#

You're not

brave fable
#

oh darn yeah your X Y values aren't whole multiples of 16

hot gale
#

You mean the TileData itself?

brave fable
#

turn on View > Snapping > Snap to Grid

#

and fix the X Y Width Height values in your tiledata

hot gale
#

is it 0600 or 600

#

for 6AM

brave fable
#

either is fine, apparently

hot gale
#

so I can remove the warp addition in the json

#

I should be able to click it now?

#

As far as I could tell this is all I have to do to 'open shop', is this correct?

brave fable
#

correction: you have to not do that

hallow prism
#

it may work for hardcoded vanilla shop

#

custom shops are requiring a specific format

hot gale
#

Ahh okay

brave fable
#

i've actually deleted my only action shop hold on

#

"Action": "OpenShop blueberry.SailorStyles.Shop none 0 2020 33 96 1 1"

hot gale
#

Lumi your tilesets are stunning :D

#

What are the values indicating?

brave fable
hot gale
#

ty :)

hallow prism
#

thanks 🙂

hot gale
#

Is there a way to make it always day time in here lol

lucid iron
#

Ambiant lighting map prop?

hot gale
#

How does lighting work in Tiled

#

if I place unlit assets will they light up at night?

#

or add windows

lucid iron
#

[[modding:maps]]

umbral robin
# vernal crest Can you start a new save, put `debug dating Penny` into the console, sleep, and ...

Before Dating Penny
[X] | [X] | [X] | Default | Penny Include > assets/Jsons/Penny.json > EditData Strings/animationDescriptions #5 (This should be the sam.penny)

  `[X]     | [ ]        | [ ]     | Default   | Penny Include > assets/Jsons/Penny.json > EditData Strings/animationDescriptions #6  // conditions don't match: Relationship:Penny`
  
After Dating Penny
 `[X]     | [ ]        | [ ]     | Default   | Penny Include > assets/Jsons/Penny.json > EditData Strings/animationDescriptions #5  // conditions don't match: Relationship:Penny`

  `[X]     | [X]        | [ ]     | Default   | Penny Include > assets/Jsons/Penny.json > EditData Strings/animationDescriptions #6`
lucid iron
#

AmbientLight and AmbientNightLight

#

Besides that you can put Light

hot gale
#

Thanks!

#

Where exactly would I put this?

#

EditMap, Target my saloon?

vernal crest
umbral robin
hot gale
#

oh IN Tiled

#

er no?

#

Do I add it as a custom property to a layer?

#

or just any object datatile

vernal crest
vernal crest
hot gale
#

Ahhh okay

#

tyvm

#

Does this add light?

vernal crest
#

I don't say this to be rude, but all of this stuff is on the wiki page. Are you struggling to navigate it? It is kind of unintuitive if you don't already know where to look.

#

The lightbulb on the paths tilesheet adds light type 4 to the map. If you want a different type, use the Light map property directly.

umbral robin
vernal crest
# umbral robin A breakthrough at least. It seems that no matter what you do, it will not chang...

Yes, but it shouldn't matter unless you're actually making the rest of the animation string different. If you're just changing which entry in Strings/animationDescriptions it references, the animation itself should stay the same. You could try setting it up so that you have two code blocks like you did with the Strings/animationDescriptions edit, one that checks that you're not dating Penny and one that checks that you are.

modern narwhal
#

Is it possible to use a dynamic token inside the configschema to create a variable dropdown menu of sorts?

calm nebula
#

No

umbral robin
vernal crest
shadow pagoda
#

Does anyone know of any open source mods (preferably that use C#) in order to retrieve/modify the current state of the community center along with their bundles. When I say "current state", I'm referring to if the player has completed a specific bundle, and if not, what items have they donated, and what else could they possibly donate. I want this to be compatible with both the regular and remixed bundles. I know of the bundles.json file though, that doesn't seem to keep track of what the player has / hasn't donated.

lucid iron
#

Lookup anything does it

#

Bundles json wouldn't track this since it's just data

shadow pagoda
#

Yeah, ive been trying to look up mods. Idk if I just have bad luck or not putting in the right search words, but many I've been finding have been just mods that replace bundle.json

lucid iron
#

Well as mentioned lookup anything has a feature that checks if an item is needed for bundle

reef kiln
shadow pagoda
tribal ore
#

Help with a condition?
I want dialogue to show only if a certain event has not been seen by any player. But perhaps I accidentally did a double-negation with this, because patch summary is telling me that it doesn't match:

"HasSeenEvent: anyPlayer |contains={{ModId}}_Event_Reconciliation": false,

#

Should it be "true"?

shadow pagoda
# reef kiln What exactly are you trying to do? If you just want the feature for game play th...

Yes, I do want the feature for game play. I am pretty much trying to give the player all of the remaining items needed in their inventory with the press of a button. I have tried with some other methods that go into more detail here #making-mods-general message (where you can also see my current code). I tried bumping this a few times, but didn't get a response, so that's why I was a bit more vague with my most recent question. I didn't want to spam the channel with the same thing over and over, even though they're related.

I will look at the mods suggested, and let you know if I need anymore assistance

vernal crest
tribal ore
#

I was grepping through the save file directly. Is there a way to test events seen with patch summary?

#

That would be cool

lucid iron
#

debug action MarkEventSeen?

tribal ore
#

Wait, should this be false if not married to Seb?
"Relationship:Sebastian |contains=Married": true,

lucid iron
#

For cp tokens there's patch parse

#

And for gsq: debug gq PLAYER_HAS_SEEN_EVENT

#

(need all the remaining args for both this and action pls check wiki)

vernal crest
tribal ore
#

Yeah, just did the debug gq and event is definitely not seen. So it must be one of the other conditions. There are only two more. My guess is the marriage one

tribal ore
# vernal crest

How do you get this section to appear? I haven't seen that in patch summary before

vernal crest
#

And ohhhhhhhhh I just realised I didn't back up my saves before I reinstalled Windows, so thank goodness for the SaveBackup mod!

tribal ore
vernal crest
tribal ore
#

xD

#

Ok, I freaking hate this | not syntax. Will change the marriage condition and see if that is my problem. I suspect it is

vernal crest
#

I always do patch summary full MyModID so my actual changes section is as small as possible. Especially since I actually mostly use patch summary for the global tokens section.

tribal ore
#

Let me give that a try. This mod... makes a LOT of changes

vernal crest
#

I also tend to chuck my log into the log parser if the patch summary gets too big. Easier to search it.

tribal ore
#

That a separate mod?

vernal crest
#

!log No, the website

ocean sailBOT
#

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

Please share your SMAPI log file. To do so:

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

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

tribal ore
# ocean sail

Nice. I rarely use that now except for json verification. Glad it has some other tools that will help

#

Do you know of an i18n verifier? Something that will automatically check for missing i18n lines (or extra ones)?

#

I'm about to do a final sweep and am not looking forward to doing it one by one

vernal crest
#

I have never used the json validator for json validation lol

tribal ore
#

LOL! It's very good for it

vernal crest
#

I don't see the point when VSC has it built in

tribal ore
#

Don't use VSC :/ I'm using XCode at the moment

#

And vim

vernal crest
#

Surely one or either of those also has syntax checking?

#

No, I don't know of any i18n checkers, sorry. I check everything manually.

tribal ore
#

Alright. Maybe I will write a script one day then

#

Because this is going to be painful

lucid iron
#

Convince nomori to add it

#

I guess you just need to read default.json per line and then grep

vernal crest
#

Goat has been writing himself a python script for checking his work. Oh and he said it checks for missing and orphaned i18n keys!

tribal ore
#

Yep. That's the plan. Though then I also have to read through dialogue.json and marriagedialogue.json and schedule.json and grep back in i18n for missing lines there

lucid iron
#

You can get json plugins for xcode and vim pretty sure

lucid iron
#

As for cp specifics there's a schema

vernal crest
#

I'll poke him and ask him if he's willing to share.

lucid iron
#

!jsoncvsc

#

!vscjsonc

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

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

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

at the start of your content.json file.

tribal ore
ivory plume
lucid iron
#

Ik this says vscode but the $schema part should be widely supported

tribal ore
vernal crest
#

Well it seems like Pathos already has that covered but I'd already messaged Goat so...I guess they have to fight for i18n checking tool supremacy now DragonDance

calm nebula
#

patch export every asset you touch

#

And search them for "no-translation"

#

It's pretty damn hard to do a i18n checker when your keys look like

#

"FarmCave": "{{i18n:demetrius.{{DialogueVariant}}.{{Season}}.{{Random:00,01,02,03,04,05,06,07,08,09,10}} }}",

vernal crest
#

Oooh nice tip

tribal ore
tribal ore
calm nebula
#

Uh, CP github

ivory plume
vernal crest
#

Patch export is my favourite troubleshooting command

#

I tell a lie. Patch reload is. Export is second lol

tribal ore
#

I love patch reload

#

Patch reload, my beloved

calm nebula
#

Pathos's tool checks to see if your translations are missing translations, which is great!!!

vernal crest
#

You mean like if someone translates your mod into Spanish or something you can check if they missed a line?

tribal ore
#

I'm trying to use Pathos' tool, but unfortunately linqPad doesn't seem to start after I installed it on MacOS

calm nebula
#

Yeah!

#

It's so good

ivory plume
#

(Here's an example of the output.)

tribal ore
#

And I don't think the command line version installed, or at least it's not setup correctly (lprun8)

tribal ore
calm nebula
#

(Morning, Pathos!)

vernal crest
#

I do not even know what Linqpad is.

tribal ore
#

Pathos' tool is a linqpad script. I never heard of LinqPad before the past 15 minutes either xD

vernal crest
#

I am extremely exhausted just from googling it.

#

I see them mention it in the off-topic channel sometimes too.

ivory plume
#

(LINQPad is essentially a mini IDE which lets you launch C# code with an output window. It has some specialized features too, but they're not applicable in this case.)

lucid iron
#

I wish c# is better at doing minor things sometimes

#

But atm i just break out the python snakey

tribal ore
#

Ok, making progress. Time to install .NET runtime on MacOS

#

Fun

#

Ok, Pathos, I've gotten to this point:
How do I point it at my Mod?

ivory plume
#

On the line that starts with readonly string SolutionFolder, change the path to the one containing your mod(s).

tribal ore
#

Awesome. Once I've updated the script variables, just run it?

ivory plume
#

Yep.

shadow pagoda
#

@ivory plume Pinging you bc it's your mod, but anyone who's knowledgeable can answer. I downloaded a zip of your lookup anything mod to better understand it and use portions of it to help with my mod. Mainly by adding debug lines in certain places. However, when I try to build the mod, I get the following errors. Do you know how to fix them?

ivory plume
#

You'll need to download the entire solution (not just the mod's folder), then open the .sln file.

lucid iron
#

should clone the whole repo

#

there's shared project code in there (Common.projitems)

shadow pagoda
#

dang. I'm running low on storage space, and was hoping I could reserve some

lucid iron
#

this is the relevant bit for you (checking if item is needed)

shadow pagoda
#

thank you

tidal stone
#

i think for fun after i finish my furniture mod imma start on that herbs and flowers mod

tribal ore
#

No warnings from the LinqPad script. Can't decide whether to be pleased or concerned xD

tidal stone
#

or maybe ill just start doing the art for it
i think today is a do art for the mods day

#

OH what if i included Poke salat

#

I wonder

#

Question:

Poke Salad is something that can be poisonous fi not cooked correctly (UI beleive the rule is to cook three times) is it possibel to write that its poisonous if eaten and not cooked a third time in sdv like make it edible but take away health before becoming edible and good for you?

#

Poke salad is made of pokeweed :3

rigid oriole
#

Spitballing here, but you could make 3 items and 3 recipes?

#

I'm assuming without C# is the goal

gaunt orbit
#

Spacecore can do this IIRC

tribal ore
tidal stone
balmy venture
#

Any good patient soul that could sometime help me figuring out how to fix some compatibility issues I have with 2 mods I'm using? I thought I'd start try to fix myself but I'm a bit unsure how to start. (total newbie here)

sleek flint
tribal ore
#

Btw, can we save patch commands to a script file and just run them as a batch?

tribal ore
#

!log

ocean sailBOT
#

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

Please share your SMAPI log file. To do so:

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

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

balmy venture
#

no it's not diagnose, I'm pretty sure the map tiles are missing from a recolor, I was thinking of attempting to fix them myself

lucid iron
balmy venture
#

let me see how to do that

final arch
#

does eventtester work currently? 🤔

#

I have trouble getting it to start events

balmy venture
#

but as far as I can tell, one case is that my recolor mod is missing the custom tiles (that I could just edit and make them match) and the other is another mod's tiles overriding the recolor tiles

tribal ore
calm nebula
lucid iron
#

@ivory plume im making a child display names CP token for my mod (since it is re-purposing Name as an internal id), should i be doing the per tick cache thing CP does or is that part of how CP handles mod provided tokens already?

calm nebula
#

What are you seeing that's weird?