#💻・modding-dev

1 messages · Page 530 of 1

wispy falcon
#

same

#

xD

split saddle
#

you can check out other mods that have a similar effect, or check the documentation of smods to see if there's something that can help, think of ways you can do it yourself (if you havent xd), or work on something else while you wait

wispy falcon
#

You know, I might just download a few random mods from here and try to understand the code behind them

clear ocean
#

so for this kind of voucher, do i modify the pool or something?

frigid birch
#

crashed when I bought the perry, says center is a nil value

wispy falcon
frigid birch
#

idk just says this

clear ocean
#

G.GAME.joker_rate.uncommon?

subtle merlin
tranquil gull
#

@tall wharf heads up The Psychic and other Not Allowed! blinds are kinda fucked on math deck rn

#

i shuol dprob update this

frigid cargo
#
if context.after then 
            if G.ARGS.chip_flames.real_intensity > 0.000001 then
                return {
                    dollars = card.ability.extra.dollars
                }
            end
        end

why is the dollars activating on the played hand and the hand after?

knotty orchid
#

is there any function from SMODS that shadows create_UIBox_your_collection_blinds ?

tranquil gull
#

yea no just updated it

#

it's still fucked

split saddle
#

sorry for the late reply xd

frigid birch
#

but there's another problem where the inator joker isn't getting destroyed

split saddle
#

give me a sec

clear ocean
#

what's the px and py for vouchers?

candid elbow
#

71x95

#

But smaller

#

Just like consumeables

clear ocean
#

👍

candid elbow
#

Red

clear ocean
#

its a placeholder

candid elbow
#

It looks good enough

#

Approved

split saddle
#

i, too, am prone to fucking stupid disease

#

try this one

#
if context.card_added and context.card.config.center.key == 'j_modID_jokerinator' then
      for _,v in ipairs(G.jokers.cards) do
        if v.config.center.key == 'j_modID_jokerinator' then
          v.getting_sliced = true
          -- this part was copied from dagger
          G.GAME.joker_buffer = G.GAME.joker_buffer - 1
          G.E_MANAGER:add_event(Event({
            func = function()
              G.GAME.joker_buffer = 0
              v:start_dissolve({ HEX("57ecab") }, nil, 1.6)
              return true
            end
          }))
        end
      end
    end
frigid birch
#

still not working

split saddle
#

what is the problem?

frigid birch
#

same as last time

split saddle
#

crash, doesn't destroy, ??

frigid birch
#

Doesn't destroy

split saddle
#

it should be working fine

#

wait no

#

i think that the code for destruction should be in the inator and not in the platypus

#

(in very Doofenshmirtz fashion)

#

how do you write his name (there)

frigid birch
#

perry?

split saddle
#

then the code changes a little

split saddle
frigid birch
#

Doof won't die wtf

#

same problem, not destroying

split saddle
#

the jokerinator gets destroyed when perry the platypus arrives

#

wait nevermind

wispy falcon
#

How do I destroy a consumable without it getting used?

split saddle
# split saddle wait nevermind

no yesvermind xd

if context.card_added and context.card.config.center.key == 'j_modID_perry_the_platypus' then
  card.getting_sliced = true
  -- this part was copied from dagger
  G.GAME.joker_buffer = G.GAME.joker_buffer - 1
  G.E_MANAGER:add_event(Event({
    func = function()
      G.GAME.joker_buffer = 0
      card:start_dissolve({ HEX("57ecab") }, nil, 1.6)
      return true
    end
  }))
end
split saddle
#

and make sure to mark it for destruction (for interaction purposes) with getting_sliced = true

wispy falcon
split saddle
#

card:start_dissolve()

#

card is the pointer to the card to destroy

#

so you'll need to first find your consumable and assign it to some variable (that is not card, because that one is already in use by the context)

wispy falcon
#

Could I use self todestroy itself?

split saddle
#

yeah

split saddle
wispy falcon
#

Okay, I'm gonna try that

#

It worked, thank you!

clear ocean
#

what do you think

wispy falcon
#

Ohhh, looks nice

#

Which one is it?

clear ocean
#

the home run one

#

thinking on either having either a fourth wall break with the voucher look like a broken glass or the baseball on flames

wispy falcon
#

I was thinking of the latter

red flower
split saddle
wispy falcon
#

Is there a way to use a consumable but have it not dissolve?

clear ocean
clear ocean
split saddle
clear ocean
frigid birch
#

aka when you buy perry, the inator joker in your hand gets destroyed

split saddle
#

how do i get the name of an enhancement?

split saddle
#

like turn m_gold into "Gold Card"

wispy falcon
#

Is there a way to use a consumable but have it not dissolve?

split saddle
red flower
red flower
wispy falcon
modern kindle
# wispy falcon Keeping it

keep_on_use(self, card) -> bool
Allows a used card to stay where it is or be moved to the consumables area from a booster pack instead of getting destroyed.

red flower
#

dilly did u look at the wiki

modern kindle
wispy falcon
stiff locust
#

how do i find the current play limit

red flower
#

G.GAME.starting_params.play_limit

stiff locust
#

will that be changed by SMODS.change_play_limit

red flower
#

yes

stiff locust
#

awesome

stiff locust
#

i'll assume yes

red flower
#

probably

frigid birch
#

what am i doing wrong

clear ocean
#

any way to change the chances of a rarity appearing in a shop?

frigid birch
#

the joker key is inator

stiff locust
clear ocean
#

outside of the art which thinking about i'll do later as concepting and then coding should go first

random sleet
#

so if i get this right: SMODS.scale_card doesn't.... scale.... the card? you still have to do that yourself?

red flower
#

it does, if you return the values im pretty sure

stiff locust
#

so if i get this right: SMODS.shrimp_fried_card isn't fried by a shrimp? you still have to fry it yourself?

clear ocean
red flower
#

rare_mod

#

for example

random sleet
#

um, what does it return

frigid birch
#

i hate how dumb i am

modern kindle
#

so, for this you just want only high cards being possible to be played?

red flower
fading kiln
#

is there a list somewhere of all G.GAME variables and tables?

red flower
#

you basically are doing it manually yeah

random sleet
#

so i still have to do all of this

clear ocean
#

G.GAME[key:lower() .. "uncommon_mod"] = G.GAME[key:lower() .. "uncommon_mod"] * 2?

#

something like that

split saddle
clear ocean
#

G.GAME.uncommon_mod = G.GAME.uncommon_mod * 2?

