#making-mods-general
1 messages · Page 489 of 1
ohhhh okay
so, yeah
good news, my crabpot fish work on the first try
i thought it added music
some instances it does..
i'll try it out! ...when i actually play stardew... more of an 'if' atp..
Like secret woods has different music in winter
aight i'm gonna go work on some portraits now :) nice chat!
Hello, I have an idea for a mod that I would like to bring to life, but I have no knowledge of programming. I was hoping to rely heavily on ChatGPT and the frameworks listed on the wiki. Could someone with experience working with these frameworks give me an idea of which one would be most appropriate to use?
My idea is basically to create “special interactions” between combined rings. For example, combining the burglar's ring and the napalm ring would result in the “piñata ring" with an improved effect that replaces that of the two rings that compose it. Instead of having those effects, it would have a “super” effect (with a 2% chance) of causing an explosion that would release the equivalent of 3-5 times the enemy's loot.
I've looked into frameworks a little, and I'm not sure if “BC” would help me change the “crafts” in the forge.
Please do not rely heavily on chatgpt

As for what you want to do, I don't think there's any framework that targets combined rings so it will have to be custom C#
Do you have programming experience?
no :c
and be aware that if you use chatgpt regardless of the warning, this server will not be able to help you with it when it inevitably breaks, as AI generated content is not allowed in this server, and that includes code
Hm combined ring is a netlist nice
idk, sorry
You could just append a third ring to do what u want 
Yeah it won't really be a solid way of making a mod, especially since understanding what you've made i suuuper important. Plus it's a fun skill to learn, i promise!
I learned C# to make my first SMAPI mod.. it's not that hard.. tho I don't understand things unless i see how it looks
AIs can't even make a functioning code, they just spit gibberish
But yeah remember that framework mod = C# someone else wrote and exposed to content for reuse
When you want something no existing framework touches then you gotta do it yourself
Thus my event repeater x3
The main thing is that idk if there's any game state query way to check what rings r in the combined ring atm
And the secondary thing is that you want some pretty niche effects that'll be a lot easier if you just did it custom
I really can't have the FromFile be from the original game i am starting to accept.... Which leaves me in the dilemma of either packaging the original games sprites or just letting you override one cat color with the mod cat skin......
what r u trying to do
Let you choose which cat is used in my mod events ^^" I made a false NPC with cat sprites but i'd like to let you choose which of the cats it is, currently its my own drawn one but some mod players are wanting the ability to choose
o hmm
Yeah
I feel like I'm so close to a solution that it'd be annoying to have to "quit" buuut also it's one small sacrifice to make to play my mod and i've helped commenters who want to turn it off go into the files and well.. turn it off
u can provide instructions to replace ur png with pet image of choice
should be same shape
yeah I think I'll just do that honestly, it'll be the easiest for me and they can throw in any other mod provided pet sprites too for personal use
this will surely have no terrible unforseen consequences whatsoever
That's probably fine but wow why do they zig zag like that
Lemmings
Idk how to phrase this correctly but I want to double check that there isn't a GSQ or something that keeps track of specific museum donations, right? There's just one for the number of donations made?
yeah, I don't think specific items are tracked (by existing GSQs), but that can check types
Yeah that's what I figured. I have an event taking place at the museum, requiring it to be completed because they're discussing certain artifacts and it was pointed out to me that only like... 7% of steam players have the completed museum achievement soooo I just wanted to double check that
I didn't know you could do that with CP!
Data/MuseumRewards i think
Thank you! I'll read up on that
(I bookmark these every time they come up & I still didn't have that, I'll never run out
)
(just use the category page!! you don't need 100 bookmarks when they're all collected for you)
Just memorize everything easy
oh, I figured that wouldn't show enough because of fandom conditioning 
(but my firefox url bar only shows bookmarks & it's easy, so I'll keep doing it)
I was wondering if we could edit the optimal path algo to add 0.0001tiles on turns or something to stop zigzagging
ok good, Robin didn't go through the backwoods for the desert festival, so that's a total of 1 test case done (though I do have SpaceCore...)
anyway anyone who has a decently populated save wants to test this is welcome
Wat
Shouldnt...she
It's short
I guess not
Mountain town bus
Mountain backwoods bus
Anyways
yeah I am praying that the fact that Town is before Backwoods means it should get picked first according to the game's macro pathfinder
Yes
so re: earlier discussion, is there any obvious issue with texture loads/edit redirects? 
feels like someone would've frameworked it before
//tbd as an asset
AssetLoadRedirects.Add("Characters/Abigail", "Maps/springobjects");
AssetLoadRedirects.Add("Characters/Sam", "Maps/spring_outdoorsTileSheet");
private void Content_AssetRequested(object sender, StardewModdingAPI.Events.AssetRequestedEventArgs e)
{
if (e.DataType == typeof(Texture2D) && AssetLoadRedirects.TryGetValue(e.Name.BaseName, out string redirectName))
//Game1.content.Load the redirect etc```
What's the worst that could happen anyway the npc can have fun in backwoods if they want
with static typing because I'm not sure if Load<object> would break
the issue is invalidation
you have to be the propagator of texture changes
ah, yeah, wouldn't update the redirects ig
heres my unreleased crimes for this sort of thing https://github.com/Mushymato/SpriteCompositor
it only tracks 1 level and the target asset is special by design
i think if u do a proper graph data structure
and cycle check
u can just keep doing willinvalidatenexttick handling
until u finish propagating
loading from the same content manager is scary
yeah, I haven't had to prod the invalidation system (or assets in general) enough to worry about that before, complicates it a bit compared to the few line test setup
specifically for textures, you need to be very careful
https://github.com/Pathoschild/SMAPI/blob/develop/src/SMAPI/Metadata/CoreAssetPropagator.cs#L147-L236 is the code that you need to design your solution around
i dont think there was any premult alpha problems tho, surprisingly 
Yeah, it's a sorta....hmm
the fear is you can accidently put a disposed texture back into the pipeline
it was mostly me getting into shenanigans in which i stack overflow assetrequested
You either track cycles, in which case the user will be wary of using it (by possibly becoming a member in a cycle)
Or you don't
I only went as far as trying to track looping redirects -> oh right, smapi breaks loop first anyway
And you death loop
but yeah, no personal plans to learn how textures work if it's required for that feature 
AssetRequested itself will only run once per tick per asset, and cache the load/edit operations
we should rly just
Meanwhile if I can cleanly just handle my own case, and avoid even possibly getting in that mess
dehardcode more bits that enforce a certain namespace for asset
which is what ATA/proposed smapi PR from buttons does for maps
yeah, probably easier to get actors to look outside Characters/ than to dupe the texture etc
u can prob add like
Esca.tempActor
new event command works just like tempActor but no namespace restrict 
for that specific example earlier, I'd probably just say to build the player's pet from TAS 
though I only half-read & got sidetracked poking the asset events
well i do think petActor would work, there's prob just move/advanced move shenanigans in the way
but yeh, events and such are much easier to staple on alt texture versions
its gonna be a pain to fix that 
so i think go do personal png replace is fine until enough spoons
Chue, do appearances enforce
i dont understand the meaning
looks like no
"Portrait": "Portraits/Caroline_Winter",
"Sprite": "Characters/Caroline_Winter",
naw they dont care 
oh, the base texture might force Characters/ though
I think there is an event command ro change to an appearance but that might be betas
base texturename is joined with Characters yes
but atra the problem is more that
this aint real actor
There is now a random nonspcial npc in town
I'm sure no one will mind a random cat npc
base texture enforces Characters/ but doesnt care if you have / or other stuff in the TextureName
smapi still intercepts all asset manager loads and would presumably detect that as climbing and refuse it
I think everything character-y derives from Character, but they have a subtype beyond that
Yeah
r u saying to patch IAssetName or whatever resolve thing is happening 
(Smapi asset inequality also doesn't know about ..)
Resolving that isnt trivial,the algorithm is lazy
I interpreted that as "just set NPC data to "TextureName": "..\\TileSheets\\myTexture" " 
but yeah
You could do a lookahead and discard current segment 
I must have just been thinking of the tilesheet logic, and it doesnt apply to asset names themselves
(oh right, Cat and Dog classes still exist in 1.6 because load-bearing migration bits...)
Does it work though
and pets are NPCs but farm animals aren't
and honses
I think the load will work but I'm not sure asset propagation will understand it
the ol sebastian horse bug
I think if it went into XNB loading it might respect the ../ but I dont think smapi content pipeline will actually do the directory style logic
Agreed
and will do AssetRequests for Characters/../TileSheets/myTexture
Wrlp. Who wants to write the PR to make assetname understand that
I think I prefer when asset names are meaningless text 
I'm on a stairmaster
it will go through trim calls and remove .xnb if its at the end, and check if it ends with valid localization but not treat it as a directory
Immunity
..\ yourself down and get to work
you're climbing already. now for the tilesheets 
or is that up, idk
I will stay on this stairmaster forever dont tempt me
Hi! I made an add-on to the mod the Muttering Farmer. It's a mod that makes text bubbles appear on the top of the farmer related to the context they're in. The author made it possible for anyone to add as many lines as they wanted or replace the original ones, using 18in files and his coding. I made my own additions, but I wanted to make it possible for players to choose if they want to disable any of the lines I made (e.g., disable lines for Abigail or Sam). The original mod already allows disabling for a few categories, such as spouses or location lines, but not for specific NPCs. I've been trying to do so for hours, and I can't seem to find a way to make a config file or make it show on Generic Config Mod. I don't know what I'm doing wrong or if it's simply not possible. I know this might lack detail to anyone who doesn't know the mod I'm talking about, but I genuinely don't know what to do 😭 I've tried looking for kind of similar mods? Like mods that add dialogue lines to other existing mods, but they're different since they edit and use different files?
Yes :/
!json Show us what you've got so far
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 looks correct. You said it's not showing up in GMCM or creating a config.json?
Yes
It is an add-on to another mod, which has a very unique mechanic per se? I don't know if that's what's creating an issue? I couldn't really take a look at it since it's a DLL file
Even my 18in files are different due to the mod being coded differently? I don't know how to explain better
@eager tree You are doing everything right, but I don't think anything in YunHikari's code exposes what you're trying to do. Me personally, I'd just make a small SMAPI mod using C# and Harmony and create a config that way.
Well you may not need Harmony, maybe just reflection would be enough, not sure though because I can't see their code.
Thank you for the suggestion. I've been trying to study C# recently, but I don't know a lot yet. Do you think that for someone who has few knowledge about it it would be too difficult to create a config file that way?
You would need to look at the code for the Muttering Farmer, find maybe some extension API
what do you expect your config to do? The Muttering Farmer loads its own content packs and looks for their translation keys, you cant configure that
(thats a genuine question not a snarky one, im not sure 100% what your intent is here and trying to understand better)
i dont know what was in your included file
I added a lot of a lines for specific NPCs, like Sam. But I would like to give the players an option to disable those lines in case it conflicts with their gameplay style. There are no lines for Sam in the original mod, just for non specified NPCs, but the mod author made it possible for other people to add lines for specific NPCs using his key generator and such (https://sorrylab.com/StardewValley/TFMGenerator.html)
I don't know if this explains better
what was in your included file though? TMF doesnt support edits via content patcher at all
You want to disable it for your lines only, not globally for everything -> JSON would not be enough imo
there is no functionality to do this with TMF
I'm not sure I understand your question, sorry. There was dialogue lines in the format that works with TMF. The mod works fine, just this options that I couldn't make it work.
But thank you for your help. Didn't realize it doesn't with content patcher like that. I'll take a look into doing with C# like XanCreations said ^^
its not trivial with C# either
i guess u can always 2cakes muttering farmer 
Then there's no way to make it work? Isn't TMF written in C#? sorry if it's a dumb question
make ur own and expose it to content
It's a bit of a learning curve, but if you stick at it, try and give it a go. Start with modconfig class and some bools for your NPCs, go from there.
something being written in C# doesnt mean you can edit it with C# the same way you can edit a json
idk if that mod's open source but if it was PR is an option
making a config for your own C# portion is trivial. geting it to apply within TMF is not trivial
its not open source
nor source available unless the author just didnt link their github on the mod page
+1 to making your own take then
You would need to use a tool to see the code -> You can message YunHikari and ask for permission.
i dont actually think a mod like this is very difficult to make
obviously do not use the original lines from muttering farmer
it would likely be less difficult to make your own take on the mod than to do all the fucky reflection stuff required to hack it into TMF
Yeah it can be a bit of work, depends if you're into that @eager tree
I'm definitely into it, I just will need to sit down and learn how to do it. Though I feel a bit lost as to where to start. I'll message the author to know if he allows me to look into his code, to start studying? Thank you the three of you for explaining it to me
to be clear you dont need permission to look at the code, you can already do that
but if you planned on still making it work with TMF through your own C# mod then you would need their permission to publish
Yup
If it seems a lot of work, you can try something a bit easier, and then when you're more experienced come back to that project later
i never even used muttering farmer but i think how i'd write a mod like this is
- define a bunch of events that could have farmer responses, some could just be smapi event some might be a harmony patch to specific spot
- implement the drawing speech bubble stuff in RenderedWorld event
- load a custom asset from content that defines event -> farmer response line
voila trigger actions have been reinvented
personally, i think you should take the much much easier route of just making a different i18n file per character and telling people to delete the ones they dont want
if you use the folder-style of i18n, this would work easily
when u load from content u do give other mods a chance to put in their lines
so maybe a crop mod might add a more specific dialogue about their very stinky flower
I think I will do that for now! while I'm still learning. but I do want how to learn how to make more complex mods anyway, so I'll try to do both ^^
thanks!! I'll try doing this with simple things and see if it works and work from there
in this case, the required things you'd need to do to make this work with TMF are things that i would feel confident in saying 98% of C# mods do not bother to do
if u dont want to deal with draw for now
u can always use the game chat or hudmessage
in the grand scheme of C# its far from the most challenging thing, just an annoying thing that, usually, there are better ways to achieve like an API. TMF just doesnt have one
(this is just to say that i think there are better kinds of "complex" mod to learn to make that will be much more practical)
but it being a not too hard to impl thing is nice when u r learn
to be clear im talking about the approach of hacking your way into TMF's process via reflection and harmony
not the roll your own implementation way
ah yes breaking into another mod is many hurdles 
rolling your own i think would be very good learning
thank u very much ^^ I would have probably spent a few more hours trying to make it work without ur guys help lmao
(C# dotnet build shenanigans) i am tinkering with having a shared project for my mods and i could use some guidance.
what i want:
- have a bunch of .cs files in the shared project
- reference this project from another one
- the source files are compiled directly into the referencing project (into the same dll)
what i've been able to get so far is compiling the shared project into a separate dll that gets bundled in the mod zip, which i would like to avoid.
anyone know how to set up the xml files for this? i am not using an IDE so i am looking for .csproj etc syntax and not VS instructions
I have example hold on
example probably better than my less helpful suggestion which was to just copy what Pathos does for his mods 
This is my TAS stuff
https://github.com/Mushymato/ExtendedTAS/blob/main/ExtendedTAS.projitems
I submodule that in another mod
And i put this in the csproj https://github.com/Mushymato/MiscMapActionsProperties/blob/main/MiscMapActionsProperties/MiscMapActionsProperties.csproj#L29
After that I can using Mushymato.ExtendedTAS;
Just to give you a heads up, I had a look at the code real quick and you may need to do a harmony prefix on the event trigger. Basically all the speech bubbles go through one method, you could intercept here and then have it show or not. But this can be a little advanced if you're not familiar with it.
did you need to do anything specific to get GitHub to have a link to the shared project in the repo
Is that what u want ichor
This is a git submodule
I didn't need to do it this way but i did cus not a monorepo
i understand (<--- does not, but has no plans to use it anyway)
Well i google it every time too
It's something like u git submodule <mysterious additional args>
And then u have this https://github.com/Mushymato/MiscMapActionsProperties/blob/main/.gitmodules
at this point im far too set in my modding git habits that its too late for me to make significant changes to my process now
my brain doesnt have enough plastic in it i think
dont like a repo called more
thanks, chu!
this is useful
Can I ask why there are a billion mods about tortillas now? What happened since I last hyperfixated on Stardew lol??
no one should aspire to boost
Wait you're mushymato?
yep, that's mushymato all right
Another victim
I didn't even know 

I feel like long time fan here, I study so hard your trinket tinker lol
There was a brief window of joke mods that happened when oclarina made a mod to centre the tortilla sprite and then 6480 made one that massively offset it instead.
I'm glad it's useful and i hope it is not too elaborate for ur purposes 
I see 🤭
I figured it out in the end, came up with some interesting trinkets with it
1.6.16? i didnt realize you moved your plans ahead of schedule
Scheme to get other ppl to make things is working
i still need to make my trinket i wanted to make with trinket tinker, but... art...
Well 1.6.16 was 1.7 so that seems fair right
no
nou
Hi, I'm really new to modding stardew, but I was wondering, is there a 'while' statement (idk the proper term) that I could use for sprite editing, where the sprites would only remain edited while a certain condition is true?
Yes, you're looking for the When field in Content Patcher - or if you're using the Appearance system for an NPC, the Condition field which takes GSQs.
Okay thankyou, I'll try it out!
It's been a while since Spenny has appeared. She was simply biding her time, building up her power until she became unstoppable.
The world may not revolve around you, but it sure does revolve around (S)Penny. Introducing: Penny the Reality Warper
oops. should hit publish
...did publish get "mod unavailable" too? agh
Anyways, video: https://www.youtube.com/watch?v=FhufSkuFNi4
(unfortunately that is why i always wait a bit between hitting publish and posting it in here
)
i feel like "compatible" is a strong word for what this mod is skdjhfksdjhf
It's compatible with other mods. Just not with you playing in the same location as her.
This needs interstellar music, lol the toddler is breaking reality
ooh animals are also immune it looks like
Children are immune, because Penny loves children
and totally not because I couldn't figure out why that didn't work.
(I already had to fight chests for like an hour. The base mod took like 10 minutes, probably much less if you don't count boilerplate.)
Also added this to the description, so newer players don't miss out.
does this + spenny cancel out, or only increase her power
They all stack (except maybe Spenny with Spenny Lite? unsure about that, it might just supercharge her if you talk to her)
The video does not include the other mods, since I was just getting the features of this mod.
This mod and information brought to you by the Spenny Cinematic Universe
anyways it's way past bedtime bye
love it
oh wait before you go!
i wanted to tell you i've been looking into spawnables and set pieces and i'm very excited to make procgen mazes using spacecore
...the showcase says "Penny the Reality Warper", not "Spenny the Reality Warper". Dang it
Let me know when it's ready! I'm excited to see mods using set pieces, I'm not sure I've seen any yet
does anybody know where to find the vanilla object ids? Ive been searching them all up individually
(ie. it's also what I forwarded to friends and other servers)
it'll be a very long while because i also have to learn C# for many things but will do 
https://mateusaquino.github.io/stardewids/ i use this
thank you!
Add a url query to be a new url to the cache and the embed will be fixed :)
too late for the showcase, though
Windows 11. I been using VS for a while and thinking about switch to VS code. Does VS code support hot reload like in VS? Cannot find much information about that
!reload
- Content Patcher pack: enter
patch reload <your_mod_id>in the SMAPI console window. This will reload and reapply all your patches (but won't recalculate theConfigSchemaorDynamicTokensections if you use them). - Translation files: enter
reload_i18nin the SMAPI console window. If it's for a Content Patcher pack, also runpatch reloadafterwards. - C#: see the Visual Studio hot reload or Rider hot reload feature.
i don't think anyone considers VS and VSCode interchangeable, for reasons including the lack of hot reload
Hi!
Had a few questions, what kind of skills are required for making mods, and where could i find documentation for learning that? As i'm playing a lot lately i'm getting kinda curious
hi, making mods usually takes a little bit of everything; usually creativity, problem-solving, and patience
!gs is the main guide i think
If you would like a guide to setting up mods for Stardew Valley, check out the getting started guide! https://stardewvalleywiki.com/Modding:Player_Guide
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.
Thanks
if you're familiar with folder structures and JSON files you've got a good headstart
No idea what those means 😔
pixel art and C# knowledge are a bonus depending on what you're working on
I tried learning pixel art but adhd got the best of me and i forgor i was learning that
really it depends on what you're working on, obviously a larger or more complex mod will use more different skills and features, characters and locations will ask more art ability, dialogue requiring the least of all different skills, and so on
I think determination is the main thing you need, really. The technical skill barrier is not super high, it just takes a willingness to keep looking for answers and trying things.
i'm a newbie to making mods, what helps in addition to what berry mentioned is being not entirely computer illiterate and by that i mean basic computer skills lmao and knowing where to look for answers (and if you don't find them, you drop in here and people are patiently trying to help)
for the love of everything that's unholy don't start with an npc if you get easily overwhelmed and your adhd likes to get the better of you (source: it's me. i started with an npc)
Lol, fair enough
https://stardewvalleywiki.com/Modding:Content_Patcher
this is a good introduction to CP modding 
wow i just had think about how i started out one month ago and the evil comma was my biggest enemy. i already learned so much in such a short time
Hi, is there a way to make a mod check a config schema from another mod to activate some of its features? I want mod A to add a cooking recipe when a config schema from mod B is set to 'true'.
Right now I wrote it like this in my .json files (first image is from mod B, and second image is from mod A).
Third image is what my SMAPI log tells me when I boot up the game, which doesn't surprise me, but I can't find a solution to my problem online... 😅
You need the mod Cross-Mod Compatibility Tokens: https://www.nexusmods.com/stardewvalley/mods/28284
Thank you, I will take a look! ☺️
Are there any videos that walk through how to make modded events in stardew valley? I find tutorials easier to follow along if I can see it as a video or somehing
Even just a walkthrough with pictures/screenshots would work too
Thanks!
Not anything up to date, and unfortunately events changed enough in 1.6 that an older video would give you incorrect information.
Guys, why does the item cost 1000 in game?
https://smapi.io/json/content-patcher/e353bc382f9a43339811e9bd67c4de1d
Shops have a built in 2x modifier for price (4x at Pierre's iirc - though you're adding it to Pierre's so maybe not)
dang orz
Well at least I know not to use old videos
Have you looked at the tutorials on the modding wiki?
I have I just get confused really easily by text only tutorials
If the text being too bunched up is part of the problem, there are browser extensions to increase character, word, line, and paragraph spacing which can make the text feel less overwhelming.
I didn't know that was a thing!! That sounds super helpful
It is, yeah. I mostly just zoom in to text on websites because everything is always too tiny for me but some stuff is way too cramped so I use Text Spacing Editor to adjust things like word and line spacing too.
Ohhh I'll try that! Thank you!
Stardew uses 1 thread/core right?
yes, but mods have access to the threading api and can do background work (with care and exemptions)
I was going to ask if a mod could make the game use multiple or if that'd take a game code rewrite.
Thanks for the reply
you would need to rewrite the game engine, yes (MonoGame)
Yea I figured.
the content pipeline is aggressively single-threaded and requires that all of its work be done on the main thread
oh you just reminded me, I'm going to attempt some GC crimes
In some narrow situations you may thread
Usually when you do not touch draw and no content
For example world navigator does all the graph calcs in thread bc that's all custom data structures
never mind stack overflow just said I'm being stupid :( /lh
website
i wish to know what crimes you wanted to attempt
the manually calling GC kind
Oh i mean u can do that
No More Lag 2
I once left a manual gc call i had for testing in release build for like 4 major versions
iro you should try calling the gc every frame that the map menu is open /j
maybe multiple times. really optimize the hell out of it
what makes you think that's not what I'm planning 
alright, tried to use the custom map action things i added and console kept yelling, here's my log: https://smapi.io/log/7f823d2f8eea4e9faf25882d93af8895
-# (and yes ik i should be testing with less mods but i don't rlly feel like that rn-)
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on macOS Unix 15.5.0, with 83 C# mods and 235 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
if you don't feel like it rn it might be best to step away and come back when you have more energy for debugging
that
dammit not again-
that
how are u gonna squash the bugs if you never debug
i won't-
just make the players bugtest! always works XD
debugging works best when you're systematic. if you start off in a state like this log you'll spend forever chasing bugs
easy. call them "features" and charge more for it
i'm not a big company i can't do that 
you can start now
that's true, but i'll never debug with whole willingness to-
like playing SDV?!?! who ever thought of that?
let me put it more bluntly
nobody will ever be more motivated to debug than you are because it isn't their mod, so if you look at that log and go "ugh", then so will everyone else
so make it easy to help you (and for you to help yourself)!
okay ty i need ppl to be blunt with me LOL, i'll probably try again later then
ugh why do questions have to exist in stardew
torture
for map making, is there a location context that tells the game to spawn beach-critters, like seagulls, rather than a random other bird?
is it just Island and Default?
/me glances at the Spenny Reality Warper nexus description
There's a data asset Data/LocationContext
Beach isn't a vanilla context though. i expect the gulls etc are hardcoded
It controls mostly stuff like weather
island, default, and desert are the vanilla ones, no?
What is the particular problem u have?
it's this area
the shadows up top are birds that aren't loaded in right (via Em's critters) but even if they were, it'd be an odd place for a bird to spawn
unless it was a seagull
The sea...
Make sure all ur "panorama" tiles are on Back1 or something
Instead of Back
That makes them not available for most critter spawns
that's brilliant
(peddling mode) do u want a dynamic panorama
I've thought about it... but I want as few required mods as possible... I've been thinking of making a whole different back panorama for rain
I'm open haha! I want it to be an ~experience~ to go out on the deck
It's actually pretty simple to make the panorama thing optional
Basically you need to divide the tmx into 2
- The foreground walkable patio
- The static background
When dynamic panorama is off, do EditMap to put in the static background as normal
When it is on, don't EditMap and let mmap panorama apply 
that's brilliant again
Internally the mmap panorama is not on the Map, but a big texture being drawn behind it
Okay, even to have the option would be cool
Just like how summit tmx is all transparent
that's right! I opened up that map to see how it was done... that
Thank you! I'm so inspired
I would link me own docs but sharogg's examples r better tbh
how incredible would it be... walk out on the deck... sunset on the ocean... oh nooo I love it
I am getting better at peddling 
aw :(
how the hell does Elliott make this sprite size work?
Does he have a special sprite size here unlike the other characters?
hardcoding magic
also why are his legs missing here
piano
probably to make it look like they're behind the piano bench
hmm most intriguing
sweet gem berries and truffles have the same category of "mystery items that is sellable to pierre's", that's probably why CJB cheats group them?
CJB categories are not canon
fascinating
I'm talking game category (-17), but yeah cjb cheats put berries there because they use broad categories and probably thought that -17 is just truffles
oh yeah it just uses category, prolly
i hate advanced move so much
advanced move?
event thing
events b cursed
what issue are you having with it? you can try adding a pause to the end as part of it
ah just the amalgam.
aaaaaaaaaah
a classic
so wtf this is magic, I'm in love... I do seem to be having some visual clipping on the horizon, which I suspect is because of a setting? or maybe a hidden building tile? going to experiment but it's honestly making me think MMAP etc might have to be required, it's too good (you should see the ocean when the mean is out at night)
the moon I mean!
Yeah double check if there's some tile left there 
There's a dedicated console command for reloading the background (but it still required patch reload as well)
what! I've been closing and reloading the game everytime to test settings
learning all the time
mmap.reset_bg
So u want to first patch reload <your mod> and then mmap.reset_bg
Leaving and re-entering the location has same effect as mmap.reset_bg
I added this cus i was testing on a big map one time
thank you, I don't think I would've figured this out without you
It's ok i forgor to document clearly 
Has anyone else whose made an NPC had people say the NPC doesn't show up in festivals year 2+? I've heard mixed amongst the people bringing up which ones it is so i dunno if it just affects like some year 2 festivals or all
did you include year 2 variants of their festival data
theres stuff about if one NPC includes an extra variant that other NPCs dont then the ones that didnt get skipped bc the game favours the latest-year-variant or w/e
so the issue can vary by modlist
I didn't, only for the ice festival which i know looks very different year 2. And thaaat makes sense, its usually if they have other mods when i've heard the issue. I get it sporadically
well you should really add year2 at least since im pretty sure vanilla does that
https://stardewmodding.wiki.gg/wiki/Tutorial:_Making_a_Custom_NPC#Festivals
see the "Important note for 1.6" in this part
Yeah I'm in the works now, i was just curious if others had had the issue so i could understand it better! Which i do now :)
Right people move around during year 2 now, i gotta find pics of year 2 now or go into the game and do a year 2 run of just checking festivals or check tiled. BAH well gotta do what you gotta do
GAH
No?
ichor knows most about this issue
Ichor im eagerly waiting your reply 
It's good cus lotta mod npc
haha. ha. yes. my NPC is the one who discovered the problem, by being the first one to use the year 2 festival keys and causing every other modded NPC to stop spawning 
Should get ur npc added too
at the time i was pretty distressed, but yes it is funny now
It's an easy enough fix really ;P I was just confused as to why i didn't get it more consistently aaand sometimes complaining a little here gets me some good new tools and solution 
Lacey: no one came to my egg festival/flower dance/luau/....
Tragic
But also thank you so much for the tool, this will make my life so much easier duuuude
The nice thing about being later in the modding scene is that there's so niche tools already made
incredible
Yes pls thank @iron ridge (and contribute ur npc data)
I'm having fun just looking at all the different NPCs rn honestly
good luck on adding it but please do
I'll look into how it's done and add in what i have ^^ I wasn't sure how it worked but it sounds like something you can add in yourself?
it is
nice!
@lucid iron your peddling upgraded my boat map by 3000000% ty ty ty ty ty
quick question. im making an animal mod.
so im going down the list of the stuff off the wiki of what i need to do to add this animal, and im here
"RequiredBuilding": "Big Coop",
"UnlockCondition":
do i "need" an unlock condition if the condition would be having a big coop? i would assume not since i already told it that it requires a big coop and the unlock condition would be if like i wanted the farmer to ask have like 4 hearts with marnie instead of having the big coop?
and can i have an unlock condition as well in that regard, say Marnie needs 3 hearts, as well as required to have a big coop?
yeah you got it
thank you!
Hallo ^^ I was here the other day trying to make a Content Patcher to replace the sprites for Penny and Elliott. I thought I got it working, but then they aren't in the game when I run smapi. I don't quite understand what I did wrong, but the json validator said there weren't errors
can you please share the link to your json with us so we can see it?
!log your log may help as well
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.
https://smapi.io/log/6a1ea55b5c4f41e1b4af64dea9631892 Yeah ^^ sorry I thought I did
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.26200.0, with 58 C# mods and 75 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
the mod in specific I tried to make is Belas Custom Sprites and the sprites weren't replaced
you can see in your log that you have these errors; check that your file path is correct for these patches
where do I find the path and how do I path it?
Do you have the link to the author guide
FromFile asks for the path to the asset you're trying to specify, relative to your mod folder
which author guide, the wiki? CP docs?
I don't know, I was given one yesterday and I am having trouble finding it. But it gave an example of what to write to make the json file to replace a portrait for abigail. I was told to change 'portrait' to 'character' but beyond that I don't know how to path properly
`{
"Format": "2.8.0",
"Changes": [
{
"Action": "Load",
"Target": "Characters/Penny",
"FromFile": "assets/penny.png"
},
{
"Action": "Load",
"Target": "Characters/Penny_Winter",
"FromFile": "assets/Penny_winter.png"
},
{
"Action": "Load",
"Target": "Characters/Penny_Beach",
"FromFile": "assets/Penny_Beach.png"
},
{
"Action": "Load",
"Target": "Characters/Elliott",
"FromFile": "assets/Elliott.png"
},
{
"Action": "Load",
"Target": "Characters/Elliott_Winter",
"FromFile": "assets/Elliott_Winter.png"
},
{
"Action": "Load",
"Target": "Characters/Elliott_Beach",
"FromFile": "assets/Elliott_Beach.png"
}
]
}` This is what I have
this is the path you have in your folders though, put all the pngs in assets instead
How do I write that in the document? "Action": "Load", "Target": "Characters/Penny", "FromFile": "assets/Characters/Penny.png" like this?
yep, that also works
Oh okay, thanks ^^;
what's the method(s) NPCs use to find optimal pathing?
how specific an explanation do you want? i know the general overview but nothing more than that
It's like A* i think
oh good an expert is here
There's 2 path finders the macro map to map one and the micro tile in map one
Spacecore bonks the first one for a bfs
I just want to know where is it so I can make them stop zigzaging, its bothered me for some time
I'm guessing I only need the micro one
Yeah u have to poke at pathfindcontroller
I think there r weights u can put to make em prefer road
But zigzag is shortest path in diag cases
(getPreferenceValueForTerrainType())
if I had a nickel for someone who mentioned npcs zigzagging in this channel I'd have two nickels which isn't a lot but it's weird it's happened twice within 24 hours
no, yesterday's convo after you posted that vid just stuck with me
(Fwiw, the last time I did a pathfinder, I dealt with zig zag just by pushing their current direction first)
And going clockwise
yeah I was just thinking about adding a 0.0000001 weight when making turns or something
nobody really messing around with pathfind right? so I can just override instead of harmony patching
There is terrain preference yeah; I'm not quite sure what it does; it's pretty minor iirc
Spacecore entirely replaces the macro finder but doesn't touch the micro one iirc
the terrain preference affects the priority that the tile in question gets when placed in the PriorityQueue used for checking tiles
what other properties are there, is there a list somewhere?
those are the only ones the game cares about but theres nothing stopping someone from writing whatever type they wanted on their map
Yeah u can just add somebodyunknown_pathing
Then u have to have fun time of adding it to every map
I would rather not tbh
Harmony patch Game location.doesTileHaveProperty to inject it
Can't you just patch the preference function
could be fun if we can somehow create desire paths. but that might take too much memorizing of pathing
I'm (*) a little because I really do remember that as a little squirrelly but I forgot details
its not the sole determinator of path priority
but the other determinators just seem to be preferring whatever is closest to the end which makes sense
int priority = neighbor.g + PathFindController.getPreferenceValueForTerrainType(location, neighbor.x, neighbor.y) + (Math.Abs(endPoint.X - neighbor.x) + Math.Abs(endPoint.Y - neighbor.y) + (((neighbor.x == currentNode.x && neighbor.x == previousNode.x) || (neighbor.y == currentNode.y && neighbor.y == previousNode.y)) ? (-2) : 0));
whatever this is
i dont know what g is on a path node
Total path length so far iirc
opinion on a 'making mods shitposts/yapping' thread?
7
15
1
YES I NEED TO YAP
633855868911353866
SDVpuffersmug
g seems to be a A* algo thing
https://www.geeksforgeeks.org/dsa/a-search-algorithm/
doing a refresher to not break it 
@autumn tide: check this and then choose whether or not to make the thread (24h ago)
Oh, that was the other thing. They have their own priorityqueue impl and I forget if it keeps insertion order
Can I have two different local tokens for the same json?
you can put as many local tokens as you want in a patch
then i have no idea what i need to fix
https://smapi.io/json/none/f7cb5743b2644536a72ef3644911ff96 I'm tryna add in a token for quality so i can simplify my code some more and when i add in the tokens for quality the tokens for animals stops working (as well as the quality one not working)
when adding a context tag for an item (an egg in this case) if it has 2 colors can/should i add both? its a blue and green egg with yellow spots. i was thinking i should add green and blue?
You can
The first tag it finds will be used as the dye color
Both will be used for, say, machines or that one quest of qi's
You don't have to ofc
okay cool, thank you!
Some asked me today if they can install my music mod without installing it
what
Player mindsets baffle me sometimes
I guess they want to overwrite the files or something?
can you post what's in the machine file
I technically know how to do this
but it's janky
definitely not recommended
I explained it poorly
for some reason it doesn't work on Android.. i believe that's a version issue
huh, your mod is just CP right
Android does have a different soundbank impl
yeah
But it's out of your hands tbh tell them to go bother the android smapi person
I know.. there's nothing i can do about it
was just funny
I'm glad they like the music lol
(pinned comments has all the music there)
In certain situations, all you can say is like "Well I can't help you there, bud"
that's how I generally feel about android
Is it possible to play SV on Linux on ARM64? Because then you could replace Android.
Possible? Maybe. Has anyone done it? As far as I know no
The holdup is that some of stardew's dependencies are x86 only
also no one wants to replace their phones OS just to mod stardew
certainly not your average nexusmods user
... now I feel invalid /j
Otoh if Samsung pisses me off again.....
programmers arent people
Jk I only own stardew mobile via Google play
That hit hard
im not sure if you can even legitimately purchase mobile stardew without going thru one of the app stores?
You can purchase it, decompile it and compile it for mobile, right?
Samsung app store might have it
But in your mind we would be running PC stardew on a Ubunut phone
Which 2 people own
i think that first step of purchasing it through them disqualifies the whole thing as "not purchasing it through them"
I meant purchasing on PC.
oh. then, no
the codebases are not identical
anything that touches a menu especially is wildly different
but also some other behind the scenes stuff
like the aforementioned audio implementation
Please, I would run it on an Arch phone.
I think people have the compat version running on arch at least
Anyways
I've sold my soul to Google already
Open me up and find QR codes and share.google links
i know it was on humble bundle which mightve had an android version also for download? if it was it would be very very old, like 1.2 version
Google will know what I'm having for dinner tonight before I do
the version on humble bundle is PC only and is just a steam key
i asked good what youre having for dinner and it replied "the answer is 3".... i dont think it understood the question
ahhh steam key gotcha
anyone member https://en.wikipedia.org/wiki/Ubuntu_Edge
The Ubuntu Edge was a proposed high-concept smartphone announced by Canonical Ltd. on 22 July 2013. Canonical was seeking to crowdfund a production run of around 40,000 units through Indiegogo. It had the highest target of any crowdfunded project to date, $32,000,000 over a one-month campaign. The Edge was not intended to go into mass production...
i think if it were that easy to get the mobile version on PC for decomp then android compat would be a lot more available for mods
and also would have saved me $5
(not that its hard to get the mobile version via the usual means either for decomp purposes, but its more difficult than just a 5 second steam download)
I have been looking into phones that support pc linux distros but it like just doesnt exst
my approach to android compat is "if there's a will there's a way"
as in, if the user's will is strong enough they can make it work
I on the other hand have no will
personally im completely fine using a big name non-linux phone if for no other reason than i dont want my kernel to crash for some dumb reason when im trying to dial 911
pinephone?
Rust rust rust
i dont remember the last time i used calls or texts...
that reminds me what was the mod of yours we were talking about the other day that doesnt work on android
that mightve been literally yesterday but idr
Google if you're reading this i wouldn't mind a job offer....if you paid me more than what I make now
Cloths and Colors (unconfirmed)
right right. thank you
also Extra Animal Config (definitely confirmed)
I do! Ask me how many 2fa texts does it take to transfer money between two bank accounts
not touching that one
At the same bank
Don't they nowadays don't use texts because they are insecure? All banks in my country have banned texts.
I think.
i dread to think, i both love and hate 2fa
(all my other mods either work, has an android version, or no one cared enough to play them on android yet)
I think cssm is my only definitely broken on android mod rn
Some other mods prob have ui jank going on, wouldn't know
can you remind me what cssm is
not counting "borked cuz stardewui" i assume
chu's super special monsters?
Chainsawsaw Man
Cascading Style Sheet Mess
we've lost contact with chu
my life rn ngl XD
why did you say CSS twice
claire story of seasons magics
after I did 1.1 speedy solutions broke android compat and its not my problem
(it's compat searchable shop menu)
I recommend SCSS, that saved my life multiple times.
Stardewui got fixed
By some kinda rewriter change
i shall look into it ty, i do wish there was a coding style stylesheet but oh well
just tell mobile users to plug in a mouse? whats the big deal
Oh yeah es barbershop is broken too
I knew that would happen so i made it a separate dll
It kinda works like that. It has better variables and all that.
https://smapi.io/json/none/b952325673fe4112b000752496c2fee3 yea sorry was out here ye go, relevant section (with the new token) is at 600
so your machines file have Q, Animal and ReqCount but your patches are only providing two of those at a time
(I shouldnt have needed your machines file for it but I wanted to double check)
so uh, how do i fix it
so wait would i be able to compress it all down into just { "Action": "Include", "FromFile": "assets/Data/Machines.json", "LocalTokens": { "Animal": "Cow, Sheep, Pig, Chicken, Rabbit, Duck, Goat, Ostrich, Dino", "ReqCount": "1", "Q": "MB, MA, MP, MF" } } then?
no
gotta be one at a time sadly
you can define all four Q variants directly in your machines file
yea i'll just keep it how it was then
I am #1 css defender. If you struggle with it, it's because you're using it without having actually learned it
(or you're trying to use some proprietary chrome bullshit on other browsers)
I don't struggle with it, it's just often annoying to use because it isn't always possible to avoid writing the same style twice. Though nesting kinda improved on that. But only kinda.
I usually solve that problem with variables, class composition, combining selectors, or cascading.
Media queries can fuck with things sometimes but usually it's not too terrible
It's not always possible. It's been a while since I've been working with it though, so I can't really tell you what made me use preprocessors.
The only thing I've used preprocessors for is color manipulation
calc is great but it can only do unit math
is it possible to make a character divorce you
BETAS ChangeRelationship trigger
hey friends,
we all know the wiki recommends against using Harmony annotations, but i am considering using them and need some advice.
can someone give me a more detailed explanation of this sentence?
However annotations work differently in the compiled code, so SMAPI can't rewrite them.
what sort of secret sauce is this referring to, and is it any different than some of my current setups which do some minor crimes to map well-structured method names to desired target methods?
possibly something to do with the fact that if you use annotations to patch then Harmony will scan your assembly and create PatchClassProcessor things to handle the patching and SMAPI thus cant replace any code for you in a rewriter first. or something.
afaik patching without annotations does not go through the same PatchClassProcessor process
so it sounds like i should extend the thing i currently have so i can do declarative patching without technically running afoul of whatever harmony is doing inside /lh
i have no idea what anything means 
thanks
i suppose the rewriter problem could be that when you call PatchAll, harmony runs a big pile of code to find and patch the methods, but smapi isn't rewriting harmony, so any of the references it has to stardew methods that have changed don't get replaced
and presumably the annotations themselves also aren't rewritable
probably could if smapi rewrote annotations but idk if cecil even allows it
i feel like it allows it but im just guessing based on not much tbh
based on very very brief glances at cecil stuff in the past
the backwoods are no longer federal lands
https://www.nexusmods.com/stardewvalley/mods/40185
Hi! Could someone here help me with something?
I have a portrait mod, but currently it's a replacer, and I want to transform it into CP.
However, in the original mod I want to replace, the portraits are identified like this:
"Portrait": "{{InternalAssetKey: Assets/Portraits/spring.png}}",
Is it possible for me to make this mod or not because of the InternalAssetKey?
it is not possible by editing their images, no
internal assets like that are not able to be edited via the content pipeline and cannot be touched with CP edits
but you can replace whatever its replacing with your own
what you can do is load your own asset and change what the Portrait field points to instead
it may be a lot more work if they use it in a ton of places though
(not difficult work to be clear just a lot more than a single editimage)
I don't think I'm that good at making mods.
The portraits are doomed to be forever a replacer
Don't give up before trying!
this channel can also provide a lot of help if you need it 
Does anyone have an example of how to do this?
Like, is there some kind of mod that does this so I can read the code and see if I understand how it works?
Well, first of all, you're replacing another mod-- is it your mod, or do you have permission to publish it if it's not, or is this a personal edit?
and are you planning to use the same portraits or new ones?
It's someone else's NPC, and I have their permission to make the portraits.
I wanted to post it as my own mod instead of asking anyone who wants to use my portraits to replace the original drawings.
Okay, so you're making your own Portrait mod for the other mod's NPC.
I drew all the portraits that the original mod has, which are all the seasons, if that helps.
So, you will need to:
- Make your mod load after the NPC mod
- If the NPC mod uses InternalAssetKey, use Load actions to pull your own images to the same Targets.
if the field with the internal key is called "Portrait" though its likely in Appearances, where you'd need to TargetField into them to edit them since there is no target to load to
Where is that "Portrait": "..." code located in the NPC mod?
What is the code block it's part of?
i cant actually think of a different place it would even be applicable to use InternalAssetKey since its not like you can use it to set the base portraits themselves
True, the InternalAssetKey tends to be used anywhere the game expects a Texture entry
since those have to be loaded as game assets otherwise
on the content.json, the mod code snippet looks like this:
"Breather": true,
"KissSpriteIndex": 30,
"KissSpriteFacingRight": false,
"Appearance": [
{
"ID": "Spring",
"Season": "Spring",
"Portrait": "{{InternalAssetKey: Assets/Portraits/spring.png}}",
"Sprite": "{{InternalAssetKey: Assets/Characters/spring.png}}",
"Precedence": 0,
"Weight": 1
},
If you want, you can check the Nyapu Nora portrait mod by AhCuteArt if you want an example of how to do Content Patch for this kind of patch.
Specifically they'll need an example of how to drill down into the Appearances using TargetField, in addition to a standard Load patch
Yeah, Nyapu Nora does that.
Ah, nice
Oh, thank you! I'll take a look at that one, and if I have any questions, I'll come back here!
Oh wait, are you the author of the Nyapu farmer portraits? Which mod are you doing now?
Yep! I posted Mirren's today and wanted to turn what I've already done of Faust into CP
Hello Stardew friends! I’ve been recolouring a few items of mods to match other mods I have and would love to share them but I have absolutely no experience or knowledge of creating code to make it official. Are we allowed to upload replacement pngs only to Nexus? Or does it have to be an official mod? Thank you sm! 🫶🏻
you are allowed (if the permissions of the original mods allow it!) but it really isn’t as hard to learn to do the other part as you’d think! and we can help you through it
Guys, I'm trying to prevent the pass out logic and animation from happening(I want to make a Totem of Undying), but for some reason the player still passes out, what am I doing wrong here? Is it the method I'm patching?
Theres 3 pass out related methods:
performPassOut()
passOutFromTired(Farmer who),
startToPassOut()
as far as I know, those methods are only involved in running out of stamina or staying up until 2am
running out of health seems to happen in Farmer.takeDamage and Farmer.Update, around the health <= 0 parts
if you are aiming for the stamina thing, you'll need to patch one or more of the other parts, since performPassOut doesn't control most of what happens
(and account for the fact that it's used at 2am too)
Thanks!
is anyone familiar with spacecore's spawnables? i have spawn groups defined, but i'm not sure if i need to also have spawnable definitions. the trigger action to spawn seems to only need a spawn group
Spawnables consist of spawnable definitions (the spawns themselves) and spawning groups (a group of spawn definitions that are spawned together, specified with a trigger action).
this "and" is ambiguous to me lol
only one way to find out
yeah you need both
a trigger action triggers a spawn group, each of which has one or more spawnables
okay so for every item listed in all of my spawn groups, i have to specify it in the spawnable definitions
oh wait i see i set it up wrong now
the spawning group takes the spawn definition IDs, not the qualified item IDs themselves
I didn’t even consider that! I should definitely check permissions before moving forward! I need to study the modding wiki as well! But should I need further help I’ll be sure to ask! Thank you for responding! 😊
I did escaped death lmao. Thanks again for the tip Esca
i got spawns to work! needs to be balanced though lmao despite weighing a pearl at 0.01 and an artifact trove at 0.05 i got both on spring 1 lol
oh i set all the minimums to 1. that would do it lol
the weighs control which entry in the same spawn group is more likely to be picked if there are multiple
if you want the spawn to only have a chance of occurring you need to condition the trigger action itself
i see i see
do you know what the vanilla spawn chance is? i'm looking at using "RANDOM 0.4 @addDailyLuck",
you can open the Data/Locations file to check
or if spacecore respects MaxSpawnedForageAtOnce i could set that
ah okay it's per location
makes sense
what I do is calculate how many of an item I want to spawn per week, so .4 means .4*7=2.8 per week on average
(luck's effect notwithstanding)
oh good idea
I should increase the silkworm spawn chance of my mod, I've been playing this save for 3 in game weeks and I haven't seen one
(it's .15 currently lmao)
lol i might increase mine then, i want pearl/artifact trove to be really rare but not downright impossible lol
something to also keep in mind is forage is reset sundays, and this includes SC spawns (but SC does have a setting to exclude them from the weekly reset)
yeah i have it set to clear out on saturdays!
does sc HAVE to do 10 checks? i set it to RANDOM 0.8 for 5.6 per week, but i'm getting pretty much 10 per day
post what you have?
each of your spawn group has 10+ spawn entries, with each entry having 1 item
and every entry gets triggered
I think you want 1 spawn entry with 10 items?
(ie multiple items in SpawnableIds)
that makes so much sense! i had been wondering about that, if i wanted to compress it into one list instead of multiple
i can probably then also remove the RANDOM condition, because it'll give me one per day, if i only have one entry?
then minimum/maximum will refer to the number of forageable items that appear each day i suppose, not of each item
good night sleep well! thank you for the help
yep it appears much better! no more infinite pearls lol
Hmmm can crts be eternal (or just have a very long duration)
CRTs are already dead
. CTs can have very long durations, yes
Ty ^^
and maybe crts can be revived with true love's kiss XD
the fact some item id's are just numbers but some of them are "broccoli" will continue to throw me off till the end of time
Seems to be the general thing for items added in 1.6
Hi, guys. I cannot figure out how to add Furniture objects for Events. Is there any specific command I need to use cuz Furniture IDs are somehow different from regular Objects or BigCraftables.
For example, I wanna add Bountiful Table with ID [(F)BountifulDiningTable] that I got here:
https://mateusaquino.github.io/stardewids/#en-US
not sure thats currently possible 🤔
I don't see an addFurniture event command
You could add it as a TemporaryAnimatedSprite
Oh! I didn't see such an option. I'll try, big thx!
This stuff is happening on each tick
It'll likely help if it's refactored to be net event based
Track net changes in the characters list in every location, and within that track the position netfield's changes
It will be a pretty large amount of work ngl i have no plan to do anything about it rn
it's all good, it'll be a fun C# project to learn
I'm working on a cycle accurate RISC-V emulator rn but I need a break
If u get a working poc u should ping pathos 
I'll branch and PR 🙏 or I'll look into actually merging UIinfo with NPC map loc
I always found it silly how they conflict
oh, wasnt aware, good to know
Multiplayer needs special handling because farmhands don't have true view of world
That's why there's stuff to send the real location stuff to farmhands
I've never done this in VSCode, I'm so used to VS, but I recently reinstalled windows
and I'm not downloaded VS2026 at 4am lol
this is good info, thanks
if you're dealing with the map remember to make sure you recalculate your entire logic every frame
trust
oh 100%
If I'm improving performance I may as well make performance tank
game don't fail me 🙏
@lucid iron guess the mod
lmao
stfu
ok I think I've gotten about 50% of the way there on this, it was a surprisingly easy set of fixes
I'll explain what I did, but I didnt go all out with xnet, just a quick and dirty fix
On my side I just changed npcmaplocation config to do it less frequently and did a custom build of location compass to also reduce its frequency and changed it to a different modulo so it wouldn't always run on the same tick
But if you are improving npcmaplocations netcode, changing location compass to do the same and ideally being able to hook off npcmaplocations logic when available would be nice
what I've done is I've made it cache locations, then do a quick comparison to see if location's changed, and only run the math then
I've also made it only check NPCs who are within the range of MinHearts and MaxHearts, updated every day, and I changed it to update only roughly every 20 seconds
it doesnt blip at all on profiler anymore
The minheart/maxheart would impact netcode unless you are checking if all farmers meet that criteria
I'll just make that conditional on context.ismultiplayer
should work I assume?
@junior tiger congrats on the mod release! just fyi, nexus tends to quarantine .rar files, so you may want to upload it as a zip (that's how most mods are uploaded and is easier to use anyway)
Oh, omg thank you for letting me know! The mod was gathering dust, so I just took the plunge and uploaded it. I'll turn it into a zip 😊
(once you do, if you want it showcased in #mod-showcase, post the link and a short description and someone with an orange name will be happy to showcase it haha)
Thank you so much for the information 😊 I hope to encounter the kind orange people
(I am one and we tend to hang out in this channel so feel free to just drop the link haha)
this place is absolutely lousy with orange people. i hear some of them are kind, too /lh
(who will showcase it first, it's a race for the showcase!) actually I have no idea how the bot reacts to multiple showcase commadns
I'm not. I'm a mean orange person. Grrr 
I'm not orange 😛
says the nicest orange ever
Oh just post it right ere?
https://www.nexusmods.com/stardewvalley/mods/40205
It's just a simple content patch to include some of my favorite OCs into stardew 😊 the mod is still a bit clunky, but it works! And I'm always happy about feedback or questions.
Btw, I also got so much lovely help from the people in this comunity, but it has been months and I am super forgetful. If someone remembers helping me out, feel free to let me know and I'd be happy to mention you on nexus mods if you wanted to 😊
(you may also want to archive the old files, hopefully that will get rid of the red x on your mod though I'm not sure)
Hmm, red x? Let me check. Barely used the website 😭
nexus virus scanner has a hate for rar files
(so do i /lh)
oh also, saw the sve comment, your mod is incompatible as sve edits the entire forest map :)
@outer glacier
SIGH
@obtuse wigeon did u want to see this
ty! I grabbed it
enjoy ur scam images /lh
posting scams in the most tech literate channel is funny
they're very tasty, yum yum
isnt the most tech literate channel #programmers-off-topic ?
Monseiur Mammal's Miraculous Monies
.q 6560
:)
..probably, but still
this factoid actualy just statistical error. average modder does 0 crimes. chu georg, who only commits mod crimes, is an outlier adn should not have been counted
Oh, I helped you with this! I thought your name was familiar :) Congratulations on release!
Eh whoops. That one slipped because I didn't tap delete messages (stupid phonecord)
no worries, got burried anyway ;)
Still better it's buried only in our logs lol
You forgot casey
Leader of the mod criminals
😛
are you a mod criminal atra?
No. The conditions of my parole are that I no longer crime 👼
THank you! I do recognize your PFP. Is there a specific name you want me to credit you as?
Don't feel obligated to but if you do feel like it, "Abagaianye" is good :) It's my Nexus username too
Very happy to mention people that helped me during my 3am delirious ineptitude 😭
Hey folks, is there a new standard way of creating a shared lib in mods, now? I don't want to use a .shproj and would like to be able to rely on something that's more supported by the dotnet cli, instead.
Hello i have just the thing for you
Someone owns me 2 nickles
is it not possible to just use a class lib? Though I do like how succinct this is (I hated the idea of adding all of the files to the projitems, so your solution with a wildcard is kinda nice
This one results in 1 dll which is nice for packaging
Some people do make class library mods that are dll that their other mods hard reference, I am aesthetically against doing that because sdv mods r tiny and I want to keep them independent
i am chu's first nickel. i like this approach and am tinkering with it for my own stuff rn
i get to reuse source code and rip them out into a dependency, but users won't have to download a personcore mod and i don't end up with a separate dll inside my mod zip
it's like having a good old-fashioned C static library* and i like that
* sort of
Yeah, i didnt realize shared projects were a VS thing
I don't really know what the shproj file does
probably just weird magic that VS is set up to look for. i learned you can call your file whatever you want as long as you <Import> it correctly
This stuff was me copying little msbuild bits from stardewui's shared project that was definitely setup on VS until it worked
I have screamed this at you like ten times
paperwork tends not to have ears so I see how it was missed
is there a way to change the farmer sprite during an event? the event is supposed to be set in the spa and the farmer is just in there, stacked in clothes lol
how does penny's 10-heart event handle it?
Thoughts? The proc/pop kinda bland to me tbh
Nvm, I have fast animation that's why it looked bland
uhm. hello? May i ask a question here about a mod? to be precise about a mod, i kinda repaired with a friend, but i now want to update, but i am missing coding knowledge and i want to learn how to take care of it? or do i break rules with that question
As Chuve said, i did take care of the Permissions and followed what the original maker wanted in that case
The mod in question is this one: https://www.nexusmods.com/stardewvalley/mods/569
My Fix is here: https://www.nexusmods.com/stardewvalley/mods/30635
Yeah the original mod has open permissions so you are fine 
Thank god. i read them first as i tried to fix it, because i did not want to upset anyone especially not the modmaker if they saw it
Main recommendation is to open source your fixes too
there i have a problem. a friend did it, as i do not have github or anything. i wrote in the description down what he did tho. i was trying to replicate it, but. i never worked with github in my few coding lessons. but i am willing to learn
i just learn easier with a teacher
Yeah it's probably better to ask friend about it
Another thing is that it would be better to replace this load https://github.com/Alphablackwolf/SkillPrestige/blob/60b23cd3daeea0145b7a0321720ebdf5099eb10a/SkillPrestige/ModEntry.cs#L306
Instead of distributing the xnb
this looks like the main file right? (sorry if am wrong) so you more or less mean to like write it new?
The greenbox error? ah i see
are there any experienced custom farm makers that may be interested in making a farm for me?
!commissions
If you're looking for people who do mod commissions (either art or code), here's a wiki page with a non-comprehensive list of people who do them: https://stardewmodding.wiki.gg/wiki/Stardew_Mod_Commissions
do you have a budget in mind?
ty
I've no idea of how much it should cost so not really
will take a look at the commissions page and see
Interesting... I still have a few more personal MODs to revitalize, but maybe I will consider being paid to do someone's MOD. Probably not, but good to know it is an option. I do good work, and my MODs speak for themselves. I don't do Content Patcher stuff though. (Adding to my idea bin)
Actually I was curious about why you did C# for the billboard mod
(Fwiw, I've personally never done commissions because (a) i dont want to be on the hook for long term maintenance and (b) the hourly rate for mods is a tiny fraction of what I make.)
Do be aware that BC you've asked you may get bots messaging you about commission scams, be weary and if in doubt, that wiki page is one of the best locations to find people who are genuine
Atra i pay u 3.5 to archive atracore forever thx
I should do that huh
It's not much of a problem now but ppl used to have not loading atracore in their log frequently
It shouldn't affect anything if it isnt loaded
It's not magic
Also those are mostly people who had it downloaded, lol, there is next to no downloads on anything I have anymore (good)
Aww no (possibly outdated) atra mods in my mod list
Why would you want an atra mod lol
Because I wasn't around before your retirement so all your mods are totally new to me
damn the flex 😄
i may have forgotten to give my npc a sprite
oh you're making an npc?
"feeling cute, might delete later" /lh
yea!!
oh sweet!
i got inspired by recent events in a fandom im in, so i wanna make some of the characters as npcs :3
oh nice! good luck :)
ty!!
got it, thank you
I think I am finally free of the i18n mines until I create more custom NPCs (and thus more dialogue and events for them)

foo rates are pretty high right now, can you afford it? :P
wait, are the expressions tied to gift responses hardcoded?
Yesish
oh?
Noish
ah, of course
There are defaults but you can just use, say, $h to override
gotchaaaa okay, so if i set custom reactions in the data/dialogue thingy the expressions I chose will show up?
They should
alr! thanks :)
i assume making an NPC a lesbian or gay is more complicated than just setting IsRomanceable: PLAYER_GENDER Current (gender), right? since an NPC romanceability would be global not per-player?
I need help.
One of my adoring fans has run into an issue with my emote replacer mod.
Could one kindly locate which mod could be clashing with mine?
Log Info: SMAPI 4.3.2 with SDV 1.6.15 build 24356 on Microsoft Windows NT 10.0.19045.0, with 104 C# mods and 176 content packs.
Suggested fixes: One or more mods are out of date, consider updating them
Image they've attached.
https://imgur.com/a/radical-emotes-not-work-2B0J0Wg
what they can do is patch summary on whatever asset emotes are (LooseSprites something?) and see which mods touch it
This is one of my first few mods. Could you explain what "patch summary" means?
in the SMAPI console, type patch summary asset <whatever> for a print out of all the patches that are applied to that asset. i can link CP docs for more info
…never mind i can’t i forgot github doesn’t display on mobile for me anymore. but it’s under troubleshooting
So, if they were to put in the name of either emote spritesheet file, they'd check every mod that changes it?
it would have to be the target, not the filepath but yes
Or do you have to put in the folder either spritesheet's in it?
i’ve never worked with emotes so i don’t know what you did to edit them
Use spacecore
and i’m on mobile so i can’t check unpacked data
spacecore to the rescue once again! yay thanks
{
"Format": "2.8.0",
"Changes": [
{
"Action": "Load",
"Target": "LooseSprites/EmoteMenu",
"FromFile": "assets/EmoteMenu.png"
},
{
"Action": "Load",
"Target": "TileSheets/emotes",
"FromFile": "assets/emotes.png"
}
]
}
The entire content file.
yeah whichever one you want to check you would do, for example, patch summary asset LooseSprites/EmoteMenu
yes
that was gonna be my first question lmao
Hi, a quick question: Do the fruit tree sprites have to be 80px tall? If they’re 96px, could that cause problems?
I couldn’t find anywhere what the maximum height for the sprites is.
You cannot increase the spritesheet size
seems to be Overgrown Flowery Interface
(SMAPI trace logs can list mods that are editing a tilesheet)
(you can search for the tilesheet's name with Trace on)
