#πŸ’»γƒ»modding-dev

1 messages Β· Page 571 of 1

random flint
#

oh

#

yeah it works now thanks :D

rotund sable
#

I'd set my_pos to local

#

For example under applied

local my_pos
hidden mirage
#

info_queue[#"Info"_queue+1] = G.P_CENTERS.tag_ethereal nothing appears

slim ferry
#

tags arent centers

#

also why is it [#1116390750314307698](/guild/1116389027176787968/channel/1116390750314307698/)_queue+1

#

WHAT THE FUCK

#

it should be info_queue[#info_queue+1] = G.P_TAGS.tag_ethereal

hidden mirage
rotund sable
#

Discord being discord ig

slim ferry
#

yeah because for some reason discord decided it should be a channel link

rotund sable
#

Discord is weird

dreamy lodge
#

I'm making a joker that turns into another joker, is there a way to make it keep the editions when it transforms? Because right now I'm just using add card and destroying itself so not sure how to make it work like that

dreamy lodge
#

does that really work?

umbral zodiac
#

preserves everything but changes it from the joker it was to the joker it should be

slim ferry
#

set_ability just changes the base card

dreamy lodge
#

I see

slim ferry
#

normally used for like enhancing playing cards most of the time but it works with any card

dreamy lodge
#

thx

slim ferry
#

what is getCard here. is that like a mistake or is the function just funny like that

candid storm
#

Im am playing a discontinued mod, that have a spelling mistake, for colour. I have a hard time figuring out where i need to change the mistake. Can someone help me get in the right direction?

slim ferry
#

you can use ctrl+shift+f in vscode to search in the entire workspace

#

or since its almanac you dont really need to since its all 1 file for some fucking reason

umbral zodiac
#

i mean ultimately i would recommend you just stop using mods that are discontinued
the balatro modding scene is quite harsh to mods that do not keep up and well ,,, almanac isnt exactly known for it's extreme high maintainence

candid storm
umbral zodiac
#

the crashlog tells you precisely where the error happened
the main issue is usually it doesn't actually go wrong there, it just becomes enough of a problem that it crashes at that location

#

it is either in jen.lua or the toml file for it i'd imagine

candid storm
#

Okay it might be a bit more obscure than i anticipated. I have found this from the mods discrod.

long sun
#

if SMODS.calculate_round_score() > 0 then

#

oh it might be Talisman

#

lemme disable that

daring fern
thorn basin
#

how can I make a function for a voucher that makes all booster packs in the shop cost 1$ less?
I've seen how clearance sale does but it does it with a percentage and goes through all the elements in the shop (which is not what I want)

thorn basin
thorn basin
#

oh, it was... simpler than I thought

#

thx btw!

thorn basin
spring gyro
#

Hello everyone

daring fern
#

Also you need to run the old function first.

#

Also you need to do for k, v in pairs(G.I.CARD) do v:set_cost() end in an event.

#

Also you should be using SMODS.change_booster_limit

mossy anchor
#

aight so to make movable numbers i just need to edit DynaText it hink

#

p sure that isnt used for JUST numbers tho

thorn basin
daring fern
thorn basin
#

aight

daring fern
#

That would cause an infinite loop.

spring gyro
#

Who can help with one proplem?
When I open the pack, I get a crash. I suspect that the map from sixsuit is causing the crash. And since I forked it, I need to figure out if this is true.

#

Anybody have
ideas?

thorn basin
daring fern
thorn basin
#

aight

spring gyro
#

But i dont understand whats wrong

calm karma
#

ive never done balatro modding before

red flower
#

once it adds achievements

calm karma
#

do you know of any mods which add achievements?

#

i checked cryptid but i dont think theirs are implemented

#

like theres the achievement.lua file

#

oh wait i see it, i just didnt check the right place lol

dapper sun
#

does anyone know why this hook isn't doing anything?

#

wait i'm dumb

#

i'm setting cost instead of sell_cost

calm karma
#

am i missing a part of documentation or something?
im looking at the example mods for steamodded

SMODS.Keybind{
    key = 'broke',
    key_pressed = 'p',
    held_keys = {'lctrl'}, -- other key(s) that need to be held

    action = function(self)
        G.GAME.dollars = 1
        sendInfoMessage("money set to 1", "CustomKeybinds")
    end,
}

that G.GAME.dollars, i keep seeing other stuff with G. at the start, is there anywhere i can find all of them?

dapper sun
#

nvmd still not working

red flower
#

also the sell value is card.sell_cost

dapper sun
red flower
dapper sun
calm karma
#

i havent used much lua so im sort of learning it as i make this

#

so how much of the main games code id understand is limited but ill make it work lol

red flower
red flower
# dapper sun

weird, seems like it should work if it's being called

dapper sun
#

gonna run a few more tests

#

found it

#

self.ability.extra.mult * self.ability.extra.value returns 0

#

i think it's bc it's being called before value gets set

jolly pivot
#

making a joker rn which destroys itself after a while and turns into a different joker. how do i keep track of the enhancements and make sure the new joker spawns with the same ones?

#

that return im pretty sure doesnt work

#

so ignore that

red flower
#

don't do that

dapper sun
#

can't u just set_ability?

red flower
#

do card:set_ability("other key")

dapper sun
#

tho u may need to do a few more things to update the cost and stuff

jolly pivot
red flower
#

what i sent

jolly pivot
#

well yeah but what will that do? is it replacing the whole destroying and spawning code?

dapper sun
#

yea it turns one joker into another

red flower
#

yes, it changes the card into the other card keeping everything

#

the biggest problem with keeping track of enhancements outside of that is that stickers are a pain

jolly pivot
#

ic

#

so just this?

red flower
#

yeah

jolly pivot
#

indents are wrong buh

#

thank you tho

calm karma
#

ok, so ive tried making an achievement, but it doesnt fire? do i need to have anything extra or would just having this be enough?

SMODS.Achievement {
    key = "10dollar",
    loc_txt = {
        name = "$10",
        description = {"Get $10"}
    },
    bypass_all_unlocked = false,
    unlock_condition = function(self, args)
        if G.GAME.dollars == 10 then
            return true
        end
    end
}

like that is my entire .lua file

jolly pivot
#

how do i add joker enhancements through debugplus again?

daring fern
jolly pivot
#

yeah

#

like negative n stuff

daring fern
jolly pivot
#

thank you

fathom star
#

how can i detect if a hand has only 2 suits?

jolly pivot
#

does a card being legendary automatically lock it to soul's pool

red flower
#

yes

cursive gazelle
#

How hard would it be to implement quantum jokers

fathom star
#

wdym

cursive gazelle
#

Adding joker abilities to another one

#

Essentially fusing them together

fathom star
#

hmm sounds hard , youd need to figure out what abilities to merge

#

and how would you name them?

dapper sun
#

how would you handle joker config values though

manic rune
cursive gazelle
#

That was my first concern

manic rune
#

quite a few jokers store mult in .ability.extra, for example

red flower
#

i think sdm was doing something like that

wintry solar
#

sdm has a version that works, yeah

manic rune
#

πŸ€”

wintry solar
#

you can also reference pinkprint in ortalab, that's sort of similar

manic rune
#

did i miss something during my 1 day of inactive 😭

cursive gazelle
#

Pinkprint lol

#

Funny name

manic rune
#

pink panther

cursive gazelle
#

Yeah you missed nothing actually

rotund sable
#

And I believe there was a :is_suit() thing

primal robin
#

Hey look what I'm cooking for UI enjoyers

manic rune
#

a ruler??

primal robin
#

Exactly!

manic rune
#

cinema.png

primal robin
#

I it okay if I'll make mod config accessible only via debguplus console?

#

Since it's only dev tool...

rotund sable
fathom star
#

btw does scoring hand mean that the card is scored?

primal robin
fathom star
#

and if its not scoring hand then does that mean its checking if its not scored?

rotund sable
fathom star
#

i sea

rotund sable
#

ok wait i think i found an interesting solution to get a number of unique suits in scored hand

#

and i have no idea if it works or is there a better way

manic rune
#

πŸ€”

rotund sable
#
if context.joker_main then
  local suits = {} 
  for _, playing_card in ipairs(context.scoring_hand) do
    suits[playing_card.base.suit] = true
  end
  print(suits)
end
manic rune
#

thatd work yeah

rotund sable
#

that works because i tested it

#

prints correctly at least

next timber
#

how do you make a deck force every card to have an edition?

still cedar
#

How to make calculation for joker which give a each played card a random enhance?

red flower
rotund sable
#

damn it

red flower
#

you would need to keep track of those separately and assign them to new suits after

iron steeple
#

I have a question regarding a deck effect I am trying to make. I want to create a deck where cards that get discarded trigger their end of round effect (for example gold cards would give money on discard)
I am overriding the discard_cards_from_highlighted method to call the smods calculate_end_of_round_effects method for the highlighted hands. However, the effects don't seem to trigger.

local ref_discard_cards_from_highlighted = G.FUNCS.discard_cards_from_highlighted
function G.FUNCS.discard_cards_from_highlighted(e, hook)
    local r_val = ref_discard_cards_from_highlighted(e, hook)
    if G.GAME.starting_params.yorickdeck then
        local hi_list = { cards = {} }
        for i = 1, #G.hand.highlighted do
            table.insert(hi_list.cards, G.hand.highlighted[i])
        end
        SMODS.calculate_end_of_round_effects({ cardarea = hi_list, end_of_round = true }) --iterates through cardarea.cards, which is why I don't use G.hand.highlighted directly
    end
    return r_val
end```
One thing worth noting is that the method works correctly if I use G.hand as the cardarea instead of creating it from G.hand.highlighted, but the issue is that it triggers cards that aren't being discarded as well (which I don't want). What difference is there between the cards in G.hand.highlighted and G.hand.cards that could cause the different behavior?
Or is there a potentially better method to do what I am trying?
red flower
#

the cards specifically check for G.hand

harsh belfry
#

does SMODS.scale_card work with talisman?

wintry solar
stiff locust
#

how do I get a playing card's chip value

#

i know about extra_bonus but i also want to get the base chips

#

and also change them if possible

daring fern
#

β€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œβ€Œ

primal robin
#

Maybe even display more than one at the same

#

And maybe even anchor them

#

Not sure

#

Rn working on this

stiff locust
#

do you mean retrigger it
did you solve this

daring fern
stiff locust
#

what the hell does rescore mean

#

if not retrigger

primal robin
#

Like retrigger retriggers

red flower
wintry solar
#

jokers don't "score"

stiff locust
sonic cedar
#

asking this here too

red flower
stiff locust
#

I wanna change the base chip value of the cards

#

to 0 to remove it i'm making a card that absorbs chips

sonic cedar
#

so base.nominal then right

stiff locust
#

well that function would obtain the base chip value maybe i havent checked yet

#

but would it be safe to use that to change it

rotund sable
primal robin
#

Obvious continuation

rotund sable
#

<@&1133519078540185692>

#

Anyone down for free money

grand violet
#

No

primal robin
#

bummer

rotund sable
#

πŸ₯Ί

obtuse silo
primal robin
rotund sable
#

Can you change the color

wintry solar
#

I just wanted the horizontal one 🀣

primal robin
rotund sable
#

Can you make a toggle to make it spin like a propeller

primal robin
rotund sable
#

Or make a chorma-style toggle (like a color changing thing)

primal robin
#

I can but... why?

rotund sable
#

Funny

primal robin
#

Will rename to rulers_dir

#

Makes more sense

wintry solar
#

what's the scale?

primal robin
#

1 pixel

#

Maybe should make scale aswell

#

If you mean between lines, want to make them configurable too

#

rn you see 1, 0.5 and 0.1 for big, medium, small respectively

#

(in game size units)

fathom star
rotund sable
wintry solar
#

yeah was just wondering if it actually represented in game units

primal robin
#

That's the whole point

wispy falcon
#

How would I make it, so that a locked description changes after a specific consumable gets used?

fathom star
rotund sable
#

Hmm

#

Actually no idea

#

Probably something with the rest of the code

fathom star
#

ouff

cursive gazelle
primal robin
#

I'm not good looking at all btw

#

Anyway, I'm cooking rulers

cursive gazelle
#

For ui ?

fathom star
#

okay what the fuck?

cursive gazelle
#

Sounds like a great tool

fathom star
#

i got my old code from the jokerforge and it works

#

even if its xactly the same

cursive gazelle
cursive gazelle
stuck yew
#

did you make sure to restart the run or recreate the joker card after adding config values?
they're stored in the card on creation and saved in the run file, so if you add a value mid-run, it'll still use the old saved config table

fathom star
#

how do i reference a specific joker?

primal robin
#

Never develop commands before, so

cursive gazelle
still cedar
#

How to make calculation for joker which give a each played card a random enhance?

daring fern
#

β€Ž

primal robin
#

Holy sh, this works!

fathom star
#

uhhh whys the sound not playinggggg

fathom star
rotund sable
#

It should be the same as your modprefix

slim ferry
# wispy falcon bump

use locked_loc_vars to have it use a different key after the consumable is used

rotund sable
#

Defined in metadata

fathom star
#

yes

wispy falcon
slim ferry
#

no, just return a different key

wispy falcon
#

What? Can you give me an example, please?

slim ferry
#

you can return key = "string" in loc_vars to make the object use a different key from your localization file (it will use the key you returned instead)

stiff locust
#

hey chat i'm struggling with math again

fathom star
#

how can i make a sound play when xmult is applied?

cursive gazelle
#

Perhaps

slim ferry
#

thatll replace the default sound

cursive gazelle
stiff locust
#

actually wait

#

no it's working properly

cursive gazelle
#

Sounds are defined with SMODS.Sound

stiff locust
#

i'm just stupid and also this value is way too big

#

hmmm

cursive gazelle
#

You can find more on that in the wiki

wispy falcon
# slim ferry you can return `key = "string"` in loc_vars to make the object use a different k...

So I would do the following and then just return the key for them?

                name = "{C:cstorm_astro}Aries",
                text = {
                    {
                        "{C:attention}Saves you if the blind requirement",
                        "is not met at the {C:attention}cost of a random joker"
                    },
                    {
                        "{s:0.8,C:inactive} No Jokers, no saving"
                    }
                },
                unlock = {
                    "Find the corresponding {C:attention}hint card",
                    "to know how to unlock this card",
                },
            },
             c_cstorm_aries_hint = {
                name = "{C:cstorm_astro}Aries",
                text = {
                    {
                        "{C:attention}Saves you if the blind requirement",
                        "is not met at the {C:attention}cost of a random joker"
                    },
                    {
                        "{s:0.8,C:inactive} No Jokers, no saving"
                    }
                },
                unlock = {
                    "Text bla bla bla",
                },
            },```
slim ferry
#

yeah

wispy falcon
#

Okay, gonna try that

slim ferry
#

if you want to make the hint stay permanently after youve used the consumable on the save youd probably have to do some extra shenanigans to store it in the save file

primal robin
#

That's actually so damn good

stiff locust
#

today I learned balatro sorts cards by ranks by using the base nominal value

slim ferry
#

what,,,,,,,,,,,, how..

wispy falcon
slim ferry
#

face cards literally all have the same one

#

no

stiff locust
#

Β―_(ツ)_/Β―

#

but it's doing that

#

i can tell because it moves all the ones with 0 nominal to the right

#

which is cool to have

slim ferry
#

i mean

#

ig that makes sense

#

since stone cards also sort to the right

stiff locust
#

yeah

#

i forgot about stone cards

fathom star
slim ferry
#

in the return

#

with the xmult and message

fathom star
#

ah i see

#

it works thanks!

wispy falcon
#

Wait, how do I even know when a specific consumable got used? OwO

slim ferry
#

check for it in context.using_consumable in the global mod calculate

wispy falcon
#

And how would I make the if statement in locked_loc_vars know that then? By using G.GAME?

stiff locust
#

how would I bring all the discarded cards back into the deck

slim ferry
wispy falcon
#

How?

slim ferry
#

wdym how

cursive gazelle
#

😭

wispy falcon
#

How/where specifically do I store it then? I've never stored anything outside of a run save, iirc

stiff locust
#

also is there a way to shuffle the deck

slim ferry
#

as long as you can actually access the variable then nothing matters

wispy falcon
#

Wait, as a global?

slim ferry
#

yes

wispy falcon
#

Okay, sorry. I'm stupid

slim ferry
#

what else would you store it as 😭

#

i mean you could also store it in G i guess

#

how change vanilla rarity rates. i forgor

primal robin
#

Is this good explanation?

wintry solar
#

whats the difference between -s and the big value of -st?

stiff locust
#

where's the | Enable Helicopter Mode

primal robin
#

-s limits how many units long is ruler

#

-st defined distance between lines

wintry solar
#

ah I see

#

I would maybe change size to length then

primal robin
#

makes sense

spring gyro
#

How to fix this

slim ferry
#

are you actually developing one of those mods? if not, then consider reading the message in the crash log

spring gyro
#

fork, not dev

slim ferry
#

well okay

#

you should probably test with less other mods first of all

spring gyro
#

I know when it crashes, but I don't understand why.

slim ferry
#

so you know the crash is actually caused by the fork

wintry solar
#

looks like some sort of bad loc_vars function

primal robin
#

I made -s to be actual size

slim ferry
#

the booster_choice_mod or whatever a thing yet or did i just make that up

hearty mesa
#

why are my text input boxes aligned to the left when i put align = cr?

(this is in SMODS.current_mod.config_tab btw)

local config_nodes =
    {n=G.UIT.ROOT, config = {align = "cm", colour = G.C.L_BLACK, minw = 4, minh = 4}, nodes = {
        {n = G.UIT.C, config = {align = "cm"}, nodes = {}}
    }}

config_nodes.nodes[1].nodes[1] = create_text_input{
        prompt_text = "...",
        max_length = 12,
        all_caps = true,
        ref_table = SMODS.current_mod.config,
        ref_value = "up_keybind",
        align = "cr",
        callback = function()
            SMODS.current_mod.config.up_keybind = SMODS.current_mod.config.up_keybind:lower()
            SMODS.save_mod_config(SMODS.current_mod)
        end
    }
-- It's just this four more times...
return config_nodes
spring gyro
slim ferry
#

what?

spring gyro
#

Moon?
It is joker from sixsuits

slim ferry
#

okay

#

is it related to the crash or?

spring gyro
stiff locust
#

ok no this isn't working

#

chat i need help moving all the cards from g.discard to g.deck

spring gyro
slim ferry
#

you need to put just the actual key as a string

spring gyro
slim ferry
#

does SMODS.Suit actually return the table it was given?

wintry solar
slim ferry
#

because if not that does nothing

stiff locust
#

how do I make it do that for all the cards in the discard

#

does it do that on its own

wintry solar
#

it does that on its own

stiff locust
#

that's awesome

spring gyro
wispy falcon
#

Anyone know how to save something into the save file?

slim ferry
#

did you

#

read what i said

#

about what youre doing not working unless SMODS.Suit returns the table it was given

spring gyro
slim ferry
#

where is star_suit defined?

spring gyro
stiff locust
#

it's doing it for some of them? but it's leaving some of them behind

spring gyro
slim ferry
#

hm

#

try replacing self.config with card.ability everywhere

stiff locust
#

it makes sense that it would be leaving the cards in the played hand that trigger the effect

#

but idk why it's not bringing back the other cards

#

for some reason it always leaves like 10 cards

#

what fi i just call the function twice

spring gyro
slim ferry
#

oh

#

loc_vars has to be function(self, card)

#

first

stiff locust
#

ohh my god

stiff locust
#

it's not leaving cards behind

#

the cards are held in your hand

#

i'm so fucking stupid

spring gyro
wintry solar
#

background colour should be in the vars table

spring gyro
robust marsh
#

do i need a prefix for achievement localization

slim ferry
#

what are the variables that change the options/choices in booster packs called again?i thought they got added at some point but i forgot their names

slim ferry
robust marsh
#

ty

red flower
wintry solar
wintry solar
#

not being able to link to headings in discussions is dumb

stiff locust
#

what function would I hook to set the value of everything

#

is it safe to do this with card:set_cost()

wispy falcon
stiff locust
#

check yggdrasil they do it

manic rune
#

save into G.PROFILES[G.SETTINGS.profile]

stiff locust
#

bepis have you beaten the getting_sliced allegations

spring gyro
manic rune
#

i will push a PR to fix that later

slim ferry
spring gyro
#

I thought about rewriting the code and dividing it into files, but I don't have enough knowledge yet

cursive gazelle
spring gyro
slim ferry
#

use debugplus

spring gyro
#

I install this mod and...

#

how use this mod?

rotund sable
#

press tab

spring gyro
#

And nothing....

slim ferry
#

hold it

broken rivet
spring gyro
#

Whats wrong........

idle plaza
#

Your file uses the header function(self, card) for loc_vars, which is outdated. It should be function(self, info_queue, card) instead.

broken rivet
robust marsh
spring gyro
broken rivet
#

wait

robust marsh
#

huh

broken rivet
#

i forgot to delete a copypaste 😭

#

ty anyway

robust marsh
#

oh droidcry

#

no worries, happens

spring gyro
loud summit
#

how do you get the round score

spring gyro
#

What?

rotund sable
#

like the score you need to get?

robust marsh
#

G.GAME.blind.chips

#

G.GAME.chips for your current score

spring gyro
#

I don't think I understood, but what do you mean?

loud summit
#

thx

robust marsh
wispy falcon
manic rune
#

anything saved in there will save for the entire profile

spring gyro
wispy falcon
manic rune
#

yes

spring gyro
next timber
#

how do i make a deck force everything to have an edition?

loud summit
#

loook at cryptid

next timber
#

i was hoping to avoid looking at cryptid's code but alr

red flower
#

i think cryptid hooks create_card

loud summit
#

yea

wispy falcon
#

I have a consumable that can only be used once before removing itself from the pool. How do I make a booster pack remove itself out of the pool, if there are no consumables left for it to pick?

wintry solar
#

Count the size of the consumable pool in the boosters in pool function

wild berry
#

why does my mod cause this???

wispy falcon
wintry solar
#

Use get current pool for your consumable type

wild berry
#

ive posted this problem before and literally no one responded

red flower
#

or something

wild berry
#

oh

#

how can i check for sounds

red flower
#

elaborate?

wild berry
#

like

#

is there a function

#

that plays or defines sounds

#

so i can see manually which one it is

red flower
#

are you trying to play your own sound or one from the game?

wild berry
#

thank you

wild berry
red flower
#

well, we can't help if you dont know your own mod lol

wild berry
#

yeah i know, thanks for pointing out what i need to search out for

#

:)

#

and i found out the source of the problem, it works now

#

tysm

willow scroll
red flower
#

yes

willow scroll
#

noted

#

im back on trying to implement back stickers fully

#

i think this is all i need

rotund sable
#

Gl

red flower
#

hmm i think for stickers you dont want these deck-like calculates

willow scroll
#

well its a "sticker" but really its just a permanent run alteration

red flower
#

ah ok

wide chasm
#

how tf does context.destroy_card work it keeps doing some weird stuff

willow scroll
#

so i think if i replace object = mod with object = MaxBoiSM.Backstickers[key] and change the surrounding logic itll work just fine :clueless:

#

que the 4 hour rabbit hole i fall into again

wide chasm
red flower
wispy falcon
#

Why does this result in the error "attempt to concatenate local '_type' (a nil value)"

            self.config.consumablesLeft = self.config.consumablesLeft + 1
            print(self.config.consumablesLeft)
        end```
red flower
#

youre missing the quotes around cstorm_astro_hints

#

also get_current_pool returns "UNAVAILABLE" for the keys that are not in the pool

wide chasm
red flower
#

and also if the pool is empty it will always have the default

wide chasm
#

scored and unscored

red flower
wide chasm
#

aight

red flower
#

get_current_pool returns a list of keys

#

if its not in the pool the key becomes that

#

its not removed

violet void
#

If I need to store data for tracking with how many custom cards the player wins with, should I use G.PROFILES[G.SETTINGS.profile].career_stats?

wispy falcon
red flower
#

check if the key is not unavailable to count

wispy falcon
#

Would this work?

            if card ~= "UNAVAILABLE" then
                consumablesLeft = consumablesLeft + 1
            end
            print(consumablesLeft)
        end```
red flower
#

i think so

gusty compass
#

did anyone figure out how to make the scoring_parameter and scoring_calculation bits work?

wispy falcon
#

Wait, you just said that, my bad

gusty compass
#

i cant seem to get a third parameter to show up

round lion
#

i dont think anhy of my lovely patches for mods are working

#

i dont see any of them in dump

#

whats causing the smods lovely patches to not have been acted upon

frosty rampart
willow scroll
#

hooray my backstickers are no longer jank πŸŽ‰

hearty mesa
#

why are my text input boxes aligned to the left when i put align = cr?

(this is in SMODS.current_mod.config_tab btw)

local config_nodes =
    {n=G.UIT.ROOT, config = {align = "cm", colour = G.C.L_BLACK, minw = 4, minh = 4}, nodes = {
        {n = G.UIT.C, config = {align = "cm"}, nodes = {}}
    }}
-- option cycle code goes here...
config_nodes.nodes[1].nodes[2] = create_text_input{
        prompt_text = "...",
        max_length = 12,
        all_caps = true,
        ref_table = SMODS.current_mod.config,
        ref_value = "up_keybind",
        align = "cr",
        callback = function()
            SMODS.current_mod.config.up_keybind = SMODS.current_mod.config.up_keybind:lower()
            SMODS.save_mod_config(SMODS.current_mod)
        end
    }
-- the same snippet four more times...
return config_nodes
gusty compass
frosty rampart
#

you need to actually switch to the scoring calculation, if you want it to show up for the whole game then you should hook Game.start_run like this

#

(to be clear, "expo" is the mod prefix, and "ecalc" is the key of the scoring calculation i defined)

gusty compass
#

so that was not explained in the discussion where the update was announced?

#

or was it and i must've missed it

frosty rampart
#

yea that was the one thing not shown in the example, although it was still documented earlier in the release notes

gusty compass
#

i see

#

so in the image you shown, is expo the prefix?

#

or is that all a key

round lion
#

i already checked and none of the patches appear

#

only the ones i made to the actual game

frosty rampart
gusty compass
#

ohh

#

just initialising the new calculation should work?

frosty rampart
#

yes, running SMODS.set_scoring_calculation("modprefix_calckey") in a Game.start_run hook will replace the scoring calculation with your custom one for the entire run

hearty mesa
gusty compass
#

btw, i was also asking how could i individually configure the different symbols within the gui, since in the discussion it suggests that the symbol applies in between chips and mult only

#

since from the example, all i got from this was SMODS.GUI.operator(scale * 0.75)

rotund sable
#

Aka everything that runs after the main file was loaded

hearty mesa
frosty rampart
# gusty compass btw, i was also asking how could i individually configure the different symbols ...

the SMODS.GUI.operator function is unfortunately hardcoded to create an "X"
to add custom text, it's a bit of complicated UI code. i've gotta run to class soon so i can't go in-depth about it, but long story short reference the original code for SMODS.GUI.operator(), replace the function call with the code that that function call normally runs in the scoring calc's replace_ui, and then you can replace the "X" with the text you want

gusty compass
#

i might see what i can do, but it does feel a bit sad that you need to add custom text to add onto the hardcoded X, i dont really need to edit Chips X Mult, but i was planning to do Chips X Mult ^ Power

frosty rampart
#

if you look up at my example video that's pretty much exactly what i did lmao (although i assume since you don't have parentheses the Power only applies to Mult?)

gusty compass
#

yea, i am just planning to do Chips X Mult ^ Power

#

kinda like Chips X (Mult ^ Power)

frosty rampart
#

yea ok that's what i said
lemme write out the replace_ui for you

gusty compass
#

thanks a lot

#

also yea, i misread your text earlier

#

my bad

frosty rampart
#
replace_ui = function(self)
  local scale = 0.3
  return
  {n=G.UIT.R, config={align = "cm", minh = 1, padding = 0.1}, nodes={
    {n=G.UIT.C, config={align = 'cm', id = 'hand_chips'}, nodes = {
      SMODS.GUI.score_container({
        type = 'chips',
        text = 'chip_text',
        align = 'cr',
        w = 1.1,
        scale = scale
      })
    }},
    SMODS.GUI.operator(scale*0.75),
    {n=G.UIT.C, config={align = 'cm', id = 'hand_mult'}, nodes = {
      SMODS.GUI.score_container({
        type = 'mult',
        align = 'cm',
        w = 1.1,
        scale = scale
      })
    }},
    -- this is the custom ^ text
    -- modify the scale or colour attributes if it looks off
    {n=G.UIT.C, config={align = 'cm', id = 'hand_operator_container' }, nodes = {
      { n=G.UIT.T, config={text = '^', lang = G.LANGUAGES['en-us'], scale = scale*1.5, colour = G.C.UI_MULT, shadow = true}}
    }},
    -- this is no longer the custom ^ text
    {n=G.UIT.C, config={align = 'cm', id = 'hand_modprefix_juice'}, nodes = {
      SMODS.GUI.score_container({
        type = 'modprefix_juice',
        align = 'cl',
        w = 1.1,
        scale = scale
      })
    }},
  }}
end
#

also obviously replace the juice stuff with your actual scoring parameter

gusty compass
#

thanks

sonic cedar
#

anyone know why this isnt working? still scores like non-splash despite the table containing that key

charred widget
#

How do i make it so a booster pack allows a hand of cards like an arcana pack?

sonic cedar
#

like
you want it to have playing cards in it?

charred widget
#

wait no not a standard pack

#

an arcana pack

#

like how it draws cards from your deck to use tarot card's effects

frosty rampart
charred widget
#

ok thank you!

next timber
#

can i make a deck give mult like a joker?

sonic cedar
#

thats a new thing isnt it

next timber
#

the docs are kinda unclear about what contexts work

round lion
sonic cedar
#

where's your times

round lion
#

wait, im supposed to add that?

#

i forgot to add it on another patch and it still worked

#

theres one with times and it still doesnt function.

red flower
sonic cedar
red flower
#

most contexts work except for like joker_main

sonic cedar
round lion
wooden nexus
#

So I wanna make a lovely patch on the code for the pre-existing stakes and to give one of them a win ante, where would I find that

robust marsh
#

what does the code for debuffs look like? If anyone knows

wooden nexus
#

lol

sonic cedar
rotund sable
#

lovely/dump>>>

sonic cedar
rotund sable
#

Ehhh fair then

wooden nexus
#

G.STATE_COMPLETE = false?

rotund sable
#

But some code could be replaced by smods

red flower
#

you probably want to take_ownership

sonic cedar
#

that too

wooden nexus
#

I'm trying to avoid using smods as much as possible really (i struggle with take_ownership)

sonic cedar
#

but they modify here

wooden nexus
#

ok so lemme test this out then

sonic cedar
#

this is in Game:start_run btw

wooden nexus
#

if self.GAME.stake >= 3 then self.GAME.modifiers.scaling = 5 end
This is my test to see if it works

#

I can't tell if this is different

#

I don't think it is?

#

the lovely dump says it is different tho

modern kindle
#

An easy way to see would be by checking it with and without your changes

sonic cedar
#

What ante is this

wooden nexus
#

2

#

Yeah it's the same with and without my changes, idk what's up

robust marsh
#

How would I make a joker have a chance to trigger its original effect instead of it always being guaranteed? I know i'd have to hook into Card:calculate_joker but from there I don't exactly know where to go

frosty rampart
sonic cedar
frosty rampart
#

that doesn't make sense

#

boss blind is 2x base score, 900 * 2 = 1800

gusty compass
#

Yea the calc works, but does it support up to 2dp?

#

Or only 1dp

frosty rampart
#

what is 2dp

gusty compass
#

2 decimal points

#

Like 1.01

frosty rampart
#

i think so? at least when it's below 10; i'm pretty sure it'll switch to displaying 1dp between 10 and 100, and then it won't display decimal points at all above 100
(it should still calculate at 2dp under the hood even above 100)

sonic cedar
wooden nexus
#

Ugh, this is gonna be a pain to take ownership of literally EVERY stake from Blue -> Gold

gusty compass
#

The power won't be above 10-100 often, so that should be fine

#

Thanks again

charred widget
#

if I wanted a joker to check if a specific other joker was immediately to the left or right of it after the end of a shop, how would I do that?

#

i already know it involves context.ending_shop

frosty rampart
#

check blueprint code in vanillaremade for how to get the joker immediately to the right, it should be fairly easy to adjust that for immediately to the left as well

charred widget
#

alright

sonic cedar
gusty compass
#

I suppose planet cards break the illusion a bit lol

wooden nexus
#

To take ownership of a stake, I would do

    modifiers = function()
        [Modifiers here]
    end,
)```
#

right?

frosty rampart
#

SMODS.Stake at the start, but otherwise yes

robust marsh
wooden nexus
frosty rampart
#

also i think if you take ownership of blue, it should apply to everything above it (because purple applies blue, orange applies purple, and gold applies orange). at least test that before you go through with taking ownership of everything up to gold

charred widget
#

is this the part of blueprint's code that detects the joker to the right?
if card.area and card.area == G.jokers then
local other_joker
for i = 1, #G.jokers.cards do
if G.jokers.cards[i] == card then other_joker = G.jokers.cards[i + 1] end
end

wooden nexus
#

I think i got it?

#

well it changed

#

it just made it crash with "Self" instead of G like i should've done

#

4 discards, so far so good...

frosty dock
#

hi

wooden nexus
#

is 1000 right for scaling 3?

frosty rampart
#

yes

charred widget
slim ferry
#

yea

wooden nexus
#

ok so i did get it working, good

#

Welp, time to add the rest

frosty dock
#

hardcoding to 3 seems not quite right

#

i think it won't work well with effects on top of it

frosty rampart
slim ferry
wooden nexus
#

I put minus 3 discards to test

errant arrow
#

for hex color codes, do i have to put it in a ['(colorcodehere)'] table?

robust marsh
#

uranium stake: -3 discards -4 hands

errant arrow
#

bruh

#

i hate discord's formatting sometimes...

frosty dock
wooden nexus
#

ok the -3 works on blue stake

frosty dock
#

(stake application order is not consistent)

wooden nexus
#

lemme look on purple

frosty rampart
#

yay, glad you don't have to take ownership of a bunch of stakes

frosty rampart
#

o...

wooden nexus
#

I have to move the effects down one after all lol

frosty rampart
#

dang

frosty dock
#

you can just do that in a loop though if you're just moving everything down

charred widget
errant arrow
wooden nexus
frosty dock
#

shouldn't be that hard, lemme show you

slim ferry
robust marsh
#

again if anyone knows, how exactly do debuffs prevent cards from scoring?

errant arrow
#

so i can just leave it as

badge_colour = FF4A44
wooden nexus
#

I plan to move everything from purple to gold down one level (so it's now blue to orange) and then give a new effect to gold

frosty dock
#
local stakes = {'blue','purple','orange','gold'}
for i=1,#stakes-1 do
  SMODS.Stake:take_ownership(stakes[i], {
    modifiers = SMODS.Stakes['stake_'..stakes[i+1]].modifiers
  }, true)
end
#

oops, there

wooden nexus
#

But what will happen to gold since i have the a stake beyond it?

frosty dock
#

right now, nothing

wooden nexus
#

i just need to make a new one specifically for gold then?

frosty dock
#

you'd take ownership of it separately for the new effect

#

as it's not an existing one

wooden nexus
#

I feel bad for whoever decided to do Travel deck on new Gold

slim ferry
# charred widget so what i'm trying to do is get Necrozma (a joker) to check if Solgaleo or Lunal...
local my_pos
for i = 1, #G.jokers.cards do --find own position
  if G.jokers.cards[i] == card then
    my_pos = i
    break
  end
end
local left = G.jokers.cards[my_pos-1] --left joker
local right = G.jokers.cards[my_pos+1] --right joker
if left and left.config.center.key == "<key>" then --check for the specific joker on the left
  --code here
end
if right and right.config.center.key == "<key>" then --check for the specific joker on the right
  --code here
end
``` my attempt at it (unless you figured it out yourself already)
errant arrow
#

