#making-mods-general

1 messages · Page 448 of 1

elder kite
#

Oh right, back9 might not even be a layer on that tileset

#

Worth a quick test then I suppose

vernal crest
#

Oh yeah you're right, with it being Back9 you should restrict it to just SVE

tired matrix
#

Oh so i put the mod id?

#

Also guys is there any way i can make the sprite appear here even tho it has like 5 sprites one for each season and a beach one?

vernal crest
tired matrix
#

Alright will fix it thanks!

vernal crest
indigo yoke
#

is it possible to have it so a big craftable triggers a custom tile property when the player clicks on it?

#

like it just popped in my head that it would be neat as a level 9 reward in Wizardry to have it so you can craft a spell altar so you can access your spellbook anywhere. but how currently the spell book access works is that it checks to see if a tile has the "MagicAltar" property to open it.

calm nebula
#

Iirc spacecore has that

#

Definitely for furniture

formal laurel
#

The main idea of ​​the mod is to make a city where at first there are simple things and as we progress we add stories, buying and selling places, farms, hotels, etc.
The main story would be about Joja, since in the center of the city there would be a multi-story building with its logo on top, that building would be the Joja headquarters in the entire world, our mission is to get the corrupt people out of Joja Company (it has to be a challenge) and make the owner of the company, changing its name to Stardew Company

indigo yoke
#

to the spacecore page!

drowsy pewter
#

incredibly ambitious idea, wish you the best

late gull
#

You don't need spacecore to do that. You can do it through just SMAPI + harmony

formal laurel
#

Thanks, I'm looking for help with the NPCs (their pixel art events, etc.), and the design of the city. For now, it will be vanilla until I create original designs for the buildings and constructions. Surely when I don't know how to do something, I'll ask in this group since I'm not good at programming. When I have the first alpha of the city, I'll put it here.

tired matrix
vernal crest
tired matrix
vernal crest
gaunt orbit
#

@uncut viper would it be possible to get a trigger action to spawn buildings in BETAs?

golden basin
#

I have this idea, where after talking to a npc, a option to open a shop would appear after the dialogue? Or maybe a option to pick just talking and opening a shop? that way the npc can walk around like a traveling merchant and sell goods from their bag

#

is it at all possible you think?

#

maybe like dialogue option - trigger trigger action- triggers shop opening?

calm nebula
#

Easily done in c$

#

C#

nimble marlin
#

anyone knows what is the player frame for front sitting?

woeful lintel
golden basin
calm nebula
calm nebula
#

I would check spacecore and betas

golden basin
#

I know betas has open shop for a trigger action maybe i can do that in a dialogue?

calm nebula
#

Yeah!

golden basin
#

IT WORKED

gaunt orbit
lean veldt
#

Hello which one is the top left tile of spouse room? 1 or 2?

lean veldt
indigo yoke
#

is there a way to overwrite a specific furniture item tooltip?

lucid iron
#

spacecore feature (vanilla soon)

indigo yoke
#

welp time to test

lucid iron
#

uh what feature are you thinking of

#

spacechase0.SpaceCore/FurnitureExtensionData is what i was thinking

indigo yoke
#

spacechase0.SpaceCore/ObjectExtensionData

#

ope

#

I am blind

#

BLINDDDD

woeful lintel
#

If you're making Furniture, I might have something to suggest...

late gull
calm nebula
tender bloom
#

(Optionally only if spacecore is installed)

#

(Since I figured it was not a critical feature)

indigo yoke
#

ty for the help but I got it xD I was BLINDDDDD and just looked over that feature

tender bloom
#

Haha

#

The spacecore docs are long!

frosty dragon
#

Hello all. I seem to be getting a weird yellow error when I add a sellable item to my mod from another mod. My character sells the item correctly and it appears in her item shop. But I keep getting this error:

[Content Patcher] Can't apply data patch "Cut Characters > Include all shop data > Data/Shops/Shops.json > EditData Data/Shops #1 > entry #2" to Data/Shops: failed converting Array value to the expected type 'StardewValley.GameData.Shops.ShopItemData': Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'StardewValley.GameData.Shops.ShopItemData' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly.
To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path ''..

urban patrol
#

!json please share your 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.

urban patrol
#

can you please use the validator as governor said?

frosty dragon
#

Sorry. That the proper way?

next plaza
#

speaking of which

urban patrol
#

yep, thanks!

next plaza
#

.choose code crimes, code community service

patent lanceBOT
#

Choose result: code community service

next plaza
#

Dang it uber

#

.choose SMAPI PR, SpaceCore doc stuff, actually merge all the pending PRs, other lower priority things

patent lanceBOT
#

Choose result: actually merge all the pending PRs

next plaza
#

Why

#

Why did you choose the worst one

urban patrol
#

so you’re trying to add bebsi cola from mineral town to your bebsi shop? i think the problem may be with move entries but let me check the shop data wiki page for the format since i’ve never used it

lucid iron
frosty dragon
timid onyx
#

Is there a mailflag or world state ID for mystery boxes becoming available? I know I can just use the playerstat for mystery boxes opened, but still

next plaza
#

It’s specifically #2 that makes it the worst

tender bloom
#

Mine are auto merge!

next plaza
#

All I wanted was to go hide in my code crime thread 😔

tender bloom
#

I yoinked before I edited

next plaza
lucid iron
#

In the past when pathos exploded my PR i usually just rebased

urban patrol
next plaza
frosty dragon
next plaza
#

I’ll have to add a remote for each person, checkout their branch(es), and manually rebase/merge, I think

lucid iron
#

I didn't bother with the ones i had up cus they were really small but you probably just poke whoever to rebase and update their PR casey

urban patrol
tender bloom
#

I guess I would probably copy paste their code manually if it was me

tender bloom
#

I’m not too good at git

next plaza
tender bloom
#

Yeah :/

next plaza
#

I don’t know if any care about that

#

But I do

lucid iron
#

I don't personally

tender bloom
#

You could comment “hey if you have a min could you make it merge nice thx”

lucid iron
#

But yeah if u want ill go rebase those brb Dokkan

next plaza
#

Even if they don’t, it feels like a “credit where credit is due” thing

timid onyx
next plaza
#

Which is fine

#

Just why it’s the worst option of the ones uber presented 😛

tender bloom
next plaza
#

Maybe I’ll do some of the other cleanup/todo items after those are merged

lucid iron
#

yea but i think it's reasonable to ask ppl to rebase their PRs in general

next plaza
#

Like prepare for The Great Splittening (not that it’d be released until 1.7)

tender bloom
#

Splittening?

next plaza
next plaza
indigo yoke
next plaza
next plaza
tender bloom
#

Is the first one the “not everyone needs it?” One?

indigo yoke
#

Do a little bit of community service, like merging a PR or two
then some code crimes
then a PR or two
then some code crimes
then get absorbed into code crimes
ope it's 1am again from doing code crimes

next plaza
#

Probably just me having a brain blip moment

next plaza
lucid iron
tender bloom
#

You mentioned that you want to split it up by which ones have to be matching for everyone in MP

#

but I can’t tell between “stay in SC” and “new mod” which is which for that

next plaza
#

I thought the comment was clear on that

#

Maybe not

#

First set of bullets is stuff that stays in spacecore, second set is things that would go in new mod

tender bloom
#

I think ppl who know what’s up can tell and I’m just not up on what’s up

#

Is new mod the ones that everyone must have in MP?

next plaza
#

(new mod = the post split one)

next plaza
#

And to be fair, given some upcoming developments in the 1.7 alpha (once that resumes), there's a few things that might could stay in current spacecore. However, those things also tend to need serializing, so for the most part, no

tender bloom
#

I try not to touch netfields when I do C# so I’m not very familiar with how they work

#

They seem scary

next plaza
#

They're not that bad

#

I get why they would seem scary

#

But once they're made (especially with the upcoming changes), they're basically the same as every other netfield

tender bloom
#

I’ve only done MP stuff through the SMAPI messages thing, I think

next plaza
#

That's decent enough for "events being triggered", but for actual data I find it super cumbersome. Especially if that data needs attaching to a player (or worse, random items that could be anywhere)

tender bloom
#

Yeah, I was mostly trying to get people to look reasonable as far as outfits go in Customize Wedding Attire

#

So the MP stuff was mostly cosmetic

next plaza
#

Another downside of the SMAPI messaging is that it only works if the host has SMAPI

#

(As far as I know, anyways)

#

The new stuff will work even if the host is pure vanilla

tender bloom
#

I think all the MP stuff was entirely for the sake of players looking the same to their friends as they did on their own screen

#

Which is not the most critical thing

next plaza
#

Yeah, see, this would work for that

