#making-mods-general

1 messages · Page 582 of 1

verbal glacier
#

the game kind of just reads the strings/animationDescriptions and doesn't need you to put animation dialogue

strong kite
#

Is there a way I could add a burning particle effect to the player while they have a certain buff/debuff? (More specifically, a modified version of an existing vanilla debuff)

ornate drift
#

ah

verbal glacier
#

strings/animationDescriptions"alex_lift_weights": "Unghh... Can't talk.$6", . In the schedule 1300 JoshHouse 14 5 2 alex_lift_weights

ornate drift
#

so anytime i use that animation, it just automatically uses the text too?

verbal glacier
#

yup

#

this allows for more freedom I find

ornate drift
#

tysm

verbal glacier
#

No problem SDVpufferheart

ornate drift
#

is there a way i can add specific dialogue for when Manny is inside a specific building and will only trigger that dialogue until he leaves the building

verbal glacier
#

you would do something like /1300 MannyBakery 16 16 2 \"Strings\\schedules\\Manny:MannyCook\"/ and then you would have him go to his next schedule point, he'll stop saying that line regardless of if he left the building or not

ornate drift
#

er

verbal glacier
#

{
"Name": "IsOddYear",
"Value": "{{Query: {{Year}} % 2 = 1}}"
},
this is what i found in another mod, a dynamic token

torpid sparrow
#

woah my first dynamic token

#

i need to go look at how to set it u p

hard fern
#

have u never dynamic token'd before

torpid sparrow
#

norp

#

i make do without

strong kite
#

actually, now I'm running into an issue where using "CustomFields" within Buffs so HealthRegeneration from SpaceCore works makes it so only 1 buff gets applied with the effects of both (or 1 doubled?) rather than the 1 buff and 1 debuff that was happening before (and is intended)

hard fern
#

wow how have u lived wem... dynamic tokenless

#

well now that i know how to use them im not going back lol

torpid sparrow
#

oh wait dsv literally has that

#

lol

#

oddyear token and such

verbal glacier
#

oh lol

ornate drift
#

wh AT

verbal glacier
#

wem magic i guess

ornate drift
#

wem have you not used tokens 😭

#

goddamn

torpid sparrow
#

not dynamic tokens

ornate drift
#

insane

strong kite
#

real quick is there a way to make smaller code blocks in discord? I don't want to suddenly flood this channel by posting examples

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.

ornate drift
ornate drift
verbal glacier
#

shane at lab? you mean joja?

strong kite
verbal glacier
uncut viper
#

If it's longer than a handful of lines, please use the json validator to share it.

ornate drift
#

oh wait thats new

#

i was searching through shanes dialogue for the example

#

isnt it usually #$b# or #b#?

torpid sparrow
hard fern
#

#$b#

#

it's not #b#

ornate drift
#

why is there an e

hard fern
#

new text box

ornate drift
#

oh

strong kite
hard fern
#

they're different commandss

#

well specifically

strong kite
#

Also tbh I don't know what you all mean by Json Validator. Is that another program I should already have?

hard fern
#

while #$b# just progresses the dialogue to the next box

ornate drift
#

oh i see

verbal glacier
torpid sparrow
#

ok yas i did that

#

testing time

ornate drift
verbal glacier
hard fern
ornate drift
#

yeah

hard fern
#

are you sure the dialogue isn't just skipping

ornate drift
#

if i use #$b# it keeps going
if i use #b# it stops and i have to talk to it again

torpid sparrow
#

woo it worked

uncut viper
#

#b# will not do anything. It's not being parsed as a command.

hard fern
verbal glacier
hard fern
#

what button said

ornate drift
#

whats parsing?

verbal glacier
#

checked

uncut viper
#

Reading as, interpreted, checked, etc

#

The game is not treating it like a command.

ornate drift
#

ah

verbal glacier
hard fern
#

kinda sad we have no tofu 😔

#

i kinda wanted mabo tofu and was going to satiate my needs by making it in stardew....

brittle pasture
#

cornucopia SDVpufferrad

hard fern
#

i think that dish would already be in cornucopia

verbal glacier
#

they have mapo tofu

hard fern
#

i should have that for dinner 🤔

ornate locust
#

this room appears to be in the basement, like the furnace, so it gets a ramp. I tried the half and half thing and didn't really like how it looked with the tiles I have on hand

#

and... the image didn't send one sec

hard fern
#

sorry i ate the image

ornate locust
#

I had to scooch the desk over too. I'll need variants for the CC mod and SVE on this one, but it's not too bad

strong kite
#

