#making-mods-general

1 messages ยท Page 51 of 1

velvet narwhal
#

this is all i'm getting

#

ignored d.il for reasons

rancid temple
#

I hate knowing this coin is off center

scarlet quarry
#

Oh, okay. Thanks for the help. Sad that I drew every single one of them just to find that SDVpuffersquee

#

And again, sorry for bothering the chat

rancid temple
#

It's no bother

uncut viper
#

i also think its no bother, its just helpful in the future that if you're gonna ask about specific items, you should definitely show the vanilla sprite :p

rancid temple
#

Now I know there's a handful of books that aren't used

velvet narwhal
#

TIL, i want that itty bitty book with the two swords instead of the orange one

rancid temple
#

I want all the small books instead of the big ones

scarlet quarry
velvet narwhal
#

it also helps distract me from reading inheritance SDVpufferflat

gilded comet
#

ohh like the eragon book?

rancid temple
#

Lmao

#

Probably C#

velvet narwhal
rancid temple
#

Needing to be distracted from reading the last book of the Eragon books is funnier though

gilded comet
#

ah lmao

rancid temple
#

Conceptually inheritance is neat, practically I avoid using it because it's a pain, maybe if I were more into projects where I needed to reuse the same crap

velvet narwhal
#

i'm just trying to figure out if it's necessary for me to inherit the woods : gamelocation

rancid temple
#

In order to do what?

velvet narwhal
#

ik i can just wait for wren's map framework but i also want to just create chaos

#

uh basically the ambient light and the wisp/weather effects

rancid temple
#

Oh hm, I guess only if you want your new area to also be that type

#

Which is probably fine?

old edge
#

Hey guys ive been looking for a way to remove a buff or change the property of it with C# today. Looked through a bunch of places already

rancid temple
#

But then you have to deal with the save serializer

#

Which I'm still avoiding dealing with

velvet narwhal
#

me? SDVpuffersweats okay nevermind

#

i am 100% not in the mood to deal with the serializer lmao

rancid temple
#

Just means registering it with SpaceCore

#

But you know, any inconvience you can complain about

old edge
#

Avoid saveanywhere mod

velvet narwhal
#

i honestly didn't know that was a thing until you came across it

rancid temple
#

If it's a buff in the data, you can edit it with the OnAssetRequested event

#

Think there are still some hardcoded things that you'll need some harmony for

#

Depending on what the woods are doing, you can always just try to copy the function and see if you can make it work outside of that map

old edge
rancid temple
#

I know messing with the ambient light should be available in any location

faint ingot
#

so I have this and it works fine. Is there an easy way to have more than 1 though? Can I add more and they just overwrite which one is being referenced for commands? addTemporaryActor Bug 16 16 -1000 -1000 2 false monster/showFrame Bug 1/

velvet narwhal
#

yeah that's why i was reading on inheritance and implementation SDVpufferflat i'm missing something vital in how i call my other class

calm nebula
#

I wouldn't inherit from woods

velvet narwhal
#

i've only been using GameLocation

calm nebula
#

But just do the same effect in update ticked/rendered world events

old edge
#
        {
            // Check if the player is wearing the Endless Ember Ring
            if (who.hasBuff("dreamy.kickitspot_AshenPromise"))
            {
                // Negate the Burnt debuff
                if (who.hasBuff("12")) // Burnt buff ID
                {
                  

                }

                
            }
        }```
rancid temple
#

!codeblock someone had this describing how to do the syntax highlighting wrong for a bit

ocean sailBOT
#

You can embed code in Discord using a series of three ` :
```
Your code can go here
Even if not a haiku
Just an example
```

