#making-mods-general

1 messages ยท Page 324 of 1

rare orbit
#

i'll pop in game real quick

#

the item does show up but the ruby guava is shown as an error item

fierce vault
#

Is there a reason that there is a separate Krobus trench coat png even though he already has his trench coat portrait in his main spritesheet? Do I need to account for this in my portrait mod?

brittle pasture
latent mauve
#

Well, it finally happened, somebody asked if Pelican Valley Loft could be used for farmhands to sleep in instead of custom NPCs. (My answer was no)

brittle pasture
#

I said Bonsters.MoreCrops is only an example because I don't know the real mod id at the top of my head ๐Ÿ˜…

#

I peeked in the files and the real id is BFV.CombinedCrops

latent mauve
twin wadi
#

so this is one thing i've been struggling with, so basically i'm trying to reference some base game tilesheets for my maps. do i have to make copies of each of the tilesheets and put them in my mod? because smapi gives an error about not climbing directories.

#

it's driving me crazy and i can't find anything

rare orbit
#

this goes in the recipe and spacechase json?

brittle pasture
#

yes
you want to be sure, boot up the game, spawn a red guava and use lookup anything on it

rare orbit
#

kk!

brittle pasture
#

and see what the item id is

rare orbit
#

i'll enable look up anything real quick

ocean sailBOT
#

When creating or editing maps in Tiled, one common error is tilesheet climbing, marked by red text containing "invalid tilesheet path '../../..'. This is caused by SMAPI not being able to find the tilesheets needed by the map file. To prevent this error, make sure that you have a copy of all necessary tilesheets in the folder containing your WIP tmx file. Copies of vanilla tilesheets can later be deleted, but must be present while working on your map.

If you get this error with a completed map, an easy way to fix it is to open your tmx file in VS Code or a similar text editor, find all of the places with <image source=, and remove the filepaths to so that only the tilesheet names remain. For example, if the code says <image source="Content (unpacked)/Maps/townInterior_2" width="512" height="64"/>, change it to just <image source="townInterior_2" width="512" height="64"/>.

iron ridge
rare orbit
#

for some reason gettin an error??

#

for my mod

uncut viper
#

!log please use the log uploader

ocean sailBOT
#

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

Please share your SMAPI log file. To do so:

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

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

uncut viper
#

and if you're posting an error its always a good idea to post the json with it. also using smapi.io not directly in discord

twin wadi
# lucid iron !tilesheetclimbing

so you need a copy of all the tilesheet pngs and tsx in your mod folder? or is there a simpler way than duplicating and adding each tilesheet?

uncut viper
#

you can put your .tmx inside your unpacked Maps folder while you're editing it

#

and then work in there

#

if you embed tilesheets you dont get a .tsx

twin wadi
#

oh so i work in the unpacked maps folder and embed them?

uncut viper
#

its an alternative to just copying the ones you need to your mod folder, yep

twin wadi
#

thank you so much! ill try that. i was copying each one and i was thinking, there's got to be an easier way

iron ridge
#

omg it does the thing!!

lucid iron
#

Caved

iron ridge
#

but cave gif!

lucid iron
#

Tbh im not sure what i am seeing here

#

Map layers?

uncut viper
#

a timelapse i assume

iron ridge
#

why are these colours so disgusting I don't want spec following gifs I want colourful gifs

#

oh im using the low quality format

rare orbit
ocean sailBOT
#

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

rare orbit
#

still an error with the recipe

iron ridge
#

yay more colours

twin wadi
lucid iron
#

You need it while you are editing the map

uncut viper
#

no. you just copy the tmx into your mod folder when you're done with it

brittle pasture
uncut viper
#

important note: do not ever save your tmx when the tilesheets are not present or there are errors in your tmx

#

even if you move it to the mod folder after and just want to do a quick edit, you need the tilesheets

brittle pasture
#

always match opening brackets with closing ones, and ideally find yourself an editor that does it for you

rare orbit
#

which line??

twin wadi
uncut viper
#

you need to work on it in the maps folder, not the content folder, and if you already had errored tilesheets in your map beforehand then embedding extras will just leave you with two copies probably

#

i dont know what the state of your tmx was before you moved it to the content folder

uncut viper
#

n++ does not automatically validate json for you

twin wadi
#

wait i made a mistake, i forgot to delete the previous tilesheets i'd copied into my folder

rare orbit
#

well what should i use with a easy to get ui?

twin wadi
#

i think i get it now, ill test it

uncut viper
rare orbit
#

also is the second json ok?

brittle pasture
#

(I'm on my phone sorry)
general rule is for every { you need a }, and [ and ], and they must be in order

#

you're missing some of the closing ones

#

and a {} block around the entire thing

rare orbit
#

k

#

so im getting an error

#

still

#

it says "end of file expected" for the space chase json

brittle pasture
#

still missing brackets then

rare orbit
#

im still trying to figure out where to put the bracket

twin wadi
uncut viper
#

is there an easy way to construct a new ItemGrabMenu with a chest capacity bigger than 36, without creating a dummy Big Chest item to pass as a sourceItem to the ItemGrabMenu constructor?

tawny ore
#

Yes-ish. I do some chest menu resizing stuff in the Unlimited Storage beta.

uncut viper
#

the "ish" scares me

tawny ore
#

You need to trick the constructor to use the first set of code for constructing the ItemsToGrabMenu

#

Otherwise, it falls back on the default that you don't want to run

lucid iron
#

I think making a big chest is honestly optimal for compat

rough lintel
uncut viper
#

well right now it aint linked to a chest at all anyway

#

unless a global inventory creates a chest behind the scenes

lucid iron
#

Phone

tawny ore
#

Global Inventory does not

lucid iron
#

Ofc this is assuming you care about it + need more than the default size

uncut viper
#

i would like it to be more. but i dont want to affect Every itemgrabmenu, just this one im making

lucid iron
#

I made a transiant Chest that's set to some type (possibly big chest)

calm nebula
#

The heck did I do for vmv....

lucid iron
#

And used that to open item grab menu

#

Vmv just used no source item

calm nebula
#

I definitely did not make a chest

#

Yeah

uncut viper
#

is there no downside to creating a new temporary chest linked to t he same global inv every time

lucid iron
#

So it's fine for 36

calm nebula
#

I think in museum overflow I just reimplent menu

lucid iron
#

None that i can tell but no one's actively using this feature

lucid iron
#

Overall i was just very lazy ok

#

In trinkets i did subclass item grab menu in effort to make it all nice (it explodes on da phone)

tawny ore
lucid iron
#

The mutex im using is the global inventory's mutex so it's fine if the chest itself doesn't persist

tawny ore
#

As long as a GlobalInventoryId is assigned, then GetItemsForChest and GetMutex will pull the appropriate inventory by ItemGrabMenu.

lucid iron
#

button ig its up to u monS

#

how much do u desire more than 36 slots

uncut viper
#

i like the secret fourth option of begging pathos to include another override in 1.6.16/1.7

#

(im only sorta joking)

#

its for holding the entire inventory of a museum, so 36 might be too little

lucid iron
#

yea but ppl dont need to see it right

uncut viper
#

certainly not enough for the vanilla museum. it wont be used for the vanilla museum, but if someone wanted to make one to match the scale of it, theyd likely want more

#

no this is for people to allow taking items back out

tawny ore
#

Keeping in mind, big chests have a fixed number of rows/columns. So you don't get the flexibility of it being completely custom.

uncut viper
#

or for a debug console command to take them back out

lucid iron
#

i guess another way is

#

paginate the Items

#

considerably more shenanigans here tho

uncut viper
#

64 seemed more than enough for most uses

lucid iron
#

but none of it menu Bolb

uncut viper
#

i definitely do not wish to add pagination

lucid iron
#

u just slice the inventory u r giving to the itemgrabmenu

#

and maybe make some button

tawny ore
#

Option F - You can abandon ItemGrabMenu and make it using StardewUI

lucid iron
#

nou

uncut viper
#

yeah just code the rest of the owl. make sure the owl has a nice UI too. also make sure it fits into the existing menu options nicely. also make sure it works on phone

half tangle
#

640 kB of memory should be enough for anybody

lucid iron
#

yea brb im making the Cornucopia Exhibition

uncut viper
#

custom museum framework has no dependencies at the moment and id love to keep it that way

tawny ore
#

I don't think begging is sufficient, it may require bribery

lucid iron
#

by make some button i mean like

calm nebula
lucid iron
#

do on menu render draw when current menu is the itemgrabmenu

calm nebula
#

Christ

#

Was that two years ago

#

I'm so old

half tangle
#

what if you just limit the size of a "museum table" to 36 and let the player only interact with items on that table?

calm nebula
#

Oh god

uncut viper
#

look im not saying i cant do a bunch of editing menus and fields or constructing new ones or slicing and bla bla. i just really didnt want to bc i dont feel like it

calm nebula
#

You can steal mine SDVpufferheart

tawny ore
#

Instead of making it bigger, how about just making the Museum smaller?

uncut viper
#

i was hoping there was just like One thing i can edit after constructing the menu to make it Bigger

tawny ore
#

That sounds easier

uncut viper
#

its not my museum!!

#

i do not control the size

uncut viper
#

nor the tables

tawny ore
#

Everything is your museum with enough prefix patches

calm nebula
#

Also if you don't control the size you need pagination or scorll

half tangle
#

but you could...

uncut viper
tawny ore
#

Why is everyone always trying to make the game bigger. There needs to be more mods making the game smaller.

#

Minimal SDV. One crop per season.

#

It is in fact the best crop for that season, so everyone can be a min-maxer.

lucid iron
#

the crop is Weedses

#

there is endless debate on whether Weedses Honey is better than Pickled Weedses

tawny ore
#

If I'm being a pure minimalist, I'd just make potatoes the year round crop

tacit sparrow
#

It can be a post apocalypse event and potatoes is the the only vegetable remaining

brittle pasture
#

mod idea: the Junimo Cube
the Junimo Cube, through forest magic, is capable of transforming into a Junimo Seed, a Junimo Egg (which can hatch into a Junimo Chicken), and some other Junimo stuff idk
the catch is that you only ever get one cube, and you are not allowed to grow any other crop or raise any other animals, and if you want the Cube back you need to kill the crop/sell the chicken/etc.
oh, every machine also needs the Cube as a fuel, and you get the Cube back when it finishes

uncut viper
calm nebula
#

Oh yeah no android compat lol

tawny ore
#

Scrollbars on an ItemGrabMenu are super simple to implement using just a prefix/postfix on draw. I stole that approach from how aeden implement their custom backpack framework.

uncut viper
#

i also will probably just take the absolute easiest route when i do get to doing it, because the only reason i asked now is bc im in docs writing mode and as ive been writing them ive been realizing there are places in my code that need refactoring or minor bug fixes/feature tweaks, and if i get too distracted i risk scope creeping too much again and delaying the release much longer

#

are those scrollbars controller compatible

#

and are their neighbours correctly set up

tawny ore
#

In my case yes

#

I neighbor them to the top/bottom right-most slots

uncut viper
#

then as a controller player please know that i appreciate you a lotfor that

tawny ore
#

Actually I recently implemented automatic overflow logic where you go down from the bottom slot of the top menu, and it scrolls until it reaches the bottom

#

That felt more intuitive than a scrollbar for controllers

#

I just prevent it from moving to the bottom menu unless it's scrolled all the way down

calm nebula
#

Smh controllers

#

I interact with thr game the way god intended ||directing electrons individual with my mind||

lucid mulch
#

I thought it was a text adventure with console commands

fierce vault
#

Hey, guys. I was wondering if there is a reason that there is a separate Krobus trench coat png even though he already has his trench coat portrait in his main spritesheet. Do I need to account for this in my portrait mod?

#

I have his new trenchcoat portrait in my own spritesheet in the right place, but Iโ€™m not sure if the separate png is pulled instead. Idk why it would be though, as they are the same portrait

lucid iron
#

if you look at Krobus's Data/Characters

#

he's got an appearances entry that says "use Characters/Krobus_Trenchcoat when movie theatre"

#

you will want to target this

fierce vault
#

Ah, ok. Iโ€™m so close to finishing my mod, so Iโ€™m glad I asked. Iโ€™m going to work on that right now, and hopefully I get it right. Iโ€™ll need to figure out cjb cheats or debug to test it though ๐Ÿ˜…

lucid iron
#

just install that n check the unlock movie theatre thing

brittle pasture
#

why is buildingTypeILiveIn serialized

lucid iron
#

actually hm

#

that means i should use the CanLiveIn then

#

in case a mod do some funny thing that take advantage yggy

rare orbit
brittle pasture
#

yeah now I'm not so sure about the foreach idea, because if I set an ostrich to having its house be CoopOrBarn, it gets stuck with that until the end of time

rare orbit
#

i assume another ] on that line?

