#making-mods-general

1 messages · Page 261 of 1

candid stratus
#

Probably in CharacterCustomization. I do know you can do a bunch of reflection to hijack variables and such, but it was always a bit too menacing to try out

lucid iron
#

Aren't u working in security or something Dokkan

candid stratus
#

Me?

lucid iron
#

This is just break into house from other side.

#

Yeah idrm if it was u or someone else

gentle rose
#

chu: code crimes and irl crimes are kind of the same, if you think about it

candid stratus
#

I've only made a full-sized self-driving racecar, a factory engine, a flight simulator and an infrared image processor

#

Never went more high level than C++ though

#

Well I guess I made minecraft plugins 10 years ago

gentle rose
#

on an unrelated note, I have decide that the two genders are adding an uber quote via the app command and adding an uber quote by reacting 💬

lucid iron
#

It's not about high level or low level tho

#

The basics of programming carries over

candid stratus
#

I've never encountered reflection anywhere before

lucid iron
#

I feel like the only person in this server that i know for sure writes C# for living doesn't actually play this game

gentle rose
#

…is it atra

rancid musk
#

I don't write C# for a living, but my day job does involve reflection and reverse engineering.

lucid iron
#

(crumble)

brittle pasture
#

it's not atra. They write some more cursed domain specific languages

candid stratus
#

laughs in assembly

#

sorry I mean cries

rancid musk
#

I expect atra would much prefer writing C#, but is stuck working with cursed nonsense.

candid stratus
#

cries in assembly

brittle pasture
#

I write JS for a living, which is only a step above that atra does in terms of cursedness

gaunt orbit
#

Harmony uses reflection but it's a whole other can of worms

rancid musk
gentle rose
#

my ladder of cursedness has frontend dev on the top and anything else far, far below it

rancid musk
#

Frontend wouldn't be as cursed if we didn't have to deal with users

gentle rose
#

faaaar below it

#

I have an allergy to magic numbers

candid stratus
#

I'd prefer Matlab over front end

tawny ore
#

CharacterCustomization has this:

titleMenu.createdNewCharacter(this.skipIntro);

So skipping the intro only involves setting the CharacterCustomization.skipIntro of TitleMenu.subMenu to true.

gentle rose
#

I respect frontend devs. from a distance

candid stratus
gaunt orbit
#

frontend is fine until js

gentle rose
#

nono, css has just as much room for criminality

#

and html5 has brought html way forward in its own right

tawny ore
#

I feel like about 2 pages (relative to my screen height) of #programmers-off-topic is a good sign that things could probably go there

gentle rose
#

css animations are turing-complete anyway I have to go eat dinner now, byeeee

gaunt orbit
#

I love working with css and html actually, they make a lot of sense to me. Only annoying thing is when browsers have render bugs

#

for a while chrome had this weird issue with fixed backgrounds and scrolling containers, not sure if it ever got fixed

undone hawk
#

Made seasons based on Location (which therefore makes it game accurate)

#

Currently working on formatting

gaunt orbit
#

Location data has a DisplayName field that you may find useful

undone hawk
#

Good call!

#

I was thinking of using that

patent lanceBOT
gaunt orbit
#

the layout looks nice so far

undone hawk
#

Pond info looks better I think! The numbers are supposed to have a dash (minor thing I already fixed) but it shows min to max, percentage chance, sale price, and population required!

signal needle
#

Hello humble modders. Does anyone have like... all of the character dialogue extracted

#

I swear its for a good cause

rancid musk
#

As in like... extracted from events and the like?

signal needle
#

Yeah, just all or nearly all character quotes, in something that I could parse easily

lucid iron
#

!unpack

ocean sailBOT
#

Follow this guide to unpack the game's content files in order to see and explore how the game data is structured.
It's helpful when making your own mods, or just to learn about how the game works!

lucid iron
#

It's not that nice tho i think event dialogue is right there with the event script

#

The daily dialogue is much nicer

signal needle
#

What do you mean by daily dialogue

hard fern
#

Like

#

The regular dialogue

#

When you talk to an npc each day

#

Compared to the dialogue you see during heart events

#

They're written completely differently

signal needle
#

Oh yeah, that's even better

gentle rose
signal needle
#

It's difficult to explain, but for part of it, it would be useful to have basically a list of SDV quotes

undone hawk
#

I have realized I should also indicate in my HUD if a fish isn't catchable due to your current fishing level. I initially abstained since the only fish it matters for are the legendary fish (and the Lava Eel but ONLY in the Caldera), but a lot of modded fish have level requirements

#

I'm gonna use an arrow for that (Up Arrow)

iron ridge
#

