#making-mods-general

1 messages · Page 366 of 1

brittle pasture
#

the key is "{{ModId}}_CrochetArt"

#

the value is "{{ModId}}_CrochetArt/painting/1 2/1 1/1/1000/-1/Cute Crochet Art/0/{{ModId}}\\crochet_art",, which defines that it's:

  • has the internal name {{ModId}}_CrochetArt
  • is a painting
  • is 1 tiles wide and 2 tiles tall (1 2)
  • has a hitbox 1 tiles wide and tall (1 1)
  • has only 1 rotation
  • costs 1000 gold
  • has no placement restrictions (-1)
  • is named Cute Crochet Art
  • uses the index 0 in the texture sheet
  • takes its texture from {{ModId}}\\crochet_art (which we loaded above)
#

(I'll say that you picked an unfortunate time to learn furniture data, because 1. it's a slash delimited string, which is a pain to understand, and 2. it will get reworked to be an actual model next version)

lyric lotus
#

i...i...might just do this AT for now..

#

and learn this slowly another time

#

it's late here too

twin wadi
#

hello, i can't figure out why my farmer is simply freezing here... here's my event code: https://smapi.io/json/content-patcher/489339dcac6449249f4b4ca9fe7f952d. the smapi log additionally does not have any errors. if the event line is too hard to read, cut the part that's freezing, with "FREEZE" at where it freezes:

/pause 500/emote farmer 32 false/pause 500/emote Krobus 32 false/pause 500/warp Krobus -2000 -2000/playSound doorClose/pause 500/move farmer 1 0 0/FREEZE!!!/pause 500/warp farmer -2000 -2000/playSound doorClose/globalFade/viewport -1000 -1000/pause 500/changeToTemporaryMap {{ModId}}_ShadowVillage/

#

farmer, please just go into that door like krobus said SDVpufferwaaah

hard fern
#

furniture is a pain in the butt for me because it's the way it is now... sigh

twin wadi
hard fern
twin wadi
#

but isn't that line moving the farmer one tile to the right?

urban patrol
#

do you have any tiles on the buildings layer there?

twin wadi
#

hmm, i will have to check

#

it says it's empty on the buildings later

#

*layer

hard fern
#

huh

#

i'll be honest i may have forgotten how to move the farmer

twin wadi
#

i probably made a silly mistake somewhere, because i was very sleepy when i wrote the code a few days ago

urban patrol
#

what happens if you move the farmer two tiles

hard fern
#

im staring at my own event jsons and

urban scaffold
#

I am barely starting to understand movement

twin wadi
hard fern
#

no clue what i was even doing and i think i screwed up an event entirely by walking the farmer into the void

twin wadi
urban patrol
#

movement is cursed but i think i've connected with my inner horse girl enough to tame it in most cases

urban scaffold
#

is there a good extended guide on movement (that still works for the current version)? think

urban scaffold
#

yeah for events

hard fern
#

uhhhh probably on the whole "events for babies" guide on the modding wiki

urban patrol
#

pick a god and pray /j

twin wadi
#

yeah there's tons of event tutorials on the modding wiki, i use a couple of them

hard fern
#

i picked yoba

urban patrol
#

i'd say my number one tip is don't mix move and advancedMove

urban scaffold
#

I thought someone said it was a bit outdated but I imagine movement didn't change much? (I legit started learning TODAY)

urban patrol
#

pick one and stick with it

urban scaffold
hard fern
urban patrol
#

i wish i was you

twin wadi
urban patrol
#

i tested the event i wrote last night 17 times in a row

urban patrol
#

could also try increasing your pause length just in case

hard fern
#

im back to throwing my character's gift tastes out the window because halfway through i was like "wait they dont even eat human food why am i worrying about what dishes they like"

urban patrol
#

meeeee

twin wadi
haughty charm
vernal crest
#

I just do a lot of experimenting

#

Writing events multilined helps with troubleshooting because it's much easier to isolate lines, move them around, comment multiple lines out at once, etc.

urban scaffold
#

Can you believe I am doing all of this just because I wanna write more dates to have with my witch wife?

vernal crest
#

A lot of playing around with move, advancedMove, halt, waitUntilAllStationary, and other commands I can't remember off the top of my head.

urban scaffold
haughty charm
#

I can believe it - I made my first mod because I wanted my pet cat to mrrowl

urban scaffold
#

Ah yes pets and romance interests, the beginning of everything

vernal crest
#

I made my first mod because I wanted more bathrooms in the game...

half tangle
#

In a CP mod is there a way to get a number slider into GMCM's config using some combination of the options available in the ConfigSchema or is that not available?

vernal crest
#

Hmm I thought the slider happened automatically if you entered a range

urban scaffold
half tangle
#

ah, good to know. Is there a way for it not to be discrete? Like input a float instead of an int?

vernal crest
#

A slider for a float sounds frustrating to control lol

#