for rarities, the default weight thing should equal 1 right? and if it doesn't the other rarities lower in chance in comparison?

wooden nexus
#

Whenever I do the take ownership of gold stake, it gives orange the new gold stake ability

frosty rampart
#

take gold stake out of the loop and just take ownership of it separately

frosty dock
#

did you take ownership of gold stake before the others?

#

it needs to happen after

wooden nexus
#

oh lemme try that

frosty rampart
#

and yea don't take ownership of gold until after the loop

wooden nexus
#

last thing i want is to delete rentals and make people go to ante 12

#

Ok it works there

#

and that works

#

Travel deck players when they ACTUALLY have to get to Ante 12

frosty dock
#

yay

#

sounds like fun

wooden nexus
#

I got a bunch I still need to do with it, but the plus side is that the blind size is 0.8X the size

frosty dock
#

that's huge for early game

wooden nexus
#

mhm, that's the idea. it's to reference how travel decks of cards are overall smaller

#

but also since traveling place to place is long that's why it's more antes to win

#

It does need some rewording now that I'm doing more with win antes than just the deck

errant arrow
wooden nexus
frosty rampart
errant arrow
#

ah

glossy sky
#

what's the context for when another joker is removed from your deck through any means (sold, destroyed etc.)?

charred widget
slim ferry
#