#

Add an optional field that stores that data attached to the farmers

#

Update the value locally, and it'll sync even if the host is vanilla

urban patrol
#

casey is there anything in spacecore that’s getting yoinked into base game/SMAPI anytime soon?

next plaza
#

Depends on if Pathos would a SMAPI update with new features anytime soon

#

The main thing I'm aware of is SpaceCore's serializer API. The SMAPI version will work differently (in a way that's a bit safer, ie. no extra files like currently), but I'm gonna make sure SpaceCore can load things in a backwards compatible way once the transition happens

urban patrol
#

gotcha

next plaza
#

(So that people won't lose stuff once that happens)

#

GitHub:

#

Command line:

#

No conflicts, what is GH on

next plaza
#

@brave fable SDVPufferThink

timid onyx
timid onyx
#

Perfect, thank you

next plaza
#

(Source: beginning of Utility.tryRollMysteryBox)

uncut viper
# gaunt orbit <@78657757846188032> would it be possible to get a trigger action to spawn build...

its ofc possible but i feel like itd be real fragile for a bunch of reasons?
• accidentally overlapping existing user-placed buildings/objects
• if we instead do safety checks then it might break progression/something if the building just silently fails
• if you place the building outside the farm/somewhere buildable then they are permanently stuck there with no way to move them, which may be undesired by players for bullet 1 reasons and also bc what if the map is edited by another mod and its out of place? what if the mod author had a bug and a building got placed somewhere incorrectly? what if the player just no longer wants the building there?
• farmhands might build things in the shadow realm

next plaza
#

"farmhands might build things in the shadow realm" sounds pretty crazy for SDV if you don't know the context

uncut viper
#

also if you planned on spawning a building on the farm then good luck accounting for every single farm map

#

i love calling it the shadow realm out of context when talking to my non-stardew friends about stardew modding

next plaza
#

As you should

#

"dang it I accidentally trapped myself in the shadow realm, again"

#

Hmm, seeing all these GMCM PRs kinda makes me want to work on GMCM 2.0...

uncut viper
next plaza
uncut viper
#

i understand...

next plaza
#

Automatic using statement addition is one of my most common complaints

#

That, and System.Numerics as a suggestion for Vector2/3 and Matrix

uncut viper
#

(i say even though ive never actually had that happen)

royal stump
#

I feel like 20% of my commits are "run code cleanup" because of that

#

plus forgetting to do it mid-edit

next plaza
#

I should probably figure out precommit hooks and put a using cleanup thing in one of those

uncut viper
#

i think all of my unused import/using cleanup is because at one point i wrote code that DID need it but then erased it but never erased the using

next plaza
#

Like. Come on.

#

Some of these are from code that got moved elsewhere

#

But like

#

I doubt I ever actually used System.Security.Cryptography.X509Certificates

uncut viper
#

seems like something you woulda used for hash purposes

royal stump
#

was gonna ask whether farmer data ever used cryptog certs

next plaza
#

My closest guess is it autoimported that when I was doing the local variables for transpilers thing

#

I mean I guess I can just check git blame

#

Um, no

#

It was from the commit where I added the flash event command

#

This super complex and very crytographic event command

#

After I get this release out, should I:

  • Work on GMCM while I'm actually in the mood
  • The painfully boring task of finishing going through all the opened issues (3 pages + 5 issues, apparently)
uncut viper
#

probably GMCM

next plaza
#

The children modders yearn for the mines GMCM 2.0 update

#

(16 merged branches. That was a lot)

tight rivet
#

I guess I'll have to work on updating some of the mods I use to use GMCM properly then.

#

(a lot of "this uses depricated code" when they start up.)

royal stump
#

SDVpetcatangy android doesn't support my silly and unnecessary multi-line i18n key thing
Broken code in EMP.dll: reference to StardewModdingAPI.ITranslationHelper.ContainsKey (no such method).

next plaza
royal stump
#

(that method being added in like march & they updated in january)

next plaza
#

So you'll have time

uncut viper
#

i didnt even think ContainsKey was that new

next plaza
#

That being said, you'll be able to do a lot more with 2.0

tight rivet
#

which is good because lol my schoolwork is killing my spare time like nothing else

royal stump
#

the android repo for SMAPI does have it, but yeah, no updates released

uncut viper
#

thats unfortunate

royal stump
#

just using Get(key).HasValue() is a quick fix for now, though it would've been weird reflection otherwise

tight rivet
#

I have confirmed that I also now passionately hate project management.. ><

#

anyway, on that note, time to write up about Microsoft Project before work

uncut viper
royal stump
#

I was going to do the reflection, but the internal class nesting stopped me SDVkrobusgiggle

uncut viper
#

shoutout to publicizers

next plaza
#

I used that for the first time recently

#

And it wasn't even for getting into SDV

#

it was for getting into a git submodule because I didn't want to bother with a custom version of it

tight rivet
#

(tangential note, I htink writing a python script to convert things to local-token friendly templates is proof positive I may have lost the track on this conversion.)

#

but I have something like.. 113 mails to convert? :V

#

and I need to figure out if multiple GiveItem actions is best for mail that gives you multiple things.

brittle pasture
#

you should use the mail command that adds an attachment

#

it works with multiple items

uncut viper
#

not quality though

lucid iron
#

tbh if you wanna leave mail as mfm it's fine

#

still works PecoWant

next plaza
#

...why have I had a couple people in the last week say something about SpaceCore being incompatible?

brittle pasture
#

mobile?

hard fern
#

Most likely

next plaza
#

I guess it's possible, despite

hard fern
#

Ppl dont read

brittle pasture
#

I wonder when the new android smapi is released so I can stop telling ppl to use EMC 1.6.0

hard fern
brittle pasture
next plaza
#

Anyways, SpaceCore/GMCM/JA/ExperienceBars updates posted

undone narwhal
#

@indigo yoke Thanks for your continued work on Wizardry. You probably already know, but lantern is still not doing anything except take my mana, FYI. Figuring out the rest 🙂

#

Also ||Photosythesis! 😮 ||

rain girder
#

hi, im very new to all to all of this. is this the place to ask about trying to contact modders for update permissions? if not, could someone point me in the right direction, please?

undone narwhal
#

Hm, this isn't specifically the place for that, though if you saw them chatting you could ask. Are they on nexus? Have you tried contacting them directly?

rain girder
#

its to my understanding based on the updates thread of the forum support for all of their mods and the mods they were granted permission to maintain is asssumed totally ended, so ive desperately been trying to find any means to reach them so the mods dont... uh... phase out of existence? ):

lucid iron
#

well you should check the existing perms first

#

maybe you can just update

urban patrol
#

what mod? have you checked:

  • the mod page permissions
  • github permissions (if they have it)
    otherwise if it’s just for personal use you can update it however you like
gentle rose
#

assuming it's SFW, which mod is it?

rain girder
rain girder
lucid iron
#

that case would be all rights reserved yes

rain girder
lucid iron
#

im not really sure what is meant by phasing out here sometimes ppl just get up n leave modding lands

#

their choice if they want to keep the stuff around blobcatgooglyblep

#

you can always update it yourself for personal usage and this is right channel for that kind of help too

rain girder
#

the mods just dying is what i meant, but yes true

gentle rose
#

oh yeah I think both eemie and minerva have fully left the stardew modding scene. idk much about minerva’s mods but I think generally unless a mod author explicitly says people can pick their mods up, it’s best to just let them be and do personal conversions, like chu said

rain girder
#

thats why i was hoping someone knew a way to even contact anyone for permissions, but i guess it is what it is. i wouldnt know where to begin even on a personal conversion, permission was step 1 for me then i thought id figure it out lol

lucid iron
#

recolors are fairly easy Bolb

#

if its not a map recolor and just content patcher editimage they probably still work

rain girder
#

you mean for the original? it was converted to cp, but for 1.4

#

so i guess even trying to figure out what parts need updating is the next step :,)

hard fern
uncut viper
#

have you tried just using it? content patcher migrates a lot of things to keep them working

lucid iron
#

yea my point was that a texture is still a texture, hence why simple ediimage type mods that don't add items or whatever tend to just work Dokkan

rain girder
lucid iron
#

Map tiles is one of the things that changed a lot in 1.6

#

!startmodding

ocean sailBOT
#

Making mods can be broadly divided into two categories:

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

uncut viper
#

well for new textures you're not really updating the mod per se then are you, you'd have to make new assets yourself no?

lucid iron
#

Take a look at the content patcher docs and unpack current game assets

rain girder
timid onyx
#

I need some help understanding roe rules in FishPondData.

  1. Are ALL custom fish automatically eligible to produce roe? In my mod my fish only has produce data for a different item, yet it still produces roe anyway.

  2. How do I stop my fish from producing roe if so?

