#making-mods-general
1 messages ยท Page 242 of 1
I think you need to have all of the optional arguments present before the desired one because the method uses argument position to determine which argument it is. Right now it's interpreting 43 as [from direction], 17 as [open time], 1 as [close time], and then finally 2 as the first of 4 numbers needed for [owner tile area].
I want to translate one, I just don't know VSCode that well so I don't know how to get it to work
Oh...
ok ive done everything i can think to do atm, if anyone can help id appreciate it
https://smapi.io/log/887af3d7d2884bcdb2b7c8ee4ce9dbd8
https://smapi.io/json/none/60ac1cfbb3464549ad137b415d28266d
Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Pro, with 8 C# mods and 3 content packs.
Well I will do that then
No it's not an SDV modding extension but it should work right? Like the default.json is just a json?
well you don't need it at all and it will actualy confuse you further
this extension looks like a thing made for javascript frameworks
I don't know how that plugin works and if it's confusing I don't see it making the work of translation any easier but there might be instructions on its github.
Do you have a folder called KandiKraze.KandisColorfulCauldrons.KandisColorfulCauldrons inside your mod folder?
no
it wont help with i18n for stardew at all its an entirely different translation system concept
json is builtin for vscode so the only thing you actually need is changing your language type to JSON with Comments
You're trying to tell the game that's where your files are located. Your FromFile is wrong in each entry.
ah
I don't think that's what I need, ie I'm already okay with using vscode for editing jsons
for cp specifically take a look at this
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/translations.md
this covers the usage of {{i18n:yourkey}}
What do you mean by that?
Is the mod you're translating already using i18n?
i mean i dont understand why you want i18n ally extension at all. it doesnt do anything for you for stardew modding
i do like this extension https://marketplace.visualstudio.com/items?itemName=linkoid.stardew-syntax it highlights cp tokens
I just learned how to download that for Vscodium last night
Because I wasn't switching to Vscodium if it meant giving up linkoid's plugin
Nobody makes me read single lined events!!!!

