#making-mods-general

1 messages · Page 137 of 1

fallow musk
#

How can I add a clickable button/icon on the HUD? can this be done using stardewUI or something simpler?

#

with stardewUI im not sure if i can make a HUD button, most of them look like menus

frosty hull
#

HUD like status bar, health bar?

fallow musk
#

something which could act like the quests button

#

not necessarily at that position, just a always on HUD button to access some other menu

frosty hull
#

you can inspector class StardewValley.Menus.DayTimeMoneyBox

rancid temple
frosty hull
#

you need to implement
//for render sprite icon & HUD
public override void draw(SpriteBatch b)
//for handle mouse click & use if else for handle action
public override void receiveLeftClick(int x, int y, bool playSound = true)

fallow musk
#

thanks

granite bluff
#

hey i'm stuck forever while saving my mod-file in publishing on nexus, anyone knows whats going on?

uncut viper
#

can't you just draw in the SMAPI renderedhud event

brave fable
#

just to wrap-up your implementation, you want to add your MyOnScreenHUDButton : IClickableMenu to Game1.onScreenMenus in the Events.GameLoop.SaveLoaded event ONCE ONLY

uncut viper
uncut viper
#

I refresh when it happens

granite bluff
uncut viper
#

it doesn't, it's stuck

#

it doesn't take

#

ever

rancid temple
#

Whenever Nexus is being dumb, I just give up until the next day

uncut viper
#

(which is why I refresh)

#

refresh and try again and it'll probably work

brave fable
#

i wouldn't recommend adding a 'fake' hud button with smapi rendered/pressed events, it's better to do it vanilla and add to game1.onscreenmenus and get all the benefits of actual clickable components

uncut viper
#

ill trust blueberry on it since blueberry does more menu stuff than me

brave fable
#

the functionality is all there ready for you to use

fallow musk
#

oh i see

brave fable
#

the fools trust me like they don't know i'm wiping the il out of menus.daytimemoneybox.draw wholesale and butchering it back in out of order

uncut viper
#

that makes you even more trustworthy to me

brave fable
#

we're reaching JIT errors i didn't even know existed

uncut viper
#

but wait can't you still use clickable components with the SMAPI events, just store em in your modentry

#

granted that's not far from just making a menu class anyway but it'd mean you wouldn't have to add it to that on screen menus things right

brave fable
#

sure you can, but why would you when the game already handles draw/update/hover/pressed

#

literally does it for you when you add to onscreenmenus

#

that's like asking 'why would i make a custom menu when i can just lock out all input and render over everything else'

uncut viper
#

i figured you'd be adding custom functionality for those things anyway
these are just learning questions from me though not suggestions

rancid temple
#

onScreenMenus being a list of IClickableMenu's makes me confused as to how it handles the HUD buttons

brave fable
#

hud buttons as in zoom in/out and quest/journal?

rancid temple
#

Yeh

brave fable
#

those are just clickablecomponents on the daytimemenubox class

#

it really is just an onscreen menu haha

#

no different to scroll buttons in a crafting page

rancid temple
#

So if you wanted to add more of those buttons how would you do that?

brave fable
#

probably just make a new iclickablemenu to add to the list, as we're doing here

#

include your buttons as clickabletexturecomponent instances on the menu and do the input handling as elsewhere

#

again it's nothing really new or novel, just more buttons

uncut viper
#

just one of me is enough thanks

rancid temple
#

Right, I've just struggled to find any documentation on it, part of the reason I gave up on that mod lol

brave fable
#

ah well there really isn't any documentation haha

#

game code and all

#

copy code, edit code, reload code

rancid temple
#

Experiment until you break everything and then do it again

frosty hull
#

i prefer UI Framework like this in unity game objects MonoBehaviour driven

rancid temple
#

I'm more familiar with making UI in Unity but I know for a fact that being reliant on that system has crippled me elsewhere

brave fable
#

yeah sdv doesn't really do hierarchical ui all that much, i suppose you could call GameMenu and its submenu pages a hierarchy but everything's completely arbitrary and flat

#

if there's one single thing i miss from android development it's nice flexible ui construction

#

which isn't to say that sdv doesn't have a builtin ui framework, it's just only expected to be used for mostly flat pages that never react or resize

#

definitely a bad idea to leave for a few days between adding a ridiculously large and destructive chunk of transpiler and actually running it btw

frosty hull
#

or sometime we should make SMAPI UI Framework built-in

brave fable
#

there's a few projects out there that simplify things

#

stardewui the latest breakout project ofc

hallow prism
#

would "travel safe" be a ok sentence in english or is there a more natural (but preferably, formal) way?

brave fable
#

be safe/drive safe/get home safe are all fine but casual, comes across as personal

#

safe travels is good too

#

somehow i don't think i've ever heard someone say travel safe, just safe travels SDVpufferthinkblob

rigid musk
#

I was just about to say 'safe travels' (while it is very similar) would be how i would write that

hallow prism
#

thanks

rigid musk
#

and safe travels is pretty formal but also natural too i say it all the time to people who I dont know very well but want to be respectful to :]

hallow prism
#

sometimes i have to swap things between english and french

round dock
#

Save travels for formal, polite. Be safe is something you’d say to someone you’re familiar/friendly with.

brave fable
#

am i allowed to place labels on nop opcodes in IL?

slender badger
blissful saddle
rigid musk
#

cheer Congratz!

unique sigil
#

Official Orang Post

#

congrats! SDVpufferparty

blissful saddle
#

Even Nexus recognizes me as a cheeto now

#

yet on it, seems like my NOP try to force SaveLoaded event on farmhands when playing in multiplayer and they stay up to 6AM

#

looking for a way to check if the current player/world is the host to skip the onSavedLoaded event

#

in C#

brave fable
#

simple, you want Context.IsMainPlayer

blissful saddle
#

thanks a lot. I was lost looking through the multiplayer documentation

blissful saddle
#

Since my mod saves data from players on save file, should I worry about it just loading the host data correctly on save load? or the game/smapi takes care when moddata is generate from farmhands?

scenic dawn
blissful saddle
#

ie. should I make check for multiplayer and generate different mod data if it is a multiplayer or single player. what could cause compatibility issues with games that may be played single or multi from time to time.

ocean sailBOT
blissful saddle
ocean sailBOT
#

For help with modding issues, please ask in #1272025932932055121! When asking for assistance there, sharing an error log will help others identify your issue (see https://smapi.io/log for instructions).

blissful saddle
#

seems like a Scale Up 2 crash though...

#

may help to put it in the title when creating a thread in the support section

teal crest
#

excuse me. I want to ask about how to use temporaryAnimatedSprite in events.

#

temporaryAnimatedSprite <texturename> <source_x> <source_y> <source_width> <source_height> <interval> <length> <loops> <tile_x> <tile_y> <flicker> <flip> <depth> <fade> <scale> <scale_change> <rotation> <rotation_change>

I wrote as

temporaryAnimatedSprite "Maps/springobjects" 0 0 16 16 500 1 100 16 20 false false 10 1 1 0 0 0 hold_last_frame/
I expect it as appearing a weed in the position, but seems nothing happen. no error though.
And it's too long command to one by one parameter analysis for me without any reactions.
Anyone notice what's wrong about that?

calm nebula
#

Hmm, what do you have for depth?

#

Try 1

teal crest
#

ok

winged basin
#

not quite sure. but I searched through the files and found a single file that uses it Data/Weddings.json:
"Celebration": "temporaryAnimatedSprite LooseSprites\\Cursors 558 1425 20 26 400 3 99999 26 64 false false 65 0 1 0 0 0 ping_pong/warp Marnie -2000 -2000"
if that helps

teal crest
#

depth 1 was same result. but thanks I would try check that one too.

calm nebula
#

Can you try fade 0?

calm nebula
#

Because the Slash is used as the deliminatoe

teal crest
#

copy & paste later half make appear the weed. don't know what was wrong yet. but it will be where should I start. thanks

calm nebula
#

You have to use the other slash

teal crest
#

slash was just be single because discord erase it in chat 😛

calm nebula
#