rain girder
#

would it be more appropriate to make a thread as i try to work on things and figure them out, or would it be okay to keep posting here? i dont want to spam or anything

undone narwhal
rain girder
#

oh! most of the images in the description dont load, but i see one where they were granted permissions to convert! does anyone know if that is the sdv forums, chucklefish, or elsewhere? this was 2022, so its possible i may be able to reach out to eemie! if i can get permissions ill still seek them lol

undone narwhal
#

One thing you can try is messaging eemie on the chucklefish forums. I'm sure they don't log in, but it may be set up to send them an email when they get a message.

rain girder
#

thats a great idea, i hadnt thought about email notifs!

undone narwhal
#

That permissions message looks like it's from the Nexus forums.

rain girder
#

uh oh ):

"As of 2020 I have decided to transfer all authority over the majority of my mods to minervamaga. They have been updating the mods to make sure they keep working each and every update, and I am very grateful for that! It makes me happy to hear there are people that want to keep my mods alive so people can enjoy them, it simply humbles me.

Therefore, it is best that all questions about permissions/rights to use my mod's assets, or questions about a collaboration or just in general, are asked to minervamaga. You can reach them here on nexusmods, on the stardew valley subreddit or in the stardew valley discord."

#

well... if that person got permisssion in 2022... then maybe its not too obnoxious for me to try messaging?

undone narwhal
#

Well, message minervamaga, if you can.

#

To be honest, I don't love your chances, though.

#

It does deeply suck when older mods are 'lost' due to more restricted permissions, so I sympathize. And obviously the "well you can update it for yourself!" isn't much comfort, since it's silly to have potentially large amounts of people each independently updating it for themselves. But I don't think there's a better way.

hallow prism
#

minerva isn't active anymore

undone narwhal
#

The most recent statement I can find from her is the following "Plagiarism is not a nice look kids - if the permissions do not explicitly state free to use with credit without first requesting, you cannot use the material in your own work. Unofficial updates are one of those grey areas, so heed advice from trusted fandom elders in those cases. But to borrow someone’s work and incorporate it into your own, especially if it’s monetized?"

Frankly, if it were me, I would take that as permission to do an unofficial update, provided you do nothing but update it - no adding content or altering any content. But to each their own.

rain girder
# undone narwhal Well, message minervamaga, if you can.

i can try on the nexus as well, but it was to my understanding they moved to moddrop, and on that profile they said to use discord, which was where i hit the brick wall with them not accepting messages or friend requests ):

hallow prism
#

there is a point when it's ok to regret there's no way to update something and move on

undone narwhal
#

But I'm on the more liberal side of unofficial updates in general, others will disagree. I cannot see any issue with someone literally just fixing the bugs caused by an update if the original author has disappeared. Again, this is my view only, probably not the majority view.

hallow prism
#

imo, the spirit of the idea is that eemie had strict permissions overall, and trying to find a wording that may allow something is not really worth it

rain girder
# undone narwhal The most recent statement I can find from her is the following "Plagiarism is no...

i saw that, and thats also part of why i was hoping someone knew a way to reach them, and to get more feedback re: grey area. my personal stance is theres a difference between someone blatantly stealing and trying to claim something as their own with no credits, and credited attempts at preservation, but i absolutely dont want to step on toes. its to my understanding minerva has been plagiarized for someone elses profit before, so *thats another reason im also really reluctant to do a public update with no permission ;w;

#

in this instance since it was originally eemies, im seeking either/both out for the purpose. otherwise i think itll be personal, or as buttons suggested a separate mod, although im not entirely sure if that would be acceptable

undone narwhal
#

Lumina's view is fair. But my reading is that "Unofficial updates are one of those grey areas, so heed advice from trusted fandom elders in those cases." did not need to be included in the statement at all. Minerva chose to put that in there. Which is an odd choice if you don't want to leave room for unofficial updates.

Anyway, it's a matter of your view of taste and respect. I'm not going to say 'go ahead and do it!' because it will rub some feathers the wrong way. IF you do, though, as said, it should be done with absolutely no changes to any of the content, even if you think it's 'better'.

next plaza
#

Oh boy, the spacecore update isn't working for people...

uncut viper
#

to be clear, i speak without knowing at all what either of their works are like or how uniquely they are done and presented, and was simply going off of the assumption that they are a recolour. if its simple recolours, i dont really find those to be "claimable" ideas myself personally, but if theres extra bits tacked on like floral aesthetics or little sparkles or whatever, it gets muddier. but regardless i think it would require your own mod with everything it being made entirely by you, and not an update to the original

next plaza
#

@tender bloom Remember us talking about if your draft PR worked? Apparently not. 😛 The new data asset was never loaded in the asset pipeline

(I didn't catch it before release because the save I loaded into have no fruit trees)

hallow prism
#

i hope you're not flooded with messages

rain girder
#

thats also a good point, thats a... interesting thing for them to say if they were 100% credited update opposed? to clarify, my intent wouldnt be to touch anything that already exists, but to add on. the map recolor was most recently for 1.4, which means it would be additional content since that update that would be added. the only touching to original content would be specifically to make it functional, not preference, and i while i do have a personal stance on preservation, id err on the side of permission if i can get it ;w;

next plaza
#

There's like 5-7 people with the issue that posted so far (with logs!)

hallow prism
#

i still remember the whole set of "me too" and "+1" the last time

next plaza
undone narwhal
uncut viper
#

(and knowing that it doesnt matter what you personally think if it goes against what is allowed on this server or the unofficial update thread)

hallow prism
#

yeah i don't think it's just a matter of "people being upset", there may be reports and such

undone narwhal
#

Yeah, you may not be able to talk about it here. I don't know.

hallow prism
#

like, it's not only a question of your judgement call

uncut viper
#

both of the latter are firmly in author-first territory, not majority opinion territory

rain girder
uncut viper
#

nexus is even moreso on the side of the author, though of course that would require one of them to report you

undone narwhal
#

Anyway, stiffening, have you considered the possibility that you could make an add-on mod that required eemie's CP version, and then just add the tiles that she didn't convert already?

#

Because that would be unambiguously fine.

hallow prism
#

there is always ambiguity, prerequites are better but not perfect

undone narwhal
#

It would mean people would need two mods, yes. But it's less messy permissions wise.

uncut viper
#

that is what id meant, with the assumption that if their recolour is just like. "change this brown to red and this orange to green" then that cant really block someone from doing the same on their own with newer assets, theyre just colours. but anything with more creativity and originality involved in the original mod enters copyright territory that im absolutely not qualified to weigh in on the standing of (nor am i for anything, to be clear)

hallow prism
#

it is an improvement but not a way to solve everything

rain girder
#

i think theres been misunderstanding so i want to clarify my aim was to find a means of reaching folks for that explicit permission, otherwise itd be personal

uncut viper
#

for personal use, you can ofc always do whatever you want

undone narwhal
#

Oh. Well, you won't be reaching them. So, if that's truly it?

tender bloom
#

Yeah in this case there isn’t a way to reach them

#

Minerva isn’t active and hasn’t been for ages

undone narwhal
#

If you have decided that a lack of official permission for an unofficial update is the end of it, stiffening, then... that's that, pretty much.

rain girder
#

thats why when someone posted the link for an at conversion for eemies buildings, i was musing i may be able to reach eemie :,)

uncut viper
#

i mean it cant hurt to send a message on the nexus forums but yeah thats basically your only option here

hallow prism
#

it is possible, the thing is, we don't have special knowledge about how/where

#

they may have reached eemie on an entire different platform

rain girder
uncut viper
#

which this channel can help you with if you need it SDVpufferthumbsup

undone narwhal
#

Frankly, as much as I appreciate eemie's work... I don't personally think the difference between her recolor and vibrant pastoral is enough to justify the effort in making an update at all, or spend hours trying to track down a disappeared author. But obviously if you're passionate about it, then you disagree.

placid moon
#

Quick question on creating a crop - if I want it to be something that people grow once to "fully grown" but stays throughout seasons like the tea bush, and can only be harvested in a certain season, would I create a sprite on the tea bush 4-image layout or the regular crop 8-image layout? And then whichever one I use, I would create 4 different sprite versions for seasonal differences, correct?

rain girder
uncut viper
#

i think you'll probably need Custom Bushes

#

(@ Otterhead)

rain girder
undone narwhal
rain girder
#

tis the 'tism probably

rain girder
#

so to summarize, i guess?

  • im still trying to reach out (but not holding out hope)
  • ill give vibrant pastoral a shot
  • a personal eemie recolor is okay, and i can get support here
  • an entirely separate 1.5/1.6 recolor, specifically for assets that i would recolor myself although in a similar palette, would be okay
