#making-mods-general

1 messages · Page 246 of 1

fathom rapids
brave fable
#

uhhhh see my mod translation implementations get worse and worse with every new project, let me see if i can find a normal one

fathom rapids
brave fable
#

your folder is named 18n SDVpufferthumbsup

fathom rapids
#

oh

#

THANKS

gray bear
#

felt... one time i typed an i18n value without the n

brave fable
#

i'll never understand the tech lingo mashing that gives us urls like tree and blob

#

you don't need to make some internal static readonly getter property for the i18n helper, but it helps ☀️

fathom rapids
#

thank you i can now understand this 😭

#

why is the documentation like this

#

it was throwing an error that I18n was not found,,,

tidal stone
#

is there any specific reason to haeve my flowers and herbs and trees on different tilesheets or can i have them all on one

fathom rapids
#

absolutely have them all on one

tidal stone
#

nice

fathom rapids
#

the reason to have different is to make them easier to find i guess?

tidal stone
#

fair i guess for orginization

gray bear
#

...init

brave fable
#

alternatively you can hover it and click the 💡❌ icon to bring up the same menu, but it doesn't like me much and vanishes

gentle rose
#

are you using rider or vs, blueberry?

#

it sounds exactly like how it works for me in rider so I'm curious if they just do it the same

brave fable
#

VS, it's just something in common i suppose

gentle rose
#

neat, they literally use the same shortcut then

brave fable
#

which checks out since ctrl+. is about as obtuse of a hotkey as jetbrains products like to use

#

shift+f6 or whatever to rename a symbol drives me insane

gentle rose
#

idek what they use for anything because there's three different hotkey configurations you choose from at the start and they change basically every hotkey

#

I'd just use my mouse (which I usually hate with a passion) but the right button only works roughly 5% of the time SMCPufferFlat

brave fable
#

i think you need a new mouse haha

#

i hate replacing things that still mostly work but i've tried existing with flipping the mouse buttons for doing different tasks with a broken mouse and it's miserable

gentle rose
#

I think I need to use my fancy MX Master and not this wired thing that probably came free with something fifteen years ago

brave fable
#

nothing makes you lose your mind faster than trying to use photoshop with a flaky left mouse button

#

why i happen to have a fancy MX Master 3S right here

gentle rose
#

flaky left button? that's barely even usable pffft

#

this one is an MX Master 1 haha, got it for free from my internship

brave fable
#

the last mouse (logitech G703) would work perfectly except for the LMB occasionally pressing 5 times instead of 1 and releasing 5 times per second if you held it down

#

which fucks up everything lol

#

and the whole outer tactile coating seems to be dissolving now i've left it for a while which is scary

gentle rose
#

oh the rubber kind that melts over time? yuck, it's probably sticky now too

brave fable
#

absolutely

gentle rose
#

hate that companies insist on using it

#

I would literally rather have the plastic

brave fable
#

the master 3s seems to have the same flavour of coating so i've got that to look forward to when i'm older and more decrepit

#

and maybe also dissolving

gentle rose
#

won't be able to tell if it's sticky if you are too, problem solved

brave fable
#

i'll say it's very nice having the horizontal scrollwheel on the mxm3s for visual studio, great to be able to read long lines in small window panes without having to drag the scrollbar each time

fathom rapids
#

WOW! I18N decided to un-throw the error and now I can follow the instructions in the documentation! ???

#

thank you @brave fable ;~; i now understand what all the code does

#

also the package was already imported see i started with that

#

it just. hadnt. caught up??? or something???

brave fable
#

yeah VS does actually need to think about what to say. it's very anxious but also very focused on its job

#

especially when you first open it, takes a while for it to remember what it was doing

gentle rose
#

whelp, I have literally no idea where that mx master is

fossil osprey
brave fable
#

it does, but shiftscroll in VS is unbelievably slow lol

#

wonder if there's an option for that

cyan venture
#

@gentle rose sorry to bother you but i dont understand about i18n support...

#

hmm i mean i read wiki page about i18n

gentle rose
#

which part don't you understand?

cyan venture
#

but as i understand i18n is supporting the dialogs used by content patcher

#

and I edit the dialogue I want with C#

gentle rose
#

no, i18n works for c# too

cyan venture
#

yes

#

and the part

gentle rose
#

it isn't just dialogue, either - any message you show your user should be i18ned

cyan venture
#

is i dont understand how to add i18n into my code

gentle rose
cyan venture
#

im reading it currently

brave fable
#

also, your C# and CP mods won't be able to read or use eachother's i18n files or text. if you want to share i18n text between both mods, you need to add them to a data asset

gentle rose
#