Wrap things in `

#

For code blocks on discord

#

That's how I can write mine

teal crest
#

ok it looks like fade was the problem as you said.

#

it works as expected when I changed the fade 0 from origin line. Thank you very much.

winged basin
#

interestingly though, C# wise I get an error if it can't find the specified spritesheet for example. If I patch in a Event via ContentPatcher it won't throw any errors? Or the Event doesn't get triggered to spawn in an temporaryAnimatedSprite

teal crest
#

sprite place was correct. just discord didn't display '//'

#

so, fade 1 mean "instant fade out soon" I guess?

winged basin
#

si I wanted to check if it would throw an error if it wouldn't exist

distant radish
#

Is it possible to put money into a machine?

hard fern
#

😅

#

i dont think so?

distant radish
#

I've never seen someone do it, but I had to ask just in case haha

hard fern
#

the problem is money isnt an item 🤔

teal crest
hard fern
#

idk if u could do some C# magic to make it work,

distant radish
#

I think the easiest solution for a CP beginner like me would be to create some sort of Voucher/Bill that you buy in a real shop, and then put that voucher into the machine

hard fern
#

but to get it to work with CP, it would have to be some kind of item representing money? like you can "Buy" a 500g bill or whatever with 500g

distant radish
#

we read each other's mind xD

hard fern
#

lol

winged basin
winged basin
# teal crest so, fade 1 mean "instant fade out soon" I guess?

I looked at the code and apparently a TemporaryAnimatedSprite starts off with alpha = 1.0, so setting fade to 1 effectively sets the alpha instantly to 0 thus makes it invisible? if u want you can double check it and set the fade to something like 0.01

teal crest
calm nebula
#

Yeah, for most things, 1 is 100%

#

Your average fade in game js like 0.01

teal crest
#

since I won't use that fade function, I had thought I set it as "instant fade in" or something, as opposite.

#

all value was required, so I was not sure all of them.

calm nebula
#

Maybe we should add an example to the wiki

#

Remind me in 6 days to add example to wiki

patent lanceBOT
#

all right atravita but next time you better bring me 20 nirnroot or i ain't doin it (#6420127) (6d | <t:1734793692>)

calm nebula
#

Thank you!!!!

teal crest
#

I'm very glad cause I had totally no idea which one was wrong.

fallow musk
#

what is the difference between sourceRect and bounds for any ClickableTextureComponent?

fossil bear
#

Is there something like wabbajack for stardew valley?
I always liked the idea of being able to download mod packs. But they often need customisation and vortex isn't that good.
Is there a way to let people download mod packs but for example also supply custom config files etc.?
Wabbajck copies your complete skyrim directory and creates a modpack with different game instance so your base game is untouched. That way you can create really customized packs to share.

Is there something like that?

iron ridge
#

does wabbajack not work for sdv?

calm nebula
fallow musk
#

👍

calm nebula
#

I saw you were trying to do a hud button

fallow musk
#

thanks

calm nebula
#

It's just a simple clickable component, everything is handled via smapi events

frosty hull
calm nebula
#

It's just Visual Studio

#

Type three slashes and it'll do that automatically

frosty hull
#

aha, thanks 😯

#

i have question
i build mod from CjbItemSpawner github fork
can i upload mod zip file on release tag?

ivory plume
#

Yep, as long as you follow those mods' open-source license (e.g. linking to the original for attribution).

ornate trellis
#

is there a way to have a custom water overlay on a map no matter what the screensize is or would that be some C# shenanigans(not counting making the map extra big with void just to achieve the effect)

hallow prism
#

i'm not sure what the screensize has to do with it?

ivory plume
#

The Modding:Items page is pretty big after the 1.6 changes, and it's hard to add more specific info like texture layouts. Any thoughts on splitting it into more specific pages?

Possible scheme:

Modding:Items    <-- intro, common info, description of each item type with links

Modding:Big craftables
Modding:Boots
Modding:Furniture
Modding:Hats
Modding:Pants
Modding:Objects
Modding:Shirts
Modding:Tools
Modding:Weapons
ornate trellis
drowsy pewter
#

And most of the time I'm linking someone to a specific item type anyways

hallow prism
ornate trellis
#

i just have a alwaysfront layer rn but as you can see my map is small so everything outside is jsut void with no water overlay(tho since its not much light it jsut looks blue oops)

wanton pebble
#

I know it wouldn't be alphabetical, but objects would probably be the most common over all mods, whereas stuff like clothing/tools/weaponry generally end up secondary

drowsy pewter
#

Why do you want water overlay on the void anyways

hallow prism
# ornate trellis

ok it's not really context like i asked but i think you mean you want to give an "underwater" of sort effect

ornate trellis
#

because i wanted an underwater-y feel and just trying to put the overlay on the inside of the cave gives too much contrast

hallow prism
#

which isn't what i put under the words "water overlay" because for me it's overlay FOR water and for you it's overlay OF water (maybe?)

ornate trellis
drowsy pewter
#

Okay I also thought the same thing as lumina?

#

I dont know how to draw out there without C#

ornate trellis
#

oh yeah that was actually jsut my initial question if something like that needs C#

#

alternatively, without putting it on the void it'd look like this but idk if it still has this underwater-y feel

drowsy pewter
#

A tesselating weather effect might be able to draw out there but I dont know how to use weather wonders or if you would want to add another framework

hallow prism
#

i say it's better but maybe with some texture it'll be more obvious and also hmm

drowsy pewter
#

yes, the additional image helps

hallow prism
#

if there's no water pond maybe because i'm not sure if it would be obvious as water if there's another layer of water

ornate trellis
#

hm

#

well, the thing is i want it underwater-y but more in a uh

#

you know how when youre in a cave and theres water and the water movement or w/e reflects on the surrounding area

hallow prism
#

then maybe consider something with animation, like reusing the water overlay in cursor but with different colors

#

anyway

#

it depends of the efforts you want

ornate trellis
#

i plan to do a underwater type of map but thatll be big enough so i can just slap decorative areas to have the map bigger or w/e but this one is jsut 20x20 beluga

hallow prism
#

it's pretty good in the latest image for the concept

#

and can work as it is with the right context

ornate trellis
#

i hope the quality drop of the vid aint too bad

hard fern
#

ur so fast...

#

but i think it looks good?

ornate trellis
#

im just fast cuz i had the animation for the regular water in tiled already lol

hard fern
#

no like literally

#

ur walking speed

#

lol

ornate trellis
#

OH lol thats max CJB speed

#

i gotta go fast

hard fern
#

makes me feel slow when i test lol

#

speaking of

#

i gotta work on my mod some more

#

taking a break from my npc simply bc i hit a writing wall

ornate trellis
#

thats why i have a long scope creep list so i can jsut do something else when i am fed up with doing a certain thing /hj

hard fern
#

grgnn...

ornate trellis
#

time for me to look at warps again

winged basin
#

still a bit goofy but its getting there

gray bear
#

HE HOP

pine elbow
#

cute

gray bear
#

screams

ornate drift
#

how can i add another change without fucking up the brackets

hard fern
#

just add another set of brackets?

ornate drift
#

between where

hard fern
#

just. after the block you already have

ornate drift
#

like between which brackets

latent mauve
#

Before the ]

hard fern
#

remember the comma at the end of your previous block

lucid iron
#
{
  "Format": "2.4.0",
  "Changes": [
    {
      "Action": "Include",
      "FromFile": "data/valley.json"
    },
    {
      "Action": "Include",
      "FromFile": "data/island.json",
      "When": {
        "LocationContext": "Island"
      },
      "Update": "OnLocationChange"
    },
    {
      "Action": "Include",
      "FromFile": "data/objects.json"
    },
    {
      "Action": "Include",
      "FromFile": "data/flooring.json"
    },
    {
      "Action": "Include",
      "FromFile": "data/zothers.json"
    },
  ]
}
#

its like this

#

[] is a list of many {} separated by ,

ornate drift
#

like this?

lucid iron
#

dont forget the ,

#

but anyways pls get a proper text editor like visual studio code or notepad++

ornate drift
#

why

#

is notepad unreliable

lucid iron
#

so you don't have to ask inane questions like this

hard fern
lucid iron
#

it checks format for u

ornate drift
#

oh

#

hm

#

are they on microsoft store

teal bridge
#

Is there some save data stored outside the Saves directory? I was trying to open a save someone sent me for troubleshooting but it just doesn't show up in the save list after copying it to my save directory.

lucid iron
#

vsc probably? microsoft owns that one

hard fern
#

just look it up

lucid iron
hard fern
#

notepad++ is free for download too

lucid iron
#

oh and turn off steam cloud save maybe

teal bridge
#

Anything. The save file just doesn't appear in the list when I go to load.

hard fern
#

🤔

teal bridge
#

I don't use Steam. It's GOG, and I'm launching it directly from the command line so no galaxy sync.

latent mauve
#

They make it easier to see the individual elements and will automatically show when you have syntax errors

ornate drift
#

did i add the comma correctly

hard fern
#

!json

ocean sailBOT
#

JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.

If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.

When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.

hard fern
#

you can check it yourself 👍

lucid iron
#

i have thing where i symlink to different save folder when i switch between mod lists so i dont think theres like a separate "saves list" to update

latent mauve
#

I did my earlier coding on Notepad (not N++) in conjunction with the smapi.io/json validator just fine, so it's doable without swapping programs, but it does help

ornate drift
#

yippeeeeee,,,,

lucid iron
#

the cloud save stuff is all i can think of for this situation

#

does the save u got have both FarmName_xxxxx and SaveGameInfo and their _old versions

teal bridge
#

Yeah, all that looks fine.

#

Huh, ok... I had to run it with the Galaxy sync, which failed, but then the save showed up anyway. 🙄 whatever.

ornate drift
#

sam open the house i need to check your portrait sprite god damnit 💢

lucid iron
#

debug wtc sam

ornate drift
#

theres a debug mode/

#

?

lucid iron
#

there's a number of debug commands

hard fern
#

is it possible to put more than one category in like a "requiredtags" field in order to allow any item from any one of those categories, or is that not how that works

ornate drift
lucid iron
#

tags is a list yea

ornate drift
#

that is NOT sam 🙏

lucid iron
#

for example vanilla bone mill:

"RequiredTags": [
  "bone_item",
  "!id_o_881"
],
#

any bone item, except for (O)881 bone fragment

#

this is AND so if u want OR then u need to add another "Triggers" entry

#

also on bone mill rule 1 is the 5 bone frag trigger AquaThumbsup

ornate drift
#

how can i change sams name
not every instance of his name where someone mentions him but like his bio and all

#

i think its called a display name

lucid iron
#

are you sure you don't wanna just make a standalone sonic npc

ornate drift
#

no im bad at coding lol

lucid iron
#

i think sam would find sonic radical

ornate drift
#

sam is suitable for sonic

lucid iron
#

and become good friends

hard fern
#

💀 i couldnt find a list of category context tags thingies...

ornate drift
lucid iron
#

!npc

ocean sailBOT
#
Creating a Custom NPC

Keep in mind that making NPCs is a complex process that requires learning many different aspects of Stardew modding.
Here are a few links that can help get you started on all that you need to know:

ornate drift
#

cant i just code everything in json

lucid iron
#

u can prob start with the npc builder spreadsheet

#

yea

#

you can make an npc entirely in content patcher

ornate drift
lucid iron
#

the wip npc builder in the command

ornate drift
#

real 🔥

patent lanceBOT
#

@next plaza: look into EnderTedi’s collection of SpaceCore bugs (48h ago)

ornate trellis
#

how come whenever i wanna look at some intensive warp explanation i cant find any besides the example in the location wikipage thonking

viscid ice
#

so i read into scaleup 2 and tried to create whats needed... but come to the stated issue. i tried to find out myself what i need to do, but kinda got stuck and need ideas/solutions x.x

latent mauve
#

If you run into an issues with the WIP NPC Builder, definitely let me know! I'm pretty active around here, so I'll try to fix any errors y'all track down

pine elbow
latent mauve
ornate trellis
#

oh yeah ive been staring at that page alongside the location one but i wanted to add it via CP and not directly on the map(to not confuse myself where to look later if theres issues)

viscid ice
latent mauve
#

!json

ocean sailBOT
#

JSON is a standard format for machine-readable text files that's used by Stardew Valley mods.

If you need help with a JSON file, you can upload it to smapi.io/json to see automatic validation and share the link here.

When making mods, it's recommended to edit your files in a text editor with JSON support, such as VS Code, Notepad++, or Sublime Text. These programs will check for syntax errors.

latent mauve
#

Can you post your JSON?

viscid ice
#

pls help, i draw but i dont know shit about coding a mod xD

pine elbow
prime gull
#

guys can someone ss the town interior tile sheet and circle the bedroom door tile cause i acc cannot find it

lucid iron
#

i think this only supports the regular kind of map property warp, ur tile action warp with mail flag seems correct

pine elbow
brittle ledge
# prime gull guys can someone ss the town interior tile sheet and circle the bedroom door til...
Stardew Modding Wiki

This is a mildly advanced guide for modders that assumes familiarity with Tiled, Content Patcher, and map modding fundamentals such as the difference between Map Properties and Tile Properties.
Interior doors, such as the one in Figure 1, are interactive map elements with hardcoded behaviour (see InteriorDoor.cs). There are three types in the b...

prime gull
#

THANK YOU I WAS LOOKING SO LONG

hard fern
#

wow are doors that complicated

brittle ledge
brittle ledge
lucid iron
#

doors r just hella specific

hard fern
#

scary

pine elbow
brittle ledge
#

hmm

#

let me see what I did for mine, one sec

#

mine's i18n'd and I assume you haven't done that, does your syntax match this? ``` {
"Action": "EditData",
"Target": "Strings/Schedules/JortsCat",
"Entries":
{
"Trash.000": "{{i18n:JortsCat.Trash.000.{{Random: {{Range: 1,6}} }} }}",
"ColaShop.000": "{{i18n:JortsCat.ColaShop.000.{{Random: {{Range: 1,5}} }} }}",
"Kevin.000": "{{i18n:JortsCat.Kevin.000.{{Random: {{Range: 1,7}} }} }}",
"CatCafe.000": "{{i18n:JortsCat.CatCafe.000.{{Random: {{Range: 1,6}} }} }}",
"Pride.000": "{{i18n:JortsCat.Pride.000}}",

        },
    },```
#

oh hm, I wonder if it's case sensitive

#

ah, my load is lowercase so I suppose not

pine elbow
ornate trellis
#

wait a sec, are you saying I could've done Random: {{Range: 1,6}} instead of Random:1++2++3++4++5++6++7++8|inputSeparator=++

dusty scarab
ornate trellis
#

shakes fist

fossil bear
brittle ledge
calm nebula
#

In the past, range was quite inefficient

#

Sinz fixed that

pine elbow
brittle ledge
#

....Atra, do 0 schedules do anything weird with animations/string dialogue?

calm nebula
#

You can't use them in a 0 schedule

brittle ledge
#

Well then.

calm nebula
#

But the behavior should be "is ignored"

#

And by that I mean the entry with the 0

#

I literally do 0 location x y/610 location x y dialogue for Demetrius

#

The behavior you see is if the entire asset is invalid

pine elbow
#

I'll change it but it didn't work when I started with 610 either

#

I just did that to test it faster

brittle ledge
#

So it's a problem with the whole schedule, then, atra

#

I'm not seeing any issues but if one of those end tiles is impassible that would do it, yeah?

latent mauve
#

Otherwise, someone else who's played with ScaleUp 2 may need to step in

teal bridge
# fossil bear What? I didn't know that!!!!

Probably worth pointing out that, at least last time I checked, there was precisely one WJ list for Stardew and it's a bit of a kitchen-sink deal. Most of the Stardew community seems to find managers like Stardrop "good enough", since SMAPI already has a content pipeline and doesn't need the same degree of file-level virtualization as a Bethesda game. And you can already point SMAPI at a different mod directory via command-line arguments.

viscid ice
latent mauve
#

ah! Can you provide the full JSON file where you're defining the TrueShape token?

#

(probably your content.json?)

fossil bear
viscid ice
#

the trueshape token is part of the s&s mod

latent mauve
#

ok

pine elbow
latent mauve
#

Are you using S&S as a dependency on your own mod?

hard fern
#

it's part of s&s, but it your mod wont know that unless you-

latent mauve
ornate trellis
#

i think its time for me to make more fish :^)

viscid ice
#

i did add the unique ID of it in dependencies in the manifest

latent mauve
#

That's if Dynamic Tokens load across mods, I genuinely don't remember if thats the case.

brittle ledge
latent mauve
hard fern
#

?

latent mauve
#

Yeah, I think so too

#

But they might be able to bypass that by using the parsed token instead

viscid ice
#

as far as i understand it handles the portraits fitting with the changing gender, like changing appearance

latent mauve
#

patch parse "{{TrueShape}}" "<whatever S&S's uniqueID is>"

#

try that in the SMAPI console?

#

I don't know if you can run it for just the token, but worth a try

#

if not, you can probably run it as part of asset lookup

calm nebula
#

Where does TrueShape come from

latent mauve
#

Swords & Sorcery, apparently

#

And they're trying to call it in their own mod's asset path, which... won't work as is, AFAIK

#

So, figuring out the potential parsed values that it COULD be using seems like a way to properly target it with the new mod?

calm nebula
#

You could do something with buttons token mod

#

But yeah

#

You can't normally read another mods dynamic tokens

viscid ice
viscid ice
latent mauve
rare prawn
#

Hello! I'm not sure if this is a complicated question, but I am trying to fix a furniture shifting issue when the building is upgraded in my Medieval Tiny Shed mod. It's a 1.6+ custom building, and it has its own upgrades (base, tardis, and tardis+)
My question is how do I resolve the furniture shift issue while keeping in mind the 2 upgrades, and that there may be multiple sheds on the map?
Aimon used this fix for their Aimon's Fancy Shed, but this is not for a custom building and it depends on selecting which size shed you want to use in the config menu, but it's the only example I can find that doesn't use the IndoorItemMoves option which only seems to move objects, not furniture:

        "LogName": "Furniture Shift Fix",
        "Action": "EditData",
        "Target": "Data/Buildings",
            "TargetField": [ "Big Shed", "IndoorItemMoves" ], 
            "When": { "Big Shed Redesign": "true" },
        "Entries": {
            "AimonShed2": {
                "Id": "AimonShed2",
                "Source": { "X": 1, "Y": 6 },
                "Destination": { "X": 1, "Y": 10 },
                "Size": { "X": 13, "Y": 10 },
                },
            },
    }```

