#making-mods-general

1 messages · Page 131 of 1

brittle pasture
#

Yes

iron hawk
#

Hey all, I'm using the Spacecore framework for a mod making a custom dungeon and was wondering if there's any way to have certain maps or layouts appear at certain levels, similar to how in the base game you always encounter a room with an elevator at a 5 divisible floor or when you switch to a new theme and the floor is the one with the chest. I'm trying to see if I can replicate that. Also, if there is any way to affect the spawn rate or types for certain room layouts.

tardy adder
#

Quest solutions (from Data/Quest) are confusing me SDVemoteconfuse

acoustic summit
# iron hawk Hey all, I'm using the Spacecore framework for a mod making a custom dungeon and...

Best reccomendation would be looking at the in game code for the mines. The way they do it is by loading maps and different tilesheets depending on the mineLevel. If your custom dungeon has a stored int (levelCurrent) or something, then on warp you can change the map / tileSheet to customize things like theme, elevator appearance etc. For spawn rates you could check for the same levelCurrent or check the gameLocation's map for a conditional spawn multiplier. Just some ideas, I dont know the inside of your code so yk

gray linden
#

idk i still cant get it to work, maybe another time when you have the time you can explain, if not its ok. thanks in advance

rare orbit
#

hey? sooo quick question? how do i make a furniture recolor into a standalone furniture mod? i see a ton of furniture recolors and it kills me inside that not all of em are configurable. i got permission to convert one of the many recolors into a standalone and i plan to do that sooner rather than later

frigid hollow
rare orbit
#

thank you! i'll check it out

iron hawk
royal stump
junior elm
#

Yoo is there a mod to play as npcs?

royal stump
proven vigil
#

Playable Abigail is one of my favorites

junior elm
#

.

royal stump
#

neat, hadn't seen that, and I guess aedenthorn made a framework for it too

uncut viper
iron hawk
#

ah ok, I already looked through spacecore docs and there isn't any mention of something like what I'm talking about, so I guess I'll find another way. Thanks for the help

floral canyon
#

Hi guys, I was wondering if anyone here know if we can do custom "flavored items" now after 1.6.9 update? I know that we can copy color to any produced items but can we copy the item name as well?

calm nebula
#

Look at cornucopia

floral canyon
brittle pasture
#

since 1.6.9, yes

#

WAG is a better example probably

#

since it now uses 1.6.9 features for flavor/color

floral canyon
#

WAG?

brittle pasture
#

Wildflour Atelier Goods

#

(it still uses EMC, but for other features beyond that)

floral canyon
#

Okay, thank you very much for this info! I will check it out SDVpufferthumbsup

drowsy pewter
#

it's been done for years

#

is there a new method for "true" flavor that we should swap to?

brittle pasture
#

ah yeah I got my wires crossed haha

calm nebula
#

Hi my favorite not a square number

brittle pasture
#

what's supported in 1.6.9 is 1. actual copy color and 2. flavor inheriting in "higher-tier" artisan goods

calm nebula
#

Oh, like aged roe?

brittle pasture
#

yes

calm nebula
#

Btw, hi my favorite sneezing cat!

brittle pasture
nimble marlin
#

hi guys, I was wondering if there is any way to make an event script without any actors? or idk, maybe make the actor invisible?

calm nebula
#

Sure! Just spawn farmer off screen

nimble marlin
calm nebula
#

Spawn them at -100,-100

nimble marlin
#

alright, thank you very much!!

nimble marlin
rose shuttle
#

I think I might have bitten off more than I can chew with my project... I've only done maybe 20 or so pieces, and I'm already feeling overwhelmed. Not asking for any help or anything, just wanted to whine to a heopfully sympathetic and understanding group, cause anyone who doesn't work on mods would think I'm nuts xD

ornate trellis
#

hm...how many growth stages has a mushroom tree... thonking

brittle pasture
#

same as other trees I reckon

ornate trellis
#

and those are?

#

i never paid attention to it and i am looking at the wildtrees.json but

brittle pasture
#

1 (seed in the ground) to 5 (full grown)

rose shuttle
#