wispy falcon
clear ocean
#

thanks

red flower
clear ocean
#

and basically the same for the rare one just rare_mod instead

red flower
#

yes

split saddle
#

right i forgot xd

modern kindle
red flower
#

i dont think many mods will support this lol

random sleet
#

alright

#

it would make more sense if it actually

#

scaled the card

red flower
#

yeah but eremel didnt want to complicate incrementing a value, which I agree

random sleet
#

so instead you complicated incrementing a value instead of replacing incrementing a value

clear ocean
#

i have no idea if it worked right

random sleet
#

makes sense

clear ocean
#

does it print to the nearest number or something

random sleet
#

im not gonna support it til it makes sense

red flower
clear ocean
clear ocean
red flower
stiff locust
#

does anyone have a link to vanilla remade

clear ocean
#

woops

red flower
#

also this is the modifier not the weight

clear ocean
#

how do you change the weight

red flower
#

the weight is calculated in poll_edition

stiff locust
#

thanks

modern kindle
#

300 bucks

frigid cargo
#

w dilly

modern kindle
#

also N sorry i was helping giga but the wiki looks fantastic

#

you did a wonderful job

red flower
#

:3

#

thank u

frigid birch
#
            SMODS.destroy_cards(SMODS.find_card("j_CC_inator"))
        end```
still not working...
clear ocean
red flower
#

but whats not working

red flower
#

you dont need to change poll_edition

frigid birch
clear ocean
#

so G.GAME.[...]_mod = G.GAME.[...]_mod * 2 is correct?

red flower
#

yes

red flower
frigid birch
#

is that that one that says prefix?\

frigid cargo
red flower
#

dunno then

frigid cargo
#

wait what are you tryna do?

frigid birch
#

i have stumped the master

red flower
#

can i see the whole file

modern kindle
#

bless ive solved gigas consumable

#

we can all rejoice

frigid birch
modern kindle
#

its a not clean way im sure N couldve done it better but

#

if it works it works

frigid birch
#

I know the addPerry function worked, but idk about the other one

frigid cargo
#
"You see, Perry the Platypus,",
            "when I was a kid",
            "back in Gimmelshtump,",
            "the carnival had opened",
            "for an entire month.",
            "I asked my parents",
            "if I could watch the",
            "show, but they said",
            "no! On the last",
            "day, they decided",
            "to go to the fair,",
            "and you know who",
            "they took with them?",
            "My brother, Roger!",
            "From that day, I hated",
            "carnivals and its",
            "contents, so now with",
            "this inator, Ill destroy",
            "all the jokers and",
            "take over the Tri-State",
            "Area!!!",

such wise words

frigid birch
#

exactly

red flower
#

no idea, it should work

#

oh

#

i think i know what happened, how are you testing it?

#

and what's the intended effect?

frigid birch
#

i think we both had the same idea

#

i've been adding it manually instead of buying it

clear ocean
red flower
frigid birch
#

wdym then?

split saddle
red flower
split saddle
#

wrap it in {} and send it like that

clear ocean
#

i don't think i have one

split saddle
#

i'm trying to iterate through every enhancement and add their keys to a list but it crashes when i pull G.P_CENTER_POOLS.Enhanced.key, so what's the right way to do it?

clear ocean
#

the auto run code was made by the one and only dilly

frigid cargo
red flower
frigid cargo
clear ocean
ivory citrus
#

I don't understand why it doesn't work if, as far as I can see, everything is fine.

frigid cargo
clear ocean
#

strangely i can load into the blue card run i had to test so it looks it crashes when starting a new run but on the bright side

#

i believe the vouchers work!

#

@daring fern if you were curious

frigid birch
# red flower you probably want this
[SMODS ChaosControl "ChaosControl.lua"]:8: Error processing file 'jokers/jokers.lua' for mod with ID 'ChaosControl': [SMODS ChaosControl "jokers/jokers.lua"]:320: '}' expected (to close '{' at line 281) near 'add_to_deck'```
#

idk what to do

red flower
clear ocean
# clear ocean

thanks for the help nh once again you are a lifesaver but if anyone knows what is causing this i would greatly appreciate it

red flower
#

youre missing a comma

#

before add_to_deck

frigid birch
#

im gonna cry

split saddle
#

i think variable assignment isn't allowed inside of return, but then how would you pass this so that it actually enhances?

ivory citrus
#

then hello

frigid birch
#

he's still fucking there how do we kill doof

red flower
frigid cargo
#

I wanna do what clearance sale does except on a joker, how can i do that?

clear ocean
frigid birch
#

hey uhh react to this message with a thumbs up if we're giving up

clear ocean
# frigid birch hey uhh react to this message with a thumbs up if we're giving up

My Twitch stream intro!
🎮 Main Channel ➔ @NickEh30
🪙 Support-A-Creator code: NickEh30 (Epic Partner)

━━━━━━━━━━━━━

🎮 TWITCH ➔ https://www.Twitch.tv/NickEh30

📷 INSTAGRAM ➔ https://Instagram.com/NickEh30

🐦 TWITTER ➔ https://Twitter.com/NickEh30

🎭 FACEBOOK ➔ https://Facebook.com/NickEh30

...

▶ Play video
#

NEVER GIVE UP 🗣️🔥

frigid birch
#

i wanna

clear ocean
#

ok its the second voucher that's not working

#

maybe the requires is a table?

#

I GOT IT WORKING

#

it was because the requires is a table so keep that in mind folks

frigid cargo
rapid stag
#

doesn't work

manic rune
#

why the hell is stelle from hsr here

frigid cargo
modern kindle
#

Bepis

manic rune
#

turn on wildfire and she wont

#

:3

frigid birch
frigid birch
#

the one

lament agate
modern kindle
#

Im never cool enough for a bepis hello anymore smh my head

manic rune
#

😭

#

hi dil

rapid stag
#

bump, since the solution i thought worked, doesn't

lament agate
#

can we have this for Balatro

manic rune
#

i made a function to stylize your text faster

modern kindle
modern kindle
manic rune
#

no, me :3

modern kindle
#

Oo

red flower
#

i made a function to stylize text slower

modern kindle
#

Eat it

#

I made a function to N

manic rune
#

this basically adds C:inactive to the entire string while still repsecting existing C:

#

so u dont have to add C:inactive like 4 times anymore :3

frigid birch
frigid cargo
manic rune
manic rune
# manic rune no, me :3

theres also a toggle that you can turn on to override existing s:,C:,... (what the hell are those called)