Here is my code, with no adjustments currently: https://smapi.io/json/none/9ce6a891e4054225912d0f63895436c7
#

Also please talk to me like baby. Brain tier 1 hai

brittle pasture
#

so if you upgrade a Small Shed to a Big Shed, what IndoorItemMoves does is "move a rectangle of size Size from the Source tile in the Small Shed to the Destination tile in the Big Shed"

rare prawn
#

I thought that it only moved objects though, not furniture? I only saw someone comment that before though, I am not 100%

brittle pasture
#

it should also move furniture

rare prawn
#

👀

#

Oh okay, so this would work with my issues then

#

I will fiddle around, thank you! 🩷

hard fern
#

is it possible to have crafting byproduce? like when you craft x you get another fun secret thing?

lucid iron
#

is that a thing better crafting supports NotteThink

viscid ice
lucid iron
#

for machines emc has a byproducts feature

pine elbow
brittle ledge
#

Does it work if you swap the animation out for the string?

brittle pasture
#

you can't do it with vanilla crafting recipes

pine elbow
hard fern
#

... more trigger actions

#

😭

near sierra
#

Can you make a letter a quest reward?

teal crest
pine elbow
#

Sorry

brittle ledge
# pine elbow nope.

hm so that seems like there's something going on with your schedule, period. But I'm not seeing anything SDVpufferthinkblob

#

stupid question, is your NPC's internal name just Niki?

pine elbow
brittle pasture
#

don't think you can do it as a direct reward

pine elbow
teal crest
#

When you set other animation, she do that move?

#

in that place

pine elbow
#

I didn't check other animations in that specific location but when I checked another one in Town, it didn't work either