(Also I don't know the answer, sorry)

half tangle
#

If not I can just leave it as a text input and let the console warnings blare if it's invalid

#

yeah no worries - I just saw some CP modders around and figured I'd ask those with more experience than I have

vernal crest
#

Actually I guess it depends. If you're going 0 to 1 in .1 increments that'd be okay. But 0-10 in .001 increments would be terrible haha

twin wadi
#

my first mod was a "magic blueberry" which is a part of an inside joke SDVkrobusgiggle

half tangle
#

yeah, I saw that Range is suggested to be limited (or coded to be limited, I forget) to under 5000 values

#

text input is gonna be the better option since it'll get validated by my framework mod anyway (edit: actually CP validates it before my framework even gets a chance - makes sense)

urban scaffold
#

Anyways, I should sleep. I spent 6 hours learning and editing, fixing for just two scenes on this mod so far and I haven't even tested the second one. YueDoubleColonD Goodnight, Thanks for the help and guides!

twin wadi
hard fern
twin wadi
half tangle
#

I'm not an events coder but I did have that thought as well - the facing direction being opposite the movement might somehow be messing with things?

twin wadi
#

still freezes... gah i have no idea, i really need to sleep now... the bug squashing will continue tmrw morning SDVpufferwoke

half tangle
#

with a bit more reading my only other thought is to replace it with move farmer 1 0 0 true but sleep is very important

elder mountain
#

Hi. That would be nice 🙂

urban wigeon
#

Has this been implemented or is there a way to do this type of config with content patcher only? I have a mod that has tons of options, and its really ugly right now D:

lucid iron
#

Tl;dr i closed it because i think the better approach is new config mod (that i haven't made either sorry)

#

Pathos opinion is that this is too much gmcm wrapper which is fair

urban wigeon
#

oh :C but it is still possible to make the config with a mod on C# and then make my mod on content patcher depend on it right?

left nova
#

The ability to have a separated page/drop down list for each Section is quite interesting to be honest.
I made a mod with a lot of compatibility patches with config that turn on/off them individually and I can see how useful these are.

urban wigeon
#

Yeah, my mod has many options for something similar, like if a person wants to add their custom map they can but on the config they need to specify the X and Y coordinates to fix they default warp coordinates, so you have tons of small fields

lucid iron
#

Yeah u can still make a c# mod to do whatever config

#

Control the patches by exposing your own tokens

#

What does ur mod do?

urban wigeon
#

it adds adittional farms to the valley so the config needs to be read on joining the world to load the location data, as you see each config is on 1 line, would love to be able to also put two options in just one line, so its more readable the X: 000 , Y: 000 coords for example

lucid iron
#

Tbh i don't think my PR would have helped with this

#

For coordinates i have been quite lazy and just made ppl enter comma separated string kyuuchan_run

#

You can do that and then use valueat i believe

urban wigeon
#

Mmmm yeah that's an option too I thought but I decided to split them :p, well, I will think about using C# for this, already using it for some other stuff in the mod anyways

#

thank you!

woeful lintel
#

search for a basic json tutorial (in your language), it seems like you're missing a ton of concepts.

modest dust
#

Alr gang, i might start this thing up again today

#

Or not

#

Idk ill see

hallow prism
#

i need a refresh course on what's needed for a location to exist. I have location data for the map and loaded a location map, but my location isn't existing, do i miss something?

#

ok i believe i rubberducked and found the error

calm violet
#

Hi, is it possible to create a mod that allows me to write translation files to another mod? Specifically the Generic Mod Config Menu mod, I submitted the translation for months and it hasn't been added to the mod yet.
So I thought about creating a mod that allows me to write translation files to another mod but I'm afraid of breaking the target mod so is there a way to write without breaking the mod?

opaque field
#

Ok, so after doing a LOT of testing I've discovered that if I set the 'path letters' to go out after a different events, it sends, is there, any possibility, that I'm not able to send multiple pieces of mail after witnessing the same event even if the player stat I'm asking it to check for is different? I have done a patch/export on my TriggerActions, and the Mail, both show up in the right places, with the correct information and I can debug AddMail the mail and it arrives perfectly, but after completing my prologue events none of the letters show up if they are all set to the same event but with different stat checks. This seems to be the only thing that prevents the mail from sending out.

modest dust
#

Is it easy to make a new npc?

calm nebula
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:

lusty sail
#

I'm gonna try to work on a mod today bongocat

golden basin
#

im making a event nad im really happy with my temp map for it

obtuse wigeon
#

Hi, I'm making two mods, Mod B that add a custom item (a pathway like the stone walkway in vanilla) and Mod A that adds a new shop (and catalogue, but it's just the shop that isn't working). I want to add the item from Mod B to the shop in Mod A, Mod B has a soft dependancy of Mod A so it loads after , and Mod A only needs the "ItemId" of the item in Mod B. What is the "ItemId" if the Unique ID (in manifest.json) is "UniqueID": "AtlasV.AtlasOfPaths" and the ItemID is "{{ModId}}_TerracottaPoolTileItem"

royal stump
obtuse wigeon
#

more accuratly and concisely, how do I reference an item from one mod, in another? vanilla items work, modded ones however give an Error Item

royal stump
#

AtlasV.AtlasOfPaths_TerracottaPoolTileItem should be the item ID in that case
you can also use the command patch export Data/Objects (or whatever data asset your item is in) to see any loaded custom IDs

obtuse wigeon
#

Ahh perfect thank you, the one thing I didn't try, for somereason my brain missed the "_" between mod name and item name and though it was a "." even though I made it

royal stump
#

(I forget exactly where pathing IDs go, but I think they have an object entry? SDVpufferthink)

obtuse wigeon
#

I assume so, that's what I was testing last night before relising it was past 6am and the sun was shining

royal stump
#

yeah, looks like the ID you'd want is in Data/Objects
they have entries in Data/FloorsAndPaths too, but shops don't care about that part

obtuse wigeon
#

So glad this works now, I can actually set my mod to a public 1.0.0 version! WOOO!!!

#

Nope, I jumped the gun, further testing revealed that if I don't have the mod that adds the path install i get an error item, when I want to it actually not show up at all if the mod isn't present

#

can the When condition test for if another mod is loaded?

lucid mulch
#

HasMod token

royal stump
#

yep, you'd want to add it conditionally based on "HasMod": "ModB's ID"

calm nebula
#

(May i ask why these are two separate mods)

obtuse wigeon
#

Brilliant thank you

obtuse wigeon
#

Similar to OrangeBlossm or HxW furniture Mods

modest dust
#

!help

ocean sailBOT
#
please get me off discord
vernal crest
# opaque field Ok, so after doing a LOT of testing I've discovered that if I set the 'path lett...

I wasn't able to follow your message properly to understand what it is that is going wrong for you (something to do with your stat?), but I did notice that a bunch of your trigger actions have invalid GSQs so those ones are never going to fire. Namely, BerryLonely, WinterWarning, HallowsEveMail, and SpicyHallowsEveMail. They all have the SEASON_DAY token written incorrectly (and at least one is lacking a comma between GSQs).

Also ShyBiteMail won't trigger because you've misspelled "conversation" in the PLAYER_HAS_CONVERSATION_TOPIC GSQ.

modest dust
#

gang im gonna continue on the crop i was making

#

okay

opaque field
#

Those do need to be fixed Ty. The issue is the ones marked wolfpathmail, bratpathmail and blushpath mail. They don’t trigger if they’re all set to the same event, even though the stat range is different. But if I set them to go off after witnessing other events they send. I checked that the stat is in fact applying

obtuse wigeon
vernal crest
opaque field
#

Yes, they show that they’re true

#

Currently doing (another) test on a clean save atm too

royal stump
#

Otherwise you'd want a separate CP action that adds the conditional item + a "When" with that

vernal crest
calm violet
obtuse wigeon
opaque field
royal stump
obtuse wigeon
opaque field
#

But when I check that the event has been seen and that the points are there it says true.

vernal crest
opaque field
#

Okay. Let me run that then

modest dust
#

does someone have a seed packet template i can use? since i unpacked the game files but cant seem to find seed packet textures

vernal crest
opaque field
vernal crest
opaque field
#

Yes. Hmmm. maybe I need to re-check my ranges and make sure they’re updated or something? 😭 I’m gonna take a break and work on my vegan fish for a little bit and then come back with fresher eyes.

vernal crest
opaque field
vernal crest
calm nebula
#

One mod adds the catalog

#

The other adds the items and adds those items to the catalog if the catalog mod is installed

obtuse wigeon
#

So I've added two seperate instances of:

"Action": "EditData",
"Target": "Data/Shops",

The first instance has no conditions and contains vanilla items, the second has the condition "HasMod": "ModID"
It removes the error items when the mod isn't present however when the mod is present it overwrites the first only vanilla items

obtuse wigeon
hallow prism
#

what are you targetting in data shops?

#

you don't target the same way to create and edit a shop

royal stump
obtuse wigeon
modest dust
#

gang i mightve just made peak

hallow prism
#

ok! well you don't target the same way to create and edit a shop!

obtuse wigeon
hallow prism
calm nebula
#

Please don't ask the genz to explain their lingo

#

I don't need to feel even older

royal stump
hallow prism
calm nebula
#

It's not tbh

hallow prism
#

ah well that explains it

calm nebula
#

It's just genz for "i did something super cool"

#

We can all feel old now

royal stump
#

(yep, peak as in "top quality"/etc)

brave fable
#

c'est pique.

royal stump
#

there's a game called peak that's very popular right now, so it's harder than usual SDVkrobusgiggle

obtuse wigeon
calm nebula
#

....are some of y'all genz

obtuse wigeon
royal stump
#

someone else might have better advice via knowing what shop entries look like, though, I don't work with them SDVkrobusgiggle

calm nebula
#

Lawn, off mine, newspaper waving at cloud, my back, my back, etc

obtuse wigeon
obtuse wigeon
hallow prism
#

i don't know how to explain that i mostly was curious about what sten did that was mod related, and threw a joke while i was at it

calm nebula
#

Sorry SDVpufferheart

hallow prism
#

but it doesn't work for me right now

royal stump
#

yeah, the wiki's been failing to load for a couple days, off and on

calm nebula
#

I've been watching thr money guys lately so my entire vocabulary has changed to sound like

#

"Tax avoidance: okay! Tax evasion: no way!"

obtuse wigeon
hallow prism
#

    {
      "LogName": "Editing Krobus Shop",
      "Action": "EditData",
      "Target": "Data/Shops",
      "TargetField": [
        "ShadowShop",
        "Items"
      ],
      "Entries": {
        "Lumisteria.MtVapius_KrobusShop.SpeckledFowlVoidEgg": {
          "Condition": "!{{HamletProgress|contains={{Range: 0, 5}}}}, DAY_OF_WEEK Sunday",
          "Id": "Lumisteria.MtVapius_KrobusShop.SpeckledFowlVoidEgg",
          "ItemId": "Lumisteria.MtVapius_SpeckledFowlVoidEgg",
          "AvailableStock": 1,
          "AvailableStockLimit": "Global",
          "Price": 8000,
        },
      },
    },```
#

it may be enough for you to get an idea of the proper structure

obtuse wigeon
# hallow prism ```json { "LogName": "Editing Krobus Shop", "Action": "EditData...

isn't that equivelent to this:

{
            "LogName": "Add Atlas of Paths Items Catalogue Shop",
            "Action": "EditData",
            "Target": "Data/Shops",
            "When": {
                "HasMod": "AtlasV.AtlasOfPaths"
            },
            "Entries": {
                "AtlasV.AtlasCatalogueSet": {
                    "PriceModifiers": null,
                    "PriceModifierMode": "Stack",
                    "Items": [
                        {
                            "Id": "AtlasOfPaths.ShopTerracottaPoolTileItem",
                            "ItemId": "AtlasV.AtlasOfPaths_TerracottaPoolTileItem",
                            "Price": 0
                        }
                    ]
                }
            }
        },

Instead of the condition being per item its added below the "target" as the whole entry should only be added when AtlasV.AtlasOfPaths is present, the only different I see that's completely different is "TargetField" But I'm not sure how to reference the specific shop, would it just be "AtlasV.AtlasCatalogueSet" instead of "ShadowShop"?

hallow prism
#

so it's not equivalent because what i do is allowing to ADD to an existing shop rather than REPLACING its content

#

and yes you'll need the target to be the one of your shop entry

#

so replace ShadowShop by your shop ID

obtuse wigeon
#

Ahhh gotcha okay, as the items are listerd under "Items", Ill need that in taget field too?

#

side question, how do you get the colour format in the code block? I've just been using 3 backticks, code, then 3 more backticks

hallow prism
#

i added json after the first 3 backticks

#

so

#

see how your entrie is "AtlasV.AtlasCatalogueSet": { "PriceModifiers": null, "PriceModifierMode": "Stack", "Items": [
you have this items list

#

and you add your item here

#

with my method the item list already exists

#

and you add new items to the list rather than recreating it

#

ok so remember, all of this can be a bit overwhelming, so take a break at some point

#

hot/cold beverage of your choice

obtuse wigeon
#

Actually let me add it to the SMAPI json log thing

#

https://smapi.io/json/content-patcher/6e3fb78ff16545b09e0ea63095f2ae62
this is the two blocks that add the shop, the first with vanilla items and any furniture with the context tag "collection_AtlasV", the second add the custom items from my other mod, as the shop was already created with the first block, so for the second I would need to use your block of code?

hallow prism
#

i think so, but don't have time to look at the json

#

test and see

#

keep this one as a backup if you need

royal stump
#

you still have the whole shop entry there; that TargetField setting basically zooms in on the "Items" list, so I think this is how your Entries part should be formatted:

"Entries": {
    "AtlasOfPaths.ShopTerracottaPoolTileItem": {
        "Id": "AtlasOfPaths.ShopTerracottaPoolTileItem",
        "ItemId": "AtlasV.AtlasOfPaths_TerracottaPoolTileItem",
        "Price": 0
    }
}```
modest dust
#

gang whats the first crop in the game called againn?

#

i forgor

royal stump
#

parsnips?

modest dust
#

yes thank you

obtuse wigeon
#

I did notice that after testing it and it didn't work, modified it to be like that just before your message, got there just before you, but in otherwords this is working, now just gotta test to see if it works without the mod!

obtuse wigeon
modest dust
#

the newest format is 2.7.0 right?

vernal crest
#

You can check that yourself by going to Content Patcher's Nexus page and seeing what version it's on

twilit quest
#

Hey folks, I'm back again. Still unable to get the SpouseRoomPosition to work correctly. It just doesn't seem to be showing up at all

vernal crest
modest dust
#

oki thank u

twilit quest
#

Has anyone gotten the new SpouseRoomPosition map property to work correctly?

#

Specifically on Upgrade 1?

obtuse wigeon
fallow tartan
#

Hello, experts! I've developed a mod that's supposed to automatically load the first host's save file when I press F9 on the hostcoop interface. However, it doesn't seem to work. Do you have any suggestions for fixing this?

vernal crest
obtuse wigeon
#

If anyone is familiar with Happy Home Designer, is there a way to add custom catagories? specifically an "Other" catagory so items not relevent to the current catagories are placed there instead of in the "All" catagory, I thought this was possible but can't find it in the documentation so I might've confused it with another mod

alpine sapphire
#

best mods in life

twilit quest
royal stump
twilit quest
twilit quest
royal stump
#

sure, it's just a CP load in this case

{
    "Format": "2.7.0",
    "Changes": [
        {
            "Action": "Load",
            "Target": "Maps/Farmhouse1_marriage",
            "FromFile": "assets/Farmhouse1_marriage_EDIT.tmx"
        }
    ]
}```
#

using an EditMap with MapProperties also worked, though I did notice that the spouse room isn't overlaid if patch reload is used

#

it requires reloading the save to actually overlay again (or possibly sleeping)

twilit quest
#

@royal stump Thank you so much

vernal crest
#

Huh Wren finally changed her Nexus username to match discord

brittle pasture
#

I kinda wanna do that but I'm scared of links breaking ngl

woeful lintel
# obtuse wigeon One mod is a catalogue mod, the other add decorations, I want the mods to be sep...

you could make all your Furniture/decoration mods add the same catalogue without issues: have an initial empty definition of the shop data and the furniture hosting it that is copy-pasted between all your mods with a high patch priority, then each mod adds their own shop item data to this new shop with "EditData" and "Fields", this way they don't overwrite each-other.
You can also make the catalogue definition conditional on whether or not your other mods are installed, but it'll quickly get bloated with conditions the more mods you have.

vernal crest
brittle pasture
#

not really SDVpufferthink

uncut viper
#

BETAS code is propped up by a load bearing link to Selph's Nexus profile and if the network request to it returns anything except a 200 status the mod is bricked

#

you're locked in

calm nebula
#

Stupid mod ideas # 1100: mod that, every time you go to a festival, uploads your mod list and festival positions to a centralized server

modest dust
#

Can someone make me a basic content patcher mod? Like i just wanna look at someone elses mod that replaces parsnips with their custom plant, i can send textures if you want.
I wont profit or publish or claim it as my own, i simply wanna look at the files and learn from it so i can make my own.

obtuse wigeon
# woeful lintel you could make all your Furniture/decoration mods add the same catalogue without...

The way Ive done it now is the catalogue mod makes a shop, and ands any furniture with the context tag "collection_AtlasV" using Calcifer Framework Mod, and the individual mod that adds an item that doesn't support context tags adds it to the shop, Keeps it organised and only the mod that adds uncompatible items by default modifies the shop, but it seems to work fine right noe, I'll keep your method in mind in the event i encounter somethign where this doesnt work

gentle rose
ashen urchin
#

Please tell me which part is wrong

fading walrus
uncut viper
fading walrus
twilit quest
#

Oooh, hey! @royal stump I think I got it working! I think it might have been because I had it in an include instead of in the main content file. ^_^;;;;;;;

twilit quest
#

@royal stump Your test and examples were invaluable

calm nebula
royal stump
#

that might be why, yeah, people have mentioned issues with Include loading later & missing some start-of-day changes

modest dust
calm nebula
#

It would attempt to play the game at three seconds per frame

uncut viper
#

you'd only need a few frames!

calm nebula
#

Technically speaking i could make the game headless

#

And get zero frames

uncut viper
#

you just need to launch long enough to export the festival data

calm nebula
#

But what if the festival positions are behind like

#

Tokens and shit

round timber
ashen urchin
uncut viper
#

then you won't get them anyway even if you loaded a save

#

most likely

calm nebula
#

Oh but what if I load a save and have it play itself

uncut viper
#

that sounds like a good idea! Looking forward to you doing that for us SDVpufferheart

calm nebula
#

The game is like that

calm nebula
#

I'll write to Nexus and ask

uncut viper
#

I'd be surprised

obtuse wigeon
gentle rose
#

site:nexusmods.com <Mod Name> should work too

ashen urchin
calm nebula
#

Look at the vanilla maps

#

Keep the same initial tilesheets with those names

#

Yeah it's weird tbh

ashen urchin
obtuse wigeon
obtuse wigeon
vernal crest
lusty dome
#

Hi i need some help for my modded version of stardew valley on pc, when I open Stardew Valley after 1 second it starts it crashes, in the Smapi log it doesn't tell me that there are problems and I checked that the mods don't give me problems (Removing them from the game folder and starting without the mods), so I think the problem is SMAPI, how can I solve it?

calm nebula
#

So what nuueq is seeing is the Greenhouse Special

#

It searches for a specific tilesheet to draw the greenhouse patio

#

It's really weird

obtuse wigeon
#

I would've never noticed the patio wasn't present if you hadn't mentioned it, that makes so much more sense

calm nebula
#

I was looking for an old message b/c I'm sure I quoted the code for it in thr past because it's weird ngl

obtuse wigeon
# ashen urchin Like this?

That looks good to me, like Aba said, it's its a totally custom location prefixing them aren't needed however I'd say it's still good practice incase you ever decide to modify an existing location

ashen urchin
calm nebula
#

So, it does have to be lowercase z and not uppercase z

#

(Yes it matters, lol)

#

But that isn't the relevant issue

#

Can you open a vanilla map and screenshot the tilesheets it has

valid folio
#

Hi, my wild trees mod finally works properly, but now I need to make the actual tree sprite. I borrowed a sprite from another mod to test the code. Quick question: what’s the maximum pixel size a tree can have? I have a rough idea from looking at other sprites, but the tree I need has a particular shape (I’ll attach an image). I’m definitely not an expert in this and I don’t think anyone would want to do me the favor for free — which I don’t expect anyway. Hiring someone outside my country is really complicated (I looked into it but there’s no easy way to pay), and artists I’ve found where I live either don’t do pixel art or take months to deliver and charge extremely high prices. So, I’ll have to roll up my sleeves and try to make the sprite myself. It’s going to be a tough job because I can’t see well, I don’t distinguish colors properly, and I don’t know much about pixel art design, so I’ve been looking for tutorials (with no luck so far). Any suggestions?

calm nebula
#

Although this seems to say it's untitled tile sheet

#

Did you start from any farm map

brittle pasture
#

there is a framework for bigger trees though if you're interested

drowsy pewter
#

whoops i still need to use that framework

ashen urchin
brittle pasture
valid folio
calm nebula
#

(Can someone please get me the tilesheets for the vanilla standard farm and can someone and by someone I mean Pathos just make the greenhouse normal in the future)

valid folio
ashen urchin
modest dust
#

how do i reload the mods without restarting the game?

iron ridge
# modest dust how do i reload the mods without restarting the game?

if it's a content patcher mod, do patch reload [your mod id] in the console (black window opening alongside the game)
if it's a fashion sense mod, you can use fs_reload in the console (black window opening alongside the game)
if it's a c# mod you may be able to hot reload depending on what youre doing

twin wadi
# twin wadi hello, i can't figure out why my farmer is simply freezing here... here's my eve...

about this bug from last night, i think the issue is something with stuff i did for a smooth fading earlier in the event.

before the move command, there is this part where they start walking, the event fades out, then fades back in where they're standing in front of that door. but how i did that fading while they were walking was this: /move Krobus 0 -5 0 farmer 0 -5 0 true/pause 500/globalFade/viewport -2000 -2000/warp farmer 2 5/warp Krobus 3 5/faceDirection farmer 0/faceDirection Krobus 0/pause 1000/viewport 3 5 clamp true/

and maybe that "true" at the end of the move command made it unresolved and asynchronous, and maybe that i just warped them before the movement was done? idk, but i cant figure out what's wrong with that specific line so it probably has to do with weird stuff i did before

#

im not sure if i explained it all well but hopely it makes sense

modest dust
twin wadi
#

yes

modest dust
#

can someone help me?

#

the seeds are being treated as food instead of seeds

torpid sparrow
#

I used leah's interior as a base for my map, but the warp for her house is still there. Basically when i walk over the tile, it'll warp me outside of Leah's house. I'm not sure where to change that? Do i just have to open a new Tiled session and copy paste everything there instead?

urban patrol
#

yeah it should be in map properties

keen seal
torpid sparrow
urban patrol
#

if you open up the map in tiled and go to map properties, you should see warps

modest dust
#

@keen seal ?

torpid sparrow
#

thanks!

#

i forgot u can add warps in Tiled instead of the code

urban patrol
#

yep! only for maps you load though

uncut viper
#

where did you get this format from?

urban patrol
#

map properties don’t transfer when you do editMap

modest dust
uncut viper
#

if you're copying from an example mod, its very out of date

#

Data/ObjectInformation is not a thing that exists

#

nor is that the object data format

modest dust
#

can you tell me how to improve it?

torpid sparrow
#

do you buy chance know how to fix this? I flipped the couch in the tilesheet

uncut viper
#

the content patcher docs have an example for adding an item i believe and the wiki page for object data can get you the rest

urban patrol
#

let me find it

uncut viper
#

generally, dont learn from mods that have not been updated since 1.6 came out

urban patrol
torpid sparrow
#

oh yay! I will check that out in a bit thank you!

wanton rivet
#

Hello guys i have question , I just started making mods I made a new map and some buildings and I want those buildings to be visitable But after I made the indoor part of the building, the indoor part could not be entered. Error can't be load , how to fix it

modest dust
gentle rose
#

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

wanton rivet
modest dust
half tangle
modest dust
#

yeah i did that thingy

#

and it works now

#

holdon

#

for some reason

uncut viper
#

i will also say Sten, i dont know if you're just using weeds for testing like, actual weeds that pop up on your farm as debris and whatnot and is just clumps of grass, or if you intend something more illicit, but if its the latter, it is not allowed in this discord

modest dust
#

the texture isnt getting replaced

modest dust
#

sorry

#

i removed everything

#

but anyway

#

how would i make a crop harvestable with a scythe?

obtuse wigeon
#

I'm struggling to get the sprite of furniture to work, the bounding box works fine, but the sprite in the inventory is too big, and the sprite when place is just the top left 16 x 16 part of the sprite when it should be a 32 x 48

"AtlasV.AtlasCatalogue": "AtlasV.AtlasCatalogue/other/2 3/2 1/1/15000/2/{{i18n:Catalogue.DisplayName}}/0/{{ModId}}\\CatalogueSprite/true"
modest dust
obtuse wigeon
#

And now the sprite is a cursor? there isn't even a cursor in the image nor a reference to a tilesheet with a cursor? what on earth is happening

modest dust
#

lmao

half tangle
modest dust
#

it doesnt seem to work

obtuse wigeon
#

oh no..... HOW DO I MESS FURNITURE UP SO MUCH?

modest dust
#

:p

slate trout
valid folio
torpid sparrow
#

@ivory plume Hey Pathos, I was wondering if you had any insight into a bug report I got. My Toothless mod adds in a sequence of events prior to adopting the dragon. It's only dependent on CP

Players have been reporting that after one specific event, when they exit the farmhouse the next day, their farmer sprite disappears. They can walk, they can exit the farm, but they can't do anything. This fixes itself when they go back to my custom location and view the final event. Then they reappear and can do everything.

I received several logs with no errors present. So not sure where to go from there. Technically there is a fix, but not of the root cause.

finite dew
#

can anyone walk me through getting mods I have my mod folder and smapi installed but it only loads with 2 mods of the 37

ivory plume
finite dew
torpid sparrow
# ivory plume I haven't seen it caused by events, but I think that usually happens if the farm...

No, not at all. All of those events occur only in my custom location. There are quests that tell you to go back to the Cove but they're all Basic quests not location quests.

I personally have not been able to reproduce the bug, but reporters with all different modpacks have reported it. Specifically one player with only CP and SMAPI, and others with multiple other mods, including SVE and Frontier Farm. I've run the sequence in both instances and haven't had luck with repro.

#

I do change my pet's sprites after every event, but nothing with the farmer

blissful panther
#

(This is approaching where personally, I would be wanting a full zip of all their mods to perfectly replicate their setup.)

ivory plume
#

You could try asking one of the affected players for a zip of their save + mods, to see if you can reproduce it with those.

Here's my template Nexus message for that if it helps:

Can you create a zip of [URL=https://stardewvalleywiki.com/Saves]your save folder[/URL] and full [FONT=Courier New]Mods[/FONT] folder, upload it to a site like [URL=https://catbox.moe/]catbox[/URL], and post the link here?
blissful panther
#

Pathos, stop taking my brain cell. /j

calm nebula
#

Pathos doesn't need extra brain cells

#

He has so many already!

#

Anyways I'm stealing yours, DH

torpid sparrow
#

I think everyone has already done the bandaid fix themselves, would they be able to get back the previous day's save?

#

Actually one might not have I'll ask them

calm nebula
#

Sure.

#

Smapi backups, etc

obtuse wigeon
#

Why is this furniture string causing the furniture to look like the first picture and not the second:

"AtlasV.AtlasCatalogue": "AtlasV.AtlasCatalogue/other/2 3/2 1/1/15000/2/{{i18n:Catalogue.DisplayName}}/0/{{ModId}}\\CatalogueSprite/true"
latent cape
#

So I try to use a command that can make two characters walk together with /speed NPC1 2/move NPC1 x y faceDirection true/speed NPC2 2/move NPC2 x y faceDirection But apparently this decision led to the second character to walk continuously and won't stop. Can anyone tell me if there's a fix for this or is there something wrong with the command template above?

modest dust
#

i made my first mod and it works!!!

#

YAYY :3

urban patrol
latent cape
#

Okay hold on

ocean sailBOT
#

Oops, couldn't parse that file. Make sure you share a valid SMAPI log.

urban patrol
#

!json use this instead

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.

urban patrol
#

yep thanks

#

and where in the event does the character void walk?

latent cape
#

after the warp to the busstop in the AlbedoYes

#

tried to make the farmer stops right after the first move command and face right

urban patrol
#

and it’s albedo or the farmer who keeps walking?

latent cape
urban patrol
#

try increasing the pause length to much longer, or try inserting a waitForAllStationary before the pause 10

latent cape
#

alright I'll try

calm nebula
#

I think this is legal?

#

(It's not documented)

urban patrol
#

yeah you can move multiple actors at once i’ve seen it done

#

although i usually use simultaneous command for that

#

which was going to be my next suggestion instead of having the true inside albedo’s movement

calm nebula
#

Simultaneous command is weird tbh

urban patrol
#

so is move XD

#

weird how?

calm nebula
#

What it does is it makes commands not take 1 frame between them

#

It doesnt make blocking commands suddenly nonblocking

#

I'm also at least 50% sure waitforallstationary only checks the advance move stuff

latent cape
calm nebula
#

No worries!

#

Events are jank and weird and I've spent too much of my life understanding how they work under the hood

latent cape
calm nebula
#

One final thing - move only works with npcs that are grid aligned

#

Once they aren't (there is an offset command, or after an advance move)

#

You have to either grid align them with teensy warp command

#

Or stick to advance move

latent cape
#

noted 👍 Thank you so much for the help yall

iron ridge
#

That's definitely not casey no

lucid iron
#

Never heard of this person

fading walrus
#

Looks like a troll to me rather than an actual modder tbh

#

And a racist one, at that

lucid iron
#

But to answer more generally i believe casey herself wrote like 99% of spacecore

#

Remaining 1% is one off PRs from various ppl

rare orbit
#

good god they prob need therapy.

final arch
#

I contributed one letter to spacecore I think SDVkrobusgiggle

#

ok apparently it was like 10 lines SDVkrobusgiggle

#

and 2 of those are shit ups

tender bloom
#

I don’t think I’ve touched spacecore in my PRs but I could be wrong, I’ve definitely touched JA and DGA tho

#

And some of those are integrated with SpaceCore in places

finite willow
#

how can I emulate keybinds?, has anyone accomplished that before, I've tried everything but it is not working

eternal hemlock
#

Whats the difference between

"Sprites": [

]

and

"Changes": [

]
If we say, aim to change the textures of something?

lucid iron
#

Are you making a content patcher mod

eternal hemlock
#

ye

lucid iron
#

Sprites is not a field that exists

#

All patches aka edits to the game content goes under Changes

eternal hemlock
#

Oh, hm

#

Ah wait I know whats up

#

I'm using Sprites in Detail as a library mod with this (which says "Sprites": [ in their example)

#

So it must be for that specific functionality

floral stratus
#

Should I also post on CurseForge in addition to Nexus? What platforms are most used nowadays?

proud wyvern
#

pretty much no one uses CurseForge for Stardew modding

floral stratus
#

Ahh, okay. That's what I was wondering. It's where I post all my Minecraft mods, and I saw it has a Stardew section, but I remember when I was doing modding 5 years ago, Nexus was the place for Stardew.

hard fern
#

it hasnt really changed in 5 years, people still use nexus the most

spice inlet
#

I mean there's still a good chunk of people that use curseforge

#

just most authors are on nexus

red egret
#

What does it mean:
Ignored Hedge Fences > EditImage LooseSprites/Fence5 #3: the When field is invalid: using nested tokens like 'Render:{{AddFlowers}}' requires Format version 1.7.0 or later.

spice inlet
#

CP eg has 1M downloads on curse, but 18M+ on nexus

urban patrol
red egret
#

ahh ok

urban patrol
#

i think it's on 2.7.0 but don't quote me

floral stratus
red egret
#

My CP is version 2.7.2

uncut viper
#

your CP format inside your content.json must be a higher version

red egret
#

is it ok if i just rewrite it?

uncut viper
#

below 1.7.0 is wildly out of date

#

generally when making a CP mod you want to write down the latest format version available at the time you're making tyhe mod

#

so yes you can just write it

red egret
#

oh sorry its not my mod

ivory plume
# spice inlet CP eg has 1M downloads on curse, but 18M+ on nexus

(It's worth noting that both CurseForge and Nexus have decent mod reward programs, and you can set up CurseForge to auto-sync mod updates from your Nexus page. So my usual approach is to release the mod on Nexus, and have CurseForge as an automated backup mirror.)

uncut viper
#

if its not your mod then its an outdated mod and this is also not the right channel to post about it

red egret
#

sorry!

sinful reef
#

question is it okay to post bug reports from mod pages here? i got one on my AT mod like yesterday and im not a programmer at all so i wouldnt know how to go about fixing it 💔 or if its even a me problem

uncut viper
#

if its for a mod you made and you'd like help parsing it, i dont see why not

lucid iron
#

Yeah if u need help fixing something feel free to show it

red egret
#

(sorry i went here bc here are all the very smart people XD)

lucid iron
#

Though there's a non zero chance that the problem is not fixable by you

floral stratus
sinful reef
#

is what they described something that can happen to alternative texture mods or did i really just beef it that badly 😭 ?

#

the .json files for the textures i took from other AT mods affecting the same buildings so i dont think its a problem with those ...?

#

and my AT version is up to date

lucid iron
#

Is your mod animated

sinful reef
#

its a farmhouse AT mod, if that matters at all

lucid iron
#

Not that known AT bug then

#

I think there's nothing we can tell here, need a log for further info

ivory plume
#

Sounds similar to this earlier report by @torpid sparrow though. I wonder if there's a common mod between those causing an issue?

lucid iron
#

But i am always promote using skins instead of AT for buildings

uncut viper
#

i also thought about that t oothless error

uncut viper
#

"by the entrance to marnie's farm" though is a lil vague to me though cuz idk if they mean they were literally warped to the Forest map

calm nebula
#

Does the player character respect is invisible anyways

lucid iron
#

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

lucid iron
#

Tell them to upload a log

obtuse wigeon
#

Before I take up loads of space in this channel again, is there someone who's able to help me with why a texture for a custom furniture piece added by Content Patcher isn't working correctly?

lucid iron
#

!json

ocean sailBOT
#

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

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

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

uncut viper
lucid iron
#

Post what you have via validator

#

Dw about interrupting convos multi track is normal

sinful reef
obtuse wigeon
lucid iron
#

You can always bump the question

#

Cus not everyone around at all times

#

I for one don't know ur original query

obtuse wigeon
#

Thats what I guessed, just didn't want to pester people thats all

obtuse wigeon
ivory plume
#

(If the text is very long, you could also summarize the question and link to the full context.)

obtuse wigeon
ivory plume
#

How are you loading {{ModId}}/CatalogueSprite, and what does the source image look like?

obtuse wigeon
#

I'm loading the sprite like this:

{
            "LogName": "Load Furniture Sprite",
            "Action": "Load",
            "Target": "{{ModId}}/CatalogueSprite",
            "FromFile": "Assets/CatalogueSprite.png"
        },

And the source image is the second image on my post

#

Not entirely sure how to get past discords fuzzy scaling to make it larger and clearer

lucid iron
#

Source rect is persisted on furniture (for reasons)

#

Does it still happen if you spawn a new one

obtuse wigeon
#

wow, that was the entire issue, I never thought to spawn a new one, not knowing how the game or Content Patcher works behind the scenes make this such a confusing thing to come accross

uncut viper
#

when in doubt, always try spawnin a new item first

#

this goes for like everything

lucid iron
#

Yeah it do be like that

uncut viper
#

everyone is caught by it at least once in their modding career but probably many times

obtuse wigeon
#

I've stumped with this for HOURS, trying to find the single thign that was wrong, I'll defo keep it in mind from now on, thank you very much for your help

uncut viper
#

(if for no other reason than just briefly forgetting it leading to a minute of puzzlement)

torpid sparrow
uncut viper
#

eventually you get better at remembering it SDVpuffersquee

obtuse wigeon
#

Thankfully weird edge cases like that end up ingrained in my brain, I won't be forgetting it anytime soon

urban scaffold
#

Anyone know where I can find a list of farmer animations? Like the farmerEat and stuff like that? ConfusedPupper

lucid iron
lucid iron
#

So yeah you may need to get new item whenever you change the data

raw oxide
#

Hello i don't know if it help or how to share it but i made a python converter for Furniture framework format 2 to 3 can i share it ?

obtuse wigeon
lucid iron
#

Nexus allows modding tools

#

You can just post there

#

I thought leroy had some kinda converter tho

raw oxide
#

that's why i don't want to share anything on nexus to avoid problem i really did it for me, i don't even know how to share it do i just compress zip the code ?

lucid iron
#

Depending on what the script requires i would consider including at least a .venv file too

#

But yeah I'd probably ask Leroy for opinion too

raw oxide
#

thank you i will put it on hold like i said i did it more for me and because i'm learning to code so i tried it but if there is already a converter i prefer to keep to myself to avoid any kind of problem

pale pecan
#

Hi! Quick question, does anyone know when the game checks UnlockCondition queries for NPCs, and when the NPC is spawned in once those conditions have been met?

Like, does it check at the start or end of each day, or constantly, etc.

uncut viper
#

UnlockCondition is re-evaluated after a day ends and before the next day starts

obtuse wigeon
#

Does SMAPI allow 2 mods in one file? Like this:

AtlasCatalogue
├───[AT] AtlasCatalogue
│   │   content.json
│   │   manifest.json
│   └───Assets
│           Texture.png
└───[CP] AtlasCatalogue
    │   content.json
    │   manifest.json
    └───Assets
            Texture.png

If it doesn't do I just tell the user to extrct both files into their mod folder?

uncut viper
#

they will spawn in their home

obtuse wigeon
#

Perfect, Thank you!

uncut viper
#

what you cant do is nest one mod inside another mod

#

SMAPI will look inside a folder until it find a manifest.json, but once it does, it will not consider any deeper manifest.jsons

floral stratus
obtuse wigeon
#

is there a way to prevent the [AT] mod from loading is AT isn't present, I preferably want to prevent it trying loading if Alternative Textures isn't present

uncut viper
#

set a required dependency in its manifest

#

but if its a ContentPackFor for AT already, it already wont load

#

i think

#

pretty sure

obtuse wigeon
#

Would it spit out an error saying "Alternative Textures isn't present"? I would like it if it didn't do that

uncut viper
#

it would yes

#

dont quote me on that contentpackfor thing though

#

it might just silently not do anything

#

idr

#

could always just test it

obtuse wigeon
#

Very true, Ill give it a go

lucid iron
#

Honestly if it's furniture i vote for just making all of them separate furniture

#

You can do it efficiently with local tokens AquaThumbsup

obtuse wigeon
obtuse wigeon
lucid iron
#

Up to you what do then Dokkan

#

One approach is 2 downloads marked with separate sub keys

obtuse wigeon
lucid iron
uncut viper
#

while im not sure about any number of subfolders, and im not sure about if theyre at different depths but not nested, i know that you can have as many parallel mods as you want yes

lucid iron
#

Basically you would have a @Base which is the cp mod and a @Variation which is the at mod

#

Then u can update either independently as desired

lucid iron
obtuse wigeon
#

256 ain't much but it's honest work

urban scaffold
#

Do I break my head trying to find examples of how to animate farmer as if they are sliding on the ice or do I not... that is the question... Anyone has an idea of this? Is it even possible--

urban patrol
#

a series of several rapid offsetPosition? 😅

urban scaffold
#

I guess that would be enough, right? Sorry I started yesterday and broke myself learning just quickquestion and null so far LMAO

urban patrol
#

idk either, that’s just what i would try lol

obtuse wigeon
urban scaffold
#

Might as well see what I can try

urban patrol
#

a lot of event modding for me is “that just might be crazy enough to work!”

urban scaffold
#

They do say art blooms where limitations exist--

gentle rose
obtuse wigeon
honest tundra
#

what is the item ID for carrot juice? I know the ID for juice is 350 and ID for carrots is Carrot, my hope is this knowledge will correlate to other goods that preserve drop ins.

lucid iron
#

There's no id

#

It's flavored juice

#

Essentially just a (O)350 with the preserve id (O)Carrot

#

Can check this with lookup anything, internal field id

honest tundra
#

how would I put that in a shop or item bag?

lucid iron
#

Item bag no idea (does it take context tags?

honest tundra
#

or have an npc gift it

lucid iron
#

In a shop you can copy the item query from keg and replace Input with (O)Carrot i think

#

NPC gifting like through mail? Need mod for this

honest tundra
#

ok the answer is in look up everything

lucid iron
#

Either way it's not a standard item you can just spawn PecoWant

honest tundra
#

I mean the only reason the name cheat used to work is because it activated the gift code NPCs normally used

lucid iron
#

If you mean the [blah] syntax then yeah that will not be able to spawn flavored carrot juice

honest tundra
#

ahh well. time to install lookup anything : )

uncut viper
#

lookup anything will not help you spawn it

lucid iron
#

If you just want to cheat it in anyways then just use cjb item spawner

honest tundra
#

well, I don't just want to spawn it, I want to understand what I can do with it.

calm nebula
#

In theory you can do a debug iq

uncut viper
#

there is no Carrot Juice Item
there is a Juice Item that sometimes has Carrot metadata

gentle rose
calm nebula
#

Can you action an itemquery?

honest tundra
#

I don't really want carrot juice I want to be the boss of drop in items

uncut viper
#

not without a mod

#

its not specific to carrot juice. its the same for any flavoured item

obtuse wigeon
honest tundra
#

items with metadata then

#

look I am often a cut and paste coder right now so just being able to put the exact format in my notes will help me play around

#

thanks for the points to start looking

twilit quest
#

headthunk So I thought I fixed the spouse room not showing up this morning. But further tests are...inconsistent. Why in the world would Maru's spouse room show up consistently, while Sam's doesn't?

lucid iron
#

Well i did make a mod to do some of this

twilit quest
#

Actually, that's an interesting question. narrows eyes I'm going to go try something else

twilit quest
#

sigh Nope, that didn't fix it either

urban scaffold
#

Hmm... what audio/song should I use for a romantic ice skating date YueThinking

urban patrol
urban scaffold
#

Nice! Thank you, it's just that I cannot choose, like musicbox is fine, and sweet... but kinda wanna have some recommendations or opinion

ornate trellis
#

50s is a classic

urban scaffold
#

50s huh hmm time to try

ornate trellis
#

or maybe kindadumbautumn for something more relaxed

urban scaffold
#

Gonna check them out

#

thank u

calm nebula
#

Kinda dumb autumn

twin wadi
twilit quest
#

Okay, so. Question. If the FarmHouse map is custom, why would the spouse room only be showing up when using Vanilla Farm maps, and not custom Farm maps? SpouseRoomPosition is a FarmHouse map property (as it should be) so there's no reason why it shouldn't work with a custom farm.

gaunt orbit
#

good question

urban scaffold
lucid iron
balmy valve
#

hgelp

#

New lcoation unlock by mail id not triggering

#

No SMAPI error

#

NPC still shows up in relationships menu but his room is simply Not There

#

Location is there, I can warp to it, but the actual map edit to add the warp to the cellar is not happening

#

Haha nvm]

#

Im stupid :D

pine elbow
balmy valve
#

Coordinates for the map edit were wrong

#

9 instead of 19

pine elbow
#

That'll do it lol

obtuse wigeon
#

I'm trying to add Alternative Textures for my custom "other" furniture, but when the game loads the smapi log gives me this error:

[Alternative Textures] Unable to add alternative texture for item AtlasV.AtlasCatalogue from (AT) Atlas Catalogue: More variations specified (6) than given (1)

Which is odd given my texture.json is:

{
  "ItemName": "AtlasV.AtlasCatalogue",
  "Type": "Furniture",
  "TextureWidth": 32,
  "TextureHeight": 48,
  "Variations": 6
}
#

there are clearly 6 variations

#

6 variations, as seen in the texture.png

lucid iron
#

Iirc AT needs you to give texture_0.png texture_1.png and so on

round timber
#

yeah i think they need to be separate files CGthinkowo

obtuse wigeon
#

Nope they can be in just one texture.png, they just need to be vertical, not horizontal

lucid iron
#

Cool til

obtuse wigeon
#

I completely forgot that part

balmy valve
#

HELLO

#

I WOULD PLEASE LIKE TO REQUEST THE MOD AUTHOR ROLE :D

urban patrol
urban patrol
balmy valve
#

do I have to @ the bouncer?

urban patrol
#

no i just did

twilit quest
round timber
#

hi

#

can you link your mod(s)?

balmy valve
#

oh thank you!

#

i did

round timber
#

where

balmy valve
#

modded farmer

#

I want to post the mod to mod showcase myself :D im proud of it

round timber
#

aight looks good can you add yourself to this page?

balmy valve
#

I can't because I don't have mod author role

round timber
#

you edit the page to get the role SDVpuffersmile

#

trust me, i know what im talking about haha

balmy valve
calm nebula
#

That one is moldy

round timber
#

that is what you are doing right now

balmy valve
#

"go ask your mom" "go ask your dad" help

uncut viper
#

you are requesting the role and being given permission to edit

balmy valve
#

o ok

calm nebula
#

You've made the request. The mold has given you the permission to edit

lucid iron
#

Game doesn't know about editimage cus that's a cp thing

urban patrol
#

so editimage literally edits the image, not just the target? (i still am unclear on the asset pipeline)

uncut viper
#

no it just edits the target

lucid iron
#

Game will fetch img by asset name without caring about the content

uncut viper
#

when Content Patcher edits the target it will invalidate the games cache. so next time the game asks for that Target, it will get a fresh copy, with your changes now applied

urban patrol
#

ohhh

#

so it's not an order of events kind of thing, got it

uncut viper
#

its a Kinda Is

#

if you're on the map when the tilesheet cache is invalidated, it will ofc ask for a fresh copy immediately, bc it needs it immediately

balmy valve
#

how find discord id

uncut viper
#

but not all assets are always required immediately so it might happen that the invalidation happens and then the fresh copy is grabbed much later

urban patrol
#

okay i think i understand

round timber
uncut viper
#

but basically, dont worry too much about the intricacies, just know that Content Patcher will make sure to let the game know when its stuff is out of date bc of patches changing

balmy valve
#

thank u

urban patrol
#

i was worried about there being a missing step where i had to tell the map to find the tilesheet at target (place), but it makes sense that that's something it refreshes and fetches itself

uncut viper
#

you did that in Tiled, basically

#

the image source/image name for your tilesheet is the target

#

(with Maps/ added onto it ofc)

balmy valve
#

ORANG :D

round timber
#

cheeto dust be upon ye

devout otter
#

Before I bring this to Pathoschild, I'd like to ask if this is actually a known issue. It seems that using Dynamic Token for the NPC Appearance entry makes the changes happens a day too late? The patch is something like this: "Appearance": [ { "Id": "Saja", "Condition": "{{Outfit|contains=Saja}}", "Portrait": "Portraits/DolphINaF.Jinu_Saja", } ] It's a similar issue to the Central Station Condition some time ago: #1336049684950683810 message

balmy valve
#

Do I also get pixelsmith? Or is that only for portrait modders?

round timber
#

if you made the sprites yourself, yes

balmy valve
#

I did!!

round timber
#

any art is eligble for the pixelsmith role as long as you did it yourself

#

cool

balmy valve
#

I have speedpaints :D

round timber
#

i will add that to your table entry as well :)

balmy valve
#

YAY!

uncut viper
#

they will choose their appearance again if they change locations still too but obv this doesnt help for non-moving NPCs

lucid mulch
#

technically not a dynamic token problem as any content patcher edit would have the same problem in that scenario

#

I'm semi surprised Data/Characters propagation doesn't re-trigger appearance

obtuse wigeon
#

I've made 2 mods, one for Content Patcher and the other for Alternative Textures, both are within the folder Atlas Catalogue, the Atlas Catalogue folder will be uploaded to Nexus as 1 file, how do I manage the versions in the 2 manifest files? I don't want to add update subkeys, so would I set the version to 1.0.0 and when I update one and increase the version number, I also update the other version number even if nothing has changed?

devout otter
#

Yar, so it's more a quirk rather than issue. I guess I'd need to think up a way to circumvent this...

round timber
lucid mulch
#

update subkeys would be if its multiple files in the same nexus page

devout otter
lucid mulch
#

as a stardrop user my preference is only one piece having a real update key and the other components having an invalid one, but many just put the real update key on all pieces

lucid iron
#

I think it's fine to editimage him

#

He never goes anywhere besides casino right

uncut viper
#

that said it might need a tick to pass

lucid mulch
#

but keeping the version numbers in sync is important to know that its all still valid

uncut viper
#

so im not sure which way the updates will fall in that situation

tiny zealot
devout otter
uncut viper
obtuse wigeon
# round timber yes, this is what expansion mods typically do

as the AT mod has a hard dependency on the CP mod, am I able to use local tokens (or an equivelent) to change version on the AT Mod to the version on the CP mod, i.e are cross mod tokens a thing between Content Patcher and Alternative Textures content packs?

uncut viper
#

thats the question

round timber
#

uhhh probably not

uncut viper
#

and it also matters whether or not the NPC gets an update between the initial appearance being chosen and them being whisked away for the schedule anyway

#

since technically, the NPC doesnt change appearance whenever they change locations

#

rather, every game tick when all the Update functions run, they check if theyre in a different location than they were in the last tick

devout otter
#

Yar, I'll just try it out.

uncut viper
#

do report back, im curious

obtuse wigeon
vernal crest
#

I didn't know AT had tokens at all

#

(My only interaction with AT has been to convert mods away from AT to CP so I am not very familiar with it.)

obtuse wigeon
# vernal crest I didn't know AT had tokens at all

sorry, I mean in the manifest.json, a better worded question is "Are cross mod tokens between the manafest.json of a Content Patcher and Alternative Textures content pack to set the version number a thing?"

round timber
#

i do not think AT has tokens, but its also been like two years since i looked at the docs

vernal crest
uncut viper
#

it cannot

obtuse wigeon
#

Gotcha, ahh well, it's only a tiny inconvenience

uncut viper
#

there is no way to sync up your manifest versions automatically. that would have to be like, set up in your IDE as a build thing

#

(before anyone brings up the manifest builder, im talking specifically in this case regarding syncing an AT pack and a CP pack)

tiny zealot
#

didn't modbuildconfig just add a version doohickey for that

lucid mulch
#

the modbuildconfig is to fix the manifest.json's version to the assembly version, not keep multiple manifest.json's in sync with each other

#

could have a dummy C# mod that just acts as a version counter that updates both content packs, and then not ship the C# mod

tiny zealot
#

ah it says it works with bundled content packs

ivory plume
#

(It works well for syncing mod versions when you have a C# mod with bundled content packs. For example, see Central Station's bundled content pack. Though it doesn't really apply if you don't have a C# mod to bundle the content packs.)

calm nebula
#

Could do a githook

finite willow
#

how many inputs per second does the average human does

devout otter
#

I did manage to do the jank way of starting him right outside the location he's supposed to be and giving a 0610 schedule to beeline there. With the hope that no player would warp to him right when they wake up.😅

uncut viper
#

or use a tent outside his location

calm nebula
#

He goes out to smoke each morning

#

Or to touch sand

vernal crest
#

He sleeps right outside the casino door, protecting it from intruders

ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Pro, with 21 C# mods and 4 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

slow basin
#

had an idea for one of the twins;' pet

#

baby tiger

#

if i can squeeze it into the sprite size

#

name her libby

#

"liberty the liberator of animals esquire the II" Libby for short named after her mother "liberty" who escaped the zoo once with a pack of tigers and was rescued by the twins

vernal crest
urban patrol
#

yep

slow basin
#

yes i am giving the tiger cub a backstory even though she will be mostly just a pet and all events will probably be you the player recieving a "gift" if thats possible

#

like how cute would that be a little tiger cub being like "roar" gives you a rock

vernal crest
# urban patrol yep

That's why you see no changes. The map will use the tilesheet that is inside the folder first. Only if there is no tilesheet in that folder will it go looking for a tilesheet in the game's content instead.

slow basin
#

awesome!

vernal crest
#

However even once you fix that, I'm also not sure that your Targets are right for your EditImage patches. You've loaded your tilesheet to "Target": "Maps/Tilesheets/{{ModId}}_{{season}}_Lighthouse_Tilesheet" but then your EditImage patches are targeting "Target": "{{ModId}}_{{season}}_Lighthouse_Tilesheet",.

urban patrol
#

oh shit that would do it

#

maybe one day i won't screw up my targets lol good eye

vernal crest
#

You can add a dot in front of your tilesheets if you want to keep them in the same folder as the map.

#

Otherwise, you will have to put them in a different folder within your mod folder structure.

urban patrol
#

i thought tilesheets had to be in the same folder as the map?

#

i'm very confused

#

everything works normally, it's just the daisyniko/vpr stuff that wasn't, but that's probably because of the target

vernal crest
#

They have to be in the same folder as the map while editing in Tiled

vernal crest
#

SMAPI searches your mod folder for a matching tilesheet first. If it finds one, it uses that. That means it doesn't use the copy that's been Loaded to the game's content. And since it's only the copy that's Loaded to the game's content that gets edited by your EditImage patch, that edited version never gets used.

uncut viper
#

basically the whole reason people say to keep your tilesheets in the same folder as your map at all is bc it prevents tilesheet climbing errors

#

thats like the only reason they'd need to be in the same place

urban patrol
#

okay i see. would making a subfolder in maps be enough to separate them? or should i move them up a level

vernal crest
#

Subfolder in maps is fine

#

You'll just have to move the map file into there (or move the tilesheets into the map folder) while editing in Tiled, then move back to test in game. (Or use the dot method like I said first don't @ me Pathos /lh)

uncut viper
#

(or just manually fix your sources after! or use my map fixer SDVpuffersquee)

#

life has many doors, ed boy, etc etc

urban patrol
#

i have a maps workspace folder on my desktop with a copy of all my maps and tilesheets in that--is that fine, or would i still need to fix tilesheet climbing errors?

uncut viper
#

if you ever load a tilesheet in Tiled and the png you select is not in the same folder as the .tmx you are editing, you will have tilesheet climbing errors

#

... with very limited exceptions

uncut viper
hard fern
#

Neat

vernal crest
urban patrol
#

okay good

#

invalid tilesheet path error--is that tilesheet climbing? do i need to fix all of my maps after moving the tilesheets to a subfolder?

vernal crest
#

Yes that is tilesheet climbing

#

You can just use Button's map fixer for that

urban patrol
#

thank god because i have so many maps by now lol

#

what does this error mean?

uncut viper
#

it means you found a bug with my map fixer that i didnt run into before when making it

#

(would you mind sending me the .tmx)

urban patrol
#

i was just putting things in rote

#

also, this is the result of me trying to fix all of my maps:

#

none of them were modified

uncut viper
#

oh your stuff inside is encoded with base64... i honestly forgot that could happen

slow basin
#

how difficult is it to make a fs pack 🤔

uncut viper
#

if theres no fixes and no warnings then your maps should be good to go assuming my fixer has not missed anything else SDVpufferthumbsup

urban patrol
slow basin
#

i was thinking of making a baloon holding pack

urban patrol
#

it was unnecessary and did not work lol

slow basin
#

so you can carry around a balloon or cluster of balloons

urban patrol
#

i'll try running the game again, although i expect errors if nothing was modified

torpid sparrow
uncut viper
#

i should also note that if you use tsxs they are not supported by the fixer, though itd say if it skipped any

torpid sparrow
#

you do so many movements thats my intuitive guess

urban patrol
ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Pro, with 21 C# mods and 4 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

torpid sparrow
#

oh with FS its probably easier

#

holding it would be hard though i feel like idk

vernal crest
torpid sparrow
#

maybe it can be attached to your hip or ur back

uncut viper
vernal crest
urban patrol
#

...do i need to

uncut viper
#

the name of your .pngs when you use them in Tiled is what the game tries to load as the tilesheet in game

#

with Maps/ added on

uncut viper
#

if its in the same folder as the .tmx, there wouldnt be a file path

#

(which is why it prevents tilesheet climbing errors to do so)

vernal crest
# urban patrol ...do i need to

Yes you do if they're in the separate tilesheets folder. If you know that you never want anyone to edit them via CP (including you) you can put those back in your map folder.

uncut viper
#

in this case one of your tilesheet pngs is called tongueandtail.png but that isnt what you've loaded that png to in CP

vernal crest
#

(I am not personally a fan of having any tilesheets that aren't Loaded to the game's content but it is an option people choose.)

urban patrol
#

so i need to either:

  1. move every tilesheet except the lighthouse ones back, or
  2. open every map from my maps workspace, edit the png name to include the filepath, then copy the now-edited map into my maps folder?
#

?

vernal crest
#

Not 2, no.

#

Your 2 would be: add a CP patch Loading the tilesheet

uncut viper
#

to maybe clarify things a little bit:

  1. SMAPI will always look in the same folder as your .tmx for the tilesheets
  2. This is generally undesired, you want it to use the ones in the content pipeline
  3. Therefore, you want to Load all of your tilesheet .pngs into the content pipeline with Load patches in CP
  4. After that, you want your .pngs to be in a separate folder, to prevent (1) from happening
  5. if you dont want your tilesheets in the content pipeline, skip (3) and (4) bc (1) is actually desired behaviour
#

If you did not use tongueandtail.png in a Load patch then its not in the content pipeline

#

therefore, if its not also in the same folder as your .tmx, it cannot ever be found

urban patrol
#

okay i get it now. this is actually making a lot of sense, because i was always confused as to how tiled knew to "load" things for me--it makes complete sense that now i need to load them like we usually load everything else before it can be used

uncut viper
#

its important to remember that Tiled is not doing anything involving the content pipeline or SMAPI. Tiled does not care whatsoever bc it is an entirely separate program not even made for Stardew

#

Tiled does not care where your tilesheets come from or where they are relative ot the tmx or if there is tilesheet climbing. it just needs to know where they are, which is what you tell it when you load a tilesheet inside it for your map

urban patrol
#

and i can use target without path if my target is Maps/{{ModId}}/tilesheetnamehere, fromfile: assets/maps/tilesheets/{{targetwithoutpath}}?

uncut viper
#

its stardew that has these added constraints

uncut viper
urban patrol
#

okay cool. and once i load these, do i need to then "tell" the map where to find the tilesheets, or is that what you said was already taken care of?

uncut viper
#

assuming there is no tilesheet climbing, and the image source in your tmx matches the target you chose (often the name of the literal .png), its taken care of

#

that said

#

your .png would need to be named <YourModId>/tilesheetnamehere to match your example above

#

the game only adds Maps/ at the start when looking for tilesheets

urban patrol
#

oh i thought the slash would prevent me having to rename

uncut viper
#

its up to you to ensure the rest of the tilesheet name is correct inside your .tmx

urban patrol
#

...can i choose a stupid target like {{ModId}}/Maps/tilesheetname ?

uncut viper
#

no

#

it must start with Maps/

vernal crest
#

Also you can't name your files <modID>/tilesheet.png because at least on Windows you can't have a slash as part of a file name.

urban patrol
#

yeah i would use _

uncut viper
#

When you first added tongueandtail.png as a tilesheet inside your map in Tiled, Tiled set the image source inside your .tmx to tongueandtail.png you can see this if you open up the .tmx in a text editor

#

for example, with townInterior

urban patrol
#

so if i rename them all to include my mod id, THEN do i have to open each map in tiled to fix?

uncut viper
#

the game will look for Maps/<image source> for the tilesheet

#

you would have to yeah, or manually fix it in the .tmx in n++ or something

urban patrol
#

hmm okay

#

and that's not something your map fixer would do, is it?

uncut viper
#

nope. no way of knowing what you want your tilesheets to be named

urban patrol
#

thought so, but worth a try lol

#

all that said, i think i'd rather write 20 loads than do this

uncut viper
#

it will remove the directory off the top so if you had ModId/tongueandtail.png it would turn it into tongueandtail

#

but it wont rename it to anything but tongueandtail

vernal crest
#

Not difficult to do a find and replace across many files, fortunately

#

So it's trivial to rename tongueandtail.png to nic.DBD_tongueandtail.png (imaginary mod ID) in a bunch of map files at once

urban patrol
#

ohh true 👀

uncut viper
#

i would be willing to bet that the vast vast majority of tilesheet or map adding/editing mods do not do it this way, and the ones that do, are probably working with Mines tilesheets

vernal crest
#

Hmm.

uncut viper
#

(it is in fact required to do that with Maps/Mines/tilesheetname to use mines tilesheets)

gaunt orbit
vernal crest
#

Could you make tilesheet climbing (or subfoldering, I guess) work in your favour in that situation? Have a subfolder called nic.DBD inside the mod map folder, the tilesheets inside that. Then Tiled has an image source of nic.DBD/tongueandtail.png and the CP Load is Maps/nic.DBD/tongueandtail?

(Is that what you meant Button?)

uncut viper
#

yes thatd work

#

that wouldnt be climbing though, more like, uhh..

#

the opposite of climbing

obtuse wigeon
uncut viper
#

idk what the opposite of climbing would be called

urban patrol
#

tilesheet diving

obtuse wigeon
uncut viper
#

diving works

brave fable
#

burrowing

obtuse wigeon
#

I think technically it's actually repelling? as in you can repel down a cliff face

uncut viper
#

much easier to simply prefix your .pngs with your modid and an underscore though

#

and much more common to do

gaunt orbit
uncut viper
#

(actually, i think if we wanted to be consistent, we might call it "tilesheet drilling" the same way we use TargetField to "drill down")

gaunt orbit
#

But they are supported

brave fable
#

thanks for the GraphicsDevice.DrawUserPrimitives link a while ago tiktoktilan, very useful timesaver SDVpufferthumbsup

gaunt orbit
#

I'm glad it's useful!

torpid sparrow
#

is it repel or rappel

round timber
#

yes SDVpufferclueless

floral stratus
#

Yep

gaunt orbit
#

The former for pushing away the latter for climbing

brave fable
#

it is!

obtuse wigeon
torpid sparrow
#

the yes was very helpful /lh

urban patrol
#

tilesheet problems sure are repulsive tho

gaunt orbit
#

It's handled that way because there are some features specific to furniture that can't be generalized for other item types

urban patrol
#

if i'm renaming my files modid_tilesheetname, do i need to change the name of the tileset to have my mod id as well

uncut viper
#

the name of the tileset is actually not very important, just the image source

gaunt orbit
#

No, but you do need to change the name of the png they reference

uncut viper
#

it can be important if a C# mod ever wants to check things in your map but they can figure it out

gaunt orbit
#

When are we getting CustomFields on tilesheets/layers /jk

uncut viper
#

whats stopping you from serializing a dictionary into your tileset name

gaunt orbit
#

Although actually now that I think of it you can just do arbitrary properties in layers and tilesheets, at least on the Tiled end of things. I wonder if that's actually accessible from the xtile data

#

I don't even know what I would do with that if I could but it's fun to think about mod crimes

uncut viper
#

the tilesheet properties are accessible yeah

gaunt orbit
#

I guess you could always add an implementation for Tiled's parallax layer feature

#

If you hated yourself

uncut viper
#

same with the layers

#

i still just want someone to patch things enough to allow Isometric maps

#

it cant be thaaaaaaaat hard!

slow basin
#

if my mod is liked enough i wonder if i can comm someone to do nyapu style portraits for me actually (thats a future plan to think about later)

urban patrol
ocean sailBOT
#

Log Info: SMAPI 4.2.1 with SDV 1.6.15 build 24356 on Microsoft Windows 11 Pro, with 21 C# mods and 4 content packs.
Suggested fixes: One or more mods are out of date, consider updating them

uncut viper
urban patrol
#

that's what i thought, although i don't know why it's saying it can't find the files

uncut viper
#

but it looks like you're not including the file extension

urban patrol
#
    "Action": "Load",
    "Target": "Maps/{{ModId}}_finchhouse, Maps/{{ModId}}_FRL_Elevator, Maps/{{ModId}}_tongueandtail, Maps/{{ModId}}_furniture, Maps/{{ModId}}_furniture2, Maps/{{ModId}}_furniture3, Maps/{{ModId}}_wizard_furniture",
    "FromFile": "assets/maps/tilesheets/{{TargetWithoutPath}}",
},```

should it be {{TargetWithoutPath}}.png
uncut viper
#

yes

urban patrol
#

aha

#

thank you

#

so the without path it refers to is the filepath but not the file extension

uncut viper
#

the target is not a filepath

#

its a path but not a file path. its not pointing to any file

#

TargetWithoutPath means take your Target and remove everything up to and including the last /

lucid mulch
#

the asset pipeline also doesn't have file extensions, and there is some code that if you try to use them anyway they will get removed

urban patrol
#

no errors now!

uncut viper
#

a file extension in the Target itself will muck things up

#

file extensions in the image source inside a .tmx dont matter though

lucid mulch
#

the file extension in the target will mess with it because its not possible to load the asset and preserve the file extension (though internal asset key I think would continue allowing it iirc)

uncut viper
#

do you mean for maps specifically or the pipeline in general? bc its not uncommon for people to include file extensions for things like character portraits or sprites and then have their NPCs explode bc it cant find portraits or sprites, which i would think wouldnt happen if the extension was removed

#

even when speaking about maps, if the file extension isnt preserved, then it shouldnt mess with it bc then itd match the image source

#

i also just did a test load and editdata to a target with a .json file extension and then loaded it in my C# mod just fine, with the file extension included on both ends

twilit quest
# vernal crest Before I went to sleep, I think Esca helped you resolve the issue you were havin...

Hey, thank you for asking! The issue is partially-solved. I can get the spouse room to show up...sometimes. Right now if I use my custom farmhouse with most of the vanilla farm maps (like standard, forest, wilderness), the spouse room shows up properly. But if I use a custom farm map (or the Meadowlands), it doesn't show up at all in upgrade 1. It doesn't make any sense, because a custom farmhouse shouldn't be affected by which farm map I'm using, except inasmuch as there are certain map properties built into the farm map which do affect the farmhouse map (because Stardew is Like That). But SpouseRoomPosition is Not on the Farm map, it is on the FarmHouse map, as it should be! And the other properties shouldn't affect the spouse room. So I honestly have no idea what's going on. ^_^;;;;;

I need to do more testing, but I kind of gave up and took a break because I am out of ideas.

vernal crest
twilit quest
#

I wouldn't mind at all, I'd be very grateful if you wanted to take the time to help me!

vernal crest
#

If it works with a replacer, my guess would be that there's something specific to the 1.6 changes to farm maps that's affecting it, since Meadowlands is the only vanilla farm to use AdditionalFarms.

twilit quest
#

Anyway, it's late here and I need to sleep soon. ^_^; May I DM you? I'll put the latest version together

vernal crest
twilit quest
ashen urchin
#

How do I change the spawn coordinates of roadblock stones to Dwarfshop? and change the coordinates of where the dwarf is standing as well

uncut viper
#

you cant change the location of those stones

lucid iron
#

I thought that rock is hardcoded

uncut viper
#

it is

lucid iron
#

Dwarf might be movable tho, if u change the home

uncut viper
#

you can always remove the stones after the map is created though

lucid iron
#

Unfortunately you gotta have a seriously good reason imo

uncut viper
#

either via C# or with BETAS

half tangle
#
        public Vector2 GetBoulderPosition()
        {
            return new Vector2(27f, 8f);
        }

so you could move it with C# but, yeah, with good reason like chu said

uncut viper
#

but if you want to make new stones it needs C#

#

(a reason of "i want to" is good enough, imo, as long as you're aware of any compatibility concerns)

half tangle
#

yeah, agreed

ashen urchin
uncut viper
#

dwarf has CharacterData in Data/Characters

half tangle