#💻・modding-dev

1 messages · Page 215 of 1

stiff locust
#

if I remove the info queue, it doesn't crash

solar eagle
#

how do i access it?

tall wharf
#

@opal spade have you seen the editions i did 😭

#

janky shader code

dusk harness
# solar eagle how do i access it?
local start_run_ref = Game.start_run
function Game:start_run(args)
    local availableCards = getDataFromSaveState(args.savetext.cardAreas.shop_jokers)
    local availableVouchers = getDataFromSaveState(args.savetext.cardAreas.shop_vouchers)
    local availableBooster = getDataFromSaveState(args.savetext.cardAreas.shop_booster)
    print(JSON.encode(jsonify(availableCards)))
    print(JSON.encode(jsonify(availableVouchers)))
    print(JSON.encode(jsonify(availableBooster)))
    start_run_ref(self, args)
end
``` its the `args`
quartz ravine
#

Weird...when I call card:set_edition and use negative, my consumable works. But if I use my own edition I have made which has almost no fields defined other than key and the minimum fields, the game crashes with an error from smods saying p_edition is nil

dusk harness
#

thats my use case of the function but you should be able to start from there

novel violet
#

Shiiiiit I totally neglected the local declaration being in the wrong scope 😭 I just threw the if statement together to see if that'd fix it without actually cleaning it up
Ty though! I'll try that shortly

opal spade
dusk harness
#

so when its supposed to generate the UIBox for the card?

stiff locust
#

for the info queue for the enhancement, yeah

#

i know it's not the tarot itself

opal spade
#

SMODS.Center.load runs on continuing a run and loading the card from save

solar eagle
#

this would be exactly what i need, my goal's just to reset a variable on game reload

#

defined on the joker itself?

opal spade
#

ye

solar eagle
#

lemme go look

opal spade
opal spade
acoustic sundial
#

Is it possible for me to make an effect like "when this joker is destroyed"? I've been playing with a few different contexts and nothing seems to fit.

tall wharf
dusk harness
opal spade
tall wharf
#

yep

opal spade
#

janky jank

dusk harness
#

because what happens on that line is
all cards that have a name that isnt stone card if they have specific vars and they have the bonus_chip param or the cfg

quartz ravine
#

these jokers are amazing, @tall wharf ! You even have an animation next to the side of one showing the hand change!! Amazing

dusk harness
#

they trigger the line

#

another idea i have is, specific vars should be an empty table in most cases if i remember my dive into localization correctly

tall wharf
#

blame my 4am sound design

dusk harness
#

so maybe just set the loc_vars of your card to an empty table if you dont have variables

dusk harness
dusk harness
solar eagle
#

figuring out what to access for what property was kinda goofy

novel violet
#

dori no longer crashes the game by being hovered over LFG

dusk harness
#

where is that line from? because its a weird line in general

stiff locust
#

common_events.lua

#

cfg is defined on line 2920 at least in my dump

quartz ravine
#

Ok, Steammodded seems to crash when using set_edition to set a custom edition. I need to see how cryptid is handling this. If I don't set the edition with an e_ prefix, then it throws from an assertion, but if I do, then the edition is not listed in the edition table

stiff locust
cerulean rose
stiff locust
#

e_prefix_editionkey

stiff locust
#

to the end of round check

quartz ravine
stiff locust
#

no it's a prefix for all modded objects you make

#

each mod has a prefix

#

like cryptid's is cry, and tsunami's is tsun

#

it goes before the object key to determine which mod owns what thing

cerulean rose
#

also prevents name conflicts

stiff locust
#

if you didn't set one, it defaults to the first 4 letters of your mod key

#

iirc

#

you should set one yourself

cerulean rose
stiff locust
#

it won't be able to find your edition without the prefix included

quartz ravine
#

my mod prefix is fox, does that mean that I would use card:set_edition('fox_ghostRare', true) to set the edition then?

tall wharf
#

e_akyrs_texelated

cerulean rose
#

class prefix

quartz ravine
#

wow I would never have figure this out

#

Let me try it...

stiff locust
#

class prefix is the e_ for editions, j_ for jokers, etc

#

class prefix, mod prefix, object key

red flower
# cerulean rose

isn't it triggering three times because you are specifying 3 different areas for it to trigger?

cerulean rose
tall wharf
cerulean rose
green mica
#

Is there a context I could use for when a seal is applied to a card?

#

Welp

dusk harness
#

another idea, reading the code, is to set an empty table as your card.config param

red flower
green mica
#

My solution is kinda janky so I was hoping there was a better way

quartz ravine
#

Ok thanks for the help folks, looks like it still fails with that p_edition error, but I appreciate it 🙂

stiff locust
cerulean rose
#

trigger on end of round no matter where it is

stiff locust
#

what is the object

cerulean rose
#

enhancement

turbid maple
#

I'd like to juice up a Joker until a Blind is selected, are there any useful variables in the base game for that

cerulean rose
#

its supposed to die at end of round once the counter hits 0

manic rune
#

bump

dusk harness
stiff locust
red flower
stiff locust
#

config = {},

cerulean rose
stiff locust
#

context.main_eval should fix that

manic rune
#

or at least, dna seems to be using something similar to that (i haven't checked what function it uses)

stiff locust
#

but you say that doesn't work

#

works for me so idk what to tell you

cerulean rose
#

it triggers no times

turbid maple
#

I was gonna ask how I can check when to stop then I just realized I can just set a variable when the Joker receives a setting_blind context to stop juicing

#

I'm slow

dusk harness
red flower
#

hmmm enhancements are weird

tall wharf
#

is it not just get_chips or something like that

manic rune
#

oh, i can just use :get_chips()?

#

thats convenient, thank

cerulean rose
tall wharf
#

i think there's a function with similar name to that

stiff locust
#

until there has been a release for this mod

manic rune
#

hopefully that will also account for bonus card enhancement

#

else i will probably hard code that in

#

😭

stiff locust
#

which i can't do while there's a hover tarot crash

red flower
dusk harness
#

why is it reaching in the set for cards when you're rendering a tarot? shouldnt the set for the tarot be tarot?

stiff locust
#

I have no idea

manic rune
#

oh wait, the retrigger 3 times at end of round

stiff locust
#

the set for the info queue is Enhanced

cerulean rose
manic rune
#

i fixed that in my mod, lemme check the code rq

dusk harness
red flower
stiff locust
#

the tarot displays the info queue for the enhancement it applies

#

which uses the Enhanced set and the correct class prefix and mod prefix and object key yes

dusk harness
#

i dont really understand the info queue thing

stiff locust
#

it's the little information boxes that show up next to a card

#

like how Perkeo tells you what negative means

#

Steel Joker tells you what a Steel Card is

manic rune
#

...nvm its the same code as the above, weird

cerulean rose
stiff locust
#

you put an info queue in which references a localization entry in a certain area

red flower
stiff locust
#

in this case being the Enhanced set containing my enhancement

red flower
#

maybe print the contexts to see what's the difference

cerulean rose
#

was just doing that

stiff locust
#

oh my god wait

#

is it because i'm using the seal method

#

instead of the enhancement method

dusk harness
#

rubber ducking for the win

stiff locust
#

what's that

cerulean rose
#

ok so context.playing_card_end_of_round works???

dusk harness
#

usually its just explaining the problem out loud to a rubber duck sitting on your desk, and then solving the problem by yourself because you were explaining what was happening

stiff locust
#

that was it.

dusk harness
#

but in this case its just two people discussing the how your code runs and you figuring it out

stiff locust
#

I don't know why that method didn't work but

#

fucking hell okay well I solved it

#

I was using the wrong method to get the info queue

red flower
stiff locust
#

I forgot enhancenemts use G.P_CENTERS.enhancement key

cerulean rose
#

lol

stiff locust
#

seals use the set and key of the localization (which should work anyway??)

edgy reef
#

q

#

at

#

cat

cerulean rose
#

qat

red flower
dusk harness
#

i dunno remember this game was made by an indie on his own time expecting to sell about 5 copies so

manic rune
# red flower

holy shit i literally got a video about zen this morning 😭

#

is it good

stiff locust
#

it's working

#

the retrigger works too

#

i can move on to the next thing finally

dusk harness
#

LET GOOOOO

#

GG

red flower
stiff locust
#

unrelated bug I found in tsunami when doing this

#

when starting a run that redeems a voucher, then leaving and continuing the run, the voucher gets stuck on the screen

dusk harness
#

back to my problem, anyone has any idea on how to get the cards that are rendered inside of a booster pack?

cerulean rose
#

i also got my thing to work 🎉

red flower
#

or do both work

stiff locust
#

it's one of the two

dusk harness
#

G.pack_cards didnt seem to have anything interesting earlier when i checked

cerulean rose
#

G.pack_cards is a cardarea

#

so G.pack_cards.cards

red flower
#

i use both card.config.center_key and card.config.center.key in my mod lol

#

i should pick one

dusk harness
#

it didnt have a .cards

#

i think

red flower
#

maybe you're looking at it before it is created?

#

also where are you looking for this? if it's for a joker or something with calculate I think there's a context for it

dusk harness
#

in G:update_baffoon

red flower
#

what are you trying to do

dusk harness
#

get the card entity from a booster pack, any type

red flower
#

yeah but for what purpose

rough basin
#

is there any context for when an ante changes? i want to make a joker that resets its values every time an ante changes but im not sure how to accomplish that

dusk harness
#

i have the whole framework to read the data i need as long as its a Card

red flower
dusk harness
red flower
rough basin
#

thanks for the help

rough basin
dusk harness
#

so like inside of G:update_shop if G.STATE == G.STATES.BAFFOON_PACK

red flower
#

yeah

#

maybe not update shop but just update

#

but try both

dusk harness
#

oh

#

so even if you use hierogliph or petrogliph it triggers, im stoopid

dusk harness
rough basin
red flower
manic rune
#

havent been able to find that :get_chips thing ngl

#

oh nvm 🔥

distant grove
#

fire

mellow marsh
#

anyone have any ideas on what's going on here? the last line in the screenshot is crashing because it's comparing a number to a table

plush cove
#

do you have talisman installed

mellow marsh
#

ya

red flower
#

talisman compat 🔥🔥🔥

manic rune
#

we love when numbers become tables ❤️

mellow marsh
#

i figured it was likely talisman, was about to say i'm trying to figure out compatibility with cryptid

rough basin
dusk harness
#

can someone do me a crash course on why talisman compat?

red flower
#

talisman turns numbers into tables to get bigger numbers
lua not likey when compare table to number

old bane
#

dang it

mellow marsh
#

how would i support this? cuz i would like if i could get it to work

red flower
manic rune
red flower
#

that

manic rune
#

so Foil doesnt seem to count 😭

mellow marsh
manic rune
#

probably gotta hard code editions in then

red flower
mellow marsh
#

interesting okay

#

that's not too bad then

old bane
#

i wonder if it's possible to like

#

make a joker that when you run out of cards in your deck you just redraw them from the "discard pile"

red flower
#

so the graveyard

old bane
#

ye

#

infinite deck go brr

manic rune
#

where are the edition keys being stored?

old bane
manic rune
#

oh no, like, where do i find all of the editions keys

old bane
#

SMODS.Editions may also exist

manic rune
#

(shouldve specified that, sorry 😭)

old bane
#

much like SMODS.Suits and stuff

red flower
#

isn't it in the same place as P_CENTERS

#

like the table below that

manic rune
#

...oh

red flower
manic rune
#

yeah i see, thanks :D

rich roost
#

Is there a good resource for getting up to speed with the file structure, objects and code?

dusk harness
#

ok so checking G.pack_cards works but i need to check that G.pack_cards.cards[1] is not nil and then set a custom bool to true so it stops spamming, and i can call it inside of the Game:update_baffoon func

manic rune
#

this will probably not account for the edition's value being changed for only one card, but ehhhh

dusk harness
# dusk harness ok so checking `G.pack_cards` works but i need to check that `G.pack_cards.cards...

