#making-mods-general

1 messages · Page 558 of 1

slow basin
#

isalittle funky

#

i had to log in for it to go away myself

void aspen
#

yeah same thing

void aspen
vernal crest
near imp
#

ive made alternate textures fence before, but dont remember if i did gates SDVpufferthinkblob

slow basin
near imp
#

potentially stupid question, does it follow the gate example in the Alternate Textures example pack?

vernal crest
#

Did you check that the mod you're copying works properly?

slow basin
#

yes ive used it quite frequently

vernal crest
#

And you're sure it's got the gate textures on the same file as the fence?

slow basin
#

i have it set up exactly how they have their files set up yup

#

ive got gate in gate and fence in fence :3

#

i dont know why mine isnt working like theirs is =-=

vernal crest
#

If you have the fence and the gate in the same image file, they need to just have one .json. If you do a gate separately, it has to have an image file without a fence.

#

Can you share your json for it, please?

slow basin
#

sure

vernal crest
#

I did a gate conversion the other day and it was confusing

slow basin
#

this is the one for gate

vernal crest
#

Hmm, the only thing that looks off in yours is those long bits in the middle of each sheet

void aspen
#
            "Action": "EditMap",
            "Target": "Maps/Railroad",
            "MapTiles": [
                {
                    "Position": { "X": 10, "Y": 56 },
                    "Layer": "Buildings",
                    "SetProperties": {
                        "Action": "Warp 14 19 BathHouse_Entry"
                    }
                }
            ]
        }
#

should be it right

#

does edit map understands that I wanna edit purple layer and not the visual one

vernal crest
void aspen
#

ooh neat

vernal crest
# slow basin isalittle funky

So that I can see what this section is supposed to look like, can you change the fence and gate tiles from this screenshot into the textures from the mod you're copying? As in use the paint bucket on them to select the working mod's textures and then take a screenshot of that so I can compare, please?

slow basin
#

sure thing

#

oh nvm something happened to the mod since the last time ive used it O_O

#

so it was a fail from the getgo 😓 srry srry

vernal crest
#

Oh dear, that's annoying for you

#

Try following the example from the AT github like Kattia asked about before

slow basin
#

waah oh well yea ill do that wormnod1

vernal crest
#

Download the gate texture image and make sure yours lines up with it

void aspen
#

always forget that 💔

vernal crest
#

I always have to make lots of edits to my layering once I get the map in game

#

Do you know how to patch reload so you can edit the map while you have the game open?

void aspen
#

patch reload id

void aspen
#

am I stupid 😭

near imp
#

im always disappointed to re-remember how the front layer actually works vs how im hoping it works SDVpuffersquee but in this case since your sinks are in a wall, you should be able to put them in Buildings2, if theres no tile that has both the wall and the sink at the same time?

void aspen
#

yeah Ig thats the only way

near imp
#

I may be wrong but I think the layers go Buildings, Buildings2? Aba knows I bet. I always thought the "Buildings" was the 1, just not displaying that 1

void aspen
#

Mb you're right put a 2 there

near imp
#

unless the layers are zero indexed or whatever SDVpuffercoolest

vernal crest
#

I do Buildings1

#

And the way the Front tiles work is that you have to be two tiles south to show in front of them. If you're on the tile directly south you will have sinks on top of you.

slow basin
#

i have new knowledge

#

gates placed on fences .....

#

dont like at

vernal crest
#

Yeah I couldn't get them to work so I just decided I would not put gates on my fences

slow basin
#

yea

#

so ig i got the mod working as well as it shall :3

vernal crest
#

As far as I'm aware they don't give you anything special?

slow basin
#

ill just make a disclaimer about the gate on fence

near imp
slow basin
#

check it

#

pocky and pretzel fences

near imp
#

(i missed what the issue is)

slow basin
#

when gate is placed on the fence AT will try to turn it into a fence instead

near imp
#

naughty AT

slow basin
#

quick question btw

#

if im making a mod with 2 main files (CP and AT) do they use the same Mod ID?

#

and if not how do i get a second one if anyone knows

vernal crest
#

Do you mean mod id or update key?

#

Because you get a second mod ID by just writing another one

slow basin
#

OH! i mean update key

#

oopsie

vernal crest
#

If they are meant to be bundled together rather than alternate versions of the same thing, then usually people just give one of the mods the update key because updating one will update the other as well

#

If they are meant to be alternates, you want subkeys so that people with the AT mod don't get notified about the CP mod updates and vice versa.

slow basin
#

aah i see

#

then they'll get the same key wormnod1

#

i plan on keeping them updated at the same time and ill add a config to the cp version if i add more than like 4 variants

near imp
#

subkeys SDVpuffershocked

vernal crest
near imp
void aspen
#

I forgot is it okay if I add tilesets outside of the maps folder with tsinator

#

or ill have to do some magic with it

vernal crest
#

Yes, Tilesheetinator will automatically add them with the correct syntax

void aspen
#

ooh neat okay

#

ty

vernal crest
#

Darn, I have done my subkeys incorrectly

vernal crest
#

Oh great my attempt to fix the subkeys has resulted in Nexus duplicating one of the files. Ahhh!

slow basin
#

ill see about doing that then wormnod1

trail grotto
#

Quick question When creating a mod with SMAPI / C#, how do you guys get running code logs? For example, Debug.WriteLine("Hello World") ?

Basically, how do you debug it when testing it in Stardew?

trail grotto
#

Excellent. This is what I was looking for. Cheers.

void aspen
#

Anything else I should add here?

barren tapir
#

Is there a way to make a big craftable that modifies the buff duration of the input item?

trail grotto
#

Can anyone check if "Game1.player.addDailyBlessing();" works with smapi? It's supposed to be a valid method but my visual studio setup is saying it's not found. Wondering if I'm actually doing something wrong here

burnt canyon
#

Hello, hello there!

#

I've been working on some mods that could use some feedback

#

If anyone is interested in bringing feedback that is

lucid iron
#

So you'd have to make an alt version of the item with longer buff

barren tapir
lucid iron
#

Yeah price u can just do with price modifiers

#

But buff is as I mentioned data associated instead of instance associated

void aspen
#

is there any way to do a warp and play the sound from a single action

#

playSound and warp

#

using just tiled properties

lucid iron
#

If you did control the buff yourself then you can just have it do different buff depending on the item, maybe higher quality give more buff idk

barren tapir
# void aspen Anything else I should add here?

Maybe add some sort of rug to the side rooms? IDK, I'm just not a huge fan of the floor texture in large quantities (It's not your fault, I just think that the base game texture is a bit ugly is all 😅)

near imp
lucid iron
barren tapir
lucid iron
#

Are you the one who is doing addbuff on the player

#

Instead of simply putting in buff data in data/objects

barren tapir
burnt canyon
#

Hmm, mods that enhance the social world of Stardew Valley, I'm just a beginner but I have been cooking with what I have

barren tapir
near imp
lucid iron
#

Big Potion

barren tapir
# lucid iron Yeah then the best bet is just a second potion item imo

Probably. Though I can hold off on this feature (I was already planning on having it be a version 2 feature, I just wanted to see if there was an easy way of doing it).

I also know that I will eventually need to create a C helper mod for this if I want to do some of my more ambitious ideas. My goal with this project was to create a mod that I could come back to and work on as I get better at modding.

burnt canyon
#

Suree. Well, the mod is called Town Talks and here is the description from the content.json.
"Pelican Town has opinions about your love life. Custom dialogue, letters, and reactions from villagers as your romance situation gets increasingly unconventional. Requires Free Love.",

lucid iron
#

Some of the stuff you want could probably be done via certain frameworks though

near imp
#

Love the concept, always wondered if the villagers didnt have any thoughts about what the farmer was up to, running around eating raw fish and romancing people, jumping into peoples beds to give them gifts, that sort of thing SDVpuffersquee theres a lot to comment on so their take on the romance part sounds fun

barren tapir
# lucid iron Core mod 😌

Yep! This mod is by far my most ambitious mod thus far (my previous mods only added one or two machines and some shop items).

And I know, in fact I'm already using EMC!

lucid iron
#

For example if you use spacecore then you could:

  1. Have eating the item run a trigger action
  2. In that trigger, use If to check which quality tier of item you have
  3. Apply different buff depending
#

I said quality mostly because that's a easy thing to change and check

burnt canyon
#