frigid cargo
rapid stag
manic rune
#

take ownership.......

lusty glade
#

Hi!! i'm trying to make an enhancement change if the card is in hand at the end of round. However, i'm wondering how do I target the card in the hand for creating an event (I wrote G.hand but I don<t think that's an actual function)

anything that could help me out please?

crystal perch
#

calm little bump

daring fern
rapid stag
daring fern
rapid stag
#

cirDerp right

clear ocean
#

and they spawn naturally! (i spammed the voucher tag)

manic rune
# lusty glade
if context.end_of_round then
  for _,v in ipairs(G.hand.cards) do
    if v == card then
      G.E_MANAGER:add_event(Event({
        func = function()
          card:set_ability("enhancement key in here") 
        end
      }))
      break
    end
  end
end
#

probably smt like that?

#

i cant remember if enhancements need context.main_eval too

daring fern
manic rune
#

a

#

makes sense

clear ocean
#

and if nh is correct the voucher is down outside of art and localisation

lusty glade
pastel kernel
#

how do i replicate this?

The Deck of Absolute Hate -- Start with a random Busted Buffoons Joker. Selecting a Blind has a 1 in 10 chance to create a random Fantastic Joker, otherwise creates a random Joker that isn't from the Fantastic Pool.

clear ocean
#

is this mod open source? you can look at it for yourself

manic rune
tall wharf
manic rune
crystal perch
lusty glade
#

for adding the sprite of an enhancement on a card, should I use an atlas or a "set_sprite" function? :0

crystal perch
lusty glade
#

because I don't understand the difference lol

daring fern
manic rune
#

. oh, i thought they wanted the discount to work on jokers specifically

#

breh

daring fern
#

Because cost changes every time Card:set_cost() is called.

manic rune
pastel kernel
#

so

manic rune
frigid cargo
pastel kernel
#

do i skip the "if context" part and straight to SMODS.add_card?

manic rune
#

if you want the joker to discount everything then do what smtcom said instead actually

frigid cargo
#

ok

crystal perch
#
add_to_deck = function(self, card, from_debuff)
        G.E_MANAGER:add_event(Event({
            func = function()
                G.GAME.discount_percent = card.ability.extra.percent
                for _, v in pairs(G.I.CARD) do
                    if v.set_cost then v:set_cost() end
                end
                return true
            end
        }))
    end
clear ocean
#

what do you think about this

frigid cargo
daring fern
frigid cargo
crystal perch
#

and also add

remove_from_deck = function(self, card, from_debuff)
        G.E_MANAGER:add_event(Event({
            func = function()
                G.GAME.discount_percent = G.GAME.discount_percent - card.ability.extra.percent
                for _, v in pairs(G.I.CARD) do
                    if v.set_cost then v:set_cost() end
                end
                return true
            end
        }))
    end
#

so it reverses when you remove the joker

manic rune
clear ocean
#

is there any way to change the chances of the jumbo and mega booster packs to appear

#

this is another voucher idea

#

not sure if i should make it like +1 booster pack slot > +1 voucher slot or have that as another voucher set for booster packs

crystal perch
#

no joke you've somehow landed on the exact same voucher ideas as me 😭

#

i even got +1 booster > +1 voucher

clear ocean
#

i mean i am trying to keep it vanilla so its bound to happen 😅

frigid cargo
crystal perch
#

you know what they say about great minds...

clear ocean
#

the other voucher set idea is skipping a round or ante for a tradeoff

clear ocean
rapid stag
#

@red flower i may be wrong, but i think vanillaremade's glass card is wrong?:

when i try a setup like this, it never procs. i even removed the probability check to see if i was just crazy and it wasn't proccing even when it was supposed to always proc

i think it should be more like

if
  not card.glass_trigger
  and context.main_scoring
  and context.cardarea == G.play
  and SMODS.pseudorandom_probability(card, 'vremade_glass', 1, card.ability.extra.odds)
then
  card.glass_trigger = true
end

if context.destroy_card and context.destroy_card.glass_trigger then
  return { remove = true }
end

cirThink ? since to my understanding, context.destroy_card is only called when there are cards to destroy

clear ocean
#

maybe a consumerable or joker slot?

frigid cargo
crystal perch
#

speaking of vouchers my game crashes when i start a new run with a voucher enabled
the crash has nothing to do with the voucher's effect

rapid stag
daring fern
rapid stag
#

...huh

crystal perch
#

the only possible thing i can think of is that it requires "foresight" and the "for" in "foresight" is somehow making it think that it's a loop

modern kindle
clear ocean
red flower
crystal perch
rapid stag
#

oh, right. it was trying to iterate a string when it wanted a table

manic rune
#

how do i get this box to

#

stretch

#

uh

#

cover the empty space horizontally too

#

:3

rapid stag
#

tooltips are shear thinning fluids, you need to vigorously shake your monitor to get it to fill the space

red flower
manic rune
#

huh

red flower
#

do you have maxw or something

manic rune
#

i dont think i do

red flower
#

hmm no idea

#

i hate ui

manic rune
#

god damn it

modern kindle
#

Me too also

frigid cargo
#

man im gonna have trouble doing ui in the future if yall hate it now

red flower
#

uhh

#

the opposite of what i said

manic rune
red flower
#

yes

manic rune
red flower
#

what about replacing minw = 2 for minw = 7 or something

manic rune
#

pretty sure thats the width of the gray box beneath though

frigid cargo
#

how do i check if a card is an enhancement even if they werent part of the scoring group? So practically just part of hand played. (scored also counted too)

manic rune
#

G.play.cards?

red flower
frigid cargo
manic rune
#

i removed the entire G.UIT.R node

#

still didnt work

#

how the hell do i replicate the look of an info queue box.......

red flower
#

cant you.. use info_tip_from_rows

manic rune
#

im assuming its
box = {
name
box
}

for the look

vernal path
#

how do you call localize for a message already in the localization files, am i stupid?
SMODS.calculate_effect({ message = localize('k_upgrade_ex')}, card) this doesnt show up at all, it just shakes the card

red flower
#

that is correct

clear ocean
#

not sure if it should take your back or forward an ante

red flower
vernal path
#

this just shakes the card

G.E_MANAGER:add_event(Event({
                        func = (function()
                            card:juice_up()
                            SMODS.calculate_effect({ message = localize('k_upgrade_ex')}, card)
                            return true
                        end)
                    }))```
red flower
#

that should work

vernal path
#

it nearly works, it doesn't display the message tho

red flower
#

where are you doing it

vernal path
#

in context.before

#

in a calculate for a joker

red flower
#

why

vernal path
#

it upgrades when you play a flush

red flower
#

why are you calling the message manually

vernal path
#

i forgor, that was a holdover from when i did it later

#

whoops

red flower
#
return {
  message = localize('k_upgrade_ex')
}
vernal path
#

yeah, thats probably better, lol

frigid cargo
#

how do i check if card in a for loop is my enhancement?

manic rune
#

card:has_enhancement("enhancement key") if im not wrong

#

what the FUCK

#

i copied the ui code from info_tip_from_rows 😭

#

WDYMMMMMM

frigid cargo
manic rune
#

well on the bright side

i know it semi-looks like what i want if it DOES work

manic rune
frigid cargo
#

ah ok thanks

frigid birch
#

It works now

manic rune
#

nice

#

now work for my mod

#

bsr awaits your contribution

frigid cargo
manic rune
#

i means index, v means the value

for i,v in ipairs({1,2,5}) do
  print(i,v)
end
--[[
  > 1  1
  > 2  2
  > 3  5
]]

if you refer to v here then it should give you the card similar to G.play.cards[i] in your case

#

i remade the ui from scratch to remove maxw, still doesnt work

#

help

clear ocean
#

not sure if pogo should be the booster slot and unicycle the voucher slot or keep it as is

manic rune
#

i dont know what im doing wrong anymore

frigid cargo
old epoch
clear ocean
#

lets balance them then

#

maybe +1 ante for oli/mon?

frigid cargo
#

no -1 ante

frigid cargo
#

idk

old epoch
#

monarchy could def be +1 ante

clear ocean
#

and split pogo and uni for voucher and booster so one does one

#

would have to come up with a different naming scheme but yeah good idea

old epoch
#

not a bad idea

#

if you need the code for voucher and booster slots we can send you ours

clear ocean
#

wow really thanks

old epoch
clear ocean
old epoch
#

but antimatter requires picking up a useless and potentially harmful voucher beforehand (harmful due to the money requirement)

clear ocean
#

fair enough

old epoch
#

while CB is a base voucher

clear ocean
#

hmm do you have a suggestion instead of a consumable slot

old epoch
#

lemme think

clear ocean
frigid cargo
old epoch
#

lemme check the main game real quick

clear ocean
#

legendaries appear in the shop or have a higher chance of appearing in tarot/spectral packs?

manic rune
#

i dont, fucking know anymore

#

i added minw = 2 to all possible places that could affect the box's width

#

im gonna fucking change v now

frigid cargo
old epoch
#

id say maybe giving soul/black hole a 1.5x or 2x chance of appearing in packs, but my main concern is that its +1 ante for a gamble of soul/B hole

pastel kernel
#

correct?```lua
SMODS.add_card( set = "joker", key = "busterb_bustjokers" ) -- Spawns a random joker from the busted buffoons mod, pool = bustjokers, prefix = busterb

manic rune
#

no

#

set = "Joker"

#

and the key is wrong too

#

j_modprefix_jokerkey

clear ocean
clear ocean
#

@old epoch @frigid cargo is this okay

pastel kernel
#
    apply = function(self,back)
        SMODS.add_card( set = 'Joker', key = "j_busterb_bustjokers" )
end,
clear ocean
old epoch
manic rune
#

i SWEAR to god if this doesnt work

daring fern
clear ocean
#

okay 👍

old epoch
# clear ocean one or the other

id say a negative tag when beating boss, as it allows for the player to get a decent amount of jokers that have potential to be good, prob a trade worth 1 ante

manic rune
#

it doesnt

pastel kernel
#
SMODS.add_card({ set = 'Joker', key = "j_busterb_bustjokers" })
manic rune
#

WHAT AM I SUPPOSED TO DO 😭

old epoch
old epoch
manic rune
#

im gonna crash out holy fuck

frigid cargo
clear ocean
pastel kernel
#
-- Selecting a Blind has a 1 in 10 chance to create a random Fantastic Joker, otherwise creates a random Joker that isn't from the Fantastic Pool.
#

this is the other ability of the deck

old epoch
# clear ocean

Yep, i was thinking the joker slot one should be the tier 1 as well

clear ocean
#

since my original idea and the inspiration being the hieroglyph the theme should probably be like sci fi or something

pastel kernel
#

how do i make an otherwise condition?

clear ocean
#

like an elseif?

pastel kernel
#

use the same probability code but this time add an else?

old epoch
clear ocean
#

maybe about cloning or living for a long time?

old epoch
#

oooh, i like that

clear ocean
pastel kernel
#

and this means any joker, not limited to lesser jokers

clear ocean
#

Jim A or the Clown Wars

old epoch
#

not familiar, but i say go with it

clear ocean
#

kid a is a radiohead album based off the concept that if we did clone humans the first one would be named something like "kid a"

#

and the clone wars is a star wars thing not that knowledgeable either but its called the clone wars for a reason?

old epoch
#

those fit pretty well

clear ocean
#

ill think about it if you have any ideas let me know but formatted them

pastel kernel
#

current progress:

    calculate = function (self, back, context)
        if context.selecting_blind then
            if SMODS.pseudorandom_probability(back, 'busterb_fantasticjokerchance', 1, back.ability.extra.fantasticodds, 'busterb_fantasticjokerchance') then
                SMODS.add_card({ set = 'Joker', key = "j_busterb_Fantastic" })
            else
            local randjoker = pseudorandom_element(G.P_CENTER_POOLS.Jokers, pseudoseed('hatedeck')).key
            SMODS.add_card({ key = randjoker, edition = 'e_negative' })
    end
old epoch
pastel kernel
#

how about seals on every dev "something"?

#

what's your input?

#

or bepisfever

clear ocean
#

for the other one i would need to look into or see if it is possible where it can do something when a blind is completed and therefore if its a boss blind

vernal path
#

it is easy peasy to check for that 👍

clear ocean
#

yeah

vernal path
#

its one of the few documented contexts

old epoch
clear ocean
#

would it be possible to have a calc in a voucher?

jolly shadow
clear ocean
#

how the fuck did i miss that im literally on the wiki page i should get my eyes pulled out

vernal path
#

im the same way dont worry

formal quest
clear ocean
#

does there need to be a boolean or the api does that where it will only trigger the calc if you have it redeemed

formal quest
#

Generally you can just check VanillaRemade for things like this

daring fern
clear ocean
vernal path
#

if something only does things when it is added it would use the add_to_deck field, rather than calculate

clear ocean
#

well now let's see this in action

clear ocean
#

i forgot that 💔

modern kindle
#

🤔

formal quest
#

Vouchers also have redeem

frigid cargo
#
for _,v in ipairs(G.play.cards) do  
                if v:has_enhancement("m_btct_astral") then
                    astralcount = astralcount + 1
                end
            end

why does this just crash

daring fern
#

It's SMODS.has_enhancement

manic rune
#

waitit doesnt?

#

OH

#

yeah damn im falling off

manic rune
#

🥀

#

sorry

formal quest
clear ocean
frigid cargo
modern kindle
#

bepis is washed, mods cancelled

manic rune
#

mike delete ALL the mods

clear ocean
#
    calculate = function(self, back, context)
        if context.round_eval and G.GAME.last_blind and G.GAME.last_blind.boss then
            G.E_MANAGER:add_event(Event({
                func = function()
                    add_tag(Tag('tag_negative'))
                    play_sound('generic1', 0.9 + math.random() * 0.1, 0.8)
                    play_sound('holo1', 1.2 + math.random() * 0.1, 0.4)
                    return true
                end
            }))
        end
    end,
frigid cargo
frigid cargo
old epoch
manic rune
#

i think thats correct

frigid cargo
clear ocean
#

i fixed another bug and it solved itself

pure salmon
#

i want to create a deck that removes the Big Blind, how would i go about this?

old epoch
lusty glade
#

anyone knows what this error reffers to lmao? Like I understand that "Center" has no value but idk what "Center" is ;-;
Looking at the SMODS documentation there ain't a page lol

pure salmon
clear ocean
#

this is the only two left

pastel kernel
#

I might need some DrawStep help ngl 😭

clear ocean
manic rune
#

IT WORKS

pastel kernel
manic rune
#

RAHHHH

clear ocean
#

need to recharge 🪫🗣️

daring fern
clear ocean
#

its ALWAYS cryptid

pure salmon
#

reading cryptid code is a bit like tying your balls to a ceiling fan blade and turning it on

manic rune
clear ocean
pastel kernel
pure salmon
old epoch
#

fair, fair

manic rune
#

oh my god lmao

pastel kernel
pure salmon
manic rune
#

false

old epoch
modern kindle
#

my true army cannot be false

pastel kernel
#

YOU WERE SUPPOSED TO OBEY ME

clear ocean
hard flume
#

Hiii

pastel kernel
#

The 7 True… reactions:

lament agate
#

can you write a custom line

pastel kernel
#

Anyways

lament agate
#

for debugplus?

pastel kernel
clear ocean
#

like debug message?

lament agate
#

actually

#

scratch that

#

my plan was to make a custom message to shpw

#

in a crash log

pastel kernel
hard flume
# pastel kernel

Id redo the colors of the last one, if its meant to be an AVA ref. Color picking is your friend

pastel kernel
hard flume
#

Ahh! I have code for it, if you want?

pastel kernel
hard flume
#

Not exactly, but im pretty good at figuring stuff out. Just tell me exactly what you need. Like. Do you need them to move separately from eachother like souls or just layer them?

pastel kernel
#

It has 3 layers

hard flume
#

What's that from?

pastel kernel
frigid cargo
#

how can i make enhancement trigger only once and not all the cards with the enhancement that i have?

lusty glade
# clear ocean

welp lmao I still don't understand what "center" it is reffering to
It happens the moment that I try to apply a modded enhancement, which then I'm guessing it's searching for a sprite maybe? Because all of my required parameters for both my consumable and my enhancement supposedly :/

split yew
#

i feel like this should be simple but I've tried just about everything I can think of
I want to give the other lucky card proc on trigger with a joker, what am I doing wrong

sleek cliff
#

hey paizanos, I back to get help to figure out why this thing isn't working fully

the code does spawn the joker, but not destroy

subtle merlin
#

<@&1133519078540185692>

livid scroll
#

🔫

subtle merlin
#

thank you :3

subtle merlin
daring fern
daring fern
subtle merlin
#

ah, if that's what they want instead then yea they shouldn't use that

pastel kernel
#

help

sleek cliff
pastel kernel
#

Line 40 refers to ">>"

SMODS.Back {
    key = "hate",
    atlas = "atlas_hate",
    pos = { x = 0, y = 0 },
    config =  {
        extra = {
            fantasticodds = 10
    },
    },
    loc_txt = {
        name = "The Deck of Absolute Hate",
        text = {"Start with a random {X:spectral,C:gold}Busted_Buffoons{} Joker",
        "{C:green}#1# in #2#{} chance to spawn a {V:1,E:1}Fantastic{} Joker",
        "Otherwise spawns in a random Non-Fantastic Joker."}

    },
        loc_vars = function(self, info_queue, back)
>>    local fchance, fodds = SMODS.get_probability_vars(back, 1, back.ability.extra.fantasticodds, 'busterb_fantasticjokerchance')
    return {vars = {fchance, fodds, colour = {HEX('b00b69')}}}
    end,
    calculate = function (self, back, context)
        if context.selecting_blind then
            if SMODS.pseudorandom_probability(back, 'busterb_fantasticjokerchance', 1, back.ability.extra.fantasticodds, 'busterb_fantasticjokerchance') then
                SMODS.add_card({ set = 'Joker', key = "j_busterb_Fantastic" })
            else
            local randjoker = pseudorandom_element(G.P_CENTER_POOLS.Jokers, pseudoseed('hatedeck')).key
            SMODS.add_card({ key = randjoker, edition = 'e_negative' })
            end
    end
    end,

    apply = function(self, back)
        SMODS.add_card({ set = 'Joker', key = "j_busterb_bustjokers" })
end
}```
#

what do i do

subtle merlin
#

delete those arrows

modern kindle
#

the title screen is G.STATE.SPLASH right?
idr

pastel kernel
#

so you don't get confused

#

the actual file doesnt have that

subtle merlin
modern kindle
#

or is there a way to know if after a run is over the player selected to go to the main menu

pastel kernel
#

this is what the lua looks like atm```lua
-- Deck #1
-- SMODS.Back {

--}

--Deck #5 - The Deck of Absolute Hate

SMODS.Atlas {
key = "atlas_hate",
path = "hate.png",
px = 71,
py = 95
}
SMODS.Back {
key = "hate",
atlas = "atlas_hate",
pos = { x = 0, y = 0 },
config = {
extra = {
fantasticodds = 10
},
},
loc_txt = {
name = "The Deck of Absolute Hate",
text = {"Start with a random {X:spectral,C:gold}Busted_Buffoons{} Joker",
"{C:green}#1# in #2#{} chance to spawn a {V:1,E:1}Fantastic{} Joker",
"Otherwise spawns in a random Non-Fantastic Joker."}

},
    loc_vars = function(self, info_queue, back)
local fchance, fodds = SMODS.get_probability_vars(back, 1, back.ability.extra.fantasticodds, 'busterb_fantasticjokerchance')
return {vars = {fchance, fodds, colour = {HEX('b00b69')}}}
end,
calculate = function (self, back, context)
    if context.selecting_blind then
        if SMODS.pseudorandom_probability(back, 'busterb_fantasticjokerchance', 1, back.ability.extra.fantasticodds, 'busterb_fantasticjokerchance') then
            SMODS.add_card({ set = 'Joker', key = "j_busterb_Fantastic" })
        else
        local randjoker = pseudorandom_element(G.P_CENTER_POOLS.Jokers, pseudoseed('hatedeck')).key
        SMODS.add_card({ key = randjoker, edition = 'e_negative' })
        end
end
end,

apply = function(self, back)
    SMODS.add_card({ set = 'Joker', key = "j_busterb_bustjokers" })

end
}

#

when i try to look at my decks

sleek cliff
#

I know bepisFever was helping me earlier

pastel kernel
#

it gets an error

pastel kernel
sleek cliff
subtle merlin
pastel kernel
sleek cliff
#

Damn

pastel kernel
#

and it's talking about

local fchance, fodds = SMODS.get_probability_vars(back, 1, back.ability.extra.fantasticodds, 'busterb_fantasticjokerchance')
#

i don't know how to fix it

subtle merlin
#

solved:
to have a deck get variables from itself its self.config.[thing], not back.ability.extra.[thing]

pastel kernel
#

oh

subtle merlin
#

vanilla remade is so helpful i think N deserves something for it

modern kindle
#

i should buy him another game because he did the wiki

subtle merlin
# pastel kernel oh

if it still crashes (it shouldn't but theres a chance as i didn't test myself) then try changing back to self

pastel kernel
#
    colours = {HEX('b00b69')}}}
    end,```
(it's attempting to index 'colours')
#

it crashed when it tried to index colours

frigid cargo
modern kindle
#

hes one of my faves here

#

i like the guy alot

pastel kernel
#

works!

subtle merlin
#

cryptid is where i tap out, i don't touch it

frigid cargo
subtle merlin
#

it's held together with so much dark magic that satan himself told them to chill the fuck out

modern kindle
#

i look at cryptid and simply go hmm

pastel kernel
#

cryptid overrides drive me nuts sometimes

daring fern
pastel kernel
#

what am i doing wrong brahhh

modern kindle
#

whats the distinction between splash and menu i wonder

subtle merlin
pastel kernel
#

colours = {HEX('b00b69')?

#

it works, what about it?

subtle merlin
pastel kernel
#

lemme see

subtle merlin
#

alr then

pastel kernel
#

when i try to play the hate deck

#

it crashes

subtle merlin
#

i see cryptid, au revoir

modern kindle
#

cryptid more like..mid..pid..?

pastel kernel
subtle merlin
lament agate
#

the joy i felt

pastel kernel
#

if you were to make a deck that would spawn any random joker... wait, does my deck work properly?

pastel kernel
#

maybe, there's a problem with this?

    apply = function(self, back)
        SMODS.add_card({ set = 'Joker', key = "j_busterb_bustjokers" })
end```
subtle merlin
pastel kernel
#