lucid iron
#

bad for uninstall

#

ok ill just instantiate FarmAnimal it's fiiiiine

brittle pasture
#

yeah
(though it's not like Squeeze Through is good to uninstall either, I defaulted it to Coop, which I probably should change now that I realized this)

lucid iron
#

theres probably more of these cases where i naively reimplemented some game method

#

alas

brittle pasture
#

(once I make the default Barn, then Squeeze Through would be safe to uninstall. the existing Coop-borne ostriches will forever be marked though, alas SDVpufferrise )

lucid iron
#

well ppl can just manually move em

brittle pasture
#

yeah they can move them before uninstalling, but they'll be stuck in that barn after uninstallation

#

two years from now someone's going to wonder why they can't move their ostriches on their old modded save SDVpufferclueless

rare orbit
#

is there something i can add to visual code studio to auto fix it?

brittle pasture
rare orbit
#

sorry but idk what to do to fix it

#

when i tried to add ] still an error

brittle pasture
#
  1. you're missing a } and a ] to match the opening [ and { on line 1 and 2
  2. you need to wrap the entire thing in another block of {}
inner harbor
#

@ruby marsh One of my children - generally the second one - still often void walks in the bus stop. Is there any way I can fix this on my end? Do you know why it happens? It's only the bus stop map it happens on... I could try and send you a modbundle and savefile if you need it for testing purposes. (Or if you cannot investigate, that's fine - he's in bed the next morning).

brittle pasture
rare orbit
#

if i may ask which do i click to enable that?

brittle pasture
#

sorry you'll have to ask someone else (I use vim ๐Ÿ˜… )

rare orbit
#

so after fixing one thing now i got another issue..

brittle pasture
rare orbit
#

i think i fixed it???

brittle pasture
#

you need a [] block around the {} block at changes

brittle pasture
#

nah, that's still broken

rare orbit
#

fffffffffffffffffffffffffffffffffffffffffffffff

#

sorry tryin to not scream

brittle pasture
#

it might be faster for me to just send you the fixed json SDVpufferlurk

tawny ore
#

If you use VSCode

rare orbit
#

thank u ;w;

#

i legit feel so dumb ;-;

lucid iron
brave fable
#

nice loading bar! very well integrated

crude plank
rare orbit
#

yay! the recipe shows!

#

i was intending for any flour to be used but imma buy the recipe and test it

fierce vault
#

Hey guys! I thought I'd provide an update on getting the portraits to work. I have to confess that I had no idea how to target krobus at the movie theater with a png separate to his portraits, but after a ton of errors trying... it turns out I didn't even have to!

I tested my mod with all the regular portait mod code, and he shows up to the movie theater just fine!
Maybe the extra Krobus trenchcoat png in the game's files is just ignored with CP and the Krobus trenchcoat portrait in his regular spritesheet is used instead? I have no idea, but I didn't need to account for it, thankfully!

lucid iron
#

that's odd but maybe funny hardcoding is going on tho

fierce vault
#

Idk, but it's confusing

lucid iron
#

oh i see

#

the appearance entry only has a Sprite (Characters/Krobus_Trenchcoat)

#

it does not reference the Portrait (which exists at Portraits/Krobus_Trenchcoat)

fierce vault
#

Maybe it was just an extra left in then?

#

Because there doesn't appear to be any purpose for a copy of it to just be floating outside the spritesheet

lucid iron
#
{
    "Action": "EditImage",
    "Target": "Portraits/Jabigail",
    "FromFile": "AngryAbigail.png",
    "ToArea": {
        "X": 0,
        "Y": 0,
        "Height": 64,
        "Width": 64
    }
},
#

for ref here's how you'd edit

#

and to find out what the Target is, look at your unpacked content

fierce vault
#

Oh, thank you, chu!

#

I'll save this

#

I think my mod is ready to go. All I need to do is make the nexus page!

latent mauve
#

But I suppose he doesn't use the trenchcoat there either?

fierce vault
#

Oh, hey, do you think including a pic of krobus at the movie theater would be too much of a spoiler for a mod page?

gaunt orbit
lucid iron
#

subork doesn't have a portrait

brave fable
#

a harsh double-standard given most mod authors haven't even done one playthrough

fierce vault
#

I'll probably include it, because it's a great picture, imo

brittle pasture
#

the people who are going to install your mod are statistically more likely to be krobus enjoyers, who statistically are more likely to have taken krobus to the theatre at least once

fierce vault
gaunt orbit
#

I've never gotten perfection but I've done two vanilla y4 playthroughs and two y3+ modded runs

patent lanceBOT
fierce vault
#

I never got perfection either, and I probably won't

calm nebula
#

I I've gotten perfection!

#

||I'm just naturally perfect||

fierce vault
#

Anyway, thanks for the help!

calm nebula
#

Alternative joke ||debug perfection||

gaunt orbit
#