For syntax highlighting, add the language code on the same line as the first
``` (with no space, like ```json).
The usual codes are cs (C#) and json.

old edge
#

Can't find the way to remove burnt buff SDVpufferchickhands

velvet narwhal
#

oh i just throw c# in it

#
private void OnAssetRequested(object? sender, AssetRequestedEventArgs e)
{
    if (e.Name.IsEquivalentTo("Maps/Aviroen.Voidsent_ArtificialBeach"))
    {
        e.Edit(asset =>
        {
            IAssetDataForMap editor = asset.AsMap();
            Map map = editor.Data;

            // your code here
            ArtificialBeach artificialBeach = (ArtificialBeach)Game1.getLocationFromName("Aviroen.Voidsent_ArtificialBeach");
        });
    }
}```
#

lmao

rancid temple
#

I've just noticed dreamygloom's all start with cs which is what happens if you put a space or a line break after the first 3 backticks

#

And that command was saying you had to put a space there for a while

old edge
#

But I don't add space

#

cs

#

Still shows

#

I use discord on my mobile

rancid temple
#

Interesting, probably too much trouble to figure out what's going wrong

#

Maybe mobile is adding a space for you lol

velvet narwhal
#

oh mobile discord formatting hates existing

old edge
#
 public static void ApplyEndlessEmberRingEffects(Farmer who)
        {
            // Check if the player is wearing the Endless Ember Ring
            if (who.hasBuff("dreamy.kickitspot_AshenPromise"))
            {
                // Negate the Burnt debuff
                if (who.hasBuff("12")) // Burnt buff ID
                {
                  

                }

                
            }
        }```
#

Still same no space added

#

Guess it doesn't work on old android phones

velvet narwhal
#

tbf i do hit shift +enter after the 3 backticks and the c# and then my actual code

old edge
#

Isn't it supposed to format it doesn't say anything about hitting enter

drowsy hemlock
#

It didn't work :/

velvet narwhal
#

it just adds color to it for me, idk

rancid temple
#

It's just syntax highlighting, makes it slightly more readable for code

velvet narwhal
rancid temple
#

But this is also why I said it's probably not worth trying to figure out what's wrong, way off topic lol

velvet narwhal
#

off topic-- anyway, what is the burnt debuff

old edge
#

Burnt debuff is 12

calm nebula
#

Realistically, you have three choices.

  1. Harmony patch teh buff constructor to make Burnt last, like, 10 ms
  2. Do something with an UpdateTicked event where you check every tick
  3. Fuck around looking for a netevent to listen to (this is hard to do correctly and is more likely to cause crashes if you don't do it right.
velvet narwhal
# faint ingot so I have this and it works fine. Is there an easy way to have more than 1 thoug...

each one you can name, call that 'actor' as a different actor:
addTemporaryActor \"Duck\" 16 16 95 17 2 false Animal duck1/addTemporaryActor \"Duck\" 16 16 97 17 2 false Animal duck2/addTemporaryActor \"Duck\" 16 16 99 17 2 false Animal duck3/addTemporaryActor \"Duck\" 16 16 101 17 2 false Animal duck4/animate duck1 false true 100 24 25 26 27 28 29 28 26 25 24/animate duck2 false true 300 16 17 18 19 18 17 16/animate duck3 false true 400 24 25 26 27 24 24 26 25 24/animate duck4 false true 250 24 25 26 27 23 23 26 25 24

rancid temple
#

Game1.player.buffs.Remove()

#

Takes a string Id

old edge
#

Ok

uncut viper
#

you probably want updateticked anyway unless you want them to have to re-equip the ring to remove the burnt debuff

old edge
#

It build successfully

faint ingot
velvet narwhal
old edge
#

ok updatetickedSDVpufferchickhands

brave fable
# old edge Hey guys ive been looking for a way to remove a buff or change the property of i...

you can use love of cooking's buff code as a reference:
https://github.com/b-b-blueberry/CooksAssistant/blob/feature/sdv-1-6/LoveOfCooking/Core/ModEntry.cs#L509-L553
this method in particular uses SpaceCore as a dependency, but it covers increasing buff duration, updating buff attributes, adding non-standard buff attributes, and using custom type buffs
(SpaceCore is only used for the ItemEaten event, which would only cover you for food/drink buffs)

latent mauve
#

Question: Is there a way using CP to have a building use a random asset per season?

uncut viper
#

if using EditImage on the source texture updates it then you can have the EditImage patch choose with the Random token

latent mauve
#

My building has leaves, petals, or snow on the roof based on the season, but since it's a TARDIS, the point was made that it might be cool to have it out-of-sync and randomly decide which season is represented.

calm nebula
#

blueberry

#

how are you supposed to access a dictionary

brave fable
#

sure, you'd just use {{Random: spring, summer, fall, winter}} in your asset key

rancid temple
#

Pretty sure you can, one of the Elle's mods I have does seasonal buildings on the farm

calm nebula
#

oh nevermind you're on the food's buffs, not the buff effect's buffs

brave fable
calm nebula
#

but not per like. month

latent mauve
#

I mean, I'm fine with it changing every day too

brave fable
#

wouldn't the snow and leaves not travel through time with the tardis though SDVpufferthinkblob

tiny zealot
#

could you do some dynamic token/keyed random bullshit to make it stick for a whole season?

latent mauve
#

So would I just use the {{Random: spring, summer, fall, winter}} instead of the {{Season}} I currently have?

brave fable
#

sure! or if you wanted it predictable you could just rename the files so the spring asset is a winter sprite, etc

latent mauve
#

The goal is to not have it be predictable, or I'd just offset them all by a set amount of seasons.

brave fable
#

but i feel like having your sprite use the wrong season even intentionally is just going to have people sending you bug reports about why it's a different season

#

nobody understands the mind of an artist SDVpufferpensive

latent mauve
#

Well, thankfully, this is a personal mod and not one I'm publishing or using outside my group. ๐Ÿ™‚

#

So that's a nonissue

calm nebula
#

(Pathos, can this use the game's GetDetermisticHashCode instead?)

latent mauve
#

Okay, so my current code snippet for the TARDIS looks like this:

    "Action": "EditImage",
    "PatchMode": "Replace",
    "Target": "Buildings/Big Shed",
    "FromFile": "assets/{{season}}/Tardis Big Shed.png",
    "When": { "TARDIS Big Shed": true }
       },
{
    "Action": "EditImage",
    "PatchMode": "Replace",
    "Target": "Buildings/Big Shed_PaintMask",
    "FromFile": "assets/{{season}}/TardisBigShed_PaintMask.png",
    "When": { "TARDIS Big Shed": true }
       },```
calm nebula
rancid temple
#

Trigger action mail flags

velvet narwhal
#

chaos

tiny zealot
#

yeeeeeaaaaaah now we're talkin

calm nebula
#

do something like

  1. Pick one of four strings to set in mail flags.
  2. Reset trigger action at 28th of each month.
  3. Profit
#

(2a. Read mail flag for your building.)

rancid temple
#

Mail flags, The Poorfolks Global CP Tokens

brave fable
#

could you.... use a modulo query to pick from a list of season names in a loop, using days played divided by some number to give the offset you want

#

or is that not very cp

calm nebula
#

trigger actions are awesome

tiny zealot
#

anyway, time to go. see you all later

uncut viper
#

you can also have a trigger action run based on a random chance too so it would be less predictable when it would change

velvet narwhal
#

i have something crazy that picks a random day of the month and sends out a mailflag for me to then introduce an event so i mean

latent mauve
#

For simplicity's sake, I am totally fine with just having it be random each day, but if y'all can help me figure out how to do those other ideas, I am willing to try it out.

velvet narwhal
#

i'm about to got to the gym so i'll just dump my action here

#
  "Id": "{{ModId}}_TheBeardCounter",
  "Trigger": "DayEnding",
  "Condition": "PLAYER_NPC_RELATIONSHIP Current Lance Married, PLAYER_HAS_SEEN_EVENT Current 6951319, DAY_OF_MONTH {{Random:{{Range:1, 28}}}}, {{Portrait |contains=Vanilla Compliant}}",
  "Actions": [
    "AddMail Current {{ModId}}_Beard received",
    "AddMail Current {{ModId}}_BeardCustom tomorrow",
    "MarkActionApplied Current {{ModId}}_TheBeardCounter false"
  ]
},```
latent mauve
#

However, there is one thing that I'm wondering. I need the paint mask to match whatever gets picked, so, is there a way to guarantee that?

old edge
#

We can zip up the solution folder and put it on git hub?

brave fable
#

you could assign the random season to a dynamic token, and then apply the value to both the paintmask and the building

rancid temple
#

The decompile?

#

If you mean your own solution, you can, though I have heard you shouldn't though I'm not sure why

brave fable
#

can query be used as values in cp, or only keys?

uncut viper
#

if you have One.png, Two.png, Three.png, and Four.png that you want to randomly rotate between, then on the 28th of every month you have a trigger action use the Random token to choose One, Two, Three, or Four. whatever is chosen gets sent as a mail flag to the players mailbox
then you have EditImage patches with HasFlag conditions for each of one, two, three, and four mail flags
(dynamic token would also work as long as you update the paint mask too)

rancid temple
#

If you're asking about the decompile of the game, 100% no. If you're asking about something else I have no idea

old edge
#

It worked!

uncut viper
rancid temple
#

I thought query just checked equivalency

uncut viper
#

you can do math in queries too

old edge
#

Actually idk

rancid temple
#

Right but don't they have to solve to a true or false?

brave fable
#

so Query: ({{DaysPlayed}} / 12) % 4 would give you a season index iterating through the 4 seasons every 12 days

uncut viper
#

they do not

rancid temple
#

Oh well hot damn

uncut viper
#

fireredlily does not want the offset to be predictable though

brave fable
#

butts

uncut viper
#

a RANDOM gsq on the trigger action to swap around the mail flags works well enough along with a dynamic token whose value is determined by a HasFlag token condition

calm nebula
#

I forget what trigger actions look like but it'd be like

{
    "Actions": [
        "RemoveMail Current MySpringFlag All",
        "RemoveMail Current MySummerFlag All",
        "RemoveMail Current MyFallFlag All",
        "RemoveMail Current MyWinterFlag All",
        "AddMail Current {{Random: MySpringFlag, MySummerFlag, MyFallFlag, MyWinterFlag}} Received",
    ],
    "Id": "MyFancyTardisSeasons",
    "Condition": "Random <small chance>",
    "Trigger": "DayEnding",
    "MarkActionAppled": false
}
#

and dynamic tokens:

  {
    "Name": "MyFakeSeasonToken",
    "Value": "Spring",
     "When": {
        "HasFlag": "MySpringFlag"
     }
  }  
  // and the rest
]
uncut viper
#

well you need a trigger for a trigger action, ideally SDVpuffersquee

calm nebula
#

how well did I guess?

uncut viper
#

3 out of 5 isnt bad, ill give you a pass for not making it a string, TriggerAction dictionary entry

#

i dont know where paint mask edits go but you do need to make sure you are also updating those at the same time, though, even if two different textures have the same mask

#

assuming you are just changing the Texture field on the building itself with this dynamic token

latent mauve
#

Well, with random, it looks like the pinned key method would make them consistent with each other.

uncut viper
#

the random token changes every day

#

theyll all be consistent but it will change daily

latent mauve
#

So I could call the pinned key version of random for the PaintMask and Big Shed to make sure they match their result

uncut viper
#

i thought you wanted to try and do the not-daily-just-randomly version

latent mauve
#

If I'm trying to do it by a trigger action, like what atra wrote, the pinned key would work there too, right?

uncut viper
#

if you're doing this trigger action way you don't need to keepp anything in check because the only time you're doing Random is in the Trigger Action

latent mauve
#

ah, I see

uncut viper
#

the random mail flag that gets assigned then determines the value of your Dynamic Token

#

and then that dynamic token is what you use elsewhere

latent mauve
#

So I'd just use the dynamic token for the paint mask entry, got it

uncut viper
#

and the building's Texture field

latent mauve
#

I'm just using an EditImage on the Big Shed building image itself rather than editing the Texture field entry for it.

uncut viper
#

that'll work too then

#

i just stressed the importance of the paint mask bc just updating the texture field would not cause the building to change appearance

#

but updating the paint mask does cause buildings to refresh their textures

latent mauve
#

Yeah, I didn't want to mess with the Texture field if I could avoid it by just using EditImage on the underlying asset

uncut viper
#

i mean im pretty sure editing the texture field is actually the better way to do it in this case

#

theyre functionally the same but i think EditImage operations are more computationally expensive

#

not on a timescale that anyone would notice, but, yknow. principle of the thing and all that. but feel free to do whichever works best for you

velvet narwhal
#

I did contemplate swapping literally everything out of overlays

calm nebula
#

A farm building that you can grow crops in

#

But it is set to a random season

#

Which changes. Maybe. Each Monday

#

Also you should probably use host's mailflags huh

#

For MP

uncut viper
#

seems like itd probably be useless until you got the missing stock list

#

host mail flags probably better however since its a Tardis maybe it being out of sync fits

calm nebula
#

It would be annoying as fjck and terrible for actual gameplay

#

Also what is a tardis

uncut viper
#

doctor who

calm nebula
#

Other than bigger on the inside

uncut viper
#

its bigger on the inside etc etc

calm nebula
#

Doctor...who?

brave fable
#

it sounds like having a greenhouse that sets the thermostat to 0 or 100 each week

#

surely your crops just drop dead every monday

uncut viper
#

greenhouse but your thermostat is controlled by JojaElectrical

brave fable
#

@next plaza sdv1.6.9.24276 is out ๐Ÿฅณ
[14:48:27 TRACE SMAPI] Broken code in SpaceCore.dll: reference to Netcode.NetList`2<SpaceCore.Dungeons.SetPieceNetData,Netcode.NetRef`1<SpaceCore.Dungeons.SetPieceNetData>>.RemoveWhere (no such method).

velvet narwhal
#

[This is an Automated Message /j Please leave your message after the beep. BEEP]

finite meadow
#

After my pichuyang left sv community I was left without the tech part of modding. I was just the one using tiled. So, basically this is let's say my first mod where I make the json

#

with the help of the fish hell I got from you yesterday I managed to pull it off. Just wanted to show the product of it. It's the custom farm (vanilla files only in it, nothing external). So agian.. thank you SDVpuffersquee

#

Renewable resources, all fish seem to work an even added some other things, nothing glitchy. You surely know what you're doing hehe

velvet narwhal
#

I do not, but I do know how to bash my head against a thing until it works for me

finite meadow
#

mind if I ask, what mods have you made?

velvet narwhal
#

One very very chaotic npc expansion of an npc in an expansion SDVpufferpain

#

0/10 do not recommend

finite meadow
#

which one ๐Ÿ˜„

old edge
#

Thanks guys. The burnt debuff is now negated with my ring. I had to add some updateticked logic that was actually quite difficult to figure out.

#

Took most of the day

#

Cause I wanted to try alone but oh well

old edge
lucid iron
#

The spacecore thing let you add any kind of buff to equipment

#

Crit chance is a buff iirc

old edge
#

So I don't need c#?

lucid iron
#

Not for this feature

old edge
brave fable
#

crit chance is a buff, but it's not available in the usual buff effects - hopefully spacecore exposes it though

old edge
#

Yeah I was looking at that and how to add a glow buff cause I think it's also a buff not sure

brave fable
#

all you need to do is add a colour-like value to GlowColor in the buff data, if you're adding to Data/Buffs

lucid iron
#

There is a framework for that too

#

I think it's specifically for making food work with glow but u can ref the sauce

brave fable
#

oh, i should mention then that GlowColor is the woozy hue-shift effect on the player, not a light source

old edge
#

That More like what I wanted. The light source

calm nebula
#

It's incredibly easy to add a glow to a ring

#

Just reference the code in the game that adds glow to existing rings

#

You don't need to mess around with light maps or whatever

#

Ring.onEquip, Ring.onUnequip

#

Ring.NewLocation

#

And Ring.LeaveLocation

#

Very straightforward

#

You basically just make a light source and assign the ID to the ring

#

The ring itself will keep the position updated (in Ring.update)

old edge
#

Im looking in ring.cs

faint ingot
pine elbow
#

how do I copy part of an image in aseprite and paste it as its own new image? I'm trying selecting the area and doing ctrl + c then ctrl + n but its just giving me a 64x64 blank new image

#

need to do this to separate the hairs in a png ^

#

i tried pixieditor too, same prob

#

and gimp just messes up

rancid temple
#

Did you select an area that's 64x64?

brave fable
#

i hate to ask you to use a fourth editor, but paintdotnet just works haha

rancid temple
#

Still haven't tried it, is it only in browser?

unreal spoke
#

If you copied something, you can paste is as a new sprite by going to Edit > Paste Special > Paste as new sprite.

brave fable
#

despite the name, it's downloaded software - if you want a capable browser image editor, you can use photopea, which is almost feature-complete photoshop in your browser

rancid temple
#

Ah, no I much prefer download software lol

brave fable
#

oh for sure, it's super convenient having it anywhere you have an internet connection tho and i'll market it any day lol

#

pdn is nice though, very simple and usable image editor

rancid temple
# pine elbow how do I copy part of an image in aseprite and paste it as its own new image? I'...

Using the rectangular select tool, I select the hairs that are part of the same style and push ctrl + c to copy that selection.
Then I press ctrl + n to open the new sprite dialogue, which because my clipboard contains the selection I just made will fill in the desired width and height for me. I'm not sure if this is specific to an operating system or not.
After clicking Ok it'll open a new tab where I push ctrl + v to paste in the selection. From here you would save it as a png.

#

Gimp is similar, I had to adjust the size of the grid because I don't have it set up for SDV's sizes but once I had that I just selected the area of the hair style, copied it and then pushed shift + ctrl + v to create a new image from clipboard

#

Ew Gimp can't directly save to png, have to export to png

#

I tell you what though, paint.net's website brings back a lot of memories about the kind of download sites I usually got viruses from lmao

#

Eugh, can't adjust the grid size on paint.net without a plugin huh

brave fable
#

told you it's simple SDVdemetriums but extensible, too

#

gimp is pretty unpleasant, but export/save is just a technicality

rancid temple
#

Yeah I guess, it's wild to offer a grid but not the ability to resize it, but as long as the plugins keep working then I guess it doesn't matter

#

I definitely don't like Gimp, every time I've tried to use it I've felt like it's clunky and unintuitive

#

It also feels bloated, feels like it runs slower than the Affinity editors I use occasionally

brave fable
#

if there's one huge block to me ever moving to linux from windows, it's having to use gimp instead of photoshop

#

such a grim thought

rancid temple
#

VSC instead of VS22 for programming for me lmao

brave fable
#

oh yeah SDVpufferfush that too

rancid temple
#

Just gotta be able to afford Rider

brave fable
#

i think rider is linux though?

#

at least all the hipster compsci students can get a free license hahah

pine elbow
pine elbow
#

it's working just slow progress

rancid temple
#

Pretty sure that's the wrong size anyways

#

Each hair is an overlay of the farmer sprite, so it should be 16x32

pine elbow
#

it's the same size as the official delotti FS hairs in another hair mod

rancid temple
#

And each hair style is the front, side and back hairs

pine elbow
#

i know that

#

but the conversion delotti has of her other hairs are 16x19, and the ones I'm doing are fitting on that size

#

wait it's 16x96

#

I don't know why I said 19 before was thinking that didn't sound right

#

the hairs are massive that's probably why they're 96 and not 32

rancid temple
#

Yeah that's what I was saying about them being an overlay of the farmer sprite, the hair itself only takes up a portion of that 16x32 size, but the front side and back portion all add up to a 16x96 overlay per hairstyle

woeful lintel
#

Hey, I'm trying to update FF for the beta, but i'm hitting a crash consistently. My issue is that each time I hit the crash the log error is different...

#

Also it fucks-up my VSCode terminal

pine elbow
woeful lintel
#

The first few time, I only had segfault messages, and nothing from SMAPI (the game was muted, it's the only difference with other logs)

#

And then this:

[game] An error occurred in the base update loop: InvalidOperationException: Sequence contains no elements
   at System.Linq.ThrowHelper.ThrowNoElementsException()
   at StardewValley.Options.setToDefaults() in D:\GitlabRunner\builds\Gq5qA5P4\1\ConcernedApe\stardewvalley\Farmer\Farmer\Options.cs:line 563
   at StardewValley.StartupPreferences..ctor() in D:\GitlabRunner\builds\Gq5qA5P4\1\ConcernedApe\stardewvalley\Farmer\Farmer\StartupPreferences.cs:line 47
   at StardewValley.Game1._update(GameTime gameTime) in D:\GitlabRunner\builds\Gq5qA5P4\1\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:line 3494
   at StardewValley.Game1.Update(GameTime gameTime) in D:\GitlabRunner\builds\Gq5qA5P4\1\ConcernedApe\stardewvalley\Farmer\Farmer\Game1.cs:line 3205
   at StardewModdingAPI.Framework.SCore.OnPlayerInstanceUpdating(SGame instance, GameTime gameTime, Action runUpdate) in /home/pathoschild/git/SMAPI/src/SMAPI/Framework/SCore.cs:line 1090

repeated 30 times

#

This all happens after an IInputEvents.ButtonPressed where I place an item in a Furniture slot with right-click, since one of the logs mentions sound, my guess is that something happens when I do Game1.currentLocation.playSound("woodyStep");, but it still plays the sound and finishes the event method properly (according to debug prints)

#

New test: this time SMAPI didn't say anything but I get a message saying "double free or corruption (!prev)", without any other info

pine elbow
#

i think I messed up the hairs I converted, they're too high up

#

the fringes/bangs are meant to right above the eyebrow, I'm not sure what happened here since it's the same dimensions the official conversion of the other hairs used

#

@rancid temple any ideas? should I lower the 96 to a 95 or 94?

rancid temple
#

It would be moving each hair down in their respective 16x32 cell

brave fable
#

i'm afraid you've converted to a receding hairline SDVpufferpensive

calm nebula
woeful lintel
#

Linux build btw

calm nebula
#

It's just unhelpful in that it's in some random different menu

rancid temple
#

Huh, I couldn't find anyone saying how to do that, just people saying you had to have a plugin

calm nebula
#

For GIMP, the general idea is that

#

It will do what you want

rancid temple
calm nebula
#

If you can navigate the menus for it

#

Good luck!

rancid temple
#

I did find how to resize GIMP's grid, which is fine, just weirdly located

vernal crest
#

Affinity Photo offers the ability to reset the grid and set it as the default...but then it always uses its "automatic" grid instead of the default so it's not, in fact, a default.

rancid temple
#

Lmao

vernal crest
#

That combined with the fact that you can't eyedropper with the flood fill tool selected, you have to do extra steps to eyedropper from one file to another, and the fact that I cannot ever figure out how to successfully copy and paste between files means I am dropping it when I can.

#

It has definitely been better than PS for my sad little struggly computer but too many frustrations for me.

rancid temple
#

Hm, I don't seem to have issues copying from one file to another, though I've definitely forgotten to have the correct layer selected before

#

I don't work in image editing very often, so actually using and remembering about layers is not something I do most of the time

#

Aseprite I use them to mess with stuff when I'm trying to avoid overwriting right away, but always end up compressing back to one layer

vernal crest
#

Were you doing pixel art at the time?

#

I find that it won't copy the pixels exactly. It tries to anti-alias them or something.

#

But sometimes it will work properly and I don't know what I'm doing differently between the times it does work and the times it doesn't.

#

I have so many layers, which is why I am stuck with Affinity Photo for now instead of switching to Aseprite.

rancid temple
#

Oh yeah, you have to like change some settings for pixel art

vernal crest
#

It doesn't give me any issues to actually do the pixel art in Affinity Photo (except the aforementioned gripes about grids and eyedroppering). I just can't consistently copy between files.

rancid temple
#

Maybe they're set on the image, I can't remember where I was messing with that

vernal crest
#

If I am copying between two pixel art files that I made, or between townInterior and townInterior_2, I wouldn't expect to have to change any settings to make it possible to copy and paste between them? Especially because I haven't had the issue with any other image editing program.

rancid temple
#

Hm, I just made a new document, copied out of Objects_2 and pasted into it without issue, really trying to remember what I changed

vernal crest
#

I've tried to google it a bunch of times but I guess my google-fu isn't good enough because I haven't found any results that have helped.

lost hull
#

if i download a sprite mod, is it possible to simply delete the sprites i don't want to use from the assets folder or do i need to change the content.json as well?

woeful lintel
#

deleting sprites will work but CP will give warnings (nothing bad)

lost hull
#

alrighty then

rancid temple
#

Also in Settings > Performance > View Quality, I have it set to Nearest Neighbor, even though that's just how it looks while editing and doesn't actually effect the final product

vernal crest
#

I didn't have the View Quality set to Nearest Neighbour but I just changed it.

rancid temple
#

Also there's Use precise clipping in there that I have off

vernal crest
#

Also off for me

#

And it's pasting perfectly right now so I can't even show you what it looks like lol

rancid temple
#

Well, guess you'll just have to see if it rears its head again lol

unborn raft
#

if i wanted to edit the range at which machines can accept items (i.e. letting me put items in them from further away) is there a field somewhere for that?

calm nebula
#

No

rancid temple
#

I think there's a couple mods that increase the distance you can interact

#

But it's not specific to just machines

unborn raft
#

could you link it please

rancid temple
#

I don't remember what it's called even

#

Installed it once, didn't like how it felt to play that way and uninstalled it lol

#

Since it affects everything, you have to whip your mouse across the screen for every little thing

#

It's exhausting

unborn raft
#

damn that sucks

brittle pasture
rancid temple
#

Definitely not, but that's scary lmao

brittle pasture
#

Mr Fantastic the Farmer

rancid temple
#

Looks like it was Extended Reach, but it's not up to date and I actually don't know if it worked with machines

woeful lintel
#

The VSCode background extension is broken in the latest version SDVpufferwaaah

fluid marsh
#

I'm working on my first mod, it's a dialogue mod centered around unique gift reactions. In theory, how difficult would it be to have gifts trigger different dialogue when given to an NPC you're married to? Thanks SDVpufferheart

woeful lintel
#

It's possible from what I know, wait for a dialog pro to get more info

brittle pasture
#

not at all! Gift-specific dialogues are new to 1.6

brittle ledge
#

dialogue pro

SBVSterlingEnter

marriage dialogue

SBVSterlingExit

brittle pasture
#
  • a CP condition to patch them in only if you're married to that NPC
brittle ledge
#

(patching them in conditionally was going to be my suggestion too)

fluid marsh
#

Good to know, thank you!! Much appreciated :)

vernal bone
#

Does anyone know how the Cross-Mod Compatibility Tokens are supposed to be used? Specifically the Config one? I'm trying to get a map patch dependent on the config of T's Apartment House, but the patch doesn't seem to actually update in-game. If I have the config setting enabled and open the game, the patch works as intended, but the patch is still applied even when I change the config setting, and it only updates to reflect the config change when I completely close the game and reopen it SDVpufferwaaah

rancid temple
#

Map changes require at least a patch reload

#

Can't remember if changes happen during the same sessions if you sleep

#

But config changes should take effect if you do them from the main menu and load the game I think

#

You could try changing the Update rate to OnLocationChange, and/or OnTimeChange

#

Though I really don't suggest it, I think map patching is some of the most resource intensive patching

vernal bone
#

Just tested it - It doesn't change if I change the config from in-game OR the main menu -- the changes only update if I restart the game completely SDVpuffersob

rancid temple
#

Interesting, my map patch is actually working in real time, I didn't think it did

#

But I guess I'm usually making changes to the actual tmx and readding it to my folder so that does actually require a reload

#

Had to make a test with a config and adding something to a map

rancid temple
#

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

rancid temple
#

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

rancid temple
#

Only other thing I can think to ask without seeing those is how you're changing the config

vernal bone
velvet narwhal
#

(Dynamic tokens can't be patch reloaded but I assume that's not what you're touching)

rancid temple
#

I'm wondering if Button's tokens aren't getting updated when the config changes

vernal bone
ocean sailBOT
#

Log Info: SMAPI 4.0.8 with SDV 1.6.8 build 24119 on Microsoft Windows 11 Home, with 31 C# mods and 56 content packs.

vernal bone
#

I dunno, I assumed the "Config" token would update when the config is changed, but maybe it functions like a dynamic token so that isn't the case?

#

(I don't know C# super well yet, but that's just a guess)

rancid temple
#

Well, there would have to be something telling the token to change

#

Because GMCM is built into CP, when you change config options with GMCM for CP mods it tells those tokens that their values are different

#

For a C# mod you have to hook that up, but it yells at you if you don't lol

#

Assuming you're using GMCM anyways

vernal bone
#

Yee! I've been doing all the configuring through GMCM

rancid temple
#

Yeah, so there shouldn't be any issue with the apartment mod knowing you've changed the config settings

#

But I'm not familiar with Button's mod, I'm assuming it's just a bunch of reflection lol

golden basin
#

does anyone know what this ftm error means? Issue: This include/exclude area for the "Fellowclown.PC_AncientGraveYard" map isn't formatted correctly: "13"

vernal crest
#

You need a starting coordinates (the one before the forward slash is my guess) and an ending coordinates (after the forward slash) to draw the rectangle of the map that the things are allowed to spawn in.

golden basin
#

So a starting and ending so anything in-between has spawns in it?

vernal bone
vernal crest
#

Yeah

golden basin
#

Okay that makes sense thank you aba

calm nebula
#

I actually have questions here

#

If you are editing their map asset and it is a renovation

#

Unless they have conditional map patches

rancid temple
#

No renovations, only map patches

#

Or well, I guess patches to the renovations

#

Sooo you could target that instead

#

Lemme check the tmx to make sure they aren't just blanking those

vernal bone
#

this is the section of T's for the map I'm trying to modify

#

For how it's applied in their content.json

calm nebula
#

I see

vernal bone
#

What I edited in Tiled, shifting the log beams + adding properties so they can be decorated

#

Basically, if I can either 1) Replace the asset directly with mine, 2) Target the asset for editing so I can tweak only the beams, or 3) bind my map edit to T's config so my version of the map will apply when it's enabled by their config, any of those would be ideal