The good thing is, I'm able to adjust and tweak little things, some of these tilesheets are from the very early modding days, and now there's more options for some of these amazing pieces of work (ofc, this slows me down a bit, but I'm looking forward to having them back in my game).

ornate trellis
brittle pasture
#

... huh, has maple and oak trees always shapeshifted in Winter and I've only noticed just now

#

the base/stump literally changes shape

teal bridge
#

As far as I know, yes.

brittle pasture
#

wacky valley magic

teal bridge
#

They're just different sprites entirely.

royal stump
#

I remember bushes being pretty weird about it in summer too

calm nebula
#

Yesssss

#

Medium summer bush

floral canyon
brittle pasture
#

yes

floral canyon
#

Okay great 😄

brittle pasture
#

cant stop staring...
do non evergreen trees in the valley retract their roots during the winter to protect against the cold

blissful panther
#

I'd bet it was done to give the impression of the roots being covered by snow without needing snow texture on the tree sprite?

steady folio
#

it's just to make it look like they're covered in snow maybe?

tender bloom
brittle pasture
#

that makes infinitely more sense, but the fact the pine trees stump remains the same means they have their own internal heat generator

brittle pasture
#

(or their roots are just taller)

teal bridge
#

It's Just A Game™

tender bloom
#

Drawing trees sucks away all my motivation

#

They’re just so big

#

For so little reward

teal bridge
#

I don't know, trees have a pretty big impact on the overall feel of a map. Depends on your definition of reward.

tender bloom
#

I feel like compared to just reusing vanilla trees

#

Maybe I haven’t gotten far enough to see the impact

#

But like, the vanilla trees are fine

#

Maybe I’ll try making more progress on crop sprites instead, but those also are so big I find them daunting

#

Give me a good 16x16 object sprite any day

teal bridge
#

Vanilla trees are fine, yes. If the requirement is just to have trees, that's good enough.

#

If your mod is about trees then it would probably justify some extra effort.

#

(Also, there are 48x48 and even 64x64 tilemaps out there, and 128x128 or even 256x256 pixel art for larger map features... although probably not in Stardew mods)

ornate trellis
#

man, i do be loving adding new shit

#

what did i forget this time lol

#

AHA

#

yet again, my old enemy, the bracket

#

i love map making

viscid mural
#

Can someone help me with fixing the JSON files for my hairstyles mod? Updating SV past 1.6.8 breaks it and I don't understand why.

ornate trellis
#

!json

ocean sailBOT
#

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

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

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

ornate trellis
#

pls use the json validator

next plaza
viscid mural
ornate trellis
viscid mural
ornate trellis
#

just the url

viscid mural
#

Changing the value to the latest version of Content Patcher doesn't fix it either.

#

It's showing vanilla hairstyles instead of my replacements in-game.

ornate trellis
#

hm, i havent really done hair before 🤔 your fromfile is right tho? including capitalization

viscid mural
#

Yes, because it works like a charm in Stardew 1.6.8.

#

I have no explanation for why it breaks when I update the game when it has been more than fine before.

ornate trellis
#

i sadly dont know much bout hair so i can only suggest the basic attemps for every mod testing, like...have you tried it on a new save etc

#

i dont see a specific mention bout hair changing on the 1.6.9 migration page at least

iron hawk
viscid mural
next plaza
#

That looks correct SDVPufferThink

next plaza
iron hawk
#

ah so like a whole new
"main": {
"level range": {
blah blah blah
}
}

ornate trellis
next plaza
# iron hawk In order to do that without having duplicate object keys, I create a secondary t...

As for the spawn rates for different rooms, you use multiple regions for that too. So you'd set the spawning data for each region's specific stuff.

You can have multiple regions with the same level range and it'll randomly pick one for that level from every region in that level range, based on the weight in the MapPool entries. So you could have two different regions with LevelRange 1-4, and those two different regions each have different things to spawn

ornate trellis
#

let me know tho if you prefer getting pinged when the issue got solved before you happen to pop up(since there's quite a few people in this server who prefer no ping so i tend to be careful to not annoy)

next plaza
#

You can also edit the initial message to say you solved it

ornate trellis
#

oh right! I actually didnt think bout that, will do in the future SDVpufferthumbsup

iron hawk
odd ginkgo
#

Hey all, I'm throwing up my hands and coming in for help, how is everyone's day going?

ornate trellis
#

i fought with a bracket again, then spawned error trees on my map, so the usual

odd ginkgo
#

So I'm adding a new type of barn animal to the game - livestock guardian dogs. I've created a bunch of different skins, and coded it so that they dig up truffles just like pigs do. Generally I've gotten it to work, except for the skins.

#

SMAPI says this when you select a dog: [game] Constructed farm animal type 'Pyrenes, black' which has no entry in Data/FarmAnimals.

#

Pyrenes, black, is just one of the skin options

#

any advice is highly appreciated!

brittle pasture
odd ginkgo
#

Ahhhhh

brittle pasture
#

Since you already added the skins, just remove that field and it should work

#

also side note, why are you adding skins separately with TargetField instead of just putting them in the main entry

odd ginkgo
#

That explains why the default dog works fine, it's the one actually coded in

#

because I used another barn animal mod as a template, and actually am super nervous about coding

#

thank you! I will report back

#

p.s. here's a preview of the dogs

#

back to square one, where the default dog works but not the extra skin colors, but I can work with that. Thank you!

hard fern
#

Aww cute doggies

brittle pasture
#

you seem to have a config option that's ensuring only one skin gets added at a time

odd ginkgo
#

okay, I switched that and am going to give it another try

brittle pasture
#

actually someone more proficient in CP pls confirm that if you have a config that can have multiple values whether you need to use |contains or direct comparison would still work

odd ginkgo
#

Now getting this error:

#

[game] Farm animal 'LGD' failed to load texture path 'Animals/CC.LGD_pyrenes_blonde, pyrenes_black, heeler_blonde, heeler_blue, shepherd_blonde, shepherd_brown, mutt_blonde, mutt_brown, aussie_blonde, aussie_black, aussie_blue, bordercollie_blonde, bordercollie_black, bordercollie_blue': asset doesn't exist. Defaulting to error texture.

#

I'm obviously more of a pixel artist than a coder, I am a bit in over my head

hard fern
#

Shouldn't the texture be the target for "load"

latent mauve
#

Is there a reason why you're using a config to only pick one skin, rather than enabling them all as options?

odd ginkgo
#

I thought it might be nice for people to be able to choose what puppies they're getting

#

but maybe it's better to have it all enabled

latent mauve
#

Ignore my Breeds comment, I was thinking about Pets

ornate trellis
#

anyone know where the specific addwarps stuff is on the wiki, i feel like i am blind...I wanna know if i really gotta add, like, 8 warps jsut so all of this blank space will warp to the other map

latent mauve
#

I'm confused about Animals/ModId}}_{{LGD Skins}} being used by default if you're just gonna change it via the configs anyway, wouldn't it be simpler to make it whatever your default value is instead of the token?

#

Or try to randomize it by default, if that's your choice?

odd ginkgo
#

I would love for it to be randomaized by default. I think that's where I have no idea what I'm doing

brittle pasture
#

the immediate issue breaking your mod is that your texture path in the skin IDs are wrong

#

you loaded them into Animals/{{ModId}}_heeler_blue, so you should use that in the Texture field, not assets/heeler_blue

odd ginkgo
#

ahhhh, I see

#

okay... I have some learning to do

#

seriously appreciated

brittle pasture
#

as mentioned earlier, your When conditions are probably also wrong? your config can have multiple skins enabled, so if you have say heeler_blue and mutt_blonde enabled the config would be "heeler_blue, mutt_blonde", and "LGD Skins": "heeler_blue" would not be true

lucid iron
#

A solution is to draw more map and make the exit taper off a bit

ornate trellis
#

would this look fine as an alternative

#

so i jsut have to add 5 lol

brittle pasture
#

inb4 bug reports from users that use jump/noclip mods /s

#

yeah that looks good

lucid iron
#

Oh but remember to make all the tiles behind not passable

ornate trellis
lucid iron
#

It's cus ftm will put forage there

ornate trellis
#

i dont have any void around my map

#

but i also dont use ftm

lucid iron
#

I have seen this in RSV

ornate trellis
#

i jsut spawn forage via spacecore and cp

#

maybe i should jsut do a 1 tile void frame around afterall

hard fern
#

Yup, good ol rsv impossible forage

ornate trellis
#

hm

#

what if I make it like this and put the bottom tiles and non passable or something

#

how do i even make it non passable besides putting it on building layer

lucid iron
#

TileProp Passable on back layer

ornate trellis
#

time to see if i did it right

#

i did something wrong

old edge
#

What's going on here? json [game] Event '14635299' has command 'faceDirection Annetta 2 continue' which couldn't be parsed: optional index 3 (bool continueImmediate) has value 'continue', which can't be parsed as a boolean. [game] Event '14635299' has command 'faceDirection Annetta 0 continue' which couldn't be parsed: optional index 3 (bool continueImmediate) has value 'continue', which can't be parsed as a boolean.

hallow prism
#

you don't wan,t litteral continue i believe

#

but true/false

ornate trellis
#

where do i...put that passable exactly...i thought directly on the tilesheet..

lucid iron
#

TileData

ornate trellis
#

oh

#

lol

latent mauve
#

you can also use invisible tiles on the Building layer if you wanted to block it that way. xD

ornate trellis
lucid iron
#

It's the same thing

ornate trellis
#

huh

#

i guess invisible building layer tile it is then

lucid iron
#

The reason why I did it is cus I had lots of ocean too

latent mauve
#

Even the base game makes use of mostly hidden tiles for blocking, if you have leaves or something, there's always a bottom trunk on the Buildings layer that you just don't see since the leaves are on Front or AlwaysFront

lucid iron
#

And I didn't feel like finding all the tile to mark as water

hard fern
#

Bus stop

#

Has so many

lucid iron
#

For your case u can probably just ctrl c the back layer ctrl p on building

ornate trellis
#

oh yeah i susally do the building layer thing, i jsut thought the passable one was, like, different or somethingg

#

ruh roh

#

i uh, just encountered another problem that is unrelated

#

i crashed the entire game SBVLmaoDog

#

huh

#

its my lights

latent mauve
#

Light crimes?

ornate trellis
#

smapi yells at me that i did the index wrong or something

hard fern
#

Light crimes

ornate trellis
#

[23:54:58 ERROR game] Can't parse map property 'Light' with value '11 12 4 11 20 4 13 23 4 15 33 4 36 49 434 37 4 24 9 4 28 13 4 34 17 4 40 21 4 44 25 4 24 25 4 28 21 4 40 13 4 44 9 4 45 32 4 63 32 4 77 38 4 79 38 4 55 28 4 58 20 4 54 15 4 58 10 4 68 14 4 63 22 4 63 28 4 79 12 4 77 21 4 77 5 4' in location 'VoidWitchCult.CP.TheFishmongerNPC_LostIsland_Orchard': required index 86 (int textureIndex) not found (list has indexes 0 through 85).

latent mauve
#

Is your spriteindex actually 86?

#

(you started the count at 0, right?)

ornate trellis
#

where do i even have 86

#

i did see a typo tho jsut now with 434

latent mauve
#

I'm wondering if it somehow reduced 434 down to 86

ornate trellis
#

maybe i will try again with it fixed

hallow prism
#

i believe it's because each value needs a set

#

like position type whatever whatever

#

and you have one set with only 3 value instead of 4

#

11 12 4 11 20 4 13 23 4 15 33 4 36 49 434 this 434 for ex looks suspicious

ornate trellis
#

hm i fixed it but i still crash i just gonna slap the entire log in here with the wall of red

hard fern
#

😔

ornate trellis
ocean sailBOT
#

Log Info: SMAPI 4.1.8 with SDV 1.6.14 build 24317 on Microsoft Windows 11 Pro, with 19 C# mods and 20 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

desert pagoda
#

I need to do my daily practice today but have no idea what to do, what is a simple project that a total newbie could do for practice?

hard fern
#

Making a retexture mod

#

Super easy

desert pagoda
#

I already did that, any other ideas?

hard fern
#

Adding cooking recipes

lucid iron
#

What do mean practice

hallow prism
#

dialogue, crop, what do you need a daily practice for?

hard fern
#

Yeah, im a bit confused on that too

lucid iron
#

Like practice art or what

uncut viper
desert pagoda
#

I want to make a big stardew mod eventually, but my skills are not onpar, so I am trying to practice daily my modding skills inorder to brave what I eventually want to do

ornate trellis
#

i got no clue what i did wrong this time around, i never understand the null reference stuff in the logg

hard fern
#

I wouldn't really say "daily practice" is necessary though?

lucid iron
#

You should just make the mod

hard fern
#

Moreso read up on all the relevant documentation

#

And start from ther

lucid iron
#

VMV took like what, 4yrs?

#

Learn as you go wew

hallow prism
#

not all in active developpement but yes more or less that

hard fern
#

SDVpufferflat i can't wait to see how many years my project takes lol

desert pagoda
hallow prism
#

i would say that i wouldn't start with a project as big as VMV as the goal BUT

acoustic summit
hard fern
#

Well you can start with a small portion of the mod, and test as you go

desert pagoda
#

What is VNV?

lucid iron
#

If you want small mods tho take a look at mod ideas

hard fern
#

!vmv

ocean sailBOT
#

Visit Mount Vapius (https://www.nexusmods.com/stardewvalley/mods/9600) is an expansion mod that adds a new region in the mountains. Accessible by train, you'll enter the hamlet of Glimsap, with its tight-knit group of villagers, that holds a market twice a week. You'll get to explore new places, fight monsters, get new crops and forage, trade local coins for exclusive goods, and complete tasks to unlock special items, including machines, buildings, and animals.

lucid iron
#

!modideas

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.

lucid iron
#

But I think having something completed helps motivation

hallow prism
#
  • learn to read a log and use the json parser. You know how to do that? then you are pretty much good to go on most CP stuff
  • have reasonable sized goals (ex : adding your area with a small shop for ex)
desert pagoda
#

Oh found one that looks easy enough! Thanks yall gonna make this one

#

Dried Red Mushrooms #1277

hallow prism
# desert pagoda What is VNV?

VMV is my mod, an expansion adding a lot of various stuff using mainly content patcher (i can't code, atra made the code part)

hard fern
#

Im gonna commit as many crimes against CP as I can

desert pagoda
#

(Same all I do is in content patcher or any other contnet framework)

rain oracle
#

Content Patcher is pog. It lets many folks (me included) create things without needing to know c#, etc.
SDVpufferheart
(P.s: Hi. It's been a while, mod chat.)

desert pagoda
#

*I technically do know some c# but hate with a passion *

ornate trellis
#

damn, i am still clueless what is up with my lights...

#

oh my god i found another typo ugh

#

evaporated i fixed it finally

#

what a mood deathpose

subtle pewter
ornate trellis
#

thank you uwu

subtle pewter
#

lol ofc<3

rain oracle
#

mood lighting makes the dream work

subtle pewter
#

okay so i require the help. I can't figure out how to content patch object names from sde specifically. I can't seem to figure out how to target the i18n/default.json file where they've got their item names or if theres a different way i should be doing this. Either way despite the 50 different ways i've tired this i get bupkis. This was kinda where i last landed with it.

    `{
      "Action": "EditData",
      "Target": "Mods/FlashShifter.StardewValleyExpandedCP/default.json",
      "Entries": {
                    "object.golden-goose-egg.name": "Lucky Egg",
                },
    },`
uncut viper
#

you cannot target another mods files like that. you need to edit the object itself to change its displayname to use your own i18n

#

presumably this object is being added to Data/Objects, which is where you want to target, and edit it like you would any other item, just make sure your patch runs after SVE

subtle pewter
#

so i actually have tried targeting it like a standard item too and gotten no response that way either and i'm not sure why.

uncut viper
#

well, that is the way you need to do it, so it will have been some other error. possibly a patch priority error i.e. it didnt run after SVE but instead before it. we'd need to see what your code was

acoustic summit
#

Probably an issue of running your code before SVE's, would be my guess unless you considered that

lucid iron
#

Remember to spawn new item after changing data

drowsy pewter
#

because you're not using the sve item id

brave fable
# tender bloom Drawing trees sucks away all my motivation

you really don't have to draw trees - it's fine to play around with other stuff until you feel like digging back into something that's being an obstacle. i'm drawing tables and silly decor instead of the shrubs and bushes i started last week. it's fine

drowsy pewter
#

it looks like youre trying to edit the i18n

#

I have an example for thi

brave fable
#

like it's still relatively net zero progress in the end but it's fun at least lol

subtle pewter
#

so i've been working on a large content patcher mod that patches plenty of other sve things for the last couple months now and i've not had an issue with priority so i'm guessing i do have it set properly? But i did forget to spawn a new item. I will give that a try here.

drowsy pewter
#

changes the name of an sve item. You have to find the actual sve object id though, not whatever you have now

drowsy pewter
#

There are some cases where displayname is overriden and applied into the item (so you have to trash and respawn it), but i dont think this is one of those case

rain oracle
#

SDV modding, SDV modding, please never change

subtle pewter
#

it work yay.*+ Thanks again for all the help!<3

drowsy pewter
drowsy pewter
latent mauve
#

I still need to finalize what the crane game tree prizes look like when rotated

#

The leaves are a struggle for me to figure out

lucid iron
#

Can u just rotate it in code

#

I thought roku's doing the C# for you

latent mauve
#

They don't have rotated sprites, roku did make it so the crane game can be used outside of the theatre though

#

I didn't ask for anything with rotating the objects via code

#

tbh, I didn't realize that was a thing, and I'd be worried about how they would look anyway

lucid iron
#

The draw method takes rotation in radians as well as horizontal/vertical flip

#

It'd probably look better via draw because game's at 4x scale

#

So you get "subpixels" kinda

modest dagger
finite ginkgo
#

@next plaza
Got a couple SC bugs to report

  1. In certain situations with SC guidebooks if mouse is positioned right it is possible to get two tooltips displaying simultaneously (First pic)
  2. Being unable to close the SC equipment menu if you're holding an item and have a full inventory as shown in the attached video.
    Replication steps are as follows: either have nothing that goes in a certain equipment slot in your inventory, or already have something in the equipment slot. Have a full inventory and an item on the ground waiting to be picked up, open the equipment slot and grab any item, you should then pick up the ground item and end up with a full inventory and nowhere to put the held item without switching it with another item in your inventory/equipment slots.
  3. I'm pretty sure this one is already known, but recipe descriptions break/show item name instead of description when altered using the SC CraftingRecipeOverride and CookingRecipeOverride features (last pic), just wanted to check if there's any chance for a fix soon for this one
livid kite
calm nebula
#

I'm so old I don't want to draw anything not for work anymore

tender bloom
brave fable
#

shirts are fun and relaxing to draw. hats are alright too

hard fern
#

I'm gonna draw pants

#

My Internet went out 😞 i surrender myself to the pants while i can

lucid iron
brittle pasture
#

chewy weedses...

drowsy pewter
#

Yeah we had to add a specific fix for crops with plural names

lucid iron
#

this used to not have Weeds b4 i changed to item tooltips LilyDerp

hard fern
#

Dried weedses

#

My favorite

lucid iron
#

i wish there was like, ITEM_ID_REGEX

tiny zealot
#

thinking about Haies again and ascending to a higher plane

#

(context)

calm nebula
#

The English language is defined as one that makes programmers insane

grand lantern
#

I have a question i hope yall can help with.
I have walk of life and machine progression system. I'm trying to integrate the machines from MPS to WoL. I'm copying the code over for each machine. However, MPS machine lines doesn't have (BC) in front of them. Do i need to add the (BC) or do I not add it?
Sorry for the bad picture.

lucid iron
#

screenshot is your friend

grand lantern
#

I'm on 2 different systems.

#

And my other system doesn't have discord.

lucid iron
#

this is a problem with MPS though, it should have (BC)

grand lantern
#

I'm trying to figure out how to move that over.

#

Kk thanks ill add the BC manually.

brittle pasture
#

whoops didnt' see you asked over here

lucid iron
#

unless i misunderstood you and you are copying out of the bigcraftables page

#

no BC in there cus all things in bigcraftables is BC

grand lantern
#

I'm copying from the MPS page to add into the walk of life file

#

And i assumed i needed to add BC because walk of life said to copy the string with BC but MPS said these are the IDs you need and none said BC so I was a bit unsure

brittle pasture
#

has an explanation

#

tl;dr they are both correct, but one is more correct than the other

#

and in this case WoL expects the more correct version

grand lantern
#

Ok that makes sense. I assumed that to be the case. Thanks for confirming!

lucid iron
#

selph u dont patch PurchaseAnimalsMenu in EAC right

latent mauve
#

hey Selph, should I try to convert my Laundry Machine furniture experiment to the Furniture Machine alpha? Instead of using Extra Machine Config like I had before.

tender bloom
#

Haies

drowsy pewter
#

hai

#

wiat

#

Furniture machine alpha?????????? SDVpuffereyes

#

Selph you work too fast

brittle pasture
lucid iron
#

i yeeted it

uncut viper
#

please leave some hell in it for the rest of us to try later

lucid iron
#

the better crafting strat

brittle pasture
latent mauve
#

Yes, but I should use Furniture Machine also if I want working effects?

brittle pasture
#

yeah I guess that works

lucid iron
#

u can put the table in great pain

latent mauve
#

I just want the animation I made yesterday in there somehow, LOL

brittle pasture
#

Hah and I just realized my mod can be used for furniture animations
heck you dont even need machine rules, just set it to produce output after 9999 days and reset it every day

#

though FF is still better overall

latent mauve
#

Yeah, I just don't want to have to rewrite a bunch of stuff

lucid iron
#

but isnt your laundry machine 1x1

brittle pasture
#

ah yeah it is, you can just make it a BC if it's only 1 tile

latent mauve
#

I have two variants, one is a 2 tiles tall and 1 tile wide, and the other is 2 tiles tall and 2 tiles wide.

#

It is not a 1 tile

lucid iron
#

1 tile foot print i mean

#

yea then u can use the furniture funtimes for the 2 tile footprint one

latent mauve
#

I explained that I didn't want it to be a BC last time I talked about implementing the laundry machine, but thank you for the input. ❤️

lucid iron
#

say what is behavior when the furniture doesnt render the hold item

#

it still works right

brittle pasture
#

still works

#

I also added code since then to draw the ready bubble

lucid iron
#

i look forward to making a table that produce itself every morning

brittle pasture
#

hmm I should add the ability to disable the ready bubble, or fix that

lucid iron
#

can just draw it with dest rect

#

assuming ur doing the draw code

brittle pasture
#

yeah, the funny part is I copied this from vanilla code 100% intact so it's a vanilla bug lmao

lucid iron
#

oh i guess theres no machine that spits out furniture in vanilla

calm nebula
#

No lol

#

But wait

#

There could be

#

Deconstructor

brittle pasture
#

there's no furniture used for crafting in vanilla SDVpuffercry

lucid iron
#

spacecore currency is backed by an item right

#

how can i know an item is a spacecore currency think

latent mauve
#

hmm, animation's not happening for WorkingEffects, I probably did something wrong somehow.

#

I changed the chance to 1, so it should be fairly consistent

brittle pasture
#

public List<string> GetVirtualCurrencyList(); in the SC API

brittle pasture
#

actually, do you have both LoadEffects and WorkingEffects set to the same animation

#

I think you need both for a persistent animation

latent mauve
#

ah, I only have WorkingEffects set, let me duplicate that real quick for LoadEffects

#

nope, still no good. Let me get that code into the JSON parser so I can share it

brittle pasture
#

another possible cause is that you didn't change the rule to work on output collection

#

so the machine's remaining inert until the next day

#

yeah post the code haha

latent mauve
#

gonna try that now, it's the Trigger, right?

brittle pasture
#

yep, you need to change the Trigger to "MachinePutDown, OutputCollected"

#

and set DaysUntilReady to 1

#

fuck, typo

#

mechanically this is identical to "DayUpdate" with no DaysUntilReady set, but with the effect of the machine continuing to work and running the animation

latent mauve
#

still nothing

brittle pasture
#

lemme test myself

tender bloom
latent mauve
#

I have one more idea to try

tender bloom
#

A particularly bad plural

latent mauve
#

nope

brittle pasture
#

hmm yeah doesn't work on my end either actually

latent mauve
#

My idea didn't work

brittle pasture
#

looks like a bug

#

I'll look into it

latent mauve
#

If you want, I can DM you the zip of my mod attempt so you can test against it?

#

in case I really messed up somewhere that's hard to see from just the content file. >_>

brittle pasture
#

if you want to, but that's not needed since I can reproduce with my own test

latent mauve
#

ok

rancid temple
#

...this always returns 1 doesn't it?

#

Or can it choose a number that causes it to round up to 2?

tardy adder
#

PaceCore

woeful lintel
rancid temple
#

I pulled it directly from the decompile, just trying to figure out why I'm getting 3 when I should only be getting 2

#

I think it's a separate issue though, something about how I'm adding shit to this inventory is wrong

vernal crest
brittle pasture
inner harbor
#

How are the non-choppable but paths-added trees in the town handled? Is there C# code behind them? Someone has requested that I do the ES trees similarly to "bring the map on par with vanilla".

#

(I can likely add my specialist atra-added code but I was just curious!)

lucid iron
#

is that a feature think

brittle pasture
lucid iron
#

i thought it was bespoke C# stuff

inner harbor
#

okay cool, I'll try and use atra's

brittle pasture
#

that seems to be a global settings for a tree type

inner harbor
#

I think itwas added to my C# then Meep added it as well.

lucid iron
#

ah hm thats awkward to use then blobcatgooglyblep

brittle pasture
#

so you can't set maple/pine/oak trees to be invuln only in your location

inner harbor
#

oh the code I have I think only affects the tree on that tile

lucid iron
#

so does that mean theres 2 separate "no chop me trees" code by atra in my mod list (vmv and es)

inner harbor
#

hopefully it works on maple/pine/oak the same as fruit trees?

#

probably

#

let me test it on planted trees

brittle pasture
#

if I have a penny for a full town expansion with a C# component written in part by atra, I'd have 2 pennies

lucid iron
#

i thought atra is in all of em

#

like at least 10 loc Dokkan

latent mauve
lucid iron
brittle pasture
#

ok let me look through the file you DM'ed

lucid iron
#

atra not on sve github but it doesnt seem like ppl actually PR to that

#

or uh, merge PR from there i mean

inner harbor
#

okay yeh looks like atra's only affects fruit trees. Time to try MEEPS

#

nah it's only on the type of tree. I'm just going to leave it. Maybe I"ll just make all the trees choppable and people can deforest East Scarp if they choose.

desert pagoda
inner harbor
#

(player wanted them to blow in the wind)

rancid temple
#

SDVpufferdead I really don't know why I'm getting the wrong numbers in this inventory, all my logging returns exactly the numbers I expect

brittle pasture
#

@latent mauve so your files have a few problems:

  • The short machine is still set to the old DayUpdate rules with DaysUntilReady not set instead of the new trigger rules with "DaysUntilReady": 1. The large one is correct, but...
  • Your animation uses (a misspelled) TemporarySprites, which is not reliable and only recommended for intermittent effects (like bubbles, etc.). You should use Frames and interval under LoadEffects and WorkingEffects directly
calm nebula
#

which reminds me, I need to special case moss for Lumi too

inner harbor
#

oh atra, you are amazing 🙂 Now we can have moss!

#

(and I have to re-edit so many trees, lol)

calm nebula
#

nah, you don't have to, lol

inner harbor
#

well true, I don't have to for one person, but... I might!

desert pagoda
#

Is there a big list of all the big frameworks for content?

latent mauve
inner harbor
#

how many does "Town" actually add?

calm nebula
latent mauve
#

I know the short one wasn't updated yet, I was trying both options to see if either worked, and was gonna swap them both to match as soon as one worked. 🙂

calm nebula
#

there's so many great frameworks these days!

#

you can also just ask about a specific thing and probably be pointed to the right location

brittle pasture
#

I'm 25% sure someone managed to get TemporarySprites working reliably for different machine frames (Kedi?), but not me. Only direct frames work, and they have to be on the same sheet as the machine's initial frames

calm nebula
#

anyways, it's past an atra's bedtime

brittle pasture
#

so yeah you have to move your furniture's frames to the animation sprite you split out

latent mauve
#

Alright, in that case, I'll need to redo the spritesheet.

inner harbor
#

(and thank you)

calm nebula
#

feel free to ask me for code any time; I might not be able to get to it quickly, but SDVpufferheart

brittle pasture
#

(scrolled a few months back to the thread, I don't think Kedi got it working either and ended up just using traditional frames? either way I really don't want to be TAS' next victim so SDVpufferchicknight )

latent mauve
#

Do any of the issues you pointed out explain why the output item is suddenly visible early?

brittle pasture
#

ah yeah, forgot about that
you need to add dont_draw_held_object_while_processing to the context tags list

latent mauve
#

ok

brittle pasture
#

add it next to furniture_machine with a space between

latent mauve
#

now I just need to figure out why animation is going crazy

#

The first frame (the one I don't want used when animated) is bouncing one tile higher for some reason

hard fern
#

can I i18n-ify mail

livid kite
#

Yup

hard fern
#

oh ok that totally saves me all the trouble. nice

livid kite
#

Not at my computer atm, power is out in my town, but definitely would have given you some examples you could use

#

Wait I do have github in my phone maybe I can access my mod files real quick

lucid iron
#

you should do it like: "{{i18n:mail-text}}%item .. %%[#]{{i18n:mail-title}}

latent mauve
#

Hooray, I got it working!

#

Thanks for all the help, Selph!

livid kite
#

Actually you can put the item you want to give into the i18n also

  "Reyla.plushie_title": "Plushie Time",```
lucid iron
#

yea but u dont want people to mess that up

rancid temple
#

Be a problem if they translate that

lucid iron
#

the purpose is to separate logic from data

livid kite
#

Ah, I see may need to fix that then in my mod

hard fern
#

why'd i think to add so much dang mail

rancid temple
#

scope creep

lucid iron
#

I think u should add less mail Dokkan

#

I dunno if this is everyone's experience but my brain auto skips mail now

rancid temple
#

Yeah... I had to make a concerted effort to read the mail from Lumi's mod

lucid iron
#

Otoh I always read ppl's daily dialog, as long as I talked to em

#

Prob cus that's an intentional act

old edge
#

I use mail only for the flags it set

#

I am having trouble making sense of the wiki specifically with the special orders mail data! The boolean option don't make sense to me because I used true and for some reason they said it sent the mail as null.....

#

"Type": "Mail",
"Data": {
    "MailReceived": "Name of mail flag", // string
    "NoLetter": "true/false", // boolean??
    "Host": "true/false" // boolean
}
#

but I didn't want it to be sent just set the mail flag so is it true or am I supposed to set to false if I don't want the mail to show...

hard fern
#

well it's only 4 letters

#

sigh

old edge
#

so ```json
"NoLetter": "true"

#

then it says that it's true by default

#

Seems like that's what it's supposed to do

#

But then why does it show up still? Is it some mod?

lucid iron
#

@rancid musk the version I imagined would simply generate a ApplyHarmonyPatches method in the partial class that calls harmony.Patch(...) for you

patent lanceBOT
#

@calm nebula: add trade item ids to the gsq check (14d ago)

#

@calm nebula: actually try learning a katseye dance (14d ago)

lucid iron
#
[PatcherClass]
public partial class MyPatches
{
    [PatchPrefix("original", "priority")]
    public static bool MyPrefix(...){} 
}
rancid musk
#

There's a lot of ways you can do things.

lucid iron
#

I prefer having a static class that's the game patcher

faint ingot
#

question about rain / rain2 schedules: if somebody's 'rain2' schedule applies (as opposed to rain), will it be the same for everyone else? wondering about coordinating two schedules.

lucid iron
#

But ig u don't have to

rancid musk
#

But you get the point of why it's more complex to implement.

lucid iron
#

Yep

faint ingot
#

like is it random for each person or random for everyone together

lucid iron
#

That said I dislike the way patchall currently works with how u gotta sort patches into classes

#

Cus I like to organize in terms of "these patches combined achieves X"

#

It is big reason why I do manual patching, more so than any perf

rancid musk
#

(I mean I don't think you have to?)

rancid temple
#

You can jam cram all those bad boys in ModEntry if you wanted

rancid musk
#

slaps public class ModEntry : Mod
This bad boy can fit so much the entire mod even when it should really be split up into multiple files way past any point of sanity

lucid iron
#

think I thought HarmonyPatch had to annotate a class

#

Rather than just method

rancid musk
#
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Delegate | AttributeTargets.Method, AllowMultiple = true)]
public class HarmonyPatch : HarmonyAttribute { ... }
lucid iron
#

Oh interest, I guess it's just that this is the form introduced first in the docs so most ppl do it Dokkan

#

I suppose it could also aim to be a drop in replacement for patchall

#

You annotate it all the same way but u call the GeneratedPatchAll(harmony) instead

rancid musk
#

Nah, need custom attributes to avoid them sticking around at runtime and confusing anything.

#

At least there should be custom attributes for that.

lucid iron
#

Then keep it similar enough that someone hoping to change can just sed their repo Dokkan

#

But again the premise here is "the design of the harmony attributes are ideal"

#

Ppl may or may not agree

calm nebula
#

I mean lime

#

What do you do if a patch fakls

#

What do you do if you get il error

#

What do you do if you want a conditional patch

#

[HarmonyPatchIfModLoaded()]?

#

[HarmonyPatchIfConfigSaysSo]

lucid iron
#

Well the second one is sinful

calm nebula
#

[HarmonyPatchIfMyLoggingInstanceIsVerbose]

#

[HarmonyPatchIfTraceTimingIsEnabled]

rancid musk
#

Something else I'd like for, say... ```csharp
[BlahBlahHarmonyStuff(typeof(SomeTarget), nameof(SomeTarget.SomeMethod))]
public static partial class HeyAPatch {
private static ModEntry? Instance;
private static IMonitor? Monitor;

public static Prefix(...) { ... }

}to generate something likecsharp
public static partial class HeyAPatch {
public static void Patch(ModEntry instance) {
Instance = instance; // because a ModEntry container is defined
Monitor = instance.Monitor; // because a Monitor container is defined
// now actually do whatever patching
}
}```

lucid iron
#

[HarmonyPatchIfAprilFirst]

calm nebula
#

The If Verbose thing is an actual thing I did btw

#

Some harmony patches that added extra logging or extra logging metadata would only get applied

rancid musk
#

Sounds like a need for a mode where it generates Patch / Unpatch methods per-class and you can call them manually.

lucid iron
#

I think the source gen shouldn't do any sdv specific things

calm nebula
#

Ofc I just did bool Prepare() => ModEntry.ModMonitor.IsVerbose lol

lucid iron
#

ie should just accept an Harmony instance

rancid musk
#

I mean it would be part of my Stardew-oriented source generator

#

The Harmony stuff could probably be split off easily enough, but Stardew is already implied

calm nebula
#

Don't use harmony to mod ffixxix?

lucid iron
#

Yeah it's fairly common for modding right blobcatgooglyblep

#

Although there's the other thing HarmonyX, no idea about the nuances here

rancid musk
#

FFXIV doesn't have Harmony. It has much worse nonsense. 🙂

calm nebula
#

Oh god

rancid musk
#

There's this package called client structs that just... defines structs for the game's memory layout. There's unsafe stuff abound.

#

Somehow it all works without exploding

lucid iron
#

It's about trust huh

#

Speaking of the stardew oriented generator do u want to implement registering item queries and tile actions bolbthinking

#

Triggers too ig

rancid musk
#

Yeah ideally every kind of delegate should be decoratable

calm nebula
#

Thar seems cool SDVpufferheart

rancid musk
#

Just... use attributes on methods and it generates methods for registering them for you.

hard fern
#

😔 and another event done... back hurt

#

wow surpringly, the dialoge is only half the struggle

#

putting in all those event commands is tedious.

rancid musk
#

Event scripts in Stardew remind me of my RPG Maker days

fallow musk
#

everytime we start/reload the game, do we need to reapply the harmony patches?
One of the patches i did was applied on day 1 morning only.
after exiting and opening the game it doesnt seem to be active anymore which kinda makes sense
but just wanted to confirm

rancid temple
#

Depends entirely on where you're applying them from

#

And if you created any other conditions for them to apply

#

Typically, you apply them from Entry, so they apply every time you launch the game

fallow musk
#

the patch isnt triggered on every modEntry, but only on the OnDayStarted of spring 1, so if i progress till day 2, save, exit, reopen, then the patch's effect isnt active anymore

#

which makes sense

rancid temple
#

Well, if that's how you designed it. What's the problem?

proud wyvern
#

mods usually apply their patches at all times, and only introduce conditions in said patches

fallow musk
#

confirming any poosiblity if the patches are permanent in nature or not

#

thanks

#

like if they persist forever

proud wyvern
#

they don't

#

it's just that most mods just apply their patches when starting up, unconditionally

rancid musk
#

I have a mod that applies patches conditionally. It is the same mod that applies patches based on data files. I am a menace to society. 🙂

tardy sparrow
#

Hi, Is there a weapon mode with bows, crossbows, grenade launcher, etc?

rancid temple
brave fable
#

the game doesn't support windows in sizes other than 1x2, does it?

#

all window entries in the data file use -1 for sprite and tile size

#

i suppose this could be a painting instead

brittle pasture
#

you can add bigger windows, and it will work; the light will just only come from the left

brave fable
#

it doesn't centre the light? how lame

#

& uncool

brittle pasture
#

Furniture Framework might have something for that?

brave fable
#

hey you're not the usual sales pitch guy

brittle pasture
#

my other occupation is being the person with approximate knowledge of SDV frameworks

rancid temple
#

Is there some way to get the Vector2 position of a Tile? Any xTile documentation would be great lmao

brave fable
#

i don't believe tiles are aware of their position

#

utterly senseless

rancid temple
#

Truly chaotic

brave fable
#

oaves and lazes, one and all

#

ohhh if i make the window a painting it won't turn off at night. what a drag

latent mauve
#

Could possibly fake it with a timed conditional patch

frosty hull
#

Hello, where i can ask about mod SpaceCore error on android SMAPI 4.1.7?
should i ask in #1272025932932055121?

proud wyvern
#

since you're the one working on the Android SMAPI, i think it would be this channel actually, not the tech support one

rancid temple
#

Pretty unlikely you'll find any particular help with Android, I assumed you would be the person to ask since you're working on it lol

frosty hull
ocean sailBOT
#

Log Info: SMAPI 4.1.7.7 with SDV 1.6.14.10 build 24340 on Android Unix 33.0.0.0, with 8 C# mods and 3 content packs.

proud wyvern
#

a hundred line manual transpiler... yeah, i'm not reading that, and especially not in the context of the Android version of the game, which i don't even have the source code or the IL for

frosty hull
#

Oh ok

rancid temple
#

You'd have to look through the Android version of the decompile for the IL and figure out what part of the transpiler is wrong

#

There's no real simple fix for transpiler issues

proud wyvern
#

yeah. i assume the patched method is different enough between the PC and Android versions

#

which makes the transpiler fail

rancid temple
#

Worst case scenario, probably just have to write all your own transpilers for Android

frosty hull
#

Ok, i will try to fix it, thanks you all

#

i use dotPeak & feature compare between 2 Stardew Valley.dll PC & Android
it be same

proud wyvern
#

is the IL the same though?

frosty hull
#

Oh IL Code, one sec..

proud wyvern
#

it may decompile to the same code, but may be different IL

#

there's more than one way to do things in IL, it could be a different compiler

frosty hull
#

oh i see some IL it not same

#

"IL_00ec: callvirt"

tight loom
#

hey, if I don't have mod author role yet and I want to post a mod in #mod-showcase , can I just ask another person with this role to publish it there? 😅

brave fable
#

fact: 3x3 windows are not very doable for some reason

rancid temple
#

It's way up there

brave fable
#

3x3 sprite + 3x3 tile = can't place on wall, 3x2 tile = it's way up there

round dock
hard fern
#

i still cant believe ive made A Mod

#

like wow...

brave fable
#
public virtual bool isGroundFurniture()
{
  if (furniture_type.Value != 13 && furniture_type.Value != 6 && furniture_type.Value != 17)
  {
  return furniture_type.Value != 13;
  }
  return false;
}

what incredible decompile fluff

#
int tiles_high_to_check = getTilesHigh();
if (furniture_type.Value == 6 && tiles_high_to_check > 2)
{
  tiles_high_to_check = 2;
}

incredibly rude & targeted code

fierce silo
#

hoii, not my mod, im using starblue valley but the mod is only compatible for 1.5, it kinda works on 1.6 but there are some rectangle spots here that i guess werent for 1.6 :') is there anyway i can just custom fix this?

brave fable
#

sure, you can try your hand at fillbucketing the Maps/spring_outdoorTileSheet_extra tilesheet (for each of the four seasons) and including a new patch in the starblue content file if you have the decompiled game files handy

loud wharf
#

Hello! Does anyone know if it is possible to make a mod with music for winter evenings? I dont like THE SILENCE
I know how to replase vanilla music with content patcher, but I am not sure how to ADD new...

brave fable
#

i'm not sure if that's doable with pure CP, music behaviours are fairly hardcoded

hallow prism
#

see if you find a mod doing something similar

#

and then see how it does it

loud wharf
#

Hmmm maybe there are some tools

loud wharf
brave fable
#

sometimes u get hit with the true bewilderment of RemoveRange not being able to remove a range (i..j)

woeful lintel
brave fable
#

furniture framework simply doesn't allow for 3x3 tile windows to be placed on walls, and it most certainly doesn't centre lights in multiple-tile-wide windows 😌

woeful lintel
#

did you ask me? Because you can do a 2x3 tiles window, and offset the sprite to be at the height you want, and you can place the light wherever you want...

#

so yes, you can

brave fable
#

alas, i failed to ask and instead wrote a transpiler that swaps out the 6 check with a call to !isGroundFurniture

#

how have you already covered this edge case lol

woeful lintel
#

not a bad idea either tbh, the FF solution is kind of a workaround for the check

#

it's covered cuz you can customize basically anything in how the Furniture is rendered

royal rampart
#

Hello, I know that not many people may know but is there a mod that is similar to underground secrets redux? The mod says that it is updated for 1.6 but it doesnt look like it has worked since 1.6.5

woeful lintel
midnight skiff
#

This is a dumb question, but: how do we open a .dll file to see what's written inside?

#

My controller is behaving very strangely in game. I know it's not the fault of this mod (probably), but I still want to get a look at what is written. The mod author said it's only 3 lines of code, so it shouldn't be doing much.

brave fable
#

typically you'd head to https://mods.smapi.io and enable show advanced info and options to find the source code for a given mod, but since this mod has no source available you'll want to download ILSpy and target the DLL

midnight skiff
#

Ok! I'm in the middle of trying "dotPeek"

#

will that work? I found it through searching here in previous chats (some very old)

brave fable
#

possibly, but ilspy has been specifically updated in the past to better decompile SDV and SDV mods

#

it's the standard around here

midnight skiff
#

ok, switching to that

timid plover
#

Anyone here have an idea of what could make a vanilla furniture item go missing from the catalogue? I know it's not my mod because it's just an AT pack but I have a user who cannot access some of my rugs because the Large Red Rug has vanished from the catalogue

midnight skiff
# brave fable typically you'd head to https://mods.smapi.io and enable `show advanced info and...

If I see something like this:

{
    public override void Entry(IModHelper helper)
    {
        ((Mod)this).Helper.Events.Input.ButtonPressed += OnButtonPressed;
    }

    private void OnButtonPressed(object? sender, ButtonPressedEventArgs e)
    {
        // IL_0010: Unknown result type (might be due to invalid IL or missing references)
        // IL_001a: Invalid comparison between Unknown and I4
        // IL_002c: Unknown result type (might be due to invalid IL or missing references)
        if (Context.IsWorldReady && (int)e.Button == 2128)
        {
            ((Mod)this).Helper.Input.Suppress(e.Button);
        }
    }
}```
How do I know what buttons correspond with what on the controller? I am guessing `2128` corresponds with R3 (right joy stick click).
brave fable
midnight skiff
#

I think something is happening when I use GMCM to change keybindings. But I don't know why.

brave fable
#

though i doubt button's mod is giving you gamepad issues, since it's really only those 3 lines hahah

midnight skiff
#

Yeah, that's what the author said, and I don't doubt it.

#

When I've used GMCM, it happens sometimes that suddenly my whole controller messes up. If I try to use the right trigger to scroll right on the hotbar, it uses each item in turn as I scroll

#

And if I hit the L3, it opens up the virtual keyboard through steam.

#

I know something wonky is happening ... but at least now I know it's not Spiderbutton's mod (which I didn't think it was really).

rancid temple
#

Sounds like normal "Steam Input is actual garbage" to me

midnight skiff
#

yes, no doubt.

#

Do you have any suggestions for alternatives?

#

When I put spiderbutton's mod on ... it disabled my trackpad.

rancid temple
#

I normally disable it if a game can handle input itself, but I'm not sure for SDV since I normally ignore controller for it

midnight skiff
#

I was thinking of maybe trying DS4Windows or something ...

#

I will try and see what SDV can do if I disable it. I need to play with a controller or I'll wreck my arms.

#

Ok, it looks like just shutting off the Steam Input works!

#

And sorry, I know it's not the right spot but there's no chat for modded tech support and this isn't worth opening a forum post:

#

Is there anyway I can get the GMCM to show me the keybindings? There is a huge gap in the middle and I can't see the text that goes off screen.

brave fable
#

i'm testing furniture and haley just walks in, grumbles, then hides under the bed? how do i get my wife out

#

goblin-like behaviour

fossil osprey
midnight skiff
wide flint
#

Is there anything similar to portraitPerson from ShopMenu? Seems like it was removed, or was it just renamed?

hard fern
#

your wife doesn't like your furniture...? SDVpuffersweats

brave fable
#

i don't think there's any equivalent to portraitPerson in the game right now. what're you trying to do with it?

fallow musk
#

how to draw a basic rectangle on the screen
i intend to use this rectangle as sort of a menu screen, later adding some dropdown fields and <= => option changers thingy

lucid iron
#

For basic config menu stuff you can use gmcm

fallow musk
#

thanks

calm nebula
#

If I don't forget by Christmas

potent nacelle
#

could anyone help? i'm trying to add more lines for suki from SVE to give her more personality because i love her but she only says this during festival of ice & the desert festival. i don't know where this dialogue is from and i can't locate it in the files either

#

the "have a look at my wares" dialogue isn't in the i18n file so i'm not sure where else to look

drowsy pewter
#

is it not vanilla

rancid temple
#

Should be in Data/Shops

drowsy pewter
#

you can use your text editor to search for text in a whole folder btw

rancid temple
#

She's not really expanded in SVE lol

potent nacelle
#

yeah thats why i wanted to edit her myself SDVpufferwaaah

#

but when paired it with SVE, it shows up 'have a look at my wares'

#

so it seems to overwrite every other dialogue?

drowsy pewter
#

i would say the next step is to use search in a whole folder to look for this line

#

both sve and unpacked content

#

if it's a vanilla line, look to see if sve uses the key for the string

#

thats all

lucid iron
#

Sve vendor portrait stuff is non standard

#

I suspect this particular line is in the c# i18n

potent nacelle
#

you said use a text editor, could you clarify on that? its not the general search function in file explorer right

drowsy pewter
#

what text editor do you use?

potent nacelle
#

visual studio code

drowsy pewter
#

I dont know the function in that case

potent nacelle
drowsy pewter
#

just look around the search functions in the menu

#

chu means its in a file in the c# portion of sve

#

this is what the search in folder function is called in notepad++

#

it looks through every file

potent nacelle
#

ill get notepad++ just for this then

drowsy pewter
#

I'm sure VSC does it too

potent nacelle
#

-or try find the VSC version of it lol

#

where would the c# portion of sve be btw?

#

it wouldnt be in the CP folder right ...

rancid temple
#

The C# i18n seems to be all config stuff

#

With a few popup text strings as well

drowsy pewter
#

Okay I just ran it on all the SVE files

#

It's getting stuck on the sound files but no hits

#

its vanilla

potent nacelle
#

thank you!!!

#

and everyone for answering my seemingly basic questions

lucid iron
#

Vsc has search all too

#

You need to open a folder first, and then magnifying glass on left side bar

rancid temple
#

It's from vanilla, but vanilla Data/Shops isn't calling that string

potent nacelle
#

so if i want to replace that dialogue i have to target Strings instead right?

drowsy pewter
#

yeah if you just replace it in strings it will work

lucid iron
#

Oh I remember now this is the default no dialog vendor dialog

drowsy pewter
#

unless you want to hunt down how SVE calls on this string

rancid temple
#

Oh, yeah uh Ice Festival Suki doesn't have any set dialogue

drowsy pewter
#

ah okay

lucid iron
#

I would just touch it, most mods that bother to portrait will give custom dialog Dokkan

#

You can condition your patch to the day if u r concerned

potent nacelle
#

alright, i'll try to see if it works, thank you everyone again SDVpufferaww

lucid iron
#

Make traveling cart lady real mod when

rancid temple
#

Making Suki a real NPC would be kind of weird, considering how often she's just gone lol

calm nebula
#

That's the challenge

rancid temple
#

Gotoro expansion mod when

calm nebula
#

When you do it

rancid temple
#

I'm only a little Chinese, I was raised too white for all that

calm nebula
#

Is gotoro china?

hard fern
#

🤔

rancid temple
#

Seems like it's just kind of generic Asian

calm nebula
#

Tbh I'm not sure there is any lore in vanilla for that

hard fern
#

I don't think there is either

calm nebula
#

In unrelated, I have a new hat!

hard fern
#

Did you make it yourself

calm nebula
#

It is brioche so it is the squishiest

#

Yup, made it myself

hard fern
#

Nice

#

I can barely make a granny square haha

drowsy pewter
#

asian gotoro is an sve thing not a vanilla thing, and i'm very passionate about people not conflating the two

rancid temple
#

Things they give in Gotoro prison camps, apparently

hard fern
#

Holly

rancid temple
gray bear
drowsy pewter
#

Yeah I think so, vanilla didnt really do much with individual gift lines

rancid temple
#

Yeah, all his hate dialogue talks about getting that item in prison, so still pretty wild spread there

#

Milk, Sashimi, Tortilla, Gotoro is America confirmed

gray bear
#

Holly seems very unlikely to be served in any prison

#

isn't is poisonous

rancid temple
#

Also, people talk about how brutal the Gotoro Empire is, so further confirmation

calm nebula
#

Tbh I find the entire war saga so not fleshed out I don't find it interesting at all

drowsy pewter
#

I dont really know why people (not here) cherrypick the sashimi as proof because there's no world in which prisoners are actually being given sashimi 😆 (well, i do know why, and it's because of the prevalent sve-fanon)

#

(but it does come up a lot as "proof" of gotoro's nationality while not addressing that it's his generic hate line)

hard fern
#

Kent hates raw fish lol. Most people do

calm nebula
#

Anyways

gray bear
#

i mean i don't think a single place in the world actually has algae soup

rancid temple
#

Also ignoring how Asian-coded tortillas are /j

calm nebula
#

I like raw fish 😦

gray bear
#

i, could be wrong i suppose

drowsy pewter
#

I looked it up for research and iceland does have algae soup!

#

not like that though

calm nebula
#

And algae soup

gray bear
#

oh! good to know

calm nebula
#

I mean, 6480, what is seaweed but algae

gray bear
#

perhaps CA choose items from different places on purpose to throw us off

calm nebula
#

And seaweed soup is tasty

drowsy pewter
#

Thats true, but the game also has seaweed, so we can assume they are distinct

gray bear
drowsy pewter
#

Google show me the phylogeny of SDV organisms

hard fern
#

I like raw fish 😔

drowsy pewter
hard fern
#

Im tempted to add even More sushi to the game

calm nebula
#

Ot maybe CA doesn't have a degree in biology

gray bear
#

:)

hard fern
#

Because there's so many fish, the possibilities are endless

gray bear
#

you're right

calm nebula
#

Stop ten people on the street and ask them to explain the difference between seaweed and algae

#

And get like maybe 20 incoherent answere

gray bear
#

"well one is green... wait-"

calm nebula
#

It's the same way where Maru became Science Girl tm

hard fern
#

Ahem, well your fish tanks don't usually grow seaweed on the glass

calm nebula
#

What if your fish tanks were salty

gray bear
#

it is a plant, so

hard fern
#

There's saltwater algae right

acoustic stag
#

Seaweed is a plant and algae is a ?????

gray bear
#

is algae a plant, whats the actual difference

hard fern
#

I don't have a degree in marine biology

calm nebula
#

Neither of them are plants

acoustic summit
#

Algae arent plants, most seaweeds are also algae

#

Some seaweeds are plants tho

hard fern
#

They're actually... Just green fish!

drowsy pewter
#

Let's discuss the formation of multicellular life in making-mods today

hard fern
#

XD

gray bear
#

is white algae also a thing

#

guessing so

acoustic summit
#

I think white algae is representative of a lichen

gray bear
#

reads what lichen is well im not eating white algae soup

calm nebula
#

6480 discovering xkcd 2501 in real time

gray bear
#

actually i probably wouldn't eat the green one either

calm nebula
#

(I would find white algae unlikely unless it was, like, dead.)

#

you kinda need a dye to phothsyntehsize

gray bear
#

y'know i feel stupid i didn't connect the dots before

calm nebula
#

or I guess a parasite, that works too

acoustic stag
#

Oh I think it's white because it's usually in like caves and stuff? Where there isn't sunlight

calm nebula
#

annyyyyways modding, modders, I expect an Realistic Algae Mod on my desk by next Monday

acoustic stag
#

(the real difference between algae and seaweed is that I'm cool with eating seaweed)

gray bear
#

if we're being realistic, would it be edible?

#

in it's raw form

acoustic summit
#

Again, some are... just like mushrooms. Are you gonna risk it?

gray bear
#

i don't like mushrooms so i doubt i'd like anything that's "like" mushrooms

drowsy pewter
#

so fjallagrasamjólk is the icelandic soup I was referring to, which is made with a white lichen. Since SDV names are a little arbitrary and used colloquially, that's what I imagine as a stand-in for pale broth

gray bear
#

interesting!

hard fern
#

Penny likes it

gray bear
#

the only thing i doubt that is edible would probably be moss soup tbh

acoustic summit
gray bear
#

i mean, it would be edible, but uh

#

do people eat moss? do i want to know? hmm

lucid iron
#

Is lichen soup salty or sweet

brittle pasture
#

moss soup is actually a deltarune crossover enter send tweet

desert pagoda
#

What can c# be used for that content packs cannot?

rancid temple
#

C# can do anything

hard fern
#

Content packs rely on frameworks

#

So if what you want to do cant be fit into a framework

lucid iron
#

I been assuming that pale broth is like, silver ear mushroom soup adjacent

uncut viper
#

content packs can not do a lot of things

hard fern
#

It's time for C#

lucid iron
#

Maybe a lil slimey

desert pagoda
#

Can I please have an example?

uncut viper
#

Content Patcher (though not the only framework with content packs) is just a C# mod that does C# stuff on behalf of a content pack

desert pagoda
#

Honestly I have seen a framework for everything

drowsy pewter
#

If you feel like you dont need to do anything that a framework cannot do, then you're fine

uncut viper
#

asking for an example is a little vague bc basically anything that is completely new and custom behaviour will need C#, which is very open ended

rancid temple
#

There are definitely still a lot of frameworks

lucid iron
#

Well I'll give u example from my first mod sprinkler attachments

calm nebula
#

We can always scare them with the More Fertilizers source

brittle pasture
#

custom tools

lucid iron
#

Things I did in content patcher: adding the attachment items, tagging them with custom fields, adding those items to shop

hard fern
#

Waiting for the day c# catches up to me... SDVpuffersweats

lucid iron
#

Things I did in C#: actually make the items do stuff

#

I don't think it's worth worrying about C# cus you will know it if you need it Dokkan

rancid temple
#

Buildings that do anything outside the normal functionality of SDV buildings (like a building that protects a whole map from crow spawns)

uncut viper
#

significantly fancy Special Items & Powers are another thing that will need C# if you want them to actually do anything beyond what a simple content patcher patch can do

opaque junco
#

how to enable music loop? It is awful when music plays only once a day and then its quiet

uncut viper
#

no framework for those yet

rancid temple
#

Walk out of the map and back in is usually what I do

desert pagoda
#

So c# is like steroids, I don't need to worry about it until I have reached my content pack potential

drowsy pewter
#

yeah

#

you can always add it later

blissful panther
#

It's not even so much your content pack potential. It's not like C#-requiring mods are higher than C#, it's just a different category altogether.

rancid temple
#

As a C# author, I'm not sure how I feel about it being referred to as steroids lol

brittle ledge
#

Frameworks allow you to add new content within the rules. If you want to break the rules, C#. kyuuchan_nod2

rancid temple
#

If you want to break reality, Harmony

uncut viper
#

sometimes a framework lets you do both

calm nebula
#

Break reality?

#

Someone please harmony patch the concept of time plz

uncut viper
#

funnily enough i was just now thinking about that gold clock idea you had

rancid temple
#

Specifically, after the 12th time you've had to dive back into a transpiler, you'll want to break your computer over your knee

desert pagoda
#

What is Harmony

uncut viper
#

harmony lets you alter the games original code and functionality

#

instead of just writing your own new code

desert pagoda
uncut viper
#

i mean Harmony is a C# library so like, technically

#

without Harmony you wouldnt really be able to stop the game from doing the stuff it normally does, only add stuff on top of it. but with Harmony you can change what it normally does

#

for a bit of an exaggerated but real example: without Harmony the game will launch and go through the motions and you can write your own C# code, sure, but the game will still launch and run the game and handle daily update functions and yada yada, bc all its normal code still runs
with Harmony you can make the game launch and load up a game of Pong instead of stardew valley

blissful panther
desert pagoda
#

Mod that detects Stardew valley addiction and makes you load into ET If you play for more than 5 hours straight

uncut viper
#

that one probably doesnt actually need harmony SDVpuffersquee

#

there are some times where you can get away with not needing harmony and just simply making sure your code runs after to make sure your code overwrites what the original code did
but sometimes you gotta interrupt the original code

#

and even if you dont, it still helps you run your own code at specific times

#

because you can set your code to run before or after specific functions, rather than relying on SMAPI events to detect when you need to do something

desert pagoda
#

Oh interesting, (this feels like going into the wizard's tower and getting a lecture about magic)

grizzled thorn
#

Hey guys I was looking into trying my hand at making a mod, I am a novice with this stuff but keep seeing that stardew is undergoing code changes that change how modding works. Will the guides posted on the wiki still work?

rancid temple
#

The official wiki [[Modding:Index]] is a good resource for making mods, the modding wiki has a lot of out of date tutorials on it

rancid temple
#

!startmodding depending on what kind of modding you're looking to do, I suggest starting with Content Patcher unless you're trying to do something frameworks can't handle

ocean sailBOT
#

Making mods can be broadly divided into two categories:

Usually it’s easier to start with making content packs, since you don't need to learn programming.

rancid temple
#

If you have more specific questions about what you're trying to do, it can help us to point you in the right direction as well

uncut viper
#

1.6 was a lot of changes to make modding easier but most things posted after that was released (i.e. in the last 8 months) should be up to date

#

nothing too major has changed for modding since then

rancid temple
#

(as long as you don't count light source, quests, and save serializer changes SDVpuffersquee )

uncut viper
#

hence "most" but also I don't think the serializer stuff made a difference for anything but spacecore

rancid temple
#

Yeah, I dunno if anyone else is really rolling their own serializer stuff anymore lol

uncut viper
#

i wouldn't call the light source stuff or quest stuff major either since they're usually very quick changes SDVpuffersquee

desert pagoda
#

What is a serializer?

uncut viper
#

writes your save data to the save file

rancid temple
#

Without corrupting everything even

desert pagoda
#

Why edit something so core to the game, wouldnt that risk corruption?

uncut viper
#

i mean it was the vanilla game that changed it, I'm sure they had their reasons, likely mobile related unless I'm misremembering that

desert pagoda
#

I meant modding wise, why do some mods alter the serializer?

uncut viper
#

spacecore doesn't actually really change it, but it makes it so that modded stuff can be saved to a different save file of sorts

rancid temple
#

To stop the game from crashing when it tries to save stuff that shouldn't be in there lol

uncut viper
#

because the game cannot handle custom C# classes in it's serializer

#

but it doesn't change how the vanilla stuff is serialized or how the actual save file is written

#

the warning in the SMAPI console about it is just because spacecore touches some of the serializer stuff to make that happen

desert pagoda
#

Thank you very much great sorcerers of math.

uncut viper
#

odds are you'll not need to worry about it

#

and if you do it's simple to use spacecore to help you

rancid temple
#

Does SpaceCore not actually change it? I thought it was tearing out the parts of the save with the custom stuff and then cramming it back in afterwards

tiny zealot
#

i believe it writes most stuff to a sidecar, yeah

uncut viper
#

I meant in the sense that it doesn't change how the vanilla stuff is serialized

rancid temple
#

Ah

uncut viper
#

that is the vanilla save still works without spacecore

#

minus the modded stuff obviously

#

(which the SMAPI warning warns may not be the case because it can't be sure)

desert pagoda
tiny zealot
uncut viper
#

which is slightly less simple, but still doable yes

rancid temple
#

Didn't atra say that doesn't work very well with custom locations?

desert pagoda
#

I assume printing hello world isnt the key to Smapi modding /j

tiny zealot
#

i believe it. locations are... fun

rancid temple
#

You'd be surprised how much time I spend adding debug logs to my code dogekek

uncut viper
#

I imagine you still can do something that isn't spacecore to recreate a location in a similar way

#

it's just more work

#

probably creating your own sidecar

tiny zealot
#

i got away with it by just using a regular GameLocation and implementing my special behavior outside of the class definition

calm nebula
#

(Yhe other reason why you want to use spacecore is that spacecore is a like.)

#

(Centralized manager of custom types.)

rancid temple
#

I suppose it depends on how many changes that location can take and how many of those you want to keep

calm nebula
#

Removal and reinsert breaks if modder Y puts Special Item Z in your location

desert pagoda
#

This space core is sure a core mod, it seems to do a great deal!

tiny zealot
#

spacecore has too many jobs, in my opinion

calm nebula
#

And other mods doing manual serialization often reflect into spacecore to handle spacecore types

uncut viper
#

(tbh i wish the serializer was it's own mod)

tiny zealot
#

but i'm the only person who thinks that, so

calm nebula
#

Tbh I was looking into serializer stuff myself

#

Not for custom types per se

uncut viper
#

no I also very much think spacecore does too much

calm nebula
#

But to reduce the size of both thr save file and mp sync

rancid temple
#

I don't mind SpaceCore doing a lot, but I worry it's a big cause for burnout for Casey (right behind user complaints)

desert pagoda
#

I have been reading the documentation and it seems to handle like the entire game

calm nebula
#

But then I recalled I'm retired haha

uncut viper
#

i think a lot of things in spacecore could've been their own mods personally but it ain't up to me

desert pagoda
#

From shops to virtual currency from buffs to warps to litterally anything else.

spice inlet
rancid temple
#

Ye dark ages

spice inlet
#

honestly we wouldnt have this issue if dependency downloads were one click

rancid musk
#

Nexus make a mod manager that isn't awful challenge

uncut viper
#

i wouldnt like it if Custom NPC Fixes, Custom NPC Exclusions, STF, and FTM were all bundled into one "core" mod either

spice inlet
#

smaller features like virtual currencies or the odd map property need a bigger framework though. No one would want a framework that enables mini fridge placement anywhere

#

I get your point though and I agree

lucid iron
#

I been thinking about eliminating spacecore req (for save serializer)

uncut viper
#

some things are so small and niche that i do agree with those being bundled into a mod that does misc stuff, i agree. things like save serializing, dungeons, and guidebooks,, etc though, i would rather a different mod

tiny zealot
#

both situations (big frameworks, too many frameworks) are kind of irritating, but i have a particular brain rot (empathy for the machine) which makes me get all antsy when i have mods doing code i don't need, so i prefer things with One Job™️

lucid iron
#

It is exist tho so I must consider it when I make any mod that could interact with it Dokkan

#

Truly the systemd of stardew

uncut viper
#

(and in case casey backreads this later i hope its clear that im not sayin any of this with any negative judgment or spite or anything, i just have that similar sort of antsyness as ichor)

tiny zealot
#

as delixx said, the too many dependencies problem is made worse by nexus

uncut viper
#

and i personally like it when its clear why a mod has a dependency on something

lucid iron
#

Oh delixx since u r here do think u can give the UB bundle object a display name bolbwawawa

uncut viper
#

if i download a mod and it has Shop tile Framework, i know why

#

if i download a mod and it has spacecore, who knows

lucid iron
#

So that they appear normally in mods that r use the display name, like informant tooltips

rancid musk
#

I just realized I have absolutely zero ideas what I should call my helpful source generation project.

uncut viper
#

call it "Helpful Source Generation"

rancid musk
#

Thank you chatgpt

uncut viper
#

i cant think of a worse insult

rancid musk
#

lmao

spice inlet