#making-mods-general

1 messages · Page 289 of 1

brittle pasture
#

the sheet is 3x3 (EDIT: 2x2)

strong tide
#

i see nevermind im stoooopid

brittle pasture
#

div it by 3

ornate locust
#

Well nothing's gonna fix you making it a square if it needed to be a rectangle, but I'm a little confused- OH right the collision

strong tide
#

im just incredibly dense lols

brittle pasture
#

actually no it's 2x2

#

the wiki scales it up by 3x

strong tide
#

right i see

rigid musk
#

figured this out - apparently any schedules that aren't set to a full day (i.e. marriage_mon vs marriage_14) don't actually use the 'funleave' dialogue

#

the full day one works but the individual day of the month does not

strong tide
#

now what the heckies am i doing wrong here ?

#

i quite clearly don't understand xD

rigid musk
#

pondering are you using C# to make furniture?

strong tide
#

yuhhh

rigid musk
#

Interesting... unfortunately I can't help there - I only know how to do it using Content Patcher and Furniture Framework :L

strong tide
#

ahh dw ^_^

brittle pasture
#

post the entry? I think your bounding size or collision is wrong

strong tide
#

this is the delim string LogBook_LogBook/decor/2 2/2 2/1/10000/-1/LogBook/0/Mods\LogBook\LogBook

#

its a 32x32 texture, making this a 2x2 no?

brittle pasture
#

and post your png? just in case

strong tide
rigid musk
brittle pasture
#

hmm both the code and the png looks right.
uhhh try changing decor to other?

strong tide
#

it would be SOOOOOOO easily fixed if i could offset the y by -16 xD

#

okeee

#

if this fixes this imma be very sad lols

#

yes that works

#

thats crazy

lucid iron
#

Just furniture things

strong tide
#

but the retro dresser is 2x1 so i actually think i can probz change the bounding box to that? idk

#

but in the files its just -1 so i might be able to do that...

brittle pasture
#

-1 means use the default for the type

#

other has no default I remember

#

collision to 2 1 should work

strong tide
#

hmmm oke

#

btw hating that i gots ta reload every god damn time

#

hot works, y'all are incredible ty for the help ❤️

tiny zealot
#

!reload are you aware of the assorted live reload options?

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

Hey again! I’ve asked this question about curse forge before, and now I’m wondering about moddrop. Is it a good idea to post my mod on moddrop as well, when the time comes? I briefly tried using the platform, and found that I really disliked it, but I don’t know if there are a sizable amount of players that mostly use that platform over nexus.

calm nebula
#

Very few users use it imo

#

The only bright side is that mod drop has automatic mirroring from nexus

hard fern
#

If you don't like it it's probably better to just stick to nexus. It's less work on your part too

calm nebula
#

Tbh - I recommend not looking at download counts

fierce vault
#

I think as long as I don’t set my expectations too high, keeping track of the downloads should be fine.

ornate locust
#

ModDrop just runs... badly for me

#

And the time I went there for some reason and it kinda ran, there was a page of like... one time was just a page of stuff that clearly wasn't mods? Like a picture of some guy's dog or a meme.

gaunt orbit
#

moddrop is mostly just kind of annoying to use

ornate locust
#

dunno what's going on over there

gaunt orbit
#

I used to upload there but stopped because it was a pain in the butt

ornate locust
#

For a while, it'd just do the loading stardrop and then NEVER LOAD

tiny zealot
#

i think if you have the bandwidth, it's thoughtful to host your mods in at least one freely available place (e.g. moddrop, or github) so that people who can't or won't make an account (for nexus or otherwise) to download your mod can still get it.
however, most people don't do this and it will probably help like a single-digit number of users, so you absolutely don't need to

gaunt orbit
#

I would recommend github releases as a mirror for nexus if you already have the source there

ornate locust
#

You don't need an account for the Nexus

gaunt orbit
#

yes you do

tiny zealot
#

yes you do

iron ridge
#

(fwiw, you do on moddrop for >1gb downloads too (maybe not quite 1gb but definitely "large"))

ornate locust
#

huh. I could have sworn you didn't need one. ignore me

tiny zealot
#

ok but you have to try to hit 1 GB. like upload a ton of wavs for some reason, even though ogg is right there

iron ridge
#

mhm

calm nebula
#

Got it

fierce vault
gaunt orbit
#

I would not

ornate locust
#

Oh I see, you can download them up to a minimum of size without an account

calm nebula
#

Uploading ransom three dimensional models

lucid iron
#

4k sdv

#

4096x4096 items

tiny zealot
gaunt orbit
#

not many people use curse for stardew, and it has a generally negative reputation, so if you only post mods there, you're not likely to get much traffic

fierce vault
#

Dual posting, that is

lucid iron
#

I don't really mind nexus being account locked but eventually i do want to setup auto gh releases

ornate locust
#

Dual posting is fine, but I dunno about CurseForge for it.

tiny zealot
ornate locust
#

Yeah ModDrop has just been really flaky about taking down weird spam mods that flooded it... also performs badly at random. In contrast, CurseForge is gross

#

if those are your options, maybe go Moddrop

latent mauve
#

NexusMods with ModDrop as a mirror is pretty common, I think

gaunt orbit
#

you could also mirror it on the stardew forums

latent mauve
#

Curseforge is hemorrhaging users at the moment because their bad practices have kicked off another exodus, so better to avoid it anyway even if the rep didn't bother you

gaunt orbit
#

not many people browse there, but there's still some stuff, and it doesn't have a bad rep the way curse does

iron ridge
gaunt orbit
#

oh moddb has stardew now! I was wondering if that would happen

empty vector
#

I'm trying really, really hard (pinky swear) to find the right UniqueID for the Selph Aquaponics Pond building so I can edit the building cost using content patcher but I'm failing miserably.

[Content Patcher] Can't apply data patch "(CP) Stardew Valley Balance Overhaul - Continued > Include mods/Fish Pond Aquaponics.json > EditData Data/Buildings" to Data/Buildings: there's no record matching key 'selph.Aquaponics_AquaponicsPond' under Fields.