#

otherwise thanks for everyones patience with me ;w;

tender bloom
#

That looks correct to me!!

indigo yoke
next plaza
#

C# modders - anyone have stuff for the GMCM wishlist?

#

I have some stuff written down already, but thought I'd check

brittle pasture
#

is image preview on the list already SDVpufferwoke

next plaza
#

Define image preview

brittle pasture
#

like an api function to draw a texture based on a pending config settings

next plaza
#

Ah

brittle pasture
#

that would probably involve adding a way to read pending configs for the other functions and a function to draw a texture

next plaza
#

Well, it wasn't on my old wishlist docs, but I before I asked I had modified something from the old gist to be this:

#

First would be for when the config is first loaded

#

Second would be for using in "on changed but not saved" callbacks

#

And that's in the base class for all element types

tender bloom
brittle pasture
#

I didnt even know thats a thing

gentle rose
next plaza
#

It's technically a thing but incredibly janky. One of the improvements is gonna be to make that better

gentle rose
#

oh this one isn’t mine but it’s one I’ve seen, the option to i18n the mod name

#

apparently zh mod users have a practice of changing manifests to make the names zh. it would be nice if that could go in i18n instead

#

(the i18n key would obviously have to be provided to gmcm but still)

next plaza
gentle rose
#

I mean I have some crimes I would like to be able to do but that we are better off not allowing SDVpuffersquee

next plaza
#

I mean if you suggest it I can try to find a reasonable way to make it happen (or make it for you being able to do it easier) 😛

gentle rose
#

oh no the entire intent is a crime

#

there’s no non-criminal part

next plaza
#

Well now I'm just curious

gentle rose
#

the main one was the ability to dynamically provide values to things like dropdowns, including changing during a session

next plaza
#

How is that not criminal

gentle rose
#

I said it is criminal

next plaza
#

...should I add the ability to make a config page not visible on the title menu

next plaza
#

How is that criminal

gentle rose
#

because at that point it isn’t really reasonable as config SDVpuffersquee

next plaza
#

I mean

#

Even if it's not well supported in stardew

#

I think per-save config should be a thing

gentle rose
#

tbh what I really want is the option to per-save config but-

next plaza
#

It would benefit many uses cases

gentle rose
#

lmao

next plaza
#

So, I don't think I'll be explicitly supporting this, but like... I already planned on making it where you can open your mod config directly to a specific page through the API

#

So, if some nefarious person made a config that was populated from ingame values and only openable ingame?

#

Well, good for them I guess

gentle rose
#

what if I ask for a Random button

next plaza
#

...to randomly set the values of things?

#

Like everything at once?

#

sounds useful for bug testing your mod

gentle rose
#

idk just sounds fun

next plaza
#

I mean, I do want the ability to set the values yourself for cases like wanting to define feature presets (an idea I came up with for the VR mod)

#

So if you really want to do that... you can

indigo yoke
#

hmmm, doesnt show duration if there are no vanilla buff attributes on the item.
ah well. still better than before.

next plaza
#

I assumed blueberry took care of all the edge cases in that PR

indigo yoke
#

Booberrry whyyyyyy xD

brave fable
#

...

#

time for another mr in a couple days I suppose

next plaza
#

Ah, but how long will it take casey to merge it this time? 😛

ornate locust
#

Gaston shake

hard fern
#

Alex shake

ornate locust
#

so he's ROUGHLY THE SIZE OF A BAAARGE

indigo yoke
#

nothing else. just pure egg

ornate locust
#

every time anything is like "just egg to bulk", I just immediately get the Gaston song stuck in my head

indigo yoke
#

xD it's a good song

#

tbh if I could, I would make it give -energy + health

ornate locust
#

I think you can with Spacecore?

indigo yoke
#

to spacecore documents again!

ornate locust
#

I used Spacecore to make my Mana Bloom Potion give mana + energy and no health if using Wizardry

#

It has a bit where you can set energy or health independently.

indigo yoke
#
EatenHealthRestoredOverride - integer, override how much health is restored on eating this item, default null (use vanilla method of calculation)
EatenStaminaRestoredOverride - integer, override how much stamina is restored on eating this item, default null (use vanilla method of calculation)
#

ooooooo

ornate locust
#

yeee

indigo yoke
#

yaaaassssss

ornate locust
#

Very useful

brave fable
drowsy pewter
#

i wake up to a spacecore update

next plaza
#

Indeed

#

Thankfully you woke up after the two hotfixes 😂

drowsy pewter
#

Bahahaha

#

thank you casey SDVpufferheart

undone narwhal
#

I'm not installing the update until tomorrow, now.

timid onyx
brittle pasture
#

can you post your code

#

but yeah you're right

timid onyx
#
    "Action": "EditData",
    "Target": "Data/FishPondData",
    "Entries": {
    "mineralis.vampire_eel": {
    "ID": "mineralis.vampire_eel",
    "RequiredTags": [
    "item_mineralis.vampire_eel",
],
    "SpawnTime": -1,
    "ProducedItems": [
{
    "RequiredPopulation": 0,
    "Chance": 1.0,
    "ItemID": 879,
    "MinStack": 1,
    "MaxStack": 1,
},
],
    "PopulationGates": null,
    "MaxPopulation": 1,
    "WaterColor": [
{
    "Id": "Vampire Eel Pond",
    "Color": "132 111 78",
    "MinPopulation": 1,
    "MinUnlockedPopulationGate": 0,
},
],
},
},
},```
brittle pasture
#

is it a legendary fish

timid onyx
#

No

brittle pasture
#

oh wait yeah I just checked vanilla fish pond data and I see it

#

your fish is being caught by the vanilla category_fish entry in Data/FishPondData

#

you need to use MoveEntries to move your entry to the top

timid onyx
#

Will definitely try that, thank you

#

I also have a Legendary fish that is meant to produce roe, can I safely remove the 812 entry in mod as it's expected to use the vanilla rule?

brittle pasture
#

you can delete the entire entry for that fish yes

timid onyx
#

Gotcha, thank you again

brittle pasture
#

if you need custom water color you can target edit that vanilla entry's WaterColor field

timid onyx
#

And I guess one last thing: I have used MoveEntries a few times, but I'm unsure about the usage for this one case. Does this work? Not really sure if I need TargetField here. Also I know I can just add it to the same patch as the fishpond stuff but this skips figuring out the correct position inbetween all the braces and brackets

    "Action": "EditData",
    "Target": "Data/FishPondData",
    "MoveEntries": [
    { "Id": "mineralis.vampire_eel", "ToPosition": "Top" }
],
},```
brittle pasture
#

yeah that looks fine
if you autoindent your files then MoveEntries is in the correct spot if it's on the same level as Entries

timid onyx
#

I see, thank you

next plaza
#

Okay, C#ers - how does this look for GMCM 2.0 API? Currently just a draft. https://gist.github.com/spacechase0/226cd42a48a2bbb1b5fd7a6bd5e195ad

No usage example yet (coming tomorrow later, just this took longer than I expected to be honest), and not much xmldocs yet besides what I felt as really important to clarify. You can take a look at the original draft for an idea on the style of use (https://gist.github.com/spacechase0/da17e6700cfaca63fd146bec230df292), but some aspects have changed significantly compared to that.

(pinging since they responded to the wishlist question earlier: @brittle pasture @gentle rose )

Gist

GMCM 2.0 - API draft. GitHub Gist: instantly share code, notes, and snippets.

brittle pasture
brittle pasture
#

ah that'll work for my usecase then SDVpufferwoke

next plaza
#

The reason I changed most callbacks to have a parameter for the element being passed in was mainly because of the editing dialogue thing. It means you can get values based on the object being edited, rather than global state or something

#

And if you don’t need that you can use do _ => … like any time you don’t need a parameter

lucid iron
#

will there be a generic button widget

next plaza
#

I mean in GMCM text has kinda always had that functionality since you can define what happens on press

#

I could make a button version though, that does sound nice

lucid iron
#

yea in the past i needed whole custom option just to make a clickable texture kinda deal

next plaza
#

Oh and re:localized mod name, I decided what I’d do for that is let you put a custom field in your manifest (which SMAPI allows) to let you define the mod name’s translation key. (And description)

next plaza
#

I mean graphically

#

You can set on click for textures

lucid iron
#

then i conclude it was not particularly clear that i could in 1.0 api Dokkan

next plaza
#

I’m not sure if you could in 1.0

lucid iron
#

oh i misunderstood then

gentle rose
#

can I whine about you creating the NPC portrait display being clearly a flagrant copy of my menu even though it isn't?

next plaza
#

(I just figured since I was adding item selection, that NPCs would probably be another common request)

lucid iron
#

idk if this was ever discussed w/ pathos

next plaza
next plaza
lucid iron
#

the other pain point i had with gmcm is that it does some weird shit with how it opens menu NotteThink

next plaza
#

I’m really happy with coming up with a solution for editing arbitrary objects inside the new lists

lucid iron
#

i had trouble in attempting to set it as any sort of child menu

#

or setting a child menu to it

gentle rose
next plaza
lucid iron
#

yea that'd be nice

#

and like "register this IClickableMenu to the gmcm list of mods"

#

if someone wants to hand roll everything else for w/e reason

next plaza
#

(And that wouldn’t be great as a CP asset since others shouldn’t be able to edit it)

gentle rose
#

does the mod list currently have a search bar?

lucid iron
#

I remember there being a PR for that

next plaza
# lucid iron and like "register this IClickableMenu to the gmcm list of mods"

Hmm. I guess I could do that, though they’d need to be able to handle GMCMs quirks (title screen mode, in game mode, opened during gameplay mode, etc.)

I was already thinking of showing mods with configs that can’t be edited in GMCM, saying “this mod has a config but doesn’t support GMCM” sort of message via config.json detection)

