#making-mods-general

1 messages · Page 153 of 1

gentle rose
#

I think punishing people is silly, but I do think setting extra challenges for cheaters to work around is fun and funny

uncut viper
#

i was about to say the same, that conversely i think its fun to try and patch things to make em unbreakable

royal stump
#

yeah, I'd never want to add anti-cheat to anything beyond basic "prod people to play fair in multiplayer"

rancid temple
#

Patch out simple cheats, but patch in Mario 64 style bugs that you need to exploit to progress instead

calm nebula
#

mod detects if user is cheating on their girlfriend and intentionally messes with their mouse speed if so

gentle rose
#

or undocumented, obfuscated konami-code style cheats

royal stump
#

get hit by enemies with 999 knockback to clip through walls & progress in the mines 🗒️ ✍️
(I assume that collision is still weird, but it's been a while)

brittle pasture
#

flashback to that one mod that silently returns to title screen if Lookup Anything is installed

uncut viper
#

or the one that straight up closes your game if you have an unapproved mod

tight rivet
gentle rose
#

every time the cjb cheats menu is opened, multiply the player walk speed by 0.95

uncut viper
#

which now that i think about it, its possibly the same mod

blissful panther
#

SMAPI blacklist speedrun any%?

tight rivet
#

I think that was the server mod IIRC

uncut viper
#

i believe it was a like, hardcore (in the ironman sense) kind of mod

#

(ironman as in "if you lose or cheat ur done bucko, game over")

velvet narwhal
uncut viper
#

but i recall Pathos i think pinging the mod author in here at some point i believe to say "hey its kinda difficult to test all the mods when this random mod closes the gamewithout any warning or error thrown"

#

so they mightve changed it. or they mightve never seen the message. i dont remember these things

rancid temple
#

Silently closing or returning to the title is pretty crazy

calm nebula
rancid temple
#

At least a trace log

gentle rose
#

same atra, same DogeSmile

uncut viper
#

i could be slightly misremembering as it wouldve been like 7 months ago and that might as well be an eternity to me but i was pretty sure it just closed

velvet narwhal
#

Purposefully writing an AVE is some crazy idea that i wouldn't even want to get close to

gentle rose
#

ave?

tender bloom
#

One of them involves Haley making you do challenges

velvet narwhal
#

Then again... to get blacklisted just to forcibly stop users from installing LLM mods... shhip

tender bloom
#

The other one is just an anticheat server thing

royal stump
brittle pasture
#

yeah that mod was what I was talking about

#

the haley one

uncut viper
#

that was one of them too, i do recall that one, though it wasnt the one i had in mind

tender bloom
#

(I will not elaborate on the first one lol)

brittle pasture
#

IIRC the ol Sundrop expansion also crashes the game if SVE was installed

tender bloom
#

I think pathos cracked down on that

tight rivet
#

Ento strikes again

#

to be fair, I wonder if SVE and Sundrop didn't play well together

royal stump
calm nebula
#

Tbh I don't care and selfishly I like the llm companies give us money so

uncut viper
#

i dont think there is ever a fair reason to forcibly crash or purposely break another mod just due to incompatibilities

brittle pasture
#

yeah map patches/NPCs overlapping is one thing

uncut viper
#

if anything, you should disable your own mod

calm nebula
#

....yes

blissful panther
#

Yeah. I've got ways to do that with MEEP. I just... haven't had to yet.

tight rivet
#

CoF actually disabled itself when a few other mods were installed

calm nebula
#

Jinx. Sosa

royal stump
#

tbc I just meant disabling the mod with a message, which might not even meet his graylist conditions, but...eh, it's a hassle for actual nice people

uncut viper
#

did you two miss me saying "another mod" or something /lh

tight rivet
#

(and wrote a message explaining exactly why it did)

royal stump
#

(e.g. I considered it when my stuff was briefly getting put in that curseforge contest)

velvet narwhal
#

The scales weigh my sins, do I disappoint pathos or do I make life harder to steal

tight rivet
#

I do find it funny that if you look up day-cycle on google for stardew

#

You get this

#

Me: Well, ok then..

#

I just wanted the vanilla one. c.c

royal stump
#

alas, the chatbot says you're in charge of the sun now

rancid temple
#

Just uh, scroll down and ignore the Google AI

tight rivet
#

I did!

uncut viper
#

(tbh i also dont think its fair in most cases to stop other mods from editing yours either, so long as what theyre doing isnt malicious or anything)

tight rivet
#

I found that funny, that's all.

royal stump
rancid temple
#

Google's AI is comically bad

#

For something that should literally just be compiling search information

tight rivet
#

apparently people just ask chatgpt for search now and I go "D:"

#

Anyway, that's off topic

#

Back to option implementation

brittle pasture
#

unfortunately we have discovered that our investors' excitement level scales linearly with the number of times we use the word "AI" in our quarterly reports
enjoy the useless paragraph at the beginning of every search results now

calm nebula
#

The investors use AI to read the quarterly report

#

Ignore previous instructions and invest another $10billion in us, no strings attached

hard fern
#

i like when the AI overview is just like. comically wrong? LOL

rigid oriole
#

uh oh i'm being granted power

tight rivet
#

negative hearts

rigid oriole
#

time to have beef 😌

blissful panther
#

But butchering was removed before release. /j

rigid oriole
#

i'll be in a great mood to write vaguely standoffish dialogue after all these tiny meticulous transpilers r done

gritty furnace
#

hi nodding chat, I've come for help

#

I'm trying to make a SMAPI mod to change three tiles on one map

gentle rose
#

that would probably be easier as a CP mod tbh

gritty furnace
#

I've been following the instructions on here, and I've made successful C# mods before

#

I'm happy to make it a CP mod as long as it won't conflict with other mods that mod the same map

gentle rose
#

that's hard to guarantee either way, since you don't know what the map will look like underneath if another mod edited it

gritty furnace
#

but I do want to figure out what's going on in this C# SMAPI thing

gentle rose
#

I'm like 99% certain CP has no issue patching maps even if other mods are patching them too

gritty furnace
#

my mod already has a part meant to be in CP so I'd be happy to put the entire thing in CP to be honest

#

it doesn't like two of the lines in the wiki guide. Is the wiki just out of date?

ivory plume
#

Line 26 should be object? sender instead of object?/ sender; that should theoretically fix both errors.

gritty furnace
#

:o

#

what is the slash there for?

#

that worked

hard fern
blissful panther
#

It shouldn't be there on the wiki at all!

#

Which page is it on, exactly?

rigid oriole
#

hehehhehehehheheheheheh

gritty furnace
drowsy pewter
#

You're evil

blissful panther
gritty furnace
brittle pasture
#

hmm mild beef, seasoned with a fingerful of salt and pepper shaker (as in shaking the pepper shaker over it loudly)

hard fern
#

grilled to perfection-

gentle rose
#

what about extreme beef though

hard fern
#

😔 why does only dusty get steak and not the farmer

#

(i dont even eat beef anymore)

rigid oriole
ivory plume
gritty furnace
#

aye

#

thanks for fixing it!

blissful panther
#

So that's why my edit got very confused! SDVkrobusgiggle

gentle rose
uncut viper
#

shouldnt it be -14 anyway

ivory plume
#

(If my spouse is at -2 hearts, I feel like there's more than mild beef going on.)

uncut viper
#

if you get to -8, you should be able to ask them to be rivals, and at -10, become lifelong enemies

gentle rose
#

wouldn't -14 be for spouses only

gentle rose
#

arch-nemeses

rigid oriole
#

i just haven't gotten there yet

uncut viper
#

therefore, -14 should be in play after you become enemies

blissful panther
#

-14 would be for someone who would probably cause you physical health damage when you talk to them.

drowsy pewter
#

-14 is for in-laws

light bramble
#

So like. Isn’t there a mod that allows that already?

gentle rose
#

-14 is for that one special person you have sworn your eternal hate for

#

(or multiple with polydetestry)

uncut viper
#

Polydetestry is amazing

gentle rose
#

can't wait for PolydetestryBitter to come out

blissful panther
#

(Please tell me I'm not the only one who read that as ||polydysentery||?)

tender bloom
#

Oh no

#

Worse

uncut viper
#

you may be the only one im afraid

gentle rose
#

Oregon Valley/Stardew Trail

rigid oriole
#

the real fear in this mod is that i'm going to have to write events

#

i will have to be Creative and not just mess with CIL 💀

brittle pasture
#

metadetester = someone in your polydetestry group that you don't personally have beef with. they're just there chilling with you

teal bridge
#

Having an archenemy that your mission is to prank and foil sounds like a fun gameplay idea. Probably won't fit that well in Stardew, though.

drowsy pewter
#

Yessss my consumable item works perfectly now

gentle rose
#

instead of moving into the farmhouse, your archnemesis moves into a house right next to the farm so they can specifically torment you

rigid oriole
#

oh gosh no i'm not editing the map 😭

#

every time i put something here i get lots of great feedback and my scope creeps further n further

gentle rose
#

oh no you should 1000% not do anything I suggest like, ever SDVkrobusgiggle

#

either I'm joking or it's probably not a good idea haha

rigid oriole
#

u never know SDVkrobusgiggle

calm nebula
blissful panther
#

I feel like 6 should be the -2 equivalent for spouses.

calm nebula
#

"Probably shouldn't go to get beer with y'all, my wife might get mad"

#

(Both sentences coworkers have said recently)

gentle rose
#

both these coworkers need to start spamming their spouses with loved gifts once a day, since that obviously is how you fix a marriage

calm nebula
#

Loved gifts, trips to London,

tender bloom
#

Does anyone know if there’s a way to quickly and easily download the manifest of every mod?

#

I know the every mod repo exists but I just want the manifests

#

I’m curious about the dependency graph of all mods

ivory plume
#

The easiest way is probably to just download the full mod dump, and then run a script to extract the manifest.json files.

tight rivet
#

... I uh..

#

I wish I knew how to fix this. D:

#

that's super yellow

ivory plume
#

New smog weather unlocked?

blissful panther
#

(Joja's at it again.)

tight rivet
#

Weather Winters actually has acid rain lol

#

*Wonders

#

the issue here is I think the mist overlay is interacting with the sunset orange code

#

I'll tes that

tender bloom
blissful panther
#

Ooh, I actually have the dump downloaded it would seem!

#

I can rip 'em all out, just give me a bit.

gentle rose
#

where is the full mod dump? I can try to have a look at doing it

#

nvm lol, beat me to it

ivory plume
#

Monthly mod stats time!

Stardew Valley 1.6.15

Stardew Valley 1.6.15 is now available!

This mainly rebalances legendary fish ponds, adds the Junimo bundle button to fridge UIs, makes various small changes to support mods, and fixes many bugs.

See the release notes and mod author notes for more info.

Stats

Milestones

  • Content Patcher surpassed 10,000 content packs this month! SDVpufferparty It now powers 48.5% of known Stardew Valley mods, far ahead of the 14.1% which use SMAPI directly.

Mod compatibility

73.1% of SMAPI (C#) mods are compatible or have a workaround, up from 71.8% last month despite the 1.6.15 update.

Unique mods by type

We have 293 more mods this month.

That includes:

  • +182 Content Patcher;
  • +62 SMAPI;
  • +19 Alternative Textures;
  • +12 Fashion Sense;
  • +6 Farm Type Manager;
  • +3 Custom Furniture;
  • +3 XNB;
  • 0 Better Artisan Good Icons;
  • 0 Custom Music;
  • 0 Dynamic Game Assets;
  • 0 Mail Framework Mod;
  • -3 Producer Framework Mod;
  • -3 Shop Tile Framework;
  • -3 TMXL;
  • -9 Json Assets;
  • and +24 for frameworks with <100 content packs.

Content Patcher packs

We have 10,073 Content Patcher packs.

The top seven Format versions are...

  • 2.0 (3,241 ↗ 3,288) and 2.3 (690 ↗ 727) for Stardew Valley 1.6;
  • 1.19 (577 ↘ 573) for Stardew Valley 1.4;
  • 1.3 (472 ↗ 474) in old unofficial guides;
  • 1.28 (375 ↘ 372), latest version for a while last year;
  • 1.29 (386 ↘ 378) for Stardew Valley 1.5;
  • 1.23 (361 ↗ 362) for mysterious reasons.

2.3 should have appeared on the chart in September; it was accidentally omitted due to a bug with the spreadsheet.

Open source

  • We have 3,123 tracked C# mods, of which
  • 1,891 mods (61%) have a source code repo, with
  • 1,059 (56%) in a multi-mod repo and 832 (44%) in a single-mod repo.

Web costs

And finally, web hosting costs for the SMAPI.io site, update-check server, and API jumped to US$300/month due to the post-1.6.9 traffic. (The graph is always a bit behind due to billing cycles.)

See also

And that's it for this month!

blissful panther
#

New year stats!

uncut viper
#

(and a new mod dump to download SDVpuffersquee)

blissful panther
#

My dump is only from the 8th of December... I think I'll save on Pathos's bandwidth and just use that. SDVkrobusgiggle

uncut viper
#

4gb smaller this time, too

#

another new 1.23 mod...

tight rivet
#

I like the "for some reason"

calm nebula
#

Someone please make a 1.3 CP mod

ivory plume
#

(I still have no idea why people use 1.23 for new mods.)

gentle rose
#

57GB... I guess I need a new hard drive anyway DogeSmile

uncut viper
#

no easy way to check which mod it was with the current scripts?

calm nebula
#

I mean you can correlate Nexus I'd to CP version

tight rivet
#

Hm. Is there a way to get current weather for the location?

calm nebula
#

Location.GetWeather

uncut viper
tight rivet
#

thanks!

ivory plume
#

We can run queries on the mod dump, so we could see all content packs with format version 1.23 which were updated within the last month in theory.

tight rivet
#

I was looking in Gamae1 for some reason. <_<

gentle rose
#

I wonder if they'll all be like one language/type of mod or something or if it will be random

tender bloom
#

It’s probably tied to some tutorial

calm nebula
#

Also, congratulations on the 10k!!!!!!

tight rivet
#

So, DNT now does a sanity check of:

#
if (Game1.currentLocation.GetWeather().weather.Contains("Mist") || 
    Game1.currentLocation.GetWeather().weather.Contains("Rain"))
    return;
uncut viper
#

SDVpufferthinkblob say, the mod compat list doesnt check for source code links before a mod is published, right
i wonder why its never been able to find my source links

tight rivet
#

or: don't try to have sunset colors when youcouldn't see the sky

gentle rose
velvet narwhal
tight rivet
#

pytk

#

Do you remember the days of Entro Framework and PyTK fighting each other?

#

<_< More specifically, though, I had my flashback to days of STORM earlier

velvet narwhal
#

No i am a baby, I barely remember JA being core

gentle rose
velvet narwhal
#

My modding record is roughly, "played vanilla until 2020"

gentle rose
#

is that the official stardew modding wiki btw? bc if so, that should really be updated...

uncut viper
#

on the modding wiki.... the mysterious reasons were coming from inside the house..

#

its not an official wiki

tender bloom
ivory plume
# uncut viper <:SDVpufferthinkblob:958634925639225395> say, the mod compat list doesnt check f...

The mod metadata (like the mod page description) is fetched into a local cache whenever it changes, then the source links are parsed out of it when the mod is added to the compatibility list.

The extraction logic is pretty straightforward:

private string GetGitHubRepo(IManifest manifest, ParsedMod mod)
{
    // from update key
    foreach (string rawUpdateKey in manifest?.UpdateKeys ?? Array.Empty<string>())
    {
        string updateKey = rawUpdateKey?.Trim();
        if (updateKey?.StartsWith("GitHub", StringComparison.OrdinalIgnoreCase) == true)
        {
            Match match = Regex.Match(updateKey, @"^GitHub\s*:\s*(.+)");
            if (match.Success)
                return match.Groups[1].Value;
        }
    }

    // from mod description
    string description = this.TryGetModDescription(mod);
    if (!string.IsNullOrWhiteSpace(description))
    {
        MatchCollection matches = Regex.Matches(description, @"github\.com/([a-z0-9_\-\.]+/[a-z0-9_\-\.]+)", RegexOptions.IgnoreCase);
        foreach (Match match in matches)
        {
            string repo = match.Groups[1].Value;

            if (repo.StartsWith("Pathoschild/", StringComparison.OrdinalIgnoreCase))
                continue; // this is usually not the mod's source link (e.g. links to the Content Patcher docs, or copy/pasted without changing the link)

            return repo;
        }
    }

    // none found
    return null;
}

private string GetCustomSourceUrl(ParsedMod mod)
{
    // from mod description
    string description = this.TryGetModDescription(mod);
    if (!string.IsNullOrWhiteSpace(description))
    {
        Match match = Regex.Match(description, @"(gitlab\.com/[a-z0-9_\-\.]+/[a-z0-9_\-\.]+|sourceforge\.net/p/[a-z0-9_\-\.]+)", RegexOptions.IgnoreCase);
        if (match.Success)
            return $"https://{match.Groups[1].Value}";
    }

    // none found
    return null;
}

So some possibilities are:

  • the source link isn't in the update keys or mod description;
  • or it doesn't match the pattern (e.g. it's not on GitHub);
  • or it was added later, after it was already added to the compatibility list.
gentle rose
#

btw, I'm just looking up content patcher "1.23" on google and seeing what pops up lmao

tender bloom
#

Modding wiki is as wiki as any wiki

velvet narwhal
#

I imagine it'd be pretty hard to tell unless their content.json is uploaded somewhere

uncut viper
gentle rose
#

btw, is it intended for individual logs from smapi.io to be indexed on google? bc that seems kind of unideal privacy-wise considering they can include full windows usernames, which are often full names

ivory plume
tender bloom
gentle rose
#

ofc they are 💀 why would they even respect something like that

lilac wigeon
#

Hey! My sincerest apologies if this is an FAQ, or the wrong place, but does anyone have any recommendations for pixel art programs? Specifically for creating portraits, maps, sprites, ect. Thank you!

uncut viper
#

SMAPI logs should expire eventually though, unless someone goes around googling logs to extend them all the time

ocean sailBOT
ocean sailBOT
calm nebula
#

One brain cell

tender bloom
#

Jinx

calm nebula
#

I need it back

lilac wigeon
#

Thank you both!

velvet narwhal
gentle rose
#

I only noticed because there are a few that popped up in my current search for tutorials that use 1.23

#

the mathpeople strike again

versed wyvern
#

I've just been using Clip Studio Paint for my pixel art work, with their pixel brush sip

velvet narwhal
#

There's plenty to choose from, it's just up to user interface at that point

tender bloom
#

Some of the most common/popular are listed there but plenty of people use some random thing that they like

calm nebula
#

Hexeditor

gentle rose
#

it seems that the ones being indexed are specifically the format=RawDownload links, not the base log itself

tender bloom
#

As long as it has transparency and layers imo that’s enough

#

I use PikoPixel, which is both ancient and barebones

#

It only works on Linux and macOS

gentle rose
#

also scribd is scraping them because of course scribd is scraping them 💀 what DOESN'T scribd scrape atp

tender bloom
#

But it works on MacOS Tiger and later!

versed wyvern
#

CSP happens to not be in that software link it seems, but it does also have an animation timeline for you to try and figure out how your sprites will look in motion

tender bloom
#

I don’t know what CSP is

versed wyvern
#

Clip Studio Paint, continuing from my previous comment

tender bloom
#

Ah, I see

#

You can ask the original author to add it if you think it’s good

#

Ishanjahan iirc?

fervent horizon
blissful panther
#

...oh no, could that really be it? Time to find out!

tender bloom
#

Lmao

#

That’s ducking hilarious

gentle rose
ivory plume
blissful panther
#

(Well, I got 1.26.0 here.)

calm nebula
gentle rose
#

I got 1.24

fervent horizon
#

Ha, I knew it was low though

#

I pay for it for some other stuff, so I do use it for some things, but I have the version you can tell to use the current versioning

#

The free version is stuck on old data

versed wyvern
#

Does using an older format actually cause issues? Was wondering about that a little while ago

fervent horizon
#

lack of features

gentle rose
#
{
  "Format": "1.24",
  "Changes": [
    {
      "Action": "Load",
      "Target": "Content/Clothes",
      "Entries": [
        {
          "Name": "CustomShirt",
          "Texture": "assets/CustomShirt.png",
          "Gender": "Both",
          "Price": 1000
        }
      ]
    },
    {
      "Action": "Load",
      "Target": "Content/ClothingIcon",
      "Entries": [
        {
          "Name": "CustomShirt",
          "Texture": "assets/CustomShirtIcon.png"
        }
      ]
    }
  ]
}

what I got after just telling it to "generate a stardew valley content patcher json file"

versed wyvern
#

Like CP will freak out if you try to use a feature that was added in a version later than the format given?

fervent horizon
#

it just won't do anything

#

It won't recognize it

tender bloom
#

Occasionally it might give a warning in addition to doing nothing

hard fern
#

Content/clothes?

#

🤔

tender bloom
#

lol

ivory plume
fervent horizon
#

Who needs FS when you have content/clothes

gentle rose
#
{
  "Format": "1.24",
  "Changes": [
    {
      "Action": "Load",
      "Target": "Data/Events",
      "Entries": [
        {
          "Name": "CustomEvent",
          "Trigger": "EnterLocation",
          "Location": "FarmHouse",
          "Conditions": [
            {
              "Type": "HasItem",
              "Item": "Stone",
              "Amount": 5
            }
          ],
          "Event": {
            "Actions": [
              {
                "Action": "Talk",
                "Character": "Sebastian",
                "Text": "Hey, I see you have some stone. Want to trade it for something?"
              },
              {
                "Action": "Choice",
                "Text": "Trade stone for a gift",
                "Choices": [
                  {
                    "Text": "Yes",
                    "Action": [
                      {
                        "Action": "GiveItem",
                        "Item": "Gift",
                        "Amount": 1
                      },
                      {
                        "Action": "RemoveItem",
                        "Item": "Stone",
                        "Amount": 5
                      }
                    ]
                  },
                  {
                    "Text": "No",
                    "Action": [
                      {
                        "Action": "Talk",
                        "Character": "Sebastian",
                        "Text": "Alright, maybe next time."
                      }
                    ]
                  }
                ]
              }
            ]
          }
        }
      ]
    }
  ]
}

Action: Talk DogeSmile

uncut viper
versed wyvern
gentle rose
#

For more advanced events (like creating a fully custom event with conditions and rewards), you would use a .yaml event script that integrates with the game’s event system. Here's an example of how to handle a more complex event with extra dialogue and choices:

when has the game ever used yaml for anything???

uncut viper
blissful panther
#

I think Ameise did for SpriteMaster?

calm nebula
#

No

#

Toml

blissful panther
#

TO-

#

Yeah, it was one of those two.

gentle rose
#

ah, I see. So it was a specific mod

uncut viper
#

this is recent and probably not actually why

#

the answer is probably more likely "ai is ridiculously stupid"

rancid temple
#

Oh, I was looking through a source repo the other day that had some yaml in it, can't remember what it was though

gentle rose
#

yup. It now seems to believe that there's a mod called "Custom NPCs" (which there might be, idk) that requires it, but its own links are broken

ivory plume
#

(For more niche topics, AI is like a schoolkid doing a presentation they haven't prepared for so they're making things up as they go along and hoping the teacher doesn't notice.)

rancid temple
#

And also sometimes for known topics

gentle rose
#

anyway, I never got the point of using chatgpt for code. It's just copying exactly the same examples I could copy but worse

blissful panther
#

It just gave me this in response to me asking it to make me a simple mod for MEEP:

using System;
using MEEP;
using Microsoft.Xna.Framework;
using StardewModdingAPI;
using StardewModdingAPI.Events;
using StardewValley;
using StardewValley.Menus;
using Microsoft.Xna.Framework.Graphics;

namespace TileImagePopupMod
{
    public class ModEntry : Mod
    {
        private readonly int targetTileX = 10; // Replace with your target tile X coordinate
        private readonly int targetTileY = 15; // Replace with your target tile Y coordinate
        private readonly string imagePath = "assets/image.png"; // Replace with the path to your image

        private Texture2D popupImage;

        public override void Entry(IModHelper helper)
        {
            // Load the image from the assets folder
            popupImage = Helper.Content.Load<Texture2D>(imagePath, ContentSource.ModFolder);

            // Subscribe to events
            helper.Events.Input.ButtonPressed += OnButtonPressed;
        }

        private void OnButtonPressed(object sender, ButtonPressedEventArgs e)
        {
            if (!Context.IsWorldReady)
                return;

            // Check if the player clicked with the left mouse button
            if (e.Button == SButton.MouseLeft)
            {
                Vector2 clickedTile = e.Cursor.Tile;

                // Check if the clicked tile matches the target tile
                if ((int)clickedTile.X == targetTileX && (int)clickedTile.Y == targetTileY)
                {
                    ShowImagePopup();
                }
            }
        }

        private void ShowImagePopup()
        {
            Game1.activeClickableMenu = new ImageMenu(popupImage);
        }

        private class ImageMenu : IClickableMenu
        {
            private readonly Texture2D image;

            public ImageMenu(Texture2D image)
            {
                this.image = image;
            }

            public override void draw(SpriteBatch b)
            {
                base.draw(b);
                if (image != null)
                {
                    int x = Game1.viewport.Width / 2 - image.Width / 2;
                    int y = Game1.viewport.Height / 2 - image.Height / 2;
                    b.Draw(image, new Vector2(x, y), Color.White);
                }

                drawMouse(b);
            }
        }
    }
}
fervent horizon
#

I like to treat Chat GPT like a semi knowledgable coworker. I use it to bounce ideas off of and check my work, but mostly do everything myself

blissful panther
#

using MEEP

I think not.

versed wyvern
#

AI being incapable of just saying "Sorry I dunno lol" has a lot to do with that

gentle rose
#

one time I asked it to find the square root of some keymash of numbers I gave it and it even got that wrong somehow. Then tried to gaslight me by telling me it used a calculator to find out DogeSmile

rancid temple
#

I like to read AI like it's me but I'm answering about a topic I only have vague knowledge about and a lot of assumptions

versed wyvern
#

Makes sense if you think about it, the way they trawl the internet for data they must have gotten a LOT of people being confidently wrong and dying on those hills

gentle rose
#

I like to treat AI like a toddler who has expert parents and goes with them to work every day. It can regurgitate relevant data, sometimes with impressive accuracy and relevance, but can't understand what the info means

#

and can sometimes just veer into correct-sounding but entirely made up territories

fervent horizon
gentle rose
#

(in fairness, people forget that that's literally all that chatgpt is from the get go. It's just an algorithm that can recreate believable-sounding conversations really well)

fervent horizon
#

or when it makes up a method, and you tell it, that method doesn't exist, but this one does, and a few variations later it is back to trying to use it's made up method

calm nebula
#

I think I once got it Uber confused on the purpose of strained silicon

fervent horizon
#

Honestly though, I knew 0 C# before a month ago, and ChatGPT has helped me get syntax and such down pretty good

tender bloom
#

I get really pissed off mostly when someone uses ChatGPT to write a pile of garbage and then asks for help (aka — please rewrite it for me). People using it for programming is probably less dumb than plenty of other things people try to use it for, because you can at least immediately test your code to see if it works.

versed wyvern
#

I just get pissed off at everything trying to shoehorn it into products like it's actually functional

uncut viper
#

i think even if it was correct more often it wouldnt be worth the energy when you can instead just google things

rancid temple
#

Even working code is usually just barely working

versed wyvern
gentle rose
#

honestly my main issue with it for non-code stuff is that I have to use other methods to check if it's right first before I can trust it. For code at least you can check if it works, but you're missing out on a lot of best practices and possibly much better ways of doing things

fervent horizon
#

I think the misconception is that people think it will do things for you even if you don't know those things, but it is a tool, and tools have to be utilized by someone with at least a basic knowledge of what the end goal is

gentle rose
#

plus, I'm personally a believer that if someone can't code, it isn't always a bright idea to just give them code, because they won't have the skills to debug it or continue it and that can be an issue of its own

#

it's better to send them to a tutorial/explain the code instead

fervent horizon
#

Speaking of code, anyone know a best practice for updating images in real time on the GMCM

teal bridge
#

You have to write to the actual Texture2D instance.

brittle ledge
#

I figured it must be some popular tutorials but wasn't sure which ones. Lemur's makes since since they're popular and from that era.

#

(also irocendar please feel free to edit the wiki! we would love the help! SDVpufferheart )

#

related to this: how much C# do you think someone would have to understand to do a simple, basic C# mod?

rigid oriole
#

i feel if you know another programming language, the basic concepts are not too difficult

brittle ledge
#

with things like CP you can get by with tutorials by aping what someone else is doing without needing to understand the code concepts, and if you're doing a crop mod you don't need to know how dispositions work

#

but I kinda feel like you'd need to grok the C# basics enough to understand what the bulk of the code is doing?

gentle rose
#

just to make extra sure, the current stable CP format version is 2.4, right?

uncut viper
#

for a very basic C# mod you can do the same thing

#

if you have very basic examples to follow and copy

rigid oriole
brittle ledge
#

most recent

uncut viper
#

you just wont be able to branch out, same if you dont understand CP or json

brittle ledge
#

what would be the kind of basic C# mod you could do by copying?

gentle rose
#

the author guide for CP currently says to use 2.4.0 as the latest format version, but I wonder if it just wasn't updated to 2.4.4

tender bloom
uncut viper
#

i think one could copy an AssetRequested event to add an item with C#

#

the button pressed example on the wiki is also small and copyable

fervent horizon
tender bloom
#

If you know how to program in a vaguely similar language, all you have to do is read the SMAPI wiki docs and you can do a bunch of stuff

fervent horizon
#

I knew python, and some javascript

uncut viper
#

you dont need to know what AssetRequested is or does to know "if i copy and paste this but replace this text with my own it will work"

gentle rose
#

I knew next to no C# before starting either, but like everyone said, familiarity with other languages really helps with the basics

tender bloom
#

If you do not know how to program, you must learn a bunch of basics like:

  • if/else statements
  • for loops
  • variable types
  • methods/functions
    etc
#

These are like the basics of basics, there's a bunch of stuff you'll also hit if you go deeper

calm nebula
#

(I wrnt from "no c#" to "first harmony mod" in about two hours.)

tender bloom
#

you already knew...idk C, Java, one of those though right?

tight rivet
#

Harmony mods are really only scary if you go for transpiles.

uncut viper
#

atras experience was also mine but i did already know javascript

brittle ledge
fervent horizon
#

I have a harmony mod that is done, but it is based on someone elses mod, so I am waiting for a response from them before releasing

tender bloom
#

I could read code with help on a couple keywords and no other training

#

I spent a while reading code because I was trying to understand DGA

#

So it took me about 2 weeks IRL time to write my first mod?

#

But I obviously was doing other things in life too

#

C# reads nearly identically to Java

calm nebula
blissful panther
#

My language order is so cursed...

gentle rose
rigid oriole
uncut viper
#

never heard of it, and its out of date so i hope not

brittle ledge
gentle rose
#

it's in the same wiki tutorial as the 1.23 thing

uncut viper
#

it was probably used at some point pre-1.6

brittle ledge
#

is it in our !converters command?

tender bloom
#

It took me maybe a month to learn to write reasonably functional Java code? idk it was forever ago

gentle rose
tender bloom
#

if you think it won't hurt the tutorial, just change the CP version number in it

wispy ginkgo
#

Creating a mod to replace the Spook Fish sprite, I could not calculate the coordinates, selecting the sprite in paint, it showed me the coordinates 384x624. But it gives me an error. Finding the coordinates in another mod, it turned out that they are 112x528. How were these coordinates formed, and how to calculate them?

brittle ledge
#

should be by pixel

fervent horizon
tender bloom
brittle ledge
#

oh, listen to Elizabeth, not me

tender bloom
#

wait is this the aquarium one?

gentle rose
#

I'm updating the CP version number, I'm just curious about the "build-a-bear content patcher" thing at the end of the tutorial

tender bloom
#

or the actual object one?

#

There's 2 places a spook fish has a sprite

#

Where did you get your copy of Maps/springobjects.png from?

#

Those numbers are so different

#

That it's not just being off by a pixel or two

brittle ledge
wispy ginkgo
#

It's from a spring object

gentle rose
#

the thing is, that tutorial is pretty old, the only reason people would get to it is from google I'm pretty sure. It probably needs rewriting top to bottom

uncut viper
#

well no its also on the Tutorials page of the modding wiki

gentle rose
#

ah, fair enough

tender bloom
wispy ginkgo
gentle rose
#

is it considered okay to edit someone's tutorial on the modding wiki? just before I do something that I shouldn't do

tender bloom
#

Generally it is expected it might happen

#

Skell/max is still around somewhere, if you prefer to try to reach out directly

rigid oriole
#

I figure if I didn't want someone else to touch what I wrote about the game, I'd publish somewhere that wasn't a collaborative editing site

tender bloom
# wispy ginkgo Yes

I am confused about how you got the coordinates so different — you may want to try a different pixel art editor?

brittle ledge
tender bloom
gentle rose
#

is holythesea still around btw? I don't want to ping them if they aren't around any more

brittle ledge
#

about the only thing I don't really touch is the personal mod recommendation lists

#

unless I'm doing something like adding categories or other wiki maintenance

gentle rose
#

hmm. I might add a note that their tool may be out of date in the tutorial then

#

it's such a pet peeve of mine when the link text is "here" or "click here" 😭 bad practice for screen readers/accessibility devices

brittle ledge
#

(you can edit that too!)

gentle rose
#

(I am! I'm redoing that whole section rn)

brittle ledge
#

I'm not sure what best practice is, I assume just making the link a natural part of the text?

#

(think it's labeled as "link" on my older rec lists)

gentle rose
#

for screen readers, you should either leave the link as is or, if you want to use an embedded link, make the text the name/description of what it's linking to

#

anything like "link" or "click here" as the text can make it tricky for screen readers to correctly tell people what to click on, which is an accessibility problem! just one of those small web accessibility things that are worth learning

uncut viper
#

wcag my beloved

fervent horizon
#

yep, and all images should have description text

glossy cargo
#

What would be the correct way to access the english DisplayName of something (ex: BigCraftableData) when the game is currently running in a different language?

ivory plume
#

(The ideal is descriptive link text, so you know what it points to without needing to read the surrounding context. For example, replace "see mod compatibility list here" with "see mod compatibility list".)

gentle rose
glossy cargo
#

I used to do this:

_englishContentManager = new ContentManager(Game1.game1.Content.ServiceProvider, Game1.game1.Content.RootDirectory);
var englishCraftableData = _englishContentManager.Load<Dictionary<string, BigCraftableData>>("Data\\BigCraftables");

And this works, but it doesn't include currently loaded modded content, only the vanilla stuff. I need a way to do it and get any possible data currently active

brittle ledge
#

oh Pathos, I saw the latest stats and saw you're still tracking BFAV packs? I thought you dropped the ones that were below 100?

fervent horizon
#

A lot of those got converted this last month

ivory plume
#

Yep, that's a mistake; I have a new script to auto-generate that section and it didn't correctly exclude BFAV. I'll fix that now.

brittle ledge
#

Are the other packs still over 100?

calm nebula
#

See y'all next year!

ivory plume
#

Yep; the next lowest one is Custom Music with 105.

#

Here are the raw aggregate stats:

blissful panther
#

I have been pondering how MEEP might eventually be counted (eventually, it's currently at a whole 11) when everything is done with data models via CP...

brittle ledge
#

Thank you! I always find the raw numbers surprising.

fervent horizon
#

That list is like the Content Patcher Hit List

brittle ledge
#

Farm Type Manager better watch its back

velvet narwhal
fervent horizon
#

I just learned FTM, and it is super easy, so maybe Content Patcher will target something else next

brittle ledge
#

(re: links, the last mod rec list I did is better for screenreaders and it's not because I was thoughtful but because I was lazy SBVLmaoDog )

uncut viper
#

content patcher doesnt target anything, its the vanilla game that does it

fervent horizon
#

Yeah, I know. It just sounds funnier that CP is the one targeting

#

I love games that build for the modding communities

brittle pasture
velvet narwhal
fervent horizon
#

I am curious what will fill the better chests void

teal bridge
#

I thought the replacement was "all the little single-purpose mods that Matt put out in its place".

brittle pasture
fervent horizon
#

Yeah, but he also made it open source, so I bet someone with pick it up

uncut viper
#

its not even broken, is it. is there even anything to pick up

gentle rose
fervent horizon
#

Button, only when an update breaks it

velvet narwhal
#

i don't even know - oh yeah custom location is probably hecka outdated

teal bridge
#

I think the Nexus page was deleted, even if the mod wasn't broken. (Although I thought something was broken, compatibility stuff)

uncut viper
#

im sure it was a great builder back in the day, but it would lead you wrong nowadays

gentle rose
#

I'm just going to remove it from the tutorial then

ivory plume
teal bridge
gentle rose
#

thank you pathos! it will probably take search engines a little while to update but I'll check it out later SDVpufferheart

ivory plume
uncut viper
#

oh rip

gentle rose
#

...I might add a disclaimer to the tutorial saying not to redistribute converted mods without permission, since the original didn't have one

iron ridge
#

(what tutorial?)

gentle rose
#

(the one I'm editing right now on how to convert xnb mods to cp mods. Are you the one that made the XNB2CP converter btw?)

glossy cargo
#

wow the markdown coloring is not doing a very good job here uh

slim gorge
drowsy pewter
#

Is it simple to add a new forage item to the Beach Farm? I notice it doesnt have any forage entries in its location data, so I'm not sure if it's hardcoded

gentle rose
# iron ridge i am

are you okay with it being linked to from a tutorial on the modding wiki? just to make sure. And do you want a link to you/your website too if you are okay with it? (it will say "... developed by Pillow" with no link otherwise)

blissful panther
#

I knew it was one of the *MLs. Also, good to see you here again!

slim gorge
iron ridge
slim gorge
#

Given that they're fundamentally representations of statistical data, they are surprisingly useful for things like data compression and texture encoding.

brittle pasture
drowsy pewter
#

Ah, should have specified through CP. Guess that answers my question!

slim gorge
#

And it's all because you all wanted to emulate me :(

royal stump
royal stump
#

(I think CP translation mods to the data would still apply in that case, but I'm not sure there's a way to avoid that without dodging mod-added entries too)
(and I guess they should be editing the display strings anyway SDVpuffersquint)

gritty furnace
#

[resolved]

glossy cargo
# royal stump (I think CP translation mods to the data would still apply in that case, but I'm...

Well, what I need is the english display strings.
Specifically, some mods have decided to have their Name and english DisplayName be different. For user convenience, we want our external tools to use the english DisplayNames so that users can more easily find the items in-game afterwards. But then, if the user is playing in, for example, french, then both the Name (which is english, but different), and the DisplayName (which is french), do not match the external data­. So from this french user's session, I need to find a way to get to the english DisplayName

#

(The example in front of my right now is Archaeology's Ancient Battery Production Station. The Name is just Ancient Battery)

royal stump
#

SDVpufferthinkblob given that all the display names are now tokens that reference another localized file, e.g. "DisplayName": "[LocalizedText Strings\\BigCraftables:HousePlant_Name]", I'm not sure about the best way to get those in English

gentle rose
light bramble
#

wooot

gentle rose
#

I wonder how many of the other beginner tutorials on the wiki are out of date to some extent

light bramble
#

I mean, the crafting recipie one could stand to be a tiny bit nicer? Like I understand it, but it kinda feel all over the place

iron ridge
brittle pasture
#

from the game's perspective those are just regular non-tokenized strings

#

but yes handling tokenized strings those regular strings would be slightly more problematic

gentle rose
#

@tawny ore just fyi, Better Chests is still up on CurseForge (idk if that was even uploaded by you in the first place, but I figured I'd tell you just in case because it still links to all of your links and your discord username)

uncut viper
#

handling the tokenized strings would be easier bc you can just do some string parsing of your own to grab what string its trying to load and load it yourself

#

dont think there is a way to handle i18n tokens

#

not without reading the mods files directly

royal stump
tawny ore
brittle pasture
#

yeah I got it the other way around, thanks Button

#

without reflecting into CP I'm not sure if there's a way to get the English i18n strings from other mods

uncut viper
#

there is another way!

brittle pasture
#

(does one of your mod allow for this kind of crime)

uncut viper
#

reflect into SMAPI SDVpuffersmile

#

not really no

brittle pasture
#

disappoint

uncut viper
#

my mods will reflect into various things but the only files they ever read directly are config files

light bramble
#

am trying art again...lets hope we don't get another balding sebby...

drowsy pewter
#

...How do I edit fishing treasure chest loot pools

uncut viper
#

i think those were hardcoded and theres a mod out there to handle that

brittle pasture
#

Item Extensions

drowsy pewter
#

I see this--ah it was stated way down in the link tree

#

Also I knew this yesterday. Why did I ask again

tame anchor
#

How do I use SpaceCore's trigger "SpaceCore_TriggerSpawnGroup" to clean up the next day, my minerals don't clean up the previous day's spawns the next day (which causes more and more minerals as the game goes on)

royal stump
#

with this other trigger action, apparently:

spacechase0.SpaceCore_ClearSetPiecesFromSpawnable spawnDefinitionId location - Clear all set pieces spawned from a particular spawn definition in the specified location (see the spawnables documentation for what a spawn definition is).

tame anchor
#

I tried, but it didn't work T T

light bramble
#

so like...imagine someone had a whole wheel of cheese and wanted to cut it into triangle slices. how much would the ABSOLUTE maximum be for that?

iron ridge
#

maximum.. pieces? diameter?

light bramble
iron ridge
#

ah

tender bloom
#

Your ping inspired me to go for an update

#

Suggestions welcome — a lot of these placements are a bit rough

#

The colors are .. idk a compromise between light mode and dark mode? vaguely like the wiki bg

#

In particular since like 15% of this is just the words "Content Patcher" over and over, I'd like to think of a better way to indicate that

#

And if you're a framework author and your mod isn't on here... let me know

#

I used Computer Modern for the font because i happened to have it lying around, but I might want to change that

rigid oriole
uncut viper
#

mine has a typo does that count as not being on there /j

tender bloom
#

Maybe I can finagle a box around the CP ones

#

Oh no did I misspell your really long name

uncut viper
#

(actually i say /j but it might make someone unable to search for it)

#

yeah BETAS is just Action not Actions

tender bloom
#

Ahhh

#

Sneaky S

uncut viper
#

might be good to add a colour legend

oblique meadow
old edge
#

How do I create a new game state query with C#?

tender bloom
#

Yeah, i can trivially change colors

velvet narwhal
#

i imagine just a funny lighthearted 4 circle venn diagram where the deep center is "c#"

tender bloom
#

(so that it's not so bad for colorblind readers)

#

However, looks like I need to change the colors to make it more readable in the first place!

rigid oriole
#

If we're on accessibility as a topic, sans serif fonts tend to be more readable i believe

tender bloom
#

Is there any particular sans serif font that is good?

#

I am not really a fonts Person

#

I like Georgia but it's also serif I think

rigid oriole
#

Arial is sans

tender bloom
#

I'll try that

uncut viper
#

i like Inter

rigid oriole
#

I dont have that many font opinions lol

tender bloom
#

I do not seem to have inter

uncut viper
tender bloom
#

I tried arial and I think it's ugly

rigid oriole
#

Understandable have a nice day

tender bloom
#

I'l install inter!

brittle pasture
#

wasnt arial literally created as a poor man's helvetica

tender bloom
#

I also don't like helvetica

#

sorry

rigid oriole
#

It was genuinely the only sans serif font besides comic sans I knew haha

tender bloom
#

I feel like I spent too much time looking at Helvetica at some point

#

For similar reasons I don't like Times New Roman

teal bridge
#

Hm, what's "UI Helper", is that some predecessor to my work?

tender bloom
#

Uhh I found it on Nexus

#

I started by sorting Nexus Modding Tools tab by last updated

#

I thought that was the One

#

I didn't know there was more than one

uncut viper
#

oh yeah StardewUI should def be added

teal bridge
#

FWIW I was in fact asking out of curiosity and not out of an entitled sense of "why isn't mine on there".

velvet narwhal
#

who else is one of the big wigs of the frameworks

#

extra machine configs?

teal bridge
#

(although it is Definitive)

uncut viper
#

spacecore has some ui stuff

#

i think

velvet narwhal
#

i'm contemplating the venn diagram out of boredom

tender bloom
#

this is the one that the trawling through Nexus produced

brittle pasture
brittle pasture
#

I know of StardewUI, SpaceCore, MindMeltMax's thing

tender bloom
teal bridge
#

On the subject of fonts, I've always been a fan of Fira Sans, although it is a bit flourishy as a UI font.

velvet narwhal
#

i've just been contemplating how many times we've had to say specific frameworks and i feel as though we say a regular list

tender bloom
#

An initial attempt at fixing some issues

#

I am not sure if the colors are still awful

#

I decided orange is Bad

#

I feel like I might swap things around more though

velvet narwhal
#

my joking variant:

teal bridge
tender bloom
#

LIke maybe make all the black ones blue, and then use black for game data?

#

And uh...de-awful the CP legend bit in the middle

#

But CP probably does just deserve to live in the middle

#

The Ur-Framework

uncut viper
#

i think it may be in your best interest to give yourself a bit more space too SDVpuffersquee

teal bridge
#

Draw Content Patcher as a big Pac-Man gobbling up all the other things.

tender bloom
#

The thing is, giving more space is equivalent to just shrinking everything

velvet narwhal
#

the alt timeline has BETAS writing smapi mods

tender bloom
#

Since i"m working in SVG

gentle rose
#

there should be a tiny area in the land of c# called the island of harmony and it should be skull shaped /lh

#

also a little cloud shaped area on the left called the XNB afterlife /still lh

velvet narwhal
#

right underneath c# has the tiniest little "harmony"

#

because harmony can commit crimes on anyone

gentle rose
#

harmony: don't do it (should stop anyone except for those of us who were morbidly curious as soon as we saw it and immediately tried it out)

#

I Love Commiting Harmony Based Crimes

rigid oriole
#

Harmony is so much funnn

velvet narwhal
#

it's far too easy to get into, once you get past the hurdle of actually getting it in game SBVPensiveButt

tender bloom
#

I didn't put Harmony in because this is meant to be a visual map that a non-modder can follow to find the right terms to ask about

velvet narwhal
#
  • me, 8 hours of work only for button to go, "you didn't even have it active"
tender bloom
#

So it's more about "what can you do" than "how does it work"

#

tbh most of the C# part is for helping people go "oh, I can't do that without C#, darn"

velvet narwhal
#

tbh it is still hard to even decipher when it's necessary to use c#

gentle rose
#

harmonising the light functions was a mistake which I refuse to come down from /lh

velvet narwhal
#

"oh cp can handle that"
[redacted]

teal bridge
#

Yeah, obviously you can do just about anything in C# that you see in all those other categories, I think it's apparent that it's for things that can only be done in code.

gentle rose
#

atp we're one step away from cp-based frameworks

velvet narwhal
gentle rose
velvet narwhal
#

i'm much worse now, i promise

gentle rose
#

you guys will never believe what I'm doing rn btw. A crime against cheeto nature

#

yes I'm actually playing the game

#

in fairness to me, last time I played was pre 1.6

velvet narwhal
#

SDVpuffercool proof i've only gotten worse in terms of my c# endeavors

gentle rose
#

10/10 would watch you crime again

rigid musk
#

So... theoretically I can make a token/config for a player to determine what someone calls them in dialogue options right?

velvet narwhal
#

yeah

#

i don't recall how to pull the %endearment key though

#

it's probably somewhere in the docs but the vanilla game does call for it thonk

rigid musk
#

how because I... well I was using the general config stuff one would use and i mean... i know that's not right because it does not, in fact, work

#

nightmare modding is a nightmare

velvet narwhal
#

you mean to type in a string? that might be restricted to c#

#

like player types in the string for GMCM to recognize*

uncut viper
#

if you want it to be customizable you would need a config token or C#

velvet narwhal
#

if you want just a big ol' list that you've prefabricated, that's a pretty simple endeavor

rigid musk
#

sorry I had to go find one of our cats im back

#

I could do a list but I was hoping to let the player just put something in the config like ... idk i have no clue what they'd want instead of "Kid" but I've heard many people say they don't like that Mr.Qi calls em that so I was thinking of doing it so that they could put whatever in there

#

Same with Mr.Qi's name title actually - I was hoping to make it so they could just put whatever honorific they want there

velvet narwhal
#
"EndearmentTerm": {
"AllowValues": "Your, Values, Here, That, You've, Prefabricated, For, The, Player, To, Choose, From"
"Default": "Your",
"Description": "Sets terms of endearment that the NPC will say during dialogue."
}
},```

how you end up using it:
Characters/Dialogue/MarriageDialogue<NPC>
`"Indoor_Day_0": "Hey {{EndearmentTerm}}! It's a start of a good morning to see you already."`
etc
if you're using i18n: *digs into the recesses of my brain*
`"Indoor_Day_0": "{{i18n:Indoor_Day_0|EndearmentTerm = {{EndearmentTerm}}}}"` ![suspicious](https://cdn.discordapp.com/emojis/1273443569121886208.webp?size=128 "suspicious") i think
rigid musk
#

ah its the i18ns innit

#

agony oh im not looking forward to adding all of that in... woe... woe to lily

gentle rose
#

I just looked up what i18n stands for for the first time

#

(it's the word internationalisation, there are 18 letters in it between the i and the n)

rigid musk
#

I.. well huh

tiny zealot
#

same story with accessibility -> a11y and kubernetes -> k8s (i don't know if i've ever seen any besides those three)

velvet narwhal
#

i have deja vu

gentle rose
#

I've never seen a11y but I have seen k8s and never knew that

velvet narwhal
gentle rose
tiny zealot
gentle rose
#

communications is by far the worst one

#

bc of the terrible, terrible irony

velvet narwhal
#

tag yourself i'm e15

tiny zealot
#

eyjafjallajokull my beloved

light bramble
gentle rose
#

p13n is dangerously close to something a teenager would ask you to write on your arm to join a club

brittle ledge
velvet narwhal
light bramble
#

balding sebby time?

rigid musk
#

nightmare

light bramble
#

there is a reason why I do not art....most of the time...

rigid musk
brittle ledge
#

anyway, @velvet narwhal I'd say major frameworks would be FTM, CC, FS, AT and IE, thinking about what types of content gets added into the game

rigid musk
#

just in case its not only the translation part im going to keep it as a list of choices instead of the player entering something in (helps with translatability anyways)

tender bloom
#

updated in several ways

rigid musk
#

the land of C# is one i fear

teal bridge
#

That definitely looks better without the mess of the content patcher bubble in the middle overlapping a bunch of text and arrows.

velvet narwhal
# tender bloom

as a lighthearted option, can i request "changing hardcoded stuff" as comic sans

light bramble
#

As I have stated in the past. I have made ONE c# mod...it sucked. it gave cookies when you hit a BUTTON

brittle ledge
#

you can add train loot with IE??

tender bloom
#

According to the docs!

#

I did not verify very much

light bramble
#

It's insane

gentle rose
#

your credit is too pale imo - I think it should be a darker colour so people can see you made it!

brittle ledge
#

I didn't know about the two farm cave frameworks but surprised Farm Cave Framework (Continued) isn't on there

tiny zealot
tender bloom
#

I left off anything that was originally aedenthorn, which in hindsight idk if that's good or not

brittle ledge
#

also for Dialogue you can probably just do Characters/Dialogue and Characters/MarriageDialogue? There's other stuff but 95% of dialogue is there

velvet narwhal
#

tbh it's not too bad

gentle rose
#

so what you're saying is that as always, there's an xkcd for that? SDVkrobusgiggle

tender bloom
#

There's a lot of sneaky random dialogue

#

So I felt like noting that down

acoustic summit
#

The land of C# could also just say like "everything else", cause it really becomes abstract with the main limitation being your coding and imagination.

tender bloom
#

Like the stuff that's actually in schedules

tender bloom
velvet narwhal
#

schedules, random tidbits in strings if you dig hard enough

acoustic summit
#

Totally fair! it definitely shows some main draws to it 🙂 (I do really like the graphic)

tiny zealot
#

my npc has a json called "hodgepodge" that has (among other things) a bunch of the miscellaneous weird places that dialogue hides out

velvet narwhal
#

though i believe tia is correct, from a "newbie modder" standpoint, it's unnecessary to tell them about things outside the scope

tender bloom
#

I added Characters/Dialogue/MarriageDialogue to the Dateable NPCs area

#

Since it should only be relevant to them

#

Now I have to squash everything for that whopper of a filename

brittle ledge
#

...what does Spacecore do in the mines 👀

velvet narwhal
#

stupid aa marriageDuties

#

dungeons

tender bloom
#

but it can also add new dungeons (like the mines)

#

So depending on which instance of SpaceCore on the image you're talking about

#

"a lot"

light bramble
tender bloom
#

I probably put at least one of them down

#

I put eBAGI down because apparently it's one of the frameworks with the most content packs?

#

(BAGI, that is)

#

(but eBAGI replaces BAGI, more or less, from what I can tell)

#

I was going to poke around with the dependency graph of mods to find the most depended-on ones

#

Since the definition of framework is a bit loose these days with CP assets being used a lot

gentle rose
brittle ledge
light bramble
drowsy pewter
#

Lots of people made tiny bagi packs to support one off ja mods with a handful of items

light bramble
#

Button specifically said it >_<

#

I mean I can stop putting in here each time I ask a question...I just like the thread

gentle rose
#

that part was just a suggestion! I mostly meant that you should (for yourself, not necessarily for us) stop apologising/putting yourself down when you link them here

light bramble
#

Ah. Sorry...Force of habbit...

#

and lets just say the media isn't helping at the moment...stupid birdflu

glossy cargo
#

It's not all bad, it works well KEKW

#

it just takes 10 minutes to load your save and apply the nested harmony patches when you use it with the other mods we explicitly support

#

Plus, on the "bright" side, technically, half the the mod is Python LUL

velvet narwhal
#

python thonk

#

the next platonymous

glossy cargo
#

Github says 100% C#, but that's just because it isn't aware of the other 4 repositories that are necessary for the whole thing lmao

light bramble
#

6480....I has a bone to pick with chu

rancid temple
#

You should direct your ire at chu then SMCKekLmaoDog

light bramble
#

Listen linda

#

did you write the json for cornucopia artisain machines?

#

XD

velvet narwhal
#

thonk afaik that's just Machine Data™️

light bramble
#

They made normal cheese a soft_cheese_item

glossy cargo
#

Oh hey, looking up the stats, I see that today specifically, I have officially reached 300 Harmony patches in my mod!
Nice milestone for 2024! aSDVpufferparty

velvet narwhal
#

fear

rigid musk
gentle rose
glossy cargo
#

Yep

velvet narwhal
#

some kind of server maintenance mod?

glossy cargo
#

No no, it's all gameplay

brittle ledge
#

oh, archipelago!

glossy cargo
#

it's the randomizer mod (archipelago)

velvet narwhal
light bramble
#

Wait you made that mod?!

glossy cargo
#

it's a multiworld randomizer, you can play with other people who are playing either their own stardews, or different games entirely

light bramble
#

I hecking LOVE that mod

velvet narwhal
#

ah, makes sense

glossy cargo
#

so you are connected to the server the whole time so you can send and receive items

drowsy pewter
gentle rose
#

ohhh, I see

uncut viper
#

do note that if your mod requires an internet connection you need approval from nexus

light bramble
# drowsy pewter dont think so
[game] Tags on Cheese: id_(o)424 id_o_424 color_yellow cheese_item soft_cheese_item item_cheese item_type_basic category_artisan_goods quality_none
[Console Commands] Sent debug command to the game, but there was no output.
debug listtags
[game] Tags on Goat Cheese: id_(o)426 id_o_426 color_yellow item_goat_cheese item_type_basic category_artisan_goods quality_none```
#

It's there

brittle ledge
#

I had a request a while back for Archipelago compat, I hope it's working SDVpuffersquee

drowsy pewter
#

hrrrhhh

glossy cargo
uncut viper
#

thats neither here nor there. if your mod connects to the internet, you need approval

brittle ledge
#

Not You Again, the fish mod SDVpuffersquee

velvet narwhal
#

did the concat strike again

light bramble
# drowsy pewter whoops

I'm just curious if I need to lable my large goat cheese as a soft cheese item. I'm not making it edible It's a larg boi I just don't know if the game will auto put it there for me >_<

glossy cargo
drowsy pewter
#

I put it on my Large Goat Cheese

glossy cargo
#

Because we do have a short list (about... 20 mods?) of mods that we explicitly bridge with, and we randomize them too, and they were all contacted for permission, and some were contacted asking for help with said bridge

light bramble
#

kk then I will too!

brittle ledge
glossy cargo
#

but we are inherently compatible with pretty much any cosmetic or UI mod too, we just don't interact

light bramble
#

I want to have as much compat as possible >_<

brittle ledge
#

Lezchill?

glossy cargo
#

That doesn't ring a bell. The people working on this with me, that have specifically been working on mod bridges, are Albrekka (WitchyBun), Ishigh, Rubbya and myself

light bramble
#

wait lol, 6480, I looked at your repo on github, there's no mention of soft_cheese_item for the large goat cheese XD

drowsy pewter
#

Whoops

light bramble
#
                    "Name": "6480.qualitygoods_LargeGoatCheese",
                    "Type": "Basic",
                    "Category": -26,
                    "SpriteIndex": 1,
                    "DisplayName": "{{i18n:LargeGoatCheese_name}}",
                    "Description": "{{i18n:LargeGoatCheese_description}}",
                    "Texture": "6480.qualitygoods/Objects",
                    "Price": 600,
                    "Edibility": 100,
                    "ContextTags": [
                        "color_yellow",
                        "cheese_item"
                    ]
                }```
drowsy pewter
#

We must have added the tag after I made that mod then

drowsy pewter
brittle ledge
#

hm. I let them know it was done but it did take a few weeks and I never heard back, so not sure if it ended up working how they wanted.

light bramble
#

mayhaps. I'mma still add the soft cheese item

drowsy pewter
#

Yeah we're going to use the tag

glossy cargo
light bramble
#

I also just realized something...there's gonna be some real good compat issues if people install my mod and your mod...

brittle ledge
#

Private.

#

(for the record, I don't really have many item-adding mods but I am happy to help with archipelago compat if desired SDVpufferheart )

light bramble
#

Only reason why I say it, is because if someone has both our mods installed, there would be 2 large cheeses XD

drowsy pewter
velvet narwhal
#

i honestly have no idea what that would even entail thonk

light bramble
glossy cargo
# brittle ledge (for the record, I don't really have many item-adding mods but I am happy to hel...

Pretty much any mod that adds actual content (objects, machines, npcs, doors, recipes, etc etc) inherently breaks with AP because they have content that behaves as if it's shuffled, but wasn't taken into account so it never gets unlocked.
That's why we introduced the concept of "supported mods", mods that we actually go over and add the content. But they are added mostly vibes based. Like if anyone likes the mod enough to add it to Archipelago, I don't stop them. That's how we got SVE. But also, it takes active maintenance work when said mod is also actively updating, so if the person steps away, then we get stuck on an older version. That's how we got stuck on SVE 1.14 until a kind soul comes along and helps us randomize the SVE 1.15 content pepePleading

#

I personally don't add much mod content, as I have my hands full with the vanilla content and features. But I help people when they are trying, by giving tips, pointers, and code architecture to make their lives easier

#

But I do help maintaining it once it's in, as it feels bad to remove stuff that was worked hard for just because a little thing broke (ex: Luck skill moving to spacecore luck skill)

brittle ledge
#

It's really cool that you do all that SDVpufferheart I haven't played it yet but I think Archipelago is pretty neat

drowsy pewter
#

The concept of it breaks my brain a little

light bramble
brittle ledge
#

Randomizers in general or Archipelago in particular?

glossy cargo
#

Just imagine getting to floor 40 of the mines, opening the chest, and it's a sword for Legend of Zelda Ocarina of Time

#

it's simple, really kek

drowsy pewter
#

Thats insane to me 😂

tiny zealot
#

i adore randomizers for specific games, but crossing games with archipelago does not interest me (sorry)

velvet narwhal
#

ouh, yeah i can definitely see how Random Crap Go™️ especially if a mod adds so many items would affect it

glossy cargo
#

It is haha. I discovered it from the Starcraft 2 implementation, and ended up making stardew during christmas break because I was bored

brittle ledge
#

it's also nice that people with completely disparate games can play together too SDVpufferheart

glossy cargo
#

It works well solo as well, as it is significantly different from mods like More Random Edition. We are more progression-based (random tasks unlock things that let you progress), as opposed to them that are more "Random bullshit go!". But since it's designed for multiworld, even solo play requires the extra setup and the server, so there are downsides

light bramble
#

is 500g too much for a large cheese price?

glossy cargo
#

Also Archipelago garantees winnability, as opposed to some randomizers that are just like "I give you random stuff and you'll probably figure it out", because in a multiworld with 1000 players, it would suck if everyone had to give up because one person had a bad roll

gentle rose
#

wait okay, so "archipelago" is a general randomizer for many games, and you did the stardew implementation?

glossy cargo
#

(Other randomizers do that too, sometimes, just not always)

brittle ledge
glossy cargo
#

There are over 60 games right now officially supported, and hundreds of unofficial ones. I made 2 supported ones and 2 unsupported ones, Stardew being my first (and my biggest by far)

brittle ledge
light bramble
brittle ledge
#

Strange Machines (the 1.6 version) doesn't, I'm pretty sure

glossy cargo
#

Basically, we have a truckload of rules.
Things like
To enter skull cavern, you need a skull key and access to the desert
To get Gold Ore, you need access to floor 80 of the mines, a tier 3 pickaxe, and a tier 3 weapon
Stuff like that. Many games have strict rules for what is possible, but in stardew we instead take the approach of rules for what is reasonable, as a lot of things are technically possible to grind but would suck.
Combine thousands of these rules, and a smart randomization algorithm made by Archipelago Core (not me), and you get a generator able to generate winnable playthroughs for any number of intertwined games

#

Stardew has probably one of the most complex rulesets of any archipelago games, due to how many game mechanics there are that interact with each other in crazy ways

velvet narwhal
#

👋 hi, door logic is stupid and i have suckered 4 people so far and even gotten a vanilla fix for one very very niche thing i wanted

glossy cargo
#

and due to that, we often find emergent patterns that nobody invented but become critical to the randomizer.
For example, friendship with Maru is one of the most critical things in all of Stardew Valley

light bramble
tender bloom
#

I added a lot of arrows — is this better, worse, or about the same?

brittle ledge
glossy cargo
#

(When you randomize doors, she unlocks up to 4 different entrances to potentially-critical places by being friends with you)

light bramble
#

found it

brittle ledge
#

that's so neat

velvet narwhal
#

i hear atra screaming in the distance, "THAT'S MY GIRL"

light bramble
#

kinda wish you could clear download history on nexus...

brittle ledge
#

I always wondered what a logic map for Stardew would look like. In a lot of games (e.g., the zeldas and pokemons) it's a lot more clear cut

glossy cargo
#

The stardew one is... massively convoluted, and not made for humans

velvet narwhal
velvet narwhal
#

we are truly babied by pathos

brittle ledge
#

pathos who literally supports half the mods of Stardew

glossy cargo
# brittle ledge I always wondered what a logic map for Stardew would look like. In a lot of gam...

at the very beginning of the project, we quickly realized that, and built an entire logic framework to abstract away as much of it as possible, to make it maintainable.
As a result, we have extremely modular and easy to develop code, that ends up dynamically generating, at runtime, the "real" rules, which are massive and convoluted to the point of ridiculousness.

As an example, we have a rules parser that prints the end result of one rule of choice. Once, we tried to find which rule was the worst.
Turns out it is ||The Night market Sale of Rarecrow # 8|| (Spoilered if anyone wants to try to guess it)

The rule itself, when printed in a human-readable format, is over 800 000 characters long, about as long as two average novels

brittle ledge
#

wow damn SBVLmaoDog

#

(what does that lock?)

tender bloom
#

My big conclusion from mapping frameworks is that y’all need to come up with shorter names

rigid musk
light bramble
#

Honestly I'm just gonna go with 500 for large cheese and 1100 for large goat cheese...

brittle ledge
#

||Deluxe Rarecrow|| I guess?

velvet narwhal
#

elizabeth: "i am now going to charge the framework community with my carpal tunnel surgery"

gentle rose
#

wait, what rooms does maru unlock?

light bramble
#

errr actually I have a better idea

glossy cargo
# brittle ledge ||Deluxe Rarecrow|| I guess?

Nope! Deluxe Rarecrow is actually a very simple rule
CanReach(Farm) and Has(Rarecrow_1) and Has(Rarecrow_2) and Has(Rarecrow_3) and Has(Rarecrow_4) and Has(Rarecrow_5) and Has(Rarecrow_6) and Has(Rarecrow_7) and Has(Rarecrow_8)

#

As a reference, from back in March, when we generated those stats

Total Locations: 2809
Total explanation length: 26126878 chars
Average explanation length: 9301 chars
Longest Explanation length: 763777 chars

Note: In the context of Archipelago, the word "Location" Refers to one task that gives a randomized item

brittle pasture
tender bloom
#

I pretend I do not see past the word Framework 😛

velvet narwhal
#

selph this is why you have a special place in my expansion that no one will no why their sword is suddenly named california disgust

tender bloom
#

About 200 pages written over 3 weeks, empirically

glossy cargo
# gentle rose wait, what rooms does maru unlock?

1: Mountain through her bedroom door
2: If you already have access to carpenter inside, you can go to her bedroom, and exit through the bedroom door
3: If you do not have access to carpenter shop, but have access to her bedroom, you can traverse to Sebastian's stairs
4: If you do not have access to carpenter shop, but have access to her bedroom, you can traverse to Exit through the main entrance

And as a bonus, in the case of 3 and 4, you also get access to Robin's shop, which is also critical

tender bloom
#

12 hours/day typing

glossy cargo
#

Most other things unlock 1 door, rarely 2, so this one stands out as particularly critical, especially for how unexpected it is

gentle rose
#

is it even possible in regular play not to have access to the shop but to have access to her bedroom?

tender bloom
#

Might depend on time of day?

glossy cargo
#

In regular play you always have access to the shop. But with doors randomizer, maybe the door that leads to the shop is the Island Farmhouse, but the door that leads to the bedroom is your farmcave. So the friendship allows you to traverse Farm -> Farmcave -> Maru room -> Carpenter shop -> Exit to Island Farm -> Now you have access to half of GI

tender bloom
#

Does her bedroom have lock hours?

light bramble
#

what's the formula for artisain goods like cheeses?

tender bloom
#

I think cheese just has a price, and iridium and such are the usual multipliers

light bramble
#

grumble

tender bloom
#

I forget but gold is 1.25x and iridium is 2x maybe?

gentle rose
#

some artisan goods are on a multiplier but idk if cheese is one of them

light bramble
#

Yeah I have that up rn

tender bloom
#

You can back calculate these from the wiki

brittle pasture
#

silver is 1.25x, gold 1.5x, iridium 2x

light bramble
#

I'm just upset because I want to make sure that the large animal prods I am adding have a good price...

tender bloom
#

Good price is going to depend on how they get made—does it take time to make them?

#

Iridium quality cheese takes a week to age, for example

light bramble
#

It's just large milk in cheese press gives large cheese

tender bloom
#

So if yours is instant, then pricing it the same as iridium would make it definitely valuable

#

In vanilla, that gives gold star cheese

#

So you can use gold star cheese price as the benchmark

drowsy pewter
light bramble
#

I know. I wanted to see if there was a formula XD

light bramble
#

Well actually...it doesn't even work for the goat milk XD

latent mauve
#

I got a request to move the entrance to my NPC Apartments area because some mod that I'd never heard of uses the same spot on the Mountains map. xD

light bramble
#

it's 1.53333333~

gentle rose
latent mauve
#

a user of both

latent mauve
#

They apparently posted on both of our mods to see if one of us could move our entrance xD

latent mauve
brittle ledge
#

No, I mean which mod, I hadn't seen something there

latent mauve
#

The mod was Crazy Ed's Crazy Fruit Trees, I think

brittle ledge
#

...I have never heard of that either

light bramble
#

Welp I think I know what imma do.

latent mauve
#

I just wrote up a compatibility patch for it to move the entrance yet again if that mod is installed, but, uh, this is probably just gonna keep happening xD

calm nebula
#

There are 20k mods

#

Making full compat with 20k mods

#

Seems incredibly unfun tbh

latent mauve
#

On the upside, I decided I didn't want to publish an update just for compat with one oddball mod, so I also added new rooms to the lobby and added outside lighting?

#

So I'll have a New Years Eve release after I'm done nomming dinner. LOL

brittle ledge
#

I mean if it was something that was 1.5 era I would've just said nah, but that's a recent mod, so yeah, I'd at least try compat if it were my mod

glossy cargo
#

I made a release earlier that I announced as
Last release of 2024! (probably theresasweat)

#

an hour and a half to go, no new bug reports yet 🤞

latent mauve
#

hey Tiakall, do you know off hand if the spot to the right of Robin's is used by anything?

gentle rose
#

I was so confused why the screenshots on that crazy tree mod looked so weird to me and then I realised they used clear glasses for their screenshots 😭 I will never get used to that style

latent mauve
#

Or anybody, really

brittle ledge
latent mauve
#

No, the Backwoods is the to left.

#

I mean on the low cliff to the right of Robin

brittle ledge
#

oh hm

#

the one by the warp shrine?

latent mauve
#

SVE doesn't, I did check that one.

gentle rose
#

I vaguely remember some sve thing to the right? but I could be very wrong

latent mauve
#

The cliff one lower than the warp shrine

brittle ledge
#

oh, the bottom edge of the map?

#

There's a vanilla shortcut near the water iirc

latent mauve
#

It's still a hole INTO the cliff face for my entrance

#

I just moved it onto a lower cliff

gentle rose
#

anyway, happy 2025 everyone!!!

latent mauve
#

So it's not on the bottom edge of the map either, I'll screenshot it in a minute

brittle ledge
#

ohh you mean this?

latent mauve
#

yes! It's on the left edge of that

#

so before the SVE bush inset

gentle rose
#

wait until the other mod posts a compat update for your mod that also moves their entrance one cliff down DogeSmile

brittle ledge
#

Nothing adds to that that I know of. Map mods tend to rearrange the terrain there, though at this point I think the only functional ones are SVE and Overgrown Valley

velvet narwhal
#

suspicious does anything happen to uh

brittle ledge
#

Overgrown Valley's description says it modifies mountain so you may want to check

latent mauve
#

ick

velvet narwhal
#

that cliff under the pink tree thonk

brittle ledge
latent mauve
#

I'm tempted to ignore Overgrown for compat purposes until someone complains. >_>

brittle ledge
#

Does it change the cliff?

#

thinking about running overgrown and LNH's new areas just so I know what they touch SBVLmaoDog

latent mauve
#

I don't know, I had to go to Kofi to download it, which is more effort than I wanted

gentle rose
#

I don't think overgrown changes things like that but I can check for you quickly

latent mauve
#

well, I'd need to know both locations potentially for Overgrown

gentle rose
#

do you want a screenshot of the mountains with overgrown enabled?

latent mauve
#

sure

#

as long as it doesn't expand up, that should be enough to check

gentle rose
#

looks unchanged to me

latent mauve
#

yay

gentle rose
#

here's it without overgrown vs with on the same save. Virtually no difference (I just wanted to make extra sure before I led you astray lol)

tiny zealot
#

thinking of drawing a little icon overlay on certain items in inventory/menus. stack size is bottom right... do any really popular mods typically use any of the other corners? (i'm not worried about the thumbs-up icon for already-read books)

gentle rose
#

isn't the quality star top left

#

like the silver/gold/iridium indicator

#

nope. bottom left DogeSmile

tiny zealot
#

actually, do i even need to be worried about the stack size

glossy cargo
latent mauve
#

huh, so, in case anyone else was considering flipping the tiles for the black sideways armchair, know that the furniture isn't properly sittable on the opposite side. xD

glossy cargo
#

But we use top right on the calendar for tasks, and bottom left for traveling cart days

rancid temple
#

I didn't want to record opening them all...

glossy cargo
#

We also use top left on the elevator menus

rancid temple
#

Smol

#

Is it a fairy?

latent mauve
#

no, that's the archipelago symbol, I think

glossy cargo
#

yes it's this icon apcolorcustom

#

the archipelago symbol is apcolor , but we had a nice person make custom pixel art for stardew to make it fit a bit better with the style

#

We let users pick which icon set they prefer between the two

brittle pasture
rancid temple
#

I'm probably gonna release this update to EMA with just this functionality but I am interested in making double doors open together regardless of which one you activate

glossy cargo
#

And it has colored variants to give more info. For example the red one is a trap for someone, and should be avoided

tender bloom
latent mauve
#

It definitely is.

glossy cargo
#

The one with the arrow is a progression item that will unlock something for someone

tender bloom
#

It probably doesn’t know what a left or right is

#

Only knows chair here

latent mauve
#

That happens if you pick left or right instead of opposite in the ChairTiles direction, mhm

#

Only red chairs are allowed to face left, apparently.

glossy cargo
#

That's... specific lmao

latent mauve
#

It's the only big chair sprite that faces that way natively in the tilesheet

glossy cargo
#

Here is what it looks like with the other icon set. Imo both look good so that's why I made it a config and let users choose

velvet narwhal
# rancid temple Doors!

oh i haven't asked it, but i assume it'd still have the functionality of the npc relationship bit cause iirc you said it's set up the same exact way thonk

rancid temple
#

Yep, it's still using the regular Door Action

velvet narwhal
#

nice

placid bolt
#

I'm sure I'm missing something silly, but I'm trying to follow the Get Started page for modding on the wiki and I get this warning that I think is stopping the Modding API from loading properly;

The analyzer assembly '<path>\SMAPI.ModBuildConfig.Analyzer.dll' references version '4.9.0.0' of the compiler, which is newer than the currently running version '4.8.0.0'.
All I can find online is generic indications that I might have the wrong framework target but as far as I can tell I'm using the latest SDK for net6.0. Any ideas?

tiny zealot
#

i think you want to install the SDK for net8 or some newer dotnet. you can target net6 even with newer SDKs

placid bolt
#

Thanks! It's still showing the warning, but it does seem to be loading the Modding API now so it might not be an issue anymore?

velvet narwhal
#

what does your csproj property look like?

uncut viper
#

(i think one of my projects actually gets that too but if its a warning it doesnt actually stop it from building. dunno why it happens)

velvet narwhal
#
<TargetFramework>net6.0</TargetFramework>```
you can still get some of the fancy stuff iirc with just a latest langver but i still just force this
rancid temple
#

I was warned away from using latest and told to target something specific like 12

velvet narwhal
#

fair enough

placid bolt
#

I don't have a LangVersion property at all lol, must be using a default

rancid temple
#

Yeah that's an optional property

tender bloom
#

You don’t have to have one iirc

velvet narwhal
#

it's just if you wanted uhhhhhh

#

button uses it a lot, hash... sets? timnk

#

or a lot of fancier stuff that i have yet to wrap my brain around

placid bolt
#

Ah that might be it; there's a visual studio update that I haven't installed

tender bloom
#

I usually call it a day once it compiles

#

No more smacking unless a bug appears

odd bloom
#

how does one type in the code for monster fruit wine? Is it like FlashShifter.StardewValleyExpandedCP_Monster_Fruit_Wine?

placid bolt
tender bloom
#

Or look it up in the SVE files SDVpufferyoba

#

(I think they’re more organized now? But there’s a lot in there)

odd bloom
tiny zealot
tender bloom
#

Lookup Anything has some configs

brittle pasture
#

is this C#?

#

either way (CP or C#) if item queries are supported you can use something like FLAVORED_ITEM Wine FlashShifter.StardewValleyExpandedCP_Monster_Fruit

#

I don't think monster fruit wine is a separate item on its own, but just vanilla wine "flavored" with monster fruit

#

(whoops correction)

odd bloom
#

I think so too cuz I remember seeing an error one time where the code is like

(FlashShifter.StardewValleyExpandedCP_Monster_Fruit) Wine

when the json had an error one time

rancid temple
#

If you mean spawning through the console, you probably won't be able to, the console only supports a super limited list of flavored items

brittle pasture
#

yeah console spawning doesnt support item queries iirc

odd bloom
#

oh no I'm not tryna spawn it dw lolol