Looking through the source code (https://github.com/zombifier/My_Stardew_Mods/blob/3658a91f5a6ac182597705d263e8fc64eeef3d26/Aquaponics/ModEntry.cs#L130) on github doesn't really make me much wiser

    AquaponicsFishPondBuilding =  $"{UniqueId}_AquaponicsFishPond";```

(Hoping Selph is still lurking but would accept any help)
GitHub

Contribute to zombifier/My_Stardew_Mods development by creating an account on GitHub.

fierce vault
#

The reason I’m considering curseforge is because that was the first place I went to find stardew mods, since I came from minecraft modding first, and I feel like some people might be in the same boat.

It was a bit annoying that I needed to make a nexus account at first. It may reach people who are less knowledgeable about where to find there mods.

ornate locust
#

what on earth

gaunt orbit
#

oh wait, I was thinking of thunderstore not moddb

iron ridge
#

there's also gamebanana

brittle pasture
#

note the extra Fish

ornate locust
#

I think Minecraft is the only game on earth that's stuck on Curseforge mods, and that's because they used to have even worse options as default. Those damn links that had ads in them

#

god I don't miss modding Minecraft

strong tide
#

do i check for the tile type at cursor position to check if the player has used the action button on a custom furniture?

gaunt orbit
iron ridge
#

a lot of minecraft is modrinth now

empty vector
#

I swear i tried that multiple times (but I probably didn't)

ornate locust
#

Well good for them, be free of the curse

brittle pasture
#

oh, my edits to Data/Buildings also runs Late + 1 to make sure it runs after mods like Fish Pondering

gaunt orbit
iron ridge
brittle pasture
#

you might want to be even later lol

strong tide
gaunt orbit
ornate locust
#

I mean, maybe ...three new people

empty vector
#

[Content Patcher] Can't apply data patch "(CP) Stardew Valley Balance Overhaul - Continued > Include mods/Fish Pond Aquaponics.json > EditData Data/Buildings" to Data/Buildings: there's no record matching key 'selph.Aquaponics_AquaponicsFishPond' under Fields.

gaunt orbit
brittle pasture
gaunt orbit
#

oh I see that's what you did, I misunderstood

strong tide
brittle pasture
fierce vault
#

but

gaunt orbit
fierce vault
#

If I’m going to dual post with nexus and another platform, it honestly looks like all of the other options are undesirable anyway. Moddrop, like I said, also looks like it is kind of bad

#

I feel like it would be picking a lesser evil, regardless of what I go with, in the hopes of reaching just a few more users

urban patrol
#

parcy did you say you have it on github?

fierce vault
#

yes

gaunt orbit
#

put it on github!

#

github makes a great mirror, and you can even get update checks for it

ornate locust
#

You have a GitHub? Well heck, there you go

urban patrol
empty vector
brittle pasture
#

the issue is that when your patch runs the entry may not exist yet

#

because it only runs later than your patch

gaunt orbit
urban patrol
empty vector
#

Sorry if this sounds stupid but I haven't used priority before, should this work?:

            "Action": "EditData",
            "Target": "Data/Buildings",
            "Priority": "Late +2",
            "Fields": {
                "selph.Aquaponics_AquaponicsFishPond": {
                    "BuildCost": "10000",
                    "BuildMaterials": [
                        { "ItemId": "(O)388", "Amount": "100" }, //Wood
                        { "ItemId": "(O)335", "Amount": "10" }, //Iron Bar
                        { "ItemId": "(O)338", "Amount": "5" } //Refined Quartz
                    ]
                }
            },
            "When": { "HasMod|contains=selph.Aquaponics": true, "Fish Pond Aquaponics": true, "Buildings": true }
        }```
fierce vault
#

I guess because I still haven’t gotten used to github, I feel tired when thinking about setting it up, though it is a good idea.

The one other reason I’ve thought of when it comes to posting on sites like curseforge, is that if I don’t post it there, someone else could, and unless I’m checking all the time, I and the users there would be none the wiser.

brittle pasture
#

think so, give it a try

empty vector
#

I did and it's giving the same error

brittle pasture
#

weird
do you see the building when you patch export Data/Buildings

ornate locust
#

I'm not sure why anyone would post Stardew mods there. Until this second, I didn't know anyone did. But "I need to post it everywhere so nobody else does" is maybe a little misguided?

fierce vault
lucid iron
#

Well if you are worried parcy you can setup curseforge to sync from nexus

acoustic summit
#

I mean it does happen that people's mods get reuploaded on curse and moddrop without permission

lucid iron
#

Psure lefauxmatt does that

empty vector
ornate locust
#

That does seem like the kind of place you'd upload something without permission, I suppose. I wouldn't say it recommends either site :V

lucid iron
#

I don't think i would care that much if someone repost over there cus it's open source anyways

fierce vault
ornate locust
#

Honestly, someone can always just upload your stuff someplace you don't control. Even if you upload your mod there too

acoustic summit
#

Same, it doesn't really impact me whether it happens or not

ornate locust
#

people can kinda just be dicks

lucid iron
#

I think the prevailing argument is like

#

You should probably post your mod on the site that has 30k sdv mods

#

And thankfully you can auto sync your mod to the site that has 900 mods

ornate locust
#

I just don't wanna post on a site that donates money to crapass political sources. If someone else does, that's thir problem

lucid iron
#

Yep valid choice too

ornate locust
#

but you really just can't control every source someone might upload your stuff

#

So upload where you want, don't upload preventively

fierce vault
#

Because of the auto syncing, I may end up doing both cursforge and moddrop, even though I wish everyone was just on the same page by using nexus. It may or may not be worth it, but I won’t really know that unless I try.

I think you are probably right about uploading preventively not being a good idea, though, because that kind of thinking will never let one rest. I can’t let myself get anxious over it.

ornate locust
#

Yeah, part of modding is, ngl, anxiety management LOL

gaunt orbit
#

the vast majority of people do just use nexus

#

or naver, but that's a whole other can of worms

ornate locust
#

It's like putting art in public, gotta keep the brain demons in check

#

tip: do not dwell on endorsements, it is the number that will make you saddest

brittle pasture
calm nebula
#

They should tbh

empty vector
empty vector
brittle pasture
#

there has to be a solution, we're missing something

calm nebula
#

!patchsummary

ocean sailBOT
#

Can you do these steps to provide more info?

  1. Load your save and view the content that should be patched.
  2. Type patch summary directly into the SMAPI window and press enter.
  3. Upload your SMAPI log to https://smapi.io/log (see instructions on that page).
  4. Post the log link here.
urban patrol
#

if i broadcast an event to all players, do all players get that event marked as seen?

tiny zealot
#

i hope so! but i don't know offhand

urban patrol
#

hmm okay

calm nebula
#

All currently online players

urban patrol
#

i'm struggling with how to implement a plotty storyline in multiplayer. it should logically only happen once universally with any or all players contributing to it, but i'm also concerned about hypothetically leaving any players behind/out of the loop

tiny zealot
#

an event gets marked as seen as soon as it starts, so as long as a player loads the event in it should get marked. i don't know any exceptions to this

urban patrol
#

in that case, is there some other like "global" variable i could trigger, so that i could then give every player a quest?

#

wait yeah i can just have it dependent on the host having seen it, right?

tiny zealot
#

or trigger actions for said players to send them mail with the cliffs notes. something like that

urban patrol
#

mail is much easier to write than events that's true lol

#

okay wait here's a question that may help me understand multiplayer events. logically shane would only get sober once, right, but that's tied to heart level. can player 1 have 0 hearts with shane and have him be an alcoholic, while player 2 has him at a higher heart level and sober?

#

i don't play multiplayer very much and you can tell

urban patrol
#

interesting okay

#

so i should focus more on the emotional beats of the plot line rather than "noooo it doesn't make sense for him to be both at once" for example

lucid mulch
#

In general, multiplayer treats NPCs as if player 1 and player 2 are different NPCs and can be at different states as far as events are concerned

#

The main exception is schedules/home which host controls

urban patrol
#

home meaning the farmhouse? like its upgrades etc?

lucid mulch
#

Think Leo, hosts state with Leo determines living on the island or being in the treehouse in the valley

urban patrol
#

ahh gotcha

lucid mulch
#

Being married/roommate is also global state though

urban patrol
#

that's actually a good example because the end result of this storyline is whether or not an NPC is visible, so it might be simple to just have everything dependent on host and then broadcast events where i can

lucid mulch
#

The intro to Leo is a broadcast

#

And Leo has some vanilla hackery that I don't think mods can use still, where you can talk to Leo and "remember" heart events that you have unlocked but can't easily access anymore due to the other players state progressing his story

urban patrol
#

oooh that would be excellent for me to implement whenever that becomes accessible through CP lol

lucid mulch
#

If someone wants to use it I can expose it as a mod

#

I already have a fleet of multiplayer only mods

urban patrol
#

i don't want to put more work on your plate, but i would be very interested!

#

the character i'm dealing with (spoilers for the tv show dead boy detectives) ||dies in the last episode, but word of god/fanon is that she survives somehow but changed.||

#

so i had an idea that a way to introduce her is for the farmer to undertake a series of quests to conduct rituals and stuff, ending with her becoming visible

#

and it would be awesome for the other players who maybe missed it to have a "here's what you missed on glee" moment for those lol

lucid mulch
#

from Strings/Characters

  "Leo_Memory": "Hey... I was just thinking about that time, back on the island... Do you remember?",
  "Leo_Memory_Answer_Yes": "Remind me",
  "Leo_Memory_Answer_No": "I'm busy",
  "Leo_Memory_6497423": "When we talked about your home?",
  "Leo_Memory_6497421": "When we talked about birds?",
  "Leo_Memory_6497428": "When I decided to move?",

Theres a bunch of rules dictating when this triggers

#

I don't think the wiki even documents this functionality of leo as its quite esoteric

calm nebula
#

You can "just" have an event on farm where the conditions are "host has seen event X, but current player has not"

#

There are plenty of ways to deal

#

Or a mail with the same idea

lucid mulch
#

I wanted to make a framework to expose it years ago, but didn't commit to building it as I didn't know if it would be used

#

or if pathos wants to do it in the 'upcoming game version' instead

calm nebula
#

Just nerdsnipe someone else about it SDVpufferthumbsup

lucid mulch
#

in a week or two I might actually be playing stardew again, so mods being multiplayer friendly is something I have a vested interest in

#

and happy to park my debugger to persure my more important interests

calm nebula
#

Yay! So you'll be back in the optimization mines!

lucid mulch
#

I was in the optimization mines anyway 😛

#

I've been going through scarletts log as a reference to uplift my modlist, only up to the letter L in the content patcher packs
so I should have similar performance characteristics that I can breakpoint debug directly rather than throwing profiler content packs over the fence

calm nebula
#

Good luck!

#

(Work has moved back into crunchy mode. Which I don't mind - i enjoy it - but it does mean I'll be a bit snacked on.)

lucid mulch
#

also got the parts for a new computer I need to get around to assembling which should vastly increase my ram speed and hopefully shake out some weird windows performance issues my rig has

undone hawk
#

Holy crap it's 7pm I've been writing code for nine hours

glossy cargo
#

Alright, is someone good at transpiler patches and can save me? dead

rigid oriole
glossy cargo
#

I am trying to replace this if in JunimoNoteMenu.setupBundleSpecificPage()

#

Literally replace it with a condition of my making. I want to keep both branches intact

rigid oriole
#

let me look at my IL decompile

glossy cargo
#

I would like to replace it with this

#

Which is a Public static method in my injection file

#

IL code looks like this:

            // [1335 7 - 1335 37]
            // IL_0011: ldarg.0      // this
            // IL_0012: ldc.i4.1
            // IL_0013: stfld        bool StardewValley.Menus.JunimoNoteMenu::specificBundlePage

            // [1336 7 - 1336 31]
            // IL_0018: ldarg.0      // this
            // IL_0019: ldfld int32 StardewValley.Menus.JunimoNoteMenu::whichArea
            // IL_001e: ldc.i4.4
            // IL_001f: bne.un IL_00b2
#

So far I've identified that IL_00b2 is the label to the else

rigid oriole
#

you won't need to change the labels

glossy cargo
#

so I need to change IL_0019, IL_001e and IL_001f, to do something like call my method if false go to IL_00b2

#

So far I have like... this

#

trying to write the first yield return line

rigid oriole
#

i highly recommend codematcher

#

rather than doing this manually

glossy cargo
#

but I don't know how to generate an instruction, and how to reference the original this

lucid iron
#

new CodeInstruction

#

OpCodes.Ldarg_0

rigid oriole
#
  1. MatchStartForward to match the 4 instructions (ldarg.0 through bne.un)
  2. you can either replace the first 3 instructions with a no-op or insert a pop after the ldc.i4.4 instruction to get rid of what vanilla does and have a clean stack for your condition
  3. insert a ldarg.0 instruction and a call instruction to your method right above the bne.un instruction

I don't think the bne.un needs replaced with a different opcode but someone may correct me on that

glossy cargo
#

I... am not following this

#

What's a MatchStartForward

rigid oriole
#

i'm reocmmending you use the CodeMatcher library

glossy cargo
#

Where can I find this?

rigid oriole
#

i'm getting a link hold on

glossy cargo
#

I'm not getting a hit on nuget

calm nebula
#

You might as well replace it tbh

rigid oriole
#

it's part of harmony

#

this tutorial page has a simple codematcher example

glossy cargo
#

oh I'll take a look

#

hadnt found that

#

thanks!

trim sand
#

so im not sure this is really the right question but here we go I guess (gods I hope this is the right play to look for help on this.) and sorry if im interrupting ;

hopefully content patcher things alone is within scope for the channel if not sorry for the textwall.

im trying to replicate standard pig digging behavior (chance for extra produce is scaled based on the animals friendship) within the ExtraAnimalConfig mods ExtraProduceSpawnList which it does not natively support for output items assigned to the DigUp harvest method so im trying a hacky solution to get somewhere close for a custom farm animal (technically a personal edit of an existing mod[bad practice I know, might eventually convert it to a separate content pack somehow]) that digs up multiple different items im working on not using standard produce slots for this due to that resulting in digging up exactly one thing on a given day when the hope was effectively 'rerolling' the season based table of results per dig. with all that in mind, im working from the condition field for each produce item trying to figure out if i can even access the animal in questions friendship data to augment the RANDOM gamestate query rather than assigning a static value.

asking here mostly because im neither sure what im trying to do is even possible or if im missing something obvious to accomplish what im after.

rigid oriole
# glossy cargo oh I'll take a look

this might have a syntax error or two with the op codes but this is the general idea i would start with personally

var matcher = new CodeMatcher(instructions);

matcher.MatchEndForward(
  new CodeMatch(OpCodes.Ldarg_0),
  // you can also match the operand here if you want but i've ommitted it
  new CodeMatch(OpCodes.Ldfld),  
  new CodeMatch(OpCodes.Ldc_i4_4),
  new CodeMatch(OpCodes.Bne_un)
  )
  .SetOpcode(OpCodes.Br_false)  // replace the bne_un with a br_false
  .Insert(
  // should insert directly above the bne_un instruction since your cursor is on that instruction
  new CodeInstruction(OpCodes.Pop),  // clear the value of this.whichArea from the stack
  new CodeInstruction(OpCodes.Pop),  // clear 4 from the stack
  new CodeInstruction(OpCodes.Ldarg_0),  // load this onto the stack
  new CodeInstruction(OpCodes.Call, <your method>)  // call your method with "this" as the argument
  );

return matcher.InstructionsEnumeration();
lucid mulch
#

None of my transpilers use codematcher or any helper/wrappers

rigid oriole
#

replacing the first 3 instructions in the match statement with no-ops is also an option

rigid oriole
soft granite
#

What exactly is an "actor"?

lucid mulch
#

In event code? Is the various characters that will appear in the event.

glossy cargo
#

SetOpCode doesn't exist

#

I have SetOpcodeAndAdvance

rigid oriole
#

big L from codematcher

#

just go for the SetOpcodeAndAdvance and then Advance(-1) to move your cursor back one i guess lol

glossy cargo
#

oh there is just Set

soft granite
glossy cargo
rigid oriole
# glossy cargo

this is an option, although I think you'd need the existing label at that location to do this

#

you'd need to save the operand of it before editing it

fierce vault
trim sand
#

^^ is all good. honestly was starting to worry i tossed this in the wrong place and made a fool of myself.

glossy cargo
rigid oriole
#

so if you null it out, you'll be sad

glossy cargo
#

Oh, so I need to grab it

#

I see

rigid oriole
fierce vault
rigid oriole
# glossy cargo So this won't work?

it's also worth noting you want MatchEndForward if you want the inserted instructions to go right before the bne_un. MatchStartForward puts ur cursor at the Ldarg_0 whereas MatchEndForward puts it at the Bne_Un

glossy cargo
#

oh darn, i missed that

#

my bad. Good catch!

rigid oriole
#

it's my own fault for saying two different things lol

lucid mulch
trim sand
vernal crest
trim sand
#

Cool cool. That answers the core of my problem.
Trying to do something that cannot be done out the box

#

Even if it existed I somehow doubt it makes any sense to try using the result of a GSQ for input to a different one

proven spindle
#

Huh, spacecore throws an error on tile action triggers added specifically to the sewer
But the trigger itself still works

glossy cargo
#

@rigid oriole It worked! Thank you so much blob_heart

rigid oriole
#

woohoo! having fun transpiling

glossy cargo
#

It is indeed so much easier to use the CodeMatcher class than manually interacting with the IEnumerable

rigid oriole
#

i did feel a bit bad asking you to throw out your manual transpiler, i just thought this might be easier to debug/maintain

glossy cargo
#

it massively is

#

honestly, my mod has literal hundreds of prefixes and postfixes, but only one transpile, that was written by someone else who PRed it to me (ironically, in that very same method). I started from what they had done, hoping it would let me understadn what is going on better

#

now I have two lmao. One complicated one and one simple one

rigid oriole
#

hundreds is crazy, what are you building?

glossy cargo
#

Archipelago

rigid oriole
#

ah i have heard of that one lol

glossy cargo
#

321 to be precise haha

#

it's a big mod

rigid oriole
#

peeked throught he mod page and it looks very extensive

glossy cargo
#

I've been working on it for about 2.5 years now, and I'm not alone lmao

#

We are 2 main devs, plus 4-5 minor contributors, and that's all excluding the massive team that created Archipelago Core in the first place (my mod is just... Stardew's entry into Archipelago. Archipelago supports hundreds of games, all made by different people)