context.selling_card and context.card.ability.set == "Joker" for selling, i know destroying another joker is context.joker_type_destroyed but i forget what the other_card equivalent for it is

#

fuck

glossy sky
#

It seems to also just be context.card.

next timber
#

ok can someone help i cant figure out which context im meant to be using to make my deck give +4 mult. when i do context.before the mult gets immediately reset when playing cards start scoring, context.joker_main obviously doesnt work, idk what to do

slim ferry
#

use context.initial_scoring_step for the start of scoring

#

also context.joker_main should workj

#

it goes over every single area but the deck would calc last which kinda sucks

frosty rampart
#

^ score gets reset to the base poker hand value after context.before because space joker might level up the hand, so it needs to reset it to the new values

robust marsh
#
    apply = function(self)
        card.debuffed = true
    end,

    calculate = function(self)
        if SMODS.pseudorandom_probability(card, 'death_proc', 1, 2) then
            card.debuffed = false
            card:set_edition(nil, nil, true, true)
        end
    end,

How would i make my edition's calculate trigger even if the card is debuffed

frosty dock
#

calculation ignoring debuffed cards is bypassed when context.ignore_debuff is set

#

for contexts included in smods, this only happens for context.debuff_card

gusty compass
#

Do you happen to know if I can override planet cards to include the power bonus (and perhaps edit the anim) in the description or is it off limits

