#making-mods-general
1 messages · Page 278 of 1
Flash would say yes, I am sure. It was the complexity of doing it like those maps do that turned me off.
Which is around time of frontier farm release
Well, if sparrow friend is up for it
It's perfectly doable
I think if you ask Flash he wouldn't be upset with you
Then why can Robin move it like a building after it is fixed? ......I am pretty sure she can...... Have not actually tried for a few years so maybe I am wrong
You could do it optionally
I don't remember that at all tbh
Maybe I am crazy.
The reason why i remember is cus the neighbourly buildings person was here asking about fixing up the map (their grandpa shed has a wider top)
And it was only problem on frontier farm
I remember that, the back corner of the grandpa's shed kept getting cut off
I think it's worth asking
Then I am crazy and remembering completely wrong. Not the first time.
But yeah if u wanna just do the changes in sve itself to buildingfy the whole thing you probably can 
I forgor if sve has spacecore as dependency tho
i cannot get these slimes to be the proper color for the life of me
they look like ghosts
i dont think you can move grandpa's shed btw, unless that was changed in a recent update
(or in 1.6)
i havent actually tried it ... 
No, I agree. I think I must have dreamed it up. My last few games never even fixed it. So it has been awhile my mind is probably tricking me.
unless I missed something grandpa's shed is still baked into the map
Still thinking about buildingfy ginger island one day
If it was a thing ut would have to be within the last year
just the whole of ginger island
I agree it's doable
Yes (no just the farmhouse and obelisk)
I'm very out of the loop wrt to SVE though
There is a mod that lets you isn't there?
Pls include shipping bin
Right yes
No frog not just can build here
I want to turn the obelisk farmhouse shipping into buildings
Since buildable is implicit for this it'd be set too
Oh
I am not 100% sure if it's doable in cp alone
Mainly because I don't know how parrot progression is remembered
I am positive it is .png. all files are png. there is a set size though. Someone may know what it is.
Or you loaded it wrong
It is png, but there's required folder names to follow and you can't go over 256x256 per portrait afaik
It also just doesn't work for some cases where the speaker is not a real npc
Thanks chuve. I was looking it up as you typed.
Is that for vanilla or the mod? (Just wondering)
Because I know portraiture is supposed to help upload bigger portraits
Just unsure what size
Vanilla. There is a mod that lets you use hd portraits but I have never used it.
It has detailed instructions on the page I think.
I don't think there's actually a limit 🤔
Then I likely uploaded it wrong honesty
Tho the file is a png and it has his name correctly
Ex: several portraits for characters ive used have been larger than 256x256
there is no limit, but 256x256 is the display size of portraits (unless you have a ui mod that makes them bigger) so anything larger than that will get scaled down and lose detail
not getting any errors?
additionally you need portraiture if you want to use any size above 64x64
That's what I'm troubleshooting
Portraiture is what's not working here
actually you might be able to use spacecore as well
Whose portrait are you trying to make work
Are you sure you're using portraiture correctly when you're testing?
Normal npc?
Noted
Sebastian
believe it or not... there's a large slime in this photo
is it the player?
Yes I'm pretty sure? Tho it's hard to find videos on making your OWN portraits so it's rough
no its just nearly invisible, i found out that the spacecore coloring of simes does not...e xactly work right
i hit them so you can see but they're just.. very clear lmao
oh thaaaat's too clear
Alr hold on
I only have sebs normal portrait done for now
oh come on you don't wanna fight literally invisible slimes /silly
I would say the first test is download a mod that works and see if you can get that working first. If that works and yours doesn't then we know it is something wrong with your portrait.
That one Elden Ring boss lady but it's slimes
I was trying to see if they were changing color and was waiting for them to spawn and i couldnt find any until i started taking damage and squinted at my screen xD
not elden ring, Dark Souls 3
one of those dang games
Man they don't even leave a shadow
That would have been a great mod to release yesterday.
There is an invisible mini-boss in elden ring too
What color did you use
ive been using every level of RGB possible but they remain ghost-like and weirdly transparent - for this specific instance I just set all of the values below 10
Oh it's rgb?
this one was with blue set to 255
I kinda assume hex lol
Ghost Blue Slime is a neat effect though
it is pretty neat tbh but not exactly what i was aiming for xD
rip
its okay, i'm switching to FTM anyways so I'll have to edit things there
I was just trying to see if i could get it to work
Does this accept A
It does not, (I did try)
Did you press key in game to switch portrait
I think it's default P or something
* *Color- The color of the slime, specified with{ "R": 255, "G": 255, "B": 255 }``
it did that weirdly but thats from the SC documentation
yep i pressed p
!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.
maybe it's accidentally float instead of byte?
no but that wouldn't make sense either
restarted pc, works now ty for tryna help 👍
-# I'm not here and you didn't see me but I wonder if it has something to do with how their transparency works in the game right now 



