#making-mods-general

1 messages ยท Page 74 of 1

next plaza
#

Hmm, what does the broken patch look like when you patch export?

#

Wait

#

That wouldn't catch CP-A

chrome mountain
#

the patch summary says it gets applied, no errors either

tender bloom
#

JA loads the items as normal items but under unique IDs

#

Are these JA items?

#

Because Iโ€™m not sure the Target here does anything for JA mods

next plaza
#

Well, for targetting JA items with CP-A, you do use the token like Gervig is doing in the first patch

tender bloom
#

I also donโ€™t remember what I did with regards to JA item sprite locations anymore

next plaza
#

Oh, that's a good point

tender bloom
#

Oh I see, the 2nd one is the non-JA one

#

I only saw the 2nd one and got confused

chrome mountain
#

well the items are added with a SMAPI mod as JA items (at least that's what I'm told and how it used to be ๐Ÿคทโ€โ™‚๏ธ )

next plaza
#

@chrome mountain What happens if you set ToArea X=0 and Y=0

chrome mountain
#

I'll try and test that in a bit!

tender bloom
#

The x and y should already be returning 0

#

I only put those in for backwards compatibility

#

Have you done a patch export on the target to check what it looks like?

hallow prism
#

you need contains for two hasmod

chrome mountain
hallow prism
#

pretty sure the reason it doesn't work is that spacecore isn't considered inmutable condition this way

tender bloom
#

No I mean the original base ja sprite

hallow prism
#

which is needed for the cp to accept using JA tokens

tender bloom
#

Like have you checked that the JA sprite definitely is there and not somewhere else

#

Although perhaps Lumi is onto something

uncut viper
#

deja vu SDVpufferthink

hallow prism
#

"HasMod |contains=MODID": "true"

#

for the format

#

otherwise CP checks only one of them

velvet narwhal
#

i thought without contains it's just set to true, it's the falsifying that you need the contains for? SDVpufferthink

#

oh are they both mods?

hallow prism
#

in first example yes

tender bloom
#

Itโ€™s that thereโ€™s two identical keys

uncut viper
#

you need contains bc you cannot have two HasMod keys

tender bloom
#

You canโ€™t have two identical keys in a json

hallow prism
#

it may not solve the issue but :

  • it's a quick change
  • it will be needed for proper check anyway
chrome mountain
#

how do I patch export on a JA item?

hallow prism
#

you'll need to know the current value of the token of the path

chrome mountain
#

this {{spacechase0.JsonAssets/ObjectSpriteTilesheet:Fish Bowl}} ?

hallow prism
#

yes, by using patch parse for ex

chrome mountain
#

I'm not familiar with that SDVpufferdizzy

brave fable
#

i gotta say it's real hard to come up with a satisfying conclusion when your mod is a joke lol

hallow prism
#

well i suggest to test my solution while i search the doc for patch parse for you

uncut viper
brave fable
#

front-facing penny vibes SDVpufferweary

chrome mountain
#

hmm I think I might know why, looks like all the aquarium items got moved to a tilesheet like this. Might need to talk to atra SDVpufferchicksweatsip

uncut viper
#

(you should also definitely fix the HasMod thing)

chrome mountain
#

I think I'll leave it in just to mess with you

uncut viper
#

its your mod! its literally not functioning the way you expect so if you're fine with it being broken sometimes outside of your control...

next plaza
#

uses a goto

uncut viper
#

i also used a goto in a mod recently... it was exciting

lucid iron
#

i was tempted to do goto for breaking out of a 2 level for...

calm nebula
#

That will likely be easiesr

tender bloom
#

yeah SDVpufferchicksweatsip my design decisions when fixing JA were strongly aligned with "please let me keep these old packs working" and only incidentally aligned with "make it easy to develop new stuff/integrate with other mods" (though I did try to make it easy for other mods to cope)

#

I prioritized "make it work smoothly with other mods" in the form of unique IDs for items

#

which decreases compat with other mods, but they should have already been requesting ID anyways

teal bridge
#

Does SMAPI suppress .pdb generation somehow? And if so, does anyone know how to get it to not do that?

tender bloom
#

idk a bit of a ramble to say that what I did in PRs for JA is imperfect but present

#

pdb for compiled mods?

teal bridge
#

(By SMAPI I of course mean the ModBuildConfig analyzer.)

calm nebula
#

It's embedded

#

You can de embed it, I'm not sure how

#

But be forewarned it breaks stack traces on Linux/Mac

teal bridge
#

I don't want to actually deploy it with the mod, I just want to get it in my own output directory so I can use it for pre-deploy stuff.

calm nebula
teal bridge
#

Specifically, to use Cecil to match declarations with line numbers.

hallow prism
#

(especially with how busy you are)

teal bridge
#

Well, <BundleExtraAssemblies>All</BundleExtraAssemblies> didn't work. It's strange, all of the SMAPI docs seem to indicate that the .pdb should be generated, and nowhere make any mention of this embedding. I get PDBs for Stardew Valley and SMAPI themselves, but not my own frickin' mod.

old edge
#

So I spawned some custom rings with FTM but they do not work like normal rings when attempting to equip. I have to use cjb item spawner and then it works normally. Is there something I'm missing when spawning rings with FTM?

whole raptor
#

Seems like it was a good idea to report it..

brittle pasture
#

actually, did you specify type "ring" in the spawn config?

#