that's a pool

#

it's looking for jokers from my mod, the pool is keyed "bustjokers" to refer to all my jokers

#

bleh ```lua

-- Jokers Pool
SMODS.ObjectType{
key = "bustjokers",
default = "j_busterb_spinel",
cards = {},
inject = function(self)
SMODS.ObjectType.inject(self)
end,
}

subtle merlin
#

that isnt how key works...

pastel kernel
#

ok then how do i write it?

#

the function of the deck is as is:

The Deck of Absolute Hate -- Start with a random Busted Buffoons Joker. Selecting a Blind has a 1 in 10 chance to create a random Fantastic Joker, otherwise creates a random Joker that isn't from the Fantastic Pool.

subtle merlin
#

get a pseudorandom_element from said pool and use it's key for key

pastel kernel
#

ok so

#
 local randbust = pseudorandom_element(G.P_CENTER_POOLS.bustjokers, pseudoseed('bustrand')).key
            SMODS.add_card({ key = randbust })```

like this?
subtle merlin
#

afaik yes

pastel kernel
#

Attempt to index local area

subtle merlin
#

-# PLEASE send the error that you get instead of just saying 5 words abt it

pastel kernel
#

Ok fine, I’ll recreate the errorr

subtle merlin
#

just

#

ctrl + c