brittle pasture
glossy cargo
#

it's big kek

#

This CodeMatcher thing does make transpiles much less intimidating though. I might consider them more in the future

#

I do remember some NewDay() related bullshit that could surely be simplified a lot

rigid oriole
#

i have some manual transpilers from before i learned codematacher and i'm afraid to touch them

#

i think i will rewrite them only if something breaks them and i can't figure them out SDVpuffersquee

trim sand
brittle pasture
#

if you want to reroll you'd use only one item and then add an entry for that item to AnimalProduceExtensionData

#

for example, configure your pig to dig up only mushrooms, but in AnimalProduceExtensionData change the item query for mushroom to return a list of items instead

#

adding multiple mushroom entries to ExtraProduceSpawnList would make it dig more than 3

trim sand
#

right... id seen that item query field in the docs. im not totally sure i understand the query format enough to actually achomplish it. since in this case its like 46 options delinated by season. huge queries are miserable.
if nothing else confirms i was on track previously before giving up on making the query work

brittle pasture
#

have you seen the example for "Pigs dig up random minerals instead of truffles"?

#

basically, pigs only dig up truffles (430), but you then edit AnimalProduceExtensionData to replace 430 with something else

trim sand
#

i know its meantioned on the nexus page. but is there actually a code example in the github?

brittle pasture
#

yes, scroll down on the README

#

(side note, yes the API is kinda terrible, but I swear it makes sense when I weaved it into animal data at the time lmao)

trim sand
#

honestly its been fine neough to use.

#

facepalm
those examples are in drop down boxes.

#

ive been working with the readme page for weeks and im only now realizing it

#

for context im working inside Pokemon Ranch's custom animals to give some of its less exciting animals more distinct purpose.
specifically in this case Lechonk and the Eevee, Vulpix and Combee families.
i feel decidedly not smart that the method i was after was basically right there from the start.

#

Welp, back into escape character hell i guess.

brittle pasture
#

this is probably the scariest thing I've ever written (added just now)

trim sand
#

man these feel extremely cursed queries. though thats probally just me finding queries intimidating. also i guess my work has been good for something detailed documentation is a modders best friend. figured for my sanity rather than trying to jam all the season/weather conditioanlity into the query entries it was better to split it into 3 pools for the seasons

brittle pasture
#

do you want me to add an ItemQueries field where it's a list that goes top to bottom and picks the first one that matches to make things easier

trim sand
#

i mean. odds are something to streamline variable outputs would be ideal. the query system as is only really stays clean if your picking items of a specific tag rather than a more static list.

brittle pasture
#

I'll think of something, though expect some time before I release a new version (I'm hoping to bundle a couple more major changes, mostly on the backend though)

trim sand
#

Fair enough.
Honestly I'm just impressed you responded at all with intent to update things at all in response to my question/sharing

#

Ultimately your help with this has been greatly appreciated Selph

#

Oh, one more big question for you Selph while your around.
Does ExtraProduceSpawnList support the Deluxe produce array the same as the default produce?
Asking only because it's not super clear in the docs

brittle pasture
trim sand
#

true.

#

just figured it should be known that it was a confusion of mine from reading the docs.

brittle pasture
#