pine elbow
#

she just... stands there

teal crest
#

if she do, problem is animation. if not the schedule problem maybe

brittle ledge
#

Is the JSON you posted earlier your full content.json?

brittle ledge
#

No, I guess it can't be. Can you post your full content.json?

hard fern
#

oh, there we go

pine elbow
#

Thanks for looking into this. I really hoped it was some stupid typo I overlooked

teal crest
#

how about "{{ModId}}_Niki_notes" that's what I'm doing for my NPC

pine elbow
#

I should do that when I change my internal NPC name to {{ModID}}_Niki. I didn't think this through when I first started making mods

teal crest
#

hey yours are't same folder as mine about animation

#
  "Action": "EditData",
  "Target": "Data/animationdescriptions",
  "Entries": {
"{{Lowercase:{{SigId}}}}_sleep": "43/43/43",//睡眠時

mine

pine elbow
#

oh wait

teal crest
#

"Action": "EditData",
"Target": "Characters/Data/animationDescriptions",
"Entries": {
"Niki_notes": "16/16 16 16 16 16 16 16 16 16 16 16 16 16 16 18 18 18 19 18 19 18 19 18 19 18 19 18 19 18 19 18 19 16 16 16 16 16 16 16 16 18 19 18 19 18 19 18 19 18 19 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 16 17 16 17 16 17 16 17 16 17 16 17 16 17/16",
yours

#

yours inside Characters/ is that right?

ornate trellis
#

ye its just Data/animationdescriptions

brittle ledge
pine elbow
#

yeah that's right

#

wow I was stupid

tame nebula
#

Sorry to butt into this but I was wondering if someone could help me figure out why a letter I'm trying to add hasn't shown up (relevent json below)

  "Action": "EditData",
  "Target": "Data/mail",
  "Entries": {
    "{{ModId}}_RoryHelp": "Text"
  }
},
{
  "Action": "EditData",
  "Target": "Data/TriggerActions",
  "Entries": {
    "{{ModId}}_UPMail": {
      "Id": "{{ModId}}_UPMail",
      "Trigger": "DayStarted",
      "Actions": [
        "AddMail Current {{ModId}}_RoryHelp"
      ]
    }
}```
brittle ledge
#

See if that fixes it? I'm still looking at your schedule json to see if I see anything else

brittle pasture
uncut viper
hard fern
#

😓 can i put a category (not a number category) in a recipe data

uncut viper
#

aren't all categories numbers?

hard fern
#

oh wait ur right

brittle pasture
#

though be warned that not every category will show up properly

hard fern
#

i meant like context tag

calm nebula
#

Not without spacecore

brittle pasture
#

in that case nope, need either SpaceCore or better crafting

#

if you're already using BC custom recipes then use that

hard fern
#

back we go to better crafting

brittle pasture
hard fern
#

better cooking:

pine elbow
#

Now she does the animation but the strings aren't fixed

ornate trellis
#

progress

tame nebula
ornate trellis
#

do you have something in your i18n for that shedule dialogue

brittle ledge
ornate trellis
#

i remember the game doing a funky if its left as ""

#

thats why i either put a word or just ... lol

teal crest
hard fern
#

hhh... SDVpufferflat im a bit confused reading the docs for better crafting, i can't tell if i can include it in the main mod or need a separate mod for it? im not editing a vanilla crafting recipe, im adding a completely new one, so would i just stick that into the crafting station portion?

pine elbow
brittle ledge
#

also I don't know if this is relevant, but I usually see strings in the format NPCname.Thing.000 whereas you've got NPCname.000

brittle pasture
pine elbow
brittle pasture
#

just target the assets exposed by BC in your Target field

hard fern
#

oh ok

ornate trellis
pine elbow
teal crest
#

you looks like trying display Niki.000.1 but the game is searching Niki.000

brittle ledge
#

that should be the i18n key, but the schedule call and the string name look like they're both Niki.000

ornate trellis
#

i figure you have actual text in your i18n

teal crest
#

then i18n file is correct?

brittle ledge
#

That shouldn't be the problem, but also case sensitivity happens when you least expect it

pine elbow
#

it's all lowercase for him

uncut viper
#

targets are not case sensitive

brittle ledge
#

Button I have trust issues

uncut viper
#

i understand! i trust the CP Docs tho

ornate trellis
pine elbow
#

i18n file is like this because I didn't know how to set... what do I call it, possibilities?

ornate trellis
teal crest
#

did you load initial file for "Target": "Strings/schedules/Niki"?

pine elbow
#

Yes, I loaded blank.json for that

ornate trellis
#

sometimes i hate my typos

brittle ledge
pine elbow
#

I'm starting to think it's just my computer

uncut viper
#

if it helps, its almost never just someones computer. whether thats good or bad depends on your outlook though i guess

pine elbow
latent mauve
brittle ledge
#

question, if you remove the schedule string do you get her regular dialogue?

pine elbow
#

yes

pine elbow
brittle ledge
#

okay, so we can also cross out your blank load, since it's functioning for regular dialogue

ornate trellis
#

i am having war flashbacks with my map issues from yesterday where it was me leaving a tiledata empty to make the whole map load crap out

#

and it only took 500 years to figure out

brittle ledge
#

Okay, if you've still got the game loaded, put patch summary full into your SMAPI console and then post the log?

latent mauve
#

I ended up doing this for Satoru Gojo's forest training text:

ocean sailBOT
#

Log Info: SMAPI 4.1.9 with SDV 1.6.14 build 24317 on Microsoft Windows 10 Pro, with 12 C# mods and 1 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

latent mauve
#

I still am not entirely sure why, but it WOULD NOT return the actual text string for a schedule entry until I loaded the text string into Strings/Characters instead.

pine elbow
#

I should try that.

brittle ledge
#

Change this to "001": "{{i18n:Niki.001.{{Random: {{Range: 1,5}} }} }}",

pine elbow
#

Wait I wasn't allowed to do that??

brittle ledge
#

Range is looking for a start and end. If you want just a specific set of items like 1,2,3,4,5, it's just {{Random: 1,2,3,4,5}}

pine elbow
#

Oh right
that was +1 stupid of me

#

I'll change it but I'm only using 000 for testing so I don't think that's the main problem here

rare prawn
#

Confused I require assistance.. I have no idea what I did, so I am not really sure what to do to fix this..
I am trying to resolve a furniture shifting issue with my Medieval Tiny Shed, and this was the starting furniture and objects I used as a reference: (picture)
This is the IndoorItemMoves section of my code that I changed:

                {
                "Source": { "X": 0, "Y": 0 },
                "Destination": { "X": 4, "Y": 0 },
                "Size": { "X": 8, "Y": 14 }
                }
            ],```
brittle ledge
#

It might be causing the whole patch to fail is my thinking - if you check the patch summary, it says it's not loaded.

rare prawn
#

and somehow it ended up like this???:

pine elbow
#

I should have posted i18n from the start lol

#

thanks guys... I didn't even doubt it

brittle ledge
#

I mean I should've asked for a patch summary about three steps ago SBVLmaoDog but the success is all that matters!

brittle pasture
brittle ledge
#

also, I saw your NPC on Nexus the other day, she looks interesting SDVpufferheart can I make a small suggestion about your mod page?

pine elbow
#

of course!

brittle pasture
#

hmm

rare prawn
brittle pasture
#

yeah I only looked at the flooring and didnt notice the lamps

rare prawn
#

I am confused why the lamps kind of went wherever and then the blue plants stayed on the left

#

and the cushion

brittle pasture
#

can you try moving just the floor stuff (not the wall)

brittle ledge
# pine elbow of course!

I think it'd help if you added some more screenshots of her to your page SDVpufferheart like some more shots of her daily dialogue, showing her different expressions, and maybe some non-spoiler shots of her heart events?

rare prawn
pine elbow
ornate trellis
#

meanwhile while I was hiding in here I made two whole fish sprites lmao

brittle ledge
#

I wrote a whole two lines in my fish tutorial 🤝

ornate trellis
#

look at these goofs

#

Raboras and Rainbow Kribs

#

not so rainbow but yeah

hard fern
#

fish

#

feeesh

ornate trellis
#

yass

#

i wonder how many gonna be too many thonking

brittle ledge
#

more than More New Fish

hard fern
#

tbh. im dreading fish sprites

brittle ledge
#

fish aren't too bad

ornate trellis
#

i have currently 21 and now plus these two (and possibly more)

hard fern
#

SDVpufferflat why am i making so many handkerchiefs

ornate trellis
#

why not

hard fern
#

i have to make crafting recipes for all of these

ornate trellis
#

ive, like 30 cooking recipes and 20 crafting recipes by now, i feel you

#

still unsure if i should make my hats craftable or sold by hatmouse

hard fern
#

i got carried away 😭

ornate trellis
#

mood

brittle ledge
#

question, how does the Edibility field relate to the actual edibility in-game? Is it a 1:1 where 10 edibility = 10 health/energy restored or is there a calculation involved?

uncut viper
#

there is a formula and its not equal for both health and stam

#

unfortuinately i do not remember what wiki page its on,

#

nvm i found it
"A numeric value that determines how much energy (edibility × 2.5) and health (edibility × 1.125) is restored when this item is eaten. An item with an edibility of -300 can't be eaten, values from -299 to -1 reduce health and energy, and zero can be eaten but doesn't change health/energy. Default -300."

brittle ledge
#

thank you! I checked the item page but couldn't find it.

hard fern
#

fascinating

tender bloom
#

plus it gets rounded

#

I find it's too annoying and just look at vanilla foods

uncut viper
#

i also chcked the item page but its actually on the Objects specific page

hard fern
#

i just guess a number lol

uncut viper
#

i think spacecore allows you to set arbitrary values? dont quote me on that tho

rare prawn
#

This is probably a really dumb basic question, but when I am editing code in a content.json over and over is there a way to load/reload that into the game without closing the game and relaunching it over and over every time I make changes?

brittle pasture
#

!reload

ocean sailBOT
#
How do I reload my changes while I'm still in game?

-You cannot reload tokens, that's a forced restart unfortunately
-If you've done any CHANGES, then type into SMAPI:
patch reload YourMod.UniqueID
-If you've done i18n DEFAULT.jSON changes, then type into SMAPI:
reload_i18n then
patch reload YourMod.UniqueID
-C# Visual Studio has a feature called Hot Reload
-C# Rider also has Hot Reload
-Generally working in C# it will be called "Hot Reload" (usage may vary)

rare prawn
#

👀

#

Thank you!

uncut viper
#

hm, i wonder if that command should specify that its dynamic tokens that are a forced restart not normal tokens

brittle ledge
#

okay, I have two other dumb questions regarding fish. First off, is it required in the item data that Type be Fish and Category be -4? I assume so but

acoustic summit
#

You mean for them to be catchable from locations? If so it dosnt need to be of type fish / category -4 (I think anyway)

teal bridge
#

You can fish up trash and even big craftables, so yeah, not required for the fishing itself.

#

The category is mainly for cooking recipes I think?

acoustic summit
#

And collection, I believe

brittle ledge
#

according to the wiki -4 is also affected by the fishing professions

acoustic summit
#

The sell price would be, yes

brittle ledge
#

so in theory you could fish up, say, tree fruit?

acoustic summit
#

Yeah

brittle ledge
#

👀

#

[ponders new crimes]

teal bridge
#

One part of the game has you fish up a Void Mayonnaise.

#

It might be hardcoded, mind you.

rancid temple
#

Really? I can't recall having to fish it up SDVpufferthinkblob

teal bridge
#

You don't have to, but in a minmax you might not have a better way to get it.

rancid temple
#

I just didn't even know it was an option in the first place lol

teal bridge
#

And to our eternal frustration, CA massively lowered the fish chance in 1.6.9.

rancid temple
#

Is there an in-game clue to this? This is such a wild way to get it if it's unprompted lol

teal bridge
#

Well, you can fish it in exactly the same place you need to use it.

ornate trellis
#

wasnt it in the witches swamp so you can pass to the hut

rancid temple
#

Yeah, that's what I'm seeing on the wiki, I just don't recall that ever being obvious

rare prawn
#

Okay so I tried fiddling away with the code in multiple ways, tried moving around the wall items by the upper and lower wall separately but it was still wonky and I can't really explain it, but this is the result of me just trying to move only the floor items:
https://i.imgur.com/CZCqag0.png

                {
                "Source": { "X": 0, "Y": 6 },
                "Destination": { "X": 3, "Y": 6 },
                "Size": { "X": 8, "Y": 9 }
                }
            ],```
ornate trellis
#

that i only got to know through this discord too tbh lol

teal bridge
#

Lots of fishing secrets aren't made obvious. Iridium Krobus Statue has no clue, does it? (Or maybe it's in one of the secret notes)

ornate trellis
#

i dont think it has a clue

rare prawn
teal bridge
#

I think even the Gourmand Statue is just a secret.

hard fern
#

debating if i should add more handkerchiefs or move on 😔

ornate trellis
#

you know my answer

teal bridge
#

Don't ask how a fishing rod can pull up a 2500 lb statue. Forest Magic™

rancid temple
#

Gourmand at least has a stupidly high drop rate

near sierra
#

Is it possible to use console commands to set it so you've never spoken to a character before? I need something like this to make it possible to test some code.

teal bridge
#

Void Mayonnaise used to have a pretty high drop rate too, it was only lowered in 1.6.9

rancid temple
#

I think I only knew about the Iridium Krobus from game files

teal bridge
#

It was like 1 in 5 or something, IIRC.

rancid temple
#

There's no command to make an NPC untalked to before, as far as I can tell, but depending on what you're trying to do it might not even be necessary to do that

teal bridge
teal bridge
#

But you say you're testing code, so you could pretty easily register your own console command to delete the friendship data from the dictionary.

#

...I think.

uncut viper
#

thats all it should take yeah

near sierra
# rancid temple What are you trying to test?

Basically, there's some code that's supposed to trigger when you've talked to a certain NPC in our mod for the first time, and I think the reason I can't get it to trigger is the fact I've talked to him in an earlier build.

teal bridge
#

Clearing friendship entry might resolve that but it depends if there's some intermediate state like a mail flag involved.

near sierra
#

I'll try it.

uncut viper
#

afaik everything that matters will return unmet if there is no dictionary entry, including content patchers relationship token

brittle ledge
#

Now I remember what the second question I had was!

#

Can context tags take . or is it only underscore?

#

Related: can they have tokens, e.g. {{ModId}}_item?

lucid iron
#

yea if ur in content patcher

finite ginkgo
#

Since tokens are resolved by CP before being added in: yes, just keep in mind if a token changes value it'll only change the context tags for new items since items retain their data

brittle ledge
#

SDVpufferthumbsup thank you!

rare prawn
#

This was my most recent attempt.... :

                {
                "Source": { "X": 0, "Y": 6 },
                "Destination": { "X": 3, "Y": 7 },
                "Size": { "X": 9, "Y": 9 }
                }
            ],```
#

I am so confused SDVpufferdizzy

latent mauve
#

Which items specifically aren't moving where you expect them to? Because the bottom left blue flowers seems to be mostly correct in both instances, (likely because it's outside of your source range)

