#making-mods-general
1 messages · Page 221 of 1
lowkey i felt very dumb learning it the first time ;-;
Oh yes great, just what I needed 
(Castellan = Spanish from Spain, Catalan = another language spoken in the Catalonia region of Spain, e.g. Barcelona)
might be cause im a perfectionist
There's also one thing to know the basics and there's another to have a degree of understanding when it comes to employing nuance. The desire for accessibility is very admirable but to bridge a gap between two languages, there's a bulk of work that needs to be put in.
Do you think making an i18n is really worth it?
true
you can use the i18nifier
(and in many cases, a bulk of money exchanged
)
maybe im an anime nerd tho
i18n gives you useful features that's not translation related too
The i18nifier app helps tremendously, but it's better to start the process early than wait and do it at the very end
Speaking from experience xD
and the arabic language? it looks beyond pretty
Like u can do args to reuse a i18n key
I got that one, I have yet to use it though. Hopefully it will be simple enough. Honestly, I want to have the dialogue in it’s own Json and just i18n everything else.
am i being weird?
You can use subdirs for i18n now
about how languages sound and look?
(in many many cases, you're very right!)
default/blah.json
One of the coolest things you can do with CP is use i18n in conjunction with CP random to make variable dialogue from a set of lines
i dunno it makes me apperciate the world around me
(Also Button my friend finally convinced me to get on Freiren, I think I'm gonna watch soon after law midterms
)
Oh, then maybe I should just stick with the i18n
YES DO IT
ok i'm done being off topic but do it
you aren’t being weird, but treating languages in this way tends to come with some less than ideal ways of viewing other cultures 😅 it’s good to appreciate languages and their differences but putting them on a pedestal for aesthetic features usually isn’t a good thing
Me too love anime. But Japan is not like anime at all. Most anime nerds end up disappointed with Japan due to expectations. Thats from a couple different personal connection that have actually moved to Japan after college.
I don't have an example to post from this computer, but if you go look on Nexus for "Sweeter than Pomegranates" and check the Marriage Dialogue for Elliott, you'll see it in action
personally id love to see the world
((gasp selph is here, hi selph was it u that made the bigger than 16x32 machine sprites mod i cant find it 😭))
i get that
thank u chu !
my experiences outside of the states are limited and the stuff i know is cause i'd read about it
yesss this is the mod I wanted thank u 
but i wanna learn as much as i can
Thanks, you think that would be a good learning experience? I have looked through the i18n doing more complicated stuff in other mods. May I ask what does this one does differently to where a beginner could really learn from it more effectively?
Travel is great, just temper expectations. Enjoy places for what they are. dont go with preconceived ideas.
mhm! whenever i can afford to i will! i have some lil goals in mind when i travel tho ex. if i go to japan i'd love to see the temples in person and learn more about the culture up close and personal. i kinda fell in love with other places' history and it makes me wanna learn everything i can
haha fancy seeing this recommendation with Claire in chat 
This mod is just dialogue, nothing else, so it's pretty slim. I found it rather educational to look at, and I'm still learning 🙂
Ok, thanks! I’ll get it. I’m definitely still a beginner and it’s nice to meet other people still learning a lot as well.
I'm using the same method now for variable divorce text, since the NPCs usually only have one "divorced" line that they say forever
Now I have 8 that Sebastian can cycle through
Cool. Variable text sounds worth making the file for
Good luck, and don't hestitate to come back and ask questions. The people here are nice ^_^
Sure thing! Thanks.
I think "machine-aided" translations are potentially viable if you are trying to translate a mod from a language you don't know into your own native language; the assumption being that you aren't actually submitting the machine translation straight up, you are using it as an aid to understand how the mod works, and using your own play-through with the mod to figure out what those lines actually mean and how a native speaker would say it.
That's a lot of "ifs", but it's somewhat more valuable than a machine translation from a language that the "translator" does speak to a language they don't speak.

mhm! unless i get the greenlight? any mods i edit? they're for personal use!
Translations are generally not editing a mod. Translations are separate "mods" in the Nexus model.
When i translate i do use mtl to find ??? words i only know in english
honestly even if im just plugging stuff into the machine for my own sake, i stare at lines for a good 10 minutes sometimes because it just doesn't look right 😭 getting the right wording and "voice" for a piece of dialogue you can't even read is hard
Aside from the bulk of dialogue, Kantrip is right that it is pretty slim, only that it deals with dialogue but basics wise, it's okay material (?)
Or when it's ambiguous, like "pylon"
speaking of which? are there ways to translate when monolingual?? outside of machines?
learning the language...
call luigi a friend?
i can try but it's not easy
i do that for spanish mods especially!
(I'm really looking forward to actually playing with this mod once I'm done writing my Seb mod)
learning a language is not an overnight endeavour, so its okay if you take your time before you try translating
ya know? a translator help corner for this server would be nice!
true
and some languages can be easier to learn than others
coming from me who has messed up spanish ;w;
I'm also excited to play with my mod, seeing as I haven't even seen the dialogue I made 
i think if you want translations, either find someone who actually has a solid grasp of the nuances of the language or simply do not have the translations (or spend years studying that is also an option lol)
if you don't know the person providing a translation, get someone to verify it somehow (or at least run it thru a machine to make sure it makes some sense to SOMEBODY)
Can't wait to see what you have for us in store, Older Seb is something I'd actually be interested in ngl 
I'm going to be releasing my mod without translation, but with a clear note on the mod that tells people who are interested in translating it how to contact me and work with me on it
oh me too actually
i love translator notes
i think discussing with the translator is like the only way to get an authentic translation too
Good call, haha I'm always willing to have people work on translating my stuff (granted that when they work on mods like Good Luck Haley, I set it in stone that LGBTQ content is not allowed to be eradicated or erased)
bc theyll have grasps on the language or certain things an npc says in a way that a machine wont
Thank you! 🙂 I'm so so so so so close. I actually have a beta up that people can look at. Otherwise, just wait another week or two
Can I request an asset via DataLoader.SOME_ASSET(Game1.content) or Game1.content.Load if a save is not initialized
I would never use machine translation even as an aid for something as big as an NPC/dialogue mod, I was thinking more in terms of using it to decipher what the various elements of a UI or HUD might mean.
like is the content pipeline only active if a save is loaded
You know, think of buying a bookshelf and you only have the assembly instructions in Chinese, English is missing... you could probably use a machine translation to get the basic idea and then use your own judgment to turn that into something that actually makes sense.
oh this i think is totally fine
but an npc? jokes and references would get lost way too easy
I think it's fine
do try it though
Translations and Localisations are usually done to give the impression that something is developed specifically for them. It should be done in earnest, not because "I want to make it because it pads out my mod listing"
If you're monolingual, making a localisation mod is just pandering - don't do it. It makes you look silly. 祝你一天过得愉快 
oh that's not my intention at all
i did reccommend for the server to have a translation help corner to make sure that doesn't happen
it is fine 💪 the data is there
thank u
usually (in this community) youll have translators come to you, since its mostly a case of “oh, i want this thing in my language” rather than an author requesting it
this is a case by case basis of course
its more common for the former in larger scale mods
latter more common for ui or hud related things
not quite in the vein of translations but ive been staring at my wip dialogue wondering if i really want to go through writing this character's lines in "Shakespeare english" or not...
oh boy
as fun as that would be, youd probably have whiners wanting a toggle
On my end, I usually just let translators come to me and directly ask, especially since I set my conditions. For content related mods, it's usually the former as well.
i wonder can the cooking showdown ever be translated to english seamlessly??
😅 i already have plans to write two sets
then youre good to go fam
just mtl it if you want to use it that badly
i like the idea of using it and i wanna make sure that it's ok
yeah? unless the mod says “dont translate my shit” then why would it… not be fine
you seem like the type who worries a lot lol i promise u its fine
translations are like one of those things thats usually Always Fine
the posting etiquette for translations however comes from whether the author wants to host it (via i18n) or doesnt care (you can host the english version for example)
or requires their stuff as a dependency or yadda yadda
as mentioned already MTL only for personal use is fine
your questions imply that you're doing this with the intention of publishing, in which case we don't recommend it
^
cool cool
like I said above, for personal use, any mtl is fine
(if that's not your intention then sorry!)
personal use only! unless i get a green light to upload
Why does this mod ship it's own towninteriors.png 
noobery probably
Is smapi correctly loading en.json these days
That is another potential issue with tl'ing this mod
ooh good point
me just naming the en one default and renaming every other language 😔
Well, you want your tl mod post to be drop in to original
mmhm
if you MTL'ed it for personal use thats fine, but if you do get the greenlight to post it why would you publish mtl'ed translations, unless you can somehow procure genuine human translations after getting the greenlight?
thats what we've been trying to say 😔
we know that
we're just saying, published MTL mods arent received well, so IF you really wanted to use the mod, you can go ahead and translate it for personal use
but if you publish that after getting the green light, you'll be receiving bug reports from bilingual and native speakers
and because you dont speak the language, how would you be able to support that?
me crying at the flood of pt-br gpt-translated mods on my nexus mod page once a week
ahhh i didn't realize!
its pain and suffering out there 😔
thank you for informing me!
u block the author, u are fine for another week. And Then Another Flood Happens

nexus why
thats pain
oh also Lani while ur here
I took a look at Peace's hoodie mod !
its not quite what I needed, but i did learn you can make dynamic things which is really cool
the search to unify sleeves to shirt when the shirt is a wearable item continues
oh my god there are so many 😭
One of them even translated MEEP!
ahh i figured, its like the one hoodie mod i could think of but i knew it probably didnt cover your use case
see what makes me laugh is when theres translations for like. a tilesheet mod. and its like that doesnt even have strings or text on the objects brother what
its also my first time trying to do anything with FS, i dont normally use it but I wanted to make "merch" for my expansion 
I wish there was a better way for me to not see translations on Nexus ever, but if I update my settings to exclude them, that also hides mods that have the translation tags which are not mod translations themselves.
is it translating the configs?
The number of times I've gotten bug reports for 'this dialogue is broken' and it's because of a translated version of the mod
zh.json
{
"Yes": "否"
}
did the translator break it
STOP THATS SO FUNNY
yes
gotta be, it's always because of them messing up my escaped quotes in strings xD
I propose we get away from communicating in any one language, and just use emojis
you might as well make all the translations for meep yourself holy crap
Yup!
{
"Yes": "Não!"
}
That was the translation, obviously. I've since changed MEEP's unnecessary i18n to:
{
"translation-message": "If this is translated, I, the translator, confirm I did so using automated methods and did not check what I was translating."
}
💯 
{
"Yes": "👍"
}

wait why is “Yes”: “No” anyways in there
No matt its 👎
thats confusing
so basically hieroglyphs?
you yes me to no me….
I have a template csproj project, and it's just... in there.
I just didn't remove it.
are emoji's modern hieroglyphs
I put $schema in there instead
here's my contribution, I will open a PR later /s
{
"Yes": "Không"
}
Just to have smth
genuinely yes, they are!
huh interesting
theres studies on that i think
{
"Key": "NotKey"
}
wont have to ponder much, they are rather self explanatory
You mean you 😔 and 🥲 for them
can I contribute a hebrew version despite a hebrew translation of the game not existing 
{
"Yes": "לא"
}
historians WILL be pondering why i use 🏌️ for no golf related reason, however
true
sometimes i am just 🏌️
Now translate the rest of the game
Maybe for this language:
"Target": "Data/AdditionalLanguages",
"Entries": {
"Opposite": {
"ID": "Opposite",
"LanguageCode": "zz",
"ButtonTexture": "{{InternalAssetKey: assets/button.png}}",
"UseLatinFont": true,
"ClockTimeFormat": "[AM_PM][MINUTES]:[HOURS_12]",
"ClockDateFormat": "[DAY_OF_MONTH] [DAY_OF_WEEK]"
}
}
oh god oh no oh jeez
im just sayin historians gonna be pulling their hair out just like norse mythos historians!
MINUTES:HOURS NAHHH
just saying it's painful we don't have the majority of norse mythos.
legally you can’t make me do that
id forget and go “why is it 31:6?????? why is it 31:6????”
yall had a writing system bestie. we could know more about loki.
Can you elaborate on this besides the obvious (I didn't employ you)
hehe… ackshually… 🏌️
(just an old joke from a very tired brain lmao)
excuse my ramblings about norse mythology i am just sad about not fully knowing if loki was even a god or not.
god the font discord uses for hebrew inside code blocks is ugly though. What is that
I've never seen it before
it’s like the equivalent of an extra thin version of courier new

ugly font, 0/10, almost as bad as harry styles’ hebrew tattoo
Harry... Styles?
harry styles' what now
Is he the moustache guy
he has a hebrew tattoo of someone’s name 
no that’s harvey
Harvey styles
Harry Styles, but does Harry Slay
mod related: is there an ice mod where you can slippy slidey on patches of ice
i ask because i slippy slidey’d yesterday on the ground 🏌️
for reference, this is like the default office font for hebrew
I’m pretty sure it’s arial
LOL
oh goodness I remember him from that one tweet that said
"he's challenging gender norms and he's losing. the gender norms are beating his ass"
Omg it's like if you just typed something into word and got it tattood as-is
I have been making fun of his version of challenging gender norms for years now omg. Gender non-conformance for Men™️
Honestly i see all those "people who don't speak chinese get chinese tattoos" all the time but i kinda want to get a tattoo that says "chicken soup" or something on purpose. For the fun of it
... but why do you have an "unnecessary i18n" file? If it's not necessary delete it lol
unfortunately that i18n is now load bearing and if removed will make the game CTD
get a tattoo that says “if you can read this, please tell people this says something deep and meaningful” 
Ah yes json {"coconut.jpg": "alan don't translate this"}
Get 𰻝𰻝面 tattoo
biang biang noodles my beloved
Also I answered my own question. DH needed an unnecessary i18n file because he was unconditionally including the ModTranslationClassBuilder in his common project, and that throws a compilation error if there's no i18n/default.json for a project.
Oh no the biang biang noodles crashed my phone
That's why I use something like xml <EnableTranslation>true</EnableTranslation> and then xml <ItemGroup Condition="$(EnableTranslation) == 'True'"> <PackageReference Include="Pathoschild.Stardew.ModTranslationClassBuilder" Version="2.0.1" /> </ItemGroup>
Yup, it's the cost of trying to be lazy about using ModTranslationClassBuilder
Though honestly I should switch that to be true by default since almost all my mods use it
Not that I'm calling anyone lazy, but I also try to put as much as I can in my Common.targets file
Honestly? It lives in my template project, and I just never got around to removing it.
I also do the same thing but I be lazy
Same!
Now though, it seems to serve the purpose of helping detect automated translation bots or some nonsense.
Plenty of mod wip have a default.json if {"no":"translation"}
Fun fact
Someone translated atracore
I haven't gotten around to making a proper template for every new mod project I create, but I've been meaning to do that because the first 5-10 minutes are always me just copying all the boilerplate stuff
I wasn't aware atracore had translationable text
Lol, I just made miniatrashared
Do you literally copy+paste the same project?
If I did that, I'd still have to search+replace the project name, namespaces, etc.
Personally, I:
- Copy my TemplateProject directory
- Rename the folder and the csproj
- Update the name, etc. in the csproj
- Rename the root namespace
- Add to solution
Yeah, I'd like all of that to be just a "create new project following this template"
I've looked into dotnet templates, but they're weird.
I just create a class library project the old fashioned way and once it's made copy paste one of my other mods csproj into it and then update the details
Yeah I create a class library, and then setup all of my standard customizations
Which includes the project references, standard files (GlobalSuppressions, editorconfig, README, etc.), copy+paste csproj
Some standard folders that I organize my projects into
It's so repetitive, that I know it can be fully automated
My last few mods only have the csproj and modentry.cs
Maybe not using donet templates or anything, but I'm sure I could script out all of the things I would normally do by hand
These days I only leave modentry.cs once it's actually big enough to matter
I usually start with everything in ModEntry when I'm in the "prototype" phase of development
But I'll organize things into my preferred system before it's "production"
Mainly because I have a bunch of common helpers that I reuse across mods
I use a dotnet new template yea
This is how an action warp should be done, right?
I don't have a core shared helper tho
do you have a directory of common classes that gets Included in every project
No
I rewrite those every time like a neanderthal
Primary purpose is to setup the static monitor for logging
I think you might not need the last two coordinates? Wiki says: Action Warp <int x> <int y> <str area>
I do have a shared library which gets reused
Huh, alright. I will try it out.
But I'm not a content person, so listen to literally anyone else over me here. 
Common to every one of my mods
Thing is the action isnt even appearing (the action hand)
Wait...
I put it on the wrong layer.
Does this make the dll more big (not that it matters)
more shared libraries 
Maybe, but I imagine it's negligible. I don't know if dotnet is smart enough to not include things that I don't reference.
I wish rider supported them properly
I'm fairly sure all of my shared project nonsense gets added to the final build, yeah.
Do they not work right for you in Rider?
I think Rider had problems setting them up, but once they're there it works. At least from when I last tried doing that.
There are... quirks like a warning in the shared project being present for every single normal project, but I just kinda ignore those.
uh. I just clipped through a wall in a map now that same wall wont let me back through
if by problem you mean “there’s literally no way to” then yes
rider does not natively support shared projects other than kind of sort of respecting pre existing ones
Can't u just edit the csproj to add them
Huh, wow, yeah. Rider doesn't seem to have the ability to create one in the UI...
I tried, didn’t work for some reason 😭
Guess it's time for you to switch to vscode
My mind is slightly blown right now...
Even the dotnet command can't create one?
I’m not sure how to do it via the dotnet command tbh
I don’t use c# outside of stardew haha so I don’t have much experience
I mean like it physically doesn't seem the have the capability.
Visual Studio provides the "Shared Project" template which is very useful to share source files across multiple "real" projects. I can't see the equivalent in .NET Core 3 us...
Have you seen miniatrashared
Maybe I should just switch to a core mod and save so much hassle...
Oh, yeah, that's just a separate thought. 
I'll be disappointed
But I have an abstract class I inheritance from
I have seen both atrashared and miniatrashared, and also atrabase, and they’re the reason I know rider is stupid about shared projects 
Sowwy
The primary reason why I don't have shared project and probably wont make one is bc i am doing single repo though
To have shared thing like that clone properly I'd need to do submodules (scary)
It is also just, not that much stuff to be shared yet 
Does anybody know why it may be spawning me out of bounds? I have all the warps set up correctly, debug warp works fine but when I try to enter normally it chucks me into the void
the trick is to write brand new terrible implementations of the same code each time rather than writing one good one and reusing it
Scratching "core mod" off of the list of possibilities... 
And it is always that 1 tile that it spawns me on
making a second core mod
What about a third core mod
because that tile is 6,19, which is what you said it should be
I think
You can start calling them frameworks at that point
it certainly looks like 19 on the x coord to me
Nope
wdym nope? it says DefaultWarpLocation 6 19
I just showed you, I have my mouse over the tile 6, 19
All good
This is the other side btw
what coord is that other one? could it be 18 19?
it does look like this is 18 19
no, what coord are you spawning on
oh, it isnt even in the map so i would need the debug mod to check hold on
Like I said earlier, I don't think the last two numbers are needed. It's Warp <target x> <target y> <map name>, I think?
so your warp is taking you to 18,19
I will try that
So replace 18 19 with 6 19.
Hi! I'm new to the modding scene but I'd very much like to learn how to mod things. I've looked over the documentation and it doesn't seem to be beginner friendly. I've tried reverse engineering some mods from Nexus but I can't get them to work. Would anyone be willing to teach me how to mod/guide me in how I'd take my first steps?
!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.
I've read over all the documents from the wiki I could find and I'm still a bit lost with all the specifics
what looks user friendly depends a lot of what you look at, Content Patcher documentation for ex is super detailled
it also highly depends of the kind of mod you want to make
can you give some examples?
(my experience with modding on different games is that SDV is by far the most friendly i saw, but of course ymmv)
right now I just wanted to add some custom fish into the game and I've been struggling on how exactly I should structure things
I've also never modded before so this is mostly new to me
ok so fishes are a bit complicated. They involve several bits. The first step would be to make an object (that is your fish) and then use one of the mod like CJB item spawner to see if it's working properly
I'm reverse engineering some other nexus fish mods as well as a forum post I found but I just can't spawn the item into the game
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 to share a log if needed
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.
Tia made a fish guide iirc
that's another problem lol whenever I search "Stardew Valley modding guide" or the like I just get how to install mods instead of how to make them mostly
Adding a new fish to the game has never been easier than in 1.6; nowadays, fish are a simple set of patches via Content Patcher. There are four required steps: you need to load sprite images, define the fish (as an item, and as a fish) and add it to locations. Optionally, you can add aquarium sprites and data, and fish pond data. I'll be using ...
ty I'll read over this
question for those who are machine-inclined: if i wanted to change the seedmaker so that it attributed quality to seeds generated based on the quality of the crop, would i have to c# that or just edit the machine rules?
example, i wanted to be able to create tiered seeds. -- Putting in a Gold⭐️Turnip produced from a regular seed will give Silver⭐️Turnip seeds, at most (dependent on your farming skill, but that's for later math). Putting in a Gold⭐️Turnip produced from a Silver⭐️seed will give Gold⭐️Turnip seeds, at most (skill dependent). Putting in a Gold⭐️Turnip produced from a Gold⭐️seed will always give Gold⭐️Turnip seeds.
The niche nature of sdv modding means it's hard to look things up
But that's why you ask things here
I didn't even know there was a sdv modding wiki
could not find it at all through searches
basically the rule is regular seed crops will produce silver star seeds at max, silver produce gold at max, and gold produces iridum at max (provided you are inserting iridium crops into the seedmaker)
you would need C# to have somehow the crop inherit something from the seed
figured, yeah. ok, good start i suppose
stick QualityModifier on the seed maker rules
no framework mods allow for this behavior already?
otherwise the machine can't tell which crop produced which golden turnip, unless you mean they are different crops entirely
(like a litteral "silver turnip of silver quality")
nah its the same object
But then to change what happens with planted seeds, you need c#
i have no knowledge of such framework
i mean, quality modifier would work for a part
I think it's not that hard c#?
i thought extra machine config would maybe have something but id ont see anything
like "if my turnip is gold i get silver package", but then you would need C# to the silver package to do something
Need to check if the crop thing has moddata
nod
and you would need C# to differenciate "this gold turnip" vs "this other gold turnip" (and then there's the question of stack)
The idea is fun though, I'll respond with more details in like 2hr
i basically want to recreate the crop "level" system from harvest moon but using sdv's quality tiers instead
it would be easier to just eliminate quality entirely and go "level 1 -> level 10" but nah
I got permission from a mod author to update/change a tile in their map mod, I have ONLY my change added in;
{
"Format": "2.5.0",
"Changes": [
{
"Action": "EditMap",
"Target": "Maps/BusStop",
"AddTile": ["27 2"],
"FromFile": "assets/Porta.tmx",
"ToArea": {"X": 27,"Y": 2,"Height": 1,"Width": 1}
}
]
}
How do I make sure it loads AFTER the original mod to ensure it replaces the tile?
i feel people having to remember which crop is the correct gold crop to process may be tedious so you may need some other way to convey the info
different level turnips probably wouldn't stack (if we're adhering to hm logic, a level 1 turnip wont stack on a level 2 turnip). but at the same time, rune factory 4 stacked different levels and just listed what was in the stack
dependency or priority on the edit
i18n tokens babey
AddTile doesn't exist
yeah but by default same item same quality stack
yeah
nothing insolvable, there's fresh product doing something similar
but silver seed silver turnip is not the same as regular seed silver turnip
and the qi cuisine fresh label too
Im just editing whats already there, it seems to work as is, it does add the tile
nodnod
This is doable in c#
oh youre right! qi does do the fresh thing
I think pretty easily
Thanks!
It works because you already did the overlay fromfile edit
Uh, why are there 2 entries for the same thing, 1 of them being optional?
Again, Im just editing the content.json that was already in the mod, I just trimmed out everything but my change, I didnt even edit the filename
Thanks for your insight :D
But you don't need AddTile
What u can also do is to write the whole tile in content patcher without need for tmx
That sounds better, I just dont know how
I want to just change one singular tile to a teleport crystal
love how everyone says "oh this would be easy" and im just sitting here like where tf do i even start lowkey
The main thing is, I don't think you can add more tilesheets this way?
Only use a tile on existing
Up to you what do
if it helps i'm more "it would need C# hence it's hell"
so you may get some balance
i mean i know what type of thing to look for to reference, but as for what to even write, lol
If it helps ez C# is "probably don't need transpiler or any elaborate models"
You might need a transpiler
I was thinking u just intercept debris and change Quality
Hey Atra, has anyone offered to take over the fertiliser mod? That being revived would be so neat. 
(And no, this is not me volunteering!)
So how do I code in dependency or priority?
okay gang back again with tilesheet questions. how do i make a custom tilesheet change with seasons
the content patcher documentation will have more accurate info than what i can tell right now from memory
if you name your tilesheet a season, underscore, and the name the game handles it for you automatically
but those two keywords should help your search
Cool, thanks
thanks mate! easy as then
so like
spring_mapname, summer_manpame etc etc
Wren has!
I'm happy about it
I have a quick question for the "Target" segment in the Content json
the target refers to mod ID but not necessarily the file path right?
the target refers to what you are patching
so it will always be Mods/{{ModID}}/{filename}
if you want to be consistent and follow formula, yes, it will have that target
but not the filepath leading to the filename file
If you're loading something to a target it's a "path" , if you're patching it, you want to patch what the original mod loaded it to
its the format in the thing yes
it will not always follow that
and there is no reason it hass to. but its just a common convention
ok thanks I was confused whether or not it was the file path or a custom convention
It definitely makes things... What's the word.. unique? It your modid is in it
Tbh I drop the Mods/ part now
The main requirement for your path to be friendly to other mods is that it's unique
No other mod has any business using the path where the root is my mod's unique id
so is the only necessary part the ID then what you are patching?
sorry I'm just trying to understand things here
yall r confusing fletch just let them follow the tutorial lol
just do what the tutorial does mate, dont think too hard
these EXPERIENCED folks smh
sorry I just want to learn as much as I can
👍
The thing is you have to follow the convention of whatever mod you're targeting and it isn't guaranteed to be the exact same for every mod. So the answer is relevant to the question you asked, yes, but if you want to learn how to help yourself it's important to understand why this answer is correct.
Brb making mod with unique id Content
fletch just wants to add their fish to the game
they arent patching anything else but their own stuff
is this even relevant information to what i'm trying to do or am i just gathering useless shit/dont know where to look
like didnt u mention something about debris
oh i probably need to look at crop.cs huh
idk this sounds like you volunteering
You need to find somewhere to intercept the harvested item
Either patch harvest or intercept the debris result from harvest
There is a way around this but it is a faff with a pretend junimo
which way will cause less bug reports
cropQuality is set in Crop.cs so i think i should just patch it there no?
at line 578 with a ... mathhelper
it checks all the qualities before setting it though
Wait, it doesn't sound like you need to do anything with crop quality, no? Machines should inherently support assigning quality to objects using just MachineData rules.
The C# part is when you plant a seed that has quality, there is no logic on how that is handled.
but the tiered seeds
gold tier seeds have a different chance for qualities
so wouldnt i need to patch it
Yeah, so you want planting a gold seed to affect the chance the resulting crop is gold, right?
yeah!
Honestly, I think an easy/elegant implementation might be to make the seed affect the fertilizer
blinks
I tried to remember wtf i did and looks like i pretend to be scythe
Like you plant into HoeDirt, and HoeDirt can have modded fertilizer that affects the quality of the output
oh!
Not generally applicable sadly
ohhhh... ohh i see...
but then lies the problem of putting those special fertilized results into the seedmaker
to create higher tiers
Now someone has to come along and tell me that fertilizer is hardcoded to hell
Wouldn't this prevent you from having regular fertilizer
It is pretty hardcoded effect wise too
What I'm thinking is HoeDirt has modData, so you can have everything on that
Yeah
Like the modData can help remember what seed was planted
And maybe find where fert quality is applying
I hope 1.7 turn crops into big item query model
what about the seedmaker bit
Item query beloved
That's all supported already by vanilla
where if you plant a silver seed, and then put the resulting gold star crop into the seedmaker, you can get... Probably gold seeds?
but also sometimes silver seeds
oh wait really???
you can set probabilities like that?
Yeah just need to modify the rule

This is what I'm thinking you could patch:
public virtual int GetFertilizerQualityBoostLevel()
Yep multiple quality modifiers are possible
YOOOOOOO
Basically it checks if the quality should be boosted based on fertilizer, but you can override that
You can be like, boost the quality also if I have moddata for a golden seed
!
Based on what that function returns, you can:
Get the quality boost level from fertilizers applied to this dirt, which influences the chance of producing a higher-quality crop.
I think using quality has an issue though, in terms of gameplay balance
It caps too low 
what caps too low
Perhaps, but this is the imo the easiest way to accomplish what they're trying to do
Yeah
see the nerf i wanted to implement about this is that the chances to advance the tier with the seedmaker depend on the farming level
So a gold seed just acts like the crop is planted in quality fertilizer pretty much
well
I would also move seed maker earlier
yeah i was gonna dw
Or if you're really concerned about balance, you can just reduce the value of higher quality crops, then it isn't as important how high quality it is
seedmaker would be available as soon as you harvest a crop that isnt regular quality
courtesy of pierre old boy
no youd pay a exorbitant fee
LMAOOOOOO
(not rly exorbitant)
but for early game, its high
Make Pierre into Tom Nook, he gives you the seed maker but you're in debt to him
how high is it?
fair enough, also my brain immediately goes, people are going to want to configure the price
but that happens whenever there is any "price" involved in a mod
nodnod
to summarize the function: basically you have to use higher tier seeds to increase your chances of growing a higher quality crop
instead of... fertilizer i suppose
but that fucks with other things so maybe wrong wording
use higher tier seeds to guarantee higher quality consistently
So Essentielly Gold Melon -> Seed maker has a 40% chance of giving a high quality melon seed which has a better chance of higher quality, kind of?
I mean it could be as simple as Silver Seeds behave like Normal Fertilizer, Gold Seeds behave like Quality Fertilizer, and Iridium Seeds behave like Deluxe Fertilizer.
for my aquaponics mod that I'm working on spiritually I tried to look into how existing mods harvest crops without needing a farmer or junimos, and every solution I found was cursed in one way or another
solutions include: fake farmer in Game1.player, intercepting the location's drop debris, just duplicating Crop.harvest wholesale, etc.
If you really want to be OP, I suppose it can be better than that, but at least that's a good starting point
fake JunimoHarvester is probably the "best" solution I know of, and even then it's still mildly cursed
putting a gold melon grown from a regular seed into the seed maker has an x% chance of giving a silver tier seed (at best). so you'd have to get a gold melon from a silver seed to have a chance at getting a gold tier seed
if that makes sense
harvest moon ds is this obtuse about crop leveling LMAO
I was thinking of creating a captive junimo
Tbh
If u duplicate harvest arent u incompatible with item extensions
yepp
if u get an iridium melon from a regular seed and put it in the seed maker, it will guaranteed produce a silver tier seed
From some earlier tests, hijacking the debris event works as long as your player is in the location
Also my brain goes into, if i had to implement something like that, how would I? and my brain goes, introduce new duplicate crops of base game, with a % of giving you that new upper tier's crops seeds when you put in a gold of the previous level, but that would involve duping a lot of crops.
I see, so you are stuffing invisible aquatic junimos in the ponds
Like fruit shaped planton
but it almost sounds like you're doing that, but probably in a way smarter way that i would id assume.
oh no it wouldnt be crop duplicates, just add more context tags probably
and ... something about stacking
that will most likely what I'll go with, lil invisible helper
chu and rogukin both have to deal with auto-harvesting stuff for their mods
walking around with an inventory of 12 types of melon
Sea grape shaped junimos
would it be more feasible to just... eradicate quality for crops and replace it with an item level????
@brittle pasture Maybe worth checking out Collector since that mod has auto harvest code
that sounds... more awful
then stacks would have to keep track of each item level in the stack

The intercept debris thing is limited in that the farmer has to exist in the location
I did, it copies Crop.harvest
How much will you give me for this Pierre? "Hmmm, 12 Gold Quality Low Melons, X...?" What about these? "Ugh, 57 NORMAL quality Top Tier Melons? X...."
Rokugin couldn't use it for that reason
Then there's the Automate way of doing things, which is probably the same
pierre: oh damn this is a good crop. have 5 g
immediately resells for 12, grown from his own garden
Automate doesn't have crop code. Automate Garden Pot (an addon) does, and it fakes Game1.player
Oh that's right. I don't play with Automate, but when I did I had Delxue Grabber for crops.
I should stop procrastinating and start placing debris on this map.
Deluxe Grabber Redux does the same thing as Collector (duplicate Crop.harvest)
(you can tell I went slightly insane looking into this)
(anyway think I'll go with the captive junimo route, will let you know how it goes)
(which could be weeks from now)
That sounds daunting with all of the extra things the JunimoHarvester does in it's update function
That said, a JunimoHarvester would automatically be compatible with CustomBush since I patch them to manipulate what they grab from custom bushes
I'll just prefix skip all of TryToAddItemToHut, that's totally fine right 
Easy, done
Is that not virtual
I could have fucking sworn
ah yeah it is
I wonder if that'd solve the issue with hijacking the debris in that it should work when you're not in the location
(The long story short is that in the before times before I suddenly retired from moddinf deluxe autograbbwr was a thorn in my side)
Due to it copying game code
Making it very not compatible with....anything
But specifically more fertilizers
And after taking a look into the code I was all like I'll do my own version but compatibility
And then well
Life happened
I'm enjoying retirement
It's a bit of a cluster
so i know id be adding to customdata
what the Hell dawg. theres gotta be an example with like every single field ever
I joined mid convo, what do you want to do with machines
to do the tiered seeds thing
Since crops are already produced from seeds in the SeedMaker based on existing rules, I think just changing the quality modifiers might be enough
can you apply quality to seeds though?
You can technically apply quality to any object in the game
you can apply quality to every item in game
wait it finally clicked what you meant by making it act like fertilizer
pre-fertilized... seeds... thats the tier increase....
wow... my brain expanded...
Sometimes the quality becomes hat
i understand now...
But that's ok
okay okay. but how do you assign the quality modifiers
(tbh machine rules are pretty easy once you know how TargetField works and get past all the nested fields that 99% of machine rules don't need to care about)
I think this on the bottom is the only thing you'd have to patch
oh joyous day, an example
so its not copyquality, but
qualitymodifiers
👁️
oooh and then the modification
oooooooh!
i see... very slowly
And this should be the relevant docs:
https://stardewvalleywiki.com/Modding:Common_data_field_types#Quantity_modifiers
ignore the ID?
Actually, I'm trying to remember here. Do the modifiers get the input item as a context?
oh wait i see the example here
You want to set quality to 1, 2, or 4 (silver, gold or iridium) based on the input item's quality.
So the rule can be set it to 4 if the input is also 4 and random chance of 0.1
gotta look at gsqs now hehe
Only instead of adding to quantity you'd want to set the quality
so modification would be set
Set or Add would behave the same since in both cases the seeds are starting at 0
Is there a way to search messages for a ping? My tablet says I was pinged in this channel but I can't find the ping. Or did someone do a channel wide ping?
It depends on if you were mentioned directly or via a group
itd be this thing frog
if i put regular seeds in, i want it to stay regular, so would i just... 0 0 0 ? lol
Yeah, and that's where the GSQ comes in so your rule only applies if Input item has a certain quality
ooh ok!
You can have one rule per quality level and a different chance for each one
Or even a rule per input quality level and output
This is probably one of those cases where whatever rule matches first is the one that's applied (or none if no matches occur)
you can check your notifs
or search for mentions:yourusername
so currently, ITEM_QUALITY Input 1 1, RANDOM 0.15 means..... if the input matches silver, then.... ?
I found it. It was hours ago. Thanks 🙂
not sure what the RANDOM bit does, outputs silver?
means 15% chance
oh 15% chance to output silver REGARDLESS of input?
Yes, it needs to match both of those
it's an AND, so 15% chance AND input is silver
OH!
okay i see!
so if the input is iridium, and random is 1, it's going to be guaranteed iridium
you can just remove RANDOM 1 then
ITEM_QUALITY <target> [min] [max] where target is Input as in the input item
RANDOM <chance> [@addDailyLuck] where chance is the % and you can optionally have luck affect it
You can combine as many or few GSQs together as you'd like
You can make it unconditional by having that part be blank and then the rule will just apply by default always
ive never explored these item gsqs so theyre very new to me
i am usually in the relationship gsqs lol
There's a ton you can do with it. Farmer skill can affect it, you can check other things about the input item, it can be based on the season or day of month.
The possibilities are endless
god this syntax is gonna beat my ass but at least i know what i want now
thank you friends
It's a lot like dialogue and things like that where GSQs are separated by commas, and whatever parameters it has are separated by spaces.
And you just have to refer to the wiki to know what parameters it's looking for
If I were to make a mod that allows the player to obtain 'high quality' seeds, would they grow into 'high quality' crops?
They wouldn't grow into high quality crops unless you made it do that
^
The vanilla game doesn't have any special handling of quality seeds, but that's what Lani is building.
The vanilla game does this with fruit trees
I want to use the skill field in crops that effects how many you get based on farming skill level. Can't remember it's name of the top of my head. But if you use it you end up with hundreds of crops per harvest cycle. I think it would be fun to make a crop that plays off that and you get hundreds of crops worth next to nothing. Just not sure what crop it should be.
Oh do fruit tree seeds have quality, I didn't realize that
u can back read the channel we were just discussing how 2 make it happen
fruit trees that get chopped in 1.6 get a quality if they lived longer than 1 yr
to match the fruit quality increase
new custom bush feature plz thx
Ah, that's right. To make it a bit easier to relocate trees without losing all the time you put into it.
god this has to be the biggest, hardest mod i have done
Zucchini
joja™️ gmo salmonberries
Welp, that is... 1/80 sprites done...
alright, so for regular crops to get regular seeds
ITEM_QUALITY Input 0 0 and for a silver crop to get silver OR regular seeds.... ITEM_QUALITY Input 0 1, (RANDOM 0.15 + PLAYER_BASE_FARMING_LEVEL) ???(pretend that's a formula)
yall know how crop quality is determined by farming level? i wanted to... add that in here too
you cant maff like that
For some reason i thought you said "180 salmonberries"
You don't need a rule for regular seed quality
That's the default
oh okay
You only need a rule to promote them to a higher quality
how tf do i formula silver to potentially be silver or regular depending on farmer shlevel
ok let me try again
Also I don't think you can just add the player farming level to the condition
ITEM_QUALITY Input 1 1 is cor...rect now*
yeah ik 😔
ITEM_QUALITY Input 1 1 is needed to match silver
oh okay
Are you trying to make crop quality effect how many seeds you get? I know I am late to the conversation so feel free to ignore me.
Silver=1, and so ITEM QUALITY Input 1 1 means match item between silver and silver quality.
The two 1s are the range of quality you want it to match.
and then to give silver is just the 2 * chance for gold formuler
but in gsq form and without the fertilizer level bit
0.2 * (farming level / 10) + 0.2 * ((farming level + 2) / 12) + 0.01
The rule should basically guarantee silver, gold, or whatever as long as the game state query "passes" the condition
nod
You're not really doing any math in the quality modifier, just using conditions to affect the chance of it passing the test
it either matches the condition or not, and if it does the seed will be silver. I think having this level of formula in the GSQ isn't possible.
hrm okey
well you can maybe use CP tokens, which supports arithmetic
that or roll your own GSQ in C#
Yeah you can use CP Tokens in the Amount
i just wanted the chance in the seedmaker to scale based on the uh farming level
ooh!
So the thing about GSQs is that the result is never anything other than YES or NO pretty much, but with CP you can do much more advanced things.
As a general rule when I approach a new project I do the hardest part first
Then I get bored and don't finish the easy part
oh no... I have done something very broken and very infinite loopy
Yeah, GSQs is just whether or not the rule should apply at all, once it knows the rule should apply, CP can put the right number in there with math and all
oh it's just going beyond the size of the file
i cant read this
might need a microscope and a research team
ok i think i fried my brain on this lowkey
per the description:
... unless the player has two or more hearts of friendship with any of the named NPC(s).
the first NPC name is required since all doors must be owned by at least one NPC, and any following names are optional
ohhhh
4 million lines of the same output
is {{SkillLevel:Farming}} a usable token?
It definitely exists, but what I'm not familiar with is if that can be used alongside the operators to calculate a value. I mean it sounds like it should, but not something I've tried myself.
could someone help me troubleshoot?
i added an edible fish item but its sprite won't load and it won't let me put it in fishtanks
!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.
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.
post it here-

same braincell ...
quick draw Lani 
there's no brain in here, only a single moldy cheeto
very useful website
sprite won't load, can't go in a fishtank, and it won't prompt the fishing minigame
and i'm too new to understand why
entry for fish data looks wrong i think
Your data/fish and data/aquariumfish entry keys should be {{ModID}}.Goldfish not the texture name.
@unique sigil Thanks for your help with my map mod, got a letter back from the mod author with a green light so I finalized my mod and published it, thanks again!
https://www.nexusmods.com/stardewvalley/mods/31801/?tab=description
i can just do Mountain alone?
this'll probably be why tysm
yes, but i know like zero about fishing data so i could be talking out my ass
it just looks wrong
Your id can be whatever you want because it's just an identifier for the list of fish.
So making it match your itemid is probably a good idea unless for some reason it's helpful for you to call it mountain.
I made a fish mod literally yesterday so this is fresh in my mind lol
Also are your PNG files definitely named AquariumFish.png and Goldfish.png?
This can be problematic. I'm pretty sure keys aren't supposed to have slashes in them.
^ correct
They will have just changed that anyway
they are supposed to be "{{ModId}}.Goldfish" or something of the like
i've fixed those 2 problems
Because I told them to change the keys already
word
(what problems would the slashes even have?)
Ah, sorry I was looking over the json file
the problem is that its ooglay
(The convention is {{ModId}}_ with an underscore.)
telling someone that something is a problem if the reason for it is entirely aesthetic is not helpful for learning
Maybe my knowledge is outdated, but I could've sworn in some assets it's pretty strict about keys not having certain special characters
i was joking but bokay
Have you removed any existing copies of the fish from your inventory before trying to spawn a new one?
continuing to make me look goofy in front of the new kids....... i'm gonna eat cardboard
The unique string ID format ensures it can be used in other contexts. For example, a unique ID with slashes won't be usable in any slash-delimited data string, file path, etc.
i completely restarted the game so there were no old fish in my inventory
Does anyone know the equivalent of IClickableMenu.drawHoverText for android SDV? Trying to patch shops' item description
if i do Modification: Set i don't even think setting Amount will do anything, will it?
if it just gets set in the condition
i know i am wrong but i do not know why
As a temporary measure, you can simplify your Texture rule just to make sure that part isn't the problem by replacing this:
"Texture": "Mods\\{{ModID}}\\Goldfish",
with this:
"Texture": "{{InternalAssetKey: assets/Goldfish.png}}"
i'll see if that helps ty
This is guaranteed to load the Texture correctly. In fact, there's really no point in having the separate texture load as the Texture field itself is patchable by other mods.
The texture is not the problem, it's identical to how I have mine
I'm just saying it rules out one extra thing that may be configured incorrectly.
i don't think i can be as granular as i want with just editing qualitymodifiers for the seedmaker, so i will just table this idea i think 
Amount needs to be a value of 1 for silver, 2 for gold, or 4 for iridium. You can assign those values however you need to.
no no i know, i just can't math the probabilities like i want because gsqs are not like that
If I dont add a schedule to an NPC will it cause an error or will they just stay in the 1 spot?
It can be "1" to statically set it, or a token that results in the value of 1.
it will error
pretty sure.
Damn it
GSQs can't have the probability, but the Amount itself can use tokens to determine it's value
if you want more granular logic
How do I get them to stay in the 1 spot without a schedule?
you can implement a C# custom outputmethod
just do a spring schedule and then put the coordinates where u want them to be
you have to have a schedule
which is prob fine cus well, need C# for the harvest part anyways
or they will not spawn
Alright
Make the schedule points be the same tile they're already on?
...oh
that should probably be width
ty! 😅
haa, ill probably need to do that
if i want different formulas based on input quality
swear to god i bet making a contest with a win condition is easier than this
So I think you can make this into a CP Token:
0.2 * ({{SkillLevel:Farming}} / 10) + 0.2 * (({{SkillLevel:Farming}} + 2) / 12) + 0.01
And then maybe use this in the GSQ:
"RANDOM {{YourToken}}"
"Amount": 2
what is amount 2
That's gold
also: holy shit i can random {{token}}???
It means assign gold if the random chance of (gold quality chance) passes
ok we are so back actually
FINALLY https://this-is-not-a.tokenlogger.zip/JM1XluCONy
THE TILDATA COORDS ARE CORRECT
it was so over a minute ago
just want to make sure my file structuring is also fine i'm pretty sure it is but i might be wrong
@ivory plume if you're still around, should this work? I don't know if CP Tokens can hold the value of mathematical operators?
your file structure can be whatever you want, but ideally you would have file extensions showing
it can if you do {{Query: }}
!log Looks fine, but like Button said we recommend using file extensions. If it's still not working for you, can you share the log with us?
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.
pillow trying to parse tbins
As long as what CP stores in the token is the chance number like goldChance = 0.5, then having "RANDOM {{goldChance}}" is the same as having "RANDOM 0.5" meaning 50% chance (or whatever the calculation is).
"Name": "GoldFormula",
"Value": "{{Query:0.2 * ({{SkillLevel:Farming}} / 10) + 0.2 * (({{SkillLevel:Farming}} + 2) / 12) + 0.01}}"
},```
methinks
Yep, that should work fine.
God it feels so weird making a custom NPC, like im a mad scientist making Frankenstein
ohhhh we are so back
"Id": "QualityAssignment",
"Condition": "ANY \"ITEM_QUALITY Input 1 1, RANDOM {{SilverFormula}}\" \"ITEM_QUALITY Input 2 2, RANDOM {{GoldFormula}}\" \"ITEM_QUALITY Input 4 4, RANDOM {{IridiumFormula}}\"",
"Modification": "Set",
"Amount": "?"
},``` ok so
wow i hate tabbing
silver formula just multiplies goldformula by 2, and iridiumformula just multiplies it by 0.5
but uhhhhhhh
i dont know what i'd set for the amount.
if it checks... each of these
Silver = 1, Iridium = 4
It will apply the first matching rule so put them in the same order as the game code for it to be evaluated in the same way
oh okay
i.e., it checks iridium first, then gold, then silver
so make iridium go first, gotcha
if I "save" my mod mid way through uploading it (not at the publishing part) that will just save it for later and not publish it right? just getting late and I may not be able to get it uploaded tonight
It shouldn't matter because you're switching on the input quality?
Yup!
that is true
danke 
if its NOT* iridium it wont ever equal iridium
I want to make a system where when you sell a certain amount to an NPC a flag gets set for the next day to change a map, would that need C#?
I think my record was more than two years between making mod page and releasing mod
Yes

Log Info: SMAPI 4.1.10 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Home, with 4 C# mods and 1 content packs.
here's my log
so amount is the lowest number? or
thank you for helping so much btw
Amount with Set is the exact number you want it to be
but that number i want it to be depends on what condition it triggers
You'll have an amount per rule, and a rule per quality
And based on what you described, I think you'll only have a rule for producing silver or gold, right?
Ok can you try putting patch export Mods/FletchHead.MoreFishies/Goldfish into your SMAPI console and then going to the patch export folder inside your Stardew Valley folder and confirming that it has exported a .png of your fish? I want to double check your texture load is working properly.
iridium can produce iridium as well, just. low ass chance
Yes, exactly
OH DUH
okay that . clears everything up lmfao
we are so back (again)
"Id": "SilverQualityAssignment",
"Condition": "ANY \"ITEM_QUALITY Input 1 1, RANDOM {{SilverFormula}}\"",
"Modification": "Set",
"Amount": "1"
},
{
"Id": "GoldQualityAssignment",
"Condition": "ANY \"ITEM_QUALITY Input 1 1, RANDOM {{SilverFormula}}\" \"ITEM_QUALITY Input 2 2, RANDOM {{GoldFormula}}\"",
"Modification": "Set",
"Amount": "2"
},
{
"Id": "IridiumQualityAssignment",
"Condition": "ANY \"ITEM_QUALITY Input 1 1, RANDOM {{SilverFormula}}\" \"ITEM_QUALITY Input 2 2, RANDOM {{GoldFormula}}\" \"ITEM_QUALITY Input 4 4, RANDOM {{IridiumFormula}}\"",
"Modification": "Set",
"Amount": "4"
},``` ?
do i change the conditions for each one or like
or do i just
keep same condition
I don't think the any is needed, and if you want to match a range of qualities you can do it in one ITEM_QUALITY by using the lower/upper numbers
this is what I get
does this mean {{ModID}}/... is not working and I should just put the ID manually?
that's what I pulled from the big error block at least
"ITEM_QUALITY Input 1 4" means it will match silver through iridium
But I don't think that's what you want because that means Silver input items will have a chance of producing Iridium.
nodnod
I think you have it backwards in that you want Silver to Iridum seeds to all have a chance of producing Silver
silver should only produce silver, gold should produce gold and silver, iridium produces all 3
oh.
Yeah, what you have there is a condition on the Input item (i.e. crop) that lets the seed produced be iridium if it's silver to iridium
OH
Just remember Input refers to what you put into the Seed Maker, not what comes out of it
so input 1 4 should be on the iridium condition?
Uhmmm I can't remember what that error means. But I did just realise that if you switched to using internalassetkey like Matt suggested then there's no texture Load to check anyway. Did you switch to "Texture": "{{InternalAssetKey: assets/Goldfish.png}}"?
input 1 4 should be on the rule with Amount: 1 since that's the rule that results in a silver quality seed
! i see
Input 4 4 should be on the rule with Amount: 4 since you only want Iridium seeds if the crop is also iridium quality
ahhhhhh i see
{
"Id": "SilverQualityAssignment",
"Condition": "ITEM_QUALITY Input 1 4, RANDOM {{SilverFormula}}",
"Modification": "Set",
"Amount": "1"
},
{
"Id": "GoldQualityAssignment",
"Condition": "ITEM_QUALITY Input 2 4, RANDOM {{GoldFormula}}",
"Modification": "Set",
"Amount": "2"
},
{
"Id": "IridiumQualityAssignment",
"Condition": "ITEM_QUALITY Input 4 4, RANDOM {{IridiumFormula}}\"",
"Modification": "Set",
"Amount": "4"
},
Only in the reverse order if you want Iridium seeds to be calculated first
if iridiumformula fails, does it go and check the gold formula?
Yes
oh my god epic
Oh I do remember the error now, Shiloh got it the other day and it was because her png was corrupted. Can you try just making a new png file in mspaint or something and using that instead?
is there a way to implement a "iridium can't ever produce regular seeds" rule
like itll guarantee a silver at minimum
That's not what's causing this error
The png is trying to be loaded as a data structure
I've never specified a type when exporting anything
You only have to do that if the game has not requested it before
i didnt change the texture line but i'll try making a quick png
would this also fix it not being able to go into fish tanks or not giving the fishing minigame too or are they unrelated
to me they seem unrelated but idk much
Ok ignore what I said about making a new png. Instead spawn an instance of your fish and then use the patch export command.
bro there are only 3 PORTRAITS AND THE 1ST ONE TOOK ME 30 MINUTES AND IT DOESNT EVEN LOOK THAT GOOD
The reason why I suggested using InternalAssetKey is that it basically makes it impossible for the texture loading to be the issue. By reducing the number of things that can be wrong, you'll eventually find out what is wrong. Instead of doing that you're going to end up troubleshooting the same steps over and over again.
by spawn do you mean just player_add name it into my inventory?
Yup
It's appearing as an error item when you do that, I assume?
actually there's no error
and the export folder has the exact sprite in assets
but there's still no sprite in game
You haven't technically gotten to any of the fish-specific stuff yet. Spawning an object is relatively straightforward. Not a lot is needed for that to spawn correctly.