(I got lazy and don't want to replicate the super complicated friendship math when min friendship + random will do just fine in most cases)

#

(but let me know if that's super important)

trim sand
#

its one of those, matching how the game handles it would be preferred but as you point out min friendship + random covers well enough.

brittle pasture
#

yeah, my opinion months ago (remembered just now) was that 3 or so entries with random + min friendship to simulate the curve > filling in two hard to understand magic numbers

#

admittedly the two magic numbers are fewer lines

rigid musk
#

Does anyone have an example of adding gift tastes for modded items? I thought I was doing it right (and it WAS working...) but it's not anymore

brittle pasture
#

they should just be similar to vanilla items right, or is your question about editing in new entries in general

rigid musk
#
            "Operation": "Append",
              "Target": ["Fields", "Abigail", "3"],
              "Value": "{{ModId}}_FossilizedStardrop {{ModId}}_BlueFlameShard",
              "Delimiter": " "
            },``` specifically something like this (im copy pasting a smaller code snippit to not like.. flood the chat)
#

but instead of for Abigail it would be for my npc

#

it yells at me saying 'AngelOfStars.Mrqifriendable_TheMrQi' has no value, so field '7' can't be modified using text operations. and similar

vernal crest
#

You are putting your TargetField value inside the Target field

rigid musk
#

confused_mathlady I don't... know what that means

#

(also why was it working before and now it isn't? that feels like weird magic)

vernal crest
#

You need both Target and TargetField. Right now you're not telling it to actually find the Data/NPCGiftTastes asset.

rigid musk
#

OH no that's not the full thing

#

here let me send the json

vernal crest
#

Although since it's for your own NPC, why are you trying to drill down into a specific field instead of adding your modded item to your original gift tastes patch for Qi?

rigid musk
#

its not my modded items

#

i think this should explain it a bit better lol, it's for specific mods

#

i realize i probably don't need the conditions for the relationship status in the other entries, idk why i did that

#

again this WAS working, i was actually in the process of testing something completely unrelated when I realized it wasnt WAHsnapped

uncut viper
#

did you recently start a new save for testing the other things?

rigid musk
#

I did start another save to test other things yeah but when testing the gift tastes I also started a new save for it pondering

#

that was a while ago though

uncut viper
#

i just asked bc i wasnt sure if the Hearts token would return a value if you havent met an NPC yet

rigid musk
#

see that's what I thought it was too actually

uncut viper
#

bc otherwise you have no gift tastes that are conditionless

rigid musk
#

but ive slept a few times since meeting him and it kept doing it

uncut viper
#

i would try removing the conditions from the first gift tastes edit anyway

rigid musk
#

catpeek you know button that just might have been the issue

#

i literally dont know why i didnt notice that before though? I was testing it on new saves

uncut viper
#

¯_(ツ)_/¯

rigid musk
#

wack

#

it worked though so yippie

#

how has no one reported this as an issue... CatStare im... you know what, its fine, im not gonna question it anymore

#

you know, it's probably exactly the same as how I didn't realize his 'given gift' dialogue for dating wasn't fixed to account for the new randomized options. I am... very good at this pain

soft granite
#

I remember a SMAPI command that let me refresh my mods while the game is still running so I don't have to constantly rreload Stardew Valley. What is that command?

brittle pasture
#

!reload you cannot add new mods without restarting however

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

with only frameworks(aka no .dll in my mod), can i make a mod that either has small buttons(textured if possible) around a menu that when clicked teleport you to a location, or a list of things that you can click and each one opens up a menu of more things that when clicked teleport you to different location,
(for both) preferably a configurable key you press, or an inventory button you press to open it

brittle pasture
#

adding new keybinds or stuff to the menu needs C#

#

I think you're limited to map tiles and trigger actions without it

#

a map tile opening to a list of destinations for example is vanilla (via the "minecarts" system, which don't have to be minecarts)

spring marlin
brittle pasture
spring marlin
#

is there a way to make a minecart menu have categories?(like you click "farm" or "town", and if you click farm you can go to greenhouse, farmhouse, farmcave, if you click town you can go to pierre's, clint's, etc.)

brittle pasture
#

it is a tile action however, so it has to be a map tile, or with frameworks like SpaceCore/Better Crafting triggered by interacting with a furniture item/big craftable

soft granite
#

I found the issue with the spriteswap mod I was using: the new spritesheet and the target spritesheeet to modify, despite having all the same sprites of all the same sizes, had different canvas sizes. As in, each individual sprite was the same size and they were all spaced evenly from eachother, but one of them had a bunch of unused white space on the bottom of the spritesheet. Would this affect how sprites are called during animations?

old edge
#

Hello, I've been puzzling over this for a while now, trying to figure out how to get that torch light effect on an item... but the only lead i've got is something called SharedLights??

lucid iron
#

its actually a trigger action too now

#

altho i guess i can be the one to add interact method forwarding 3sSmolMiku

#

what u can do with minecart is like

#

setup several networks of minecarts

#

use mmap question dialogue to pick what network to use

vernal crest
lucid iron
#

but i think actual C# mod would be a lot nicer here

soft granite
#

Looking at the original and the modified spritesheets, its the only difference I could see.

vernal crest
#

Ah, the wrong sprite during an event.

soft granite
#

But, it actually did work!

#

That's all I needed to change

vernal crest
#

What did you change?

soft granite
#

I added blank canvas space to the bottom of the new sprite sheet. The "correct" sprite sheet was 64x480, and the new one that was improperly sized was 64x415. I added blank canvas to the new one until the canvas matched

#

and now, the correct sprites are being called.

spring marlin
#

is it possible to add a MMAP question dialogue that is only accessible(either doesn't show up or doesn't do it's action) if you have gone into the secret woods?

latent mauve
#

Were there any sprites below the white space?

vernal crest
#

The fact that the new one wasn't a multiple of 16 was probably the issue

latent mauve
#

Ahhhh, yeah, that would do it

soft granite
soft granite
lucid iron
#

the question dialogue asset natively supports Condition

brittle pasture
#

nevermind SDVpuffersquee

latent mauve
#
Question (string, empty): Question string to display, or none.
Speaker (string, empty): NPC name of speaker.
Condition (string, empty): A Game State Query to determine if this option is enabled.```
lucid iron
#

so u use PLAYER_VISITED_LOCATION on the QuestionDialogueData.Condition

latent mauve
#

Not sure why it cut off the heading but that's for QuestionDialogueData

spring marlin
#

i want to have a dialog that has a number of options based on the number of vanilla buildings you have entered

lucid iron
#

so u can gate the whole thing and also individual choices basically

vernal crest
lucid iron
#

i dont think theres a counter for that

spring marlin
#

how do i add a responce if i have visted a location?

brittle pasture
#

with PLAYER_VISITED_LOCATION as noted above

lucid iron
#

PLAYER_VISITED_LOCATION Current [location names]+

spring marlin
#

how do i add a responce conditionally is what im meaning

lucid iron
#

each response also take Condition

spring marlin
#

oh :P

lucid iron
#

however its a true/false thing

#

so u can add an option bc player has been to secret woods

#

but u can't do any ForEach type thing

#

except by writing out each possible location

#

not rly a mmap specific limitation, just how CP goes

brittle pasture
#

would you even want a foreach since you still have to code the coords for each location manually right

spring marlin
#

is it possible to warp the player right outside their front door with an action?(host goes to farmhouse, other players go to their cabin)

lucid iron
#

no those coords move im psure yggy

#

idk anything that let you have it

spring marlin
#

yea just wondering if there is a thing like "goToHouse host/whatever"(like "warp X Y Loc", but for player hoiuse)

inland cedar
brittle pasture
#

feature request for BETAS, WarpToFrontDoor?

lucid iron
#

did you figure out what you are naming your npc come with you mod DokkanStare

vernal crest
inland cedar
#

dk yet but prob together of farm together SDVpufferparty

lucid iron
#

together kinda implies multiplayer tho bolbthinking

lucid iron
#

ah yea i remember now

#

you can use the item extensions feature for held light at least

#

placed light is something else

inland cedar
#

npc come w you is a good idea too lol

lucid iron
#

another mod concept that had enough iterations where name become hard

#

Companions of Ferngill if we doing the skyrim mod name thing

median forum
#

hi again. rewriting my heart event with quickQuestion and switchEvent, and it's going well except for this

[game] Event 'skipdozer.MP4P' has command 'switchEvent skipdozer.MP44(break)' which couldn't be parsed: can't load new event from asset 'Data\Events\SeedShop' because it doesn't contain the required 'skipdozer.MP44(break)' key.

do i need to edit the seed shop file or do i need to put in changetoTemporaryMap even when i'm just in the seed shop the whole time?

vernal crest
#

If your event takes place in the seed shop the whole time you have to be editing the seed shop file to add the initial event script there.

median forum
#

okay, that makes sense

vernal crest
#

Is your second event actually called "skipdozer.MP44(break)"?

median forum
#

no 😦 the break is supposed to be from the quickQuestion coding

#

guessing i need a space there or something

vernal crest
#

Either a space or double backslash, perhaps. Trying to read Thylak's single line example is destroying me lol

mortal goblet
#

Hi everyone. I met a weird bug that the number of output items didn't appear. I changed the code of Wood Chipper. Is it the reason of Wood Chipper? My another machine works well.

median forum
#

very understandable

ocean sailBOT
#

JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.

If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.

When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.

vernal crest
#

Trying to draw sandals on a sprite is also destroying me D:

median forum
vernal crest
#

It really is. My consolation is that looking closely at vanilla sprites and those from other mods shows that everyone struggles with it. There are simply too few pixels for none of it to look weird when you really look.

median forum
#

which is in fact progress

brittle pasture
median forum
# median forum the space fixed it! now it's breaking in a different spot!

my event's working if there's only two choices/switchEvent spots, but if there's three none of the choices go anywhere and i'm just stuck on the question forever

{{i18n:skipdozerMP408P}}#{{i18n:skipdozerMP409P}}#{{i18n:skipdozerMP410P}}#{{i18n:skipdozerMP411P}} 
(break) switchEvent skipdozer.MP45 (break) switchEvent skipdozer.MP46 (break) switchEvent skipdozer.MP47 (break)",```
#

................nevermind it's broken on the other branch with just two switchEvents

vernal crest
#

Are you sure you need to switch event at all? Are you trying to add different end commands and/or use more questions inside one or more of the branches?

median forum
#

the latter

#

i have this uhhh

#

this going on

#

where the five at the bottom are all different endings to the event (12, 19, 20, 17, 18)

#

so 8 is a question and 9, 10, 11 are all answers

vernal crest
median forum
#

thank you!

tired dirge
#

I am going to attempt to make a custom farm layout

rigid musk
#

lilguydance 1.1.0 of my mod is nearly ready to be releasseddd (i have someone testing to see the balance with the monsters, then im gonna edit my mod page... when nexus wants to load, and badabing badaboom its done)

rigid musk
#

you'll have 5 different endings then?

median forum
rigid musk
#

Not sure how to use switchevent honestly, but I did something similar with my NPCs 13 heart event

vernal crest
#

The only thing I can see that Avi has done that might be important is that the new events she switched to are written like forks, not like discrete events. Are yours written that way too?

rigid musk
#

It had 4 endings (technically 6 if you count the way i did one of them)

vernal crest
#

As in 4 different end commands, Lily?

rigid musk
#

yes!

#

well technically six

#

but yes :D

median forum
rigid musk
#

I can post the monster that is the event code if you wanna look at it

#

(dont judge my movement commands if I do, i tried to use advanced move and i couldnt get the timing right so it has a beautiful janky mess that i associate with character because i didnt want to figure it out any other way)

median forum
vernal crest
#

Is Thylak just wrong then, saying you can't use end commands inside quickQuestion?

rigid musk
#

yes

#

You absolutely can

#

I do it multiple times with a variety of my events actually

vernal crest
#

Let us immediately split this into multiple lines as god intended

rigid musk
#

have fun with that

vernal crest
#

I wonder how the game handles new lines inside quickQuestions. It handles them inside question dialogue.

median forum
#

i was hiding it earlier because i was worried about getting bullied but i'm writing a pierre marriage mod

#

even though only like seven people like the guy

gray bear
#

i mean to each their own dude

rigid musk
#

I found the link i was looking for

median forum
#

when i saw the anti-pierre subreddit i figured it was a bad sign

vernal crest
#

You appear to be using forward slashes inside your quickQuestion

median forum
#

ah damn it

rigid musk
#

\ ?

#

ope

#

i didnt know it would make one of those vanish...

#

also yeah if you do the regular / in your quick question event it tells the game that you're going back to the regular dialogue script

vernal crest
#

That might just be me reading it wrong, actually. Thrown off by the indentation.

rigid musk
#

all of the commands within a quickquestion should be done with \ other than when you start another quick question I believe

#

(with two of those since it likes to get rid of the other one)

#

\\

median forum
#

right yeah

vernal crest
#

At least for the first quickQuestion he only has one command inside each of the answer scripts

rigid musk
#

hm I'm not sure how it works when using switch event honestly pondering

#

if that changes anything, anyways

median forum
#

yeah, that's what threw me off and made me think i could use / instead of \\

rigid musk
ornate locust
#

live your dream

rigid musk
#

hah As the maker of said qi romance mod, I literally cannot say anything

#

(as if that wasn't obvious from my profile picture)

median forum
rigid musk
#

Yeah but theoretically he would develop/show a different side of him with a relationship and I wanna find it out vibincat heehoo

median forum
#

i find most of the vanilla romanceable characters too young/immature for me, a late 30s man with a job and a mortgage

vernal crest
#

You are using (break) when you're not inside a quickQuestion, I think?

median forum
#

!

rigid musk
#

well technically the breaks are showing the different answers to each quickquestion which are the switchevent commands? I think?

#

actually I see what you mean

vernal crest
#

Here on line 61, this is not inside quickQuestion. You have switched to the MP41 event.

median forum
#

mfer

urban patrol
vernal crest
#

My last hurrah with SVE is marrying Olivia

rigid musk
#

just cause you make a mod for it doesn't mean you dont prefer the older characters, it just means you saw a lack of content kekw or something i dunno

#

Olivia....

vernal crest
#

Sigh. Hiria looks like she's wearing puffling pants.

vernal crest
median forum
#

whoops

#

i'm very good at doing things incorrectly

vernal crest
#

This stuff is very confusing. I'm not even totally confident that you definitely are outside the quickQuestion after switching to a new event. I'm just reasoning it.

median forum
#

i'm trying it; be nice if this were it

#

i have to go back to work tomorrow night so i don't get to code again for a while 😔

ornate locust
#

I'm making an older gay guy but he's not romanceable, sorry LOL

median forum
#

i appreciate seeing any older gay guys fwiw, godspeed to you

vernal crest
#

I am still going back and forth on whether to make Hiria romanceable

hard fern
#

I decided against making any of my npcs romanceable because i dont want to write marriage dialogue XD

ornate locust
#

extremely fair

median forum
ornate locust
#

I'm fighting myself on rival hearts

vernal crest
hard fern
#

🤔 but when i think about it, a good chunk of my NPCs (read: 3) are widowed

median forum
urban patrol
#

i’m looking at the mountain of work it takes for romance and going nooooo

ornate locust
#

it's already annoying that he flirts with the wizard because it ended in me putting in a "BUT NOT RASMODIA" switch for a lot of stuff

#

extra gay coding

vernal crest
#

I'm not sure you should have the final (break) in any of the quickQuestions

rigid musk
#

I did not add compatibility with Rasmodia but I probalby should, since Qi has beef with the wizard :L

mortal goblet
rigid musk
#

but then I would have to add the switch thing for it and ... I would rather explode honestly

ornate locust
#

it's inconvenient

rigid musk
#

Also @median forum if you want to just use quickquestion i can help you do that instead

median forum
vernal crest
#

He is using quickQuestion Lily!

rigid musk
#

it was already inconvenient to add both the optional title and optional player title ... i dont wanna do it for the wizard too

#

Oh no no I meant only quickquestion!

#

Like instead of quick question to the switch event, just using the quick question option to have multiple endings

vernal crest
#

The reason he's using switchEvent is because he is nesting quickQuestions. Are you saying that's also possible?

median forum
#

maybe that'd be a good idea since i can't solve this

rigid musk
#

In the event i posted earlier I use multiple quickquestions :3

median forum
#

oh yeah i need to look at your code

vernal crest
#

So in yours Lily, choosing route 1 in the first question ends the event, whereas choosing route 2 continues the event and leads to a second quickQuestion?

rigid musk
#

yes! :D

ornate locust
#

At least just swapping the name/pronouns isn't too bad, it's more annoying having alternating flirting and not flirting and such.

#

but I am committed to gay

rigid musk
#

I mean I kinda get that too, having alternate versions of every dialogue based on something is... a pain. I did the same thing with Qi's events from 6 hearts up (people romance him so fast it's kinda terrifying) as well as for every piece of mail he sends

#

using alternate titles and wording based on how he feels about the player

#

makes my brain hurt tbh but I did it

final crescent
#

Heya is there any documentation on how to i18n-ify the ingame GMCM or just in general?
(for other translators to edit)

median forum
#

please help me with this, yes. every event i wrote for this mod has all the multiple branches like this one and i am going to weep

final crescent
#

thank you very much

vernal crest
#

Hmm. Only one of your routes in the first question leads to another quickQuestion, Lily, but both of skipdozer's do. It looks like yours is actually exiting the quickQuestion before starting the second one but his wouldn't be able to.

rigid musk
vernal crest
#

(If I am reading yours right now that I have made more of it multi-line.)

tired dirge
#

i am clearly failing to understand what I need to do. and don't have time right now for a lesson. so i guess its a project for when i get home

vernal crest
tired dirge
#

yeah

#

first time doing this kind of thing

#

but have to start getting ready for work soon.

hard fern
#

SDVpuffersweats ok now i will finally compile all my NPC information into one folder... This mod will take forever but if i just think about it hard enough it will magically appear before my eyes

vernal crest
tired dirge
#

yeah i have those tabs open

#

im trying to understand it. one step at a time

vernal crest
#

You should just be able to copy and paste the example into an empty content.json file and change the values to match your own files etc.

#

That's what I did to make my custom farm.

tired dirge
#

i should of looked down haha

vernal crest
#

Hopefully it will be a bit easier with an example lol

mortal goblet
#

where is the complete list of mail flag?

median forum
# mortal goblet where is the complete list of mail flag?
Stardew Modding Wiki

Currently working to ferret out where all these flags are added from
Please note that this is just what I was able to pull from the source code so far. I have no idea what some of these are, especially for the 1.5 content. Any fixing, additions, or further explanation is welcome
pamHouseUpgrade - When...

spice inlet
rigid musk
#

okay @median forum im not quite done with my page yet but I'm gonna take a break from it, where do you want to start?

median forum
#

i guess with the event i'm on and making it work. is it easier to do DMs (is asking that against the server TOS if so i'm sorry)