#

is it worth trying to move one tile at a time and make them separate moves rather than grabbing the whole rectangle area, at least while troubleshooting?

rare prawn
#

All of the floor items

latent mauve
#

This looks like your tile coordinates are off

rare prawn
#

the plants, lamps, carpet, floor pillow

latent mauve
#

If you use debug ppp while standing in your item's destined location (the top left corner of the selection box), does it match up with what you got from debug mode?

rare prawn
#

Only the top blue and pink plant and the middle lamp

#

Everything else is in random spots

#

for the previous attempts it was even messier

rare prawn
latent mauve
#

Have you tried to individually move one of the items that is placing wrongly, just to be sure?

rare prawn
#

I tried to move the wall items separately from the floor items, but right when it seemed to be proving fruitful some weird stuff happened where half of the top section moved all the way over to the right way outside of the coordinates, and one of the left plants were missing

#

They are all supposed to move to 3,7

#

Well, like the top left corner of the layout is

#

Only the top row seemed to behave this time around, minus the carpets...

#

The carpets did their own thing

latent mauve
#

And your new map is expanding from the right and down of the old map, right?

#

So your coordinates for the walls at the top and left are the same?

rare prawn
#

It would normally look like this if I didn't use the IndoorItemMoves:

latent mauve
#

Okay, that answers my question

#

And if you only did a vertical move, do some of the items still move out of alignment?

rare prawn
#

I can check, just a sec

#

I tried 2 different coordinates just in case I messed up with the 0

#

I did 0,7 and 1,7

#

Which should've put them down 1 tile if I am not being super dumb

#

I am so confused lol

rancid temple
#

Well, you could always try creating individual entries for each thing you want to move

rare prawn
#

SDVpufferdizzy Like for each individual tile?

latent mauve
#

Yeah, that was why I said to try it one one to test first

rancid temple
#

Only other weird thing I'm seeing is that your Size X is 9 but probably should be 7. I have no clue if that would cause issues though

latent mauve
#

Oh, the size is a good call, change that too

rare prawn
#

Yeh I made it bigger after a few attempts

#

I was still having issues when it was a 7 x.x I made it bigger just in case I was making it too small

latent mauve
#

Quite honestly, I would have tried each of the corners individually, as a 2x2 or 3x3

rancid temple
#

I'm wondering if it's having issue with placing the items because of collision checks

latent mauve
#

And then if it still got wonky, try moving it only on one axis.

rare prawn
#

I will try the tiles individually and see what happens SDVpufferpleading

rancid temple
#

With these size based movements, I could easily see this grabbing something that was already moved and moving it again lmao

#

Rather than establishing all the moves that need to be done and then completing them at once, it does each move then goes to the next

#

So if you aren't moving them far enough away, the overlap would mess it up

rare prawn
#

