#making-mods-general

1 messages · Page 263 of 1

fathom hound
#

silly question.. if i make a crop, i need to create its artisan good equivalents as well right?

brittle pasture
#

if you just want the default outputs (e.g. fruits -> jellies and wine, veggies -> pickles and juice) you dont have to do anything

fathom hound
#

nice, thanks!

rigid musk
fathom hound
#

thanks!

rigid musk
fathom hound
#

id want the color of it to look different than the crop

#

oof meant to off ping srry

rigid musk
#

I don't know if that works for the artisan goods but you can absolutely do that :D you can do what you want really

lucid iron
#

i dont think prismatic does anything

fathom hound
lucid iron
rigid musk
#

if your crop is yellow but you want the goods to be orange you can do that

#

also dont worry about the ping i like them :D

#

i have notifications off for everything so the only time i know i have to look at something is if people ping me xD

fathom hound
#

does anyone by chance have a palette of what the context colors would look like? not sure what a stardrop color would be aSDVstardrop

#

nvm stardrop tea is color_iridium

#

ill go for that

dusk mulch
#

i feel like i am so close to finishing the mod but then i remember the 20 other things i said i would work on

hot gale
#

Same af

fathom hound
#

tysm SDVpufferheart

haughty charm
#

You're welcome!

fathom hound
#

my tilesheet doesnt need to be bigger than this right? since im only making 2 crops?

haughty charm
#

Looks good to me SDVpuffersquee

hot gale
#

Yay my next update is finally done :D

fathom hound
#

grats!

dusk mulch
#

@silver sand Are you VulpesLucida on the SDV wiki?

hot gale
haughty charm
hot gale
#

lol

inland ermine
#

I'd appreciate if someone could tell me how the original game code detect if player has talked to a npc today, and prevent dialogues from showing up. I thought it's the hasPlayerTalkedToNPC or TalkedToToday flag, but they only seem to be relevant with granting friendship. I think everything is handled by checkAction() method in NPC class. But I don't see any code removing displayed dialogues.

uncut viper
#

dialogue popped out = that dialogue is gone

#

aint gonna show again

inland ermine
#

Yeah, but I think checkAction() will be performed again if player clicked on NPC again. And checkForCurrentNewDialogue() will retrieve same dialogues again.

uncut viper
#

checkForNewCurrentDialogue only adds specific dialogues in specific situations, like location dialogue or conversation topics

#

CTs get priority, and location dialogue is infinitely repeatable

#

otherwise, daily dialogue is added once on day start

haughty charm
#

The days in phase are the number of days for each phase of the crop. So let's say you want the crop to take 8 days to grow and then regrow in 3 days. Let's assume you have 7 crop stages. What you would do is something like:
"DaysInPhase": [ 2,1,2,1,2],

and
"RegrowDays": "3",

#

oh whoops - didn't see that the question had been deleted.

inland ermine
fathom hound
haughty charm
#

Glad to hear it!

uncut viper
#

nope! just an extra check for extra dialogue that might not exist when the day starts

fathom hound
#

but good to know i got it right ^^

uncut viper
#

like when an NPC moves into their next schedule location and they have dialogue there

inland ermine
#

I see. Thanks!

fathom hound
#

does "5" mean "harvest phase"?

brisk wedge
#

What data (like Game1.cropData, Game1.fruitTreeData) does the tea sapling belong to?

fathom hound
#

what does "Category": 0 mean? does this mean its not giftable?

uncut viper
#

i believe the sapling itself is in Data/Objects (I might be wrong) but don't edit those dictionaries directly, use the AssetRequested event

#

if you're just trying to read the data you can also use the DataLoader class

#

actually i forgot tea bush saplings are like. leaves. so I'm even less sure about where it is. but the point about asset requested stands

fathom hound
#

also what does internal asset key mean? SDVpetcatsad

uncut viper
#

it means you can take a file directly from your mod folder without a Load action

fathom hound
#

oh ok so i dont need to edit it? just the .png part

uncut viper
#

i have no idea what you're doing

fathom hound
uncut viper
#

i don't know what your goal is

uncut viper
#

is this your own mod?

fathom hound
#

yes

uncut viper
#

where did you get the internal asset key from then

fathom hound
#

modding wiki

uncut viper
#

it's not usually recommended to use internal asset keys

fathom hound
uncut viper
#

they are technically faster but they completely prevent recolours because no one, not even you, can edit them with EditImage after

fathom hound
#

i dont mind if i never have to change color

uncut viper
#

others who want to make compat for your mod would mind a lot

fathom hound
#

ohh i see

uncut viper
#

regardless if you're dead set on using it despite the downsides for no visible upside, you can just change the png, yes

fathom hound
#

how would i make it compatible then??

uncut viper
#

use a Load instead

#

Load the png to some target and then use the target for the texture name

fathom hound
#

like this?

#

and i just get rid of texture?

uncut viper
#

just replace the internal asset key part with just "Mods/StarCrops"

fathom hound
#

tysm! <3

uncut viper
#

"Texture": "Mods/StarCrops"

#

if both your crops are in the same png the texture will be the same for both of them

#

and it will be the sprite index you change instead

fathom hound
#