(I believe they only have a C# mod right now)

cyan venture
#

yes

#

im only using C# right now

gentle rose
#

found the mx master aSDVpufferparty forgot how nice these proper mice are pffft

#

and somehow it still has charge after like three years in storage, legendary

brave fable
#

i've recharged my mouse like 3 times total since black friday. i haven't recharged my keyboard. unbelievable

#

i mean keyboards usually last long but that's on AA

gentle rose
#

these high-end peripherals are on another level

#

is your keyboard also logitech?

calm nebula
brave fable
#

please atra i've already done the stupid way and been shamed for it

gentle rose
brave fable
#

logitech mx mechanical to match the pair

gentle rose
#

I'm glad this is every C# modder's shameful past crime SBVLmaoDog

brave fable
#

i'm not ashamed, i've just been shamed for it SDVdemetriums

fathom rapids
fathom rapids
#

Just remember to give it time between installing the package and writing/copypasting code -_-

cyan venture
#

oh wow

#

i think this will be the thing im looking for

gentle rose
cyan venture
#

i18n aside, I want to ask how to use CP mod in my mod folder

#

i mean this

gentle rose
#

what is the content pack for?

fathom rapids
#

I thiiink you probably just want it to be two separate mods? With just the regular mod order / asset access / api interaction?

#

That one is in the other's mod folder is just an organization quirk

cyan venture
#

the house upgrade accepted one

fathom rapids
#

Just make the content pack as a separate mod

#

and publish them in the same zip

gentle rose
#

for the i18n? you don't need to do that

#

keep it in the C# code

cyan venture
#

hmm but i saw other big mod have CP inside the main mod folder

cyan venture
fathom rapids
#

if it has its own manifest it's a separate mod

cyan venture
#

my last release Robin didnt have the ExtraDialogue because i cant change the "three days"

gentle rose
#

yeah, if you actually need it because you're adding separate things, the two parts of the mod will each be in a separate folder inside the main mod folder

brave fable
cyan venture
#

i'll try it as a separate mod first to see if it work

brave fable
#

admittedly it is convenient for stuff like scrolling through endless browser tabs and merge conflicts

gentle rose
#

like

- Farmhouse Upgrades
|-- Farmhouse Upgrades Code <-- your C# mod
|   - manifest.json
|   - ...
|-- [CP] Farmhouse Upgrades <-- the content pack
|   - manifest.json
|   - ...
cyan venture
#

Ahh i need to take a break

#

So messy

gentle rose
brave fable
#

it's also very very very inconvenient for zooming in/out in photoshop since one flick and your entire spritesheet is a blip in the distance

#

i'm glad the mxm3s comes with a ratchet mode even if it does go into slip n' slide supa speed still

gentle rose
#

even the 1 comes with ratchet mode, I think in the 1 you can disable glide entirely

cyan venture
#

everything work fine instead of this

fathom rapids
#

what's the source?

#

like what is the line like where you typed it

cyan venture
#

Robin ExtraDialogue Robin_HouseUpgrade_Accepted

#

{
"Format": "2.5.0",
"Changes": [
{
"Action": "EditData",
"Target": "Data/ExtraDialogue",
"Entries": {
"Robin_HouseUpgrade_Accepted": "Thank you! I'll get started tomorrow. I should be finished in around {UpgradeDays} days."
}
}
]
}

fathom rapids
#

{{UpgradeDays}}

#

try that

cyan venture
#

okay

fathom rapids
#

also use i18n always

#

literally break the line in half and put both halves in i18n

cyan venture
#

im testing it

#

to see if it work first

fathom rapids
#

i dont recommend that

#

i18n is a big enough change it's in my experience better to start doing it correctly than scramble to refactor later

#

-horrific flashbacks to i18n-ifying my seasonal outfits mod-

cyan venture
#

hmm so the dialogue get back to default

vernal crest
#

I always work that way. Starting with i18n introduces an extra point of failure to deal with in troubleshooting.

cyan venture
#

oh i got the problem

vernal crest
#

But I only do it with one thing at a time.

#

So if I was in Rias's shoes for example I'd figure out this token issue and then put it into i18n immediately after that.

fathom rapids
#

fair enough yeah

vernal crest
#

I do agree with not leaving i18n until right at the end of the entire mod. That seems daunting and inviting many new potential errors to be introduced.

cyan venture
#

I still don't understand much about i18n.

vernal crest
cyan venture
#

after i read the document that Liliet sent i found a way to use i18n in my code

cyan venture
#

but what i dont understand about i18n is what i have to do with it and what it does

vernal crest
# cyan venture I still don't understand much about i18n.

It just helps you to put all your translateable text into a document separate from your actual code (or json) so translators can translate your mod without releasing an entire copy of the mod and also without poking around in the code and breaking something.

cyan venture
#

people say i18n is used to translate my mod to another language or support it better

#

yes

vernal crest
cyan venture
#

but I don't understand what I will have to create default.json file with

vernal crest
#

Because that token has nothing to do with i18n.

cyan venture
#

you don't need to worry about it anymore because i'm still looking for a way to fix it

vernal crest
#

I'm not sure if your problem is that you're trying to translate to i18n or if your dialogue change isn't working, or both.

cyan venture
#

rather it works, but it fails for some reason

#

this is the picture i took when i changed the dialogue but it was broken'

#

with my message line has the CP code you asked

vernal crest
#

Okay well that's what I was talking about with the token. The game is saying you haven't defined the token before trying to use it. And you got that "days" line when your token incorrectly just had one set of curly braces around it.

#

Where are you defining that token before trying to use it? In the config of the CP mod?

cyan venture
#

config

#

im using C# and CP

vernal crest
#

It has to be defined in the CP mod to be able to use it in there. You can't read a token from your C# mod in your CP mod.

cyan venture
#

oh...

ocean sailBOT
#

@cyan venture You leveled up to Cowpoke. You can now speak in our voice channels and share images in all channels!

cyan venture
#

but how

vernal crest
#

(Well, you can if you use Button's Cross-Mod Compatibility Tokens mod but not otherwise.)

cyan venture
#

i mean

vernal crest
#

Or you could just do it all in C# instead of making a content pack just to change some dialogue.

cyan venture
#

I remember, I tried to merge CP and C# mods into one but got some error related to LocalizedContentManager

cyan venture
vernal crest
#

You might be going down just as complex a path trying to create a config in your C# that you use in your CP mod, but I'll admit I don't know how to use tokens in C# yet so I couldn't offer advice about how to edit the dialogue with them in C# anyway.

dusty jackal
#

Hi, do you know a guide to create a mod with a custom machine?

cyan venture
#

cant make it work

vernal crest
vernal crest
vernal crest
cyan venture
#

well but just let it go

#

hmm what is this

fathom rapids
#

(just had to go away for a bit sorry)

#

there's a mod that lets you just straight up access another mod's configs

cyan venture
fathom rapids
#

the problem is I don't remember what the mod is called

marble verge
#

I get the feeling I already know why, but just in case: in CP, why does {{{{C}}.Alpha}} throw an error?

fathom rapids
#

THAN KYOU

vernal crest
#

It's the mod I mentioned before. CMCT.

fathom rapids
vernal crest
marble verge
cyan venture
fathom rapids
cyan venture
#

oh i understand

fathom rapids
#

first you need to put your c# as a dependency in manifest for your cp mod

calm nebula
cyan venture
#

so this mod let CP access token from C# mod right?

marble verge
fathom rapids
#

then you use
{{Spiderbuttons.CMCT/Config: [YourC#ModID], UpgradeDays}}

#

where you were putting {UpgradeDays}

#

(just replace the placeholder)

cyan venture
#

ok

tiny zealot
#

you shouldn't need CMCT to access C#-mod-provided tokens in CP

vernal crest
tiny zealot
#

if the C# mod is using content patcher API's RegisterToken, then in CP you just access the token in its namespace

#

e.g.

            var cpapi = this.Helper.ModRegistry.GetApi<IContentPatcherAPI>("Pathoschild.ContentPatcher");
            cpapi.RegisterToken(this.ModManifest, "YourTokenName", () => {
                return new[] {$"{your value here}"};
            });```
then in CP you do
`"{{your.smapi.ModId/YourTokenName}}"`
#

this is the purpose of CP's token API: to expose tokens for CP packs to use.
but aba is right that tokens defined within a CP mod are local to that mod and can't be used by others without CMCT doing its thing to expose them

cyan venture
#

well i tried this method too

#

and it give me the default dialogue

tiny zealot
#

(also, note that technically you should be checking whether your GetApi call returns null, but my mod has a hard dependency on content patcher and content patcher is one mod that it is, in practice, safe to assume everyone has)

tribal ore
#

Hey, @tiny zealot, would it be possible to specify a higher base resolution for secret note images (e.g. 640px by 640px)? I don't think Secret Note Framework allows this at the moment, but is this something you might consider adding?

vernal crest
#

I am ashamed to say that I do not understand enough about C# modding yet to understand whether you need to register tokens with CP's API to use them within your own C# mod. Or whether you even need tokens if it's a C# mod or if you achieve the same functionality with something different.

tiny zealot
#

or maybe i'll give you more canvas to work with, who knows we'll see /lh

tribal ore
tiny zealot
#

"hostile" meaning not under your control, probably not a great word choice

vernal crest
ivory plume
cyan venture
#

uhhh some how it worked but token days disappeared

ivory plume
#

Sorry, forgot to reply earlier! If you're using...

  • the basic token API: Content Patcher will handle all the details like that, you just need to return the token values when asked.
  • the advanced token API: you'll need to cache values until the next context update if they may change (see caveats and concepts in the docs).
cyan venture
#

ahhhhhhhh, i should just let this dialogue disappear

hot gale
#

It seems that running a flavored item through a custom smoker strips the flavor? Anyone familiar with something like this?

cyan venture
#

@fathom rapids @gentle rose @tiny zealot @vernal crest i did it omg

#

uhm but the portrait is gone

#

but it's ok

#

i think we dont need that

hot gale
#

I dont know why I have so much trouble understanding the logic of how preserves work

topaz jay
#

Does anyone know of a mod that allows you to change the position of the stamina bar, toolbar, etc, but for mobile? (Android)

calm nebula
topaz jay
tribal ore
#

Is @tiny zealot still around?

tiny zealot
#

yeah what's up?

tidal stone
#

How complicated is the code to randomly color flower heads

#

would you cakll it easyish to deal with with a first time delving into code?

tribal ore
#

Not seeing text on a combined secret note

#

Just the image

#
            "Contents": "{{i18n:SecretNote_Joja.contents}}",
            "Title": "{{i18n:SecretNote_Joja.title}}",
             "Conditions": "PLAYER_HEARTS Current Demetrius 2",
             "NoteImageTexture": "Mods/{{ModId}}/SecretNotesImages",
             "NoteImageTextureIndex": 2
           },```
#

"SecretNote_Joja.contents": "^On the back is scrawled \"HELL NO\".",

cyan venture
#

anyway to test multiplayer function without multiplayer? guys

marble verge
#

Where can I find the default colors for the various categories?

fathom hound
marble verge
rancid musk
#

It doesn't have the sort of DRM or whatever that'd stop that.

rancid musk
marble verge
brittle pasture
rancid musk
#

Yeah, it is C#. The colors are hard-coded and not listed on a wiki anywhere to my knowledge.

rancid musk
#

I suppose I could add the colors to the categories section of the items page

hot gale
#

Hmm seems that is just coming out as Cider

fathom hound
brittle pasture
#

how many flavors does your cider have

hot gale
#

Just one

#

And that process works as it should I believe

#

I get FLAVOR Cider

#

Sorry I have pestered you so much with this, idk why I can't grasp it

brittle pasture
#

aahhh I see

#

ok you wanna use INPUT_EXTRA_ID_1 instead, since this is the flavor of the primary input itself

brittle pasture
hot gale
#

"selph.ExtraMachineConfig.ExtraPreserveId.1": "INPUT_EXTRA_ID_1", in ModData?

brittle pasture
#

yes

hot gale
#

Rock on

#

Working :D

fathom hound
#

This one?

hot gale
brittle pasture
#

for the clothes recycler

fathom hound
#

Oh I’ve been wanting to release textile shredder finally SDVpufferwow

lucid iron
#

MakeWeedses

fathom hound
#

So how would I be able to code it in now???

brittle pasture
#

just as usual, it's a passive change

hot gale
#

Selph would it be possible to preserve 3 separate flavor IDs in my smoking process? Asking if it's worth adding support for smoking my 'final' meads

brittle pasture
#

something like category_clothing for context tags for example (I think that's the right context tag?)

fathom hound
#

Okay cause I have like hundreds of clothes already set up to yield the output

brittle pasture
hot gale
#

Cool, thanks again!

tiny zealot
formal crown
#

SDVpufferlurk I'm back with another bizarre bug which I don't know how to deal with

brittle pasture
hot gale
#

Whoa that looks awesome

hard fern
#

I didnt know you could

#

Water

#

Is that meant to be an aquaponics system?

#

Hydroponic

#

Idk whag the word is it's all water

hot gale
#

hydroponic is the term I believe lol

brittle pasture
#

aquaponics = hydroponics + fish

#

so you're both correct lol

hot gale
#

Oooo you're incorporating fish?

brittle pasture
formal crown
#

Today, subject bug is mentioning conflicts with PIF, a certain pack for it named Enchanted Garden and Vast Domain talent. When Vast Domain is enabled, erases all fish data for the Enchanted Garden and leaves only trash, okay, but why?

hard fern
#

Nice to know that Water has Fish

hot gale
#

All fish have water but not all water has fish

#

think about that

hard fern
#

I forgot what a fish was and was about to ask "what about ostriches"

#

(this happens a shocking amount)

hot gale
#

ostfishes

brittle pasture
#

what does Vast Domain do can you remind me (on phone waiting for food rn)

formal crown
#

Make catching legendaries easier

#

Only by editing Data/Locations

#

The content pack doesn't make any changes there, and I don't know where PIF source is so I don't know how PIF works as well

brittle pasture
#

and delixx is around as well, you can ping them

tiny zealot
hot gale
#

Woot :D

#

Forgot to copy color, but working as well, thanks Selph :D

brittle pasture
#

smoked and aged, dang
need salt curing next

hot gale
#

I might add filtering lol

#

Use wool/camel wool to make cheesecloth to filter your mead/cider, get byproducts and further extend price

fathom hound
# hot gale

This is the largest tooltip I’ve ever seen SDVpufferkekw

hot gale
#

rofl

fathom hound
#

Yay Selph. Thanks for making extra machine config

#

I’m really excited to get textile shredder into action

hot gale
#

Wonder if there is a way to insert the preserve flavors into my description instead SDVpufferthink

brittle pasture
#

not yet, description is hardcoded and I havent gotten around to untangle it yet

#

the only item in game with dynamic description is smoked fish

fathom hound
#

HOLY CRAP LMAO

hot gale
#

the everything bagel

#

lmfao

#

Everything Everywhere All At Once reference?

formal crown
fathom hound
#

omfg if someone had my mod installed and had my poppyseed bagel next to this bagel id freaking laugh so hard

brittle pasture
fathom hound
#

WITH NO BUFFS? /j

formal crown
#

Imagine trying to craft this with modded items

tidal stone
#

the flavour on that thing must be insane

undone hawk
#

Show of hands for those who set up unit tests for their mods

fathom hound
#

throws bagel in luau

#

everyone hates it SDVpufferkekw

tidal stone
#

god

hot gale
#

sounds like an unenjoyable level of crunchy

fathom hound
#

errrmmm what does as usual mean ._.'

brittle pasture
#

just make your machine rules with the clothing as input

fathom hound
brittle pasture
#

yep

fathom hound
#

OMG ur amazing tysm

#

oh i need i18n lol

tiny zealot
tidal stone
#

pick a plant, any plant

hot gale
#

Rosemary

tidal stone
#

07

ocean sailBOT
#

Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on macOS Unix 15.3.1, with 9 C# mods and 2 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

formal crown
#

SDVpufferlurk Saffron

hot gale
#

lol copying the color and then smoking it makes them all yellow

#

dat nicotine tint

tidal stone
#

ill do rosemary and saffron next then

fathom hound
#

yay okay so my machine works but it's not using these frames to animate processing...

teal bridge
brittle pasture
#

machines are funky where if the load effects don't fire so won't the working effects

fathom hound
#

up here?

#

what do i add to it?

brittle pasture
#

whoops, load effects as in LoadEffects in the machine data

#

right above WorkingEffects

fathom hound
#

oh i must have forgot to add LoadEffects

hot gale
#

This is my working animated big machine

#

If you need a reference

fathom hound
#

ty! SDVpufferheart

hot gale
#

IIRC I couldnt get my animation to play with a load effect as well as a working effect

fathom hound
#

i put this and it couldnt work

hot gale
#

You only want it to animate when working

fathom hound
#

yeah!

unreal spoke
hot gale
#

LoadEffects triggers only when you first place an item in it

#

So ideally you'd want it to just play a sound, maybe shake

#

What I did was just add a bubble sound in WorkingEffects so it does it every so often

#

and it doesnt shake like other machines cause it stats animation immediately

#

So I didnt even end up using LoadEffects

fathom hound
#

ohhh can i add a sound from other machine sounds in game????

brittle pasture
#

think you also need WorkingEffectChance

hot gale
fathom hound
brittle pasture
#

Yep

hot gale
#

I did for my projectiles in my weapon pack

fathom hound
#

true i added a custom sound before

#

i like the wood chipper noise tbh tho

rancid musk
fathom hound
#

where would i be able to find game sounds?

hot gale
#

You'd use the ID on the left

#

That is just a info dump though, if you want to hear them I imagine you have to extract the assets

fathom hound
#

thanks.. i dont think i can find it

hot gale
#
"Sounds": [
          {
            "Id": "woodchipper",
            "Delay": 0
          }
        ],
#

is the default

#

Think I shot myself in the foot for naming conventions on my aged mead

brittle pasture
fathom hound
hot gale
#

I 'randomized' the outputs for the process to where You get PRESERVE_1, PRESERVE_2, PRESERVE_3 in a random order so it feels more authentic

#

This means now when I age them, it seems I cant properly translate that with one recipe

tiny zealot
hot gale
#

Naming convention can only come out one way, as far as I can tell

#

I tried using %DISPAY_NAME and {0} neither worked how I wanted

tribal ore
hot gale
#

Might have to just truncate the outputs for the aged mead to always come out a single way

brittle pasture
hot gale
#

How would that work with the inputs all being the same item but with just a different naming convention

brittle pasture
#

assign fuel flavor 1 to slot 2, or 3

#

instead of slot 1

hot gale
#

Gotcha

fathom hound
#

i put this and still no animation or sound SDVpufferchickcry

#

its wobbling still too

tribal ore
#

@tiny zealot I've got the latest Secret Notes Framework, I believe. Happy to do/test whatever helps

hot gale
#

Try lowering the interval?

tiny zealot
hot gale
fathom hound
hot gale
#

Thats odd

tiny zealot
#

the only other harmony mods you have are portraiture and custom tokens, but i can't imagine either of them patching the letterviewermenu

tribal ore
fathom hound
unreal spoke
#

If it helps, I could share my machine code, too.

fathom hound
#

if it is animated then yes please! SDVpufferheart

unreal spoke
#

Yup, just give me a sec!

fathom hound
#

tysm!

tiny zealot
tribal ore
#

.tar or .zip?

tiny zealot
#

zip is easiest

hot gale
#

My only guess is the lack of information in your machine data? I copied an existing machine and only changed what I needed whereas you are only including what you need.. not sure if that matters but just a thought

#

What is there looks like it should work

brittle pasture
hot gale
#

Ahhhh

#

I didnt look at the sheet

unreal spoke
fathom hound
#

so it would be 1,2,3?

hot gale
#

0 ideally is the static frame, iirc

unreal spoke
#

0 is the leftmost and non-working one in your spritesheet, yup.

hot gale
#

So you would place 0, then play 1,2,3

#

If you had 4 frames

#

So you would place 0 and play 1,2

#

It will then cycle frames 1-2 until its done

#

If you intended on them all to be animated, you have to add a static one to the leftmost index

#

So it would be STATIC/Your First/Second/Third

fathom hound
#

oooooooooooooohh

#

thx all!

#

okay crap its still not working =-=

unreal spoke
#

No guarantee that's the way it's supposed to be done, but it's the only way I could get it to work back then. Let me know if you need more info!

fathom hound
#

my machine works just not the sound/animation part SDVpufferwaaah

#

dont think i could change anything ;-;

unreal spoke
#

Do me a favor and try to add load effects using the same animation data as the working effects.

fathom hound
#

ok!

unreal spoke
#

(Again, no guarantee and no logical reason that'd work, but it's what worked for me for whatever reason, lol.)

latent mauve
#

We did notice a slight issue with not being able to have both working and loading effects from someone else, I think?

unreal spoke
#

Dammit.

hot gale
#

My machine doesnt have LoadEffects assigned at all

latent mauve
#

I'd recommend pulling apart my LaundryMachines code for an example but that's also using Furniture Machines rather than a BigCraftable, so behavior might be slightly different

tribal ore
#

Guys, is there like... a list of swear words that would fall under "Adult Content" on Nexus? Obviously f-bombs would go in that category, but what about stuff like "crap" and "damn"? Those are extremely mild to my ears, but maybe I need to make a profanity toggle for my mod to filter them out?

hot gale
#

I would assume anything that cant be said on broadcast TV or radio

fathom hound
#

ill look for anything, ill find it rn

unreal spoke
hot gale
#

I'd agree there

tribal ore
#

Nexus asks about swearing, and I'm just a little paranoid xD

hot gale
lucid iron
#

I think you are fine

hot gale
#

I copied a stock machine and only edited what I wanted changed, and after discovering LoadEffects was preventing my WorkingEffects I removed that as well

tribal ore
unreal spoke
#

You're making me question whether my animation actually still works after all...

hot gale
#

Im testing with mine rn so I know it works haha

unreal spoke
#

Same. 😆

#

Okay, yes – it works. The hell, Stardew?

unreal spoke
fathom hound
#

sigh should i just give up LOL

#

;-;

unreal spoke
#

I don't think you should. For what it's worth, I also don't think it's a problem on your end but the game being extremely weird.

fathom hound
#

oh!!!

#

i hope so SDVpufferwaaah feeling dumb lol

unreal spoke
#

I'm sorry, but I fear I'm at my wit's end. That copying into load effects was the only workaround that worked for me.

fathom hound
#

sending in case i missed anything

#

i might just upload it anyway just cause ive been waiting so long to anyway SDVpetcatsad

#

GUYS LMFAO

#

I THINK IK WHY IT AINT WORKING FML

#

wrong folder location SDVpufferkekw i accidentally edited the copied code SDVpufferchickskeleton

unreal spoke
#

I can't decide whether I should "SDVpufferwaaah" or "SDVpufferparty", lol.

fathom hound
#

literally both HAHA

#

praying it works now omfg

reef kiln
fathom hound
#

OMG CRAP IT DIDNT WORK

#

yoba is playing me rn

#

call it beta and call it a day SDVpufferwaaah SDVpufferpensive

reef kiln
# tribal ore *whew* xD

I personally (as a parent) think defense division should have the adult tag, but I doesn't. And I don't want to add the tag to someone else mod as I don't like confrontations.

hot gale
ornate locust
#

I mean, nobody gonna confront you over tagging their mod, as most people don't even notice it

#

Don't even think there's a way to see who did it

#

As long as you're not using the tagging system to troll, tag away

reef kiln
#

Adding the adult tag though would hide the mod unless logged into nexus. I don't want to upset people, over a few swears and a penis joke.

hot gale
#

The machine code is wonky as hell

ornate locust
#

Well, but not adding it means people get surprised by content they may not want?

hot gale
#

I tried following the wiki, and following someone else's animated machine, neither worked out lol

ornate locust
#

tags really don't work unless people use them as intended (which is particularly annoying re: the translation tag)

#

And one person can't add it, it's like a voting thing, it has to be several

#

so basically you are gently suggesting the tag be added

fathom hound
ornate locust
#

Oh, and the modder has veto power, they can just flat remove it if they like. Honestly I'd love if people used the system as intended on my mods, I'm not fabulous at tagging. But I've only had people try to use it to troll.

hot gale
#

I would take out Load effects, and change the animation to frames 1,2 if the file still only has 3 images

reef kiln
fathom hound
#

i tried without the load effects, still not working for mee

hot gale
#

Correct. 0 is static

#

That might be your biggest problem honestly

unreal spoke
#

Is 0 static? In the end, it's just a regular sprite like any other. I use a repeating [0,1,2,3] for my animation without a problem.

hot gale
#

I was under the assumption that was the case perhaps not like I said this machine code is seriously wonky

reef kiln
#

The machine actually works right? It is just the animation that is not correct?

fathom hound
#

yes

#

i literally dont know, i give up

unreal spoke
fathom hound
#

i copied pasted code for code on dora's mod and it still didnt work

candid stratus
#

Is there a size limit to style sheets?

#

that sounds like a very unhealthy question lol

rigid musk
#

😨 how many tiles are you making

candid stratus
#

Well my tiles have artifacts when I put like 20x20 together cause of recurring patterns, so I wanna make a unique 20x20 pattern for every tile I'll be using a lot

#

But I dont wanna have like 20 stylesheets

rigid musk
#

shock I don't... think that will be noticeable in game ? 20 tiles is a large area when you're actually walking around

candid stratus
#

I suppose I can make it smaller

rigid musk
#

But for the most part you can have pretty big tilesheets - think the furniture sheet itself

candid stratus
#

But you get this kinda stuff and it's driving me insane

ornate trellis
#

tilesheet max is 4096x4096

rigid musk
#

I mean having a few variations for each tile isn't bad

candid stratus
#

Though I suppose I could overlap a partial transparent texture that's slightly enlarged

ornate trellis
#

if you mean on how big a single sheet can be

candid stratus
#

The thing is I'm very bad at making tiles line up with eachother

candid stratus
#

But so making a bunch of variations is just gonna ruin me

rigid musk
#

256 tiles

ornate locust
#

You can also rotate tiles for variation

candid stratus
#

I'm an engineer, not an artist

#

If I rotate them, they dont line up anymore

reef kiln
rigid musk
#

(256 tiles across not total)

ornate trellis
#

my biggest pain is getting the cliff tiles to line up well enough that they look ok

ornate locust
#

Mirroring them at least should line up well enough for that tileset

#

I'd think

candid stratus
#

hmm I'll try

hot gale
ornate locust
#

Like just a few different tiles can really break things up

uncut viper
#

tbh i think with that tileset mirroring might even be a little more obvious and stand out to me, but hard to gague without seeing it first ofc

hot gale
#

Been meaning to ask, Tiled has a mirror option when you place tiles - does that translate in-game?

ornate locust
#

Sometimes

#

For tiles, yes

#

But if it has anything like sitting data, no

#

so don't mirror couches

hot gale
#

Gotcha, good to know

ornate locust
#

A mirrored couch'll look fine until you sit on it, then it'll be messed up

hot gale
#

So only mirror inaccessible couches got it 😂

rigid musk
#

You know.. mirrored tiles might be why I can't figure out some cliff stuff pondering I just kinda forgot you can mirror things..

ornate locust
#

Or use my mod that mirrors couches :V

#

it still amuses me that it's impossible to make a couch face most TVs in vanilla

rigid musk
#

Wait what do you mean

ornate locust
#

The TV faces us

#

The couch does too

#

There's a side couch but that also doesn't directly face

rigid musk
#

Do you mean for the tiles? Cause you can just.. rotate the couch

#

For furniture

ornate locust
#

I'm talking tilesets

#

For setting up an NPC's house

rigid musk
#

Okay okay I was like wait a second

ornate locust
#

Yeah no, not furniture, tileset

#

Only PC can face the TV with couch

rigid musk
#

You're right that is weird

hot gale
#

I actually did use your tile set when I was making my saloon

rigid musk
#

I'll likely be using it when I get to making Honey's house vibincat

ornate locust
#

Glad it's useful! I was really having a time of it making a living room

fathom hound
#

they're 2 different things which is confusing me bc techinically, this isnt a craftable

#

u just buy the m achine

rigid musk
#

The machine would still count as a big Craftable though right? Even if you can't craft it directly

#

Like woodchippers

fathom hound
#
            "LogName": "Textile Shredder Load",
            "Target": "Mods/{{ModId}}/TextileShredder",
            "Action": "Load",
            "FromFile": "textileshredder.png"
        },
        {
            "LogName": "Textile Shredder Machine Data",
            "Action": "EditData",
            "Target": "Data/BigCraftables",
            "Entries": {
                "{{ModId}}_TextileShredder": {
                    "Name": "{{ModId}}_TextileShredder",
                    "DisplayName": "{{i18n: textileshredder.name}}",
                    "Description": "{{i18n: textileshredder.desc}}",
                    "Price": 0,
                    "Fragility": 0,
                    "IsLamp": false,
                    "Texture": "Mods\\{{ModId}}\\TextileShredder"
                }
            }
        },
        {
            "LogName": "Animation/Sound",
            "Action": "EditData",
            "Target": "Data/Machines",
            "Entries": {
                "{{ModId}}_TextileShredder": {
                    "WorkingEffects": [
                        {
                            "Sounds": [
                                {
                                    "Id": "woodchipper",
                                    "Delay": 0
                                }
                            ],
                            "Frames": [
                                0,
                                1,
                                2
                            ],
                            "Interval": 250
                        }
                    ],
                    "WorkingEffectChance": 1
                }
            }
        }```
#

where would i merge it?

fathom hound
uncut viper
#

my wha

fathom hound
#

the little library one from like a month ago

uncut viper
#

thats not mine!

fathom hound
#

oops i might be confusing with someone else

uncut viper
#

ive never touched a machine mod in my life. machines are scary

fathom hound
#

oh yes it was @brittle ledge

#

i wanna upload it anyway ill just call it a beta until i have more patience to fix it, i need to focus on irl stuff

reef kiln
#

put this.

silver sand
#

I thought that was scratch

fathom hound
#

this is my first machine mod so ihave no idea how to

fathom hound
#

ill try it

reef kiln
#

sorry not sure how else to explain it. not sure it will work but it would make only one
{
"LogName": "General Rule Setup",
"Action": "EditData",
"Target": "Data/Machines",
"Entries": {
"(BC){{ModId}}_TextileShredder": {
Enrty instead of 2 of them. not that I think it should matter. but maybe it does.

#

I am just wondering if the 2nd "(BC){{ModId}}_TextileShredder": { is overridding the first even though they have different data

fathom hound
#

thats a rly good guess!!! ill try

#

ok fingies crossed

#

it doesnt work at all now SDVpufferchickskeleton

brittle pasture
fathom hound
#

thank you selph

brittle pasture
#

Data/Machines key must be the full qualified id

#

add (BC) to the beginning of the key

fathom hound
#

thank you im gonna try again now, guess i accidentally removed it when i copied pasted SDVpufferheart

#
To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path ''..```
brittle pasture
#

your OutputRules block is accidentally outside of the main "(BC){{ModId}}_TextileShredder" block

#

it's currently a top level block in Data/Machines

tidal stone
#

is ti possible to let a plant be harvestable halfway through its growth process and make it poisonous if harvested after the first stage?

#

like can i attach different harvest to different stages?

#

I ask because im tryin gto make a plant called Poke Weed that is very poisonous wants it reaches full maturity and grows berries

#

but if you pick it when its young it is able to be cooked three times making it edible

brittle pasture
#

that would need C#

fathom hound
#

IT WORKS

tidal stone
#

Ah, 😔

#

can you mix C# with content patcher in asingle mod?

#

im not adverse to trying to learn code if its not overly complicated for my first try

fathom hound
#

OMG TYSM @reef kiln @brittle pasture SDVpufferheart

brittle pasture
#

you cannot, but what you can do is have a folder that contains a C# mod and a content patcher mod

tidal stone
#

Ah, am i allowed to upload it as one entry on nexus or would i need to make that a dependant seperate mod

unreal spoke
#

SDVpufferlurk So, what was the problem?

brittle pasture
#

(also modifying crop harvest behavior would be quite complicated. I do not mean to discourage you however, if you want to dive into C# feel free to go ahead!)

reef kiln
tidal stone
#

Ah is it

#

then ill probably wait for my first try to be something else XD

#

in the meantime do you think it would be ok to make it where you just harvest the crop at the appropriate time and it grows no further?

fathom hound
tidal stone
#

I might write a description for it like 'ordinarily if picked at its full grown state this weed is quite poisonous...thankfully this variety unique to the valley stays small and doesnt seem to produce the berries that cause the plant to be completely inedible' for the seed bag

#

or would that be too immersive takey outy

unreal spoke
fathom hound
#

thanks to you lovely people! aSDVemoteheart

hot gale
#

Congrats

fathom hound
#

thank you! and thank u guys for ur help! SDVpufferheart

hot gale
#

Its so satisfying to see it finally animate lol

#

I was in the same boat

#

My carbonator my girlfriend drew :D

tidal stone
#

what are the easiest C# mods to make i want to do one eventually just to start learning

brittle pasture
#

including a sample mod that just prints something to the console when a button is pressed, which is probably the easiest category (do stuff in response to events)

tidal stone
#

ooh

#

ty ty

#

ill probably work oin that after i finish my herbs and flowers mod :3

shut edge
#

i have once again forgotten how to do comment blocks in a CP mod json

#

anyone recall?

hot gale
#

When calling for a machine to be included in a recipe do I use the entry with our without (BC)

#

With, I assume?

brittle pasture
#

as an ingredient? with
otherwise it would use the Object (ie. (O)) with that item ID

true coyote
#

I'm guessing it would need C# but... companion planting mod? 👀 plants that are beneficial to each other and planted within 1-2 tiles of each other give a yield boost? (I'd say quality and speed growth too but, fertilizers) and then there are ones that shouldnt be planted together and have negative effects? (slow growth x%)

brittle pasture
#

also SpaceCore's features where you can define extra harvests depending on nearby crops

true coyote
#

at the very least it wouldnt need them to be(come) hybrids, just a benefits thing and a little more sleuthing for puzzling out planting, instead of the ol slap a bunch of this in the ground. I'll look at spacecore, but its probably out of my reach knowledge and time wise

brittle pasture
#

it just involves editing SpaceCore's custom assets really

#

the same way you would edit Data/Crops

true coyote
#

SDVpuffershocked interesting

unreal spoke
shut edge
#

thank you

brittle pasture
#

most likely not. if you want to yeet it bazaar-style be my guest
my only goal is to have an NPC [speening in the wooden chamber](#making-mods-general message)

lucid iron
#

RotateLeah

#

I don't really have ideas here tho it is kind of nice to have big preview

#

Perhaps just a smol side grid to pick would be enough?

uncut viper
#

i have a buncha ideas for it but no time to do it does that count

shut edge
#

one fo my submods is still doing the false updates thing...anyone familiar with that process and could take a look at mine?

#

"UpdateKeys": [ "Nexus:24869@fruitghostsAHM" ],

brittle pasture
#

(heck if you're making that mod I might contribute my code. the core functionality is just a postfix to teleport the NPC, one to have them play the animation, and a prefix to have them say the dialogue instead of Robin)
(though I do need to transpile CarpenterMenu for the extra functionality of "Sheds that people other than Robin can build", but that'd likely be handled by your hypothetical menu replacement)

shut edge
#

i've got @fruitghostsAHM in the desc for the optional file

lucid iron
#

Don't hold ur breath on me making anything rn Dokkan

shut edge
#

is there something else i need to be doing?

uncut viper
#

(i also have way too much on my plate to think about actually making it right now)

brittle pasture
shut edge
#

it is

lucid iron
#

I need to yeet shop menu first

shut edge
#

optional is just 1, main mod is 4.0.1

brittle pasture
#

yeah just found your mod page, hmm

shut edge
#

seems like i solved this for another mod by just....not having an update key in the submod lol

faint ingot
#

question about the movie theater - if I go joja route, then teleporting to the movie theater shows the joja version, but in an event "changeToTemporaryMap MovieTheater" always uses the regular version. Is there a way to use the joja version in changeToTemporaryMap?

latent mauve
#

(I would suggest actually setting your update key in each manifest to not be ??? Like SVE though and actually use the same update key for each component's manifest and increment the version number of each part to match when you make updates)

#

SVE's ??? Update key warning in logs drives me mad

gaunt orbit
#

or just omit the update key field entirely

latent mauve
#

That runs the risk of them not knowing they need to update though

gaunt orbit
#

it'll show up as not having an update key, but SMAPI won't yell at you, and it prevents stradrop from trying to reinstall the mod multiple times when updating

reef kiln
gaunt orbit
latent mauve
#

Ok, so you are proposing only excluding the update key from the extra components. That clarification is important.

gaunt orbit
#

ah yeah sorry

faint ingot
lucid iron
#

You can put nexus:???

gaunt orbit
lucid iron
#

This hids the message from user

gaunt orbit
#

same location does not mean same map

latent mauve
faint ingot
#

OK, how can I get the map name of the Joja theater?

gaunt orbit
#

I think it's just the mapname netfield

latent mauve
#

It just pulls the different tilesheet

gaunt orbit
#

sorry mapPath

latent mauve
#

The tbin is still the same IIRC

gaunt orbit
#

ahhh that's trickier then

latent mauve
#

MovieTheatreJoja_Tilesheet is the tilesheet PNG

gaunt orbit
#

yeah but there's no way to swap tilesheets for events

#

and events make fake location instead of using the real one (except the town, for some reason) so you can't ruse the game's display logic for maps in events

latent mauve
#

Couldn't you change the load for the tilesheet conditionally when in the event?

gaunt orbit
#

(which is why the beach bridge is always broken during the luau)

#

maybe? I'm not sure how you'd do the conditions for that

#

you could do a location update patch and include a local copy of the tilesheet, but I'm not sure how you'd determine if the player was in the event or not (without c#)

uncut viper
#

mail flag at the start before you change maps, remove it after the event ends? is that possible

gaunt orbit
#

might work? worth a try

uncut viper
#

when in doubt, mail flag it out

hot gale
#

Scope creep is so real. I just wanted something to do with SVE's Jar of Honey now I have a shop, 2 NPCs, 3 machines, a bunch of custom objects, trash can data, and Im gonna now look into my NPCs sending letters to kick off progression

faint ingot
#

I think it's not a huge deal if I just leave it as the non-joja version considering it's a complex change. Thank you all for the ideas though.

gaunt orbit
latent mauve
#

(also worth noting, the bridge is not actually broken in Luau year 2, but alternating festival maps are irrelevant to this situation since those have separate tbins for y1 and y2 and the theatre does not)

hot gale
#

not to mention 3 other mods Ive made in the meantime rofl

shut edge
#

the creep chases us all

gaunt orbit
#

scope creep has killed so many of my mods

shut edge
#

every time i do an update i add like 5 more lines of notes

latent mauve
#

I'm gonna have to mailflag a thing for the Flower Dance event anyway to figure out how to conditionally swap a NPC gender for the dance positioning

#

So I'll have to work that out eventually

shut edge
#

i compartmentalize my stuff best i can

hot gale
#

With the fuel input combinations and iterations that can be made, im potentially adding thousands of items to the game

gaunt orbit
#

the flower dance is Evil Magic

shut edge
#

i'd prefer to have an "unfinished" mod released than work on it forever i suppose

gaunt orbit
#

almost as bad as weddings

latent mauve
#

Ghirahim is the Flower Queen, and I will not have him facing the wrong way.

#

I went through all that effort to give him the girl's poses. LOL

shut edge
#

maybe it's just a display thing but it's not like, redlining the whole block i commented

hot gale
#

Did you end your /*

shut edge
#

yeah

hot gale
#

I dunno then lel

shut edge
reef kiln
gaunt orbit
#

part of me wants to make a mod that turns weddings into a festival but the rest of me doesn't want to tangle with the end-of-day logic

gaunt orbit
brittle pasture
shut edge
#

ah

#

that could be it

silver sand
#

Still cackling that babies are technically pets

latent mauve
hot gale
#

I mean thats not entirely wrong

shut edge
#

make an opposite mod that makes weddings LESS of an event. you just sign some forms at lewis' house

gaunt orbit
#

that's kind of cool actually, and I don't think it would be hard

latent mauve
#

But everytime I've danced with Haley as a girl, Haley's still been up top

lucid iron
#

Well she is

reef kiln
latent mauve
#

And since Haley is who Ghirahim replaces....

#

I'm making a replacer, not custom NPCs, Frog.

#

(it makes the most sense for my use-case this way)

uncut viper
#

also there's no difference from the games perspective between vanilla NPCs and custom NPCs so they can both dance equally*

*except for that one potential weird bug thing that might imply an unintentional difference somewhere

shut edge
#

yaml has only confused me more, lol. i'll just presume it's working for the moment

#

i'll test it

reef kiln
#

I wonder if Haley is special? Or I am remembering wrong. Maybe the player is the one that moves and the partner is factor.

latent mauve
#

From what I recall of the event code, NPC girls are always up top and NPC boys are always on the bottom, so the NPCs don't actually move when asked, the farmer does.

#

(which makes sense, considering that the NPC sprite sheets only have one facing available)

reef kiln
#

True the sprite sheets would not lie.

shut edge
#

ape applying KISS (keep it simple, stupid)

latent mauve
#

hm

#

Honestly, I wonder if it might be easier to just replace Ghirahim with a clone that has the opposite gender during the FlowerDance event.

shut edge
#

ok yeah looks like comment block works, cool

lucid iron
#

I appreciate the effort towards fitting the mammoth within icon size

uncut viper
shut edge
#

lol, thanks

hot gale
#

What mod is that?

#

Seems dope

latent mauve
shut edge
#

the menu is livestock bazaar

uncut viper
#

also i don't think you need mail flags anyway, you can conditionally change the gender based on the current festival and the players current map

latent mauve
#

So back to trying to change it during the festival and location

uncut viper
#

those are CP tokens

shut edge
#

if you meant the menu. most of those animals are my mods

hot gale
#

Oh

#

Oh my, this is mint

latent mauve
#

Honestly, my biggest gripe is that it also changes the boyfriend/girlfriend signifier

hot gale
#

I meant both really

uncut viper
#

hm

latent mauve
#

But that's probably unavoidable unless you can specifically set the change to happen during the dance event only

uncut viper
#

what happens if you make them temporarily undefined

shut edge
#

the other ones in that screenshot are uhhh resource frogs? or something like that and ice cream cows

latent mauve
#

undefined defaults to female, doesn't it?

#

I recall that being a thing

uncut viper
#

i don't remember

latent mauve
#

Actually, I can probably tweak their acceptance dialogue to change it right then and there... Hm...

hot gale
#

Now do I focus on mail, and issuing players mail to lead then through progression or focus on utilizing my meads and ciders in cooking recipes to make specialty dishes and/or split the meads into single-serve beverages (Bottle->mug)

latent mauve
#

But that only resolves if they are actually asked to dance.

uncut viper
#

how would the dialogue change their gender

shut edge
#

"while we are dancing, i'm your woman"

uncut viper
#

does it even matter then if they aren't asked to dance tho

latent mauve
#

Trigger Actions

shut edge
#

lore around it lol

uncut viper
#

what would the trigger action do

latent mauve
#

Probably a mailflag, which just gets us back around to the convoluted mailflag solution, which could probably just be done at the start of the event instead.

uncut viper
#

the problem there though is then the update rate, you'd need time changed

#

BETAS does have a PatchUpdate action though that comes with a dependency ofc, and for something like this I wouldn't recommend it as it's not wholly required to make it work.

latent mauve
#

yeah

#

I think I'm just gonna have to cope with the tag being changed during the whole event

uncut viper
#

do people usually look in the social menu when at the flower dance anyway, maybe no one will notice

latent mauve
#

I mean, that happens with every other mod that does gender swaps

shut edge
#

i rarely ever even go...

uncut viper
#

i don't look there, I usually know ahead of time if I have the hearts required

latent mauve
#

Most people I know do actually check because they forgot how many hearts they have

#

_>

#

But, if nobody else has figured out a solution there might not be one. LOL

uncut viper
#

if I forgor then I just ask em anyway and find out from their answer SDVpuffersquee

#

there's solutions ofc, just not CP ones as far as I can tell

#

it'd be dead easy in C#

shut edge
#

solution: "you might see some weird stuff in menus during dance, ignore plz"

latent mauve
#

yeah

shut edge
#

sometimes you just gotta do that tbh

latent mauve
#

I don't know C# and there aren't enough things that I want this mod to do to make it worth me learning

reef kiln
gaunt orbit
#

evilwrite a transpilerrrrr I whisper in your ear

latent mauve
#

I meant the "showing up as girlfriend instead of boyfriend", Frog

#

Not that they're in the wrong spot.

lucid iron
#

Idk i think ghirahem would swap gender for a day just to fuck with you

dusk mulch
#

bump

reef kiln
#

There are a lot of gender swap mods. One of them must have the solution. If not then it must not be possible.

shut edge
#

look the only option now is to just write a whole new game

uncut viper
#

this wouldn't even require a transpiler i don't think depending on how clean or messy you were content with doing it

shut edge
#

clearly the sensible thing to do

latent mauve
#

Honestly, yes, it's totally like Ghirahim to be like "I wanted to be the Flower Queen and apparently you have to be female for that, so for today, I am female! Gender is an amorphous construct that I, as a sword, can change at will."

shut edge
#

hell yeah

latent mauve
#

Fi and Ghirahim are literally sword spirits, what is gender in that situation, really, other than the way they choose to manifest themselves.

#

Since Mipha's gonna be on the opposite end of that Flower Dance gender swap (Harvey), I can throw in a line about them trading places or something to not mess up the lineup. LOL

#

I'm amazed those are the only two that I had to do genderswap shenanigans with to make the replacements work, honestly.

reef kiln
#

Well if the farmer moves for the dance anyway, the line is not really sex specific anyway.

latent mauve
#

Would this be about right for the patch condition?"When": { "DayEvent":"flower dance", "LocationName":"Temp"}, "Update":"OnLocationChange"

#

I can't actually find the Location entry for the Flower Festival, so I'm guessing it's Temp.

#

changeToTemporaryMap Forest-FlowerFestival and that line from the event setup seems to confirm that possibly

shut edge
#

updated a mod and nexus isn't updating the download page smdh

#

aha, complaining fixed it, as i hoped

latent mauve
#

Unless it's still just Forest, in which case I'll have to add the time range too, which is annoying.

#

(the event precondition is Forest/900 1400, so I'll just convert that into the When block if I must)

shut edge
#

damn i was hoping an update would make this work properly but no, now it's just more confusing

uncut viper
#

that command does actually change the literal GameLocation you're in so it should be Temp

latent mauve
#

awesome

last plume
#

Howdy! I know it’s been ages since I talked here. I decided to take an extended break from stardew valley and modding as a whole as I was experiencing burnout.

But I’m feeling much better and I am ready to make my comeback.

Hope all is well.

swift falcon
#

glad to hear you're feeling better!

last plume
#

Yea. I just had to take a step back as I was experiencing burnout and I am feeling ready to return

lucid iron
#

@fathom rapids re: your bug report to trinket tinker on nexus, if you dont mind can i have your save file?

fathom rapids
shut edge
#

is this floorID thing like, doing anything?

shadow pagoda
ocean sailBOT
#

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

dusk mulch
#

If I don't want to make a new EditData, can I just close this and make a new entry?

uncut viper
latent mauve
# shut edge https://i.imgur.com/ykoV2Ti.png

In theory, it'd be making it so you can change the flooring on that tile (as well as all the other ones with the "Middle" ID), as long as your overall Map Property has that as a valid FloorID listed and your location is Decoratable

shut edge
#

ahh

#

so if i don't want it decoratable, just remove it?

latent mauve
#

If your location's not decoratable, then it shouldn't do anything, yeah.

shut edge
#

cool

arctic oxide
#

If i were to start editing the ocean farm map and wanted to include freshwater fish on one side, would I need to edit the "Farm_Beach" section of the locations.json directly or could I add custom map properties? new to map editing so just curious lol

tender bloom
#

I would recommend the first approach

#

Notably, having different fish in different places is I believe best done through Locations.json

#

You can use the feature where you just copy the fish from another place into a specific sub area, or you can directly define the fish, iirc

dusk mulch
#

Is there a way to make location specific dialogue to be 1 time so you can't just infinitely chat with them?

hallow prism
#

not that i know of

#

you can try using queries, but you'll have some limitation either way

dusk mulch
#

Alright then, It is fine. Thank you!

lucid iron
#

is there a good way to make default dict in a custom asset

#

i basically want Field/TargetField to immediately work even if the key was never touched before

dusk mulch
#

Do I need to set a Fish field for my location data for there to be fish? Or will it just use a default selection of fish if there is one

brittle pasture
#

that's what I did for the animal extension dict, populate it with a list of all Data/FarmAnimals entries

lucid iron
#

i dont know all of them LilyDerp

#

it is monster data so the name is a suggestion

brittle pasture
#

so you don't have an existing list? I don't think that's solved (see: blank events load)

lucid iron
#

that one is a whole asset tho hmm

brave fable
#

with C# you could add an asset listener to Data/Monsters to add an entry to your own asset for each one found

brittle pasture
#

that is what I suggested

lucid iron
#

which is not strongly coupled for ✨ reasons

brave fable
#

won't monster name match an entry in data/monsters

brittle pasture
#

this might need a change to CP tbh

lucid iron
brave fable
#

god i love monsters

lucid iron
#

nou

#

u two are right tho, having it fill in Data/Monsters is at least better than nothing

rancid musk
#

I'm glad I haven't touched monsters at all for anything.

teal bridge
#

I touched it only for a silly simple demo thing and it still nearly drove me insane.

brave fable
#

mod authors: why can't you just be normal
monsters: batScreech

cyan venture
#

i18n is something

#

my code is very clean for now thanks to i18n

shadow pagoda
#

Is there a way to know how many slots a bundle can accept for items? Like the spring crops one allows 4, but the quality crop one allows only 3

cyan venture
brave fable
modest pumice
#

Hi! I'm updating my old mod from JA to CP and I can't get the textures to load in. I can't figure out what I'm doing wrong. I see other mods just using "Texture": "Mods/{{ModId}}/Objects", but that isn't working for me. Do I need to put in the whole path to the file? I tried that and it didn't work either

brittle pasture
#

you must first load something to that Texture path

#

if you have a png named objects.png in your assets folder, you would do something like

{
    "Format": "2.5.0",
    "Changes": [
        {
            "Action": "Load",
            "Target": "Mods/{{ModId}}/Objects",
            "FromFile": "assets/objects.png"
        },
    ]
}
#

then you can use "Texture": "Mods/{{ModId}}/Objects" in your object data

modest pumice
#

thank you, I'll do that!

shadow pagoda
#

I should specify I am using C# to parse this data, and not planning on modifying it myself

brave fable
#

i should mention there already exists a method for parsing raw legacy bundle data to a readable data model

shadow pagoda
#

yes, I am using pathos' lookup mod as a guide

brave fable
#

though i don't have the codebase on hand atm

shadow pagoda
#

but I don't see anything related to that within their BundleModel record

brave fable
#

if you follow the breadcrumbs from DataLoader.Bundles you should find it

#

preferably use the vanilla code as a reference here

shadow pagoda
#

will do, thanks

rare orbit
#

it's allowed to put major updates in mod showcase right?

brave fable
#

try poking around Game1.netWorldState.Value.BundleData and look for references to the data model there

rancid musk
#

Yeah, major updates can go in mod showcase.

brave fable
#

for sure, anything you think people would be interested in can be showcased, following the rules of course

rancid musk
#

Just don't get too spammy about it.

brave fable
#

if you're also just checking for any inventory items that are required for any bundles, there's a base game method for checking that. it might be in GameMenu, there's the inventory bundle icon clickable that glows when hovering a bundle item. you could filter down all inventory items based on this, if that's all you need

rancid musk
#

(On a related note, GameMenu runs this code in its constructor.) ```cs
Game1.RequireLocation<CommunityCenter>("CommunityCenter").refreshBundlesIngredientsInfo();

rare orbit
cyan venture
#

hi, when i compiled my code it always contain other dll like this. Is it normal?

shadow pagoda
rancid musk
#

That means your project isn't configured correctly.

tribal ore
cunning kiln
#

Where can I find the internal ID for the I Voted Sticker? I checked Objects, Fish (since you fish it out of the water), and the Stardew Vanilla IDs website without success.

rancid musk
#

For each of your external mod references, you need to set Private to false

#

That will stop the DLLs from being included.

gentle rose
cyan venture
rancid musk
#

... yes. It's in your .csproj file but you can also do it using the Properties panel and the Solution explorer.

cunning kiln
#

Huh. Let me look at some mods. Thanks!

rancid musk
#

Whichever method you're more familiar with really.

#

(Doing it in Solution Explorer + Properties is just VS editing your csproj for you.)

reef kiln
gentle rose
lucid iron
cunning kiln
#

I don't have ES installed, but I do have SVE, which I'm guessing is the culprit.

cyan venture
#

i add CP and GMCM directly from add Project Ref

lucid iron
#

i think i voted is more fish?

cyan venture
#

haha

primal cypress
#

@uncut viper Hello, spider buttons. I need help with Arbitrary Tilesheet Access as my tilesheets are not pathing. I have it as content(unpacked) > Maps > Content > Mod sheets. here is my Log , thank you SDVpufferheart

ocean sailBOT
lucid iron
#

one of those think

brittle pasture
#

yep, more new fish

#

anyway as mentioned, lookup anything

tiny zealot
#

looking for knowledge anyone may have about weird and potentially platform-divergent behavior in SpriteText.getStringBrokenIntoSectionsOfHeight.
i'm investigating some text not appearing on macOS and this TODO i left myself seems relevant:

                // TODO find a better way than "+8" to get this value.
                // using exactly the getHeight value doesn't work; probably
                // exactly the size or oboe, so the split fails to get text
                int linecap = SpriteText.getHeightOfString("Ag") + 8;
                List<string> lines = SpriteText.getStringBrokenIntoSectionsOfHeight(
                        menu.mailMessage[0], menu.width - 64, linecap);```
cyan venture
#

i dont familiar with VS much

reef kiln
cunning kiln
#

Well, lookup anything doesn't give me a mod name, but I think that's true for more new fish. Thanks, everyone!

gentle rose
#

would that make the text not appear at all though? SDVpufferthinkblob

reef kiln
lucid iron
tiny zealot
rancid musk
brittle pasture
#

not every mod follows the ModId underscore style, but most of them should (hopefully) have their ID/author in there somewhere

#

in this case it has MNF in the ID

rancid musk
cyan venture
cunning kiln
#

Not sure about the etiquette for contacting a mod author about permission to use one of their assets. Is that something I would just post in comments on Nexus?

cyan venture
#

so they said i need to add ref from this

lucid iron
#

who said this

cyan venture
#

and i just see dll so i used it

#

well it just VS basic tutorial not from SDV

rancid musk
#

Which tutorial?

cyan venture
#

i didnt remember

#

haha

gentle rose
#

general question about hard referencing DLLs, does it fail if the user organises their mod folder differently, or does smapi load all the dlls in a consistent way instead

cyan venture
#

uhm no

uncut viper
lucid iron
#

theres a search path thingy i think

gentle rose
rancid musk
#

Generally you're required to put those mods in your dependencies so SMAPI should load them first anyways.

#

(Well, not required to put them there, but if you don't you're doing things incorrectly.)