(Driveby: I would be very surprised if Casey didn't use xna.color in her model)
(Alpha may not be documented but it probably will work)
I think im gonna need to know the RGB codes for the slimes soon. When i get the energy to get out of bed... my computer is like 2m away, ivr no real excuse.
Bed is a great excuse. 😇 😀
I have ideas for 1 off jokes I could sometimes add in the game, but some of them feel such a waste of a user's resources that I never do them, especially when they likely would never even find it/see it
Would it be similar in value like "A": number,
Because that did not work
well I would assume so. Would be odd if it was something else
Yeah that.. did not work
opacity goes from 0 to 1 did you keep that in mind
that depends on the system being used
it can be 0 to 1 or 0 to 255
and looking at xna stuff, looks like it uses 0 to 255...
but whatever lily is doing might not support alpha anyway,
Is it typically expected for new fish to be able to be put in an aquarium or would it be fine to just have a single sprite for them
yes it is typically expected for them to have atleast one aquarium sprite. They need that to be seen in visible fish as well.
I tried both, neither worked
The original was updated later on too, although admittedly I did more "finetuning" with the 14 heart event and the Wizard's tower map (among other obsolete things and cleanup). Hence I still have no idea if I should hide it or remake it into some sort of patch 😅
Did you get in touch with the og author
I wonder if you should maybe directly ask casey
The perms were open and author was inactive for months at that point, so I made the 1.6 patch and then messaged Werewolf, but I never got any response
Huh.. so it's been almost a year since I left it in hibernation state 😅
I feel like im having trouble understanding content patcher packs
the fromarea to area thing
is confusing me so much
FromArea is copy, ToArea is paste
Which corner do i pick for the copy?
top left
This is similar to most image editors
tysm
Top left of image is 0,0
this, and if you only want a portion of the map, you change the coordinates to be the top left corner of the box you want to copy
gotcha, thank you guys!
heyyy could someone please send me mr qi's portrait? im on my phone and i dont have access to my computer rn and i wanna do an edit
^ the unpacked content file specifically
thank youu!!!
no problem!!
(the sending of individual unpacked files is generally discouraged here, just FYI)
oh! i didnt know that sorry
if i asked someone to dm me the file would that have been better?
the reason its discouraged is bc its distribution of game files which is generally a no-no, so whether its asked for in dm or in public is kind of the same
If you ask, you will generally be advised to unpack it yourself or wait until you are able to unpack it yourself, because distribution is the problem.
ah. gotcha. i understand
You didn't know, so I just wanted to gently point it out to prevent future issues. ❤️
i appreciate you letting me know :)
I understand it but I always find it slightly amusing, "I have a problem with my mod, can anyone take a look?" "sure.." -uploads a zip with a whole bunch of game files- "here you go"
There are also times I see "Can you zip your whole mods folder and send it for troubleshooting" 
whole mods folder?!
yes
It was more for mod compatibility issues between some frameworks iirc (as in by framework authors)
or cases of just bizzareness
She does, she deserializes directly to Color. That said, I'm not entirely sure how newtonsoft deserializes Color since it's a struct.
i thought its packed value 
technically it can be both
but I don't think it's an enum because it has constructors IIRC
Drawing.Color is an enum I think
just checked, xna color is a struct that acts as a wrapper for a packed value
wait Utility has a string-to-color conversion method
is that new in 1.6 or have I just been doing things the hard way this whole time
It's new
oh thank god
The public properties are available for serializer though
Including whatever the heck alpha is
how do struct properties work, anyways, if they're passed by value? are they still somehow mutable?
Boxed I assume
i'm not sure why a colour property wouldn't accept alpha, i do it all the time in my own mods when casting some json to Microsoft.Xna.Framework.Color. it'd just be "R": 255, "G": 255, "B": 255, "A": 255 for opaque white, or default colouration
if it's parsing names then those should include a preset alpha value too, so "Blue" would be fully opaque (A 255), and TransparentBlack would be fully transparent (A 0)
string text5 = (isMarried() ? "BusStop" : defaultMap.Value);
do i just have to do something about this to dehardcode spouse schedule...
and the Point right before
Probably!
some have jobs dont they
i think it would be bad if you married the valley's only doctor and then they never left their house again
Button this seems like a csk thing 
I guess it depends on if u needed to patch the parse schedule method
Let people decide where the spouse schedule starts
isnt that just a 0 schedule
The first map of spouse schedule seems to be hard coded to busstop
And i have zero idea if spacecore spouse 0 schedule works rn
yeah but CSK preempts the parser
unless im confusing which function you mean
what function is that snippet from
NPC.parseMasterScheduleImpl
ah, i thought it was from one of the special schedule replacers
if CSK let ppl just skip this thingy then ig it's fine?
my understanding of npc schedules is like, maybe 0.02
this was a complaint with leah and wizard marriage tho, cant start em at forest
from a glance at the parser though it seems like the 0 schedule stuff happens after that busstop stuff
if (int.TryParse(location, out var _))
{
location = previousGameLocation;
index2--;
}
seems to be the only reason that it'd be used even without a 0 schedule and i dont know what the purpose of this is
otherwise a 0 schedule will override that isMarriage BusStop thing
theres a 2nd BusStop later
thats what im looking at
the 0 schedule thing is still below that
and so is the snippet i posted, too, which is what will run if the location is not bed
also wait
ur decompile has different local names
no but it was confusing me til i realized
since theres 70 variables dealing with locations here
give or take
yea true, i am use -lv CSharp10_0
your locationName is my location
anyway i have no idea what spacecore does to spouse schedules nor am i gonna check
Question: There's no easy way to remove the smoke particles at the Travelling Cart, right?
nope
what smoke particles
hardcoded TASes
Beedle's sacks are smoking so I need to redraw that area again
To explain why there's smoke, I guess
^ yeah, those particles
you could editimage LooseSprites/Cursors to remove smoke when you're in the forest, i guess
it'd have some side effects though
that wasnt meant as a joke! just letting you know. its still viable
the raccoons also use the smoke, and something around x87 y9 that idr
I have this nonsense currently:
so I think I need to draw the chimney back in and just figure something out for what's gonna go there
oh the x87 thing is Marnie's chimney
tbh, if you just patch it on the days the seller is there, i really doubt anyone would notice
chu didnt even know it existed
I still have to change the pig, so redoing that area isn't the worst
maybe just put a torch there
be aware that the pig animating is also hardcoded
yeah
I'm aware of that one, I've been stalling because my current best option is making it a giant beetle instead
though ofc much easier to deal with still
unless you wanted to do that LOL
(not bc thats hard but bc its not as easy as "delete pig. goodbye pig"
)
Well, I can't easily negate the pig, because you'd still be able to click the empty space for oinks xD
i didnt even know it oinked
It does
you wouldnt want it to be transparent but you coulda made him a static box or bag
a box or bag that oinks
I did consider possibly having livestock travel with Beedle
make him ganon
Just random Cuccos around his travel site, LOL
pig beast ganon, reduced to beedle pet
does anyone know how I would go about conjuring up some C# code for detecting explosions on a particular tile.
I was trying to see how this mod went about it https://github.com/aedenthorn/StardewValleyMods/blob/master/DynamicMapTiles/CodePatches.cs
(... lookin at the forst code i just realized i think BETAS Harmony can let you easily add more days that the traveling cart is there
)
(Forest just has a Property that returns true or false for it, which can easily be patched. good to know)
(I think it was in Spacecore, but I saw a feature yesterday that lets you detect if the Bookseller is in town for patches/triggers and I got very excited)
hm can you patch explosionAt
its a virtual so i wanna say it's fine
if u got your own GameLocation subclass you can just override it too
BETAS Harmony can patch anything that regular Harmony can
but it wont let you skip prefix
im answering this q
and it will only let you change the result of a function if its a typical type like bools, floats, etc
oh
i would probably opt for just GameLocation.explode
but this seems like more convienant if u really did just want specific tile 
explode is better if u want to know where bomb ofc
i guess it depends on if you want the tile the explosion happened at or all the tiles the explosion exploded
just one area by a wall since I'm paying homage to zelda
the ginger island mushroom cave thing is basically what u want
cept the part where u need to harmony it ofc
if its an actual rock or terrain feature you're exploding, you dont need harmony either
there are SMAPI events for those lists
Stardew Valley/StardewValley/Locations/IslandNorth.cs
islandNorthCaveOpened
thats the cave where u rescue the professor from
it just checks if explode is some coord and then set the related flags to do the map patch
ok
Is there a way to make fish ponds swim-able or will I need C# for this?
Like, can I use CollisionMap on it?
Not sure if swim property is for maps, buildings, or furniture (if there even is one for CP)
hi, for making mail mods should i just be using content patcher or using the mail framework mod? The modding wiki tutorial lists mfm as obsolete but it looks like it's still being used as a dependency for various mods.
MFM has some things it does that Content Patcher cannot do on its own still, but in the majority of cases nowadays you likely only ever need what can be done with CP
if you just want to simply send mail, CP is fine
even if you removed the collision the player would not automatically swim around
see how on maps you have to walk through a sepcific tile to transition to swimming
Thank you.. I can’t do that on a building, right?
Like if there’s stairs leading into the tub, could I make those stairs the tiles that change into swimsuit
i dont think so since buildings arent just a collection of map tiles
Ah darn
ty!
Oh okay! Ty I'll just use content patcher but I'll take a look at mfm for fun too haha
Could I grab a link from you to the page where MFM is listed as obsolete? I want to change that because Digus is actively working on new features for it.
I'm new to using StardewUI and my data model contains a list "TodoItems" of objects which have a property "UncompletedSubtasks" which is also a list. I'd like each of the items in "TodoItems" to be an expander, with the "UncompletedSubtasks" of that item as a list of labels in the expander. I've got this so far:
<lane orientation="vertical">
<expander *repeat={:TodoItems} layout="stretch content" margin="30,0,0,15">
<label *outlet="header" text={:TaskName} />
<label *repeat={:UncompletedSubtasks} text={:this} margin="60,0,0,15"/>
</expander>
</lane>
However, I've got a BindingException "Cannot bind multiple children to outlet (default) of view type Expander". What do I need to change to make this work?
When I remove the label with the *repeat attribute, the error leaves
how can I get an event to start with C#?
ah. if I wrap the repeated labels in a parent element like a lane it works
Whoops ! I hadn’t realised the original had been updated too !! I changed the dependencies to your version and didn’t watch further :|
I sent a message a looong time ago to WerewolfMaster too for permission to translate - before seeing permissions were indeed opened. I’m going to check that 
PLEASE NOTE: Mail Framework Mod is obsolete in favor of Content Patcher. Backwards compatibility is maintained, but for new mods, CP should be used.
It's super easy to send a letter in Stardew Valley, thanks to frameworks like Mail Framework Mod.
Note: This tutorial assumes that you are already familiar with some modding basics, like making sur...
Thanks!
when you say patch you mean with harmony?
The original is still getting 10 times the downloads my fix does so might be a good idea hah, unfortunately the only thing that was updated to 1.6 was the summit event, so still no i18n, new 1.6 stuff, wizard tower changes, etc
Is there an easy way to check for someone swapping the toolbars? I was hoping it'd trigger the InventoryChanged event but no luck
What are you trying to do?
I've made a mod that auto sorts your tools in designated slots on your toolbar. I want it to also sort when you swap bars but I'd need some event to trigger off of
you could probably do a harmony postfix on the Farmer.CurrentToolIndex setter and build your own event that way
Ah that sounds straightforward enough, thank you
Yea
Sounds like inlining hell to me
Hey all, is there a specific setting to remove a Custom NPC from the social menu using CP?
o wait i think i found it "SocialTab": "HiddenAlways"
question, if you convert, lets say a CRC mod into item extensions as an extranode, would it be applied to both versions of the mines and skull cavern? or is there a code snippet i need to add to do that?
an item extension mod i can find that adds new nodes to the cavern + dangerous mines just has them as configurable options :,3
Lumisteria has one
i used the CON/CRC converter from misty so
ooo
If the crc mod you are trying to use is kaya's, that had been converted already i believe
turns out there's simply a shiftToolbar method I can patch
the heart clumps CRC mod from kaya is what i converted to IE
Ah maybe different then
This is the one i was thinking of but it's not kaya anyhow
i know she also has more gems mod i tried to convert to IE but .. the converter refused xd
But hey more samples of how to do stuff
yea true
i dont think the CP version of that mod actually worked so it was either converting the CON version or JA version, and only CON had the assets
hi, may I ask why I am having this on smapi? I am currently fixing a mod
huh. so i looked at the file i converted and it does have a spawn rule, but its
"SpawnOnFloors": "120/-999" applied to all clumps.
im just gonna double check if i used the right framework though xd CON and CRC are easy to mix up for me
It means that the game tried to load a dialogue line for summer_6 for Lee's marriage dialogue and couldn't find one. If there is meant to be a line for it, you need to fix it because it's wrong. But if there isn't meant to be one, you can ignore it.
ight yea i used the correct one weeee
Thank you 
okay so .. im assuming the 120 in that snippet means the regular mines? and -999 means skull cavern ?
hi what if there is a dialogue for rain day_4 but smapi says its not there
ok after more digging, the mod mentions a clump that only spawns in the skull cavern :P although i dont know if the dangerous versions would be applied upon converting, i atleast got my question partially answered xdd
Additionally, it can be obtained by killing monsters or breaking crates/barrels as a special item in The Mines during the Danger In The Deep quest or after activating the Shrine of Challenge.
Where can I confirm that [[Auto_Petter]] can/can’t drop in barrels/crates during dangerous mines mode?
BreakableContainer.releaseContents
https://stardewvalleywiki.com/The_Mines#Crates_and_Barrels
That's strange. Can you try doing a patch export of his marriage dialogue so you can double check the line did get into the game? It should be patch export characters/dialogue/marriagedialoguelee (if his internal name is not lee, change it to the correct thing). It will tell you where it has exported the file to.
OMG no i18n ?! Urfff that’s such a pain for translators TvT - it’s part laziness from my part, part perilous for the mod coding :/
Thank you for the information anyways. I think I’ll keep up with linking it with your mod.
By the by, you had some ideas with implementing more content ? Because I wrote a few ideas for events and quests complimenting RomRas’s « lore », so… I wouldn’t mind talking about it with you