(if you didn't, feel free to ignore the first message and simply set type to "ring")

next plaza
#

It's in the mod build config

#

Whatever the normal csproj setting is

#

Oh atra already answered, sorry

lucid iron
#

say the spacecore spawning feature isnt limited to dungeons right

next plaza
#

Nope

lucid iron
#

i was thinking of using that instead of ftm for farm map

next plaza
#

I use it in MMR to spawn a cat tree in a house (static location) ๐Ÿ˜›

hallow prism
#

is there an example pack for that by the way? i'd like to look at this at some point

next plaza
#

I think there's a gist linked on the github docs

#

Otherwise, you could look at the S&S alpha's Data/Dungeon.json

hallow prism
#

thanks ๐Ÿ™‚ yeah i like to cross reference stuff usually to be sure i have formatting right/don't remove stuff that isn't optional and all

rain basalt
#

^..^ having reference materials always helps

next plaza
#

There'll be better docs when (if) I finish the new website for my docs

teal bridge
next plaza
#

Let me find the setting

hallow prism
#

yeah but i understand documentation IS lot of work

next plaza
#

<DebugType>embedded</DebugType>

#

Valid options are full, pdbonly, portable, and embedded

next plaza
#

Though it is of course a bunch of work on the modder's end

teal bridge
#

It does not appear to be honoring the <DebugType> setting.

next plaza
#

Hmm SDVPufferThink

teal bridge
#

Which would also explain why I get pdbs for everything not built using that tool.

uncut viper
#

(got it, spacecore implementing minecraft create pondering, i will not lower my expectations from this point)

brave fable
#

[game] Event 'Custom_blueberry_H2024_5' has command 'shake farmer 3000' which couldn't be parsed: no NPC found with name 'farmer'.
is that so SDVpufferfush

velvet narwhal
#

yep

#

startJittering

teal bridge
#

That sounds like a bug in your action, not a bug in the parsing.

hallow prism
#

yeah this command is just for npcs for some reason, maybe animation reason or something

covert quarry
#

i made a mod where you fling boogers

old edge
#

Oh my

next plaza
#

Fun fact: Game1.dialogueFont is null in mod entry

brave fable
#

tempanimsprite motion/acceleration values override period values SDVpufferfush everything i try is not allowed

#

evil machines

rain basalt
#

one reference done 999.99 to go lol

#

for anyone who wants lol

#

i do best with visual references lol

old edge
brittle pasture
#

yes

teal bridge
next plaza
#

I didn't realize that

#

I assumed mod entry was after LoadContent

teal bridge
#

Yeah, I had a fun moment a few weeks back when I realized the only reason half my tests were passing was because they were comparing null to null.

brave fable
#

even a game developer, our third pillar of custom content, doesn't know when content is loaded SDVpufferpensive

calm nebula
#

To be fair, it probably used to be

#

That apparently is the history of the GameLaunched event

rain basalt
#

lol my first mod had zero errors cause it didnt load

teal bridge
#

I thought GameLaunched was more about mods depending on other mods than mods depending on assets. But I wasn't around in the <1.5 days.

calm nebula
#

Yeah, that's how it's mostly used these days

#

Ofc if you want to be super early put stuff in your constructor

teal bridge
#

I try to avoid mod entry constructors because of how confusing the initialization scheme gets. I stick to either inline field initializers or Entry stuff initialized to null!.

#

Constructors are also a refactoring hazard; you will always, always discover eventually that something you were previously initializing in the constructor now suddenly depends on something that's not available until Entry.

calm nebula
#

(That's the joke.)

#

Almost nothing is ready for you in constructor. You don't have a Helper

royal stump
rain basalt
#

@royal stump long time no see SDVpufferheart SDVpufferwow

royal stump
#

SDVpufferchickmorning howdy, hope things are going well here, I've only vaguely checked in for like 2 months now

rain basalt
#

lol same just got back after life

old edge
#

Friendly reminder to back up your data

#

I was always afraid of that which is why for awhile I uploaded daily to nexus

#

SSD I bought 2 years ago still going strong

rain basalt
#

lol i have a raid drive i store everything on

royal stump
#

yep, got a backup drive for everything lately, though pushing to github whenever I do any work is handy SDVkrobusgiggle

old edge
#

But you know

#

I hope nexus never get hacked like Internetarchive

teal bridge
#

RAID is not a backup.

lofty ruin
#

My NPC loads in the middle of town but they aren't moving. I wanted to give them a default schedule, but I wasn't sure how (And you can't talk to them either)

tiny zealot
#

sleep a day (some NPC setup for the next day is done when the day ends)

rain basalt
#

raid 1 is backup lol

brave fable
#

raid mirroring is sort of a backup, but not much use if your whole computer is wrecked

brave fable
#

not if your house is on fire SDVpufferfush

rain basalt
#

id grab the cat my 5000 computer and my wallet

teal bridge
#

Just putting aside the whole gray area of technical reasons why an entire RAID array might fail, backups don't exist solely to mitigate mechanical failure. They are also there in case of human error, ransomware and assorted other happenstances.

rain basalt
#

o i save every version i make as well >.> and archive them on nexus

heady crest
#

can i not have two characters walking at the same time in a event? they always seem to wait for the first one to finish walking to start moving after

teal bridge
#

I once had to go back to a 7-year old backup to find a stash of files that somehow, for reasons still unknown to me, had mysteriously lost the chain of continuity across several upgrades despite me having copied/mirrored/etc. every single time.

rain basalt
#

and mines a logical raid 1 so my array has less failure points

teal bridge
#

The directory was there, and it was simply empty, and turned out to be empty on several sets of archived backups. So yeah, there are very good reasons for a real backup.

#

I have a RAID array too; it's in the NAS, where my primary backups live.

royal stump
#

or probably use the continue flag to have it avoid waiting, etc

old edge
#

BeginSimultaneouscommand?

heady crest
#

will search about that

#

oh its on the wiki just went by over my head

#

thanks

tiny zealot
#

begin/endSimultaneousCommand does not let two characters walk at one time, even though it sounds like it should and the wiki describes it like it should

#

for simultaneous walks you have the options esca gave (continue flag, multiple actors in one command) as well as advancedMove

whole raptor
rain basalt
#

TBH since pythons automation for math and all the issues its caused i do prefer to hard code everything myself .... it took what 4-5 years to fix most of pythons issues but they still have many lol

whole raptor
#

That's just js and regex (curse of hosting on github pages...)

rain basalt
#

i also like to reference things for easy edits lol see how nice it looks all layered and notated lol

uncut viper
#

does it handle single quotes?

#

or escaped single/double quotes

whole raptor
#

I'm just starting out on the config section so not yet, but it probably will

#

Could you show me an example? SDVpufferthink

rain basalt
#

me or boo lol

whole raptor
#

Boo hah

whole raptor
uncut viper
#

"AllowValues": '"Welcome!", Unwelcome'
"AllowValues": "\"Welcome!\", Unwelcome"

#

"AllowValues": '\'Test\', \'Test2\''

rain basalt
#

side by side

whole raptor
uncut viper
#

no, the values would be "Welcome!" and Unwelcome

#

the quotes would be apart of the string

whole raptor
#

Oh right, should be able to make it work without too much of a problem, thanks

rain basalt
#

i dont add quotes to strings i always add a line and space them into place above

uncut viper
#

im not sure what you mean. adding a quote into the string is necessary if you want to display a literal quote in wherever you're using it. Like if you want an NPC's dialogue to have a quotation mark in it

#

or their name to have an apostrophe but also want to surround the string itself with single quotes

rain basalt
#

ah nvm lol i was getting quotes and comments confused

whole raptor
#

For some reason I like having my i18n file flat hah

rain basalt
lucid iron
#

But it is flat

#

I just put comments between sections

half tangle
#

Anyone have insight into this or maybe relevant knowledge about C# events? I need to step away for a bit, so no rush.

I'm running an admittedly complex algorithm, but when I run it from console it works great every single time. However when I run it via a C# event (on ticked, one second, button press) it sometimes gives bizarre outcomes. A little more specifically, the algorithm iterates over data to create various lists. So far the console call works, but calling it via C# event causes it to miss checking chunks of data or to not put some of the processed data into the necessary lists. It is running on the exact same data using the exact same parameters in every case.

I've tried .Union and I've tried foreach over the lists I'm creating to gather all the items in the lists, and still the console calls work and the event calls sometimes don't gather all the relevant data.

#

(the algorithm runs in milliseconds at worst)

whole raptor
#

Meanwhile I additionally do unnecessary stuff like this SDVpuffersquee

grim rune
#

Anybody know why my automatic config changes aren't saving to the config file unless I - as the user - click save? Is there any backend function I can use to force this update?

uncut viper
#

you're supposed to need to click save

grim rune
half tangle
uncut viper
#

you can just write to the config file yourself instead of via GMCM

#

smapi's Helper thingy has a config helper

#

which you're probably already using to load it into gmcm

#

but GMCM doesnt expose anything for just when you change the value but dont save it yet as far as im aware

#

i could be wrong

rain basalt
grim rune
#

no, I open it shortly after I boot up*

uncut viper
#

gmcm itself just does not write to config unlesss you save

grim rune
#

fair

rain basalt
#

make changes close game then check file

grim rune
#

I'm trying to get a one time set up on start up so the mod starts up properly

#

hold on, I think I miscommunicated my objectives here

#

lemme think

rain basalt
#

are you using default tags

grim rune
rain basalt
#

"AllowValues": "Mini, Normal",
"Default": "Normal",

grim rune
rancid temple
#

Those are for CP lol

uncut viper
#

celestia, this is for a C# mod

rain basalt
#

yah sorry lol

#

its late

rancid temple
#

As far as I know, GMCM doesn't have a way to make changes in real time, would probably have to hack GMCM in order to track changes to the values in order to save them immediately

lucid iron
#

but hm im not sure what it could be, since it doesnt sound like you are threading things?

grim rune
#

i have an idea, I'll probably just initialize it in a different spot

calm nebula
#

Unless you like, intentionally threaded in game

#

Which is something you would know

rain basalt
#

from what i know gmcm updates on map changes so if you exit farmhouse

uncut viper
#

gmcm updates the config as soon as you hit save

rancid temple
#

The problem is they want the changes to happen as soon as they move the slider

rain basalt
#

yah not gona happen lol

uncut viper
#

i am not sure whats wrong with the default values though, mango?

calm nebula
#

You can do that. There id a method in the gmcm api to do that

rain basalt
#

like a forced update on change?

olive fulcrum
#

YES! JUMJUM JR SHALL RISE AGAIN!
Sorry for interrupting I never made an item before

rain basalt
#

nice can you curve the scyth more?

lucid iron
#

u can just invalidate data in the set value delegate, if this is C#

#

cant do that in cp afaik

olive fulcrum
#

This is an asset from the original mod, and I'd rather not tweak it lol
I did however include an extra bonus feature to him, though
He is now also a light source

rancid temple
rain basalt
#

nice lol

calm nebula
uncut viper
#

i always assumed onfieldchanged only happened if the change was confirmed (i.e. via hitting save), but ive never needed it to bother testing it
good to know for the future though

olive fulcrum
#

Now to figure out how you're actually supposed to obtain it lol
I'm thinking a letter from someone via high heart level

grim rune
uncut viper
#

no i meant like, if you want an initial setup, why doesnt just setting the initial values work for you

rancid temple
#

I still need to find an example of how to use OnFieldChanged lol

grim rune
lucid iron
#

why r these things always exploding into debris when u harvest LilyDerp

rancid temple
#

Everything is very dense in the Valley

uncut viper
grim rune
#

I didn't even know that event existed

uncut viper
#

i know, but im asking what is being solved by being able to detect instantly when a config option is changed

whole raptor
#

Sections have tooltips only if they are added with i18n in GMCM when it comes to CP, it's never a part of ConfigSchema, right? SDVpufferthink

uncut viper
#

just tryin to get a feel for what you were actually wanting to do

grim rune
#

Ok so what I'm trying to do is create a custom configuration menu for the toolbar. The mod will feature mutliple shapes like 3x4 and the vertical 12x1 bars. Each shape will have a configuration profile of its own, since you may want the vertical bar on the middle left and the 3x4 at the top or something. The dropdown menu will automatically update the configuration menu options like x, y offset, etc.

lucid iron
#

hm it sounds like u need to have C# to achieve this right

tardy adder
#

Not me gleefully finishing the 1200 lines of to get the totems ready... only to find out I accidentally deleted my weather channel adjustments o(<

uncut viper
#

wouldnt that also mean you'd need to change what fields the config options are actually affecting, though?

grim rune
#

I unfortunately assumed the GMCM was more responsive

uncut viper
#

like, if you switch to the 3x4 bar from the 12x1 bar, it will update the sliders for x and y, but those options as GMCM has them registyered will still point to the 12x1 field

lucid iron
#

the config menu u desire sounds a bit like better sprinkler plus's sprinkler range settings

#

which is just its own custom menu

grim rune
#

custom menu
hecc

lucid iron
#

it'll be better user experiance in the end AquaThumbsup

olive fulcrum
#

Question: If I were to have a letter gift you a custom item, it'd be the item's ID, right? I imagine so, but I just wanna make sure kek

lucid iron
grim rune
#

I just need to make sure that the menu updates properly

tiny zealot
#

you (your users) may be better off with a custom menu anyway, since if i were editing configs for the other UI panels i would want them visible on screen so i could see the changes live

grim rune
#

lmao ok so quick confenssion - this is my first mod and C# project lmao

grim rune
#

I just wanna use my mmo mouse

olive fulcrum
#

Bet

uncut viper
#

admittedly im still not sure what you mean with the current profile thing or whether it'd even work properly even if they did update live the way your'e imagining it right now but, its hard to understand a complete idea of somethin if its not something you've thought of yourself, so. i will just say good luck instead

grim rune
#

lmao

#

thanks

lucid iron
#

i tried really hard to keep the original toolbar draw mostly intact blobcatgooglyblep

#

in case other mods r touch it

grim rune
#

yeah I'm avoiding harmony for as long as possible

lucid iron
#

that is why no funny shapes just extra bars

#

oh u r not dodging that AnnelieStare

grim rune
#

I think most people just delete the old draw then make a new one

lucid iron
#

that is just how it is when u want to change a existing menu

old edge
#

Is everyone done with their mod contest entries?

tiny zealot
#

you basically have no choice but to skip prefix for this, yeah. draw calls are not really undoable

lucid iron
#

there's also shenanigans if you want to handle backpack upgrade mods

tiny zealot
lucid iron
#

how far are you in the giga maze

old edge
#

How do I add a cool image on the smapi terminal I saw someone did it boo-tton is it bad if I ask for help with my contest entry mod?

uncut viper
#

spoilers!!

#

(i dont know if that would count as collaboration or not)

calm nebula
tiny zealot
lucid iron
#

astounding

brittle pasture
#

why are you doing this to yourself

uncut viper
#

i mean it wasnt actually a difficult maze

#

just time consuming

lucid iron
#

just in time to get started on your decent idea PecoSmile

tiny zealot
#

nah, i've got other stuff i care more about

#

also this way i only have the pressure i put on myself and no external pressure from competition

uncut viper
#

i just wanna be done with my mod entry already bc i just need 5 more points for the role i want

tiny zealot
#

having a nice relaxing event doing puzzles and gathering points i don't plan to spend

uncut viper
#

wouldnt be a problem if id known there was gona be a bonus 5 point maze in the gathering spirits channel originally SDVpufferpensive

whole raptor
#

Would there ever be a point to localizing numbers from values in config..?

lucid iron
#

what else can u do with points besides roles blobcatgooglyblep

tiny zealot
#

nothing (yet?)

uncut viper
tiny zealot
#

and i already got the best color (budget skeleton) so i'm good

brittle pasture
#

fellow skeleton army conscript

calm nebula
#

Meow

#

I have a stardrop

tender bloom
#

The stardrop is pretty but Iโ€™m purple

whole raptor
#

I meant strictly for CP, so if someone has for example:
"AllowValues": "1, 2, 3, 4, 5"
Would there be a point in putting them into i18n SDVpufferthinkblob Doubt it tbh

uncut viper
#

on the contrary, you should not

whole raptor
#

Works for me

uncut viper
#

(by on the contrary i mean "its the exact opposite, dont localize that")

rain basalt
#

Numbers I donโ€™t lol

young vector
#

Hey, so bit of a specific question here, if anyone happens to know the answer. Does anyone know which file controls the default controls for the game itself? I've tried looking myself but it's like trying to find a needle in a haystack.

For context, I play with a controller, and would like to unbind the text chat from the R3 button entirely, (I play solo most of the time, so it's entirely pointless), so I can use it more easily when rebinding it for modded controls.

lucid iron
#

hardcoded iirc

rain basalt
#

Sigh ๐Ÿ˜” all controller mods I found seem to be pre march so pre update not sure if they will work at all

young vector
#

The annoying thing is that all the mods I've used let you rebind controls in them to controller just fine, but because you can't unbind the chat key, it still pops up when you try to use the button.

lucid iron
#
else if (keyboardDispatcher.Subscriber == null && ((isOneOfTheseKeysDown(keyboardState, options.chatButton) && game1.HasKeyboardFocus()) || (!gamePadState.IsButtonDown(Buttons.RightStick) && rightStickHoldTime > 0 && rightStickHoldTime < emoteMenuShowTime)))
{
    chatBox.activate();
    if (keyboardState.IsKeyDown(Keys.OemQuestion))
    {
        chatBox.setText("/");
    }
}
#

Game1.cs

young vector
#

Many thanks.

lucid iron
#

just patch gamepadstate to block buttons.rightstick ig LilyDerp

uncut viper
#

wouldnt be a difficult mod to make to disable that though

#

you can just suppress the input

#

with the Input helper

rancid temple
#

Yeah, you only care about blocking the game so that would be perfect

#

All the mods would still get it

whole raptor
#

Okay, it's 4am, enough for today, I'll handle the single quotes etc tomorrow

young vector
uncut viper
#

if you give me a minute i could just whip the mod up quickly for you if you want

young vector
#

I'd certainly appreciate it. That'd be a big help.

next plaza
velvet narwhal
#

I NEED IT

whole raptor
#

That's cool SDVpuffereyes

young vector
#

Seems really nice.

rain basalt
#

Like 1.6.9 spacecore feature or 1.6.8

next plaza
#

1.6.9

whole raptor
#

Seems like it can be updated based on conditions like seen events? ๐Ÿ‘€

next plaza
#

Yep

whole raptor
#

Ooh, neat

next plaza
#

The S&S Never Ending Adventure example shows events completed so far and a hint for the next event

#

And also the special order thing

#

(With the text to click to re-add to journal if it is missing for some reason, which only shows up when you should have it but is missing)

young vector
#

I could see a lot of potential in that for some in depth quest stuff.

lucid iron
#

does this support markdown

next plaza
velvet narwhal
#

SDVpufferthinkblob interesting

next plaza
#

Yeah, I designed it around a guidebook for each chapter that S&S has, but you can organize it any way you want

lucid iron
next plaza
#

You could even make a rudimentary cheats menu using the [action=TriggerAction]text here meow[/action] stuff

velvet narwhal
#

sorry ichor, spacecore is gonna be the main quest-holder instead of secret notes, (i'm still gonna use secret notes but not to hold the main objective)

half tangle
# lucid iron i am sure u have same idea, but from sounds of things there is some kind of race...

Yeah, I'm not doing any threading... like atra said, I would know that. But for all I know the C# events are getting in the way somehow so I thought I'd ask. I have now copied the exact same code (rather than just method call) into a console command and into a method subscribed to an event (one second ticked) and the console is always giving the expected outcome while the event call is sometimes missing processed data...

uncut viper
#

good god nexus absolutely fucking destroyed the quality of this banner image

lucid iron
#

did you test with the run in backround thing

uncut viper
#

what the hell did you do to this image, nexus??

tiny zealot
half tangle
#

is that at me, chu? I don't know what that is

lucid iron
#

wow deep fried

next plaza
#

Yeah, they're complete different niches

tiny zealot
velvet narwhal
#

crunchy

brave fable
#

nexus completely ruins all sprite art

#

so disappointing looking at banners

lucid iron
uncut viper
#

i idnt expect it to be that bad

lucid iron
#

although, i dont think it would do anything if ur specifically focused in smapi console

uncut viper
#

im too lazy to make a different one though so, c'est la vie

next plaza
#

The guidebook itself can be opened via trigger action, so you can make an item that opens it on use (via SpaceCore's trigger action on use), or a furniture/map tile property, (via SpaceCore's trigger action on tile action) or in theory open a specific page during an event (untested for this last part)

lucid iron
#

uncheck it

young vector
velvet narwhal
half tangle
#

I see that now - and no change.

olive fulcrum
#

Huh, odd
[game] Letter 'Scorcher.JumJumJr_AbigailJumJumJr' couldn't be parsed. FormatException: Input string was not in a correct format.

uncut viper
olive fulcrum
#

Wait I think I know the problem

whole raptor
#

That's some aedenthorn levels of speed from someone throwing a random mod idea and upload SDVpuffersquee

young vector
uncut viper
velvet narwhal
#

the crunchy banner image took longer

uncut viper
#

i couldve done it in two lines but i didnt bother deleting my "is the world ready?" context check

young vector
#

Lol. As long as it works, I have no problems with whether it's three lines or two.

next plaza
#

Meanwhile, me, coding up that guidebook thing in 4 hours ๐Ÿ˜Ž (I wrote the whole thing without compiling it, spent longer debugging a few obscure issues than writing it it felt)

half tangle
#

!! I found a way to replicate it with the console! I'm not happy that the bug persists, but I'm very happy to recreate it... now to find out why it exists and how to fix it

#

thanks for the thoughts!

uncut viper
young vector
# uncut viper it should work but as you can tell, i didnt put it through a very rigorous testi...

I'll give it a shot once Nexus let's me download it. (Says it's still uploading.) I go through phases of playing the game, and the last few times I've played I've used more mods, so it's annoyed me so much that I have to go back to my keyboard for so many things. I couldn't find a solution to this the last few times I played, and for some reason I didn't even consider joining this discord to ask for help.

uncut viper
#

nexus is still telling me its not even published, so, who knows how long you'll have to wait lmao

young vector
#

Just became available, lol.

#

Alright. Seems to be working perfectly so far. Once again, thanks for the help.

uncut viper
#

SDVpufferheart happy to help!

lucid iron
#

does C# have context managers or decorators

olive fulcrum
#

Let's gooooooo

#

I was an idiot and had it defined as an object and not a Big Object in the letter

lucid iron
#

squish

half tangle
# half tangle Anyone have insight into this or maybe relevant knowledge about C# events? I nee...

If anyone was curious for whatever reason, I was relying on an instance of a class that held the data in a static variable in my main class and I was calling my algorithm on the values of variables in that instance. I was updating the instance as needed, but in some (seemingly random) cases using that instance's values was causing unexpected behavior in the other code. Why it was doing that is beyond me right now, but I've only put like 5 minutes into answering that question and hopefully won't need to think about it again (lol, it's gonna bite me tomorrow probably).

velvet narwhal
#

you have raised the flag on technical debt

lucid iron
#

it'd help a lot if we could read the sauce

loud ice
#

does a kindsoul know to fix this bug SDVpufferheart

latent mauve
next plaza
#

Thanks!

#

This all on the github develop branch by the way, if anyone wants to compile it themselves and try it

lucid iron
next plaza
#

(beta-1.6.9 is the 1.6.9 changes branch, so you'll need to merge the two if you're using 1.6.9)

loud ice
#

i have !18n i dont know to use it

latent mauve
velvet narwhal
#

i can wait a few weeks and use that as an excuse to not work on my expansion

loud ice
#

here is my AMAZING CODE

lucid iron
#

oh i see you are using special display name

#

need to add this CannedMeat_DisplayName to a string asset

#

if u want to use LocalizedText

#

but i think you could also just do like

#
"ObjectDisplayName": "{{i18n:CannedMeat_DisplayName}}"

and then in your i18n

"CannedMeat_DisplayName": "Canned {0}"
#

maybe need to escape the {0}?

#

unsure

brittle pasture
#

(using LocalizedText for display names is apparently recommended since it will update on content pack and language changes, but the method posted above is much, much simpler)

loud ice
#

I use !18n, I planned to translate my mod in spanish :3

#

It make easy for me lol

#

ty for help

#

okay i think i messed up

lucid mulch
brittle pasture
lucid mulch
#

(and a few unfortunately had my name in it)

latent mauve
next plaza
lucid mulch
#

a fun use of the mostly useless museum library

loud ice
velvet narwhal
#

as long as casey doesn't make create for stardew i'm safe

brittle pasture
latent mauve
#

Line 51 also has a missing comma in your second file, rosellove

rancid temple
#

SDV Tinker's Construct when

next plaza
brittle pasture
#

(also I think your display name format is incorrect, but we'll get to that after fixing the breaking issues)

loud ice
#

๐Ÿ˜ฎ

lucid mulch
next plaza
#

I had ideas for a TiC like mod at one point

velvet narwhal
#

i have 0 idea how you'd implement kinetic energy into stardew (coal replacement?) but yknow

lucid mulch
#

I find automate both boring, easy and not powerful enough, I want supply chains and being able to make like starfruit wine cans and starfruit 1.25L bottles from the same fluid that you can build

velvet narwhal
#

sinz gonna make conveyor belts in stardew

lucid mulch
#

having sprinklers need water from overhead or underground piping (but actually work this time in multiplayer)

brittle pasture
#

does it load at least?

latent mauve
#

Because I'm tired and want to make sure: Do tokens (like i18n) work in include JSONs, or not, because includes are typically added via Loads?

next plaza
brittle pasture
lucid mulch
#

CP tokens work where CP is aware of the contents, a Load inside an Include will have the same problem as the load without include, and an EditData in both will be fine

latent mauve
#

okay, that clarifies it for me. Thanks!

loud ice
uncut viper
#

also its the other way around, Loads are typically added via Includes

lucid mulch
brittle pasture
loud ice
brittle pasture
#

missing comma on line 23

loud ice
#

BRUH

latent mauve
#

is 51's still missing too? xD

#

I just pointed both 23 and 51 out.

#

23 in first file, 51 in second.

brittle pasture
#

(obligatory which editor are you using)

loud ice
#

Notepad ++

velvet narwhal
#

throwing it into the json validator will usually cover your bracket/comma bases, it's for when the json comes back with no errors and no smapi errors (but it's still not working) that'd probably be best

brittle pasture
#

yeah recommend posting your files to the json validator every time before posting here for help

loud ice
#

I did i dont know what "After parsing a value an unexpected character was encountered: ". Path 'cannedmeat_DisplayName', line 52, position 0." means

velvet narwhal
loud ice
#

I am new too this, I only start 4 weeks ago

#

TY

rancid temple
#

I believe Selph means so you can post the link here since we'd need to ask for it anyways

#

For sure if you can understand what the error is, you can use it to fix the issue yourself, but without seeing the code we can only speculate so much

loud ice
#

Oh okay

tender bloom
loud ice
#

Okay thanks

loud ice
#

haha i just fix my code it works but my but well see lol

brittle pasture
#

(Explanation: You'd use {0} if you were still using [LocalizedText Strings/1_6_Strings:SmokedFish_DisplayName %PRESERVED_DISPLAY_NAME] like your code above, but you're not, so we're bypassing it and putting %PRESERVED_DISPLAY_NAME directly)

#

Keep the {0} in ObjectInternalName in your machine rules! Replace only the i18n file

rain basalt
loud ice
#

FINALLLY

#

Thank all

#

I make sure to credit all you in my mod des

rain basalt
loud ice
#

I am publish this mod lol

#

I needed to fix this bug

#

Itโ€™s my biggest one

rain basalt
#

Itโ€™s only a bug if thereโ€™s errors lol other then that itโ€™s a mistake ๐Ÿ˜‰

loud ice
#

I fix all other bugs in my mod lol

#

It was just this one that was haunting me lol ๐Ÿ˜‚

rain basalt
#

Well off to sleep. If I can lol gotta fix my cellars mod tomorrow and finish the i18n for my greenhouse mod and update it sigh so much to do

lucid iron
#

How do I turn NetPosition interpolation off for a little bit bolbthinking

rancid crypt
#

decided I'd ask this here cause frankly you guys could probably tell me the details of if this would/wouldnt break my game. Question is would deleting a mod like bonsters crops midplaythrough break a save somehow?

woeful lintel
#

if it's CP, you'll just get error items in place of the custom items

#

every time I think about working on FF, I want to do cool stuff like Furniture interaction event API for easier custom interaction or desser with custom rules for what can be put in it, but I can't do that until I finish my current re-work

vernal crest
#

The curse of creation: not all the bits are equally fun to do.

hallow prism
#

it should be safe, you may get error items, just destroy them/ship them

#

ah i wasn't fully scrolled of

#

well

#

it's not the worse case of it that i saw/did ๐Ÿ˜„

hallow prism
#

!json of your schedule pls @lofty ruin

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.

lofty ruin
finite ginkgo
#

What do you mean there isn't one?

#

There's no 'default' for not specifying any schedule

devout otter
#

There is no automatic, default spring schedule.

#

You'd need to create your own NPC's spring schedule first, then it'd be your NPC default schedule.

hallow prism
#

yeah the game doesn't have a default generic non specific npc schedule like it has for dialogue, because it doesn't need it AND it wouldn't make sense, so you have to create one.

lofty ruin
finite ginkgo
#

Yes, but you need to create spring yourself

hallow prism
#

it's recommended to have one of those, meaning you need to do it

#

i mean, it wouldn't be recommanded to have one if you already had one provided

molten oasis
#

yeah i think 'spring' as the default in this instance means if you dont make any other type of schedule, it would default to the spring schedule you made
just from what i am reading

finite ginkgo
#

Correct, by default an NPC has no schedule. You need to create the schedules yourself, the fallback for not finding a more specific schedule is the spring schedule, but that doesn't mean there's an automatic spring schedule.

hard fern
#

SDVpuffersweats the way I'm updating my mod before getting to the 1.6 stuff in-game

calm nebula
#

is now purple

#

Tbh one of the nice parts of events is name color diversity here

#

As we all go to the purp

tiny zealot
#

i love having a break from cheeto orange

vernal crest
#

I chose pink because almost no one else had it haha

#

Easier to see my own messages

hard fern
#

i like being shrimp orange

vernal crest
#

I don't mind being a cheeto most of the time but it's fun to have a change

calm nebula
#

"Hey junimos can we have more server events just so modders aren't all orange"

vernal crest
#

Advantage to adding tile properties via CP: no forgetting to add the "TileData" name

rancid temple
#

Needs a way to add a tile property to a rectangle region, then setting up decoratable locations that way wouldn't be the worst lol

tiny zealot
#

that or some kind of foreach json monstrosity

vernal crest
#

Yeah I'd just do that in Tiled since you can do one big rectangle over the whole space in Tiled for it

#

Playing around with AmbientLight to figure it out. Dark.

#

List of models means curly braces inside square brackets, right? Like so?

"Field1": [
  {
    "Subfield1": "value",
    "Subfield2": "etc"
  }
]
rancid temple
#

Ye

vernal crest
#

Cool, thanks

#

Whew I am going to call my map-making finished

#

Except for tidying my tilesheets SDVpufferfear

rain basalt
vernal crest
#

Oh I am quite familiar with map-making, but thank you :) Fortunately it is a custom map so I don't have to worry about names or order.

#

It's just that I downloaded many free asset packs to add some non-vanilla flavour to my map and now I have to sort through all the used vs unused ones, load them into the game (or decide to use internalassetkey), and write my credits doc.

rain basalt
#

Yah Iโ€™m familiar with map making to think worst Iโ€™ve done is forget to load customs tiles into the game and forget to add the config for minecart

#

Hmm ๐Ÿค” I usually just put in required in nexus and have people download the assets from the mod authors

vernal crest
#

They are not from other mod authors on Nexus. They are free-to-use asset packs from opengameart.org and itch.io.

rain basalt
#

Ah yeah then credits lol

vernal crest
#

Whenever I use tilesheet mods I do set them as a dependency, but that's not possible in this case.

#

It is incredibly difficult to find art assets that weren't made specifically for Stardew but still have a close enough aesthetic and correct size haha

uneven pollen
#

!modgroups

ocean sailBOT
vernal crest
rancid temple
#

Gourdv has new art SDVpufferparty

rain basalt
#

Iโ€™ve just started making my own when needed lol problem with maps is dealing with the 4 seasons

vernal crest
#

I wanted to avoid adding more drawing because I am very slow and there's only a week left

rain basalt
#

Week left for?

vernal crest
#

Mod contest

rain basalt
#

Ah Iโ€™m to busy updating to work on a new mod sigh ๐Ÿ˜” a week hmm ๐Ÿค” I do have one idea I might make in time lol - opinions add snow to roofs or no?

vernal crest
#

I like snow on roofs personally

rancid temple
#

Maybe on the tree and less sloped roofs a little

#

You can argue a well sloped roof on a heated building will shed snow

vernal crest
#

True, greenhouses might not collect snow

#

Never lived anywhere snowy so I have no experience

rain basalt
#

50:50 based on building lol

rancid temple
#

Yeah, there's enough conflicting world building that no snow wouldn't be jarring to me lol

rain basalt
#

Hmm I could add it as an optional asset that overlays the images

calm nebula
#

I love the teensy greenhouse

vernal crest
#

Vanilla just looks to me like the roofs turn blue rather than get snow on them

tiny zealot
#

you would likely not want snow to collect on a greenhouse. sunlight needs to get in

vernal crest
#

The tiny greenhouses are very cute

rain basalt
woeful lintel
#

Is there a way to remove options with the GMCM API or do I have to Unregister the mod, Register it again and go through all the options again?

lucid iron
#

frosty leaves on roof DokkanStare

rain basalt
#

Delete config

hard fern
#

ooh

#

cute

woeful lintel
# rain basalt Delete config

Damn, I'm gonna have to check if there's changes that require to change the GMCM page on reload, since not every reload changes it, and reloads can be pretty frequent because of CP

rain basalt
#

Basically I saw a jojo mod and was like junimos need love and then a friend said do it in pink as well so I have seasonal junimo and pink junimo assets

rain basalt
woeful lintel
#

I don't think we're talking about the same thing

rancid temple
#

Leroy is working on a C# mod as well lol

rain basalt
#

Hmm ๐Ÿค” yah not sure how gmcm works with c# I know there was a whole conversation on it last night

rancid temple
#

You have a lot more control in C#, just a matter of effort as usual

rain basalt
#

Yah I try to keep all my stuff CP so if you ever want to remove it it wonโ€™t break your save

rancid temple
#

Not sure what you'd have to be doing to make C# break your save, maybe if you were writing your own save serializer?

rain basalt
#

I know expanded chest had issues lol

lucid iron
#

I don't think u can remove any singular gmcm config

rain basalt
#

And there was a backpack mod if you removed it your backpack no longer accepted items

lucid iron
#

Might be able to do some custom config ofc

woeful lintel
#

OH NO

calm nebula
lucid iron
#

Into the sprite batch draw mines with thee

woeful lintel
#

I just realized there's no drop down option in the base GMCM API

calm nebula
#

Did enough reflection SDVkrobusgiggle

calm nebula
woeful lintel
#

I'm gonna have to search for one in CP's code

lucid iron
#

There is, it's just text option

tiny zealot
#

text option where you specify allowedValues becomes a dropdown

lucid iron
#

I forget the syntax all the time so I just go copy one from pathos' repo

woeful lintel
tiny zealot
rancid temple
#

CP is just dumbed down GMCM

tiny zealot
#
                cmapi.AddTextOption(
                    mod: this.ModManifest,
                    name: () => "PortraitStyle",
                    tooltip: () => this.Helper.Translation.Get("gmcm.portraitstyle.tooltip"),
                    allowedValues: Enum.GetNames<Portraits>(),
                    getValue: () => Config.PortraitStyle.ToString(),
                    setValue: value => {
                        var v = (Portraits)Enum.Parse(typeof(Portraits), value);
                        if (Config.PortraitStyle != v) {
                            ConfigForcePatchUpdate = true;
                        }
                        Config.PortraitStyle = v;
                    }
                );```
rancid temple
#

Everything you can do in CP you can do in C# and more

woeful lintel
#

oh, my bad, I just saw the argument

lucid iron
#

You can use enum here too

woeful lintel
#

ok, I still have my issue of updating the config page when stuff changes in the Furniture Packs

lucid iron
#

Could you just register separate gmcm menus on behalf of the packs

#

Kinda like how cp does that for all it's packs

woeful lintel
#

the formatAllowedValue argument is so based btw

woeful lintel
#

so if a pack changes (because of CP patch of the pack's data for example), it is necessary to update this config

rancid temple
#

Oh did you move to using custom data assets rather than content packs?

woeful lintel
rancid temple
#

Custom data assets add data assets to the content pipeline that you can edit with CP

lucid iron
#

Do you really expect item id to change in middle of gameplay yggy

rancid temple
#

Content packs are specifically for mods and I don't think you can do anything to them with CP

woeful lintel
#

what I do is having the Furniture Pack json loaded through GameContent.Load and AssetRequested so that it's possible to patch them with CP to make stuff like seasonal, weather dependant and such

rancid temple
#

Yeah, that's a custom data asset then

woeful lintel
#

it's still reads a json as a base tho, but yeah

rancid temple
#

Yeah, it's either that or you create a basic dictionary in code to load as the base, I prefer the default json

lucid iron
#

Can ppl also just target the asset directly with CP

#

Without needing a FF mod

woeful lintel
#

but I might make a dummy Furniture Pack for people to target without a Furniture Pack

lucid iron
#

But hm back to ur config problem

#

I think it's probably fine if u only add checks (if not already added)

rancid temple
#

Can you register and build your config when GMCM's menu opens? And I guess unregister it when it closes lol
(I don't know if this causes issues)

lucid iron
#

Cus most mods don't void out whole items they just void out ways of obtaining items

woeful lintel
blissful panther
#

(I really wish there was a way to indicate to SMAPI "hey, this CP pack uses this framework for features", with ContentPackFor being a singular thing. SDVpufferwaaah )

hallow prism
#

(isn't what dependency are for?)

rancid temple
#

helper.Events.Display.RenderedActiveMenu?

blissful panther
calm nebula
rancid temple
#

Not sure exactly what GMCM's menu is called though

lucid iron
hallow prism
lucid iron
#

It would be nice to see how many cp mods use spacecore for instance

woeful lintel
rancid temple
#

I hope it works, I don't know how soon things need to be registered and constructed with GMCM

velvet narwhal
#

This electrified jade is my favorite color by far SDVpufferwaaah

vernal crest
#

Do you think enabling DP on a mod counts as commercial use of assets?

velvet narwhal
hard fern
#

im so done i just redid my mod and only upon loading in, realized i was editing the content.json of my backup ver instead of the test ver SDVpufferchickcry

velvet narwhal
#

Dp is a weird slippery slope cause you could technically spend it all on charity

vernal crest
#

Slippery slope to what? Donating more money to charity?

urban flower
#

Hello @woeful lintel ! May I know if there's a way for the Animation Offset in FF to move to the left? So far I've tried using negative X but it's not working เฒฅ_เฒฅ

velvet narwhal
#

Commercializing

vernal crest
#

Doesn't that make it a grey area?

velvet narwhal
#

That's what I meant, brain no work good upon immediate wake up

vernal crest
#

Lol okay

woeful lintel
vernal crest
#

Ah okay, the Nexus DP rules state that assets must be permitted for commercialisation to be allowed in DP-enabled mods

#

Time to go buy some assets

velvet narwhal
#

Were they all buildings

vernal crest
#

Aaand remove some as well.

vernal crest
hard fern
#

๐Ÿ’€ i somehow forgot a whole 3 {

#

take 4

vernal crest
#

No, none were buildings. Decorations, critters, and some furniture.

hard fern
#

my stupid baka json

velvet narwhal
woeful lintel
#

@urban flower what is your animation offset? I just saw a stupid mistake in my code that might be affecting it

urban flower
vernal crest
woeful lintel
#

nvmd, I wrote is_animated = anim_offset.X + anim_offset.Y > 0, that's on me, I forgot to add absolute values

jolly bane
#

hiya so im making a custom character and i want to animate them fishing in an event, ive gotten as far as animating the part of the spritesheet showing the character fishing but cant for the life of me figure out how to also include the bobber part which is the frame below on the spritesheet. sorry if im not explaining this well!

woeful lintel
#

what the hell was I thinking about ?! it should be anim_offset.length > 0

velvet narwhal
#

oh wait not schedule anims

#

temporaryanimatedsprite* ^ or addtemporaryactor, and then change the size

woeful lintel
#

So, @urban flower, that's on me, it'll be fixed in FF 3.0, but I'm in the middle of a pretty big rework so it'll take some time before it's finished

urban flower
woeful lintel
#

thank YOU for reporting it!

woeful lintel
hard fern
#

๐Ÿ’€ i dont even want to think about how i kept warping myself to random locations while i was trying to take screenshots for my mod

brittle ledge
vernal crest
#

It's just for an event, so temp animated sprite can handle the bigger size easily

calm nebula
#

In an event is different

brittle ledge
#

Ohh I missed that part. Yeah in that case I'd use a temp actor and swap the two as appropriate.

blissful panther
teal bridge
#

That's because DP pays so little you may as well be doing it for free. rimshot

uncut viper
#

oh thank god those are the main 2 i use

vernal crest
#

Interesting. Nexus requires that assets in DP-enabled mods be permitted for commercial use but I don't know what their stance would be on tools.

blissful panther
#

I mean you're definitely not going to be including Rider, so that sounds okay to me!

hallow prism
blissful panther
#

Now I'm tempted to start suggesting people try out WebStorm as their JSON editor of choice because of how much nicer their tools format JSON automatically than VSCode. SDVkrobusgiggle

vernal crest
hallow prism
#

in the same way that i have specific permission on some of my stuff to say "you can't directly use, but if you have this as a dependency, it's ok to enable DP"

vernal crest
#

I just looked it up because of needing to clarify for my asset use.

hallow prism
#

yes wording is hard

#

what i mean is they may have a generic policy but may be ok with licenses and such thay have specific mention of "it's not ok to use for commercial but getting donation is fine"

teal bridge
#

I've never had trouble with VSCode's JSON formatting. Or even Notepad++ for that matter.

hallow prism
#

like having something to avoid having holes in their rules, but accepting stuff when the stuff you have have more detailled rules

rancid temple
uncut viper
#

donations are separate from DP in nexus's eyes

hallow prism
#

... i mean is it so unclear what i try to say?

blissful panther
#

It is more RAM heavy, though.

uncut viper
#

i mean they are literally different concepts under nexus's website, though. there are separate rules for DP and donations. the use of different terms is important

#

so i guess the answer is yes, it was still unclear to me

rancid temple
#

Does any other site offer a system like DP? Feels like a terminology issue specific to Nexus lol

hallow prism
#

maybe nexus care about having rules to avoid abuse but will be fine with a license or whatever saying "hey you can earn DP" but don't expect everyone on the internet to know about DP

uncut viper
#

curseforge, possibly, but i havent looked into it

hard fern
#

๐Ÿ˜“ now i just have to wait for nexus to finish scanning my files

velvet narwhal
#

tbh i have no idea where it'll draw the line between 'tool use' and 'shipped with the mod'

teal bridge
#

Sorry, it won't let me post the actual correct link for some reason, you have to scroll down...

velvet narwhal
#

the toolbox?

teal bridge
#

To the section:

Can I use the IDE for free to create educational courses and stream content while earning money through course sales or advertisements in the stream?

velvet narwhal
#

the only times i'll read a terms of service, my tools

vernal crest
#

Ah the content creators bit

teal bridge
#

(Their answer doesn't apply only to educational courses, even though the question is worded that way)

velvet narwhal
#

"earn commissions from ads" i mean, that's dp right?

blissful panther
#

Specifically from https://www.jetbrains.com/legal/docs/toolbox/license_non-commercial/:

2.3. โ€œCommercial Useโ€ means any use of the Product to develop commercial products (products distributed or made available for a fee or used as part of the Customerโ€™s business activity) or to provide paid services. Creation of audiovisual content, where the use of Product is only demonstrated by the Customer for educational or other purposes, is not considered Commercial Use, even if the content is made available to the public for a fee, indirect profit, or otherwise in the context of the Customerโ€™s business activity.

#

If you don't charge a fee for your mod, you seem to be 100% in the clear.

#

Regardless of donations on top it seems.

velvet narwhal
#

oh, so nexus rules, so we're free

blissful panther
#

Or if you do commissions, which is fair.

lucid iron
#

what r some benefits of webstorm for json

blissful panther
#

Honestly really just the nicer auto-formatting.

#

For example...

lucid iron
#

i have 1 particular problem with vscode jsonc which is that it keeps wanting to break up list items into own lines

#

but it is not enough problem for me to give up ctrl+p so

teal bridge
#

If you are, you can configure the line length for JSON arrays.

hard fern
#

hoooray, mod updated... SDVpuffersweats now can i pretend my other ones dont exist?

blissful panther
lucid iron
blissful panther
#

Notice it automatically adding the comma when it inserts the curly braces there, for instance.

#

Because it knows there's something after, it knows it needs to add a comma, and just does it for you.

velvet narwhal
#

vs22 looking at me disrespectfully with a green squiggly instead of just inserting the comma

hard fern
#

i didnt know whether to include the 1.6 items or not in the images so i just left it out ;-;

velvet narwhal
#

i don't think nexus cares about spoilers, unless you meant the embed would've had 1.6 items

hard fern
#

on the nexus page

velvet narwhal
#

oh nexus gives 0 fucks

hard fern
#

.<

#

i'll probably go back and add it then

#

i havent even seen anything new in 1.6... ๐Ÿ’€

rancid temple
#

Yeah, it would just be a matter of if you're trying to be considerate of people who still haven't done the 1.6 stuff

vernal crest
#

I was assuming Forsy cared about mod users, not Nexus

velvet narwhal
#

tbh if you have the 1.6 compat tag on your nexus page, they know

hard fern
#

i'd say it's pretty minor? but i wanted to show it off lol

velvet narwhal
#

i give my last bit of hope to people who are still on 1.5 that they only search through the 1.5 tag

hard fern
#

minor as in the image alone gives little indication of what exactly the thing does

vernal crest
#

I would not search the 1.5 tag if I was on 1.5 because mods are not tagged consistently enough

hard fern
#

๐Ÿ˜“ i forgot how to embed images into the mod description

vernal crest
#

The one time I have use any version tag was to find NPCs that had been updated to 1.6 via optional files so their last updated date was pre-March 2024 but they were in 1.6 format anyway

#

Woo, finished my credits document. I got asset packs from 12 different creators!

lucid iron
#

@pine elbow Stardew Valley/StardewModdingAPI.dll

#

if you installed it

#

PecoWant you dont have to include reference to it though, use ModBuildConfig instead

lucid iron
#

?

#

are you doing a content patcher mod

#

pls stop pinging me on reply im right here monS

#

well im not sure how you are expecting to use smapi then, if you arent doing C#

#

did you actually want the smapi.io web api?

velvet narwhal
#

i'm lost here, are you trying to make something crazy like a lua

rancid temple
#

Wouldn't you have to make a mod that accepts lua and converts it to something usable?

lucid iron
#

there's no support for lua in smapi, need mod to let you do lua yea

#

there was a wip but no clue what became of that

velvet narwhal
#

you'd still effectively have to do c# and translate

#

was pytk lua?

lucid iron
#

what kind of mods did you want to make

#

many simple mods dont need any programming

velvet narwhal
#

hell a lot of complicated mods don't need c# if you wanna pack on the frameworks

rancid temple
#

Pytk was written in C#, but I dunno what it accepted

#

Now it's just a bunch of empty files lol

lucid iron
#

i think tmxloader had a feature where u could lua a tile action

#

it's wild blobcatgooglyblep

#

but it's kill so not really within considerations

rancid temple
#

Last time I even looked at lua was when I was trying to make mods for WoW and I didn't lmao

velvet narwhal
#

i was just gonna pull it up to see how it was using lua SDVkrobusgiggle

lucid iron
#

you cant make sdv mods with python either

#

if u wish to directly change the game's code, you need to use C#

#

what you can do is to write a python interpreter in C# i suppose

velvet narwhal
#

you can make a python to c# translator but yknow, that sounds like more work than it's worth

hard fern
#

your friends dont need to understand C# if they're just gonna install it? (unless im misreading)

lucid iron
#

my dude/tte please stop pinging me

velvet narwhal
tiny zealot
#

listen, i want to wish you good luck on your project, but whatever you have in mind to enable your python and/or lua mods without writing any C# is going to be way more work than just writing the C#

hard fern
#

C# doesnt look too complicated.. granted ive never worked with it before

rancid temple
#

I'm very confused by the making a mod for SMAPI without using C# lmao

hard fern
#

same

#

????

#

???

#

man im confused

tiny zealot
#

you don't need to call your... whatever it is anything Core. in fact, i recommend against it

hard fern
#

SDVpuffersweats all this to avoid C#

lucid iron
#

well u can follow the usual convention with vendors bundling their own py interpreter bolbpopcornhat

#

sdvpy

tiny zealot
#

you'd still need to get it hooked into the game, though, so have fun reimplementing harmony (without using C#)

lucid iron
#

too bad platonymous took pytk already

hard fern
#

๐Ÿ’€ targer

tell me why i notice this AFTER i copy pasted this line like 20 times

velvet narwhal
#

python toolkit slaps hard

velvet narwhal
#

no, you've become French

hard fern
#

nothing a good ol find and replace cant fix

#

but still

#

DX

lucid iron
#

there's a content patcher json schema somewhere right

rancid temple
velvet narwhal
#

i only know of the standard json link

rancid temple
#

Lives permanently on my ditto clipboard lmao

lucid iron
#

itll catch things for you

velvet narwhal
#

i should be using this, huh

lucid iron
#

there's also one for i18n https://smapi.io/schemas/i18n.json

rancid temple
#

I would love a schema that delves deeper into more things, but I don't know anything about writing schema lol

velvet narwhal
#

allOf, interesting, i've never noticed that feature SDVpufferthink

lucid iron
#

oh i think newtonsoft.json has schema generation feature

#

i was gonna try it later PecoWant

velvet narwhal
#

wait

#
            "title": "Alias token names",
            "description": "Defines optional alternate name for existing tokens. This only affects your content pack, and you can use both the alias name and the original token name. This is mostly useful for custom tokens provided by other mods, which often have longer names. Each entry key is the alias name, and the value is the original token name.",
            "type": "object",
            "additionalProperties": {
                "type": "string"
            }
        },```
this was here?
#

oh this probably means the c# mods

tiny zealot
#

yeah, but you can't use the alias inside your DynamicTokens section (unless that got fixed)

velvet narwhal
#

nevermind, not button's token yoinker

teal bridge
#

lol, the day I install a python mod will be the day I go into the office drunk, pantsless, wearing a tinfoil hat and shrieking about secret canine overlords.

rancid temple
#

Is that not a normal Tuesday for anyone else?

tiny zealot
#

i, for one, etc. etc.

velvet narwhal
#

sounds like a wednesday to me

lucid iron
#

The overlord demands pats

tender bloom
#

Can we have feline overlords too? Fluffy ones

rancid temple
#

No love for the wet chicken slaps?

next plaza
teal bridge
#

No.

jolly bane
velvet narwhal
jolly bane
#

awesome thank you!!

teal bridge
#

I ๏ฟฝ Unicode

ashen goblet
#

It may sound silly, but I'm not sure how to answer this

ashen goblet
#

Anybody able to quickly explain?

rancid temple
#

You missed all the fun atra, person deleted all their messages already lol

vernal crest
#

Looks like you have to animate the temp actor after adding them?

velvet narwhal
ashen goblet
#

Alrighty!

rancid temple
#

I always just make it match the version in my manifest

fossil osprey
velvet narwhal
#

we're not really sticklers on semver, but it is nice to understand

velvet narwhal
#

as pathos says, "as long as the version number goes up"

ashen goblet
#

This is all confusin'

#

But thank you

rancid temple
#

I mean, it can't hurt to learn, but it isn't necessary

lucid iron
#

Just name your stuff after snacks like how android do it

ashen goblet
#

What is the difference with Article and the Detailed Description?

#

Is the Article for like.. advertisement?

calm nebula
#

Ignore articles

fossil osprey
#

That's a big convention, no need to follow it by the letter for little projects, but it's nice to know for bigger things ^^

calm nebula
#

No one ever reads them

velvet narwhal
#

you won't need articles if it's a small mod

lucid iron
#

Articles are on a separate page, u can use it like docs but meh

rancid temple
#

Article is a like a private journal, because you can put whatever you want there and nobody will ever see it

calm nebula
#

(Some people try to put docs there but (a) bbcode sucks)

ashen goblet
#

Is somebody able to check if the website is functional n' all in that case!? :D
(No idea if I'm allowed to send links, but I do apologize if it is wrong!)
https://www.nexusmods.com/stardewvalley/mods/28823/

Nexus Mods :: Stardew Valley

This mod consists of a newly added character, which happens to be the author's partner. This effortful mod was created to serve as an anniversary milestone gift--an creative way of surprising the auth

rancid temple
#

Fun fact: users are actually deathly allergic to reading documentation

#

The only thing they can read is when you directly message them

velvet narwhal
rancid temple
#

Lmao

lucid iron
#

What is reading

rancid temple
#

the what are you eating dread when your cat walks into the room and you start hearing a crunching noise

lucid comet
#

nah, you just don't get to see the users reading documentation bc they either found a solution or gave up bc reaching out is too much effort ๐Ÿ˜‰

next plaza
velvet narwhal
# jolly bane awesome thank you!!

addTemporaryActor <NPCNAMEfake> <width> <height> <x position on map> <y position on map> <facing direction>
you'll also need your original npc if you're transitioning OUT of the fishing animation
i would highly suggest just making a dupe sheet so that you don't get your actors confused
animate <NPCNAMEfake> <flip true/false> <loop true/false> <frame duration in miliseconds per frame> <which frames you're using>
the "which frames you're using" means the sprite index much like how you use it for showFrame <NPC>

velvet narwhal
next plaza
#

Donโ€™t mention that, blueberry might bring up SpaceCore bugs being reported on LoC again

velvet narwhal
#

don't you have your own subsection on smapi?

next plaza
#

I sometimes get messages about other mods too on SpaceCore

#

SMAPI gets so many unrelated questions last time I lookedโ€ฆ

lucid iron
#

I gotten a bug report that straight up asked me for mod support for complete different mod LilyDerp

#

Can't imagine what chaos must go down in bug report sections of bigger mods

next plaza
velvet narwhal
#

you only listen to the bug reports in this channel, understandable

next plaza
#

Well, sometimes the nexus comments too

#

Though Iโ€™ve been slacking on responding to those lately

blissful panther
#

I should start only accepting bug reports via netcat.

next plaza
#

But yeah, the chance of an issue getting handled is astronomically higher if I get pinged by someone here

teal bridge
next plaza
#

Yeah it makes a lot of sense for frameworks

uncut viper
teal bridge
#

You should be proud, you're famous.

#

Well, infamous.

velvet narwhal
#

it's understandable that i got the bugreport of BETAS because i'm the main consumer, but the fact that it was neither of us still makes me laugh

teal bridge
#

Never overestimate the ability of users to file a useful bug report, or to file it to an appropriate place.

vernal crest
#

How easy is it to delete comments on Nexus? Because this all makes me feel like I will want to be very aggressive about deleting comments.

teal bridge
#

If it is possible to fuck up (and it is always possible to fuck up), then somebody will find a way.

lucid iron
#

I mean nexus isn't your main social media

#

Ppl can post whatever they want bolbpopcornhat

velvet narwhal
#

i disabled comments on my stan-inflammatory mods just because people instantly commented instead of reading and i got tired of that

vernal crest
#

Excellent. Ruthless moderation it is (in the unlikely scenario I get enough users to make that necessary lol)

next plaza
#

Half the comments on GMCM's first page are people with the PowersTab/OptionsTab error

#

One of the comments is asking how to install Automate

teal bridge
#

I don't think you can delete individual comments from your own mod threads. There's a "hide", if that's what you mean.

velvet narwhal
#

i just automatically assume the big names have their notifications turned off on their mods on nexus

teal bridge
#

You can hide the whole thread or disable comments entirely, yes, but not really moderate effectively.

#

(And yes re: notifications turned off; it's really too bad we can't selectively turn them on/off per thread)

velvet narwhal
#

i might suggest in the nexus discord about whether the article commenting can be identified, because i see "user has commented on this mod" when i know for a fact i have comments turned off so i go around like "WHERE?"
any iteration, is it the article? is it on a bug report?

next plaza
ashen goblet
#

Are you able to edit the mod's description in Nexus?

velvet narwhal
ashen goblet
#

Where is that doable? I'm somewhat strugglin' to find the edit button

velvet narwhal
#

or even in your "My mods" section

uncut viper
#

speaking of unhelpful nexus comments/bug reports...
"This is a great mod [..] However, it stopped accepting all controller input for me."

literally the entire mod:

Helper.Events.Input.ButtonPressed += (sender, e) => { if (e.Button is SButton.RightStick) Helper.Input.Suppress(e.Button); };

sorry buddy i dont think this one is my fault

velvet narwhal
ashen goblet
#

Thank you

velvet narwhal
#

i can't think of any other mod that deals with controller keybinds

next plaza
#

There's focustense's mod

calm nebula
next plaza
#

(And my old mod that is basically superceded by that mod)

uncut viper
#

i just told them i assume its a Steam Input issue, since sometimes steam also just doesnt accept i have a controller there if its not already on with steam input turned on before i launch the game

rancid temple
#

Steam input is the devil

velvet narwhal
#

oh true, sometimes steam doesn't recognize my ps4 controller because it wants xbox only, OR or, it might be a windows thing

rancid temple
iron ridge
#

why do I get a bunch of errors from pathos' mod repo?
it's all mostly just things like

public List<TextOperationConfig?> TextOperations { get; } = [];

outputItemIds = [recipe.CraftedItemIdFeminine];

public static void DrawTab(SpriteBatch spriteBatch, int x, int y, int innerWidth, int innerHeight, out Vector2 innerDrawPosition, int align = 0, float alpha = 1, bool forIcon = false, bool drawShadow = true) 

it builds fine, just errors pre-compiling

next plaza
#

If that's the issue you probably have the same issues with SpaceCore for example

teal bridge
iron ridge
#

could that be done from the visual studio installer? or do i need to specifically download the .net sdk and go from .net's site

teal bridge
#

Every button is right stick.

next plaza
velvet narwhal
#

(is it newest lang ver in the .csproj? iirc that's what the { get; } = [] was)

teal bridge
#

VS Installer should install the required version of the SDK but only if you have the right features selected.

iron ridge
#

oh it has a few

next plaza
teal bridge
#

Some instances of people installing VS but not enabling C# development...

#

But when in doubt, just download the SDK directly.

iron ridge
#

i might just try updating visual studio

#

it might do the things at the same time

#

worst case i just actually update .net

next plaza
#

I'm so used to reading Elizabeth as the only one with "Dr" at the beginning of their username that I keep getting you and them confused, focustense

velvet narwhal
#

worst case you now upgrade to .6

next plaza
#

Seasonal nick changes + role colors really do a number on my pattern recognition

teal bridge
#

Well, take comfort in the fact that it's only temporary.

brittle ledge
#

Is there a list of which diacritics/non-English letters the English version of the game will accept?

next plaza
#

SDVPufferThink You could probably parse it out of the content files somehow, but I don't think it's documented anywhere

teal bridge
#

I will revert when I take off the Nick Riviera costume.

velvet narwhal
teal bridge
next plaza
#

Wearing costumes? What's that?
This message brought to you by the low self-esteem gang

velvet narwhal
#

tldr tia's trying to help me figure if the english will load this properly:
Mi ฤ‰iam ..isas scivolis kiel longe Mi estas efektive ฤ‰irkaลญir sur ฤ‰i tiu ekzisto, mi ne memor mia naskiฤo, mi nur simple fariฤis.

brittle ledge
#

(Also I'm curious SDVpuffersquee )

teal bridge
#

It was kind of a joke... Nick Riviera "costume" is just a lab coat and slacks.

velvet narwhal
#

lemme just... readjust stardrop yet again

uncut viper
#

i mean the font.png looks like it has all those diacritics at a glance, dunno if im missing one tho

#

actually i dont see this one: ลญ

next plaza
#

I'm looking at the pre-baked content file for the spritefont but I don't know how to tell what characters are in these ranges

#

If I'm reading correctly (and the HTML entity matches what's here) that character is not included

#

For english

teal bridge
#

I don't think XNA/MonoGame has any support for standalone diacritics, so just looking at the font should cover it. If the character, with diacritic, is present, then it'll work, otherwise it won't.

brittle ledge
#

Huh. SDVpufferthinkblob I would've expected the u to be there and the g to not tbh

velvet narwhal
teal bridge
#

Impressive.

next plaza
#

Here's what's in SpriteFont1.spritefont:

    <CharacterRegions>
            <CharacterRegion><Start>&#32;</Start><End>&#255;</End></CharacterRegion>
<CharacterRegion><Start>&#376;</Start><End>&#376;</End></CharacterRegion>
<CharacterRegion><Start>&#8212;</Start><End>&#8250;</End></CharacterRegion>
<CharacterRegion><Start>&#8364;</Start><End>&#8364;</End></CharacterRegion>
<CharacterRegion><Start>&#9825;</Start><End>&#9825;</End></CharacterRegion>
</CharacterRegions>
uncut viper
#

oh... that makes sense oops i was just looking for the circumflex but not paying attention to which character it was over

brittle ledge
next plaza
#

The u is 365 according to a quick google search

uncut viper
#

theres circumflex aeiou but not c

brittle ledge
#

(I am surprised the English version includes any though tbh since, well, they aren't used in English)

uncut viper
#

basically if you need accents on non vowels then english does not have your back

next plaza
uncut viper
#

english does borrow a lot of words that have accent marks tho

next plaza
#

And SpriteFont1 is indeed Game1.dialogueFont

teal bridge
#

There are different fonts for different languages, but yeah, non-English characters in the English font are liable to look not awesome.

brittle ledge
#

Ahhh, makes sense

teal bridge
#

I guess the Chinese and Korean languages don't help much here.

next plaza
velvet narwhal
next plaza
#

There's a reason I have very few clothes

brittle ledge
#

Mood

next plaza
#

(I mean, I had tons pre-transition from my parents buying stuff for me... but post-transition I liked that stuff even less than the stuff I have now... though most of the stuff I have now is more disliked because it's on me in particular than the clothes themselves)

teal bridge
#

I don't have a lot of clothes because (a) I'm cheap and (b) don't like having to start every day with complicated decisions.

#

There are plenty of good reasons for not having a gigantic wardrobe.

tiny zealot
#

i am more or less a uniform guy but it's not about reducing cognitive load or einstein's shoelaces or whatever. i just found clothes that i like, so i bought a bunch of them so i can wear them every day

brittle ledge
#

I'm just short and fat so nothing fits, but also since I'm old, I don't care if I'm pretty anymore SBVLmaoDog

teal bridge
#

(images of Marge Simpson flipping through an entire shelf of green dresses)

next plaza
#

If I liked my body better I would most likely be into clothes more

iron ridge
#

does Game1.content include files loaded via content patcher?

vernal crest
#

I stopped caring about clothes except for comfort when my fibro doubled down. I'm too tired to care how I look.

iron ridge
#

how would I get a list of all things loaded?