#

i can pinpoint the two points my 4 heart event is breaking

rigid musk
#

Asking is not against the server rules no! and if it's easier for you we can go there for sure

#

Doesn't matter to me and I don't think anyone would complain here either :)

median forum
#

bless

whole raptor
rigid musk
#

iblinks That would be ... very nice

whole raptor
#

I'll take a look later then SDVkrobusgiggle Or should I wait for an update I saw you mention higher up? (if it adds more stuff)

rigid musk
#

hah I suggest waiting until tomorrow afternoon(ish)

#

or after that anyway

#

I have someone who's gonna test out the Arena again to make sure the spawns are alright, and then it's go time

whole raptor
trim sand
#

stupid question, when another content pack registers an item using the {{ModID}} formatting, what exactly is that retrieving from elsewhere in the content pack to insert?
wondering because im trying to reference some item ids that are setup this way from another content pack. since obviously i can't refrence another mods ID in the same way if at all. is it just the "UniqueID" from inside the content packs manifest?

rigid musk
#

you would look in their manifest yeah

#

it would be their uniqueid _nameofitem

#

in this case uniqueid_DawnsingerToadstool

#

if you were pulling from one of my items for my qi mod it would be like AngelOfStars.Mrqifriendable_QiArenaWarpTotem (or wahtever item you were looking at anyways)