That's strange that it hasn't loaded the dialogue at all. Can you try debug loaddialogue lee characters/dialogue/marriagedialoguelee:rainy_day_4?
It can
https://smapi.io/log/e70fe351aa304cd0a40c3188dffd4cc3
had it here so it is easier
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home Single Language, with 6 C# mods and 1 content packs.
!patchsummary
Can you do these steps to provide more info?
- Load your save and view the content that should be patched.
- Type
patch summarydirectly into the SMAPI window and press enter. - Upload your SMAPI log to https://smapi.io/log (see instructions on that page).
- Post the log link here.
It looks like there is no marriage dialogue file for Lee at all. Can you do the patch summary that Quantum SciencePerson asked about and then send your log again?
so this part of the wiki is wrong then?
i'd edit myself but i want to make sure i put the right info
https://smapi.io/log/87597171f76e4d5aa6cb506cb6eb4e78
here is the log link
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home Single Language, with 6 C# mods and 1 content packs.
dont see auto petters in BreakableContainer.releaseContents
Don't edit it. It was right thr last time I checked
Special item there is an item that can appear in the skull cavern chests
Which includes the autopetter
i just dont understand how auto petter can be both 0% special item found in dangerous mines crates but also able to be found
something is wrong on the wiki, whether its this page or the auto petter one
https://stardewvalleywiki.com/Auto-Petter :
Additionally, it can be obtained by killing monsters or breaking crates/barrels as a special item in The Mines during the Danger In The Deep quest or after activating the Shrine of Challenge.
https://stardewvalleywiki.com/The_Mines#Crates_and_Barrels :
Difficult Mines/Skull Cavern: 0%
so which is it 
For some reason it is not applying his dialogue patches at all. Has any of his dialogue worked?
It's an incredibly low chance that got rounded probably tbh
Yeah but not all, sometimes it's just ....
is there a way to find the exact value so this isn't confusing players??
Sure!
MineShaft.getSpecialItemForThisMineLevel
thanks!
Can you show me the patch in the content.json that loads his marriage dialogue?
Look, that's different
0.02%?
(No, that is 2%)
oh sorry, how ??
Again, please don't mess with this unless you're sure of what you're doing
im not editing the wiki im just checking ):
If it is unclear open up the talk page and explain how it is unclear
im so confused now ): am i doing something wrong
The autopetter can drop from monsters in the dangerous mines/skull caverns
Okay that's wrong so that's why his marriage dialogue isn't loading. There should be no forward slash between the MarriageDialogue and the LEE. Did you change that from the original mod? This is what it looks like in the original mod that you sent me.
It cannot drop from crates and barrels
i know that part, its the crate/barrel part that isnt right
so that part should be taken out of wiki right?
It is right. I'm not sure why you think it's wrong tbh
breaking crates/barrels as a special item in The Mines during the Danger In The Deep quest
because they cant drop from crates/barrels
Atra it does say that it drops from breaking crates and barrels.
Hmmm