like this

local gotBaffoonContent = false
local update_baffoon_pack_ref = Game.update_buffoon_pack
function Game:update_buffoon_pack(dt)
    local return_val = update_baffoon_pack_ref(self, dt)

    if
        G.pack_cards ~= nil
        and G.pack_cards.cards ~= nil
        and G.pack_cards.cards[1] ~= nil
        and gotBaffoonContent == false
    then
        gotBaffoonContent = true
        local boosterContent = getAllCardContents(G.pack_cards.cards)
        print(JSON.encode(jsonify(boosterContent)))
    end

    return return_val
end
old bane
rich roost
dusk harness
#

and just working on your mod and talking to other people, thats how i mostly learned

tall wharf
#

guys my mod main file finally reached a milestone

dusk harness
#

how many lines

#

i wanna hear it

tall wharf
#

30

dusk harness
#

thats it

old bane
dusk harness
red flower
#

my mods main file is a bunch of assert(SMODS.load_file

dusk harness
#

not a flex nor a complain, just confusion

rich roost
manic rune
#

my mod files are extremely unorganized ❤️

dusk harness
red flower
#

if you don't care about the order you can just load all files in the folder

dusk harness
#

i still need to organize mine, but ill start by getting it to work first once its working we refactor

manic rune
#

this is my main.lua, its so random 😭

dusk harness
#

its fine mine is too dont worry

tall wharf
#

has anyone done sound design on custom editions

#

i don't think my texelated sfx works

#

as it not fit

manic rune
#

what is this "extra" thingy for

red flower
#

I think it was the type of message, extra makes it orange

manic rune
#

o, i see

red flower
#

added this to the main file recently so i dont forget to change debug flags before pushing lol

dusk harness
#

and i guess that debug.lua is in the git ignore?

red flower
#

yeah

dusk harness
#

not a bad idea

manic rune
#

currently tryna using this code to make my Joker announce the chips value of all the playing cards played

wintry swallow
#

is there somewhere i can find a list of all the available colors within localization & text

manic rune
#

but the message is left for when the whole hand is played and scored

red flower
manic rune
#

got it, lemme try

wintry swallow
#

thank you!!

tall wharf
#

teto kasane teto

manic rune
#

(why the fuck did i get invisible joker at ANTE 2)

old bane
#

how do i make it so that my custom stake is in between two vanilla stakes?

tall wharf
wintry swallow
#

hello it is i kasane teto

manic rune
tall wharf
#

teto kasane teto

manic rune
#

teto

tall wharf
cerulean rose
tall wharf
#

not teto wrong video

#

do i not have teto saved on my phone

#

blasphemy

red flower
red flower
manic rune
#

oh, i suppose that works too, if the timing for its intended functions is off then i will fix it later, thanks ❤️

tall wharf
#

British English in Balatro source code 💔

dusk harness
#

is there a smods even for opening packs i would need to hook into if i want to be able to check all packs even modded ones?

red flower
#

just hook into calculate_context and check for context.open_booster

dusk harness
#

context is always empty when i tend to check it

red flower
#

weird because I do that

dusk harness
#

i also want to stay away from smods as much as possible because the less i use smods the easier it is to transform my mod into a stand alone app

dusk harness
#

yes

#

i know what i asked

#

im trying to make a stand alone app for streamers who want to play full vanilla

#

and a mod for those who dont mind playing vanilla but have like utilities installed

#

but might as well support the fully modded game if im making a mod right

red flower
#

ok but what does that have to do with your question you can't check for smods boosters without the user having smods installed

#

you can do the vanilla check or the smods check if they have it

dusk harness
#

its not gonna be a part of the app but part of the mod

#

exactly

red flower
#

im confused

dusk harness
#

lets move to my topic so we dont pollute this chat

manic rune
#

...oh i remember the original purpose of what i was doing with this 😭

manic rune
#

i wanted it to select a number of cards in the played hand

#

then increase the joker's var by their chip value

#

using context.individual and context.cardarea == G.play doesnt seem fit with this

green mica
#

How do make a card flip while it's gaining an enhancement or something so you can't just see the card while it's changing

manic rune
#

:flip()

#

then enhance it

#

then :flip() again

green mica
#

ohhh okay okay awesome

#

I think I saw that in the docs earlier but I forgot

manic rune
#

smt like this rite

tall wharf
#

hi

#

my name is

manic rune
#

aikoyori the shenanigans

#

:3

plush cove
sturdy compass
#

shenanigannery

manic rune
#

heres the cursor if yall like it ❤️

turbid maple
#

migu...

plush cove
#

i'm using a rin penrose cursor

manic rune
#

absolutely free too, and its animated

#

peak

tall wharf
#

rin penrose

manic rune
#

sadly no teto cursors

tall wharf
#

when people realise pixel art is not easy

manic rune
#

it is indeed not easy

turbid maple
#

real

tall wharf
#

but less pixel

#

easy

#

people be like that

turbid maple
#

mod development is stunted by my inability to draw well

tall wharf
turbid maple
#

same but it takes forever

tall wharf
#

a few hours

plush cove
#

that hasnt stopped me

turbid maple
turbid maple
#

JEVIL STAR RAIL!?

manic rune
#

id be surprised if my mod even somehow has all of the art done before release 😭

manic rune
#

highly suggest getting him

tall wharf
#

it's a chair 😭😭😭😭

manic rune
turbid maple
#

im trying to draw an anime girl's fancy ass chair that I can barely find references of

tall wharf
#

i mean

turbid maple
#

nagisa

#

yes

manic rune
#

wdym that one chair

#

😭

turbid maple
#

chair in question

manic rune
#

OH

turbid maple
#

way too many curves and little parts man!!

manic rune
#

isnt this the same

#

:3

turbid maple
#

True..

tall wharf
manic rune
#

yeah

tall wharf
#

at least it's not this

manic rune
#

fancy ass wheelchair

turbid maple
#

an entire ass wheelchair

manic rune
#

she probably has more mobility in that compared to me with fully functional legs tho 😭

turbid maple
#

idk I just keep getting vibe checked when trying to draw the little fancy details and the backrest in a tiny pixel art image

iron iron
#

is the code alr becaue the mult isnt going up apparently

plush cove
#

try changing it to G.play.cards instead of just G.play

manic rune
#

ive made a joker which supports foil and bonus cards :3

tall wharf
#

what if i help u

manic rune
#

i feel like if we were to ever add cross mod content, you would add shi to make the mod much more difficult 😭

red flower
#

cross mod content with joyous spring where it puts a virus in ur pc

manic rune
red flower
#

why did i stylize my mod wrong

manic rune
#

false

#

oh actually, does :get_chip_bonus account for hiker

#

lemme check

red flower
#

it should i think

manic rune
#

oh sweet it does

#

suggestions on how to make this look cleaner?

manic rune
#

page 2 is already long enough :3

dusk harness
#

i feel like they need to be narower

#

because thats a THICCC box

manic rune
#

mhm

rough furnace
#

is this targeted?

tall wharf
#

new boss blind coming

manic rune
#

the fuck did i mean "giggidy"

#

😭

plush cove
manic rune
#

i mean, thanks myself???

#

i have no clue what the fuck i meant by "the thingy" either

#

💔

iron iron
manic rune
#

6:99 😭

gleaming zealot
manic rune
#

context: a joker has those functions which uhhh, shouldnt they only be running when each card is scored?

plush cove
manic rune
#

because it calculates so early, it didnt account for the debuffs later

#

bruhhh 😭

#

this is ruining my day

iron iron
robust jolt
#

Had a couple ideas for some more decks so I'm gonna get those done today and try to upload the mod today

manic rune
iron iron
#

wait lemme check again rq

tall wharf
#

it's been a while

#

development resumes tomorrow

manic rune
turbid maple
#

damage taken?

iron iron
#

i fucked up lol, ik why the xmult is triggering so much, ill fix that but why are they getting destroyed?

manic rune
#

jokers which work like "Played cards with Spade suit give +5 Mult", and basically all DoTs count as attacks

tall wharf
#

meow

manic rune
#

which can become stronger when the playing cards they are "attacking" have debuffs, like DEF Reduction and DMG Taken

manic rune
iron iron
#

ik that

#

im talking about the destruction

#

at the end

manic rune
#

that looks intentional

#

you sure theres no code which destroys cards with that enhancement?

iron iron
#

here is code

manic rune
#

thats odd

tall wharf
#

put return inside the if?

manic rune
#

thats for the weird scoring part

#

idk why it destroys the cards

tall wharf
#

i think it runs every context

manic rune
#

yeah

#

(imagine fixing that fixes the self-destruction part too 😭)

green mica
#

Is there a trick to making the tooltips work? It's just {T:whatever_key} isn't it?

plush cove
green mica
#

I think maybe the issue is that I'm trying to add the description of an object from my own mod, so I'm not sure the proper way to refer to it

manic rune
#

it is

sacred lily
#

I have a card idea but idk if it’s even possible to make

#

“With this joker in hand, the Boss Blind is 20% weaker”

plush cove
#

that's simple enough

sacred lily
#

ok

tall wharf
#

i have a boss blind that just overrides score

manic rune
#

how do i uhh

#

check when its the end of the ante

tall wharf
manic rune
#

oh, how would i do that

#

i know the end round stuff, but idk about the checking the boss blind

tall wharf
#

g game blind boss

manic rune
#

if G.GAME.Blind.Boss then?

tall wharf
#

lowercase b s

manic rune
#

oh i see, thanks :D

tall wharf
#

eremel will probably cry when they see my shaders for how horrible it is

manic rune
#

nah, its good ❤️

tall wharf
#

😭

manic rune
#

the FIRST element of rng in my jokers ❤️

spiral pivot
topaz monolith
#

New to modding Balatro, so sorry if it sounds basic, but I tried finding the answer everywhere and couldn't find one. How does one tally all playing cards in the full deck that have a seal? I need it so that a joker gains chips for every seal that is in the player's full deck (Whether played already or not)

tall wharf
#

if you just want to play Cryptid smh

spiral pivot
random sleet
#

G.playing_cards is the full deck

#

however it doesnt exist outside of runs iirc so keep that in mind for if you use this code somewhere it can be called from outside a run

#

in particular, the loc_vars of collection items gets called regardless of if there is a run

topaz monolith
#

Thanks for the advice.

iron iron
#

mult aint triggering

#

actually lemme get a better ss

manic rune
iron iron
#

yeah ik prob

#

but like will it appear with mult in deck or nah

manic rune
#

you could just do something, like:

if context.individual and context.cardarea == G.play then
  local played_moss = 0
  for i,v in ipairs(G.play.cards) do
    if v.config.center == G.P_CENTERS.m_vrds_moss then  
      played_moss = played_moss + 1
    end
  end

  return{
    xmult = card.ability.extra.x_mult + (played_moss * card.ability.extra.x_gain)
  }
end
iron iron
#

i actually dont know why that didnt occur to me

#

i may be stupid...

manic rune
#

its fine ❤️

topaz monolith
#

Sorry, another question. How can I check to see if an played hand has an unscored '2' and if it doesn't have a seal, give it a random seal

manic rune
#

huh, thats odd

zealous glen
iron iron
#

i believe its because played_moss = 0 is in the wrong place?

manic rune
#

it shouldnt be

iron iron
#

i could be wrong abt that tho

runic pecan
iron iron
#

its indentation shit

zealous glen
#

Or use the 'unscored' CardArea

runic pecan
#

Huh, I didn't know context.unscored was a thing.

zealous glen
manic rune
#

its an optional feature

zealous glen
#

context.cardarea == 'unscored'

tall wharf
#

context.cardarea == 'unscored' you mean

topaz monolith
#

so, something like this?

tall wharf
#

and it's not optional feature anymore i believe

manic rune
#

oh

zealous glen
#

Or maybe not if aikoyori is right

topaz monolith
#

For the random seal on the card, I can just use the same random code used for the Certificate Joker Card?

zealous glen
#

To poll and apply seals

#

I think it was “apply” anyways

#

It’s on the wiki

runic pecan
iron iron
manic rune
#

...thats really weird, im pretty sure my code should work

#

can you take a ss of what your code currently looks like?

iron iron
#

this is what you sent right?

manic rune
#

hmm

#

real quick, can you try putting a print(card.ability.extra.x_mult + (played_most * card.ability.extra.x_gain)) on top of the return

runic pecan
#

Didn't find 'unscored' in my smods file folder, I guess another update is needed on my end.

#

How outdated is alpha-1410a?

hushed field
zealous glen
zealous glen
#

It’s beta time

zealous glen
manic rune
#

...huh, so the code didnt even bother to run

runic pecan
#

Can I simplified this chunk with SMODS utility functions?

zealous glen
#

@long sun I have Paradise Parrot, Wildheart, and Wild Draw Four; and Baby’s Building a Tower into Space

tall wharf
#

omg

zealous glen
#

Paradise Parrot and BBTS is in the Alpha :3 so you can play with them right now

zealous glen
tall wharf
#

I'm so going to draw anime girl

#

for a joker

#

as in Jimbo but anime

zealous glen
long sun
#

Awesome :D

#

What are their abilities?

tall wharf
#

+4 Mult

zealous glen
tall wharf
#

(yes)

zealous glen
tall wharf
#

(I literally use Bluestorm)

zealous glen
#

BBTS give you a Planet card for the poker hand if the hand contains a Stone card

#

Wildheart makes Wild also another Enhancement, swapping every round

#

Wild Draw Four makes you draw 4 extra cards in your next hand if the hand contains a Wild card

zealous glen
long sun
#

Ah I see!! Neat abilities :D

crisp coral
long sun
#

Here are mine:

Firey: If played hand has exactly 1 card, and it is a face card, destroy it and create a Wild Ace
Match: Gains +3 Mult for each played and scored Wild card (Currently +0 Mult)
Pencil: When Blind is selected, add a random Wild playing card to your hand

Woody: Gains +10 Chips for each Stone card discarded (Currently +0 Chips)```
tall wharf
#

chat

long sun
tall wharf
#

what if i add boss blind that kills stencil

#

empty joker slots are filled with eternal egg

long sun
#

-1 Joker Slot?

tall wharf
#

nah that's too forgiving

long sun
#

Fair

#

1 Joker Slot?

tall wharf
#

nah

#

divides mult by amount of joker slots you have

zealous glen
#

What’s the theme?

zealous glen
zealous glen
long sun
zealous glen
#

But it’d be a Boulder

zealous glen
#

I think that’s the…

#

Idk what it is

#

But its characters are stationery

long sun
#

Sort of! They're just objects in general

zealous glen
long sun
#

"Fire?"

#

(I'm saying this idea is good)

zealous glen
#

Ah

tall wharf
#

fill your joker slots with a dud

long sun
#

THE DUD

tall wharf
#

eternal dud

long sun
#

NOOOOO

zealous glen
#

It’s the question mark that confused me

zealous glen
#

I think all Eggs are too useful

#

Maybe 1 Egg

long sun
#

Maybe debuffed eggs?

zealous glen
#

Not nichely useful

long sun
#

Not useful at all :}

zealous glen
#

Eternal Egg would be useful with Jokers that care about sell value

#

Debuffed Eternal Egg only with Abstract

#

I do have a Boss Blind that shuffles Stone cards into your deck

tall wharf
#

half your hand is unhanced with unscored

#

it will literally not score

zealous glen
#

unhanced

tall wharf
#

i don't know the correct terminology

zealous glen
#

I call them Disenhancements

tall wharf
#

unenhance is removing enhancement

long sun
zealous glen
#

Because Enhancements can override them

zealous glen
tall wharf
#

no I'm replacing the enhancements

zealous glen
tall wharf
#

yeah

zealous glen
#

I just don’t intend to create those effects

tall wharf
#

cards in hand are permanently debuffed after scoring

zealous glen
#

Disenhancements is still a valid name

zealous glen
pale temple
#

can you undiscover a card

#

making a tarot and i want to remove the discovered state

gaunt phoenix
#

Hello ! I would like to create my Balatro mod, but I don't know what tools to use/way to go and I can't find any ressources about that online... Could somebody maybe help me ?

iron iron
modern kindle
pale temple
crisp coral
#

it will be undiscovered on new profiles

pale temple
#

well is it possible to do it in the current profile

#

or is it gonna be some save file manipulation stuff

iron iron
#

reset your save

pale temple
topaz monolith
#

If I had a joker that generates a random joker, how can I make it so it picks from a small list that I picked out from instead of entirely random, and is there a way to not get a duplicate from this list, unless you have Showman?

tall wharf
#

or back the current one up

iron iron
#

yeah you can dupe it

minor furnace
#

One of these days I need to separate my consumables, jokers, enhancements, and blinds into their own files and stop working directly in main

modern kindle
minor furnace
#

Trueeee

opal spade
#

then it should appear undiscovered

waxen mesa
#

currently making my first joker. Dont know how to reference the localization file

#

tips?

tall wharf
#

you just write things in the en-us.lua

#

also you don't have key

waxen mesa
#

like that?

simple mural
#

How can I get a code for something from vanilla if I need it? And can I get it at all?? vedalNeuroHUH

#

For example, create something of my own based on this or just learning how it works?

quartz ravine
#

@simple mural , you can unzip the .exe and then take a peek inside.

quartz ravine
# tall wharf you don't

Hi Aiko, I was wondering how do you test the application of your editions? I can't reliably set a custom edition without crashing the game. But when it randomly spawns, it does work!

waxen mesa
#

Balato loads the mod but not the joker D:

tall wharf
quartz ravine
#

lol

tall wharf
tall wharf
#

and then in en-us.lua you add new entry in Joker for j_modprefixyouputinthejsonfile_myfirstjoker

quartz ravine
#

How did you preview what your shaders would look like? I am trying to find a place or tool I can use to tweak shader logic without having the dev loop of reloading the game over and over

tall wharf
#

and i just load that shit in game

#

thunk should make the update like

#

Balatro season 2

waxen mesa
#

still doesnt load for some reason

#

I mean the mod loads

tall wharf
#

what doesn't load

waxen mesa
#

but the joker doesnt appear

#

in the collection

tall wharf
#

show en-us.lua

#

wait hmm

#

you have to use

#

SMODS.Joker

#

instead of declaring local myfirstjoker

waxen mesa
#

like, where do i put SMODS.Joker

tall wharf
waxen mesa
#

ah

didnt appear in the pokermon mod, thats why i didnt saw it

#

"undefined global" says my environment.

i will try it out

maiden phoenix
#

Some big mods like to like list out their items then use a constructor at the end

tall wharf
#

if anyone has suggestions for what words i should include

waxen mesa
#

ah

found it

i need to use ' instead of "

tall wharf
#

not really.

waxen mesa
#

ok still doesnt appear

tall wharf
tall wharf
#

show your json file

waxen mesa
#

"prefix": "Lilith",
"main_file": "main.lua",
"priority": -20,
"badge_colour": "008000",
"badge_text_colour": "ff00ff",
"display_name": "LGG",
"version": "1.0.0",
"dependencies": [
"Steamodded (>=1.*)",
"Lovely (>=0.6)"

], 
"conflicts": [
    
], 
"provides": [
],  
"dump_loc": false
tall wharf
#

is this the entire file

waxen mesa
#

not entirely

#

just a few things that i wanna keep private

tall wharf
#

this is my entire file

crisp coral
tall wharf
waxen mesa
#

omg i am stupid

#

main.lua is basically empty

#

print("Hello World")

#

uh

#

what do i have to put in there

tall wharf
#

the Joker code

waxen mesa
tall wharf
#

PUT THAT IN THE MAIN FILE

waxen mesa
tall wharf
#

do you want to structure the files now

#

if so assert(SMODS.load_file("./jokers/jokers1.lua"))()

waxen mesa
#

ok, did it, works now 😄

tall wharf
tall wharf
#

i was about to do unspeakable things

quartz ravine
tall wharf
#

did you know that at least 5 mods has the hand selection linit mechanics

waxen mesa
#

ok so the good news is, the joker can be found in the collection

the bad news is, the description is not loading

waxen mesa
modern kindle
tall wharf
quartz ravine
#

oh lord. This whole time, @tall wharf , I have been modifying the wrong shader. I thought I was working off of holofoil but no , i was accidentally working off of negative. This explains why nothing made sense

waxen mesa
#

ERROR :: Loader :: Found invalid metadata JSON file at C:\Users\Arko\AppData\Roaming\Balatro\Mods/BalatroMod/.idea/settings.json, ignoring: [SMODS _ "src/loader.lua"]:226: id

#

for some reason it works but the descriptions are still not appearing

#

i guess i just try out to make a bit more before i figure out how the hell i make localization work

runic pecan
#

What is the overall term for all foiled, hologram, and polychrome playing cards?
Because I find calling them "Cards with editions (except negative)" is too long.

waxen mesa
#

thats called Edition 😄

turbid maple
#

positive editions

runic pecan
mystic river
#

"scoring editions" might get the idea across, assuming there aren't any mods adding more editions that score and/or that you want to include them if they exist
other than that, there's no term

turbid maple
#

Non-base Edition?

runic pecan
#

Can I call them "Editioned Card"?

mystic river
#

no, because that implies negative is included

#

if you want to exclude negative, you're gonna have to say it

runic pecan
#

I just need a shorter term than "Played cards with any editions".

turbid maple
#

I'm not sure you're gonna get anything clearer than Played cards with editions (except Negative)

mystic river
#

even if you don't care whether negative counts, "with edition" is as short as you're gonna get, i think

maiden phoenix
quartz ravine
#

Hi folks, is it possible to also apply a texture with a special edition? I have my own boarder I woudl like to use to overlay, source of like how enhancements work

frosty dock
runic pecan
#

How to change key prefix when using :extend{?

quartz ravine
#

Oh Hi John!

#

I have a new edition with a key of 'ghostRare'. I have a prefix of my mod for 'Fox_', is this how I should be assigning an edition?

long sun
#

Hihi! Two questions:

  1. How can I check if the played hand is a High Card?
  2. How can I check if the player just used Pluto?
runic pecan
#

Would this be too illegal?

quartz ravine
#

Sweet! I got my edition working! And the first one it ever appeared for was an @tall wharf card!

long sun
#

Actually ignore the first question, I found that out :}

tall wharf
#

wtf scoreless

runic pecan
tall wharf
#

my boy

waxen mesa
#

my game crashes when i hover over my new booster pack D:

turbid maple
#

have you tried not hovering over it

#

the last time I saw your code your mod prefix was Lilith with a capital L but here you're looking for a key with lilith?

#

@waxen mesa

waxen mesa
#

yeah i made it small

waxen mesa
lyric wadi
#

potential deck or challenge idea

Start with 10 hand size
Full Deck starts with 5 copies of each card (so 260 cards)
When a card is discarded, remove it form deck

#

would this work and does it already exists under some mods

crisp coral
#

erosion gaming

#

blue joker gaming

long sun
#

gaming in general :}

turbid maple
#

might help if you shared the localization entry and the booster pack implementation

long sun
#

Canio gaming

#

Trading Card reading a book

#

Rebate would also pop off

turbid maple
#

thinking about it i don't remember the game ever crashing for failing to find a localiztion entry though hmmm

waxen mesa
lyric wadi
#

another silly chal idea

Strength in Number

Deck starts with 52 2s
Start with Eternal Negative Cartomancer (if it's funnier to not have them that also works)
Playing Five or a Kind, Four of a Kind, or Flush Fives scores no point for the entire run

long sun
#

the humble Three of a Kind:

#

the humble Wee:

#

the humble Hack:

#

the humble Chad:

waxen mesa
dire palm
#

Quick question: Can I give a Joker an ability that triggers when it's obtained?

lyric wadi
#

okay this is really stupid idea but

#

idk if this can even be implemented

long sun
#

i know Juggler and Drunkard do that

#

same with being sold

waxen mesa
#

what is mode r

lyric wadi
#

but a chal called the Cure, where you start with 52 Stone Cards and the goal is to have 0 stone cards by the end

#

maybe custom Ante 8 Boss with "Mult is set to 0 if Full Deck contains any Stone Card"

long sun
#
add_to_deck = function(self, card, from_debuff)
  //...
end```
lyric wadi
#

Hypercuration

Start with normal deck
Custom Ante 8 Boss with "Mult is set to 0 if Full Deck contains 6 or more cards"

dire palm
long sun
#

mhmhm!

dire palm
#

Where do I put it?

lyric wadi
#

fuck custom Ante 8 boss basically means any arbitrary run-spanning goal can be implemented

tepid crow
shell timber
#

you'd have to ban director's cut and chicot but yeah

waxen mesa
tepid crow
lyric wadi
#

it's fine no one will miss chicot

waxen mesa
tepid crow
#

huh 🤔

lyric wadi
#

is there to implement a joker that triggers when you sell other jokers or consumables

#

something like a Joekr that allows you to sell anything for double the normal sell price

red flower
#

context.selling_card

lyric wadi
#

so good for tarot spawning builds

#

thank u

#

oh yeah and how do you grab the price of the card that was just sold

red flower
#

context.card.cost or context.card.sell_cost depending on which price you mean

lyric wadi
#

thank u so much :3

#

will now try

tepid crow
# waxen mesa

mind doing a icacls "consumables/vegetables_cards.lua" in your cmd?

waxen mesa
#

uh

#

i mean i wouldnt

#

if you tell me how

#

XD

tepid crow
#

go to C:\Users\Arko\AppData\Roaming\Balatro\Mods/BalatroMod/ in your windows file explorer

#

then in the "url bar", replace the text with cmd and press enter

#

then input the command I gave you and show the output

waxen mesa
#

oh fuck i am stupid

#

it was in the .idea folder accidentall

#

y

tepid crow
#

that's impressive haha

#

weird error you got then; I would have expected some sort of "file not found" instead of "could not open in mode r"
oh interesting, that's the default error smods gives... but why so uninformative 🤔

waxen mesa
#

next error

#

need to clean up my room now

tepid crow
# waxen mesa

no clue but I've seen it before so just search this channel with some of the terms in the error

ionic timber
#

with the release of the new Steamodded update. Can I finally get rid of Talisman/are xchips natively supported ? Talisman mess up a lot of things with my game

tepid crow
#

xchips are supported by steamodded now yes

ionic timber
#

good to know !!

lyric wadi
#

Shorts Creator
When the Joker to its left is sold, add double the price sold to the sell price of the card on its right

#

aka Double It and Give It To The Next Joker

#

this is also a reference to how short form contents somethefuckhow rakes in so much money and also how money centric they can be

#

obviously phenomenal money generator

#

but you do have to keep buying and selling jokers to feed the money machine

#

which can be weird to your build because you're basically always wasting 3 slots for money generation and not contributing no mult

#

but it is a fuck ton of money

lyric wadi
#

true

#

i also love riff

#

good early shop joker

quartz ravine
#

Hi folks, anyone else having a problem using set_edition with a custom edition in the newest version of Steammodded?

sacred lily
#

i'm not having an issue but then again i'm using the newest beta as opposed to just edition

#

how do i make a Joker script trigger when a boss blind is selected?

turbid maple
pale temple
#

weird why is it clipping like that

manic rune
#

how do i get the uhhhh

#

destroying card part to be earlier

#

its currently in context.after rn

vocal nacelle
#

does anyone know how the hell to enable autocomplete? ive tried virtually everything, putting steammodded and balatro source code folders in the workspace, i've tried doing both that and putting my mod's folder in the workspace, and nothing has worked (im using vscode by the way)

turbid maple
# sacred lily thanks

and I'm almost pretty sure that's the step you want to check if it's getting destroyed by Madness or Ceremonial Dagger (which set card.getting_sliced or something like that)

#

I do not know if smod handles this for you

sacred lily
#

ok

#

is it possible for a joker to change the requirement needed for a blind? or does it need to be done in the base game's blind script or something

minor furnace
sacred lily
#

ok cool

minor furnace
sacred lily
#

probably there is somewhere in the game that does what i'm trying to do (reduce the required chips for the boss by 30%) but i don't know for sure

minor furnace
#

gotcha

#

yeah instead of doing a /3 then you'd just want to do *0.7

sacred lily
#

ok thanks

turbid maple
#

oh looks like they added a can_calculate check that handles cards being destroyed

#

neat

#

yeah disregard my prior comment about daggers

manic rune
hushed field
#

the base values of a joker, unmodified by gameplay, are stored in the config, right? Are those accessible through card.config.extra, or wouldn't that work?

turbid maple
#

it works!

gaunt phoenix
#

i'm totally new to Balatro Modding, why does it show "+nil" and not a number ? (I want it to be "+10" / "+0")

turbid maple
#

rather happy I don't have to have another variable sitting around to store the initial value

hushed field
hushed field
simple mural
turbid maple
#
calculate = function(self, card, context)
        if context.joker_main then
            return {
                Xmult_mod = card.ability.extra.xmult,
                message = localize({ type = "variable", key = "a_xmult", vars = { card.ability.extra.xmult } }),
            }
        elseif
            context.end_of_round
            and context.main_eval
            and G.GAME.blind.boss
            and not context.blueprint
            and not context.retrigger_joker
        then
            card.ability.extra.xmult = self.config.extra.xmult
            return {
                message = localize("k_sugar_replenished"),
                colour = G.C.FILTER,
            }
        elseif context.after then
            if card.ability.extra.xmult - card.ability.extra.xmult_loss >= 1.0 then
                card.ability.extra.xmult = card.ability.extra.xmult - card.ability.extra.xmult_loss
                return {
                    message = localize({ type = "variable", key = "a_xmult", vars = { card.ability.extra.xmult } }),
                    card = card,
                }
            end
        end
    end,
simple mural
turbid maple
#

This seemed to work for me

minor furnace
#

currently I'm doing some patch shenanigans in function Game:update_hand_played(dt) but I may need to do something else

#

It comes back when I reload the game, and the effects all work despite not visibly showing the text so uhhh at least it's functional?

manic rune
#

what do i need to do if i want to properly destroy a playing card

stiff locust
#

where tf is the chariot code

stiff locust
stiff locust
#

then you need to return a specific thing to destroy the current card

manic rune
#

huh

#

thought the event alone was enough 😭

#

so uh, this alone wont cut it?

stiff locust
#

no

gaunt phoenix
#

Can someone explain to me why does the condition is true whenever I play a High Card or not ? I probably misunderstood something but I can't find what

#

(I want the hand to be exactly a High Card)

spiral thunder
#

Hello, I'm a newb in coding, but is there a way to make this stake from Cruel Blinds show after the Ascendant stake from cryptid? I'm just talking about the visual. Any help is appreciated cause I'm stuck right now. Thanks.

stiff locust
#

you don't need context.individual though

manic rune
#

o i see

#

should i be adding context.cardarea == G.play too?

distant tendon
#

does someone know what's wrong with my game? it crashes every time a modded boss blind starts

#

nevermind i figured it out

#

seems to be a problem with the Distro mod

manic rune
#

...doesnt seem to work

wintry solar
manic rune
#

is this right?

manic rune
#

it should be setting card.ability["card_to_destroy"] to the chosen card in this

modest lake
#

ello ya'll, I'm getting an error when I try to call the function Calc_dollar_bonus

sacred lily
#

hi. would this be the correct code for something to happen during a boss blind?

green mica
#

thank you

main chasm
#

Does anyone know how to overwrite the ability of a card in the base game using steam modded? Whenever i use the take_ownership function and add a new calculate function it resolves the old effect and the new one.

SMODS.Joker:take_ownership('ceremonial',
    {
    calculate = function(self, card, context)
        if context.setting_blind and not self.getting_sliced and not context.blueprint then
            print("calculate resolved")
        end
    end
    })
red flower
sacred lily
#

ok thanks

modest lake
wintry solar
tall wharf
#

-# what is that crop

manic rune
#

did you take a munch out of that

#

😭

tepid crow
#

tasty tasy code blocks

tall wharf
modest lake
charred hawk
sacred lily
tepid crow
sacred lily
#

pretty sure there is a "then" pretty close to it

distant tendon
#

i've been reading this thing for a while and i still have no idea what the issue could be can someone help me :d

modest lake
red flower
tall wharf
#

is there a better way to define calculate function for editions

#

or is it just not

#

real

manic rune
#

oh for fuck sake, its the timing again, this prints immediately when i press PLAY

#

😭

wintry solar
manic rune
#

if only theres a function to manually destroy a playing card without needing to go through that....

tall wharf
manic rune
tall wharf
#

i read the docs

#

it does not say anything about calculate function

wintry solar
#

Every object uses calculate functions now

tall wharf
#

ah

#

ok i am just bad at coding

wintry solar
#

I think edition docs just got missed

#

They need a bit of a more complex check though because they deal with jokers and playing cards

manic rune
wintry solar
#

It’s not

wintry solar
#

It’s after everything scores

manic rune
#

its not?

tepid crow
manic rune
#

it prints 5 "aa" immediately when i play a hand though

modest lake
#

The heart was on purpose

wintry solar
#

Yes the game does all the calculation almost instantly and then does the animations

tepid crow
modern kindle
tepid crow
# modest lake so basically?

The code looks fine to me, but I've never directly had to interact with talisman code, so I'm just giving you my best guesses. Try it out and see if it works I guess

manic rune
wintry solar
#

By doing exactly what your code says 👍

manic rune
#

wh

#

but dont i need to go through context.destroying_card to destroy the playing card?

wintry solar
tall wharf
#

i don't think this is the way to do it for editions

manic rune
wintry solar
#

It’ll be card.edition.extra iirc

#

Let me check

manic rune
#

kinda hoped it would somehow pass it to context.destroying_card after that

wintry solar
#

Select your card earlier

tall wharf
#

thank you

manic rune
#

oh

oh wait, so if i were to already destroy the card in context.destroying_card, the animations will still be fine right?

tall wharf
#

that is probably it

#

let's hope

manic rune
#

💔

modern kindle
#

What about this is against the server brother

#

I guess I don't get to ask eremel anything man

manic rune
#

my disabled ass thought it would remove the card from the playing hand immediately 😭

#

thanks :D

wintry solar
#

I have no idea about creating poker hands

tall wharf
manic rune
wintry solar
#

Maybe autumn would know?

manic rune
#

but i can still send it though, weird