thank you (:

faint ingot
#

So I noticed that setting "on day-update regrowth" to 5 doesn't always mean a wild tree regrows, it just goes straight to grown if it does regrow.

#

Any way to make sure a tree respawns completely every day?

uncut viper
#

the SpawnTree tile property, maybe?

mortal goblet
#

I add a node to my game, but the texture is wrong. it should be the second one in the picture. It is not default error texture so i don't know why.

#

i used Item Extension for my mod

uncut viper
#

are you using the right image? you're loading ZincNode.png but that last image you sent has more than just the zincnode on it

mortal goblet
#

here is the true hierarchy

uncut viper
#

then your spriteindex is wrong

#

it should be 0

#

it was jumping 16 pixels down to empty space, which is why it looks like just a weird shadowy rectangle. its copying the bottom most pixels of your texture in spriteindex 0, which is the shadow

mortal goblet
#

it works! thank you for your help

hot gale
#

Alright I removed all AI content from my mod :p

dusty scarab
#

hey everyone, I'm trying to get my brain back into modding with a few edits. I'm trying to double the roe output of Sturgeons in a Fish Pond. for the EditData action, do I need to remake the entire Produced Items table, or is there a simpler way to tell the game to double roe output?

fathom hound
dusty scarab
fathom hound
#

2 different items from the same harvest

uncut viper
dusty scarab
fathom hound
dusty scarab
#

mmm... I've not made any crops that do that, but I would assume it'd make use of the HarvestItemID field, with the different entries seperated with a ,

so it'd be like where you see HarvestItemID in my example, only you'd put both your items you want to drop on the same line, each in quotation marks, seperated by a ,

dusty scarab
#

I have not, I am spitballing ideas

shut mountain
#

Did I already ask how to disable SMAPI developer mode? (Android) >_>

fathom hound
#

well fingers crossed

dusty scarab
#

good luck!

vernal crest
#

Wow, events are really robust to errors now

uncut viper
#

if HarvestItemId is not already a List, it cannot be made into a list

#

you cannot just make things into different types

fathom hound
#

how do i make it a multiple crop yield then?

dusty scarab
#

ah, darn

fathom hound
#

can i add a list like that?

uncut viper
#

i dont know. but i know you cannot do that

vernal crest
#

I just played through a whole event with Jorts and he isn't even installed. He was not visible, but his shadow was and his shadow moved when I told it to and his dialogue played!

fathom hound
uncut viper
vernal crest
#

I did get a bunch of errors and warnings in the log but the entire event played properly.

vernal crest
dusty scarab
fathom hound
#

oh spacecore git would be helpful

hot gale
fathom hound
flat sluice
fathom hound
#

when i look on spacecore docs i dont see much with CropExtensionData SDVpufferthink

vernal crest
vernal crest
fathom hound
#

just confused where to start counting SDVsobastian

vernal crest
#

Count from the first one but count it as number 0

fathom hound
#

like this?

uncut viper
#

dont forget to account for the rows being 32px tall instead of 16

flat sluice
vernal crest
uncut viper
#

not if you're just counting horizontally

#

ill admit i just saw talk agbout counting sprite indexes with crops and wanted to make sure it wasnt forgotten that theres not 4 rows

#

bc theres 2 crops on one sheet

vernal crest
#

I think the spacecore part is just focused on phase of the individual crop, which I assume is determined by how many items are in the DaysInPhase list.

#

However I've never looked at crops before so I might be wrong.

fathom hound
#

thank you regardless!

vernal crest
# fathom hound oop

Your Target for your load is Mods/StarCrops/Crops but your Texture field in the EditData is Mods/StarCrops.

fathom hound
#

silly me ty ^^

vernal crest
#

Oh no optional Jorts broke my event!

#

I wasn't expecting that.

fathom hound
#

my sprite index is totally not right

#

its supposed to be 0,1,2,3,4 right?

hot gale
#

correct

fathom hound
#

why is this happening then? no matter what i change the index to it wont change

hot gale
#

hmm im not sure, which one is the bad one supposed to be

dusty scarab
#

0 is

fathom hound
vernal crest
uncut viper
#

sprite index is actually one of the ones that isnt i believe

#

but, did you save the png

#

bc its wrapping back around to look under your 0

fathom hound
vernal crest
#

Only thank me if that worked lol

#

Because Button said she thinks it isn't cached

uncut viper
#

one of either sprite index or texture is not cached

#

bc i was able to update one of em when messing with BETAS

#

or maybr both. but at least one

#

actually maybe ignore me, i think i know what i was confusing

vernal crest
dusty scarab
vernal crest
#

Nooooooooo speak command used with optional NPC why are you still broken?

fathom hound
#

wait wtf SDVsobastian my seeds are transparent O.o

dusty scarab
#

however, now I've got a pickle of a different flavor. this SHOULD be increasing the price of caviar, but it's still at its default price when I check. any ideas as to what I'm doing wrong?

vernal crest
dusty scarab
#

this is the same as the Moss Soup example in the git document, so I don't know what's not working

uncut viper
#

the price when bought or the price when sold

vernal crest
dusty scarab
dusty scarab
vernal crest
fathom hound
#

im shook, why are these not showing up?

fathom hound
brittle pasture
fathom hound
#

my plant is invisible LOL

dusk mulch
#

common mistake

vernal crest
fathom hound
#

would that mean this is 0 and 2 for indexes

dusty scarab
brittle pasture
#

and you trashed every existing item?

vernal crest
brittle pasture
#

and tested with new spawns from CJB?

fathom hound
dusty scarab
vernal crest
fathom hound
#

thanks SDVpufferthumbsup

uncut viper
#

(it must be asked: were you closing and re-opening cjb)

dusty scarab
uncut viper
#

what does a patch summary say

dusty scarab
#

part of me does dislike how quickly the console closes after I exit game. this probably has something to do with it

uncut viper
#

that should be there as soon as you launch?

vernal crest
#

You can always go check your log if you closed the game by mistake before looking through the console

dusty scarab
#

it is, yes. unless you meant a different summary?

uncut viper
#

thats not an error that would be logged on close

vernal crest
#

Also if something doesn't work you should always check the log/console first

uncut viper
#

i did, i meant typing patch summary in the console, but that warning already tells you whats wrong

#

Included files cannot have "Format"

dusty scarab
#

yeah. I missed the warning when I was booting and looking for errors. that's my bad

#

I forgot to take the Format out when I got the bright idea to also change the price of caviar. loading two files instead of including them all in the same content file got me

vernal crest
#

Sorry to nitpick, but you weren't loading them. You were including them. I nitpick because you can load files too and they are not the same thing.

fathom hound
#

anyone know why it says i have to harvest with scythe?? i even added harvestmethod grab and its still not working

dusty scarab
wary kite
#

hey guys my friend has an issue with smapi (since she hasnt played after the update) how fix?

vernal crest
ocean sailBOT
#

For help with modding issues, please ask in #1272025932932055121! When asking for assistance there, sharing an error log will help others identify your issue (see https://smapi.io/log for instructions).

fathom hound
#

Nope

#

Just CJB & spacecore

wary kite
#

im so sorry will do

vernal crest
uncut viper
#

its ok! common mistake

fathom hound
#

Kk one sec ^^

vernal crest
#

Well that is a fun little quirk. Using speak with an optional NPC will cause the event to hang forever but only if it's after a move command with the optional NPC.

dusk mulch
#

screw this i will come back to the project in the morning

vernal crest
#

Or before the move command. Maybe it's any two consecutive commands with an optional NPC.

uncut viper
#

whatcha mucking about in events for anyway

dusty scarab
brittle pasture
#

yes

dusty scarab
#

awesome! I'm making a small mod that edits sturgeons because of your mod. I can't wait to use it and have caviar AND crops!

#

keep up the great work!

brittle pasture
#

thanks SDVpufferheart

vernal crest
# uncut viper whatcha mucking about in events for anyway

Just my usual "I wonder what happens if X" lol I wanted to know:

  • what happens when you use a command with an NPC who wasn't in setup (event raised error and didn't perform command but continued), then
  • what if you include a locked NPC in an event without making them optional, with no speak commands for them (adds the NPC to the event, doesn't unlock them, doesn't add them to social tab), then
  • what if you include the locked NPC in the event and made them speak (adds the NPC to the event, doesn't unlock them, DOES add them to social tab despite still not being unlocked), then
  • what if you include an NPC who isn't even installed without making them optional (adds the shadow of the NPC to the event, creates non-portrait dialogue box for them), then
  • what if you include an NPC who isn't installed but they are optional (they aren't present, event works as though they're not there - EXCEPT for this current thing with the speak + move command causing the event to hang)
#

I doubt you wanted to know all of that but now I can search back through my messages if I want to explain it to anyone in future xD

uncut viper
#

social tab thing makes sense to me. it creates a Friendship for them. however, id be surprised if it did it if that character had their socialtab option set to hide forever SDVpuffersquee

#

i wonder if that happens. cough, hint, etc

#

are you doing all this testing with just content patcher?

fathom hound
dusty scarab
#

good night

vernal crest
uncut viper
#

i was gonna say it could be a good case for tryin to whip up some quick C# events. it'd go a lot quicker, thats for sure, when you can reload things with just a hotkey

#

if i had to guess LA might have a spoiler mode or somethin?

#

whereas looking at them directly just asks for the data directly

#

also by C# events i mean like AssetRequested and ButtonPressed

#

not like. an event in game

vernal crest
#

Reloading with / -> up arrow x2 -> enter key is pretty fast

uncut viper
#

true, but reload with F2 to invalidate specific assets is even quicker!

#

it was just a C# practice idea is all

vernal crest
#

Yeah but I am curious why LA can find Kent via one method but not the other. Maybe Pathos has different rules around what will show up in a search.

uncut viper
#

thats what i meant, it might have built in spoiler protection if the NPC isnt unlocked yet. might be able to turn it off

vernal crest
uncut viper
#

i think it does for gift tastes, right?

vernal crest
#

And you think that spoiler protection might not apply for the social tab lookup because he didn't plan for a situation where the NPC would be visible in the social tab but not unlocked?

uncut viper
#

Progression Mode

#

i dont think its really a bug

#

or like, unintended

#

i think its more like

#

Search Bar: iterates over all of Data/Characters, but only shows ones if their UnlockCondition checks out
Social Tab: You clicked on Kent, so I am requesting Kent's data directly and showing it

#

i think it would be weirder if it didnt show you Kent when you clicked on him

#

search bar might also only search for characters that currently exist in the world, which Kent will not, whereas the social tab will pull from Data/Characters

vernal crest
#

Yes, that was what I meant by "different rules around what will show up in a search"

#

Which I definitely could've been clearer with given that I meant "rules" as in "is approaching the data differently in his code"

uncut viper
#

i think just a case of "on the same page but in different languages" then SDVpuffersquee bc to me i thought you meant Pathos like, specifically wrote in "dont show Kent in search b ut show him here" rather than it just bein incidental

vernal crest
#

Yeah just me not being clear, sorry!

#

I will check the HiddenAlways thing

#

Yup you're right that he doesn't show up if it's HiddenAlways

#

Interesting that the friendship can be created even though the NPC is not unlocked and therefore not considered to exist by many other checks. I guess CA just didn't include a check there since he wasn't planning on violating his own intended order of unlock -> meet.

uncut viper
#

its the other way around, actually, more or less

#

it being created is the check, in case code tries to access friendship data that wouldnt exist

#

buncha places in the code where it specifically says "no friendship? okay, well, create an empty one then"
including the social page!

#

(but only if its AlwaysShown)

#

(to be clear tho i dont think the SocialPage itself created it here, i think the act of talking did)

orchid glade
#

Can I ask a question about fork?

uncut viper
#

it goes next to the spoons

#

(yes)

orchid glade
#

Oh how do I put code blocks in again... ```

.../question fork0 "#answer0#answer1#answer3"/fork eventidhere/..."

vernal crest
#

Huh, Kent does have a SocialTab value of AlwaysShown.

uncut viper
#

probably cuz hes like, a forced meeting anyway

#

in fact

#

that might be why its AlwaysShown that creates a friendship

#

to create his friendship when he talks in his intro event

orchid glade
#

right, in this case, do those three answers correspond to fork0, fork1, and fork2 even though the third is called 'answer 3'?

vernal crest
#

I just edited him to UnknownUntilMet and it still created the friendship after the event.

uncut viper
#

worth a shot. is his displayname ??? after the event in the social tab?

#

or is it Kent?

#

with UnknownUntilMet

vernal crest
#

Kent

#

He wasn't present at all before the event, then after the event he was listed there as Kent

uncut viper
#

oh, turns out if i scroll a tiny bit more, the answer is just There

#

the speak command does it if they can socialize and it hasnt been created, always

#

so it is intentional

vernal crest
#

Isn't question fork recommended not to be used since it's fiddly and people recommend quickQuestion instead?

dusty scarab
#

that would explain why Lewis and Robin are always already counted as 'met' in the Introductions quest without having to go 'meet' them again

orchid glade
#

I did not know that

#

But regardless... I'm translating a mod right now rather than writing, so I want to understand how to read the events already written in the mod

vernal crest
#

That's fair

orchid glade
#

And also.. "since it's fiddly"... does that mean... buggy? or more difficult? or something else

vernal crest
#

I think it's more difficult

uncut viper
#

(interestingly, Willy's friendship does not actually get created from him speaking in his first event where he gives the fishing rod... bc its actually hardcoded to be created right when the event starts)

orchid glade
#

Also, I think quick question in the example I'm looking at would actually be more difficult, because the fork actually leads to a whole new event

#

(well, a rather large chunk of content to fit into answer scripts)

#

Anyway, do you know the answer to my question, or?

vernal crest
#

I think they use it for actual forking but to be honest I've never done it so I've not paid too much attention to it

uncut viper
#

(i also unfortunately dont know)

vernal crest
#

I don't know the answer to your question, either. I am trying to find examples to look at to figure it out but I am moving slowly because tired.

orchid glade
#

Okay. I'm just being thrown I think by i18n tokens that are numbered 1 and 2, but probably refering to fork 0 and 1

#

Because since if it wasn't a token it would be a string right, so the fact that there's a number in it is irrelevant and it's just ordered arguments 0, 1, 2, ...n

#

I think. Yeah I was hoping there would be a better example on the wiki

uncut viper
#

the first answer0 is actually the question

#

answer1 and answer3 are answer indices 0 and 1, as far as i can tell

orchid glade
#

Is it though? I thought that but I think the question is optional and skipped by starting with a hash

#

question fork<answer index> "<question>#<answer 0>#<answer 1>#..." vs question fork0 \"#answer0#answer1#answer3\"

uncut viper
#

where did you get that from? not bc i think you're wrong, but bc i think you're actually correct, but i dont know where it says it on the wiki

#

i suppose it can be presumed but its a bit confusing with the example as given

orchid glade
vernal crest
orchid glade
#

Yeah there

uncut viper
#

it doesnt say anything about the question being optional, is why it was confusing me, esp since it does the 0,1,3 thing

#

oh it does

#

im blind

orchid glade
#

hehe

uncut viper
#

maybe im also too tired to be doing things

orchid glade
#

That was me last night (this morning because I accidentally stayed up all night)

uncut viper
#

in my defense, the syntax on the left column says its required

calm nebula
#

It's because thr question fork syntax relies on weird event state

#

And often trips people up

#

Anyways

orchid glade
#

it does? is that using <> instead of []?

uncut viper
#

i feel like i havent seen atra in a while

calm nebula
#

Someone please make a mod that makes the cat sleep on the cat bed

uncut viper
#

<> does denote a required parameter yeah

#

... its supposed to anyway

calm nebula
#

Atra was behind the firewall

uncut viper
#

fair

vernal crest
#

There are several commands on the events page that are incorrectly noted with <> for optional commands

uncut viper
#

in that case though bezajel they are indeed fork0, fork1, and fork2

orchid glade
uncut viper
#

<> = required
[] = optional
either with a + at the end = you can do multiple one after the other

orchid glade
#

Cool. okay. I'll try to keep it all in my head while trying to do this translation

#

(Thanks folks xo)

silver sand
vernal crest
#

Is it possible to do a three-ending fork that way?

silver sand
#

I think

#

It was a long time ago

dusk mulch
#

Alright, thank you.

silver sand
#

The one with "Splatoon Fairies"

vernal crest
#

I don't know how you'd specify which fork for it to choose.

orchid glade
#

I'm not sure that it is Aba, (maybe maybe not), more that it could be fork3 and it would set the specialEventVariable1 if you chose the 4th option

#

So, it maybe can only be used to indicate a default path and a path if you choose a specific one of any number of options

vernal crest
#

Looks like specialEventVariable1 is a bool so yeah I think it's only possible to have fork or continue if you use question fork.

uncut viper
#

should be somethin with the new gotos in 1.6.16

vernal crest
#

Where is info about 1.6.16?

gentle rose
#

can't wait for goto-enabled crime

vernal crest
#

The obvious choice but in my defence not on the index. Thanks.

#

Ok back to investigating why optional NPC stuff breaks

#

And by "why" I actually mean "under what circumstances" because I don't feel brave enough to investigate the code right now

calm nebula
#

This is why quick question is better

orchid glade
#

What I don't understand is why, AFTER the fork has already happened, they are resetting the specialEventVariable1 twice in a row with a questions with only 1 answer

#

Yeah I'm seeing now that quick question would work better than fork even here

vernal crest
#

Do they maybe just want to ask a question and don't know how to use anything other than question fork?

gentle rose
orchid glade
#

What I thought was a separate half dozen lines of dialogue depending on the fork was actually one line different, and then the last 5 lines repeated across both situations

#

Maybe. Also I think it's a fairly old mod so if quick question is newer, maybe that?

#

Does the specialEventVariable1 reset or disappear when the event ends or does it persevere?

vernal crest
#

quickQuestion was added to the wiki in March 2020

orchid glade
#

Well that's pretty close to the first update log I can find for the mod, so it was probably mostly written before then, and if it took a while for a Korean translation to go through

vernal crest
orchid glade
#

I guess I don't /need/ to know, I just like to understand everything

vernal crest
#

I completely get that. It's why I got the decompile and started learning how to look through it in the first place lol

orchid glade
#

Okay I've skimmed through all the events in the mod and I think they add a fork every time they use question even if there is only one answer, or multiple answers but none lead to the fork, and when no fork follows up, so... shrug

#

I'll just have to pay attention only when if goes somewhere

vernal crest
#

So it sounds like they didn't realise they could use question null so they just used question fork for every question

orchid glade
#

looks like

#

I mean no criticism on my part, it's a whole ass NPC mod which is way more than I've ever done so far 🙂

vernal crest
#

It's really easy to miss stuff when there's so much involved. Especially when little/none of the documentation is in their language (if I have correctly understood this is a Korean mod).

orchid glade
#

yeah it is

vernal crest
drowsy pewter
#

ummm thats a mistake. hahaha

crude plank
drowsy pewter
#

the second one is just a duplicate. doesnt need to be there

crude plank
#

oh i see

drowsy pewter
#

Probably copied it to use as a template for the actual rose drops but didnt delete it

tiny zealot
# uncut viper <https://stardewvalleywiki.com/Modding:Migrate_to_Stardew_Valley_1.6.16>

pathos stay winning (he continues to insert passive abigail favoritism into the wiki, and i respect it)

    continue/64 15/farmer 64 16 2 Abigail 64 18 0/pause 1500/
    label question/speak Abigail \"Hey! Did you have your eye on someone?\"/quickQuestion #Abigail.#Penny.#Alex.(break)goto correct(break)goto hmm(break)goto hmm/
    label hmm/speak Abigail \"Oh?$u\"/pause 500/goto question/
    label correct/speak Abigail \"I thought so!$l\"/pause 500/end
"```
thorny dagger
#

It is inacceptable to completely ban a tool that is widely used and will continue to evolve in the future.

#

You can't really call this server "a home" when a certain group of people are actively excluded from the server, as they use something unconvential

modest dagger
#

AI doesn't really create it just takes existing things and remixes them, if you did that manually with a mod you could see why people wouldn't want that can't you

thorny dagger
#

As a server and community we should intend to adapt with the technology and accept the underlying consequences for everyone. That doesn't mean you have to be rude or purposefully destroy others people work

vernal crest
#

You should take this up with the Junimos, not us.

thorny dagger
modest dagger
#

Tell me then how does AI create without a reference

thorny dagger
#

Well there is always a reference to something, we are are all using the english speech. We aren't inventing new languages

vernal crest
#

As I said, go talk to the Junimos. Although most of us are strongly in favour of this policy, we aren't the ones in control of it.

#

In game-related news, regrowable crop stages are pretty hardcoded, huh? I can have fewer stages than vanilla but not more.

drowsy pewter
#

yes

#

It might be possible to finagle stuff with spacecore if you really really want to

#

since spacecore allows you to set the stage for a crop after harvest

vernal crest
#

I am not even interested in making crops, I'm just fooling around lol

#

It took me reading your explanation and looking at your drawing to understand how the texture frames corresponded to the DaysInPhase field so now I am trying to add to the wiki.

drowsy pewter
#

Lmao

#

Let me know if you want me to review it

#

could you guys please not attempt to start a fight about something that should not be fought about in the channel anyways

vernal crest
#

That'd be great thank you! All right to DM or you want it somewhere else?

drowsy pewter
#

Yeah anywhere! Idm dms

vernal crest
#

I'll send you what I've got so far while I keep experimenting with stages

hallow prism
#

arg, i'm scopecreeping an idea i have not even started

#

send help

vernal crest
#

👏 Scope creep 👏 scope creep 👏 scope creep!

modest dagger
#

do tell lumi 👀

thorny dagger
#

@naive wyvern please share your thoughts instead of disliking every message of mine

hallow prism
#

i have this idea of farmer becoming better at stuff over time (in addition of leveling up skills)

#

and my brain went "adding randomisation??" but no, no, first start the thing

#

then it may scope creep

vernal crest
#

Is the stuff they'd be getting better at the existing skills but just done via a different mechanic, or is it totally different things like...the longer they have beehouses the more honey they get because they're better at beekeeping or something?

drowsy pewter
#

someone responded saying to turn off cjb cheats scythe option

hallow prism
fathom hound
vernal crest
fathom hound
fading walrus
# thorny dagger It is inacceptable to completely ban a tool that is widely used and will continu...

If you have feedback to provide regarding the AI ban, feel free to DM us via Bouncer about it. The ban is the result of careful consideration from multiple angles, and not merely fearmongering. We considered legal, ethical and technical perspectives, and ultimately determined that our new stance was the most appropriate. If there are things you think we didn't consider, feel free to let us know.

fathom hound
#

Now that I went to notifications, I see it manually but I never got the ping which is weird

#

Like the app didn’t even say I had a ping in here

vernal crest
fathom hound
#

But tysm Aba SDVpufferheart

#

YAYYYYYY

#

I literally woke up thinking about my mod, lol SDVpufferwaaah time to finish the rest ehehe aSDVraccoondance

drowsy pewter
#

hahaha

fathom hound
thorny dagger
fathom hound
#

CA would not use AI

hallow prism
#

i believe you send a dm in public by mistake!

vernal crest
hallow prism
#

negative crop, top of art /lh

fathom hound
#

LOL

vernal crest
#

Can you see where I got completely lazy and gave up on sprites entirely and just used numbers instead?

fathom hound
#

Much appreciated SDVpuffersquee

cunning kiln
#

Morning, everyone (if you are in my part of the world). I'm curious about use cases for false dependencies. I know that they make mods more compatible with each other, but when are they needed?

hallow prism
#

ahh it's WHY some numbers are mirrored

#

it was bothering me a bit

fading walrus
hallow prism
#

i was like "???? why someone would write a 2 mirrored??? but not the 5 ?"

cunning kiln
#

(For my specific example, if I want to add coal nodes to the mines and I want it to be compatible with other mods that add coal nodes, do I need a false dependency or are we okay because everyone's just adding a lot more coal?)

vernal crest
hallow prism
fathom hound
#

I got 2 things left to do o:

-shop data
-monster data

YIPPEE

hallow prism
#

duplicate items maybe would be a different debate (some people are bothered) but coal? come on, who doesn't need more coal? who would complain?

vernal crest
hallow prism
#

if you really want there are tricks to disable the nodes if other mods are installed but, like, i would not bother

cunning kiln
#

Or makes both versions available in the game?

vernal crest
#

Overwrite or add to.

#

Like if you wanted to add your object from your mod to my NPC mod's gift tastes, you'd put my mod as a false dependency to ensure that my NPC's gift tastes entry already exists when your mod goes to edit it to add your object. That's the "adding to" bit.

hallow prism
#

usually false dependancy are if you need some specific load order or something similar

#

if you both add a node, since the node id will be different, you don't care about that

#

it will be auto compatible

cunning kiln
#

Okay, that makes sense. (Also, something I don't have to worry about this time around, yay!) Thank you!

ocean sailBOT
#

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

drowsy pewter
#

always great when you dont have to worry about something

fathom hound
cunning kiln
#

(And thank you SDVpufferheart )

vernal crest
#

Ooooh I'm nearly at secret text channel level!

drowsy pewter
#

secret what

gray bear
#

secret nothing

vernal crest
#

The roles page says there's a secret text channel at level 500

gray bear
#

well then it's not a secret

#

worst kept secret

fathom hound
naive wyvern
#

Itd be an Open secret then

fathom hound
mighty ginkgo
#

@drowsy pewter is Cornucopia using "Type": "Seed" instead of "Seeds" intentional? it seems to break automate's detection of the seeds in junimo huts

vernal crest
#

The things that are said in there must just be very secret

#

Maybe that's the only thing that you are allowed to say: "secret secret secret"

gray bear
#

i can't tell you it's a secret /j

drowsy pewter
#

How are our objects even working 😭

vernal crest
#

What, discord that is wrong!

fathom hound
#

Spacecore uses ”Seed” but ”Seeds” is vanilla

#

Is my guess

drowsy pewter
#

Oh god. All my seeds are like this??? WHY

#

I must have caused so many wrong third party mods using us as an example too 😭 Omggggg sfjksdkfjsdfkddkfhsd hahahahahhaa

blissful panther
fathom hound
#

LOL

#

in like.. an hour just answering all my questions 5266_pensive_clown

rigid oriole
drowsy pewter
fathom hound
#

Omg no way, is there no way to change dangerous monster loot tables in CP? SDVpufferwaaah SDVpufferwaaah SDVpufferwaaah SDVpufferwaaah SDVpufferwaaah

drowsy pewter
#

yeah

fathom hound
#

There is, how? I keep searching can’t find anything helpful SDVpufferwaaah

drowsy pewter
#

i mean yeah there isnt afaik

fathom hound
#

Aw man

blissful panther
#

That one feels like a framework waiting to happen!

fathom hound
hoary lake
#

how many chocolate cakes would i have to bribe somebody with for them to make a similar menu mod for normal item shops like how livestock bazaar looks?

fathom hound
#

I should make my own atp with how many times I need one LMFAO /j SDVpufferpensive

hoary lake
#

also Hi Anaira. hehe SDVpuffersquee

fathom hound
#

HI BEN SDVpufferheart

fathom hound
fathom hound
#

Now I want chocolate cake

#

I’ve seen Gus sell it like every other day it’s so annoying

gray bear
#

I do like cake

fathom hound
#

Ben’s react makes me want cake even more, but in cup form

gray bear
#

but I can't make those kinds of mods

hoary lake
#

I do wish there was a greater variety of cakes and cookies.
i do have the entirity of WAG so that will hopefully help with my cake cravings.

fathom hound
#

Lowkey I wanna make a desserts mod now oooof

rancid temple
hoary lake
#

Hi Roku! how are you?

rancid temple
#

Exhausted. You?

hoary lake
#

me too...i hope you feel better soon!

fathom hound
#

how would i be able to adjust this to have a .77% chance of spawning in the traveling cart?? i dont see a field for it on the shop data wiki

#

no way, and i cant add anything to Qi's Walnut Room shop??????

#

please tell me i didnt get my hopes up for nothing SDVpufferchickcry

fathom hound
#

thank goodness, i didnt see it on the shops page and got worried

gray bear
#

wiz is our resident qi expert

modest dagger
fathom hound
#

thank you so much SDVsobastian

fathom hound
lucid iron
#

its just an ordinary shop

fathom hound
#

i meant on the shops data wiki

lucid iron
#

yea it is an ordinary Data/Shops entry

fathom hound
lucid iron
#

sure

#

perhaps check your unpack to see if anything else is missed

fathom hound
#

doing that as we speak rn! <3

fathom hound
lucid iron
#

use Condition RANDOM

gentle rose
#

one of these days, someone is going to write a full API reference for the game, and the next day 1.7 will drop with no warning and change everything

lucid iron
#

nah pathos will xmldoc everything

#

modding is saved trust

true coyote
cunning kiln
#

Okay, another false dependency question, because now I'm curious. What happens if two mods have a false dependency on each other? Whose edit gets applied?

#

(Applied last.)

lucid iron
#

circular dependency they both die

gray bear
#

chu no

fathom hound
gentle rose
#

chu yes

gray bear
#

I think the whole false dependency doesn't work in 1.6

lucid iron
fathom hound
#

thanks chu!

lucid iron
#

that would be very concerning bea

gentle rose
gray bear
#

!dependency

lucid iron
gray bear
#

buh. we did have a command

cunning kiln
#

I feel like I opened a can of worms...

gray bear
#

it's less effective

lucid iron
#

it does the same thing it always did

gentle rose
#

it didn't change, bea, it just became less necessary because of some other features

lucid iron
#

but CP priorities are more powerful

#

so it wins over whatever false dep you set

gray bear
#

I think if two mods have 2 false dependencies they just cancel each other out and go back to the regular sorting

cunning kiln
#

What's the regular sorting?

#

Mod name?

gray bear
#

ah ok. I was misinformed! ty for explaining chu and iro

#

yes

lucid iron
#

if they fixed this then it's new

gentle rose
#

circular dependencies should theoretically crash

lucid iron
#

i remember mod help issues with sve -> medieval -> vpr loop de loop

gentle rose
#

(because that's the correct way to handle circular dependencies)

#

but I'm not sure about circular false dependencies

gray bear
#

I don't think smapi crashes. it shouldn't anyway

gentle rose
#

SMAPI might not, but the mods shouldn't load

fathom hound
#

if i have 2 shops, do i need to make a whole nother "Action": "EditData", "Target": "Data/Shops", "TargetField": block? or do i just add another TargetField under it?

gray bear
#

could always test it out but like why would you need circle false dependencies

gentle rose
#

they should both be skipped

but it's easy enough to check

lucid iron
#

LocalTokens 3sSmolMiku

#

but yes u do need 2 EditData

fathom hound
#

thx SDVpufferheart

lucid iron
#

[SMAPI] - Cornucopia - More Flowers 1.5.4 because its dependencies have a circular reference: Cornucopia - Artisan Machines => Cornucopia - More Flowers => Cornucopia - Artisan Machines).

gray bear
#

wait really m

lucid iron
#

this is what i mean by "both die"

cunning kiln
#

I was asking as part of understanding how false dependencies work.

gentle rose
#

...does a manifest-only mod word

lucid iron
#

(just to be clear i added this false dep to demo, cornucopia does not have this bug lol)

gray bear
#

oh wait anaira I misread

cunning kiln
#

(I'm guessing new mods might add a false dependency for an older mod, but not vice versa, so it doesn't come up?)

lucid iron
#

well again smapi will bonk you for doing this

gentle rose
gray bear
#

not always

gentle rose
#

and generally it's encouraged not to deliberately overwrite other people's mods specifically

lucid iron
#

i personally think false dependencies are easier to debug than priorities

#

cus its right there in the manifest

#

not scattered across various patches

gray bear
#

I have a few to make npcs mods load before mine so I'm not adding gift taste to nothing

gentle rose
#

can't you do that in other ways? SDVpufferthinkblob

gray bear
#

not that I know of

cunning kiln
#

I wasn't asking in the context of overriding -- it was more about compatibility (since I see it come up a lot when people are discussing compatibility).

lucid iron
#

yea you can, but its easier for ppl to go "ah this mod is trying to add gift taste to this npc mod"

gray bear
#

I can do a check if the mod exists but that doesn't check when it loads

lucid iron
#

vs "ah this mod is trying to add gift taste really late"

#

"some of the keys target this probably a custom npc mod"

gray bear
#

ah right priorities

lucid iron
#

so yea i vote for false dep in bea's case PecoWant

gentle rose
#

I do wish sometimes that CP had some stronger features for things like this, even though I understand why it doesn't, but yeah I think that bea's case is the classic example of when it's correct to use false dependencies

cunning kiln
#

That makes sense -- part of the reason I was originally asking was to understand when and why you would use them. It sounds like it's more used for modifying (or adding to / reacting to) mods that add content.

gentle rose
#

i.e. "if mod X is installed, do things that directly depend on it, but if not, still run the rest of the mod"

lucid iron
#

it just says load me mod after this other mod

fathom hound
gentle rose
#

"false dependencies" are optional dependencies, pretty much. So if the mod is there, it's treated like a dependency, but if it isn't, there's no crash

fathom hound
#

i saw my items in shop, im guessing this weird icon thing is from not having i18n files yet? SDVpufferkekw

#

they worked as normal

cunning kiln
#

Thanks, everyone!

cunning kiln
#

Once you have i18n files these will be replaced with whatever you have for that tag in the file 🙂

fathom hound
#

great, just need to add machine data then im done!

#

well ontop of i18n lol

cunning kiln
#

(I'm so excited to actually have an answer for once, rather than just asking questions😂 )

fathom hound
#

REAL i feel so dumb in here compared to farmers LOL

lucid iron
#

hm whats your trade item

fathom hound
#

i want to put my modded stardrop tea leaves item in a keg for a week to produce vanilla's stardrop tea

fathom hound
lucid iron
#

no

#

TradeItemId

#

did you set this

fathom hound
#

no SDVsobastian

lucid iron
#

i guess its the qi gems bug then

fathom hound
#

i just put currency: 2 and thought that would work

cunning kiln
#

(...so I didn't have the answer. Dammit! Some day...)

lucid iron
#

so if you are just selling for qi gems, use "TradeItemId": "(O)858",

fathom hound
#

thanks SDVpuffersquee and ty also jane SDVpufferheart

lucid iron
#

theres a display bug that makes the shop currency version not show up right, unless item extensions

drowsy pewter
fathom hound
lucid iron
#

yea

#

was this bug ever reported think

fathom hound
#

somehow im finding them SDVpufferchickskeleton iwnek its a bug or not LOL

fathom hound
modest dagger
#

oh easy

fathom hound
#

i saved the easiest for last SDVsobastian

gray bear
fathom hound
#

(ill still fuck it up somehow)

modest dagger
#

bea aren't you constantly at war with map patches

gray bear
#

yep

#

i fear them and they know

gentle rose
#

if you're targetting a specific mod, use dependencies. If you're targetting a whole category of mods, use priorities

gray bear
#

could i run into issues if someone targets the same area as me with the same priority?

#

i suppose that's a what if scenario

gray bear
modest dagger
gray bear
#

mod duel 🤺

modest dagger
#

next thing we know the sushi stall has taken over andy's farm

gray bear
#

hopefully it doesn't move

gentle rose
#

sorry, accidental @

gray bear
#

right now i'm right next to andy's house chilling

#

it's alright iro you're on the "ok if you ping me" list

#

it's just shorter to type "don't reply @" then "you can @ but only if you're special to me"

modest dagger
#

Bea's fish vendor leaves the rotten sushi at night bc Andy is mean to them

tranquil veldt
#

Hi all, not sure if its best to ask here, but I am looking into changing some existing mods (personal use) and I am trying to figure out what the following item ID refers to:
BO 25 1
I know the 1 stands for the amount but I am pretty sure its not 1 stone xD Can someone explain what the BO means?

gray bear
#

fish doesn't rot in stardew

modest dagger
#

big object?

tranquil veldt
#

ohhh that could be it, thanks!

modest dagger
#

if it's a machine that'd be the seed maker but

#

i'm not 100% sure

tranquil veldt
#

hmm yea I think it could be that one, I vaguele recall that

#

Is there a list for ALL items, because the Great ID Spreadsheet is missing a bunch

gentle rose
#

I don't recognise BO as a code SDVpufferthinkblob

tranquil veldt
#

and there's no tab for objects specifically

modest dagger
#

i use this

tranquil veldt
#

merci!

gray bear
#

[[Modding:Objects]

#

feck

#

[[Modding:Objects]]

gray bear
#

wrong one anyway

#

yeah BO isn't... a thing? there's BC and O

modest dagger
#

What's the mod Darcy?

tranquil veldt
#

weird, its from CCCB, and pretty sure the rewards work 🤔

modest dagger
#

oh it's def seed maker then

lucid iron
#

BO is a thing but only in bundles

#

because bundles are Like That

tranquil veldt
#

ahh that explains

gray bear
#

is BO a reward then

tranquil veldt
#

so if I want to change it to a different object then I need to keep BO?

modest dagger
#

yea BO is big craftable

#

it's the seed maker

tranquil veldt
#

craftable*

lucid iron
#
    /// <inheritdoc />
    public override string Identifier => "(BC)";

    /// <inheritdoc />
    public override string StandardDescriptor => "BO";
#

might be backwards compat thing actually

gray bear
#

hhh

modest dagger
#

if you want your reward to be another BC then yea keep the BO darcy

gray bear
#

this doesn't appease the rat brain

tranquil veldt
#

I love CCCB but some of the rewards are... not amazing so I am looking into changing them SDVpuffersquee

modest dagger
#

just use O if you're making the reward a normal object tho

tranquil veldt
#

yush I saw it on the link to the wiki you shared

modest dagger
#

today we learned about; bundles

tranquil veldt
#

😂

gray bear
lucid iron
#

change all rewards to pants

gray bear
#

shirts and pants are P and S respectively why C

modern pebble
#

guys, is the id winter_indoor in the base game or just a thing created by the mod?

modest dagger
#

in what regard

#

like what is that referring to

gray bear
#

tilesheet im guessing?

fathom hound
lucid iron
#

move entries

fathom hound
lucid iron
#

you need to use EditData MoveEntries to put your rule above the vanilla rules

fathom hound
#

ty SDVpufferheart

tranquil veldt
modest dagger
#

are hats not clothing

tranquil veldt
#

No I think they're Accessories?

fathom hound
#

they're hats (H)

tranquil veldt
#

Boots, hats, jackets, ponchos, and coats designed to protect from rain and snow are specialized clothing items.

modest dagger
#

...are shoes not clothes

gray bear
#

hats are hats

modest dagger
gray bear
#

shoes aren't even an option for rewards

tranquil veldt
#

Wait why am I trying to explain Ape logic

#

If there's one thing I learned is that one should NOT attempt that xD

gray bear
#

idk, why am i trying to write in ye olde english

#

the answer is ✨ modding ✨

fathom hound
gray bear
#

gib json

modest dagger
#

bea no eating jsons until they're fully done

gray bear
#

for troubleshooting wiz! i'll eat it later

fathom hound
#

oop my leaves disappeared

#

maybe i shouldve typed "Keg" instead of "12"?

#

nope that didnt work either

#

wait i did something!

#

now only this is showing up

drowsy pewter
#

did you specify an ID value

fathom hound
#

i thought i did sadde

#

wouldnt it be the 9th line here?

drowsy pewter
#

You should look at an existing mod for an example of MoveEntries formatting

lucid iron
#

oh u need both Entries and MoveEntries

drowsy pewter
#

the whole thing needs to be rewritten

lucid iron
#

Entries is to add a rule, MoveEntries is to reposition it

fathom hound
#

OHhh

lucid iron
#

do look at existing mods yes, esp anything targetting vanilla machine

drowsy pewter
fathom hound
#

i dont play modded

tranquil veldt
drowsy pewter
#

I can't make you play modded but you do actually learn a lot just from playing and using other peoples mods haha

fathom hound
#

SDVpufferwaaah ik its a curse

drowsy pewter
#

anyone here would be happy to link you to an example as well if you need examples of a feature!

tranquil veldt
modest dagger
drowsy pewter
#

No, it all needs to be rewritten

fathom hound
#

i rewrote it

#

gonna test now

drowsy pewter
#

the example I gave targets keg rules as well, so you can copy the same TargetField data and everything

fathom hound
ocean sailBOT
tranquil veldt
#

ya thats the one where I was looking

drowsy pewter
#

@fathom hound if it's not working, ping me with the json file here, I'm about to go to sleep but I can stay up for 5 minutes just to make sure your thing works!

fathom hound
#

mission accomplished! tysm SDVpufferheart

drowsy pewter
#

Ah wonderful!

#

I'm so happy

fathom hound
#

SAME i cant wait to release!!!!!!!

gray bear
#

tea time

fathom hound
#

this might be the mod that takes me out of vanilla grinding a bit SDVkrobusgiggle

drowsy pewter
#

Haha

fathom hound
#

now if i can get someone to make a dangerous monsters framework

#

then it would actually be perfect SDVpufferwow

lucid iron
#

what does that mean

#

as in, what do you want beyond just spawning monsters (which u can do with ftm)

fathom hound
#

i cant add these seeds to dangerous monsters loot tables SDVpufferpleading

#

designed these crops to be end game, and thought it would be really cool to add it as loot when farming dangerous

lucid iron
#

what if you make them spawn on ur farm after completing some endgame thingy

fathom hound
#

nah its okay, id rather just have it in just qi gem shop (and rare travel cart)

#

but ideally if a framework is ever made ill add it ^_^

lucid iron
#

i think u can do it without harmony if u wanna try C# Dokkan

fathom hound
#

i would love to try again SDVpetcatsad i tried reading yellow book, i didnt really understand it too much

#

im easier visual learner than like, reading ><

drowsy pewter
#

since its C# and not like . a niche modding community for a random game. There may be video guides to kickstart your learning it

lucid iron
#

it'd be really similar to this code

fathom hound
lucid iron
#

but instead of altering monster.Sprite, alter monster.objectsToDrop

#

and if u want you could write your thing as a PR to MonsterVariety so that it does actually become framework

fathom hound
#

no freaking way chu, you are awesome

#

i would love to omg, no matter how long it takes

lucid iron
#

i would do it but i have other things atm Dokkan

#

check back in a month maybe

fathom hound
#

oh no please i would love to do it

#

just wasnt sure how ^_^

lucid iron
#

i also dont really know if digging around someone else's spaget is the best way to learn kyuuchan_run

#

so idm if u just based your C# not framework mod on this

crude plank
#

It's the best way to learn to make the same spagetSDVpuffersquee

fathom hound
#

i only change this part right?

fathom hound
#

im not bold enough to release a framework yet, but i will certainly figure this out until i get it

lucid iron
#

no op u are changing all of ApplyMonsterVariety

fathom hound
#

i wouldnt feel right releasing a framework i didnt handmake uk?

#

oh okay

lucid iron
#

but more specifically, this mod's purpose is to pick a sprite from a big list of sprites to apply

fathom hound
#

I see, so if i have it just choose my mod ID as drops instead.. SDVpufferthink

lucid iron
#

what is relevant to you is

  • monster.isHardModeMonster.Value: this checks if a monster is hard mode/dangerous
  • monster.objectsToDrop as mentioned is the drop items
fathom hound
#

omw to ILSpy rn SDVkrobusgiggle

lucid iron
fathom hound
#

what does PR mean? sorry im so noob

lucid iron
#

pull request, submit a contribution basically

fathom hound
#

oh! ^^ okay!

lucid iron
#

in the case where you are just doing this yourself with hardcoded values, here is the functions you have to keep

  • internal static void Apply(IModHelper helper): this sets up the following event listeners
  • private static void OnSaveLoaded(object? sender, SaveLoadedEventArgs e) listener for when save is loaded
  • private static void OnWarped(object? sender, WarpedEventArgs e) listener for when player changes location
fathom hound
#

ill watch these videos too

lucid iron
#

the purpose of these 2 listener is to do work whenever player enters a new location

#

this work comes in 2 flavors
iterate all current NPCs and do stuff (if they are a Monster, checked with if (value is Monster monster) later)

foreach (NPC npc in e.NewLocation.characters)
{
    OnMonsterAdded(npc);
}

do stuff when new NPC is added
e.NewLocation.characters.OnValueAdded += OnMonsterAdded;
this also needs to be removed from previous location, hence
e.OldLocation.characters.OnValueAdded -= OnMonsterAdded;

#

everything beneath OnMonsterAdded is the stuff specific to this variety changing mod, which is where u can stop following this code

#

instead u just need to check if dangerous (monster.isHardModeMonster.Value) and then monster.objectsToDrop.Add("YourItem");

fathom hound
#

then start from there?

lucid iron
#

follow the functions in the order i mentioned

#

line numbers are social constructs kyuuchan_run

fathom hound
#

gotcha, i think i got it then

lucid iron
#

and ofc remember to call Apply from your ModEntry

fathom hound
#

like this?

lucid iron
#

The method being called is ApplyMonsterVariety

#

Define your own method in place of that

#

I'm confused why you don't have error squiggles though blobcatgooglyblep

fathom hound
#

I'm just confused 5266_pensive_clown

lucid iron
#

If you have intellisense on (e.g. vscode's C# dev kit extension) then it should warn you about incorrect syntax like what you have

fathom hound
#

where would ApplyMonsterDrops be defined that

lucid iron
#

If u look at my mod

#

The signature of ApplyMonsterVariety is Monster monster

#

And it's defined on the same class

fathom hound
#

ohhh in here rright

#

is it dev essentials?

lucid iron
#

Oh is this vs bolbthinking

fathom hound
#

Mmmhm

lucid iron
#

I know nothing about how to set that up rip

fathom hound
#

Oop sorry i didnt see u siad vscode

lucid iron
#

Maybe just google enable c# intellisense in vs then

lucid iron
fathom hound
#

omg i finally understood something on my own lol

lucid iron
#

Anyways {} is not for if

#

Need ()

fathom hound
#

oooh okay

gentle rose
#

all this time I thought the reason I couldn't compile atracore was that I was using rider. Now I think atra is just gaslighting me for fun /lh

#

atra: it definitely compiles
the compiler: ???

atra what witchcraft are you using, help

fathom hound
#

i feel like this is off still

#

lemme look for that extension

gentle rose
#

look up if statement syntax - they can be used without {} around the body but often aren't iirc

#

the body being the thing that should happen if the condition inside the () is true

fathom hound
#

it looks enabled already (?)

fathom hound
gentle rose
#

yeah, chu was fixing the condition part, which was wrong. You said it still feels off

fathom hound
#

ohh

#

everything else is ok now?

gentle rose
#

no, I don't think C# has an and operator word like that, and everything on the second line is outside of an if statement condition entirely

#

may I ask where you got this code?

gentle rose
fathom hound
#

oh im not sure, i dont remember where i saw it before

acoustic summit
#

if (monster.isHardModeMonster.Value)
{
monster.objectsToDrop.Add("StarCrops_AncientStarfruitSeeds");
monster.objectsToDrop.Add("StarCrops_AncientStardropSeeds");
}

fathom hound
#

maybe im confuisng with CP

acoustic summit
#

if everything else would work

#

that'd be the syntax

#

Woops

rigid oriole
acoustic summit
#

If you want to and conditions in c# use "&&" btw

#

if(this && this)
{

gentle rose
fathom hound
#

just confirming

rigid oriole
acoustic summit
#

Well you still need the { } from the private static void

fathom hound
#

okay this feels right SDVpufferkekw tysm SDVpufferheart

gentle rose
#

are you making your own C# mod? because I recommend doing some tutorials to get used to the syntax first

fathom hound
#

yeah totally

#

i need to watch videos, reading yellowbook didnt help me much

#

it wasnt my intention to make a C# mod but there was no dangerous monster framework ):

#

how would i adjust the drop chances? is it currently 100% right now so i can test??

acoustic summit
#

I would add "&& Game1.random.GetDouble() < x" to your if statement, I havent modded for a bit but I think thats the right naming

#

where x is a double representing the chance

fathom hound
#

ah so they cant have 2 different drop chances?

acoustic summit
#

1 for 100% 0 for 0%

fathom hound
#

i wanted one 0.1% and the other 0.77%

acoustic summit
#

if you want that then you can very easily split it into two if statements after

fathom hound
#

ah gotcha thanks

gentle rose
acoustic summit
#

I have never and it has never caused issues for me haha

gentle rose
#

I also haven't touched this side of modding in a while haha

#

anyway I hate vs22 and since it doesn't help me compile atra's mods, I'm officially going back to rider

lucid iron
acoustic summit
#

I never was able to get vs to work for compiling

lucid iron
#

Although i personally use Random.Shared if it's some inconsequential rand

fathom hound
#

did i put it in the right place :x

acoustic summit
#

Thats not to say you wont though!

lucid iron
#

Awa are u still packing yer mods with dnspy LilyDerp

acoustic summit
#

yeahhh

lucid iron
#

I've never stopped being terrorfy

acoustic summit
lucid iron
#

Personally i use dotnet build from command line

gentle rose
#

dnspy, like, the decompiler?

acoustic summit
#

Yep...

lucid iron
#

Which may be easier for u

acoustic summit
#

I decompile then edit then recompile

lucid iron
#

Than a whole IDE

gentle rose
#

why does that start with decompile... do you not have a copy of your own source code

acoustic summit
#

Only in dll format

#

started from an empty shell dll for all my mods

crude plank
#

How did you compile it in the first place??

fathom hound
#

Third times A CHARM

gentle rose
#

that is terrifying

lucid iron
#

But there's actual practical reason why it's bad

acoustic summit
#

There absolutely is

lucid iron
#

It's hard to open source like this

rigid oriole
gray bear
#

soOO i'm using the random token and tyring to make it so there's a very low chance of a certain value applying, the docs say. but i swear i've seen other ways???

rigid oriole
#

Which i don't think was ur intent

fathom hound
#

oh fuck lmao thank u SDVpufferchickskeleton

#

no deff not LOL

gentle rose
#

there isn't just a practical reason why it's bad, I'm kind of shocked it worked without any issues until now pffft

rigid oriole
acoustic summit
#

Well I still dont face like issue issues tbf

rigid oriole
#

Why's it noy underlining red

fathom hound
#

i dont have the extension or something SDVpufferwaaah should i just go back to vscode

acoustic summit
#

Sometimes dnSpy gets pissy and swears that I have multiple dependencies on different versions of things - but opening up a different file and then restarting it usually fixes that

lucid iron
#

LilyDerp pls rider is free

#

Vscode also free but i get bullied for using that sometimes

rigid oriole
#

I feel that apply fn shouldn't compile

#

The param is named value how are u referencing monster

lucid iron
#

You don't need this string

gentle rose
acoustic summit
#

I did download rider like a week ago! Yet to do much mod work since but I do intend to try it out

lucid iron
#

If you want to convert your current mods over

#

I would use decompile to project option in ilspy/dnspy

acoustic summit
#

dnSpdy does let me export to cs project, thats how Ive gotten the sources of my mods

lucid iron
#

And inspect the csproj generated

gray bear
#

there like, has to be a better way to convey a 1/20 chance than this right? right?

gentle rose
#

anaira, could you put the entire code on github and send a link? because I also feel like we're missing something

fathom hound
#

sorry for spamming i deleted my old ones sadcat

lucid iron
#

Bea why is the sushi stall open one in twenty times

#

Also I'm pretty sure u can do this via shop owners

gray bear
#

no no it's just the map tilesheet edit

lucid iron
#

They take a GSQ

rigid oriole
#

I swear this doesn't compile

gentle rose
acoustic summit
#

in ApplyMonsterDrops put 3 new lines "
if (!value is Monster)
return;
Monster monster = value as Monster;

gray bear
#

i want the shop owner to match the sprite. suppose i could do it the other way around

acoustic summit
#

That fixes... one section I think

gentle rose
#

imo just handing someone code without explaining what the problem is or how it fixes it isn't super helpful

acoustic summit
#

true

fathom hound
#

chu explained it to me! i just think im following not so well because idk C# too well :[

gray bear
#

ribbit indeed

acoustic summit
#

In ApplyMonsterDrops you give an NPC type, named value. Not all NPCs are monsters so you need to check that the NPC "value" IS a monster before getting them in the form of the type "Monster"

lucid iron
#

There's is actually a is Monster check earlier

fathom hound
lucid iron
#

OnMonsterAdded

#

The signature of the ApplyMonsterDrops function is incorrect

acoustic summit
#

omg

#

trye

gray bear
acoustic summit
#

Then the type in the input should be monster, no?

lucid iron
#

private static void ApplyMonsterVariety(Monster monster)

acoustic summit
#

yeah

lucid iron
#

This is the code anaira is referencing

gentle rose
#

are you planning on publishing this, anaira? as a personal use mod you can obviously use whatever you want but personally I'd recommend learning enough basic C# to be able to write things like this yourself if you want to actually publish it

gentle rose
fathom hound
gray bear
#

to the docs i go

fathom hound
gentle rose
#

that doesn't really answer my question if you're planning on publishing or not haha

fathom hound
#

its being published with my mod yes

lucid iron
#

I mean i think you can publish the CP part first

#

Then puzzle out the C# at your own pace

fathom hound
#

i was planning on doing that

lucid iron
#

This is just a side feature after all

gray bear
#

ah ok this, solves my problem (i think) thank u iro and chu

#

i blame wiz for all this work

fathom hound
#

thanks everyone for the help aSDVemoteheart

gray bear
#

wait no- i'm trying to randomize just the portrait for the vendor... a it's more complex than i think

lucid iron
#

Isn't mouse friends doing thus

#

Or uh, doragons

#

Not dolphins

acoustic summit
gray bear
#

Dora's uses a standard random block which i want to do to but what i want is to make the random chance be like 1/40 instead of fair and equal chance

fathom hound
mighty ginkgo
gray bear
#

oh! that could work. thank you!