#💻・modding-dev

1 messages · Page 246 of 1

modern kindle
#

The hell do you mean that works
I have a whole different way of getting that

manic rune
#

...i mean, if it works it works

modern kindle
#

I'm about to be such a hater in this world

manic rune
native zinc
#

oh i posted this and instantly realised my stupidity so

manic rune
#

this is what im using to hook to "context.after" rn

#

:3

open aspen
manic rune
#

mhm

#

the uhh

#

High Card
50 x 30
^

rapid stag
#

figured it out.

paper zealot
#

da-ba-dee, da-ba-di

minor furnace
#

blueprint 👀

rapid stag
#

it only half-did it because i did a patch wrong, too

minor furnace
#

also, cirno mention

#

fumo plush

manic rune
#

i have cirno fumo :3

modern kindle
rapid stag
modern kindle
#

i mean yea, we all use lovely as far as im aware everything else is outdated aint it

wide narwhal
#

okay so it now no longer crashes and the original issue has been fixed, but now a new problem has appeared where the joker will increase its value and then destroy itself anyway, anyone know why this is happening?

mystic river
#

you appear to have misspelled repetition, that seems like it might affect something

noble schooner
#

oh yeah, that might be the problem

rapid stag
# modern kindle i mean yea, we all use lovely as far as im aware everything else is outdated ain...

so in mods\lovely\dump you should find a game.lua which is basically a copy of your active game.lua with all your current mods post patching

you're looking for, in function Game:main_menu(change_context), the function call G.SPLASH_BACK:define_draw_steps().

and that function call should outline two colour values, something like colour_1 (the outside swirl colour) and colour_2 (the inside swirl colour).

and for me, it was

{name = 'colour_1', ref_table = G.C, ref_value = 'RED'},
{name = 'colour_2', ref_table = G.C, ref_value = 'BLUE'},

and i basically did what trance does as breeze mentioned earlier #💻・modding-dev message and patched them both to instead be

{name = 'colour_1', ref_table = G.C.SPLASH, ref_value = 1},
{name = 'colour_2', ref_table = G.C.SPLASH, ref_value = 2},

you can patch them to be hardcoded colours instead if you want, but my mod has a config option to toggle the colours on or off, so i have a Game:main_menu() hook in my main lua file. before i call the original function, i swap out G.C.SPLASH[1] & G.C.SPLASH[2] with my custom colours if the config option i mentioned is enabled (and if it's off, i just set them to red and blue) cirBox

wide narwhal
modern kindle
wide narwhal
#

thank you so much, actual lifesaver

paper zealot
daring fern
#

Any help on this?

tall apex
#

batro

rapid stag
#

does anyone know off the top of their head, which planets are featured on what celestial pack?
in order of how they appear in the base boosters graphic:
normal packs: mercury, jupiter, earth, uranus
jumbo packs: mars, pluto
mega packs: saturn, venus

dense adder
#

I have no clue what's causing this error

    key = 'Jokio_Karted',
    loc_txt = {
      name = 'Jokio Karted',
      text = {'When a Lucky Card','played does not','trigger it gives  {C:money}#1#${}'
      },
    },
    cost = 6,
    eternal_compat = false,
    atlas = 'Silver_Atlas_SJP',
    pos = {x = 0, y = 0},
    config =  {extra = {money =  1}},
    loc_vars = function(self,info_queue,card)
      return {
        vars = {card.ability.extra.money}
        }
    end,
    
    calculate = function(self, card, context)
        if context.cardarea == G.play and context.scoring_hand then 
          if SMODS.has_enhancement(context.other_card, 'm_lucky') then
            if not card.lucky_trigger then
              dollars = card.ability.extra.money
            end
          end
        end
    end
  }```
minor furnace
#

anyone know off the top of their head what global variable the deck/suit customization options are in?

rapid stag
agile thistle
#

ahh swung too late

#

collab definitions themselves are just in G.COLLABS

minor furnace
#

I'm looking to do something if a specific skin (my own) is set on a specific suit

#

let's try G.SETTINGS.CUSTOM_DECK.Collaps.Spades

rapid stag
minor furnace
#

I'll look at that then

#

thanks!

#

G.SETTINGS.CUSTOM_DECK.Collabs.Spades was exactly what I was looking for

glad osprey
#

I hate love this

#

also bump

manic rune
dense adder
#

oh yeah i had that originally i changed that while debugging just to see if that would work

#

should have reverted before posting

manic rune
#

its likely because

#

in the context, "context.other_card" isnt anything

#

so its just nil, i think?

dense adder
#

i think so, but what would be a way to check the cards in the hand for enhancements

manic rune
#

use this context instead

#

it will let you use context.other_card

#

-# ignore the code inside please :3, i was testing smt

dense adder
#

thank you

sour marsh
#

is there an easy way edit a joker when it's created in the shop?

#

i want to give every joker a random value when it's in the shop that i will use later

minor furnace
#

awesome, now my abomination of an enhancement's color can match my deck skin

#

I'm getting to the point where I wonder how many of my patches could have alternatively been implemented by hooks... and I don't want to think about how much refactoring that would take me

daring fern
#

Does anybody know if this is possible or not?

wide narwhal
#

another fun fact: the moa is extinct, which i did not know until like 10 minutes ago, which makes the message upon the joker getting destroyed very funny

shy wagon
#

okay so I think that now I've defined what my card is and what it does, now how do I actually make the card an object that can spawn in packs?

glad osprey
#

the fuck is a toml

shy wagon
#

a file type I think

#

oh

shy wagon
# glad osprey the fuck is a toml

Tom's Obvious, Minimal Language (TOML, originally Tom's Own Markup Language) is a file format for configuration files. It is intended to be easy to read and write due to obvious semantics which aim to be "minimal", and it is designed to map unambiguously to a dictionary. Originally created by Tom Preston-Werner, its specification is open source....

gaunt thistle
#

toml is a type of frog

scarlet spire
#

is there a way to detect when any probability occurs?

#

doesn't matter if it succeeds or fails, just if it happens

glad osprey
scarlet spire
#

hmm, that would be everything, even without the 1 in x descriptor

#

thinking about it, I can probably only hardcode that

#

unless i'm forgetting something

shy wagon
#

I'm trying to make a tarot card that makes a selected playing card's edition foil

#

(like aura but slightly better)

#
    set = "Tarot",
    key = "mosaicTarot",
    pos = {
        x = 0,
        y = 0
    },
    loc_txt = {
        name = "Mosaic",
        text = {
            "Add Mosaic",
            "to selected card"
        }
    },
    atlas = 'mosaicTarot',
    cost = 4,
    pools =
        {
            ["Consumeables"] = true,
            ["Tarot"] = true,
        },
    unlocked = true,
    discovered = true,
    can_use = function(self, card)
        if G.STATE ~= G.STATES.HAND_PLAYED and G.STATE ~= G.STATES.DRAW_TO_HAND and G.STATE ~= G.STATES.PLAY_TAROT or any_state then
            if G.hand and (#G.hand.highlighted == 1) and G.hand.highlighted[1] and (not G.hand.highlighted[1].edition) then return true end
        end
    end,
    use = function(card, area, copier)
        G.E_MANAGER:add_event(Event({
            trigger = 'after',
            delay = 0.4,
            func = function()
                    G.hand.highlighted[1]:set_edition(foil, true)
                return true
            end
        }))
    end,
    loc_vars = function(self, info_queue)
        info_queue[#info_queue + 1] = G.P_CENTERS.e_foil
        return {}
    end
})```
#