Here is another mod I just finished as well, it's called Pierre's Spiral and here is from the manifest.json.
"Pierre watches your farm grow more successful every season and slowly, visibly loses his composure about it. Letters get increasingly unhinged. Dialogue gets increasingly strained. He is fine. He is absolutely fine.",

barren tapir
#

Also, slight correction. I'm using Calcifer, not EMC. I was originally going to use EMC, but I decided to scrap the features I was going to use it for (mainly bc I didn't like them 😅)

near imp
#

!! not sure what to say but ill say this; I usually never have any interest in most NPC mods (kinda find NPCs boring) but oh man the spiraling one, that one i would like to have, very much SDVkrobusnaughty 🔥 (in other words, the highest praise i can give)

lucid iron
#

Then you can change completely over to spacecore if u want

barren tapir
#

Currently I'm only using it for defining custom categories I believe

burnt canyon
#

Yess, it's just ideas that I just came up with and began making so I'm not sure how they'll work on others playing on them

lucid iron
#

Yeah that is also a thing spacecore has blobcatgooglyblep

near imp
lucid iron
barren tapir
burnt canyon
#

I mean I'm not sure how it would work when others would want to try it out, I have been testing it so I'm not entirely sure

lucid iron
#

If you think the mod has enough meat to it then just post it on nexus

#

It's ok if there's bug

burnt canyon
#

Suree, I'll make sure to post it, it's just that I have been working on other projects and mods

near imp
#

(obligatory not an expert -again) but i would also make sure that it follows good practices, especially if you havent published before. stuff like that it doesnt overwrite large parts but edits where possible, doesnt change things that it doesnt need to. general consideration about how modular it would be when used with other common mods. technically no one HAS to make their mod compatible with anything else, but well, we all got a lot of mods and some have a lot lot SDVpuffersquee

burnt canyon
#

Of course, of course, I make sure for my mods to not interfere with any other mods one might have

barren tapir
burnt canyon
#

Here is an mod revolving around Willy, called Willy's Trust, here is the manifest.json
"Willy doesn't sell his best gear to just anyone. Earn his trust through real fishing achievements to unlock his rarest stock — and expect letters along the way whether you succeed or not."

near imp
burnt canyon
#

Here is another mod paired with Willy's Trust called Willy's Tall Tales. Here is from the manifest.json.
"Willy sends you seasonal letters about his fishing adventures. They are completely unverifiable. He is absolutely sincere about all of them.",

vast talon
#

guys was it possible to make map and npc mod on phone?

burnt canyon
#

Yess, it's entirely possible

torpid sparrow
patent lanceBOT
torpid sparrow
#

oh hi

#

LOL

lucid iron
#

the map part im not sure, need to find a tmx editor that works on mobile

slow basin
#

...ok stupid question but whats the difference between active and passive festivals

is it that active ones require you to be present for them to work therefore locking you out of a map for a day or is it that they have activities to take part in FerretThink

vast talon
burnt canyon
#

Here is also another mod related to Pierre's Spiral, called Pierre's Sanity Meter, here is from manifest.json.
"A hidden mechanic expanding Pierre's Spiral. The more successful your farm becomes, the further Pierre unravels — through five sanity stages from Concerned to Completely Unhinged. Players never see the meter but they'll feel every step of the descent. Recovery is possible.",

near imp
#

@lucid iron btw in relation to the parrot trinket replacement mod and the sound CueSwap bit, I checked my notes and the texture i edited was based on a bluebird from Elle / junimods, and their permissions are closed. my bird is somewhat changed but imo not enough that you wouldnt be able to tell they had the same base. so wont be able to publish that one unless i redo the sprite completely from scratch, which i dont really want to SDVpuffersquee

barren tapir
#

I did come up with one mod last night that I'm super excited about, but is also probably way above my current skill set. It would essentially add 7-9 special slots to your UI screen. There'd be:

  • 1 to 3 "Quick Access" slots that'd have a keybinding to use.
  • 3 slots dedicated to the horse flute, warp scepter, and pan. The flute and scepter could be used with key binds (with a togglable confirm dialog for the scepter), while the pan would just let you click the panning spots without switching to the item.
  • 3 slots that can hold an infinite number of stone, wood, and hardwood

And finally, a special toolbar that can be switched to that displays the items in these slots. Items cannot be placed in it unless they are already present.

This is entirely self serving on my part bc inventory management is a pain. I know there are several similar mods, but none of them gelled well with me.

vernal crest
lucid iron
#

passive is like night market the map changes and you go there and/or leave as you please

slow basin
#

aaah ok

#

ill try to make my festival thing a passive one then

#

that way no one gets static locked

near imp
vast talon
#

guys does this app work for stardew map editing?

slow basin
#

counts on fingers
I think i'll need to make at least 3 outside maps and at least 7 inside maps CatCry

#

i could prov reduce the amount of outside maps to 2 i;d reduce to 1 but then that'd be a pretty big map FerretThink

#

or at least be bigger than i'd want

#

i don't want you to feel like you have to trek 10 miles to get from the bus to like someones trailer for example

near imp
#

ah making maps is fun! ...well, until its very decidedly not fun any more... SDVpufferglare (looks at personal maps that are pretty on one part and plain tiles on the rest when my energy ran out 😂 )

#

the issue with maps always looking smaller in tiled and turning out massive ingame is a very annoying one too

vernal crest
lucid iron
slow basin
#

i keep hearing that making maps is fun FerretThink i usually lose energy quickly though when it comes to it, i think i just have a hard time sitting still

trail grotto
lucid iron
vast talon
near imp
#

AI - lying?! why ive never

vernal crest
#

Well yes, they are lying software, that's what they do

slow basin
lucid iron
#

!decompile

ocean sailBOT
lucid iron
#

sdv isnt obsfucated so u can just see everything AquaThumbsup

vernal crest
#

I do not have fun making maps, I have no design skill. I'm good at Tiled's technical aspects but that's it.

trail grotto
#

Haha, but really they must be getting that information from somewhere right? All AI does is copy and paste

near imp
#

uhhh no

slow basin
#

oh no

near imp
#

its more like autocomplete a sentence

vernal crest
#

No, generative AI does not just copy and paste

lucid iron
#

i already played the #rules card and it's prob better if we dont derail into another ai discussion imo RunRun

near imp
#

its making up things based on similar stuff its seen before. so you get semi-brand-new bullshit

#

(ill stop engaging now)

trail grotto
#

Okay, scratch all of this. Is there a place I can find all the fields of stardews classes? For example, the player properties and methods of Game1.player?

lucid iron
#

the effects of the statue of blessing is applied in StardewValley.Object.CheckForActionOnBlessedStatue

lucid iron
vernal crest
#

Yes, in the decompiled code

slow basin
#

man

trail grotto
#

Is that documented somewhere or do I investigate myself?

slow basin
#

im trying to like visualize and procrastinate opening tiled

lucid iron
#

the game is still closed source so no i don't think anyone's documented everything

vernal crest
trail grotto
#

Right. Well, I can hope and dream. Thanks guys, much appreciated

near imp
#

alright, i get the point, im a freak SDVpufferwaaah /jk

slow basin
#

LMAO

vernal crest
#

Judging by the number of map mods you are not lol

#

Just unusually outnumbered right now haha

jaunty shuttle
#

I have a couple maps drawn on paper

#

Yayyy supervibecat

#

If I wanted to do that with C# would it be difficult? Or possible at all?

woeful lintel
#

I... think it would be Harmony territory, so hard

jaunty shuttle
#

It’s ok i’ll just explain in my mod not to put peg people, dinosaurs, or silks on tables lol

#

Wait so if you were to make a tablecloth mod using FF, you’d have to have a different tablecloth for every table size cause it can’t differentiate?

lucid iron
jaunty shuttle
lucid iron
#

You would need new art regardless, and it's easier to manage shadows if it's 1 piece of art

jaunty shuttle
#

So if you wanted 5 tablecloth options on 10 tables there’d be 50 different tables? cat_scared

lucid iron
#

Yeah that's not uncommon

jaunty shuttle
#

That’s terrifying

jaunty shuttle
lucid iron
#

Well sort of

#

Moby dick makes fish have a different sprite for inventory and held item

#

The held item sprite is the one used when placed on table

#

But it was a joke ok blobcatgooglyblep

jaunty shuttle
#

Lol