#

(I hope this makes sense-- I haven't directly asked for mod help before so I Dunno How To Phrase Thingsโ„ข)

vernal bone
# calm nebula I actually have questions here

I tried directly targeting the asset using CMCT's Asset token & the path as it is in T's content.json, but it didn't do anything, so I just kinda assumed that isn't what that token is for but idk

rancid temple
#

@uncut viper it seems like CMCT's tokens don't update when the targeted mods config changes, is this intended behavior?

velvet narwhal
#

i thought button fixed that SDVpufferthinkblob

rancid temple
#

I suppose I can give the asset thing a try

#

Well I'm testing it right now and it's not doing anything

#

Unless it's a pending change

velvet narwhal
#

iirc atra brought it up about when it would get cached

#

it might be strange though, i have the same exact setup out of my config tokens for portrait mods and while one updates immediately, the other takes a day reload

#

i might also be dumb and missed a spot somewhere but

rancid temple
#

Depends on what it's editing

#

Some things are cached and only rechecked on sleeping or loading the game

golden basin
vernal crest
rancid temple
#

I can never remember what is cached when, which is why I always have to say I think you need a patch reload lol

golden basin
#
          "Diggable",
          "Grass",
          "Dirt"
        ],
        "ExcludeTerrainTypes": [
          "Stone",
          "Wood",
          "Quarry"
        ],
        "IncludeCoordinates": [
          "9,9/56,45"
        ],
        "ExcludeCoordinates": [
          "0,36/18,54"
        ],```
calm nebula
#

So renovations are special

#

And may not respect tokens at all

#

Sorry, token updating

vernal bone
#

I'm assuming in this context "renovations" is just "farmhouse map edits" and not specifically the renovations from Robin, yeah?

#

Just so I'm understanding correctly lol

velvet narwhal
#

SDVpufferthinkblob this is a renovation target from that original json

golden basin
#

hmm i swore i did it correctly the ftm thing, its working everywhere else but the ancient graveyard

calm nebula
#

Specific to the renovations from robin

vernal crest
calm nebula
#

Edits to farmhoise map I would expect to update if you went back to title

#

At worst

rancid temple
#

Yeah, I would have expected loading the save to update it too, but it doesn't seem to be

vernal crest
golden basin
#

yeah it is

vernal crest
golden basin
#

yep here ill grab it

vernal bone
#

Ahh okie so it's not just me then? I wasn't sure if I was putting something in wrong or if it was something going on with CMCT

golden basin
#

its suddenly not doing the error

vernal crest
golden basin
#

maybe!

#

OP there it is

#
[Farm Type Manager] Issue: This include/exclude area for the "Fellowclown.PC_AncientGraveYard" map isn't formatted correctly: "15"```
rancid temple
#