subtle merlin
pastel kernel
subtle merlin
#

oh right add_card needs an area parameter

daring fern
subtle merlin
#

that- would actually make a lot of sense

pastel kernel
#

yes

#
    apply = function(self, back)
            SMODS.add_card({ key = 'bustjokers' })
end
#

i did use this code

lament agate
#

i have a question

#

big number = less more likely to appear?

daring fern
stiff locust
daring fern
lament agate
#

ohhhh okay

#

i see

#

whats the weight for foil

stiff locust
#

3

#

i believe holographic is also 3

#

and then polychrome is like 16

#

wait those might be the other way around

pastel kernel
#

And see if it works

sleek cliff
pastel kernel
#

like this?

daring fern
pastel kernel
daring fern
pastel kernel
subtle merlin
#

im making a joker that saves you from death, but i cant seem to figure out what to put in saved, it either shows "ERROR" or "saved by mr.bones"

daring fern
daring fern
subtle merlin
daring fern
pastel kernel
#

this happened as soon as i started with the deck

#

wait

unborn bay
#

event?

wintry solar
pastel kernel
#

there you go

#

it works just as planned

#

now to test out the "gives a random joker" ability

#

<@&1133519078540185692>

naive reef
#

boo

pastel kernel
#

ok so```lua
calculate = function (self, back, context)
if context.end_of_round then
if SMODS.pseudorandom_probability(self, 'busterb_fantasticjokerchance', 1, self.config.fantasticodds, 'busterb_fantasticjokerchance') then
SMODS.add_card({ set = 'Joker', key = "j_busterb_Fantastic" })
else
local randjoker = pseudorandom_element(G.P_CENTER_POOLS.Jokers, pseudoseed('hatedeck')).key
SMODS.add_card({ key = randjoker, edition = 'e_negative' })
end
end
end,

stiff locust
pastel kernel
#

i'll see what i can do

stiff locust
#

hehehehehehehe

naive reef
#

scary

pastel kernel
#

brah...

subtle merlin
subtle merlin
daring fern
pastel kernel
daring fern
pastel kernel
#

joker without an s

pastel kernel
#
        
if context.end_of_round then
            if SMODS.pseudorandom_probability(self, 'busterb_fantasticjokerchance', 1, self.config.fantasticodds, 'busterb_fantasticjokerchance') then
                SMODS.add_card({ set = 'Fantastic', area = G.jokers })
            else
            local randjoker = pseudorandom_element(G.P_CENTER_POOLS.Joker, pseudoseed('hatedeck')).key
            SMODS.add_card({ key = randjoker, edition = 'e_negative' })
            end
    end```