frosty rampart
#

including the power bonus should be possible, although i haven't done that myself yet
editing the animation should also be possible, but through a different route than taking ownership of the individual planets, and i also haven't done that yet

#

but i'll look into it
i might have to reference potassium

gusty compass
#

Since it looks a bit odd as during the animation, it looks as it it's only editing Chips and mult if it were two parameters only, and the desc only contains chips and mult values

frosty rampart
#

does the animation at least properly align with the new positions of the chips and mult boxes?

gusty compass
#

No as far as I can tell, it behaves as if it isnt following the new design, but the effect works after the anim

frosty rampart
#

ok, that's what i thought

wintry solar
#

What is this power bonus?

frosty rampart
#

new scoring parameter

gusty compass
#

Custom parameter

wintry solar
#

Ah I see

#

I want to make planet tooltips automatically add new parameters at some point

frosty rampart
#

would be very cool

gusty compass
#

You could also consider making the animations align a bit with the new parameters

#

Since its a bit off right now, only showing it add to chips and mult, but up to you

wintry solar
#

Yes that would be part of it

wispy falcon
#

How do I set the sprite for locked things and how do I make them unlock under specific conditions?

gusty compass
#

Btw are you planning to make the hand type values in Run Info configurable?

slim ferry
#

what hand type values in run info