My test save is so jacked up from debug commands

calm nebula
#

Lol

#

I used to grab saves from upload.farm

tawny ore
#

So.... peer pressure works on you?

lucid iron
#

my pressure resistance is silken tofu

calm nebula
#

A chue is very easy to nerdsnipe

tawny ore
#

If you nerdsnipe me, I will absolutely monkey paw your request

calm nebula
#

What does that even mean. I don't play the game

idle lantern
#

I feel like I'm losing my mind. I made an itemdelivery quest from marlon to marnie, and I want Marnie to reward the farmer with an item. I can't seem to get it to work. IT keeps putting the % command in the dialogue box

lucid iron
#

isnt it $

#

$action AddItem or something like that

tawny ore
tiny zealot
#

sorry, i'm hooting at the information technology department holding grudges and sabotaging your mod

calm nebula
tiny zealot
#

"i tried to set up a quest and IT is on the phone about it. they want me to stop"

calm nebula
#

But how can you monkey paw me when I don't play the game

#

What could you possibly do

#

Chew up my sock?

tawny ore
#

Wish granted, I will credit you with the mod and direct all users to your DMs for support

idle lantern
#

Wait, looking at my code I transititioned to trying to just get it to deliver through the mail after an event was seen.

lucid iron
#

then u gotta add the mail somehow

crude plank
lucid iron
#

Data/TriggerActions usually

calm nebula
#

I've already threatened to delete my steam account

idle lantern
#

How do I link json code again without spamming the entire thing ?

calm nebula
#

!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.

lucid iron
#

god i wish i had like

idle lantern
#

love you

lucid iron
#

a clone who would check which vanilla tile props work and dont work via this

calm nebula
#

Is this mail framework mod

idle lantern
#

I do have that installed. I made a separate mail.json and manifest. I can get the letter to work without the event seen addendum

#

I feel very stupid

#

I used the template within the mod file

lucid iron
#

if its an ordinary give 1 item mail, you don't need MFM

idle lantern
#

ooh. ok. Let me look through the modding wiki again. I couldn't get the letter to show up at all when I had it attached to the base json . ty

idle lantern
#

The problem is, I don't see anything on the mail data page where it triggers a letter after an event was seen

#

but that's my inexperience more than anything

lucid iron
#

ah for that u can use this

#

lots of vanilla mail are sent this way

#

my rec is to write the mail and debug action AddMail Current <MailId> to test it

#

once thats good do everything else

twin wadi
#

i'm really terrible at building art, but i want to try something that i can't just rely on using vanilla buildings as base. are there any tips on that?

idle lantern
#

thank you ๐Ÿ˜„

lucid iron
idle lantern
#

Creative Common s 0 sprite buildings?

lucid iron
#

here's a tutorial for the "get muh art into the game" https://stardewmodding.wiki.gg/wiki/Tutorial:_Adding_a_New_Farm_Building

Stardew Modding Wiki

Stardew Valley 1.6 revamped how buildings work and now you can add a new building with just Content Patcher. There are also new ways to add textures/skins to existing buildings that have advantages over previous methods. This guide will walk through how to use these features, starting from "put my new building in the game please". If your goal i...

twin wadi
lucid iron
#

helps if you have some kind of concept of what the building should do

twin wadi
#

thank you โค๏ธ

fierce vault
#

Can I easily debug roommate dialogue? I decided to take some pictures of Krobus showcasing his different emotions through dialogue, and I have a few, but now I feel like I need a complete set, in the order of the spritesheet's portraits that I'm showcasing in my mod ๐Ÿ˜… The problem is his dialogue is random after he lives at the farm. Do I even need to do it for consistency's sake, or am I getting carried away...

vernal crest
fierce vault
#

Do I find the keys to debug in content unpacked, or is it random still?

vernal crest
fierce vault
#

Ok, thanks

fierce vault
tiny zealot
vernal crest
fierce vault
#

Ohhh

sour sleet
#

Is there a guide (not the wiki) on creating a festival? I'm a bit confused

fierce vault
#

Thanks ๐Ÿ˜…

lucid iron
#

festivals r somewhat hardcoded, what is the type you want

sour sleet
#

I wanted a passive festival added to my custom location

lucid iron
#

u need a festival map edits and schedules for each npc

sour sleet
#

What if I wanted it to not be passive?

uncut viper
#

then you're in C# territory SDVpufferthumbsup

#

assuming you want any kind of custom functionality

#

with CP, at best you could place people on a map and give em dialogue

#

like an event

sour sleet
#

Ahh ok, thanks for saving me lots of time haha

uncut viper
#

but you cant do like, festival currency or minigames or a lewis custom whatever

#

(to be clear if you dont want any custom functionality and just want a time-locked map with people and tile actions to interact with, its perfectly doable)

fierce vault
#

Just to be sure, the current version on the mod page is for Stardew's ver. number right?

tiny zealot
#

the version number on your mod's page is the version number of the mod, not stardew

fierce vault
#

Ok, that's why I needed to be sure ๐Ÿ˜… Thanks

calm nebula
#

No, you're only allowed to update your mod when stardew updates

#

Them the rules

peak isle
#

holy hell I just recorded a 4 minute video on how to properly use the SMAPI commands for a mod im working on and it took me FIVE HOURS and I still sound terrible on it ๐Ÿ˜ญ oh my God

#

I could never be a YouTuber

tacit sparrow
peak isle
#

it's funny that I talk on voice chat and even do public speaking sometimes, not a problem. but recording for a YouTube video? indiscernable from being held at gun point mentally I guess lmaoo

tacit sparrow
#

Yeah I do the same to make sure it sound go review multiple times . Some folks are just natural at it, single take done

#

I'm surprise you did one take that's great, usually I have to piece multiple sections to get a minute video for my modded demos.

peak isle
#

yeah well I mean it technically took 3 takes but the first 2 were just me flubbing in the first couple seconds. idk how I chilled myself out enough to get the ball rolling like that but then needed huge breaks between each "scene" after haha

calm nebula
#

Why do you need a video?

fierce vault
#

Hey, which image site do you guys like to use so that you can add images in the nexus description? Should I just go with flickr or imgur?

tiny zealot
#

i think a lot of mod authors use imgur. i prefer not to use images in my mod descriptions, since 1. the images have to be hosted elsewhere, so they are brittle and require a separate maintenance silo, and 2. nexus does not support alt text on said images, which is a moderate-to-major accessibility problem

fierce vault
#

Is there no way to imbed them in the nexus page then? I just wanted to use some stardew banners for basics headers to make it look a little prettier

twin wadi
#

i want to make a custom map which is kind of like an extension of the town, with 4ish houses there. how do i figure out the tile dimensions to start out with? i know i can resize it, but just wondering how to estimate so i can fill in stuff in the background before detailing

rigid oriole
half tangle
#

You can give descriptions to the images that you add to the images tab, the ones that appear (up to 5) across the top of the mod page, but that doesn't help with letting you embed them - I always just use text of various sizes and such in my descriptions

#

(well, I did use one video for one mod, an embedded youtube video, but again: hosted elsewhere)

fierce vault
#

Ok. Something really interesting i found is that I can copypaste the Stardew reddit sub's emojis from the user flair section, and load them on nexus just fine. I wonder if the image's hosting source remains the same for that to work?

rigid oriole
#

Switch to the raw bbcode and see

#

Its probably copying the image source from reddit

fierce vault
rigid oriole
#

I only ever edit my descriptions using the bbcode editor because the wysiwyg editor hates everything

half tangle
fierce vault
#

Ok, thank you

fierce vault
#

I think I might have read somewhere that I may be able to upload description images directly to nexus, but I may have completely misunderstood

lucid iron
#

You can

#

Then u need to embed it with bbcode

peak isle
# calm nebula Why do you need a video?

not really "need" but I thought it would be helpful. especially since the mod would be a lot more useful to people if they didnt have to wait for my lazy butt to update the random JSON files and just do it themselves without even having to know what a JSON is. I admittedly didnt anticipate how long it'd take to record and didnt realize how long it had taken til I checked the clock after ๐Ÿ˜ญ

fierce vault
visual dirge
rough lintel
#

i commented on your bulk eating and drinking mod and u implemented the feature i requestedโ€ฆ i love u darkmushuโ€ฆ

tacit sparrow
#

Hi, and Yes I'm here, the suggestion you made was a great one

tacit sparrow
woeful lintel
#

oh, I see this was already mentioned

fierce vault
fierce vault
woeful lintel
#

github is also not the only option, there are other git hosts available

#

(I specify because GH is owned by MS)

fierce vault
#

Iโ€™m still a little intimidated by github tbh ๐Ÿ˜… But I really should be getting the hang of it for better version control and everything

hallow crescent
#

so just a quick question i guess..... how hard is it to create in a custom romanceable spouse....???

#

qualifications:

coded a robot in elementary school one time i think
made minecraft skins in 2014

tender bloom
#

!npc

ocean sailBOT
#
Creating a Custom NPC

Keep in mind that making NPCs is a complex process that requires learning many different aspects of Stardew modding.
Here are a few links that can help get you started on all that you need to know:

tender bloom
#

it's not hard, but it is a lot of work

hallow crescent
#

i figured, thank you!!

tender bloom
#

there will be a lot of time spent learning how things work + reading tutorials, most likely, since it sounds like you haven't made stardew mods before

#

the links above should get you started

hallow crescent
#

no not ever, but im good at learning to do things

idle lantern
#

After that, it's just time, practice, and probably some cursing.

hallow crescent
idle lantern
hallow crescent
#

right now im just hyperfixating so we will see if i actually do it

idle lantern
#

๐Ÿ™‚

vernal crest
#

If you are really fast you might make it before your hyperfixation runs out

rough lintel
#

took me 3 years to make mine ๐Ÿ’€ because i gave up for months in between

idle lantern
rough lintel
#

that creator is completely defunct

#

and not good to use anyways

#

better to do it manually

#

and learn the processes

vernal crest
#

Yeah, hard to troubleshoot if you don't know what your mod actually does. And there's always troubleshooting for an NPC.

hallow crescent
hallow crescent
idle lantern
#

I've been working on a cutscene mod for two weeks, and I feel like I'm both dumb as rocks, but also have learned a bunch. I was able to create an event for Jas without referencing the wiki for every line. I just couldn't remember the emote id numbers

rough lintel
fierce vault
idle lantern
#

I just puy 12 in for every emote now, and fix it later.

rough lintel
#

thats what i go to the event wiki for ๐Ÿ’€ emote numbers....

vernal crest
#

I reference the wiki constantly when making events. And I have written large chunks of the page lol

hallow crescent
#

the biggest problem is i have 2 cosplays to finish by aug... so i SHOULD be working on those and not a stardew npc...

rough lintel
#

also i forget how to quickquestion sometimes so i gotta stare at that real hard too

#

i was terrified of events, so of course i made the first one i write have eight forks in it!

#

after that nothing scared me. LMAO

idle lantern
#

That's not how ADHD works. Your hobbies choose you like a Harry Potter wand

rough lintel
fierce vault
rough lintel
#

parcy, when you get down to it, it'll seem scary. but event writing is just being extremely pedantic about everything

vernal crest
#

I have managed to keep coming back to making Hiria repeatedly, exerting strict control over the toddler brain.

lucid mulch
rough lintel
#

it does, sinz! it does

idle lantern
#

with the forks

rough lintel
#

omg. use visual studio code ๐Ÿคฃ

lucid mulch
#

I'm assuming google sheets in visualizing coordinates?

rough lintel
#

i alternate btwn notepad++ and vsc depending on how i feel that day

#

but google sheets would be great for grid mapping out events

#

esp bc i hate opening tiled and counting spaces ๐Ÿ˜ญ

idle lantern
#

I can do many hard things, but Visual Studio Code has proven to not be one of them.

rough lintel
#

visual studio code is an editor, though

lucid mulch
#

hmm with my debugger mod, I wonder if I could do hot reloading of event data and rewinding of event state

idle lantern
#

Me: Let's reinstall this and try agai-
Microsoft: No.

vernal crest
#

VSC is no harder than N++

fierce vault
rough lintel
#

visual studio, i understand because that thing is ass to install

#

but vsc is like. plop. onto the desktop

idle lantern
#

Maybe I was trying the wrong program

#

the one I tried ages ago wanted me to download additional coding languages

vernal crest
rough lintel
#

omg no that was visual studio bro

#

you need visual studio code specifically lol

fierce vault
#

Ohhh

rough lintel
idle lantern
#

The last time I ventured into coding with 2000 when middle school nerds lerned HTML for MySpace

hallow crescent
hallow crescent
#

but there was a whole webdesign class at mine

rough lintel
#

omg yall npc making is just like html, but more fun and less <div>!

fierce vault
#

That makes more sense ๐Ÿ˜… I guess I should have though of the fact that you are already a published mod author, and those mods might dabble in c#

vernal crest
idle lantern
#

I'll check it out ASAP

rough lintel
#

you can even download the content patcher json extension so it doesnt cry when you try commenting in your json SDVpufferclueless

vernal crest
rough lintel
#

forgot what that is called. not an extension, but like...

vernal crest
#

You mean switching the language to jsonc, Lani

idle lantern
#

I didn't realize that Lemurkat's Ranch Expansion mod had a goose, so I'm trying my hand at turning my goose into a fox or something. Raccoon. Angry orange cat, something that doesn't seem like an accidental rip off

rough lintel
#

yeah yeah that. but like a custom version of that

vernal crest
#

You can do that in N++ by switching the language to JSON5

vernal crest
rough lintel
#

YEAH

#

wait, maybe. that word sounds right. lmao

old edge
#

Anyone have knowledge of how to set up custom weather with c#?

idle lantern
#

I just had a mini heart attack. The word 'schema' jumped out at me before I read the comment. That's a word education loves throwing at teachers

rough lintel
vernal crest
#

Comes up in psychology too

rough lintel
#

although, idk if that's what you're looking for specifically

idle lantern
#

I'm stupidly pleased with the scene I just made for Marlon and Jas. It's very Uncle Buck coded. OR so I hope

turbid plover
#

surely theres like an extra skilll levels or extra skills mod?

brittle pasture
#

plenty

#

!vpp adds new professions

ocean sailBOT
#

Vanilla Plus Professions is a professions and talents mod by KediDili. It expands on the vanilla professions by adding new profession choices at levels 15 and 20 and adds a new talent tree for each skill where players can earn talent points to purchase perks that improve various gameplay aspects. It has been released on 25th of December.
It can be downloaded from Nexus: https://www.nexusmods.com/stardewvalley/mods/20054

brittle pasture
#

as for extra skills, stuff like Yet Another Cooking Skill, Archaeology Skill, Thieving/Scaring Skill, Binning Skill, Luck Skill, etc.

idle lantern
#

Archaeology <33

turbid plover
#

is there a mod that has like rarer items then purple star?

orchid glade
brittle pasture
#

