#making-mods-general

1 messages · Page 400 of 1

tired matrix
#

now he's mute wheeze

hard fern
#

im in the swamp 😔

lucid iron
#

how do i get the type if a out bool for reflection purposes Think

patent lanceBOT
#

@calm nebula: make a dependencies bingo card (12d ago)

uncut viper
#

typeof(bool).MakeByRefType() maybe

#

dont quote me on this

hot gale
#

Dwarfs have persistent and unique stats now :D

patent lanceBOT
brave fable
#

predictable SDVpufferpensive

patent lanceBOT
obtuse wigeon
# hot gale

Ayeee! nice one! do you take minor pedantic critisism?

hot gale
#

Always

obtuse wigeon
#

imo the stats should be ordered in resource stats (like health, food, water, things that need to be worried about) followed by static stats (like strenth, inteligence, things that you don't need to worry about as much), it helps give a kinda innate sense of importance, ovs this is just personal preference so it's up to you if you change it or not (if the code allows easy reordering)

hot gale
#

Meaning make the list dynamic? So highest priority 'fix' would be at the top?

#

or just keep the ones to monitor on top

obtuse wigeon
#

it can still be static, just keep the ones the player would have to monitor more closely at the top

hot gale
#

Gotcha, thats a good idea- I hadnt considered the order just did it to make sure it was working

#

Been thinking about making my own Discord for the mod, a place for people to make suggestions, follow progress, etc

#

Is that a popular move?

#

Or is it wiser to just like.. make a thread here?

obtuse wigeon
#

It wouldn't hurt to make a seperate discord that's for sure, i've seen it a few times but I think mostly people use github or threads on nexus

#

or indeed a thread in this discord but idk if theres specific etiquette for that here

hot gale
#

Bleh Nexus community stuff is kinda, yeah

obtuse wigeon
#

It's certainly not the best at all

hot gale
#

I will prolly make a discord for Mayor's Town

obtuse wigeon
#

That looks perfect! Good idea with the blank seperater too

hot gale
#

Dwarfs are starving now 🤣 Guess I should work on a way for them to eat lmao

#

Slept for a while in-game to get more villagers to move in

#

They accurately started starving rofl

vernal crest
#

There's no particular etiquette for making threads here

#

Probably don't make a new one every few days

hot gale
#

Right lol

vernal crest
#

And as a cheeto you can make it yourself

hot gale
#

Oh cool

#

Once I get a little further into this - I may inquire about testing some stuff

#

I might look into trying to find an artist that might want to collab - that is so far removed from my skillset

#

Gonna want custom buildings eventually, maybe custom crops, foods, etc - maybe better dwarf sprites 🤣

#

I would be forced to make them myself otherwise, which will take probably 10x longer than the code rofl

#

Good thing they spawn with food in their tummies 🤣

obtuse wigeon
#

I know you can automatically pack content pack mods and launch stardew when you're working with a C# mod, but is there an option like this for when you aren't working with a C# mod?

#

For more context I'm looking to have a set up like that of Pathos' Git StardewMods repo (https://github.com/Pathoschild/StardewMods) and working outside of the stardew mods folder and having to copy a mod across to my testing stardew shortcut gets very tedius very quickly

unique tusk
#

Possibly weird question??? And I know the answer is likely a no BUT would someone be down to sit down with me on VC in like DM's or smth and help me code a custom npc for free??? Figured I'd try to ask and if I get no answer I'll just keep trying out tutorials n occasionally asking for help here 😭

placid pond
#

I suppose the insomiacs all have questions tonight lol.

I am working on altering a few mods for personal use and while this has definitely spurred my interest in figuring out JavaScript again... I am trying to create a schedule/timeline for assets to switch out but I keep getting errors.. Please help.
Here's my JSON validator files: https://smapi.io/json/none/65096b1b7cee4ed1bc0648e4e3516dc9
Here is the wiki page I've been referencing:https://wiki.stardewvalley.net/Modding:Trigger_actions#Make_Data.2FTriggerActions_repeat

Stardew Valley Wiki

← Index

unique tusk
#

LOL all the insomniacs get the coding on during the dead of night fr SDVpuffersquee

obtuse wigeon
#

I would disagree bc it's 7am where I am but I have not slept so I too am in the insomniac coding camp

placid pond
#

insomniac army rise up

#

together we are eepy, together we are strong

hot gale
#

rise up

unique tusk
#

Hell yeahh!! >:D

hot gale
#

Mayor's Town never rests

unique tusk
#

I would love to just all code on VC and be confused together so at least I can voice my confusions while I struggle cryign

placid pond
#

that sounds like fun ngl

unique tusk
#

RIGHT???

placid pond
#

I'm down if you are

unique tusk
#

I'm currently working on sprite art cause I'm afraid to touch the coding part uhmmmm BUT ID BE SO DOWN

#

I'll hop onto uhhhhhh,,, the library? cause we n e r d s

placid pond
#

that's fine by me lol

unique tusk
#

Wait I dont have permission to speak ;-;

placid pond
#

me neither TT_TT

unique tusk
#

DAMMNNN U CANT SPEAK IN ANY OF THEM

placid pond
#

I forgot we have to level up

unique tusk
placid pond
#

well. you have me in spirit

obtuse wigeon
#

pretty sure you need Cowpoke (lv 5)

unique tusk
#

If ur down we could add each other and VC in DM's? Maybe make a group if anyone else wants to join us??? owo

hot gale
#

Think I have working hunger and water needs for my dwarf villagres, have wells and greenhouses replenishing their supply as well

obtuse wigeon
#

Aye nice one

brave fable
placid pond
unique tusk
#

Okie dokie! :]

obtuse wigeon
hot gale
#

Able to assign crops to Greenhouses, requires seeds in inventory - each crop will supply a different amount of food

#

Made these real quick for placeholders lol

#

need to fix this asset, but added some color assistance ;p will change to red if there is not sufficient food or water supply

#

Alright, tonights spam is done - night all :D

vernal crest
# placid pond I suppose the insomiacs all have questions tonight lol. I am working on alteri...

A few things:

  • your format number is really, really low; it should be 2.7.0 to match Content Patcher's current minor version
  • none of these should be trigger actions, they should all be EditImage patches
  • you can't use FromFile in an EditData patch (this is info for future as you shouldn't be doing an EditData patch for this)
  • your !TIME<600>[900] GSQ should not have the angle brackets or square brackets around the numbers as those are syntax indicators on the wiki to tell you that the first number is mandatory and the second is optional
  • you can't use ToArea in an EditData patch (this is info for future as you shouldn't be doing an EditData patch for this)
  • if you want to set a trigger action as repeatable, you need to set the "MarkActionApplied" field to false in the trigger action entry itself, not as an action in the trigger entry (this is info for future as you shouldn't be doing trigger actions for this)
vernal crest
obtuse wigeon
#

GitHub adds a little line tally count in a commit, all of my mods sum up to 70k lines, wow

obtuse wigeon
#

After using patch export on Maps/BusStop, the .tmx file has this specific tree gain red tips on the leaves, it's not there in game but the outdoors tilesheet also has the red tips, it's replaced the lightest colour on the tree (this isn't relevent to testing my mod but it's such a weird thing to occur)

#

Is also messed up the shadows and made them pink?

gentle rose
#

where did you save the patch export to?

brave fable
# obtuse wigeon Thank you! best tag me if you do have a look bc I can't guarentee I'll see the m...

so i wouldn't exactly recommend this since it's not really an intended solution, moreso just how things ended up. this was, for a while, a C# solution adding all the content, and then a mixed C#+CP mod, and then pure CP.
https://github.com/b-b-blueberry/SailorStyles/blob/sdv-1-6/SailorStyles [CP]/SailorStyles [CP].csproj
the sln includes a csproj in Sailor Styles[CP] with the property <IgnoreModFilePatterns>\.dll$, \.pdb$</IgnoreModFilePatterns> to prevent the actual build artefacts from being deployed when built, and also includes all assets in the content pack

obtuse wigeon
#

patch export in the stardew folder, it also exports the tilesheets there too and I just opened tiled

gentle rose
#

could there be another tilesheet with the same name in that folder?

obtuse wigeon
obtuse wigeon
brave fable
#

it does still create all the build artefacts you'd expect from a class library, it just doesn't copy them to the mod folder:

#

so in that sense it's not ideal, but i don't care that much

obtuse wigeon
#

Ye that's fine, I was going based on the fact I'd delete the artifacts when done

brave fable
#

if you really wanted you could cook up a script to do the copying for you, but it's hardly worth it. it's copying files

obtuse wigeon
#

I don't actually know how to make a script run through VSCode to target a specific folder hence why I was thinking of going through the null C# mod route, I'll give it a go and see if it fits my needs

vernal crest
#

I've had some tilesheets occasionally go funky when patch exporting

vernal crest
obtuse wigeon
#

I find it weird how it's just a single specific colour, I thought maybe the green channel wasn't being read properly but given it has a lot more red than you'd expect to see from that colour

#

Is it possible to add the config schema in an include file so that the config option only appears in GMCM when specific conditions (like "HasMod") are met? or can only changes go in an include file?

gray bear
#

not with just CP

obtuse wigeon
#

damn, oh well

vernal crest
#

meow_noddies ConfigSchema is content.json only

obtuse wigeon
#

Thought I could reduce the redundant GMCM clutter

woeful lintel
#

conditional config would be nice to have

gray bear
#

yeah.. only way rn is with C# and ow that hurts

#

wanted to make a craftables retex for like all of em but dear lord my config would just be giant

obtuse wigeon
#

I love customisable mods but I also hate clutter config menus I have to go through before playing, conditional config revolution!

gray bear
#

or maybe just like, categories you can open and close

#

config inside configs

#

i know u can do that with C# ok i just

#

don't know

obtuse wigeon
#

Oh actually ye category support using only CP would be a blessing (and value sliders)

vernal crest
#

I didn't realise the sections for C# mods were different to the ones you can use in CP

brave fable
#

i don't know how you'd implement value sliders in a json file. it's text

#

you'd need some kind of generic mod config menu to handle that, which isn't CP

gray bear
#

cp has value sliders no?

#

well for like 1,2,3

brave fable
#

GMCM has value sliders, CP has allowed values

vernal crest
#

We are talking about using GMCM for a CP mod, bluebs

obtuse wigeon
#

surely you could just set a range? like "allowValues": ["10", "100"], or even an identifier to indicate it should be a slider like ["10", "100", "Slide"]

vernal crest
#

All of this is about GMCM

brave fable
#

err atlas said using only CP

vernal crest
#

Yeah, but meant "in GMCM without having to make a C# mod"

obtuse wigeon
#

Sorry I meant defining using only CP

#

but using GMCM as the thing that adds sliders

gray bear
#

gmcm sliders are quite limited

woeful lintel
#

I'm also in a situation where I want to change the default option of a config variable depending on installed mods, which is not possible

gray bear
#

can youu dynamic token config

#

dun think so

woeful lintel
#

would be nice to have some sort of category switch, like "switch all options in this category to this value"

gray bear
#

✨ dynamic config ✨

acoustic lintel
#

Hey! I’m sorry if this is a dumb question, I’m working on an i18n for the first time, and I ended up getting stuck when trying to switch one of my npc’s events files over because it didn’t seem to like me putting the i18n into quickquestion. I tried looking at some other mods with i18n’s, but none of them seem to have quickquestion in their events and I can’t seem to find any info on it. Is it possible to convert quickquestion event dialogue to i18n?..

gray bear
#

can you screenshot your relevant code & i18n?

vernal crest
gray bear
#

beat me to it :3

acoustic lintel
#

Yes… is that wrong? 😅

vernal crest
#

No, that's what you should be doing

gray bear
#

no, it's correct

acoustic lintel
#

Ahh okay

gray bear
#

sorry aba im gonna just lurk

vernal crest
#

!json can you please share them? (Not via screenshot, sorry Bea lol)

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.

acoustic lintel
#

I ended up deleting them from quickquestion because it wouldn’t work 😅 I’ll put one in again and share

vernal crest
#

It might look a little strange to you because I multiline as much of QQs as the game lets me but if you remove the linebreaks it will look like what you're used to, I imagine.

acoustic lintel
#

Ohh thank you so much for this!

#

Ok turns out I was just being dumb it does work I must have missed something the first time

#

Thank you! 🙏

vernal crest
#

You're welcome!

obtuse wigeon
#

I have an issue entirely my doing, I added a custom path item but didn't suffix it with a unique identifier so adding new ones is a bit confusing, thankfully this isn't on a released version but I have used it plentifully in a save, is there a way I can change the ID and Name without it turning into an error item ingame? I had a look at the migrate section on the wiki but that seems to be only for updating to 1.6. As it's only in my save a dirty fix will do me fine

woeful lintel
#

Just to make sure, to add a Building Skin with CP, I need an EditData to add the skin data and a Load matching the "Texture" field of the skin, right?

#

Hmmm, it seems like custom paint mask isn't compatible with skins on most buildings...

#

does the game automatically searches for the paintmask texture matching the skin? It looks like there's no use case in vanilla for this

#

Is there any doc on Data/Paintmasks?

obtuse wigeon
#

I can't find any doc on it but I'm looking in the decompiled game code and I think what "House": "Building/-50 -10/Roof/-25 0/Trim/-25 -8", means is the words "Building", "Roof", "Trim" are referencing the colours #0000ff (blue), #00ff00 (green), and #ff0000 (red) in that order in the <buildingName>_PaintMask.png, and the numbers following are the minimum brightness and maximum brightness? I'm not entirely sure at all though, give me a minute to see if I can modify a custom building to use a paint mask

woeful lintel
#

SVE does it for Premium Coop/Barn and Winery

obtuse wigeon
#

It does? I had no idea, ill have a look at how SVE does it, that will help rather than doing trail and error

woeful lintel
#

My issues is compatibility between skins and paint, because the only building with both are cabins, but the mask is in the texture

#

How can I specify the paint mask for a farmhouse skin?

obtuse wigeon
#

Ahh, I'm not actually too sure at all with that, I think you can check for skins using a GSQ but Looking at it, it may only be checking for the conditions of whether a skin CAN be applied rather than WHICH skin is actually applied

woeful lintel
#

Yup

obtuse wigeon
#

I'm not seeing anything that a content pack can access to get the skin applied, but I'm not versed in C# at all so someone else who is could possibly help further

woeful lintel
#

My only hope would be that the paint mask resource path is made from the (skin defined) texture resource path, but there's no reason for vanilla to do this.

brave fable
#

hi @next plaza , would you mind if i broke down the DrawCustomSkillBuff method in spacecore into individual methods/calls for each buff effect?

currently LOC's cooking menu can't exactly draw additional spacecore buffs as intended, since it tries to draw them as icon+value+name or icon+value in a grid, depending on space available, while spacecore only expects to draw them vertically in full.

i'll throw in a change to the buff draw transpiler that places the buff icons alongside the others instead of with the hp/ep icons if so 🥳

#

it'd also be a bit tricky to mangle it with harmony somehow given all the extra behaviour/i18n for health/stamina regen effects

obtuse wigeon
# woeful lintel My only hope would be that the paint mask resource path is made from the (skin d...

I think actually the game gets the paint mask of a skin by looking for the skin name itself concatinated with _PaintMask, so if you load the skins to <SkinName> (placeholder for the actual skins name) and the paint mask to <SkinName>_PaintMask, then add an entry with your building name followed by "House": "Building/-50 -10/Roof/-25 0/Trim/-25 -8" (with the numbers replaced which might be trail and error) to Data/PaintData it might just work based on the specific skin name

#

I don't know for certain, I may entirely be talking out of my rear and missunderstanding the code entirely

next plaza
#

(Ping for responses, not checking this channel hardly any these days)

brave fable
obtuse wigeon
#

I'm trying to get paint masks to work on a custom building to test out how skins and paintmasks work but I can't seem to get the paint mask to work, it can be painted through robin but the colours aren't changing, Here's the code snippet, where have I gone wrong? https://smapi.io/json/content-patcher/87d0f029be0e485baa4709aae81480db, I tried doing it without reference besides the C# code then used SVE as a reference when it didn't work, I have the same set up as SVE though so I'm a bit confused

#

I think the bit that's messing me up is not having any true idea what the pair of numbers in the Data/PaintData mean i.e "Building/-50 -10/Roof/-25 0/Trim/-25 -8"

#

Never mind, patch reload doesn't work with paint masks apparently, restarting the game did work

woeful lintel
#

so did the paintmask of the skin work properly?

obtuse wigeon
#

Not tested the skin yet, just made the paint mask work, I'm just coding the skin bit rn

lucid iron
#

I thought cabins had skin paint masks

woeful lintel
#

yes but they are included in the same spritesheet as the cabin textures, while other buildings have a different resource path for the paintmask

versed wyvern
#

Was there a patch condition that could check if an NPC exists?

obtuse wigeon
#

The pairs of numbers are indeed the maximum and minimum brightness I'm pretty sure, that's what my testing looks like anyway

woeful lintel
#

thanks a lot for your help! I'll try to do that then, I think I'm just going to keep the same brightness values as vanilla skins.

obtuse wigeon
#

Honestly I found the vanilla brightness values for the farmhouse lead it to be more of a pastel colour, I'm just testing now to see which values give a good range of brightness levels

#

I think -50 50 works as a great range for customisation, all the way from a single shade off from black to an extreamly light, almost white

#

-50 50 gives these min and max values (figured images were better than a weird description)

limpid talon
#

Hey guys! First time typing here so I'm a little scared lol. Anyway.
I've been working on a CP custom map mod for a bit now, and I've finally gotten to the point where I add custom shops, but for the life of me I can not get them to open. I've been at it for the last 5 hours just messing around with anything I can and followed countless tutorials, but no matter what I do, I can't get the window to open when I click in the designated spot (the little hand icon does show up there).
No red or yellow text appears in the logs so I'm basically working off 0 feedback here. Can anyone help?

lucid iron
limpid talon
#

sure hold on

lucid iron
#

With your actual shop id ofc

limpid talon
#

does yourshopidhere have to include modId_shopname or just shop name

#

oh it opened!

#

okay, that's a good start. Then we know where the problem lies

#

I've got a TileData that has the openshop action inside of it, so I'm not sure how it's not opening then

lucid iron
#

Do you have owner check

#

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

limpid talon
#

I think so yes, and the owner is standing at the register

#

I have the shop in a separate file to be included in the content file, do you need the shop json or the content?

lucid iron
#

You should send the shop json

#

Also sent your openshop action args

limpid talon
#

I made the shop off a tutorial

limpid talon
lucid iron
#

Yeah show us what you wrote

limpid talon
lucid iron
#

Hm your shop doesn't have wn owner's entry

#

Ah ok wrong id

lucid iron
limpid talon
limpid talon
lucid iron
limpid talon
#

lol haha

lucid iron
#

The actual shop id is the modid prefixed one though

#

You need that for OpenShop pretty sure

limpid talon
#

ohh okay, let me give that a try

lucid iron
#

Remember no tokens in tiled gotta write it literally

limpid talon
#

ahh I see, I'm gonna boot up the game again and see if that works!

past knot
#

Hello hello! Is there a tutorial for adding custom furniture to the shops and catalogue??

lucid iron
gray bear
#

[[modding:furniture_data]] mayhaps

past knot
#

Just the general furnature catalogue. Its only a few paintings that need to be able to be sold at the night market if possible

gray bear
#

you wanna add them to a trader?

limpid talon
#

The shop finally opened!! Thank you so much for the help, chu√e!

past knot
#

yeah

gray bear
#

that's pretty easy. [[modding:shop_data}}

#

i- darnit. [[modding:shop_data]]

#

i give up,give me a minute

gentle rose
#

(iirc there are some issues with farm computer right now that are being worked out)

gray bear
#

(isn't not meant to be exact match? hmm)

#

what you wanna do is find the data/shops file (gotta unpack it or the entire game), find the id of the shop you want and then

#

there's an example at the bottom of the page

#

well add the furniture first

lucid iron
#

As long as your furniture is available for random sale it'll be there

gray bear
#

all furniture goes there unless like, you tell it not to somehow right

lucid iron
#

Ye

past knot
#

Thank you!

#

I have one more..kind of silly question...how do i find the number for an items index on a tilesheet....

lucid iron
#

For furniture, the tile idx is still based on a 16x16 grid

#

Even though furniture can be quite big

sharp crystal
#

I'm still trying making cooking recipes that accept multiples eggtypes of my mod.
I tried SpaceCore but it seem spacechase0.SpaceCore/CustomCraftingRecipe won't work with content patcher... Making that require C# mod ?

lucid iron
lucid iron
sharp crystal
#

recipe can be added with strict ingredients or generic buildin group.
But in my case I want to allow 4 of my mod items on the same recipe.

People told previously that I need to use spacecore for that.

#

I'm a bit cueless about what can I do to get that working.

lucid iron
#

So does your 4 items share a context tag

sharp crystal
#

yes

#

I created a tag for that but I don't know how to map tag on recipe

vernal crest
#

You want spacechase0.SpaceCore/CookingRecipeOverrides, not customcraftingrecipe

lucid iron
#

Did you read docs here?

woeful lintel
#

is there a command to open Robin's building menu? debug shop Carpenter brings up her shop menu

nimble marlin
#

Hi @brave fable a few friends of mine convinced me not to give up on the cooking minigame, so I went ahead and made a few changes., here's how it looks now:
I was wondering if it'd be okay for me to use the plate sprite you made in the minigame - I thought it'd be a nice way to make it match Love of Cooking. If you’re not comfortable with that or with this addon for LoC being made, no worries - I'll just keep it for private use.

lucid iron
#

It's a tile action instead of trigger tho hm

woeful lintel
#

debug paintbuilding works for me for now

calm nebula
#

Then you can open the menu

lucid iron
#

Ah yeah if you do debug bsm in front of building you get the things

gentle rose
woeful lintel
#

you have to click on it to change the skin, then click again to paint it

#

oops didn't mind to reply to that, it's a "vanilla" behavior

calm nebula
#

Sounds like not an atra problem tbh

#

Atra's current problems involve finding a pair of clean gym shorts

limpid talon
#

Hey guys ^^ I'm back with more shop questions. I've finally got the shop in the game now but I can't get the portrait+dialogue to show up in the window. It only opens as a generic shop window. Additionally it's still openable even if the owner is nowhere near. I've looked back at tutorials and the wiki and such and I'm unsure of what's going wrong.
https://smapi.io/json/none/99b0ecbfeb214cdcba20d9856a03d3b6 Here's the shop json, any ideas?

lucid iron
#

So for the owner check your need the extra args in openshop

#

4 numbers to specify a rectangle

limpid talon
#

ohh! I see, I'll start working on that

lucid iron
#

Im on me phone but look it up on wiki

#

Also a direction arg that makes it so that you need to interact from down

limpid talon
#

thank you!

#

Any thoughts on the portrait/dialogue problem? It's alright if not

vernal crest
#

They are related, because it's not checking for the owner and therefore not choosing your owner entry to use. Try fixing the map action and see if that makes the portrait and dialogue work.

limpid talon
#

ohh thank you! I'll be working on this and report back if I remember :3

oblique meadow
#

Are there any good guides or tools to help with balancing my upgrades in my mods for upgrade costs? I feel Im either too hard or too easy and need to dial it back in

hallow prism
#

upgrades of?

oblique meadow
#

Just when Im designing custom upgrades to buildings, modded items, etc.
Current use case: Im doing an expandable greenhouse. I want to make the upgrades different values but I am struggling to balance them

hallow prism
#

i try to compare with existing upgrades giving similar "power" (ex : a shed gives that much space, an upgraded shed that much, then maybe a medium value is good for my stuff that has a space between those two), then usually i playtest stuff and i see how it goes to tune things

#

there aren't really ready rules because :

  • CA doesn't necessarily follow rules on everything
  • and other mods don't either
oblique meadow
#

and I will do that. I just know there are a lot of good guides and tools I didnt know about. So I was hoping maybe there was a baseline guide out there. Shot in the dark so to say.

hallow prism
#

you can just make something that will make sense for you and hope that it'll work for others (or make it configurable, but it is not solving everything)

oblique meadow
#

I appreciate the info Lumina 🙂

hallow prism
#

sure! to my knowledge there's no formal guide/tool, just this kind of tips

oblique meadow
#

yeah. Figured it was learn as you go. But a guy could hope haha

obtuse wigeon
lucid mulch
obtuse wigeon
#

Ahh gotcha thank you, I shall check that out

#

How do I make this load action work when apperance !=Vanilla or EnableDesaturatedVersion = false, I've got the first bit but I'm not sure how to format it together as they have different values:

{ 
  "Action": "Load",
  "Target": "{{ModId}}_AutoSorterBuilding_PaintMask",
  "FromFile": "Assets/AutoSorterBuilding_PaintMask.png",
  "When": {
    "Appearance |contains=Vanilla": "false",
    "EnableDesaturatedVersion": "false"
  }
},
#

Right now I think it checks for both to be false, where as I want it to check if either are false

gray bear
#

i am confused

obtuse wigeon
#

Actually I don't need to do this, I can just overwrite it

vernal crest
#

For future: merge

limpid talon
vernal crest
obtuse wigeon
gray bear
#

Jupiter have you sent your json?

vernal crest
gray bear
#

you haven't loaded your portrait

#

game doesn't know what it is

limpid talon
obtuse wigeon
gray bear
#

Target is what you want the file's id to be, which needs to be the same as the vendor portrait.
FromFile is the portrait

vernal crest
limpid talon
#

ohh alright! And I do this within the shops file? not my content?

gray bear
#

it'll be another block

obtuse wigeon
#

(I am hating paint masks, They need a full game reload reguardless of how I set it up so that it works with other textures ugh)

vernal crest
#

Why are we jumping to the conclusion that the portrait hasn't been loaded?

gray bear
#

i don't see a load for it

#

oh wait this isn't the content.json

limpid talon
#

I did load the portrait before in the content file

#

for the NPC herself

vernal crest
#

That doesn't mean it hasn't been. There's other json

limpid talon
#

that's why i was a little confused lol

gray bear
#

send the content.json please. sorry

vernal crest
#

Is the NPC herself working properly?

limpid talon
limpid talon
vernal crest
#

I recommend not using custom locations by the way

gray bear
#

ah, in the case portrait should be Portraits/{{ModId}}_Babey

limpid talon
gray bear
#

content patcher

vernal crest
#

And also that you add the mod id prefix to all your ids, including map and location names

vernal crest
limpid talon
#

Also Babey is a different NPC a bit higher up lol, we're working with Pluto

#

sorry for the busy file

vernal crest
#

I am trying to actually look at things myself rather than just shooting down Bea's advice sorry! I'm just on mobile so looking at the wiki page is sloooow

gray bear
#

Right, lemme. e_stares

oblique meadow
#

Silly question. How can I control berry spawning outside of normal seasons. I dont see I can do it with FTM, I dont see any specific settings. But I want to have an area that spawns a variable amount of berries every X days.

gray bear
#

also as for making custom lcoations someone sent me a helpful tutorial a bit ago

vernal crest
#

Bea could you grab Jupiter the link for the location stuff please?

gray bear
#

i will find

vernal crest
#

I'll be very slow trying to do it

limpid talon
#

that would be wonderful! I had a hard time implementing my custom maps for a while, so I kind of just grabbed the first thing that worked after painstaking hours lol

gray bear
vernal crest
#

Actually Jupiter can you please show me a screenshot of your action openshop info in Tiled?

obtuse wigeon
gray bear
#

ok that's not the one, give me a moment

limpid talon
#

so glad i mustered up the courage to talk in here lol, made so much progress in an hour that would've taken me days on my own!

gray bear
limpid talon
gray bear
#

afraid i don't know much about random dialouge, considering how i do mine

limpid talon
#

lolll no worries, honestly at this point I'm willing to settle for no dialogue as long as I can get this portrait working

gray bear
#

does the dialogue work at all?

limpid talon
#

no dialogue pops up when I open the shop window, it's only a generic window

#

This is all

vernal crest
#

And what happens if your NPC isn't there when you try opening the shop?

tiny zealot
#

try making your game window wider, if possible

#

if there isn't enough room for the shop owner they just don't appear

limpid talon
brittle pasture
tiny zealot
limpid talon
vernal crest
#

Let's try a patch export

gray bear
#

[pokes code with stick]

limpid talon
#

oh jeez what's that

vernal crest
#

Can you copy patch export Data/Shops into the console and then upload the file it exports to the json validator website and send a link?

#

It will tell you in the console where it's exported to

limpid talon
#

sure hold on

vernal crest
#

Also, have you tried it without the portrait field?

limpid talon
limpid talon
#

I have not tried that, but I can

vernal crest
#

Don't close and reopen the game, just use patch reload

#

patch reload yourmodid

limpid talon
#

wait, that's a thing you can do? Have i been opening and reclosing my game a million times for nothing???

vernal crest
#

Yes lol sorry

gray bear
#

some things do require it but, not yours

limpid talon
#

my god my life has just changed hold on I'm working on it

hard fern
#

why did i try and test my mod when i didnt even half half of it ready...

#

im so tired

vernal crest
#

Argh my phone won't open the patch export, can someone please check if Jupiter's shop data looks ok in there

limpid talon
#

alright I ran it without the portrait line, and not much changed

#

WAIT

#

okay it worked :3 teehee

#

you guys are saints

gray bear
#

won't load much on pc either

#

am wait

vernal crest
#

Are you testing this with a million mods in your mods list Jupiter?

limpid talon
#

only things like cjb and monsterspawner

vernal crest
limpid talon
gray bear
#

json validator having a time™

limpid talon
#

adding the portrait line back is changes nothing, portrait's still there!! I don't know how this happened but it works

vernal crest
#

Well that's strange lol

#

Are you sure you saved after your set of edits before this?

gray bear
#

maybe some sorta cursed key

limpid talon
#

alright well that's a separate issue

limpid talon
gray bear
#

unrelated to her voidness but love her design

limpid talon
vernal crest
limpid talon
#

this mod started as just a custom NPC mod for her but suddenly a whole town started forming

hallow prism
gray bear
#

sometimes you get an empty symbol thing that breaks the coe

limpid talon
gray bear
#

tho smapi complains about it

#

editing the wrong file...

vernal crest
#

Oh so the dialogue is still not working?

limpid talon
limpid talon
vernal crest
#

Try commenting out the spring entry so you only have the default

gray bear
#

the dialouge looks fineee

#

but that never stopped anything from working

vernal crest
#

What time of day are you testing this?

limpid talon
#

9am, when the shop opens

vernal crest
#

Have you tried waiting a little bit longer? Like 930?

gray bear
#

the shop opens whenever pluto is there right

vernal crest
#

(Forgive me yoba for not writing 0930 just now)

limpid talon
#

I have tried it at different times as well, 10-11 as well

limpid talon
vernal crest
#

Okay, that rules out strange timing issues

limpid talon
#

checking out the commented out spring dialogue rn, waiting for her to arrive to the store

gray bear
#

make sure you really look at her at the way that conveys the urgency /j

limpid talon
#

LOLL I will!

vernal crest
#

I am too impatient to wait. I usually stand behind the shop and use debug wctm to warp them there lol

gray bear
#

kidnap

limpid talon
#

still nothing

limpid talon
vernal crest
#

Sometimes the NPC really wants to keep moving though so I only have a second to race around to the other side of the counter before they voidwalk lol

limpid talon
#

lollll

gray bear
#

why won't she speakkk

#

how can i amrry herrr

oblique meadow
#

Thats when you noclip through the counter

limpid talon
#

grrrrr

gray bear
#

ok seriously tf

limpid talon
#

alright gang i have bad news

#

i needed to drag the window EVEN WIDER

#

and there it is

gray bear
#

play in full screen

limpid talon
#

this is not a reasonable window size 😭

vernal crest
#

Oh dear

#

Please test in full screen for things like this in future!!!

limpid talon
#

sorry 😭

gray bear
#

ok it wasn't dialogue jorg eating it at least

#

he cannot be stopped

vernal crest
#

It's okay you didn't know lol

limpid talon
#

I'm a windowed player, I never even consider that it might change things

#

will be doing this in fullscreen from now on

gray bear
#

stardew ui be like that

limpid talon
#

thank you all so much for helping me for the last hour-or-so

#

I'm definitely a lot more confident to talk here in the future now, lol

vernal crest
#

Well I now have a new thing to put on my list of stuff to check for shops troubleshooting haha

gray bear
#

ur doing great Love_Heart

#

does this happen with vanilla shops as well

limpid talon
#

trust you will hear from me again when i inevitably hit another wall with this mod

vernal crest
#

You've been doing a good job though! We didn't have to correct your syntax for anything which is a nice change

limpid talon
gray bear
#

besides the game window being mean to you, which isn't your fault, the code has no errors

vernal crest
#

So often it's "you're missing a comma" or "you used the wrong bracket"

limpid talon
gray bear
#

or "why did you put that there? it doesn't go there"

limpid talon
vernal crest
#

I wonder if it's just the line wrapping of "default dialogue" being quite wide

gray bear
#

i'd suggest i18n the dialogue eventually but i'd imagine you'd do that

limpid talon
#

I'm a game dev but NOT a programmer so this is all very new to me lol. It does help me give some more respect to the programmers in my studio

limpid talon
vernal crest
#

Ooh what is your role?

gray bear
limpid talon
gray bear
#

that's so cool!!!

limpid talon
#

Thank you! ^^

calm nebula
#

Sounds cool!

vernal crest
#

You can do fancy randomisation and weighted dialogue pools with i18n too but even when it's just translation we recommend it because you never know who might want to translate your mod

limpid talon
#

you guys are so sweet ^^

limpid talon
gray bear
vernal crest
#

(But check in here if you do decide to make the switch because you'll need guidance to understand blank loads)

limpid talon
#

(Oh absolutely, I'm going to instantly crash and burn)

gray bear
#

(i use a blank load and idk what that do)

#

(chu said to use it when adding children dialouge)

hard fern
#

hmmmm something dont look right here... SDVpuffersweats

limpid talon
#

hummmm

gentle rose
gray bear
#

local token troubles?

hard fern
#

no i messed up the spriteindex 😭

gray bear
#

oh yeah i do that a lot

#

remember it starts with 0 (i never do)

limpid talon
hard fern
#

this is like the 7th time ive made an oopsie trying to test

vernal crest
# gray bear (i use a blank load and idk what that do)

(It's to let you use tokens, Bea, because CP passes files to the game without editing them when you use a Load so it never actually replaces the tokens. Hence why you load a blank file first to create the asset and then an EditData to add your data to the asset. If you just do the EditData without the Load first, there's no asset to edit.)

gentle rose
vernal crest
#

Eep sorry I forgot to turn off ping

gray bear
#

Oooh, I see. thank you for explaining

limpid talon
gray bear
#

nw, pings to inform bea is fine. bea knows not much

limpid talon
#

I forget to turn off pings a lot too, force of habit lol

gray bear
#

sigh i should write the dialouge for the kids,,

hard fern
gray bear
#

what do kids say

humble timber
#

oh speak of writing dialogue/i18n, hmn.., what's the best way for me to keep dialogue for 19 characters organized I'm gonna explode. would it actually possibly be best for me to write dialogue in individual character dialogue then convert it to i18n??? SDVpufferwaaah

gentle rose
limpid talon
tiny zealot
gentle rose
vernal crest
#

Ahh sorry I pinged you too Kat I didn't mean to

humble timber
#

Oh wait you can use folders for it???

gray bear
#

oh yeah that's a new thing u can do

limpid talon
humble timber
#

I peeked in big expansion folders and saw just one default.json katrie7Ded

tiny zealot
#

yeah! make i18n/default/ and then put a bunch of whatevers.json inside it and SMAPI/CP will use them all

vernal crest
#

That's because multiple folders is relatively recent

gray bear
#

19 i18ns,,,

humble timber
#

huh!

gray bear
#

translators will love u

humble timber
#

lmao

gray bear
#

see what i do is make all i18n first without dialouge, just placeholder, put it in place. then add actual words

#

Tue Dialogue$1

vernal crest
#

I'm going to cry if people start doing it without understanding it and we get one i18n file per patch the way some people are now doing one include per patch

gray bear
#

i would explode

#

this is why this isn't publicity available info maybe /j

tiny zealot
#

dear god, one include per patch SDVpufferyoba one of the big benefits of include is gating a bunch of stuff behind the same When condition!

humble timber
#

I am using uh, one of the more recent templates? and theres a ton of blank uh. words are hard omg. but, i do already have a lot of character.season.day: whatever

hard fern
#

hm there is a problem because now my... machine rules actually don't work. as in only one recipe works out of all of them Lmao... what have i done SDVpuffersweats

gray bear
#

stares

#

all my kids hate mondays

humble timber
#

lmao

hard fern
#

did i make a mistake putting all the includes with the local tokens in one file? (that i also used Include on)

gray bear
#

forsy i can't know if i no see code

vernal crest
gray bear
#

o

obtuse wigeon
#

What's the general ettiquette consensus on replaceing images someone made for your mod?

gray bear
#

do local tokens need to be in all caps

hard fern
#

lookup anything is only showing the last recipe in the list so clearly i fucked up lol

gray bear
#

i just like yelling

#

unrelated

#

hm

tiny zealot
vernal crest
tiny zealot
#

i wouldn't go out of my way to warn them about it or anything, but maybe have a prepared reply like "sorry, i didn't need those images anymore because <reason>"

obtuse wigeon
vernal crest
gray bear
#

o

#

well that's not causing issues

hard fern
obtuse wigeon
#

given the reason is, the way I'm doing it now allows for much more customisation and much cleaner code, I'd say it's a pretty valid reason

gray bear
#

what's the diff between the combo one and

obtuse wigeon
#

Do local tokens follow the same rules as variables in C# no starting with an underscore or numbers?

gray bear
#

regular machines rules

hard fern
#

uhh there's no difference other than i changed the inputs so that you have to use different items

#

cuz like red + yellow make orange but there are also Orange things in game

vernal crest
hard fern
#

SDVpuffersweats yeahhh i thought that might be it

#

one sec

gray bear
#

is, color_black a tag used by the game

#

oh yeah it is

hard fern
#

yeah it is

#

it's just being overwritten

vernal crest
hard fern
#

how do i get it to Not Overwrite everything...

obtuse wigeon
hard fern
#

SDVpuffersweats hm (unrelated but funny)

obtuse wigeon
#

How on earth have you got it to do that?

gray bear
#

why they do be overwriting,,,

#

bug

obtuse wigeon
vernal crest
#

I think that by using entries without TargetField you're overwriting the entire machine entry.

hard fern
#

blehhh ok

#

yeah

#

oops

#

ill fix that...

gray bear
#

rightt bc it got more than one entry

vernal crest
hard fern
#

🤔 uhh so like where would i put the target field thing again..?

vernal crest
#

And then they get broken fish

#

Same level as action

obtuse wigeon
#

I think I can safely say the only time I use spaces is in display text, even then it's i18nified with the only spaces being in the i18ne file

gray bear
#

do you need both target and targerfield

vernal crest
#

Yes

#

Otherwise where will it find the field to target

gray bear
#

would it be like "Machines", "Rules"

#

can u tell i've never used one

vernal crest
#

Are you reading the docs Bea?

gray bear
#

yes

#

wish reading equaled understanding

vernal crest
#

Does data/machines contain a field called machines and a field inside that called rules? /gen

gray bear
#

wait i believe i have, understood

vernal crest
#

(Never made a machine, don't remember off the top of my head how it's laid out)

gray bear
#

"machine id", "OutputRules"

#

i have connected the dog

#

dots*

hard fern
#

i think i did this wrong

vernal crest
#

Yup that's the one Bea

hard fern
#

it's telling me there's no matching target now

#

(i didnt know where i was supposed to put the target fields sorry)

gray bear
#

need

hard fern
#

(i only know how to do this for fruit trees)

gray bear
#

(BC)

hard fern
#

oh

#

duh

gray bear
#

machines.json has it

hard fern
#

yeah nah it still doesn't like that

gray bear
#

i have found issue

#

it's called s

#

it's TargetFields

vernal crest
#

You are adding your entire machine as an entry inside its outputrules

hard fern
#

a

#

....

#

maybe i should just do this all manually?

#

and not use local tokens

gray bear
#

wait no

hard fern
#

SDVpufferflat i have it already written

gray bear
#

aba is right there's no S

vernal crest
#

Up to you forsy but you'd need to know this if you ever decide to add an output rule to a vanilla or other mod's machine anyway

hard fern
#

i mean i have done it before

#

i just

gray bear
#

i admit i am confused, where does target field go

hard fern
#

have no clue what im doing

vernal crest
#

Why not look at what you've done before?

#

The principle here is unrelated to the local tokens

vernal crest
#

Try replacing your {{ModId}}_DyeStation on line 11 with {{ModId}}_{{ITEMID}}

#

(This is a little bit of trial and error on my part because sometimes I'm not sure when to use the extra CP key)

humble timber
#

Btw is there any documentation mention of using folder/multiple files for i18n and does it change how you have to format character dialogue jsons at all

gray bear
#

from wiki

hard fern
#

ok now the... the problem is that it cant find my target again SDVpufferflat

vernal crest
hard fern
#

🤔 no

vernal crest
#

Oh but you haven't actually created your dyestation anywhere earlier have you

gray bear
#

no no, there's a json with it

humble timber
#

Hmm ty bea/aba
now time to decide how i actually want to organize this lmao

hard fern
#
                    "Name": "{{ModId}}_DyeStation",
                    "DisplayName": "{{i18n:DyeStation.name}}",
                    "Description": "{{i18n:DyeStation.desc}}",
                    "Price": 50,
                    "Fragility": 0,
                    "CanBePlacedOutdoors": true,
                    "CanBePlacedIndoors": true,
                    "IsLamp": false,
                    "Texture": "{{ModId}}\\BigCraftables",
                    "SpriteIndex": 1,
                      "ContextTags": [
                        "swl_machine_item"
                    ]
                },``` does this not create it... do i need to add something else 🤔
vernal crest
#

You will need to do that (and line 11 needs to specifically have the local token in it, you can't give it a static id)

vernal crest
hard fern
#

a

#

...

#

its in my content.json

#

after the includes.

vernal crest
#

It needs to be before it

#

(I have made this mistake and spent ages ripping my hair out before iro pointed it out lol)

gray bear
#

always thought smapi just runs every block at the same time

vernal crest
#

It's content patcher and no it's in line order

hard fern
#

SDVpufferchickcry its still mad at me for reasons unknown

vernal crest
#

Did you change line 11 like I said?

hard fern
#

"{{ModId}}_{{ITEMID}}": i changed it to this

vernal crest
#

Also if you share your log I'll be able to see the errors more accurately

#

Selph please save me I barely know what I'm doing and I'm on mobile so I can barely see what I'm doing either

hard fern
#

uh yeah sorry my log is scary

ocean sailBOT
#

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

gray bear
#

gasp

#

do you just know when people are calling you

brittle pasture
gray bear
#

iw as about to tag u

brittle pasture
#

just insert your entire object

#

it’s complaining because you’re trying to targetfield into something that doesn’t exist

vernal crest
#

But we are editing an existing machine Selph

#

Using local tokens

#

The original problem was that Forsy was overwriting the output rules with every local token include

#

So only the final one existed in the data

vernal crest
brittle pasture
#

is there a block that initializes the object first

#

(just tuned in sorry if i missed it)

vernal crest
brittle pasture
#

that’s the Data/BigCraftables block

#

is there a Data/Machines block

vernal crest
#

Oh right they need a data/machines and a data/bc

hard fern
#

o

#

could i just make one regular machine rule and then local token the rest

#

would that work

vernal crest
#

Yeah if you wanted but you'd still need this TargetField stuff

brittle pasture
#

you need to create the entry in Data/Machines first with the top level fields
make the OutputRules list empty if you want

hard fern
#

ill go ahead and try that then

brittle pasture
#

then you can LC all the “insert into OutputRules” stuff

vernal crest
#

LC?

brittle pasture
#

local ctoken

#

😌

vernal crest
#

I'm imagining that being said like it's Yiddish

gray bear
#

im sorry forsy, the example i gave you just doesn't work for machines rules. i was meaning you used them for the items themselves, but i should've said

hard fern
#

wdym it doesn't work for machine rules

vernal crest
#

You can't put that into your include

hard fern
#

shit

gray bear
#

no no, local tokens can work for machines rules. it's just the one i sent was literally just items

vernal crest
#

Because now it's making a new machine every time the include repeats

#

Pop it in your content.json above the include patch

hard fern
#

its still not working 🤔

#

this is my content.json

vernal crest
#

What does not working mean in this context. Same error about the target not existing?

hard fern
#

uh no it's back to only one machine rule existing

#

sorry

vernal crest
#

Perhaps it should be Fields instead of Entries?

hard fern
#

uh in my content.json where i have the machine rules?

brittle pasture
#

it doesn’t matter

#

post your local token stuff pls

hard fern
brittle pasture
#

what does patch export look like
occasionally lookup anything may not properly update

hard fern
#

ok i reloaded the game itself so my log would be cleaner but

#

uh

#

....?

#

and in the patch export is just a bunch of these { "Id": null, "Triggers": null, "UseFirstValidOutput": false, "OutputItem": null, "MinutesUntilReady": 50, "DaysUntilReady": -1, "InvalidCountMessage": null, "RecalculateOnCollect": false }, for the machine rules that arent working

vernal crest
#

Also, you've got two includes there - add machine rules and add machine rules combo. Have you fixed both of them?

vernal crest
brittle pasture
#

yeah it looks like that™, I wanna fix it but no time

#

(I mean the LA window)

hard fern
#

i think i messed up in the other file

#

one second

vernal crest
#

I need to sleep so good luck!

hard fern
#

SDVpufferflat have fun sleeping, sorry i have only 30% of an idea of what im doing

lucid iron
#

patch summary <your mod id>

hidden moss
brittle pasture
ocean sailBOT
#

If you have a mod idea that you aren't planning to make yourself, you can put it in the mod ideas github: https://github.com/StardewModders/mod-ideas

However, this does not mean anyone is guaranteed to work on your idea—modders who are looking for ideas sometimes go through and work on what they find interesting off this list. If you want to pay someone to make your mod idea, there are a few people who do commissions (mostly art, sometimes code); you can ask around, search usernames for the word comms, or see !commissions.

hidden moss
#

Ok

ocean sailBOT
#

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

brittle pasture
#

looks like all the errors are in your Combo files which I dont believe you posted yet

hard fern
#

oh

#

here

#

im like this close to just yeeting that one altogether and making the player combine dyes by hand and just using what i have been for the rest

brittle pasture
#

missing OUTPUTID

hard fern
#

where?

brittle pasture
#

in your include

brittle pasture
#

the initial version you posted above didnt have it

hard fern
#

uh.. now im confused

#

where am i supposed to put it

#

is it in there or not...?

brittle pasture
#

you have it now, but now every of your Combo includes are using the same ITEMID field

#

so they’re writing into the same rule

hard fern
#

SDVpufferflat dang

#

ok so

#

im just not going to do it that way

#

i'll make the combination dyes a crafting recipe

brittle pasture
#

I do think that is better yes, the users get to control which 2 dyes they use

#

for machines you only control the main input item, and have to rely on output/inventory order for the fuel

modest dagger
#

i'm a fan of using EMC to force the machines to do what i want

brittle pasture
#

you can make fuchsia dye craftable from pink+purple dye and then just add a fuchsia dye+white yarn ball machine recipe

hard fern
#

yep... honestly idk why i didnt decide to do that from the start

#

and instead gave myself machine headache

brittle pasture
#

if you wanna go all fancy you can add Better Crafting and limit your combo dye recipes to a custom crafting station SDVpufferwoke

hard fern
#

i am already using the joys of better crafting

#

i just havent actually like. implemented it yet

brittle pasture
#

(for all the fancy multifuel feature I added to EMC including the ability to inherit multiple flavors from fuels I still prefer it being used very sparingly because of the comparative lack of control of which fuel to use)

hard fern
#

i want to use the output price modifier thing for the extra crafting configs...

#

since ive decided to allow making dye out of literally anything... (maybe i should put some limits...)

#

(can you imagine fish dye)

#

(do fish even have color?)

brittle pasture
#

carp wine the sequel

#

almost every object in SDV have color, including fish whose color is used to color their roe

hard fern
#

hmm

#

fish dye..

#

powdered fish dye

gray bear
#

feesh

calm nebula
#

O.o are we dyeing yarn

hard fern
#

yes

calm nebula
#

Selph can we do varigates

hard fern
#

and i am paying dearly for it

#

fuchsia is cursed

#

why is it just this one

calm nebula
gray bear
#

i have realized, i haven't posted my mod in mod-showcase and i am 4 udls away from forever premium,,, can anyone publish this :3

:sushi: **THE SUSHI PROJECT** :sushi:  1.3.8 is here :partying_face: 
Featuring a desaturated look for all your lovely recolors, as well as some BETAS sponsored map fixes, to avoid any unwanted foliage near your sushi! Please make sure to download it while updating!

Some images were also changed, I will get to the mod images I swear :pray: 

https://www.nexusmods.com/stardewvalley/mods/16442```
lucid iron
gray bear
#

o. didn't know

#

🍣 THE SUSHI PROJECT 🍣 1.3.8 is here 🥳
Featuring a desaturated look for all your lovely recolors, as well as some BETAS sponsored map fixes, to avoid any unwanted foliage near your sushi! Please make sure to download it while updating!
Some images were also changed, I will get to the mod images I swear 🙏
https://www.nexusmods.com/stardewvalley/mods/16442

Nexus Mods :: Stardew Valley

Adds a whole bunch (34) sushi recipes to the game, using vanilla ingredients!

#

pls and ty ff_squish_frog

hard fern
#

sigh i come back here head in hands

#

because

#

one singular item is showing up as an error item

#

and doesn't have any recipes for it

gray bear
#

CatStab i will stab him

#

the one with the object data i think

hard fern
#

it's the fuchsia yarn that's the problem btw

#

the objects show up just fine

#

but when i go and put it in the machine

#

it outputs an error yarn

gray bear
#

looks fine, where are the objects

gray bear
#

it, it couldn't be the fact one has lowercase B righht

#

no that's display name

uncut viper
#

(bea you need 30,000 UDLs for lifetime premium)

gray bear
#

i have 22,996

hard fern
#

yes

gray bear
#

oh

#

im, stupid. nvm

hard fern
#

30-22

#

😭

gray bear
#

one day

uncut viper
#

(i will still download all of your mods anyway SDVpufferheart)

hard fern
#

i love sushi

gray bear
#

thanks guys t_pray

hard fern
gray bear
#

forsy,,, idk why ur Fuchsia is acting up

hard fern
#

😭 i dunno either...

#

it's bizarre bc i just copy pasted it all from the others

#

it shouldnt be acting up??

gray bear
#

yeah what, the fuck

whole raptor
#

Lance's schedule confuses the hell out of me SDVpufferpain

gray bear
#

wait forsy do the item ids match

whole raptor
#

Why is the include commented out, while leaving just 1 regular and 4 marriage schedules SDVpufferthink

gray bear
#

are those case sensitive

#

b is for b-fuck this

hard fern
#

well i fixed the lowecase 🤔 i think

#

i did not

#

💀

#

im gonna cry now

gray bear
#

i am so sorry

#

that's so stupid

#

it's the only noticable different

uncut viper
#

also psst bea BETAS 3.1.0 is out now which does let you regenerate trees from the Paths layer now which i was told you were trying to do (i was probably there when you originally said it too but uhh long week + memory bad = idr)

gray bear
#

!!! exciting

hollow dust
#

hello, how do you guys set night tiles :0. like how do the tiles change when it hits 7pm

hard fern
valid folio
#

Hi, quick question — do you have any system to calculate the selling price of an item? For example, a smoothie that uses flavored milk (its price depends on the fruit used), sugar, and ice. Sugar costs 50 and ice costs 60, while a banana-flavored milk costs 450. The main item in the recipe (crafted in a machine) is the flavored milk. I don’t want to set prices that are abusive, but also not ridiculously low. Ancient Fruit or Starfruit make smoothie prices skyrocket.

What I came up with for the smoothie is simply doubling the price of the main item. So a banana smoothie would sell for 900, but with Ancient Fruit or Starfruit, doubling feels like too much, so maybe I’ll lower the multiplier to 1.5 or 1.2. What do you think?

For other products, like Italian ice cream, I set a multiplier and add a fixed value, since one of its ingredients doesn’t change in price. For example, custard always costs 685, so the ice cream would be: fruit (affected by multiplier) + custard (685) = final price. I think I’ll leave the multiplier at 1.2. Do you think this is a good way to calculate product prices without harming the game’s progression?

hard fern
# hollow dust hello, how do you guys set night tiles :0. like how do the tiles change when it ...

sorry, here's a proper answer, i forgot to finish answering the question the first time... In the map properties of a map (say, like a regular npc's house, i like picking clint's bc it's small) there's DayTiles and NightTiles, they follow the same format. i'd advise looking at the maps page on the wiki for more information but it's basically

<The layer the tile is on> <X and Y coordinate of the tile> <the Id of the tile in the tilesheet>

tiny zealot
#

i always try to price/balance stuff based on when things become available in vanilla and how much they cost

hard fern
#

im not very good at pricing but i just go off of the price of the items used to make the item. and then some kind of multiplier to it. like add two items together and multiply it by 1.5 or something

#

its pretty basic and i dont expect all my items to be "balanced" as a result

#

but i am no financial expert

calm nebula
#

For pricing, i recommend getting your masters in business administration first

#

Then you just raise prices as much as the market can bear

#

(I'm so kidding lol)

#

It's by vibes

oblique meadow
# hollow dust hello, how do you guys set night tiles :0. like how do the tiles change when it ...

This is an example of night tile code I used on one of my farms:

    {
        "Action": "EditMap",
        "Target": "Maps/{{ModId}}_RusticRidge",
        "MapProperties": {
          "NightTiles": "Buildings1 83 51 507 Buildings1 56 34 507 Buildings1 47 108 507 Buildings1 5 17 507 Buildings2 50 67 144 Buildings2 17 17 144 Buildings2 11 17 144 ",
          "Light": "83 51 4 56 34 4 47 108 4 5 17 4 50 67 4 11 17 4 17 17 4"
          
        },
        "When": {
          "Time": "{{Range: 1900, 2600}}"
        },
        "Update": "OnTimeChange"
      },```
#

maybe not the prettiest code. But it works

whole raptor
#

Sometimes I wish there was some kind of OR true dependency SDVpufferthinkblob Like you need to have either one or the other mod installed

uncut viper
#

i would think by definition if you dont need one of them, it cant be a true dependency SDVpuffersquee

whole raptor
#

... half true? SDVpuffersquee

uncut viper
#

i think we call that optional /lh

whole raptor
#

Hmm optional would suggest you can have 1, 2 or none, but in this case you'd need to have only 1 SDVkrobusgiggle

valid folio
# tiny zealot the system for pricing stuff is "vibes", for the most part, since there's no har...

Yes, the strong point of my mod should be available starting from mid-game, and some things take quite a bit of time because they’re production chains. For example, planting the crop, harvesting it, putting it into a machine to process, doing the same with other crops or fruit trees, mixing them in another machine, and then waiting for it to process. But there are products that require other artisan products, so it takes even more time.

My machines process relatively fast compared to the base game, but even then it can sometimes take a while. However, once the production chain is set up, everything speeds up. It’s a semi-realistic mod (I simplified or combined some processes with others, otherwise whoever plays my mod would suffer, haha). Anyway, I’ll be making a guide for each machine and artisan product. For now I’m testing prices to see what I’ll adjust or keep.

uncut viper
#

which is a case where i'd just mark one as a true dependency

#

what two mods are functionally identical enough that you can get away with either without any other changes? /gen

valid folio
tiny zealot
whole raptor
#

SVE... and a small cutout from SVE I'm technically working on 😅

valid folio
whole raptor
#

I can always make it so the mod always works, but without none of the mods it just does nothing... and with both it'll implode the game if people don't read SDVkrobusgiggle

gray bear
#

right i fix summit

#

i can do this, i can read

cold marsh
#

How do I make my custom legendary fish only give the specific min-max amount of roe I set it to instead of the amount in FishPondData under "Id": "LegendaryFish"?

gray bear
#

if i don't specify any of x,y width,height will it affect the whole map? i lied i can't read

cold marsh
brittle pasture
#

roe has a built in chance to generate extra

#

that is hardcoded

gray bear
#

roe-coded

cold marsh
#

Kind of unfortunate since that makes balancing hard

brittle pasture
#

make sure it’s unique otherwise

gray bear
#

ok i need, a rectangle

#

this is so fine

whole raptor
#

I remember making a custom summit map... wasn't fun SDVpufferblob

gray bear
#

i may cry

#

map lumpy, no tree

#

im sorry button i can't read good

uncut viper
#

do you only want to regenerate specific trees bea, not the whole map? and it does have trees from Paths in Tiled, right?

gray bear
#

there's tree, bush, grass

#

i need whole map

uncut viper
#

(is Grass on the Paths layer? /gen idk mapmaking well)

gray bear
#

(i put it on there shrug seems to work)

uncut viper
#

if you need the whole map then you dont need an X Y Width or Height

whole raptor
#

I think I used panoramas from DaisyNiko's tilesheets for my Romanceable Rasmodius Updated if you want an example

uncut viper
#

just Spiderbuttons.BETAS_RegeneratePathsLayer YourLocationName

#

(make sure it runs on host as well)

gray bear
#

wait my location name? im editing summit

uncut viper
#

well then your location name would be Summit then

gray bear
#

kewl

whole raptor
#

Oh you're editing, not making a fake one, nvm then 😅

uncut viper
#

or w/e its internal name may be if not Summit

gray bear
#

if it's not idk what it would be

gray bear
#

why do you hate me summit pain

hot gale
uncut viper
#

are you sure that trigger action ID has not already run?

#

Clear_That_Terrain! ?

gray bear
#

is this a once per save thing

uncut viper
#

all trigger actions are once per save by default

gray bear
#

i copied this from tsp

#

right can i uh,,, un-trigger it

uncut viper
#

you have MarkActionApplied false, but if that was added after and not from the getgo, its never gonna be read bc the trigger action itself wont be read

#

but also are you sure thats the right ID

#

you're not clearing any terrain

#

are you not just overwriting it with the actual clear terrain action later on in your jsons

gray bear
#

i-

hot gale
gray bear
#

new id time

uncut viper
#

you should always be using unique IDs anyway

#

you cant have duplicate keys

whole raptor
gray bear
#

see i know this, i just, rushed PensiveButtPuffer

hot gale
# hot gale

Actively switching crops in the villager greenhouse, each crop has diffrent food output

uncut viper
#

MMAP sets the actual like, background in code and tiles it no matter the screen size afaik

#

unlike a tilesheet panorama

#

maybe does parallaxing? idr

gray bear
#

dunno but considering my track record with testing things...

#

if i change the id it should, re-trigger no

#

maybe i'll just make a new test save

marble shuttle
#

Hi, sorry to post this message during a conversation and sorry if i post it in the wrong channel but i need some help, i want to create a mod and it will be my first mod, but I'm not sure where to start because I feel like I'm getting into something very complicated (my idea was to make a Moomintroll figurine, but I feel like that's too ambitious on my part). so what's easy to mod for a start, given that I don't know much about coding?

uncut viper
ocean sailBOT
#

Making mods can be broadly divided into two categories:

Usually it’s easier to start with making content packs, since you don't need to learn programming.

uncut viper
#

if the figurine is like, a decorative furniture item, thats pretty easy

marble shuttle
#

Oh ok!

#

thanks!

uncut viper
#

you'll want the Content Patcher stuff

#

ignore the C# stuff

#

so the first bullet point

uncut viper
#

and the ID?

#

the field inside the triggeraction

gray bear
#

o

uncut viper
#

you should always make your ID match the entry key regardless, but the entry key beingunique is important to make sure its not overwritten by your other things in your content.json somewhere

#

the ID controls how the game tracks which trigger actions have been seen

gray bear
#

froggy_notes understood, thank you

uncut viper
#

but that wont matter if the json never makes it into the game

#

never re-use IDs or entry keys for anything ever, basically

#

unless you're 100% sure its fine

gray bear
#

i will not mess with trigger actions

#

i fear them

gaunt orbit
#

@tawny ore where can I find the API interfaces for Custom Bush? I don't see them in the repo anywhere

hot gale
#

I think I am getting to a point in Mayor's Town where I may start looking for alpha testers

urban patrol
gray bear
#

pain™

#

okay this is, a new save. why

#

crisis averted, had to sleep

#

gonna, put that in the mod page (when i make it)

whole raptor
#

Ooh, nice

uncut viper
#

if you set it to LocationChanged you shouldnt need to sleep

#

it'd only be an issue if someone loaded their save and were already in the Summit but the odds of that are low

gray bear
#

gonna be like "please don't install the mod then use a tent to sleep in the summit"

hallow prism
#

!reload (needing to verify a command)

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

Now if only there was one for reloading dynamic tokens SDVkrobusgiggle /lh

gaunt orbit
#

aaaah thank you

hot gale
#

If anyone is interested in testing out this mod I'm working on I have set up a Discord to follow along my progress and get new test builds, make suggestions - report bugs, etc

I just posted the v0.1 Alpha Test Build there and would love to see some feedback!

The general idea of the mod is to bring a new layer of gameplay to Stardew in the form of City Management. Think Mine Colonies/Dwarf Fortress in Stardew!

#

Just to verify - I am allowed to post discord invites here correct?

hot gale
#

That's why I thought to ask again, someone said otherwise and I wasnt sure thanks

#

Hmm, I guess I'll just make a new mod listing for it on Nexus ;p

lucid iron
#

You can make a thread

hot gale
#

Can I post .zips here?

lucid iron
#

Yeah

hot gale
#

oh okay, that will probably work fine then

lucid iron
#

But if u wanna have one space for all the stuff thread useful

hot gale
#

Good looking out

abstract gull
uncut viper
#

this server does not provide support for Android SMAPI

#

(this server is also English only)

whole raptor
#

You forwarded the messages from the server that does provide support for Android SMAPI tho.. (I think)

hard fern
#

the thai server

#

yeah

#

is the server that handled android smapi issues 🤔

iron ridge
hot gale
#

Mayor's Town v0.1 Alpha Test

shy harbor
#

Is the lighting in Cursors supposed to look like this or are my files messed up?