#

as far as i know most things are already configurable

robust marsh
gusty compass
#

You know when you look at run info and find the hand types

#

Like for the amt of time you used them or their chips/mult values

slim ferry
#

i mean you can already just change those right

#

or do you mean like for scoring parameters

gusty compass
#

I'm not sure

#

The scoring parameters are fine as far as I know

#

Like the hand types in the run info menu

#

Just suggesting that it could prob be made to account for custom parameters maybe in a newer smods update idk

wintry solar
#

That menu is already awfully laid out, I wouldn’t want to try and squeeze more things in there tbh

frosty rampart
#

<@&1133519078540185692>

#

thanks mods

gusty compass
#

Maybe it could use scrolling to fit in extra space

#

(As in the hand types can be laid out wider and maybe a bit taller)

violet oasis
final dune
#

is jokerforge compatible with talisman & how do i find documentation/resources to make something talisman compatible

looking to try and create a mod (for the first time) that's compatible with cryptid (and i could also maybe use cryptlib?)
i need a good point of reference

slim ferry
#

i assume joker forge is compatible with talisman by default since it can use talisman-exclusive features

#

and i dont think joker forge has cryptlib stuff rn

#

well outside of ^chips/mult because cryptlib also has that

violet oasis
# wispy falcon Yes

You can do that by adding check_for_unlock = function(self, args) to your Joker/Tarot/etc