next plaza
# lucid iron I remember there being a PR for that

That might be the one where the person closed the PR and deleted the branch before I could.

Or it’s the one I didn’t have the brain power to investigate actually merging earlier today, since it was more complex than most of the other PRs

lucid iron
tiny zealot
lucid iron
#

I intentionally didn't put configs on GMCM actually

#

If they are like debugging only

#

Or should not be changed at runtime

next plaza
tiny zealot
#

no, user = person playing the game

next plaza
lucid iron
#

Yeah but i already dislike making a whole gmcm entry just for 1 checkbox Dokkan

next plaza
lucid iron
#

Ultimately if I didn't do gmcm support I usually have good reason

next plaza
#

And it wouldn’t be a warning

#

It would just be some text in the mod list with the config clickable ness disabled

tiny zealot
next plaza
#

Maybe worded differently? “External configuration available”

uncut viper
#

i would also rather GMCM didnt say "this mod has config but doesnt support gmcm"

lucid iron
#

If this feature gets implemented for reals I'll move shit out of read config and into read json just to avoid it kyuuchan_run

uncut viper
#

just to throw my hat in the ring there

next plaza
uncut viper
#

whatever GMCM does, if there is any implication whatsoever that a different mod is in some way not supported because of something to do with that other mod, the other mod author will get posts about it

next plaza
uncut viper
#

from people who think the other mod author needs to fix it

next plaza
#

(I’d be less annoyed if all configs were in one folder, like MC modding does)

lucid iron
tiny zealot
#

i would also like a parallel config directory instead of in-mod, but that ship has sailed

lucid iron
#

But hrm maybe instead of log message

next plaza
lucid iron
#

It could be a info box

next plaza
lucid iron
#

User press it to get info on config.json

next plaza
#

Multiple times, possibly

#

No pointlessly spooking users in the log allowed

lucid iron
#

Then i misunderstood the purpose Dokkan

next plaza
#

(Plz ignore SpaceCore pathfinder)

lucid iron
#

Yeah i dunno there's also like

#

People putting config in global app data

next plaza
#

(That was an atra PR I never got around to fixing for the wider audience use case)

lucid iron
#

I'm not sure how u would detect that

next plaza
lucid iron
#

How fine grained do u want it to be in particular

#

Like should it check individual options or merely mod has config.json but not registered in gmcm

next plaza
#

I mean I can always make “external configuration available” opt IN instead. That way people still manually are letting people know

uncut viper
#

normally i wouldnt really care so much but

4.5mil downloads on GMCM

any small subset of users of GMCM suddenly thinking something is wrong with my mod bc of what GMCM says about it means a lot of potential comments

tiny zealot
#

i flatly don't think it's a good idea to police other mods for not supporting GMCM

next plaza
lucid iron
#

What about making it mod author opt in

next plaza
uncut viper
#

also, if another mod author made their OWN in game config, telling users that the only config is external wqould just be false

tiny zealot
next plaza
lucid iron
#

For example i have a config whose job is to enable/disable a harmony patch, a user theoretically might wish to turn it off, but it can't be edited in game

#

I could put the little paragraph on me mod page on gmcm if there's api for that

next plaza
#

Okay, how about: opt in, a user can specify a translation key for the message they want to show when trying to access their mods config (file edit only, access in game, etc.). If that isn’t done, then it just won’t show anything

lucid iron
#

That kinda thing isn't super different than me just registering with gmcm and adding 1 paragraph no configs

next plaza
#

(But also re:harmony patch configurable - do Patch/Unpatch, maybe using the patch category feature I recently discovered myself, you coward (/s))

lucid iron
#

Unpatch sounds sinful

uncut viper
#

its not bad

#

it would be if you unpatched someone ELSES patches, but uh, dont do that

next plaza
#

(SpaceCore literally has a harmony_invalidate command specifically for testing transpilers with hot reload that basically just patches and unpatches something immediately)

next plaza
#

It’s basically current GMCM but if you don’t want or can’t do actual support you can just say “hey we have a config you can edit at this spot”

lucid iron
#

that seems fine bolbthinking

#

would it go on a different page or just among the general list

next plaza
#

The general list

lucid iron
#

can ppl filter stuff then

next plaza
#

I do want to add search sort stuff with the update, yeah

#

I can’t imagine how people who have 1000+ mods deal with it currently

next plaza
# next plaza It’s basically current GMCM but if you don’t want or can’t do actual support you...

…actually, that brings up another question.

If I’m listing all mods, but some have a config button and some don’t - do you think there will be similar problems on people complaining mods without a config when really the mod just doesn’t support GMCM (whether through GMCM directly or through the little manifest field message saying where to find it)?

There wouldn’t be any sort of “hey you can’t edit this through here”, but it might have a similar problem (people thinking a mod isn’t configurable and asking for a config without bothering to actually check the mod folder or docs)

lucid iron
#

i did have occasional problems where ppl go "why mod not loaded" blobcatgooglyblep

#

ig it's just about whether you think GMCM should double as a list of active mods

hard fern
#

SDVpufferlurk some people do make that assumption

tiny zealot
#

i think listing a mod at all if it has no registered interaction with GMCM invites this sort of problem, yes

next plaza
#

Hmmm

#

The page would’ve been made more clear to say it’s a mod list with config button rather than config list (similar to MC forge), but users will be users…

#

And GMCM can’t exactly be rebranded at this point

uncut viper
#

i mean the mod is called "Mod Config Menu"

#

not "Mod List with Config Buttons Menu"

next plaza
#

Hence “can’t rebrand at this point”

lucid iron
#

well if u did just have multiple tabs by default then u can label things

#

like "configurable", "has config file", "other loaded mods"

next plaza
#

I would really like some sort of in game mod list, but…. Making a whole separate mod just for that when GMCM is already made by me seems odd

#

Guess I can just abandon the “entire mod list” idea

tiny zealot
#

i like that GMCM only shows mods that it can configure. cuts down on clutter

uncut viper
#

im not really sure personally what the point of an in game mod list is when i can see the list of mods in my Mods folder

#

or Stardrop if i use that

next plaza
#

Not sure what can be done to fix the “people assuming mods not listed in GMCM aren’t configurable” which is already an issue

lucid iron
#

the mod's folder isnt 1:1 to list of loaded things

next plaza
uncut viper
#

that definitely sounds like something that would/should be in a separate mod to me

next plaza
tiny zealot
next plaza
lucid iron
#

Generic Mod Correspondence Menu kyuuchan_run

next plaza
#

The SpaceCore split is already gonna be painful, but it’s needed because of the multiplayer thing, and I’m gonna wait for a major Stardew update to try and alleviate the pain

#

if we could update mod unique ids I’d be changing my username for them all

lucid iron
#

kinda rolls back round to the "mod authors should opt in" point

next plaza
#

(Which is a problem with existing GMCM, to be fair)

gaunt orbit
uncut viper
#

i would agree that its better for a specialized C# component, mostly bc of that misplaced building issue. it wouldnt be that bad to just have in the toolbox if it couldnt result in some map in a save being "permanently" messed up if a user didnt notice before they slept

gaunt orbit
#

I thought about having a real building that gets upgraded to the unruined state (either via tokens or trigger action) but that would require extra harmony patches to prevent it from being moved or destroyed

lucid iron
next plaza
gaunt orbit
#

Really would be nice to just have fields in building data for destroyable/movable conditions tbh