trim sand
#

"Morghoula.AlchemistryCP_DawnsingerToadstool" is certainly gonna make the gamestate querries reading item IDs look horrible but i don't have to look at them once they work

rigid musk
#

eeeeeexactly

#

just pretend it isnt an abomination and you're good!

trim sand
#

But also it's horrible spaghetti.
But it's also my horrible spaghetti.
Something about turning Vulpix and Rowlet families from Pokemon Ranch into "Witches Familiar" farm animals just feels right

next quarry
#

how do I check the state of the DynamicToken while ingame?

#

nvm found it <3

median forum
#

i keep landing on new and exciting points where the game breaks. learning is legitimately fun

vernal crest
median forum
#

75% of the way!

#

which is more than it was before!

#
   at StardewValley.Event.answerDialogue(String questionKey, Int32 answerChoice) in D:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Event.cs:line 7011
   at StardewValley.Menus.DialogueBox.receiveLeftClick(Int32 x, Int32 y, Boolean playSound) in D:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Menus\DialogueBox.cs:line 364
   at StardewValley.Game1.updateActiveMenu(GameTime gameTime) in D:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:line 5082
   at StardewValley.Game1._update(GameTime gameTime) in D:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:line 4269
   at StardewValley.Game1.Update(GameTime gameTime) in D:\GitlabRunner\builds\Gq5qA5P4\0\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:line 3454
   at StardewModdingAPI.Framework.SCore.OnPlayerInstanceUpdating(SGame instance, GameTime gameTime, Action runUpdate) in SMAPI\Framework\SCore.cs:line 1095
[game] WARNING: Mismatched UI Mode Push/Pop counts. Correcting.```
#

i took this to mean that i screwed up in the dialogue

#

so i'm trying to see what i did

vernal crest
#

Count your answers and answer scripts for the quickQuestions. You might have a mismatch.

median forum
#

that would not be surprising given the amount of times i've copied and pasted everything around to different formats

vernal crest
#

I'm very curious about the nested quickQuestions working.

#

Does that error only happen if you pick certain answers, by the way?

median forum
#

yup!

#

which helps in figuring out where i made the mistake

trim sand
#

okay... having a log is useful... but also i have no idea what this is telling me is wrong. file for context : https://smapi.io/json/content-patcher/e64948a1baa44e2696b50481ec9e7055
but also second image is the block of stuff that was changed to trigger this error.
im assuming this is just some highly specific formatting its expecting?
gods this whole thing is making me feel dumb.

orchid glade
#

I suspect the answer to this is no, because it's not liested on the modding schedule page, but can you put a warp in a schedule???

golden spire
#

no, but at what point are you wanting them to warp? at the very start of the day or during the day to get somewhere quicker?

vernal crest
trim sand
#

was really hoping it wasn't a brackets thing

orchid glade
golden spire
#

that you can do, by using 0 schedules

orchid glade
#

I haven't tested them properly to find out, just troubleshooting

#

oh just 0 at the start?

golden spire
#

yes

orchid glade
#

Is this on the modding schedule page and I missed it, or whould it be added?

golden spire
#

will have to sleep a day, if you're testing on the day you're looking at it

orchid glade
#

I usually debug to the day before the thing i want to test then sleep on the ground

golden spire
#

a quick glance of the wiki, I can't see it mentioned.

It is a bit of a hidden feature

vernal crest
#

Does vanilla even use 0 schedules?

orchid glade
#

So like this "Fri": "0 Forest 90 4 2 square_9_9"?

vernal crest
golden spire
#

It does for green rain and Leo has a couple

orchid glade
#

I'll look at Leo

golden spire
#
  "Tue": "0 LeoTreeHouse 2 2 0/900 ArchaeologyHouse 18 12 0 leo_sit_up \"Strings\\schedules\\Leo:school\"/1400 Town 91 104 2/1620 Mountain 30 9 3 \"Strings\\schedules\\Leo:dinner\"/2000 LeoTreeHouse 2 5 3/2200 LeoTreeHouse 5 4 1 leo_sleep",
  "Mon": "0 IslandHut 7 7 0/930 IslandSouth 7 9 2/1400 IslandEast 21 11 2/1700 IslandHut 6 6 0/2100 IslandHut 11 10 1 leo_sleep",
orchid glade
#

What, my Leo says this: { "rain": "900 IslandHut 7 7 0/1100 IslandEast 21 11 2/1400 IslandHut 7 9 2 square_3_3/1700 IslandHut 6 6 0/1900 IslandHut 4 8 0/2100 IslandHut 11 10 1 leo_sleep", "Tue": "900 IslandHut 7 7 0/1030 IslandSouth 38 31 2/1330 IslandEast 7 44 2/1700 IslandNorth 53 71 2/2000 IslandHut 11 10 1 leo_sleep", "Sun": "900 IslandHut 7 7 0/930 IslandShrine 21 23 2/1400 IslandEast 21 11 2/1700 IslandHut 6 6 0/2100 IslandHut 11 10 1 leo_sleep", "spring": "900 IslandHut 7 7 0/1030 IslandEast 21 11 2/1200 IslandSouth 7 9 2/1500 IslandNorth 14 15 0/2000 IslandHut 11 10 1 leo_sleep" }

golden spire
#

leomainland

orchid glade
#

Ohhhh didn't see that

golden spire
#

same initially

trim sand
# vernal crest If you want a hand checking, I can help compare yours with Selph's documentation...

https://github.com/zombifier/My_Stardew_Mods/blob/master/ExtraAnimalConfig/README.md this is what ive been working off for extra animal config functionality. examples are at the bottom. and ive already shared my whole file. my brain is so fried. but this is like so close to working i think... admittadly i think this was the brick wall i hit last time with these item queried animal outputs.

GitHub

Contribute to zombifier/My_Stardew_Mods development by creating an account on GitHub.

orchid glade
#

That's more what I need. Leo's spawn point is changed to mainland in character data after xyz event, and I was trying to use that with a bunch of conditions, but it seemed to not be working

orchid glade
calm nebula
#

Spawn points don't work right

#

Leo has special c# too

#

The tl;dr is they are checked the previous day

#

So the game state (the day of month, etc) is the previous day

orchid glade
#

Oh perhaps the wiki should say that then too 😮

calm nebula
#

0 schedule points don't do animations or text

vernal crest
calm nebula
#

"Fri": "0 Forest 90 4 2/610 Forest 90 4 2 square_9_9" (so repeating the position at 610 to have the animation)

orchid glade
#

Yes that would be it

trim sand
orchid glade
#

And do you need the 610 if you didn't want the animation?

calm nebula
#

No

vernal crest
calm nebula
#

(Or schedule dialogue)

orchid glade
#

I have another that would just be "summer_Fri": "0 Beach 90 4 2"

calm nebula
#

One final thing

trim sand
#

notably, it uses it to set its treasure boxes harvest tool to DigUp

#

which doesn't even actually work because of other configuration problems

calm nebula
#

If you use when conditions and 0 schedules

#

It's fragile

orchid glade
#

Ohhhh dang

calm nebula
#

It's because 0 schedules are weird

golden spire
#

and I'm sure they are the cause of some npc duplication

calm nebula
#

So if you use When conditions and 0 schedules, make all your schedules 0 schedules

orchid glade
#

These need to have an event seen condition

calm nebula
#

Oh, that is okay

orchid glade
#

All my schedules, or just all in the particular editdata?

calm nebula
#

The real issue is if you can have (0 schedule called) -> CP changes things -> (new schedule is not a zero schedule)

vernal crest
calm nebula
#

In that case, make every schedule a 0 schedule

#

But like, you should be fine, these are unlocked and don't relock

calm nebula
#

(If that makes sense?)

trim sand
#

Their all super simmilar

orchid glade
#

It kinda does... though also not. So I need to add something to change all my schedules when I add the 0 one

vernal crest
# trim sand Yep. Basically that.

Okay so you seem to have nested ExtraProduceSpawnList inside AnimalProduceExtensionData but they're listed as being at the same level in the documentation.

orchid glade
#

Or just have them all 0 to start with

trim sand
#

It was my understanding that ExtraProduceSpawnList was a field inside of AnimalProduceExtensionData

orchid glade
#

It sort of defeats the purpose of having a spawn point then

vernal crest
trim sand
#

Oh wait I'm confusing the AnimalExtensionData and Produce extensionData

vernal crest
orchid glade
trim sand
#

whats extra weird is i had it working before. then i realized the reason my queries werent working was because they were in separate blocks on their own at the same level as the AnimalProduceExtensionData... so i guess in the process of cleaning that up i accidentally messed up the brackets such that... wait no im not even sure why the old code worked before since the ExtraProduceSpawnList was in the same place...

calm nebula
orchid glade
#

That seems like it would make sense, thanks 🙂

vernal crest
trim sand
#

i mean the extra produce slots being added were working.

#

i know that much

#

would certainly explain the intermittant strange behavior like one of the animals not respecting the harvest tools that setup for it

vernal crest
golden spire
#

I'm not familiar with it, but it doesn't look like it's nested in the right spot to me

trim sand
#

honestly ignore all of this specific example. i didn't realize it was different that litterally every other file i had setup. but all of them are erroring the same way

vernal crest
#

I honestly don't see how any of that combee AnimalExtensionData stuff could be working. It all looks wrong to me.

orchid glade
#

@golden spire If you remember that schedule randomisation I shared a day or so ago, I'm having to change it. I had randomisation at two points in a single day's schedule, but it turns out they both resolve as the same random outcome. So I'm going to stick with one randomisation per schedule key.

vernal crest
golden spire
#

I assume the same thing I do with Ayeisha... I just pick 1 whole schedule for a specific day and don't randomise anything within the day

trim sand
orchid glade
# golden spire

I saw that, it was the inspiration for what I did. Are those dynamic tokens set up in the content?

orchid glade
# golden spire

I couldn't figure out what the @@ at the beginning was for

trim sand
#

okay. turns out Combee/Rowlet having their extra produce unintentionally a layer deep when it shouldn't have been was the entire source of the problem

vernal crest
# trim sand Odds are it probably isnt. But it also wasn't erroring until I made the same pos...

It's possible for things to fail silently, where they don't produce an error but they don't actually give the desired outcome. You might have run into that before. One reason I'm saying I don't think any of it can work is because the table listing the fields for AnimalExtensionData (the top level asset) doesn't mention being able to use qualified item IDs as a field, yet that's what you have.

golden spire
#

that's just the input separator I use.

The main actual schedule does this:



{
    "LogName": "Schedule",
    "Action": "EditData",
    "Target": "Characters/schedules/Ayeisha",
    "Entries": {
        "spring": "{{Random: {{PossibleSchedules}} |inputSeparator=@@ }}",
        "winter_15": "....",
        "winter_16": "....",
        "winter_17": "....",
    }
},

#

and all the schedules are in the dynamic token block

trim sand
#

notably all the ones i had working before are in fact setup the way you described it as needing to be. and fixing combee to not be wrong has stopped the others from erroring the same way for some reason

vernal crest
#

So is it all working as intended now?

orchid glade
trim sand
#

unconfirmed. needing to fix a bad JSON issue first

golden spire
#

yes, they're in their own block and not part of changes []

  "DynamicTokens": []
#

so I also have this in my DynamicTokens:

      {
         "Name": "Tilesheet",
         "Value": "vanilla"
      },
      {
         "Name": "Tilesheet",
         "Value": "earthyrecolour",
         "When": {"HasMod |contains=DaisyNiko.EarthyRecolour": true}
      },
      {
         "Name": "Tilesheet",
         "Value": "starblue",
         "When": {"HasMod |contains=Lita.StarblueValley": true}
      },
      {
         "Name": "Tilesheet",
         "Value": "wittilynamed",
         "When": {"HasMod |contains=Acerbicon.Recolor": true}
      },
      {
         "Name": "Tilesheet",
         "Value": "flowervalley",
         "When": {"HasMod |contains=kaya.floralvalley": true}
      },
orchid glade
#

Oh nice

trim sand
#

UI infosuite says its spawning dragonroot, instead dug up an ink cap

vernal crest
#

Is that a good or bad thing?

trim sand
#

desirable

#

dragonroot is the only entry in the list for them to forage, but when spawning dragonroot it queries for alchemistry's seasonal mushrooms and forage with dragonroot being in all seasons

mortal goblet
#

is that possible that if player had a thing like furnace/ancient fruit/gold ore, send a mail to player? Can i achieve this only with CP ? I didn't find it in Game state queries.SDVpetslime

gentle rose
mortal goblet
#

is it an another frame?

lucid iron
#

You can do it unreliably in vanilla

#

LocationChanged trigger + PLAYER_HAS_ITEM + AddMail

#

Unreliable because it fails should the player not switch map with the item in their inventory

#

BETAS doesn't have a item obtained trigger either (it's quite annoying to make one)

#

Extra machine configs does have action on collecting

#

But then you are limited to specific rules from which you obtain item

mortal goblet
#

that helps. I will try this unreliable way first..

#

and can this way works?

lucid iron
#

It's not recommended to use dummy events

#

Player get interrupted by it

#

And there's not really a difference to just use trigger actions

next quarry
#

so...
I have this:

"Custom_Saloon_Celler_Backroom_Miihau.3": "{{i18n:LOG1.ftext}}%action AddMail Current {{ModId}}_LogSeen received%%"
```as a Letter that you can interact with on a Map but it does not do the action 
the stuff is just in there as pain text:
#