Trying the asset thing now

calm nebula
#

Also, no worries

calm nebula
golden basin
#

ill try it out

vernal crest
#

So before you delete and reinstall FTM, double-check what you've actually changed

calm nebula
#

(Aba, I say this because ftm caches a lot in its mod folder.)

rancid temple
#

Looking at the instructions, I actually have no clue what being able to get this asset token would enable

calm nebula
#

This is a "delete the cache" instruction

rancid temple
#

You can't patch an unloaded asset

golden basin
#

running a test now

#

nope tje error is still there

vernal bone
rancid temple
#

I wonder if I can use it to patch something in my mod with. Wouldn't be useful in this situation even if I could

#

At this point, probably need to just wait for Button to get back to me about the update rate of the config token

vernal crest
golden basin
#

can i send the json?

vernal crest
#

Yeah of course

golden basin
#

i think i see the issue

#

accidently enter

vernal bone
golden basin
woeful lintel
astral prism
#

how are you supposed to add clickable components to a menu after it's been made? i tried this

var menuForReference = (GameMenu)Game1.activeClickableMenu;
Game1.activeClickableMenu.allClickableComponents.Add(new ClickableTextureComponent(/* etc */));```

inside 'OnMenuChanged' but it cries and says allClickableComponents is null
hallow prism
#

me : "yay, after fixing the 150 json formatting issues i can test my mod"
(i forgot to install the mod needed for it to work)

tender bloom
#

not that I know everything, but I took a look and my response to reading those errors in those circumstances is roughly "o.O wtf"

lucid iron
late pewter
#

I've acquired a terrible terrible mod idea but I must ask, Assuming I have the right Framework Mods as dependencies:

1). How hard it is to add shippable custom items?
2). How hard is it to add a building like a Mill, including with an animation, except it can only work in the Desert -OR- it just works better in the Desert? (Either faster OR more output)
3). Allow Robin to construct in the Desert but only when it's unlocked?
4). Has an updated version of "Bigger Craftables" been released under a different name, or is otherwise supported via Vanilla functions now? I need a Machine sprite bigger than 16x32.
5). Can Machines produce random output based on one input? Multiple different random outputs? (Example: put in 10 Mixed Seeds, get 5 Random Crop Seed, 4 Random Season Wild Seed, AND 1 Fiber Seed -OR- a low low chance of 1 Tea Bush instead)
6). Make a modded item a valid option for a Vanilla recipe, i.e. the game treats it like a Vanilla item much like the Tea Bush recipe accepts any Wild Seed. (Example: Crab Pot recipe will accept 3 Iron Bars -OR- 3 Aquaite Bars in any ratio of the two)
7). Make these Producers and Machines support the Automate mod?
8). Has anyone else seen a mod do any of these things and can I see them and use them as examples?

lucid iron
brittle pasture
#

everything you said can be done with CP, though you do need frameworks for:
4: needs bigger craftables mod
5: need extra machine config for multiple simultaneous machine output
6: either spacecore or better crafting, though I'm not sure if you can do the mixed recipes thing

unreal estuary
#

Iโ€™m struggling to find the file that contains these tiles, itโ€™s probably right in front of my face๐Ÿ˜ฉ does anyone know?

velvet narwhal
#

roku has a "robin builder" mod i'm trying to find

brittle pasture
#

hmm did you look at the new 1.6 tiles

gilded comet
#

it's very flexible

unreal estuary
brittle pasture
#

SpaceCore also supports ingredient slots that accept context tags

velvet narwhal
brittle pasture
#

what I'm not sure about is the 'mixed ingredient in any ratio'

lucid iron
#

I think it would just work right think

gilded comet
#

hm

lucid iron
#

Like if u had 1 aquaite 2 iron u can still make pot

gilded comet
#

that's true

lucid iron
#

If it's all tagged right

brittle pasture
brittle pasture
lucid iron
#

A mill that only work in desert bolbpopcornhat

brittle pasture
velvet narwhal
#

oh you meant the actual building reqs, i was thinking animation SDVkrobusgiggle

vernal crest
unreal estuary
uncut viper
rancid temple
#

Hm, that's weird

#

When I use my own config token the map patch happens instantly when I save the config

#

When I use the config from a different mod, it doesn't update until I close the game and reopen it

uncut viper
#

i believe CP manually updates all of a mods tokens when one of its config changes iirc. but my tokens wont be from your mod, so they dont

desert vapor
uncut viper
#

if i understand tokens correctly though i dont think putting an update rate of OnLocationChange or OnTimeChange for config tokens should be that bad bc even if they check the config at every opportunity, if the config hasnt changed it wont signal that it needs an update, so it wont cause every patch the token is used in to update

rancid temple
#

I'm just not sure it would actually solve the issue

#

I would need your tokens to change sooner, not the other ones or mine

uncut viper
#

if you change another mods config, and you are using a CMCT token to check that config, then setting your CMCT token patch to have a quicker update rate means it will re-cache the o ther mods config sooner

rancid temple
#

There are different kinds of patches that would need a different update rate, but map patching seems to be instant so the rate isn't really an issue for that

#

I'll slap an update rate on it, see if that works then

wooden idol
#

Can EditImage take from the game files themselves? LooseSprites/map_summer -> LooseSprites/map_fall

uncut viper
#

content patchers aPI very very emphasizes the actual value of a token never changing outside of the UpdateContext function, which i do my best to respect to not get wildly unperformant

rancid temple
late pewter
rancid temple
uncut viper
#

question abt map edits in general, assuming you were only using your own config token to change a map, would it update immediately if you were already on the map when you changed the config, or would it require you to reload the map?

vernal bone
#

in my experience, map edits from your own config update immediately w/o the need for reload

uncut viper
#

like it will change the map even if you are standing on the exact spot where the edit occurs?

vernal bone
#

At least thats how they've usually worked for me using CP+GMCM

#

Yeah! I've accidentally turned off the map area I'm standing in before (lol oops), and I just ended up awkwardly standing in the void until I turn the patch back on

uncut viper
#

hm, okay. was just also trying to figure out why even reloading the save wouldnt change anything, bc like, the "should i update?" check of the config token does grab the config value from the other mod directly with reflection, theres no caching in the update check naturally, so it would have the correct value by the time you actually get to move around in game

#

you can check with the patch parse command too

#

would you mind zipping and sending your mod folder so i can take a look too? (unless you already did earlier for roku and i missed it)

rancid temple
#

Sorry, had to go get my car from the shop

vernal bone
#

Sure! Lemme zip it real quick

vernal crest
#

Yes, can confirm that Sialia's sprite changes immediately when I update her config (her sprite is a map edit).

rancid temple
#

(I'm just using my own map patch and another of my test mods to test this on a smaller scale)

vernal bone
uncut viper
#

ill look at the zip and take a closer look after ive made coffee and breakfast, sorry. literally just woke up when i saw the ping and responded to it so im not at my best brainpower yet lol

vernal bone
#

It's all good!!

uncut viper
#

in the meantime would you mind sending a picture of what it's supposed to look like when the map patch is applied correctly? so I'd know how to tell when the token was working correctly

vernal bone
#

Yeah I just gotta grab a screenshot real quick

vernal bone
broken maple
#

Hello, I was wondering if anyone knows if you can change the color of the placement tile indicator? I unpacked the files already and I tried looking at the Loose sprites assets but I canโ€™t figure it out

humble timber
#

should be able to, i believe it's in cursors?

broken maple
#

Okay, let me look there because I might have overlooked it

shut oasis
#

Is there a way to have content patcher just read an animals "data" string instead of rewriting my old BFAV mods into giant text files requiring each bit of data to now take up a whole line?
This seems so bloated and inefficient considering the game is compiling all those entries back into the 1 line I'm starting with.

rancid temple
#

The game isn't compiling them back into one line

#

!converters is there a converter here for it?

humble timber
broken maple
#

Omgggg, itโ€™s there, I was looking at the wrong tab under a mod I had downloaded , thank youuuu so much

shut oasis
iron ridge
#

yeah i couldnt figure out how to do it at the time

unkempt seal
#

What's the issue with Adopt n' Skin not working with SMAPI 4.0? Does it need a ground-up source code rewrite or is it obselete?

rancid temple
#

Well, it would need to be fixed and rebuilt, but I believe its functionality is handled by CP now

iron ridge
#

do i want to add a runtime adopt&skin converter to my todos

#

i think i do

humble timber
#

lmao

unkempt seal
#

I mean, I'm a C# dev. I can do a ground-up source code rewrite.

rancid temple
#

No matter how many times I see it, the very first time I see this mod I think it's the butcher mod and then have to remember it's the appearance changing one

#

I guess the horse part isn't covered by CP

brittle pasture
#

you can but as mentioned animals having multiple skins is supported by the game now

#

(though you can't pick them)

#

there's also AT if you want to pick them

rancid temple
#

Possible feature improvement

brittle pasture
#

tbh most people just use AT

vernal crest
#

I pick mine with AT. Very mindful, very demure.

rancid temple
#

I do yeah lmao

#

I hacked together an Elle's AT mod, I still need to go back and make every variant actually have a name

#

Currently it's just a bunch of index numbers and I hate that

#

It's only a few hundred variants

unkempt seal
#

Does anything in specific need to be done to have the game recognize and pick between multiple sprites?

#

That's literally all I care about lol.

rancid temple
#

I would just use AT

unkempt seal
#

Does AT support animals picking from a random skin when you get them?

rancid temple
#

Probably not, but I think by default skins added through CP do that

brittle pasture
#

yes

calm nebula
#

I think that is the default behavior

unkempt seal
#

I don't want to individually pick each skin, that's why I used AnS

unkempt seal
rancid temple
#

I don't buy new animals like ever so I guess I don't actually know lmao

#

Setup AT after I had my farm going

calm nebula
#

Anyways, I think it would be possible to do a fairly clean rebuild for A&S

#

By that, I mean, the game has made it easy to have the features that mod did

rancid temple
#

Save for the horse thing

#

With its anti-unhoused-horse agenda

calm nebula
#

Tbh that feature was glitch in 1.5.6 anyways

rancid temple
#

The name throws me for a loop every time, especially with the subtitle (Animal Skinner)

unkempt seal
calm nebula
#

Yes and no

#

AT rewrites all the draw code in the game

brittle pasture
#

hmm, an update/successor to A&S could use the vanilla skin feature but allows picking said skins on purchase time. it would have better performance and compatibility than AT

#

(though in practice I haven't really had issues with either)

rancid temple
#

Sounds like redoing the adoption shop :P

#

Or you could hack it in between doing the adoption and returning to Marnie's

lucid iron
#

end marnienopoly today

rancid temple
#

Throw up a new window to pick the skin lol

brittle pasture
#

and the robinolopy as well

lucid iron
#

robin doesnt have a monopoly on builder tho

rancid temple
#

I think she's the only one that can show up to physically build stuff

brittle pasture
#

try ordering a building that takes 2 days to build from another vendor, I dare you

velvet narwhal
#

takes roku's code to put my own sprite ok

rancid temple
#

Other people can sell them, but she's the only one allowed to wield the hammer

#

...a mod that turns Robin into Thor and her hammer into Mjolnir

vernal crest
#

Just patch Robin's sprite to make her look like someone else, set that NPC to invisible, and send the player some mail from Robin telling them that she's going on an impromptu holiday SDVkrobusgiggle

velvet narwhal
#

"say hello to my new apprentice"

rancid temple
#

(my real issue with AT isn't that it introduces a ton of possible compatibility issues, it's that the wiki is annoying to use)

velvet narwhal
#

isn't that one with the not-quite-content-patcher formatting?

brittle pasture
#

it uses its own format yeah

rancid temple
#

Visually it's fine, it's on github, but the pertinent information between things feels buckshot everywhere

#

Plus every time I go to it, I feel like it's missing the one thing I happen to be looking for in a list of like texture names or whatever I'm trying to find at the time

velvet narwhal
#

SDVpufferthinkblob ah yes, a peacefulend one, tbh i've gotten used to it with the fashion sense digging but i'm also violently "i don't want to do retextures myself"

brittle pasture
#

Actually, I might severely be misremembering but I heard some time ago AT supports changing CP skin variation? Not the AT textures, but vanilla ones
If that's the case A&S is truly deprecated lol

rancid temple
#

AT pulls CP skins automatically

brittle pasture
#

does it still patch the draw code in that case

rancid temple
#

Well I mean, it does patch the draw code regardless

brittle pasture
#

the patch doesnt have to run though

tender bloom
rancid temple
#

Flip her portrait the other way and see if anyone even notices

#

Well in AT's draw prefix I don't see any check for the animal's data, so I'm gonna guess it's just collecting it for the menu and adding it to its own data

brittle pasture
#

it does seem to set SkinID instead of the modData field if the skin is vanilla though

livid kite
#

I have a problem that I don't know what is going on, but with my NPC Reyla, Abigail's 2heart event isn't showing up, but when you take out my mod the 2heart event shows up. does anyone know what might be casuing that?

velvet narwhal
#

where does abigail's 2 heart even trigger from

#

if you're blankloading a json into that data/event/location at a late priority, you're effectively wiping all events from there iirc

livid kite
#

I have this set up:

      "Action": "Load",
      "Target": "Data/Events/SeedShop", 
      "FromFile": "assets/empty.json",
      "Priority": "Low"
    },```