#

I mean I’m absolutely not against using cheesed methods as long as it has the functionality I want

vernal crest
#

I think a good way to handle different colours is to have the different shapes in CP and the different colours in AT

#

And by "a good way" I mean "it works best for my brain so I want other people to do that please" xD

jaunty shuttle
#

AT requires a menu though, I want things to be dynamic to use

#

Like my silk playstand, you pick a stand and then just click on it with whichever color silk you want

lucid iron
#

Maybe u want that chroma key mod

jaunty shuttle
#

Chroma key?

#

The silk functionality works with FF just fine, I can even have a different sprite if you place it on the ground (yay!), but if you put the silk on a table it would break :(

#

So my thought was if C# can add some sort of identifier to new ‘table type’ furniture so it can differentiate between normal tables and the special table, it’d have full functionality without any weirdness

#

Which would allow dynamic table cloth mods too. It’d be so cool to just pick a tablecloth and lay it on your tables imo

lucid iron
#

It's a mod that let you recolor furniture arbitrarily

jaunty shuttle
#

That’s really cool, bet people would like that with the mushroom playhouse

#

How would it help with the furniture functionality though?

lucid iron
#

It's a player side thing in this case

#

I brought it up in response to AT

jaunty shuttle
#

Ah ok. So if you have 5 tablecloths options and 10 tables, chroma key gives you dynamic variations for every color of the rainbow on top of that

void aspen
#

ooh I think im done with this thing for today

#

does nexus allows to upload videos?

jaunty shuttle
#

Instead of needing like 700 table options in order to get 14 colors of each

void aspen
#

or gifs

jaunty shuttle
#

On the mod page? Yeah it does

void aspen
#

nicee

lucid iron
#

Gifs yes

#

Videos you need to use YouTube and then link it

jaunty shuttle
lucid iron
#

!harmony

ocean sailBOT
#

Harmony is a framework for patching .NET code, allowing you to take any portion of the game's logic and insert or substitute your own. This gives you more flexibility and control than SMAPI helpers and events, at the cost of being typically more complex and difficult to use safely and correctly, and more likely to break with a future update of the game and/or SMAPI.

If you are trying to do something that isn't possible or practical with SMAPI alone, then Harmony is usually the solution.

For more information, refer to the following:

empty peak
#

Hi, how can I check which locations in "Data/Locations" are farm maps (goal is to filter out locations the player can't visit because they didn't choose that farm layout in the beginning)?

lucid iron
#

It's needed if you need to alter the game's code

lucid iron
#

There's only a single Farm location created per save pretty sure

empty peak
lucid iron
#

That is the underlying data

#

If you are in C# and a save is loaded, you can iterate all the locations that were created using Utility.ForEachLocation

vernal crest
lucid iron
torpid sparrow
#

npcs "helping" around the farm (repairing fences and filling the pet bowl) is built into marriage right

barren tapir
#

I decided to make custom potions for the increased duration thing, primarily bc I already made sprites for them (and bc I realized how fun an all day potion effect would be for someone like me who hates timed buffs)

empty peak
# lucid iron With that in mind could you elaborate on why you want to filter out the other fa...

From what I gathered I need to check LocationData to get information on where specific fish can spawn (in LocationData.Fish, optionally considering LocationData.FishAreas).
But if I just get all that from "Data/Locations" I end up with maps the player can't go to to get that fish, because they're on another layout. So I need to filter out all farm maps the player hasn't chosen, and I certainly don't want to rely on a farm_ prefix or something hardcoded.
Please let me know if I'm approaching this from the wrong direction - but I will check out Utiliy.ForEachLocation!

blissful panther
empty peak
#

Thank you both 🙂

lucid iron
#

It's possible for a location to have no data btw, make sure you check for null

mortal blade
#

Re: Harmony

Use Harmony as a last resort. SMAPI will handle 98% of your modding needs. Another 1% can be done using C# reflection. Harmony is the last resort for modders, as it can change some things so drastically that SdV and SMAPI can't recover.

vernal crest
#

(Cue ichor coming in to vehemently disagree with this Harmony fear-mongering /lh)

jaunty shuttle
#

Yeah from my understanding Harmony a big no no for mods?

#

Like people actively avoid mods that use it

mortal blade
#

Harmony gives me dissonance. 😁

vernal crest
#

People are silly to do so

void aspen
#

I think i am done with it

vernal crest
#

Harmony isn't bad, it's just more complex

jaunty shuttle
#

Do you want it showcased?

void aspen
#

Would be nice yeah

mortal blade
jaunty shuttle
mortal blade
#

But .. sometimes having the engine itself is the only way to gitter done

jaunty shuttle
#

Would it be worth asking pathos if there’s any alternative method to do it without harmony?

vernal crest
jaunty shuttle
#

Wait what

#

I thought frameworks had to be listed as requirements in the download, and SMAPI popped up a harmony warning?

void aspen
#

Do I need to do anything to showcase it or someone else can do that?

vernal crest
#

Harmony is not a framework mod

#

It is a library that is used by the modmaker which is already included in SMAPI

mortal blade
#

I've found that IF you can get pathos' attention, and state your used case, and it's a useful one... it tends to end up in the next version of SMAPI. 😉

vernal crest
#

And if SMAPI warned for Harmony, then almost every framework mod would have that warning

jaunty shuttle
#

:0

#

So it’s only the coding people who will know my crimes?

vernal crest
#

And only people like Hackswell who will even call it a crime lol

jaunty shuttle
#

We may embrace the dark side folks

mortal blade
#

SdV is a car.

SMAPI adds connections all over your car so you can trick it out in a mostly safe manner.

Reflection is hacking the OBDII computer to get it to change how your car runs.

Harmony is disconnecting hoses and wires on the fly (with the engine running) and doing utter wizzardry.

gaunt orbit
lucid iron
mortal blade
#

I know. It's just the Software Developer in me. It grates upon my soul.

I keep forgetting that modding is NOT software development (with its rigors and best practices)

round dock
gaunt orbit
#

If you can reasonably do something without harmony you should, but you shouldn't be afraid of harmony

lucid iron
#

It's just not something ppl care about

void aspen
mortal blade
#

Just that Harmony is a very advanced method for rewriting code. That most of us would probably screw up.

lucid iron
#

I try to do stuff without harmony but usually cus it's a fun exercise

#

I also have a mod with 20+ harmony patches so

vernal crest
#

I have 76 mods running right now and this is how many of them are using Harmony

mortal blade
#

Woah.

round dock
gaunt orbit
jaunty shuttle
#

Ok ty guys! Knowing it’s technically possible now - how difficult would it be in this specific use case? I’m sure it’s above my skill level but like by how much?

mortal blade
#

On the other hand, most of those harmony patches are for, as someone said, frameworks. Which are usually developed by very experienced modders.

lucid iron
#

The only flavor of harmony I'm against is skipping prefixes that copy large chunks of original function

vernal crest
#

I was able to figure out how to use Harmony...but then I couldn't figure out how to write the C# to change what I needed to :D

mortal blade
#

Hahahahahaha

jaunty shuttle
#

Avoid ontimechange like my life depends on it

#

That’s about it lol

gaunt orbit
#

Yes please god anything but ontimechange

vernal crest
#

How much do you know of other programming languages?

mortal blade
#

Ontimechange is excellent for stuff you don't need to check often! Much better than ontickupdate for slower updates

gaunt orbit
#

No I mean for cp specifically

jaunty shuttle
#

(I can look at C# and understand ruffly what it does and how it works, like some of the stuff Chu’s shown me from HMK - but I have 0 experience in actually doing it)

gaunt orbit
#

The 10-minute cp lag spikes are terrible

void aspen
#

is C# harder than py

lucid iron
#

You should just try doing it and see how it goes

void aspen
#

or like lua

lucid iron
#

Not really it's just different, both python and lua are not static typed

vernal crest
#

I find C# incredibly difficult, SO much harder than Python

gaunt orbit
void aspen
#

hmm

gaunt orbit
#

C# has a lot of fancy extras too, but you don't have to use any of them

void aspen
#

I should be able to do something as long as I stick to the documentation right

mortal blade
#

I've used both C/C++/C# and Perl/Python. If you aren't familiar with static typed languages, it's a bit tough at first

void aspen
#

I see

lucid iron
#

Depends on what you wanna do i guess

#

Sometimes u don't even need c# SMCPufferjail

gaunt orbit
#

For simple things, the stardew wiki and ms docs should be enough

mortal blade
mortal blade
jaunty shuttle
lucid iron
#

Well it's just my general advice to anything

#

Go try it and see

vernal crest
#

I agree with chu that just trying is a good idea

gaunt orbit
#

Java was technically my first typed language, so in comparison c# is a walk in the park lol

mortal blade
#

Sorry for confusing and preaching! Mailia... use the tools you need to get what you want done.

#

Ignore anything I've said. 😉

gaunt orbit
#

(java 8)

vernal crest
#

The wiki has enough info to get you going with a working mod and then from there it's experimentation, really

mortal blade
#

Wasn't C# microsoft's "fork" of Java?

gaunt orbit
#

Yesnt

blissful panther
#

I mean Microsoft had a direct version of Java. Ish.

mortal blade
#

For a very loose definition of fork, yes. 😉

gaunt orbit
#

Not a fork, but it borrowed a lot of ideas from Java

#

But improved on them with the benefit of hindsight and money

mortal blade
#

My first typed language was ANSI C... on a 6502 CPU (Atari 800XL)

#

As much as I'm personally displeased with MS itself... C# really isn't bad as a language. 🙂

gaunt orbit
#

I avoid c/++ bc the tooling sounds like a nightmare

calm nebula
#

C# is amazing

lucid iron
#

Makefile never hurt anyone trust

#

cmake can explode

mortal blade
#

make -j16

calm nebula
#

For the genre of language it is in (strongly typed, with gc, big standard library)

#

I love it

mortal blade
#

.... and then there are the.... Rustaceans. 😉 It's probably better to not speak of their kind.

jaunty shuttle
#

I’m guessing it would be harder to make it framework-esque so I could give it to Leroy? Like better to just code it for my use case and let other people change it to be frameworkable themselves?

vernal crest
#

I imagine a big reason I am struggling so much with C# is that I don't know what types are haha

gaunt orbit
#

I've played with rust but I'm lazy and the fact that it's not as batteries-included has deterred me from making any larger projects with it

blissful panther
mortal blade
vernal crest
blissful panther
calm nebula
#

Languages atra likes

  1. Rust
  2. Python (not for good reasons)
  3. C#
mortal blade
calm nebula
#

Languages atra hates:

  1. Perl
  2. Any LISP (and yes I do write skill these days)
mortal blade
#

Perl > Python. 😛

calm nebula
#

Languages atra would probably like if they had time to learn:

  1. Zig
  2. Julia
vernal crest
#

You each get one more off-topic message

mortal blade
#

Just... that it's dying and not "cool" any more

calm nebula
#

Done

torpid sparrow
#

making mods amirite

mortal blade
gaunt orbit
#

I do wish discord had a better way to transition conversations between channels

vernal crest
#

As I have been complaining in SMC, taking screenshots of the mod is the worst part of making a mod for me

mortal blade
#

Beaches definitely needed more crabs.

torpid sparrow
#

are u doing it for ur thumbnail?

#

or for header

gaunt orbit
#

Especially when it's a mechanical mod

calm nebula
#

You are allowed to use a gif

vernal crest
#

If I take a screenshot of just my screen, it's not big enough to include the entire thing I need to show. If I do the whole map, I can't easily crop it to 1920x1080. Waaahhh

mortal blade
#

Wem: They take a snapshot of their monitor with their mobile phone? 😉

jaunty shuttle
#

Man how am I scope creeping myself into being a framework person anidead

#

When did this happen

mortal blade
#

Mailia: Noooo! Don't go to the Dark Side!!!

vernal crest
vernal crest
jaunty shuttle
mortal blade
#

Once you make a framework... other mods DEPEND on it. Then you're always fixing OTHER people's mods, and never having fun on your own.

jaunty shuttle
#

Ok so i’m gonna be here asking questions a lot then

mortal blade
gaunt orbit
vernal crest
#

It's very much self-sufficiency land in C#

gaunt orbit
#

I can give you advice for specific things though

vernal crest
#

Or "make a friend who is willing to let you bug them every 10 minutes" like I have with iro

mortal blade
vernal crest
#

(iro is taken /j)

jaunty shuttle
#

I think that’s already me with Chu even before deciding to do C# lol

vernal crest
mortal blade
#

Content Patcher is utterly BRILLIANT, IMO.

vernal crest
#

I was trying to mod another game and I couldn't even find an explanation of what the file types were

jaunty shuttle
gaunt orbit
#

The reason c# is less well documented is because generally speaking, frameworks are very narrow in scope and it's easy to map out exactly what they can do. Whereas c# can do literally anything, and encompasses the entire game instead of just one slice

mortal blade
#

Both CP and SMAPI are indeed very well documented, from my experience. Could it be better? Always. But compared to other projects, it's got it going on!

gaunt orbit
#

Even CP, popular as it is, "only" replaces and edits files

mortal blade
#

But CP good enough for like 70% of the things modders want to do. If you stay in that, you're set!

blissful panther
#

And even then, that's SMAPI doing the actual edits! CP just orchestrates it all lovely-like.

mortal blade
#

Exactly! But CP and SMAPI were written by brilliant developers, who actually understand modders' needs and wants

vernal crest
lucid iron
#

Mailia i think for your feature

#

It's better to not consider frameworking it at first

gaunt orbit
lucid iron
#

Do it specifically for your furniture and get it all working

#

Then you can revisit how you might let other object gain these properties

mortal blade
#

<controversialOpinion>CP is great for your mod. It's the FEATURE CREEP that drives you into SMAPI 😉 </controversialOpinion>

gaunt orbit
#

Not at all controversial! As much as I love working with c#, I still prefer cp for content-only mods, or even c# mods that do lots of content things

mortal blade
#

And many times, CP and SMAPI work together You do the basic edits in CP, and just have a little SMAPI code to change the behaviour.

vernal crest
#

There's also a user on the official wiki who has some C# tutorial stuff on their user page but I have forgotten who it is. Apparently there's a lot of old or poor practice stuff on there but it was still helpful for me as a person who knew zero C# when I started trying to make C# mods.

jaunty shuttle
#

Yeah lol, CP and FF are AMAZING. I’m just extra lol

barren tapir
#

I think I'm just about finished! All I have left to do is to clean up some files and write nexus mod page and guides! Definitely the most ambitious mod I've made thus far (it also has 3 new special orders)!

mortal blade
#

I need to replace a sprite? CP. I want it to behave other than SdV does it? SMAPI/C#. You CAN do both in C#... but CP is sooo easy!

jaunty shuttle
gaunt orbit
#

My first c# mod was based on plato's horribly dated mod template

blissful panther
mortal blade
#

Luckily, my first C# mod was just taking over someone else's SdV 1.4 code and updating it to 1.6.

gaunt orbit
#

Mine was a horrible harmony patch to fix a vanilla bug

mortal blade
#

SdV: Modding soo guud, you can patch the bugs yourself!

gaunt orbit
#

Skipping prefix with a bunch of copypasted code

mortal blade
#

copypasta code? 😉

barren tapir
#

I'll get to work on finalizing things later today, I have my first ever SVE playthrough to continue!

Also, is it normal to have NPC clones in SVE?

gaunt orbit
#

What the fuck did you just say about me you little bitch, I'll have you know I graduated top of my class etc etc

gaunt orbit
lucid iron
barren tapir
lucid iron
#

The goblin made me do everything in one big OnAssetRequested

mortal blade
#

I edited my savefile because Mr. Qi was being a little @#%@#$ and not giving me Qi seeds. After 3 years, it had never shown up. HA! I'm smarter than you, Mr. Qi!

calm nebula
lucid iron
gaunt orbit
lucid iron
#

They might come back tho

barren tapir
lucid iron
mortal blade
#

Nullnnow.... killing innocent NPCs. What madness this world is!

gaunt orbit
lucid iron
#

But yeah in this case I don't needed cp's big selling points (tokens) and do need the foreach

mortal blade
#

Mmmm... foreach()

barren tapir
#

I'm the type of madman who plans on releasing their biggest mod yet in version 0.9.0 instead of 1.0.0 because I still have 4 or 5 sprites left to make but don't feel like doing them rn 🫨

gaunt orbit
#

IEnumerable my beloved

#

Truly she can do anything

vernal crest
#

ForEach is the only thing that would have me consider a CP competitor

jaunty shuttle
#

Ok plan is i’m gonna work more on my mods content (gotta make sure i’m able to publish a version in the next 11 days, even if super cheesed lol), and then whatever time I have left (if I have time left) will go towards learning C# stuff for the extra features I want

gaunt orbit
lucid iron
#

I am still ruminating on foreach local tokens

#

Atm I feel it would be done internally as a transient "include" patch constructed at processing time

#

But idk how it'd be presented on the content pack format

barren tapir
barren tapir
burnt canyon
#

I was thinking about creating another mod, does anyone have any ideas

gaunt orbit
#

It basically singlehandedly kicked off the roguelike deckbuilder genre

ocean sailBOT
#

If you have a mod idea that you aren't planning to make yourself, you can put it in the mod ideas github: https://github.com/StardewModders/mod-ideas

However, this does not mean anyone is guaranteed to work on your idea—modders who are looking for ideas sometimes go through and work on what they find interesting off this list. If you want to pay someone to make your mod idea, there are a few people who do commissions (mostly art, sometimes code); you can ask around, search usernames for the word comms, or see !commissions.

gaunt orbit
#

The sequel entered early access recently and it was a big enough event to get a front page splash on the steam store

burnt canyon
#

Yeah no

lucid iron
#

I try not to start new mods if I have not yet posted all my wips (emphasis on try SMCPufferjail )

gaunt orbit
barren tapir
vernal crest
#

The github page is where we tell people to put their ideas, so if you want an idea from someone that is where to go.

burnt canyon
#

That's why I said, yeah no

jaunty shuttle
#

What were you looking for then?

vernal crest
#

I'm confused. You just asked for ideas.

#

And then said no when they were offered.

barren tapir
#

I would, but I don't have enough experience with modding to help with anything 😅

gaunt orbit
#

I can help you if you have questions about the execution, but all of my limited creative capacity is going to my own projects rn

lucid iron
#

I hand out scope creep for free if u have an inspiring wip Dokkan

gaunt orbit
#

Hey. Hey chu. What features should I put in my festival framework chu.

barren tapir
jaunty shuttle
pale torrent
#

hey can someone help me with fashion sense its my first time using it and i got help yesterday and today i wanted to test some stuff i dont know how to make the model not down below like in the screenshot and also i want it smaller but not loosing the sprite size here is also my code

#

im reallly desperate ahahah

barren tapir
gaunt orbit
#

Oh that actually is a fun idea

lucid iron
gaunt orbit
#

Yeah

lucid iron
#

I think it would be fun if u supported star token analog

#

And also if you could have mini sub events that the content modders can script

vernal crest
lucid iron
#

Like if i talk to Lacey in Fashion Festival she could show me around

#

And give me a hat

gaunt orbit
jaunty shuttle
#

Do you mean like change it to be a higher resolution?

pale torrent
lucid iron
pale torrent
#

Like someowhere to this size i achieved it with another mod

lucid iron
#

I think calico eggs is a pretty good take on the concept though

#

So really all u need is "i promise to yeet this item from the world after end of fest"

vernal crest
pale torrent
gaunt orbit
vernal crest
gaunt orbit
#

I guess if you were doing something like the trout derby that would work

lucid iron
#

With some other frameworks potentially? It's a bit hard to say since meaningful is pretty arbitrary

#

I could use BETAS to give u 1 tuxedo egg every time u talk to someone in the fest but is that meaningful to my fest? I dunno

swift falcon
#

a festival framwork sounds brilliant

#

as a sv festival lover

vernal crest
#

And a busy mom

lucid iron
#

Oh yeah a more technical side thing

#

How terrible would it be to have 2 active festivals in 1 day

pale torrent
torpid sparrow
#

oh wait

#

active as in like cutscene kind

vernal crest
torpid sparrow
#

or active as in just actively existing

lucid iron
#

No 2 active in context of wren's proposed festival framework

#

For example east scarp currently has a spirit's eve thing that isn't a festival, just everyone in ES agreeing to move their NPC there

#

Is it feasible to have that be an active festival too or is it too cursed

latent mauve
#

I feel like festivals already take too long, gameplay wise, I would get frustrated with two back to back as a player

gaunt orbit
lucid iron
final arch
#

LA doesnt parse custom recipes for custom machines?

#

are vanilla hardcoded?

gaunt orbit
pale torrent
gaunt orbit
#

You mean Lookup Anything right?

final arch
#

I must be doing smth wrong then; Ill check, ty. the recipe does work so Im confused why LA doesnt show it

#

yes

gaunt orbit
#

If it uses a custom outputMethod that might break it

#

Not sure

final arch
#

na its a simpel CP recipe

vernal crest
final arch
#

1 input 1 output

vernal crest
#

LA works on the VMV custom machines, I use it to cheat and find out the recipes

pale torrent
#

i feel kinda dumb

vernal crest
#

Try making the BodySize values half what they are now

pale torrent
vernal crest
#

No, this is the appropriate channel for help

#

Also, I am going to bed as it is nearly 3am

#

You will just have to keep reading the fashion sense docs and experimenting more

pale torrent
#

okay still thanks though goodnight

vernal crest
#

Good luck!

torpid sparrow
#

goodnight aba!

lucid iron
#

Normally it does parse recipes that aren't custom output method

#

Maybe your recipe is on a machine that has custom output so it got skipped?

burnt canyon
#

Hmmm, I just created a new mod that just uses Content Patcher which goes well with my other mods. It's called Your Turn and here's the manifest.json.
Name": "Your Turn",
"Author": "Lenchito",
"Version": "1.0.0",
"Description": "Gives the farmer a voice. Reply to Pierre's spiral, call out Willy's tall tales, push the Scholar gently, weigh in on town gossip, and finally say something back to the people who've been talking about you all year.",
"UniqueID": "Lenchito.YourTurn",
"ContentPackFor": {
"UniqueID": "Pathoschild.ContentPatcher"
},
"UpdateKeys": []

#

I've also made another called Seasonal Secrets, here's from the manifest.json.
Name": "Seasonal Secrets",
"Author": "Lenchito",
"Version": "1.0.0",
"Description": "Hidden forageables appear across Pelican Town on the first day of each season and specific calendar dates. Rare flowers bloom on your farm, magical crystals appear around the valley, and ancient artifacts surface in hidden spots.",
"UniqueID": "Lenchito.SeasonalSecrets",
"ContentPackFor": {
"UniqueID": "Pathoschild.ContentPatcher"
},
"Dependencies": [
{ "UniqueID": "Satozaki.FarmTypeManager", "IsRequired": true }
],
"UpdateKeys": []
Tell me what y'all think about it

torpid sparrow
#

Hmm there’s not much to go on tbh

burnt canyon
#

Hmm, what do you mean by that, do you think it needs more additions?

torpid sparrow
#

is the first one additional dialogue options within events? are you adding in dialogue for the farmer? are there consequences?

#

and then for the second, any hint to what the forageables do/represent? is there a story lurking there?

burnt canyon
#

Yess, I am adding additional dialogue for the farmer in the first mod I shown and there is consequences because some responses lower your friendship with a NPC while some are just there to be funny

#

Here is what goes with Seasonal Secrets since it wouldn't be complete without it, it's called The Scholar's Journal and here is from the manifest.json.
{
"Name": "The Scholar's Journal",
"Author": "Lenchito",
"Version": "1.0.0",
"Description": "A series of letters from a mysterious scholar who studies the valley's magical secrets. Delivered across two years, each letter reveals a little more about who they are — a former farmer who left, and has regretted it ever since.",
"UniqueID": "Lenchito.TheScholarsJournal",
"ContentPackFor": {
"UniqueID": "Pathoschild.ContentPatcher"
},
"UpdateKeys": []

near imp
#

maybe you could share the just the description part with us and some pictures of the content in game? that might be easier to give feedback on

burnt canyon
#

Sureeee, I get them right now 😁

#

I made this mod that pairs well with my other mods that I mentioned, called Town Talks- Social Arc.
Expands Town Talks with a four-phase social narrative arc. Rumors begin, gossip spreads, opinions form, and Pelican Town eventually adapts to your unconventional love life. Includes festival moments, a saloon scene, phase letters, and cross-mod integration with Pierre's Spiral and Willy's Tall Tales.",

#

It requires Free Love as a big part of its structure so yeah 👍

#

I don't have screenshots at the moment but I'll be sure to get them as soon as I can

near imp
#

oh wow you must have spent a lot time making all these mods?

ornate drift
#

i like being silly

burnt canyon
#

Yesss, I really have, I'll make sure to post all the mods I made on Nexus so others can see and download themselves

quasi dew
#

How would I go about checking whether "IsDarkSkinned" is true or false for a spouse...?

#

if it's not possible, I'll figure out a workaround... but it feels like it shouldn't be that hard. my brain's just not in it today

jaunty shuttle
#

I know Unique Children does some stuff with that

quasi dew
#

sweet, I'll see if I can swipe some code

lucid iron
#

do u want like a GSQ

quasi dew
#

a when condition would be preferable; I'm trying to make a dynamic token

#

(do GSQs work for dynamic tokens...? I've never tried)

lucid iron
#

no they dont

quasi dew
#

cool, that's what I thought. (I'm learning! hurray!)

#

I'll try to yoink some code in a sec

lucid iron
#

the IsDarkSkinned thing is a little odd since it's only used 1 place, birth when a child is chosen

#

and the child ends up with either dark skin sprites or not dark skin sprites as result

quasi dew
#

I'm using it to determine what color hands are used when rocking a baby for custom spouses, bc I really don't want to edit a million sprites to get the hands the right color for each possible modded spouse

lucid iron
#

well u would have to change the sprites dependent on the spouse's height anyways right blobcatgooglyblep

quasi dew
#

I could just make it a config for players... but that feels a little lazy

#

I mean yeah, but I think the baby is big enough to allow for some leeway there

#

we'll see. I'm currently doing my first tests 🥲

#

if it really doesn't work, I'll just use the normal big ass 22x16 baby and tell people to deal with it lmao

#

I gave the baby some ozempic so it's a little smaller

lucid iron
#

adding a token for this is not too hard, but is a little bit of C#

quasi dew
#

oof, I'm not quite there yet.

#

as in, idk if I'm emotionally strong enough for C#

gaunt yarrow
#

is there an upstream location for error handler & save backup?

royal stump
#

I'm not sure what you mean by upstream in this context

lucid iron
#

i think its in the smapi repo if u mean source code

royal stump
#

(also I misremembered & Error Handler isn't a separate mod folder anymore, it installs Save Backup and Console Commands)

quasi dew
#

I think Abigail and Harvey have the biggest height difference, so I think I should be good for modded spouses, as long as they're not itty bitty

near imp
#

(emotional support fact: several vanilla tilesheets and spritesheets have stray pixels)

#

so its basically canon

quasi dew
#

I remind myself every day that nobody is looking at the pixels on my sprite sheets as intensely as I am

ornate locust
#

many of them have stray MISSING pixels eye twitch in That One Time I Looked At Pants

hard fern
#

the bass.

near imp
#

its free exposure therapy for all ourseses OCD

quasi dew
#

I "fixed" a few of the marriage candidates walking sprites when I gave them babies to carry. some of the shadows did not make sense to me

#

and I am NOT an artist

hard fern
#

how did you feel when you learned sebastian is an uneven number of pixels wide and stands off center

quasi dew
ornate locust
#

boy I read that wrong

#

"Since I was giving him a guinea pig baby to carry"

quasi dew
#

I did not make him pregnant.

#

ha

near imp
#

very relatable SDVkrobusgiggle the amount of my vanilla texture edits that have an internal description that includes "+pixel fix" is .. many SDVpuffersquee

quasi dew
#

the girlies want me to add MPreg events to my mod though... so I'm doing that

#

right

ornate locust
#

also I am apparently not going to be doing an unofficial VPR ESR recolor

#

I'm apparently gonna be updating the official one

quasi dew
#

whoaaa

near imp
#

did you get scope creeped

quasi dew
hard fern
near imp
#

"oops fell and accidentally took on another mod" SDVkrobusgiggle

ornate locust
#

I'm not sure what this qualifies as, creep-wise

#

Well I mean I was already making it

quasi dew
ornate locust
#

mostly just for me, now it's just more official

quasi dew
#

I've learned I have to be in the right mindset for modding... not too depressed, not too happy though. juuuuuust right

hard fern
#

oops i tripped over another npc i dont know if i'll ever finish

hard fern
#

i have a lot of ideas but not always the motivation or.. i guess enough ideas to finish them

hard fern
#

that and sometimes i think my ideas are just too weird to turn into mods haha

quasi dew
#

eh, there's the one that turns Pam into a horse

ornate locust
#

See, I said I'd maybe do a Wizard friendship mod if he wasn't a marriage candidate and now I am procrastinating considering that by doing VPR recolors LOL

quasi dew
#

someone wanted me to make it so babies can work in the mines

#

that's on the to do list just bc I think it'd be really funny

hard fern
#

oh right there's the mod furniture smithy thing that exists now right

near imp
#

making progress on something cause youre avoiding making progress on something else is still progress 🤷‍♀️

#

something something circle around and maybe get there in the end

ornate locust
#

I COULD be trying to write something that suddenly feels scary, or I could spend a really long time going over the inconsistent foliage color on a tree to recolor it, apparently the tree won

near imp
#

man dont get me started on the trees

ornate locust
#

and then I thought it was over, I just neeed to do the minimaps

near imp
#

ive spent so much time fixing the vanilla ones SDVpufferwaaah

hard fern
#

i once did a very bad thing and recolored a bunch of trees to match a recolor i had (kinda) made myself and i dont even use them because i found a recolor i like more.

ornate locust
#

and tldr, I have now reshaped the beach to more closely match the ingame landscape, because when I creep, I CREEP

quasi dew
#

I'm currently living with the anxiety that 1.7 will make my mod obsolete... I guess we'll see

near imp
#

which part was the bad part Ketchup, just that you didnt end up using them?

cobalt lance
hard fern
left nova
#

Oh wait I should ask here tbh.

quasi dew
left nova
#

Is there anyway we could pull this off with C# only?

ornate locust
#

i don't know how people draw minimaps, it's so much

quasi dew
hard fern
#

minimaps scare me

quasi dew
hard fern
#

🤔 i thought it was possible to give animated textures to things.... like trees

ornate locust
#

just editing minimaps is hard enough

near imp
#

oooh thats a nice texture you got there SDVkrobusnaughty

quasi dew
hard fern
uncut viper
near imp
# left nova

would this tree be available for yoink-ing anywhere? 👀

quasi dew
#

oh nvm

left nova
#

Well that's true CPA supports animation, but this is a 40-frames animation, for every pine trees in the game...

near imp
#

MMAP does a rustle, shake back and forth, and those sorts of effects for furniture, maybe it could be used somehow? if you wanna make decorative trees that sway 😅

left nova
near imp
#

have you asked chu about it?

left nova
#

No, but I looked through MMAP doc.

#

I mostly worried about performance to be honest.

near imp
#

they're very friendly and helpful in most cases ive seen #bestChu SDVpuffersquee

uncut viper
#

I'm not sure where CPA came from

#

Oh I missed Forsy's msg

#

Don't use CPA

#

If you are capable of writing the C# yourself it would plausibly be easier to just do it yourself, especially since you then get access to the whole tree and not just its texture

#

In case you want to make it sway or something

left nova
ocean sailBOT
#

@left nova You leveled up to Cowpoke. You can now share images in all channels!

left nova
#

Best just left it to people who can, if it's possible to do with C#.

uncut viper
#

You asked about C# though SDVpufferthinkblob

left nova
#

Yeah, I asked if it's possible to do it with C#, because worried about how much this would affect the game as animation.

#

If a C# mod could do it, there is no need for this animation tbh.

near imp
#

ohh youre looking for an existing framework, not looking to make it?

left nova
near imp
#

i think they're saying that a lot of things are possible, but that someone has to actually do that thing.

uncut viper
#

Literally anything is possible with C#

hard fern
#

can you make stardew into skyrim

near imp
#

its just Pierre on the first day chasing you off the farm shouting "Neva shuda come here!"

#

game ends

calm nebula
void aspen
#

Make a big 500 by 500 tiles island and make fortnite there

#

100 stardew villagers shooting each other with slingshots

#

I think that's something c# doesn't even required lowk

gaunt yarrow
#

made this thing

#

I can declare all my mods

mods = {
  "Seasonal Cute Characters" = {
    slug = "stardewvalley";
    # version = "x";
  };
};

mods' = [
  (pkgs.buildEnv {
    name = "SaveBackup";
    paths = [./dist/SaveBackup];
  })
  (pkgs.buildEnv {
    name = "ConsoleCommands";
    paths = [./dist/ConsoleCommands];
  })
];

and it produces that in the screenshot, dependency management is also done

#

All this via the unofficial nexus api

#

basically

#

their underlying graphql api and their frontend api are kinda easily reverse engineerable

lucid iron
#

The graphql api is public i believe

uncut viper
#

It is

iron ridge
#

👀 v3 is new to me

uncut viper
#

It's new in general! Very very recent

lucid iron
#

Yeah it's all experimental stuff

#

Notably the mod upload api

uncut viper
#

Still very much in the "subject to change at any moment" phase

lucid iron
#

I haven't sat down and figured out how to download a mod using v2 or v3 apis

#

So I'm just doing the v1 way to get a link

gentle rose
#

v2 is on the way out :(

iron ridge
#

i dont think v2 ever had a way to download

potent folio
#

when it comes to abandoned mods am I allowed to update them even if permissions do not say so?

whole raptor
#

Nope, if permissions aren't open (or there are no permissions) you can't without contacting the author and getting the ok

lucid iron
#

You can make a personal update mod no issues but you can't release that

left nova
#

How long is one tick? Is it 100 miliseconds?

uncut viper
#

It depends on the framerate but it tries to be approximately 16 milliseconds

#

1/60th of a second basically, for 60 FPS gameplay

#

If your framerate sucks though it'll be different

gaunt orbit
#

It's one frame exactly; the real time equivalent depends on framerate

#

Maximum framerate for stardew is 60

uncut viper
#

Unless you're DH who has done weird things to it

blissful panther
#

Yeah, it is a very frame rate de-

#

Oh hi. SDVkrobusgiggle

lucid iron
#

Is this mmap tas

left nova
#

So how can I make motion happen every 100ms or longer?

left nova
lucid iron
#

I recognized my md tables SMCPufferjail

gaunt orbit
lucid iron
#

What you may be wanting is spawn interval

#

For example a smoke tas is a single smoke cloud tas that has some random motion and spawns from the tile every few ms

potent folio
#

is there a guide on how to make additional animal skins? just like the coding part?

left nova
lucid iron
#

They do completely different things

#

I'll be able to give better advice if you describe your usecase

void aspen
void aspen
#

Oh

#

Interesting

final arch
#

thanks SDVpufferheart

#

it did show stuff from vanilla tho so pff

brittle pasture
#

LA didn't support modded machines immediately after 1.6

#

but yeah update ur mods

#

i worked so hard on that feature SDVkrobusgiggle

left nova
lucid iron
#

Hmmm maybe it could be achieved through some motion + acceleration + acceleration change? It would be quite jank tho

near imp
#

silly question time, LA stands for which mod again?

brittle pasture
#

Lookup Anything

near imp
#

OH duh

lucid iron
#

Do you want it to be happening all of the time

void aspen
#

Subpixel animations 💔

left nova
#

I'm currently looking for how to pull it off first.

#

Then maybe thinking about weather etc

near imp
#

does the tree specifically need to be animated into those.. slice like sections, or is the gif more a mockup sort of thing?

lucid iron
#

Also are u in C# or content

left nova
#

Content Patcher, I'm not enough tech-savy for C# SDVpufferwaaah

brittle summit
#

its a cool idea but omg it made me so dizzy and nauseous just looking at it for 2 seconds

lucid iron
#

So rn I think the easiest way is to animate the whole tree using spacecore

brittle summit
#

(i am easily nauseated though)

potent folio
lucid iron
#

This one u just draw all the frames by hand

#

And it goes brr

near imp
left nova
#

The first one I posted is animated by hands, though it has like 40 frames.

#

That's why I'm looking for the alternative way to do it.

left nova
lucid iron
#

The reason why i don't think mmap really helps here is because it cannot hide the underlying tree

lucid iron
#

Besides the motion and acceleration I'd do a alpha fade to make the shaking layer go away eventually, and add spawn interval to continuously bring in more shaking layers

#

If i was doing it I'd absolutely go with spacecore anim way kyuuchan_run

#

Maybe script the frame creation bit with PIL at most

left nova
#

Can I ask how much performance it would cost for 8 frames animations for every trees?

lucid iron
#

If u did it and it's not too slow on ur own game then ship it Sleepden

#

But it's almost certainly more performant than spawning TAS

#

When u make a tas it has to be net sync'd and kept updated with complex logic

#

The frame animation stuff in spacecore is not as much work bc it doesn't have all these extra bits

left nova
#

But TAS support GSQ, isn't it?

#

spacecore doesn't.

lucid iron
#

Yeah but there's no gsq for wind anyway

#

And the gsq check is on time changed 10min iirc

#

With spacecore u can pretend there's wind using the chance per tick to randomize it

#

It's not perfect bc all trees end up shaking similarly

left nova
#

So I can't make some tree shake and some don't with spacecore I guess?

lucid iron
#

Nah it's per texture

#

But yeah i don't rly know of any non C# way to achieve the exact effect you want

left nova
#

Lol, I know it would need a C# mod to make something like this.

blissful panther
#

Without nerd sniping/bribing someone to make a tree swaying framework to do the C# for you, at least!

#

(Not it.)

lucid iron
#

You can certainly try with the existing stuff ofc

#

Maybe it turns out pretty ok Dokkan

#

I think TAS stuff is better thought of as a projectile u launch

#

It woosh around following parameters and then goes away

#

A tree swaying is fundamentally not this, so u have to fiddle with numbers until it resembles that

#

hm actually i just checked

#

there r some xPeriodic things on TAS

#

maybe it will work if i just expose those bolbsun l

lucid iron
#

i say should bc all i do is set them onto vanilla tas Dokkan

buoyant moon
#

Is there a debug command to list IDs for all letters that have been received/read? Going by the wiki I'm only seeing commands to set/clear flags.
(Specifically, I want to check if mailReceived commands from events are working right)

calm nebula
#

patch parse {{HasFlag}}

lucid iron
#

you can spot check 1 flag with debug gq PLAYER_HAS_MAIL Current mail

calm nebula
#

patch parse {{HasFlag|contains=your mail here}}

uncut viper
#

(Though keep in mind HasFlag also includes world state stuff not just mail flags)

buoyant moon
#

also didn't look closely at patch, thanks for the reminder to dig into that

lucid iron
#

personally i'd use the command that matches your actual usecase

#

if u were going to use the flag in cp when hasflag then do patch parse

#

if u have a gsq all written out then use debug gq

buoyant moon
#

good point, will keep that in mind

fierce vault
#

recently finished (for now) a portrait sheet for my npc, and I think having different expressions to test with (and keep in mind) when writing the dialogue will help.

#

I still have so much left to do though SDVpufferfear

#

there's something interesting I thought of when considering compat though

#

I do not use farmer portraits or anything like that (it would take me forever to make one, but I did start it 😅) But something I figured was probably the case with how it works is that the farmer expressions must mimic the character's six known defaults...

#

What I realized is that leaving the blush/unique portrait (as specified in the wiki) blank/filled in with the default is the best option when a character has a unique portrait that could go in that place, because I don't want to trigger the farmer's potential blush portrait at all, and especially not with an unrelated expression.

#

what gets me though is that I have multiple sad expressions, and farmer portraits won't recognize those in the game. I don't want that to break the immersion for some people :/

#

Actually, maybe there's something in the docs for that? I'll briefly check

#

nah, I don't see anything

hard fern
#

;th

#

oopsie

torpid sparrow
#

;th

fierce vault
#

The game only has 6 portrait commands which are generally recognized as the same emotions across all the characters

torpid sparrow
#

right

spiral lion
#

Is this a horrible mod name?
Allie: A Stop in the Valley

iron ridge
#

for what?

torpid sparrow
hard fern
#

(sorry i use the thinking emote a lot and sometimes i'll hit semicolon instead of colon, and then enter, which sends the message instead of autofilling for the emote)

spiral lion
#

A custom NPC that moves to the valley, initally homless and will get a home and job etc while the story progresses

torpid sparrow
#

hmm i dont really know what u mean by "a stop" in the valley

#

does she leave the valley ?

spiral lion
#

no like she takes her car and stops in the valley, but then continue to live there

torpid sparrow
#

ohh i see

#

it could work yeah

#

in context

spiral lion
#

i was considering only - Allie - but i think i will make more NPCs in the mod

#

hmmm

torpid sparrow
#

Not Just a Stop in the Valley but i guess that's pretty long

fierce vault
# torpid sparrow wdym?

if you use the mod I talked about, the custom portraits can only account for those six unless made to work specifically with how one mod author formats an npc. That means that any custom portraits will only recoginize one sad emotion and not all of the extra ones I made, which will leave the farmer with the cheery default when those extra sad ones are used

spiral lion
#

yeah i was considering that, but i think it was kind of to long

#

thanks for ur input!

fierce vault
#

do you see what I mean?

torpid sparrow
#

ohh i see

torpid sparrow
#

im partial to titles that dont tell the full story

#

my own title isn't super accurate

#

but thats bc u gotta get to know the npc

spiral lion
#

yeah true!! ❤️

fierce vault
#

I avoided any blush emotions being used though, which is at least something.

spiral lion
#

here she is btw

torpid sparrow
#

cute!!

fierce vault
#

I'm basically sharing this so other modders can avoid the same situation if they are planning to add a unique expression in the place of the blush portrait

#

It's better to just leave it blank or fill it in with the default, which won't be used with $3

stiff acorn
spiral lion
#

thank you!! i almost went crazy tryng to get it to work haha ❤️

fierce vault
#

well, back to the event grind now I guess

iron ridge
#

SMAPI won't parse manifests that have neither entrydll or contentpackfor right

uncut viper
#

Correct

void aspen
#

Why people ask if my mod is compatible with other mod that change the same thing 😭

#

I mean, I wish I could make them compatible but i just dk how to

cobalt lance
#

It can be hard for people on the user side to understand the time and effort required of a hobbyist to do stuff like that lol. what mods?

void aspen
#

They both seem to edit the main bh entrance so there's no way of compatibility I think

fierce vault
#

is this the right way to make the player choose one answer? question null "...#huh?"/because ...#huh? is all in red in my json

mellow laurel
#

You should talk to Jenna about it, obviously. but maybe you could find a way to add the ladder into the solarium map onto yours when her mod is installed.

void aspen
#

Adding a custom warp to some modded map isn't that hard, I just wonder how to make them both work

mellow laurel
#

she's around a lot!

void aspen
#

Just dk how to do conditions without coding

fierce vault
#

it's json stuff actually

void aspen
#

😔

void aspen
#

Something to do in content json then

#

"If this mod exists then load this, else edit that" something something?

#

I'm not entirely familiar with that so

fierce vault
#

yeah, something like that

void aspen
#

Oh

lucid iron
#

yea u can do When HasMod

void aspen
#

That's neat

#

I'll check this out tomorrow then

#

Thanks yall

lucid mulch
#

note that CP has no concept of else so you either do one of them unconditionally, and then conditionally do additional work, or setup mutually exclusive conditions

latent mauve
cobalt lance
# void aspen I'll check this out tomorrow then

ping me if you need any help, it's super simple and I just did a few of these sorts of patches in my mod to do things like adding SVE compatibility for modded locations like the wizardhouse or secret forest

tardy pivot
#

Does anyone know if there are limitations to the addnpcwarps field compared to the addwarps field? I'm trying to add an npc warp to the busstop, but whenever i try to change the originally working warp to an npc warp, my npc can no longer path through it.

gaunt orbit
#

okay question for tokenized text: is it possible to use tokens inside the localized string? or is it always treated as literal?

#

I guess I could just use a placeholder key

royal stump
#

if you mean like [LocalizedText YourAsset:Key] -> "Key": "[LocalizedText ...]", I'm not entirely sure
but it does support {0} and such, e.g. in the vanilla map strings

"Farm_Standard": {
    "DisplayName": "[LocalizedText Strings\\StringsFromCSFiles:MapPage.cs.11064 [EscapedText [FarmName]]]",
...
"MapPage.cs.11064": "{0} Farm",```
uncut viper
#

It wouldn't get parsed I believe, not unless TokenParser.ParseText() was called again on the resulting text

ornate drift
#

is there a guide to adding custom tilesets

#

besides being able to edit existing projects

gaunt orbit
#

/gen

vernal crest
vernal crest
# ornate drift is there a guide to adding custom tilesets

It is the same way as adding tilesheet mods using Tilesheetinator. You put your custom tilesheet in a separate folder from your map, write a patch in your json to Load the tilesheet in game, and use Tilesheetinator to add it to your map.

gaunt orbit
#

this class has delegates nested so deeply it should be a crime
I broke them out into separate methods but it's still bad
the consequence of doing a cutscene at the end of a dialogue menu tree

ornate drift
#

interesting

gaunt orbit
# ornate drift kinda

essentially what you need to do is add your png to the game files, but like.. through the content pipeline and not with physical files. I asked about the guide because it describes how to add and edit game files

vernal crest
# ornate drift oh so i need an app other than Tiled?

You don't need Tilesheetinator but as someone who has made maps before it existed and then switched to using it (it's a Tiled extension, not another program) it is amazing and well worth using because it helps you easily bypass so many of the issues that people can easily fall into with mapmaking.

gaunt orbit
void aspen
#

Tilesheetinator is a godsend

vernal crest
torpid sparrow
#

iro is a godsend

#

sent by which god idk

void aspen
#

Tsinator was made purely for sdv right

vernal crest
#

Yup

void aspen
#

Nice

ornate drift
#

I'll try it

void aspen
#

Was CA also using Tiled for his maps

#

Or some other software

#

For tmx maps

ornate drift
#

wait how do i know my bakery supports the 16x16 format

iron ridge
void aspen
#

I by eye see it's not fitting the grid but

#

You can fix it

iron ridge
#

the maps aren't originally tmxes

void aspen
#

I see

void aspen
#

And tmx is just a way to read and edit it

vernal crest
#

You should have started your map by using a vanilla one as your base and you should have snap to grid turned on

tiny zealot
# void aspen For tmx maps

monogame's/stardew's native map format is tbin. stardewxnbhack is kind enough to export them as tmx for our benefit

void aspen
#

Ooh

tiny zealot
#

you do pay a performance and file size penalty to use tmx, but for most use cases it's worth it

#

since you get some nice features in exchange

void aspen
#

Mhm

slow basin
#

is there any sort of resource to see how big each map is without me needing to load them up in tiled

vernal crest
#

Like being able to edit the files with a text editor which is a godsend

iron ridge
slow basin
#

yea

ornate drift
#

my pixel editor doesn't really let me see in 16x16

vernal crest
#

There's no grid settings for it?

ornate drift
#

nope...

#

unfortunately

void aspen
#

That's why Aseprite is godsend too

#

I think there's a mobile version for it too

vernal crest
#

Hmm, might be worth using photopea briefly to check it

void aspen
#

Which may have the same setting

vernal crest
#

It's online, free, and has a grid

#

@daring skiff Heads up, you forgot the update key in Better Screenshot Mode! (It's been excellent, thank you)

void aspen
#

What does update key do I still wonder

#

I have one in my rtd mod

daring skiff
#

aaaaaaaa (also ty)

#

I'll get on it later.

vernal crest
#

It tells users there's an update to download

void aspen
#

But not in my recent one

vernal crest
#

Very important if you want users to be aware of updates

void aspen
#

Right right

ornate drift
vernal crest
#

Ugh it has gen AI now

#

I need to find something better to recommend

vernal crest
slow basin
#

im building a parking lot

#

which brought me to the question can you have multiple maps change on a festival day?

#

i thought it might be nice iof the parking lot is empty on everyother day but festival day

vernal crest
#

Yup you can do a higher priority load with a condition that it's a festival day

slow basin
#

awesome!

#

ty

ornate drift
#

ah, damnit...

void aspen
#

You can technically scale it to fit

#

And then clean up

torpid sparrow
#

im not seeing the problem

vernal crest
#

Door is not aligned with 16x16 grid

torpid sparrow
#

cant u just move it

#

to align better

vernal crest
#

It's larger than 16x16

#

Players like me will weep

ornate drift
#

the bottom ain't aligned

#

neither is the right side

uncut viper
#

You can just move it so the door is centered in a tile and it's like 99% fine