lucid iron
#

wren what if u make selph do it

next plaza
uncut viper
#

Extra Building Config?

lucid iron
gaunt orbit
#

I'll put it in the modding wishlist for 1.7 /jk

uncut viper
#

Carpentry Catalogue (and Blacksmith Bulletints) (And Repairable Buildings)

next plaza
lucid iron
#

to keep the alliteration

uncut viper
#

i think you cant repair a ruin because then its not a ruin

gaunt orbit
uncut viper
#

if you brought a ruin to a non-ruined state you have not repaired the ruin you have actually ruined the ruin, as it is no longer a ruin

lucid iron
#

i thought it'd just be the entity Ruin that can have action Repair applied to it

next plaza
uncut viper
#

i mean, a lot of people do hold that opinion, yeah

next plaza
uncut viper
#

just call it Serviceable Structures instead

next plaza
#

Button what about a trigger action to upgrade a building that is already placed 😛

uncut viper
#

how would that even work, arguments wise

next plaza
#

Oh, I did the terminology wrong.

A trigger action action

lucid iron
#

i remember there was also a framework side want to make like

#

a building that can be upgraded, but also built directly

next plaza
lucid iron
#

it's very unfortunate that pathos didn't let me do any crimes

lucid iron
#

coulda used migrateids to change any building to any other building

next plaza
uncut viper
#

coordinates wouldnt work for the same reasons placing building wouldnt work, really, and that kind of mod data saving stuff for later isnt really the BETAS philosophy so much

next plaza
#

Can’t be used after game load?

lucid iron
#

check that old building actually lacks data

#

no migrate unless that's true

next plaza
uncut viper
#

for the most (all?) part, BETAS features can all be used entirely standalone and from a fresh install of BETAS

#

because what if the building is no longer there?

#

what if its been moved somewhere else?

next plaza
gaunt orbit
#

Well again, the simplest solution is to do like the greenhouse does and have it be one building which changes based on game flags

next plaza
#

(SpaceCore has times trigger actions, but you have to specify each one manually)

lucid iron
#

well the migradeids thing only runs daystarted blobcatgooglyblep

uncut viper
#

but yeah, i try very hard to make sure that each of the things i add to BETAS dont need anything done beforehand in order to work properly, so no out-of-delegate tracking or relying on mod data being set somewhere or things like that

lucid iron
#

otoh it does show that it's prob quite simple for wren to just make that for her fancy buildings mod

next plaza
#

(User = mod author using BETAs)

next plaza
#

(That’s not a dig at you. That’s a dig at me)

uncut viper
#

the problem is if a player already has a bunch of buildings placed down in their save, and then installs BETAS on like, year 3, how is the UpgradeBuilding action meant to work?

#

itd have to rely on coordinates but those are fragile bc the player can change those at any time

#

either that or like a blanket "all/first building of this type that is found", like the MakeMachineReady action, but the MakeMachineReady action is maybe the one i regret the most bc of how its implemented, so id rather not repeat it SDVpuffersquee

#

(it was a very very early addition to BETAS. mightve even been there before initial release, when things were looser)

next plaza
#

See I don't know what the feature was originally for

#

I assumed it was the ruins thing, ie. a mod author places building ruins, and the upgrade thing would upgrade that

#

The mod author already did it themselves

#

So it's not really on BETAs

uncut viper
#

if the mod author can place the buildings themselves they should also handle the upgrading themselves, as they already must be relying on some other C# component

gaunt orbit
#

Yeah I wanna do something like the greenhouse and I've been thinking about the best way to do it from a cp perspective

uncut viper
#

if said C# component can only place and not upgrade then it sounds like a request for the other component and not BETAS 😛

next plaza
#

Oh, is there no way to place buildings already

uncut viper
#

not with BETAS

next plaza
#

I didn't know you couldn't with vanilla 😛

#

I should've known, given I literally did the farm map buildings thing for spacecore...

#

...did I make SpaceCore spawnables able to spawn buildings?

uncut viper
#

if you could there wouldnt be a need for placing farm buildings like the Meadows farm needing a dependency

next plaza
#

(I did not)

#

"why do those have warnings"
apparently I turned on "yell at me if no xmldocs" in preparation for doc autogen, and never did it

uncut viper
next plaza
#

...or just map edits

uncut viper
#

and then using something like uh. i always forget the other mod that lets you spawn farm buildings

next plaza
#

why do I overcomplicate things

gaunt orbit
next plaza
lucid iron
#

buildings included iirc

uncut viper
next plaza
#

Ah

uncut viper
#

this might even be able to do it all from the getgo, even with the ruined building being a real building?

lucid iron
#

but i think it'd fit with the other sc spawnables casey PecoWant

next plaza
#

Welp, that explains it. I was already on the way downhill mentally at that point

gaunt orbit
uncut viper
#

well then you can just go back to making the ruined one a map edit

#

that is then removed when ready with this Buildings Included patch edited in

#

even though this is meant for use at the start of a save i think if you just gate its patch behyind a When condition, it'll just do it once when it actually loads in

#

but dont quote me on that

next plaza
#

Anyways, I really need to sleep.