velvet narwhal
#

yeah that'll do it

velvet narwhal
#

you only ever do that when you've created your own custom location

uncut viper
#

(or when a vanilla location doesnt come with events, right? /gen)

livid kite
#

Ah that makes sense, I thought I had to do that everytime I set up a event in a location

velvet narwhal
#

i don't think any vanilla location doesn't have an event, || we don't talk about the summit ||

#

no, you only do that for your own custom locations

velvet narwhal
#

oh that means i have to low load into the adventureguild for my marlon mod SDVpufferflat
groans

tender bloom
#

We donโ€™t talk about the blacksmith SDVkrobusgiggle

#

I feel like the blacksmith is the one Iโ€™ve seen the most mods use

velvet narwhal
#

someone else can do a romanceable clint mod, i'm uninterested

brittle pasture
#

i think there's at least 5 already

tender bloom
#

I think luckiel, jasper, sve all had loads that had to be coordinated

#

Maybe a few more

#

Plus presumably various other Clint mods

brittle pasture
#

not sure if one exists without turning him into a gigachad though

#

last I checked all of them turned him into an animu boy

calm nebula
tender bloom
velvet narwhal
#

god i hate that nexus eats some webp and leaves some alone

tender bloom
#

Some days itโ€™s hungrier than others

#

Or maybe itโ€™s just a picky eater

