#making-mods-general

1 messages · Page 73 of 1

versed wyvern
#

Oh no... so close and yet so far... I got my Haley sprite working with Scale Up 2, and she shows up okay in NPC Map Locations... but Scale Up 2 itself may be broken as all of her sprites except for her default standing and walking down sprites are jumbled up and pulling from the wrong row of sprites... like her walking right sprite here is instead using her walking upwards row

#

With no rhyme or reason as to which wrong row it pulls from, as these walking sprites are pulling from the row below them but the row with her pickle jar sprites is using her left walking sprites from two rows above

ashen goblet
#

Is the ModID anything to my preference?

#

Like, i can name it anything?

hallow prism
#

you'll need to provide more info and the json. And have your id you add yourself more unique

#

!json

ocean sailBOT
#

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.

hearty tide
woeful lintel
#

I spent about 2 hours yesterday trying to add priority to Furniture Packs, only to realize I should add priority on Furniture Types (like CP does priorirty on patches, not on mods) the second I went to bed.

hearty tide
#

It worked

orchid quest
#

FANTAISTC!

hearty tide
#

Sorry for the ping

ashen goblet
#

I know what the issue is trying to point out, but I'm unable to figure out the error in the formatting; could somebody real quick let me know?

brave fable
#

After parsing a value an unexpected character was encountered: {. Path 'Changes[0].Entries.laufey.Looped', line 13, position 13.

#

please note the unexpected { on line 13

ashen goblet
#

Sorry! What do you mean by note?

brave fable
#

consider it hahah

ashen goblet
#

Ahh pssht, you literally meant 'note'

#

It still gives off an error for line 15

hallow prism
#

you should try getting a better indentation, i believe you may be missing a closing bracket but it's hard to see

ashen goblet
#

Would you prefer a screenshot?

#

This is for sounds so it's not large at all

hallow prism
#

no, i prefer not

ashen goblet
#

Cool

#

I fixed the issue, thanks for the help y'all

hallow prism
#

to clarify, since maybe it's the point of confusion, "it's hard to see", doesn't mean that what's on the parser is hard to see, but that seeing where are your pair of brackets is hard to see because they don't align

#

while indentation isn't the only solution to find a mismatching brackets, it helps with the readability of your file

hallow prism
#

i have an issue trying to use a feature of item extension that, to my knowledge, doesn't have a lot of example around.
feature : spawning a monster
json :
https://smapi.io/json/none/fde6da8ecb724795a45a0d6846a2590d
error :
https://smapi.io/log/7655b7d04d7c4c3d8843b59b725bdbcb

   at ItemExtensions.Additions.GeneralResource.CheckDrops(ResourceData resource, GameLocation location, Vector2 tileLocation, Tool t) in /home/programar/GitHub/StardewMods/ItemExtensions/Additions/GeneralResource.cs:line 361
   at ItemExtensions.Patches.ObjectPatches.Postfix_performToolAction(Object __instance, Tool t) in /home/programar/GitHub/StardewMods/ItemExtensions/Patches/Object/Resource.cs:line 109```

My understanding is that it's related to code here :
https://github.com/misty-spring/StardewMods/blob/main/ItemExtensions/Patches/Object/Resource.cs
But it's as far as i can get, and i don't know if it's me missing info, having extra info, or wrongly formatting info.

If you have code reading ability and can light some light on this, it will be appreciated. Pings are ok in the context.
GitHub

A repository for my Stardew Valley mods. Contribute to misty-spring/StardewMods development by creating an account on GitHub.

ocean sailBOT
#

Log Info: SMAPI 4.0.8 with SDV 1.6.8 build 24119 on Microsoft Windows 10 Famille, with 72 C# mods and 77 content packs.

hallow prism
#

additional info : commenting the spawnmonsters block make the node breakable without error, so the error is involving the spawnmonsters block

finite ginkgo
hallow prism
#

hmm, some error while trying to get the monster drops?

#

when i'll get the chance i'll try to make the value false and see if it works better

#

thanks, it gives me something to try

finite ginkgo
#

From a quick glance the only way it could give a null reference exception there is if somehow the location passed to CheckDrops is null, since who already has a fallback to Game1.player and Game1.random should have a value

hallow prism
#

the location in what sense?

lucid comet
#

that line is

var context = new ItemQueryContext(location, who, Game1.random);
Game1 is used before (see line 346 Game1.random.Next(0,3) )

so Nullpointer has to be either location or who

#

unless you need to provide more than Game1.random which is unlikely

finite ginkgo
#

Game1.random should be sufficient since it asks for an instance of Random, which Game1.random is, who can’t be null since we’re loaded into a save so if the tool’s last user is null, Game1.player definitely isn’t, location is the only one left, it could be that __instance.Location is null in the postfix that calles CheckDrops, but im away from the computer right now and can’t check when it’d have a value

lucid comet
#

been a while since i worked with c#, what does the ?? here do again?:

var who = t?.getLastFarmerToUse() ?? Game1.player;

#

( since that is where who is from and that is not used before )

finite ginkgo
#

Can’t word right now but it has to do with nullability (if left is null use the right one)

blissful panther
#

It's like a shortened null check ternary!

#

...more or less.

lucid comet
#

yeah, i assumed as much

#

so that def shouldnt be null then, i guess

hallow prism
#

tried changing to
"ExcludeOriginalDrops": true,
but the error still happens

blissful berry
#

if an NPC is showing their internal name during dialogue and not what i set as their display name..... where should i be looking to find the problemSDVpuffertbh

hallow prism
#

thanks for looking! i appreciate it

blissful berry
hallow prism
blissful berry
#

both! currently she has placeholder dialogue, but i've given her a dispo entry + a temporary schedule

hallow prism
#

can you show the json of her disposition?

#

oh

blissful berry
#

everything loads and works just fine, it's just that her name isn't displaying correctly. and since i can't find any problem in her dispo, i don't know where else to look

hallow prism
#

missed the link

#

{{i18n:name.Luffy}} what is the translation here?

blissful berry
#

line in the file is "name.Luffy": "Luffy"

#

and for Nami its "name.Nami": "Nami",

hallow prism
#

ok

finite ginkgo
#

(Unrelated to the display name but what is {{Luffy}} and {{Nami}}? Are they dynamic tokens?)

hallow prism
#

i am not sure why you have the npc entry key being a token, i assume it's a sort of shortcut. I also don't think it's wise to have two entries for the npc, better to edit fields rather than the entire entry

#

what is the dialogue causing issue and is the display wrong the npc name under portrait or something else?

#

ideally a screenshot would be good

blissful berry
#

so rather than typing out "OPV_[name]" for every character i was told its more readable to go with {{name}}. and ive found it actually helps me out a lot so i stuck with it

blissful berry
#

but for Luffy it works completely fine

finite ginkgo
#

“DisplayName:”: <- remove the : inside the quotes

hallow prism
#

good catch

#

those are the worse 😄

#

that and "quote'' stuff and similar things

finite ginkgo
#

Yeah only caught it after it was mentioned it was working for Luffy since that was the only one I was looking at at first :p

blissful berry
#

its always the smallest things 😭 works just fine now

#

youre my hero.... thank you for catching that!!!!SDVpuffermusic SDVemoteheart

#

and thank you Lumina for taking a look :]

finite ginkgo
#

We always need a 2nd eye now and then, when looking at something for long enough we tend to miss the small stuff because we already assume we’ve done it right, so a 2nd pair of eyes can carch it easily

blissful berry
#

right!!! its 4:30am for me right now so i knew i had to be making some silly mistake :p but if i didn't figure it out before going to bed it was gonna drive me crazy lololol

hallow prism
#

yeah we accustome ourselve to stuff and it means making spotting stuff even harder

lucid comet
#

(sidenote: while looking through your nullpointer issue, could you try adding some extradrops (like one coal with low chance) instead of null ? have to take another look at how you have to format that, but shold be similar to ExtraItems further up in your json)

hallow prism
#

oh, extra drops is not a true/false, it's a list!

#

this is why the default is null...

lucid comet
#

yes

hallow prism
#

i will try that, i assume the link has an example of formatting i could borrow

#

when i'll be back at computer 🙂

lucid comet
#

[...] "ExcludeOriginalDrops": false, "ExtraDrops": [ { "ItemId": "(O)390", "Chance": 1.0, //100% "MinStack": 1, "MaxStack": 2 } ], "Distance": "0,0" [...]

#

there we go

#

something like that for more stones everywhere

vernal crest
#

@brave fable Your 1.6.8 version works for me now! But I have no idea how to succeed lol

whole raptor
#

And hours after I post that I get a first report about it, world works in mysterious ways SDVpuffersquee

hallow prism
#

but i believe the monsters are spawning at fixed coordinate rather than around the player which may defeat the purpose of the feature, will try again with changing values to see if it is 0 0 that is a bit special

lucid comet
#

probably

#

glad that it works now

hallow prism
#

thanks yeah me too

#

it confirms the old saying (not old at all) "null, c'est nul" ("null is lame")

#

(invented by me after some frustrating issues on "null" on some building fields during 1.6 alpha)

lucid comet
#

at least there is a starting point with nullpointers, not just the compiler refusing to do things as expected ^^

hallow prism
#

well, for personal use i can deal with stuff being in the void for now, and i reported the issue so misty is aware, but i know how real life stuff is + 1.6.9 may require a few fixes too, so we'll see

ashen goblet
#

Hello! I am finally done with all my events n' all! Mod is almost complete, now only the little parts that I need to adjust.

#

The schedule strings is something I dont understand; where should this code be going exactly?

tiny zealot
#

like any other content patcher patch, it can go in any file you like; it is up to you how to organize your mod folder (with Includes to pull in other files besides content.json)

ashen goblet
#

I already have
"Target": "Characters/Dialogue/F1F4Gift, Characters/schedules/F1F4Gift, Strings/schedules/F1F4Gift",

#

If I were to make a quick file; would it work if I just throw that code in there n' all? Adjust it to my mod

tiny zealot
#

likewise, schedule dialogue strings don't have to go in any particular asset; you get to specify where to load them from, so you don't have to use Strings/schedules/yournpc (i use my NPC's normal dialogue asset). but make sure you Load your asset first with a blank json so that EditData can see it

ashen goblet
#

Is it okay if you give me some references? (whether if from your own mod, or elsewhere)

tiny zealot
ashen goblet
#

Hmm

#

I'm afraid I'm not quite following what you mean; I have a hard time comprehending all this coding stuff in a tired state aha

#

I'll look into it more though, for sure!

tiny zealot
#

it can be hard to look at other mods sometimes; everybody sets theirs up the way that works best for them, so if the structure is different than you expect it can be confusing

#

(i'm also using i18n, which is another level of indirection beyond just putting the raw text in the edit patches)

ashen goblet
#

Well here.. for starters; I have this set up.

tiny zealot
#

ok, so you have a blank loaded to Strings/schedules/F1F4Gift, that's good

#

then you'll want to have (in another patch)

"Target": "Strings/schedules/F1F4Gift",
"Action": "EditData",
"Entries": {
  "entry1": "your text here",
  "entry2": "your text here",
  etc...
}```
ashen goblet
#

In the blank json, or in a new json?

tiny zealot
#

leave the blank json alone. it should contain {} and nothing else

ashen goblet
#

Got you.

#

So a new file, in that case?

tiny zealot
#

a new patch. it can be in your content.json like the others, or in another .json (with patches in it) that you are including

#

this patch will actually put text into the asset. EditData won't work unless the asset exists, which is why you have to blank load it first

#

(you can just load it directly with the text in it, but in that case you can't use content patcher's tokens, like i18n, which is why the standard approach is to load and edit separately)

hard fern
#

😔 is it alright if i ask a few questions regarding a similar topic? im not sure how all these loading blank jsons work

tiny zealot
#

yes, you can always just ask

hard fern
#

do you not just load the dialogue anymore? is having a blank json necessary to then edit it with the dialogue?

vernal crest
#

Loading a blank is necessary only if you intend to use tokens

tiny zealot
#

tokens are really useful, so that's why the conventional approach is to load/edit

vernal crest
#

Content Patcher can't convert tokens into the necessary text when you "Load" them because it doesn't edit the files, it just passes them straight to the game.

ashen goblet
hard fern
#

how do tokens work? im not that familiar with them...

rancid temple
#

They are replaced by CP with their appropriate values before being processed into the pipeline

#

They're basically just placeholders for other values

vernal crest
#

If you use the {{Season}} token, for example, Content Patcher will look at the current save file, go "it's summer!" and then replace the {{Season}} with summer

rancid temple
#

In order to use i18n translations, you need to be able to use tokens

#

So if you just straight load dialogue, you can't do i18n translations for that dialogue

hard fern
#

ah

#

and does it also save the need from loading
spring_map, summer_map, etc and can just load {{season}}_map?

ashen goblet
#

Nevermind!

#

I got the formatting, I think?

tiny zealot
#

i18n, current game state variables, randomization... lots of stuff available that you can't use if you just Load

rancid temple
#

So when doing a Load Action, your FromFile and Target can use tokens, but anything inside your FromFile can't

hard fern
#

oh

rancid temple
#

So if your FromFile is something like {{season}}_map.png, that's fine

#

But if your FromFile is a json and you have a token inside it, that token won't work

hard fern
#

SDVpuffersweats i feel like i never seen this stuff till now

rancid temple
#

I think it's fairly new?

#

Though I'm not sure, since I only arrived after 1.6

velvet narwhal
#

'compatible with other languages' page got created in 2021 SDVpufferthinkblob

calm nebula
#

It's not fairly new

vernal crest
#

CP tokens guide created in 2020

calm nebula
#

I've never known CP to be without tokens lol

rancid temple
#

Oh lol

velvet narwhal
#

i think the only 'new' token is {{ModId}} right?

calm nebula
#

Yeah

#

The new recent one

rancid temple
#

ModId is my favorite

vernal crest
#

It's handy because when I switch between mods I can't remember my own mod ID

calm nebula
#

Now if only patch reload would read my mind

velvet narwhal
#

100% not useful when i'm doing funny easter eggs between my own mods

rancid temple
#

patch reload all when

calm nebula
#

"Is the mod atravita.CP.TestBoots or atravita.TestBoots.CP or atravita.TestBoots"

#

Nah, console autocomplete

rancid temple
#

or fuzzy reload patch reload rokugin just reload all my CP mods, fuck it

tiny zealot
calm nebula
#

Or something like the git "you ducker you obviously meant git status not git satus"

calm nebula
#

A Pathos PR may be right for you

velvet narwhal
#

tokens get grabbed fairly early in the pipeline though?

tiny zealot
#

a pathos pravoloxinone

velvet narwhal
#

that's it, Game1.currentLightSources = new(); wiggles fingers at you

rancid temple
#

Is this "shorthand" for sending someone to the shadow realm now?

velvet narwhal
#

not really shorthand, but it causes a shockwave of triggers

hard fern
#

SDVpuffersweats i got sidetracked

#

i was supposed to be writing dialogue...

velvet narwhal
#

i'm avoiding dialogue and maybe the others will forget about how i was doing a choose-your-own-adventure expansion

rancid temple
#

Every choice is yeti room, done

hard fern
#

i ended up working on portraits instead... even though "when in doubt" solution is to just use abigail

#

dialogue is more important SDVpufferchickcry

rancid temple
#

SpaceCore virtual currencies is optional but I'm wondering if I should just make SpaceCore required for this mod, cut off any of that silliness

velvet narwhal
#

the currency is like, gold vs tokens right?

rancid temple
#

Virtual currences is kind of like how walnuts work, it's an item that's just converted to a number in the UI

#

So you make some, ideally new, item into a currency and any time you pick it up, it's consumed to increase that currency

velvet narwhal
#

SDVpufferthinkblob if you have both implemented yeah i'd just make spacecore a requirement

rancid temple
#

Well, I would just have to qualify like one line with an if SpaceCore isn't installed and then it would be fine either way

#

Default behavior is to use gold, virtual currencies has to be set

#

Mod doesn't add any itself, just checks for them existing and having enough before charging them

velvet narwhal
#

i'm trying to think of the implicit problems if spacecore isn't installed and someone's trying to use the virtual currency, i assume it's just going to give a soft warning?

vernal crest
#

Explosions

rancid temple
#

It would just switch back to gold

vernal crest
#

Many

rancid temple
#

If I didn't qualify the usage of it, then explosions yes

lucid iron
#

is the unlockable bundles currency impl same way

rancid temple
#

I wasn't aware it had currency lol

lucid iron
#

explosions if ppl attempt to use currency without mod

#

yea it does, i use it for vapius coins

#

but it works a lil different (the currency counter goes in the powers tab)

rancid temple
#

Lol, SpaceCore's currencies are in the Skills tab

#

Just need a few more mods patching different menus and we can have custom currencies in every window

lucid iron
#

currency on the exit menu!

hard fern
#

if i were to make a config option for the player's supposed age that changes the dialogue (for gameplay immersion) ....how exactly would i do that..? do i need different dialogue files?

lucid iron
#

er does the farmer have a canon age think

velvet narwhal
#

you're doing like, young, middle, old, right? not like a based number?

hard fern
#

yeah

whole raptor
lucid iron
#

if it's all your dialog you can just use the token i think

velvet narwhal
#

you can just use the {{token}} in dialogue whenever refering to the age

lucid iron
#

but hm i18n

#

maybe its gotta be like, a dynamic token thats i18n'd

whole raptor
#

you can insert tokens into i18n with no problem

hard fern
#

what i wanted to do was have a character speak to the player differently depending on age

lucid iron
#

no i mean how do u translate this particular value

velvet narwhal
#

you kinda have to think of it in terms of dialogue

lucid iron
#

to say smth else in a different language

velvet narwhal
#

oh you just take the config

calm nebula
#

I don't mean my virtual game currency

drowsy pewter
#

i18n tokens like {{i18n:Spring15_{{PlayerAge}}}}

This can refer to three different i18n lines called Spring15_young, Spring15_adult, Spring15_old, etc

calm nebula
#

I mean thr currency you must pay me with

drowsy pewter
#

Each of the three sentences will be separately translated

velvet narwhal
#

i'm lazy and i'd just use it as a word

rancid temple
#

Hello there young adult man, how are you today?

calm nebula
#

I would do that if there are only a few lines like that

drowsy pewter
calm nebula
#

For big shifts, like how Pam Tries works, I load in a separate dialogue file

velvet narwhal
#

"GreenRain_1": "I hone my skills in the rain.$2#$e#I may be half a {{gender}}, but that won't stop me from doing what I do best.$14",

      "Name": "gender",
      "When": { "Marlon's Gender": "Male" },
      "Value": "{{Lowercase: man}}"
    },
    {
      "Name": "gender",
      "When": { "Marlon's Gender": "Female" },
      "Value": "{{Lowercase: lady}}"
    }```
#

i think of the dialogue before creating the token though so that's just on me

hard fern
#

what im stuck on is how id even get it to load in in the first place.. im looking at the npc template and am confused X.X so you edit data the dialogue..

velvet narwhal
#

you load all of the blanks first

#

then you can edit to your heart's content

hard fern
#

but what im thinking to do, is completely different lines for different player ages

velvet narwhal
#

6480's example works just fine

rancid temple
#

I would use 6480's solution for that

tiny zealot
#

once again thinking i have got to write up the "difference between files and assets" tutorial

rancid temple
#

Good luck lmao

lucid iron
#

how do u explain this when some ppl dont even know what a file is

calm nebula
#

(For the newbies, aka anyone who showed up in the last two years, Pam Tries works by having basically three separate versions of all data.)

tiny zealot
#

you don't. knowing about files on your computer is table stakes for making mods

calm nebula
#

One for good mood, onr for neutral mood. One for bad mood

velvet narwhal
#

oh ichor wasn't here for it SMCKekLmaoDog

calm nebula
#

It's entirely swapped out based on a random

rancid temple
#

There are definitely people making mods who don't know that though lmao

vernal crest
#

How playable is Pam Tries, atra? I love a good Pam mod.

calm nebula
#

Uh it's dependent on AtraCore which doesn't work in 1.6.9 👍

hard fern
#

SDVpuffersweats it's been a long time since i tried to write npc dialogue

vernal crest
#

So I've got just over a week to play it?

calm nebula
#

I probably had a valid 1.6.8 build but then 1.6.9 happened

#

Wellll I also don't have a valid 1.6.8 build anymore SDVpufferthumbsup

vernal crest
#

Ah ha okay

#

I'll just pine then SDVpufferpleading

lucid iron
#

did it have a C# component

vernal crest
#

I can't believe I am writing dialogue without any randomisation at all

#

Who even am I

rancid temple
#

What a journey you've taken lol

whole raptor
#

Speaking of weird "file management", I saw More Quest structure yesterday... and it scared me SDVpufferfear

tiny zealot
velvet narwhal
#

i beg people to not use my expansion as an example of 'how to make a mod'

#

it's uh, a mess in there

hard fern
#

X.X i think i was overthinking the dialogue way too much haha

vernal crest
#

Easier than you thought?

hard fern
#

yep

velvet narwhal
#

🫵you too can create a very lazy npc from scratch if you replace all of the necessary dialogue keys with incoherent clicks

hallow prism
#

the main reason i use it in VMV is that i have features that encourage people to come on specific days and so it naturally creates higher chance of repetition

#

so it's a question of personal frustration most of the time 😄

tiny zealot
#

i just added some randomized dialogue entries to Lacey and she's been published for a whole dang year

velvet narwhal
#

Someone wants a cryptid expansion from the comments on mothman

vernal crest
#

You don't understand, Lumi. Someone might see the same dialogue twice!!!!!

#

(They definitely will - I am only writing 8 lines total for this mod haha)

#

As soon as NPCs start repeating themselves, I stop talking to them.

lucid iron
#

What are files and assets

  • Files: The actual files users will be downloading when they install your mod.

  • Asset: Files that have been loaded into the content pipeline at a certain target. Once loaded, one or more mods can make further edits to the asset. Vanilla content is always loaded.

  • Target: The name that game tries to find data from, set when the asset is loaded.

#

i have no idea if this makes any sense to person not already familiar

hallow prism
drowsy pewter
#

"loaded" "content pipeline" "target" thats a lot of terminology

hallow prism
#

or maybe you'll be fine

rancid temple
#

Also, calling an asset a file that's loaded into the content pipeline still makes it seem like a file

#

Like, it kind of is, but it's also not

calm nebula
#

No one really knows what a file is

lucid iron
#

yea that the trouble with letting compsci dumbass write these things LilyDerp

calm nebula
#

If you think you do you dont

lucid iron
#

i think files r inodes

tiny zealot
#

files are fraught with peril

lucid iron
#

dont talk to me about other file systems

tiny zealot
calm nebula
rancid temple
#

I don't know if there's a concise way to describe the differences because it requires an amount of context that you can't give someone with no experience

tiny zealot
rancid temple
#

Yeah, it basically just needs to be a reading assignment SDVkrobusgiggle

vernal crest
#

/googles inodes - then (unsuccessfully) googles how other people describe their actions in discord/

rancid temple
#

italics (sometimes)

#

I also like italics for emphasis when I'm being catty

velvet narwhal
#

in dialogue i use * to indicate action

hallow prism
#

in game?

velvet narwhal
#

yeah in game

hallow prism
#

there is the % command

#

that makes the portrait disappears

#

so i use it to stuff like
%npc is looking at his shoes

velvet narwhal
#

depends on context, if it's an interjection- I COULD'VE MADE MOTHMAN ALL TEXTABOVEHEAD

rancid temple
#

That's great, I was just thinking a blank dialogue box would be perfect for that

velvet narwhal
#

that is a later problem for when i feel like dealing with spacecore vs sprites in detail

hallow prism
#

text above head wouldn't work outside of event without C#, is spacecore allowing content packs to do that?

vernal crest
#

I said in discord, Avi!!

velvet narwhal
#

handwaves *handwaves*

vernal crest
#

I use asterisks in game to denote action as well

#

But I can't use italics, Roku. Italics already have a meaning.

rancid temple
#

Do they?

velvet narwhal
#

sometimes when i'm feeling extra catty i use the >

like this

#

are you in a roleplaying discord or something SDVpufferthinkblob

vernal crest
#

Yes, emphasis

tiny zealot
#

one specific meaning (but not the only one) of italics in english print is indicating loan words, like:
"this dish has a certain je ne sais quois"

vernal crest
#

Me? No. I just have very strict rules about language lol

lucid iron
#

spoiler your actions so you can perform them sneakily

rancid temple
#

Ah, yeah I tend to use it for emphasis more often, even though bold is probably the more appropriate emphasis. I just don't like making my text bigger lol

velvet narwhal
#

text bigger means i'm doing some kind of 'forum-style infopost'

vernal crest
#

(Sorry for the off-topic. It has been bugging me for months lol)

tiny zealot
#

i actually use both for emphasis. bold is more emphasis, so i use it rarely

hallow prism
tiny zealot
#

lumina, i regret to inform you that english's betrayal has arrived. we will not be repaying the loan

rancid temple
#

Surprise, it was theft all along

hallow prism
#

oh, ok, well we will not either!

#

joke on you, we probably borrow more english word daily than you

rancid temple
#

You're probably making better use of it than we are, to be fair

lucid iron
#

just dont be like japan

rancid temple
#

Japan is really making the best of it lmao

velvet narwhal
#

i love how 'random words in different languages' is a universal, like i'm contemplating a whole fashion sense pack of shirts that just says "hotdogs" but highly graphical

rancid temple
#

My name is two words from Japanese I liked the sound of when I was like 12 lmao

lucid iron
#

spoilered for strong language

velvet narwhal
#

is that a t-shirt

tardy adder
finite ginkgo
#

||”World is a fuck”|| I agree

lucid iron
#

alas sdv shirts too small for the engrish aesthetic

tiny zealot
#

lmao 410 billion, huh

rancid temple
#

Lol, that feels like whoever made it understands English a little too well

velvet narwhal
#

true, i could definitely make it furniture paintings though

tiny zealot
rancid temple
#

I need my documentation to write itself

velvet narwhal
#

the one time where we want to outsource to ai

rancid temple
#

The one thing where I bet it could come up with similar quality (because I'm so bad at this lmao)

lucid iron
#

can ai format my markdown tables for me

velvet narwhal
#

maybe? i honestly contemplated it cause doing git markdown manually was pissing me off

lucid iron
#

yea doomed

#

incidentally i want to get feedback about the trinket docs

velvet narwhal
#

(definitely not offering just so i can avoid reading framework.rectangle docs, nope not me SDVpuffersquint )

lucid iron
#

what docs do u want out of rectangle yggy

#

its just x y width height

velvet narwhal
#

How It Do

fallen oriole
#

@stark forge here you can ask all sort of questions if needed to get started

stark forge
#

owo

#

lf guides to modding or good game dev streamers to watch

rancid temple
#

!startmodding

ocean sailBOT
#

Making mods can be broadly divided into two categories:

Usually it’s easier to start with making content packs, since you don't need to learn programming.

rancid temple
#

Can't help with the second one

hallow prism
#

most guide will be written, video outdates quick

velvet narwhal
#

i don't think there's any coders that have enough time to stream SMCKekLmaoDog plenty of artists though

lucid iron
#

how do u stream game dev LilyDerp

stark forge
#

idk, you just do?

velvet narwhal
#

you watch someone type at like a 70-120wpm and hit the backspace for several hours i assume

rancid temple
#

With music and a lot of viewer interaction lmao

lucid iron
#

its just gonna be a person making 2 line changes then waiting for game to reload in silence

hard fern
#

SDVpuffersweats stream game dev?

vernal crest
#

East Scarpians stream drawing a fair bit but I don't know of any coding streaming lol

hard fern
#

so someone wants to watch me forget a } and break my mod for an hour

rancid temple
#

I'm honestly surprised when code people make youtube videos even

hallow prism
rain basalt
stark forge
#

and tell you?

lucid iron
#

anyways do you have a mod in mind

velvet narwhal
#

actual coding stream: 1 hour of staring at visual studio with bgm

lucid iron
#

so we can point you at right tools

rancid temple
#

Depends if anyone watching is knowledgeable

rain basalt
#

Reason I use visual studio code since it makes it easier to find the breaks

stark forge
#

no, I just do like api coding and scripting and know nothing about game dev and wanted to learn

hard fern
#

i forgot vs code was an option

rancid temple
#

VSC is life

lucid iron
#

you will want to look at C# modding then

rain basalt
#

It is life lol

lucid iron
#

in the command earlier

thorn sorrel
#

Needing some more help. Trying to get the keg to spit out the custom item, but it keeps spitting out generic wine instead:

hallow prism
#

prioriryt yes exactly

#

which is done by moveentry which is explained somewhere on CP docs

rain basalt
#

SDVpufferwow hi lumina I’m back

hallow prism
#

hi

velvet narwhal
#

if you want to replace it entirely i had an example earlier

thorn sorrel
#

Ok, I'll look into that

velvet narwhal
#

can't tell you if it worked though, my internet went out immediately after SDVpufferclueless

hallow prism
#

hmm

brittle pasture
#

(but you don't want replacing in this case)

hallow prism
#

but deleting vanilla entry may have compat issue

hallow prism
#

like players can't make juice for raccoon quest?

rancid temple
#

Machine outputs just need Precedence

hallow prism
#

like precedence field, or move entry precedence?

brittle pasture
rancid temple
#

Precedence field, I really like the concept of it

#

Though I'm sure it requires a lot of rewriting of the logic

hallow prism
hallow prism
#

yes ok but it's what i said too

brittle pasture
#

they're trying to add new rules for their modded items

hallow prism
#

yes i know

#

i was saying that i don't get the point of replacing the entry instead of adding

brittle pasture
#

ah okay so we agree haha

vernal crest
velvet narwhal
#

i assume you can just throw the precedence into the entries and you'd be solid

#

DDR bagel

rancid temple
#

(sitting on the sidelines watching two people aggressively agree with each other) SDVkrobusgiggle

hallow prism
#

(hence trying to understand the suggestion made by A-Sauroen better)

thorn sorrel
rancid temple
vernal crest
#

Avi making chaotic suggestions as always SDVkrobusgiggle

velvet narwhal
#

(i didn't read initially tbh, but if you're gonna use my example you remove the "(O)306" so that you can dig deeper into the fields)

#

i am, The Chaos Creator ™️

hard fern
#

SDVpuffersweats i had to fix 20 things

rancid temple
velvet narwhal
#

ah then only the moveentries

rancid temple
#

Yeah in this case it's not in the machine outputs, so it would have to be MoveEntries

#

The bigger the list or the more mods making use of precedence, the more annoying it would be though

vernal crest
#

Whoops forgot to pass my token through i18n

rain basalt
#

I’m still trying to figure out i18n 😂

velvet narwhal
#

someday i'll have mods that touch every single part of data

rancid temple
#

Scary

brittle pasture
rancid temple
#

Right, love an easy solution lol

rancid temple
lucid iron
#

is there data that is free from the tendrils of SVE

rain basalt
#

Don’t have my pc but basicly trying to get Configure.”name”.section to change

lucid iron
#

i guess it hasnt added pants yet

velvet narwhal
#

probably clothes, yeah

lucid iron
#

u need to do reload_i18n in addition to patch reload iirc, if you are testing in game

rain basalt
#

I can get name and description just fine but not the section title to change

velvet narwhal
#

SDVpufferthinkblob

  "config.section.Content.description": "Alters the content active in the mod. Please make sure these are configured properly!",``` ? you mean how it's separated? i've honestly never tried to look and see in game
rain basalt
#

Funny part is I accidentally loaded my test file with my last update if you wana take a look at the mod

rancid temple
whole raptor
rancid temple
#

I learned in the last couple years that there's a Roku Gin (the alcohol), but it's been around for way longer than I've been using my name lmao

rain basalt
vernal crest
#

When I saw the alcohol I was like "I wonder if I should be pronouncing their name differently" but I like how I pronounce your name

whole raptor
#

Oh yeah, it's a pretty neat gin, drank it once when I worked at a bar

rancid temple
#

As a diabetic, I will have to take others word for it :P

#

(I didn't like alcohol before, so no loss lmao)

lucid iron
#

did you intend for roku to mean six

rancid temple
#

It's my favorite number in Japanese, but my name is pure gibberish

whole raptor
#

Now that I think about... it'd be nice to have an alcohol aficionado NPC SDVpufferthink (not in a Shane way ofc)

hard fern
#

like a wine taster?

whole raptor
rancid temple
#

I dunno if he can be considered an aficionado lmao

hard fern
#

i couldve sworn there was some fancy french word

whole raptor
lucid iron
#

sve olivia the wine mom

#

who gives me unlabeled wine medlook

rain basalt
#

Hmm 🤔 make it an unlock if you put all high grade wine in the box for the event

hallow prism
#

woot, i made progress! rest time

whole raptor
#

Well... Pam does ask for vodka in one vanilla quest SDVpuffersquee

rancid temple
hard fern
#

yes!

#

😭

whole raptor
#

Sommelier is only for wine tho... right? SDVpufferthink

rancid temple
#

Maybe an actual bartender from out of town?

hallow prism
#

french word? i was summoned?

vernal crest
#

Poop, the $1 dialogue command breaks my plans.

rain basalt
#

aficionado would be better for all types

whole raptor
#

Emily as a bartender hurts my soul a bit, don't know why 😅

vernal crest
#

How do I do an intro dialogue line for an NPC who won't be met until after the intro CT has expired?

rancid temple
#

She's more of a general server than a bartender

vernal crest
#

Brain too tired to think

hallow prism
#

(but indeed sommelier is mostly for wine at least in people mind)

hallow prism
whole raptor
hallow prism
#

VMV has its own intro dialogue for having seen the VMV intro event

vernal crest
#

No, no event.

#

I am sparing myself that horror lol

hallow prism
#

then it's tricky!

#

why players may not meet them in time for intro CT?

#

(reworded)

vernal crest
#

I was using $1 <letter ID>#<1st-time text> #$e# <nth-time text> but it appears to break other dialogue commands.

rancid temple
#

Only give them a single dialogue line that sets a mail flag, have a separate patch with all their other dialogue that checks for that mail flag

vernal crest
#

Because he is a slightly secret NPC who can be stumbled upon at any time, but a person won't necessarily do that quickly. (Warp in the graveyard)

hallow prism
#

ah classic, i wanted to do something and forgot what, of course

vernal crest
#

Ahh good idea roku

vernal crest
# hallow prism (break in what sense?)

(Adding a line break only showed the dialogue after the line break, and using % didn't turn the dialogue box into a descriptive one with no portrait - it just included the % symbol at the beginning of his dialogue)

hallow prism
velvet narwhal
vernal crest
#

I will see how I go with the mail flag set by the initial dialogue

velvet narwhal
#

(i would've suggested something dumb like, if you made a new map -> locationchanged trigger -> BETAS set new dialogue SMCKekLmaoDog )

hallow prism
rain basalt
#

You can just insert the map data as well

lucid iron
#

yea im not sure what words to use to indicate that u need a {} or a []

rain basalt
#

Had to do that for my greenhouse mod since is greenhouse T isn’t on by default

velvet narwhal
rancid temple
#

It's not a dictionary though

#

That's a list or an array

#

When you have something like Data/Objects that's a dictionary of string -> models, the whole thing is encapsulated by {}

#

Technically I don't think it matters how you format the data in the json, it's how you use that data

lucid iron
#

well it matters to me cus

#

i have to communicate what kinda data i am expecting

rancid temple
#

You can build a dictionary out of any data in that json, as long as you're collecting and using it correctly

rain basalt
#

I still say missing a “ } , is the bane of my existence and I’ve wasted hours looking for them gotta love did not load “mod name” not a valid json from smapi

brittle pasture
rancid temple
#

I think there's a certain level of knowledge you have to assume and the rest you can make up with context

velvet narwhal
#

who engrained [] being a dict into me, i have no idea

lucid iron
#

C#

rancid temple
#

Even if someone doesn't know necessarily what a list or dictionary is, if you can supply enough context they'll at least know how to fill and use them

lucid iron
#

yea i am hoping the links to detail pages about the submodels r enough

rancid temple
#

Examples are probably the biggest help in creating at least a pseudo understanding of usage

velvet narwhal
#

i'm trying to think of an on-brand trinket for my expansion but the only thing i can think of is a super effective floating baseball bat

whole raptor
vernal crest
#

I have somehow turned my entire dialogue line into a flag by mistake SDVpufferthink

rancid temple
#

Errant bracket?

hard fern
#

SDVpuffersweats when in doubt i can just make my npc spawn somewhere random like the bus stop right

rancid temple
#

If you neglect to fill out a home, it should spawn in town

vernal crest
#

Who knows? I do not.

#

Yup you can spawn them at the bus stop. I spawn them in town

rain basalt
#

To be honest my first days making mods was downloading things similar to what I wanted to do and manipulating the data to see how it worked

velvet narwhal
#

as long as you set the homelocation(?) to town, yes

hard fern
#

X.X i dont want to think about making a custom house and map or anything

rancid temple
#

De/re-construction is my primary method of learning most things lol

velvet narwhal
#

you don't have to create a house, tbh

rancid temple
#

You can absolutely make them go stand in a field

vernal crest
#

Have them spawn at the bus stop and pretend they live somewhere else

#

Like Claire and Martin in SVE

rain basalt
#

When 1.6 dropped since no one had done buildings yet took me 3 days to figure out what the different fields did “reminds me need to update cellars mod”

rancid temple
#

I had a test NPC that spawned by the bridge on the beach and just paced back and forth all day until the bridge was fixed lmao

hard fern
#

😭

rain basalt
rancid temple
#

Boarding House?

whole raptor
#

I think it's updated... but pretty empty as always

vernal crest
#

I am too tired to troubleshoot SDVpufferwaaah

lucid iron
#

then sleep

velvet narwhal
#

yeah sleep

rain basalt
#

☕️

vernal crest
#

Boarding House is hidden on Nexus, not sure if it's available somewhere else

#

Oh you sweet summer children. "Sleep". Ha.

velvet narwhal
#

i'm on that old man sleep schedule now, i fall asleep at 9pm

#

wake up at 5am

rancid temple
#

Over here with the reverse office hours

rain basalt
#

Hmm 🤔 thinking of adding a creators pack for my mod where artist can just add there art and publish

lucid iron
#

like a content pack?

whole raptor
rain basalt
#

Well I did mini greenhouses but to add art to it you would need to have dependancies and insert some block code to the current loaded mod to add options sooo if I do all they programming and add comments and a readme they can just dump there art into assets change the name for load and upload to nexus

vernal crest
#

I had a daytime sleeping schedule for a bit. Did not like it. It's only 1:30am right now so I am safe for a bit longer.

lucid iron
#

people can just load their textures over your textures

rain basalt
#

Well yes lol

#

But I like the thought of having different types of same building for different parts of my farm

lucid iron
#

ah you want building skins then bolbthinking

#

see pet bowl

velvet narwhal
#

ig you're gonna make that cp skin mod huh

lucid iron
#

but you dont really have to do anything for that either

#

ppl can edit in their skins too

#

u can make template for ppl to use ofc, maybe even put it on the .gg modding wiki

rain basalt
#

Just added minis

rancid temple
#

Smol

rain basalt
#

3x3 base

rancid temple
#

Why did I try to click the arrows

rain basalt
#

SDVpufferheart cause you wanted to see more

vernal crest
#

Someone suggest a good name for a toad

latent mauve
#

(I almost did until I saw rokugin's text)

rain basalt
#

Sir Toadsley

lucid iron
#

edgar

latent mauve
#

Algernon

rain basalt
#

Malfoy

whole raptor
#

Toda

velvet narwhal
#

Toadington

rancid temple
#

I love pets named after food so: Baguette

woeful lintel
#

is the SMAPI helper.ReadConfig<ModConfig>() capable of handling the deserialisation of a whole Dictionary<string, string> ?

vernal crest
#

.choose Sir Toadsley, Edgar, Algernon, Toda, Toadington, Baguette

patent lanceBOT
#

Choose result: Algernon

lucid iron
#

isnt that what it generally does think

vernal crest
#

Algernon it is!

#

Thank you all for playing

#

You may take a free toad on your way out SDVpetfrog

lucid iron
#
using Newtonsoft.Json;

namespace TrinketTinker.Models.Mixin
{
    public abstract class IHaveArgs
    {
        /// <summary>Arbiturary arguments in form of a dict.</summary>
        public Dictionary<string, string>? Args { get; set; }
        /// <summary>Tries to parse <see cref="Args"/> to target model of type <see cref="IArgs"/></summary>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        internal T? ParseArgs<T>() where T : IArgs
        {
            if (Args == null)
                return default;
            return JsonConvert.DeserializeObject<T>(JsonConvert.SerializeObject(Args));
        }
    }
}
hallow prism
#

sorry

#

algernon is for a rat

#

or at least a rodent

lucid iron
#

i had this to allow different models for Args depending on the class

rain basalt
#

lol reminds me of my froggie mailboxes I did for riot

latent mauve
#

I know people who have used it for toads, names are flexible like that 😉

hallow prism
#

nooo

vernal crest
#

He can be a toad who used to be a mouse

hallow prism
#

ok

#

then i accept it

#

me, the giver of name

vernal crest
#

I'll put that in just for you, Lumi

lucid iron
#

main limitation is that u cannot have objects in Args, no {"X": 1, "Y": 2} basically

hallow prism
#

algernon!

latent mauve
#

My second suggestion was going to be Leggington the III, Esq.

#

But that's long xD

woeful lintel
# lucid iron i had this to allow different models for Args depending on the class

Is that about my question? I'm not trying to parse a custom model, just a Dictionary<string, string>, here's part of my ModConfig for reference:

public sealed class ModConfig
{
        public SButton slot_place_key {get; set;} = SButton.MouseRight;
        public SButton slot_take_key {get; set;} = SButton.MouseRight;

        public bool load_packs_on_start {get; set;} = false;

        public Dictionary<string, string> conflicts_choices = new();
}
lucid iron
#

yea this should be fine too, dont need any additional shenanigans Bolb

woeful lintel
#

nice

vernal crest
woeful lintel
#

I'm planning on adding a config option to let user choose what pack should have the priority when multiple packs are trying to edit/create the same Furniture

fathom quarry
#

how can I make mods

rancid temple
#

!startmodding

ocean sailBOT
#

Making mods can be broadly divided into two categories:

Usually it’s easier to start with making content packs, since you don't need to learn programming.

rancid temple
#

If you're not familiar with C#, I suggest starting with Content Patcher

latent mauve
#

Unless you already know C#, Content Patcher mods tend to be a better starting-- what rokugin said

rancid temple
#

Honestly, I suggest starting there either way, it's much easier

rain basalt
hallow prism
fathom quarry
#

whats the easiest mod

#

to make

rain basalt
hallow prism
#

changing a portrait

vernal crest
#

Dialogue edit

#

No art needed, very small CP

rain basalt
#

True

latent mauve
#

Something using CP

hallow prism
#

dialogue edit is pretty easy too, just a bit more work to test while portrait is quicker to see

woeful lintel
#

I've been here looking at people doing dialogue edits for 6 months and it looks horrendous

vernal crest
#

With the power of debug loaddialogue, dialogue edits can be as easy as portraits to check!

fathom quarry
#

Thanks

latent mauve
#

If you want to do art, visual edits, if you want to do maps, map patch, if you want them to say something different, dialogue edit

woeful lintel
#

don't even get me started on event edit

hallow prism
vernal crest
hallow prism
#

it's definitively a good tool to have as early as possible

velvet narwhal
#

need that smapi commands as a command

latent mauve
#

My first mod was adding a bridge over a river! 🙂

woeful lintel
#

I would say general game data edit is easier but I'm biased because of being already at ease with json

latent mauve
#

Baby steps

vernal crest
#

Actually that'd probably make a good modding wiki page

rancid temple
#

What would smapi commands be?

rain basalt
#

Map edits are not easy lol “load map “ load tile sheets “ make change “ fix tile sheet issues “ save and pray

rancid temple
#

Because there are a shit ton of commands and the console commands page is pretty badly out of date for some of them lol

velvet narwhal
#

debugcommands maybe

woeful lintel
velvet narwhal
#

fair

vernal crest
#

(A page on useful mod-making debug commands)

latent mauve
#

Hard to make tilesheet issues if you stick to the vanilla base maps and the already included tiles.

#

And edit in the right place

velvet narwhal
tender bloom
#

I do think map edits have a lot of places they can go wrong

#

Dialogue has some syntax but if you want simple dialogue you can avoid most of it

rain basalt
tender bloom
#

Portraits are definitely easy if you are comfortable with pixel art

nimble marlin
#

hey guys, I was wondering if anyone knows if its possible to automatically place furniture on custom farmhouses after certain upgrade?

rancid temple
#

As someone who is neither an artist or writer, I'm having a hard time deciding what the easiest mod is to make lmao

latent mauve
#

Simplest mod without doing art is probably just changing a vanilla character's dialogue line to "Hello" tbh.

vernal crest
rancid temple
#

I believe the only farmhouse furniture you can change is the starting furniture

hard fern
#

imo the easiest is a reskin

rancid temple
#

The upgrading/furniture moving is hardcoded

velvet narwhal
#

iirc it's c# land if you want it to change furniture on upgrade (like how the 1.6.9 bed isn't upgrading)

hard fern
#

even if u know what you wanna write, writing is hard SDVpufferchickcry

vernal crest
latent mauve
#

I do have a lot of EditImage mod actions, those are easy if you can do the art

rain basalt
#

First mod my friend made was giving penny cuss words in all her dialogue had me laughing for days

latent mauve
#

Fair, aba. I devour wiki pages for brunch. (Breakfast is way too early to be awake)

tiny zealot
hard fern
#

speaking of maps.. 😔 i found an old one i made

velvet narwhal
hard fern
#

the mod that just makes penny spin?

#

i feel bad for my old map just sitting around and wanna use it for something at some point...

calm nebula
#

Pathos is fast

velvet narwhal
#

pathos our regional angel

rancid temple
#

Yeah it was fixed in the very next daily update lmao

latent mauve
#

This reminds me that I still need to tack another bedroom onto JoshHouse for my Zelda NPC mod

velvet narwhal
#

i assume you turned the cc into the deku tree? if not i'mma riot

latent mauve
#

George will get a bedroom he can sleep in at last, rather than sleeping in his chair! Even if he won't be George anymore...

#

If you mean the UI art, I can, but not the whole building, no. I made a custom location for the deku tree xD

#

Saria/reskinned Leah is gonna hang out there once you've unlocked the Secret Woods.

#

And maybe a few Koroks if I can get the junimo reskin to cooperate

rain basalt
#

Hmm 🤔 wonder if Nintendo would come after me if I made all of stardew into one giant Zelda map lol

velvet narwhal
#

if you get popular enough to have an article, probably

rancid temple
#

They're being pretty litigious right now

whole raptor
#

It's nintendo, of course they would SDVpuffersquint

latent mauve
#

I'm hoping my art will look distinct/different enough to not get me in trouble, but, yeah, that's a risk.

velvet narwhal
#

they took down rhythm heaven studio with a dmca SDVpuffersquint even on github

rain basalt
#

Yah SDVpufferwaaah have to not call it anything close to Zelda just make it similar lol real similar

velvet narwhal
#

Legally Distinct Green Elves ™️

whole raptor
#

Check if they don't have a patent for long ears in games SDVpuffersquee

rancid temple
#

Yeah, your bigger problem is going to be figuring out how to understand what the hell patents they have

rain basalt
#

They don’t not legally binding

latent mauve
#

It'd be a bummer to get a C&D or a takedown on this mod after working on it for close to a year, but if it happens, it becomes a personal mod instead and we all cry until I change it again to rename all the people.

rain basalt
#

If just have to change what the C&D is claiming

velvet narwhal
#

as long as there isn't any music, your art is your own, the names aren't relevant, you can probably argue it, but then that takes money and nintendo likes to sling it's power over indies

whole raptor
rain basalt
woeful lintel
#

If you don't make money from it, they'll probably leave you alone for some time

latent mauve
#

Yep, I am specifically drawing all my own art assets for this, to make it as clear as possible, and I won't be enabling DP

#

And I am avoiding the big three, so less likely to start a fight over their main character line

rain basalt
#

Problem is nexus posting it gives rewards

woeful lintel
#

it should be fine for a SV mod, as long as they're not planning a SV-Zelda crossover themselves

whole raptor
#

Wasn't there a pokemon mod for Palworld that got taken down by Nintendo? SDVpufferthink Not sure how much of "original assets" it used tho

latent mauve
#

I mean, if they decide to start one, I am open to being hired

#

Just saying

woeful lintel
velvet narwhal
#

they're not hylians, they're red greencaps

rain basalt
#

Hmm 🤔 I could call it hihills castle mod lol

latent mauve
rain basalt
#

Yah direct art theft or usage of there styles

whole raptor
#

I'm just a Nintendo hater (company, not most games) SDVpufferglare

fathom quarry
#

how do I code in content patcher

tiny zealot
#

sadly, past performance is no guarantee of future results. you could get a C&D for anything

rain basalt
#

Hmm 🤔 wonder how hard it would be to recreate the original dungions lol

velvet narwhal
#

it's probably not as bad as atlas with their withchunting

tiny zealot
#

and nintendo is famously litigious

rain basalt
#

!CP

ocean sailBOT
whole raptor
latent mauve
#

Style can be argued, but my shading and color palette is mimicking Stardew for a reason

steep blaze
#

referencing concepts to make the design fit the SD worldview is also a good idea

lucid iron
#

Gonna violate zeldo patents by adding a spin attack for the sword

hallow prism
#

we can have sword having projectile attack already

rain basalt
hallow prism
#

master sword!!!

whole raptor
vernal crest
tiny zealot
fathom quarry
#

i know

velvet narwhal
fathom quarry
#

im reading

steep blaze
#

I once created an attack style similar to Link's spin attack, but I never released it.

vernal crest
#

Just making sure :)

whole raptor
velvet narwhal
#

other ip-mod-making is a slippery slope though, which is kinda why i've been avoiding it

rain basalt
whole raptor
#

Yeah, Japan is infamously dated with stuff like that

latent mauve
#

It's good practice for everything involved in making an expansion mod while keeping in the vanilla base training wheels, if nothing else.

rain basalt
#

Also pal world is in Japan as well so Nintendo can easily push there lawsuits though

velvet narwhal
#

i definitely fight demons on wanting to make my own hsr penacony though i love dream delving bs

latent mauve
#

If I change names, remove references to the original IP, and tweak the art just a little, I can transform it into an original set very easily.

frigid hollow
#

the amount of times ive almost accidentally hit publish on a random message is now more than one

rain basalt
#

lol

lucid iron
#

How do u accidentally 2 layers of context menu

frigid hollow
#

look i'm really bad at scrolling. i accidentally my mouse buttons

lucid iron
#

Powerful

frigid hollow
#

all it takes is a left click, a slight diagonal movement of the mouse and a right click

whole raptor
#

I unironically think that dumb humor of HSR would fit quite nicely in SDV

rain basalt
#

Well gotta drive I’ll be back later gona read over those i18n guides you all posted earlier then smack my mod again and see if anything sticks

velvet narwhal
#

you gotta kick the mod in the right spot to get it working

#

much like blowing into the cartridge of an n64 game

rain basalt
#

lol only reason that worked is cause you rub the pins every time you take it in and out

#

Mine was original Nintendo /famicom

rancid temple
#

Just like blowing on the pins, kicking the mod also won't help

rain basalt
#

But it somehow just works

tiny zealot
rancid temple
#

The mod just wanted to see you suffer some more for it

lucid iron
#

Turning it off and on works though

whole raptor
#

We only had Pegasus (nintendo famicom rip off) in my country when I was growing up 😅

rain basalt
lucid iron
#

Especially if u have access violation exception

rancid temple
#

I also liked opening the PS1, taking out the disc, wiping it on something incredibly stupid, and putting it back in

tiny zealot
#

do other people not use "kick" to mean reboot? "hang on, let me kick the server", etc.

lucid iron
#

I've never heard of that

rain basalt
#

We always said give me a min gotta blow up the server

#

Or nuke

velvet narwhal
#

nuke is a common term in my household

rain basalt
#

Not working nuke it and try again

patent lanceBOT
#

@velvet narwhal: check how the calendar/social page mugshot is handled and see if I should do some harmony crimes with it (15h ago)

rain basalt
#

Sigh 😔 made one change and broke it all lol red text of doom found the problem added assets to wrong folder >..<

whole raptor
#

I'm honestly happy when I see a red wall of text... if I change something and it all works it's just... suspicious SDVpuffereyes

vernal crest
#

Or when there's no error but it doesn't work

rain basalt
#

SDVpufferwow 90% I don’t see red wall just works since I copy paste my working code 9% I forget to add the , between the copy pastes

tiny zealot
vernal crest
#

I like to run my game to find out what stupid thing I've missed in my json

whole raptor
#

What was the format for minimal version in dependencies..? SDVpufferthinkblob

velvet narwhal
#

uuuuuu

  {
    "UniqueID": "Pathoschild.ContentPatcher",
    "MinimumVersion": "1.22.0"
  }
]```
tiny zealot
#

so close to "1.23 for mysterious reasons". so close

velvet narwhal
#

mysterious reasons by beloved

rancid temple
whole raptor
#

I miss games on discs...

#

on another thought, not really

velvet narwhal
#

that requires me to go out into the loft to play persona 5, i'm good with sitting in my chair

rancid temple
#

I have no real attachments to physical media, I figure if Steam goes down then there's probably bigger problems than I can't play my games anymore

brittle pasture
#

multidisc games that require you to put in a new disc halfway through my beloved

whole raptor
hallow prism
#

face A, face B

#

maybe side A side B in english? 😄

steep blaze
#

I couldn't finish FF9 at the time because of a scratched disc🥲

rain basalt
#

lol my first multi disc was .hack

#

If you wana go old school then it was the original 3.5 floppy disc Jurassic park had 6 disks took 8 megs of storage to load it

tiny zealot
whole raptor
#

I wonder if I'm the only one who still used floppy discs in 2008 SDVpuffereyes

rain basalt
#

lol I upgraded to Zip disks

whole raptor
#

I've never seen it in my life...

lucid comet
#

in 2008? i think i might've had some laying around, but didnt activly use them anymore

#

that was the good old time of rewriteable CDs for me iirc

velvet narwhal
#

upgrade 'save anywhere' except it's a computer furniture where the ui is floppy disks

rain basalt
steep blaze
#

I used a floppy disk to carry a Game Boy emulator.

vernal crest
lucid comet
#

(though once my first mp3 player broke, i dusted of my old cassette player ^^)

rancid temple
#

I feel like different sides of discs was more common in other media, I don't think I ever saw a game made that way

whole raptor
#

I think I owned one... but it was just some promo thing

rancid temple
#

That reminds me of those multi-demo discs Pizza Hut had for a while

tiny zealot
# rain basalt

"expand your hard drive without limits" when the limit is clearly 100MB is big "640K ought to be enough for anyone" energy

rancid temple
#

Well, you just buy another one :P

calm nebula
#

Me, I stockpile iodine

velvet narwhal
#

atra ready for nuclear

rancid temple
#

(doesn't iodine expire?)

rain basalt
brittle pasture
#

elemental iodine probably doesn't, but I don't think it's edible

whole raptor
#

I'm actually curious how much RAM my first PC had... I was too young to even know what ram was, but I could still break windows to my brother's dismay SDVkrobusgiggle

rain basalt
#

I used DOS then upgraded to windows 3.1

steep blaze
#

128KB can't even fit a single PNG🤣

rancid temple
#

SDVpufferowo It's nice to not feel old lmao

whole raptor
#

I... somehow didn't realize there were windows versions pre 95 SDVpuffereyes

lucid iron
#

imagine having less than 1gb ram

rancid temple
#

My first computer probably did, but that was before I started building my own so who knows lmao

#

It was also a piece of trash

rain basalt
#

lol png wasn’t invented yet we had bmp

#

(Bit Mapped Pixels

steep blaze
#

The era without alpha 🤣

iron ridge
tiny zealot
#

i love talking about old computers (the famicom had 2KB of work RAM, mercifully separate from VRAM) but we should probably take that to off-topic and get back to mods in here

rain basalt
#

True if you keep the pixels low

#

😉 anyone got mod questions?

lucid iron
#

mods amrite

velvet narwhal
#

wednesday? we got how many days til end of event? <t:1730419200:R> ? and there's only 5 in the modding contest? clicks tongue

lucid iron
#

im not submitting until last minute

vernal crest
#

What there's only 5 in the modding contest????

tiny zealot
#

i decided my mod idea was too ambitious to finish

#

and then i spent... more time than is advised on the giga mazes

velvet narwhal
#

this is why i didn't touch those giga mazes

lucid iron
#

well ichor

#

u can always be the person to make the endless tiling maze

steep blaze
velvet narwhal
#

shells myself out well for 5 doller pixel-

steep blaze
#

I want to know where there is a modding contest.

tiny zealot
#

i guess if anyone needs C# shenanigans for their mod contest entry, i'm available to collaborate

lucid iron
#

its part of the halloween event

velvet narwhal
#

iirc anaira was looking for a c# partner but idk if one was found or not

#

just string.join spooky words to the end of all dialogues, done

lucid iron
#

avi draw me some item sprites and ill solve all ur wild tree problems

velvet narwhal
#

what item sprites

lucid iron
#

i need icons for me trinkets

velvet narwhal
#

also tedi kinda solved most of em but for me it's just me wanting cp compat light-up trees

lucid iron
#

was just gonna recolor some vanilla sprites tbh

velvet narwhal
#

(it is 10am for me here)

lucid iron
vernal crest
velvet narwhal
#

not 5 days, 8 days

#

but there's only 5 entries so far

lucid iron
#

im gonna have to finish all the trinkets first, using just placeholder art

#

at 3/6 rn

vernal crest
#

Argh Avi you nearly killed me

#

I thought you meant only 5 DAYS

lucid iron
#

yea i almost got skem too

velvet narwhal
#

sowwi, i even tried to use the discord timestamp to specify regional time

lucid iron
#

devious

vernal crest
#

I saw the regional time but just went "8 days for overall event but only 5 for event????"

vernal crest
lucid iron
#

scammed

#

by aviroen

vernal crest
#

Whew I'm glad that was a false alarm. I'm stressed enough about my slow drawing as it is

#

Lol skem

velvet narwhal
#

skem is a very mmo-esque verbage which i'm used to

whole raptor
#

Uhh did something change on Nexus posts in last 2 or 3 months..? How do I edit sticky posts? SDVpuffereyes

velvet narwhal
#

unlock

#

maybe?

whole raptor
#

Nope, tried it

rain basalt
#

anyone see any issues with my i18n it tested just fine lol not sure if i need to translate the true false though

velvet narwhal
#

oh wait, you can't edit someone else's posts right

whole raptor
#

You don't, it's just a checkbox

whole raptor
velvet narwhal
#

you can block yourself?

whole raptor
#

Apparently..

velvet narwhal
lucid iron
#

unlock post?

rain basalt
#

un sticky make edit re sticky

vernal crest
whole raptor
rain basalt
#

hmm thats how i made edit to one of my stickys before

whole raptor
#

I'm pretty sure I did too, so that's even more confusing...

steep blaze
#

I'm currently working on a rather large project, but I'm hesitant to upload it because the English is machine-translated.

lucid iron
#

what is your native lang?

steep blaze
#

chinese

lucid iron
#

yea i can make attempt

#

dont count on me for srs writing but i translate all the configs of my mods to chinese blobcatgooglyblep

steep blaze
lucid iron
#

oh boy natural language processing strikes back

velvet narwhal
#

are we gonna have a round two of conspiracy vs nefarious plot

lucid iron
#

no it's more like, when you reach a certain level of dynamic sentence construction

steep blaze
lucid iron
#

you will need to start considering grammar instead of just tokens DokkanStare

velvet narwhal
#

oh right, the fun part about words having multiple meanings

lucid iron
#

this isnt quite at that scope ofc, so just filling out more sentences should be sufficient

#

but i dont know the design goals for the mod

#

google did solid job for most part SDVpufferthumbsup

steep blaze
#

It's a random dialogue system that can trigger events, trade, and interact with NPCs. I can provide a runnable half-finished version, though it's machine-translated.

lucid iron
#

the ones tha stuck out to me is the line about miso soup, english doesnt have that particular idiom

#

and Intimate Relationship is very formal bolbthinking

steep blaze
#

Facing such a large amount of translation needs is really quite troubling.

lucid iron
#

大力出奇迹 AquaThumbsup

#

but also its fine to only include your native lang in mod release, if you feel uncomfortable about using machine translate

steep blaze
#

It definitely will be.

velvet narwhal
#

i don't know the ratio of eng vs chinese on nexus but iirc chinese is definitely prevalent, right?

next plaza
#

English is definitely most common

whole raptor
#

Oh... right SDVpuffereyes

lucid iron
#

ik there's cn ppl releasing mods on xiaohongshu(?) kinda like how kr has naver cafe

steep blaze
#

Yes, I hope both Chinese and English players can be well taken care of.

lucid iron
#

but many cn ppl use nexus from what i can tell

#

pr is also big category and the only lang ive gotten 3rd party mod tls for thus far blobcatgooglyblep

rain basalt
#

lol reason i made an i18n file for configure options

steep blaze
#

Indeed, there are people very dedicated to translating PR.

velvet narwhal
#

i'm wondering if this resurgence of bugreports is because i got an unofficial translation but i just haven't cared enough about it

tiny zealot
#

lacey has a bunch of independent translations, at varying levels of out-of-date

rain basalt
#

is it just me or is nexus and steam running slow today

velvet narwhal
#

like yeah, i'm glad they're picking up my mod cause i have an official chinese translation, but my chinese translator is dealing with uni and i added well over 500 lines of dialogue since the last time she gave me the file

tiny zealot
velvet narwhal
#

i use lacey to practice my japanese localization

#

i need that gru image

rain basalt
#

my bug reports are usualy caused by other improperly used mods lol

#

and i dont get responces back

steep blaze
#

Even though my English is poor, I still think using English on Nexus Mods can help the most people.😭

heady crest
#

how do i move her to the left if i cant use negative numbers

velvet narwhal
#

you need 3 indexes, <x> <y> <facingdirection>, so you're just missing the facing direction

tiny zealot
velvet narwhal
#

i use my own mod to practice thai, i break into the thai market by not knowing a damn thing except the alphabet

rain basalt
drowsy pewter
tiny zealot
#

or you get "nvm i figured it out"

mellow verge
#

Hello everyone! I'm new here, I've only been playing SDV for a short time. I liked the game so much that for the first time in my life I decided to make something for the game myself. I'm currently drawing my own farm map. Could you please help me with one problem? I didn't understand from the information on the wiki how to make a data json file and write down the types of fish on the farm in it. I couldn't find a more understandable guide on this topic (I've been playing the game for less than a month and may not know if this problem has been discussed in detail). Ideally, I want to combine several types of fish on my farm. I would be very grateful if someone would tell me how to make this file and write down the different types of fish for fishing and crab traps.

velvet narwhal
#

i should upload my additionalfarm as an example

rain basalt
#

mm did you look at FTM it can help as well as its guides

mellow verge
rain basalt
#

most of us do ^..^

velvet narwhal
#

there's definitely 1 crazy person who uses the text version, i just wanna know who

rain basalt
#

well ive done some text version just to fix some tiled issues since i can do a copy replace

tiny zealot
#

yeah i definitely do spot fixes in a text editor but not normal editing

rain basalt
#

once i finish translating build more greenhouses think ill work on my cellars mod

steep blaze
velvet narwhal
#

thinking on the contest i did contemplate a full scale soul-eater style artstyle SDVpufferthinkblob then i realized iun wanna draw that much

mellow verge
# velvet narwhal <https://github.com/Aviroen/Cozy-Extra-Small-AdditionalFarm/blob/master/content....

As I understood from your file, you specified certain types of fish. For example, "tilapia" etc. I want to specify in the settings just river, mountain lake and forest fish (I have two lakes and a river on my farm, and I want to separate them by fish types). I do not want to specify each fish, if possible Can you tell me how to simplify the data file in this case? And in which folder should it be placed in the mod structure?

velvet narwhal
#

i haven't put crab pots in because there's not really that big of an area to fish in my map personally, but data/locations and looking over the Farm_Beach should tell you how to format the crab pots

#

in terms of 'foldering' this is all in the content.json

#

tbh additionalfarms doesn't seem necessary for separated files of codeblocks

whole raptor
mellow verge
lucid iron
#

are you aware of content patcher

velvet narwhal
# mellow verge I've seen examples in your data json file and in other modders' files, but it's ...

i wouldn't be able to explain to you how content patcher works because it's hard to explain from a 'never seen a codeblock standpoint' for me
yeah ig that should be the starting point, this is all written through content patcher's .json syntax
https://stardewvalleywiki.com/Modding:Farm_data additionalfarms wiki has a very very basic example that gets your farm up and running
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md content patcher docs

next plaza
#

Cooking up an exciting new SpaceCore feature 👀 (not super useful for smaller mods, at least for the intended usecase, but you could do some interesting stuff with it otherwise too)

brave fable
#

cooking...
..

velvet narwhal
#

oh nice a non gigamaze

#

i await the new york times word guess for the next event SMCKekLmaoDog

tepid escarp
#

Does anyone know what it means in a SMAPI log when it says: ‘which couldn’t be parsed: required index 2 not found (list has indexes 0 through 1)’ I have zero idea what it means 😦

velvet narwhal
#

depends on the context of the rest of the smapi error

#

but sounds like you're missing more commands, like how in events move <NPC> requires 3 'indexes'
ex: move Caroline -1 0 1 -1 being the <x> value, 0 being the <y> value, and 1 being the <facing direction>

tepid escarp
#

It’s saying it during dialogue for some reason

velvet narwhal
#

dialogue requires speak <npc> \"DIALOGUE\"

tepid escarp
#

Yeah I have that. I made two events and didn’t have this problem but now it’s being weird on this one

velvet narwhal
#

if you could show the json, there might be something like a space connecting the npc name or if you're using i18n keys, the key isn't complete

tepid escarp
#

Yeah sure, should I just show the bit that smapi is saying that to?

velvet narwhal
#

ye

tepid escarp
#

I’ll apologise for my bad spelling, that stuff a WIP lol. It’s also after a quick question if that affects anything

uncut viper
#

!json

ocean sailBOT
#

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.

uncut viper
#

upload the json here

tepid escarp
#

I think that’s it and it’s the six heart event that’s doing it

velvet narwhal
#

which one? only seeing logname for 2 heart/3heart/4heart

tepid escarp
#

Yeah sorry I meant 4 heart long day lmao

velvet narwhal
#

500\\speak Kent\"And looking over how my life, especially my marragie, has gone...$s#$b# I can see that's one aspect of my life I regret.\"\\

#

right there is missing a space

#

goes back to the word search

chrome mountain
#

Did CP or JA change the way you target JA items? My CP-A patch doesn't seem to work anymore.

       "LogName": "0 Fish Bowl Animation",
       "Action": "EditImage",
       "Target": "{{spacechase0.JsonAssets/ObjectSpriteTilesheet:Fish Bowl}}",
       "FromFile": "assets/Animations/fishbowl.png",
       "FromArea": { "X": 0, "Y": 0, "Width": 16, "Height": 16 },
       "ToArea":{ "X": "{{spacechase0.JsonAssets/ObjectSpriteX:Fish Bowl}}", "Y": "{{spacechase0.JsonAssets/ObjectSpriteY:Fish Bowl}}", "Width": 16, "Height": 16 },
       "AnimationFrameTime": 10,
       "AnimationFrameCount": 28,
       "When": {
          "HasMod": "spacechase0.ContentPatcherAnimations",
          "HasMod": "spacechase0.JsonAssets"
      }
  },```
tepid escarp
#

Thank you! I was looking through and saw most things were due to me forgetting spaces. I think I’ve cleared all the errors now, just gotta remember how important the spaces are. Thanks for your help ❤️

next plaza
#

You can do animations with SpaceCore, though it works differently than CP-A

whole raptor
#

Does CP-A still work..? Thought it was broken

chrome mountain
#

I have another CP-A patch that works just fine SDVpufferthink only difference is this isn't a JA item

    "LogName": "0 Pufferchick Animation",
    "Action": "EditImage",
    "Target": "Mods/StardewAquarium/Items",
    "FromFile": "assets/Animations/pufferchick.png",
    "FromArea": {"X": 0,"Y": 0,"Width": 16,"Height": 16},
    "ToArea": {"X": 32,"Y": 0,"Width": 16,"Height": 16 },
    "AnimationFrameTime": 10,
    "AnimationFrameCount": 5,
    "When": {
        "HasMod": "spacechase0.ContentPatcherAnimations",
        "LegendaryFishAnimation": "true"
    },
},```