If anyone has more feedback on the GMCM 2.0 API design draft, ping me or DM me (with a ping saying you DMed me if I haven't DMed with you before) or leave a comment on the gist.

(For those who missed it: #making-mods-general message )

gaunt orbit
#

I think that would work then

gaunt orbit
brittle pasture
#

probably since a better solution is probably via fake buildings and swapping out data

#

also wren did you end up making the parrot a builder? if you're not already using that framework then in my unbiased opinion y-

tired matrix
#

Cant place decoration… did i put something wrong?

urban patrol
#
    "Action": "EditData",
    "Target": "Data/Shops",
    "TargetField": [ "Carpenter", "Items" ],
    "Entries": {
        "ItemId": "RANDOM_ITEMS (O)",
        "MaxItems": 1,
        "PerItemCondition": "ITEM_ID_PREFIX Target handwrittenhello.TBP_, @requirePrice"
    }
},```
how can i fix this to add all my mod items (except for the one whose price i made 0, because it should be only be acquired through an event) to robin's shop, one per day randomly?
#

i'm trying item queries for the first time and i know i'm not doing them right

brittle pasture
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.

brittle pasture
#

you want !ITEM_PRICE Target 0

urban patrol
#

is wiki formatting not loading messing me up?

brittle pasture
#

that's part of the item query in ItemId, not a GSQ

urban patrol
brittle pasture
#

RANDOM_ITEMS (O) @requirePrice

urban patrol
#

oh i see

brittle pasture
#

or that

urban patrol
#

so i could do either?

#

cool

#

thank you!

ocean sailBOT
#

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

urban patrol
#

that's with me trying the RANDOM_ITEMS (O) @requirePrice

#

let me try with the GSQ

brittle pasture
#

oh yeah your code in Entries needs to be wrapped in a block

urban patrol
#

[ ]?

brittle pasture
#

right now it's 3 loose lines being dumped into Items directly

urban patrol
#

oops lol

brittle pasture
#
"{{ModId}}_MyItem": {
  "Id": "{{ModId}}_MyItem",
  // The rest
}
urban patrol
#

oh so i would need to do it once for each item? i was hoping to expedite the process lol

tired matrix
#

now it appears but w texture error

#

please only consider the bunbun decor

#

i was testing w it

drowsy pewter
#

try checking out someone elses code

urban patrol
#

will do. any suggestions off the top of your head? it's cool if not

urban patrol
#

thanks!

#

ooh you can even do it by context tag, that's nice

#

i can do that instead of the fake require price thing i was doing

drowsy pewter
#

i wonder why my shop entries are in different action blocks

tired matrix
urban patrol
brittle pasture
tired matrix
brittle pasture
#

what does it look like in game

tired matrix
#

like this

#

Cant i add descriptions to furniture?

brittle pasture
#

can you post your log
your code looks fine as far as I can see

brittle pasture
tired matrix
#

spacecore breaks multiplayer

#

will not have desc then lol

urban patrol
#

if it doesn't have to be furniture, you can make objects placeable

#

not sure if that's what you want tho

tired matrix
#

HOW

drowsy pewter
#

spacecore breaks all multiplayer ?

uncut viper
#

spacecore does not break multiplayer

tired matrix
#

yes its a plushie

urban patrol
#

add the context tag placeable

urban patrol
tired matrix
uncut viper
#

thats not spacecores problem

brittle pasture
#

does your friend have spacecore

tired matrix
uncut viper
#

thats you not having matching modlists

urban patrol
tired matrix
tired matrix
#

same versions too

uncut viper
#

then something else is the issue, but it is not spacecore

brittle pasture
#

that's a modded-tech-support problem, but as far as we know SpaceCore doesn't break MP

tired matrix
#

@urban patrol do you have a guide?

urban patrol
urban patrol
#

note that i used tokens as a shortcut so i didn't have to type {{ModId}}_TeddyBear_ a billion times but you don't have to

#

also this is a WIP so if you notice weird things that's why

#

oh @uncut viper if you're still here i meant to ask: is the only stamina-related action BETAS has SetStamina? i was hoping not to use spacecore just for its stamina regen feature

#

the idea i had was while holding an item, stamina increases at a steady rate

uncut viper
#

yes it is, but you wouldnt be able to do that with BETAS anyway

brave fable
#

well stamina regen in spacecore is a buff, does betas support per-frame actions?

uncut viper
#

even if it had AddStamina

#

it does not

#

unless you can get an action to run every frame by some other means

urban patrol
#

yeah the workaround i was settling for right now is BETAS on item held, set stamina to a crazy high number, don't overflow

#

which is honestly fine

#

i could lower it so it feels less OP, but people could still switch items a dozen times and get to full anyway so

drowsy pewter
#

betas has onitemheld?

#

hmm i might rework some code

urban patrol
#

Spiderbuttons.BETAS_ItemEquipped

#

i misspoke slightly

uncut viper
#

it has an ItemEquipped trigger, which stardew also treats choosing a tool on your hotbar as equipping

drowsy pewter
#

only tools?

tired matrix
#

wait what's the part that makes it placeable?

#

im confused

uncut viper
#

i believe so but its been a while since i checked/added it

urban patrol
tired matrix
urban patrol
#

i haven't tested if that makes it placeable on tables and stuff yet though

urban patrol
uncut viper
#

(it working with tools in the first place was a "happy" accident, it was only meant to track things like rings or clothing, but, stardew code and all that)

urban patrol
#

ooh wait it also checks clothing/ring slots? that's awesome

drowsy pewter
#

yeah mine are normal objects, so nvm

urban patrol
#

oh if it doesn't work with objects i'll have to use spacecore to add a buff anyway

uncut viper
tired matrix
drowsy pewter
#

yes

urban patrol
#

as far as i know, yes

tired matrix
#

i feel stupid now

drowsy pewter
#

seems like i should rework some stuff since betas has the PLAYER_HELD_ITEM gsq tho tbh

#

yooo last minute code rework lets go!

urban patrol
#

yeah that's the other part i'm using lmao so useful

tired matrix
#

Im at a loss of words

#

@urban patrol ill schedule the marriage

urban patrol
#

lmao glad it worked

#

did you happen to test it on furniture and stuff?

tired matrix
#

NO WAYYY IM 1 HOUR TRYING TO MAKE THIS WORK

tired matrix
urban patrol
#

ideal scenario is placeable on a bed but i'm almost sure that's not possible

tired matrix
#

Not placesble on bed

hard fern
#

Bed is not placeable furniture

tired matrix
#

Let me see a table

hard fern
#

Table is

urban patrol
#

makes total sense

tired matrix
#

Cant put on table either

#

Or chair

urban patrol
#

chair at least makes sense, interacting would just make you sit

hard fern
# tired matrix

U sure that's a real table? Asking bc it's not a vanilla table

tired matrix
#

its a real table i placed things on it before

hard fern
#

Normally small decor is able to be placed so im not sure why it doesn't work

#

Maybe ur missing something

tired matrix
#

idk my brain isnt the most trustworthy lol

urban patrol
#

i can test it one sec

#

i finished my shop shenanigans

tired matrix
#

the table is a default replacement

urban patrol
#

i had to walk up to it but yeah it works on this table

tired matrix
#

i should uninstall this mod lol

shut edge
# urban patrol

is there a trick for making prismatic items or did you draw it manually?

shut edge
#

ah ok

urban patrol
#

just colorpicked from the prismatic shard

#

and gave it the context tag color_prismatic

shut edge
#

cool

gritty saddle
#

I am trying to setup a mod that adds some items to pierre's shop and I am having some trouble with getting the items actually added to the shop

#

is anyone available to help?

vernal crest
#

!json share a link to your json and also one to your log (same website, different page) if there are any relevant errors or warnings :)

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.

gritty saddle
vernal crest
gritty saddle
vernal crest
gritty saddle
#

That is how I thought I had to write it the first time but it didn't work so I tried this but if that 's the case I don't see why it didn't work the first time

vernal crest
#

Well, where did you get "ALL_ITEMS category_seeds" from? Did someone send you an example that uses that? The wiki only says you can do "ALL_ITEMS (O)" (O for object, or F for furniture, etc) which is the item type, not category.

#

Actually, I don't know that this is the correct way to add to the list of items anyway, let me go look at shop data

gritty saddle
#

I'm just trying doing my best with content patcher github and modding wiki since when I asked yesterday that what I was pointed towards

#

though let me try it with the (O) part

vernal crest
#

Don't just try it with that, that will add every single object in the game into the shop

gritty saddle
#

I meant it still has the seed category but also inserting the (O) filter

vernal crest
#

But did anyone tell you that you could use the category there? Because as I have said, there is nothing on the wiki indicating that it is possible.

#

The reason I was asking is because 6480 has more experience with shop data than I do, so if he told you that "ALL_ITEMS category_seeds" would work then I would trust that. But if nobody told you that specific thing would work then I think you are trying the wrong approach and I will suggest an alternative.

gritty saddle
#

no one told me to use it that way I just meant I am doing my best to put the information together from the modding wiki because I was told to look there but wasn't offered much information past that

vernal crest
#

Okay, fair enough, but I am now telling you that I don't think it will work so let's explore something else instead of continuing to try it now that you have been given more information.

#

You will want to add "PerItemCondition": "ITEM_CATEGORY Target -74", I think. I recommend that you also add "Id": "{{ModId}}_AllSeeds" because it's strongly recommended to always have a ID field to reduce the risk of clashes with other mods.

gritty saddle
#

Thank you I will try that and see how it works

drowsy pewter
#

busy writing the most ungodly beast of a trigger action in an attempt to put only a single action on this tile

#

144 different IF conditions

brave fable
#

i think you're doing something wrong

drowsy pewter
#

you're probably not wrong, but it works

brave fable
#

if it works but requires 144 conditions to align, it doesn't work

drowsy pewter
#

haha

lucid mulch
#

fyi your specific error flow is now fixed in the upcoming update, so making that specific mistake again would now correctly log the issue, and then fallback to the stock sprite

cc @vernal crest

vernal crest
gritty saddle
vernal crest
vernal crest
# gritty saddle https://smapi.io/json/content-patcher/2d560f4afa1f4932ba388d145762820d

You can't just have a PerItemCondition field. It needs to look like this (I'm pretty sure) including with the extra set of brackets and the "{{ModId}}_AllSeeds": bit :

"Entries": {
  "{{ModId}}_AllSeeds": {
    "Id": "{{ModId}}_AllSeeds",
    "ItemId": "ALL_ITEMS (O)",
    "PerItemCondition": "ITEM_CATEGORY Target -74"
  }
},

That is telling it to add all items of item type Object if they have the category -74 (seeds). (Edited to add the commas I originally forgot)

#

(Obviously you need the rest of it too, the Target etc. I just focused on showing you what needs to be inside the Entries field. Also, you have an extra square bracket at the end of your file that should be deleted.)

gritty saddle
#

Thank you again and also thank you for your patience with me I am trying my best but I obviously don't have much of any knowledge with modding

vernal crest
#

It's fine, we all start at the beginning at some point :)

woeful lintel
brave fable
#

but... the cat

gritty saddle
#

I do need to ask with the "{{ModId}}" part do I need to change that out with an actual mod ID or is it a filter sort of thing

vernal crest
#

That is a token. Content Patcher replaces it with the intended value before giving the data to the game. In the case of the ModId token, it swaps it for the UniqueId of your mod as listed in your manifest.json file.

woeful lintel
#

Not having bug reports for FF's alphas is driving me crazy

#

I made a whole ass neocities blog

#

I sorted my phone's galery for that

gritty saddle
vernal crest
vernal crest
#

Ah whoops that's on me sorry, for some bizarre reason I forgot to add any commas to my example. The Id and ItemId lines need commas after them. I'll go edit my example.

gentle rose
woeful lintel
#

I know that some people that could find important issues are just too busy to help, so I just have to wait...

#

And yes I wanna see that

gentle rose
#

she's beauty, she's grace, she's got the base male farmer spritesheet on her face

woeful lintel
#

Lmao that's a good one

gentle rose
#

(turns out you need to initialise Texture2D objects, even if you just want them to be transparent. whoops.)

vernal crest
gritty saddle
#

yeah it seems to be working now

#

Again thank you for helping me. I am gonna go sleep now though because I don't know what time it is where you're at but it's nearly 5:00 AM here and i've been up all night

vernal crest
#

Only 8pm here! Have a good sleep!

elder kite
#

Guys I ran out of letters

#

lol

night plaza
#

Hey everyone do any of you know about or experienced issues with some nuget packages with SMAPI?

I am trying to use the SemanticKernel package, but getting issues with the Assemblies, just some give me errors, specifically Microsoft.DependencyInjection, and some System packages when I try other Packages.

I tried to switch to an earlier version as I thought it could be conflicts between assemblies of the same packages, but still getting the error:

[14:34:24 ERROR SMAPI]    Skipped mods
[14:34:24 ERROR SMAPI]    --------------------------------------------------
[14:34:24 ERROR SMAPI]       These mods could not be added to your game.

[14:34:24 ERROR SMAPI]       - AgentValley 1.0.0 because its DLL couldn't be loaded.
[14:34:24 TRACE SMAPI]         (Error: FileLoadException: Could not load file or assembly 'System.Text.Encodings.Web, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'.
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromPath(IntPtr ptrNativeAssemblyLoadContext, String ilPath, String niPath, ObjectHandleOnStack retAssembly)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyPath(String assemblyPath)
   at System.Reflection.Assembly.LoadFrom(String assemblyFile)
   at StardewModdingAPI.Framework.ModLoading.AssemblyLoader.Load(IModMetadata mod, FileInfo assemblyFile, Boolean assumeCompatible) in SMAPI\Framework\ModLoading\AssemblyLoader.cs:line 178
   at StardewModdingAPI.Framework.SCore.TryLoadMod(IModMetadata mod, IModMetadata[] mods, AssemblyLoader assemblyLoader, IInterfaceProxyFactory proxyFactory, JsonHelper jsonHelper, ContentCoordinator contentCore, ModDatabase modDatabase, HashSet`1 suppressUpdateChecks, Nullable`1& failReason, String& errorReasonPhrase, String& errorDetails) in SMAPI\Framework\SCore.cs:line 2086)
indigo yoke
#

This feels naughty how I made this

night plaza
lucid iron
#

Is the nuget u trying to use net 6 compat

night plaza
#

Yes, I tried the implementation in a different .NET 6 project to check and is working fine

gentle rose
hallow prism
#

what would be the best way (if any) to check if the player unlocked a specific mastery?

#

is there a flag for this?

night plaza
#

Yes this is case after downgrading the SemanticKernel version to v 1.0.0-beta8... when switching back to v1.66 getting DepencyInjection error

gentle rose
#

oh I now see that’s an ai coding package, which explains the name AgentValley

night plaza
#

yes, I am creating agentic npcs :), but cannot get this package to work with the mod... I am wondering if there is not conflicts between versions of these packages of the nuget packages and some dependencies SMAPI loaded earlier...

hallow prism
#

thanks

#

i'm not sure if we can have CP checks for stat

lucid iron
#

mastery_4 is combat

#

I think they just match the skill's number?

#

So for cp when usage you can either do a little indirection where you set a mailflag via trigger action

#

Or for some masteries you can check if they got the recipe reward

gentle rose
hallow prism
#

thanks, i may do the flag thing then

calm nebula
#

Works SDVpufferthumbsup

hallow prism
#

yeah i just wanted to check i wasn't missing a more obvious/direct way

night plaza
vernal crest
next plaza
#

Hmm. Should I be a productive member of the community, or revert to my true calling (code crimes).

#

(Ie. Continue GMCM 2.0 or work on 3d mod)

lucid iron
#

.choose crimes, gmcm

patent lanceBOT
#

Choose result: gmcm

lucid iron
#

Rigged SDVpufferpensive

tender bloom
#

Aww

#

I was rooting for crimes

autumn tide
#

sorry :(

next plaza
lucid iron
#

Well i vote for crimes

indigo yoke
#

crimes!

lucid iron
#

That's 2 for

autumn tide
next plaza
#

No new feedback on the GMCM 2.0 api I posted last night, either

#

Or no pings DMs or comments anyways

autumn tide
#

CRIMES CRIMES CRIMES

next plaza
#

That’s definitely what I’m leaning towards, yeah

#

/me runs off the crime thread

night plaza
# vernal crest Just fyi, mods made using gen AI or with gen AI content aren't allowed in this s...

I do not generate code with AI, all of my work is of my own, I am part of the rebelion and for the sake of this conversation I will not use the agents to generate dialog or any content within my mod, but rather just have my npcs use the tool calling capabilities to give npcs the ability to think and call functions that extend gameplay.

I honestly just need SMAPI to allow me to use my nuget packages...

next plaza
patent lanceBOT
#

sure thing, pal (#6914378) (15m | <t:1760882902>)

gentle rose
#

AIs don't "think", but regardless, it's all AI mods that are banned

vernal crest
gentle rose
night plaza
next plaza
next plaza
#

I don’t wannaaaaaaaaaa

#

(I haven’t gotten to my computer yet)

#

Why has nexus not added back the "recent comments on my mods" widget on the front page yet

#

It went away with the redesign and still hasn't come back

next plaza
gentle rose
#

that sounds like it would be useful

next plaza
#

It was

#

Like, did they want me to be even less likely to respond to comments?

gentle rose
#

no that's my explanation

next plaza
#

Oh

#

Useful = doesn't get added

#

Got it

royal stump
#

didn't realize they had that, my bookmark's just been the My Files profile tab for years SDVpufferdizzy

next plaza
#

They don't anymore

royal stump
#

or My Content -> My Files, w/e page that is exactly

next plaza
#

Now I have to check the comments on each mod

#

So you know 98% of them are not being checked

#

Sometimes even 100%!

woeful lintel
#

I have internalized how many posts each of my mods have, so I only have to check the "my files" page

autumn tide
woeful lintel
#

granted, I only have 2 active mods...

next plaza
autumn tide
next plaza
#

Nexus works?

night plaza
#

Seems like the dependency issue is likely caused by stardew valley's internal assemblies being loaded, I deleted stardew valley's dll for dependencyInjection and other files that conflicted, it seems like it runs fine then, don't know what a maintainable solution is though...\

autumn tide
#

hey! replacing the sewer fight event rn, I've set the OG event to null and have my custom event working well and everything, but the event is supposed to trigger after you've purchased a stardrop from Krobus, and idk how I might add that condition to my event. There is a n CF_Sewer prerequisite in the OG event, (which I'm assuming is used as a query for the stardrop being purchased) but I couldn't find CF_Sewer in Data/Mail, and I'm wondering; couldn CF_Sewer be used for my event or is it exclusively applicable to the OG event?

royal stump
#

it's a flag that gets applied when you buy a stardrop from krobus (or technically any shop that isn't at a festival), so unless you altered that aspect, it should work the same way

public override bool actionWhenPurchased(string shopId)
{
    if (base.QualifiedItemId == "(O)434")
    {
        if (!Game1.isFestival())
        {
            Game1.player.mailReceived.Add("CF_Sewer");```
vernal crest
#

The reason it won't be in data/mail is because only letters go in there. Mail flags without letters do not.

royal stump
#

yep, lots of them are silently applied by code, or set by events/trigger actions/etc
iirc there's a wiki list of known ones if needed, though it's 503-ing for me at the moment

fickle lichen
#

hi there, so, i created a hairstyle mod (for now i only have one hairstyle) and i tried to test it in the game. i got no errors or anything, but for some reason the hairstyle doesn't show up when i look it up using the fashion sense mirror?? could someone please help me?

vernal crest
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.

vernal crest
fickle lichen
#

should i send the log?

vernal crest
#

Yes please, same website as before but different page

#

Can you also take a screenshot of your mod folder showing your json and PNG files?

fickle lichen
#

sure

#

although, for some reason there are folders missing?? i don't have the errorlogs folder

#

also, this is what the mod folder looks like

vernal crest
#

The log folder isn't inside your Stardew Valley folder

fickle lichen
#

oh-

vernal crest
#

Your png is named hairr instead of hair

fickle lichen
#

hmm, should i change it to hair instead?

#

oh i found the logs folder!

#

one second please

vernal crest
#

Well, the docs do say that it should be named hair.png so that might be how FS finds the image

fickle lichen
#

ooohh, so that was the mistake here!

vernal crest
fickle lichen
#

so sorry, i am still a beginner!

vernal crest
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.

fickle lichen
vernal crest
#

Yes, you sent me the log in the json validator page rather than the log parser page. My phone won't load it because logs aren't meant to go in there.