do letter that you interact with on maps behave differently? or am I doing something wrong? SDVpuffershy

gray bear
#

try adding a space before the action? also should it be one % at the start and two in the end?

lucid iron
#

They aren't letters

vernal crest
#

If dialogue commands work there, it needs to be $action

lucid iron
#

Assuming you are using Action Message?

calm nebula
#

Well that is definitely the letter menu

next quarry
calm nebula
#

But there are about three letter constructor

next quarry
calm nebula
#

That one does not do thr parsing no

#

Ask Pathos 🙈

gray bear
#

is there a mail modding wiki page?

lucid iron
#

Huh wiki is wrong then, it says same syntax

calm nebula
#

Maybe an atra is wrong

lucid iron
#

Anyways miihau u can use the spacecore tile trigger action

calm nebula
#

A atra us also running late

next quarry
lucid iron
#

I'm gonna go look in the decompile brb

next quarry
#

🙏🏻 thank you

next quarry
lucid iron
#

Yeah the map version only applies formatting

#

Doesn't apply item or action

next quarry
lucid iron
#

Probably intentional cus u can read map letter multiple times right

next quarry
#

yeah

lucid iron
#

The spacecore thing just lets you trigger a Data/TriggerActions entry

#

Though hm how do u display letter then

next quarry
#

I might change it to Action Message and see if that works first?

#

less pretty formatting but oh well, if it works

lucid iron
#

I don't know if that one parses $action either

next quarry
lucid iron
#

You can possibly use this lol

#

With a single response it gets special cased into immediately running that

versed wyvern
#

$action could work if you use BETAS to trigger a fake dialogue box there but I have no idea how you could keep the letter background

lucid iron
#

And it will run both trigger action and tile action

next quarry
#

I'll try stuff until it find success or give up. thanks for the help guys!

sage hemlock
#

Hello, I'd like to ask a quick question about something in the wiki.

#

In the maps modding page it says that maps can't have more than 200 width, but I'm making a mod that users can configure the size of a map and I tried generating a map with a width of over 300 and didn't have an issue.

#

Is the wiki outdated or is there another reason why my case works?

lucid iron
#

Trees break at that range

sage hemlock
#

Even planted trees? The map I'm editing is the greenhouse...

lucid iron
#

I think it's terrain feature

#

Which covers wild tree fruit tree etc

sage hemlock
#

OK, so it's not an error per se, it just breaks some stuff...

lucid iron
#

It is also just heavy load too

sage hemlock
#

OK, got it.

#

Thanks for the answer.

gaunt orbit
#

There's a width limit? I thought there was only a height limit because of depth math

sage hemlock
#

That's what it says on the wiki.

gaunt orbit
#

Doesn't draylon make maps wider than 200?

sage hemlock
golden spire
#

Sometimes it's a user-end thing where the actual limit is different between users but there is a safe limit.

However I can't remember what it is for maps.

sage hemlock
#

So it might work fine for me if it's wider bu not for other users... I 'll just stick to the 200 that says on the wiki then.

golden spire
#

200 is pretty large

sage hemlock
#

I'm making a custom sized greenhouse, the user can choose to make it as big as they want. I just don't want the mod to not work for reasons like these.

lucid iron
#

A problem with that is that if you have something at X=100 and then you shrink back to wifth=50 the something will get stuck there

crude plank
#

Chu when do you sleep, i feel like i find you somewhere at all times of day or night

lucid iron
crude plank
#

i see, you got a great system going

calm nebula
#

Just for fun, do what I do

#

Just don't slept

golden spire
#

just tape to keep your eyes open

brittle pasture
#

not sure if intended; wood chipper outputs are variable and I don't see anyone else reporting this issue anywhere on the interweb

calm nebula
#

Report it to the forums lol

calm nebula
#

Even more caffeine

#

Insane amounts of caffeine

brittle pasture
#

remind me in 9 hours to report the wood chipper issue

patent lanceBOT
#