So basically, this code right here gives me 1 buff icon with all of the intended effects. It uses the icon as directed in the second buff, but uses the name of BuffId 12, which is Burnt. And it uses the duration described in the second buff.

                        {
                            "BuffId": 12,
                            "Duration": 250,
                            "CustomFields": {
                                "spacechase0.SpaceCore/HealthRegeneration": -0.5,
                            },
                        },
                    {
                        "Duration": 350,
                        "IconTexture": "{{InternalAssetKey: assets/bufficons.png}}",
                        "IconSpriteIndex": 2,
                        "CustomAttributes": {
                            "LuckLevel": 7,
                            "CriticalChanceMultiplier": 3,
                            "CriticalPowerMultiplier": 5,
                            "MagneticRadius": 96,```
However, if I try flipping the two so the first buff comes after the second one, it just applies a doubled version of the Burnt debuff.
Before, I had the first buff using "CustomAttributes" instead of "CustomFields", which didn't work for the Health Regeneration code from SpaceCore, but it *DID* apply the two buffs individually, which is what I want
ornate locust
#

I made it a bit longer than the stairs were, too

hard fern
#

🤔 a curious thought: with the implementation of ramps, does that imply the overall elevation of areas in sdv are lower than in vanilla? since ramps can't be as steep as stairs in order for people to still use them

ornate locust
#

it implies CA is only giving me so much to work with re: perspective, scale, and elevation

#

:V

#

Only thing I can think of as an alternative is like... stair lifts?

hard fern
#

i like to imagine the ground shuffles itself downwards to accommodate a ramp

#

npcs are hard.

#

how do people make them...

ornate locust
#

many tiny elevators... Alex picking up George over his head again

hard fern
#

george makes a decent enough weight i guess

ornate locust
#

Really powerful arms on Geroge

strong kite
ornate drift
#

he has a line he constantlyy repeats once he sits there

#

also Gus has it too whenever you talk to him at his saloon

hard fern
#

crying how does one confuse shane and demetrius

ornate drift
#

monkey thinking image

verbal glacier
#

"demetrius_dance": "%Demetrius is busy.",
"demetrius_read": "We're insulated from the rest of the world here in Stardew Valley. Maybe that's a good thing.",

#

one of these?

ornate drift
#

read

#

yes

verbal glacier
#

that is strings/animationDescriptions

ornate drift
#

yeah but he has a portrait visible there

hard fern
#

its part of his schedule string, i think?

ornate locust
#

Here's a half ramp one

hard fern
#

ooh

#

neat

ornate locust
#

I think I used the 1.6 shadows tilesheet to make it better than the first attempt

verbal glacier
#

"rain": "750 ScienceHouse 16 19 2 demetrius_read/1100 ScienceHouse 22 20 1 demetrius_notes/1500 ScienceHouse 7 18 1/1540 ScienceHouse 22 20 1/1800 ScienceHouse 27 9 0/1920 ScienceHouse 28 9 0/2000 ScienceHouse 15 4 0/2200 ScienceHouse 19 4 11 demetrius_sleep", so here he would be saying that line on repeat

hard fern
#

honestly the reason i havent made any npcs in a wheelchair is because pelican town fucking sucks to navigate

ornate drift
#

also he has an animation
gus doesnt have an animation and he still repeats it

torpid sparrow
#

i got fucking jumped by the new beta mod upload when trying to upload a new file

#

that SUCKED

hard fern
#

you don't need an animation to have a schedule string 🤔

#

scuked

torpid sparrow
#

never do that again nexus

ornate locust
#

a thing that makes me not quite like the half one is that people are liable to just walk straight down the middle

verbal glacier
ornate drift
#

ah

ornate locust
#

but maybe that doesn't matter so much

hard fern
#

once you're done ramping up the town (get it), would it be okay to use your mod as a dependency?

ornate locust
#

Absolutely!

ornate drift
#

yknow what im gonna cheat and make an animationdescription for him just standing

ornate locust
#

anyone can use it as a dependency for the railings or a requirement for a mobility-impaired NPC

verbal glacier
# ornate drift ah

one is basically for each time you play that specific animation, that can be standing yes, and the other is more context specific

hard fern
#

now the big problem of "where would I even put this npc" remains SDVpufferflat

ornate drift
#

cant i just put "Hospital": in dialogue

#

for whenever hes in the hospital

ornate locust
#

Also let me know if there's missed places you want me to ramp up. As a general thing, I was just putting ramps where people could get to public buildings and such

verbal glacier
# ornate drift cant i just put "Hospital": in dialogue

hospital in strings, this is for Alex. 1030 Hospital 15 15 3 alex_sit_left \"Strings\\schedules\\Alex:summer_16.000\" Here alex also has a sitting animation but a schedule string because it is more about where he is, not that he sitting per se

ornate drift
#

hm

void aspen
#

Something like that?

#

it can remove or replace pixel with something

verbal glacier
near imp
void aspen
#

I just found this node there im going insane

#

theres way too much stuff to do and it helps a lot for general use and some aseprite/sdv shenanigans

void aspen
# near imp i think i need to download that program then <:SDVpufferthumbsup:604817082064044...

its not that pricy but id suggest wishlisting and waiting for it to go on sale (which it does quite a lot)
https://store.steampowered.com/app/2299510/Pixel_Composer/

A Node-based, nondestructive, pixel art generator, editor, and VFX compositor. Pixel Composer comes with a powerful graph and node system that supports all types of operation and automation.

Animate every property with a timeline system. Create feedback loops, particle effects, rigid body animation, fluid simulation, 3D animation, and more.…

Price

$9.99

Recommendations

201

patent lanceBOT
#

Title result: Pixel Composer on Steam

void aspen
#

it also has free demo for some testing

ornate drift
#

oh hey it worked LMAO

faint ingot
#

Question, I've used random numbers in my content patcher before (like {{Random:1,2,3,4,5}}), but I want to be able to use a random number (or string) in an event, and then use that as a content patcher condition, which I'm not sure how to do. Basically I want to have a passive festival that makes some onLocationChange patches based on which random version of the event occurs

jaunty shuttle
ornate locust
#

Ideally I would do a half ramp like this. The railing in the middle prevents any NPC from walking on the border which would look weird. But I felt like for a player it maybe wasn't that accessible because it shoves you to either side.

strong kite
#

alright I'm gonna try and simplify my problem cuz I am definitely overcomplicating it lmao.
How can I get my food item to give 2 different buffs with one of them using SpaceCore's "CustomFields" field? Cuz doing it the intuitive way just winds up making the two buffs combine into one

ornate locust
#

The key can let you synchronize random tokens

brittle pasture
#

you can also assign a dynamic token and use it

ornate drift
#

wait where did THAT come from?

#

that icon has no reason to be there

strong kite
#

are they trying to bribe you to visit more often? rawbea2LUL

ornate drift
#

oh 😭

ornate locust
#

That'd do it

ornate drift
#

oh, part 2

verbal glacier
#

is that still in his schedule?

ornate locust
#

I think I'm just going to do full ramps everywhere. That would have the least chance of a NPC in a wheelchair ending up on stairs.

ornate drift
faint ingot
#

OK that information is helpful thank you both... I think I will have to use something like mail flags and trigger actions as well to synhronize the random key for multiplayer?

verbal glacier
#

dun dun dun duuununununun, also sasha wtf

void aspen
verbal glacier
#

as you should

void aspen
#

im so glad pixel composer when from buggy undeveloped app with something id consider a must have tool for pixel shenanigans along the aseprite

ornate drift
verbal glacier
#

did you sleep/start a new save?

ornate drift
#

youre supposed to sleep?

verbal glacier
#

well that is best practice for making changes/modding

hard fern
#

schedules need a day to unfuck themselves

jaunty shuttle
verbal glacier
# ornate drift

but you would the dialogue in a separate patch, where you target strings/animationDescriptions

ornate drift
#

wdym

verbal glacier
#
"Action": "EditData",
            "Target": "Strings/animationDescriptions",
            "Entries": {
                    "Wem.Bundle.Tilly_squat": "{{i18n:Wem.Bundle.Tilly_squat}}",```
#

ok it jumped a bit, but this is from Tilly for example

ornate drift
#

yippee tilly

#

uhhh ill try figuring something out, maybe

verbal glacier
#

the animation happens in Data/animationDescriptions, the text happens in Strings/animationDescriptions

strong kite
#

realizing I should probably figure out gift tastes now rather than later 😭

ornate drift
hard fern
#

yeah

ornate drift
#

but i put it on the lower bench tile :(

#

grrrrrrrr tbis game makes me MAD

void aspen
#

trial and trial

#

(and million of errors)

ornate drift
#

mmmmmm so how should i fix this

strong kite
#

I think I'll just need to take a break from this buff thing HehSweatCloseup

ornate drift
#

do i move a tile lower?

verbal glacier
#

ye

ornate locust
#

Making NPCs be in the right spot on the map with animations is a lot of change pixel, check, etc

strong kite
#

Ohh right I'm remembering now when I was first making this mod I wanted to make an item that worked like Qi Spice. I think it ended up being something hardcoded in the game so I couldn't do it.
Now that I'm back to working on this mod I don't know what to do with this item 😭

brittle pasture
#

ah I think I remember that, something about a pokemon food spice

#

it will be a painful journey to implement that yourself yes

strong kite
#

Just double checking, there's zero way to make it work the exact same way as Qi Spice? Like basically a duplicate of the item with a different name, description, and texture

brittle pasture
#

nope

old egret
#

Hello helpful people. I am trying to display the Farmer sprite on the screen in a specific place and expression and I'm not making any headway. If I understand things correctly there are two approaches to displaying the Farmer player.FarmerSprite.draw() and spriteBatch.Draw(player.FarmerRenderer.baseTexture ...) Is there one approach that is more commonly used than the other?

strong kite
#

drat

#

maybe I'll just have the reason you would make it be that it's a loved gift for Gus

#

or maybe I'll remember to use it for other recipes

calm nebula
#

!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!

old egret
#

Yes.

lucid iron
old egret
#

b

lucid iron
#

that is not quite what i mean but i am guess you used the one given to IClickableMenu.draw ?

#

oh i just realized, you aren't calling the appropriate FarmerRenderer.draw

#

try doing that instead

old egret
faint ingot
#

This token seems to be able to select a different random value when the client is restarted, is there a way for it to be random but select the same option on restart as long as the in-game day hasn't changed? { "Name": "test_token", "Value": "{{Random:a,b,c,d,e,f,g |key=testkey}}" },

uncut viper
#

The random token is already seeded based on the in game day.

#

Specifically a combination of the save seed, in game day, and the input

faint ingot
#

OK that's what I thought which is why it surprised me when it changed. Is it because that part of my code didn't exist the previous day that it's changing then?

fierce vault
#

Chu, I like the brackets in your name lol

faint ingot
#

related note is there a debug command that will tell me the value of a token for testing purposes?

#

the only reason I know this one is because it's failing to load an include file with the name in it 😛

urban patrol
#

patch summary

faint ingot
#

OK I see it in there thank you

valid folio
#

Hi, I saw that there’s a prismatic slime egg in the game, but I can’t find it in the code to get its ID. I also checked websites that list the items and couldn’t find it there either. I know I could make my own, but if there’s already one, I’d rather use that.

brittle pasture
#

there is no prismatic slime egg item in vanilla

#

as for mods East Scarp adds one

#

when in doubt Lookup Anything + look at id

valid folio
valid folio
eager tree
#

chu{e} would it be possible to add an animated light source texture with mushymato.MMAP_Light somehow?

#

as in make it look like it's flickering, like candle lights

tawdry hazel
#

guys am I doing something wrong I wanted to place a machine on a table (machine still working and animating etc)... does that only work with furniture framework (I'm saying that cos I remember doing something abt that on the documentation but that might be the voices in my head)

#

like I made a new machine and I can't place it on table and my game has so many mods I don't remember what's the normal behaviour of the game

#

and yes

#

I could just make the sprite have a table but I wanted to know if it's possible

tiny zealot
#

i'm quite sure vanilla does not allow you to place a machine/bigcraftable on a table

tawdry hazel
#

I figured :p I tested and it didn't work (I'm gonna see what I can figure out abt it)

#

thank you

lucid iron
#

In the meantime you could try and see if spacecore animations would work on the light map

uncut viper
#

Can you spacecore animated texture the light texture

#

Yeah that

lucid iron
#

If it no work then ill look at doing something specific

eager tree
#

i'll try, ty SDVpufferheart ill comment here if it works

latent mauve
# ornate drift do i move a tile lower?

Hopefully you figured it out, but the farmer is 2 tiles high, so you want to be one lower than the bench seat, as the sitting animation is higher up in the frame.

toxic topaz
#

whats probably the most reliable method for moving this pantry bundle into the kitchen?

uncut viper
#

C#

#

Their positions are hardcoded to be added with C#

toxic topaz
#

alright ty, ill look into that

toxic topaz
#

is it based on getAreaBounds?

#

im quite confused on where the bundle locations are actually kept lol

marsh reef
#

Tiled, is there a way to bind wasd to move the selected tile up down and side to side while being able to place it and switch?

primal garden
verbal glacier
#

you need to separate your load from the edit

latent mauve
verbal glacier
#
"Action": "Load",
            "Target":```
primal garden
verbal glacier
#

you still haven't separated the "Action": "Load, it should be in its own {} outside of the editdata

#

and then you target your image

primal garden
#

sorry but what would it look separate

verbal glacier
#

look at the guide

#

it would be like that then , then your editdata patch

primal garden
#

"Action": "Load", but this is whats on the guide

verbal glacier
#

yeah but not inside of your editdata

primal garden
verbal glacier
#
{
        "Action": "Load",
        "Target": "assets/BloxyCola.png"
},
{
            "Action": "EditData",
            "Target": "Data/Objects",
            "Entries": {
            "{AngelWhatEver.Roblox_Cola}Cola_BloxyCola": {
                    "Name": "{{ModId}} BloxyCola",
                    "Displayname": "Bloxy Cola",
                    "Description": "Warning: Bloxy Cola may be habit-forming.",
                    "Type": "Trash",
                    "Category": -20,
                    "Price": 100,
                    "Texture": "{{ModId}}/ObjectTexture/BloxyCola.png"},
                    "SpriteIndex": 0
                }
            }
        },```
primal garden
#

tysm

#

which line would I put this tho

verbal glacier
#

I’m not sure what you mean?

primal garden
#

like which line in the json would this go

#

?

verbal glacier
#

It doesn’t really matter, I tend to put it above the editdata, it just has to be separate because you are doing two different things with load and editdata

primal garden
#

tysm

verbal glacier
#

that was mb

"Action": "Load",
"Target": "Mods/BloxyCola",
"FromFile": "assets/BloxyCola.png"
}```
#

also feel free to look at other mods' code to see how they do stuff like this, it can help you see what they do and what you might be missing

primal garden
verbal glacier
#

stardew valley expanded

#

or any mod that is doing something similar to yours

unreal spoke
#

If you’re just starting out, I really wouldn’t recommend a mod as big as SVE as reference material. Better to take a look at something smaller and easier to get an overview of.

verbal glacier
#

Fair, I just mentioned it cause it has a variety of edits that helped me personally

unreal spoke
#

Yeah, that’s fair, but finding the relevant bit in its files is a challenge on its own. SDVpuffersquee

verbal glacier
#

true :P

ornate drift
#

yippee

#

speaking of which, maybe i should add birthday text

#

does it go in gifttastes?

verbal glacier
#

Do you mean for when he receives gifts? That's in dialogue with the key AcceptBirthdayGift_(Id) otherwise you can just use the season_day key for his actual birthday

primal garden
ornate drift
#

wait why id? its either positive or negative there

hard fern
#

id is the item id

#

or

#

wait

#

huh

#

im tired

verbal glacier
#

it can be an object id like AcceptBirthdayGift_(O)797 which would be for the pearl, it can be an item tag or taste, or positve/negative reaction

#

AcceptBirthdayGift_ just put that before it

ornate drift
#

alrighty thanks

verbal glacier
orchid glade
#

If I want users to be able to set the price of an object in config, is there a way to force them to enter a numeric value, or to check they have entered a numeric value, before I use their input as a token?

#

All I can think of is a query for if {{price}} > 0, but I note that the author guide specifically mentions the lack of data validation for using query.

verbal glacier
#

I think you can use AllowValues and then list the specific prices you want them to use/choose from

orchid glade
#

That's a fall back if I can't allow a full range without breaking things if people enter wrong.

#

I started with that, but - how many options do I put and what min/max?

#

Trying to avoid that sort of executive decision I guess heh.

verbal glacier
#

So far all I can see in other mods is long lists of numbers, I think it depends on where you want something to fall in terms of price

orchid glade
#

Bleh, fine! (lol okay okay if it's usual practice I'll go that way too). Thanks for the input. I guess data validation is one of those features that I assume is possible so I'm always gonna look for that possibility!

verbal glacier
#

Hope it works out for you SDVpufferheart

orchid glade
#

"AllowValues":"0, 1000, 5000, 10000, 20000, 50000, 100000, 1000000"

#

tada lol

primal garden
verbal glacier
#

so far, the only thing I can see that they do different is put their editdata into its own .json

hard fern
#

it would still all be doing the same thing

#

just looks a bit different

#

SDVpuffersweats the way i add items might scare someone

primal garden
ocean sailBOT
#

Log Info: SMAPI 4.5.2 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 11 C# mods and 5 content packs.

verbal glacier
#

what did you call your image? and is it in a folder called assets?

primal garden
#

BloxyCola.png

orchid glade
#

The Texture needs to be the asset you loaded to

#

ie your load target, not your load fromfile

verbal glacier
#

so Mods/BloxyCola

orchid glade
#

I would recommend Mods/{{ModId}}/BloxyCola

#

Or just {{ModId}}/BloxyCola

primal garden
#

but its in the assets folder

verbal glacier
#

that is covered by your fromfile

orchid glade
#

Use {{ModId}}/BoxyCola as the target (the in-game asset you are creating), and the FromFile is assets/BoxyCola.png, because that tells it where in your mod files to get the asset from.

#

Then the Texture in the EditData, tells the game which in-game asset (that you loaded earlier) it should use for the object.

#

I have to say, bold choice adding it as a universal like SDVpufferthinkblob

primal garden
long jungle
#

Anyone know the format for a "When:" condition that detects if the player has a certain profession?

#

When you lose the option to use GSQ "Condition":, I swear you'd appreciate it so much SDVpufferwaaah

verbal glacier
#
   "HasProfession |contains=Blacksmith, Gemologist": "false"
}```
verbal glacier
#

thank pathos :P

long jungle
#

I was about to use the number ids for the GSQ Conditions lol

#

So I just gotta use the actual names, yeah?

verbal glacier
#

apparently

long jungle
#

Thankies! SDVemoteheart

long jungle
#

I'm gonna finally buff the long-useless Defender Profession

#

That's gotta be the most unpicked combat profession

royal rover
#

If I want to prevent the clock from pausing when menus are open, do I need to use Harmony to override the "shouldTimePass" method, or is there a simpler way? I noticed that method specifically checks for "overlayMenu != null" and "activeClickableMenu != null" without any override boolean.

primal garden
verbal glacier
#

for your target no

nova gale
verbal glacier
nova gale
#

That's a very unlikely path to your file

royal rover
royal rover
#

So far, I'm looking at doing a postfix like this, and just removing the checks for menus:

        internal static void ShouldTimePass_Postfix(bool ignore_multiplayer, ref bool __result)
        {
            if (__result) return;
            if (Game1.isFestival()) return;
            if (Game1.CurrentEvent != null && Game1.CurrentEvent.isWedding) return;
            if (Game1.farmEvent != null) return;
            if (Game1.IsMultiplayer && !ignore_multiplayer) return;
            if (Game1.paused || Game1.freezeControls || Game1.overlayMenu != null || Game1.isTimePaused) return;
            if (Game1.eventUp) return;
            if (Game1.activeClickableMenu != null && !(Game1.activeClickableMenu is BobberBar)) return;
            if (!Game1.player.CanMove && !Game1.player.UsingTool) return;
            __result = true;
            return;
        }
verbal glacier
primal garden
#

it does work now tysm

#

its also hated by all the town

#

is it bc it's trash

verbal glacier
primal garden
verbal glacier
#

it's not bad, but it is more fun to make character specific reactions some might love it, others might not

merry river
#

Can I use a flavored item as a completion requirement for a delivery quest? The field only allows item IDs iirc

nova gale
#

as the condition?

merry river
#

yes!

nova gale
#

hrmmm

merry river
#

in that case, it's a custom flavored object though

verbal glacier
#

I believe with special orders you can indicate AcceptedContextTags for its delivery variant

nova gale
#

do specific flavored varients get specific context tags? or are you suggesting if the flavored item were unique or that they patch the machine to add a tag?

merry river
nova gale
#

ah, might work then, although that might mean it accepts anything flavored with that base item

#

ah, you can list multiple and give it an and condition

#

so it has to have both the strawberry preserve id as well as be wine

#

I should add some special orders to dwarven expansion, it's one of the areas I haven't fiddled with yet

primal garden
nova gale
#

add "Delimiter": " " below the value

#

(seperated with a comma)

#

also: you should probably not have spaces in your item name like that

#

err, not the item name, sorry

#

instead of {{ModId}} BloxyCola that should be your item id

#

although your item id is a bit weird

#

do you have a variable called AngelWhatEver.Roblox_Cola? If so I think you need 2 { around it, not one to make it replace correctly

primal garden
nova gale
#
"{{ModId}}_Food_FriedBatWings": {
                    "Name": "Fried Bat Wings",
                    "DisplayName": "{{i18n:Food_FriedBatWings.DisplayName}}",
}

Then in the likes/dislikes you'd have:

{
                    "Operation": "Append",
                    "Target": [
                        "Fields",
                        "Dwarf",
                        1
                    ],
                    "Value": "{{ModId}}_Food_FriedBatWings",
                    "Delimiter": " "
                },
primal garden
#

"{{AngelWhatEver.Roblox_Cola}}_BloxyCola" is this a better entry

merry river
nova gale
#

if you have a dynamic token called "AngelWhatever.Roblox_Cola" yes

#

if that is your mod id that you've stored in a value called ModId (like you have below in the name) then you'd do {{ModId}}_BloxyCola

verbal glacier
merry river
verbal glacier
#

i believe you can do "OrderType": "" and skip adding it to the board

torpid sparrow
#

i fucked that up recently i think

#

forgot to remove it from board

#

although i cant remember how

#

bc blank = town board

verbal glacier
merry river
# torpid sparrow

Yeah, that's what's been keeping me from using special orders for that specific quest

#

I'll look into SVE's SOs then

torpid sparrow
#

requiredtags will prevent it from showing up randomly

#

which i need to do

#

rn

verbal glacier
torpid sparrow
#

without required tags, it'll show up on town board

#

if u introduce the SO with an event or a traction, requiring the SO to have the event/traction's tag will prevent it from randomly showing up

#

and make it not repeatable

merry river
#

I see! Thank you, guys, I'll give it a spin SDVpufferheart

merry river
orchid glade
torpid sparrow
#

you can always specify gift taste for specific people

#

it overrides the universal placements

orchid glade
#

I did the thing where I reply late once the conversation has moved on, sorry lol

long jungle
#

Hi again!

Anyone know the texture path for professions?

verbal glacier
#

you mean the icons?

long jungle
#

Yup

verbal glacier
#

i believe they are in LooseSprites/cursors

long jungle
#

cursors is just a hotpot of everything, huh SDVkrobusgiggle

verbal glacier
#

yup, everything... SDVkrobusgiggle

calm nebula
#

That SVE one appears on the board but you can either use a requiedtag to ban it or the gsq field

torpid sparrow
#

whats the significance of the time limit for having it not appear on the board?

#

also i am trying to add a custom item to universal taste but also to individual taste and if i add it to individual taste the universal patch doesnt apply anymore and idk why

#

guh idk whats going on i try restart

primal garden
torpid sparrow
#

nvm i figured it out

#

stupid commas

calm nebula
torpid sparrow
#

i dont know im gonna need a direct answer SMCKekLmaoDog

toxic topaz
#

Does anyone know how to find the pantry bundle location in the games code?

orchid glade
#

I'm looking for a specific mail flag or GSQ that's not listed anywhere on the wiki that I can find but I infer must exist - that's to do with obtaining a unique item found in a secret note. It must be tracked for the game to not keep giving them to you, but do I need to decompile to find it?

calm nebula
timber pilot
#

interal name for an npc was the one starting with the mod name, right?

torpid sparrow
#

I don’t know what’s happening anymore I feel like I missed something

calm nebula
#

Player gets quest and fails to complete it, what do you want to happen?

verbal glacier
calm nebula
#

Do they get the quest again after a cooldown

#

Are they shit out of luck

torpid sparrow
#

Ohhh

calm nebula
#

Does the quest show up on the board randomly

orchid glade
torpid sparrow
#

Is there an infinite time limit

#

If so I should probably change it to that

calm nebula
#

Not without 1.6.16 or a mod

torpid sparrow
#

Rats

calm nebula
#

Mice!

orchid glade
#

I mostly just want to check if it has been found

calm nebula
#

You'll probably need to decompile

torpid sparrow
#

Well only one quest is significant so hopefully no one fucks it up

verbal glacier
#

ignore the monster slayer goal flags on that

orchid glade
verbal glacier
worldly wadi
#

Heyyy I have a question. So, I have a custom town, and I want to add my own special order board on it, I don't want to use the vanilla one, do I need c# for that or there's a framework I can use?

calm nebula
#

emp iirc

orchid glade
#

Oh Aba last edited it I guess it doesn't mean they made it, but anyway

severe cairn
ocean sailBOT
#

Log Info: SMAPI 4.5.2 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 11 C# mods and 4 content packs.

stoic chasm
#

Hello people. I was just curious: what conversation topic things should I make sure my npc reacts to?

tiny zealot
#

just the ones you want

verbal glacier
tiny zealot
#

note that i have occasionally seen players complain that every NPC under the sun is talking about a particular thing, so if that is a concern for you maybe exercise some restraint

long jungle
stoic chasm
#

Ooo, okay then! Thank you all for the help!

toxic topaz
glossy cargo
#

Praise our lord and savior CA (or Pathos, maybe?)

#

FIBS is coded dynamically! I don't need to recode it from scratch for Archipelago

timber pilot
#

I managed to load an npc but I can't talk to her (the skull is the cursor)

royal rover
#

How do I detect when the player uses an item or tool? I'm trying to detect when the user has cast a fishing rod and is waiting for a fish to bite.

merry river
# calm nebula Does the quest show up on the board randomly

technically speaking, would it be possible to have the special order be added to the quest log once the player receives a specific letter and in case the player fails the quest for it to reappear at the quest board again at some point?

ornate trellis
#

siiiiiiiiiiiigh....i just tested something in my mod and happen to check one of my shops and the damn portrait and dialogue box of it is gone when it worked before. i did not touch that shop in any way, what is going on...

#

ah i see what it is, i was about to go bonkers but its jsut the self serving mod that opens it before its officially open, i was gonna say

brittle pasture
#

(isFishing, isCasting, isReeling, etc)

eager tree
#

ignore the fucked up animation i was just testingSDVpetcat

brittle pasture
wanton pine
#

how do you implement warps so you don't get stuck warping between them?

brittle pasture
brittle pasture
#

or warps that might be in the way of an NPC's path via pathfinding

merry river
wanton pine
ornate trellis
#

you put the arrival tile on the warpout tile then

brittle pasture
#

yep warps usually put you one tile away from the warp in the other direction to avoid that scenario

gaunt orbit
toxic topaz
#

yea im pretty sure im looking there

#

like that, but im not sure if im just missing what im supposed to be looking for or something

void aspen
#

Good morning everyone _heghagha

severe cairn
#

Good morning :3

brittle pasture
#

just the LSP tree isn't much

wanton pine
brittle pasture
#

if it looks better then go ahead SDVpufferrad

toxic topaz
#

huh

#

i did that and it doesnt seem like anything changed

wanton pine
void aspen
#

I always make two tile wide edges on my maps now to put all the warps and stuff

#

So many typos in one message omg

wanton pine
#

Of course, having a brain that haaaates spelling aggravates it. I hope that isn't a problem you have!

royal rover
toxic topaz
#

ah, wait, is this considered the source?

brittle pasture
#

yes

toxic topaz
#

i still dont think i really see anything of value in there

whole prism
#

Finally got East Scarp done

#

all these quests that activate when mods are installed is gonna really help with the immersion

#

...I shall endure the pain!!!!!

primal garden
toxic topaz
#

or in a category

#

oh yay, i got it to work PepeHappy

#

i just needed a harmony postfix

timber pilot
#

guys I can't talk to my npc

#

she does have a greeting dialogue but I can't get it to show up in game

severe cairn
whole prism
timber pilot
#

she responds to gifts and being hit by a slingshot but I can't talk to her normally

whole prism
wanton pine
ocean sailBOT
#

Log Info: SMAPI 4.5.2 with SDV 1.6.15 build 24356 on Windows 11 (10.0.26200.0), with 40 C# mods and 29 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

wanton pine
#

Also, do I need to add shadows to trees in Tiled or do they show up on their own/through usage of a paths tile?

whole prism
#

@wraith bay Hello! I sent you a DM with german translations for Cuter Slimes Refreshed, Animated Ducky Crab Pots, Tiny Totem Statue Obelisks, and Creative Neighbors

severe cairn
wraith bay
whole prism
#

If you do decide to launch a major 30-40+ line update to creative neighbors i would need to do it a dif day

#

but other than that

#

im totally fine!

wraith bay
#

yay sounds good, no big changes on the horizon either, i just try to make sure i go through everything with care before i add them to the mods. one of my goals for 2026 is to improve how i work with language partners on both collections and mods, to make what has a translation, which translations need attention (since sometimes translators become unavailable for updates when there are years between changes haha) etc etc.

urban patrol
#

governor?

#

!troubleshootingnpc

whole prism
#

That way I can tackle it, and send it back to you

timber pilot
#

is this faulty?

#

because I double checked everything yet it does ot work

#

her schedule and gift tastes did load but ot dialogue

urban patrol
#

no, that looks right, as long as that’s your filepath and your NPC’s internal name is mod id regina

timber pilot
#

it is

urban patrol
#

did you remember to include your dialogue json if it’s a separate file

timber pilot
#

yes

urban patrol
#

did you finish going through the troubleshooting steps? if so you can try sharing your code

timber pilot
#

ok I igured it out

#

the rain dialogue was messing things up

subtle spear
#

Quick question fellow modders! If I wanted to make an event that's similar to a festival where you can walk around and talk to NPCs but it's just for one day for a heart event, what would I put that under? Is it still an event or a festival? Or is this even possible? TYIA!

#

*not yearly just once!

verbal glacier
urban patrol
#

it depends what you want from it

#

active festivals will shut down the town, but don’t require schedule changes. passive festivals are the opposite

#

time also won’t pass on an active festival day

fossil osprey
#

Do you want something like Haley's event (on the beach, looking for her bracelet) where you can walk around while in an event?

subtle spear
#

I'm just looking for the player to go into a building at a certain time, they can still walk around and talk to the people in the festival, and then talk to my NPC when they're ready to begin

subtle spear
urban patrol
#

ready to begin what?

subtle spear
#

the event lol

subtle spear
#

oooohhh interesting

urban patrol
#

playerControl is still kind of hardcoded behavior

#

once you give it up to the player, you can’t get it back without C# or one of the hardcoded behaviors like luau

subtle spear
#

ahh okay I'll see what I can do! Thank you so much!! 😄

severe cairn
#

wait wait wait you can talk to people in playercontrol?
Please tell me howwww i was looking for ittt

Oh wait i could probably just look at haleys event, but some more explaination would be helpful since i cant find anything abt it in tutorials

urban patrol
#

i would do tiledata

#

it’s janky but i can’t think of how else

severe cairn
#

oh wait fr you can interact with map stuff in events?

#

I needed this like a week ago haha

urban patrol
#

yeah that’s how you throw things in the soup etc

#

or buy stuff from pierre

#

festivals are just sparkling events

severe cairn
#

SDVpufferparty yeah i saw the similarities, i just couldnt figure out how to do the interactions at the time cus i havent touched map stuff yet haha

#

good to know now tho!

urban patrol
#

yeah!

#

overall i would recommend an active festival for your own convenience but you do have to be aware of its effects

severe cairn
#

Ive done a lot of Map Jank™ like 3 days ago, so future Map Jank™ is acceptable

toxic topaz
#

Are bundle names hardcoded into the game like their positions?

#

Thinking about all this bundle stuff made me want to add my own bundle for my character lol

tiny zealot
brittle pasture
#

try looking in there (on my phone at work lol)

toxic topaz
#

Ooh nice, then I can probably just use cp to patch that

#

Thank you selph MeguHeart

whole prism
#

Silly question

#

The weather ID in the given location. The <weather> can be one of Festival, GreenRain, Rain, Snow, Storm, Sun, Wind, or a custom weather ID.

#

If I choose Rain, will it still pick up Storm?

#

or do I have to add Rain Storm

#

if i want both detected

#

on ginger island

#

and the normal town

#

like "WEATHER Here Rain Storm"?

marsh reef
#

🤔 can it storm without rain?

whole prism
#

well

#

it says there are actual differences

#

so im trying to clarify

whole prism
#

at least from what the doc shows

#

well, not that b ut

#

id assume rain is mild

#

and storm u hear thunder, dif weathers

marsh reef
whole prism
#

Yeah I do just add Rain Storm since both can occur, not at once but sometimes weather is more severe soemtimes id imagine

#

good to know

half tangle
#

yeah, just because we see in game that it is also raining during a storm, Rain and Storm are different internally

whole prism
#

good to know!

half tangle
#

also atra can be sneaky, but notice the ☝️ reaction above

calm nebula
#

Sinc you're doing fish, the data/ fish variant would collapse both Rain and Storm together

whole prism
#

Under Data/TriggerActions

#

I think I'll make it GreenRain Rain Storm

#

since i want any kind of rain to trigger it

calm nebula
#

The reason why i say that is because the data/fish thing wojld also consider rainy mod weathers

whole prism
#

ah gotchu

void aspen
#

I see tilesheet climbing

#

!tilesheetclimbing

ocean sailBOT
#

When creating or editing maps in Tiled, one common error is tilesheet climbing, marked by red text containing "invalid tilesheet path '../../..'. This is caused by SMAPI not being able to find the tilesheets needed by the map file. To prevent this error, make sure that you have a copy of all necessary tilesheets in the folder containing your WIP tmx file. Copies of vanilla tilesheets can later be deleted, but must be present while working on your map.

If you get this error with a completed map, an easy way to fix it is to open your tmx file in VS Code or a similar text editor, find all of the places with <image source=, and remove the filepaths to so that only the tilesheet names remain. For example, if the code says <image source="Content (unpacked)/Maps/townInterior_2" width="512" height="64"/>, change it to just <image source="townInterior_2" width="512" height="64"/>.

void aspen
#

do you load both of your map and tilesheet in Maps/ ?

#

wait its for SVE huh

primal garden
#

what category would a mod be that replaces an item texture on vortex

wanton pine
#

I have never used Vortex with SDV, but it would be "visuals & graphics" or "models & textures" for Skyrim.

#

there's probably an equivalent for SDV.

#

As your mod doesn't sound like it's a complete reskin of the game, I would label it as "textures" (seeing as SDV does not have any 3d models, the name is probably different).

urban patrol
void aspen
#

Yeah that threw me off a bit lol

#

Fixing the path should generally fix it

wanton pine
# void aspen Yeah that threw me off a bit lol

yes it is, because I set the greenhouse exit to warp the player to 90, 10 (SVE frontier farm) to ensure you can exit correctly, since I'm pretty sure that I changed the greenhouse's entryway location.

wanton pine
void aspen
#

generally animations shouldn't do anything but

latent mauve
#

Your map and your tilesheets should always use a relative path to avoid tilesheet climbing errors (which means that you shouldn't have .../ or anything like that in your tilesheet reference in the map file).

wanton pine
#

the .../ is shorthand.

latent mauve
#

This means that while editing, you generally want to either use a tool like tilesheetinator or set your tilesheet paths while your map file and the required tilesheets are next to each other.

#

right, but for instance, if you are using the spring_outdoors.png for a tilesheet, the path should ONLY read spring_outdoors.png for the image source. with no other pieces in there.

void aspen
#

wait does one even have to specify greenhouse warp, doesn't it get automatically changed to match the current greenhouse location on farm

#

thats not the tilesheet path thing but i just thought about it

void aspen
#

which also usually in the same Maps folder

wanton pine
#

bottom left doorway is the exit

latent mauve
void aspen
#

right

#

using tsinator helps with that since you don't have to use anything vanilla in your mod folder

latent mauve
#

Sorry, I wasn't sure if we were disagreeing on something or not 😛

#

Wanted to be clear

wanton pine
void aspen
#

sorry if it sounded wrong

void aspen
latent mauve
#

for custom tilesheets, SMAPI prepends them with the z_ name prefix without you having to do anything AFAIK

#

To fix the ordering issue

void aspen
#

cp and tsinator do everything for you so you don't have to do anything except correct path

primal garden
#

should I do rar file or a zip file when I upload my mod?

void aspen
#

zip

latent mauve
#

(If you already have z_ it won't double prepend it)

void aspen
#

always do zip its better and supported natively by windows too iirc

#

rar is not really

latent mauve
#

ZIP is much more accessible for users to extract, RAR requires third-party tools on both Mac and Windows now, I think

void aspen
#

I still use winrar fsr lol

#

but only to open zips

uncut viper
calm nebula
#

If you upload a rar nexus has an about 60% chance of declaring your mod a virus btw

#

Not sure why, save your sanity and just use zip

latent mauve
#

timing

calm nebula
#

(Percentage made up)

brittle pasture
#

.tar.gz SDVpufferwoke

latent mauve
wanton pine
#

how do I remove tilesheets in Tiled that show up with this:

#

(the button is disabled)

void aspen
#

what tilesheet is it

#

it usually doesn't disable the button

wanton pine
#

it does this with any tilesheet it has loaded that has not been used on the map. I can close and reopen the .tmx and they will still be there.

void aspen
#

are you using the up to date version of Tiled

wanton pine
#

incredibly annoying, esp because it's causing the errors.

urban patrol
#

sounds like you have an unembedded tsx floating around maybe

wanton pine
#

I did. I delected it. its menu page is still showing up

void aspen
#

tileset window shows all files opened

wanton pine
#

ah.

#

🤦‍♀️

marsh reef
#

:) acnl farm coming along

fierce vault
void aspen
#

stardew valley but with fear and hunger textures 😋

#

gotta make it one day

marsh reef
torpid sparrow
#

move {{ModId}}.Tilly 1 0 0 false/move {{ModId}}.Tilly 0 -10 3 true Tilly moves forever to the right, does anyone see what's wrong with this? i have no errors

urban patrol
#

move 1 is cursed sometimes

acoustic summit
torpid sparrow
#

grr

urban patrol
#

i have no further suggestions

strong kite
#

Does anybody know how to have a food apply 2 different buffs with different icons using SpaceCore?

urban patrol
#

try exchanging it for an advanced move

marsh reef
torpid sparrow
#

yeah i move it any other way and it stops being super mean to me

urban patrol
#

yeah idk why it hates 1 specifically

torpid sparrow
#

alright event fixed

#

gonna be a bugfix update

#

boo

fierce vault
torpid sparrow
#

1 borks events on a whim

#

grr

marsh reef
fierce vault
#

oh, lol, sorry I misunderstood

#

Sure, I’ll see the options!

#

what have you made?

marsh reef
#

AT for the upgraded house, and the progression upgrades

#

i have two more upgrades to make then alternate roof/door colors

fierce vault
#

Ooo

#

very cool idea!

#

They look really accurate too

acoustic summit
#

They look really cute!

strong kite
#

maan why does using the "CustomFields" field for a food item consolidate all the buffs into one Sadge

uncut viper
#

CustomFields has absolutely no effect on anything unless a C# mod specifically uses it.

strong kite
#

The Health Regeneration buff

#

And it doesn't work when put in with "CustomAttributes"

uncut viper
#

I'm not sure what you mean then by consolidating them all into one, but I'm also not familiar enough with spacecore food buffs to know if there are any limitations on it

#

Are you sure you aree using the correct CustomFields field? Each Buff entry itself has a CustomFields

#

(i.e. don't use CustomAttributes)

strong kite
#

So, this food is meant to give a buff with custom attributes, but it's also supposed to give the Burnt debuff for a shorter amount of time that also has negative HealthRegeneration

uncut viper
#

You can just add multiple Buffs to the object's Buffs list then

strong kite
#
                        {
                            "BuffId": 12,
                            "Duration": 225,
                            "GlowColor": "Orange",
                            "CustomFields": {
                                "spacechase0.SpaceCore/HealthRegeneration": -0.5,
                                }
                            },
                        {
                        "Duration": 300,
                        "IconTexture": "{{InternalAssetKey: assets/bufficons.png}}",
                        "IconSpriteIndex": 2,
                        "CustomAttributes": {
                            "LuckLevel": 3,
                            "CriticalChanceMultiplier": 4,
                            "CriticalPowerMultiplier": 3,
                            "MagneticRadius": 96,```
That's what I've done
#

But when I use "CustomFields" it just gets rid of that other buff

uncut viper
#

Well your second one isnt even inside a buff object

#

Oh wait it is, just weird indenting

strong kite
#

yeah i've had to change this up a lot, it doesn't look pretty HehSweatCloseup

#

also cut off the last 4 brackets so the wall of text wasn't so big

uncut viper
#

Using CustomFields shouldnt just remove it, but it is possible Spacecore is doing something strange under the hood

strong kite
#

That might be the case

#

Cuz if I set it to "CustomAttributes" the health regeneration doesn't work, but it does properly give the two different buffs

#

However the code as is shown above results in this which.. is weirdly enough a different result from what I feel like I'd been getting

#

the speed buff icon is from CJB ftr

uncut viper
#

Unfortunately I'm not familiar enough with Buffs in general, let alone how Spacecore does it, to be much help here, sorry

strong kite
#

Ah, no worries

royal rover
#

So, I'm trying to detect when the player uses a fishing rod. I could just check Game1.player.usingTool && Game1.player.ActiveItem is FishingRod on each tick, but that seems excessive. Unfortunately the Farmer.beginUsingToolEvent and Farmer.endUsingToolEvent are both private, so I don't seem to be able to add my own event handlers to those. Am I missing something?

strong kite
uncut viper
#

You could also just access those fields with reflection too if you really wanted to

#

To bypass the access modifier

uncut viper
#

But a postfix on like FishingRod.beginUsing() is very easy

inland rain
royal rover
#

Correct me if I'm wrong, but bypassing the access modifier with reflection would mean having to re-add the event handler any time a save was loaded or created, while adding a postfix would automatically work.

uncut viper
#

Sounds correct to me

strong kite
#

I guess maybe I'll just look into adding more Giant Crops while I wait for someone who can help with my buffs issue HehSweatCloseup

rich seal
#

The worst part about modding isn't the learning process; it's the documenting. I didn't write down half of the things I did over the past week, whoops lmao

eager tree
#

i write as i do it, otherwise i forget everything lmao

rich seal
#

I should've been doing that

#

But fish... they drove me crazy

severe cairn
torpid sparrow
#

i just used advancedMove instead

severe cairn
#

tragic cus advancedMove caused me other issues SDVpufferwaaah
But i managed to fix it. somehow. idk what I did honestly. Just kinda moved things around 😭

whole prism
severe cairn
#

sometimes I'll be changing something like 10 commands later and it'll affect something earlier and im like ??? what
It always seems unrelated too SDVpufferwaaah

torpid sparrow
#

bork bork bork

#

borking so much it might as well be a shih tzu

void aspen
#

whats the robins house location name

torpid sparrow
#

ScienceHouse

#

for whatever reason

strong kite
#

Demetrius and Maru I imagine

torpid sparrow
#

i wonder when CA decided to make it the carpenter's as well

#

bc that's much more relevant

verbal glacier
ornate trellis
#

so uh...for a map patch do i need to add lights differently? somehow mine wont work when I do them via the Light map properties(its outside and a map patch that happens once a month)

strong kite
severe cairn
#

Im so thankful I learnt about Alex and Willy's beta names before modding 😂

#

CA really said "Maybe thats too on the nose" for Willy but did not change the intent fr

torpid sparrow
#

what's willy's beta name

severe cairn
#

nickname for richard

ornate trellis
#

the worst name ever

urban patrol
#

you can see it in his fishing animation

torpid sparrow
#

ah

severe cairn
#

I had to use his animation name for my mod, cus it's hardcoded to be longer for him fishing, and i needed that so my character can fish too, so i have to write that in my schedule files and everything 😭 you dont get used to it but i guess its kinda funny

void aspen
#

is there a way to render my player behind my horse whenever it faces south without c

severe cairn
#

Content Patcher-only type of jank

strong kite
#

When I first made this mod I really should have considered the balancing issues that might come from making 66 different multi-harvest crops

#

I guess unlike Blueberries and Cranberries at least, once these are harvested they dont regrow

whole prism
#

Quick question

PLAYER_HAS_CAUGHT_FISH Current (O){{ModID}}_PiratesDoubloon

For Objects, when caught, do we still use the caught fish proprety for it? Or is there another way to figure out if a player fished up a specific object (thats not a fish, but caught in the same way)

#

its a "Basic" item

frank galleon
#

Does anyone know if I can use the AddItem action within dialogue to give the player a flavored vanilla item? I know in other places you can use a slash to reference a flavor, but it seems to break the action, I guess because a slash has a specific meaning when parsed. I'm trying to do something like this:
"fall_15": "Have some blueberry wine! #$action AddItem (O)348/258 1 2"

brittle pasture
#

no

#

possible with a framework like PeliQ or EMC though

frank galleon
brittle pasture
#

they add a variant of additem that uses an item query (which supports flavored items via FLAVORED_ITEM)

frank galleon
lucid iron
#

isnt hors already under you

void aspen
#

OH im stupid

#

I deleted the head sprite

#

Okay thanks ill fix it

toxic topaz
torpid sparrow
#

maybe thats why?

toxic topaz
#

isnt this my arrival tile?

torpid sparrow
#

no thats where the warp is

#

5 4

#

going to the basement

#

where to in the basement, idk

latent mauve
#

You need two sets of coordinates for Warps

torpid sparrow
#

6 20 Mountain 76 9

this would be Town 6 20 is where the warp is, going to Mountain 76 9

latent mauve
#

first coord is where the warp tile is located to leave the map, the location name and second coordinates are where the warp takes you

toxic topaz
#

then whats this for?

latent mauve
#

MapTiles are for TileData objects.

#

Warps are map properties.

toxic topaz
#

oh, so do i have the warp tile just be 12, 7 aswell?

torpid sparrow
#

if thats where u want to go

latent mauve
#

unless they are Action Warps (the ones you click on to interact instead of walking over), in which case, your warp format is still different.

torpid sparrow
#

i dont think theyre related though

latent mauve
#

Are you looking for a warp you walk over or one you click on (think obelisks or outside doors)?

toxic topaz
#

click on

#

like basically just the wizard trapdoor

#

im making a basement

latent mauve
#

Was there an error in your console when you tried to use it?

toxic topaz
#

no, it just like didnt do anything at all

torpid sparrow
#

oh wait so why aren't you doing it in tiled?

latent mauve
#

okay, so your format is fine for an Action Warp

#

is there an actual tile on the Buildings layer under that object?

toxic topaz
latent mauve
#

Tiled is not necessary to complete the action, no need to confuse them more right now. 🙂

torpid sparrow
#

fair enough

latent mauve
#

And that's on the Buildings layer of the map?

toxic topaz
#

yes it is

latent mauve
#

(keep in mind, the Community Center is very cursed in its non-complete state)

toxic topaz
#

i remember in tiled seeing the special tile thing above interactable objects, but i wasnt sure how to do that

latent mauve
#

You may very well just be in a room that is getting reloaded and nuking your tiledata object.

#

(I ran into that with my Useable Community Center mod)

toxic topaz
#

hmmmm.... i hope that isnt the case

#

i already solved the problem of my npc not being able to walk in there

ornate locust
#

my patch note list is getting so long, but I can't stop ramping

latent mauve
#

Yeah, I feel like we mentioned before that CC patches are cursed until the CC is done

#

Try moving the trapdoor and the tiledata action to part of the hallway or something in case it's room specific cursing.

#

For a test

toxic topaz
#

you did lol, but i just need a single warp door and im done with it

#

sure

patent lanceBOT
toxic topaz
#

i could probably also test it in the finished community center on a diff file to see if it works there

latent mauve
#

You could

#

Are you able to debug warp into the basement location, just to be sure there isn't something with the location not being recognized?

#

I've definitely done some silly things like mispelling the location name in the warp before, so best to just rule it out

toxic topaz
#

sure ill try that

#

.... huh, it wont let me warp into it

latent mauve
#

is there an error being returned?

toxic topaz
#

says theres no output

#

so im guessing it doesnt exist?

latent mauve
#

When you tab back in, does it warp you?

toxic topaz
#

no it doesnt

latent mauve
#

!log

ocean sailBOT
#

Important note: Your computer username may appear in the log. If your username is your full name, please be aware of this before uploading it.

Please share your SMAPI log file. To do so:

  1. Open this page: smapi.io/log.
  2. Follow the instructions at the top of the page to upload the log file. (Don't copy & paste from the console window!)
  3. After uploading, it will show a green box with a URL to share. Post that URL here.

Please do it even if you don't see any errors. This has useful info like what mods and versions you have, what the mods are doing, etc. If the issue didn’t occur in your last session, please load the game to the point where the issue occurs, then upload the log.

latent mauve
#

Upload your log and drop the link in here?

toxic topaz
#

sure

ocean sailBOT
#

Log Info: SMAPI 4.5.2 with SDV 1.6.15 build 24356 on Windows 10 (10.0.19045.0), with 16 C# mods and 1 content packs.

latent mauve
#

okay, yep, no location with name error

#

Have you created your Data/Locations entry for the basement already in the code?

#

And if so, could you share that?

toxic topaz
#
    "LogName": "Load Megumin's basement",
    "Action": "Load",
    "Target": "Maps/{{ModId}}_Megumin_Basement",
    "FromFile": "assets/maps/Megumin_Basement.tmx"
  },
  {
    "LogName": "Megu basement warp include",
    "Action": "Include",
    "FromFile": "assets/data/meguminbasementwarp.json"
  },```
#

yea i did it in my content.json

latent mauve
#

You should have an EditData patch to the target "Data/Locations"

#

to define your basement as a location that the game can recognize

#

That's the one we need

toxic topaz
#

ahhh, yea thats probably what im missing

latent mauve
#

Look this over and make sure you aren't missing any pieces!

toxic topaz
#

okay thank you so much, ill give an update if it works MeguHeart

latent mauve
#

You can scroll all the way down to the code block

toxic topaz
#

well i got my little basement i made real quick to load, but the warp tile still doesnt want to work strangely

latent mauve
#

and you've already tried moving the warp tile?

#

I'd honestly try putting it outside the community center (maybe hidden around the back, like a cellar door situation?) just to see if it's being inside there that is causing the issue

toxic topaz
#

yea ill try putting one outside and just getting that one to work first

#

that way ill know if its the community center jank

latent mauve
#

If the little hand isn't showing up at all, then it's almost certainly the Community Center curse

urban patrol
#

just to butt in, it is possible to warp in and out of the CC

toxic topaz
#

including console?

#

because when i warped to the basement i was in CC

marsh reef
#

guys, how does one set where the shipping bin spawns on a custom farm? 🤔

urban patrol
#

what did you put

toxic topaz
#

i did debug warp yumyoboi.MeguminNPC_Megumin_Basement 5 4

urban patrol
#

and it put you in the cc?

toxic topaz
#

it put me in the basement at 5, 4

urban patrol
#

then i’m confused because that’s expected behavior

toxic topaz
#

im trying to figure out how to use tiled to make this warp thing

urban patrol
#

it should be like any other Action Warp tile data

#

what do you have?

toxic topaz
#

i dont know how to do the "action warp tile data" lol

urban patrol
#

[[Modding:Maps]] the wiki shows how

latent mauve
#

nic, he created an Action Warp tile property with the CP code method which should have worked fine.

#

Currently we are just making sure that his tiledata patch even works outside the Community Center before trying inside again, because I can confirm that my patches with attached TileData do NOT consistently work until CC is done, even if the visuals do.

urban patrol
#

okay wait let me find the patch

#

you need to target all map variants

latent mauve
#

It was missing location data before so better to make sure the warp even works first

#

Before we overcomplicate it

toxic topaz
#

wait, is it one of those things where you have to specify that its the ruins variant

urban patrol
#

yep

#

ruins joja etc

toxic topaz
#

makes sense, i had to take that into account when making my characters room

#

ill try that

urban patrol
#

welcome to the fun world of maps vs locations

latent mauve
#

(I have done this with my patches and they still aren't consistent because of the constant CC reloads in the rooms)

latent mauve
toxic topaz
#

good point, but if this works then i wont have to try that i think

urban patrol
#

yeah sorry lily and yumy i didn’t mean to distract from step by step troubleshooting

latent mauve
#

I was trying to avoid you getting pulled into multiple directions at once instead of taking things one at a time

toxic topaz
#

ill do that next

#

oh no you're all good its my fault not yours

#

uh

#

well it works

#

but

#

i didnt have to click on it

latent mauve
#

Then you added a Warp to the map properties instead of the Action Warp tile property when you updated it

#

The only problem with that tutorial I linked is that it assumes you want a warp that you walk over

#

Which is the last code block in it

toxic topaz
#

wait wtf....

latent mauve
#

Map property warps do consistently work for incomplete CC in my experience, it's the tile data properties that don't always

toxic topaz
#
  "12 7 {{ModId}}_Megumin_Basement 5 4"```
#

so thats just a walk over warp?

latent mauve
#

Yeah, that's a map property / walk over warp

#

You need the MapTiles code you had before for clickable warp

toxic topaz
#

ahhh, okay. ill put that in now then

#

omg it works

#

thank you so much nic and fire

golden shadow
#

Hi! I'm really shy about asking this because I have no coding experience but I don't know where else to go to ask this. Can someone direct me to the right channel to ask about this in?

I am not making a mod, but I am altering an existing mod for personal use.

I have a questing about coding. A mod I got came bugged and the original mod author seems to be inactive (otherwise i'd just ask them myself.). I want this mod to work, so I am trying to fix the issue myself (I definitely am NOT a coder so I don't really know how to fix this on my own.). The mod I am trying to fix uses Content Patcher Animations as a dependency (I hope this is the correct term.), I am aware that dependency is outdated, however it still works. ....Just not when it becomes winter.

I made an image with the code/error/etc. and text accompanying it that I hope can explain my issue more and what I am trying to fix. I really hope I explained this well, sorry in advance!

I ask this in modded-tech-support, right? I'm sorry, I don't really know what I'm doing, haha-

latent mauve
#

This is the right place to ask, as you are editing a mod!

golden shadow
#

Okay cool! Thank you so much! I can provide more details if needed.

This is for all bachelors but i'll just use Sebastians as an example. The code in the screenshots is from the content.json file of the mod.

(I really hope I'm explaining this well!!!)

lucid iron
#

ah so it's an animated portrait mod

golden shadow
#

Yeah! It works, just not when it is winter, haha-

lucid iron
#

you dont need to conditionally change it, just make a copy of all the patches whose Target say Portraits/Sebastian_Winter

#

now normally the "Targets": "Portraits/Sebastian, Portraits/Sebastian_Winter" syntax is supposed to work but it probably doesnt bc CPA jank

#

the reason why it is deprecated is that it has some performance problems and you can use spacecore to do what you want now

#

!converters

golden shadow
#

Oh thank you! I'll look into this!

lucid iron
#

u can try the converter if u want

#

this mod should have exampels of how to do it spacecore way

golden shadow
#

I see I see. Thank you again! I'll look into these and I'll come back if I have any other issues/questions!

lucid iron
fierce vault
#

wow, my npc's house layout wasn't great. Amazing what spending months away from something can help you realize

torpid sparrow
#

what does it look like?

fierce vault
#

Oh... uh, it's still really unfinished. I have a lot of furniture to make, or to move onto my custom sprite sheet

#

It's a bit fantastical though

fierce vault
torpid sparrow
#

big maps r difficult

fierce vault
#

I condensed a lot of things, and it feels less awkward now

#

Big houses tend to struggle with making the space feel used, imo

torpid sparrow
#

the amethyne house is pretty full

#

but long hallways just make things feel empty

#

excuse me the amethyne mansion

fierce vault
#

I'm really not a fan of long hallways in stardew, specifically. They look odd to me

torpid sparrow
#

theyre hard to decorate

fierce vault
#

I like how you made yours from the pictures though. It's a good size

torpid sparrow
#

i think i started a little bit smaller and just sized up when i needed it

#
  • added on the kitchen later
fierce vault
#

The kitchen is one of the things I had to downsize for mine

torpid sparrow
#

i think the only big interior ive made is the uhhh

#

workshop for my expansion

#

where is that pic

#

there it is

#

the bottom right is kinda empty

#

clutter clutter clutter

fierce vault
#

That is a lot of space to work with!

modest dagger
#

wem why are there cages

#

wem who are you imprisoning

torpid sparrow
#

they take prisoners

fierce vault
#

It feels like a warehouse a bit

torpid sparrow
#

it's the shipwrights' workshop SMCPufferSquee

#

tinker tinker

fierce vault
#

One thing I realized my npc's house needed was to look more run down lol

#

It had too many amenities before, like a bedroom