currently it does nothing

#

not even crash the game

#

the part where you can only use it with one card selected works fine

#

it just doesn't apply foil

tall salmon
#

i think it has to be a table

shy wagon
#

it plays the use animation but nothing happens

tall salmon
#

{foil = true}

#

instead of just foil

scarlet spire
#

I think that's for stickers? a card can only have one edition

#

I think you're just missing the prefix, which would make it e_foil

tall salmon
#

i wrote this and it works

scarlet spire
#

I guess try it

tall salmon
#

does anyone know a way to trigger an effect after a consumable resolves?

shy wagon
tall salmon
#

the way im currently doing it with context.consumeable triggers before the actual consumable effect happens

tall salmon
shy wagon
#

thanks a bunch

#

now to make the actual custom edition

tall salmon
#

for example this just counts the sixes in your hand after using a consumable but when using things like cryptid or strength on 5s it spits out the amount before the card was used

native zinc
#

eh ???

red flower
#

is h_dollars an enhancement?

minor furnace
#

all enhancements should be prefixed with m

native zinc
#

oh . dang it documentation

minor furnace
#

(also you don't need the == true)

#

that's redundant, since the boolean returned by SMODS.has_enhancement() is already what you want

daring fern
#

Is doing something like this possible?

minor furnace
#

Is it just for aesthetics or is there something else you want to do with that?

shy wagon
daring fern
native zinc
#

waorks now

minor furnace
daring fern
minor furnace
#

Even if you put your own other jokers all the way at the end?

marble flint
#

and actually you're also missing another end (to end the function)

shy wagon
#

ah thanks

#

I wish notepad++ had function-end matches highlighted like it does for brackets

daring fern
marble flint
shy wagon
#

fair enough

quasi comet
#

How do you format stuff inside of compat_exceptions? I can't get my sticker to be incompatible with other stickers

rapid stag
#

it is doneeeeeeeeeee

and with this and much more out of the way, i sleep cirSleep

red flower
#

i feel like i should make my own object at this point lol

plush cove
#

that would probably be a wise move

daring fern
#

Is adding new entries to the collection possible?

pale venture
#

Does anyone know if there's a way to have custom playing cards (custom suit/rank) that don't follow the "X of Y" naming convention?

cerulean rose
#

interested in making a joker counterpart to seals

#

got SMODS.DrawStep figured out, but SMODS.GameObject is beyond me.

#

i know autumncircus had something like this

#

(also will have a mechanic that i won't reveal now)

hushed field
#

I'm working on a consumable that destroys all consumables of the same type and gains their abilities. They're all custom consumables so I have full access to the code without too much fuckery. If I wanna avoid hardcoding everything, I should probably move their functionality so separate functions, so I can have the code call those, rather than find a way for it to activate fake versions of those items 🤔

#

I thought I was going to arrive at a question there, but I guess I wasn't

zinc forum
#

I mean I think there's something there

#

I don't know how SMODS do that kinda thing but couldn't you store each calculate function in like, an array or something?

hushed field
tall wharf
#

why is my config not "saving" 😭

zealous glen
#

Illusion of choice

red flower
hushed field
hushed field
red flower
#

you can copy my code all you want

#

gimme a sec to find it

hushed field
#

Your code is protected by being so specific that it'd be insane to just copy over, haha. But it is the giant's shoulders on which Kino stands, haha

red flower
# hushed field Your code is protected by being so specific that it'd be insane to just copy ove...

here are the functions and hooks https://github.com/nh6574/JoyousSpring/blob/a8053a1d270fd34fef4e8e43085cfd48076fd4d9/src/effects.lua#L277

and here are the definitions for the center functions, you can probably just use the regular calculate instead of making a custom one if you want to just copy the whole effect https://github.com/nh6574/JoyousSpring/blob/a8053a1d270fd34fef4e8e43085cfd48076fd4d9/src/monsters.lua#L24

pale venture
hushed field
#

Thanks N', intensely appreciated as always 😄

daring fern
#

How would one go about adding a new entry to the collection?

hushed field
#

I think I should do a real major rewrite for Confections if I actually want this to be properly modular. For now I guess I'm just going to hack it, and then rework the entire system at some point. I've been wanting to turn it into a stand-alone mod too, so that's good motivation for that, haha

tall wharf
#

what is wrong here

next timber
#

Would it hypothetically be possible for a mod to use the seed to predict things? Like could I make a consumable that tells you how many booster packs itll take for a specific joker to appear in one?

hushed field
#

yes! I haven't looked into exactly how, but I've checked to see if the concept of a reroll prediction joker was possible, and it definitely is. The only thing I'm not sure about is whether booster packs are fully predictable, or if player choices can change the outcome

#

But you probably wanna look at the code for seed analyser extensions

next timber
#

Awesome

red flower
cerulean rose
#

im extending SMODS.Sticker but for some reason the inject function isn't running?

tall wharf
red flower
#

yeah

tall wharf
#

G.FUNCS.akyrs_change_wildcard_behaviour = function (e)
  AKYRS.config.wildcard_behaviour = e.to_key
  AKYRS.save_config(e)
  AKYRS.config_wildcard_desc_dyna:update_text(true)
  AKYRS.config_wildcard_desc_dyna:update()
end

SMODS.current_mod.config_tab = function ()
  AKYRS.config_wildcard_desc_dyna = DynaText{
    scale = 0.3,
    colours = {G.C.UI.TEXT_LIGHT},
    string = {{ref_table = localize('k_akyrs_wildcard_behaviours_description') ,ref_value = ""..AKYRS.config.wildcard_behaviour}}
  }
  return {
    n = G.UIT.ROOT, config = { minw = 18, minh = 6 ,align = "tm", r = 0.1 },
      nodes = {
        { n = G.UIT.R, config = { colour = G.C.UI.TRANSPARENT_DARK ,align = "tm"}, nodes = {
          { n = G.UIT.C, config = {
            align = "cm", padding = 0.2,
          }, nodes = {
            {n = G.UIT.T, config = {
              text = "Wildcards Behaviour",
              scale = 0.5,
              colour = G.C.UI.TEXT_LIGHT
            }}
            }
          },          
          { n = G.UIT.C, config = {
            align = "cm", padding = 0.2,
            id = "akyrs_wildcard_behaviour_desc_dyna"
          }, nodes = {
              create_option_cycle({
                options = localize('k_akyrs_wildcard_behaviours'),
                scale = 0.7,
                w = 4.5,
                opt_callback = "akyrs_change_wildcard_behaviour",
                ref_table = AKYRS.config,
                ref_value = "wildcard_behaviour"

              })
            }
          },       
        } 
      },
      {
        n = G.UIT.R,{
          align = "cm", padding = 0.2,
        },
        nodes = {
          {
            n = G.UIT.O,
            config = {
              object = AKYRS.config_wildcard_desc_dyna
            }
          }
        }
      }
    }
  }
end
#

formatting is a mistake

cerulean rose
red flower
tall wharf
#

ah

#

that worked i think

#

how about dynatext not updating

#
G.FUNCS.akyrs_change_wildcard_behaviour = function (e)
  AKYRS.config.wildcard_behaviour = e.to_key
  AKYRS.save_config(e)
  AKYRS.config_wildcard_desc_dyna:update_text(true)
  AKYRS.config_wildcard_desc_dyna:update()
end
next timber
#

WHY IS THE CODE FOR THE SOUL SEED ANALYSER MINIFIED

#

WHYYY

red flower
tall wharf
red flower
#

it's creating new dynatext objects without destroying them probably

prisma loom
#

Need some help with the code structuring. Is everything corrrect here?

#

(that's an enhancement)

cerulean rose
#

the upgrade message overwrites the xmult message

#

why is 'antimatter' the rng key?

prisma loom
#

its the name

#

of the enhancement

cerulean rose
#

it seems like the scoring ability only applies when the probability hits

prisma loom
#

yes

#

thats the issue atm

#

its tied to it

#

Im not really sure how I could separate them

cerulean rose
#

you can use extra in your return to specify another message to come after

#

although for scaling you should check how basegame jokers do it

prisma loom
cerulean rose
#

the whole structure here is super weird

prisma loom
#

I added it to makes sure the Xmult message would be displayed even if probability fails

prisma loom
tall wharf
cerulean rose
#

and its condition is the same as a surrounding if

prisma loom
cerulean rose
#

ur checking context.cardarea == G.play and context.main_scoring twice

prisma loom
cerulean rose
#

yeah

tall wharf
#

i need better description lol\

dire palm
#

How can I go through the scoring hand with a boss blind?

prisma loom
# cerulean rose yeah

So this code now triggers an upgrade and Xmult message when probability hits, right? In that case what context should I use for a block of code that is activated when probability doesnt hit? (the one that gives current Xmult of the card)

cerulean rose
#

tbh you should handle the upgrading and the xmult application separately

prisma loom
#

Do you have a specific example in mind?

#

anything similar

cerulean rose
#

every scaling joker ever balatrojoker

frosty dock
#

what even is card:scale_value

prisma loom
#

i dont think it's relevant here

frosty dock
#

not sure how you'd need a custom function for that but alright

cerulean rose
#

scalaedouble scale r smthn?

prisma loom
#

no other reason

cerulean rose
#

kid named +:

prisma loom
#

(why they use it idk)

frosty dock
#

anyways

#

scaling jokers usually scale in context.before

#

if they don't scale based off cards scored, at least

cerulean rose
frosty dock
#

uh

cerulean rose
#

trying to implement something like stamps from autumncircus

frosty dock
#

you can't have an obj_table/obj_buffer in a class derived from one that already has them

prisma loom
cerulean rose
#

should i extend SMODS.GameObject directly?

prisma loom
#

So what's the context then?

frosty dock
#

we could use some card modifier type API

zealous glen
cerulean rose
#

yeah, this is sorely needed

#

sticker spoofing is a mess

#

adding anything to cards is a mess

frosty dock
#

agreed, the current system doesn't offer a good way to do this

cerulean rose
#

shame autumn left

#

wouldve been awesome to (borrow) their code

zealous glen
#

I did want to extend the bonus chips to Jokers and stuff

cerulean rose
#

with permission of course

zealous glen
#

And I had done it in 0.9.8

#

With autumn’s code as reference

#

And I probably still have its 1.0 port

tall wharf
#

UI SHENANIGANS IS REAL

cerulean rose
#

ui code is hell

frosty dock
tall wharf
#

CAN WE GET MUCH HIGHER

cerulean rose
#

who nose 👃

frosty dock
#

no body nose

tall wharf
#

how are you doing aure

maiden river
#

Hello chatters

frosty dock
#

I'm doing well but kinda lacking motivation

tall wharf
#

fair

hushed field
tall wharf
#

kinda same lol

#

but like I'm currently in a meeting

hushed field
tall wharf
#

and i almost accidentally shared my Balatro game

frosty dock
#

lmao

tall wharf
#

I WAS MODDING DURING THE MEETING

#

being fr

frosty dock
#

so real

next timber
#

i may be stupid but how do you set the hand size for a deck? G.Game.starting_params.hand_size = 12 isn't working

tall wharf
hushed field
zealous glen
tall wharf
#

all caps

zealous glen
#

And I had done UI, it was just messy compared to what SMODS usually does

zealous glen
cerulean rose
tall wharf
cerulean rose
#

strange pencil 0.3.0 forever delayed

tall wharf
#

person

zealous glen
#

I did make a PR for a new context yesterday

prisma loom
hushed field
#

I really wanna figure out UI properly just because I desparately feel it'd be a very handy thing for SMODS to have a standard set up to create the below consumables card area, and make it a carousel, but alas every time I do UI a part of my perishes and I became a more hollow man

zealous glen
#

For cards being added to the deck

tall wharf
#

which set of cards score higher

#

minigame

next timber
#

G.GAME also is not worknig

zealous glen
frosty dock
#

Today feels like a good day to merge a bunch of PRs and inevitably inadvertently break something

zealous glen
#

I might make more PRs soon

#

I’m doing them as I implement stuff for my mod

#

So that everyone can use them

brazen notch
#

Steamodded goes up in flames after 2 merged PRs and promptly explodes

red flower
zealous glen
#

What I have in mind is fixing Orbital Tag and a context for abilities that activate when destroying Jokers

#

I might get sidetracked by Tags though

#

Because I wanted to implement one for the first time

brazen notch
#

Implementing a new tag system? or just making a new tag for your mod

zealous glen
#

New Tag for my mod

#

But idk how Tag contexts work

#

I implemented a new Joker context and Idk if it works with Tags

frosty dock
#

for the card_added PR, I thought I'd have to be concerned about cards changing enhancements, but fortunately excluding playing cards from this context avoids that issue completely

#

it does seem to be targeting code from other patches in smods though, which isn't great

brazen notch
#

well,. isn't there already something for adding playing cards? for Hologram?

frosty dock
#

yeah that's why it's excluded

zealous glen
brazen notch
#

that's nice

frosty dock
#

but add_to_deck gets repeat calls when changing enhancements

#

which is what I thought might be an issue, but isn't

prisma loom
brazen notch
#

scale_value?

prisma loom
zealous glen
brazen notch
#

i'm curious about it

prisma loom
#

my guess

#

idk

prisma loom
#

wait

#

I think i understand it now

zealous glen
#

If you are using an automatic Lua formatter it will format the blocks via alignment

long sun
#

i'm able to do context.card.config.center.set == "Planet", but how can i do this with a check for all consumables?

next timber
#

ok what am i doing wrong here that the hand size isnt being set

cerulean rose
daring fern
#

On how to do it.

tall wharf
#

my genius it's almost frightening

prisma loom
#

i think

long sun
#

oop no nevermind, i figured it out ^^

#

...i think. is it if context.selling_card and context.card.config.center.set ~= "Joker" then?

tall wharf
#

hello ghost

long sun
#

haiii :D

tall wharf
#

i am working on improvements to wildcard

#

i will have to do UI

#

😭

long sun
#

#

Wild card stan!! :D

tall wharf
#

-# going absolutely bonkers

manic rune
#

will this have side-effects?

tall wharf
manic rune
#

its supposed to run somewhere at the "context.after" state

#

it works, but im worried there will be jokers which use draw_from_deck_to_hand

rotund ridge
#

alright fellas i have been trying to get this working but idk wtf im doing but i want to shoot myself so please can you tell me whats going on

rotund ridge
cerulean rose
#

scroll up homie

rotund ridge
cerulean rose
#

your missing an end to close your function

prisma loom
#

branching off pseudorandom

cerulean rose
#

actually you should combine if pseudorandom and if xmult<3 into a single if

#

and that on the else of it

prisma loom
rotund ridge
cerulean rose
#

suggest blinds for a house tour

zealous glen
#

It depends on the effect you want

#

And if it gives xMult anyways, you could avoid having two returns

#

But two returns might be easier to write

prisma loom
#

IT ALL WORKS NOW

#

finally

warped marsh
prisma loom
#

huge thanks folkspeepoLove

warped marsh
#

Here’s a little celebration

rotund ridge
#

what file with the code for all the jokers?

tall wharf
#

i spent 4 minutes on this shit

zealous glen
tall wharf
#

close enough

cerulean rose
zealous glen
#

-# burt_vibrating

rotund ridge
warped marsh
#

does that make a difference?

zealous glen
#

wait until you run across thunk’s misspellings

tall wharf
#

time to miku

tall wharf
#

CONSUMEABLES

#

i am getting gaslit

warped marsh
#

miku

zealous glen
#

Brazilian Miku when

warped marsh
#

SOON

#

WAVE 2!!’

tall wharf
#

I THOUGHT YOU HAD IT VICTIN

zealous glen
warped marsh
#

ah

tall wharf
warped marsh
tall wharf
#

i love miku still

zealous glen
#

@tall wharf

warped marsh
#

Wowie

frosty dock
#

ballin'

zealous glen
tall wharf
#

★★★☆☆

zealous glen
tall wharf
red flower
#

i will work on switching things over to some of the new features today

tall wharf
#

???????????????????????????????

zealous glen
#

I will work jimbo_spin at my job today YorickUncanny

opal spade
daring fern
prisma loom
#

I'm gonna do it next

dense vector
#

Peak cinema though

timid star
#

oops math problem that didn't remove cards that gives 0 or negative chips

knotty copper
#

Couple questions about Malverk

  1. I got these errors on the config texture pack screen and not sure what I did wrong, Is it because I only made an alttexture object of only a couple of things and not all?
  2. Is it possible to change it so the default joker that appears in areas such as the editions page to be replaced the default joker of a texture pack?
warped marsh
#

But also holy moly that’s so cool

#

Did you make this?

timid star
wintry solar
timid star
#

the card skins aren't mine thou

warped marsh
#

It’s so so so sick

#

Like it feels tense(?)

#

Which like with the limit of Balatro is impressive to replicate

daring fern
#

Can one only put extra collection entries in the "other" tab?

knotty copper
timid star
red flower
#

🔥 🔥

zealous glen
red flower
#

the damage step is represented by people forgetting to order their jokers before scoring

hushed field
#

hahahaha

#

the damage step happens whenever I walk over some lego, right?

dire palm
#

So, I made a boss blind that acts on G.play.cards. Is there a way I could make it act on only the scoring cards instead?

rotund ridge
#

yo @cerulean rose your the goat frfr

modern kindle
#

good schmorning chat

#

have we gottent he goat blind stuff released this day

red flower
#

yeah

modern kindle
#

hell yea

manic rune
#

hi di

modern kindle
#

bepis
todays the day aint it

#

your famous beta test

manic rune
#

today is indeed the day!

#

its not that famous

#

💔

modern kindle
#

i wish you the ultimate success

#

to me ur famous

#

manic rune
#

❤️

#

im just gonna see feedback if the gameplay loop is nice, since its more of a concept rn due to how many stuff r missing from my mod

#

like uhh, not all the relics are added yet

#

currently in an online class rn, so the mod will be out an hour later or so

modern kindle
#

after some assistance regarding splash color changes ive just been fuckin with those now, added a bunch of colors and have the game pick a random 2 each time you launch

been a fun lil time

modern kindle
manic rune
#

i want to add nice boss blinds which interfere with more than just scoring

#

soo that will also be a top priority after getting the playtest out

modern kindle
#

yea im hoping i can do some neat shit blind wise as well

manic rune
#

i want at least one boss blind to be finished for the full release

#

so that pep can have a taste of what boss blinds in my mod will be like

#

:3

modern kindle
#

with how much content you have you can definitely do alot that fw your own stuff

manic rune
#

-# i also want to add unique small and big blinds too, but i dont think that will be nice when you combine my mod with others

#

the sad thing about my mod is that its a standalone mod, so it will definitely outshine jokers from most mods

#

kinda unavoidable

modern kindle
#

yea unfortunately that be the wave at times

but i figure if the mod is fun enough people wont need other mods anyway

manic rune
#

but maybe if i balance my mod thoroughly then vanilla jokers can still be used

hushed field
#

I'm excited to try it at least Bepis! And to be as nitty gritty with my feedback as you want me to be 😛

manic rune
#

id love specific feedbacks lol

manic rune
red flower
manic rune
#

is that a new context

red flower
#

yes

manic rune
#

fire

hushed field
#

wait did the boss blind stuff hit smods today?

modern kindle
#

it sure did

red flower
hushed field
#

Time to add darth vader ig

modern kindle
#

so what, you just lose

#

lmfao

manic rune
#

using that with blind expander is gonna be so fucking cool

#

🔥

frosty dock
quartz ravine
#

Hey guys, do you think this is asking too much of a tarot card? Like is it too expensive, gameplay wise?

Select three cards. The first is destroyed and the other two are given a special edition

manic rune
#

-# im gonna forever glaze blind expander

manic rune
tall wharf
red flower
manic rune
#

-# but also, i dont really understand the effect

frosty dock
#

fair enough

hushed field
quartz ravine
manic rune
#

and it becomes that letter?

manic rune
#

i think its kinda inconvenient cycling through every letter

#

oh i see

#

:3

quartz ravine
frosty dock
#

looks at #550

hushed field
frosty dock
#

ideally I'd like it to be configurable, but just adding a non-conflicting keybind works for now i guess

modern kindle
frosty dock
manic rune
#

since blinds have calculation now (i think), you can just use that

dire palm
frosty dock
#

as of today, blinds support calculate functions

manic rune
#

^

#

update your smods

#

and go wild :3

frosty dock
#

but more information on what you want to do would be helpful

frosty dock
hushed field
# modern kindle could mix some effects, have a cerulean bell like effect for the force, then mes...

haha my main weakness of knowing jack shit about star wars strikes again , haha. I might go for something related to joker destruction, as that is somewhat tied to star wars in my notes. Though I mainly want something that feels force chokey, but besides moving jokers, I don't know what that'd be. Though, as I type this, maybe I can have him force a joker into slot #1 and weaken it to half strength each hand 🤔 I have the systems for that, after all

dire palm
modern kindle
frosty dock
#

yeah that sounds straightforward with blind calc

hushed field
modern kindle
manic rune
#

is it bad that i dont watch any movie at all

#

💀

#

i havent even watched titanic

hushed field
#

Nope, I haven't figured out an idea that's simple enough, haha. But I love the trilogy

#

I've also not seen Titanic. There's a lot of famous movies, it's difficult to have seen them all 😛

red flower
modern kindle
#

youd also win my heart if you can get mel gibsons braveheart in there :b

manic rune
#

magic man speaking magic words

quartz ravine
#

Wow! Did you know that Oops All Sixes stack with each other?

manic rune
#

-# yes

modern kindle
#

yes

red flower
#

yes

hushed field
manic rune
#

-# i thought thats common knowledge?

frosty dock
quartz ravine
#

insert the xkcd comic here

modern kindle
frosty dock
#

i forgot to escape a set of brackets

red flower
#

oh is it a regex pattern

hushed field
quartz ravine
#

Oh wow, so this is not the syntax to spawn a regular card in a booster pack!

#

local getCard = create_card("Card", G.pack_cards, nil, nil, true, true, nil, "foxNegation")

long urchin
#

attempting to make another joker and this crash happens when i try to hover over it after starting a run - Not before when im in the menu. I used steammodded's example mods castle which works, so idk whats going on. Any ideas?

manic rune
#

-# what the hell is that indentation???

#

you really played a Straight hand with that one 💔

tall wharf
long urchin
quartz ravine
#

Hi John, quick question

If I wanted to spawn a regular standard playing card, which set would that be?

manic rune
#

i actually have a joker which does the same, but connected it to context.end_of_round instead

frosty dock
#

Pretty sure SMODS.create_card doesn't support playing cards

manic rune
#

i dont think theres a need for hooks to achieve that kinda "reset suit/rank depending on your deck" effect

frosty dock
#

you can try with 'Default' or 'Enhanced' though

hushed field
native zinc
#

how do i detect if there are two queens in the hand? im trying a for loop and its going badly

long urchin
# manic rune

the hook is there so that it runs the reset command when the run starts, like it does with mail in rebate and idol

quartz ravine
long urchin
#

without it, every time you pick it up itll always start as an ace

manic rune
#

mhm, theres no need for hooks for that either

#

i use add_to_deck

#

to reset it when its added to the joker area

#

:3

long urchin
#

but what about when its in the shop?

manic rune
#

aka when you obtained it

manic rune
tall wharf
#

AAAAAAAAAAAAAAAA

quartz ravine
manic rune
#

🤷‍♂️ so it really depends on how you want it to look like, i suppose

long urchin
#

beh, im not really the biggest fan of that

manic rune
#

but i try not to rely on hooks and patches too much to get my jokers going

long urchin
#

thats fair, its the hook thats breaking it lol

red flower
#

you can also just use reset_game_globals and check run_start i think

long urchin
#

is that not what im doing?

red flower
#

why do you need the hook then?

long urchin
#

to activate the function when the run starts??

red flower
#

that's what run_start should do?

#

im pretty sure

long urchin
#

and it works so i dont know what i did wrong :V

long urchin
#

i am using that

hard flume
#

How would I go about checking if the first played card has a specific enhancement and destroying it?

manic rune
#

G.hand.cards[1]

red flower
#

no yeah i saw that, it just seems weird to have run_start and also need a hook but if that's what the example does then it must be fine

manic rune
hard flume
native zinc
long urchin
quartz ravine
long sun
#

hi! is there a context for buying a Joker?

long urchin
#

add_to_deck?

red flower
red flower
frosty dock
long urchin
long sun
#

thanks ^^

long urchin
#

john aure is here :0

frosty dock
#

also we don't encourage using create_card directly

red flower
long urchin
#

ok john you made the castle 2 card in modded vanilla, im trying to do something similar and its not working

#

do you think you could help?

long urchin
red flower
#

like delete the entire function

long urchin
#

but then it wouldnt ever change card rank...

tall wharf
#

how do i close the menu properly 😭

red flower
frosty dock
red flower
tall wharf
#

😭

zealous glen
#

Just create a copy of the menu behind it on top

long urchin
zealous glen
frosty dock
#

Alright I'm done fixing the bug i was dealing with, let me see

tall wharf
#

nvm

#

figuring it out alone rn

frosty dock
long urchin
#

what

#

wait then what would i use??

#

OH MY GOD

frosty dock
#

not sure where you saw that, but that's just not a thing

#

it's base.value

zealous glen
long urchin
#

i just checked game.lua it is base.value

#

thats like the ONLY part of the game that says value why would that change up JUST FOR THIS

red flower
frosty dock
#

where does it say rank

frosty dock
#

some local var names do i guess, but the game doesn't have much of a structure behind ranks

#

so most of that is from smods

tall wharf
frosty dock
#

looks familiar

long urchin
frosty dock
#

it's thunk code after all

#

don't expect consistency

#

else you might get consumed by j_gluttenous_joker

zealous glen
#

caino

#

consumeable

#

xmult, x_mult, x_Mult, xMult, etc.

frosty dock
#

what's an x_Mult

long urchin
#

Also I ctrl+f rank and replaced it with value, which fixed the error but now it's not working as intended, it's not converting ace cards to steel. Gonna see I it's a problem with mislabeling by replacing ace with a number so that it'll match up with the rank

tall wharf
#

GLUTEN

long urchin
manic rune
#

consumeable

long urchin
#

LOCAAL THUUUUUUUUUUUNK!!!!!!!!!!!!!!!!!!!!!

zealous glen
zealous glen
manic rune
#

🤹

#

why did i think that was a jester hat

#

💔

#

i thought that was a jester shurgging

#

what the hell

zealous glen
#

pepsi fever

long urchin
manic rune
#

dont go high on pepsi, yall hear me

#

shi go wild

zealous glen
#

it makes you be pis

hushed field
#

do UI nodes have a transparency knob I can toy with? I'm trying to see if I can fade an element in

zealous glen
hard flume
#

How do I destroy a playing card?

hard flume
zealous glen
#

You can use a return value

#

Wiki

tall wharf
#

WHY DOES MY BUTTON NOT SHOW UP WAAA

#

OK I NEED SET BUTTON PIP

#

WTF

red flower
hard flume
#

I tried that and it didn't work, but I'll try again

long sun
#

okay new question :)

#

context.buying_card works, but is there a context for generally obtaining a Joker?

tall wharf
long sun
#

🔥

frosty dock
#

context.card_added and context.card.ability.set == 'Joker'

long sun
#

cheers!! will update for that, and change the dependency

red flower
#

oh i should change the dependency too

long sun
#

huh, weird. updating caused a new error in the collection

#

lemme grab that

#

oh no wait, it's because i added something -w-

long urchin
#

Is there a way to check a card's variable via console?

long sun
#

nevermind!

#

what did i do wrong here? :>

#
set_ability = function(center, initial, display_sprites)
    card.ability.extra.current_rounds = 0
  end```
long urchin
#

I don't think that's the format for a function but I could be wrong

hard flume
#

can someone tell me wat's wrong?

long sun
hard flume
#

there's no error, its just not doing the destroying

long sun
#

so a logic error then, gotcha

#

lemme see

#

do the if statements apply? can you test that?

tall wharf
hard flume
tall wharf
molten ice
tall wharf
hard flume
long urchin
#

what does this error mean what did i do wrong

long sun
#

sorry for the lack of colouring -w-

#

ah no wait i'm dumb -w- i forgot = function

#

okay bingo! thanks :D

#

AHAHAHAHAHA OKAY SOMETHING BROKE

modern kindle
#

why ol boy leanin to the side like

old bane
#

does it make a difference if mult is doubled vs the total score being doubled

mellow widget
#

how would i go about making a seal have a 1/6 chance to destory the card it's on?

hushed field
long urchin
#

How do I send debug messages?

red flower
#

sendDebugMessage

#

print works too

long urchin
#

Is there a way to send multiple of those little notification messages? I tried doing multiple but it breaks cuz you can't do multiple return statements

return{
     message = "this is an example",
     color = G.C.Attention,
     card = card
}```
vast lily
# red flower

where do i find this guide, im a lua noob so this is all a bit daunting to me

zinc forum
#

attention_text might be what you're looking for

#

For a Nope! for instance

attention_text({
                            text = localize('k_nope_ex'),
                            scale = 1.3, 
                            hold = 1.4,
                            major = aura_card,
                            backdrop_colour = G.C.SECONDARY_SET.Tarot,
                            align = (G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK) and 'tm' or 'cm',
                            offset = {x = 0, y = (G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK) and -0.2 or 0},
                            silent = true
                            })```
red flower
zinc forum
vast lily
#

oh that's sick thank u so much

hard flume
#

Both parts

dire palm
red flower
#

you can use context.modify_scoring_hand to disable them

manic rune
hard flume
#

Oh thanks. That's why I was struggling

dire palm
manic rune
#

all the enhancement keys are located in game.lua

red flower
agile thistle
#

is FPS as high as it can go on the system or locked to a specific target?

dire palm
red flower
#

i dont think so?

#

you need to return add_to_hand = true to add a card and remove_from_hand = true to remove it and it has context.other_card and stuff

hard flume
#

what's wrong with this code? i have dream cards defined, but this joker isnt destroying them.

runic thicket
#

Guys this might sound dumb but where or how do i modify the "Oops all 6's" card

minor furnace
sonic cedar
#

does anyone know where local config = SMODS.current_mod.config would go as setup? like is it IN the config file, or in the main file, like where

prisma loom
#

is there a way to insert a table instead of one specific card type (currently 'Spectral')?

red flower
#

I recommend putting it in a global in your main file like

MyModGlobal = {} -- change the name to something unique
MyModGlobal.config = SMODS.current_mod.config
sonic cedar
#

i see i see

#

thanks!

zealous glen
manic rune
#

whats the normal weight for a normal booster pack

#

...i will just put it 10 and hope that its common enough

red flower
#

the common one i have is at 1

manic rune
#

oh

#

:3

#

i had it at 999 for testing, now im tweaking all values back to normal

maiden river
#

I do actually need my booster packs to show up more, so I should bump it up a little higher

zealous glen
#

Can we get much higher

vast lily
strong jacinth
#

I need ideas

#

How do I make an inventory system.

#

Like where I can combine two things from my inventory

prisma loom
sonic cedar
prisma loom
#

this works

#

and this doesnt

strong jacinth
prisma loom
red flower
prisma loom
#

yeah I tested it

#

how to add planets to the mix tho?

red flower
#

pseudorandom_element({'Spectral', 'Planet', 'Tarot'}, pseudoseed('obsidian'))

prisma loom
#

thanks!peepoLove

#

(sorry Im a newbie)

knotty copper
#

Ah 👍

lavish lake
#

I dont understand how people need lovely toml's, libraries and all that other stuff when all you need is just a json, a main.lua and some assets

old bane
#

would i be able to use a drawstep to make it so that a playing card draws a certain sprite for its center sprite based on a variable? I want to be able to draw any card enhancement backing but dk how

lavish lake
red flower
lavish lake
knotty copper
knotty copper
#

Is it possible to have a texture pack object that is applied for its main joker to also appear on pages such as edition and etc which use the main joker?

vast lily
strong jacinth
old bane
strong jacinth
#

Like the inventory system

#

I had this, but im pretty sure it wont work

vast lily
#

interesting

frosty dock
minor furnace
#

Watch an official balatro update come out and break everything

vast lily
#

real

frosty dock
#

1.1.0 will most likely take some amount of fixing on steamodded's as well as any mods that heavily patch

vast lily
frosty dock
noble schooner
manic rune
#

:3

noble schooner
#

:3

frosty dock
#

:3

noble schooner
#

:3

manic rune
#

:3

minor furnace
#

:3

noble schooner
#

:3

old bane
#

can i make it so that instead of drawing its sprite an enhancement can draw any other enhancement's sprite instead?

strong jacinth
#

:3

strong jacinth
green mica
#

What inventory system are you talking about?

wintry solar
strong jacinth
#

So i need a way for someone to see and combine those cards

green mica
#

Sounds like a really open-ended question

#

maybe you could do something like that menu that displays the vouchers you've collected, that's the closest thing to an inventory I can think of, besides just like the consumable area

long sun
#

this code for checking if the played hand is a High Card isn't working:
if context.before and next(context.poker_hands['High Card']) and not context.blueprint then
what should it be?

maiden river
#

I may be clueless
but I'm letting my jokers (with a custom rarity) start showing up in the shop
but I just keep getting a bunch of jimbos instead

#

oh I think it's this

#

although technically nothing should be in there...

knotty copper
#

thx for the help regardless

hasty ravine
#

I'm trying to make a custom sound, but it gives me an error when its supposed to play. Am I missing anything? The code for the sound and the code for the joker are in the same file, if that helps at all.

manic rune
long sun
#

will try, thanks ^^

#

works!! :D

#

sorry, one more question

#

is there a way to destroy all cards held in hand?

manic rune
#

hmm

#

use context.destroy_card, and do smt so that it knows which card should be destroyed, like storing it in a var or smt

#

this is what i did

silk scaffold
#

thinking to make a high quality deck mod with a couple of my ideas to add new ways to play balatro

manic rune
#

mhm, good luck with that!

silk scaffold
#

ty

manic rune
#

-# without the "!" i sound so rude for some reason 😭

silk scaffold
#

LOL

#

-# its ok...

maiden river
#

I'm feeling like I'm getting trolled
why is jimbo showing up 😭

manic rune
#

oh, whats this area for

#

thats new

silk scaffold
hasty ravine
maiden river
maiden river
manic rune
#

ohhhh yeah

maiden river
#

I'm trying to make a specific rarity of cards (a modded one) show up in the shop

#

but it's just adding jimbo

#

he's mocking me

#

who's the real fool now, I suppose...?

#

I reverted all of my changes but it's still happening 😭

hasty ravine
#

What does this error mean?

old bane
#

i feel like i've seen that error before but i can only think of your sounds that are being used as music not having the "music_" prefix to their key, but idk if thats it

hasty ravine
#

I redownloaded the audio file and it works now

#

So 🤷‍♂️

old bane
#

ah

#

must just be like an audio corruption glitch or something

old bane
# maiden river but it's just adding jimbo

are you making it so only that rarity shows up in shop? because jimbo shows up only when the game fails to load in an appropriate joker.
Do you have cards of that specific rarity already implemented? If not, implement a few to see. If so, maybe try turning up the weight by a lot instead of not allowing the other rarities to spawn at all?

maiden river
old bane
#

do you have jokers of that rarity already?

glad osprey
#

how do i load other files

#

so that everything isnt in one big ass file

minor furnace
glad osprey
#

ooooooh

#

i forgot the end parenthesis

strong jacinth
#

How do i create a button

prisma loom
# prisma loom

it seems like there's still a 'bug'
when card procs and upgrades it doesnt give xmult

#

but it supposed to upgrade, display message and then give it's xmult

glad osprey
faint yacht
knotty copper
#

A bit of a complex question
Is it possible to program it so to have a button which could enable or disable specific cards, tarots, blinds, etc from appearing?

glad osprey
knotty copper
#

Ye, how would I do that?

glad osprey
#

i do not know

upbeat bronze
#

this is retriggering every played card, not just the first and last scoring, anyone know how i'd fix this?

knotty copper
faint yacht
strong jacinth
#

Uhh how would i position this a little bit above?

red flower
upbeat bronze
#

yeah i was so close in figuring it out but it was just a piece of code required i didnt know existed

#

so i wouldve never gotten it

prisma loom
#

card upgrades but doesnt give xmult after

knotty copper
#

If you are storing the name of a deckskin in a language file
Is it stored in collabs like this or somewhere else?
UPDATE: figured it out it just needed to be a number value

#

I keep getting a table index is nil error so I assume not

faint yacht
bold sleet
#

Shouldn't you be returning this too?

prisma loom
#

it's in return brackets

faint yacht
#

The extra should execute after the "message" bit, though.

bold sleet
#

Like, as I read it, if the probability thing hits, the message gets sent and the extra thing gets updated.

#

Shouldn't you return xmult as well?

#

Maybe?

#

Not sure.

minor furnace
#

apparently, card.ability does not contain the key for the enhancement?

bold sleet
#

I haven't worked with enhancements a lot.

prisma loom
prisma loom
faint yacht
#

Should, as you can have another extra inside of an extra.

prisma loom
minor furnace
glad osprey
#

why isnt the deck here

minor furnace
#

ah

#

what I wanted was card.config.center.key

glad osprey
#

im an idiot

faint yacht
#

The initial return can be considered an "extra" table itself.

faint yacht
#

The return is a table of effects to do. If you want to "chain" them, you add an extra table with its' own set of effects.

prisma loom
#

all I want and quote 'make it so that after sending an upgrade message, card would give it xmult'

#

that's all

faint yacht
#

Does it give XMult when not upgrading?

prisma loom
#

yes

glad osprey
prisma loom
#

it has a base xmult

#

that gets upgraded

next timber
#

oh wtf now big cards are giving x2 chips again. they can't make their fucking mind up on if they should do that or not im so confused

faint yacht
#

You should probably move the entire giving of XMult outside of that block and only do the chance check and upgrade separately.

scarlet spire
#

testing out blindcalc, can it not use non-blind contexts like final_scoring_step yet?

next timber
prisma loom
#

why do I separate them

#

i'm confused :(

faint yacht
#
local upgradecheck = false -- set a temporary local variable
if chancecheck then -- do the chance roll here
  upgradecheck = true -- upgraded, set this to true
  card.ability.extra.x_mult = card:scale_value(card.ability.extra.x_mult, card.ability.extra.change) -- do the value change
end

return {
  message = upgradecheck and localize('k_upgrade_ex'), -- if our temporary variable is set to true earlier, the message should pop up
  xmult = card.ability.extra.x_mult
}
prisma loom
#

holy moly

#

i need to process this

knotty copper
#

If I understand these function correctly if I put the key to a custom joker, tarots, stake, whatever I could add or remove things from their respective pools?

rotund ridge
#

hey guys the crash log keep saying "[SMODS _ "src/utils.lua"]:1240: attempt to call method 'juice_up' (a nil value)" and im to stupid to get whats wrong AAAAAAAAAH

faint yacht
#

You should not need the card = bit... especially not if it is card = self.

rotund ridge
#

so i just remove it? im new to this and never codded before

faint yacht
#

Yeah, just remove.

next timber
#

why isn't this setting the hand size to 12?

rotund ridge
faint yacht
#

The other card = self, too.

rotund ridge
#

omg im soooo blind

prisma loom
#

message pops up but now not only it doesnt give xmult but it also doesnt upgrade

maiden river
#

there's like 20 of them lmao

onyx sonnet
#

Is there a way to iterate through unscored cards?

upbeat bronze
#

just to confirm, food jokers isnt a real definition for jokers in basegame? aka i'd need to define that list?

onyx sonnet
#

i cant find much of a way to differentiate between scored and unscored cards

upbeat bronze
#

hmm ok

red flower
upbeat bronze
onyx sonnet
#

go about doing what

upbeat bronze
#

making the list and being able to call upon that list in a joker's effect

hard flume
#

shouldnt this code work?

next timber
#

would be a bit easier to read if it wasn't in the Blue Zone

frosty dock
onyx sonnet
frosty dock
#

if context.individual and context.cardarea == G.play then defines one context (on card scored)

#

if context.destroy_card and context.cardarea == G.play then defines another (destroying scored cards in played hand)

#

to destroy then card in context.destroy_card, you should be using return { remove = true }

onyx sonnet
#
                if other_joker_ret then 
                    other_joker_ret.card = context.blueprint_card or self
                    other_joker_ret.colour = G.C.RED
                    return other_joker_ret

This is blueprint's way of copying an ability, with other_joker being the selected joker, im not sure if smods has changed the way this is done tho

frosty dock
#

we have SMODS.blueprint_effect

upbeat bronze
#

this is the plan, not even really sure where to start though

onyx sonnet
#

Oh

next timber
#

just make a table of every food joker

#

and then check if its in the table

onyx sonnet
#

yeah

next timber
#

ig

next timber
onyx sonnet
#

@frosty dock mr aure how do i check if a card belongs to the unscored card area?

faint yacht
# prisma loom Is this correct?

Well, I've written it as how I'd do it with a Joker... I'm just not sure how the enhancements work. I'm pretty sure there's other mods that did something like this that you can take a look at? Apologies for wasting time...

frosty dock
onyx sonnet
#

what do you mean by evaluated directly?

frosty dock
#

where it's provided directly with context and you're not iterating some list of cards to get to it

prisma loom
#

thanks for helping anywayspeepoLove

onyx sonnet
#

so in something like context.before, iterating through every card and checking for unscored wouldnt work?

scarlet spire
#

does blindcalc support checking contexts that aren't specifically made for blinds yet, or is that still a work in progress? currently i've only been able to get blind-specific contexts like press_play working with calculate

rotund ridge
scarlet spire
#

like, for example, if I wanted a blind to trigger after all cards have scored and animated, via context.final_scoring_step

next timber
#

thats. not a lot of them

#

its like. seltzer, turtle bean, popcorn, ice cream

hard flume
#

is this better?

onyx sonnet
#

gros michel and cavendish

next timber
#

and gros michel and cavendish, technically

upbeat bronze
#

Nah the issue is is im looking at the lua help page on tables and i dont even know like

#

How to make one

#

It really doesnt explain it well for complete idiots like me

red flower
#

{ "value1", "value2", "value3" }

hard flume
manic rune
#

sometimes i wonder if the number of modders is higher than the number of mod players in the balatro community

onyx sonnet
#

i think in this case they dont know how to fill it with jokers