Doesn't seem to be working either
https://i.imgur.com/j5s2lyY.png
There is a hanging plant still stuck at 1,1 - and for some reason the hanging plant on the right swapped with one of the blue hanging flowers?

                { "Source": { "X": 0, "Y": 1 }, "Destination": { "X": 3, "Y": 1 } },
                { "Source": { "X": 1, "Y": 1 }, "Destination": { "X": 4, "Y": 1 } },
                { "Source": { "X": 2, "Y": 1 }, "Destination": { "X": 5, "Y": 1 } },
                { "Source": { "X": 3, "Y": 1 }, "Destination": { "X": 6, "Y": 1 } },
                { "Source": { "X": 4, "Y": 1 }, "Destination": { "X": 7, "Y": 1 } },
                { "Source": { "X": 5, "Y": 1 }, "Destination": { "X": 8, "Y": 1 } },
                { "Source": { "X": 6, "Y": 1 }, "Destination": { "X": 9, "Y": 1 } },
                { "Source": { "X": 7, "Y": 1 }, "Destination": { "X": 10, "Y": 1 } },
                { "Source": { "X": 8, "Y": 1 }, "Destination": { "X": 11, "Y": 1 } }
            ],```
#

Maybe I need to reverse the order?

rancid temple
#

Where are you getting your source numbers from?

#

I think it might be based on the new locations coordinates and not the old

#

Based on your new location all those Source coordinates would be the top of the map where nothing is

rare prawn
#

I was taking them from the new location

#

I tried the Y 0 but nothing moved, once I changed to Y 1 things moved

rancid temple
#

Oh, those things up top did move

rare prawn
#

I tried reversing the order, hoping it would help the priority?
https://i.imgur.com/KRVN2BV.png
The hanging plant on the left is where it should be now, but the blue hanging flowers decided to randomly go to the right still

                { "Source": { "X": 8, "Y": 1 }, "Destination": { "X": 11, "Y": 1 } },
                { "Source": { "X": 7, "Y": 1 }, "Destination": { "X": 10, "Y": 1 } },
                { "Source": { "X": 6, "Y": 1 }, "Destination": { "X": 9, "Y": 1 } },
                { "Source": { "X": 5, "Y": 1 }, "Destination": { "X": 8, "Y": 1 } },
                { "Source": { "X": 4, "Y": 1 }, "Destination": { "X": 7, "Y": 1 } },
                { "Source": { "X": 3, "Y": 1 }, "Destination": { "X": 6, "Y": 1 } },
                { "Source": { "X": 2, "Y": 1 }, "Destination": { "X": 5, "Y": 1 } },
                { "Source": { "X": 1, "Y": 1 }, "Destination": { "X": 4, "Y": 1 } },
                { "Source": { "X": 0, "Y": 1 }, "Destination": { "X": 3, "Y": 1 } },
            ],```
#

I have a feeling if I keep going with the pattern that things will start to randomize again, cause idk why the dried flowers are on the right

#

The dried flowers were originally at 2,1 - should be at 5,1 but they're at 11,1 o.O

#

I'll try one more thing I can think of

#

ugh that reload patch command thing yall gave me earlier is chefs kiss idk how I went so long without it

rancid temple
#

I think you have to get more granular with the order of moving things

rare prawn
#

Apparently it did not like that extra line of code that moved nothing

#
                { "Source": { "X": 7, "Y": 1 }, "Destination": { "X": 10, "Y": 1 } },
                { "Source": { "X": 6, "Y": 1 }, "Destination": { "X": 9, "Y": 1 } },
                { "Source": { "X": 5, "Y": 1 }, "Destination": { "X": 8, "Y": 1 } },
                { "Source": { "X": 4, "Y": 1 }, "Destination": { "X": 7, "Y": 1 } },
                { "Source": { "X": 3, "Y": 1 }, "Destination": { "X": 6, "Y": 1 } },
                { "Source": { "X": 2, "Y": 1 }, "Destination": { "X": 5, "Y": 1 } },
                { "Source": { "X": 1, "Y": 1 }, "Destination": { "X": 4, "Y": 1 } },
                { "Source": { "X": 0, "Y": 1 }, "Destination": { "X": 3, "Y": 1 } },
            ],```
rancid temple
#

You might also want to try doing a full close the game and relaunch it occasionally, patch reload is nice but sometimes the game doesn't like when you do it lol

rare prawn
#

Ohh good advice

#

Okay now that I have all the lines that for sure move an item/object and know the dimensions 100% I am gonna try fiddling with the size option again and see if it'll behave this time, if not then I will continue moving things individually and keep going row by row to make sure nothing is weird >:3

#
                { "Source": { "X": 7, "Y": 1 }, "Destination": { "X": 10, "Y": 1 } },
                { "Source": { "X": 6, "Y": 1 }, "Destination": { "X": 9, "Y": 1 } },
                { "Source": { "X": 5, "Y": 1 }, "Destination": { "X": 8, "Y": 1 } },
                { "Source": { "X": 4, "Y": 1 }, "Destination": { "X": 7, "Y": 1 } },
                { "Source": { "X": 3, "Y": 1 }, "Destination": { "X": 6, "Y": 1 } },
                { "Source": { "X": 2, "Y": 1 }, "Destination": { "X": 5, "Y": 1 } },
                { "Source": { "X": 1, "Y": 1 }, "Destination": { "X": 4, "Y": 1 } },
            ],```
brittle ledge
#

Hi everybody! The modding wiki is now updated with a new, thorough 1.6 tutorial on adding new fish to the game! Add ALL THE FISH! https://stardewmodding.wiki.gg/wiki/Tutorial:_Adding_a_New_Fish

Stardew Modding Wiki

Adding a new fish to the game has never been easier than in 1.6; nowadays, fish are a simple set of patches via Content Patcher. There are four required steps: you need to load sprite images, define the fish (as an item, and as a fish) and add it to locations. Optionally, you can add aquarium sprites and data, and fish pond data. I'll be using ...

latent mauve
#

Friends, does anyone know whether or not there is a reason why the "When": { "HasFlag:anyPlayer": "Island_W_Obelisk" }, would be just.... not working for one of my patches?

#

The wiki says it's a legitimate mailflag for when the Farmer has unlocked the Farm Obelisk, and my JSON is valid

#

But the map patch isn't happening

hybrid talon
#

Coming back to my mod project trying to remember wtf I was doing and how my code worked

#

Or more specifically how it's not working

#

Did I actually write all of this?? I don't remember that SDVpufferclueless

brittle ledge
latent mauve
#

yeah, just used debug commands to get the walnuts and unlock it so that it would be easier to test

#

nothing in the log

brittle ledge
#

Sleep and see if it works the next in-game day

royal stump
#

it's added to "mail for tomorrow" on construction, yeah

latent mauve
#

ahhh, I see.

lucid iron
latent mauve
#

slightly awkward then

#

It's a roof view of the island farmhouse, so it's a bit weird to have the obelisk there but not on my map when it instantly poofed into place in the vanilla map xD

royal stump
#

HasFlag does claim it checks tomorrow's mail in the CP docs, though SDVpufferthinkblob

latent mauve
#

Mailbox flag was instant, so I wouldn't expect that one to be delayed.

hybrid talon
lucid iron
#

Yep anything's fine as long as u be making a mod

latent mauve
#

....and nevermind, I don't think the mailbox flag was instant either, I didn't fix that post in the map file

royal stump
#

Island_W_Obelisk and Island_UpgradeHouse_Mailbox are both coded identically (and right next to each other), so maybe there's another issue involved

#

ah, nvm

lucid iron
#

It's just that ppl come here with unreadable screenshots with intent of asking question all the time

latent mauve
#

I've been saving so many copies of this dang map

hybrid talon
#

Question, does anybody know if 1.6 changed the code about mouse events?

#

