#making-mods-general

1 messages · Page 151 of 1

brittle ledge
#

I'm allergic to cardamom meow_sticks

drowsy pewter
#

Amazing

rigid oriole
#

It's not an allergen in anything I've built, but I think if I ever did an animal husbandry compat (red meat, etc. allergies) I'd include it. Not that I really plan to do that any time soon haha

#

I figure if someone really wants it, I've got docs and they can make a content pack

ornate trellis
#

theres people allergic to water, theres probs unfortunately an allergy to every thing

uncut viper
#

(shout-out to my cinnamon allergy, you try your best to get me to not eat it but I refuse to listen)

hard fern
#

i can't tell if i'm allergic to horseradish, or wasabi, but whatever it was i only narrowly avoided the hospital so i'm not taking any chances

ornate trellis
#

btw is there a CP way to keep normal bushes(normal as in regularly spawned from the path tilesheet) from having any spawnables in a certain location

vernal crest
#

MCAS can make you allergic to nearly anything

#

Bug meat would probably go along with a shellfish allergy, I thin

#

k

#

My wife is allergic to shellfish and it extends to insects

latent mauve
#

Friends, my brain is a seive and I have forgotten already: are dynamic tokens able to be used across mods natively or do they also need something like the cross-mod tokens mod

uncut viper
#

dynamic tokens can only be accessed by the mod they are in

brittle ledge
#

the latter

vernal crest
#

My metamour is allergic to most food, most skin products, and most fragrances

uncut viper
#

without Cross-Mod Compatibility Tokens

latent mauve
#

Thanks

ornate trellis
#

hmmm, feared that 🤔 tbh not that big of a deal i guess i can live with random bush forage but i thought id ask anyway

vernal crest
#

Do the bushes need to be spawned by the paths layer?

hallow prism
#

if you want the shaking effect, yes, and it may be also better depending of the recolor used

ornate trellis
#

i do have some map tilesheet bushes but i wanted to mainly use actual ones so theyre more natural but eh, guess random bush forage isnt that big of a deal since i wont put any on my own

calm nebula
#

How are we doing this lovely spring day

ornate trellis
#

honestly wondering bout how much firework the neighbours been blasting before new years eve tbh really considering if i just stay up and make some more assets cuz i doubt i gonna get sleep

vernal crest
#

Thinking I should really go to bed, but it's so difficult

rigid oriole
#

Hey Harmony friends, is new CodeMatch(OpCodes.Brfalse) going to match IL_02c7: brfalse IL_03a5? Can I tell it I don't care what the operand is, just the opcode? I don't want to edit labels or anything. Just trying to find a longer sequence of instructions so I can insert my code at the right spot

ornate trellis
#

i only broke my game a tiny bit today so its a p good day tbh

brittle pasture
#

yes, no operand specified means it matches everything

rigid musk
tender bloom
#

It’s just never felt like the right day to have an allergic reaction

undone hawk
#

Hey y'all! Super quick question to make sure I'm going about this the right way. I want to grab every fish via C# code, both vanilla and modded. I've found a few methods in the API but wanted to know if there was a clean one that just printed all available fish in the game!
The methods I found poking around the wiki and working with the API:

- GameLocation::getFishingLocation
- GameLocation::getFish
- GameLocation:getFishFromLocationData```
#

Because this feels location based and I feel it would be silly to have to iterate through every location to get a complete list of fish. I'm still rooting around the code for a more complete list but figured I'd ask!

teal bridge
#

None of those are good choices, use the ItemRegistry and filter by category.

undone hawk
#

I glanced over how the Almanac mod did it but a lot of their methods seem to have been for pre-1.6

undone hawk
teal bridge
#

And under no circumstances should you use getFish, that will actually "catch" the fish and change stats, achievements, etc.

undone hawk
#

Oh good to know!!!

#

I just noted down some potentially useful methods, that's crazy

teal bridge
#

What you want is something like: ItemRegistry.GetObjectTypeDefinition().GetAllIds().Select(ItemRegistry.GetDataOrErrorItem).Where(data => data.Category == Object.FishCategory)

#

It's not going to be the fastest thing ever, so don't run it too often, cache the results if you can.

undone hawk
#

Oh thank you! That was even more than I asked for, you're the best

#

I'll run it on startup and cache it

teal bridge
#

You might not necessarily want to literally cache at startup unless you have a way of invalidating, because their existence can be conditional from CP mods and so on. I just meant, don't query it every single frame, best to do it when you open a menu, or execute some occasional logic, etc.

undone hawk
#

Oh that makes sense

teal bridge
#

Item registry itself has a cache (which can be invalidated).

tight rivet
#

I ran it on location change with HFJ, although I never updated it for 1.6

#

that's generally still potentially going to miss things if CP mods are hyperspecific but it'll get what should be there

teal bridge
#

Yeah, location change (warped event) is probably a pretty good interval.

uncut viper
#

if you only plan on reading the data and not altering it, would it be faster to just iterate over Game1.objectData

#

i dont know what all goes into the ItemRegistry doing its stuff

undone hawk
#

Okay so I'm a touch confused on how to actually parse the data I have as a fish. I have it filtered from focustense's suggestion, but from what I'm reading on the wiki the actual data I need from said fish is stored in Data/Fish.xnb

#

Looking at how the Almanac mod grabbed fish they basically just:

#

Dictionary<string, string> data = Game1.content.Load<Dictionary<string, string>>(@"Data\Fish");

#

Parsed the content directly into a Dictionary

#

Is this still the best method post-1.6 update?

#

Because I feel like it's not but maybe I'm wrong

uncut viper
#

do you want the fish items or the fish data that goes with the items?

undone hawk
#

To be specific about what I want so there's no confusion:

  • I need the location the fish can be caught in
  • All weather/seasonal conditions
  • Whether the player has caught the fish (that one's in GameState IIRC)
  • The Fishing Level it becomes catchable
uncut viper
#

if you just want the data and not the actual objects that go in the players inventory then you can just load Data/Fish like that

undone hawk
#

So I believe I need the fish data that goes with the items

undone hawk
uncut viper
#

however for locations im pretty sure thats set in the Location data?

#

like each location can decide what fish is caught there i think

undone hawk
#

Gotcha gotcha

uncut viper
#

someone can correct me if im wrong on this too but i dont think fish have a concept of "level it can be caught at"

#

its just going to be difficult to catch the higher difficulty fish with a lower level

undone hawk
#

The Legend can't be caught until Fishing Level 10

#

All the legendary fish have level requirements

teal bridge
uncut viper
#

fair enough, i stand corrected. i dont work with fish often

brittle ledge
#

pretty sure you also can't reach certain fish spawn areas without a certain level because your line isn't long enough

uncut viper
#

thatd be different from a level requirement though, since you could get around that with a strong enough buff or just a mod that makes your fishing line longer, regardless of level

round dock
#

Button question, if I'm trying to get the name/title of Elliott books (from Tia's mods), do I still need CMCT or will Dynamic Tokens be enough? Thank you! aniChickLove

uncut viper
#

is Elliott Books a CP-only mod?

round dock
#

Yep! I use %book in some of my dialogue and I'm trying to ensure compat with RWE's new book titles.

uncut viper
#

then unless Elliott Books stores the book title somewhere like mod data you will need CMCT to read any of its dynamic tokens

round dock
#

Thank you, Button!! aniChickLove man your mods are an author's saving grace

brittle ledge
#

yeah, pretty sure you'd need CMCT because it's just a dynamic token

#

I should have the CMCT names on the mod description tho!

round dock
#

Working on it now, thank you Tia and Button! ❤️

chrome mountain
#

Stardew Aquarium 2.0.0 is now out! Huge thanks to @ivory plume for helping me with this update SDVpufferheart
https://www.nexusmods.com/stardewvalley/mods/6372

Nexus Mods :: Stardew Valley

Stardew Aquarium adds an Aquarium to Stardew Valley. Here you can donate your fish to animated tanks for rewards. Includes a large new beach location with new custom shops.

drowsy pewter
#

Wow!

#

Congrats!

tight rivet
#

Congrats!

whole raptor
#

We're officially STF and JA free! SDVpufferparty

rigid musk
brave coyote
#

Make a mod for switch Modders or, you can't do that?

wispy bramble
#

Not unless your switch is jailbroken.

iron ridge
#

i hath been summoned

round dock
#

!switchmodding (but Pillow’s the best person to talk about it further in regards to the topic)

ocean sailBOT
#

Modding on the Nintendo Switch is technically possible in a very limited capacity, but it requires jailbreaking your Switch, which is only possible on select models or by physically altering the hardware of your Switch, and can run the risk of bricking your console and/or being banned by Nintendo. Only visual texture and dialogue replacer XNB mods can be installed. Due to these limitations, we do not provide guides on how to mod the Switch and it is up to the individual if they want to take these risks.

rigid musk
#

for conversation topics in dialogue commands - do you add them at the beginning or end of a dialogue string?

undone hawk
#

Hooray! That's awesome!

#

Testing my mod's baseline (just getting all the fish visable and clickable in the UI before sorting them by current location and other variables)

#

Proof of concept

#

I'll share screenshots if it works!

rigid musk
#

Huh... maybe im formatting it wrong I'll fiddle with it

#

Also what item category would I put a lost item into

pine zenith
#

Hi all! I’m trying to make my custom wine and jelly from a custom fruit I tweaked from the mod “Ancient Starfruit” that I found on Nexus. (It was made as a one-up to Aged Blue Moon Wine from SVE, so I renamed it and tweaked the buffs/prices to my liking so I can practice using vscode and writing json).

The problem is:

Ever since I put the mod in my game, it doesn’t produce the custom wine or jelly with all the buffs and descriptions etc., it makes a vanilla wine with the name of my custom one sans all of the modded elements! I’m trying to figure out what is causing this or how to get my custom wine/jelly out of the keg when I put my custom fruit in instead of a vanilla wine.

I’ll upload screenshots and whatever else is needed just tell me - I’m losing my mind over here because I’ve been trying to figure this out for days and the buffs I put on it are so great and useful CattoSadKitty it’s a really wonderful mod and the first one that I’ve ever made for myself in sdv so I really want it to work

#

I want these:

hallow prism
#

so

#

the items are existing

pine zenith
#

But keg give these:

hallow prism
#

but the processing isn't working

#

it's likely because you didn't put your entries higher than vanilla ones

#

and vanilla take precedence

pine zenith
#

How do I go about that?

hallow prism
#

        {
            "LogName": "Editing Dehydrator",
            "Action": "EditData",
            "Target": "Data/Machines",
            "TargetField": [
                "(BC)Dehydrator",
                "OutputRules"
            ],
            "Entries": {
                "Lumisteria.MtVapius_Dehydrator_SunGrape": {
                    "Id": "Lumisteria.MtVapius_Dehydrator_SunGrape",
                    "Triggers": [
                        {
                            "Trigger": "ItemPlacedInMachine",
                            "RequiredItemId": "(O)Lumisteria.MtVapius_WhiteGrape",
                            "RequiredCount": 5,
                        }
                    ],
                    "UseFirstValidOutput": true,
                    "OutputItem": [
                        {
                            "Id": "Lumisteria.MtVapius_SunGrape",
                            "ItemId": "(O)Lumisteria.MtVapius_SunGrape",
                            "MinStack": 3,
                            "MaxStack": 4,
                        }
                    ],
                    "MinutesUntilReady": 1750,
                },
            },
            "MoveEntries": [
                {
                    "ID": "Lumisteria.MtVapius_Dehydrator_SunGrape",
                    "BeforeId": "DriedFruit"
                },
            ]
        },```