#

Like this one check_for_unlock = function(self, args) return args.type == 'win_deck' and get_deck_win_stake('b_anaglyph') > 7 end

#

It checks if you won a deck and has the gold stake with anaglyph deck

wispy falcon
#

Okay, can I put anything in there or only specific things?

rotund sable
final dune
#

i'm assuming yes so that's cool

rotund sable
violet oasis
slim ferry
wispy falcon
rotund sable
#

Conditions get SUPER messy

final dune
slim ferry
#

cryptid code is EXTREMELY messy from what ive seen

#

if you need an actual code reference use vanillaremade

rotund sable
#

A good point of reference is VanillaRemade if you didn't check that out

final dune
#

is that one compatible

rotund sable
#

Also it's wiki is very helpful

rotund sable
violet oasis
rotund sable
#

#fuck_talisman

wispy falcon
final dune
#

lol i just wanna make sure it works alongside cryptid so i can play it with my other mods

slim ferry
#

can info_queue just take a table of name and description directly instead of a center or localization key?

violet oasis
robust marsh
#

asking once again because I am starting to become a tiny bit desparate, how do debuffs prevent a joker from scoring droidcry

frosty rampart
#

you want to make something on a card score even though that card is debuffed, right? i'd recommend referencing the Blockbuster Counters API, iirc one of the counters debuffs the card its on for as long as the counter exists and it needs to do what you want to do in order to still be able to tick down