(How/where they're handled, etc.)

calm nebula
#

Chue, my code doesn't work

#

Please see the gif

calm nebula
lucid iron
#

Did you try typing really fast like in the movies

hybrid talon
#

Hmmm

latent mauve
#

It's working now after a sleep, yep

hard fern
#

Looooong island hut

hybrid talon
#

I might have broken my own code when I last worked on it, I can't remember now
I know I had simulated clicks working at one point

latent mauve
#

Yeah, had to fake scaling it because building interiors don't follow the rules xD

#

I just need to remove the bonus windows now

hybrid talon
lucid mulch
latent mauve
#

It does not

lucid mulch
#

out of the box Contentpatcher only revalidates on daystarted

latent mauve
#

Ah, so even if I just did a "OnLocationChange" update rate, it would possibly be able to apply the patch same day?

lucid mulch
#

yes

latent mauve
#

A little harder to test on that file now that I had to sleep a day. xD

hybrid talon
#

Okay, does anybody know why this code would produce a click with a significant offset?

if (config.leftClick.JustPressed()){

ICursorPosition cursorPos = this.Helper.Input.GetCursorPosition();
Game1.activeClickableMenu.receiveLeftClick(Game1.getMouseX(), Game1.getMouseY());
Monitor.Log("Recieved left click", LogLevel.Debug);
return;

}
#

I'm not sure if I'm doing something stupid or what

#

I think this worked before 1.6 though

calm nebula
#

You need to do things in ui mode

#

GetmouseX should have an override for that

hybrid talon
#

Okay I found uimode
Looks like it takes an Action but I can't figure out how to convert the getmousex into that, is an Action a c# thing?

#

Trying to find a c# documentation somewhere to find that out but google hates me I think

#

Wait I think I'm looking at the wrong thing

#

Hmmm

lucid iron
#

does [ContentSerializer(Optional = true)] do anything of note when it comes to making content patcher custom assets

hybrid talon
#

Can't remember how to build my project now
I never work in c#

#

Might not have enough things installed on this computer yet

#

Should probably read the instructions again

lucid iron
#

!startmodding

ocean sailBOT
#

Making mods can be broadly divided into two categories:

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

uncut viper
lucid iron
#

ive never used those cus nothing seems to explode when you dont

uncut viper
#

i took the idea to use them from someones repo but i dont remember where or when

lucid iron
#

it is just that

#

they r a lie when it comes to content patcher anyways

#

things not marked with ContentSerializer can still end up being null

hybrid talon
#

Okay this might be a stupid question, but I can't figure out how to get dotnet6
I installed the ubuntu backports repository because it looks like they've made only dotnet8 available through the regular repositories since I last installed it, but I can't figure out what the package is called to install it now

brittle pasture
#

I don't think you need to install the dotnet 6 SDK, you just need to target 6.0

#

you can use any SDK/runtime that's newer

calm nebula
#

I suspect it's used for the xnb builder

hybrid talon
#

I did figure out the problem, though, which is that microsoft said on their backports page that you don't need to run apt update after adding their repository, and that was just a straight-up lie SDVpufferclueless

hybrid talon
lucid iron
#

if ur on linux u can use the manual dotnet install script or AUR

hybrid talon
#

I think I have stuff installed now

#

Was able to build and run at least

ivory plume
#

The item docs on the wiki have been overhauled!

See Modding:Items for the new overview page, which links to more specific pages like Modding:Objects. That also includes new pages for the previously undocumented wallpaper/floorpaper and mannequin item types.

zealous moth
#

Does someone have a list of mods that will enrich fishing and such?(except cheats)

lucid mulch
rancid temple
zealous moth
#

Oh

#

Ty

gentle rose
#

does anyone know why nexus is simultaneously saying that my mod is and isn't published 😭

#

is that common initially?

rancid temple
#

Common enough

#

Depends on what they're doing to their backend/the current traffic and whatever is happening with caching at any given time

gentle rose
# rancid temple Common enough

thanks. I'm kinda freaked out because I have no idea if I uploaded it right lol. Why is uploading to nexus more complicated than writing the mod 😭

rancid temple
#

Older than dirt website dogekek

tiny zealot
#

nexus has a CDN, so depending on how stuff is migrating around and which node you hit, you see different results

#

generally you gotta wait some amount of time for things to become consistent

lucid iron
#

just go to sleep

#

it'll work out by time u wake up

gentle rose
#

I think it's worked out now. Thanks for bearing with me guys 😅 this is a massive favour to ask, but would any of you who know what you're doing be willing to check that I uploaded it correctly? if not dw, I just want to make sure

ivory plume
gentle rose
drowsy pewter
#

Install instructions: Even though 95%+ of mods are installed the same way, every mod can be someones first mod! So I usually try to add instructions

brave fable
#

it never hurts to start with 'download smapi, download the dependencies, download this mod, then add them all to your mods folder'

brittle pasture
#

hmm didn't know the mod page template exists

lucid iron
#

hm i forgot to add the install instructions on some mods

#

here is hoping the smapi requirement is sufficient

modest dagger
#

u know it won't be

lucid iron
#

here is hoping my stuff is niche enough Dokkan

#

(ill go back and add it eventually)

modest dagger
#

sve compat?

lucid iron
#

nou

modest dagger
#

I got a comment asking that on my desert festival foods mod, like i'm just adding recipes what the hell am i infringing on?

ivory plume
#

(Fun fact: someone once asked if SMAPI is compatible with SVE.)

modest dagger
#

my god they're everywhere

brave fable
#

people just want to be sure. sometimes i wonder how much worry old-love of cooking caused when people installed a cooking menu mod and had it change recipe buffs

#

any mod can do anything

lucid iron
#

can i learn to cook with loc

uncut viper
lucid iron
#

i am entranced by the pizza animation...

brave fable
#

of course. just fry some sugar and milk in a pan for a while to get icecream

modest dagger
#

sorry fry?

lucid iron
#

you joke but this is a thing in hongkong

gentle rose
lucid iron
brittle pasture
#

LOC is unrealistic, you need to also add copper/iron/gold/iridium pots/woks/spatulas/ladles/baking trays alongside the frying pans

modest dagger
#

or you could just change the pan to 'cooking set'

lucid iron
#

prismatic yolk separator

calm nebula
#

Loc is unrealistic. Where is my best knife, bluebs

#

And my bench scraper

#

And my silicone spatula

brittle pasture
#

sorry, your frying pan is iridium but you didn't upgrade your egg beater, no ice cream for you

brave fable
#

this recipe requires an orichalcum tea strainer.

calm nebula
#

What if it is protein powder ice cream

brittle pasture
#

reminds me of the cheese scraper I bought on a whim and used exactly once some time last year

modest dagger
#

use it again rn

brave fable
#

i know it should be fairly self-explanatory, but what exactly does a cheese scraper do

brittle pasture
#

grater
the word is grater
english hard

lucid iron
#

is it those mysterious wedges with holes i seen on tom and jerry

calm nebula
#

Oh I have a cheese grater

uncut viper
#

tbf cheese scraper is almost a thing too

calm nebula
#

I use it 100% to grate bars of soap

brave fable
#

doesn't everyone have a cheese grater? how do u grate cheese

uncut viper
#

you were close

brittle pasture
#

someone who eats cheese once every 2 years

calm nebula
#

I don't grate cheese, I take bites out of the block like a savage

#

Dude I can eat an entire wheel of brie by myself in a week

lucid iron
#

but can u homf a whole stack of 999

calm nebula
#

Probably not tbh

lucid mulch
teal bridge
rare prawn
#

Okay so I have tested a whole lot of different methods now, including moving the floor items column by column, row by row, individually, by the whole area, and I am lost reeee
This is the closest I have come to success, and I still feel like this will fail as soon as I put a 2x2 wall item in the mix instead...
https://i.imgur.com/8QLywUF.png

                { "Source": { "X": 7, "Y": 1 }, "Destination": { "X": 10, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 6, "Y": 1 }, "Destination": { "X": 9, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 5, "Y": 1 }, "Destination": { "X": 8, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 4, "Y": 1 }, "Destination": { "X": 7, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 3, "Y": 1 }, "Destination": { "X": 6, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 2, "Y": 1 }, "Destination": { "X": 5, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 1, "Y": 1 }, "Destination": { "X": 4, "Y": 1 }, "Size": { "X": 1, "Y": 2, } },
                
                { "Source": { "X": 7, "Y": 3 }, "Destination": { "X": 10, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 6, "Y": 3 }, "Destination": { "X": 9, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 5, "Y": 3 }, "Destination": { "X": 8, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 4, "Y": 3 }, "Destination": { "X": 7, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 3, "Y": 3 }, "Destination": { "X": 6, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 2, "Y": 3 }, "Destination": { "X": 5, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                { "Source": { "X": 1, "Y": 3 }, "Destination": { "X": 4, "Y": 4 }, "Size": { "X": 1, "Y": 2, } },
                
                { "Source": { "X": 1, "Y": 6 }, "Destination": { "X": 4, "Y": 7 }, "Size": { "X": 7, "Y": 9, } },
            ],````

What am I doing wrong??
#

The layout without IndoorItemMoves looks like this normally (minus a few changes I made to items to help me differentiate which ones were moving where after a few tries) after an upgrade:

#

just so yall know how wonky this is

rare prawn
#

Please ping me if you reply to my plea SDVpufferpleading SDVemoteheart I might pass out soon cryge

woeful herald
#

hi, uh, I want to modify the game's quest, but the wiki is very ambiguous, is there a more detailed guide?

brittle ledge
#

A regular quest (like Robin's axe) or a special order?

gentle rose
#

do you guys ever open what you thought was an old mod of yours but is actually a big plate of spaghetti? because I just did 😭 there's more errors than code I think

rancid temple
#

Even my working code reminds me of spaghetti usually

gentle rose
#

all in one class file

brittle ledge
#

I was going over my code for fish while writing my tutorial and past me has stumped myself with what one of my context tags is for

rancid temple
#

Essentially my junk drawer project but I started in 1.6 so nothing has become outdated yet lol

gentle rose
#

the sidebar showing all the errors snort

rancid temple
#

I've definitely opened a few old mods intending to update them and decided I'd rather just rewrite the whole thing than look at all that red

gentle rose
#

because it also has hard dependencies on multiple mods (I think I might have hardlinked their dlls?)

#

but hey, it was compatible with ridgeside lol. Idk which part needed special ridgeside compatibility, but something apparently did because there are patches for that in the code

hybrid talon
#

Successfully fixed my mod SDVpuffermusic

#

Now I need to remember what else I wanted to do with it lol

#

I should have made a todo list

#

I know I want to put some visual indications of what keyboard shortcuts do what into the game but that involves figuring out how sprites work I think...

#

Or maybe not, I'd mostly be adding text

#

I'm not really sure what it would involve

#

Which is why I haven't done it yet lol

woeful herald
#

the special order's description is very detailed

#

I need more about regular quests

brittle ledge
#

I don't think we have any tutorials about quests SDVpufferthinkblob

#

Your best bet might be to find a mod with them implemented in 1.6 and look at what it does

#

Ridgeside and Lousis's Garage off the top of my head do, but I don't know if they're implemented in CP

#

I think Jane does?

woeful herald
#

...

#

thank you

gentle rose
#

I'm honestly shocked any part of that mod still works but here we go (original light radius in the top right, modified radius in the middle). Now time to see if I can apply it to non-craftable lighting

velvet narwhal
#

Op

#

[[Modded:Quests]]

rancid temple
#

It would work in-line, might not be called that lol

velvet narwhal
#

I'm on mobile so I'd have to dig

rancid temple
#

[[Modding:Quest data]]

rancid temple
#

I would assume they have though, because this page is microscopic lmao

velvet narwhal
#

Tbf it's a pretty straightforward string delimited

#

The only fancy shenanigans I can see involves understanding what you can get away with in terms of dialogue SDVpufferthink

uncut viper
#

its straight forward to map the indices to the things they c ontrol, yeah, but looking at this page, id have no idea how to make like, any quest that i dont manually remove with a trigger action

#

like, what goes in "Solution/Trigger"
what the heck are all the quest types

velvet narwhal
#

Oh it is old, appending with modid# rather than the cp token

rancid temple
#

A lot of quests are completed through hardcoding lol

velvet narwhal
#

While true, "what the heck are all the types" I do tend to stare at the unpacked for thr mysterious questions

#

Yeah AFAIK special orders were kind of meant to... replace...? Modded Quests?

uncut viper
#

the unpacked wont tell you if all the types are used in vanilla though

brittle pasture
#

not quite quest replacement

uncut viper
#

i also doubt CA is really thinking that much about mods when adding entirely new features

velvet narwhal
#

That's fair. There are a few things that definitely screams, "built for modded" though like the animal skins

uncut viper
#

thats far from the "entirely new f eature" i meant though

velvet narwhal
#

Rise up for updated data models SBVPensiveButt

brittle pasture
#

0 days since selph begged for crafting/cooking data model in vanilla

faint ingot
#

Does a mail flag's name have to already exist in Data/Mail for it to be sent by AddMail in an event or trigger action? This would be for a flag that is not an actual piece of mail

uncut viper
#

mail flags dont have to correlate to real mail

#

so they dont have to exist in data/mail at all

faint ingot
#

OK, thank you. I'm kind of confused because I followed advice (I think yours) the other day about incrementing stats to affect mail counters, but it doesn't seem like the mail part is working although the stat part is. This is the code: { "Action": "EditData", "Target": "Data/TriggerActions", "Entries": { "{{ModId}}_StartPierreJail14": { "Id": "{{ModId}}_StartPierreJail14", "Trigger": "DayEnding", "Condition": "PLAYER_HAS_MAIL Any {{ModId}}_Flag_StartPierreJail14", "Actions": [ "AddMail All {{ModId}}_Flag_PierreInJail", "AddConversationTopic {{ModId}}_PierreInJail 15", "IncrementStat {{ModId}}_PierreJailSentence -99999", "IncrementStat {{ModId}}_PierreJailSentence 15", "RemoveMail All {{ModId}}_Flag_StartPierreJail14", ] }, "{{ModId}}_PierreJailTimeServed": { "Id":"{{ModId}}_PierreJailTimeServed", "Trigger": "DayEnding", "Condition": "PLAYER_HAS_MAIL Any {{ModId}}_Flag_PierreInJail", "Actions":[ "IncrementStat {{ModId}}_PierreJailSentence -1", "If PLAYER_STAT Any PierreJailSentence 0 0 ## RemoveMail All {{ModId}}_Flag_PierreInJail", ] }, } },

uncut viper
#

have you waited a day

faint ingot
#

one day after the event yes

uncut viper
#

i dont remember which mailbox player_has_mail checks by default

faint ingot
#

and the stat counter changed, but the mail pieces didn't seem to fire

velvet narwhal
#

because you haven't specified a <time> after the mail's ID, it will get sent as a real mail "tomorrow"

faint ingot
#

ah ok

velvet narwhal
#

AddMail All {{ModId}} Received is what you're looking for as a "flag"

uncut viper
#

if its just a flag and not a real letter actually it shouldnt be stopping those triggers from working

#

it would jus lead to a phantom letter in the mailbox

#

since player_has_mail checks "Any" mailbox which includes "coming tomorrow"

#

are these triggers supposed to be repeatable?

faint ingot
#

yes

velvet narwhal
#

if you're trying to do a daycounter though, IncrementStat will not work afaik because IncrementStat won't be readable?

uncut viper
#

you'll need to add "MarkActionApplied": false to them then

#

you can read player stats

velvet narwhal
#

i can't remember exactly what i was trying to do, but the incrementstat thing when i was trying to lengthen a process would be screwy in terms of it's activation

faint ingot
#

so the weird part is this... the "IncrementStat" counter is incrementing as intended, which means PLAYER_HAS_MAIL Any {{ModId}}_Flag_PierreInJail is evaluating to TRUE, right? but this is what I get ont he console

uncut viper
#

theres nothing wrong with incrementstat as long as you get the timings right

velvet narwhal
#

ah

#

i just kind of got around it by using addconverationtopic <modid> days as my own counter

uncut viper
#

have you double checked thats your modid?

#

also when you say its incrementing as intended do you mean the -1 in the second trigger action?

faint ingot
uncut viper
#

or do you mean the 15 in the first?

faint ingot
#

yes, it is getting -1

#

I originally had it set to 3 for testing and when i checked it, it said 2

uncut viper
#

then you are removing the mail right after?

faint ingot
#

i'm only removing the "start14" mail

uncut viper
#

thats not what your json says

faint ingot
#

I remove the: "PierreInJail" mail after the counter reaches 0

uncut viper
#

"If PLAYER_STAT Any PierreJailSentence 0 0 ## RemoveMail All {{ModId}}_Flag_PierreInJail"

#

this is removing the mail that it just checked for

faint ingot
#

yes if the stat is between 0, and 0. correct?

uncut viper
#

correct. not the start14 one

faint ingot
#

that's the intended behavior

uncut viper
#

so then of course the GSQ will evaluate to false after, you just removed the mail

faint ingot
#

This is the part I mean: "Condition": "PLAYER_HAS_MAIL Any {{ModId}}_Flag_PierreInJail", "Actions":[ "IncrementStat {{ModId}}_PierreJailSentence -1", "If PLAYER_STAT Any PierreJailSentence 0 0 ## RemoveMail All {{ModId}}_Flag_PierreInJail", ] },

uncut viper
#

i know. you are removing the same mail that the condition is checking

faint ingot
#

but only if the counter is 0, which it shouldn't be

#

and isn't

velvet narwhal
#

oh

rancid temple
#

You're checking the wrong stat

velvet narwhal
#

you've forgotten {{ModId}}_ before your If

faint ingot
#

ah thank you

velvet narwhal
#

so it's defaulting to 0 0 because it doesn't exist

uncut viper
#

i got confused by the removing start14 thing and missed that entirely

rancid temple
#

I had to jump around a bunch before I even noticed it lol

velvet narwhal
#

8 pairs of eyes are nice

#

roku and i noticing on the same tick 🤝

faint ingot
#

: )

uncut viper
#

8... pairs?

#

who are the 4 lurkers

velvet narwhal
#

brain no good brain had a sushi nap

uncut viper
#

8 pairs of eyes, 0 brain cells among us

rancid temple
#

I'm wearing glasses, so that's an extra pair

velvet narwhal
#

time to see what uber will force me to do today

faint ingot
#

so while I'm updating this, it would be better practice for me to put "received" after I set the mail flag?

uncut viper
#

yes

#

otherwise, the player will get a letter icon over their mailbox

#

but when they click it'll do nothing

rancid temple
#

Spooky

brittle pasture
#

"must have been the wind"

velvet narwhal
#

i can't update a sprite while a player is looking at an NPC, huh

uncut viper
#

why not

#

make them spin in a poof of wind-like swirls a la The Sims

rancid temple
#

Make their previous skin slough off, to reveal the new

velvet narwhal
#

the inner demon is speaking to a "bucket" item that can be gifted to my shopkeeps that forces their dialogue to say "Must be the wind."

#

with, obviously, a bucket on their heads

uncut viper
#

some may call this junk...

rancid temple
#

PTSD activated

velvet narwhal
#

i mean i'm already putting in the pothat "Let Me Solo Her" for tia KEK

brittle pasture
#

are you also adding the dual Rivers of Blood

velvet narwhal
#

i do not want to go down the crazy rabbit hole of dual wielding that casey has done

#

i can probably make them floating trinkets though?

#

shadowcloned trinket woopsDerp1

lucid mulch
uncut viper
#

id download a mod just to see that

velvet narwhal
#

oh y'know ig i can just force an event

rancid temple
velvet narwhal
#

force event upon bucket gifted, it updates sprite after event

uncut viper
#

can you make an event that is just a fade to black then it fades out bc the event instantly ended

velvet narwhal
#

(wired brain, figure out how to put hats on NPCs)

uncut viper
#

like your farmer blinked or something

velvet narwhal
#

probably yeah

#

i'd have to dynamically get the farmer position using c# and write said event in c# though

uncut viper
#

what do u mean probably i was asking you specifically bc you're the person i know who does events SDVpuffersquee

velvet narwhal
#

i know my limitations SBVPensiveButt

uncut viper
#

i was thinking it would be like there wasnt an event at all so no need to get the positions

#

just literally like you talk to them, screen fades to black, then it fades back in as if nothing happened, but the npc has changed

#

since i dunno another way to trigger a fade to black in vanilla on the spot like that

lucid mulch
#

that would still throw them back to a warp location though iirc

velvet narwhal
#

i'm probably also misremembering end and it just dumps the farmer in the position that the event started on, right?

uncut viper
#

really? huh

velvet narwhal
#

yeah that's what i meant

uncut viper
#

what about events that start from a tile action though?

rancid temple
#

Just draw a black box on the screen that's 10kx10k

velvet narwhal
#

i think i'd have less of a hassle just dynamically getting the farmer position per npc gifted

lucid mulch
#

Actually the community centre intro one has one to end someone on the exact tile, but isn't where they started

#

while broadcastEvent that hijacks multiplayer people leaves them where they started

brittle pasture
#

yeah events can choose where to dump the player when it ends

velvet narwhal
#

i'd preferably leave the position alone

#

i could obviously force to know exactly where the player is standing by only leaving 1 side of the 4 tiles open