yarp (#6633800) (9h | <t:1744763018>)

elder coral
#

Hey folks! Sorry if this isn't the right place to ask, but I am trying to update an abandoned mod to work post-1.6.9. I've got limited experience with C# and I can't find a good resource on SMAPI for the error I'm seeing. I've also looked through the 1.6.9 migration page and not found the answer. Would this belong more in #1272025932932055121 or can I ask questions here?

tiny zealot
#

this is the correct place, since you're working on a mod and not just looking for how to fix your install

lucid iron
#

!log

ocean sailBOT
#

Important note: Your computer username may appear in the log. If your username is your full name, please be aware of this before uploading it.

Please share your SMAPI log file. To do so:

  1. Open this page: smapi.io/log.
  2. Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
  3. After uploading, it will show a green box with a URL to share. Post that URL here.

Please do it even if you don't see any errors. This has useful info like what mods and versions you have, what the mods are doing, etc. If the issue didn’t occur in your last session, please load the game to the point where the issue occurs, then upload the log.

lucid iron
#

Show us the error via log parser

elder coral
#

lemme grab it! ty!

elder coral
#

https://smapi.io/log/64eadf948ffa472daef30f7d59a30ec0

The mod ItemAddition is the one having this problem in Display.MenuChanged, because it looks to see if the Menu is a shop and add items to that shop via itemPriceAndStock.Add, which says has a missing field exception. I saw Happy Home Designer had this same issue in November but couldn't find how they changed it.

ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Home, with 5 C# mods and 0 content packs.

lucid iron
#

Did this field become public NotteThink

calm nebula
#

No

#

Just recompile it

#

It's a struct to class change or class to struct change

#

Smth like that

lucid iron
#

Btw what does this mod do? I was unable to find it anywhere

urban patrol
#

if i give the player control during an event, can they use tools? or is it only running around and interacting

#

i have an idea for the player having to fight off ghosts during a seance but idk if it’s possible

tender bloom
#

maybe try the haley cutscene and see?

#

the lost necklace one

latent mauve
#

Isn't Haley's done through C#?

#

As far as the player control bits

#

I feel like that's been mentioned before in here but I could be misremembering

lucid iron
#

Need atra's unreleased mod

tender bloom
#

oh yeah, i was already assuming this was a C# project

#

If it's not then I'm not sure this is possible

#

if it's with C# you should be able to make the player be able to fight off ghosts, it's just a question about whether it works out of the box by copying the haley event or if it needs further tweaks

urban patrol
#

oh yeah it’s content patcher unfortunately. that’s okay though, i can just have it be a normal event

empty sail
#

im making a dialogue mod but confused on how i make the lines completely random, ive seen how to make it so theres a random choice between a few that i set that could appear on any specific day but how do i make it so my dialogue line has a random chance to be said on any random day

golden spire
empty sail
#

and then just do the dialogue as normal after that

golden spire
#

well you need to set the values to randomise between

#

{{Random:value1, value2, value3, value4}}

empty sail
#

sorry im quite new when it comes to this sort of thing

#

so how do i designate a value to a line of dialogue is that possible with just a content json?

golden spire
#

depends on how exactly you want to do it, there's multiple ways. Randomising the whole line, or just part of it..

"I have a friend named {{random: Paula, Rachel, Peter, Michael}}, they have a pet lion!"

#

that's just an example if you wanted to just randomise 1 thing inside it

empty sail
#

ok so i can either choose to randomise the whole thing or just parts

#

thank you

golden spire
#

or re reading what you said, I think you were wanting something like

{{Random: Mon, Tue, Wed}}: blah blah

that would just be randomising the day a line is said

lucid iron
#

I don't think there's really any way to put lines into a generic any day pool

#

Doing the Random on weekdays is your best bet

empty sail
#

so if i wanted to randomise it a bit more specifically if i do something like {{Random: Mon2, Tue2, Wed2}}: would it randomly show it on those days if theres 2 or more hearts?

empty sail
golden spire
#

you can put anything in {{random}} it's just adding that "text" in the place of that spot

empty sail
#

ok i see

#

thank you this has helped me alot

rough lintel
#

is apryll not in maincord anymore? i had a polysweet question T_T

calm nebula
rough lintel
#

or issue i guess. whatever you wanna call it

lucid iron
#

Hm i guess not

#

You will have to report to nexus

golden spire
#

Apryll seems to be in the ES/Ridgeside/Zuzu discords

half tangle
#

Can I get the bounding box or even just the size of an IClickableMenu somehow?

#

ignore me...

#

how did I not see it literally has a width and height

calm nebula
#

Don't worry. I don't trust atra either

lucid iron
#

Yeah

#

Also x/yPositionOnScreen

half tangle
#

I was relying too much on autocomplete and failed to spot it... then looked at my decompile for 2 seconds

rough lintel
golden spire
#

:p

lucid iron
#

If it's a bug report on nexus makes the most sense

undone hawk
#

Figured out the lag for my mod with More New Fish! The dev decided to make the Fish catchable in every location in the game, so with mods it has to iterate through hundreds of locations in detail

#

So I might just straight up ban that specific fish from being parsed entirely

golden spire
#

D=

odd ginkgo
#

Hey all, I'm trying to make a location closed on certain days of the week, the same way that Pierre's is closed on Wednesday. Does anyone know where in the game files that condition is located? I looked at the town map in Tiled but there's no condition on the general store itself

uncut viper
#

the seed shop closing on wednesdays is hardcoded

odd ginkgo
#

SDVpufferwaaah shoot

brittle pasture
#

You can do conditional map patches instead

uncut viper
#

i think your best bet is just conditionally patching the tiledata to not be a warp anymore on some days

brittle pasture
odd ginkgo
#

alright, I'll do some creative thinking and probably do a map patch... tbh I was having trouble adding conditions in Tiled for when a shop opens, so I thought I could make the building where the shop opens restricted instead

#

it's probably easier to just actually figure out the shop haha

undone hawk
#

So even if you CAN'T fish somewhere, the UI will tell you that you can catch a fish there

#

Because technically you can due to the way the mod dev did this

brittle pasture
#

also wdym everywhere, is it just because it's in Default

undone hawk
brittle pasture
#

is this the fall 27 fish? because I opened the files to check and it's Default

uncut viper
#

i took on a little side project for fun (still a bit messy, gonna try and refine it further and make it interactable and put it up on my site later) but in case anyone was curious, heres what a dependency graph looks like for every single stardew mod that exists in the monthly mod dump

blue nodes are content packs. purple nodes are C# mods. orange are unknown (not in the mod dump, so probably from naver or kofi or just deleted from nexus/curseforge/moddrop but things still depend on their uniqueid). the bigger the node, the more mods that depend on it.

can you guess which one is content patcher?

undone hawk
brittle pasture
#

I still think it's better to handle Default fish properly, because otherwise you'll be chasing weird fish entries until the end of time

rough lintel
#

LMAO

brittle pasture
#

damn, my guess was BFAV

#

guess I was a little off

rough lintel
#

literally looks like a graphic youd see in biology class or something

#

cut the atom open and omg protons neutrons electrons!!!

uncut viper
#

im not sure if BFAV would even really show up here given how wildly it scales

lucid iron
#

Ngl i thought button posted onion skin cells

#

It's the color...

uncut viper
#

though, it does have 144 nodes that depend on it, so it might. that puts it in, lets see... 17th place

lucid iron
#

Which of the 2 big nodes is ftm

uncut viper
#

there it is! BFAV

uncut viper
lucid iron
#

The boy

uncut viper
#

that largest blue dot north of Content Patcher is predictable, thats SVE's CP component

uncut viper
#

there you go chu

#

that little one between em all is DGA

tender bloom
uncut viper
#

its very fun lookin data to have

tender bloom
#

i have thought about doing this before but never carried through

uncut viper
#

i just wish i didnt have to download the entire 66gb mod dump to get the 200mb json file inside it lmao

tender bloom
#

and I'm so happy you did it

#

yeaaah that was the biggest obstacle

#

66GB is so many GB

uncut viper
#

if i can get a nice force atlas precalculated itd be easy enough to put on my site to let you zoom and scroll around and hover over each node to see what it is

uncut viper
#

but, its currently precalculating it and my computer is screaming at me

#

so itll take a while

#

turns out calculating the forces on some 20k nodes and 36k edges is a bit rough on my poor consumer cpu

rough lintel
uncut viper
#

they remind me of like, agar plates

lucid iron
#

Just render it on aws so u can get a 4 digit bill by end of month

uncut viper
#

if you can tell me how to put Gephi on AWS id (not) consider it

lucid iron
#

Apparently the service is called Amazon Neptune

uncut viper
#

the less i have to touch AWS the better

lucid iron
#

What if you filter against the compat list

uncut viper
#

the mod dump is the compat list, no?

lucid iron
#

Ig it mainly just yeets DGA cus JA still compat

spice inlet
iron ridge
#

oooooo

uncut viper
#

i cant unsee the eye now

#

creepy...

spice inlet
#

biblically accurate content patcher

tender bloom
#

oniony eyes

lucid iron
#

I think it looks more like stereo

tender bloom
#

I enjoy the colors a lot

#

I 100% see an eye, but I also see one of those like multipart flowers?

#

like queen anne's lace but with color

urban patrol
#

i see a petri dish

#

reminds me of mold colonies or something

spice inlet
#

kind of curious which of these are cfl, ub and pif SDVpufferthinkblob

uncut viper
#

do you know their unique ids off the top of your head

tender bloom
#

is GMCM one of the purple-on-purple blobs in the top middle?

#

most blobs are a big purple surrounded by blue but a couple buck the trend

uncut viper
#

this is GMCM

#

i think a lot of mods dont actually add it as a dependency in the manifest

#

so its just kinda there

rigid oriole
#

i always forget

spice inlet
#

DeLiXx.Custom_Farm_Loader, DLX.Bundles and DLX.PIF

tender bloom
#

do you know what the other purple on purple blobs are?

#

i guess gmcm is very optional in a lot of cases

royal stump
#

yeah, GMCM doesn't require anything in the manifest & most mods don't list it in nexus reqs, etc

spice inlet
#

gmcm has way more dependent mods for sure

#

even if you just go off the nexusmods requirements