The mod already uses i18n, but I don't like the existing english translation. I am mainly looking for a tool to help translate rather than pasting each individual string into google translate (or whatever)
thats not at all what that extension does
Oh so you specifically want it for its machine translation?
not sure if there is anything like that for sdv i18n specifically 
i18n ally has a thing that can machine translate but its purpose is for allowing an actual application team or w/e to manage their own in house translations and translation progress and keep all their translations in their system with annotations and whatnot
Kinda yeah, and just to organise it all
Okay
WHat do people who do translations use?
themselves, mainly
It doesn't have to be this, I just thought it looked like the right thing, ie. it would ignore the code around the text to translate
people who do machine translations probably just use google translate or deepl or babelfish or whatever. but people who do actual translations just, speak the languages
and they just retype them
even though i know chinese i do actually put some ??? sentences into machine translate 
to get inspiration for wording
but since i gotta reprocess it as a human anyways theres no point in bulk translating from the start
It's not the translating part I guess that I'm asking about, more the, do they really just type it in etc.
If I were translating a non-English mod to English I would just remove the strings from the i18n file and put all of them into DeepL at the same time lol
Tbh so do i
When talking to my grandmother
And is there an easy way to just remove the strings
Yes, Excel
Or regex if you're fancy
I also use a spreadsheet to just split strings
Or find and replace right inside the i18n file
Does excel have json features for this kinda thing i had no idea
(or... numbers if I'm on a mac?) - I'm not so good with doing fancy stuff with numbers, it's a bit different to excel
google sheets has a formula that lets you also automatically translate them through google translate. You can split and use the translate formula--then resplice and put the whole thing back into i18n
No chu I meant text splitting to remove the stuff before the string lol
if you just wanna do an english translation for yourself you probably just want to google a vscode google translate extension. im sure theres probably dozens
THat sounds okay
I'm not 100% sure how to split strings but I can play around
Yeah i wasn't even aware that u can put a json into sheets
That's neat
It's just text
Well, that's what I thought I was getting sort of, BUT it get's back to my initial question, of how do you even use an extension in VSCode
ok everything but 3 pngs are loading now which is weird because i checked and they all have the same pathing just different names
and i checked and spelling appears correct
https://marketplace.visualstudio.com/items?itemName=funkyremi.vscode-google-translate
this just seems like it does what you want without the need for excel/sheets
you just install it
most oftne theyll have a hotkey or you can open VSC's command bar thingy and find it in there
I'll see if I can find it. Because I've opened the .json and it
s not immediately obvious to me!
i think i found it nvm i put a space in there
I made this for making furniture strings rather than translations but this is roughly what splitting a json dictionary could look like (it has gone a bit wonky because I made it in Excel and opened it in LibreOffice Calc for the first time just now).
They should have instructions on the extension page. The one that Button linked does, for example.
just spent 10 minutes trying to debug this shop to figure out why it wouldnt open, the npc was 1 tile off
Alright, I've got it working, I'll see how it goes.
Thanks!
@rigid oriole: try that thing irocendar said (3h ago)
I don't understand the item tooltip code at all
ok now im getting an error that it cant find the tilesheet due to it not being in the map file or the games content folder
Does anyone know where the sprites for the letters are? I feel like they get recoloured at some point or something. Couldnt find it in loosesprites or fonts
if you're asking about "blel" specifically, that font is synthetic and is created at draw time by rendering another font multiple times at small pixel offsets (if memory serves)
so Item.drawTooltip is entirely separate from IClickableMenu.drawTooltip, and is only called from IClickableMenu.drawHoverText. Which implies that it's a legacy method, except for the fact that Tool overrides this to display enchantments.
colors are set in code. I think at one point khloe made a mod that allowed you to change text colors? not sure
Can you show the exact error please? Descriptions of errors are occasionally useful, but more frequently they're not enough information.
oh but drawTooltip also calls drawHoverText? hm.
if it simplifies things at all, Menu.drawTooltip is used for every single item hover
Is it the same for inventory colouring?
Item.drawTooltip simply draws the unique text in that tooltip
this is different for tools, rings, etc. so naturally these have overloads
I finished my Arborist Catalogue mod, now Im realizing I should have accounted for daisyniko support etc
welp
does anyone have a link for the mod?
yes, I'm just trying to work out the logic of things like text spacing and line breaks
sure here it is
https://smapi.io/log/845f495d319749128a1f14d00235a947
Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Pro, with 8 C# mods and 3 content packs.
(sad cat diary) there is no logic in this place
thank youuu
I'm looking to postfix drawTooltip so I can add information to tooltips, but I'm not sure if that's viable. I'm still trying to work out how it integrates with the math in drawHoverText
text spacing and line breaks are pretty much just handled by y += whatever;
since it's a ref, it means the y value used in drawHoverText will account for anything you add in drawTooltip
so you can absolutely add extra height to the tooltips without it breaking, it's designed for this
I understood that
I think I was just thrown by MeasureString taking into accoutn text wrapping
No matter what, my shop keeps giving the "ClosedMessage", even when the NPC is in range. I just have the Action OpenShop set up without any optional stuff but the internal name in the Name area should work to check when the NPC is in range, right?
sometimes the game seems to manually do linebreaks and sometimes it lets monogame handle it and I can never tell when it uses what
The map is looking for a tilesheet with an image source of GoldenColorfulCauldrons.png but that tilesheet is in the game as {{ModID}}/GoldenColorfulCauldrons. So you need to edit your map so its image source matches the Target you loaded the tilesheet to (but type out the full mod ID rather than using the token). You can do that by opening the map with a text editor and changing the line with image source= in it.
anyways I think drawTooltip will mostly do what I need, but I may also need to patch the extra space measurement method so the panel also gets resized
Game1.parseText(string text, SpriteFont whichFont, int width) will insert line breaks to fit the given width. this is used pretty consistently, and manual line breaks are just used for separating paragraphs
Is your closedmessage in the NPC's entry in Owners or a "None" entry?
It is in the shop "Owners" area, I am using an i18n token for it
thanks, that is actually genuinely helpful
text stuff always gives me a headache
no worries, i've used them a lot in different ways so i'm fairly numb to text parsing hahah
not to be confused with TokenParser.ParseText()
I think I wasn't clear enough, sorry. Which Owner is your ClosedMessage field in? Is the Name field for the owner the name of the NPC or is it None?
It is the name of the NPC, sorry. I am doing this so it can only open the shop when they are in range.
you'll occasionally run into things like ```cs
Vector2 textSize = font.MeasureString(Game1.parseText(TokenParser.ParseText(text), font, width))
which will give you the pixel dimensions of some tokenised `text` after newlines for textwrapping are added to fit `width` when using `font`, and you'd then use `textSize.Y` to get the height of that paragraph when drawing something beneath it
I'm a bit confused about the theme manager mod. it doesn't have any themes built in, no links to find any, and allegedly you can define your own with content packs but doesnt explain how to, am I missing something?
Ah, then you are not doing it correctly. The ClosedMessage cannot be in the NPC owner entry or it will stop the shop from working. Can you try reading the wiki field for it again, please? And then tell me if it makes sense? I recently edited it and it seems that I wasn't clear enough.
Look in the Requirements tab on the mod page and it will show you mods that require Theme Manager.
Ohhhh I get it now, ty!
I have theme manager, that's what I'm trying to use to re-colour the text
Yes I know, I mean that if you look at the mods that require it, you can see how they are using it. Those are "links to find themes". But there is also a link to an example C# mod and an author guide. Sorry if you are already aware of that - if so, I must have misunderstood your message.
On the Nexus page for Theme Manager you can expand the Requirements block to view a few mods people have put out using Theme Manager if you want examples out in the wild.
okay I didnt expect requirements to show what mods required it
Yeah it's a bit unintuitive. Sorry that my message about it wasn't clearer.
That's the guide to make your own
aaah okay perfect, thanks
(if you're in C#, and you're overriding most of the game's looks anyways, you can just assign to )
In that case, would it be possible to have a MineSign show up as a seperate property when the NPC isn't in range/at the shop?
wow that was the most painful thing, but i got it to work ๐
now i can try and implement it into my map for my mod, ty ty !
couldnt have done it without yalls guidance :3
oh those look lovely!
pretty sure they are saved
but that's an assumption based on like many years old knowledge
yep, uniqueName is serialised
I don't know for sure but I see SaveMigrations stuff using it so I assume so
All done :D (for now)
congratualtions!
would you like one of us to put it in the showcase?
Sure! :D
e.g.
[XmlElement("uniqueName")]
public readonly NetString uniqueName = new NetString();
[XmlIgnore]
protected string _displayName;
[XmlElement("name")]
public readonly NetString name = new NetString();
name yes, uniquename yes, displayname no
that said, the uniquename is predictable for farm building interiors, at least```cs
indoorInstance.uniqueName.Value = indoors.Value.uniqueName.Value ?? (nameOfIndoorsWithoutUnique + (tileX.Value * 2000 + tileY.Value));
I would recommend adding your mod requirements to the nexus page so that people know to install CP and Calcifer
Woops meant to do that, ty
cellars and farmhouses, also.
where is this code to i see gameLocation.uniqueName.Value = nameOfIndoorsWithoutUnique + GuidHelper.NewGuid();
and i do get a big long guid yea
virtual void load in Building
that's odd
i suppose it just uses createIndoors then with a fresh guid
savemigrator also applies a fresh guid to any missing entries, so that's consistent
good enough 4 me 
i have no idea what any of these emojis mean or convey so that puts them on equal footing as 
which i should really just put on my keyboard to replace a full stop
Bump
does ๐ not mean relieved
Why do you want to use that instead of a ClosedMessage?
๐ what does that mean then
what emotion is Squee i need answers
Well I can't use a closed message if I am using the internal name and I can't figure out AnyOrNone
i have a clinical condition. the only thing i feel is demetriums
You just make a new owner entry underneath the NPC one, give it a name of "None", and then add ClosedMessage. That will show the closed message during open hours when the NPC is not present. Do you want an example of how that looks in the json?
Ohhhhhhhh, I am good I think I get it
https://en.wiktionary.org/wiki/squee
(though i just interpret a lot of emotes like that as "smiling/positive in some way")
what is ๐ then
Hello everyone, how are you? I am a Brazilian programming student who started trying to make mods for my favorite game, Stardew Valley. I'm still at the very beginning, and so far, I've only managed to create a map with some properties using Tiled.
If you could give me some tips on how to really start making mods using C#, I would be very grateful!
This would be a good place to start I think
https://stardewvalleywiki.com/Modding:Modder_Guide/Get_Started
Do you know any YouTuber who could help too?
I have heard that most of the current tutorials are outdated due to the 1.6 modpocalypse. Sorry!
youtube tutorials about just C# in general may be helpful though, but yeah, dont expect many (if any?) good video tutorials for stardew specific C# modding
keep in mind though you dont actually need to use C# at all for a lot of mods, but if you want to for your own fun and learning sake then you ofc can
When was the great ID spreadsheet made?
same (smiling/vaguely positive), though in my exp, some people use ones like that and ๐ ironically
It doesn't even have Ginger or the ginger island warp totem
thanks i will start reading the guide
Can Ginger island be used for the game state query LOCATION_ACCESSIBLE?
The wiki doesn't specify
and if it does, not very well
no
it does specify
use the mail flag for boat repaired
oh yeah, ty!
it tells you which locations it is relevant to
oh i was a bit confused by the bit after that
anyway
anyone know what (BC)221 item pedastal is
Hi all, is it possible to create a fruit tree that's a different size than usual? The one I'd like to make is slightly shorter and wider than a regular fruit tree
there is a framework for making trees that are taller
but not wider
idk if it does shorter
you can fit whatever in a 3x4 square, so you can make it have bigger trunks as long as it's not wider than 3 tiles
just drawing it shorter would fuck up the fruits being drawn though wouldnt it
ah yeah it would
if you want a tree thats like half a tile shorter thats not doable but a full tile shorter (or more) works with this
https://www.nexusmods.com/stardewvalley/mods/27123
I was actually trying to use that, but I was having a strange issue with the top half of the tree being visually disconnected from the stump, so I wondering if there was another way
there is not
there's a wip for custom bush that should make bigger bush
its not out
what if i just patch getRenderBounds...
assume tree size framework does that already tho
Unfortunate :( I'm not sure if it's a bug or I did something wrong, hopefully someone responds on the mod comments page
Is there a game state query if you have gotten a certain item before from artifact spots or donated a certain item to the museum?
you can ask @ endertedi about it, although i havent seem em lately
ah, I don't want to be a bother pinging people
i can work on other things in the meantime 
hm wait
could you just draw the sprite shorter?
the tree size framework thingy is about being larger
yes if you want the fruits to be drawn floating in the air go for it
the framework can make them smaller too
man, ever since I updated windows to 24h2 I've been getting this annoying thing where the shell will just freeze and crash randomly
the fruits are actually in a good spot right now, it's just the tree is off to the left for some reason (temporary sprites lol)
i have no input on this e xcept to say that the fruits are adorable
: )
although I did try putting the sprites on a regular/wild tree (oak trees) and they look fine hence why i'm not sure if it's me or a bug
do you have a negative or something where it shouldnt be
bc thats also made me realize the broken one is mirrored
temporary sprites... permanent sprites? 
can they now. nature is so beautiful
you've spent too long looking in the mirror
unfortunately ive never used or really looked at the framework so my help is limited aka like nothing here
no worries, i'll leave it for endertedi to look when they get back, or if someone else finds it and chimes in 
My shop won't open and I can't figure out why, my cursor doesn't even change for the action prompt.
JSON: https://smapi.io/json/content-patcher/f40bb817572648b1a28e9449fbd42288
(Lines 44-89 are relevant)
science has gone too far this time
What should we name them? Gamepl
that one is not my problem i think litd edits the string
hang around in making-mods-general enough and you'll realize that not everything needs to be your problem for people to assign the problem to you
Is that object on the tile between the table and the chest?
i
sdv-wingdings
Have you actually got a tile on the Buildings layer there? It's hard to see through the Paths tile but I can't see anything obvious.
sdv skater boi bane of my existence
I forgot you needed something on the buildings layer... I don't think so.
Thank you!
temp sprites my beloathed
they are convenient but using them feels like getting buried at the bottom of a ballpit
I thought Optimized SDV
is intended
absolutely not
"which of these 30000 parameters do I need to set to what values"
But how can u be more optimize than 2 skaterboi
Anyone know if there is a limit to the amount of answers you can put in for a dialogue question?
I may want over four in some senerios
I have tested up to 6
Well it doesn't page so yes don't go too high
Ok, thanks. If up to six works, I'm probably fine.
i've got about 4 years experience in C

cemetriums
Your mod indeed is crazy big when I look at it having 0 code knowledge
Baby's second mod is done and uploaded! Just a mini AT furniture pack, nothing big.
Figured I'd read through the channel and advertise it before getting ready for bed
https://www.nexusmods.com/stardewvalley/mods/32193?tab=description
Those look so fun though??
Thanks!! I had fun messing around and relearning how pixels work
I wish erinthe's wallpaper framework was still around, it would be really cool to be able to pair that with like, a panoramic view of the sky
I wonder how hard it would be to port
Aren't custom wallpapers just... native, now?
Custom wallpapers have been native since 1.5. What erinthe's mod does is allow wallpapers with patterns wider than one tile
Ah. I was unfamiliar.
Admittedly the name is pretty misleading
i think someone was trying
i think they had a working build but dunno what happened to that
i was experimenting with Background (at least stealing the one from summit) but this Background class has a lot of mysterious knobs
Oh?
i got this much to work just by subclassing
it just doesnt seem very customizable (the summitbg is a special knob separate from all this chunk things)
I've played with it before but out of the box it seemed too fiddly to be good for general use
otoh since u can just
subclass it and override draw/update to do whatever
then toss it into Game1.background
Oh hm, that is a good point
and the variant used for submarine (plain color) has general use prob
I didn't realize the sub had one tbh
i dont have clear idea on how the asset model would look like so i put it aside for now
this is so pretty 
as for a wallpaper/floor framework hmm
did DecorationFacade actually change that much nvm that is deprecated
In your content pack code, you can then use config options as tokens & conditions to make dynamic changes.
possible source of people calling content patcher code...
i think a lot of people just call anything that needs to be opened in something other than Notepad or Microsoft Word code
you can do pretty much anything with Background and ignore most of the properties, just remember to set to null when you're done
you can also use GameLocation.drawBackground as you like
Arguably cp json is declarative programming. It's not on the same level as c# programming, obviously, but it's also not the same as, like, fiddling with a config file
i would argue it
it needs to have GOTO then
but i dunno i think CP patches r closer to pieces of a very complex config file you are glue together
It does have localtokens and includes
CP jsons cant take an input and give an output though
that doesnt make it more complicated than html css which i also dont think of as programming
or a Tiled .tmx
Html is a declarative programming language
The fact that it's very simple and high level doesn't make it not programming
It describes the results you want to achieve without requiring you to specify the individual required steps, which is the definition of declarative programming
does that make even simpler forms of config like say an ini file also declarative then 
but html doesnt compute
im not sure where the line is, but i do concur that the implied "programming" line my brain draw is imperative programming
That's fair
C and friends
the reason why this is even notable to me is cus it's on content patcher docs (author-guide/config.md)
Ultimately, as with any terminology, it's a line in the sand. Real life is messy and things do not fit in clean boxes.
I mostly just want to combat the idea that only "real" programming matters
I see a lot of snobbishness in the broader context of programming and I feel like it's shutting people out of the field
neither chu nor i even used the word programming tho
yea, though to me the importance is less real/fake programming and more data/logic
when i am make framework i try to expose as many knobs as possible to data
and to be able to tell srry need C# 
i did use this word 
Are they not synonymous?
not in my brain. which is not to say my brain is law, just that they arent synonymous to me
i would separate code from data similarly to data vs logic like chu says
where code is logic
Huh, a case of crossed wires then. That's my bad
to me code is something that does something. its instructions that compute a thing. a json file wont compute anything
it do be hella data tho
Gonna move to off topic but there's actually something interesting I discovered recently that's related to the subject at hand
hello guys I am new to modding. I wanted to try a tutorial from youtube using visual studio code.
The website recommends .net framework 6 and I did installed it but for some reason my visual studio community does not show 6.0 even though I modified the installation from visual studio installer. I even modified the project by unloading it didnt help
exactly, I think the markup language vs programming language distinction is a useful one, personally. Though I get the side about how snobby people are about "you aren't a REAL programmer if you xyz" though
How can I get a Message tile property to open a page instead of using a text box? Like the one in lewiss bedroom
Was that letter action always a thing(like pre-1.6)?
Actually, I can just... check.
The answer is yes, that action did exist in 1.5. Put one in MEEP for no real reason, then. 
note that the message you use has to be in Strings\\StringsFromMaps
I put one in MEEP for some real reason, then!
I suppose that on top of the fact it allows custom letter backgrounds, but that's a seprate thing.
i cant just use i18n?!
well yes, you'd just be patching your i18n text into stringsfrommaps
and then using the key in that data for the tile property value
So like this?
in 1.6 you can change the background yourself, e.g.```json
"FishingDerbySign": "[textcolor black][letterbg LooseSprites\\troutDerbyLetterBG 0] text goes here
yep! but preferably {{ModId}}.GoneLetter
oh right, ty!
it's a little more performant to just do it in the Tiled map itself, but that means you can't use tokens or conditions
exactly why i do it in patches, so i can use tokens
also people have like nasa computers these days, losing 0.5 FPS isnt the end of the world
forget documentation of how to use things, the real documentation we need to start putting in code is why we do things 
Let's just... see if any mod has used the letter thing. If not, I'll just scrub it I think.
Oh, there's one in ES.
oh thats minor then, you can probably just go ahead and remove that in a patch version update then
You could ask Lemur to remove it for ESR
(/j)
my good deed for today
you could mention as well there's a DyePot action for emily's pots, and that both check whether you've seen event 992559 before they let you open the menu
it'd be good to note that 992559 is Emily's farmhouse visit after you've found some Cloth. no good deed goes unpunished, after all ๐
Right, I just put in the event ID. Should probably specify which event it is... ๐
you know i had the exact same thought just after i made my post 
i hate making small edits so close together
does anyone know if we have a telephone not attached to a background
in tilesheets
well more like toip of a table but yknow
the Telephone in TileSheets/Craftables has a second, phone-only ringing animation sprite frame you could use
i suppose it won't really look like it's ringing if it's not animating
it's just below the indoor plants halfway down the sheet
you would need ATA to do this though
depends if you want it for a map
true
it is for a map ๐
ATA isn't that hard to use
it's only a little extra work to copy it out of the sheet and make your own to include in your map, too. plus it means you can personalise it how you like
it's a slippery slope though since before you know it you'll just be making whole ass tilesheets with the stuff you want
where will it all end
makes tilesheet just called Kandis Kraze Phones /j
1 telephone, May as well make a table to fit it, This floor doesn't work, guess I will fix that, Bugger it time to do the whole map.
eventually you, too, will realise tiles are just one of life's many chains and shackles and draw the map as a single flat image
at this point you'll be mere steps from enlightenment
you sound like some king in a giant cathedral giving a warning to a knight getting too close to his secret or something
shoulda thought of the phone when midnight was asking about tiles dang, i feel like it would fit their misc tiles well XD
now excuse me while i go pick out music for this event
you should use night_market.
i might go through through the tilesheets later and make a list of all the items i notice that might be useful removed and make a "random stuff tiles"
honky_tonk
like theres that little vine of ivy in town interior thats attached to a wall
i will check it out
slams hand on desk
the wizards circle thing
ok forseeing the future i might need to make another tilesheet 
oh well
It is an event where a single dad is behind on his bills and is just getting by with child support and the farmer walks in, they try to hide it, yet the farmer finds this out
okay maybe don't use honky_tonk
see if you can't get honky_tonk to play quietly, almost unnoticeably, behind whatever track you end up going with
I am NOT using honky_tonk lol
with one of my unreleased mods you can make honky tonk sound like it's playing muffled from another room, if that counts
thanks for the support demetriums
do yall think this is good?
https://www.youtube.com/watch?v=CZlQ858OWDw
All rights go to ConcernedApe and Chucklefish.
i think it's got that melancholy you're after
hmmm i will try it out and see how it goes
honestly i think this does deserve a fair consideration
good job, it actually sounds really good lol, is it a framework or just C#/CP you did it with?
i could totally see an event that shifts to outside of the saloon/club and puts on the filter
oh it requires C# for sure
welp guess i gota make an extra 4 sprites for this event
not a framework though, just a WIP mod i was working on to make everything sound lofi
then no. i do NOT touch C#
or all the music anyway
just also happens that the way to make things lofi also comes with a way to make things sound muffled
i probably could make it an event command/trigger action...
i was planning on having it tied to wearing an item anyway
is there an event command to teleport an actor instead of moving them? i set the farmer to -100 -100 so that they could come in later but i dont know how to bring therm in
yes, there is, try searching for warp in event wiki page
oh, ty! i was looking for teleport, dont know why but i was
anyway
i got most of my event done today so time to go to bed and have nightmares about how it can go horribly wrong tommorow
gn!
should i just package the wizard circle in with the cauldrons
I think you can, have a magical themed set
truue
Hi sorry im new to this server, was just wondering what programs people use to mod stardew valley as I have to create a mod for a Uni project but I have no experience/knowledge on modding, anything helps!
!startmodding
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually itโs easier to start with making content packs, since you don't need to learn programming.
thank you!
when i upload a mod is when i get my update key for it right?
do i need to edit that into my mod before i publish or is that a "use it when you update next" thing
you get your update key when you make your mod page but before you hit publish
its in the url

its just the ID of your mod
I have a question
aaa ok
!ask
Ask your question or describe your issue here, and someone will help if they can!
Which framwork do you use for visual studio community?
like, .net framework?
Yes
you need to target .NET 6.0
i tried installing 6.0 but my visual studio does not show 6.0
do you put your update key in your manifest before or after you hit publish (after being when you actually update the mod)
I tried
before
ok ty ty
i unfortunately dont use Visual Studio Community and dont know how to help with .NET 6.0 not showing up as a valid target
Its alright thank you for your time
What I usually do is add the description and screenshots first, then grab the ID from the URL and add it to my manifest before zipping my mod and uploading the file
you can try just putting <TargetFramework>net6.0</TargetFramework> in your csproj
and selecting whatever net framework VSC does show as long as its above 6.0
Yep i did that and reloaded the project and went to properties but it was showing me some error as if the property page was broken
Follow the instructions here, it does also note that 2017 Visual Studio might not be compatible, in case you are using that version.
a simple csproj file will look something like this:```xml
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<LangVersion>latest</LangVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Pathoschild.Stardew.ModBuildConfig" Version="4.3.2" />
</ItemGroup>
</Project>
does yours look different?
Do you need harmonypatches to change the inventory colour?
I want to recolour the inventory with my content patcher but I cant seem to find the texture for it, so I wondered whether it was hardcoded
I dont know which image it is tbh, maybe menutiles?
Im on my phone rn though, so i can't confirm
Is this the one?
Looks like it should be it?
Excuse me,
If I have a mod that already changed Pam sprites and if I replaced the PNG file in that mod with other PNG sprites, would it work? If not then can anyone give me advice on how to?๐ ๐
If it's a Content Patcher mod, It could work if you use the exact same filename and if they are the exact same size, but only for personal use
However, if you have made these portraits yourself and want to share them as a mod, you can lookup content Patcher
Replace portraits is one of the easiest thing to do with it (as long as you do have portraits ^^)
Do schedule strings not work with animation descriptions? The wiki says that they should as long as the string is the last argument, but I've never been able to get the two working together
"marriage_Sun": "730 Railroad 32 47 1 sebastian_smoking/1330 ScienceHouse 6 20 0 \"Strings\\schedules\\Sebastian:marriage_Mon.001\"/1630 Saloon 9 5 3 sebastian_cardsLeft \"Strings\\schedules\\Sebastian:marriage_gaming\"/2200 bed",
I can never get the marriage_gaming string to show
time to do something new today
makin furniture :3
question, should I make an alternate file on my mod page and have it listeed as like
Kandis Cauldrons and Circles (KCC) - Furniture
Kandis Cauldrons and Circles (KCC) - Tilesheets
or just have them as seperate mods entirely
alternate file being its the same items in tilesheets but just if you download this file you get them as furniture type of thing
hm because theirs so manyt variations of the same thing ig i should make at an AT pack
!AlternativeTexture
!AT
Alternative Textures is a framework mod that provides options to change asset textures with in-game tools.
For an interactive list of texture mods, click here.
To make a content pack for AT, see the author's in-depth wiki.
When making an AT pack does the parent png the one thats being added for retexturing be put in the assets folder or the Textures folder
I think having them as separate mods could be handy. Mod authors who may make use of the tilesheet will likely have an easier time linking/listing the tilesheet mod as a requirement.
Anyone know when the spouse gives his "Can't you tell, you're pregnant" line?
Is it a week after?
suddenly I realize I've never had kids in this game while playing a female character ๐
xD
Trying to time a prenatal event right now at the clinic, but it would be kind of weird for the spouse to give his "Hey honey, you're pregnant!" line after we both just went to Harvey's clinic and had a whole ass discussion about it
every single one contains 6 sprites cut up into 5 pieces i have to piece together for furniture โ ๏ธ
its so tedious i wish i could move them mor eefficiently ๐ญ
Would anyone be interested in making a mod that makes Corn more useful? I have ideas, I been looking at how to make mods, but I am very overwhelmed and my brain is no longer braining so I am hoping someone else wants to do it.
I want to make it possible to put Corn in the Mill, to turn it into cornmeal which can then be used to make cornbread in the kitchen.
And maybe add a recipe to make popcorn too! ๐ฟ
I think it would be fun! ๐
I think there is a dedicated channel for job requests and brainstorming like this, but I can never remember which one it is. You can always roll up your sleeves and try it yourself, too!
there is not
ah, I was looking for it, but I can't find it? And yeah, I tried making it myself, but I can't even figure out how to get a mod program going, so I don't think it's for me lmao
but there is a mod ideas repo
Mod ideas repo
!modideas
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.
Thanks @gentle rose. That's what I was thinking about!
ah, okay, do modders actually read that and do stuff with it?
sometimes, but there's no guarantee. If you want to guarantee your mod will be made, you need to pay to commission someone
right
sigh Anyone know why showFrame farmer makes a weird red line on her sprite during an event?
Left: normal play, going into the clinic and sitting in the chair
Right: during an event, after using /showFrame farmer 107
Horse
Those are the reins
Methinks so, anyways
hmmmmmmm
makes sense
Wiki shows both horse riding down and sitting down as the same frame
Dang
But clearly there is another frame that can be used? Normal play doesn't show the reigns
So there has to be a correct value
It might be some cursed rendering thing
It can't be. Those two sitting frames are clearly different even without the horse reins.
The arms are separate from the legs
What im guessing is its the same base
But the arms are just layered on top weirdly?
The shadow, They are also higher on the chair. It is more then the hands.
That is a positionOffset, Frog
That's why i said weird rendering maybe
I was trying to make it look right
Looking at it maybe they just look higher because of the shadow.
Im not sure whats up with why they're different
I can remove the positionOffset, but the reigns stay
I dunno if ive ever seen the farmer sit down in a vanilla event?
Maybe im misremembering
Hm i wonder why it acts that way in events
Yeah ๐ฆ I was really hoping to make this work because sitting down would be really natural here
there still has to be a non-horse sitting frame because we see the farmer sit down all the time
In events?
no, in regular gameplay
Is it possible it's hardcoded?
Im really thinking hard to find an instance in a vanilla event where the farmer sits but i just can't think of one. Maybe this is why
Farmer has a specific "sit down sad" frame in one of Alex's events I think
the frames come from the npc spritesheet afaik though so maybe it's weird for farmers
Hm, "sit down sad" isnt the same as "sitting on horse/chair" though, is it
Nope
where are you getting your frame numbers from?
why not check the unpacked files directly?
that's really what you should be doing 99% of the time
I have the sprite sheet open in front of me, but don't really know how to parse it. The farmer sprites are a lot more complicated than NPC sprites
If you give me a bit i can try and make sense of it
Looks like there are different arm parts for sure
Did you check sitting up vs sitting down?
(unless someone does it first)
I would be v grateful for any help. Thanks @hard fern
@teal bridge Hey there! I was looking through your mods and noticed a couple places where you reference GameMenu. In StardewUI's ViewMenu you check for GameMenu in a method to close the menu. This could cause minor issues with Better Game Menu if people are using Stardew UI for custom tab implementations, I believe?
Arguably more importantly, in Star Control you're creating new GameMenu instances for a couple built-in actions, which isn't something that would be intercepted by Better Game Menu unless I went out of my way to specifically patch it. Is that something that should be addressed in Better Game Menu or in Star Control? I assume it's not possible to completely replace the built-in actions using your API.
Sorry, Frog, didn't see this. Pretty sure sitting "up" means sitting facing upwards (away from camera)
I'll check it though
Yeah, "up" means away
This is a silly question, but as it is the arms that are different, and the reins appear..... have you tried picking different arm sprites. Because my guess it is the arms that make the riens appear not the legs.
Can you even do that
Do the reins appear though was what I wondered.
I don't know. Never done an event. But the arms are the clear difference, so that would be my guess as to where the art is.
Well they're all on the farmer base
Is there a way to change the arms alone? That would be pretty cool
Crashed the game. Checking "up" reigns now though
Unfortunately, no way to see if reigns are there facing upwards. I'm guessing that there might not be a need for reigns in that position
so on the actual sprite sheet the arms are sperate. See my X vs O. you want O.
Not sure how to tell the game that though
I think. may be wrong
I am wrong
you want the ones all the way over
on the right
agian not sure how to tell the game that though
This is a complete guess but try R18F12 I am guessing the F6 is the arm part. so F12 would be the correct arms. If i counted right
i dont know if that's an actual index
How painful do you think would be splitting Magic & Adventure part of SVE from all the town/vanilla changes? 
R18F12 is row 18 frame 12 which is straight up just the horse arms again
Well F6 is the arms holding the reins. And the arms without are 6 more over so I am guessing
actually that is just the horse arms
Like is said it was a guess
The arms start after the body animation. If you look the arms are the 6th set of arms on that line. If you count over starting at the 6 (what we actually see in the game) for the arms so I just started there and counted up from that. I never said I though it made since, but that is how I got the number. I may be completely wrong, but that was the only way I could think to get the arms we want.
Don't I have to feed an integer index into /showFrame though?
Like, sitting down is 107
i think it needs a proper index
You gotta separate out everything around marlon lance and most of the wizard related stuff i think, but at least the actual combat/adventure maps are their own locations
It will be a lot of work either way
Hmm... I'm curious if C# component touches any of that 
The fighting stuff is all ftm i believe
I thought I'm bored enough to try tackling that... but not yet

is there a mod that can replace the dog head? i wanna update it to reflect my demodog sprite ๐
The pets data should include the icon
oh ok not sure where that is bc we just used my sprite sheet and replaced the dog file
tysm!!
whats the difference between messing with the vanilla and making one? idk how to do the new breed etc i think i tried in the past and couldnt do it and the replacer worked
People can adopt more dogs, vanilla and modded, so replacer would limit that experience (among other things)
Since 1.6 it's better to add new breeds
https://www.nexusmods.com/stardewvalley/mods/31889
Thins mod has both option. You can take a look and see how they did it
im not uploading it or anything just a personal play with a friend kinda thing
Ah, then replacing is completely fine if you don't plan on getting vanilla dogs
It's not that hard to do as mentioned, just need an EditData
yeah i gave up trying to make it its own thing i just made the sprite for personal use lmao
But yeah do whatever you want
this lil guy ๐
Although, not gonna lie... I bet people would love to have demogorgon dogs 
@upper jackal Hi! I'm looking to merge your Lookup Anything PR for water fish lookups in the next set of updates. Unfortunately it's a bit hard to merge, since it changes a lot and has merge conflicts. Any chance you could submit a separate PR for the checkbox refactor from the latest develop branch, and then (once it merges) a new PR for the new feature? (Sorry for the inconvenience! I'm slowly catching up on the PR backlog.)
well i can give the sheet if anyone wanted to add him i just dont have the smarts to do it lmao
(While you're here, Pathos, would the best time to bug you about a slight tweak to something in SMAPI be after the next update wave, once you've caught up?)
(Feel free to ping me anytime! If I'm not around, I'll just reply when I am.)
(While you're here, hi! Hope you're having a good weekend so far. Thanks for merging my PR. ^^)
Woo. Another PR out the door for Better Game Menu. Not many to go.
And this is the first one that involved an entirely new menu page.
as per suggested by some lovely folks earlier, I posted my mod idea on here:
https://github.com/StardewModders/mod-ideas/issues/1344
I even made some sprites to use! Now lets hope someone likes it enough to pick it up ๐ ๐
menu page that opens a new window without the tabs ๐คข
cool idea and sprites! FWIW Cornucopia and WAG does add corn flour, and probably some other recipe mods add popcorn as well
you mean the map?
Yeah, I'm not about to rewrite this person's entire menu for them lol
I just wanted to get it working the same as it does with the normal GameMenu
ty! first time making sprites haha ๐ and yeah, those mods do add those things, but they also add in a boatload of things I am not very interested in ๐ it's just too much for my taste, I want it to be a bit more subtle^^
my friend help me add him as a breed :>
i come here with a kind of etiquette, kind of philosophy question: at what point has a creator theoretically transformed something enough that they can claim it as their own, with or without giving credit? for example, a sprite recolor doesnโt seem like enough transformation, but iโm wondering where the community draws the line
Yeah, if you're talking purely ethically and philosophically, then... you'll get a lot of different answers. Which I suppose is the point?
maybe, but i wouldnt say there is a line the community draws
bc the community is not one entity that decides where that line goes
oh yeah itโs for sure a gray area, i was just soliciting personal opinions or consensus if they had one
the line = grey area
personally, i would say "when there is literally nothing from the original in the mod"
I think for this question you should probably default to still asking the original sprite's author, because if you're in a grey area, it's better to ask if they require credit for a recolor unless the recolor is of vanilla assets
The line visually depicted. 
but even then, if you started FROM another mod, i would still expect credit
like, if you used their stuff to make your own
even if you ship of theseus'd it and it no longer has their stuff
Yeah, I'd agree with that.
oh iโm glad you mentioned that, because iโm not sure that would have occurred to me!
i come from fannish spaces and thereโs a different attitude towards transformative works
Stardew is one of the more... strict spaces when it comes to this kind of thing too, I'd say.
makes sense i guess with such an active modding community
i think for me i would sum my feelings on it up with two questions
- could you have made it entirely on your own, without the other work needing to exist at all? if not, i would say credit is courteous
- if yes, did you? if not... i would say credit is courteous
I think more importantly for me, I would question why you would want to not give credit, even if number 1 there is true.
I think it also maybe depends on what you are trying to transform? if its a plant or a fruit or something, you can only change a strawberry so much, its going to look alike either way.
If you are trying to transform a npc or some character, this is more unique and personal to whoever created it, you will most likely still see the original no matter how much you transform it
yeah, importantly i am just saying it is courteous and not required. when it becomes required is definitely a legal question i would not even attempt to answer and theres many ways to be legally in the right when doing something uncourteous. but ideally no one wants to be making dick moves on purposes
even if theyre "in the right" to do so
Don't worry, by the way! I know you're just positing the question when would it be okay to not give credit.
Not that you want to hit that threshold to avoid it.
Probably cursors. /j
springobjects mostly probably
Let's have a quick peek...
(i would also like to make it clear that I didn't think you were asking so you could get to that threshold either, dw from me either)
..why put that in here
oh for sure! iโm very new to this and super curious about how things are done โround these parts lol
Yeah, memes over to #images-and-memes, please. 
I think there r many ways to draw strawberry 
(iโm also over here creating a whole ass bibliography of sources for people who have helped me/people whose assets iโve looked at and getting a little dizzy lmaooo)
it's not in tilesheets not in loose sprites
are you looking for like "carp surprise"
Springobjects psure
@wise merlin is it about the dog lol
yes ;w;
Seeking opinion from other mod creators: I have a bug report for my spiral mine map shortcuts mod. The report says that when using data layers (I'm not sure what this is, but I think it might be another mod?) the shortcuts look different than expected. This doesn't impact gameplay and the shortcuts work as expected. Is this something I should worry about understanding/fixing?
So long as you aren't reusing my pixel art assets (which tbh are heavily based on the existing vanilla dog sprites, especially for the body shapes, so I can't claim too much there), I don't mind if you use the content patcher as plug-and-play for your dog breed mod. Publish it, make DP off of it, whatever. I personally don't think I've done anything novel enough with content patcher that someone using it as a template would be an issue.
if it doesn't impact gameplay i wouldn't really worry about it
Data layers is a mod that has a mode which shows accessibility
It could be that you have stray Building layer tiles
okay tysm!! โค๏ธ
So those tiles r invisible walls or whatever
(I am going to be so happy when I'm done doing all these PRs and working in all these projects without nullable stuff enabled.)
When you say accessibility, is this something related to, say, screen readers? I don't want my mod to be inaccessible to someone using assistive technology, but if it's just about optics, I don't know that I care.
(Looks like these are the collisions they're talking about. Some are a bit funky, but this one doesn't look close to game breaking.)
No it's like, where you can walk
Map collision
This mod is very useful for map making
In this case it looks like u can walk into the void
WHY ARE THEY IN MAPS
Honestly, using the vanilla tilesets to create something that looked okay was a nightmare. The idea of fixing something that isn't actually broken makes me want to cry.
what
...I did not notice that, yeah.
giiirl
You just need to go and add like 4 tiles in Buildings layer ez
objects are in Maps so that they can be used in tilesheets
So consensus is fix?
i would say walking into the void impacts gameplay. id fix it. But it's not gonna trash their game if you don't
I actually thought I tested it and you couldn't walk into a void. Off to do more testing...
I would definitely call it a bug if the collisions they're showing are right, yeah. Granted a minor bug, technically a bug all the same.
I certainly wouldn't be rushing on fixing a bug like that over other priorities!
Testing confirms that void access does occur from the correct angle. Time to tackle Tiled again๐ฉ
Thank you for your help, everyone!
It's almost certainly a simple issue of thinking you were putting tiles on the Buildings layer, but you were on the wrong one. We've all done it!
H is your friend
Sooo i found right? In my experience? One way to test in game character spites is to summon em via "they stay with you" mod. I found this out by accident and if like me ya forget the input to make an npc come to the area you are? It can be an easier way to test sprites!
Also the mod "They Stay with you" works with custom npcs so long as you can spell their name out
Idk i figured that y'all should know that!
I don't think it's the best way to test sprites if the intention is to have them go on npc
Like sure they both animate but tswy/trinkets run on completely different system than vanilla NPC/animatedsprite
Put something down on a back layer and a thing that you could have sworn was on the building layer vanishes: 
Attempting to fix the void access somehow broke the entire map (three of the four shortcuts disappeared. I don't even know.) Time to put this aside and come back to it when I'm less frustrated with Tiled.
Okay, one last thing before I go -- can anyone see any difference between the following filepaths? Because one of these folders has 0 edited maps and the other folder has 2 edited maps (I saved as and renamed, just in case I had missed something) and they look completely identical to me. Has anyone heard of anything like this before?
"C:\Users[redacted]\Desktop\Stardew Mod Files\Stardew Valley (unpacked)\Content (unpacked)\Maps\Mines"
"C:\Users[redacted]\Desktop\Stardew Mod Files\Stardew Valley (unpacked)\Content (unpacked)\Maps\Mines"
Its probably whatever you redacted
Yeah I understand why you want to redact it, but the rest is identical, so I assume it has to be the thing you redacted
They are otherwise equal strings so i dunno
Could have been jane.elliot vs JaneElliot for all i know
Here it is with my actual first name replaced with Jane
"C:\Users\Jane\Desktop\Stardew Mod Files\Stardew Valley (unpacked)\Content (unpacked)\Maps\Mines"
"C:\Users\Jane\Desktop\Stardew Mod Files\Stardew Valley (unpacked)\Content (unpacked)\Maps\Mines"
Point is that u r the only one who can compare the real paths in this case
I've never seen anything like this before; I'm not even sure why there are two mine files showing up in my quick access.
I don't think this is a thing we can determine if you want to change things is what I mean. Not saying to doxx yourself, it just has to be on your end
No, I understand. The fact is the two file paths are exactly the same, but somehow they're showing me different file content. Now I'm wondering if this is some sort of weird malware.
As for fixing your problem iirc you did editmaps right
Thanks for your help everyone -- sorry for bringing my frustration to the room
Did you have overlay or replacebylayer (the default)
Hey, as far as StardewUI there is only one place where this occurs and it is mostly a secondary behavior that should not even be triggered by any existing mods; that said, I guess they could be triggered in the future if you make the main menu easier to patch and add tabs to, so if it will help, I can stub out that GameMenu check into a separate static method that will be easier to Harmony patch.
Star Control's built-in actions should be easy to patch on a single line as well, although as to the question of who should be responsible for that, I don't really have a great answer one way or the other.
I'm not sure on this one. Where would I look?
I have a rather weird issue going on. I've made variants for monsters with Alternative Textures, but some of them appear to use the wrong textures.
These are all Frost Bats that I spawned, but they're using the alternate textures of that Bat for some reason.
Your EditMap
Yeah, the harmony patch should be easy. I just don't like patching other mods when it's avoidable so I thought I'd reach out.
The bat cave...
As a more general rule of thumb, since Stardew UI is a framework, I'll want to minimize specific-mod interactions as a matter of principle, making exceptions only for mods that are so popular as to be literally ubiquitous, like GMCM or (eventually) Lookup Anything. Star Control is somewhat more open about integrations, since it kind of straddles the line between a framework and a standalone mod.
The corresponding folder is named 'Frost Bat' and contains the following the files:
It should technically only occassionaly spawn 'texture_0.png' as far as I can tell.
This also happened to the Haunted Skulls.
are you able to use AT to retexture monster variants normally? im not sure how it works, but Frost Bats are just Bats with some extra variables attached and not separate entities
Haunted Skulls are also just Bats with different variables
i think
bats are one of the classes that set up their sprites and such at creation time, so I'd guess that might interfere with AT's sprite setup
(confirmed yes they are)
I'm going to guess it's the default, since I ended by opening the map in Tiled, clicking on the tile in the tileset that I wanted to use and then clicking on the map.
Well damn, that seems to be a pretty big issue for what I'm aiming to do.
(Which is probably not how it's supposed to be done. I'm starting to think it's a miracle everything isn't more broken than it actually is.)
(re: Better Game Menu) So, I can modify Star Control to check for the existence of some BGM API, if you want to create an API that opens the game menu to a specific tab. Though I make no guarantees about when that'll happen.
Other monsters seem to work just fine.
If you use lookup anything with datamining fields on there should be ModData about what AT texture name is picked
(speaking of "no guarantees about when," sorry focustense for taking so long with CMCT orz)
I'll see what I can find!
I wonder if you can do this with ftm instead 
Is it a feature for mines monsters or only custom spawns
Honestly, it might be better handled from Better Game Menu's side. I could both harmony patch that one method for the built-in actions, and also use your API to register actions to open the game menu directly to any registered tab.
In the interest of letting users customize things
It's intended to apply these textures to all monsters, regardless if being spawned or not.
oh yeah khloe since you're here I think this mod needs compat?
https://www.nexusmods.com/stardewvalley/mods/30146
Though I haven't tested the natural spawns yet. Didn't set up a save for that one.
Yeah i was wondering about ftm feature not your intentions
Oop
Already got a PR out for that. (You can see my compatibility checklist here.)
Ah nice, thanks
For better or worse you have a rare flavor of mod here so i can't think of many examples of people doing the same thing
https://www.nexusmods.com/stardewvalley/mods/20040 guys help me with this mod. I have it and I set to have cuter collie dog but it still vanilla
(We're talking about Farm Type Manager, right?)
Yep
!mh
For help with modding issues, please ask in #1272025932932055121! When asking for assistance there, sharing an error log will help others identify your issue (see https://smapi.io/log for instructions).
Could definitely be useful to have library actions for opening the menu to any tab, if there's a custom tab that players like to use frequently. (Just be careful about fake "tabs" like the map)
Yeah, I don't think FTM will be able to help me here.
Also, I think you could Harmony patch in a generic way for all mods, looking for any instantiation of GameMenu.
yeah, FTM only edits its own spawns' settings (for now), so it won't help if you want to reskin everything
I could but what if, say, someone instantiates a GameMenu and then immediately reads a field? Using a harmony patch to replace the constructor call would break that.
And just replacing it once assigned to activeGameMenu would be useless for the purpose of improving performance.
Well, you could do it with a whitelist of possible methods to patch. Even put the list in a config or JSON file somewhere.
I just meant in the sense of, your transpiler isn't really going to be particularly sensitive to the mod's internals.
It might be worth it to put a patch on GameMenu's constructor that just... trace logs that it's been called with a stack trace.
bats are a specific issue because depending on their location (e.g. mine level), they switch textures immediately after creation and run the "reload sprite" method to set it up again
Oh, so if I were to spawn them on the correct level the corresponding sprites should appear?
I'm not sure, it may still be an issue depending on how AT handles sprite setup for them
Well, that's up to you. I'm thinking of e.g. what I did for AFS which is just to look up every read of Game1.random in every getFish related method, implicitly supporting custom locations.
(As long as they don't do... other unusual things like VMV does)
I think spawning them in the farmhouse would always use the default "black bat" texture without mods, but if they're in the mines, they adjust based on level for frost/fire bats, etc
Logging usages of the vanilla game menu might help with... something? I guess users submitting reports saying it doesn't open or is slow for some specific case? But doesn't make it much easier for you to add widespread support.
at any rate, it may be a bug in AT, which is a bit tricky because the author hasn't been around much
Yeah, at a certain point this is just a very tricky thing I picked up and I just have to do a bunch manually to minimize breaking things.
But it's fine. I've already got patches for most of the big mods out of the way.
If it were me, I would write one generic transpiler, and apply it to a list of type/method names by name only. If some mods are a little too friendly with the vanilla GameMenu for that to work, just don't add them to the whitelist.
It didn't work :(
I just might do that, in fact.
Obviously mods that actually add custom tabs to the vanilla game menu are probably going to require total rewrites for BGM compat.
Even found a naturally spawned Frost Bat, and it still looked like a normal Bat.
Hey Khloe, does your Better Game Menu postfix the GameMenu constructor or something similar in order to replace it?
I don't think you can postfix a ctor. (And if you could, wouldn't help anyway)
It transpiles every instance of GameMenu being instantiated in the base game to replace those calls.
you can postfix a constructor
Postfixing the constructor wouldn't help with my goal of improving performance.
i ask because I once postfixed the GameMenu constructor and am debating doing something about it because better game menu will probably receive a buncha downloads lol
I think I'm going to to have to drop the textures for the affected monsters then. No use in trying if the author of Alternative Textures isn't around much.
All the damage is done in the constructor
it was my very first mod and I'm afraid to touch it lol
Ok, I stand corrected on the can-you question. But what you definitely can't do is patch a constructor to return a different type that is not a subtype.
the UI is held togeether with duct tape and prayers
Nah, instead of postfixing you gotta just prefix return false to prevent any of that nonsense from running to begin with
I can make it happen for u with a C# component if u want
Skipping prefix on constructor sounds interesting, for sure.
The sprites r great so it'd be sad if they r wasted
You could? You'd be my lifesaver, if you really did!
SHould we take this to DMs maybe, so that we don't clutter this channel?
i have an option to open it as a standalone menu too, but I don't want to break better game menu for people with it installed
(A thread could be too, too!)
Alright!
Ah, multi-menus... I've had so much pain over standalone+GMCM hybrids.
Uh, should I make one?
The sprites r great so it'd be sad if
Yeah that is zero issue. Just need to register a new implementation for the Skills page that constructs your custom subclass.
I do recall mine conflicting with spacecore's custom skills (hence why the menu is standalone via hotkey too, and disable-able via config)
it's def not ideal
Literally the exact same thing the SpaceCore patch I have is doing. https://github.com/KhloeLeclair/SpaceChase0-StardewMods/blob/BetterGameMenu/SpaceCore/Skills.cs#L266
(Bonus: People with Better Game Menu could switch between SpaceCore's Skills page and your Skills page on the fly.)
Just grab Better Game Menu's API and call RegisterImplementation() following the example from SpaceCore/Skills.cs I just posted there.
(it is almost finals week so I probably won't actually be able to do it for a few weeks, but I can put it on my todo list)
does anyone know where the flooring and wallpapers are located?
alright, thanks!
Honestly, I can do it for you. It'll take me longer to fork the project than it will to implement it, lol
If you want to write a PR, feel free, I could probably find time to merge it soon. (Although, do you care about the license your contributions are released under? If so it might be on me since I didn't MIT my mods or anything)
I do not.
Hi, if I have a method in Stardew Valley
public override bool answerDialogue(Response answer)
and I need to use Harmony to modify this method, and there is a public static variable, which I need to access, using ____Morris << the variable is called Morris
public static bool answerDialogue_Prefix(JojaMart __instance,Response answer, StardewValley.NPC ____Morris, ref bool __result)
Can someone tell me if this way I used to create my Prefix is โโcorrect?
It's not. And yes, please contain code in ```s to help make it more readable.
But I didn't copy and paste an entire code, I just sent two separate lines, which are just the method headers.
It's important because it stops Discord from trying to do markdown formatting. You'll note how a bunch of stuff has underlines.
You can also put a backslash (\) in front of various markdown formatting characters to escape them to prevent that.
With backslashes: __Morris, __Instance
Without: __Morris, __Instance
Doesn't 2 codes in a single message work?
It does. You may need to use a \ in that first __Morris to prevent it from starting an italics block?
Anyways, getting back to the real question, you're not doing that correctly. Static variables are always accessed the same way, you don't need to add them to the method arguments for your prefix. You can just do JojaMart.Morris in the code whereever you're using it.
Is the ref with 4 "_" for protect only then?
Would anyone be willing to do code review for a mod I wrote? I'm new to making mods so I'm just looking for stuff like 'you should have used content patcher for this' or 'don't write csharp like that' or other best practices
if you send it here then prime can have a look and tell you what we think!
you wouldn't postfix a car--
I timed it. This took me 2 minutes and 14 seconds.
Do you need C# to display an image whenever you click an object (so the action field)
I'm guessing I gotta make a custom action event and make a listener for it in C# but I just wanna make sure whether it's also possible to do with content patcher
Who's prime?
https://github.com/gellingly/stardewmods/pull/1 It's supposed to spawn ladders when the game stops spawning ladders because a ladder got created on floor generation or if a stone broke and spawned one
sorry, I meant to say people and my phone must have autocorrected haha
I basically want to click a note on the ground and have it display what it says
before we start looking, it does work for you right now, right? you just want a review that everything makes sense
Yes, it works for me. I'm mostly looking for a review thats like 'don't use this event listener' or 'this could have been done by content patcher' or 'this is terribly inefficient' or 'your sln file or csproj is completely wrong'. I'm not familiar with csharp or harmony or smapi or anything related to stardew so I'm worried that I'm going at this from a completely wrong direction
well, first note is that you don't really need to make a pull request to put code into your own empty repo ๐ though obviously that's not a big deal
as far as I can tell, you aren't using harmony? it's not in your csproj at least
yeah thats a personal preference lol, its easier for me to track changes since I don't really like writing helpful commit message
helloo, i'm having trouble loading this accesory for Fashion Sense into the game even tho hats, shirts and pants loads fine, here is my json https://smapi.io/json/none/8cda1ebf5ada4df99793312ad8437afe
I have some other code written that uses harmony that isn't commited to github yet so I just mentioned it in the message
for the accesory that i am trying to add TwTI am not sure if ive sone somethign wrong but it wont appear when i look for it
figured it might be! just wanted to mention in case your experience using source control was from PRs to other projects and you didn't realise
did you mean to leave in the barking? 
oh wait, it's got a config option, nice
at a glance, I don't see many glaring red flags
I'm not sure why you did
int farmerLuckLevel = Game1.player.LuckLevel;
instead of just using the value directly but obviously that's another very small thing. In terms of performance, there are quite a lot of loops there for something that may have to run relatively frequently but I can't imagine the game is doing things TOO differently 
MEEP feature iirc
but since you're using the object list changed event, why not keep track of the state inside your mod rather than recalculating every time?
Thanks!
(Can confirm, MEEP feature assuming I understand the need correctly.)
If by state you mean the ladders that exist on a mine floor, its because I wasn't sure if a ladder spawning counted as an object changed event, so I was worried I wouldn't be able to get ladders that spawn from monster kills, although I guess that is easy to figure out
just generally any of the things you calculate that can be tracked, including that - but it sounds like itโs worth testing to find that out
Could someone please send file where it contains all of Abigails dialogue?
i feel like on wiki there are some quotes missing
!unpack
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!
is the wiki suppose to exhausively list all dialogue
Chu it's supposed to list everything /silly
that'd be a long-ass wiki page
I'll see if I can store more things as state, dunno if I trust myself to figure out when the state becomes invalid tho lol
Thanks for taking a look! โค๏ธ
Is it possible to adjust the raw frame just before it's drawn on the screen so I can adjust individual pixels?
No
Okay, I have a stupid question about this objective type for special orders:
What do you do if the (vanilla) item doesn't have a unique context tag 
Add it
every item has autogenerated tags corresponding to its item id
parsnips (24) for example would have id_o_24
okay so for stone it'd be like id_O_390?
yeah, if you want to be sure enable Lookup Anything's data mining fields
and look at all the context tags
Or type debug listtags
thank you! I went to the object data directly and didn't see a unique tag there and panicked 
i think tags are all lowercase
tags are case insensitive now
cool
that was also a 0 instead of an O anyway ๐
@rancid musk a mappage.draw postfix is not affected by your mod?
sigh Any way to make a door close during an event? /doAction only opens doors, and trying to make it work by changing the map tile is rather annoying
Unaffected. All the actual pages of the game menu are still the same classes with Better Game Menu. It's just GameMenu that gets replaced.
I'm down to two mods on my list that are open source and need patches written now.
Sometime around the end of the month, depending on when all the big mods have their updates out.
Don't really want to release before GMCM and SpaceCore update.
I'm hoping to get it out before April 1st though.
But I wanted lots of time for people to do their own testing and accept PRs
I just put out Preview 4 with a couple more changes and fixes, including support for focus's Star Control mod.
Once more of the current PRs are accepted, I should probably drop into #modded-stardew and ask a few people if they'll test things for me, find any mods that've been missed so far.
You can pass in more than one token in an i18n token, yeah? Would you delimit it with commas or | or
i can load in a new asset to stardew to retexture with AT right or do i have to combo it with CP?
If it's a new item, you need both CP and AT.
If you're reskinning something that already exists (in vanilla or another mod), just AT.
aah ok
ty ty
the unique id for content patcher is Pathoschild.ContentPatcher right
i forgor and i dont wanna go looking for my content patcher to check XD
nvm nvm i got it man i need to sort my mods better
I'm admitting defeat. @lucid iron would you have any interest in taking over the sprial map shortcuts mod? It was your idea originally: #making-mods-general message
what is the state of things rn 
At this point I think I've managed to corrupt the tiled file, because nothing is working the way it is supposed to. Ironically, I don't even play with this mod -- I don't mind the spiral mine levels. ๐ I'd rather pass it on to someone who wouldn't find it a major lift to maintain.

If you'd rather not, that's fine -- I'll open it up to the server. I just figured I'd give you first dibs. (If you use donation points, I think it would be valuable -- it's a popular download. I don't use DP, so I'm not sure how it works.)
Honestly, the amount of dread I now have opening Nexus because of this is not really healthy. There's only so much of my mental health I'm willing to give up for something that is supposed to be a hobby ๐ฉ
you gotta remember it's just mod and no one's paying you so theres no need to do anything 
Have you gotten at least 1000 downloads? If so, you should be a verified mod author and you can turn off comments.
Between my mods I'm around 8,000 DL. But the issue is that there's something actively wrong with the mod and I can't fix it. (And, sadly, I'm not someone who does well knowing that I've let a flawed product into the world and can't fix it.)
Also, I don't want to have to deal with Tiled or think about Tiled ever again๐
weh
That is incredibly cool! Is that what you were aiming for?
mostly there, I was weh-ing because crops code and draw code
final desired effect is a glass tank above the water
it reminds me of hydroponics
that is the idea. aquaponics farming
I'm just thinking how amazing it would be if those were rice crops. I think it looks great as-is.
awesome!
parsnip!
hmm though jumping fish may clip through the glass tank
Could they be two separate types of ponds -- a fish-only pond and a crop-only pond?
the point is they're integrated though
if crop only pond then I'd just grow crops on the dirt
what is the correct way to make a map indoors? i started by editing the island cave map, thinking caves are indoors, but now it seems that outdoor sounds are still playing. i have the map property Outdoors set to false
Huh, I haven't had any issues with it? 
can you put multiple mods in the manifest section "contenct pack for" since im using both CP and AT? thought id check
No
Ah, ok
I'm having an issue with making a map patch for SVE. SMAPI is erroring saying that one of my maps has directory climbing when it does not. Any ideas whether this is specific to patching SVE?
i need to use both CP and AT for my mod which one should I use in my manifest?
idk which would take precedence
welp i just played episode 1 of life is strange, but since i am broke and cant buy the other episodes, time to go back to making events
you make two mods
Oh so id have to make a CP mod that introduces the item and then a AT mod that allows color changes
what kind of item is it
Wizards Cauldron and the wizards circle with variation of colors from the wizard tower
furniture?
yup
you can just make more furniture 
not related to SVE. tilesheet climbing can strike at any time, so open your map with a text editor to remove the paths.
alternately, make sure you are looking at the correct copy of the map file (the one installed in your mod folder, and not the one in your work directory)
ig i could just CP it in i thought id do AT too just in case but that might be annoying
just think about how you personally would like to use it
I have already removed the paths from both my maps (Town, Town_SVE) and I'm definitely looking at the one in my Mods folder. I'm stumped!
Content Patcher (https://www.nexusmods.com/stardewvalley/mods/1915) is a mod which loads content packs to change the game's images and data without replacing XNB files. If you want to make mods using Content Patcher, start at https://stardewvalleywiki.com/Modding:Content_Patcher.

enjoyer