(yeah I just realized we're in mmg SDVpuffersquee )

turbid plover
#

ty for the help

old edge
#

Trying to manipulate the hardcoded green rain logic but itโ€™s quite the predicament

#

Almost going to give up the idea

#

Keep getting infinite green rain instead lol it never ends

rigid musk
#

Green rain apocalypse

rancid musk
#

I had to do a bunch of harmony patches in Cloudy Skies for hard-coded weather stuff, including green rain.

#

You should really avoid touching green rain unless you absolutely need specifically that.

#

In C# you can process maps entirely your own way

twin wadi
#

sorry if it's off topic (not sure) but im trying to name a small village area above pelican town with four houses with backyards which one seems best and realistic? 1. cherry oak lane 2. willow lane 3. hilltop village 4. hill street

rigid oriole
#

it's worth noting that Willow lane is already a canonical SDV location

trim sand
#

not sure this is the right place to ask, but whats common practice for mod uploads with optional content tied to using other mods? should they be listed as requirements?

vernal crest
#

I think it depends on how much of your mod's content relies on the optional mod being present. If half your mod only exists with X mod installed, I'd definitely list that (and specify that it's optional). If one line of text changes depending on the presence of Y mod, I wouldn't list that one.

vernal crest
#

You can certainly list any smaller mod interactions in the description itself too, like in a Compatibility section

rancid musk
# proud wyvern That bad?

Well, I guess it's not terrible depending on what exactly you want to happen, but there's some hard coded stuff that makes it annoying to work with, particularly if you want it to happen in a location context other than Default

trim sand
# vernal crest I think it depends on how much of your mod's content relies on the optional mod ...

In this case it's mostly extras.
Like getting bonus forage fruit trees if Wildflour's Atelier is active since it adds fruit trees for some of its custom forage.
Or the map spawning forage from Alchemistry/Wildflours Atelier if their loaded in addition to its normal forage spawns.
I've already got everything listed I just wasn't sure if it should also be meantioned under requiring I know I've seen optional stuff listed that way was all

#

Farm map works without any other content. But adds a bunch of extras in Interaction with a few

rancid musk
#

You could definitely just call performGreenRainUpdate() and performDayAfterGreenRainUpdate() yourself, after manually setting the green rain flag on the location weather appropriately.

vernal crest
trim sand
#

fair enough.

#

at least its uploaded now.

inner harbor
#

Can confirm ppl always complain about how many dependecies i have.

trim sand
#

I love finding a bug within 10 minutes of making a release....

rigid oriole
#

increment that patch version ๐Ÿ˜ญ

#

it happens

trim sand
#

In this case since it was a very simple change plus been released publicly under 10 minutes, and something I thought I did already, I just silently updated the file 1.0.0 version with the fix.

#

Also learned something funny from this.
Seems that Sheep and I assume by extension goats, still work properly if their "forced" into an under upgraded version of their housing building

#

Just something super cozy about this farm map with a starting sheep. Even if it's probably not super balanced.

vernal crest
#

You only need to have the upgraded building to unlock them for purchase. They can all live in whatever level building you want. At least that's my experience when playing.

trim sand
#

Neat.

trim sand
#

Love how the first comment custom map gets is "do you have a screenshot of the entire map?" As if I wouldn't have posted it alongside the rest if I did. I'm not even sure what their expecting since you can't zoom out any further than I was for the screenshots I did take

proven spindle
#

You can screenshot the entire map at the bottom of the settings menu, there's a screenshot button there :)

vernal crest
#

The screenshot function in game takes the whole map

trim sand
#

..
The what?

vernal crest
#

It's just above the mod options button if you have GMCM installed

trim sand
#

Add that to the list of things I need to get added. fug

proven spindle
#

Even if you don't have GMCM, the screenshot button will still be there, it's a vanilla feature

trim sand
#

Honestly this is the first I'm hearing of a vanilla screenshot feature

proven spindle
#

The camera icon

trim sand
#

huh.

#

neat. still feel like a giant idiot

proven spindle
#

Just one of today's lucky ten thousand SDVpufferparty

vernal crest
#

Yes sorry I didn't mean to imply that it was only present because of GMCM, just that most people have GMCM and therefore know where to look for the mod options button.

#

Thank you for correcting the incorrect impression I gave, Si SDVpufferheart

trim sand
#

well. at least its dealt with now. is still really the sorta thing i shouldn't have needed told

woeful lintel
#

huh?! is that the map that was started from the vanilla forest map the other day?! you cooked so hard on this!

trim sand
#

yep. ^^

woeful lintel
#

I would definitely give it a try if I was planning on starting a new save

trim sand
#

canopy foilage tiles are still my greatest enemy.

inner harbor
rigid oriole
#

Have you ever said "wow, I wish I could make the Mushroom Log output *INSERT ITEM NAME HERE*"? Well then I have great news! Introducing "Mushroom Log Framework": a simple mod that lets you edit the hardcoded outputs for the Mushroom Log (or similar machines) to include modded mushrooms or other items.

For players: includes an example file under the "optional files" tab that adds the mushrooms from Cornucopia to the mushroom log so you can harvest more delicious shiitakes

https://www.nexusmods.com/stardewvalley/mods/34328

Nexus Mods :: Stardew Valley

Mushroom Log Framework allows content pack authors to edit the hardcoded outputs for the Mushroom Log to include modded mushrooms or other items.

drowsy pewter
#

mayonnaise log

rigid oriole
#

Somehow worse than the furnace log in the screenshot

trim sand
#

at least its not Carp Wine or Truffle Juice.

rigid oriole
#

Crab juice

trim sand
#

nah thats pretty normal all things considered.

woeful lintel
#

"too realistic Furniture" mod with a washing machine because you need to clean your bedsheets once a week to be able to use your bed at all

drowsy pewter
#

I expect this on my desk by tomorrow

woeful lintel
#

don't tempt me, I'm already on the verge of giving up studying for the tests I have tomorrow

hoary lake
#

chocolate log

hoary lake
frosty hull
#

Hello, i'm try to make mod c# code but it's missing some dll
so my question is: how to set export & copy dll on smapi build process ?
currently my project it have nuget package MessagePack
and but i dont know how to set nuget export dll when i build mod

hard fern
#

Mayonnaise log....

iron ridge
tiny zealot
idle lantern
idle lantern
#

I have these events done for Marnie and Marlon:

Current Events:
1 Star - Marlon - Town
2 Star - Marlon - Forest
4 Star - Marlon - Adventurer's Guild, w/ follow-up quest

2 Star - Marnie - Animal Shop
4 Star - Marnie - Forest

Is it irresponsible to jump straight to the 10 heart event because it's itching my brain? I don't want to post it before the other events, because the lack of context though

lucid iron
#

Wdym post before other events

tiny zealot
#

write whatever part of your mod is trying to escape

#

that's your muse talking. listen to her

vernal crest
#

I've written the 2 heart and 8 heart events for Hiria.

iron ridge
buoyant nexus
#

Okay hi I donโ€™t know if Iโ€™m in the right place here but Iโ€™ve been looking around for guides and Iโ€™m real confused. I wanna make a custom portrait mod but I know NOTHING about coding or the way modding stardew works or how to share that completed mod with others on nexus

#

And I really need helpโ€ฆ

vernal crest
#

!startmodding

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.

vernal crest
buoyant nexus
#

Thank you!

vernal crest
#

And you're very welcome to come back and ask questions if you get lost or anything :)

buoyant nexus
#

So to change portraits, I need to use content patcher to load my own assets instead of the original assets?

tiny zealot
#

yep, that's the standard approach

lucid iron
#

Are you making a seasonal outfits mod or just simple portrait replacement

tiny zealot
#

you tell content patcher "when the game asks for Abigail's portrait, use this image instead of the default one" (for example)

buoyant nexus
#

Donโ€™t wanna get too ahead of myself

lucid iron
#

Is it HD portrait

buoyant nexus
#

Nope pixel art

lucid iron
#

Yep then just do regular ol content patcher things

#

!unpack

ocean sailBOT
#

Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!

buoyant nexus
#

So I suppose the image needs to be a specific size..?

lucid iron
#

Yeah make them same layout as the asset you are replacing

vernal crest
#

Each individual portrait needs to be 64x64px and they should be arranged on the image in the same order as the vanilla one.

final patio
#

What are the best mods to have installed

lucid iron
#

!gameplayquestion

ocean sailBOT
#

Hi! This is a support channel for issues such as game errors, missing saves, games not launching, and so on. Your question seems to be more gameplay focused, and as such would be better suited for:

vernal crest
final patio
#

My fault

buoyant nexus
#

So this asset for Abigailโ€™s portraits, the images are 64x64 pixels. Is there a gap/empty space between each portrait or are the portraits flush with eachother and thereโ€™s just a transparent background within the portrait i]itself

#

Does that make sense

vernal crest
#

There's no gap

#

But like Chu said you'll be best served by unpacking the game contents and using Abby's vanilla image as a template for yours directly.

buoyant nexus
#

Okay thanks!

#

Iโ€™ll see if I can figure it out from there ^^

vernal crest
#

Good luck!

idle lantern
#

Has anyone seen, or heard, about a visual photo album being made? An interactable item that shows images instead of text entries like the books? If it was a 'custom npc', maybe? Not sure if character dialogue can be an image though

calm nebula
#

See meep

idle lantern
#

you're the best

jolly grove
#

This makes a lot more sense for how they do the mine carts, thank you!

drowsy pewter
#

casey has it on the list to take a look at some of the current issues wth the spacecore guidebooks for this purpose but I'm not sure when it would be done

#

decidedlyhuman did chat with me about potentially letting the meep function be used with items but since spacecore's guidebooks nominally worked for me we didn't revisit that idea

lucid iron
#

What do u need to do exactly nolb

drowsy pewter
#

I think if you make it a furniture item you can also use the map tile trigger action to interact wth the furniture item

#

so a furniture item with a photoalbum on top of a table might work

lucid iron
#

Show just an ordinary image or a more elaborate menu

drowsy pewter
#

are you talking to me or them?

lucid iron
#

Was wondering about your usecase yea

idle lantern
idle lantern
calm nebula
#

Three cakes!

drowsy pewter
#

I just need an image (a custom drawn "recipe book" page) and a couple sentences. Spacecore's guidebooks is more feature rich since it lets me embed item tooltips as well (I have to list a series of unlocked dishes on a page for a player to see. Having the tooltips with names and descriptions in the page really helps.)

But since spacecore guidebooks are designed for actual guides it's not really formatted to have a single static image on each page. Theres some minor issues with padding and scrolling currently

lucid iron
#

Well it is book like yes

drowsy pewter
#

For example heres a placeholder page. You can just scroll that image right off the page haha. Also text padding doesnt work so I had to put the text in a hover tooltip rather than have translateable text directly on the page

lucid iron
#

I was wondering if u could do something dum last instantly show a mail

#

Omg burger

tiny zealot
#

i also made a bespoke map property thing to show an image instead of (in addition to) a text caption. i use it for exactly one thing and i don't use the caption, lol

lucid iron
#

While I doubt I'll get it out in time for your mod i did want to make a thing to do menus from content

drowsy pewter
#

who knows when this mod will come out i'm the only one working on it SDVpuffersweats

crude plank
#

i was only seeing this face

lucid iron
#

Collecting scope creep over here

idle lantern
#

that placeholder image makes me happy

drowsy pewter
#

If I only had one book I'd make it use MEEP with the furniture map tile idea, but I have twelve of them and i dont really think people want to make space for twelve identical books for no reason

lucid iron
#

But yeah the mod would be a stardewui content menu library of sorts

drowsy pewter
#

But this part is awesome

lucid iron
#

Swirly

#

Slight jank aside the guidebooks thing does fit i feel

drowsy pewter
#

yeah

#

so I've just been seeing if casey does want to work on those things i mentioned. Either way if I make the art I can always use it with MEEP or whatever custom C# I kidnap someone to make for me

#

so it doesnt matter if its not spacecore in the end

#

sigh I wish I had a modding partner rn though

lucid iron
#

Well i do actually have a stupid suggestion if meep which is like

#

mmap question dialogue + meep closeups

#

I have no idea what 12 choices + 1 cancel look like tho (my guess is bad)

drowsy pewter
#

i dont know what that means but it has to be 12 different interactable items

lucid iron
#

mmap has a feature where you can make a multi choice dialogue

#

Think robin carpenter shop or mine cart choices, that ui

#

They pass forward into tile/touch/trigger actions

drowsy pewter
#

I see

#

as long as it can hook into the spacecore item-used trigger actions i can do anything

lucid iron
#

I suspect you will have to paginate it manually tho, which would suck a little

#

Yeah it's also available as a trigger action

idle lantern
#

I need a victim willing to read an event script and tell me if Lewis is being a big enough jerkhole.

woeful lintel
idle lantern
#

I give my Masters capstone next week, and I haven't even made the required slideshow. I believe in you. Procrastination is a super power

lucid iron
#

The power to fire many tile/touch/trigger from any one of tile/touch/trigger is a secondary feature of this monS

woeful lintel
#

procrastination is gonna make me fire a hundred tile/touch/trigger

idle lantern
#

lol

woeful lintel
#

good to know

lucid iron
#

Perhaps i should add an auto pagination feature here to make it less annoying to use

woeful lintel
#

I'm probably going to disappear from here next week btw. I'll still reply to pings but I don't think I'll take time to lurk.

#

Too many games to play

sand timber
#

I could use some advice. Iโ€™ve been working on a localization project and translated about one-third of the content.But when it came time to upload, the person with upload permissions didnโ€™t listen to feedback. My part hasnโ€™t been proofread at all, and I raised concerns, but they insisted on pushing the release anyway.;;

lucid iron
#

That sounds like a difficult situation

#

I would like more context though

brittle pasture
#

(okay maybe not Clint yet)

lucid iron
#

I thought betas has that

brittle pasture
#

but two dependencies

#

yeah it does

lucid iron
#

But hm i never liked the npc proximity thing it's so jank

#

Would recommend just using TIME and perhaps day of week

#

There is a GSQ field for this at least

brittle pasture
#

yeah, TIME is good enough tbh
ambushing Robin at 9:30 before she leaves for aerobics is fun tho

sand timber
# lucid iron I would like more context though

Today, when the project was nearly done, I was still proofreading my part, but they told me to go translate an unfinished section instead. After I finished that, they said not to make any more edits โ€” even though the file hasnโ€™t been uploaded yet and theyโ€™re still fixing bugs.

lucid iron
#

The vanilla OpenShop rectangle being absolute coords is kind of suck now that i think about it

#

I replicated it 1:1 for livestock bazaar...

brittle pasture
#

(I did it 1:1 for carpenters too)

lucid iron
light bramble
#

So I'm finally circling back to this. And yeah, since I changed the farm name, I kinda forgot to change it in the content.json for the FTM part...Wow I feel dumb.

ornate moon
#

hi, i want to make a new texture for animals like cows or pigs. may i ask what changes i should put first to add the variant but keep the vanilla textures of the animal as well. this is my wip file which is mostly copied from the original cow files, i just don't know what to add at the start

brittle pasture
#

you TargetField Brown Cow > Skins and add entries to it

#

it will work with AT too

ornate moon
#

i'm not trying to make a separate animal, just a randomized/selectable variant which doesn't remove the vanilla brown and white cows altogether

ornate moon
brittle pasture
#

yea

#

My instructions are for CP actually

brittle pasture
ornate moon
lucid iron
#

!json I recommend posting with this

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 moon
brittle pasture
rancid musk
#

Also, send us the URL when you use the smapi.io/json website don't just post a screenshot of a message it tells you, please.

ornate moon
#

oh okay i am very sorry, i am very new huhu

rancid musk
#

But in this case it seems you don't have a { at the start of your file?

ornate moon
#

i'll try to put it!

brittle pasture
ornate moon
#

i'll check it out! sorry my cat played with me so i wasn't able to finish it

humble pumice
#

hi! i made a hairstyle mod for uni and I need 2 more playtesters. is anyone keen? u need to download and install smapi and fashion sense and answer 5 questions in a google doc, but im happy to hop in a call and ask you the questions while u play

humble pumice
ornate moon
#

no problem!

valid folio
#

I'm helping a friend maintain her mod because she's very busy. With Pathoschild's help, I added support for the Central Station mod, and now I want to remove Bus Location as a required dependency to install the mod. How can I do that? What information do you need to help me? I'll have to send all these modifications to her afterward.

rigid oriole
#

You'll have to:
(1) remove any mod code that relies on Bus Locations (not familiar with bus locations, but I'm sure someone here is)
(2) remove bus locations as a dependency in the manifest.json
(3) remove bus locations from the requirements tab on nexus mods if you publish on nexus (not required for the mod to work, but that way you don't confuse users)

valid folio
# rigid oriole You'll have to: (1) remove any mod code that relies on Bus Locations (not famili...
  1. I assumed correctly.
  2. I assumed correctly,
  3. She'll take care of that.

Regarding point 1, I think I forgot to remove some code, and the mod also has a folder specifically for Bus Location.
As for point 2, I set it to "false" instead of "true" thinking that would be enough, but I was clearly wrong, so I'll remove it completely from the manifest.json.

Do you want a screenshot of the file structure?

rigid oriole
#

Ah, yes you want to remove the entry completely from the manifest. Setting required to false means that it's an optional dependecy. Removing means it's not a dependency at all

#

You can post a SS of the file structure if you'd like so other people more familiar with bus locations can help

lucid iron
#

Tbh just do all this and then try if u can still go by bus

tiny zealot
#

in this case, an optional dependency would not be strictly harmful (the mod will load and work without it), but it's also not helpful so definitely remove it completely

valid folio
#

I'll be back in 15 minutes, it's lunchtime.

tiny zealot
#

that doesn't sound right. enjoy your lunch

valid folio
valid folio
tiny zealot
#

yep, that's me!

orchid glade
#

So, prompted by that whole TMXL update fiasco, I'm trying out the TMXLtoCP converter (because I'm obsessed with not missing out on a mod just 'cause it's old), but the converter has completely stumped me and I don't know if it's because I suck or it does.

#

Is this still even a thing or...?

lucid iron
#

Yeah it should work

#

You can ask @ p.llow if you need help

#

Although i feel like there a gui version somewhere too

fading walrus
#

there is indeed a gui version

valid folio
# tiny zealot yep, that's me!

I loved your mod! When I first discovered it, I noticed that the Spanish translation was incomplete, so I started redoing it โ€” but then the original translator finished it, so I stopped working on it hahaha. Still, I might pick it up again at some point, since Latin American Spanish is a bit different in expression compared to Spain's Spanish, kind of like British and American English.

orchid glade
#

Oh?

fading walrus
#

Have at ye, bezajel

orchid glade
#

Sad, Windows only

fading walrus
#

ah

orchid glade
#

that /may/ be the problem I'm having with the python version

tiny zealot
orchid glade
#

but it's unclear. I've installed python, but I have no experience using it so I'm not sure if I'm just doing it wrong or what

iron ridge
#

python version should be multiplatform

orchid glade
#

Yeah hmm

iron ridge
#

I don't know why it wouldn't work

#

what does it log

#

and what's the mod

tiny zealot
orchid glade
#

Well, first maybe I'm having trouble with the instructions. It says to put the mod in TMXL/, but there is no TMXL folder - and I'm not sure where it is meant to be (at my root directory? in the TMXL2CP folder? in my Stardew root folder?)

iron ridge
#

in the converter folder yes

#

iirc if you run it once itll make it and wait for you to continue

valid folio
iron ridge
#

you can also just make the folder

orchid glade
#

So I had a look in the main.py and it said it would create it for me, so I ran it... (I think?) but that also didn't work (yes I also tried making the folder which didn't help)

iron ridge
#

are you using the release or git cloning

#

because the release, I doubt would work

orchid glade
#

I don't know what git cloning is

#

I downloaded the latest release

iron ridge
#

git clone https://github.com/anotherpillow/tmxl2cp.git

orchid glade
#

(which to be fair is what it says to do in the readme)

iron ridge
#

I know

orchid glade
#

Ok, this is a different version?

#

And do I still need to do the git clone? (which I guess I would run in terminal?)

iron ridge
#

yes and no if youre just downloading the zip

tiny zealot
orchid glade
#

Alright, so I've put the path for stardew in the config file, I assume I can just run that again - the python I got has a launcher...

iron ridge
#

wdym "has a launcher"

valid folio
orchid glade
#

These are what the python installer.. installed: and it said that the launcher deals with running python opened in the main file manager. But either way I guess that doesn't do what I think it does. So far it's going the same way it did first time

iron ridge
#

just run python from the terminal as the README mentions

orchid glade
#

When I run, it opens IDLE, plus the main.py as, like, text.

iron ridge
#

what command

orchid glade
#

Ok i did try that too but it had an error, I'll see what this version does

iron ridge
#

what error

orchid glade
#

py command wasn't recognised, python3 seemed to be, and the error was that... sorry I'll have to recreate

iron ridge
orchid glade
#

no module named 'tmxpy'

#

was the error

#

Full error (hopefully it will let me edit my deets before sending): bezajel@Mac ~ % python3 Downloads/TMXL2CP-0/Main.py Traceback (most recent call last): File "/Users/bezajel/Downloads/TMXL2CP-0/Main.py", line 2, in <module> import src.tiled as tiled File "/Users/bezajel/Downloads/TMXL2CP-0/src/tiled.py", line 2, in <module> from tmxpy import tmxpy, XMLtoCSV ModuleNotFoundError: No module named 'tmxpy'

iron ridge
#

If there is an error automatically installing dependencies, you can install them manually via pip install -r requirements.txt. You may need to use py -m pip instead of pip depending on your Python installation.

#

^ you'd probably be python3 -m pip

orchid glade
#

Ok that works with the python3 -m pip, BUT, new error

#

It says it can't find config.json, but it might be because I'm not all the way in the TMXL2CP directory in terminal

iron ridge
#

yeah you'd need to be in it

orchid glade
#

crapit I can't remember how to navigate in terminal

#

oh right cd

#

(sorry, it's a loooong time since I've been familiar with command line, like, 30 years since I was a teen using MS-DOS long time)

#
Downloading ToasterMapCLI...
Downloaded and saved ToasterMapCLI...
Traceback (most recent call last):
  File "/Users/bezajel/Downloads/TMXL2CP-main/Main.py", line 59, in <module>
    shutil.copyfile(os.path.join(config['game_folder'], 'xTile.dll'), 'bin/xTile.dll')
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Library/Frameworks/Python.framework/Versions/3.13/lib/python3.13/shutil.py", line 260, in copyfile
    with open(src, 'rb') as fsrc:
         ~~~~^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: "'/Users/bezajel/Library/Application Support/Steam/steamapps/common/Stardew Valley/Contents/MacOS'/xTile.dll"```
#

I'll search for that and see if I got the path wrong

iron ridge
#

oh

#

hmm

#

that should exist

orchid glade
#

yeah nah I don't have that, it that because it's not the version that doesn't need Tiled?

#

Oh but look that that path

#

I think it stuck a ' in there when I pasted

iron ridge
#

oh

#

remove those, probably the issue

errant pasture
orchid glade
#

dont know why finder couldn't find the file though

errant pasture
orchid glade
#

OMG that seemed to work. (and the .dll came up in search results only when I ran the python again so.. shrug)

#

Thankyou Pillow for being so patient, that was probably as frustrating for you as it was for me.

iron ridge
#

great that it works

orchid glade
#

You wouldn't happen to know if I need to keep the other files (pngs) in with the .tmx files in the assets folder, would you?

#

These are maps used as CG in events, and each tmx has a corresponding .png (and also .tsx)? would they be like the tilesheets

crude plank
orchid glade
#

Oh what manner of warnings

crude plank
#

let me grab a log

orchid glade
#

It was a somewhat crude update in aide of the translation

ocean sailBOT
#

Log Info: SMAPI 4.2.2-unofficial-sinz-2+3-v2 with SDV 1.6.15 build 24356 on Microsoft Windows 10 Pro, with 274 C# mods and 781 content packs.

crude plank
#

here you go, it appears to be just some wrong formatting of some fields/values

orchid glade
#

Uh oh gonna be a big log

#

Ooh okay

iron ridge
crude plank
#

i already searched them for you don't worry lol

orchid glade
#

Ok, hmm. I don't fully understand how to read that but I'll start by reviewing what I have against the wiki and unpacked content. Thanks!

crude plank
#

only movie reactions are affected so not a big deal, but i thought you'd want to know

orchid glade
#

Ahh it's just the code that's supposed to make her reject all movie tickets, pretty sure Limey gave that to me -.- (could be misremembering!)

gaunt orbit
#

does OneSecondUpdateTicked run for all screens or only one screen?

orchid glade
#

Does the movie reactions format require all the keys, even if null? I can't see what else is wrong

tiny zealot
latent mauve
#

When adding to a list of data models, you sometimes need to preface it with the key, even if the key is inside it. And the key in this case is the NPCName value.

#

(I'm looking at how RSV does it, and that's how they handled it)

orchid glade
#

Hmmm, so that's something that doesn't show on the unpacked file maybe because its too high level?

#

(and there was no example on the wiki), let me look at RSV to see if I get you

sleek flint
#

How do I allow my mod to act as a framework for content packs?

latent mauve
rough lintel
rough lintel
#

^ plop

latent mauve
#

Yeah, the wiki section for MovieReactions is kinda sparse, honestly

lucid iron
brittle pasture
#

hmm I looked into it as a joke but swapping clint out of the geode cracking menu seems very easy

lucid iron
#

Down with clintnopoly

uncut viper
# orchid glade Hmmm, so that's something that doesn't show on the unpacked file maybe because i...

to clarify this, how high level it is doesn't matter. Data/MovieReactions is a list of objects, not a dictionary of objects, so none of those reaction objects are supposed to have entry keys, as that's not how a list works in json/c#

however, when trying to edit a list, your Entries section is ALWAYS a dictionary regardless. you will ALWAYS need a key for your entry, even if you are not editing a dictionary. content patcher requires it, not the asset itself

#

(the same ofc goes for Fields)

#

it's just how CP works

latent mauve
#

Thanks for the explanation, Button! I knew we needed to add a key but wasn't sure of the mechanics behind why

brittle pasture
sleek flint
uncut viper
#

keep in mind that nowadays people are going to wonder and ask why you're using your own content packs and not a custom asset that CP can target

lucid iron
#

Thst doesn't really answer my inquiry (what does the framework mod do?)

uncut viper
#

unless that's what you mean you're doing

sleek flint
lucid iron
#

Oh yeah ik people would want that Bolb

#

So the flavor of framework mod you'd want to do is custom asset style

sleek flint
#

Bruh I am dumb I went to look at the framework's code only to find out it was in the wiki all this time just linked to, so it didn't appear in search ๐Ÿ˜ญ

lucid iron
#

The existing custom tv thing is using contentpackfor which means it doesn't get to use any content patcher features for free

sleek flint
#

So using foreach(IContentPack contentPack) is not recommended?

lucid iron
#

Other suggestions I'd have for such a framework is the usual GSQ and trigger action integration

lucid iron
#

The guide selph linked outlines how it's done but here is a simple example

sleek flint
#

Ok then I choose IContentPack method because it looked easier, but I think I just have to switch.

sleek flint
#

Thanks chu and selph

lucid iron
#

Basically you can have people editdata a specific target (mushymato.MMAP/QuestionDialogue in this example)

#

Then in C# side fetch this data and do whatever you want

#

No need to think about file system stuff cus content patcher does it for you

orchid glade
rigid oriole
#

There's so much you don't have to reimplement if you expose an asset people edit with content patcher. it's wonderful

tawny ore
#

Another suggestion (and this is just personal opinion), but depending on how complex your data model is, if you're adding features to something vanilla, many vanilla data models provide a CustomFields dictionary that you can integrate with. I like this because your tweaks are associated with the actual object you're adding features to.

brittle pasture
#

yeah it's mentioned in the tutorial

tawny ore
#

Ah, excellent

brittle pasture
#

definitely recommended because then the game handles pretty much everything else (loading/invalidation)

#

though this is a custom tv framework so a separate asset is probably required

uncut viper
#

(re: tv framework, ill be honest this is almost kinda one of the few times i think going the contentpack route wouldnt even be a bad idea bc of how easy and understandable itd be to make like. 1 folder = 1 channel and loop over all the images in that folder for the frames, instead of someone having to Load a ton of images
alas.. if it werent for that pesky "what if i wanna use tokens" stuff)

tawny ore
#

CP provides decent enough mechanisms for exposing a whole bunch of things in one command, so I don't think that's a huge deal

#

Could get annoying past a certain point though

golden basin
#

I've a mod concept I'm curious if it's possible and hard it'd be to code?

#

Just a mod that lets you adjust the color saturation of game as a whole

brittle pasture
#

isnt that nightshade

golden basin
#

Nightshade?

iron ridge
#

I think that is nightshade yeah

#

Mod. Search on nexus

brittle pasture
golden basin
#

Ooh I'll link that in modded farmers

white jewel
#

Question, I'm making a map in tiled and when i add a string type grass and test out the sound in game the grass sounds like stone? anyone know how to fix that

lucid iron
#

That sounds like it still has Type Stone

#

You can check what tile property it has with lookup anything (tile lookup enabled)

white jewel
#

yea i selected the grass section i used so i dont know why its doing that

#

ohh okay ill give that a try

humble pumice
#

helloo, just wanted to message again to see if theres anyone that would be happy to playtest my hairstyle mod. its for a uni assessment and it entails answering 5 questions in a google doc and installing fashion sense, smapi and my mod and playing it

#

1 just need one more person:)

lucid iron
#

You could perhaps just post it on nexus

humble pumice
lucid iron
humble pumice
#

ooh slay thats a good idea

lucid iron
#

Ideally include a picture to entice people

humble pumice
eternal marten
#

where is the day luck stored in the save?

humble pumice
sleek flint
#

I heard SMAPI makes it easier to use reflection to access game files. Is that true, and if yes, how do I use it?

lucid iron
#

If u post here I'll forward it for you

lucid iron
#

Just do Game1.content.Load

sleek flint
#

But some of them are private. Is there a better way to do it?

lucid iron
#

There's also the DataLoader helpers provided for this purpose

#

I think we may have a confusion of terms about what is game files

gaunt orbit
sleek flint
sleek flint
lucid iron
#

You can use regular ol reflection or smapi's reflection helpers

#

They r about the same i find

sleek flint
#

That is what I am talking about what is that smapi's reflection helpers?

gaunt orbit
#

If you're using harmony, FieldRefAccess is the easiest way to do it, otherwise you can use c#'s built-in reflection tools

sleek flint
gaunt orbit
#

The smapi reflection helpers IMO are not terribly useful

lucid iron
#

Also depends on what u r doing i guess

sleek flint
eternal marten
#

what is
<luckLevel>0</luckLevel> used for?.

lucid iron
#

Sometimes you may choose to transpiler the code setting the thing

uncut viper
#

SMAPI's reflection helpers cache things I believe

#

But you can always do that yourself too

#

comes with the downside of not being able to reflect into SMAPI itself with them though which is terrible for someone like me who loves to do that

gaunt orbit
#

Yeah, 99% of the time I need to access a field more than once and it's just more convenient to cache it myself

uncut viper
#

i suppose it could be nice to use the helpers as the getter for a property, that way you dont need your own backing field

brittle pasture
gaunt orbit
#

Also the syntax for FieldRefs is much less verbose and easier to read

uncut viper
#

then you can just call the property wherever and not worry about it

rare orbit
#

hey? any short cuts yall use in ya work? ex. when i was working on the mod im working on for my bf's birthday i did copy and paste a manifest from another mod to verify it's correct

gaunt orbit
#

I use khloe's manifest generator when I make c# mods

humble pumice
gaunt orbit
#

And copy the one from the wiki for cp mods

rare orbit
#

wait there's a manifest generator?

gaunt orbit
#

Khloe has a nuget package to auto-generate the manifest from csproj properties

#

It's very convenient

rare orbit
#

imma need a link to it please

#

it took me a good while to get the mod im working on currently to work correctly

rare orbit
#

and that was with assistance. which thank you for dat btw

lucid iron
#

It's very nice but I aint making csproj just to use this for cp mod tho

rigid oriole
#

I should really set up a default manifest file in my mod repo to get better use out of mod manifest builder

#

and a shared library sigh

gaunt orbit
#

Yeah when I make a cp mod I just copy from the wiki page for manifests

uncut viper
#

i just use a dotnet template

brittle pasture
#

I copy paste an existing project and then get reports on Aquaponics having the Fresh Farm Produce UI files

rigid oriole
#

intended feature, not a bug, report closed

gaunt orbit
#

One time I installed a mod that inexplicably had balatro screenshots in the assets folder lol

rigid oriole
#

Maybe its like the coconut image in that one games files

gaunt orbit
#

tf2

uncut viper
#

if theyre like me, they just use their same ol sharex/whatever screenshot button and everything goes into one folder and they accidentally copied two screenshots

idle lantern
#

I've validated my json, but I'm still getting an error in SMAPI. Not sure what to do

brittle pasture
#

well posting what you have so others can look is a good first step

idle lantern
#

Is it the friendship requirement?

uncut viper
#

when uploading jsons or logs (full logs please) please use the smapi.io uploaders

idle lantern
ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home, with 16 C# mods and 3 content packs.

uncut viper
#

well the red errors at the bottom tell you whats wrong, and the orange warnings are not SMAPI errors, theyre another mod hjaving errors

lucid iron
#

(why is it v1.5 already)

#

Event lookup might be warning about invalid schedules

#

If these are what you put

uncut viper
#

the warnings are about event parsing

lucid iron
#

Yeah my bad idk why i said schedule

idle lantern
#

I use 1.5 because I mislabelled the 0.1 version to 1.0 and was far too lazy to fix it

lucid iron
#

But your mod isn't released right

idle lantern
#

It is. I've been updating it on NexusMods, and made sure to mark it as WIP.

#

It's made switching between computers easier for me. When I've uploaded the zip to the google drives, it hasn't been downloading on my laptop correctly and I don't want to troubleshoot the issue

#

Well I'm a fool. I duplicated all of my events

brittle pasture
#

not related to your questions but we don't recommend releasing WIP mods if your goal is reach

#

Mods are only eligible for trending spots the first week it's released

eternal marten
brittle pasture
#

so ideally you want it to look as good as possible in that week

light bramble
#

Ok, so I've looked through the documentation on item extensions. and I swear I've followed it properly, but yet when I make my ore clumps none of them drop what I want them too. I have noticed that there is an open bug report with the current version of Item extensions that mentions this, but I just want to know if there is a fix I can do while waiting for the mod author to address the issue?

brittle pasture
#

1.15.0 breaks nodes currently

uncut viper
#

blame chu /lh

eternal marten
brittle pasture
#

check all of them just in case Iunno

gaunt orbit
#

Only Name_# and SaveGameInfo are important, the rest are backup files

eternal marten
#

so if delete them and keep the only important 2 files, and load the save the game may generate similar files?

#

I think I might go ahead and try that now ๐Ÿ‘

rough lintel
#

@ivory plume random q, but on the smapi.io/mods thing, if there's a bug with a mod that makes it just... straight not work, do you have to manually update the page or does it just. ??? do that itself? LOL

referring to Tree Overhaul - A Tapper's Dream, as it flips out about wildtrees in the console (the only crash it has) and the last compat was for 1.6.3

brittle pasture
rough lintel
#

the one crash makes the entire thing not work and i. Depress

#

okay! thanks selph

brittle pasture
#

* pathos does have a script to do it for new mods

rough lintel
#

didnt know that. sorry for the ping in .... not advance, pathos ๐Ÿ˜”

brittle pasture
#

(also for a moment I thought that was the crash I was kinda sorta responsible for causing)

rough lintel
#

i dont know. someone did it on a fresh save and it borks too, so i dont think its you

brittle pasture
#

(I meant the long running Automate breakage, which doesn't actually crash and just a mod incompat and I sound silly now nvm)

rough lintel
#

๐Ÿงโ€โ™‚๏ธ oh

#

wait

#

was that pull request about the tree tapper logic you

brittle pasture
#

for Automate? the one that says it will break Tapper Overhaul in the description? yes SDVpufferlurk

rough lintel
#

uhh the files edited were for forage fantasy so maybe not this one

brittle pasture
#

aah okay I got the two mixed up

rough lintel
#

all good :3

#

i dont know if i am going to attempt to update the mod incompatibility list because thats. scary

#

also i have no clue when it broke

#

1.6.9 i guess

brittle pasture
#

pathos can always fix it in post

rough lintel
#

like its been flipping out since february so im gonna guess its 1.6.9's faaaault?

#

because it was updated for 1.6.3, so

brittle pasture
#

though, hmm, I'm not sure if "mods that load but crashes" count as incompatible

rough lintel
#

well the entire thing doesnt work because of the crash

brittle pasture
#

does it straight up bork the game SDVpufferthink

rough lintel
#

no, you can play entirely normal, but the mod itself does not work or do any of the functions it is supposed to

#

so it acts like you just. didnt load the mod. i guess thats not an incompat

#

isnt that what the brokeIn field is for though

brittle pasture
#

hmm
(disclaimer: I'm not pathos) my impression is that it's for mods that straight up fail to load
NML is there

rough lintel
#

ah okay

#

what is nml