#making-mods-general
1 messages ยท Page 117 of 1
I have three ways to get to my expansion. A secret hole in the quarry mines, a spacecore warp totem, and a secret quest building that acts as an obelisk
for example, for the expansion i'm not yet making, i've cooked up a method to get to [REDACTED] which is, as far as i know, unique
Your own ass custom c# yeah that works too
you know it 
Thats something I noticed, methods for travel often have to be unique if not using a framework, two people cant use the same quarry hole ๐
Make that 4, I forgot I made a boat ride in c#
if you're fine with adding Shovel as a requirement you could dig your way there
I was tossing around the idea of adding pseudo random islands you can visit Animal Crossing style via plane, I dunno if I have the energy to actually do this idea lol
The quarry has many walls, Edd boy
chaotic idea: a location that can only be accessed by passing out in a different location
That could be really fun for a secret location
no monsters though, so have fun bombing yourself
or just use fishing rods until you pass out
Shrimply wait until 3am
Like passing out at 2am inside lewis's house sends you straight to hell
Or the secret room
The floating lucky purple shorts makes me* feel like its already close to hell
if you were making a place like Magicant, the travel method could be "sleep in a specific bed". anything is possible
I'm tempted to make a cp patch if possible to change ichors portable hole to the sims1 magic hole with arrow
love of cooking on the backburner while i go out and get some inspiration to redraw that boat cutscene from a while ago 
go for it, all the assets are loaded in so you can just EditImage/EditMap them
i steal this boat. the perfect size
I miss Sydney sooo muchhh
(some alternate map appearances and item textures are on my list of improvements to make down the line)
notably i want to have at least one other texture for the holes that is nicer for colorblind players
how'd you know that photo's from sydney. i've been rumbled
There'd be like 5 people who get the reference of the magic zone from sims1 though
Just a lucky guess I think, there isnt any definable tourist attractive visible in the photo, right?
that could be from anywhere
i had not looked behind the spoiler and i assumed you were talking about the NPC
i know i shouldn't redraw a sprite that's only like a month old but man i want that boat
From what my bad memory can remember the boat you had looked great 
I have not 
Does your boat ride go from the right of the beach, on the second dock? I saw that as a spot to maybe use ๐ฎ
My boat ride is attached to my own custom location that then does a little timed event to move to the full expansion
I barely touched vanilla for full compat 
Valid, very valid
vanilla is so crowded, the struggle is real
i doubt ill even have my charas leave their location lol, i don't want to deal with other people
very realistic
I just want a place that you can walk to, but that seems very difficult without breaking compat ๐ฆ
First message will always be: "is this compatible with SVE?" Me: I mean sure, but my expansion is suited to be a midgame to near perfection playstyle
I like the idea of catering to people bored of the late game 
i cater to those who don't play (me)
i think the best way to handle this is to be a little flexible and have a few potential spots. then you can use the one that works best with the user's mod loadout by checking for stuff that conflicts with you
Sidenote is it unreasonable to lock a romanceable behind a 50m quest 
that sounds like a nightmare lol
50... meters?
50 million doller
having multiple map patches with different layouts and world map edits and schedule setups? id rather just mark it as incompatible
Only if the goal is to keep anyone from ever interacting with it
i think that's unreasonable, yeah
I currently have the idea set at 10mil but it honestly might be funnier
I was 100% thinking 50 minutes lol
drat
lock the CanBeRomanced flag behind a five-minute unskippable cutscene
like my current map entry patch straight up destroys the useless playground in town. if someone's modded the kids to go there then they're gonna have to find some bugs on the ground to play with
.... I've already done this
except not unskippable
or make it skippable but don't set a skip action so it can be lost forever
'i could only ever love someone able to beat Junimo Kart(r) in 3 continues or fewer
'
'u have 10 minutes'
...i feel so tempted to add a basement or something
Does SMAPI do semver checks for mods depending on other mods? I'm curious if graduating a mod to 1.0 will cause it to blacklist mods depending on the 0.x version.
no, smapi only has min version I think
I believe only โor newerโ yeah
that'd be a #modded-stardew question 
unless you want to make your own, then we can help you
how do you add a tile property to a tile that doesn't normally have it?
like "diggable T"
I think you can do that in tiled, or in c# via setTileProperty, not sure for cp
๐
it didn't work in tiled
i wanted to be able to plant trees on these spots, but setting the tile properties didn't change anything...
Perhaps you could set a TileData: Diggable T in the back layer?
It just requires setting one for each spot where you hope to plant trees. I guess this isn't a very good solution, but it's the only method I know.
๐ so apparently just that one tile didn
*didn't like me
switching it to a different tile fixed everything?
i can now plant as many banana trees as i could ever want
I have two custom maps (as different mods) that add green crystals as teleportation points in the original greenhouse, but they are not compatible with each other now (the positions of the green crystals are different, so theoretically they should not affect each other). If I use either one alone, it works very well, but when using both at the same time, only one can be loaded and displayed. How can I modify the content file to make them work together?
if it's a 1 tile editmap, you should have compatibility
mhm
How is it possible that down arrows turned into stars..?
(someone posted it on my v2 fix)
uhhh i have forgotten what symbol it is
but if you're loading the whole greenhouse, then it's incompatible...
try = ?
oh wait no that is the star 
I added green crystals through "editdata" without modifying the original greenhouse map. In theory, they should be able to be used simultaneously, but unfortunately, they cannot.
ok, but.. what exactly is the situation with the maps...?
I meant like without my fix (with just original v2) they are supposedly normal arrows, just without a recolor, which is confusing me even more ๐
i can't really understand what you're talking about without some kind of example, more detail, etc...
or an image of the map
oh, does one of their mods change something in the spritefont then? 
can i see the content.json?
!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.
No idea yet, just asked for the log
Those arrows are in fonts? 
yeah? they should be i think
i'm like 85% sure, but > turns into -> arrow
Sorry, I'm launching the game to take a screenshot, so my replies might be slower. (By the way, how do I post text in code format? I'm not very familiar with it.)
just uploading the json link that smapi gives is good enough, large code blocks here make it hard to read
but if you're doing small ones
!codeblock
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.
Hmm either I'm blind or I don't see them anywhere 
@stable grotto Just a heads up - Vibrant Pastoral Redrawn is missing a dependency in the manifest - It requires MixedBag's Tilesheets, but lacks the dependency in the mod manifest.
Oh, thank you, I understand. Do you need me to send both content files as links?
...loosesprites/font_bold/font_colored ?...
i don't see a down arrow in here 
it's deliberately missing since I didn't change mixedbag's dependecy from grapeponta.VibrantPastoralRecolor to VibrantPastoral.C when I updated to 3.1.0
?
Huh.. I wonder where it comes from then
Maybe SVE adds it's own arrow? Since those are SVE locations..? But that wouldn't make sense why it turned to star.. I think
Fair enough - But it turns out you can hit it from the wrong side and break things. VPR tries to load when Mixedbags is missing.
https://discord.com/channels/137344473976799233/1309779610631933993
best case would be if I got elle's permission to add the compat for her Dirt and Cliff Recolor
then I'd at least have a good reason to update
only if you ignore the dependencies on nexus
Oh yeah, I guess it is SVE
Yeah, but people do that or they assume they have it already - Most mods will fail gracefully and not do a partial load. Either way, I just wanted to bring it to your attention in case it was a mistake.
SVE moment (?)
I see the old "When in doubt, blame SVE" still works 
oh, I knew about it before I uploaded VPR, that's why it's missing
Alright. Either way, problem solved. In this case, intentional design decision, and that's the end of that. Thanks for responding so quickly.
as far as i can tell... nothing is loaded named As's go-van-dsp.tmx so i'm... unsure as to where the dsp is pulling from nevermind i have to get used to re-reading how the editmap goes from there
it looks sound, but i haven't tried to do an overlay with a single map in two different mods, what happens if you set them to false dependencies on one
Those are the mods I uploaded to Nexus Mods. As a beginner, I made quite a few strange mistakes (though maybe they're not even mistakes)...
One of them I haven't uploaded yet, because editing the same map has caused one of them to stop working.
I will try it.
If you haven't uploaded it would it be easier to merge
I don't know which one is the one you published
One cop is uploaded as an additional map, while the other was initially uploaded as a replacement for the greenhouse map. Later, I wanted to make an extra map version, but after encountering problems, I didn't upload it and the progress has been halted.
As_cop_greernhouse
This also very much explains the star 
๐ so it was sve all along
Is purple star even used anywhere? Just out of curiosity 
yep, it's attached to every stardrop message
i use it in loc whenever strings mention the special powers tab in the game menu
so I guess SVE is going to make that look a bit silly
Yeah... I guess I might remember seeing a weird arrow when spouse gave me the stardrop on the porch, so that's what it was
could they have possibly used a less-important character for the down arrow lol
like the stardrop icon in stardew valley
rly
What about that thing on a skateboard
don't you dare touch him
That's just a weird thing to patch in general.
๐ญ ok, skateboard guy will be unscathed
he said see ya later boi
I know he shows up on one of Emily's letters though
... why 
he's the best thing emily's got
it'd be nice if sve could just extend the font or something equally ridiculous instead of eating a character
Yeah, definitely a weird choice
The rest of the locations don't really interfere, but why Farm..? 
wouldn't that make, say, the grandpa cutscene noticeably weird
i'm proud of you, my beloved grandchild. you have earned a ๐ Stardrop
Hes pointing to the stardrop
Cool little dude in sunglasses riding a skateboard is essential to me one of my WIP npcs uses them extensively in dialogue
It's hard to believe it was never pointed out (as far as I know)
Well, I tried it out and it seems to be of no use.
...
So I was checking out Shiko
I spotted this: "@Litten1110 It didn't pass review, because I decided for it to not pass review and I asked MissCoriel to delete it since some "morally superiour" people here couldn't contain their desire to just instantly report something that was doing the community a service at the end of the day. That is why I decided to have it deleted. MissCoriel advised me to post it somewhere else which isn't NexusMods, which is something I might do some day depending on how much I care to post my days of wasted effort to the Internet again."
.. yes it didn't pass review because you don't have permissions to do any of that.
... is this a thing that's going on? Anyway, I don't want to go further b ecuase on reflection this could start an argument.
While there is a certain double standard in the rule, at the end of the day nexus mods has the right to have it's rules and them being enforced.
For what it's worth, at least smapi has first class support for mods not on nexus mods and will do update notifications for curseforge, moddrop and GitHub, and can also be pointed at arbitrary hosts. Even if discoverability of the mods is unfortunately centralised on nexus
Friends, what am I doing wrong here? The asset won't load at all, and thus keeps complaining that the texture is missing when I try to give myself the item: https://smapi.io/json/content-patcher/65f0e672bac0492d9f97823b9bc64cff
Are you Including it?
I just showed that as an include for an example so the log site wouldn't fuss about the formatting, it's actually directly in my content.json
are the tilesheet names supposed to have quotes? does your log say anything?
Here's my SMAPI log, it's just fussing about the texture asset missing: https://smapi.io/log/bc62214551e44f2db1d9f24b7019a490
Log Info: SMAPI 4.1.7 with SDV 1.6.14 build 24317 on Microsoft Windows 10 Home, with 17 C# mods and 11 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
I would try removing the quotes from the timesheet name, it sounds unusual to me to need to quote it
the vanilla furniture doesnt use quotes
Hm, yeah, I'm not using quotes on mine
okay, reattempting without quotes
I'm just used to using them because I was messing with String references and schedule dialogue before
quotes were the issue!
Now I have to fix the problem with the sprite cutting off weirdly and being the wrong size when it's supposed to use the default for the type
A reminder of a quirk of how Content Patcher (and by extension the SMAPI Asset Pipeline), Just because you have a Load statement doesn't actually load the asset, it just defines the behaviour on the event the asset is attempted to be loaded.
Loads (and Edits) all happen lazily at the moment the assets requested
The only exception really being vanilla assets, as the game eager loads most of them, and SMAPI on asset cache invalidation will tell vanilla to reload
I'm somewhat surprised in the logs that didn't attempt to load an XNB file, but the quotes may have convinced it to be an invalid filename instead
or smapi/vanilla has gotten smarter in 1.6.9+ and doesn't try to hit filesystem reads anymore for files that don't exist
Well that field is for a texture asset, so maybe that's why?
it would still use the asset pipeline to load that asset, and the asset pipeline always falls back to vanilla xnbs
As the vanilla Data/Furniture specifies texture assets that are xnb's
I thought I had seen this before, these are the only types that have set defaults
good to know, removing all my -1s xD
9 doesn't have a specific default, just falls to the switch block default of 1, 2 lol
Nah -1s are totally fine if it works - just note which ones have "unexpected" results and you'll be able to take advantage of them. The -1 makes it much easier to maintain (since the vanilla values are extremely unlikely to change for those) and would let you convert easily to other frameworks if you were interested later on
I think I prefer looking at the decompile to see the actual values lol
I dunno what other furniture you've got, but even base game defines the expected tilesheet size for the Child Bed
Rather than using default values
It's a sheet of just Child Beds
I've changed all the values but some of the beds are still complaining about missing textures? I'm so confused
How are the entries set up now?
also they are absolutely not the correct spriteindexes for some reason
fixed the missing texture issue, I missed a " for one line
Well, the index is probably based on TileSheets/furniture, so your sheet needs to be set up like that
This sheet is a mess, I'm not really sure how the indexing works here lmao
I suppose it was too much to hope that it would understand that the new sheet was a bunch of 2x4s with the front section after the main bed. xD
Yeah, index is generally based off the default texture
This explains why the furniture id's are so fucking batshit
I did manage to hit on ONE spriteindex that it likes for an actual bed, it's just not the one I needed. LOL
Oh god, I think it's 16x16 per index
Alternatively you could just load each texture separately and have 0 indexes all around lmao
also it's 6am, I should probably just go to bed and deal with this after some sleep
good morning!
Let's say I have a chest at tile [x,y] that has 12 parsnip seeds in the Farm House. I have a method that will tell me the number of items found in a certain location. If I set location to be the Farm House and itemId to be 472, it will return 12. Though I'm wondering if there's a way to return the the specific chest (or tile of said chest) that the seeds are in.
public static int GetItemCountInLocation(GameLocation location, string itemId)
{
int count = 0;
Utility.ForEachItemIn(location, delegate (Item item)
{
itemId = ItemRegistry.QualifyItemId(itemId);
if (itemId == null)
return false;
bool itemFound = false;
if (item.QualifiedItemId == itemId)
{
itemFound = true;
count += item.Stack;
}
return !itemFound;
});
return count;
}
You have to iterate chests instead, instead of using the utility
well you could still use the utility and check for if (item is Chest chest && chest.items ...)
depending on what you want to do with it, of course
1.6.9 added a way to get the path to an item for some overloads or something for those methods i think but, alas, the wiki,
The advanced forms now use a context object, which also provides the 'path' to the item. For example, an item inside a chest would have a path consisting of the location and chest:
Utility.ForEachItemContext(delegate(in ForEachItemContext context)
{
// remove pufferfish inside chests
if (context.Item.QualifiedItemId == "(O)128" && context.GetPath().Last() is Chest)
context.RemoveItem();
return true;
});
this is for the advanced foreachitem form e.g. Utility.ForEachItem((item, remove, replaceWith) => ...))
i assume theres one for InLocation too but idk
Thanks for confirming it's possible. I don't fully understand this now, but I'll look into more.
ok yeah theres just Utility.ForEachItemContextIn(GameLocation location, delegate(in ForEachItemContext context) { ... it seems
i think you just need to replace your current delegate (Item item) with the kind of delegate from that example block and then just grab the item from the context instead
I'll test it now
GetPath() will return a complete path for how to find the item but if its in a chest then Last() should return the actual chest its in
I made the following method that returns a list of chests. Then I put a big chest with the seeds in the farm house. However, the returned list is always empty. I used the debugger, and the context.Item.ItemId check seems to be true, so the issue mut be with context.GetPath().Last() is Chest. Not sure what the problem though
public static List<Chest> GetItemLocations(GameLocation location, string id)
{
List<Chest> chests = new List<Chest>();
Utility.ForEachItemContextIn(location, delegate(in ForEachItemContext context)
{
if (context.Item.ItemId == id && context.GetPath().Last() is Chest)
chests.Add((Chest)context.GetPath().Last());
return true;
});
return chests;
}
unfortunately since they're both new and also not methods I've used before, that's about as far as my knowledge on how to use em goes
they're on the 1.6.9 migration page on the wiki though, if you're able to get that to load
Never heard/seen that page before (assuming you're taking about this wiki https://stardewvalleywiki.com). Based on your previous messages, I assume it's down?
it's been very spotty the last week
https://stardewvalleywiki.com/Modding:Migrate_to_Stardew_Valley_1.6.9 is the page you're looking for. If it loads
I see, thanks
You're welcome
Hello, just a small interruption sorry
not exactly a code help question, but I've only just started learning c# syntax /etc/whatever
I assume, by this, they're asking for translator support...?
yeah i18n is short for international which is translation support
Internationalization
Yeah, they want your mod translated. You can find more info on it here https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Translation
auto correct took away the ization oops
Slightly related, what do the delegates return value mean? That may be the issue. When I was making this method #making-mods-general message, I originally had it always return false, which made caused it to never process any items besides weed.
for those utility methods the return value should determine whether or not you want to keep iterating
so, returning false means "stop iterating over every item in the world"
killjoys
Got it, ty!
I thought it was that but then got confused because there's nothing in my mod to even translate, it's an editimage cp mod lmao
this is so much uglier
do you have any config options
nope, no configs
Atrng adventures
I think you can ignore em, maybe they thought u changed the channel text
Just tell them there is no translatable text in the mod
is there text in the image?
Nope no text either,
it's this one: https://www.nexusmods.com/stardewvalley/mods/29589?tab=description
oh. then yeah I'm with chu
o.O the ai learns!
fixed this. Taking a closer look, GetPath() doesn't grantee the last element is a Chest
ofc not, but your if statement was checking for that, wasn't it?
Originally yes. I just assumed that based on the code snippet on the wiki. I can't come up with a reason why someone would only check one seemingly random index
if something is in a chest, the last thing in GetPath should be the chest it is in[*]
I can run it again, but I believe the last index was something along the lines of player inventory
Do you have that item in your backpack too

is it Worth It TM?
(I'm looking at the difference between the second and third lines, where I skip out on the expensive cryptographically secure init of new Random())
Yes. I just rechecked, so there is are a seed in both the chest and the backpack, but it only returns the chest now. Even though I know it returned like 4 objects last time
Hm maybe it's cus u are using item id
Instead of qualified item id
Item id only guaranteed unique within same class, eg there's (O)130 and (BC)130
In this case, the issue is less the hypocripsy of Nexus, it's the fact that Shiko's permissions are "You cannot do anything to this without my express permission." and Coriel is suggesting a way to get around that by posting what is essentially an unapproved mod elsewhere
Hm how do unofficial updates work then
a lot of times they're to mods that are open enough that you can post it somewhere.
I would hope Coriel didn't actually tell them to post the mod elsewhere and that's just this guy reading inbetween the lines of "you can't post this on Nexus"
it's an emote
dont see it in emotes
It's in Cursors next to the skip box
tysm! 
tbh now that I'mawake that's kinda what I'm thinking too, but also the tone of it was just "I was doign this for you!" and I.. >_>
f Shane 2500/D means 10 hearts + dating shane?
I think so
i am once again using this channel in place of wiki
doesn't it need to be f Shane 2500/D Shane
hm so game doesnt have innate dating version of dialog?
the thing i am attempt to solve is that some modded npc seem to give me "dating" dialog when i am not dating but above 8 hearts via this mod https://www.nexusmods.com/stardewvalley/mods/4668
but hm i am unsure if i can do anything about this besides harmony on content patcher & w/e other mod that give u more control over dating/not dating
do said modded NPCs have platonic 8/10 heart dialogue though?
What I'm planning to do is conditionally patch 8/10 heart dialogue depending on whether you're dating or not
so the mod i recall this happening on was ridgeside village, which does use "Relationship:Kiarra": "Dating", and so on
...
hard to find exact npc to check if its a rsv bug tho, perils of not immediately investigating
tho its not really a bug even, cus i am enable a normally impossible scenario (10hearts but not dating)
no, platonic sets the status of the npc to dating internally iirc
it's weird
tbh it would be better to just make the npc not date-able
i thought it only did that for draw

welp what if i just
change the draw of the little relationship indicator
the actual reason i wanted this mod is that i am dum and forgot if i max out friendship already when i see the 8 heart purple orb
i suppose i could just do mass data edit to make everyone except npc i actually want to marry not datable 
Hm, Kiarra should have platonic 8 heart dialogue, I think (since she becomes nondateable if you go Joja) but I wouldn't expect her to have 10 heart platonic. AmaranthCyan was working on a Ridgeside addition for PPAF (which edits the romantic dialogue to platonic options) but I don't think they released it yet.
oh i see
yea i checked the i18n they do seem very romantic
patch the dialog box draw it is 
so yeah the issue isn't so much that we can't have nondateable 10 heart dialogue, it's that most dateable NPCs don't add the actual lines for 10 heart nondateable 
... unused beta portraits?
They're part of Leah's 14 heart event
She teaches you how to paint with Marnie as the model and asks you which style she should go for
Oh! That's actually pretty neat. Another reason to get that 14 hearts events for all mod, huh? 
You know it 
There's also a sprite for the farmer's portrait of Marnie which is, uh, pretty wonky 
... where?
LooseSprites/temporary_sprites_1
Oh dear. That's a potato with a wig!
(This is where I'd use the LMAO dog if I had Nitro. We really need an LMAO Dusty emote.)
The farmer might have hidden musical talents, but apparently doesn't have any hidden artistic talents ๐
I mean... it is a nice potato!
Typical farmer, too much time looking at potatoes and not enough time looking at people 
Hello! Am I allowed to send a SMAPI error message in this channel? It's a bit long -- I wanted to ask so I don't get in trouble for spam or anything. Ty :)
Hmm, regarding 10-heart romantic dialogues,... The platonic friendships mod makes it so you can reach 10 hearts without dating the dateable npcs, right? It's been a while since ive used it ..
!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).
Thank you!
(Unless it's for a mod you're making, if it is then that would probably go in this channel)
It is!! Sorry I should've added that from the start.
Then feel free to send the log haha
!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.
use the parser so u dont explod this chat
Thanks!
https://smapi.io/log/aaa604e1a4764bf1b899227baabd4890 I'm making a portrait mod for Sam and I'm having trouble getting it to work. It says that the version in my manifest is invalid, but there doesn't seem to actually be anything wrong with it.
Log Info: SMAPI 4.1.7 with SDV 1.6.14 build 24317 on Microsoft Windows 11 Home, with 5 C# mods and 2 content packs.
Show your content.json
Will do, one sec!
Oh shoot I totally just spotted my own mistake, I'm gonna make some tweaks and report back after 
2000 (250 * 8) is 8 hearts right
yesh
y...yes?
๐ญ i totally didn't just look at my npc's 8 heart event to see what number i put there
this seems incorrect
public bool IsDating()
{
if (Status != FriendshipStatus.Dating && Status != FriendshipStatus.Engaged)
{
return Status == FriendshipStatus.Married;
}
return true;
}
ah nop its fine
decompiler go brrr
why?
iirc that check is used for events and youre supposed to be able to see the "dating" events when you are engaged or married, too
im not sure what this code would look like in source
i would imagine literally
Status is FriendshipStatus.Dating or FriendshipStatus.Engaged or FriendshipStatus.Married
or the == equivalent
Status is Friendship.Dating or Friendship.Engaged or Friendship.Married
the decompiler sometimes has fun
it can do so as a treat ocasionally
left is decompiler. right is source
yo i want to draw something dynamic in the mod settings panel, is this ok or a nogo? Dynamic as in a table listing blacklisted monsters which can be updated by user action in-game
mainly equiping a frog trinket
meth2
i assume this would mean recalling SetupConfigMenu during game?
but idk if thats something i should do
mod settings like GMCM?
ya
u need to make a custom option
a custom option?
oh i think i remember methods mentioning that in the interface
documentation reading time
nice it has acallback when the menu is opened which means I don't need to fill my code with events
u could just continue to add more checkboxes
nah, it does remove
what mod is completely deleting a monster type 
nooo not deleting monsters
it's my BetterFrogControl mod, when a player tells their frog to spit a monster out it is added to the frog blacklist
so the frog doesn't eat that same monster / monster type
yea like, the ez impl would just be
and these blacklists are cleared during gameplay when the player exits a lvl or time passes or whatever
get the monster data and add 1 checkbox for each monster
u can update the config to reflect changes this way
but u do get more freedom if you just make custom menu ofc, up to you
if u want u could just add a button in gmcm
to open ur own menu
then u can optionally let ppl hotkey that
I re-did my NPC's gift tastes (trust me, the file was clunky since I was listing individual items and wasting my time in the process lol). I know that there are gift categories such as -2 for gems, but how come there isn't a category for artifacts? Minerals get their own category too
I have ask him the permission for publish (not respond yet and probably never) but it's just for me and my friends that's all
These sprites in Cursors are unused in 1.6, right?
those look like character/save creation menu sprites to me?
Ah, sorry โ I mainly meant the horse. I know it used to be in the inventory screen next to your farmer, but the new animal tab uses part of the whole sprite instead.
Like I said, I know it was used in 1.5 for sure, but I haven't seen it anywghere in 1.6. Meh. I think I'll just leave the patch in. Thanks!
that horse is used on the world map to show where the horse is I thiiiink?
maybe thats only NPC map Locations tho
unless that changed in 1.6? ๐ค
not sure Ive had a horse in 1.6 yet
Oh, well that's certainly a reason not to remove the patch!
lmao sry for the farm name, was a random image from google... ๐
I didn't even see that, ha. I can confirm both pet and horse info were moved from the main inventory screen to the animal tab.
Doesn't look like it.
k Im out of ideas where its used then :p
hell yeah intermediate language !!!!
No worries, that was very helpful!
(for fun, we have decided to stackalloc in IL)
are you even modding sdv? :p
I am trying to make a mod that adds some custom hats for my me and my friends. How do I start?
I mean, what do you think
!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.
for hats, you can do it via content patcher, but you can also check out fashion sense
whooot
So as a follow up to this, it appears that multiples of 4, starting at 0 and ending at 28, will line up properly for the furniture sprite index placements. So my solution was to keep the same PNG that had all of the child beds on it, but to load a blank 512 pixel wide and 64 pixel tall PNG for the remaining 8 child beds and use EditImage to grab the section of the image that was needed to remain within those pixel coordinates
And it worked!
Is this to avoid dropping down and counting past all the middle and bottom parts of the beds?
well on one hand youre in the SDV modding channel
on the other hand... no :p
ok the log says you are sdv modding so all good :p 
I find this all very funny
Yes
hello i'm trying to make some pif door for my personal use but i don't know why the door asset are not loading this is the content pack
so
because the furniture asset is slash deliminated
you have to use the other slasshes in your asset name
Mods\\{{ModId}}\\Doors
thank you very much just i'm not sure i understand where i should change that ^^'
for the target load ?
okay thank you i will do that ^^
{{ModId}}_Door0": "{{ModId}}_Door0/painting/2 3/2 3/1/100/-1/{{i18n:Door0.name}}/0//Mods//{{ModId}}//Door", like this ?
so we are really uspposed to just rawdog UI with direct spritebatch calls?
You could use something like StardewUI or SpaceCore
{{ModId}}_Door0": "{{ModId}}_Door0/painting/2 3/2 3/1/100/-1/{{i18n:Door0.name}}/0\Mods\{{ModId}}\Door" , like this ?
The slash before Mods should still be / the others should be double \\
yea gmcm isnt a ui framework itself
i saw it uses Element and RootElement, I assume that's another mod?
in the example button i linked, the actual menu is made with StardewUI
Element/RootElement are from spacecoreui
Discord is probably eating your formatting because you're not using the backticks
u need to do a dll ref to use that
GNA is weird because it seemingly doesn't care about rects when drawing UI?
Since Discord uses \ as an escape character
so yea pick ur flavor 
as in, it only cares about the origin position
not sure what is mean by GNA
XNA
and when you call DrawString or whatever it just draws it and there's no way to know how much space the thing that was drawn actually takes
like this ?
well yea monogame doesnt come with ui stuff
(yes, you would measure the string first if you cared)
ya it's all sprites
u either do it urself or borrow someone else's work, who did it themselves in your place
Yep, that should do it
thank you very much for your help
stardewui highly recommended 
unity imgui isn't great but still spoiled me
Same
its got layouts n stuff
and grids that flow properly
and scrolling 
theres thread for it #1293051032904925255
how would this be done?
there is an assets forlder too should i also add it like this ?
(stardew has a helper function for it. BellsAndWhistles.SpriteText.getWidthOfString)
Did you already do a Load to that asset?
you mean this : "Action": "Load",
"Target": "Mods/{{ModId}}/Doors",
"FromFile": "assets/Doors.png"
Yeah, so you don't need assets in there then
okay thank you
In the furniture data, I should specify, since your Load is staring me in the face lmao
oh like this i applied the changes
Looks good, I would put the Load near the top but I think it's probably fine
C# habit to put stuff I'm gonna use later at the top
Thank you very much i'll try and see if ti work ^^
it worked thank you so much 
Anyone can help test my mod? I'm not sure why the seasonal changes are taking effect if I used the default spring tilesheets that I found
tilesheets automatically swap seasons if named spring_ something
not sure what you meant by "found" however
And if the location is outdoors
joy
why is Game1.random different between "load into game" and "sleep into new day" don't answer that question
If I add the island location type as a map property doesn't inhibit the changing of seasonal tilesheets?
Not sure if context affects that, the island is using summer tilesheets so it shouldn't trigger the seasonal change anyways
Im confused cause I thought ginger island was summer only but then I found island seasonal tilesheets and I can't find anywhere in the game that's has island seasonal changes
What are the island seasonal tilesheets?
Idk they're in 1.6 files
they may be the farm one
in maps? idk
are you using SeasonOverride
everything is in maps...
Yeah, as Lumina said the Farm_Island.tmx uses spring_island_tilesheet1
No I removed the season override because I'm trying to make a seasonal island farm now
also if I wanted to alter the starting seeds is it possible?
But it doesn't have the island location context property huh. I'm guessing cause I'm at work lunch break
If you mean the farm, it's not on the island, it's a starting farm
https://stardewvalleywiki.com/Modding:Maps#Farmhouse_interior
FarmHouseStarterGift lets you change what's in the starting gift box
I was also looking at the code for island west is this where the ginger farm is located? The code for blocking the crows is here?
I think it's more accurate that the code for spawning crows is only in the farm class
Yeah, it's an event specific to Farm
reasons 
Are there any tutorials on making farmhouse layouts? The wiki page on map editing lists a few properties applicable to the farmhouse, but that's about it.
I just realized a limitation on this math I did after uploading my new version... But honestly if someone needs more than 60 HP/s regen then I think god mode might actually be better for them
alrighty so how do I convert Json Assets mods yall
I've been comparing monster types (for example, two different monsters are slimes) by using monster.Name, is this the way or is there some kind of TypeObject I could use?
on the sdv wiki, under modding category, there's all the new stuff for Modding:Items
which covers pretty much everything(?)
you should probably be comparing their types instead
c# class
I don't know that there's a full on tutorial but generally the practice is to start with the unpacked vanilla farmhouse map, save a copy, and make your changes on the copy.
Major considerations for compatibility are the locations of the vanilla renovations. And the fact that the starting farmhouse level has a set starting bed location that can't be changed (9, 8 IIRC)
Hey everyone, I could use some advice as I am new to modding. I'm well-versed in C# and JSON, so that's not an issue.
I've got my custom item in the game, but I want to know how to make it spawn in the world. Is there a quick way to do that? I've been looking into the code using ILSpy, Visual Studio and prowling around on GitHub, but I can't seem to find it.
The idea is that a barn animal leaves behind an item once a day, at a certain time per day, if a condition is met. I'm using C# to do that while I have a separate content pack for the item itself.
I appreciate any help or advice. Thank you.
like a dropped item, or something like a forageable plant?
oh
for dropped items on the worst case you can look into pig code
no
truffles are pickupable?
I tried that but it justs JSON
damn it's been a while since I played this
Are you hoping for normal farm animal business or something else
Normal = just like one of the vanilla animals (pig?)
basically the C# code loops through all barn animals and checks for a condition, and if that condition is met, spawn the item like a truffle would
yes basically
I don't think you need C# at all for that
but from looking at the JSON code, it's done one-by-one on each animal, which means it doesn't take modded animals into acconut
account*
that's even better, I'm sure I'm overcomplicating it
Here's a custom "dig up" animal that doesn't replace pig
It's entirely content patcher
the creature
That said you are subject to the vanilla pig digup rng with this
That's where you might need C#
I'll take a look at least, yeah
But I'd worry about that later, get it running with standard setup first
the mod itself is simple: if the animal's fullness is a certain value, leave behind manure that can be turned into fertilizer. I got everything working except knowing how to spawn the manure in lol
yeah. thank you
Oh they're so cute
I have it doing it once a day but I suppose I could check the fullness sporadically... gives me some ideas. thanks
There is a poop mod
๐
There is.
It's independent of animal product tho
I'm sorry the way you said that was funny
Iridium poo
When you set up a shop, is there any way to make "this item only has 50% chance of appearing per day"?
I tried "Condition": "RANDOM 0.5", but apparently that means "50% chance when you open the shop" and I can just get it to eventually appear by closing-opening the shop.
Yeah sync random
I forgor the syntax but I'm psure there's a vanilla store that does it
Traveler I think
Aa alright, let me see...
This one is rando seasonal fish I rmbr the person who came asking about it
SYNCED_RANDOM day randomKey 0.5
One question I had is how do I make sure furniture goes to the right spot when upgrading the house?
(you can also change it to tick or season or year and optionally add @addDailyLuck at the end)
yeah, and any other random with the same key will be in sync with it
in hindsight putting just randomKey as an example is a vague choice lol sorry
no idea with the masked stuff and no json
if you censor things you make it harder for people to help, just so you know
Looks like you're using Fields wrong, but that's about all I can tell
yeah you kinda covered up the stuff that tells you where to look
Yar that's alright. And seems like it works! Thank you again. 
do you have an optional dependency or late priority?
I don't think you do, the game has some hardcoded shifting but I think stuff being in the wrong place is just a common issue with upgrading
?
Chu's discord didn't scroll๐
!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.
that is the json
I'm not downloading that lmao
no, use the uploader
you are adding items with just context tags, i am not sure they can work
they probably need some mandatory fields
these fish should be added
By a separate mod?
then why not having the context tag directly added to them?
yea
oh
Did you make sure you're patching after that mod?
you need a different approach to edit context tags
i don't remember which one but you are not at the right level
let me grab that
thx
{
"Changes": [
{
"Action": "EditData",
"Target": "Data/Objects",
"TargetField": [
"199",
"ContextTags"
],
"Entries": {
"food_soup": "food_soup",
},
},
{
"Action": "EditData",
"Target": "Data/Objects",
"TargetField": [
"456",
"ContextTags"
],
"Entries": {
"food_soup": "food_soup",
},
},
{
"Action": "EditData",
"Target": "Data/Objects",
"TargetField": [
"457",
"ContextTags"
],
"Entries": {
"food_soup": "food_soup",
},
},
]
}
food soup
this has been causeing me a headache for 2 hours now
I think you also need to make sure to patch after that mod. As two people said
i don't think that's the cause?
Either with an optional dependency or with priority field
you can replace the entire Context tags field if you want. it's not recommended, but you can
you should still do what lumina says though, but that alone won't fix the error
but sure, i can try to provide an half incorrect fix!
That is how you edit the fields of an item
just with field?
I believe Fields would work that way, if you wanted to obliterate all the ContextTags
this looks odd to me
It does look like it would work lumina
it looks odd because it's absolutely horrid for compatibility
you SHOULD do the way you suggest. But this way works too if you just wanna replace the entire set of tags
The warning that was popping up was making me think this mod is trying to access Objects data too early
@atomic vale You have to make sure your edit order is ordered properly. Your error is because your mod makes edits before the mod that actually adds the fish. When your mod tries to add tags, the fish does not exist yet
i mean
i don't remember just "field" being a thing
but well
i didn't open a mod file in like one week
so, an eternity
It's Fields in the provided json
(except quickly earlier)
it is a sperate mod that is adding the fish so how do I fix that?
Easiest way is to make your mod dependent on the other
what is a optional dependency again?
as the mod is going to be in a mod that doesn't need the mod i am refencing to run but jsut for this compat
If it's for compat and you want optional dependency, you'll need to make sure the patch checks if the mod is installed
(which i didn't remember either, but i feel it's a pretty niche use case now that most stuff is at deeper level and need targetfields, hence me not remembering fields)
Fields is good if you have a single thing nested in models/objects all the way down
As soon as anything is in a list/array, you need TargetField
it also works on slash delimited strings too iirc
yeah ivee used it often
"Dependencies": [
{
"UniqueID": "", //whatever the mods unique id is
"IsRequired": false //optional
}
],
And then in the patch that adjusts their context tags, you need a
"When": {
"HasMod": "" //whatever the mods unique id is
}
Otherwise you'll get some fun errors when the dependency is missing
is this in the manifest?
Dependencies is in manifest, When is in the content
thx
Specifically on the same level as the Action that denotes the patches you'll be doing for the context tags
{
"Action": "EditData",
"When": {
},
"Target": "" //etc and so on
}
I've started moving mine up so they're more obvious
my brain is trying to wrap around this
Well, the dependency is the easy part, all you need is the other mods unique ID
Then you can make the switch to using TargetField and worry about the When last
I need to figure out how global storage works I guess
[Unlockable Bundles] cleanupDay was called by NotOnHostComputer -7105846935796677645
[SpaceCore] Doing skill menus
[SMAPI] Skipped reload for 'Cornucopia.MoreCrops/teabushes' because the underlying asset no longer exists.
[Unlockable Bundles] cleanupDay was called by P0 2382915790532795785This hasn't happened before today but I am getting this error just before I crash on my multiplayer game! Help!
Has anyone seen something like this before? Is it something on my end or do I tell them to re report on unlockable bundles? (no log ofc)
without a log im not even sure if that's actually an error or just a warning that doesn't actually affect anything (as in, not the actual cause of the crash)
im like 85% sure the "skipped reloading bla bla" stuff is usually a warning and I don't think that can really cause a crash?
Okay so it's just a situation where I respond with "Can I get the log according to the instructions please" and they never respond back
Users really love coming up with new and innovative ways to not follow simple instructions to provide a copy of their log.
So true
(I lied. It's not new or innovative they just don't.)
Well the person who uploaded one specific log message to smapi recently for me was pretty innovative
New and innovative methods such as copy and pasting 60 error message lines into my comment section
(it is a WARN level log)
"here is my error log" โ
"here is my log error" 
Skipping because the underlying asset no longer exists is usually what SMAPI says when it's shutting down isn't it?
i feel like I've seen it happen once just during gameplay overnight but that might be my memory making things up
that is A cause though I'm pretty sure yeah
which raises a good point. can we even be sure the user crashed? maybe they clicked the X and didn't know what would happen
It also happens on a patch reload if you changed the name of an asset for some reason
Ah, yeah I can see that
it happen sif you use a save-related token in an asset adn then quit to title
but it's completely harmless in that case
ie, I don't hve access to {{season}}PrettyBush anymore but I'm also staring at the title screen
its a very simple asset in my case, just a simply loaded tilesheet
does it rely on season
seems like something a tea bush sheet might
"Action": "Load",
"Target": "Cornucopia.MoreCrops/teabushes",
"FromFile": "assets/teabushes_{{season}}.png"
},```
I get that message all the time for custom farm maps when I return to the title, yeah, so completely harmless in most cases
i would be surprised if unlockable bundles was at fault either lol
How about linking to a youtube video of a 2 hour stream they did with two timestamps of the supposed issue, only for it to have nothing to do with your mod?
waiting for someone to write a screenrant article about a bug as a report for a mod
Or what was that other one... someone got a link to a GPT convo where the person requesting help had uploaded their log to GPT
that one takes the cake for me I think, I think I'd rather receive anything else than that as a bug report
Technically I guess you could say at least that one had a log involved
Oh god I actually just got into this via gpt last week ๐ซ to it's credit, the amount of minute details it gets completely wrong really helped me learn how to look up info on my own
Wow
Year perhaps
maxute
Please don't bully my teacher
Please learn from anything else
you'll not receive any love for any AI like that in here
all too easy to take it too seriously when it feels like once a week someone comes in citing their chatgpt code for their mod or mod help lol
"I keep getting this error can anyone help??"
"Yeah post your code though"
"Here's my code by the way i asked chatgpt for help so its probably shit ๐คช but whatever"
(that's not an exaggeration)
is fish pond water color able to be changed with CP or is it hard codded?
CP now
The worst is when they dont even take it seriously lol its like if you dont think chatgpt can write good code then its not like any of us want to fix it for you
I had made a mod for it, but thankfully it was consumed by CP so now I'm free
fresh off the 1.6.9 presses for that one
is that for my post?
Yeah, same for Button's reponse
k i can't seem to be getting it to work
you might be able to load the wiki page but who knows
Is the wiki still struggling?
Did you change your format to 2.4.0?
very much
Someone put it out of its misery
im close to just downloading individual pages as backups that I use often
I'm always surprised when I click a page and after the 5 minute load time it actually pulls up a properly formatted page
I probably should at least download the migration pages
I've taken to not closing pages again, like when I first started modding lmao
I mean if you download them then we can spread copies around in the channel
Just like the dark ages..
lucky you! I just get absolutely no css in mine. Pure white background and black text, no padding, no formatting, all natural
also fwiw the content patcher format version doesn't matter because it doesn't need a rewriter
Ah, I'm never sure exactly what features are blocked out by format
I don't know, I'd expect a 90s looking webpage to have more animated gifs and background midis.
just decompile the game and read the code!
unless you're working off an old decompile/unpack you don't need a modern CP format
No joke, I've started doing this and opening contents and mods before the wiki now
we might have to
edge cases don't interact I didn't think too hard there
I'm actually surprised at the sheer number of randoms the game inits
r u manually getting each one
the wiki is working of for me for now
no, most go through a handful of helper functions I'm patching
Everyone wants their first game to be procedurally generated
repeats 61 times... this frame?
not necessarily this frame
just 61 times, exact same seed
why ๐ฆ
oh my god this is hialarious
1000, 7, and 11 are maybe some of the most random numbers i can think of, so that looks good to me

it's initiating a random..for every quest...in the quest log...of every farmer
because every farmer is deserialized for the loadgamemenu
i nominate 8868 as the most random number, being the ascii int value of XD
this number was decided on from years of study by mathematicians and scene girls
incidentally, what's the draw to refreshing the rng? i thought we already had a mod to do this, or is this the continuation
what!?
so there are two previous mods that try to do this
both kinda just replace Game1.random with their own random impl
but Game1.random is not the problem
the problem is all the times the game initiates a new Random
ah, so this is another transpiler MIRV
MIRV?
well i was going to call it a carpet bomb of transpilers, but with a bit more precision
another prismatic-everything mod
blueberry, there's only one transpiler so far
most (and this is just MOST) of the random number generation (that I care about) goes through a handful of helper functions that I've patched
very few new Random left in the game, there's a handful of things related to a new secret (which I don't care enough about)
the chance of getting prismatics from big meteor
which also I don't care much about
I care more about the day to day randomness of, like, rain chances
(hi Khloe!)
this is the one transpiler
bool found = false;
foreach (CodeInstruction instruction in instructions)
{
if (!found && instruction.opcode == OpCodes.Ldc_R8 && instruction.operand is double v && v == 0.0)
{
found = true;
yield return new CodeInstruction(OpCodes.Call, AccessTools.Method(typeof(GameLocationForagePatch), nameof(GetValue)))
.WithLabels(instruction.labels)
.WithBlocks(instruction.blocks);
}
else
{
yield return instruction;
}
}
oh if khloe's around, love of cooking is getting a 2.0 release after the weekend, so you might get some spill-over bug reports if something goes wrong
why do you use if instruction.operand is double v over if instruction.operand is w? seems inefficient of u
speaking of rain chance, that's the next feature up
where I'll bend the rain chance higher if there's been a drought
Yar, you might as well give a blank document and ask people to code from scratch for you. I feel like at that point people should just ask for payment.
i feel this way sometimes with users asking for help at every step. It's ok to not want to figure it out, but then it's more fitting to commission someone than having someone else debug every single part every time you're stuck.
You can't item query the currency in a shop right
Or use multiple items
Is there demand for such a thing 
I wonder if it would be interesting to have a third stage for animals
My first thought was a la Pokemon and then I realized you probably mean old age
Better yet, give all of them 50 stages like Digimon
can stdv tell what health the farmer is at?
i wanted to have dialogue branch off based on if the player was "injured", and i could have the character just ask, and have the responses branch from player input, but it would feel more natural if they reacted
i don't believe there's a built-in way to check player health where NPC dialogue can reach it
Seems like the kind of thing that wouldn't be too hard to make a GSQ for, but I currently don't have any mods that touch on doing stuff like that lol
Aside from my personal trash pile mod
You're going to break all the predictors if you mess with these... I guess maybe that's the point for you, but I hope you note it prominently in the description.
yup, breaking all predictors 
but I'm not changing that specifically, I was just more amused because why is it different in MP
rAnDoM
(to also be fair, I think the
- I want to be pleasantly surprised by randomness.
and - I want to know the outcome of everything
is not the same person.)
I've been listening to an audiobook about the power of dopamine recently
Users when reading a smapi log
Hey all! I've tried 3 different tutorials for adding an object (food item) into the game, but despite the mod showing up in SMAPI and causing no errors, smapi can't find anything when trying to spawn it in my inventory. Can someone point me in the right direction for reading on what may be happening? json files are all valid, I have a placeholder sprite, etc. Maybe I'm missing something obvious. I've followed tutorials for json assets and content patcher. I'm about to start praying to the moon for guidance.
!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.
!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.
post your content.json and your log
do ya'll also use #mod-showcase for mod updates?
We use our best judgment... most of us. If it's a major or important update, sure. If it's "fixed typo in default.json", maybe leave it be.
it's also courtesy not to flood the showcase with your own posts
@ivory plume if you have time can you look over https://github.com/Pathoschild/StardewMods/pull/1028 ? I tested it with WAG 2.0 and it should work. Thanks
best judgement, either new mods or a major update, if i added like 50 lines of dialogue i wouldn't bother
I'll mainly be working on Stardew Valley 1.6.15 for a bit. That's possibly the last update for 1.6 though, so I'll be back on mods full-time after that and start clearing the backlog of PRs, releases, etc.
(i win the bet then i'm gonna hedge everything on 'possibly last update')
avi getting ready with the eyes emote
we love divisible by fives 
since i've been testing grandpa's evaluation recently... has anyone else had inconsistency getting the event to start when waking up on spring 1 year 3?
mm i can speedrun it if you want but i don't know how consistent that'd be
huh it should be guaranteed right, as long as you go to bed on winter 28
that's what I got from the testing
it should be, but sometimes it doesn't start for me until i walk outside, see the candles, get assaulted by marnie/kent/demetrius, and then when those are done grandpa shows up
I can't even use the showcase actually lol
You need to be orange, like us.
but I hadn't looked at my page in a while and aparently my mod had been broken for a month due to 1.6.10
oh cause you're backlogged by events?
and i just updated it, so idk if it is major enough
also how do yall test networking
no idea. sometimes it works as expected
Honestly, we're signs, not cops, but compatibility updates generally aren't cause for a showcase post, unless they're also major feature updates.
are you using day skips? i can debug for you on my day off but that's not for another two days 
i am exploiting debug commands to get to the right time and meet the requirements (hence the unwatched events), so that could be involved, which is why i asked in the modding channel
Of course, if it's something like Love of Cooking that has been broken for years, then maybe it warrants an announcement....
bluebs on vacation, blissfully hidden love of cooking 
but the eval event is in FarmHouse and the requirements are "558291/y 3/H" so i can't imagine why it wouldn't fire on wakeup
ya nah neither my mod nor the update are nowhere major enough
start 2 copies of the game
join local lan, no ip entered
you also want to test split screen which works different than 2 actual instances
huh, dunno why i didnt think of that when my current job involves testing the project doing exactly that
(i don't want to)
thanks!
well
i didn't even know stardew valley had split screen
i also don't know how! i've never seen split screen and i tell myself it doesn't exist and can't hurt me
i forget, but events go on a stack don't they? grandpa's is probably going after everyone else's because of the stack 
I test multiplayer by drinking a Scotch and hoping that it all works out.
I'll test split screen/mp once I get paid for it
im done with all this netcode stuff now that trinket is yeeted out of the door
trinket?
yea i was make a framework
split-screen support is mostly wrapping any per-person variables in SMAPI's PerScreen<type> class
and you start it by loading a game (not necessarily hosting, you can just click Load), going to options, and clicking this
i believe it, but the others are in Farm and not FarmHouse, so on wakeup i should just get the one. (also, sometimes i do! it's not consistent)
probably requires a gamepad to test properly
yeah, you either emulate a gamepad
or you buy a controller
or you say fuck that shit and knit a sock instead
or argue with ilgen
hey esca! Can I show you something fun
atra loves showing the new fun thing
sure, can't promise I'll understand it if it's IL or something 
atra just likes sowing fear in hearts of mortals
squints yep, good job with whatever those instructions are 
almost as scary as Button's pile of IL
(I did see you were poking at better rng, but yeah, I'm not very familiar with those internals)
I've never seen someone get so excited about a PRNG before.
well atra is now titled 'mathperson' so it checks out
this isnt very quantum
Meh, he didn't actually create a new algorithm, so it's not math.
true, you were talking entropy the other day, i was expecting some entropic RNG
I mean, I'm hoping for the best, personally, but I maintain that without a distinction between global and derived entropy sources, it's not going to "feel" that much better than what's there now.
at very least, I like the idea of tricking an rng into using seeds and then tricking stardew into using it
the only times ive ever thought about prng in sdv is when i get the dum wizard special orders
and the slime doesnt wanna spawn
prismatic slime/ghost goo I forgor its name my beloathed
aside from early FTM misuse of them, I remember doing a PR for one of the early rng replacers at some point, I think it had a divide by zero? 
basic new Random or Game1.random's good enough for me not to think about it
I think you could get decent results by replacing the game's seeded randoms with derived entropies - instead of replacing them all with the same global entropy.
How do you get your map to use custom tilesheets like from DaisyNiko's Tilesheet? Do I just do it the same way I do vanilla tilesheets? (i.e. copy the tilesheet to my map folder when making map, delete when finished?)
i believe daisyniko loaded their sheet, so yep just like vanilla
On another side of the coin, if I want to load a tilesheet for other mods to use or edit, then I just need to do Load with Maps/<Tilesheetname> as Target, right?
Alright, thanks!
Is there a way to override behaviour and inhibit the crows eating the crops.
yes, block Farm.addCrows somehow
well you cant override it, it's not virtual
~prefix crime~
can I remove fields from mod config?
i cant see to find a relevant method in the api
Does anyone know where the tilesheets of crops are located?
in the creatively named TileSheets/crops
(Maps/springobjects for the actual crop items)
With GMCM API? nope, you have to unregister and build it again.
Damn
Is there a way to change a map tile to another index via EditData?
no but u can editmap
Oh wait sorry, I meant via EditMap, but not by patching another map onto it.
Wait you can even set tilesheet? So in theory you can do an entire map patch without using Tiled?
Yea, I imagine nobody would do it like that. But you can.
but for small things it might be faster
dont need to parse a whole tmx 
thats why i did it
Here I am making 1x1 .tmx files. ๐
well now u can switch over 
This would be very useful. Thank you!
say tile action and touch actions r both new in 1.6 right
Can someone help me understand something. So in my mod. When upgrading from farmhouse 1 to farmhouse 2 its randomly shifting everything super far down and right. The map doesnt shift, For all intents and purposes the coordinates should remain the same but it's shifting. Is there something hardcoded im not accounting for?
renovations don't kick in until farmhouse3, right? it's been such a long time since i've bothered
what exactly is shifting?
!json (but also use this to show us your jsons)
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.
Does anyone know if there is a way to use "textAboveHead" on the farmer during an event?
can't
That's what I thought. Thank u for clearing it up.
unless you hard image them and use the object above head command
but then the farmer looks like they're holding up a text bubble, but it has been one of the banes of existence
you can possibly get around it by having a completely "transparent" fake npc that is directly underneath the farmer
with ignoreCollisions
(fake meaning, you load something like MyFakeNpc to Characters/MyFakeNpc as a transparent image, you then call that "actor" with addTemporaryActor MyFakeNpc then you set ignoreCollisions MyFakeNpc and warp that thing on top of the farmer and use it to "speak" so to speak)
Gotcha. Thanks a lot
I'll see if that's something I wanna do. Since I plan on making many events I might have to learn it eventually. For now tho I think I will just scrap my initial idea since it was just one dialogue bubble anyway and save what you said to use it in the future.
If I get the hang of it I can go back and improve on past events


are they?