robust marsh
frosty rampart
#

oh i see
i think making it an edition is going down the wrong path tbh (unless you want the boss blind to apply the edition to random cards, in which case i still think just making the blind do it directly makes more sense)
if you do want it to be the boss blind itself doing this to all your jokers, i'd just make it go in context.post_trigger, roll the 1 in 2 chance, and if it fails, do context.other_ret = {} or something of that nature

robust marsh
wispy falcon
robust marsh
frosty rampart
frosty rampart
slim ferry
#

or at least

#

something that isnt an object or localization key at all

#

would help

robust marsh
wispy falcon
frosty rampart
#

i believe so, yes
make sure you have the post_trigger optional feature on too
(also if you want it to be "1 in 2 chance not to trigger" then you should actually just make it for if the roll succeeds, so that oops all 6s properly makes it a 2 in 2 chance not to trigger and fucks you over balatrojoker)

#

i will say i'm not entirely sure if doing context.other_ret = {} is correct, but try it and if it crashes then it should probably be context.other_ret.jokers = {} instead

frosty rampart
robust marsh
#

and yeah i fixed the chance

frosty rampart
#

(the argument to unlock_card has to be the center i think, not a card object)

robust marsh
#

weird, the jokers are firing as usual

frosty rampart
#

hm

wispy falcon
robust marsh
#

i'll try context.other_ret.jokers = {}

#

yeah that worked i think

#

holy hell

#

yeah it worked

frosty rampart
robust marsh
#

@frosty rampart thank you so much droidcry

frosty rampart
#

happy to help

frosty rampart
#

if i knew i would've tried helping already :<

robust marsh
#

actually i should ask while i'm at it, can I draw a shader over the jokers if this blind is active? This was also why I used the edition

slim ferry
#

actually ill just try doing shit with the info_queue for now

robust marsh
wispy falcon
robust marsh
frosty rampart
#

actually this is a consumable right

wispy falcon
#

Yes

frosty rampart
#

it would be c_modprefix_key

wispy falcon
#

Oh, right

wintry solar
frosty rampart
# wispy falcon Oh, right

anyway you should do P_LOCKED, not P_CENTERS, and check if it exists before unlocking the card (P_LOCKED is a table that only contains locked centers, they're removed when they're unlocked)

robust marsh
#

alrighty

wispy falcon
frosty rampart
#

after checking that G.P_LOCKED.c_modprefix_key exists, yes
and do all this alongside the code that spawns your card, not in the card's check_for_unlock function

wintry solar
sinful crown
#

does anyone know how I would go about making a joker that has a chance to turn any scored card into a negative card?

slim ferry
#

idk i want to just dynamically generate a single box of tag names instead of tooltip soup

#

if possible

red flower
modern kindle
#

woah both N and eremel

#

my goats

red flower
#

hii

final dune
#

How do I assign a Joker to use Cryptid's Epic rarity? So it has the same rates.

frosty rampart
#

do you mean cryptid crossmod/dependency actually using the epic rarity, or just a new rarity that has the same rate as Epic in cryptid?

wispy falcon
frosty rampart
#

just check if it exists, not if it's equal to true

#

if G.P_LOCKED.c_cstorm_aries then

wispy falcon
#

Okay

frosty rampart
#

rarity = "cry_epic"

#

make sure to either make cryptid a dependency for your mod, or to check that cryptid exists before defining the joker

robust marsh
# wintry solar https://github.com/EremelMods/Ortalab/blob/498cbebaa0226853b76a8d2475717ad393fa5...
SMODS.DrawStep {
    key = "ghostly_eff",
    order = 20,
    func = function(card)
        if G.GAME.blind and G.GAME.blind.config.blind.key == "bl_tdec_death" then
            if card.sprite_facing == 'front' and (card.config.center.discovered or card.bypass_discovery_center) then
                card.children.center:draw_shader('voucher', nil, card.ARGS.send_to_shader)
            end
        end
    end
}

