#making-mods-general
1 messages · Page 499 of 1
Clarification.
I could do without, though.
my goat..............
Actually, if I could do without, then why am I wasting y'all's time in the first place?
Unless adding spaces has some hidden defect?
But it works!
sorry, I don't accept DMs from ppl I don't know well
gtg for now, but chances are I'll log in sometime later! bye y'all :)
My plan for Maru is that it's more of a Kuudere vibe. Her interactions with you are more of a social experiment until she realizes shes falling for you
Well, ideally not after the mod is uploaded, because then your uploaded manifest wouldn't have the key.
How do i cover that transition from robin's house to current location? I usually just postfix patch warpFarmer() here but i want to go full smapi event hooks here
Make the page, then grab the page code before uploading to the page.
I do this and I'm not forced to warp to robin's at all
Works for wizard too
Just replace these in the content file?
Also, both the portraits AND overworld sprites didn't work here, yet the parentheses are only tied to the former. Does that mean they broke down the entire file or something?
Because I admitedly haven't checked if the monsters worked or not, just Krobus.
But they seemed to have worked with spaces.
Hell yeah! Thanks for this
I got my boots to look right in the game
As a host, is it possible to modify the money of an offline player?
Like with a mod?
Game1.GetPlayer() should work but I didn't try that myself.
Yeah you need to get the farmhand's Farmer instance
Yeah, no, it doesn't work.
Like, at all.
Unless it's because I haven't updated my Monster Variety yet?
But that might just be reaching.
@autumn tide I'll need y'all's help after all.
I'm waiting for it so i can make my own customized monsters for me
Yeah, I think I'll need help with i18n.
So after trying this, still warping me back to Robin's. Forgot to tell that this method returnToCarpentryMenu is the one responsible for warping the player back to robin's house or wizard house, purchase animal menu also has the same logic too LMAO.
They all call warpFarmer(locationRequest, ...) to warp the player to their designated locations
Config is a CP side thing, did you see my example here #making-mods-general message
If you use this one then don't even do the warp to robin to begin with
I use this tile action in this mod if you wanna try https://www.nexusmods.com/stardewvalley/mods/34814
The catalogue has a little dialogue where you may open building menu
I mean thats a vanilla method inside the CarpenterMenu.cs, its the one warping the player back to robin or wizard house even if the Carpenter menu is opened remotely. Since it calls for warpFarmer(), i usually just intercept it with harmony and execute the warp back. Iirc sdv desktop doesnt have that vanilla logic(?)
Ah the ol platform specific behavior
But yeah can u try this mod on mobile
Just to be extra sure it's a mobile quirk and not due to mod implementation
How i create a custom moving sprite inside a map? I want to do a dwarf working on a forge hitting it with his hammer
A kind of mix actually i want him to standby by in front of the forge hitting it and have a dialogue like, leave me work human i need to finish this tools
Dont know if i make an animated tile instead
Or a standstill NPC
map tile
Does anyone have any information on what DaisyNiko's recolors are doing on a layer adjustment level? I'm trying to use their Photoshop edit layers, but I use GIMP and my program doesn't have the features that are actually changing the color. I'm pretty sure GIMP has the tools needed to make the changes and I can do it if I just know what the adjustments are. I'm opening the layers in Photopea, but it won't tell me what those layers are doing. This is driving me crazy.
EDIT: Wait, I think I found the info in Photopia
Their dwarf i mean
Both are options yes, for NPC you'd do schedule animation, for just a map tile you'd do the animated map tile stuff
Do both of them can talk if i decide to custom the tile or only the npc?
I'm gonna need more coding for this to work
If u want to be able to talk to them, then a npc is easier yeah
Thanks for the advice pal
nvm... it doesn't do it, there's just a machine control panel mod that shows it as that but then they dont actually turn into juice or anything
I still don't see the code
I assume that means you no longer need assistance with the code
hellooo i have returned from my minor mental breakdown and am ready to assist 
How it works is that rules earlier in the list get checked first
That's why hops become pale ale instead of hops juice in vanilla
And machine control panel shows that as the pale ale rule first, followed by the juice rule (which contains hops as possible input even if normally not reachable)
just @ when you're back or i won't notice LOL
u know i knew this but i also definitely didnt when i wrote it X:
ig i can just put my special ones first instead of my bad old code đ©
whew, my mod overhaul is like 98% done and the last 2% is taking forever
marriage dialogue, festival data, movie theater data... what if I just say "no one can go to the movies" iswtg
Technically you can make people reject movie tickets...
I do it for just one kind of movie, but you can just decide NO MOVIE
no more movie!!! not even fnaf 2
Hello, yes, I'm here.
So that's literally all the default file is, huh?
Yep it's not that complicated
The deal with configschema is that it uses specific keys that is documented, normally this is used via {{i18n: key}}
So I can just have a billion different lines that just change the display names of config options?
Hm.
And you guys think the reason why my Krobus stuff doesn't work is because of spaces?
Because the monsters seem to work perfectly with them.
did you remove the brackets?
new json in the validator and log please?
So the name in the config schema section is the token to use
You gotta make sure it all matches
Display name from i18n is only for gmcm
I'm away from the puter unfortunately.
It's Winter Star's Eve.
Made sure that's the case.
Must be spaces then.
in that case, we can't debug theoretically but once you're at your computer we can help 
But the monsters WORK with 'um. This is mystical.
is krobus' internal name actually krobus
Yeah i believe so
Alright, hold on.
don't abandon the festivities, we can do this tomorrow if you want
The festivities are timid.
Only two people.
Two very well fed, sleepy people.
Here you are. Back to the table I go.
when the festivities are actually over, the log would be helpful at this point
Okay I have returned- uhh lmk if I can help out Radical!
Ah u probably dont want to Load over krobus portraits but let's address this after it works
how do log
would there possibly be an issue with putting quotes around âtrueâ etc instead of bools
!log
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:
- Open this page: smapi.io/log.
- Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
- 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.
Still seemed to have worked with the monsters.
What are the bools like, though?
When I speak to my NPC I get no translation, but I do have the default.json with the corresponding dialogue key
sigh back to fixing events for now XD
a bool (short for boolean) is a true/false value not inside quotes
âMakeKrobusCoolâ: true
content patcher will convert them back and forth as necessary, same for numbers
Hi everyone i have a question, i changed my volcano dwarf shop using the PNG image of the volcano shop, how i make this work changing the volcano map tile? I need to turn it to tmx or it should do fine in PNG format?
you can either do an EditMap action where you replace the map tiles in tiled with your own tilesheet, or you can do an EditImage on the tilesheet itself
I have no idea how to do that i still learning
have you read through the content patcher documentation? it explains every type of action you can do and cases where you might do it
Yeah i read a lot of useful things yesterday but not everything, that is one of the things i don't know
My Bad if i write something funny its the phone autocorrector
no worries! yeah i would start by looking at EditMap and EditImage
I Will, thanks for the info
So, you think I should remove the quotation marks from every mention of true and false?
hi people, i'm trying to make a npc,but i just program him for speak ,but he don't speak,idk why. one person said to me put a blank.json, i made, and i still can't speak with my NPC. someone can help me?
Can you send a log with patch summary
!log
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:
- Open this page: smapi.io/log.
- Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
- 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.
Ignore the mods.
https://smapi.io/log/718468697fbd48a585056bd6a8abe8ef
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 103 C# mods and 181 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
Silence, Guvvie.
(i really hope that's what you wanted)
It's here.
what is your mod id so we can filter it
(for future reference though, it's usually best to test your own mods in isolation to rule out strange interactions with other mods)
Well it says it loaded krobus rn
radical.raiders
Are you failing at disabling
If that's what it is.
I want to have the Krobus replacements off by default so it doesn't clash with any other mods my adoring fans would be using.
I then enabled the features in-game via the config to no avail.
Oh so delete config.json if u changed
My Talkohlooey's portraits work fine though, but that's because they just replace the mod assets and not anything else.
I believe I had deleted my old config before trying again.
You can check the config json generated after first launch to see what it's at by default
Hm, you could set the portraits to low priority?
Well, the config file I have up to this point had everything set to true.
Because I, of course, wanted to see if Kroby works.
No clue how to get around that.
Nor why would I want to do that (curious, not confrontational).
OH to make the the Kroby portraits/sprites have lower priority to other portrait/sprite mods, assuming youâre including the Kroby stuff on your main monster recolor mod
Yeah, I thought it'd be cute to have him be a part of Radical Raiders.
The only reason I made a redesign for him was to fit with the brutes and shamans.
And, in the future, snipers and... girls?
Alright! That way it can still be true by default and wonât override
Shadow girls are a thing, apparently?
Idk why they got the girl sprite like that đ
Why are the shadows so gender roles
I've only got around to seeing the dangerous skull caverns.
Only a matter of time until I take a look at Danger in the Whatever.
Oh theyâre not even in game
Pretty sure the snipers are, though. People told me so.
Ngl I realllly hope they never gender role my beloved shadow blobs 
Might do something fun, because my brutes don't look mentally stable enough to wield a weapon, a ranged one at that.
âŠalthough ngl the idea of the shadowfolk with bows being like the shadowfolk version of fembots or some shit would be very amusing
I donât know why that came to mind
a profound silence has entered the chat
I think seasonal cute characters is editing over your krobus stuff
I mean nor am i but I still can

As intended, monsters true, Krobus false.
wait so what's not working?
this was to you, radical
what
But how could this be?
I don't remember it changing Krobus
Let me double check.
maybe seasonal cute characters has some planned krobus edits and it's still in the files?
your log says it is
yep, it does!
it seem that it can 
the logs donât lie đ
My logs don't lie, and I'm startin' to feel they're right.
Odd. When I found out Cat Valley and my emote mod were conflicting, the console told me so.
Not this time, though.
Hmm.
hm
These are config options, yeah?
mhm!
Well, then I'll just need to disable 'um.
could also set your priority to higher if you want your mod to override others
itâs because thereâs no conflict, youâre loading and theyâre editing
Mmmyeah, there's a Krobus portrait and overworld spritesheet. It's definitely the fault of the seasonal cuties.
Eh, either way, so long as theirs are disabled via config, everything should be alright.
I think. I hope.
it should! just maybe make a note that seasonal cute outfits has kroby stuff in your mod desc
or not. lots of mods edit krobus, itâs not really your problem tbh
OH also if you still want me to show you how to the i18n stuff I'd be happy to help!
I'll add a heads-up to check for anything that might interfere.
I'll take that into consideration for the future.
yeah, it just seems that mod users can be irritating about compat LOL
For now, I just want to test it out and hopefully update the mod tonight.
alr!
I'll let my future self worry about that.
this is why we say test on a minimal loadout though
Yeah, sadly.
Thank you, triple.
You lot have been quite helpful.
-# (wow i really do lack a life-)
You've saved the mod, as per usual.
This is quite possibly the most helpful server I've actually been in.
No matter when the channel was last active, at least one person immediately answers to your questions.
oh yeah it's awesome!
You dudes are like supercomputers.
hi ya'll, can someone help me figure out what's going wrong with this indoor window in the spouse room?
these are the map properties
tbh can't reccomend this discord enough
looks around awkwardly in newbie who has no clue what they're doing and can somehow pass as knowledgeable to some ppl(?!)
wdym going wrong, like you want it to have the light beam or what?
yeah exactly
otherwise... maybe no window and I'll test whether the player can place one
did you patch reload/exit and re-enter the location/sleep?
day/night tiles and light are weird, especially when cheating to test stuff
I keep trying to remember that about all the playtesting haha, events happening out of order and dialogue happening out of order because I keep manipulating time lol
spouse room windows tend to be strange because the day/night tile properties are actually set in the Farmhouse itself and not the spouseroom map.
The DayTiles and NightTiles map properties are cleared when loading the spouse room, so custom values for those properties won't work for married players.
There is a hard coded list of tile indexes that will automatically append to the day/night map properties which the spouse rooms do use
Ohh I see, that makes a ton of sense
so the window needs to just be in the spot where it's hardcoded to be
I'll look at the vanilla spouse rooms
More important that you just use the actual tile they use for those windows, based on what SinZ is saying
Its the vanilla tilesheet coordinates more than the actual tile
by tile I meant the tile in that spriteindex rather than the location of said tile on the map. đ
so the same one on the vanilla tilesheet, yep
also on the topic of spouse rooms- okay so basically I wanna make krobus's spouse room partially closed off bc I'm making them autistic and they need time alone- would it be possible to make a spouse room enclosed like that wish extra walls? or just should i straight up add a warp thingy (that leads to a new room where kroby spends his alone time) to the spouse room?
this actually makes a ton of sense, I was using the DE interior tilesheet so of course it doesn't match
Putting a warp in there does not seem easy
aww :(
I haven't tried personally, but warps in farmhouse in general are a pain, and that's before taking into account trying to put it in the spouse room
gotchaaa okay
maps for me are just a mystery in general
maps are some vauge higher power the mortal mind was never meant to comprehend
Farmhouse is the weirdest map in the game
vanilla bug/quirk, no daynight tiles in spouse room allowed
maybe u can just leave that spot blank
could potentially put a fake door on the top of the spouse room design and then make him invisible on certain days.
Elliott just goes invisible when he's on his book tour
I legit feel that way, making map adjustments and copy/pasting from one map folder to another feels like, like delicate surgery
that's wildly creative
oh, i didn't want to invisible them..
You can use the Tilesheetinator tiled extension to create Stardew Valley maps that work in-game without having to copy vanilla and modded tilesheets back-and-forth, rename files with a . in front of their name, edit maps only in the unpacked content folder or make symlink workarounds.
See the mod page for full installation and use instructions.
wait how tf does the default marriage schedule
lmao my follow up agony after fixing the window
i was thinking they spend a select amount of time in their room etc etc but HOW DOES SCHEDULE
cause even with csk idek how to define where in the farmhouse to put them-
hm sparrowfren since u have mmap as a dependency u can probably fake day/night tiles with a TAS and a light 
ohh and kroby also is only outisde on rainy days..
thats how the new glowing trees work
the lights (which r very hd) are a long lasting TAS
oh!! I might as well go all out if I'm going to make it required
i never attempted to use it for spouse room so uh, it might be haunted 
SDV scares me
(unless you're Krobus, which may be relevant to claude here lol)
oh god of course this bitch is even more complex-
no disrespect kroby you're my blorbo 
everyone knows there are 3 genders, bachlor bachlorette and krobus
yeah Krobus doesnt use the spouse patio
my gender is all of the above
Krobus doesn't want to be seen, he does not go outside on patio days.
i should try that ngl
He will stand on the porch tho
he doesn't even have a patio in vanilla right
nope
just doesnt like the sun
yep, just close enough to duck inside if needed, Button
Also Claude don't bank on CSK being 100% foolproof for married/roommated NPCs
oh ik lol, but better than vanilla
fuck if i know how to untangle marriage duties properly
In vanilla, Krobus expresses at one point that even though he's moving in, he doesn't want to be seen by the other villagers, so Krobus has some odd behaviors that are in keeping with that.
Have you tried marriage counseling
ahem.. CA.... if you ever wanna wholly redo the schedule thing that'd be nice-
PFFT-
i would usually pull a 'well in my mod
' here but no i have no clue how to fw the marriage schedule shit-
oh yea here is mentioned tree mod btw https://www.nexusmods.com/stardewvalley/mods/40491
it uses another thing (wild tree tile props) but in your case you'd use them as ordinary tmx TileData props on the spouse room
I wanna triple check https://www.nexusmods.com/stardewvalley/mods/2919 I can make an AT pack for this as long as I credit the author and no donation points, right?
Yeah
oh does AT still have the wallpaper bug
jank where it is not quite flush with bottom tile
hmm including the shadow? I will test.
i wish we could actually see files for mods without downloading
cuz sometimes i don't want to download a whole mod just to check something
It appears I am eligible for getting the dangerously cheesy Mod Author role.
Would anyone have the time to assist in these endeavours?
send dm to bouncer and review these instructions https://gist.github.com/Pathoschild/927aa919a95cf0ddae542749bc9d9847#am-i-eligible
So now I wait for someone to answer?
yea bouncer dm is mod mail just follow instructions given 
What are the instructions, exactly? Me meeting the two requirements?
did you send a private message to @outer glacier ?
Mhm.
someone will reply through bouncer yep
Stellar.
doesnt c come before u
does it count capitals as a separate letter
what's that from
its a wiki. you choose where to put the edit
technically it should be above radium then, right?
yes but which wiki
(in general. this wiki page in particular is meant to be alphabetical, but you still have to intentionally make it so)
the normal wiki
should be above radium yeah
though the list is already slightly inconsistent in other ways anyway
so i dont know how much the junimos really care
oh wow didn't know there's a wiki list of mod authors that's crazy
you have to be on this page in order to have the server role and decompile repo access (if applicable)
they are synchronized
(which is why you cant just add yourself to it willy nilly)
decompile repo access?
yes. mod authors of level 50+ can request access to a private GitHub repository that contains a cleaned up version of the decompile
oh...that sounds useful
its not source code, it is still the same decompile you could make yourself
but with a bit more work put into it so it can be recompiled or ran in debug mode or whatever and has the commit history to see changes across versions
same decompile with a bunch of manual fixes applied so it can recompile again
unpack and extra to actually extract the shader effects that the standard unpack cant do
quote sinz on it
New quote added by atravita as #6871 (https://discordapp.com/channels/137344473976799233/156109690059751424/1453552932980002867)
New quote added by atravita as #6872 (https://discordapp.com/channels/137344473976799233/156109690059751424/1453552898599551058)
@autumn tide Info about config because I saw you talking about it before: spaces are allowed but I recommend not using them because imo it's a better habit to be in to not put spaces in keys. Also, don't use the Description field because the description should be i18ned as well and you don't need the field to be present in the ConfigSchema for config.<name>.description to work as an i18n key.
ohhhhhh okay! good to know :)
that automatic i18n field is really cool!
Yeah it's super handy!
oh also happy christmas! it is christmas day for you right?
You can use it for values as well, though I found that the value IDs need to match the i18n if you want to be accessible for blind players because Stardew Access reads out the value rather than the i18n.
Yes it is, thank you and merry christmas for you as well :)
Oooh, nice!
So all i need to do here is just call the Game1.globalFadeToBlack(); before my warp back instead of wrapping it lmaoo, wtf
Excuse me, I have a question about a certain function. Someone told me that with a certain code or command I can track a specific word within the game and replace it with another without having to search individually in each dialogue.
I'm doing the change manually, dialog by dialog, but I don't understand how to do it with events.
The same way you do it with dialogue. Target the asset that the event is in, copy the entire event into your file, and change the name in each place in that event.
the way of doing it automatically and programmatically would be by writing a c# mod to replace all pattern matches on all data assets loaded
there's also a mod called ultimate villager manager (https://www.nexusmods.com/stardewvalley/mods/9271) that should do it for you
But there are some weird characters; I just need to change the word I want without moving anything else, right?
just to be clear this mod does it by meticulously finding every string in game and replacing them
oh
it is not compatible with any additional dialogue mod as a result
I really wanted to do some C# programming, but I was told it was very difficult. I've barely managed to understand .json files.
the closest thing to an existing mod that actually does what was described is https://www.nexusmods.com/stardewvalley/mods/28276
well to be fair any attempt at this problem is going to be incompatible with something
e.g. Sebby or seb or sebdog instead of sebastian
sebdog...
{
"LogName": "Maru Dialogue", //Dialogue changes for Maru
"Action": "EditData",
"Target": "Characters/Dialogue/Maru",
"Entries": { //Name change + Gender specific language.
"summer_Tue": ,
"summer_Tue4":
Hey, what's the code that works? Because since I've only changed the dialogue, I can't get any character to mention it to confirm that it works.
i mean that should work, i think (just, y'know make sure to actually write the dialogue)
you're missing some } though
You can use console commands to make them say a specific line. Like debug loaddialogue Maru Characters/Dialogue/Maru:summer_Tue
but i assume you just cropped it out of a larger snippet so the } probably got left behind
Yes, I removed the dialogue I had written and probably deleted it by mistake.
So with this I can make them say whatever I want? Or does it also work with the command I send?
What I sent was just so you could test your changes in game. You need the part you sent to actually make the changes.
aaaaa thank you
And by any chance, is there anyone here who would like to teach me how to write a C# mod? I'd like my mod to be compatible with others like STE.
STE?
We can point you in the right direction to find resources for learning C# but to ask someone to personally teach it to you is to ask a lot.
Yes, I know, but sometimes I get lost and I feel like I'm driving the people in this chat crazy, haha.
Okay, so how do you create a C# file? What's the difference between that and a JSON file?
You could try looking at the C# comms people and seeing if you could offer to pay them for lessons
JSON is a data storage format, it merely stores data in a specific format so programs can read it. C# is a programming language - you use it to write the programs that do things like read JSON file data (and everything else - Stardew Valley is written in C#).
ohh....
Usually when people say "ohhhh" they don't understand, is that what is happening for you?
No, it's just that I suppose it's difficult because we're talking about a programming language like Java?
Yep, exactly
:,v
how much experience do you have with programming
If you know Java already, learning C# won't be too hard
And with that type of mod, could I make my mod compatible with others?
Not really much, I know a little about Java and also Luau which is what Roblox uses, but honestly Roblox makes things much easier.
!yellowbook is a good resource
A good book for learning c# is https://www.robmiles.com/c-yellow-book
https://stardewvalleywiki.com/Modding:Modder_Guide/Get_Started for getting started making C# mods
https://www.nexusmods.com/stardewvalley/mods/28276 as I mentioned earlier is also a good reference mod, since it does almost exactly what you want (find every instances of an NPC name and do things to it)
okey
I'm going to try to venture into the world of C#.
If this blows up, I'm afraid I'll have to ask for your help again.
:,v
Start by following the tutorial Selph linked to get a simple C# mod working without trying to make it do anything to dialogue or names yet
Okay, the thing is, for now my .json mod only changes the character's appearance and name in dialogue boxes and menus.
So I haven't really accomplished much.
I'm not sure how that is related to what I said?
perhaps I misinterpreted it
It's because I don't speak English, well, it's not my native language.
I was just saying don't try to make the C# mod change any names at first.
That's why I'm having so much trouble understanding this; the help pages are in English, and things get lost when they're translated.
Just follow the tutorial exactly.
đ
It does sound really difficult, I'm sorry
Okay, I'll try it.
What's your first language, Mariel? a small number of the help pages were translated into Chinese
spanish xd
oh
should have guessed from the name, really
I can translate them without a problem, but sometimes the translation changes too much what it says or misinterprets everything, or if
let us know whenever that happens so we can both help you and improve the help pages
Hahaha, yes, it's classic for Spanish speakers to have biblical names, sometimes I hate it :,v
Okay, thank you very much for your help. I'll try to find tutorials in Spanish or something like that.
Hey can I get some help with an error in my mod, I keep getting the I can't load "- your mod because its DLL has no 'Mod' subclass." I followed the guide on the wiki but I don't know what the problem is.
Can you show what you've got? Ideally via github link?
I don't have a github link sadly, but I can put the basic code here
namespace Bebes
{
/// <summary>The mod entry point.</summary>
public class ModEntry : Mod
{
/*********
** Public methods
*********/
/// <summary>The mod entry point, called after the mod is first loaded.</summary>
/// <param name="helper">Provides simplified APIs for writing mods.</param>
public override void Entry(IModHelper helper)
{
helper.Events.Input.ButtonPressed += this.OnButtonPressed;
}
/*********
** Private methods
*********/
/// <summary>Raised after the player presses a button on the keyboard, controller, or mouse.</summary>
/// <param name="sender">The event sender.</param>
/// <param name="e">The event data.</param>
private void OnButtonPressed(object? sender, ButtonPressedEventArgs e)
{
// ignore if player hasn't loaded a save yet
if (!Context.IsWorldReady)
return;
// print button presses to the console window
this.Monitor.Log($"{Game1.player.Name} pressed {e.Button}.", LogLevel.Debug);
}
}
}
I'm pretty new to this lol
I'm still pretty new to C# myself unfortunately, but I can see that you didn't copy and paste exactly from the tutorial
Why don't you try doing that and see how that works?
You're sure you saved and rebuilt it?
Yes
Can you show me a screenshot of your installed nuget packages, please?
Wait, your project is a Visual Basic one
It needs to be C#
I think you set up your project incorrectly
Did you follow this? https://stardewvalleywiki.com/Modding:IDE_reference#create-project
And make sure that you didn't select Class Library (.NET Framework) ?
The VB one appears to be right below the C# one so I think you clicked that by mistake
No worries, I hope that fixes it!
Thanks again
đ€ can we target specific lines in events with TextOperations or no?
since i know you can do it with gift tastes, i thought maybe it might work for events, since they both have those slashes
sure, you can use text operations on any text
since event lines are slash-delimited just the same way as simple data entries like fish and gift tastes, it'd be exactly the same setup as for those
You don't count for text operations, you specify the delimiter and then the value to search for between the delimiters
really? I had to count đ€
but maybe im confused at what you're talking about
Are you doing replace delimited?
What kind of TextOperations patch are you doing?
i want to replace specific lines of dialogue in an event
...actually it might just be better for me to edit the entire event

now that i'm thinking about it
can you edit one line from an event?
I personally prefer to use ReplaceDelimited rather than everything the whole event
Yes you can
I helped someone edit just one sentence inside a speak command, even.
Forsy if you're trying to replace specific lines but you don't know what ReplaceDelimited is... I'm not sure you're actually doing TextOperations
Because you have to literally write "ReplaceDelimited" as the Operation
no it's just that i'm dumb đ
You forgot that you'd written it?
You can replace commands by counting the fields btw but you don't use TextOperations for that, you use Fields
im too busy thinking about editing gift tastes with that
so i confused myself
and didn't realize what you were talking about even existed
I see lol
speaking of gift tastes, the way to add specific ones for NPCs is to edit their dialouge and use AcceptGift_<id> right?
That's to give them specific responses, it doesn't affect whether the gift is loved, liked, etc
Though you could make the taste for the item neutral and then use an action in the dialogue line to add friendship points - but they wouldn't get any bonuses for birthdays that way
thank you! already set is as hated/loved etc just haven't added the dialouge for it yet.
oh, interesting. don't think i'd do that but good to know
sorry in advanced if this is a FAAQ but, does the sdv modding wiki show you how to get the unpacked sdv files for sprites, ive looked it up but cannot find it. If not could i have some help with that here ?đ
!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!
thank you
what is the difference between the two?
for context i would like to make and play sdv mods
i don't think its for regular mod authors
the one for developers logs a bit more info, its unlikely youll need that
SMAPI for developers isn't generally necessary, yeah
it just flips this config option to true
/**
* Whether to enable features intended for mod developers. Currently this only makes TRACE-level
* messages appear in the console.
*/
"DeveloperMode": false,```
its also just a config change afaik
ohh I see, good to know
I know its xmas so not expecting a response - but can anyone give me an example of using MMAP to make a window work in a custom spouse room (and/or making the wall decoratable so people can place their own windows? I'm almost giving up on putting light in the room at all
thats why i dont have any windows in my spouse room
only the light tile from path layer
I'm not at the puter to give detailed example but here's the 2 things involved:
You can add a WindowLight context light with https://github.com/Mushymato/MiscMapActionsProperties/blob/main/docs/tile-properties.md#front-or-back-layer-mushymatommap_light-radius-color-typetexture-offsetx-offsety-lightcontext- and that causes them to behave like windows for nighttime and rain(i think?)
Then to make the glowy thing you can use https://github.com/Mushymato/MiscMapActionsProperties/blob/main/docs/tile-properties.md#back-layer-mushymatommap_tas-tasid-
You can make it only appear with windows using condition mushymato.MMAP_WINDOW_LIGHTS
im trying to adjust blinking rate and i cand decide if 1 blink or 2 blinks per loop looks good. the raichus do 2 blinks, the pikachu does 1 blink. opinions?
this clip is longer than it needs to be, my monitor blinked off and i had to wait until it came back on lol
Can't plant Cornucopia crops (kiwi, blackcurrant, gooseberry and the two grape types) on Ginger Island. Was winter during the time of incident. No out-of-season messages, only random planting noises and nothing else changing.
https://smapi.io/log/36cb63988e004f348d3e7bb5b867bb6d
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26100.0, with 103 C# mods and 181 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
idc!!!!
Saplings and winter roses planted successfully, though.
But that's as to expected, since one could do the exact same on the mainland.
Do I simply wait for the season to be over?
i believe there is no winter on ginger island
shouldn't be
???
ginger island should not stop u from planting crops ever
I mean, it let me plant the others, just not those ones.
this shouldn't be happening
I'd check it in spring, but I'm:
- Low on time;
- Need to download a crap ton of mods to start the ingame year.
Anyone have a cheat sheet or examples of different ambient lightings?
For events?
One question: does this code change the character's dialogue but work for any language? Or do I need to specify the language since my mod is in Spanish?
{
"LogName": "Maru Dialogue", //Dialogue changes for Maru
"Action": "EditData",
"Target": "Characters/Dialogue/Maru",
"Entries": { //Name change + Gender specific language.
"summer_Tue":
"summer_Tue4":
},
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.
ammmmm
okey wait
That's a "I already made a mistake," right?
@rough lake You leveled up to Cowpoke. You can now speak in our voice channels and share images in all channels!
who is that for, bea?
:,v
the first thing is that format should be 2.8.1 not 2.0.0
no its an answer to the language question
My apologies, I created the file a long time ago and forgot to change the version.
this doesn't answer the question that was asked.
mariel, yes your edit will apply to all languages, and you shouldn't use those tokens to control dialogue
you should use something called i18n instead
look at em all wigglin'...... this mod is done for now, it's been updated on the nexus. now i have to figure out my hitmarkers
i mean, do they want it to apply to all languges
there's also a syntax issue, hold on
Missing a } before the final ]
Ah, I knew the ending looked weird.
thanks jajaja
i guess im unsure what they meant
Um, how do I do that? What I'm trying to do is change a character's name in dialogues, events, locations, and objects, and since my language is Spanish, I'm obviously doing it for my version; it's not a translation.
you're just editing a vanilla dialouge right
this should be fine but it will apply to all languages. are you planning on publishing this mod?
That's what I'm doing, but the code I'm using is correct?. I based it on another mod, but that other mod is in English.
do you want it to only edit the dialouge when its in spanish?
Version 1, which only changes the appearance and the name in the menus, is now available.
And it works for events too, I think; I just need to change the "Target": "Characters/Dialogue/Jodi" value to Data/Events/
what you should do is add something called i18n, which lets other people make translations for your mod
there's a website that can help you do that
uh what's the command
for events it's a bit more complicated
ohhhh
!i18n
So you'd like to stop writing all of \"your strings straight in your content.json?\" and/or you'd like the capability to see all of your strings across all of your .jsons?
Introducing i18n!
-
How to make your mod compatible with other languages: stardewmodding.wiki.gg
-
The file where you can put all of your strings is called default.json, and it sits in a folder at the same level of your assets, named "i18n".
-
If you're converting from an older version of the game, there's a converter for ease-of-access.
Not to be confused with
{{DynamicTokens}}since these require the specific{{i18n:<KEY>}}modifier
:,v
I believe this is for events, replacing the location and the event.
"LogName": "Saloon Dialogue",//Dialogue Changes for the Saloon Events (10 heart and evil route)
"Action": "EditData",
"Target": "Data/Events/Saloon",
"Entries":
and I just need to copy the entire event and replace the word I want
Hello, I just released an update for my first mod. If anyone can announce it, I would appreciate it. I'm close to releasing the final version with everything I've planned.
https://www.nexusmods.com/stardewvalley/mods/26447
ummmm
The mod finally works, but now I have a problem that I don't know if it was my fault.
I managed to change his name in the dialogues, but sometimes when I talk or interact with others, the game appears in English.
did you touch any strings or CTs
I don't think so, only what appears in my .json file that I sent.
Is your game language set to English on the main menu? Your edits don't have any "When" conditions, so they'll be active in any language setting.
My game is in Spanish because that's the language I speak.
I'd recommend checking anyway, but if it's still set to Spanish, try removing other mods, or temporarily remove yours. Nothing in your uploaded file can change the other dialogue's language.
I just noticed that it only happens with some dialogues or texts; I've already spoken to several villagers, including Vincent, and his other dialogues seem to be fine.
I only have these installed and none of them interfere with the language.
that might be the issue? certain dialogue is in strings or get triggered with certain conversation topics, so you gotta find the ones for the NPCs too
might have something to do with ultimate villager manager?
it does, yeah, Villager Manager makes unconditional english dialogue changes
(a more recent comment from the author also says this)
took a bit to search because it tokenizes names and such, but that example is in it
"Sat_1": "{{KentParentUC}}'s coming back soon!#$b#I hope {{KentGenderLC}} brings me some toys.$u", ```
ahhh
But then the problem isn't with my mod?
the English lines are because of Villager Manager, yes
your mod would do similar things (show Spanish lines for players in other languages), but it's fine otherwise
Ah, okay, thank you so much nwn
They told me I should do an i18 but I can barely figure out what the heck I'm doing with my mod haha
yeah, that part's a bit more complicated, just saying "only use this if you're playing in Spanish" is fine
Let me see if I understand. i18 involves placing all the text in a separate .json file, and then placing the commands in the main file, which is content.json. For example:
"LogName": "Dialogue Jodi",
"Action": "EditData",
"Objective": "Characters/Dialogue/Jodi",
"Entries": {
"dating_Sam_memory_oneday": "{{i18n:jodi.dating}}",
How do I connect these to i18 and allow other players to translate into their respective languages?
I think I misspelled what I said last, it's
And that's how I connect this to i18 and allow other players to translate it into their respective languages
yes, {{i18n:jodi.dating}} gets replaced with the appropriate text from a translation file in the SamToFang 1/i18n folder
if the game is set to Spanish, it should use the text from es.json, or default.json if that doesn't exist
and those i18n files would just need to contain something like this
{
"jodi.dating": "write your text here"
}```
It's placing, for example in this case, Jodi before the event name, like this: "Jodi.dating_Sam_memory_oneday":
And this is what goes inside the content.json file: {{i18n:jodi.dating}}
"dating_Sam_memory_oneday" should stay that way whether you use i18n or not, the i18n key doesn't need to be there
..okay shop ppl- is it possible to make a custom PriceModifiers thingy?
(pls @ me when replying bc i'm gonna go do something else rn lol, curious for future modding purposes)
Is ur maffs more complicated than + - * /?
no lol, I just wanna make sure i'm not accidentally delving into hardcoded territory-
The answer is that u can combine multiple price modifiers but making custom one in C# is a bit of a pain
Look at item spawn field
oh, I meant for the whole shop? I made this thing lol
I forget if this one is also a list (it sounds like it?)
The principal is the same tho
gotchaaa okay
Am not at my puter so I'm just trusting you when you say this field exists 
wiki does say there's a shop pricemod and a per-item pricemod
just yoinked it from pierre's shop
and quantity modifiers are all lists since they share code iirc
(not quite sure what the question here is, though)
tbh i've kinda lost track too- /hj
i was just worried that the price modifiers field was somehow hardcoded bc I only saw it for the seedshop, but it looks like it's not?
got it, tysm!
does anyone know how to make a shop menu display after all dialogue has gone through? i was looking to make similar to how krobus' shop works and i'm stumped lol
Sounds suspiciously like a job for C# or a framework
$action + betas' open shop action, probably
https://stardew.button.gay/docs/betas/tractions#OpenShop
unless that would happen before it ends? I'm not sure if there's a post-dialogue trigger (or a need for one)
that means the key doesnt match
what's your i18n file look like
you have a stray } at the end
it shows it at the end of the dialogue, so that bit works! my only issue is that i can't re-trigger the shop after
I think you also need the trigger action to reset the dialogue
Am I missing one or do I have one extra?
one extra
every { must have a matching }, and you can count them
see the json validation error in the link you posted
that means the file is invalid
try this: in your last dialogue segment that opens the shop add a SetNewDialogue command that sets it to a dialogue that opens the shop + SetNewDialogue again
if you're not using a text editor with syntax highlighting you should
yeah i recommend switching
Which one do you recommend?
!software
Here's a list of software for pixel art and JSON text editors we recommend: https://gist.github.com/ishanjalan/c8efb21afa21f74a052293176db107f7
For making SMAPI (C#) mods, see the Requirements section here for which IDE to install https://stardewvalleywiki.com/Modding:Modder_Guide/Get_Started#Get_started.
notepad++ is good, so is visual studio code
(hmm we should update that link, Atom is kill)
The SetNewDialogue command doesn't seem to be working for me. could it be the format of this line? đ
"Tue": "Hi. #$action Spiderbuttons.BETAS_OpenShop SeedShop #$action Spiderbuttons.BETAS_SetNewDialogue {{ModId}}_Pal \"quote\" true",
try reversing the order of the commands
possible that the opening of the shop, which erases the current menu in favour of a shop menu, prevents the dialogue box (which is a menu) from doing any action that comes after, since it is being forcibly closed
It seems that the dialogue isn't being added despite me rearranging the order
One question: for the dialog files that come with the MarriageDialogueSebastian documentation, how should I write them in the content.json file?
{
"LogName": "MarriageDialogueSebastian Dialogue",
"Action": "EditData",
"Target": "Characters/Dialogue/MarriageDialogueSebastian",
"Entries": {
Something like that?
anyone know how to make a custome map location
i really need help with it
no videos work
Read this page starting from the top. It has instructions for how to make a new map and location. https://stardewvalleywiki.com/Modding:Maps
Yes that looks right
Another question to link the change in the event dialogs in the i18n co, is the content the same as normal dialogs?
I mean, is this same format used or is a different one?
"{{i18n:caroline.AcceptGift_(O)16}}",
You always use the format {{i18n: <key here> }} (except for ConfigSchema). You decide what the actual key is - it doesn't matter to Content Patcher what the key is as long as it matches between the i18n token and the i18n file key.
And what should be placed within the {{i18n: <key here> }} for the program to localize the translation? in the case of events
Anything you want.
As I said, you decide what the key should be.
It just has to match between your Data/Events/<Location> file and your default.json (or es.json if you're writing yours in Spanish)
Would you like an example of what I mean?
That's just how events look.
yes pls
Okay, hold on a moment
not helpful page does not have content json
!startmodding Use the link about the tutorial for Content Patcher to learn how to make a basic mod. And please don't be rude to people who are trying to help you.
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.
i was just sayimg i dont understand it did not mean to be rude sorry
Saying please and thank you helps for not coming across as rude :)
Ok here is an example using a few lines from this event that you showed me. You do not have to use event.45.lewis.# as your i18n key, that's just how I do mine so it's easy to use the key to see what is happening. The important part is just that your patch editing Data/Events/Town has i18n keys that match what is in your es.json.
// content.json
{
"LogName": "Edit Sam event",
"Target": "Data/Events/Town",
"Priority": "Late",
"TextOperations": [
{
"Operation": "ReplaceDelimited",
"Target": ["Entries", "45/f Sam 1500/t 1200 1600/w sunny"],
"Search": "speak Lewis \"ÂĄEy! ÂżAdĂłnde crees que vas? ÂĄEsto es propiedad privada!$4\"",
"Value": "speak Lewis \"{{i18n: event.45.lewis.1}}\"",
"Delimiter": "/"
},
{
"Operation": "ReplaceDelimited",
"Target": ["Entries", "45/f Sam 1500/t 1200 1600/w sunny"],
"Search": "textAboveHead Lewis \"ÂĄSam!\"/",
"Value": "textAboveHead Lewis \"{{i18n: event.45.lewis.2}}\"/",
"Delimiter": "/"
},
{
"Operation": "ReplaceDelimited",
"Target": ["Entries", "45/f Sam 1500/t 1200 1600/w sunny"],
"Search": "speak Sam \"Uh... Eh... Yo... Lo siento, señor.$8\"/",
"Value": "speak Sam \"{{i18n: event.45.sam.1}}\"/",
"Delimiter": "/"
},
]
}
// es.json
{
"event.45.lewis.1": "ÂĄEy! ÂżAdĂłnde crees que vas? ÂĄEsto es propiedad privada!$4",
"event.45.lewis.2": "ÂĄSam!",
"event.45.sam.1": "Uh... Eh... Yo... Lo siento, señor.$8\",
}
(I'm happy for you to keep asking me questions about it until it makes sense for you, @rough lake
)
oooooo
I think I've got it now.
I'm going to try it, hoping my mod doesn't explode.
jajajsajs
If you're wondering about the TextOperations, it's how to edit an event without making it completely incompatible with other mods.
ammm
If you make sure your mod runs later than other mods, you will be able to change the dialogue even if the other mod has edited the event, as long as they didn't change the dialogue itself. You could do that if you replaced the entire event using EditData too, but then you'd replace the whole event with the vanilla one.
Do you know how to change the names of objects or locations? I need to change the name of, for example, "Sam's house" to "Fang's house"
And how do I make sure the mod will run late?
Where in the game does it say "Sam's House"? (Asking because I can't remember)
location data has a display name field
I'm not actually sure if it's used anywhere visible in the unmodded game
I just edited my example to add the "Priority": "Late" line that will make your edit run later than most mods (not guaranteed that it will be later than all of them, but we can face that if we come to it).
Yeah lol that's why I was asking rather than just assuming it was the Location data in case they meant somewhere else haha
I think that's the name of the location on the map "Sam's house" although it actually says something like "Sam, Jodi, Vincent and Kent's house"
if you unpack the files and look at Data/Locations you can see the field in question
{
"Action": "EditData",
"Target": "Strings/NPCNames",
"Entries": {
"Sam": "Fang"
}
Does the one I use change its name in the menu and dialog box, also on the map?
though in this case they are all pointing to Strings/StringsFromCSFiles so you can just edit that the same way you edited all other string-string dictionaries
how to do so is left as an exercise to the reader
"MapPage.cs.11072": "Home of Jodi, Kent & Sam", smh this is vincent erasure /lh
No, it looks like you will need to go to Strings/StringsFromCSFiles and find any mention of Sam in there and change it
Just came back nd i dont really know much, how do I make this rotate?
here's my snippet:
"counter_1/table/1 2/1 1/2/0/2/{{i18n:illulen.tns.counter_1}}/0/Mods\\{{ModId}}\\counters",
It doesn't seem to change sprites
still cant find the content json for adding a map into stardew valley i have the map made but cant load it in
This page is linked to on the page that I sent you before: https://stardewvalleywiki.com/Modding:Location_data#Examples
how do i fill in the blanks {
"Format": "2.8.0",
"Changes": [
// add location data
{
"Action": "EditData",
"Target": "Data/Locations",
"Entries": {
"{{ModId}}_ExampleCave": {
"CreateOnLoad": {
"MapPath": "Maps/{{ModId}}_ExampleCave"
}
}
}
},
// add the map file
{
"Action": "Load",
"Target": "Maps/{{ModId}}_ExampleCave",
"FromFile": "assets/map.tmx"
},
// add a warp from another map
{
"Action": "EditMap",
"Target": "Maps/Town",
"AddWarps": [
"29 67 {{ModId}}_ExampleCave 0 30" // warp from town (center of plaza) to custom location (tile 0, 30)
]
}
]
}
By reading the information on the pages so you understand what each part is doing
does not explain it
Yes it does
i dont see where
How do you think I learned to do it?
i dont se the info
Content patcher docs tell you how to edit data. Wiki tells you where the data is and what it means. Combine them and you can teach yourself almost anything
Try reading this tutorial: https://stardewmodding.wiki.gg/wiki/Tutorial:_Map_Patches_and_Warps
But youre unlikely to get a step by step hand holding how to make a mod here or there
That looks right to me, but I also remember there being something in the code where the internal name needs the words "End Table" in it for some purpose to do with end table function, so maybe try just adding that in briefly and see if it changes anything? I wrote it down somewhere but I can't remember where I put the info 
honestly your data entry looks good to me. are the furniture data and sprite assets in your mods folder the latest versions? is your spritesheet size a multiple of 16 in each dimension?
i still cant fiure it out been trying for three days
i also wrote some notes on rotations the other day but i don't have them handy, something does use the words End Table somewhere though
would i just paste this or... {
"Format": "2.8.0",
"Changes": [
// add location data
{
"Action": "EditData",
"Target": "Data/Locations",
"Entries": {
"{{ModId}}_ExampleCave": {
"CreateOnLoad": {
"MapPath": "Maps/{{ModId}}_ExampleCave"
}
}
}
},
// add the map file
{
"Action": "Load",
"Target": "Maps/{{ModId}}_ExampleCave",
"FromFile": "assets/map.tmx"
},
// add a warp from another map
{
"Action": "EditMap",
"Target": "Maps/Town",
"AddWarps": [
"29 67 {{ModId}}_ExampleCave 0 30" // warp from town (center of plaza) to custom location (tile 0, 30)
]
}
]
}
Yes, just paste that in and then change it as you need to
what do i change?
Use the info on the many pages I have sent you already to work that out
they dont tell me i dont know what to do
!comms If you want someone else to make a mod for you, go find someone who is taking commissions and pay them for it.
If you're looking for people who do mod commissions (either art or code), here's a wiki page with a non-comprehensive list of people who do them: https://stardewmodding.wiki.gg/wiki/Stardew_Mod_Commissions
I've already told you that those pages have the information that you need.
what would i fill in
Tried changing it to a dresser and worked it probably was ythat
but now you can't put items on top, and you can store clothes inside
yeahh ill check again in a bit just having lunch atm
incidentally you'll want to include your {{ModId}} token in the item name
I'd try using an EndTable or End Table internal name rather than counter
furniture rotations all follow ridiculously specific rules per furniture type and name
maybe thatâs not his true home. @ dolphin add to svexplained please /lh
the streets are his home.
Vincent owns a villa just outside of zuzu city he just stays at his mom's house for the free food
still cant get this to work
Can you be more specific on what exactly youre trying to do and which part is tripping you up? All this vagueness really makes it sound like unwillingness to try at all
(It is unwillingness imo)
hiiiii there!
so i'm not entirely sure where i should insert this question of mine, & i do apologize if this isn't quite the correct place, but um... would it perhaps be feasible to commission a mod artist to update an older mod (which isn't mine) & make it fully compatible for 1.6? it would be solely for my own personal use, of course :')) i've just been trying to do so myself with this mod in particular for hours on end, but still to no avail........ therefore, it is admittedly starting to drive me off-the-walls freaking bonkers!!!!!! 
What mod is it? The answer depends on the permissions.
it would be the "project yellog town overhaul" mod, by @/YriKururu on nexus.
How do i store an item in a static memory? Lets say i want to bring an item from Save A to Save B, i did it with money but how about items?
I don't think you can update that
I think the concept of personal use gets stretched if the art is shared or especially if itâs commissioned
so youâre back to needing permission
Yri's permissions are closed, as far as I know. And Yellog's as well
There is a way: the person updating it doesn't touch any assets
If it's possible to write the mod such that the user can drag and drop the existing assets into it (or drag and drop the new json into the existing mod) then it can be updated without any asset sharing
But that would make it impossible to "fully" update the mod to account for new tilesheets, wouldn't it?
The person with the assets would need to make their own, personal use, updates to the new tilesheets.
So if they weren't able to do that, yeah, it would make it impossible.
Looks like it's not on Nexus anymore, so you'd be limited to getting help either only from people who already own the mod, or making placeholder assets that the updater could use to write the new json around
i can't think of anything stopping you from referencing a static Item instance, though fields like the owner, location, etc will obviously not be transferable between saves. what's the goal?
Oh boy your profile is really NSFW, that's against the rules here
Yeah just double checked, it won't rotate properly (front and back) unless it's more than /1 1/ in width for a table that is
had to be decor
The goal is like a global chest where different saves can access it, for now im using a static variable cuz i still dont know how to make a persistent storage
but decor can't have items placed on top
honestly just copy the naming scheme of the vanilla end table furniture and it should work
including your ModId token as well, of course
you'd probably use global data for this, which should be simple given items are easily serialisable:
https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Data#Global_app_data
you'd just have some public class BankAccount { public int Money; public Inventory Items; } data model to store your stuff
and you'd just read and write from the data file whenever you access your bank
I'm having an issue where in the host, Game1.player.team.SetIndividualMoney(), doesn't actually work when the existing farmhand hasn't entered the host server yet, but as soon as they have joined once and have left, it will work as intended. Is this normal behavior?
Thanks for this! I did manage to store an item by storing its id and transfer it to a different save
https://github.com/kazutopi1/Mods-Snippets/blob/main/TransferItem.cs
it should be fine to serialise the item instance itself, not just the id -- it'll be important to save quality, quantity, custom fields, moddata, preserved sheet index, parent item, and so on
for example, if you bank 100 iridium grape wine, you'll only unbank 1 generic wine
I have a suggestion... But otherwise, yeah, what maya said: copy one of the vanilla end tables
thanks nwn
oop sorry just uploaded the mod @_@
the vanilla end tables were listed under decor, tho u can stack on it not sure how it does that
I think you might have misread something because the vanilla end tables are table, not decor
ah right, my bad i accidentally forgot it's different in the files even then copied the stuff still doesn't rotate đ
for reference: ```C#
bool flag = (IsTable() || furniture_type.Value == 12 || base.QualifiedItemId == "(F)724" || base.QualifiedItemId == "(F)727") && !base.name.Contains("End Table") && !base.name.Contains("EndTable");
.
Like we mentioned, you need the words "End Table" in the internal name for it to rotate properly when it's an end table.
Oh good it can be "EndTable" instead
wtf is that reaction lmao
yeah, furniture rotation is fucked
okay this is on me, it was the case sensitivity đ
Had Endtable for some reason
We should've warned you it was case sensitive, sorry!
It really is ridiculously specifically hardcoded lol
it would be lovely to decouple all the furniture types and rotations for 1.7
we can dream
definitely the type rotation sourcerect behaviours drove me a little mad last i tried using them
on the other hand, having it all be arbitrary and specific for every existing furniture entry sounds annoying
again, I have a suggestion
we can dream
Is there a way to make a one time note show up somewhere? like, a conversation topic in an event makes it show up, but once it's been read it goes away?
Hey everyone, I didnât quite understand what the difference is between using AliasTokenNames and DynamicTokens.
For example, to replace
"Strings\schedules\{{ModId}}_NPCNameCan
I use AliasTokenNames, or do I need to use DynamicTokens?
I honestly didnât understand much of the difference between them. Could someone please explain it to me?
what are AliasTokenNames? can't say ive heard of them
Aliases are just to let you use a shorter name for your token
I've never actually seen anyone use them
Probably because we don't really have long token names for the most part since 1.6 with things like JA and DGA not being current anymore.
You need a dynamic token if you want to use that as a value, but you're only going to be using that value once in your whole mod (and don't even need to use it at all, actually), so why bother?
New quote added by atravita as #6877 (https://discordapp.com/channels/137344473976799233/156109690059751424/1454025880769790024)
Hm, Iâm not sure I understood.
In Schedules, for example, Iâm going to use multiple animations that start with {{ModId}}_name1_(actionID), and multiple dialogue entries that are Strings\\schedules\\{{ModId}}_name1:(dialogueID).
And I have this for several NPCs Iâm going to create, each one with multiple schedules.
From my perspective, it would be useful to create an AliasTokenNames or a DynamicToken where {{name1}} would be equivalent to {{ModId}}_name1, replacing {{ModId}}_name1_(actionID) with {{name1}}_(actionID). Likewise, {{Strings_name1}} would be equivalent to Strings\\schedules\\{{ModId}}_name1, replacing Strings\\schedules\\{{ModId}}_name1:(dialogueID) with {{Strings_name1}}:(dialogueID).
Does that make sense? Is there another, easier way to do this?
Ah yeah that makes sense, I forgot about using it in the schedule itself. Yes, it needs to be a dynamic token, not an alias. But you don't need to edit Strings/schedules for this, you can just add your dialogue to your NPC's regular dialogue file and use that instead.
I would personally make a json snippet in my VSC settings rather than cluttering up my mod with a dynamic token just to give myself less writing, but I know others do it.
It makes sense! And how do I usually reference that file inside the schedule?
Ah, perfect! Either way, I think it would also be useful to use snippets or DynamicTokens for this.
Thank you very much, everyone!
ok so im working on a wheelchair bound romanceable npc and im noticing the farmers house isn't really accessible? how would i go about addressing that? suspension of disbelief?
also he cant really stand. for the kiss animation
maybe the Wizard installs a 'warp' button/lever on the wheelchair?
yknow i honestly forgot the town has the local wizard.
my dad was in a wheelchair and we figured out a bunch of ways to diy accessibility
wooden ramp on blocks up a step, installing a button on his wheelchair so that he can open the garage door with the press of a button...
maybe even wheel tracks around the side to imply there's a wheelchair entrance through the backdoor
ok cool
dialogue could imply a lot
side note but we also diy'd him a video game controller, we wired up giant buttons in this big wooden box by taking apart a gamecube controller, and then an extra trigger button that he could hold in his mouth and press with his tongue
he was quadriplegic, so very limited shoulder/neck movement, but man my dad could kill at mario cart
Silly mode the wheel chair is actually chair with chicken legs baba yaga house style and can run up stairs no problem
the wizard installed a "special feature"
Hello! There's lots of random info in the pinned messages and such in this discord so I am getting a bit lost and overwhelmed; is there an idiots guide to creating new mods for SDV that y'all recommend? Specifically creating new maps and new NPC's? A YouTube series would be great, but any info at all would also be wonderful!
I have been playing modded games forever, but am getting more and more interested in creating my own and have no idea where to even begin (other than making some pixel art)
!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.
here you go
SV modding youtube tutorials are mostly outdated (long to make, impossible to maintain, often not a very good teaching tool), so look for written documentation and tutorials
you'll want to look into Content Patcher, read its documentation, and try out how it works. People here will be happy to help you if you have any question about it
I think there's a NPC specific tutorial but I don't know the command to show it, you'll have to wait for someone else to come by
what would the name of this location be {
"Format": "2.8.0",
"Changes": [
// add location data
{
"Action": "EditData",
"Target": "Data/Locations",
"Entries": {
"{{ModId}}_ExampleCave": {
"CreateOnLoad": {
"MapPath": "Maps/{{ModId}}_ExampleCave"
}
}
}
},
// add the map file
{
"Action": "Load",
"Target": "Maps/{{ModId}}_ExampleCave",
"FromFile": "assets/map.tmx"
},
// add a warp from another map
{
"Action": "EditMap",
"Target": "Maps/Town",
"AddWarps": [
"29 67 {{ModId}}_ExampleCave 0 30" // warp from town (center of plaza) to custom location (tile 0, 30)
]
}
]
}
Ahhh I hadn't seen the "getting started with C# modding" page before! That's hopefully the level of idiot that I needed! Thaanks! đ
there's a very good chance that you don't need C# though
!embedcode
You can embed code in Discord using a series of three ` :
```
Your code can go here
Even if not a haiku
Just an example
```
For syntax highlighting, add the language code on the same line as the first
``` (with no space, like ```json).
The usual codes are cs (C#) and json.
anyone know what the name of this location would be
please format your code properly.
other than that, no idea what you're talking about
{
"Format": "2.8.0",
"Changes": [
// add location data
{
"Action": "EditData",
"Target": "Data/Locations",
"Entries": {
"{{ModId}}_ExampleCave": {
"CreateOnLoad": {
"MapPath": "Maps/{{ModId}}_ExampleCave"
}
}
}
},
// add the map file
{
"Action": "Load",
"Target": "Maps/{{ModId}}_ExampleCave",
"FromFile": "assets/map.tmx"
},
// add a warp from another map
{
"Action": "EditMap",
"Target": "Maps/Town",
"AddWarps": [
"29 67 {{ModId}}_ExampleCave 0 30" // warp from town (center of plaza) to custom location (tile 0, 30)
]
}
]
}
still not embeded... no need to post it again, just edit your previous message...
the name i typed is {{ModId}}_ExampleCave but i warped there and nothing
so what is the name
!json
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.
It's even easier if you put the code in there and then link it
However the first thing I would look for is an error in your SMAPI log, as it's possible your location isn't being loaded because of an issue with your map tmx file @terse spruce
helloooo i have returned with map questions, what should object layers (the ones with tile actions) be named? does it matter?
They need to match the target map layer. For example, tile actions for the Buildings layer would need to be on an object layer named Buildings.
For you Windows wizards, I've had some player issues with people using Windows NT not having event commands work, specifically "setDating". Both players who were kind enough to send their logs have very few mods, none of which would interfere with relationship status. Is this a limitation with that version of Windows?
There's no setDating event command in the base game; is that added by a mod?
Oh really? I was misinformed, haha! I'll dig further into that one, it must be part of a mod that I have loaded on my test saves so that narrows it down quite a bit!
If you have SpaceCore installed, looks like it adds that command.
Yeah i was just about to say, SpaceCore is the one that supports that command. I looked at when making mine
OH! Awesome, thank you! And that's a requirement for my mods anyway, so the players were missing that one.
You can add it as a dependency in your manifest, so players will get a friendly error if they forgot to install it.
I'll add it as a required dependency. đ
Oh hey you're back! Thanks Pathos 
(Not fully back yet, but we're back home and unpacking now!)
Just remember to take time for yourself 
I try to make a custom bush, but once I tie the seeds to Custom Bush, the seeds no longer exist in the game.
did you keep its Data/Objects entry
Yes. I tried to change the ID and type of the item, but the game still doesn't see the object. https://smapi.io/json/none/83fd6a0decfd4c5a94c5b73b59803913
idk if this is the issue but did you mean to put assets//Items/âŠ
what would be my location name?
or how do i add a new map location
you were given this advice earlier
yes they did. look at the message i just replied to
we cannot hold your hand and walk you through every step, especially if you donât show any initiative or desire to learn
i just need a content.json to paste to test out there are no vieos
and it doesnt show up in cjb item spawner?
maybe triple check that the mod's being loaded
the wiki is the most up to date resource we have. you should first check your log to see if there are errors in how youâre adding a new map and location
!log can you please share it so we can see
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:
- Open this page: smapi.io/log.
- Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
- 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.
ok
my content json {
"Format": "2.8.0",
"Changes": [
// add location data
{
"Action": "EditData",
"Target": "Data/Locations",
"Entries": {
"{{ModId}}_ExampleCave": {
"CreateOnLoad": {
"MapPath": "Maps/{{ModId}}_ExampleCave"
}
}
}
},
// add the map file
{
"Action": "Load",
"Target": "Maps/{{ModId}}_ExampleCave",
"FromFile": "assets/Map.tmx"
},
// add a warp from another map
{
"Action": "EditMap",
"Target": "Maps/Town",
"AddWarps": [
"29 67 {{ModId}}_ExampleCave 0 30" // warp from town (center of plaza) to custom location (tile 0, 30)
]
}
]
}
thatâs not your log. please follow the instructions governor sent
debug warp {{ModId}}_ExampleCave
[game] No location with name {{ModId}}_ExampleCave
thatâs not your log. please follow the instructions governor sent
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26200.0, with 2 C# mods and 0 content packs.
you donât have content patcher installed, so your mod isnât loading
That's the thing - the mod is loading. But the data from this file is not displayed in the game. Maybe the game bans files with the following names: Items/Bush.json, Bush_Sapling?
very much not the case
what's your content.json
still not working
https://smapi.io/json/none/e05fa58a6ffc49e5a77e6ae637916612 Everything else works
if you installed content patcher and tried again, then please send another log
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26200.0, with 3 C# mods and 1 content packs.
you have the following error: Can't apply patch You > Load Maps/{{ModId}}_ExampleCave to Maps/Katie.You_ExampleCave: StardewModdingAPI.Framework.Exceptions.SContentLoadException: You loaded map 'assets/Map.tmx' with invalid tilesheet path 'CharwiesExtras.png'.
check that you have that tilesheet loaded or in the same folder as your map
ok
you have Items/Bush.json listed twice, and also a file just named Bush_Sapling (did you forget the file path and the file extension)
I'm not actually sure listing a file twice has any adverse effects but assuming that Bush_Sapling was meant to be the file you posted earlier it being just that sounds like the issue
k have the tile set in the assets folder is that good enough
is that the same folder your map is in?
ya
then yes, although you may have to also fix tilesheet climbing errors, but one step at a time. try loading it now
what is the location name
you tell me
so i have the warp right
whatever your entry under your edit to Data/Locations is the location name
but the first place to check is always your log to see if there are errors
i think it is {{ModId}}_ExampleCave
that sounds right
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26200.0, with 3 C# mods and 1 content packs.
your map is broken, and when you put the command in you need to replace {{ModId}} with your actual mod id Katie.You
iro u ok?
what doe a broken map mean?
?
there's just a random You in that sentence
idk what that means
bea that's the mod name
what do you have questions about
that's their mod id. Katie.You
the steps to fix
what is your question
are you asking for more help?
is there a example mod somewhere
yes, you can download any mod that adds a new location to see what it does, but that won't fix this error with your map
Everything worked! Thank you! At the end of the day, fatigue took its toll, and I was not attentive.
i still cant get it to work
how did you make your map?
tiled
from scratch?
being tired does indeed have that affect sometimes. cheers
ya
you may have to send the map here, but we usually recommend starting with a vanilla map
iro i suspect the issue is that they moved a custom tilesheet and then saved it with errors but i can't know for sure
possibly? but that would usually have different errors
different than a gid error?
usually you'd see a tilesheet path climbing error first
where did you get your copy of stardew from?
oh dear
oh man
steam
and the unpack?
some of these tilesheets look like they're from a mod
what unpack
the tilesheets
Meep question. If I want to do a 'closeup interaction' on say, a tv I added when I made a new bedroom for Shane - would I still do the EditMap to AnimalShop?
you seem to be using a .rar file incorrectly somewhere
if anyone has an example mod i could use that for testing ig
an example mod won't magically fix your problems
well ya but i could see how its done