#

broken as hell

#

spawned the same joker over and over again at a rapid pace

#

didn't show on screen

#

it registered a sound file tho

wintry solar
#

You need and context.main_eval

pastel kernel
#

It works

#

Though it does not seem to uhh

#

I don’t know how to make it so that it blacklists jokers, so instead I’ll rewrite the description

#

1 in 10 chance It guarantees a fantastic joker.

velvet ingot
#

how can i make the jokers from my mod appear more frequently than other jokers

modern kindle
#

any bird enjoyers

tranquil cypress
#

woah

modern kindle
#

hi smt

#

i just have to fix the anims and clean up the hitboxes a little more and i think this one is done

lament agate
#
    calculate = function(self, card, context)
        if context.joker_main then
            local last_face_card = nil
            for i = #context.scoring_hand, 1, -1 do
                if context.scoring_hand[i]:is_face() then
                    last_face_card = context.scoring_hand[i]
                    break
                end
            end
            if last_face_card and context.card_eval and context.card_eval.other_card == last_face_card then
                return {
                    xmult = card.ability.extra.xmult
                }
            end
        end
    end
#

somehow not registering the last played face cards

#

any help?

daring fern
lament agate
#

fuck me

lament agate
daring fern
lament agate
hidden notch
#

I know that there's a load function, but is there also something like an unload function?
-# Like when I leave the Run to the Menu?