velvet narwhal
#

might as well put that into my code now before i forget about it later a damn when patch if it doesn't detect SVE i don't know other mods that actually blankload into the adventureguild

calm nebula
#

It doesn't matter anymore

#

Just use priority low

velvet narwhal
#

oh really? eyeshake

calm nebula
#

Yeah

uncut viper
vernal bone
uncut viper
#

(the UpdateContext method in the token was returning true when the config for the other mod updated (so ig CP refreshes all tokens when that happens?), but then it was seemingly being called again immediately after and returning false (bc it just updated a second ago, so nothing has changed since just then) before the GetValues was called again to actually update the patch, and im not entirely sure why)

wooden idol
uncut viper
vernal bone
uncut viper
uncut viper
#

what does the patch summary say? SDVpufferthinkblob idk what else it might be unless those tiles are duplicated somewhere else cuz those are definitely the same ones on outdoorTileSheet_extra... hm

wooden idol
#

and it does seem like all that should be loaded is loaded?

Current changes:
   asset name                         | changes
   ---------------------------------- | -------
   Maps/spring_beach                  | edited image
   Maps/spring_monsterGraveTiles      | edited image
   Maps/spring_outdoorsTileSheet      | edited image
   Maps/spring_outdoorsTileSheet2     | edited image
   Maps/spring_outdoorTileSheet_extra | edited image
   Maps/spring_Shadows                | edited image
   Maps/spring_town                   | edited image
   Maps/spring_Waterfalls             | edited image
   Maps/summer_outdoorsTileSheet      | edited image
   Maps/summer_outdoorsTileSheet2     | edited image
   TerrainFeatures/grass              | edited image
   TerrainFeatures/tree1_spring       | edited image
   TerrainFeatures/tree2_spring       | edited image
   TerrainFeatures/tree3_spring       | edited image
open dock
wooden idol
#

that's funny lol

#

I could make the season configurable tbh

open dock
#

My only problem is other than manually swapping the images in the unpacked folders and repacking it, idk how to do this lol

wooden idol
#

yes

#

that does seem to be the only way as far as I can tell (or well someone here said so, they said you can't directly access the game's assets using content patcher)

uncut viper
#

was this patch summary done in the springtime? does it look the same if you do it in the summer?

lucid iron
#

did you sleep

gilded comet
open dock
#

I think if you were to make an XMB mod yeah yeah, I know, shame on me, than theoretically you could

uncut viper
# lucid iron did you sleep

i woulda thought if that was the issue it wouldve been ALL the grass looking summer, not just the ones from outdoorTileSheet_extra

gilded comet
#

don't make XNB mods is the thing

uncut viper
open dock
#

well why not

uncut viper
#

xnb mods are very incompatible with just about everything else and WILL break every time the game updates

open dock
#

like is there a specific reason other than it's just a pain to reverse them?