you could just, assuming you don't want events as chue said, go through each file in Characters/dialog that's the english version (no dashes), and quantify each key, parsing it [[Dialogue#Format]] and just ignore all the fancy stuff and split on the #s

#

oh
[[Modding:Dialogue#Format]]

brittle pasture
hard fern
#

😭 it's always the king salmon

sour sleet
#

Ok so with Custom Locations and when travelling to a custom map via bus, how does the player travel back?

lucid iron
#

Have another bus back

hard fern
#

Up to the mod author I'd say, usually it's exactly what chu said

hot gale
#

Central Station can place a kiosk via map property

sour sleet
#

So I need to add a ticket machine and a bus?

hot gale
#

the bus is purely visual typically, you can build a warp into the stairs of the bus, or make a ticket stand with central station etc

sour sleet
#

Awesome, thanks Kai

hard fern
#

ive been looking at too many detective dramas lately, and i got the urge to sprite one of those fancy trains that crimes happen on. But with no crimes

candid stratus
#

I think you should add crimes to them

brittle ledge
hard fern
#

I was actually thinking of those fancy overnight rooms

#

(i wonder if a train will be too much for me... Well, if i stick it in a tunnel I'll only ever need to make part of it)

#

And i can just have that train connect to central station

lean river
#

Starting to make my NPC aa

rigid musk
#

I forgot I was testing baby sprites with sunglasses... @ornate trellis I feel like you'd enjoy this

ornate trellis
#

ayooo

#

look at this cool dude

lucid iron
#

Little man

faint ingot
#

You made a mini qi

fierce vault
rigid musk
#

Void gave me the idea for the shades a bit ago and i couldnt help but try to do it myself

lucid iron
#

Radical/10

fierce vault
#

Config options can be pretty funny sometimes!

fierce vault
rigid musk
#

There are so many ways to do it, according to CA there's not a 'right' way

fierce vault
#

That’s nice to know!

rigid musk
#

A lot of people use 'chee' (as per asian origin) I personally do 'key'

fierce vault
#

Quee, Quu, Key….

rigid musk
#

Another option is 'Q I' (like pronouncing both of the letters)

fierce vault
#

Hmm, never thought about that one. It’s neat that everyone can be so inconsistent with it.

rigid musk
#

cursed child happenings

tawny ore
#

According to my wireless charger, it's pronounced Chi like __Chee__se.

ornate trellis
undone hawk
lucid iron
#

So the official cn translation uses 齐

#

Which is actually just ordinary chinese last name lol

sour sleet
#

Is this correct for spawning a ticket machine with CS? It isn't appearing on my map in game and seems to have invisible building tiles

lucid iron
#

It's not an action is it

brave fable
sour sleet
#

I thought it was, and the CS Docs don't specify what type to put

lucid iron
#

Yeah it says map prop

#

Not tile prop

sour sleet
#

This is a map property

lucid iron
#

Pathoschild.CentralStation_TicketMachine

#

This should be what's on left side

sour sleet
#

Ahh ok and then the right hand side is 26 23 Bus?

lucid iron
#

Then the rest of the args on right side

uncut viper
#

the name of the map property IS the type

sour sleet
#

I understand now

lucid iron
#

Hm doesn't this mean a map can only have 1 ticket machine LilyDerp

uncut viper
#

does it not accept multiple coords

lucid iron
#

And button needs to suffer ever more

uncut viper
#

its nice of you to think i still wanna work on that mod

sour sleet
#

Pretty sure it just accepts 1 set

uncut viper
#

(itd be easy to add support for it anyway)

lucid iron
#

Well it's not a big deal

#

There's the tile data way too

lucid iron
uncut viper
#

you're underestimating just how infeasible the blocking task is

lucid iron
#

I'm under impression it's more disasterously unfun than infeasible did that change

uncut viper
#

thats the infeasability of it

lucid iron
#

Fair enough

uncut viper
#

patching ~370 functions before the end of the month is just. not doable by any human person

#

and there is no heuristic i can use to automate it in a nice way that works at all consistently or even close to correctly

brave fable
#

what was the goal here again exactly

#

i think i'd give up on a task if i had to do 3 of something

uncut viper
#

the goal is i need to move the position of a TAS after it is created, UNLESS that TAS was specifically created on something in particular

#

for example the TAS for the traveling cart's little chimney thing. that is given hardcoded coordinates in the forest to be created at

#

but the TAS for when you swing a tool, thats created on the farmer's position

#

i need to know to move the traveling cart TAS, but not the farmer tool animation TAS

#

i know every function that adds a TAS to the current locations TAS list, but unfortunately many many of them create many TAS's inside the same function, where some are hardcoded and some are relative

#

i would either need to patch every single one or manually look through every single one and hardcode exceptions to the TAS's that need them

brave fable
#

dare i ask what the original use case was

velvet narwhal
#

i have been summoned, this is a very blank slate of a template and isn't really meant to be a guide

brave fable
#

this sounds horrifying

uncut viper
undone hawk
#

Oh god?

#

That looks so wrong it hurts my brain omg

uncut viper
#

TAS's are literally the only significant hurdle. maps, schedules, and events are all mirrored and those are most of the things a user would even notice

#

i need to mirror a TAS's position on the map after creation, you see

undone hawk
#

Omg TAS my old enemy

brave fable
#

that really stings, it looks so close to perfect already

uncut viper
#

it is very disappointing genuinely SDVpufferpensive

rancid musk
#

-# Me in the background wondering "why is everyone talking about tool assisted speedrunning?"

dusk mulch
#

Ohhh I think I understand C# now... maybe

rancid musk
#

It took so long to realize you meant temporary animated sprite

rigid musk
lucid iron
#

what do u call temporary animated sprite in ur brain then

brave fable
#

'those bastard parameters'

#

miserable little pile of unlabeled args

rancid musk
#

Sprites.

dusk mulch
#

C# CANT TAKE DECIMALS?! WHAT KIND OF LANGUAGE IS THIS?!

uncut viper
#

decimals are floats

dusk mulch
#

oh

uncut viper
#

ints are integers. integers dont have decimals

sour sleet
brave fable
#

you want float myfunnydecimal = 3.01f or double hjahadouble = 1.0000001d

#

decimal types aren't strictly interchangeable for technical reasons

#

you'll run into int/float/double collisions a lot when using vector2, rectangle, etc. types

gentle rose
#

you can also technically skip the f or d at the end if you’re explicitly assigning it that way iirc

uncut viper
#

float64 my beloved

brave fable
dusk mulch
#

YAYYYY I GOT IT CENTERED

gentle rose
dusk mulch
#

it took me 3 days to learn that functions need to be defined in the public class

gentle rose
#

what do you mean?

hard fern
#

Does everything get rounded down then

uncut viper
#

int division lops off the decimal

hard fern
#

If decimals are punishable by death

dusk mulch
#

public class Game1 : Game

hard fern
#

O

#

I see

dusk mulch
#

i forgot i am using monogame as well, forget anything i said

brave fable
#

if one or the other is a decimal then the result will be a decimal tho, 3f /2 or 2 / 3f

#

there's a lot of these relatively basic gotchas you need to iron out

gentle rose
# dusk mulch ` public class Game1 : Game`

what do you mean “all functions need to be defined in this class” though? I fear you may be missing some understanding of how classes and methods work from the sound of it

#

and also access modifiers

dusk mulch
gentle rose
#

and I know, I was here when you said you were doing that earlier

dusk mulch
#

I learn in my own way, as others do. I do understand how it works even if it doesn't seem like I do. I am not trying to be rude here by the way /nbr /lh

uncut viper
#

but functions do not need to be defined in a public class

dusk mulch
#

This is what I meant

uncut viper
#

those also arent functions

gentle rose
#

yeah, and like we said, methods do not have to be defined in public classes

#

true, there’s also only the very beginning of one single method/function

hard fern
#

(oop language?)

gentle rose
#

what I’m trying to say is that you seem to be refusing to learn the basics at all, which is going to hurt you in the long AND short runs, because without them you really can’t fully understand what you’re even trying to do

dusk mulch
gentle rose
# hard fern (oop language?)

Object Oriented Programming language, it’s the kinds of languages that are built on a hierarchy of classes basically

hard fern
#

Ah that makes more sense

gentle rose
#

it’s a full theory but the tl;dr is that C# is one of them haha

hard fern
#

Im pretending i know what half of this means haha... I'll have to figure out c# some point so i can make my map foggy all the time

gentle rose
dusk mulch
gentle rose
#

Are you saying you’re using the tutorials on that page? Because personally I’m good, I already did my time learning the basics (and not basics) of OOP

dusk mulch
#

I am using monogame and that page

gentle rose
#

that page is an index. I’m recommending you start with one of the actual tutorials on it.

hard fern
#

What would be a simple first C# mod 🤔 i don't really know what counts as simple vs complex

gentle rose
#

I guess it depends how simple you mean? if you’ve done no coding before, all modding might be a tiny bit too complex. The simplest possible C# mod is probably one that just prints “Hello World” to the log once, I guess?

hard fern
#

Hm, how complicated would weather be? Like separate weather from the rest of the town

gentle rose
#

I have no clue ngl but it might be as easy as a content patcher thing?

brittle pasture
#

that's doable in CP with location context

hard fern
#

Hm, there's no option for "foggy" weather though is there?

brittle pasture
#

look into cloudy skies

#

framework for custom weathers and effects

hard fern
#

Ill check it out

#

That saves me some trouble 😅

brittle ledge
#

(keep in mind fog and mist tend to be processor intensive, so you probably want to use sparingly kyuuchan_nod2 )

hard fern
#

Ah...m

#

Well ok I'll abandon that idea immediately

#

My poor laptop

brittle ledge
#

OH if you're wanting to have a location with vanilla weather that doesn't match PT, that's doable in CP!

#

VMV does it.

hard fern
#

Rain isn't as intense though, is it?

brittle ledge
#

Not as intense, yeah kyuuchan_nod2

hard fern
#

Great i can curse my npcs with perpetual rain instead

rancid musk
#

Strictly speaking a rain particle layer is more CPU intensive than a translucent fog texture layer.

deep cypress
#

Those hearts, Item #930, has anyone ever had any luck adding them?

rancid musk
brittle pasture
deep cypress
#

Yes, am trying to make them drop when u break bushes or barrels with the link shirts.

#

They don't seem to add like they do when u kill a slime.

brittle pasture
#

it's just Game1.createItemDebris right

deep cypress
#

That might be the problem, I am using Game1.createMultipleObjectDebris

brittle pasture
#

I don't think that matters

#

maybe your coords are wrong

brave fable
#

are fog and mist particularly processor heavy? the sprite overlay just seems equivalent to having another back layer over your map.

lucid iron
#

i thought rain's the bad one

rancid musk
#

I wouldn't think it's heavy. Not like shaders.

lucid iron
#

as far as "just draw sprites" kind of weather effect goes

rancid musk
#

Rain has lots of individual particles and they all get updated every frame.

reef kiln
#

Fog is pretty bad. I had to turn of the fog on my other PC.

brave fable
#

in the base game, or some modded version?

reef kiln
#

SVE, it is the only mod I know that adds fog to areas. Not sure what about it causes the lag, but it does.

brave fable
#

i guess it does mean blending the sprites after all, but still

gaunt orbit
#

yeah that's not weather

#

I think it's a bunch of stacked map layers maybe?

#

I have heard a lot of people say it's laggy

brave fable
#

seems wasteful not to simply have copied (or reverse patched!!) the bathhouse implementation

reef kiln
#

My main computer handles it fine. It is the kids PC that can't handle it.

gaunt orbit
brave fable
#

this is the sort of thing that sounds like it absolutely must be done in c# hahah

#

when people can't run the feature it's time to try again

reef kiln
#

I agree that it is not weather though. It seems linked to time of day more then anything.

gaunt orbit
#

I don't disagree, but that also relies on gettting a c# modder to do it

#

I dont remember who the current maintainer for SVE's c# is

brave fable
#

if it's ishan or esca i'd understand

#

but if they were actively working on it it'd be completely trivial

gaunt orbit
#

it's not being actively developed I think, just maintained

brave fable
#

ah right, flash is doing castle town now isn't he

reef kiln
#

Yup, in his free time he says he is busy working for CA at the moment.

brittle ledge
tiny zealot
#

anything is processor intensive if you code it right

scarlet ether
#

Does anybody know where exactly the border bits from the bottom of the MenuTiles sheet are being used in game? Or if they're used at all?

dusk mulch
#

Well I got the conveyor belt turning functionality done

#

At least 1 side of it

versed wyvern
#

There wouldn't happen to be a way to check if an NPC is using a particular Appearance as a condition, would there?

gaunt orbit
versed wyvern
#

Yeah, that's probably the next best option but I can imagine that'll quickly get messy if I want to do multiple checks rubyslime

deep cypress
#

I have the bathhouse steam on a bunch of my maps, no problems it seems! Also, with the Scarlet Witch ring, when u put it on the screen goes wild…

gaunt orbit
#

the sve fog problem is specific to sve

#

and it's baked into the map

brave fable
#

i like the crusty ape buried in the menutiles sheet. very mr. dink

scarlet ether
versed wyvern
golden basin
#

if anyone is make a npc that would have a lil kitty as a pet i have a npc sheet im giving away for free of a teeny lil kitty

#

youd be welcomed to change colors too

#

I was just practicing pixeling very tiny things

turbid grotto
#

Anyone have any prompts for dialogue? I’m running out of ideas and need stuff for him to talk about….

golden basin
#

hmmm how about, npc had a nightmare that night and couldnt sleep afterward?

turbid grotto
#

👍👍

golden basin
#

heck yeah

brittle ledge
turbid grotto
#

Ooh that’d be great, ty

rough lintel
#

my programmer fellas: how do i define a Special rule for a special order? do i just do a gsq in the special rules thing or can i define it somewhere else

tiny zealot
#

trying to find where the hell i got three color shades from so i can do more accurate recolor compat for it SDVpufferwaaah

uncut viper
#

its just an arbitrary string id

rough lintel
#

oh so i dont have to define the rule anywhere

#

just check if its "active"

#

and then if its active, i change the thing i am actually supposed to change

#

ie
pick up special order to brew alcohol -> rule now instated to brew special alcohol -> new machine rules are now activated because of rule

uncut viper
#

yea pretty much

#

its basically a mail flag

rough lintel
#

oh prrbt

uncut viper
#

but activated upon special order and removed after

rough lintel
#

okay! thank you :)

#

and if im doing a gsq, i have to change "When" to "Condition" right

brave fable
#

afaik all game queries use Condition; and only CP uses When

rough lintel
#

gotcha gotcha

uncut viper
#

and never shall the two mix

#

you can, however, put tokens in a Condition

rough lintel
#

i feel like constantly checking this condition to add objects and machine rules would be taxing in the game "Condition": "ANY \"PLAYER_SPECIAL_ORDER_RULE_ACTIVE Any Rule_CanBrewSoju\" \"PLAYER_HAS_MAIL Any {{ModId}}_SojuRecipeMail Any\"",

uncut viper
#

theyre only checked as necessary

rough lintel
#

oh so like when you- like when

#

when you use a keg?

uncut viper
#

yeah when you drop an ingredient in and it decides what its making

#

it checks the condition

rough lintel
#

ah okay

uncut viper
#

it doesnt read it any other time

rough lintel
#

should i make the addition of the objects conditional too or just have them in the game by default, just inaccessible

brave fable
#

are queries evaluated on probe as well?

uncut viper
#

like, in machines specifically or

brave fable
#

i suppose so, nothing else comes to mind with a probe function

uncut viper
#

from an admittedly very cursory glance, it looks like probing makes it stop just short of running OutputMachine which is what calls GetOutputData item which checks the GSQ

#

NPC.tryToReceiveActiveObject can be probed

#

though thinking about it, im not sure what good a probe does if it doesnt check the GSQ? so i probably missed smth

hot gale
#

Why does duration 430 = 5:01 minutes? 430 seconds is 7+ minutes am I missing something

royal stump
#

I think the probe in PlaceInMachine just checks whether any rule would ever take the given item? SDVpufferthinkblob it does seem to skip the actual condition check

uncut viper
#
if (probe)
{
  return true;
}
if (!this.OutputMachine(machineData, outputRule, inputItem, who, location, probe))
{
  return false;
}

i dont think you can ever probe the GSQ if you probe from PlaceInMachine

#

but if you probe OutputMachine directly, you can

#

the probe cant do any checks at all bc the other places probe is used before this, makes sure its false first

#

the additional requirements check is irregardless of the probe

#

which is probably what you meant and im just bein dumb

acoustic summit
#

A bit late but on this topic in skillful clothes revamped I worked on a scalable effect for impacting how fast your friendship goes up or down, could do something similar but display each 5-10% or so as 1 charisma point

royal stump
#

idk much about when the game actually calls probes honestly, I was just skimming for the word and seeing if any methods with it called CheckConditions SDVpufferdizzy

#

that one stood out as skipping it, whatever context is around it

brave fable
#

probe is usually used on mouse over a machine or character to determine the cursor

#

i'm sure it's not important

royal stump
#

SDVpufferthumbsup spamming GSQs every frame would be kind of an issue depending on complexity

uncut viper
#

i guess TryGetMachineOutputRule does actually check the conditions further in

royal stump
#

not that the hover code isn't A Lot already

uncut viper
#

i skimmed over checking that bc it doesnt have a probe function in the first place

#

but this function is only called when the object is actually dropped into the machine anyway

#

so not on mouse hover or anything

#

no never mind it is checked by the mouse cursor

gentle rose
uncut viper
#

it is a little pricier than i wouldve expected, i wouldve thought special rules wouldve been saved somewhere specific

#

but no, that GSQ iterates over every special order and splits its SpecialRule string field and iterates over those to check if they match

#

iterates over every active special order*

royal stump
hot gale
#

Ahhh!

brave fable
#

introducing my new Helpful Mod that iterates over all rules each frame to visualise all relevant conditions to ensure you, the user, knows the exact current state of ur game at any given moment

#

maybe per machine to make sure its accurate

uncut viper
#

if it isnt too much trouble, id also like you to scan the content patcher patch that added those machine rules, to check whether or not that patch is immutable

royal stump
#

that's basically how I perceive the fish-catching overlay mods SDVkrobusgiggle

#

(having personally added more nonsense to the pile of code they need to check)

rough lintel
uncut viper
#

in practice, your GSQ is completely negligible

rough lintel
royal stump
#

idk enough about machine design to comment, but a lot of the GSQs in practice can be spammed without worrying

brave fable
#

yeah it's worth remembering that the game is evaluating all this stuff anyway for everyone everytime

#

you're just one more thing to check is all

uncut viper
#

really, the iterating-over-every-order thing is just technical nitpicking anyway. how many special orders are you likely to have at once?

brave fable
#

i might have two..

uncut viper
#

damn... a time complexity of O(2). throw out the whole class

brave fable
#

o(no)...

uncut viper
#

(admittedly, time complexity of not the only kind of complexity to worry about anyway)

patent lanceBOT
rancid musk
#

This reminds me to revisit my gsq cache system

brave fable
#

i'm sorry. i didn't know all this would happen i just wanted to talk about probe because it sounds funny and important

rigid oriole
#

does pelican town have a canonical postal service name?

marble nova
#

Lewis 😛

rigid oriole
#

he takes your shipped items... but who delivers mail

marble nova
#

I imagine also him lmao, but I could be wrong, I don't think it's ever stated

rigid oriole
#

if never stated i can call it whatever i want 💪

deep cypress
rigid oriole
#

tell me more about this reputation mod 👀

deep cypress
#

But the real misery would come in making it go into all the places where one would expect people to like or dislike u more…

rigid oriole
#

if you ever do develop it, sounds like something that it'd be fun to make my current project compatible with

deep cypress
#

The Reputation mod is going to make u liked more or less, stuff cost more or less, etc based on your reputation. Checking trashcans gives u a hit. Slingshotting people or setting bombs off in town gets u in HELLA trouble.

#

Are u the one who made the Law and Order SVE?

rigid oriole
#

... could always just postfix Farmer::changeFriendship

rigid oriole
deep cypress
#

Ooooh! That sounds most intriguing!!!!!!!

deep cypress
acoustic summit
rigid oriole
#

every time friendship changes, check if it went up or down, then you can update reputation accordingly presumably?

#

and then if you want more things to update friendship/reputation, just call changeFriendship

#

i do feel it might be safer to just store charisma on the player's moddata instead of changing the save serializer unless you have a super good reason to

deep cypress
#

You are probably quite correct!

#

I will take a look into it…. What’s enemy of the valley?

rigid oriole
#

effectively a "negative friendship" mod

deep cypress
#

YES!!!

#

I have been wanting that! I want Lewis to hate me…

rigid oriole
#

dialogue, events, ui, enemy relationship types, the whole shebang

deep cypress
#

Game1.player.moddata is probably real, right? Am at work, or i’d check…

rigid oriole
#

it is real since Game1.player is a Farmer and farmers have moddata

#

it might be modData but the ansewr in general is yes

deep cypress
#

Yes!!!!!!!!

#

I am super excited for the enemy in the valley mod!

rigid oriole
#

you're the second person to mention lewis so i should make sure his arc is good lol

#

but of course anyone is free to write their own arcs for any of the characters once this is out SDVpuffersquee

deep cypress
#

Prob the most unequivocally hated are Lewis, Pierre, Clint.
Next tier is Pam and Demetrius, hated some, often seen as misunderstood. Next tier is controversial, either loved or hated: Abigail, Haley, Shane, Sebastian. The amount of either hater threads or angry defense rants I have seen of them are MANY. Which to me is pretty cool to make people feel!

rigid oriole
#

i did haley's dialogue today. was a lotta fun lol

sour sleet
#

What do I put in the Type field when adding a forageable? None from this menu seem to fit

deep cypress
#

I love her so much and marry her so each playthrough (along with Leah and Abigail!), but I really want her to yell at me too, so, this is definitely going to be fun!

rigid oriole
#

i'm gonna leave some characters out because honestly if you want to be Jas's enemy.... why

rigid oriole
deep cypress
#

That’s for dig-ups.

sour sleet
rigid oriole
#

do you have your content folder unpacked?

sour sleet
#

Yep

deep cypress
# sour sleet Huh?

Sorry disregard me I am a little insane and also at wirk, I though somehow this was the map properties!

sour sleet
#

So they don't go in Data/Objects?

deep cypress
#

Yes, they do.

sour sleet
#

Ah ok SDVpuffersquee

deep cypress
#

My mind os far afield.

sour sleet
#

We've all been there lmao

patent lanceBOT
#

@dusk mulch: Make that mod idea I thought about (24h ago)

marble nova
#

Sooo I have what this tutorial says should be the basics of what I need to at least spawn my npc into the game standing still and doing nothing (none of his actual behaviour or dialogue yet), but when I boot up the game, it says it can't load it because it's an empty folder? It definitely isn't empty 😦

uncut viper
#

you put your manifest in the wrong folder

#

presumably

marble nova
#

oh? Where does it need to be?

latent mauve
uncut viper
#

your manifest and content.json must be in the same folder and they must be in the top most folder

#

but it looks like there might be one in your assets folder

marble nova
#

they are - assets is in the same folder

rigid oriole
uncut viper
#

is there a manifest inside your assets folder by mistake?

marble nova
#

hmmmm maybe, lemme check

brave fable
#

is the file actually named manifest.json? do you have file extensions visible in windows?

urban patrol
#

is it possible to substitute an Action for a TouchAction on a map? i'd like for my NPC to say something when the farmer walks over a certain tile, but the only similar TouchAction i can find is emote

uncut viper
#

no

#

dependencies can help in that regard

urban patrol
#

you mean like dependencies on a framework like spacecore etc?

uncut viper
#

spacecore, BETAS, etc

urban patrol
#

okay i'll check out the documentation, thanks!

brave fable
#

how about Button's Any Actions Any lAyers, or BAnAnA for short

#

i've done the hard part for u. now u just need to make it

uncut viper
#

while i appreciate the joke i must make clear that BETAS already does this

brave fable
#

oh actually?

uncut viper
#

it provides an Spiderbuttons.BETAS_Action as both a tile and a touch action, which can then call any vanilla or modded trigger action

#

and one of the BETAS trigger actions is just Message or DialogueBox

#

also, all of its Trigger Actions are themselves registered as both touch and tile actions

urban patrol
#

so i would name the tiledata spacechase0.SpaceCore_TriggerAction and have the value be whatever i define my trigger action as, yes?

uncut viper
#

so you dont even need the Action touchaction workaround if its a BETAS action

#

the value would be the ID of your trigger action edit in Data/TriggerActions

#

however, how do you plan on showing a message with that

urban patrol
#

good question, that's my next step lol. i assume vanilla doesn't have anything like that? i saw this for spacecore: spacechase0.SpaceCore_ShowHudMessage "message goes here" optionalQualifiedItemIdForIcon but i don't know if that's for NPC messages

uncut viper
#

it isnt

#

there is no vanilla action for NPC dialogue boxes

#

there is no spacecore action for NPC dialogue boxes

marble nova
#

same error message

vernal crest
uncut viper
vernal crest
#

Make sure you have file extensions turned on

marble nova
#

okay, I'll check that

brave fable
#

Action NPCMessage will show a dialogue box, but only within 14 tiles of the player

urban patrol
#

in that case, button i have a question: spacecore provides the functionality to animate NPCs more that one tile wide. does BETAS do anything similar? i could entirely switch to BETAS if it does

uncut viper
#

that also is not a touch action

#

nor is it a trigger action

#

BETAS only offers trigger actions/game state queries/tokenizable strings

urban patrol
#

gotcha

uncut viper
#

... and triggers

#

i forgot triggers

#

theyre only the main point of the mod...

urban patrol
#

i do know it's in the name at least! lol

lucid iron
#

and button!

uncut viper
#

it does not offer button

#

sorry for false advertising

urban patrol
#

no buy one, get one button

lucid iron
#

ill never recover from this

urban patrol
#

switching gears, do Actions have to be on Buildings tiles?

uncut viper
#

yes

urban patrol
#

ooh wait, but i can make Buildings tiles passable!

uncut viper
#

all TileData must have an actual tile beneath it on the appropriate layer

vernal crest
#

Yup

lucid iron
#

if you make it passable

#

itll do nothing

urban patrol
#

oh 😭

#

i thought i was so smart lol

uncut viper
#

i thought you wanted a touchaction anyway

marble nova
uncut viper
#

it being passable wouldnt have made it activate on touch anyway

urban patrol
#

i was okay with it being an interactable but still passable

uncut viper
#

ah

urban patrol
#

but if it prevents it from being interacted with then never mind i suppose

lucid iron
#

for passable interactions

#

u have to use touchaction on back layer

urban patrol
#

yep, which means i'd have to use BETAS to get an NPC message to display

uncut viper
#

the NPCMessage Action only works if the NPC is close enough anyway

vernal crest
uncut viper
#

dont know if that was ever an issue

urban patrol
#

it's a very small room, the size of the adventurer's guild, so unless the NPC was out of the room i think it would have worked

lucid iron
#

ok but when u walk on that tile accidentally

cyan marsh
#

I'm entering Data to a Dictionary<string, string> in the background while using a visual list<string> in the forground for ease of viewing. Basically, when you input the data and add to the list it first goes to the dictionary as a Key and Value but the list shows it as "Key: Value" as it is just for visual purposes. I want to delete something from the list which will Also delete from the dictionary. I can use a List.SelectedIndex to delete from the visual list but I cannot use that to delete the same spot in the dictionary

rigid musk
lucid iron
#

it'll show a menu and then stop you

urban patrol
#

actually, for future reference, how is 14 tiles counted? scarecrow-style with a circle?

cyan marsh
#

I hope that makes sense

uncut viper
#

i honestly dont know how the tile range is counted

lucid iron
#

are u sure thats good experiance for player

urban patrol
#

it's tucked away in a corner (i put down the wizard's magic chalk circle) so i was just thinking of some fun flavor text where the NPC is like i wouldn't if i were you, who knows what that might do

#

but i suppose i could see how it would be annoying if it happened over and over

rigid oriole
rigid musk
#

oh my god that is actually so funny

uncut viper
#

also, im curious, where in the code does it check that a tile cannot be passable for an Action to work?

rigid musk
#

Elliott is my second favorite character in SDV (cough can you guess my first cough) so that's delightful actually I think its great

uncut viper
urban patrol
#

omg 👀

uncut viper
#

explain yourself chu

#

(/lh)

summer sluice
brave fable
#

yeah i don't see anything checking for passable/collision

#

it just requires a Buildings tile

uncut viper
#

(ill be honest my "im curious, where is this" was just my polite way of saying "i looked and i dont see anything" too)

lucid iron
#

why did ur cat not work then

#

thats why i thought it was no good think

#

*cat = that vendor in sailor styles

brave fable
#

what do u mean my mod is no good

lucid iron
#

does ur cat work if u set the tile to passable

uncut viper
#

explain yourself blueberry

brave fable
#

i uhhh ummm

lucid iron
#

there was a issue where the tile is still building when cat not there

#

i forgor whether i told u this and whether u did anything about it

cyan marsh
#

blah.. i went around it and played with substrings DX I wanted to be lazy tho

brave fable
#

well you did tell me about it but then asbdhk jkfdjk mfgmmg

#

,.

uncut viper
#

i blame both of you for misinformation

#

case closed

dusk mulch
#

well i finally got the conveyor done, now i can move onto the background and packages

lucid iron
#

hmm

#

maybe blueberry thing is also cus

uncut viper
#

what happened here chu

lucid iron
#

the kot is an npc

uncut viper
#

oop

#

did not mean to ping for that one sorry

brave fable
#

explain yoursehfl chu

urban patrol
#

watching all of this like an ace attorney court case 🍿

brave fable
#

reminds me i need to make a hamburger portrait for rei

vernal crest
#

I wonder how much I will hate myself if I decide to make personal edits to every single events mod to give them descriptive event IDs

urban patrol
#

okay, unrelated Tiled weirdness i'm getting: i made a custom tilesheet just for random objects, only in use in two maps, but every map i open has that tilesheet in the sidebar whenever one of those two maps is also open

vernal crest
uncut viper
#

(/j /j /j /j /j)

vernal crest
#

Har de har har

urban patrol
#

not to my knowledge? but it's entirely possible since i don't even know what they are or when to use them etc

brittle pasture
lucid iron
#

so hm this one's definitely fine

vernal crest
lucid iron
#

ill have to check what i did in sailor styles

urban patrol
vernal crest
uncut viper
#

purple tiled...

urban patrol
#

oop it does look like it's not greyed out SDVpufferflat can i simply click that to embed it?

vernal crest
#

Yes

urban patrol
#

awesome, thank you

vernal crest
#

But that will not fix the issue you asked about

urban patrol
#

it won't? i just checked and the tilesheet is gone from the other maps i had open

vernal crest
#

You will need to embed it into the two maps you want it in, then close Tiled and go hunting for the tsx file and then delete it (but do not permanently delete in case something goes wonky and you need it back).

#

I suppose it's not the end of the world to have a tsx file floating about but it might tempt you to use it again in future.

urban patrol
#

i see i see. i'm guessing i'm not so lucky for it to have saved in the same folder lol

#

OH it is, at the very bottom

#

excellent

lucid iron
#

yep doing "Passable": "T" in sailor style is fine too

#

i have no idea why it no work tbh Thqnkqng

#

or rather, why i thought it no work

uncut viper
#

alls well that ends well

vernal crest
#

And this was all good entertainment SDVpufferthumbsup

lucid iron
#

trial's over 1000 years jail for chu

vernal crest
#

Miette will be pleased

urban patrol
#

yeah i'm always impressed by 1) how much i learn in this channel 2) how willing you guys are to experiment and dive into the code to really understand the hows and whys of things

uncut viper
#

a bunch of the C# modders are very easy to nerdsnipe

#

myself included

vernal crest
#

It's fun to know stuff

hard fern
#

there would be no modding if there were no nerds who liked to poke around in the code 😔

uncut viper
#

case in point: im pretty sure blueberry only went to search bc i simply uttered the words "where is this"

uncut viper
rigid musk
# uncut viper myself included

considering you literally made a whole mod for something i mentioned commissioning once (much appreciated still) ... yeah

brave fable
#

it's more fun to solve other peoples problems than actually fix mine

uncut viper
#

thats a whole mood

hard fern
#

true

rigid musk
#

xnb mods scare me

uncut viper
#

i was and am procrastinating my own mod for it

hard fern
#

im procrastinating my own mod in favor of cranking out all the ace attorney games.

#

im making progress. on the game, not my mod

uncut viper
#

tbf a lot of others peoples problems i know the answer to or know where to look. if im having problems it means im fuckin stuck as hell and cant make progress, otherwise i wouldnt have a problem

vernal crest
#

Yeah if someone else needed help to do the exact things that I want to for Hiria I'd have so much more of her finished

marble nova
hard fern
#

yes, through debug mode, or opening the map in tiled

vernal crest
brave fable
uncut viper
#

you can also open the map in Notepad++ to searech the raw xml

#

you shouldnt, but as long as we're listing options...

hard fern
#

sigh, i would love to play the game for once, but.. alas

marble nova
#

the map file in Tiled should just be in the Content (unpacked) folder, right? Nt something that should be in my mod rn?

uncut viper
#

if thats where you've already been working on it, then keep it there

vernal crest
#

No button they are asking where the vanilla busstop map is

uncut viper
#

could be worse, at least theyre not tbins SDVpufferthumbsup

#

oh

lucid iron
#

i gotta find where the rain is drawn LilyDerp

uncut viper
#

my bad

lucid iron
#

it does look like island north is not have the problem

vernal crest
uncut viper
#

is it screenOverlayTemporarySprites

#

thats not the name of the field i cant remember the name

#

but theres a field for screen overlay sprites

rigid musk
#

So my mod does not touch the schedules of any other npcs... but for some reason NPCs like Willy are going over to the bus stop and into Qi's room on some people's saves? Like... Willy doesn't even GO to the bus stop unless it's the desert festival so what on god's green earth could be causing this? (I cannot replicate it for the life of me but I've had at least four people report it to me so it's clearly SOMETHING happening... and they don't have any other mods installed so)

brave fable
#

they're drawn in drawWeather from rainDrops

uncut viper
#

Game1.screenOverlayTempSprites
no clue what its used for but rain seems like a screen overlay maybe sorta

brave fable
#

surprisingly nothing to do with screenoverlaytempsprites

uncut viper
vernal crest
#

Bizarrely frequently actually

lucid iron
rigid musk
lucid iron
#

why is this specific

uncut viper
#

four people reporting it independently would be very weird

rigid musk
#

Unfortunately I wasn't able to get their farms :( which is what I asked for

#

I did have someone else let me know that they had the issue and I'll be getting their farm save tomorrow at least but I'm just wondering if it's something I could work on now since I'm in the process of doing stuff for v.1.1.0 right now anyways

brave fable
#

it's likely to do with the parallax background

uncut viper
rigid musk
#

(or if anyone had any experience with anything similar)

lucid iron
#

i guess so

brave fable
#

if the rain frames advance then you'll see them splashing on the open sky

lucid iron
#

does the summit even rain

uncut viper
#

that is the problem chu is trying to solve yes

tiny zealot
uncut viper
#

the npc scheduler thinking Qi's room is suddenly a shorter path somewhere wouldve been my guess, but itd be hard to debug why if its only for some people, meaning who knows what other map edit is making it happen

lucid iron
#

my goose is wet

brave fable
#

oh right chu has the weird goose demo

#

say i should copy that code. that'd explain a lot

lucid iron
#

dont u already have this bolbthinking

dusk mulch
brave fable
#

how should i know

lucid iron
#

i didnt even get around to making night colors work yet

dusk mulch
#

it looks like the summit but with a goose

lucid iron
#

i rmbr u showing some kinda sunset demo

uncut viper
#

didnt blueberry's boat thing also have a parallax background

vernal crest
#

It's a map where you can see into the centre of the earth

hard fern
#

what species of goose is that

vernal crest
#

And it's goose all the way down baby

rigid musk
tiny zealot
#

sunset demos reminding me of the event i want to redo but will never have time for

brave fable
#

the boat scene doesn't really have a parallax bg, it's entirely papercraft, no tiles or map

hard fern
#

it's a canada goose

uncut viper
hard fern
#

branta canadensis

velvet narwhal
rigid musk
#

the only other ones involve his office (at least for what npcs could be trying to path to atm)

#

the weirdest part is that it happens without any other mods installed, like what possibly could that even be ... I suppose ill just have to wait and find out tbh_seen always an issue with this blue guy i stg

uncut viper
#

have you tested on days where Willy is set to use his Saloon schedule?

lucid iron
#

how do i do != null in IL again

tiny zealot
#

brfalse i think?

lucid iron
#

oh its just falsy?

tiny zealot
#

i think brfalse covers null but i'm not 100% on that

lucid iron
#

i wanted to add if (Game1.background != null) { } basically

#

i have the label i need to jump into the { }

uncut viper
#
ldloc.1
ldnull
cgt.un
brfalse.s
#

this is what a quick test compile made

rigid oriole
#

null is falsy i think

lucid iron
#

so then i need brtrue yggy

uncut viper
#

that il is what came out when i compiled if (var != null) return

dusk mulch
#

Can I ask for help with monogame here? (and before any of you tell me i shouldve looked at the documentation first, i did. i looked at the api, tutorials, ect.)

marble nova
#

Are Tiled map files the TMX files?

uncut viper
#

if its just about monogame and not stardew, i d ont think that would be this channel

#

if anything it might be #programmers-off-topic , but i dont know if thats really a questions channel either and not just a hang out and talk off-topically zone. i dont know the ruling on that one

dusk mulch
#

Alright, ty!

uncut viper
#

as always if you're unsure take a junimo's word for it over mine

dusk mulch
lucid iron
#

yey my goose no longer wet

#

i was able to just ldsfld directly into brtrue_s

lucid iron
rigid musk
#

operation 'make the actual babies blue' was a success

rigid musk
uncut viper
#

hm. this doesnt seem correct.

rigid oriole
#

LGTM

urban patrol
#

stardew valley eldritch style

dusk mulch
lucid iron
#

PerScreen<WeakReference<Item?>> feels a little gross LilyDerp

rigid musk
dusk mulch
uncut viper
#

hes going to the bus there? from where?

rigid musk
#

well its his friday schedule and it was at 11:30 that he approached... so from the beach im guessing but i dont know why because that's not his actual schedule

uncut viper
#

where did he go after that?

rigid musk
#

i dont know (yet) i closed it to test to see if he does it with spacecore installed

#

he does not, in fact, do it with spacecore (which is probably why i dont notice it happening because i have it installed normally)

#

im glad im going to be making it a requirement

uncut viper
#

im actually more surprised that the other people dont have spacecore

#

i guess its just pathfinding weirdness

rigid musk
#

I can confirm that without spacecore he just starts walking from the beach in the morning to the bus stop... why? I dont even know his schedule has him going into his shop

#

willy... willy where are you going willy... :(

uncut viper
#

something to do with npc warps, im sure

#

maybe trying to go thru the desert to the island

#

and then from the island to the boat

#

back to his shop

sour sleet
#

Is it possible to add my custom forageables spawning with FTM?

rigid musk
rigid musk
sour sleet
rigid musk
#

I know that SVE does it - as well as forage of ferngill :D

urban patrol
#

willy has taken up the new hobby of marathon walking

rigid musk
#

apparently ...

#

certainly a sequence of events... he just stops in here

dusk mulch
#

NOOOOOO

#

I ACCIDENTALLY DELETED A PORTRAIT I WAS WORKING ON 😭

rigid musk
#

you dont have any backups?

dusk mulch
rigid musk
#

also i thought yo uwere talking a break from coding memeSurprisedPikachu

#

WAHsnapped always save

dusk mulch
#

well...

#

uh...

#

you see...

brave fable
#

art doesn't count 😌

dusk mulch
#

i was but then i had this idea so i had to go learn C# then the idea needed monogame too, but the idea was too annoying so i scrapped it but i wanted to make it so picked it back up and here we are... the portrait was a side project

#

and now i am debating if i even want to update timbergate at all...

rigid musk
royal stump
rigid musk
#

what's the command to do a summary of an npcs schedule?

dusk mulch
sour sleet
dusk mulch
#

im going to flip a coin, heads i will update timbergate, tails i wont

rigid musk
#

yeah his schedule is still normal, i think its just being weird for no reason...

#

if you arent feeling it just wait and do it later :O

dusk mulch
uncut viper
#

question for the C# people: is there a good way to get the mouse's cursor position in pixels relative to where it is on the map and not just in the current viewport?

brave fable
#

not directly, i think the game just uses Utility.PointToVector2(Game1.getMousePosition()) + new Vector2(Game1.viewport.X, Game1.viewport.Y)

royal stump
#

Game1.currentCursorTile is a thing that seems to match that, though I'm not 100% sure if it works

uncut viper
#

currentCursorTile doesnt give me the pixels within the tile that i am hovering over

royal stump
#

oh, right, misread, my bad

uncut viper
#

blueberry's snippet does though, thank you. was hopin there'd just be like, Game1.getMapCursorPosition() or somethin i was missing

rigid musk
#

if I want to edit a mod's cutscene (SVE) to have an alternate version would it just be the same as editing vanilla cutscenes ? like if I add a 'when' condition for something will it take priority or should I add some sort of priority to it for that to happen

marble nova
#

Hmmmmm okay, progress in that SMAPI is actually telling me now that it's not spawning Chase rather than pretending stuff is fine, but for some reason it's looking for his portrait in the base game folders?

Do I have the wrong thing telling it to check the mod folder?

brave fable
#

the game is looking for Portraits/Chase, you're targeting Portrait/Chase

marble nova
#

OH

#

thank you!

brave fable
#

but do also share a log and json file instead in future SDVpufferthumbsup

royal stump
# rigid musk if I want to edit a mod's cutscene (SVE) to have an alternate version would it j...

If another mod adds the event unconditionally, you can just edit it like any vanilla event. If it's overwriting an existing event, or adding a blank one then editing it, etc, you may need to mess with CP's priority field so that your edits apply later:
https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide/action-editdata.md#usage *
(or possibly make your mod false-require SVE in the manifest, but priority is clearer)

marble nova
#

oh like copy-paste instead of screenshot?

#

He's heeeeeeeere

brave fable
rigid musk
#

cheer YIPPIE good job!

rigid musk
#

I'll have to look into how SVE does the event :3 I havent actually seen it more than once lmao

dusk mulch
marble nova
#

he's hiding in a tree, but he EXISTS

dusk mulch
#

Sorry yall, earth wasn't compatible with SVE.

uncut viper
rigid musk
#

is air compatible with sve? is SVE compatible with SVE????!!!

dusk mulch
dusk mulch
rigid musk
#

were they ever truly compatible to begin with

urban patrol
#

is there an easy way to view SVE maps in Tiled without getting all of the "tilesheet file could not be found" errors?

ornate locust
#

Dump the tilesheets in the same folder?

#

I have a Workspace folder I dump all the tilesheets and maps in

urban patrol
#

man... one glance at these maps and never mind, maybe i don't have to be compatible

#

i put my lighthouse warps exactly where blue moon vineyard warps are on the beach

ornate locust
#

Hypothetically, you could patch out that and do your own warp and put like... a warp to where the BLue Moon Vineyard beach is on the other side of your map? I don't know what your map looks like, if it has an other side

#

Thinking low effort

rigid musk
#

Honestly if you don't want to do compatibility don't

ornate locust
#

I mean that's the real answer, of course

#

Was just spitballing

rigid musk
#

You'll get comments about it ofc but take it from someone who did do compatibility for SVE... it takes a lot of effort lmao

ornate locust
#

mood

urban patrol
#

yeah i tried with like the festivals and stuff, but the maps are so different, and i'm already really doing an expansion in my own right lol

rigid musk
#

(and now im getting requests to make my mod compatible with something that completely edits the desert so i cant wait to do THAT /sarc)

urban patrol
#

i can send my lighthouse map if you guys want to see

rigid musk
#

:3 i always love seeing what people are making

ornate locust
#

Two warps isn't terrible as far as SVE compatibility goes, the festivals are the annoying part

#

but if you're doing a big thing, yeah

rigid musk
#

Festivals and maps

#

Events were a nightmare I had to go and check every single one to make sure it actually worked it was awful

#

same with schedules ... eugh

urban patrol
#

it's more that like, the world wouldn't really logically make sense?

rigid musk
#

because if your schedule is supposed to be at a cliff but sve edits that cliff and its not a cliff anymore... :')

urban patrol
#

oh lord

rigid musk
#

oh that's so cute

urban patrol
#

events are already my enemy

#

thank you!

rigid musk
#

Yeah i had to make alternates for a bunch of them

urban patrol
#

but yeah you can see where SVE has the stairs up the blue moon vineyard from the beach, and mine is the town river...

#

like i can't wrap my head around how to fit it in yknow

ornate locust
#

Well if you wanted, you could make the sand go all the way up on the left and have that lead to the Blue Moon Vineyard and just hope other people are like me and didn't realize that was the town river at the top

rigid musk
#

I made alternates to some of my events based on dating/marriage as well, so I have four entries for one single event all based on if sve is installed and if you're dating the npc ... it was ... 'fun'

ornate locust
#

That would be the low effort solution if you wanted to do compatibility. Just like squeeze it in there

urban patrol
#

low effort is how i fight back the scope creep lolll

ornate locust
#

Ye

rigid musk
#

a little warp over on the left would definitely work actually

ornate locust
#

It's not like vanilla is super exact with how everything fits together exactly anyway, so if you fudge it, people probably aren't going to notice

urban patrol
#

true!

rigid musk
#

vanilla is very much not exact

#

idk if you've ever seen someone put the maps together but they do not piece together very well

ornate locust
#

yeah LOL I saw that

brave fable
#

beach farm raises more questions than it answers

urban patrol
#

okay so in that case, how do i make my beach map edit override theirs?

rigid musk
#

it would probably be a priority patch of some sort pondering

urban patrol
#

conditional hasmod and target their map?

#

oh so still targeting beach okay

rigid musk
#

yeah as long as your thing happens before SVE's you should be okay

urban patrol
#

not after?

rigid musk
#

is it after or before... that's a good question

urban patrol
#

i thinkkkkk late priority is desirable

rigid musk
#

never hurts to try either or to see if it works

#

but yeah you would only need one patch with the priority thing

#

technically you could do two but you dont really need to if you're making sure your map is patching that specific area

versed wyvern
#

You do want to load later if you want your edits to take priority but I think SVE's beach edits are mostly unintrusive enough that it doesn't matter too much?

rigid oriole
rigid musk
#

I swear there were other mods that edited that side of the beach but i cant remember those either

versed wyvern
#

I put a thing over one of the rubble piles and it loads in even when using SVE

urban patrol
rigid musk
#

that's what Esca mentioned earlier when I asked about one of SVE's events

#

essentially in your manifest you would put that your mod needs SVE but put it down as false as essential

urban patrol
ornate locust
rigid musk
#

like that

#

i was going to get one of my own to show too lmao

rigid oriole
urban patrol
#

thank you guys!

versed wyvern
#

In the manifest.json if you set a dependency to false, it'll be an "optional dependency", making it load later than that mod but not crash without the mod because it's optional

ornate locust
#

was just editing my manifest to add one LOL

rigid musk
#

perfect timing

#

I have been completely avoiding designing the maps for this arena... i really should do it because its going to take the longest

urban patrol
#

what's SVE's ModId?

ornate locust
#

I have that in here too

versed wyvern
#

SVE adds an inspection message to those piles but my thing's still there

urban patrol
#

interesting okay

versed wyvern
#

Hmm, I should probably check if pressing interact still brings up that message even though it's walkable now

urban patrol
#

oh wait and this goes under "ContentPackFor": { correct?

ornate locust
#

It's under "Dependencies": ["

urban patrol
#

on that note, if i have spacecore as a dependency on nexus, i put that in my manifest here too?

rigid musk
# urban patrol ooh an arena, fun

Yeah! There's this unused asset in SDV called 'qi arena totem' or something similar and I mean... If I'm going to make a mod for Mr.Qi I feel like implementing unimplemented things just makes sense right ?

#

yes you put it as a dependency if you need it to run your mod

urban patrol
#

oh nice! your work cut out for you lol

ornate locust
#

Ye, but don't do "false" on that one, do "true"

rigid musk
#

in that case you would make sure it's set to - yeah

urban patrol
#

makes sense lol

rigid musk
#

four different maps

urban patrol
#

oh oof

ornate locust
#

The true ones are ones you hard Need, the false ones are optional

urban patrol
#

i made like 12 seasonal tiles for grass/sand transitions and even that felt like So Much

rigid musk
#

Currently I'm avoiding what I should be doing by writing even more dialogue for him that I really don't need

ornate locust
#

Oh man I just did seasonals with recolor support for a single building and it was already aaaaaaa

urban patrol
#

oh god don't even talk to me about recolor support if i ignore it it doesn't exist...

rigid musk
#

heh I just plan on using different types of tiles for each map ... recolor support doesnt exist ever

#

I will not be doing recolors i dont even know how I would with the color pallets and stuff i dont know how it works (and i dont want to)

#

People can make recolors of course, I set up my tilesheets for them to do that, but I aint doing it myself

urban patrol
#

yeah so fair

versed wyvern
#

Btw has anyone ever tried to make a vanilla NPC not unlocked at the start of the game? Like until you view a new cutscene meant to introduce you to them? Some characters back in the Harvest Moon games would be introduced that way and I'm somewhat interested in doing something like that, but I'm wondering if the game will explode if it tries to use a character who's not "unlocked" yet ThinkO_O

ornate locust
#

I mainly just recolor stuff that exists in the OG map, you know? And my building's brick, it's not very bright, so it looks fine with most recolors

#

Like SNOW, the reason I did recolors for it was snow

#

so the snow matches the other snow

urban patrol
rigid musk
#

But this is what's done with Kent

#

his condition is y2

ornate locust
#

There's ways to do that like with Kent

urban patrol
#

UnlockConditions: (Optional) A game state query which indicates whether the NPC should be added to the world, checked when loading a save and when ending each day. This only affects whether the NPC is added when missing; returning false won't remove an NPC that's already been added. Defaults to true.

rigid musk
#

this is literally all i have for the arena maps btw... very many details much wow

ornate locust
#

my guy shows up roughly day 15, but I leave him in his room until then because the door isn't accessible until then

versed wyvern
#

Yeah I'm just worried if, for example, something will go screwy if you see Haley's 2-heart event without Emily unlocked, or if the game knows to not run it if Emily doesn't exist in the game

ornate locust
#

Well, I think in that case, the game... the event is written so they are both there, you'd want conditions in the event for that

rigid musk
#

this is what I have for Qi

rigid musk
#

You essentially would have to go through and patch each event (and festival data if it includes an npc doing something) to check for whatever it is that you set the condition for the npc to

versed wyvern
#

Ah, now that I think about it I guess I have a cutscene that uses a dummy NPC who is set to not exist in the world just fine, so I would indeed have to patch every event blobthinking2

rigid musk
#

an example of what would happen is like, doing the ridgeside gathering festival without unlocking kiwi, it throws an error in the console cause it has kiwi doing a little flip (i only know this because i was testing qi in the gathering and just skipping to the day, which means i did not, in fact, have kiwi unlocked)

rigid musk
#

so for emily you would have an error thrown in the console, for, say the luau where she's supposed to be dancing but she's not there or something like that

#

also yeah compat nightmares

versed wyvern
#

I guess I'll use such an unlock sparingly, then

uncut viper
#

i actually wouldnt be sure that would error

#

some might but others might just load a dummy

#

might be worth testing

#

if not, you can always put someones home in an unwarpable, unreachable void

versed wyvern
#

My hunch is that events will just have the NPC there even though they're technically not unlocked

dusk mulch
#

I got the background and belt functionality done... now for the packages...

versed wyvern
#

But yeah I guess I could just simulate being locked by exiling them to purgatory as long as they're not met

uncut viper
#

it seems like for things like festival setup, it'll just skip the NPC if they dont exist in the world yet

latent mauve
#

Ah, I think I might have figured out my issue with changing this furniture type... Fireplaces are required to be indoors only, aren't they?

latent mauve
#

Nope, nevermind, apparently my TextOperations just refused to ReplaceDelimted on the furniture entry to change Decor to fireplace.

#

When I changed the entire entry, it worked.

foggy torrent
#

Hey all! I couldn't find the jealous dialogues of npcs in my notepad++ did it get removed? o,o

#

thank youu

vernal crest
vernal crest
# foggy torrent yea!

The dialogue key for the vanilla NPCs is NPC.cs.3985 in the Strings/StringsFromCSFiles asset but if you wanted to write your own I think you can override that by just adding the SpouseGiftJealous key to their normal Characters/Dialogue/NPCNAME asset.

#

This is the code for it. I am pretty sure that it means that it will try to get the dialogue key SpouseGiftJealous first and if that's null it will then try to get Strings\\StringsFromCSFiles:NPC.cs.3985 to use instead. So as long as you give an NPC SpouseGiftJealous it will use that.

spouse.CurrentDialogue.Push(spouse.TryGetDialogue("SpouseGiftJealous", this.displayName, activeObj.DisplayName) ?? StardewValley.Dialogue.FromTranslation(spouse, "Strings\\StringsFromCSFiles:NPC.cs.3985", this.displayName));
dusk mulch
#

that feeling when your code works JUST the way you wanted it the first time

#

im so giddy

#

and now i have to make sure it follows everything else....

#

THEN i have to redo the sprites because they are too small and blurry...

#

😭

mortal goblet
#

hello everyone! I am a new modder, i want to add new ores and nodes to my mod, but i don't know how to change the mines to generate my nodes. Is there a way to do this?

lucid iron
#

Use item extensions

mortal goblet
#

Thank you!

wanton pebble
#

cracks knuckles alright, I have roughly 14 hours to figure out two bugs in C# code/in game

#

Let's get down to business

#

While I'm working on one - I know I asked this a while back but I don't know if I got something exact to look at. What lines of code/harmony patches/etc. would affect whether a spouse asks for adoption or natural birth?

hallow prism
# mortal goblet Thank you!

https://www.nexusmods.com/stardewvalley/mods/21986 as an example if you need one. There's a lot of things you can find info about in IE docs, but i find that having examples to figure out stuff is really helpful.

Nexus Mods :: Stardew Valley

This mod adds clumps and nodes of the vanilla minerals and gems in the mines, and rarely in volcano and quarry in the mountain. More opportunity to get shiny precious little treasures. Enjoy more surp

#

note that if you want to adds new ores, you also needs to add the items which will be simple CP.

mortal goblet
#

This is really useful for me. in fact, i can't make my mod without SVE source code. I will research the mod. Thank you for your answer!

hallow prism
#

i believe that you can make your mod without SVE source code unless you want your mod to be adding feature to SVE

#

my advice would be to make a very limited mod with just one item you want to add, learn the basic, move to the next step after that, it's already a good few first steps as starting can be overwhelming

#

there are plenty of mods adding items, search one that looks simple and straightforward

mortal goblet
#

I think you are right! I will follow this suggestion.

crude plank
#

@rancid musk it just hit me that Mastery Extended might need compat with Better Game Menu too

lucid iron
#

But i think this is controlled by chara data anyway no need to harmony

wanton pebble
#

See, I agree, but I have to figure out why always adopt is on when it's disabled in PPAF so I have to figure out what mod's doing it. I just figured out the breakage in being unable to gift spouses which was mostly my fault - in Polyamory there's a bug where bouquets won't swap spouses, but my fix to the code within the harmony patch in it never checked for bouquet, just spouse, so my fix to the bug broke the gifts. I'm presuming if none of the mods in question in configs cause it that there may be a bug in child code somewhere either in the Poly mod or elsewhere and I have to figure that out

#

I'll note down the question event

lucid iron
#

Since there's separate Adopt dialogue strings u can probably ctrl F for that

#

It could be that one of these mods skip prefix'd vanilla, do harmony_summary to find out

rigid musk
#

pondering can I add random dialogue to events...?

#

The only other option is making 12 response options and i am NOT doing that for sure

#

(by random dialogue I mean something like {{i18n:tokenhere_{{random:1,2,3,4,5,6,7,8,9,10,11,12}}}}

rigid musk
#

it wont be like that, I'm thinking 5 response options with 4 of them having the three random options

gentle rose
#

not this again KEK

avi has a working version with BETAS

rigid musk
#

Because if I choose only 4 bachelors/bachelorettes I feel like I will be exploded into a billion pieces

gentle rose
#

and I have a c# mod if you also want it to be templateable the way avi does

rigid musk
#

SDVpufferfear oh god

gentle rose
#

wait,,, you don’t need either one

lucid iron
#

Can't u just random i18n in event scripts

#

I don't think anything stops u?

gentle rose
#

you can just do {{i18n:{{random:tokenhere_1,…,tokenhere_12}} }} iirc

lucid iron
#

You can do it with translation keys too if u prefer

rigid musk
lucid iron
#

The random is the important part

rigid musk
#

That's how I did it with the (Frankly too much) amount of dialogue i made for other things

gentle rose
fathom hound
rigid musk
#

"patio_AngelOfStars.Mrqifriendable_TheMrQi": "{{i18n:Aos.QiPatioDialogue_{{random:1,2,3,4,5,6,7,8,9,10}}|QiEndearmentTitle= {{QiEndearmentTitle}}}}", like this one ... and then in the default json the entry would be Aos.QiPatioDialogue_1 and so on for each one ...

rigid musk
#

Do you still need mutli yield crops for that

fathom hound
rigid musk
#

it is

fathom hound
#

Ooooo

rigid musk
fathom hound
#

Thank you! aSDVemoteheart

rigid musk
#

I'm not sure if CP has that built in or not but I know for sure you can do it with that

fathom hound
#

I’ll use that then for sure SDVpufferheart aSDVemoteheart tysm

lucid iron
#

You can see this in cornucopia which has lotus root drop seed sometimes

rigid musk
#

I figured that was somethign that would be built in but I couldn't remember what would have done it off of the top of my head (I thought cornucopia but for which crop I didn't know)

fathom hound
lyric ember
#

Is there modding on mobile?

vernal crest
lyric ember
#

Ok

rancid musk
crude plank
#

i think it changes some stuff to the mastery part of the skills page

rigid musk
#

This event I'm doing is going to send me straight to the afterlife

#

every single time I have to remember how to use advancedMove one million (1,000,000) of my cells die and that's not a lot in the grand scheme of things but I miss them

vernal crest
#

You should keep a template in your events file to remind you

rigid musk
#

You are very right, and I did have that in there before... and then I, very smartly, deleted it

#

because I was 'done with events'

#

I say making an event that has technically six different responses

#

(its not actually six since three of them lead back to eachother)

rancid musk
crude plank
#

Ok then i'll trust you i'm not sure what it's doing exactly

rigid oriole
crude plank
#

thank you!

hallow igloo
#

very happy with the AI rules tbh

#

I do have a question, I've used an LLM to make my translation files but that's it as well. Does that also exclude me from potential mod author status?

fathom hound
#

Can I make crops not yield any quality when harvestin?

#

“HarvestMinQuality": 0, "HarvestMaxQuality": null

Does this mean it?

lucid iron
#

u need to put max quality to 0 too

fathom hound
#

Ahh thanks!

vernal crest
rigid oriole
#

I don't think it'd exclude you from ever getting the role but that mod may or may not be eligible

lucid iron
#

you can just use nomori's i18n-fier

#

if you actually made mtl for some reason then u may need to delete it?

vernal crest
#

Oh I was assuming they meant they translated their mod into other languages to offer them as well but reading the message again I'm not actually sure that was the intended meaning.

fathom hound
lucid iron
#

looks like its spacecore actually