velvet ingot
#

does anyone know how to change the title screen title image and background colour?

daring fern
# lament agate last played face cards gives X1.5 Mult
if context.individual and context.cardarea == G.play then
    local last_face_card
    for i = #context.scoring_hand, 1, -1 do
        if context.scoring_hand[i]:is_face() then
            last_face_card = context.scoring_hand[i]
            break
        end
    end
    if last_face_card and context.other_card == last_face_card then
        return {xmult = 1.5
    end
end
lament agate
#

damnit

#

thanks

hidden notch
#

Nice an precise, thank'cha lewxen_ok

velvet ingot
daring fern
# velvet ingot cool! How do you do it?

You have an atlas with the key 'balatro' and the property of raw_key = true for changing the logo and you would redefine the draw steps for G.SPLASH_BACK for the background colour I think.

velvet ingot
daring fern
velvet ingot
#

it's not changing the logo

daring fern
velvet ingot
#

I just named the image newlogo.png

feral tree
velvet ingot
#

is it still supposed to be in the 1x and 2x folders?

velvet ingot
velvet ingot
#

hmm

daring fern
feral tree
#

Gotcha

#

Is it possible to make a joker take up more then one slot?

velvet ingot
#

got it working!

#

thanks!

#

now what about the background colours

daring fern
feral tree
#

can i have a joker debuff or rebuff adjacent jokers?

feral tree
#

How so?

#

I have the adjecent joker thing set, just not sure how to apply debuffed or buffed to the neighboring joker instead of itself

daring fern
buoyant thorn
#

could someone please direct me to the location of the sound effect code wiki?
thanks in advance

daring fern
buoyant thorn
#

ah!
i guess i missed it

#

appreciated

feral tree
#

wtf

velvet ingot
#

what was that?!

feral tree
daring fern
feral tree
#

Think im doing this wrong

daring fern
feral tree
#

explain

daring fern
feral tree
#

This???

daring fern
feral tree
#

got it

#

It works

#

Two questions

#

How would i make the joker itself immune to debuffs and can i make it remove a neighboring joker's perishable sticker?

daring fern
#

Yes.

buoyant thorn
#

what am i doing wrong?
path = { "sound.ogg" } play_sound("sound")
the wiki has so much room for improvement i swear

feral tree
buoyant thorn
#

oh!

#

i thought it was like config and the wiki didn't have an example
thanks

#

still doesn't exist?

daring fern
feral tree
daring fern
feral tree
buoyant thorn
#

still crashed...
path = { "sound.ogg" } play_sound("modprefix_sound")
even remembered to include my actual mod prefix this time
the file is in assets/sounds/
am i missing something?

knotty orchid
#
 create_tabs({
              snap_to_nav = true,
              colour = G.C.ORANGE,
              tabs = tabs
            }),```
is there anyway for each tab to have their own button colour?
daring fern
gilded blaze
#

what are you trying to do when blind is selected

subtle merlin
#

Turns out a hook didn't fully work, so now I'm trying to add a patch but it doesn't seem to be doing anything either, how would i write the patch to add the payload (as seen in the image) in the code that makes it so that you are saved by a joker? (im pretty sure it's either the target or pattern that's wrong)

feral tree
manic rune
manic rune
#

nice, guess im not that rusty yet :3

subtle merlin
manic rune
#

i think it might be because its an incomplete line? shrug

subtle merlin
#

ty!

manic rune
daring fern
manic rune
#

hm

#

lemme check smt, i remember having an issue like that

#

yeah no clue

#

3"

#

i remember making a bsr joker that has context.after trigger twice before, adding something to that helped but i forgot what exactly

faint yacht
#

context.post_trigger also works for held in hand card stuff too, assuming, as G.hand is mentioned there?

slim ferry
copper thorn
#

Hey ! i need help with multiple thing abt one joker, basically, i need the joker to give 100$ when bought in the shop, and i need the joker to switch the position of the discard and play hand button, how could i achieve those things ? (and it needs to play a song that doesn't replace the games music but don't worry 'bout this)

I've tried watching at other mods but couldn't find anything -_- and it is useless to share a screenshot of the joker as i haven't made anything expect the base like the Atlas and loc_txt and such

(and yes the joker is annoying on purpose)

slim ferry
#

there is a setting in the game that changes the play/discard buttons, you could try changing that setting maybe? idk if itll update instantly though

#

and for the money just put it in the add_to_deck for the joker

copper thorn
slim ferry
#

well first you need to find what the setting is called

faint yacht
#
if context.buying_card and context.card == card then ease_dollars(100) end
#

G.SETTINGS.play_button_pos which is 0 or 1.

copper thorn
#

mmmh mhhhhhh

#

ok but the G.SETTINGS.play_button_pos needs to change every X second how could i achieve that ?

faint yacht
#

Do stuff in the update function then.

copper thorn
#

logical enough

stiff locust
#

is it normal that updating steamodded should make all the colours more vibrant

daring fern
copper thorn
#

?

#

for now i have this what did i do wrong ? (ima begginer btw so it might be a dumb error)

daring fern
copper thorn
#

oh x) so from_debuff ?

daring fern
copper thorn
#

then nothing ?

daring fern
red flower
copper thorn
#

like this ?

red flower
#

the idea is correct but the syntax isn't, you put the code inside the other context check

copper thorn
#

f#ck

red flower
#

also please format your code

copper thorn
#

it's working for me and i don't get lost so... but i'll works around it if it really bothers people

red flower
#

it's not working for you because you just made a mistake cause of it lmao

#

just right click > format

copper thorn
red flower
#

yes

copper thorn
#

i formated it

#

(i got rid of the other context check ima work on it after)

daring fern
faint yacht
#

i.e. calculate = function(self, card, context)

red flower
#

😭

faint yacht
#

-# I need to go 'eep, but my mind is locked on post_trigger-like context for if a held in hand card has any valid effects... need that context.card_effects.

copper thorn
#

it works now yh but i don"t know how to make the G.SETTINGS.play_button_pos change every blind,

hidden notch
#

This has been bugging me for a while and now I wanna ask:
How do you juice_up the Blueprint-Card?
I tried to see if the Context was context.blueprint and call context.blueprint_card:juice_up() or just context.blueprint:juice_up()
I tried the code from Vanilla Remade: (context.blueprint_card or card):juice_up() or also the if-else from the certificate joker....
In all cases it just juices up the original card again ^^'

#

Ah, I figured it might've been that...:
When you use (for example):
(context.blueprint_card or card):juice_up()
Before returning, everything works fine.
BUT, if you use that same function IN a return, than it doesn't work;

-- Quick and Dirty example:
return {
  func = function()
    (context.blueprint_card or card):juice_up()
    return true
  end
}
#

Welp, consider my Question answered, thank you for comming to my Ted-Talk shrug_yui

gilded goblet
#

i would like to know if the way im implementing a joker is sane but i dont wanna flood the chat with my code

#

i feel like im doing something wrong performance-wise or inefficiently

#

oh fire im just gonna post an image

bold sleet
#

Help, my stake is being stupid.

latent perch
# gilded goblet

it's aight, but I think you should use a local tally variable for calculate and for loc_vars, then you don't need to save it to ability.extra.lucky_cards
I'm doin it like so:

gilded goblet
#

yeh ive been following along with that

red flower
#

prefix_config = { applied_stakes = { mod = false } },

gilded goblet
latent perch
red flower
bold sleet
#

so, fuck should I put?

#

To have it as a future reference

red flower
#

what i said

bold sleet
#

I don't know where you want me to put that code snippet.

red flower
#

in the stake

#

oh wow this is in the docs

surreal knot
#

Also i think itll be important to add unlocked_stake = "whatever stake you want"

bold sleet
surreal knot
#

And SMODS.Stake:take_ownership('whatever stake you want, {applied_stakes = {"prefix_pink"}, above_stake = "prefix_pink"})

red flower
#

if i say things and they get ignored there's no much i can do lol

candid elbow
#

Shoutout makson

surreal knot
#

I just have taken it from Bunco when tried to make my own stakes lol

bold gyro
#

hey y'all, how do you refer to an atlas from a different mod? i've tried putting the mod's prefix in front of the atlas name but that doesn't work

red flower
#

i think you need to use the prefix_config to remove your mod's prefix from the atlas

lusty glade
#

hi! i'm trying to add enhancements with the use of a consumable but it seems that i'm missing something because it gives me a ''center'' error ;-;. I tried to copy the Vanilla example mod but it isn't quite right. Anyone got a clue please?

red flower
#

m_[mod prefix]_Copper_v1

lusty glade
#

So its just a naming problem?

red flower
#

yes

lusty glade
#

damn ;w;

red flower
#

the key for your enhancement is fine, the problem is that you need the full key when converting

lusty glade
#

ooooooh

#

so the m_[mod prefix] is like to tell it where to search?

red flower
#

yeah

#

so that there aren't conflicts between mods

lusty glade
#

ye alr that makes sense

#

ty!! i'll try it right away

red flower
#

huh? does the game never load the deck on reload? or am I missing something in the code?

gilded goblet
#

today i found out canio is misspelled in the code 🥀

manic rune
#

does he know

midnight coyote
#

how do i see how many times a hand has been played

#

wait shit i have a card that does this

#

nvm lmao gimme a sec

manic rune
#

how do i turn on stencil for balala again

midnight coyote
manic rune
#

amazing, thank you kind sir

midnight coyote
iron skiff
#

hello folks, i have a question, can i change the resolution of the playing card for my custom deck?

gleaming crescent
#

I couldn't find a way of unlocking a joker upon obtaining a consumable, so I did this

candid elbow
mossy orbit
lusty glade
lusty glade
#

yes give me a moment

#

I can;t put the entire thing in a single SS lol

red flower
#

you can copypaste it here

lusty glade
#

wait I can? (lmao sorry i'm new to this)

red flower
#

yeah

lusty glade
#

oh wow nice

red flower
#

also did you change both mod_conv?

lusty glade
#

I did for both my enhancement and consumable config

red flower
#

is tinbox the correct prefix?

lusty glade
#

going in mt mod.json it should be

red flower
#

you have a copper_v2, right?

lusty glade
#

could it be the _v1 of my key name that is ccausing the issue perhaps?

lusty glade
red flower
#

may i see it

lusty glade