I'd imagine it's something like this but not too sure

wispy falcon
frosty rampart
#

idk then

wispy falcon
# frosty rampart idk then

Wait, the print doesn't get output...

            print("Scorpio!")
            unlock_card(G.P_LOCKED.c_cstorm_scorpio)
        end```
frosty rampart
wispy falcon
#

And what do I put into unlock_card()?

frosty rampart
#

G.P_CENTERS.c_cstorm_scorpio

wispy falcon
#

I don't know why it has no sprite but it works :D

wispy falcon
#

Anyone got an idea why it has a sprite after going to the main menu and then continuing the run?

round lion
#

my lovely patches arent working.

#

the ones that are for smods just.. dont

#

no errors or nothing

#

i have the headers like

robust marsh
#

@frosty rampart sorry for being a bother, I wanted to ask how would I exclude a singular joker from the effect that you helped me with earlier?

frosty rampart
#

if it's one specific joker, you can probably just hardcode it. check if context.other_card is the joker you want to exclude, and only try to disable the trigger if it's not that joker

frosty rampart
round lion
#

yeah i might just skip crossmodding alltogether at this point

wispy falcon
round lion
#

its not happening

ocean sinew
#

How would I make a card not appear in the collection?

#

but be able to appear in a run

#

like a secret card

round lion
#

like genuinely, i have to toml patch the function

frosty dock
#

how are you checking if it's happening?

round lion
#

yet if these tomls dont work i cant do anything

frosty rampart
ocean sinew
#

thanks

#

so I just set to no_collection to true

round lion
#

i cant find anything in the logs about why its failing

frosty rampart
ocean sinew
#

cuz having it set as functions would give more control over it

#

I think

frosty rampart
ocean sinew
#

And like and subscribe

frosty dock
#

<@&1133519078540185692>

frosty dock
#

which I assume is case sensitive on lovely's side of things

slim ferry
#

is there a way to get the SPECIFIC booster currently opened instead of just the kind?

faint yacht
#

SMODS.OPENED_BOOSTER.config.center.key

slim ferry
#

okay

robust marsh
frosty rampart
#

yea definitely hardcode it

robust marsh
clear ocean
#

for the audio format are mp3's allowed

timid zinc
#

is there a way to have a playing card apply an effect only when it's in hand that's not just using update cause that seems inefficient

timid zinc
clear ocean
#

what audio format is recommended then

timid zinc
#

ogg

clear ocean
#

let's crack out audacity then

gilded goblet
#

does context.joker_type_destroyed not check for itself? i wanted to check if one specific joker is destroyed and do some stuff

timid zinc
#

increasing consumable slots

wintry solar
#

from a playing card whilst it's held in hand?

timid zinc
#

yep

wintry solar
#

that seems exceptionally niche in it's use

timid zinc
#

yep

#

i meant for it to be for jokers only but well

final dune
timid zinc
frosty rampart
#

reference dichrome in paperback, it disables itself from appearing on playing cards I think
(although it still has an effect when it's on playing cards in case other mods fuck around and somehow get it to happen anyway)

clear ocean
#

not sure i should include the gumball voice lines (20 and 21)

robust marsh
timid zinc
robust marsh
#

i'll figure out how to hardcode thi s when i wake up good night gang

timid zinc
timid zinc
clear ocean
#

is there a way to do like a pseudorandomn and have it like 'k_teddy' .. x and 'teddy' .. x

frosty rampart
clear ocean
faint yacht
feral tree
#

bump

red flower
gilded goblet
red flower
#

you probably need to hook or patch something for that

gusty compass
#

Isn't there an attribute to removing the default message

#

Remove_Default_Message I believe

red flower
#

yes but it won't work in this case because the card is not giving the chips

#

they want to remove the playing card's chips

#

the base ones

gusty compass
#

Not the additional ones?

feral tree
#

playing card's chip message, doesn't have to be the actual chips itself

#

just the message

gusty compass
#

If you want to remove the message, there is an attribute that I'm not sure if I'm correct, but is called Remove_Default_Message

#

It removes messages such as chips/mult gain I believe

red flower
#

lowercase but yes

gusty compass
#

Yea my bad lol

#

So almost every attribute and function is normally written lowercase?

red flower
#

yeah

gusty compass
#

Alright

red flower
#

classes are CamelCase

gusty compass
#

Imo it just seems a bit redundant to use two types of case (prob cus I normally just stick to one and its now a personal preference)

red flower
#

everything in lua is a table so it makes sense to differentiate

gusty compass
#

Fair

willow scroll
gusty compass
#

Well don't make the mistake of writing it camel case with that like I did πŸ™

feral tree
red flower
#

yeah

gusty compass
#

Yea it looks fine

red flower
#

i dont think it will work tho

ocean sinew
#

ngl they should change that to removedefaultmessage=true instead

gusty compass
#

Huh?

ocean sinew
#

camel case L

feral tree
#

it doesnt yeah

gilded goblet
#

makes it harder to read

gusty compass
#

Can't be asked to type _ πŸ˜”

ocean sinew
#

I can read it fine

#

actually should be named to

#

egassemtluafedevomer

gusty compass
#

Also what does context.other_card add to the if statement exactly?

ocean sinew
#

that way you practice writing backwards while coding

red flower
# feral tree it doesnt yeah

yeah i dont think there's an easy way to do this. idk where in calculation does it make sense to patch something

ocean sinew
#

so you get better at coding cuz u can write backwards

gusty compass
#

Is he trying to simply get rid of the chip message for a card?

feral tree
#

yes

gusty compass
#

I don't really have much knowledge on card context since I use jokers as the main source, but I'm not really sure what context.other_card adds here

gilded goblet
gusty compass
#

I'm not sure however

feral tree
#

context.other_card is each individual playing card played

gusty compass
#

Hold on

#

Context.Individual is for joker effects to happen on cards

dusk wadi
#

help it does this every time i press play hand (using divvy's preview, fantom's preview doesn't work)

gusty compass
#

Im pretty sure context.individual is used for jokers to play their effects on cards

feral tree
#

do i need to update my smods or something for remove_default_message = true to work?

red flower
#

no, a joker can't get rid of the playing card's chip message

#

remove_default_message is used if you want to get rid of the message your joker is giving the card but in this case you have none

gusty compass
#

What I meant is that context.individual doesnt seem to belong here

feral tree
#

ah

red flower
feral tree
#

get rid of the message showing the number of chips the card scored and keep the message my joker is showing

gusty compass
#

You want to replace the message?

#

Ah

red flower
#

yeah you would need to hook or patch some calculation function for that i think

#

you can't do that from calculate