I'll take a look at it later
Please for the love of God do not edit the game wiki based on a glance
Even without the slash, it doesn't work, 😞 I was without the slash until I noticed that it still doesn't work
So I tried using a slash
Some places get repeatedly edited weirdly, if you think it's wrong please open the talk page and explain it there.
i wasnt gonna edit the wiki without getting confirmation from at least a few people so
I think that is a bit unfair on Anaira. She wasn't planning to edit the wiki based on a glance, she actively asked for help verifying it.
no need to make me feel silly when i wasnt oging to do that
thank you aba, im gonna go now, server is just not nice to me today lol, see ya 
Can you remove the slash and then make a new save and run the patch summary again?
Sure let me go do that
Okay, explaining the wiki a little bit
I double-checked the code for this
- That section - the special items - refer to items that can be dropped by either special monsters or special barrels
It refers to getSpecialItemForThisMineLevel which is called by monsterDrop (which explains the references to the dangerous mines.)
- "Normal" non dangerous crates can also call
getSpecialItemForThisMineLevel
as far as I can tell (and this is a bit fuzzy because it's a long method) dangerous crates never will, hence the "0%"
this also matches from what I remember, and from when I checked that wiki page 2-3 years back
so it's just the auto petter page that's wrong then and should omit the bit where it says it can drop from barrels/crates in dangerous mines
(i'm not going to edit the wiki i refuse to be made a fool again)
I think a rainy day version dampens (pun intended) the mood, I probably wont include it.
I'm annoyed because people quite often try to wade through the numbers with a cursory search (ie, just ctrl-f'ing for a specific item ID) and then edit it in.
it looks to me like this was added october 2023 on most of the pages
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home Single Language, with 6 C# mods and 1 content packs.
Did you do this in the main menu?
nope, on a fresh save
Weird, there's no player name or gender and it says n/a for the year, season, and day.
thats weird
where were you in the game when you ran it?
at my room
Can you warp to Lee and talk to him please?
And then report back about what happens
sure let me go there
I'd just run it again.. because even if you ran patch summary in the introduction cutscene you should see more than that
ChildGenders | [X]
ChildNames | [X]
Count | [X] 0
DailyLuck | [X] 0.0010000000474974513
Day | [X] 0
DayEvent | [X]
DayOfWeek | [X] Sunday
DaysPlayed | [X] 0
FarmCave | [X] None
FarmhouseUpgrade | [X] 0
FarmMapAsset | [X] Farm
FarmName | [X] sdf
FarmType | [X] Standard
FormatAssetName | [X] (token returns a dynamic value)
HasActiveQuest | [X]
...
that is what you get on the intro scene
Is there a good way to check for when a specific player says a dialogue within the unpacked files? I am looking for when Morris says We're currently processing your last Community Center development order....
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home Single Language, with 6 C# mods and 1 content packs.
here, I warped to where he is and talked
Do you mean you want to find that line in the data? Use a text editor to do a find in files search. Or grep it but don't ask me how to do that lol
I use my OS search tool to search the contents of all the files
that line is in ExtraDialogue in Data
I mean, I'm unsure of which file to look in specifically and I was wonder if there was an easier way to than ctrl + f each inidividual file
Sorry I should've been clearer. "Find in files" is a specific kind of search that searches all files in a folder (and subfolders).
(yes. that's what grep is for, or sublime find-in-files, or vscode find in project)
What do you think MarriageDialogueLee does, btw? it looks like you're not married to LEE in that save
I also recommend VoidTools Everything for good 3rd party search tool if you're on Windows
Okay that loaded the unmarried dialogue. So let's see how you go once you marry him. Can you copy debug hu 3 into your SMAPI window and then debug marry Lee. Then sleep once and try to talk to him again, then do the patch summary again.
We know she isn't. She's following my instructions for troubleshooting. Marrying him is the next step.
but the line is there
this https://www.voidtools.com ?
https://smapi.io/log/dbfa08c8b205496198f700f46b1235c4
here is the married
Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home Single Language, with 6 C# mods and 1 content packs.
It loaded that time, weird. Try debug loaddialogue lee characters/dialogue/marriagedialoguelee:rainy_day_4 again. Hopefully it will play the line.
yes, you can search contents of files, using the other programs mentioned, but that's just a good all round file search for other reasons
I recommend using Sublime for searching file contents, it's nice and speedy.
Though I use Everything for searching for files and folders themselves
it showed this
I'm unsure if I did it correctly using Everything, I tried using the advanced search like so, but didn't seem to get any results. Sorry if this is a lot more simple than I'm making it out to be. I'm hoping to do this on my own so I don't have to keep asking every time I want to find a string
Everything is slow for searching within the contents of files. However, if you do still want to use it, you need to put the phrase into the box after "A word or phrase in the file" because right now you're searching in the file name not contents.
got it. thanks. Can you say again why you prefer sublime? I never used either applications before
For searching within files? Because it's fast. And I do "find in files" searches a LOT so that matters to me lol
It's the fastest for me out of Notepad++, VSC, and Sublime. But any text editor fancier than Notepad will probably be able to do a find in files search. I used Notepad++ to do it for months before someone convinced me to try Sublime.
I just tried that with Sam and got the same thing, so it looks like that command doesn't work very well with those dialogue lines. That's okay, can you try the patch export characters/dialogue/marriagedialogueLEE again?
it seems the file name isnt the same as the actual file name?
What do you mean?
it says on smapi that it should be marriagedialogueLEE.json
the file name of the marriage dialogue is just marriagedialogue.json
You can think of that as a generic file
The way marriage dialogue works
If the key exists in the MarriageDialogueNPC file it's used
But if it doesn't, the game checks MarriageDialogue for it
So please edit MarriageDialogueLEE and not the fallback file
Oh hang on
CP can add new assets
Just in the same what it can add Portraits/Lee, it can add Characters/Dialogue/MarriageDialogueLEE
I think you are looking at the FromFile and thinking that it should be called marriageDialogueLEE.json. But it doesn't have to be called that. It can be called anything. It only matters to the game what the Target was. And the Target is fine. So can you open the file that it exported characters_dialogue_marriagedialogueLEE.json and check if Rainy_Day_4 is there?
Rainy_Day_4 doesn't necessarily need to be in there btw
It should have a backup in the generic MarriageDialogue
But it is in her dialogue file so it should be in the patch export, shouldn't it?
(I think, I'm not looking at the unpack at the moment)
Ah, if it is in the file it should be there!
Just saying it isn't necessarily an error if it isnt
It in theory defaults back to a Rainy_Day_4 line that I think likely is in the MarriageDialogue file
In general, yeah. In this situation sakimi was puzzled because SinZ's mod was saying that it couldn't load Rainy_Day_4 for LEE (as in the specific Lee file line) despite it clearly being present.
And so that's what we've been investigating this whole time.
Ah, okay!
And it looks like for some reason it just was not loading marriage dialogue for him in the other save...or something?
Hi all, Is the smapi.io website working for y'all, or is there something wrong on my side?
....weird, was this when they had MarriageDialogue/Lee?
Slow as hwll for me but that isn't abnormal
It might have been, I'm not entirely clear on exactly when she changed it.
What does downforeveryone say?
hwll?
Hmm yeah it's having a struggle for me now too
What's the ID for barrels in the dangerous mines?
Related to the string dialogue. Is there a way to look through ILSpy to see when a string variable is called? In this case I am looking for Morris_StillProcessingOrder but putting that into search didn't seem to look anything up
I mostly use isitdown, it says its down
I thought it must be an error since its in Pathos' control 😆
Switch the far right drop-down to Constants
I did all this to debug that I was missing %&NL&% in this check 🤦♂️
jojaUpgrades.Keys.Any(id => Game1.player.mailForTomorrow.Contains(id)
@brittle parrot just check this
No ID for dangerous barrels
(smapi.io seems to getting heavier traffic than usual for some reason; I just scaled it up so it should be back to normal.)
There is one - i forget what-
But it isn't checked in releaseContentw
Try. Uh
GetBarrelForMines?
Smth like that
they are breakable containers that means they have IDs, cross refferncing every breakable barrel ID (118, 120, 122, and 124) they all can call getSpecialItemForThisMineLevel
Looking at a barrel from the dangerous mines it matches ID (BC)118, one of the barrels that has a case to get a special item and in the get special item which then checks mine difficulty
Yes, but there is a block at the top of the function that runs if the mines are dangerous and that returns immediately
So it doesn't make it to that switch case at all
Hence never getting to special items
going to have to point that block out to me, i don't see it in BreakableContainers.releaseContents or MineShaft.getSpecialItemForThisMineLevel

Top of release Contents
The difficulty block
I'm not at home so I can't point it out to you
It's right under the 1.6 special items
i have completely forgotten to account for the litter trash entirely, so when you get a trash item from the garbage, it shows up as an error item. Whoops. 
if (location is MineShaft mine)
{
mineLevel = mine.mineLevel;
if (mine.isContainerPlatform(x, y))
{
mine.updateMineLevelData(0, -1);
}
difficultyLevel = mine.GetAdditionalDifficulty();
}```
Oooo I think IO sse the one you are talking about
one sec
Yeah
if (difficultyLevel > 0)
{
... bunch of stuff
return;
}```
Sorry, I'm at work, I'll get back to you in like 36 hours haha
lol
(36 hours? Short day today?
)
yeah when you said "top" I looked at the top lol
there is a chunk of setup first lol
blink twice if we should send help atra
you need special training to get an ID for dangerous barrels.
ah okay thanks
stupid question, can items have multiple types within one category? or would i have to just copy my code and change the "type:" accordingly ..
like could i use "type: fish, [whatever the type trash items are from the garbage cans]" or..
actually wait lookin at the example i think i might have to just copy and change it
well, time to figure out how to make this compatable then. to the thread of mine i go
What are you trying to do that requires multiple types, and can you use context tags to get the result you need for the 'secondary' categories instead?
i made a mod that replaces the vanilla trash, both in texture and description/names
but it only effects the fishing trash
and the garbage trash is error items, so. tryna fix that xd
might have to use context tags though, this did not work
..wait it already.. has context tags.. hold on lemme send my json
the category is -20
the type is fish
and all items have the context tag of a color, and "trash_item" (aside from the joja cola)
would the nulling be neccessary even?
lemme try without it
..fixed the error texture atleast, i shall change the index then
okay nvm removing the null doubles the item actually, so i have to use null
why are you removing the vanilla trash items
bc im replacing them, essentially
new name, new desc, new texture, but not as a new item
You are adding new items though
You need to use the same key if you're doing that
well all i wanted to do was to change the name ( for some ) and the descriptions, but als oadd on a new texture 😭
the joja cola and the soggy newspaper are renamed in my mod
but everything else has a different description
ah
If you're just changing tooltips and textures, why not do an image patch on the objects sheet and modify the language files?
(Driveby: just to be clear, I'm not going to be at work for 36 hours, but the next slot in my schedule where I can sit down and poke at stardew code won't happen until the weekend likely.)
why must i overcomplicate everything
i didnt even think of that method 😭
oog i just realized i put the image edits to the wrong file
hm. that explains a little
instead of maps/springobjects i put it to tilesheets..
Anyone know how exactly I could get an NPC to move in as a roommate rather than a spouse? Also, how would dialogue work in that case. I've made marriable npcs before but now I wanna make one as a roommate but I'm not exactly sure how to do so...
It's just a field in npc data
Unpack your game files and take a look at krobus's entry as a reference
the dialogue works exactly like spouses (MarriageDialogueYourNameHere, etc), since from the game's perspective your roommate is your spouse, with different window dressing. you might have to do a bit more work (more coverage) to make sure no generic marriage lines get through
ugh, im struggling with schedules, why
So, I just finished a C# implementation of Wedding Anniversaries that addresses all of the issues I was having. I want to open source it but I don't want to make a github account. What's best practice here? Creating a src/ directory in the mod?
anyone know what this means? I have my location, i am in that map rn why cant she go there?
System.Collections.Generic.KeyNotFoundException: Required location 'VoidWitchCult.CP.TheFishmonger_LostIsland_EnchantedForest' not found.
I thought that NPCs aren't allowed to path to certain places
thats my own location
Sure, but schedule code is for NPCs to follow during the day. I don't think it depends on the player at all
Unless I'm very confused about what you're trying to do
You can set events in custom maps no problem
But schedules are finnicky
Best practice is using version control and a remote repository, for a bunch of reasons.
It doesn't have to be github specifically (there's also gitlab, bitbucket, and others) but this is the simplest option for everyone involved
npcs can go to custom locations, wut
I think that Void just meant that since they are in the location it's evidence that the NPC should be able to be there too.
Void you know the drill. Full log and json please!
But look at the Backwoods -- the player can go there but NPCs can't route through on their schedules
GitHub has free private repos now I believ
thats a vanilla location that is hardcoded to be excluded
I did not exlude my own map from npc pathing
Yeah but that's not the default. Void would have to intentionally block NPC pathfinding for that.
It's not a matter of having a repo -- it's a matter of making an account. I don't want to for various reasons
this is true for Backwoods but not for mod-added locations that void has full control over
honestly void i'm kind of expecting a typo
especially considering that the house she spawns in and the map that the house is on she can walk on
Nice. Glad to learn something today!
Would you consider an account on any of the alternative git hosts?
knowing myself it probably is, gimme a sec to upload my stuff
Let's just say that I'm trying to avoid making more accounts than necessary for private reasons. Assuming that I can't/won't, is putting the stuff in a "src/" directory a good solution?
Like open sourcing through nexus?
log(ignore the other errors its a messy test save): https://smapi.io/log/894dc025a1ac4aa589c40d3a863c739f
schedule(idk why it adds some random letters): https://smapi.io/json/content-patcher/9a1a67bdfbb740709b5f57b686074548
Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Pro, with 24 C# mods and 24 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
Yep. Just put the src directly into the mod so ppl can look
if you're committed to not making an account on a hosting service like github, the next best thing is to host the repository yourself on a server you control. i wouldn't just distribute a src directory in your mod zip, since that gives up all the benefits of having version control in the first place
I guess you can do that sure, seems like a pain to me but i doubt people mind if it's just optional file
I'm assuming you also do not have the resources to self-host a git server. If you did, that would be your best option.
Otherwise, the best you can do is upload it as a separate zip on your mod page under optional files. It's not a good way of doing it, but it's the best you can get without using a git server.
optional file for source zip is another option, i guess, but i also wouldn't choose that
Just my personal opinion, but I don't bother doing any mod integrations for mods that are not open sourced in a git repository
I don't know if others follow the same thing, but that's just me
Yeah, I know it's not the best solution :/ I would put in the license that it is open sourced, but it may just not make it onto git
i declined to report a bug to a closed-source mod
Git isn't a nice to have thing when it comes to open source, to me it's a requirement
im too blind to find my own mistakes
Like if you think this is a one off C# thing you will never touch again and don't really care if it explodes in future game update then sure you can do this
But if you have any intention of maintaining it then you are making things hard for yourself here
The random letters might be return and newlines if you added extra spaces for readability while coding?
And your file where you create your locations, please
I agree that kantrip's decision is not best practice and makes things more difficult, but ultimately it is their choice to make
Someone could set up a repo, you generate an SSH key, and you push to it exclusively using that, maybe?
No account, and still on public GitHub.
Yeah, do whatever pleases you, just trying to be real about the implications
I guess it depends on what you hope to accomplish by sharing your source
Yea definitely, i think everyone is just providing insight on the consequence of various approaches
VoidWitchCult.CP.TheFishmonger_LostIsland_EnchantedForest isn't supposed to be VoidWitchCult.CP.TheFishmongerNPC_LostIsland_EnchantedForest, is it?
@ornate trellis it's this:
VoidWitchCult.CP.TheFishmonger_LostIsland_EnchantedForest
vs
VoidWitchCult.CP.TheFishmongerNPC_LostIsland_EnchantedForest
If you're wanting to encourage integrations/support, you may not get that the way you're intending to approach it

I appreciate the discussion, honestly. I just have to decide if creating a github for this is actually worth it to me. Thank you all for your thoughts
SIGH
Well again even if u literally just upload source as a zip on nexus
(I didn't even look at the location code, I was just comparing it to the mod internal name, LOL)
Why not prefix with modid?
You can still use git locally
Fwiw, just assuring people that I've done nothing malicious with it. That's the biggest benefit of sharing source imo.
Just do git init in a folder
thats what i get for not using {{ModID}} in my schedules too
Then you can commit stuff just no push until you set a remote
Yep! And I do have source control on my own box with my own private servers
Anyone can decompile anyways, and nexus's virus scans uploaded files
Why are you even loading your schedule? If you switch to a blank load and then edit you can use tokens.
True, but source doesn't have to be a virus to be malicious
i am uhh
The main utility of open source is the ability to contribute back to the project
If you got private server then u can just serve the repo right 
I'm not too sure how git hosting is setup
Loading blank.json is your friend with things like schedules for brand new NPCs.
But plenty of open source stuff just give u a .git url from their server
Nope! I'm concerned about my own privacy.
And trusting something just because source is available somewhere can be a massive false sense of security, anyway.
i thought i did do that
(git hosting over http/s was fiendish to set up, last time i checked. over ssh it's simple)
Point!
I was kinda assuming it's some hosting service you pay for tho
If it's like a home media server then disregard 
No, I've got in-home private servers on my own network 😛
You can't be, your schedule file is missing the necessary fields to be an include. If you look at your content.json you'll see you're loading it.
You could set one up on a cheap $5/month VPS, honestly. Not free, but relatively light!
oh true, I AM loading schedules
Yeah I'm paying $2/mo for my vps currently
i am sorry if i answer weirdly atm i dont even see what i am typing rn?
(But then that's possibly a new account on the provider's site, so disregard!)
I have a home server that I reverse proxy on a VPS which connects to my home using an ssh tunnel
You're still making sense so you're all good 👍
But that's #programmers-off-topic
I wonder what you would type on the mod compat list if it was indeed "source available by a zip file hosted somewhere"
I am loading my schedules in my dispo json lol
i mistook it cuz i was doing the blank thing for events n stuff
"Source embedded in assembly."
It's probably not a case the nexus parsing thing handles
That's an unexpected place for schedules lol
Unfortunately to update that u also need a github acc to send a PR lol, but we can do it 4 u probably
Alright, I'll decide if it is ultimately worth it to me to set up a github for this before I publish. I may reverse course and just do it the easy way
Still unusual imo
Don't forget you can also consider the likes of GitLab. It doesn't have to be GitHub, it's just... the one most people have an account on.
idk man it was easier with one npc now i am a bit overwhelmed with resorting things and the fear of breaking targets etc
ok lemme see to do it blank wqay then
(I know it is, it has to be if you're loading it - I was just using "schedules" to mean "json doing anything to do with schedules" lol)
ah
I was try something called codeberg cus it was mentioned, it's alright
help my discord client jsut crashed lmao?
anyway
{ "LogName": "Schedule", "Action": "Load", "Target": "Characters/schedules/MermaidCalliope", "FromFile": "assets/blank.json" },
fuck
w/e
discord is annoying me with a damn opup i cant get rid off everything is going wrong rn
You can just use one code block to load your blank.json anywhere you need it btw
i actually did both
i knew at some point i confused myself
I already had a wholeass block of include for anything with dialogue (includind schedule cuz schedule dialogue)
May I suggest being very, very organised and writing very clear comments (both as section headers and then also as explanations) to make your code as easy for you to follow as possible?
I thought I did well with the headers, guess I was too "summing things up"
i think i did something really stupid where i am wondering if its so stupid its the reason things still work
Even a separate text file that functions as a table of contents of sorts might be helpful. So you could reference it to remind yourself of what things are stored in which files etc
I think I need help fusing everything to one include...
so I got this is my content.json(just added the shcedules things)
{
"LogName": "Fishmonger Includes",
"Action": "Load",
"Target": "data/events/VoidWitchCult.TheFishmonger_Fishmonger_GI_Inside, Data/Events/VoidWitchCult.CP.TheFishmongerNPC_LostIsland, Data/Events/IslandSouthEast, Characters/schedules/MermaidCalliope, Characters/schedules/TheFishmonger, Characters/schedules/CoolGalBernadette, Characters/schedules/PirateLadCaitrionaOFlannagain, Characters/schedules/SeaDudeBarnabas",
"FromFile": "assets/blank.json",
},
then I also got these
{
"Action": "Include",
"FromFile": "assets/Dialogue/ConstanceDialogue.json, assets/Schedule/ConstanceScheduleDialogue.json, assets/Dialogue/CalliopeDialogue.json, assets/Schedule/CalliopeScheduleDialogue.json, assets/Dialogue/BernadetteDialogue.json, assets/Schedule/BernadetteScheduleDialogue.json, assets/Dialogue/CaitrionaOFlannagainDialogue.json, assets/Schedule/CaitrionaOFlannagainScheduleDialogue.json, assets/Dialogue/BarnabasDialogue.json, assets/Schedule/BarnabasScheduleDialogue.json"
},
{
"LogName": "Shedule Dialogue",
"Action": "Load",
"Target": "Strings/schedules/TheFishmonger, Strings/schedules/MermaidCalliope, Strings/schedules/CoolGalBernadette, Strings/schedules/PirateLadCaitrionaOFlannagain, Strings/schedules/SeaDudeBarnabas",
"FromFile": "assets/Dialogue/BlankDialogue.json"
},

why am i like this
You don't actually need schedule strings at all because you can just reference your dialogue files in schedules, but if you'd prefer to stick with them, you can just combine your two blank loads.
Don't be so harsh on yourself! I spent months with every single include in its own code block before I realised I could combine them lol
omg u can have multiple files in include i wasn't even aware
i still have most of my includes in their own actions
I dont even know anymore what you mean with the strings part my brain aint processing englisch explanations anymore
augh i lied i also have a whole new block of dialogue blank loads i gotta add as well
Like you know how you have the key Strings\\schedules\\MermaidCalliope:lostisland.000 in your schedule? You could make that Characters\\Dialogue\\MermaidCalliope:schedule.lostisland.1* instead and put the line in her regular dialogue file instead of a strings/schedules file.
*Replace MermaidCalliope with her actual internal name which I hope is prefixed with your mod ID like best practice recommends.
sweats
shes just...MermaidCalliope runs
listen idk where I am anymore ok I am so deep in the sauce I fear changing things to more uniform because by now idk where all the places are where i used certain tokes and internal names and stuff 
i think i gotta go through my stuff first before i work on more
Is this going to be an update to your existing fishmonger mod or its own new mod that Constance will be migrated into?
an update
thats why i am reluctant to change internal names and stuff
at least for anything constance related
since her internal name is just TheFishmonger for example
You can use former names if you want

Chu's suggestion is a good one but even if you discover that there are some IDs that you can't change without breaking things, I think it's still better to have all of your new things be done according to best practice even if it means there's a bit of inconsistency. To take SVE as an example, they've got a mix of stuff that's current best practice and stuff that isn't and it is annoying but not nearly as annoying as it would be if they had decided not to adopt best practices where they could.
I'd be happy to help go through all your stuff to update it and check for broken things, by the way. I've got a very good eye for detail in text (for the most part - sometimes my ADHD has to butt in and cause me to make fantastically embarrassing errors but even accounting for that I'm still strong in this area lol)
always in favor of more modders drinking the {{ModId}} sauce. almost no one uses it for NPC internal names and it disheartens me
Ichor guess what
i am a fan of {{ModID}} but i think the more stuff i added the more i got lost in it....
i tried putting all my includes in the same block in my content.json and i am still finding more
i am really starting to believe i do need help cleaning my stuff up in all these jsons

It's okay to need help! You're a very strong artist and if the json side is more difficult for you that's very understandable. I need a lot of help on the art side of mods.
You didn't guess so I will tell you. I made Hiria's internal name {{ModID}}_Hiria again.
high five 🫸🫷
i think i just kicked myself in the shin i accidentally deleted half a code block
Ctrl z is your friend
Void do you have version control setup
do i have what
Anyway I'm going to bed now but my offer still stands Void so let me know if I can help! You can ping or hop in my thread or DM if you want to take me up on it 
I guess not then 
I might....ill try and see how i gonna do rn but youll know if i went insane or not xD
idk what that is chu i dont always know the englisch terms for things
i also jsut use notepad++ if that matters in the context
Version control is some kinda system to keep old versions around
In modding context it usually means you make a git repository and commit your changes
you can keep notes of what changes you are making and travel back in time to look at older versions of your files in case of regressions. it's very powerful and useful, strongly recommend
i do have a github account that i never use tbh
you don't have to use git specifically but it has won the war for dominance among similar offerings
Brb versioning my next mod with svn
and "git" itself is just a version control system and not specifically to do with github
(to be clear, git has earned its victory. it is broadly better than the others, although i do love to complain about its interface)
well, maybe ill think about it. That is....after I detangled my mess in these jsons, sigh
i think i gonna be busy with that for a while
(how do)
how do
(how do what)
i just set up a github repository for myself a few days ago with github desktop. i’m not entirely sure i’m using it correctly XD but it’s been fantastic to be able to access and change files on my laptop AND desktop
how would one set that up
So for git specifically you can install git itself then git init in some existing folder you have
After that, add all files you want to track with git add <whatever> and lastly git commit -m "some message like initial commit"
There's various GUI that does what I'm describing in the back, sourcetree, github desktop etc
vscode git integration can probably do it too but i don't know where the right buttons are for any of these
VSCode's git support is pretty good
I often prefer it to the tools that were specifically designed for git
Many options basically i just do cli cus i never learned how to do it otherwise 
It really shines whenever I'm dealing with merge conflicts
apt-get moo
LazyGit is a nice cli-adjacent tool
Bea if u want to set it up i can help u if u ping me in like 6hrs
VSCode is really good for git, and you can sync it with github there is a guide at https://code.visualstudio.com/docs/sourcecontrol/github
there will be tons of quick how tos online
Yeah it's widely used not sdv modding specific
i will attempt 
i would offer to help with this sort of stuff, but as usual i cannot recommend that others do things the way i do (read: the insane grognard way)
I don't use any versioning at all, probably should.. but I'm soooo lazy
Ichor do u do something worse than just using cli
i am also lazy, but probably should because my updates tend to break many many things

punchcards?
well good thing i made a github account a long while ago and never used it 
in this specific case, no
Oh good 
Another good thing about having your mod on GitHub is that people can report bugs and translate the mod for you by opening issues/prs
i've never felt the need to do bc all my mods are content patcher and if anyone wants the code they can just like, grab it.
That one is secondary to having commit history to me cus most of the time no one poke my spaget
That is why I didn't describe part where you actually push your repo anywhere 
also i've absolutely no idea how github works really. im just a worm on a string
New quote added by handwrittenhello as #6348 (https://discordapp.com/channels/137344473976799233/156109690059751424/1357408161786761357)
As long as u are commit your changes u can locally view everything
for me it is so, so helpful to timewarp. "oh, my new update broke something? let me just see how it used to work" and you can just... diff the file between then and now, without having to like download your old version and manually compare shit. or you can just git checkout 1.4.1 or whatever your tag is and boom everything is just how it was then
you don't need to use github at all.. can just have it on your local machine... depends what you are really wanting out of it
time travel
GitHub (or any remote repository) is nice to have in case your computer explodes
Which has happened to me once
i have a nasty habit of archiving absolutely nothing
also nice in case you want to check something on mobile or work on a mod from a computer that is not your usual
sometimes i need to redownload my mods from nexus 
Tbh i do that bc otherwise nexus shows update available 
I know Gil is a map tile, but if I put him as talking in a cutscene in the Adventurer's Guild, will that... work?
Like giving him a dialoguebox?
i make a tag for every release i do, so i can always get the code exactly as it was when i built the version that users download. that's also extremely helpful when i have a bug report, and maybe i've been working on that part of the code in the meantime, so i might need to see both versions and boom, it's easy
Yeah, I'm making an event and I want him to interject.
sounds very cool 
please don’t say literally…
Iirc there's a event thing where you change the name and portrait
So you can just make whomever "gil" for a bit
im going to assume i need to downlaod git
I don't know if gil has a real enough character entry to make normal way work
Should try both
i haven't had a computer explode but i have had a power supply spark and catch fire (luckily, i was in the room and was able to stop it quickly)
Gotcha. I'll try it the normal way first and we'll see if it explodes
Yeah you need to install it and make sure to set your name and email
glad you were okay!
I had a power supply do that after a bad storm, wouldn't recommend it
Hell of a way to find out your house wiring's messed up though
Yeah, go to GitHub and in the top right click the add button, then add new repository
Gil does have a vanilla entry in Data/Characters that sets him up as a nonsocial NPC. So using him as a normal NPC in the event should work just fine.
Ooh. Cool, thanks
i’m curious and away from my computer atm, does that mean he has portraits and sprites and stuff too even if not used?
Well he has portraits that are used
He has portraits, they are used for the Desert Festival dialogue
SVE,Wilford,DD,L&O,Ayeisha,LittleRSH,Sunberry,Juliet+Jessie
so many more buildings
Gil doesn't have a 'sprite' as defined in the usual manner though, and his sprite data is mostly nulled.
cool! are you combining all the maps into one?
(very handy to have this actually, thank you)
only in Tiled
Since Gil uses Cursors and Cursors_1_6 exclusively for his appearance
otherwise he's a map patch
interesting! i ask because i have a maptile NPC lol
Yep, that's essentially what Gil is too. 🙂
probably are some things I am forgetting and aware of a couple of things that have not been updated in ages so not included (Riley)
he does use his portrait when giving u stuff in monster hunting quests
A Map tile NPC is not prevented from having a portrait. 😄
Gunther's sprite is kind of like Qi's, only the front view of walking is modeled. xD
yeah mine has a portrait lol but his dialogue is just a tiledata dialogue string lmao
If you tried to make him walk to the side or up with his vanilla sprite, he'd teleport like Qi does every few frames.
hey at least those guys have names and portraits! poor hat mouse is just a blob in Cursors and three strings
Wizard is fully modelled
Now, the Governor on the other hand.
He is just never seen from the side ever.
so is Morris, for his 2 events
or back.
even leah’s ex has full sprites i’m p sure
wizard even has a few animation frames (some kind of meditating pose?) but the animation when he stands up in that one event is, like, coded wrong, and it looks goofy
Marcello's also the balloon rental guy from Harvey's heart event
ah!
So it gets repurposed there.
a man of many talents
he does it all
Fizz
govenor is literally just 🧍♂️
why isn't- AH HECK, Loadables bites me again
i mean hey grandpa in character is a single stray pixel
alright NOW let's see if this runs
not much left of him
Adventurer's Guild doesn't have its own event file, gotta load that empty
naught but ashes…
a single spec of ash 
please don't ping me in replies
shit sorry
question! Im making some farmer hair sprites for the first time, and I have a few questions: 1.farmer assets can go outside the 16x32 square right? 2. does anyone have an example of how they organized their hair spritesheet? and making it animated is just a matter of having 2 extra hair frames per angle im assuming?
i think grandpa's actual sprite is in cursors?
anyone done this guy's backstory yet? or does he just work in the city during good weather
he stole from the mermaid
fandom's theory is he's a ghost
I figure he's a dead mermaid's lover
doesn't the library book explicitly say he's a ghost?
def dead
why is grandpa's one white pixel there anyway
his actual sprite resides in cursors
He's not dead, he's just resting
maybe it’s like that load bearing coconut jpg from tf2
./Strings/Notes.json: "13": "<trimmed> It's rumored that on stormy days, the ghost of an old mariner appears in Stardew Valley, clutching just such a pendant.\n <trimmed>",
while i don't know how farmer sprites work specifically, if every other sprite is 16x32 then no, they cannot go outside of that rectangle
rumored so not confirmed but probably
scooby doo
ah, I figured since a bunch of FS mods go outside the square we could too
well if ur using FS you can
nope. FS does it's own completely separate stuff
i think you're gonna need that for if u want animated hair anyway
don't think the regular game has that feature
you can't just add extra frames willy nilly so yeah I think you need FS for that too
in general you cannot just add extra things somewhere they aren't usually, when it comes to using vanilla assets
game doesn't like that™️. like if u want a bigger portrait u need a special framework
I would like to formally thank Khloe for leaving the honk button in BGM 
it indeed makes the game menu... better
I plan on having that trigger some debug logging at... some point. Just so I can make people go hit it.
"let's figure out what's wrong, just honk for me please"
can you pass more than one token into i18n and what would be the format for that??
Like this?
"Introduction": "{{i18n:Dialogues.CT.Introduction |DT_name={{DT_name}} |DT_wizard_name={{DT_wizard_name}} |DT_wizard_fem={{DT_wizard_fem}} |default={{i18n:key_not_found}}}}",
Aha thank you. Ironically yes, I am also gendering the wizard
Do you want the dynamic tokens I use for it?
gif comparison
I've already set my own, I just hadn't used more than one in a single key before
probably should do the beach/forest another time
:|
why did that cause the event to just not fire
heck
it was firing before, just not passing the token right... now it's not- why. It's not even throwing errors, give me information
does the event exist if you patch export the correct Data/Events/File ?
it does not. Inexplicably, it gives me some grandpa events, not not that one
@ornate locust You leveled up to Farmer. You're now a prettier shade of blue. Thanks for sticking around!
so it's not being patched in for whatever reason, rather than a problem with the event triggers
it was working before I changed the tokens... Could that just cause it not to patch in at all?
{{i18n:MV.Municipal.GuildIntro.06 |RasJob={{Lowercase:{{RasJob}}}} |RasGenderHe={{Lowercase:{{RasGenderHe}}}}}} like this is what I'm doing
is it different in events or something?
wait I think I found a typo
cross fingers
nope. Ugh. I have errands to run, I'll figure it out later.
I spy my Law & Order mod 
you do
if you want to add a mailbox to the finished building, at some point I can add a couple of randomised schedules for Ayeisha to go there at some point, or a drawn on mailslot
Oh like just add an image of one to the exterior and you do the rest?
yes, I'll let you choose whether to have a standard box, if you want a "maislot" in the wall.
I'd imagine a "police station" probably wouldn't just have an external mailbox.. 😛
probably a mail slot is fine I'm adding a garbage can next patch to the one tile that isn't used by the station repair event
I might take inspiration from Ayeisha to have Malon do Lon Lon Milk deliveries to residents in my Zelda mod. xD
If I’m editing buildingdata in c# and I’m making a new upgrade for a building and I’m changing building.IndoorMap, do I do it like assets/Greenhouse1.tmx? the assets folder is in the same directory as my DLL file
and now we are back to why is this event exploding
I have a rice krispie treat, it is time for science
No. Just like in CP, you load it in as a new asset and reference that
Oh ok thank you so much!
Let me know if you want help or advice for that
Okay, so can you pass tokens into i18n in events at all? Because if I remove the bits for the tokens... the event loads
It doesn't load at all if I add the bits that hook up the tokens
Typically it's safer to not include your tokens inside an i18n (because you don't run the risk of someone accidentally translating your token), but I don't know that it would stop it from working if it's implemented correctly.
Like it won't even patch in AT ALL if there are tokens passed into there
do your tokens parse on their own?
Guess that's my next stop on this
try patch parse <token> to see if you can get it to work.
ah thank you
I don't really have any plans for adding more content, since I'm definitely not a good writer 😅 But you're always welcome to turn your ideas into your own mod or an addon
patch parse "assets/{{Variant}}.{{Language}}.png" "Pathoschild.ExampleContentPack"
and
patch parse "assets/{{Season}.png"
are the examples from Content Patcher's documentation.
the first example has the mod ID in it as the second argument, which is needed for dynamic tokens, IIRC
Yeah my tokens are working
I'm doing it like this, which is a working example apparently?
and I had read that part of the content patcher stuff, it looks like that
Right, but what is your actual translation?
Does it use all of those tokens in it?
Also, you are using EditData and not Load for the event code, yes?
!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).
ty
I am using EditData and the translations use the tokens I passed through, yes
only other thing would be the Lowercase, but again, I'm not entirely sure how that works or if it would stop it from working.
I tried removing that and it didn't help
hmm
the only thing that fixed it was removing the bits that pass through the tokens
And obviously the text is messed up that way, but the event loads
and it's only broken in events?
maybe someone else who's played with events more could chime in, but is it possible that there's a symbol that needs to be escaped somewhere because the event is a slash-delimited thing?
I've used one of the tokens in dialog and it worked, yeah
did you post your event code already?