lucid iron
#

yea but they are different assets, could be some shenanigans going on think

gilded comet
#

more compatible, less issue-prone, and easier to do content patcher

open dock
#

Ahh, gotcha, Wasn't sure if there was an actual reason lol

#

That makes sense actually

uncut viper
#

or change all but not the one, rather

lucid iron
#

the other thing i would try is, rather than load the tilesets, load the tmx with tilesheet file changed

open dock
uncut viper
#

i think if you managed to make an AT mod then you can definitely do a CP mod! it's super easy, esp if you're just changing images

lucid iron
#

CP is fairly simple

open dock
#

Sweet. Maybe it'll be easier than I'm making it out to be lol

uncut viper
#

!startmodding

ocean sailBOT
#

Making mods can be broadly divided into two categories:

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

uncut viper
#

(ignore the C# part)

wooden idol
#

they both mention the exact same though which is odd

uncut viper
#

are you using a custom farm map?

wooden idol
#

nope

#

idts?

humble timber
open dock
wooden idol
#

mayhaps neuronactivation

open dock
#

I just started setting things up to make my winter one. Guess what I named it

wooden idol
uncut viper
#

truth be told Leonardo im not at all sure why its not updating that one specific sheet. i guess you should try sleeping like chu suggested to see if it fixes itself on day update

#

or on a game restart

wooden idol
#

it...did

#

i suppose I shouldn't worry about it then since nobody will be using commands

uncut viper
#

ive absolutely no idea why that one tilesheet is special in that it doesnt get reloaded ยฏ_(ใƒ„)_/ยฏ

lucid iron
#

mystery...

#

maybe its some spaget with how game does seasonal tilesheets

wooden idol
uncut viper
#

i went to look at the code for it and i also dont see why it wouldnt update, it seems like its just a for loop over all the tilesheets in a map?

lucid iron
#

so do you want your mod to actually behave like it's fall all the time?

#

cant grow other season crops but pumpkins never die etc

wooden idol
#

nope just a recolour

uncut viper
#

like obviously SOMETHIN is weird there. but damn if i aint curious to know why

next plaza
open dock
#

Since this will be my first CP mod and all

wooden idol
#

same, first time

open dock
#

and we had the same exact idea but with different seasons lmao

wooden idol
#

also some images seem to be bigger/different, so time to take this to photoshop
[Content Patcher] Can't apply image patch "Forever Fall > EditImage TerrainFeatures/tree1_greenRain_{{season}}" to TerrainFeatures/tree1_greenRain_winter: target area (X:0, Y:0, Width:144, Height:160) extends past the right edge of the image (Width:48), which isn't allowed. Patches can only extend the tilesheet downwards.

humble timber
#

oh some of the new trees just dont have seasonals afaik

uncut viper
#

yeah winter is different for that one bc it doesnt need a different leafy texture

humble timber
#

or that

uncut viper
#

bc its dead

humble timber
#

arkeknine forgor that's where the change was lmao

uncut viper
humble timber
#

yeah.....

uncut viper
#

sad tree

wooden idol
open dock
# wooden idol

So is this essentially what it takes to put into content json?

#

or am I looking at this wrong still lol

wooden idol
#

and move textures around

open dock
#

So I literally need to steal mimic what you did there but with winter replacing everything?

wooden idol
#

yes

#

I still have things to do

#

also, grass.png needs to be edited

open dock
#

That's not too bad. Aseprite my beloved

next plaza
#

@brave fable Here you go - it's got latest develop in there as well... which means marriage schedules might be broken, I should probably look into that sooner rather than later

hallow prism
#

button : i have tested the GSQ for the fishing so far and it's working nicely ๐Ÿ˜„ now i mainly need ideas for the remaining stuff

open dock
#

Do I need to put all of the required maps/etc files into assets folder?

#

or does the game load it internally

lucid iron
#

i wonder if you could add achievements for befriending a group of npcs at a time

#

might need a script to traverse and determine groups tho

humble timber
#

where are these stars used ingame?

humble timber
#

man. cursors is such a mystery to me SDVpufferflat

hallow prism
#

(now stuff will likely take me a random amount of time because that's how modding is ๐Ÿ˜„ )

uncut viper
brittle pasture
#

I feel like there isn't enough NPCs/NPC mods to justify not just curating the list yourself

uncut viper
#

my justification would be i dont want to, but thats why i wouldnt be the one making the mod SDVpuffersquee seems like itd be a good thing to make an asset people can EditData into though for their own custom groups

#

(there are too many NPCs in Ridgeside alone for me to want to curate a list myself)

open dock
velvet narwhal
#

SDVpufferthinkblob i could probably throw that into the customfields

olive fulcrum
#

Okay so, I'm not home rn, but could someone show me an example of the correct usage of the addTemporaryActor event command?
Random request I know

uncut viper
open dock
#

I'm on that, I just don't really know what I need for this specific mod

uncut viper
#

if you wanna replace all the tilesheets with winter versions, then you need winter versions of those tilesheets in your assets folder to use for EditImage patches

open dock
#

This doesn't really help me out

uncut viper
#

thats not the content patcher documentation, thats just a wiki tutorial

open dock
#

oh I thought it was the doc lol

open dock
#

thanks

uncut viper
#

(the command should probably include a link to it tbh)

velvet narwhal
#

the cp command?

#

brb i go look at it

uncut viper
#

the startmodding command

rancid temple
#

Pretty sure there's a link on that page to it

uncut viper
#

or barring that, the wiki should probably call it documentation and not just a readme

rancid temple
#

Same for the CP command

velvet narwhal
#

content patcher's nexus page does have the git link iirc

rancid temple
#

Which is the excuse I was given last time I suggested adding that link on the command itself lol

velvet narwhal
#

well now WE ARE CHEETOS

uncut viper
#

(you are still not supposed to edit someone elses command without asking really)

velvet narwhal
#

that's fair

uncut viper
#

imo i dont like that excuse but, its not my command and im not a mod author, so. not my problem nor my consensus to make

pine elbow
rancid temple
#

Yeah

rancid temple
humble timber
#

OH

#

i see.....

#

thank you! still unsure what the other one is for but that helps SDVpufferthumbsup

rancid temple
#

Might be unused, looking in the decompile for it

humble timber
#

gotcha, tysm

rancid temple
#

Seems unused

open dock
#

where would the weeds file be at, if I may ask? bc that was... oddly easy.

humble timber
#

thonk..... interesting

open dock
#

Thanks, @wooden idol for letting me use your code to modify lol

#

or your content json rather lol

lucid iron
#

winterobjects

calm nebula
#

Okay

#

Those are springobjects

wooden idol
#

ironing out the last few massive fucking headaches

open dock
#

I think that bc I used your thing, there's something I need to modify further bc Spring and Summer look like winter, but fall is still fall

#

I wonder if winter looks like winter

uncut viper
# rancid temple Seems unused

level up menu, somewhere

if (this.isActive && !this.informationUp && this.starIcon != null)
{
  if (this.starIcon.containsPoint(Game1.getOldMouseX(), Game1.getOldMouseY()))
  {
    this.starIcon.sourceRect.X = 294;
  }
  else
  {
    this.starIcon.sourceRect.X = 310;
  }
}
#

LevelUpMenu.cs

rancid temple
#

Ooh, I see

humble timber
#

thonk

hallow prism
uncut viper
#

i dont remember what the level up menu looks like so ig if you hover over the star its the gold shiny one, unlit otherwise

humble timber
#

ohhh

#

guess i'll have to test that at some point then, tyty

rancid temple
#
int Random() {
  return 6;
}
#

I've been capped on level for so long, I forgot you can do that in this game

#

Huh, I don't see any stars in the level up menu

uncut viper
#

i was actually trying to test it just now and i cant actually- yeah

#

i have no idea when the star shows up

rancid temple
#

Oh

uncut viper
#

it only ever shows up if LevelUpMenu.starIcon is not null, but

#

its never assigned

#

so..

rancid temple
#

Yeah lmao

humble timber
#

thonk ok so maybe i can just ignore it lmao

uncut viper
humble timber
#

will do

uncut viper
#

i wonder what would happen if i assigned it

rancid temple
#

Cool things no doubt

open dock
#

I'm still not entirely sure where the weeds image is in content

rancid temple
#

Didn't atra say springobjects?

open dock
#

idk where that's at lol

rancid temple
#

Maps/springobjects mb

open dock
#

thank you

tender bloom
#

Itโ€™s at index 0 for the error item weeds

#

Other places for the real weeds

rancid temple
#

!springobjects this is the one with the wiki page isn't it

ocean sailBOT
#

Most vanilla object sprites are in the Maps/springobjects asset. See a table of springobject sprites by index.

Some newer object sprites are in TileSheets\Objects_2. You can check the entry in Data/Objects to see where its sprite is stored; SpriteIndex is the position, and Texture is the asset name (defaulting to Maps/springobjects).

humble timber
#

maybe i need to start lurking in here more often

rancid temple
#

Huh, well I can't remember who was asking for it earlier, but I could definitely make a mod that lets you interact with stuff at range without screwing with the way tools and weapons work

velvet narwhal
#

i'm just haunted by the noodle arm image now

rancid temple
#

Lmao, it works on doors too

#

I think I love this lmao

#

Picking all my crops with my brain powers is very funny to me

#

Oh right, the drawback there being that I can no longer interact with doors by running into them and blindly right clicking my screen

#

And just like that, I no longer love it

humble timber
#

LMAOO

#

rip.

#

make an exception for doors i guess?????
or just rewire ur muscle memory but that's harder

rancid temple
#

They wanted it for machines so I could also just literally make it do that

humble timber
#

ooh yeah

rancid temple
#

The problem with making it not do some things is that I would need to check every tile around the player and then change the logic depending on what I find

#

If I only make it work at range when looking for things specifically already in the clicking area, that's way easier

#

Still some potential issue there of like, walking into a door but you accidentally right click a machine

#

Though most don't have menus so it would only matter if you're holding something that can go in it

#

Maybe none have menus, I'm too tired to think about that

velvet narwhal
#

mini forge?

#

that's the only one i can think of off the top of my head

#

oh workbench

rancid temple
#

I dunno when Game1.player.onBridge is set but apparently you can't right click things when it is

#

Yeah, I mean technically I guess I'd be checking for big craftables most likely and that would include chests

tender bloom
#

Might be the GI bridge

#

That bridge is wonky wonky

open dock
#

Where in the game are these purple weeds from?

rancid temple
#

Mines?

tender bloom
#

I think mines maybe

open dock
#

Really?

tender bloom
#

Maaaaybe dangerous mines

open dock
#

I've never seen these, they look so cool

tender bloom
#

Or lava level?

rancid temple
#

I thought just lava levels

open dock
#

That would make sense ngl

rancid temple
#

There's a tiny little tea set

#

Or coffee maybe, I dunno lol

humble timber
#

winter star gift

#

...i think anyway?

tender bloom
#

Yes

#

The fabled winter star tea set

#

I actually think everything fully visible here is used except maybe the moon

#

I think the white stuff is part of the bomb animations

#

And the moon might be used somewhere random, I canโ€™t think of anything offhand but I wouldnโ€™t be surprised

humble timber
#

is it not the one that happens on the shipping screen full moon ?

#

idr how big that one is lmao

ornate trellis
#

the moon is in cursors i think, thats the one with the chance for a face, no?

humble timber
#

ah, yeah nvm ur right

#

wonder what that tiny one's for then

calm nebula
#

For me

#

It's for me to snack on

#

Nice and cheesey

lucid iron
#

atra i got identifiable combined rings working, u are right it was basically ported

calm nebula
#

Yay!

#

Thank you!

lucid iron
#

the thing im not sure about is the license blobcatgooglyblep

calm nebula
#

Mine is mit, yes?

lucid iron
#

yea its just that i barely made any change

calm nebula
#

And?

lucid iron
#

do i just include original license and call it a day

calm nebula
#

Feel free to add yourself to it!

lucid iron
#

incl the ยฉ๏ธ atravita thing

#

as for nexus i recall that you wanted new page so ppl can bug me instead, so ill do that

calm nebula
#

I have no clue how licenses work and won't be suing you anyways!

#

Thank you

tender bloom
lucid iron
#

well i did want to make some options for how the rings appear

#

so ill put myself there if i ever do the feature sleep

#

what is the nuance of MethodImplOptions.AggressiveInlining | MethodImplOptions.AggressiveOptimization btw

#

aka MethodImplOptions Hot

grizzled hinge
#

this is such a highly specific question, but what's the sound bank ID (or numerical filename) for the chomp sound used for collecting a fruit in junimo kart?

lucid iron
#

is it "eat"

grizzled hinge
#

it is eat. i don't know why i didn't check that one

#

thanks!

uncut viper
lucid iron
#

wow can we get that fixed for 1.6.9 \j

open dock
#

Sweet. Thank you, everybody who helped me with anything I needed lol

uncut viper
#

it wouldnt even really be a fix itd just have to implement it straight up

#

bc there was no indication of where it was supposed to be positioned so i just made it up

lucid iron
#

i do like this other star a bit more

#

its shiny :)

uncut viper
#

and even just assigning it doesnt work bc the code checks if the information is visible, and if it is, dont draw the star

#

but if the information isnt visible that means you've left the level up menu

#

:v

open dock
#

The only thing I need to figure out now is why Fall is still orange

#

also them weeds ugly

#

what's up with these tiles?

#

why in summer do they not get affected but the rest do?

lucid iron
#

did you try sleeping too

open dock
#

oh no i didn't. i was using console commands

quasi echo
#

Sorry to interrupt but does anyone know a good tutorial for making a portrait mod or a high res portrait mod?

open dock
uncut viper
grizzled hinge
wooden idol
#

How can I change the soundtrack to also be the fall soundtrack? (@open dock have you gotten around to that)

open dock
#

Soundtrack? no not yet.

#

I'm still working on making fall change to Winter

wooden idol
#

I see

open dock
#

Ok, I just got that working. I'll see if I can dig around and figure out music

quasi echo
brittle pasture
quasi echo
brittle pasture
#

you probably put it in the wrong folder or smth. I cant help further rn but pls post where you place it so others can take a look

pine elbow
#

really struggling with converting this hair, the front view just keeps not aligning properly and the back view is weirdly high up

#

i'm trying to convert it to FS, pink hair is delotti's preview

pine elbow
humble timber
#

honestly it looks like it could just go a pixel down and look as intended, if i had to guess it partially looks strange due to the clothes you've got in combination with whatever body type that is (...that's not the vanilla farmer body, right? lol)