#

this way, but with of course the adjusted names/values 😄

#

basically you already have the first part, what you need is the moveentries part added right below your entries

#

you look at the name of the vanilla rule (it's what you'll put in "beforeId", and the name of your rule

pine zenith
#

I'm sorry, I'm still new at this and don't read code the strongest yet CattoSadKitty Is there any chance you (or anyone really) could break what I'm supposed to do into bite size? Like... okay so I have my mod file, where does this code go? do i create a new json? what names do I switch and where?

cyan marsh
#

@chrome mountain I'm going to DM you about something

hallow prism
#

ok so

#

!json can you follow the instructions here?

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.

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.

hallow prism
#

and provide the json code of your machines?

#

it'll be easier for me to show you with that as example

pine zenith
hallow prism
#

i mean

#

you edit them

#

can you provide that

pine zenith
#

Yes, you need the json for which thing, the fruit?

hallow prism
#

any!

cyan marsh
#

while I wait for DMs.. hi everyone.. I hope your holidays were better than mine.. everyone in my house got either the Flu of Pneumonia

rigid musk
#

Do you have production rules for the output for your fruit?

undone hawk
hallow prism
#

feel free to share the error if you want others to give clues if they have any, lulu

undone hawk
cyan marsh
undone hawk
#

It's a C# mod

pine zenith
undone hawk
#

Hold plz

rigid musk
rancid temple
#

!log share the log for the crash

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.

undone hawk
brittle ledge
#

!json you can also use this page to upload your code so people can see it more easily

ocean sailBOT
#

Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 4 C# mods and 1 content packs.

#

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.

cyan marsh
hallow prism
#

hmm

#

it looks like a JA mod

pine zenith
hallow prism
#

it's pretty late here so i will not be able to guide you to the whole process

pine zenith
#

I can upload a VSCode instead, I use that to view

hallow prism
#

but basically JA can add item (even if most updated mods use CP for that now)

#

but not recipes to machines

pine zenith
undone hawk
#

There's a framework for that IIRC

rigid musk
#

Your fruit is fine? I think? But if you aren't having the produce you want for it you would need to provide the producer rules for whatever it is you're trying to make (if you're using PFM we would need to see that part of it)

hallow prism
#

you want to add that to produce your item so you need either CP (advised) or PFM

pine zenith
#

I have CP

rigid musk
#

I can help you convert the fruit to be a CP item, I'm not super familiar with how to do producer rules but with Lumina's example I could probably walk you through that too

hallow prism
rigid musk
drowsy pewter
#

Category or Type?

hallow prism
#

technically keeping items as JA then CP for the machine is doable but i would advise using only CP

drowsy pewter
#

Basic is only a valid value for Type

pine zenith
undone hawk
rigid musk
#

Type... esssentially i just want it to be a generic item like the lost axe and stuff like that

drowsy pewter
#

I also advise making an entirely CP mod

#

I have a template for making items in CP, not for machine rules though. But the format is more similar once you understnad it

rigid musk
drowsy pewter
rigid musk
#

(and am continuing to ask my fair share)

hallow prism
#

lily, can't you look at what the axe uses and then use that too?

pine zenith
#

Okay, so I have to take everything that's here and convert it to CP - where should I start?

drowsy pewter
#

IF it's not showing up ,then check for errors or a patch export

hallow prism
#

(while keeping in mind some stuff may be hardcoded on the axe stuff, so it may not behave EXACTLY like it)

rigid musk
#

Oh i just realized what I was doing wrong.. misplaced capital letters 😬

drowsy pewter
#

Content Patcher mods are a lot more extensible because you can edit many elements of the game with CP alone. So getting familiar with this format will open more doors for you

rigid musk
#

It really will - I've been able to do a large majority of my npc mod with just CP and I've added crops, dishes, quests, weapons, and a bunch of other stuff

#

Some other frameworks are nice for other things too but for more 'simple' stuff - like adding crops - you wont need those

#

and feel free to ask questions here if you get stuck on something!

hallow prism
#

(also no wonder you were confused by my bit of code, ultravioletrei, i assumed context of CP, which was not the case 😄 )

rigid musk
#

So a question about those conversation topic commands... how do I add it to the end of this? I tried with and without spaces and neither seems to work

"Aos.QiBriefCaseQuest.reaction": "Ah, there it is. Thanks Kid, there's important stuff in here.$7#$b#You'd make a good agent some day.$0#$b#...$7#$b#Don't worry about what's inside of it. There are some things you aren't ready to know.$0 $t AOSBriefCaseQuestFollowup",

pine zenith
#

🥹 Thank you all for this, it really helps anxious people like me to not feel like a burden for being a beginner. I feel like I should know what order to do things but I'm not sure yet because I've only worked so far by editing existing mods that already do the thing I'm trying to get. I'm probably going to ask a lot more questions, but I appreciate you being so patient SDVemoteheart

rigid musk
#

Again it really isn't a problem - we all start somewhere :]

rancid temple
brittle ledge
#

Rei, another thing I would recommend is finding a small mod that does what you want to do (add a crop and an artisan good in CP) and look at what it does.

#

I always find examples helpful for putting it all together 🙂

rancid temple
#

So $0#$t

rigid musk
#

I started by making a furniture mod and I asked like 30 questions all about how to use one framework for it so... - OH

#

i cant believe i forgot that

#

I was literally using it earlier IN the dialogue 😭

brittle ledge
#

(also I don't think you need the $0 there because it should use the default by, well, default)

rigid musk
#

yeahh I mostly do it out of habit so I don't forget to actually add in other portraits when it calls for it

rancid temple
calm nebula
#

wait, $t exists?

pine zenith
#

I'm keeping an eye out for one - I have some CP mods in right now but the closest is a furniture mod, they don't do the thing I want here so I'm going to start from the beginning so I can learn properly but if I come across a mod that just adds a new crop with processing then I'll pick it up. lots of mods just have so much extra stuff and that jumbles things in my head.

rancid temple
#

Yeah, apparently not used by vanilla but it's on the wiki at least

rigid musk
rancid temple
#

Yeah, Cornucopia and VMV have good examples of adding crops and machine processing, but there's also a lot of stuff around all that

rigid musk
rancid temple
#

6480 sometimes posts standalone snippets, not sure what all they have though

rigid musk
#

I can give you examples of a crop and an item to go off of without any sort of extra stuff - then Lumina's example is one I can walk you through for producer rules

hallow prism
#

yeah VMV isn't a small mod, it has a lot of examples but you need to be familiar with stuff at least a bit

rigid musk
#

and there are very many examples of some stuff that people have made :]

hallow prism
pine zenith
#

I want to create a folder and name it something like "[CP] Indigeauxfruit" and then inside I will create a new .json file in VSC called manifest.json , another called content.json, and an empty folder called "Assets". Is this right to start?

brittle ledge
#

though fruit trees are a bit different from crops, I suppose

rancid temple
#

I had a bunch of simple examples up on my github but took them down and haven't gone through to update them and reupload them

#

This is a single crop, produce and seed

rigid musk
#

There's examples on how to format your manifest if you need that as well

drowsy pewter
#

soybean and soybean seed

rigid musk
#

though it seems like that part is good since you were able to load your mod with JA

calm nebula
#

has someone made soymilk yet

pine zenith
brittle ledge
#

Cornucopia does I believe

drowsy pewter
#

yeah we have soymilk

rancid temple
brittle ledge
#

WAG probably also does

calm nebula
#

yay!

#

I like soymilk

#

maybe I should get one of those soymilk machines

pine zenith
drowsy pewter
rigid musk
rancid temple
#

Where template? I need to bookmark whenever you link to snippets dogekek

pine zenith
hallow prism
#

i have to go, good luck (and good night/day)

rigid musk
#

You know, I never actually figured out how the days in phase thing works with regrowable crops

#

I kinda just messed with it until it worked

rancid temple
#

There's a RegrowDays field

pine zenith
pine zenith
brittle ledge
pine zenith
#

I turned the ancient strafruit mod into a regrow crop and used gimp to frankenstein the crop png until it made sense

rigid musk
# rancid temple There's a RegrowDays field

No no, i know that - i meant the sprites for it and stuff. It threw off how it pulled from them and I kinda just had to wing it until it worked and properly cycled through them all

pine zenith
drowsy pewter
#

then you need the re-harvest sprite in the second to last position regardless of prior crop phases

pine zenith
drowsy pewter
#

I think I have an example

pine zenith
drowsy pewter
#

No that's different from what I mean

pine zenith
#

?

drowsy pewter
#

Ah now I remember. The example I was thinking of was one of Lumina's crops, which I pointed out

#

so nvm

drowsy pewter
# pine zenith

This is the typical format for a regrowable crop; Lily is talking about what happens to a regrowable crop that has less than 5 phases

pine zenith
#

Ohhhh

rigid musk
#

my crop had five phases... I think

drowsy pewter
#

Could have been a different issue then

rigid musk
#

I am completely wrong it does not ? I guess?

#

It's no matter I figured it out eventually

tight rivet
#

Me: I'll play a bit with DNT enabled, see how I enjoy it's feel

#

Weather Mod: Oh, you want to see how it feels? fog and rain entire in-game week

drowsy pewter
tight rivet
#

Me: ... well. I like the ambience, but it's not a great test. c.c

rigid musk
pine zenith
#

Eh... silly question here but I've created a new text file in VS Code - How do I make it into a .json? is it just an option when I go to save it that I rename it "content.json" and save it as json?

rigid musk
#

I mean the crops regrow properly! so there's that! but I absolutely did not do that

drowsy pewter
#

Lol

rigid musk
rigid musk
pine zenith
#

don't mind me just saving this for future reference to save my hair follicles from frustration

pine zenith
dreamy cedar
#

In my mod, Junimatic, Junimos come along and help with farm chores and such. I want to make the Junimos afraid of villagers. What I've got implemented in the shipping version is basically a list of places where Junimos work and where they don't. This often runs afoul of other mods that introduce new areas and players don't get any feedback over why the Junimos don't show up.

I cooked up this idea instead - as you can see here, the Junimos have a chance, every tick, to notice nearby villagers:

#

If they see a villager, they run off and disable the hut. The thing is, realistically there's a great chance that the player won't even be in-scene or may just not be paying attention when a Junimo-sees-villager thing happens. Even if that happens, the player gets a solid clue that something is wrong because the hut is very visibly busted and when they pick it up, the item description tells the whole tale.

What I don't like about it is that the Junimo huts are, by design, a little bit of a PITA to make: They take wild seeds. I'm trying to come up with a way to make it so the player can easily convert one of these disabled huts back into a working one. I don't think I can do it with a crafting recipe, since I don't think you can have two recipes that make the same thing... So I think something entirely different needs to be thunk up. Ideas?

drowsy pewter
#

You can have two recipes that make the same thing!

#

Personally, I didnt find junimo huts to be a terrible burden to make

rigid musk
#

^ they just need to have a different internal recipe name iirc

#

I did it with my transmutation mod :]

dreamy cedar
#

Yeah, but if you're new to the mod and experimenting, and this happens several times... I'd get grumpy.

pine zenith
#

I'm just obsessed with jumimos they're the cutest thing in the world, I love the idea that they'd scurry to hide from people when they're nearby >.<

dreamy cedar
#

Hm. I guess I could have the second crafting recipe. Seems like it might be a bit confusing to the player... But maybe not. I'd give it a try. The other idea I had thought of was to make it so that if a player put the busted one in a chest that was in a network serviced by Junimos that the Junimo would take it and rehab it. But that sounds like a whole lot of fancy.

#

Is there a way to make a crafting recipe not be required for Perfection?

brittle pasture
#

no

#

well technically you're in C# so you can do anything

#

but none by itself

#

I guess you can just make your recipe have crafted count = 1

gaunt orbit
#

Why not have it convert to fixed on pickup?

dreamy cedar
#

Can't have it fixed on pickup because then the player wouldn't get a chance to read the "Here's what happened" item description.

gaunt orbit
#

Aaaah

dreamy cedar
#

The idea of artificially setting it as already crafted sounds promising tho.

gaunt orbit
#

Well actually you could

#

You could have it do the hold-up-and-message thing the first time

drowsy pewter
#

Could send a little notif message in the corner when they collect the item as well

gaunt orbit
#

Like vanilla does with geodes

dreamy cedar
#

Yep, that could work too.

#

I've already got stuff monitoring inventory intake.

#

The hold-over-head move would be even more of an in-your-face way to tell the user what went wrong than the item description...

gaunt orbit
#

There's a method to do that to, I think on Farmer

dreamy cedar
#

Yup, I do that with something else in the mod. Don't recall what it is, but I apparently know how to do it 😉

brittle ledge
#

nerm, I'm thinking I'm going to try Junimatic on my next run SDVpufferheart I enjoyed playing through the quests for Questable Tractor!

drowsy pewter
#

Its so amazing!

#

I love Automate, but I cant imagine ever going back now that I've experienced junimatic

gaunt orbit
#

My issue with automate was always that it's too powerful earlygame

drowsy pewter
#

Exactly, it's so cool that junimatic makes it feel like you're building something from nothing, just like you're putting in the work to slowly repair the farm and everything. And the junimos carrying stuff around make it feel like even though it's automated, it's not just a do-everything-instantly button

gaunt orbit
#

Plus I can change the recipe to adjust when it can be unlocked

dreamy cedar
#

Thanks for the positive vibes. I'm intending to do what 6480 told me to do a long time ago and make a video that explains all the features and how to unlock them. I also got some feedback recently to support https://www.nexusmods.com/stardewvalley/mods/22300?tab=files (Special Power Utilities).

Nexus Mods :: Stardew Valley

A categorized special items & powers tab that comes with some small behind-the-scenes utilities for mod authors working with powers and books.

brittle pasture
#

this reminds me to install Junimatic for my new save lol, I knew I forgot something

gaunt orbit
#

I haven't done spu integration only because my mod adds a single power and it seemed dumb to put it in its own tab

brittle pasture
#

hmm I should throw together a PR that makes custom crab pots reachable by junimos. I think only vanilla crab pots are supported

#

because water machines can be like 2 tiles away

drowsy pewter
#

their tiny little arms cant reach SDVpufferpensive

brittle pasture
#

(vacation mode though, so maybe Feb)

drowsy pewter
#

Ah, you're on vacation and are not secretly using it as additional modding time. Very admirable of you

distant radish
drowsy pewter
#

Oh god, I thought my discord glitched

drowsy pewter
distant radish
#

I was looking forward to the holidays just so I could have more modding time - turns out there have been too many friend/family gatherings and I’m always starving for more alone time SDVpufferwaaah

brittle pasture
#

well I did violate it a bit by uploading the new version of FFP just now. but it only contains the Fr translation + one line tweaks I did before

calm nebula
#

Meanwhile, I'm taking full advantage of this slight lull to go knit a hat

#

And some socsk

calm nebula
#

be proud of me! I only worked half a day today

rancid temple
#

So only 9 hours instead of 18 SMCKekLmaoDog

oblique meadow
#

Hey all. Weird issue. Here you can see a fully functioning Crib that spawns into the farmhouse as intended:

#

However, for some reason the baby is possessed and only sleeps here:

#

I've added the Action: Crib Property to the bulding layer. Loaded the maps properly. I cant get the baby unpossessed. Any ideas?

tiny zealot
#

the baby's spawn position in the crib is hardcoded in Child.cs. are you patching those parts of the game code?

uncut viper
oblique meadow
#

I am not. I dont think any of the farmhouses I've looked at as examples did either. I will look into how to do that

tiny zealot
ocean sailBOT
#

Here be dragons. Venture forth with bravery, young warrior, for thou art alone in these dark lands. See the Harmony wiki page for more info.

rigid oriole
rancid temple
#

This code makes me wonder how this works lol, the position seems to be 16, 4 with an offset of -24 y pixels, but like that shouldn't be the correct position given how the map works

#

Oh, probably resetForPlayerEntry

#

So dayUpdate wants to put them in the void and reset puts them where they belong dogekek

tiny zealot
#

considering rewriting the silly warning text in the harmony command. harmony isn't that scary and there are tons of people on here who can help you, so you're not alone

uncut viper
#

(tbh i also feel like the strong warnings on that wiki page are over stated too)

rancid temple
#

Emotionally not alone, physically you still have to handle writing the code yourself lol

uncut viper
#

no different from any other C#, though

rancid temple
#

Most people aren't so energized to write harmony for others

teal bridge
#

At the very least, it's pretty unhelpful as introductory material.

#

They can meme after they've tried it out.

lucid iron
#

Roku what kinda silliness is sve premium barn/coop lol

uncut viper
#

its possible it was more true back when that command was made, i dont know how old it is

lucid iron
#

I didn't test em cus sve hueg

rancid temple
#

Uh, I have no idea, I mean the same level of silliness that most of SVE is

lucid iron
#

What is make them no work for livestock bazaar

rancid temple
#

They aren't upgrades of the barn or coop

brittle pasture
#

Is the building too big or smth

rancid temple
#

But somehow the base game is fine treating them as barns and coops

uncut viper
#

shouldnt that not matter? i thought the adoption stuff looked at what animals a building could house

lucid iron
#

So there's like 2 checks

rancid temple
#

The barn and coop animals show up greyed out if you only have premium barns and coops in Livestock Bazaar

brittle pasture
lucid iron
#

One is "has at least 1 required building"

brittle pasture
#

that same field is used for the big/deluxe barns and coops, otherwise you cant put your chickens in them

lucid iron
#

The other one is "has any room in a matching building with house type"

rancid temple
#

I'm using less than half of the capacity of both

lucid iron
#

It sounds like gist is i just gotta refit that to use vanilla even though inconvenient

#

But is the only broken case is like, only have premium coop without deluxe coop?

rancid temple
#

Pretty sure, I destroyed those when I got the Premium because I had no intention of even filling the Premium

#

I could build a deluxe or regular to test

brittle pasture
#

ah, I see the problem, I misunderstood what was happening
it seem like ppl will also have this problem if they use one of those standalone modded buildings that can accept coop/barn animals

rancid temple
#

What it it?

brittle pasture
#

does SVE actually patch that code?

lucid iron
#

Idk im speculate from me bed

rancid temple
#

I am unsure SVE does anything to that, the Premium Coop and Barn are both in the CP code

brittle pasture
#

the problem where you still need a regular coop/barn to be able to buy animals, even if you have a modded building that can house them

#

because said building isnt a coop/barn upgrade

rancid temple
#

Is this an issue specifically with Livestock Bazaar? I just bought a rabbit to test

#

It worked with Marnie's default menu

#

Now I need to come up with a name for this rabbit SMCKekLmaoDog

brittle pasture
#

yep, confirmed, SVE patches HasBuildingOrUpgrade

brittle pasture
#

to make the Premium Coops/Barns be considered upgrades of the regular ones

rancid temple
#

Is that even necessary anymore?

brittle pasture
#

as I said, without that patch the "no coop or barn, can't purchase animals" problem happens if you only have the premium coops and barns, but not regular ones

#

personally, since livestock bazaar is already yeeting the regular animal shop window I wouldn't mind if it also relaxes that requirements

#

though how, idk

rancid temple
#

Maybe always allow trying to buy but when selecting a building you'll be able to see if you don't have any that match that accepted type?

oblique meadow
#

Ok. So. This seems like this is what I need to edit using harmony to change the crib location I think?

rancid temple
#

I haven't actually looked at Livestock Bazaar's code, so I have no idea how feasible that is

#

That's a bool checking if it's in that area, so you will need to patch that too

#

In order to make it check your new coordinates

#

But you also need to patch Child.resetForPlayerEntry

oblique meadow
#

I feel like I should just redesign my farm house. Im not incapable of learning this....I just dont really want to right now xD

rancid temple
#

Redesigning would certainly be easier

#

Potentially more time consuming, but easier

oblique meadow
#

Does anyone have a mod that uses harmony code they can think of off the top of their head so I can reverse engineer what they're doing. I work better when I can take apart something functional

brittle pasture
#

mods listed there are C#, and a fair number of them uses Harmony

#

hmm wait, that page doesnt link source repos

rancid temple
#

Though, you might be able to complete this with a postfix

#

I haven't looked closely at the reset method to even see what you need to change, might just be the Position of Child

brittle pasture
#

when I'm back from vacation may I coordinate something?

rancid temple
#

Mmm, yeah, I was worried I'd be fucking compat up by doing that, I'm still planning on fixing my transpiler but I dunno when

brittle pasture
#

but if you turn it back into a transpiler it should be compatible

tender bloom
brittle pasture
opaque cobalt
#

Quick question, what is a characters emoji and do calendar sprite edits just change the head on the calendar?

brittle pasture
#

(though now that I think about it I can convert that transpiler to a skipping prefix, which will actually make it compatible with Safe Lightning as long as it runs earlier. The only loss would be that lightning will prioritize modded lightning rods over vanilla ones)

#

(and also marginally worse performance, but eh it would literally be too small to measure)

tiny zealot
tiny zealot
opaque cobalt
# tiny zealot the character faces on the calendar are rendered using the character data's `Mug...

okay, looking at seasonal cute characters to see what all they had for their seasonal characters and found two blocks in miscelanious that I'm trying to see what they actually edit

{
"LogName": "Penny - Emoji",
"Action": "EditImage",
"Target": "LooseSprites/emojis",
"FromFile": "assets/{{NoNose}}/Random/emojis.png",
"FromArea": {"X": 9, "Y": 99, "Width": 9, "Height": 9},
"ToArea": {"X": 9, "Y": 99, "Width": 9, "Height": 9},
"When":
{
"HasFile:{{FromFile}}": true,
},
}
{
"LogName": "Penny Calendar Sprite Edits",
"Action": "EditImage",
"Target": "Characters/Penny",
"FromFile": "assets/{{Target}}/{{TargetWithoutPath}}_{{Aerobics}}.png",
}

uncut viper
#

you can put emojis in chat in multiplayer

slender badger
#

You could also just go look at the base assets mentioned in the code and see for yourself what it's editing

pine zenith
#

Hey guys, Is anyone here from earlier who can help me write a proper content page for the CP mod I'm translating over from JA? I'm drowning in info and guides again and I'm getting stressed out

tender bloom
#

It’s fairly rare that someone has the time and enthusiasm to do things like that for other people

#

If you are getting confused between guides, you can link them here for us to check if they’re up to date

#

You also might want to consider taking a break and doing classic IRL things like eating a snack, a short walk, drinking water, that kind of thing

oblique meadow
#

I dont habitually do many of those things IRL... I should reconsider my life choices

lucid iron
#

I think there's JA converters right

drowsy pewter
#

in my experience watching people struggle, running a converter is more confusing than converting it

#

I know people threw a lot of info at you all at once. People in this chat typically like to jump in and add their two cents to any convo--which leads to a whole lot of voices to listen to. Realistically you can just start with one step and ignore all the rest for now. If you ask again later, you'll get all the same help again. So focus on getting the basic CP guide to work, before doing other things like fiddling with the item data

#

In fact, you can just close those other tabs, and when you need them again, feel free to reread the conversation. With any modding, you have to take things step by step

pine zenith
# tender bloom You also might want to consider taking a break and doing classic IRL things like...

I went and took an almost 3hr break already. That doesn't change my understanding of words or what is being asked here. I just am a more interactive learner and I understand people might not "have the time and enthusiasm" for things like this, but am I supposed to ask somewhere else? If I am, please let me know - I'm not forcing anyone to do anything, I just need to understand better than what the guide is giving me to make sure I'm doing the correct things. People are free to do what they like, so please don't assume that I'm just asking willy nilly. It's a question. I'm only asking if someone can take a look at a content page for me as it's my first time compiling one. I would imagine if it's something you personally don't want to do then it's more productive just to ignore me than tell me how much I need the break I already took and how much people don't want to help me. Not to come off harshly - I mean no disrespect, I just don't much get this response.

#

I'm trying to make sure that my content page will have the information that it's asking for, simple things like making sure my numbers in crop data are correct and that ModID means what I think it does. It's all formatted differently and if I misunderstand something it won't work. I gave my mod the name "Indigeaux.AncientIndifruitMod" in the manifest and it's asking for the ModID inthe content page. So that's what that is, right?

latent mauve
#

Okay, so {{ModID}} is indeed your mod's UniqueID as defined in the manifest file.

#

But when you see {{ModID}} used, it's a token that will automatically parse to that value in code, outside of a few circumstances.

#

Is that specifically what you were wondering about?

drowsy pewter
#

(not to confuse this person, {{ModID}} token is fine next to the Action: Load in the template I provided)

latent mauve
#

(Oops, sorry, didn't mean to confuse!)

drowsy pewter
#

@pine zenith You're welcome to provide your content.json with the following link so people can look

#

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

drowsy pewter
#

The reason Elizabeth said what she said was because the original comment sounded like you wanted to ask someone to convert the code for you, and she wanted to give you a warning that you might be waiting with no success if that was the case. If you have specific code and specific questions, people will be quick to help

uncut viper
#

(i would also like to gently point out that I don't believe math person was saying that no one wants to help or even that they personally don't want to help, but just trying to help prevent the "burning out before you really get started" that a lot of new modders risk, and I think there might have been some misinterpretation with what kind of help you wanted)

still frost
#

hypothetically, what sort of steps would i be looking at if i was looking to make a fashion sense heterochromia mod? the one i found looks like it broke in 1.6

pine zenith
#

Yes, okay I see. I was more asking if someone was available to clear up some questions like the above rather than like...write my code for me or something. If that's the case then I apologize for the misunderstanding. I've modded for years in other games just never with this one or with json so I'm green here but I do pace myself. I'm not trying to hog or waste anyone's time.

brittle ledge
#

It shouldn't have as FS is updated for 1.6.

drowsy pewter
#

No problem. It's good to know as well that you have modding experience and at least broadly understand the process, since many new people don't

drowsy pewter
#

I'm off to sleep now but I'll be around to help with stuff tomorrow if you need

#

(I'm sure you'll get plenty of help though)

still frost
pine zenith
#

Thank you so much for your help catwave I hope you rest well!

brittle ledge
#

Yeah, content packs generally shouldn't break as the framework should handle updates for them. Got a link?

#

or wait, I think I can find it

still frost
brittle ledge
#

hm did the folder trick work for you? I'm not sure why that would but also I'm not sure why it would break

still frost
#

i was just about to try that, like i said i havent tested it but everyone else is saying it broke and the lack of replys on that fix, plus another person saying its broke after it was posted wasnt filling me with lots of confidence

#

im also not super clear on what they mean, like, grab all other mods that use fashion sense and put them in one folder total? or one each? does that include fashion sense itself?

brittle ledge
#

I wasn't either 😓

#

I sent the link over to the mod author to look at, but they've been AFK lately, so if the folder thing doesn't work you might want to try making one yourself, yeah. I haven't made anything in FS so I can't help there but they do have a pretty good wiki.

tender bloom
opaque cobalt
#

just to double check that I understand the wording for this correctly. If I want to edit an object file my file does not have to be the same name, correct? I just have to specify target file x from y

still frost
#

is there a command for the link to said wiki maybe?

tender bloom
#

The FS wiki?

#

!fs

ocean sailBOT
#
Fashion Sense

Fashion Sense is a framework mod that allows modders to create static or animated clothing, hair, accessories, and shoes that can be accessed through a special in-game menu. To access this menu, players will need to obtain the Hand Mirror from Pierre's Shop. The framework supports multiple content packs and also adds the ability to save, load, and export custom outfits.

Mod Users: Install Fashion Sense as well as any desired content packs. Content packs can be found by searching Nexus, or for an interactive list, click here.

Mod Authors: Instructions, tutorials, and tips for creating FS content packs are available on the mod's wiki.

tender bloom
#

Last link in this command

still frost
#

yee that one, ty ty

uncut viper
#

the actual json you're using in your content patcher mod can be called whatever you want, as long as you have a main content.json

pine zenith
#

Quick question: Is there a reason for the underscore in the mod title and the fruit object file here? Can I get rid of these since I'm converting it to cp anyways? (pictured here)

tender bloom
#

It was probably a relic of times when name conflicts were a struggle

#

You can ignore this safely

teal bridge
#

I could use a quick sanity check here: is it clear what this UI does and how to navigate it? (Or, to put it more open-ended, what do you expect to happen when you navigate/click on stuff in this section?)

uncut viper
#

and if i want to change cheese to something else, i should put my cursor over it and click A or my action button or whatever

pine zenith
uncut viper
#

and it should open a menu to let me choose something else?

rigid oriole
#

i agree with button's assessment

uncut viper
#

unless this is like, an inventory screen, in which case id move items into those slots like a chest or smth

teal bridge
#

Ok, good, I was hoping the expectation here was "open a submenu" and not something like "actually use the item right here right now".

#

This is part of a config screen.

uncut viper
#

would it let me choose from any item in the game then?

teal bridge
#

I think to avoid headaches I would have it pick from what's in your inventory right now.

uncut viper
#

oh, so not a config i can access from the title screen

#

gotcha gotcha

teal bridge
#

You can, technically. I guess in that case it would just say "please load a game to choose items" or something.

uncut viper
#

i think that makes sense, my most used items will likely be in my inventory

lucid iron
#

so i would think if i press Y in game i drink the coffee

uncut viper
#

this is more a question about your plans than about the UI, though: will the slots be reset if i remove those items from my inventory?

teal bridge
uncut viper
#

if it werent for the text telling me itd only happen when i had the pie menu open i also initially thought the same as chu, though the text does clear that up

teal bridge
#

From my observation, the #1 thing users struggle with is quickly switching between items and the #2 thing is muscle memory when items move around or are removed.

uncut viper
#

i hope ill be able to put cheese in all 8 slots so i can make sure i hit my panic cheese button correctly when im about to die

teal bridge
#

If you... really want to, then sure, it won't stop you from doing that. Do you even use a controller though?

uncut viper
#

i only use a controller to play stardew, unless im doing modding work

#

(unless unless im doing modding work that involves controller support)

teal bridge
#

Well then, panic cheese to your heart's content.

uncut viper
teal bridge
#

(Somebody's eventually gonna ask me about stuff like "can you merge all quality into one slot and have elaborate rules for which quality to use" and my answer's gonna be... I don't know, maybe later)

uncut viper
#

tbh i would much rather not have merged qualities and would expect that if i chose an iriduum cheese then itd only use iridium cheese from my inventory, and not work if i didnt have iridium cheese on me

teal bridge
#

Then you are in luck, because that's how it's going to behave, because anything else would take too much work right now.

brittle ledge
#

that's why you need eight slots for your panic cheese, one for each quality

teal bridge
#

(Although - iridium cheese? Do you cask cheese?)

brittle ledge
#

cheese on one side, goat cheese on the other

#

(you can, yes)

teal bridge
#

Yeah, of course I thought "goat cheese" but then goat cheese is for giftin', not for eatin'.

uncut viper
#

you can. i also just dont play with the most balanced of mod lists though

#

so iridium cheese is not difficult to come by usually

teal bridge
#

Oh right. I get users mod lists confused sometimes, you're the one who plays with the 10,000 cask basement mod right?

uncut viper
#

i dont think ive ever owned a goat in stardew

#

nope! i just play with mods that let machines produce higher quality things based on input and sometimes it can be iridium and also automate and casks anywhere SDVpuffersmile

velvet narwhal
#

button is the "multiplayer must" and that's all i'm pinning button with

uncut viper
#

that is also true if something doesnt support multiplayer its a no-go for me

#

including my own mods

teal bridge
#

Iridium cheese feels like it's getting into the "too good to use" category, like the fabled megalixir.

#

You just end up hoarding them forever.

uncut viper
#

i eat them like candy in the badlands or w/e that SVE area is called

teal bridge
#

I mean, unless they are so easy to get that you have hundreds of them.

uncut viper
#

thats not an inaccurate assessment of things

velvet narwhal
tender bloom
#

I sell all my iridium cheese for that sweet sweet cash

velvet narwhal
#

throws ATA into the requirements for my expansion ig

uncut viper
#

sounds like a good requirement to me

teal bridge
velvet narwhal
#

all bc i know people retexture furniture.png so much

teal bridge
#

And maybe the occasional gem berry.

still frost
#

update in case people were curious which i will also post in comments of the mod, the eyes dont seem to exist until, in the fashion sense mirror, you pick one of the eyes at which point the eye will exist and you can color it, you then have to add the other "eye accessory" to color that one, the mod works fine, its just kinda weird in how it works

#

the reason the commenter thought sticking the mods in a folder fixed it, was probably because it put the eyes in the first slot of possible accessory options, because the game found those ones first i assume

calm moth
#

I have a question that feels dumb but I cannot find the answer. When you’re running multiple mods that change the same things, how does the game know which mod should be the one you see? Ie, I’m running SVE which changes portraits for several vanilla characters. I’m also running Seasonal Outfits which also changes portraits. What makes Seasonal Outfits override SVE?

uncut viper
#

mods can set dependencies which will change the load order of mods, and they can also change the load order of specific edits they make

slender badger
#

Slightly Cuter Aesthetic doesn't actually override SVE either, it just disables its edits for SVE-edited characters if it detects SVE is installed

uncut viper
#

they can also make specific edits only happen if specific mods are installed

slender badger
#

Those characters are then edited by SCA for SVE

uncut viper
#

(or the opposite as airyn mentions)

hard fern
#

Honestly load order is my best friend for the number of mods i have that do the same thing 😭

calm moth
hard fern
#

Well, what do you want to do?

velvet narwhal
#

pinpointing exactly what you want to do is first order, tbh portrait/sprite replacement disbarring all other mods that do it (get yours to work first then work from there) is usually baby's first steps

slender badger
#

No. 1 tip: don't use SVE as an example mod, it's both overwhelmingly big for a beginner and uses a lot of bad & outdated coding methods

uncut viper
#

for content patcher mods, you only ever need two files + whatever assets you have (i.e. images), but mod authors have a decent degree of freedom in how they want to organize their work and can make more files for organizational purposes

#

(and one of those required files is just your mod info and doesnt control any of the editing besides load order)

calm moth
#

I want to edit requirements for heart events to space them out more. Like this event can only be seen at a week after this other event, or in year three, etc.

uncut viper
#

that would be doable but is not as simple or compatible with other mods as you might be imagining it could be

calm moth
#

But I have RSV and SVE and probably other mods that all edit events or add events 😅

slender badger
#

That's easy enough, though it'll break compatibility with other mods that rely on those events like Button said. Basically what you'll want to do is edit the old version of the event to be null (which removes it) then add it as a new event with the edited event requirements

velvet narwhal
#

y'know, going down the "crazy amount of trigger actions" route i just did, i wonder if i could do something like that without touching the actual events timnk

uncut viper
#

(the event requirements themselves would also require some special attention if you want to count "days after X event")

slender badger
#

RSV doesn't edit vanilla events, and if you're wanting to edit any mod-added events, you'll need permission from the mod authors

slender badger
calm moth
slender badger
#

Yes, because you're editing someone else's work

velvet narwhal
hard fern
#

Well that's on sve

slender badger
#

Unless the mod author has open permissions, you need permission to edit anything of theirs if you want to publish it

uncut viper
#

if you were simply replacing the entirety of the event with all of your own original work itd be one thing, but with Stardew if you want to edit the requirements of an existing event, it would require you to then distribute that event again

slender badger
#

If you're doing it for personal use, then do whatever you like

uncut viper
#

i.e. in order to publish a mod that edits an SVE event, you need to include a copy of that SVE event in your mod, even if you're only changing the requirements

#

its a consequence of the specific way Stardew handles its event data

calm moth
#

Ooo ok that makes sense. If I could edit the triggers alone, that’s one thing, but because I’d be overriding the original event with a “new” event, because it’s the same dialogue… Yeah that tracks.

#

Though tbh I was more looking personal use. I doubt I’ll ever make anything decent enough to publish lol

velvet narwhal
#

if you're changing dialogue, you'd either have to do the field finagling or silence the original

#

if you're just changing when these events should be seen because you want pacing, i might honestly dig deeper into the trigger actions thing

uncut viper
#

airyns idea of simply nulling out the originals until the right time has promise too, but is also more complicated than simply editing the event and may not be the best starter mod. not the worst tho either

#

(how bad of a starter mod it might be really would vary from person to person and how quickly they can pick up the new concepts, so, hard to say really)

slender badger
#

If it's for personal use, then you can just edit the event preconditions however you like. Download a mod that edits a single vanilla event first to get an idea of how the event code works though, because if you're trying to edit RSV or worse yet SVE as your first project, you're gonna get lost fast

velvet narwhal
#

i may as well delve into the "not gonna touch a single event" since i'm already neck deep in these trigger actions

calm moth
#

I’ve coded before, mostly frankencoding in JS, and of course xml/css stuff, so that bit isn’t intimidating. C# scares me though

devout otter
uncut viper
#

correct, the key holds the prerequisites

#

and you cant edit a key

#

(which is also why the "null until the right time" can only ADD requirements too, not remove any)

calm moth
tiny zealot
#

(1.7 feature: data model for events /lh)

velvet narwhal
#

i still have yet to conceptualize what that would look like

#

ig just the movies.json?

tiny zealot
#

much more like movies.json i would think, yeah

uncut viper
#

are there any preconditions that cant be replaced with a simple Condition field with a GSQ?

old edge
#

Hello

tiny zealot
#

even if we just got, like, prerequisites: [] (or Condition) and commands: [] we'd be in a much better place

uncut viper
#

aside from breaking every event mod ever SDVpuffersquee

velvet narwhal
#

yeah that's uh, fear

tiny zealot
uncut viper
#

i know about that one, i was just tryin to think of how you would define the preconditions in a model

velvet narwhal
#

FreeInventorySlots <number> c Current player has at least this many free inventory slots. thonk

uncut viper
#

since itd be unwieldy to have a separate field for each precondition

tiny zealot
#

i was picturing list of strings

uncut viper
old edge
#

Hi

velvet narwhal
#

hasitem exists...

tiny zealot
#

hey dreamy, what's up

uncut viper
#

HasItem wouldnt help for FreeInventorySlots though

velvet narwhal
#

oh no i'm just going through the list

#

and comparing event conditions vs gsq

uncut viper
#

(i also didnt actually know FreeInventorySlots existed... i wonder if i should look at that to compare to my BETAS GSQ for it to make sure im doin it right)

velvet narwhal
hard fern
#

Honestly the more i look at conditions and gsqs the more i start wanting to stick them in places

uncut viper
#

oh it uses Farmer.freeSpotsInInventory and i remember thats what i use too so thats fine

velvet narwhal
#

Tile <x> <y>+ a Current player is standing on one of the given tile positions (can specify multiple x/y positions). This works even if the player is not currently warping.

uncut viper
#

is there any vanilla event that actually uses that?

velvet narwhal
#

uhhhhhhhh

uncut viper
#

i wouldve thought you wouldnt need that with a tile/touch action or whatever

#

but i dont know much about events

velvet narwhal
#

i'm honestly trying to dig into the deep recesses of my smooth brain but mods use it

slender badger
#

If I remember right, the intro to the CC event with Lewis does require you to enter from the bus stop specifically SDVpufferthinkblob

hard fern
#

Ah yeah

#

That one

#

But outside of that....

uncut viper
#

oh thats true i think youre correct

vernal crest
#

The krobus one at the bus stop requires you to land on a specific tile for it to trigger

velvet narwhal
#

SpouseBed B Current player has a double bed in their house (or, if they have a roommate, a single bed). But if the roommate is Krobus, will never match. thonk i think this can be correlated to PLAYER_FARMHOUSE_UPGRADE but there might be some niche cases

uncut viper
#

so if i always go to marnie first ill never unlock krobus or the CC SDVpufferthinkblob

#

er, robin

#

but marnie works too

vernal crest
#

I helped someone whose krobus event wasn't triggering because they had a mod that changed the warp from the farm to the bus stop so the player never landed on the right tile.

hard fern
#

"611439/j 4/t 800 1300/w sunny/a 0 54/H": is the a 0 54 the thing where it needs you to be on One Tile

uncut viper
#

i would never have thought to even check for that when doing any warp edits

vernal crest
#

Yeah looks like it forsy

velvet narwhal
#

i think those are the only ones that gsq doesn't cover though

vernal crest
#

No I wouldn't have either button

velvet narwhal
#

oh wait

tender bloom
#

I feel like making event conditions and events two separate dictionaries would be an interesting direction to explore

velvet narwhal
#
NPCVisible <name>    v    The given NPC is present and visible in any location.
NpcVisibleHere <name>    p    The given NPC is present and visible in the current location.```
tender bloom
#

Also a potentially extremely far-reaching thing to mess with

#

But events already have to be processed separately for their conditions and their actual script

#

In the game code

uncut viper
#

IS_FESTIVAL_DAY can almost do it but not quite. i am surprised theres no GSQ for NPCs being visible actually

velvet narwhal
#

yeah i had to squint at the festival_day one, and went "nope that doesn't cover it"

tiny zealot
velvet narwhal
#

i think it could also be checked with, uh

#

wait no nevermind

hard fern
#

Penny's 14 heart?

velvet narwhal
#

item wouldn't work

tiny zealot
#

that one calls your spouse's GetSpouseBed function. krobus is hardcoded to return null (no bed), and it just like finds the first double bed in your house (or single bed for a roommate)

hard fern
#

"4324303/e 4325434/O Penny/A pennyRedecorating/l noQuilt/B": there's a B here which (i hope? i'm right) Might be that thing that checks for a double bed in your house

uncut viper
#

theoretically if you roommated Krobus and have a double bed but a mod set your farmhouse HasOwner field to false, it'd match

#

this is not a situation that should happen to be clear

#

(which is a slightly different scenario from a mod simply editing the precondition bc this way wouldnt require touching the precondition at all, it'd just be collateral damage SDVpuffersmile)

royal stump
#

I've successfully overcomplicated the add_bush command without any new bugs SDVpufferparty
(add_bush <size> [townBush] [tileSheetOffset] [x y] [location])

uncut viper
#

what about yeet_bush

#

i seem to recall that being in demand too

royal stump
#

remove_bush is here, but I'm not about to figure out how to throw them anywhere

#

(and I'm just gonna hope the walnut mutex locks don't mind when people randomly spawn them)
(they're surprisingly fine with being cut down, at least)

versed wyvern
#

Does the player swimsuit state not natively disable tool use? Trying to create a new bathhouse set up like the vanilla one but I just noticed, though it disables my tools right after changing, I can use my tools again after entering the bath map, do I need to set something up with the map tmx or something?

royal stump
#

it looks like your map's internal* name might need to contain the word "bath" (not case sensitive) for it to preserve the "can only walk" flag when you change locations SDVpufferthink

#

that or you could maybe have them walk over another swimsuit tile on the way in

versed wyvern
#

Well, it's worth a try

royal stump
#

(part of the "reset everything on warp" code for locations looks like this, presumably to keep people from getting stuck in walk mode if they're outside)

if (Game1.CurrentEvent == null && !this.Name.ContainsIgnoreCase("bath"))
{
    Game1.player.canOnlyWalk = false;
}```
versed wyvern
#

Dang, that really was it, that would've driven me crazy trying to figure out the cause, thank you 2DPaimonSpinner

patent lanceBOT
#

@tardy adder: start work on Cosmos (7d ago)

tardy adder
#

AAAAAAAA

oblique meadow
#

I need to chat on this server more.... I need to get to level 25 haha

odd bloom
#

lolol idk why I'm putting alternate dialogues for male and fem farmer on these dialogue I'm making when I aint even gonna upload this

rancid temple
#

Though if you're only on during the dead hours that's not as easy

#

Just gotta engage in the community anywhere really though, plenty of channels to chat in

oblique meadow
#

Haha. I dont chat in Discord much as a whole

rancid temple
#

Before joining here I didn't really either

#

Used it for VC for game dev and playing games with friends occasionally, but text chat wasn't a big thing for me

#

I've re-used the code to dig up artifact spots, only for some reason I'm still rolling library books despite having gotten them all

versed wyvern
#

Pretty much every one of my posts is in here asking for help so it'll take me a while too hippo

uncut viper
#

the thing about asking for help is that eventually you learn enough that you can then offer the same help you got to other people later SDVpuffersmile

versed wyvern
#

But it'll also be a while before I have anything ready to release worth needing the showcase ability for anyway ironmouseSHRUG

uncut viper
#

(apparently i have sent over 22,000 messages in this server, which doesnt seem right... but apparently is. 99% of them are in this channel though)

#

(i forgot i could actually verify that and its actually 94%. sorry for lying SDVpufferpensive)

oblique meadow
versed wyvern
#

I meant it more as in I've chosen a doozy of a project to work on for someone starting from pretty little CP knowledge and it's gonna be a while before that's done henyaZoom

#

And any other miscellaneous projects I think up in the interim are probably gonna be small things like when I asked here yesterday about whether it was possible to make Dust Sprites spawn in more floors

oblique meadow
#

ah I follow

velvet narwhal
#

thonk as someone who only started modding stardew from nothing just some odd 6 months ago, to Being Able To Commit Crimes™️ and get yelled at for the obnoxious ways that i go about the harder aspects of modding, it's purely down to your drive to see your own creations come about

velvet narwhal
oblique meadow
#

I have at LEAST 10

oak dragon
#

Heey Finally back to my mod work, and I'm having a small problem. How do I get the weather status for current day? I'm doing this now by saving the weatherfForTomorrow from the previous day, which is causing me some trouble.Is there a better way to do this? thx a lot ^ ^

spice inlet
#

iirc it should be gamelocation.GetWeather

#

since the weather can be overwritten or be different depending on location context

uncut viper
#

GetSeason for the weather?

spice inlet
#

shouldnt respond half asleep 😄

uncut viper
#

(i dont know the best way off the top of my head either ftr i wasnt just like ignoring the message for 20min. i cant look at the decomp atm to check)

oak dragon
oak dragon
uncut viper
#

Pina Colada edited their message to correct, there is apparently a GameLocation.GetWeather

spice inlet
#

Game1.isRaining shows when it is raining for the default location context on the current day as far as I can tell

oak dragon
#

yep but I need other weather too. and idk if Game1.isRaining will cause bug when player waking up on the island

uncut viper
#

that would be the use of GetWeather id assume which is per location

royal stump
tight rivet
#

I probably should poke at converting this JA mod. (I'd throw it back to the original modder, but I don't think Kaya's really reachable anymore.)

#

(probably won't even be able to upload, I think her permissions are set to "do not distribute")

#

She removed her mods from Nexus is why I suspect it'll just be so methign I make to get rid of JA locally but that'll be it

vernal crest
# oblique meadow I need to chat on this server more.... I need to get to level 25 haha

One fast way to level up is to start helping other people! Helping in here or modded tech support can rack up the levels pretty quickly without risking feeling like you're being spammy. I was over level 50 before I started helping in tech support but I know other people have upped their levels in there. I got mine quickly from helping in here, mostly.

(Not saying you have to do this, obviously! I am just suggesting it in case you don't feel like making chitchat to gain levels, since that was the position I was in when I joined the server - I didn't want to just chat with people I didn't know because it's not my thing.)

tight rivet
#

@calm nebula The funny thing about your comment on Gold to Titanium is that I've just finished rewriting the mod to do that and support i18n.

#

(esp because the way it handled tool names doesn't appear to work)

tight rivet
#

... and now Harmony is throwing a protected memory issue

#

that's .. promising.

drowsy pewter
#

@next plaza Just wanted to say I love your item use trigger actions. This is going to be so helpful

brittle ledge
tight rivet
#

same

granite bluff
#

hey, how can i check edits of spouserooms ingame if i have no gamesave with unlocked spouserooms yet?

slender badger
#

You can use patch export on the spouse room file

#

I don't remember where the spouse room file is located, but as an example, if you wanted to check an edit to Alex's portraits, you'd do patch export Portraits/Alex in the console

vernal crest
#

It's also very easy to use debug commands to quickly marry someone. Just debug houseupgrade 2 and then debug marry Alex and you will be married to Alex.

calm nebula
#

debug hu 2

#

That.

rugged epoch
#

Hey! More of a complex question, but maybe someone has a tip for me: I already have a custom location patched-in using Content Patcher. I now want to add custom "bundles" to this location. These bundles should behave like the normal community center bundles but of course with custom names / required items etc... Of course actually adding events when these bundles are completed will be a another different challenge, but I can deal with that later. When looking at the unpacked "CommunityCenter_Ruins" tilemap, I noticed that they bundles were actually not included in the object layer as I thought they would be. After then looking at the "CommunityCenter" class in the games code, I realized that they were hard-coded at runtime. Now I dont really know how to continue. If I created a custom derivative of "GameLocation" class, containing all the hard-coded bundle code, how could I "connect" that to the patched-in location? Btw Im not a C# beginner, just very inexperienced with XNA / Monogame and of course Stardew Valley's source code.

brittle pasture
#

no need for C# stuff

rugged epoch
#

Tysm! I didnt think there would be a framework for this

final arch
#

(Visit Mount Vapius uses it extensively, if you want a working example)

gray bear
#

realizes i don't actually remember how to edit data
uhhhh so yeah how would you go about editing the display names of monsters? puffer_sweat
i know it's edit data but i'm kinda, lost heh

vernal crest
#

I think because monsters are string models (I can't remember if that's the actual name) you have to use TargetField to get to the last field for each monster which looks to me like it's the display name.

#

Wiki says it's 14 which is the last one

acoustic summit
#
      "Action": "EditData",
      "Target": "Data/monsters",
      "Fields": {
        "Green Slime": { 
          14: "New Name"
        }
      }
    },```
#

Should be how you do it 🙂

vernal crest
#

One day I will learn when TargetField is necessary and when it isn't

gray bear
#

ty both for the help! i understand now

brittle pasture
#

(hmm TIL CP can do that for slash-delimited strings)

tight rivet
#
"Like": ["Abigail", "Alex", "Caroline", "Clint", "Demetrius", "Dwarf", "Elliott", "Emily", "Evelyn", "George", "Gus", "Haley", "Harvey", "Jas", "Jodi", "Kent", "Krobus", "Leah", "Lewis", "Linus", "Marnie", "Maru", "Pam", "Penny", "Pierre", "Robin", "Sam", "Sandy", "Sebastian", "Shane", "Vincent", "Willy", "Wizard"],
#

Am.. I right in assuming I could just make this a universal like and save myself a lot of time writing out append entries?

gray bear
#

mhm! that way, custom npcs will also like the item aswell

oblique meadow
final arch
vernal crest
#

What is TargetField for then? Because to me that sounds like it is for editing part of an entry?

rancid temple
#

TargetField is for when you need to edit nested fields without overwriting everything

gray bear
#

isn't that what im doing?

rancid temple
#

Specifically you'll find the best use when editing a list or array

gray bear
calm nebula
#

Fields is a shorthand for targetfield

rancid temple
#

If you use Fields on an array or list it'll overwrite the whole thing

calm nebula
#

There is also a mumble deliminated str editor

gray bear
rancid temple
#

You can edit DisplayName with Fields, that's fine

#

If you wanted to edit ContextTags or something like it, then you would use TargetField

gray bear
#

ohh, i see. i think

rancid temple
#

I know there's other things where you would definitely need a TargetField but I can't remember them off the top of my head

acoustic summit
#

I remember editing fish available in a location needed TargetField

brittle pasture
#

it's when you are two or more layers deep that you need TargetFields

#

because Fields would just overwrite everything

rancid temple
#

Hm, I thought you could keep diving down models/objects without any issue

brittle pasture
#

you can keep diving with TargetField yes

rancid temple
#

I mean with Fields

acoustic summit
#

CP dosnt like that for some reason, no 😦

rancid temple
#

Would have to find something to test on

acoustic summit
#

Could test it on fish in a given location

vernal crest
#

So Fields is what you want for editing just one field in data that looks like this

rancid temple
#

Fish in Locations are in a list though, I know that wouldn't work

vernal crest
#

And TargetField for one field in data that looks like this?

#

Like if I wanted to edit the IsRecipe inside Fruit inside 628?

rancid temple
#

Yeah

calm nebula
#

Remember back in the day when everything was Slash deliminated strings

rancid temple
#

Thankfully, no

acoustic summit
brittle pasture
rancid temple
#

The only nested object I can think of right now is CustomFields

brittle pasture
#

which is okay if you are replacing Fruit wholesale, but you don't want to add a new rule to the mayo machine with that

vernal crest
#

Okay I think I am following that

brittle pasture
#

I guess that's a fun exercise to actually see what I mean, try just adding a new rule to the mayo machine using Fields
(spoiler, you can't)

vernal crest
#

And the reason you'd use Fields instead of Entries for Texture is because using Entries would overwrite every field in the whole of 628?

rancid temple
#

A blank emoji as far as I can see SMCKekLmaoDog

vernal crest
#

A plus sign, which I assume means yes lol

brittle pasture
#

... so much better now or so much better then

vernal crest
#

Thank you everyone for helping me to understand SDVpufferheart

rancid temple
#

Oh here we go, Locations DefaultArrivalTile is a nested object

brittle pasture
#

that is a simpler example than machines lol

calm nebula
#

I don't know, pitting a full band in between each field was kinds weird

brittle pasture
#

(Side note, I feel like 99% of machine data's reputation of being hard is due to it being so nested. It's rather intuitive once you figure out what every field is doing)

calm nebula
#

The npc model too

frigid hollow
#

Hm, I thought FARM_CAVE returns the type of cave it is, and having the ANY there would make it actually evaluate it

rancid temple
#

SMCKekLmaoDog it does indeed wipe the whole rest of the model

brittle pasture
#

no, ANY is if you want to evaluate multiple GSQs and return true if any of them is true

frigid hollow
#

oh but i forgot the quotes that would make it not work at all in the first place

brittle pasture
#

there's only one (FARM_CAVE) here, so you dont need any, and as mentioned you need to wrap it in quotes

#

GSQs only return true or false

#

they are not like CP tokens

frigid hollow
#

ohhh yeah i overthunk it

#

i got it right in the first ss SDVpufferpensive

tight rivet
#

question about colored items, does it need a second sprite? I'm working on converting and ran across a JA crop with two sprites

#

and as you acn guess did not find a CP mod to look at how it handleed it

tender bloom
#

Yes

frigid hollow
#

i think they have both? uncolored for the base non-flavored and a grayscale one for the coloring which is overlaid

tender bloom
#

It needs a greyscale one on the right

tight rivet
#

ah-ha

tender bloom
#

Precisely on the right

#

I think VMV has colored flowers

#

But vanilla itself has em

tight rivet
#

so I would then move every other spreadsheet index up by 1, right?

tender bloom
#

Yeah, assuming you moved them all around

tight rivet
#

sort of it looks like this rn:

#

so the flower is.. index 4, the seed index 6, i think

brittle pasture
tender bloom
#

Assuming I can count

brittle pasture
#

also dont forget to set the ColorOverlayFromNextIndex field in object data, otherwise the game tints then entire sprite instead of using the overlay

tight rivet
#

.. I'm glad you said something because I would never have figured that out from looking at tulips and the JA code lol

light bramble
#

where are hats stored in the content of SDV?

#

found them XD

lilac acorn
#

hi guys, i'm using a farm cave mod that spawns fruits from day 1, i want to stop that, can i get some help? dogShy

light bramble
#

to be fair, Charaters/Farmer is where I should've looked first

light bramble
lilac acorn
light bramble
lilac acorn
light bramble
#

Is it all json?

lilac acorn
#

ye

light bramble
#

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

lilac acorn
light bramble
#

Give me a moment to gat back to my computer. I need to let my dogs outside

lilac acorn
#

DOGGIES anime_waveYAY

tight rivet
#

Me: "I should use this mod to learn how to convert stuff"

#

Also Me: "Maybe I can add animal crossing cosmos variants!!!!"

#

Scope creep scope creep

lilac acorn
#

ANIMAL CROSSING STUFF YOU GO MY FRIEND I SUPPORT

hallow urchin
#

Guys I need help 😭 I'm trying to make a mod that adds some shortcuts to frequent player actions, and I need to figure out a way to either forcibly use an item(not a tool, that one I got) or force the use of the "action" key, and I think I'm in the right direction. I found a script to force the activation of a keybind, but I can't figure out how to find out which key is set as the action key for the current player. Is there a class that provides a list of the current keybinds? Am I overthinking this or do I have to think harder?

finite sequoia
#

I can’t help at all but love the pfp that movie is. A masterpiece

hallow urchin
#

I'm finding out the hard way my Unity knowledge isn't as useful as I thought it'd be here ^^'

rancid temple
#

Yeah unfortunately the only really transferrable skill is any C# you know

#

Have you already decompiled?

hallow urchin
#

I have done the standard procedure to work with SMAPI, so there's some decompilation of the original game code but not everything, is there more I can do?

rancid temple
#

Well the regular decompile is good enough for most things, there's the game data but that's not as necessary

#

That's like the internals for all the things CP handles

#

Data models and whatnot

hallow urchin
#

Yeah I don't think I need to dig that deep

#

It's frustrating because I am sooooo close to being able to do what I want

rancid temple
#

Hmmm, there's Game1.pressActionButton

hallow urchin
#

wait wha

#

oh. oh....

#

How didn't I see this before!!

#

Thanks a lot lmaooo

rancid temple
#

Man this method does a lot...

tender bloom
#

SMAPI itself also does have a way to know which button is the action buttion

hallow urchin
tender bloom
#

Unfortunately I’m on mobile and that makes this page unreadable

#

Yeah, you’re right

#

I forgot it was a method on the button

#

But internally SMAPI is probably using game code to check that?

#

You can actually just look at the SMAPI source, it’s open source

#

button.IsActionButton()

#

I find navigating SMAPI source confusing sometimes but it should be possible to track that down if you need to

#

(I don’t think I can find it for you on mobile unfortunately)

hallow urchin
#

I could manually go through each possible keybind but that doesn't seem right hehe

tight rivet
#

shakes the Content Patcher documentation

hallow urchin
tight rivet
#

the validator? complains

#

aaargh

light bramble
#

@lilac acorn can I dm you rq?

lilac acorn
pine zenith
#

Hey guys, I'm making a mod that adds a crop with craftable wine and jelly and I'm working on a content.json for it. Can someone take a look at this and tell me if it's okay and maybe what I should add (For the wine+jelly part next since this looks like just the crop)

calm nebula
#

Something like that

light bramble
rancid temple
#

Game1.options.actionButton

hallow urchin
#

SMAPI could really use a class documentation website

hallow urchin
rancid temple
#

I freakin' stumbled on this the other day when I was trying to fix my hardware cursor issue

calm nebula
rancid temple
#

That's why I was looking in Game1 because I was certain I had seen something

calm nebula
#

Have fun!

hallow urchin
rancid temple
#

Yeah, could be working for years to disentangle all these classes into understandable documentation

hallow urchin
#

The time will pass anyways :)

rancid temple
#

Game1 is only 16k lines, ez-pz

calm nebula
tight rivet
#

sdv 1.7 comes out with a new FPS mode in 2026

hallow urchin
#

I think just like a list of the existing methods and classes that you can search on would already do wonders

#

wouldn't be too hard to do

brittle pasture
hallow urchin
#

first i need to learn to mod though lmao

calm nebula
brittle pasture
#

also they're returning a nonexistent soybean item, while you presumably want the fruit above

pine zenith
brittle pasture
#

48

hallow urchin
brittle pasture
#

also I recommend not using spaces in your item ID

#

use underscores

pine zenith
#

Ah, "Entries": { I'm not surre what goes here?

brittle pasture
#

whops, I meant 49

pine zenith
faint ingot
#

Phase 2 has begun

light bramble
#

Hey so, I wanna ping esca to ask a question but it appears they are offline, so my question is;
is it possible to stop things from spawning until a certain day has passed in game using FTM?

brittle pasture
#

your crop is "{{ModId}}Ancient Indifruit", which does not match the seed (which is "{{ModId}}_Ancient Indifruit Seed")

brittle pasture
pine zenith
tight rivet
light bramble
#

Cuz like the config editor has a option for extra spawn conditions.

tight rivet
#

Or...

faint ingot
light bramble
pine zenith
#

Okay so what do I put there?I don't get what's wrong with that - it's the seed of the ancient Indifruit, right?

tight rivet
# faint ingot

I mean, honestly, if Lewis spends all of his spare income on it I don't care he has a ego problem. 😄

brittle pasture
#

make them identical

#

if you add a new seed item named "{{ModId}}_Ancient_Indifruit_Seed" in Data/Objects, your crop in Data/Crops must also be "{{ModId}}_Ancient_Indifruit_Seed"

pine zenith
#

Okay so they both need to be names "Ancient Indifruit Seed"

brittle pasture
#

yes (also as mentioned use underscores instead of spaces)

faint ingot
pine zenith
#

Okay, I hope I understood that better

tight rivet
#

is it? I feel vaguely CA's implications are meant to let people to decide.

brittle pasture
#

your object entry in line 31 is still using spaces

#

fix that and I think you should be good

tight rivet
#

I do think, though, that Lewis is more of a target tha nPierre

brittle pasture
#

definitely test in game

tight rivet
#

because you do get the feeling Lewis is testing the boundaries a lot more lol

#

PIerre's just being shady. c.c

pine zenith
faint ingot
#

of course it's meant to let people decide, that's what an implication is, after all.

pine zenith
#

Now I want to create the wine and jelly with custom sprites, is there a reference for those? I'm not sure how to do them

brittle pasture
#

do you just want to do whatever the base game does with its apple/oranges/etc. wines and jellies

#

if yes then you dont have to do anything

pine zenith
brittle pasture
#

those are automatically made for every fruit in the game

#

ah okay, then you add new entries to Data/Objects

tight rivet
#

tangentially: I kinda wish I had a third monitor some days

#

Today is one of htem

pine zenith
#

In my content.json?

brittle pasture
#

yes, in the same place you're adding the seeds and fruit
you'd also need to modify the game's machine rules to output those custom items instead of the generic fruit/wines

#

but we'll get to that later

pine zenith
#

Hmmm, okay

brittle pasture
#

for now modify the Entries array of the Data/Objects entry to add two more entries, one for the fruit and one for the wine

pine zenith
#

I'm looking for the page with all the entries to see what I have to put here

gaunt roost
#

Could someone please update the Skill Prestige compatibility? Its broken because of the latest SpaceCore update, and I don't have a GitHub account.
Thanks in advance.

pine zenith
brittle pasture
#

see how your code in Entries has two blocks that look like "{{ModId}}_ItemId": { code that details what the item does }, one for the fruit and one for the seed

#

just add two more like that

pine zenith
brittle pasture
#

yep, looks fine to me
now just fill in the relevant stuff (id, display name, type, category, etc.)

pine zenith
#

Okay so I'm making a wine and a jelly so for "Type" is also "Basic" for both and their categories are the Item IDs for basic wine and basic jelly?

#

But I add their edibility and buffs?

drowsy pewter
#

Yes their type is basic but their category should be the nunber for artisan goods

pine zenith
#

Artisan goods is -26, right?

oblique meadow
#

Silly question. If I wanted to make a farm map that has more areas of the farm unlock as you accomplish different feats and tasks. Would the best way to do this be to pair it with unlockable bundles? Or is there a different approach others would recommend

#

Ex 8 heart friendship with Linus unlocks a foraging area. Etc.

drowsy pewter
brittle pasture
#

stuff like "8 heart with Linus unlocks new area" can be done with map patches and a When condition

drowsy pewter
#

(Now I'm thinking about what happens when you lose hearts)

brittle pasture
#

UB is for if you want "completing a bundle unlocks a new area", which can then be done with, you guess it, map patches with a When condition

drowsy pewter
#

Does anyone know offhand how to edit fishing chest loot pools, if we can?

brittle pasture
#

Item Extension supports that

drowsy pewter
#

Ah thank you

brittle pasture
oblique meadow
#

It won’t undo the event. Just like Leah won’t take her statue back if you lose hearts

brittle pasture
#

a more seamless approach is probably a 8-heart event that sets a flag to unlock it

#

yeah

oblique meadow
#

Like the idea to me is Linus likes you enough he shows you a secret foraging area he uses to find food.

drowsy pewter
#

(yeah its perfectly possible to do that, you just have to pay attention to how you set up the When checks)

oblique meadow
#

I have zero idea how to do checks like that yet. So time to go down a rabbit hole haha.

tight rivet
#

Me: "Oh, there's a giant crop here."

#

looks at how 6480 did it Me: "Okay. I see JA just.. handled this somehow. o.o."

drowsy pewter
#

JA incorporated giant crops sometime around 2021 or 2022

#

maybe 2022

#

since I never used that feature

tight rivet
#

yeah, I ran a cross it since I'm doing the crops first in Korea Blossom and

#

suddenly "giant.png" appeared!

#

but there's no entries in the crop.json or object.json. 😄

calm nebula
#

Yup. It just needed thr giant.png

#

Tbh 1.6 giants are far more like

#

Flexible

#

I read a book on mushrooms and now would like someone to make an accurate mushrooms mod

#

(I'm kidding.)

#

(Irl truffle farming sounds less than fun.)

hallow prism
#

i kinda wish i had a GSQ to check trees planted in a location to get white truffle

hallow prism
#

would it be complex/heavy in term of performance?

calm nebula
#

Hmmm

#

Yes and no, I think I can make it good.

#

Ie, I'll just cache it lol

hallow prism
#

ok! well, why not, if you get some extra free time (pls keep some free free time)

#

at least SDV/smapi should be globally more stable now

calm nebula
#

Last time I was doing Actual Modding stuff I was peeping into the wonderful world of poking with the netevents

calm nebula
#

(Jkjkjk jk)

hallow prism
#

(ahah 😄 )

tight rivet
#

*SDV 1.7 drops, making everything 3D

#

that'd be the worst outcome, because everyone would learn..

#

Blender.

#

More seriously.. I'm actually happy tht GSQ stuff is a lot more prevalant

placid beacon
#

I have a doubt, is there any technical impediment about why you can't create mods that add floor designs to mines (both normal mines and desert mines)? I search and nobody has done something like this

hallow prism
#

it's not technically impossible, i remember i saw such mods, but i think possibly youi'll need C# for the spawning to adjust?

pastel moat
#

is there such thing as mods that dont require smapi?

frigid hollow
#

Additional Mine Maps used to exist, dunno if anyones updated it for 1.6

hallow prism
placid beacon
#

I know you can create custom maps for new mines, but I haven't seen anyone adding designs to existing mines.

frigid hollow
#

okay yes additional mine maps update does exist by mouahrara... though not sure if it's broken again inbetween 1.6 release and now

tight rivet
#

I was thinking you might want to look at Graveyard

#

it changes some minelevels

#

(although it might just be using an existing one, now that I think about it..)

frigid hollow
gaunt orbit
#

it might still work, it only has two very simple prefix patches

oblique meadow
#

In a short change of subject… If I wanted to increase the forage that spawns on my farm. Do I need to individually add the items and set the spawn rates. Or is there a generic “global” map setting I can change