pine elbow
#

no it's gh farmer body, same body as the preview pics tho

humble timber
#

hm

pine elbow
#

and the preview pic clothes don't extend over the pixels of the body shape either, same as the clothes I have rn while testing this. I'll try moving one pixel down with the back

#

this is gonna be a slow process for all the hairs yikes

brittle pasture
quasi echo
#

No, Im testing it out now, hopefully that fixes the issue

#

Omg thank you it worked

wooden idol
#

Nope

open dock
wooden idol
#

and it being 1:30 I think I am gonna go to bed tbh

open dock
#

Np, thank you for the help and the resources (and your json).

#

I'll keep working at it and I'll let you know if I get anywhere with it

wooden idol
#

yes please let me know if you manage to change the music :)

open dock
#

Can do. Have a good night.

tender bloom
# pine elbow this is gonna be a slow process for all the hairs yikes

You should be able to use the same settings for all the hairs, since they originally would all be done the same (assuming they used to be CP hair). In addition, you can use fs_reload in between changes to reload without launching the game, which should help make things go faster

brittle pasture
#

you want to change everything in Music to the fall tracks (or whatever seasons you want)

open dock
#

That doesn't sounds too bad ngl

#

So change where it says "Condition": "SEASON Spring" to say Winter for example?

#

on the track listed for everything other than the winter tracks?

brittle pasture
#

that's the condition, what that would do is make that track play in winter instead of spring

#

the Track field is the track

open dock
#

Ohh, so change the track field to winter

brittle pasture
#

winter1, winter2 and winter3, yes
though if you just want winter tracks globally what I'd do is remove everything but the 3 winter tracks, and set the conditions for those 3 winter entries to null to they play every time

open dock
#

And doing that won't make, like, special music (festivals and Abigail's Heart event) break, right?

brittle pasture
#

nope, those tracks will still exist in game files for events that want to play them

open dock
#

Sweet.

#

So like this (but remove "spring1": { under entries bc i forgot to do that lol)?

#

or do i put something else where it says "spring1"

brittle pasture
#

No, keep it
In fact you're missing similar lines above the other 2 ID lines

open dock
#

So put "spring 1": { above winter2 and winter3

brittle pasture
#

Also make them match for clarity, like "winter1": should be above "Id": "winter1", same with 2 and 3

#

Yes

#

Also what editor is that? Looks like notepad

open dock
#

it is lol

brittle pasture
#

Recommend using editors like Notepad++ or VSCode for JSON syntax highlighting and other convenient features

open dock
#

So like this?

#

I'll need to look into those actually. that sounds pretty helpful

brittle pasture
#

winter1, winter2 and winter3

#

but otherwise looks good to me

open dock
#

so change the spring1's to that or...?

brittle pasture
#

yes

open dock
#

ok

#

and do I need to put the LocationContexts.json into assets folder or no?

brittle pasture
#

oh yeah, once you're done, you also need to do the steps of nulling out the other entries
add lines like "spring1": null, to the Entries block

#

repeat with spring2, spring3, and other seasons

brittle pasture
open dock
#

ok, so I don't need an assets folder for this one?

brittle pasture
#

you can organize your mod in whatever ways you want

#

so you can put it in the assets folder, and then add a Load entry to content.json to load the file

open dock
#

If I don't use an assets folder for this mod, it'll work, right?

brittle pasture
#

it can work, as long as you either do the changes in content.json or have a separate file but Load it

open dock
#

What I'm working on rn is the content.json

#

Is this right or are those spring1 2 and 3 in the wrong spot?