#⚙・modding-general
1 messages · Page 58 of 1
i think i broke it
:0 progress
The card that stares into your soul
How’s you guys’ mods going?
i don't know
mine is dead
Oof
i didnt feed it for one day
At least you didn’t feed your mod after midnight
i over feed mine
I did and now I’m being eaten alive fml /j
Slowly getting interaction in its post, its great.
people are voting for my mod to be op so im happy
just updated mystjokers
now i will die for the next five days and then add exactly one thing to one of my mods
iunno 
cruel
its not a lie
anything related to ui is quite cruel indeed
ex-mults...
i genuinely don't understand lua
i don't think there's anything i'm doing wrong here
and yet the eldritch value initializes as fucking NIL
sounds like it might be a scope thing idk
where is this?
in a fake localization method i'm making
and where are you printing eldritch from
a function i've created to print table values legibly using recursion
so eldritch is local to þe localization meþod
hey can somebody show their code of how to register jokers and single sprites? im trying to register 3 jokers, but it crashes when it tries to load the third one
(with no crash message)
what is this card area? How can I access cards here? (it's booster pack's cards)
Iirc MystJokers have a Joker that interacts with Booster Pack
you can print table values using table.concat tho?
I use sendDebugMessage(table.concat(your_table)) a lot
þats a lot of characters to write print(table.concat(your_table))
I wonder if I can distinguish between pack types here
It's G.pack_cards
huh
I'm almost certain that I've tried G.pack_cards before but it always returned nil
will try again
dvrp has also screwed wiþ packs
this letter drives me crazy 🤪
my brain reads that as 🅱️ and not as "th"
ƿǝll ƿæ not goȝ fuðǝ?
pell pae not goz fude
yeah that returns me empty table
autumn on her way to confuse every person thats not well versed in 18+ years of online english vernacular

wait wrong tamari

we must go even further
Wasn’t there something about communicating in English?
Rules lawyer
#🎨・fan-art message next jttw joker concept starts here
ƿell i am a proper rules laƿƿer þank you very much
levels of 🤪 increased
its infectious
þats funny cuz ive only had internet access for about 14-15 years

tamariyam
meɪ æz wɛl ʤʌst juːz fəʊˈnɛtɪks æt ðɪs pɔɪn
əˈkɔːdɪŋ tu ɔːl nəʊn lɔːz əv ˌeɪviˈeɪʃᵊn ðə z nəʊ weɪ ə biː ʃəd bi ˈeɪbᵊl tə flaɪ.
bloke behavior rn
so what if i merge dankranks into moreconsumables, who would stop me
Y'all zonked up wtf
þat sounds like þe appropriate reaction to what i just said so wiþout furþer ado, i'm doing it
despair
my name is fine
lyman þere'll be a config hush
i think it'd be funny
eat my pants also dankranks is comedic genius
Modding chat lost its mind, it's over...
its joker
we had one? maybe between all of us
jimbover
we mess with ui thats why
how many layers of nodes are you on
The æ actually works, already better than 99% of swag name users
ah that's fully understandable then
balatro modding is a hivemind
wrong image
Jimbo to Jimbo
there we go
this really makes me feel like im on node[node[node[1]]] rn
real
If I ever end up in a padded cell for some reasons I'll write that all over the walls
þats.. not how it works....
Jimbo communication aborted
so true jestie
so true jestie
hold on i gotta put þat song on
chat is þis real
no
ok
its all in your head
wþf am i doing
autumn every time i read the thorn i just think you're talking like its 2007 myspace
þeh penguin of doom!!!
i never had or saw a myspace it was before my time
chat do you know how to access the cards in booster packs 🥺
I feel stupid
uhhhhh
vague gesture at codex
i do not know how feder did booster magic
code: x
you don't wanna look there its mostly ui
yeah I simply want to apply enhancement to cards when opening booster packs and that's it!
maybe look at the vouchers?
i forgot the playing card one
erm awkward...
Let that sink in
they hijacked standard packs iirc
why not check betmma vouchers i þink at least one affects booster pickpacks
I'll check, ty!
i WAS on þe internet for þat song

Ok, but let's not forget about this
code
o7 for the dude who sang that song
is he dead or just cringe now
he died in a police shoot out
oh fuck
this is in balatro code
þen YOU figure out how to use it

didn't lyman figure it out
yea heres my code
(and no i just update the soul pos on a trigger, not really animated)
snag, i got it now
autumn means like consistently animating them over a consistent frame delay
yea, i can try
im a code wizard
the animated sprite is just a class that inherits from the regular sprite class, so it should be a rather trivial drop in job.
is that not from the website template
it is
okay I checked that and it doesn't really do anything with the cards in booster packs
fuck
im sure love2d can handle a little bit of html code
itd be so cool if you were a regular wizard, and just like, cast fireball all the time
as a treat
Luke Caste
fun fact i am an actual wizard
who is Luke Caste
Alchemist
when i was 15 i was touched by a wight, which gave me a negative level (sent to the hospital), and due to rules as written, i was blessed with great power and managed to interger loop my way into being a level 20 wizard (severe hospital bills)
we're all wizards in þe eyes of a 15th century peasant and honestly who could want more in life
Can i find "select first skip tag" mode??
Someone told me that is exist, but i couldn't found it...
woops
wopes
wps
when are we going to start the foundation for balatro story mode chat
fajlþgbapghfidapgebrauitnerak;gþhfajkghfiapdþjelabguifadbgjk
i just realized þe description for moreconsumables still says "bad art"
true
im going to banish you from hell
no wait i derive my powers from it nooooo
Hey just wanted to share a sneak peak of something I'm working on
that looks gorgeous!!
Thanks !
ÞATS SO PRETTYYYYYY AAAAA
Thanks you all ^^
declare some variable using it and local_var it
oh
or myst can come in and be big brained
i literally just said yes </3
ALRIGHT TIME TO OVERHAUL MY MOD WOOOOOOOOOOOO
works flawlessly
im not sure you mean þe same þing i do but ok
im guessing theyre posting it because its outside the calc function
No I meant you,
You said can I (...)
And I say yes and show you an example.
How do these ideas look so far? https://discord.com/channels/1116389027176787968/1229636980887912449
followup question
will it break crossplatform compat if i use / or \ in paþs?
time to add css to balatro
tho it may depend on load order and if it gets called outside of a function or when the mod loads
I don't think so
i have no idea what it should do please come up with something funny
But I use "/"
"when blind is selected, add a random temporary edition to an uneditioned card in hand"?
I've finished the overhaul of the sound method in Steamodded core 🎉
awesome
Add a random font to 3 random cards in your deck when blind is selected
css is aw
awww
wait how does photograph make it so the card doesn't look like that
note to self when i wake up
discord server joker: reminder text has "go try (blank!)" that updates every blind with a list of random mods
except it would be more classy than just discord server joker
like an irc joker
emoticon joker even

minecraft splash text joker?
hatsune miku joker
css is aw
ill try bunco when bunco tries me
does anyone know how to get þe current game version
real
incredible
I found a function that literally creates cardarea for booster packs and still it tells me that it is nil
after I injected into it
if context.open_booster then
G.E_MANAGER:add_event(Event({
trigger = "after",
delay = 1.3 * math.sqrt(G.SETTINGS.GAMESPEED),
blockable = false,
blocking = false,
func = function()
if G.pack_cards and G.pack_cards.cards[1] and G.pack_cards.VT.y < G.ROOM.T.h then
for _, v in ipairs(G.pack_cards.cards) do
sendDebugMessage(v.config.center_key)
end
return true
end
end
}))
end
This seems to work if this is what you're looking for
Wow, thank you! Finally worked
hey guys im just learning to code hows þis lookin
☹️
can anyone dm me if you find a way to apply math random to blind mults with values that change every restart? value is always the same for me. i dont know how to properly seed it or how to do it
(bþw you can't use SMODS.findModByID outside of INIT)
idk i think it's a you issue
thorn.
you can do it in functions
honestly it might be the thorn's fault lmao
what do you mean
gnights lydude
good morning lyguy
You could have a table with some random values and use pseudorandom_element(table, pseudoseed('myrandseed'))
thanks for answering. what bugs me is how the game even manages to apply randomness lets say.. the shop? im totally confused. is it not random?
in perspective on how hard is to apply randomness which seems like a simple thing
I recommend looking into the function create_card_for_shop in UI_definitions.lua
But yea usually all random stuff use pseudoseed
myst haþ summoned þee
misread that as "myst halp summoned pee"
what.
refactoring code is lame and for nerds bþw
why did you replace the t in btw
Why don't you?
by þe way?
it's a 'th' sound
by the way -> btw
by þe way -> bþw
but no
bthw?
it would just be btw
(ik)
nw
Does anyone know if there's enhancement pool?
the th comes from "the"
not sure if I understand
the "e" comes from the "e" that's left over?
mys🅱️ ha🅱️ summoned 🅱️ee
oh yeah I updated 🅱️e lovely icon on 🅱️unders🅱️ore, wha🅱️ do you 🅱️ink?
much be🅱️🅱️er 🅱️an 🅱️e AI-genera🅱️ed crap 🅱️a🅱️ was 🅱️ere before
that’s naneinf times better
cursed
the typing quirks are multiplying
Pampa Joker video 👀 https://www.youtube.com/watch?v=BwQeNM7uL0k
Balatro is a poker roguelike deck building game centered around creating powerful synergies and winning with big hands. In it, you can combine valid poker hands with unique Jokers in order to create varied synergies and builds. Earn enough chips to beat blinds, including challenging boss blinds, to make it to the next ante and progress your run!...
Lyman are you even real yourself?
idk what the error means
im trying to find the 60 suit mod but im not able to find it. is it still available?
it means that a } was expected to close a { at line 10 neaer enemy_color
there's no "enemy color" at line 10
then where is enemy color?
Ninjad
line 40
ahhhhhhh i was searching for "60" not sixty. ty ty!!
Curse me being on mobile
either way, you're missing a }
👍
and i already closed the bracket there
every open brace needs a closed one, so you're missing one somewhere
can you post the code?
yes sure
so true
@slim swallow here it is
i've been using the blank joker template and the github explanation from #1227289111862448290
you're missing a comma after enemy_color_def
since it didn't see the comma, it assumed that the table was over
Did you save?
omg another person using colourselector and enhancedenhancements
Looks like you didn't close it after all
yeah , now it works
no , it loaded the wrong file so it didn't find the file named in the code at all
huh
something is getting passed a nil value instead of a table
make sure all your stuff that should be tables is a table
idk what should be
for this its useful to actually open up the game's code for reference and see whats stored at line 1333 of main.lua
if you have 7zip, its as easy as doing this
Chat write this down.
ew TortoiseGit who is torturing you
main.lua does not actually have 1333 lines, that's the injected code of Steamodded
so basically something about your joker injection is wrong
you should really be making a table
this is true, this only works if you do it on the exe with steamodded already injected
how do i do it 😭
i'll send you my init_joker function and an example of one of my jonklers
local function init_joker(joker)
local joker = SMODS.Joker:new(
joker.ability_name,
joker.slug,
joker.ability,
joker.pos,
joker.loc,
joker.rarity,
joker.cost,
joker.unlocked,
joker.discovered,
joker.blueprint_compat,
joker.eternal_compat,
joker.effect,
joker.atlas,
joker.soul_pos
)
joker:register()
end
local j_dead_shuffle = {
slug = "dead_shuffle",
ability = {
extra = {
xmult = 0.5,
suit = "Spades",
total = 1
}
},
loc = {
['name'] = 'Dead Shuffle',
['text'] = {
[1] = 'Gains {X:mult,C:white}X#1#{} per',
[2] = 'scoring {C:attention}Ace of #2#{}',
[3] = '{C:inactive}Suit changes every round{}',
[4] = '{C:inactive}Resets every round{}',
[5] = '{C:inactive}(Currently: {X:mult,C:white}X#3#{}{C:inactive}){}{}'
}
},
pos = {
x = 7, --- position depends on your atlas
y = 0
},
cost = 6,
rarity = 2,
blueprint_compat = true,
eternal_compat = true,
unlocked = true,
discovered = true,
atlas = 'HomestuckJokers' --your atlas here
}
init_joker(j_dead_shuffle)
also you should really be using joker api
thank you
you've way overcomplicated
i just started from the template on #1227289111862448290
that one is prone to breaking too
Update on my mod I’m making the aces real pretty looking
it's the github link on there at least trustworthy?
wdym
this
yeah
thats just the steamodded wiki
that's useful stuff
it contains information about the joker api
oi it does not break
thank you , I'll start again from scratch then
Change this
function SMODS.INIT.BlankJokerTemplate()
to this
function SMODS.INIT.SplatJokers()
and it should work
or use joker api and save yourself a headache
that uses the joker api
why are you registering a joker in k v pairs
when its like
easier to just use :register()
in case you want to add more than one joker
also using pairs doesnt gurantee the order of the jokers will be the same everytime
^
doing it purely with japi does guarantee that
the order of init is the same as the order in game
it's mostly made by me who has also worked on that API a significant amount
do note it's not complete yet regarding other features of steamodded
if any questions come up, feel free to ask here
also i'll recommend this guide https://discord.com/channels/1116389027176787968/1228599493914656788
its a very good api imo
compared to blind api 😨
newt you seem really cool can i friend req ya
sure
uh yeah there's just a lot of different functions that have blind effects
the joker api technically is missing the end of round money stuff
yeah im kidding!! plus i dont think blinds are like top priority
only seen like 2 mods with new blinds
not including my own
Also this goes for all steamodded APIs, but the amount of parameters the constructors have is obnoxious
I'll refactor that at some point to just take a single table argument
nil,nil,nil,nil,nil
lmao
Is it possible in lua to do :
local VARIABLE
SMODS.Jokers.j_VARIABLE_jokername
It seems obviously impossible, but I don't know this language really well
thank you
Ok it is
local VARIABLE
SMODS.Jokers["j_"..VARIABLE.."_jokername"]
just making sure, is the Steamodded injector compatible with the experimental build, or just the official release?
Hi, can you send that link again?
okay so an aside about pseudoseed, effectively pseudoseed is a random number generator but a kind of bad one (this is a demostration of it, x axis is a number from 0-100 and y axis is a number of times it appears, this is doing round(val*1000) on the outputs)
I can’t read 
ohey, a sine wave pseudorandom
Would getting passed into math.random() even it out? The distribution of the hash randomness doesn’t really matter in that sense as long as it’s random
But yeah it’s very goofy
so what pseudorandom and functions like it do is run the output of pseudoseed through the normal LuaJIT random number generator for the purposes of using its utility functions and maybe making the quality better
yeah I'm gonna try that next
But effectively when a pseudoseed gets created, that's the RNG state for that process for the rest of the game, which lets things happen in the same order etc
pseudoseed can't hit nan, I don't think
no divisions so you can't get math.huge
but yeah i know about the stuck nan bug
If pseudohash is already nan then that’s what goes into pseudoseed
iirc
There was also a bug in the demo where some seeds were the same
But that was fixed by factoring in the string’s length in pseudohash
Here's it after getting passed through math.random, so way better
So that's why you need both, pseudoseed makes it so that you get repeatable results and pseudorandom and friends make it so that there aren't clear biases in the output (edit: to be clear, it doesn't have to be done that way, but that's how balatro does it)
Anyone know why this causes a crash? This is inside my mods Init function
G.localization.descriptions["Other"]["card_extra_mult"] = { text = { "{C:mult}+#1#{} extra Mult" } }
maybe bc þeres no "name" field? idk if þat would crash outright þo
You would need a name field
card_extra_chips in the base game localization is defined like this though
card_extra_chips = {
text = {
"{C:chips}+#1#{} extra chips"
}
},
worked on a little something...
version 1.1 of Codex is coming along pretty nicely
there are some really fun things planned
yooo
HELL YEAH
Hi, sorry this is a basic question. I'm trying to mod this game from scratch for a final project in university. I'm on Mac and am having trouble finding my way through the files to get to the lua code. Does anyone have any pointers?
unfortunately as far as i can tell, mac support for mods is kind of rough at the moment
darn, well thanks
does extracting the exe not work on mac?
you can start here, though https://github.com/Steamopollys/Steamodded?tab=readme-ov-file#mac
exe doesnt even exist on mac. I have a vm I can probably use but its so slow
yup lol
ah ok
ok thanks guys
@solemn solar you have access to the .app, right?
yeah it's in the resources folder
yes perfect
you want to go into the Resources folder, and look for a .love file
ok thanks
.love is just a renamed .zip, so unzip that and you should be good to go
though i do recommend figuring out how to install a mod loader like this, instead of trying to modify the game directly
Yeah thanks I understand. The class I'm doing this for is Software Reverse Engineering so I have to drill down to the bottom and make the mod from scratch
or just adjust the code
oooooh nice
in that case, https://love2d.org/wiki/Main_Page will be an invaluable resource
xChips anyone?
real as fuck
too real...
i wanna add jokers to it but i gotta make it cleaner first
I'm proud of all of you
thank you meth
remember the weird background and stuff? Well, guess what card does it!
Not sure if it counts since it's not into any modded content but
like for a mod
or anything
THORN
power of þ
noþing would be possible wiþout þ
im trying to install the codex arcanum mod, but when i go to extract it into my mods folder it says it cant open file as archive does anyone know how to fix that?
Latest released thing I made, pretty fun to play around with for a bit and allows for some seeds with normally unobtainable bugs to happen
does anyone know if this works with music replacement? https://github.com/Infarcactus/Balatro-Custom-Sound-Player
like does everything fade in and out properly?
it seems to be intended for sound effects but since music has some unique properties i'm not sure if it's built to work with it too
good morning lymitosis
im so tired
so true jestie
gm Lymonsieur
question
proceed
what code do i use to change the color in a joker description :>
i have all the text n stuff on hand dw
like {C:attention}this{}
Alr
theres a bunch of different C: tags like C:attention, C:inactive, C:[suit], C:mult, C:blue, C:green
wht does c:mult do
red
and for X multipliers
like cavendish
"{X:mult,C:white}X3{} Mult"
for the red background with white text
bro read my mind

like this? {X:mult, C:white}x4{}
aye, but you want to make it X4 instead of x4
ofc ofc
and no space
does anyone know how tf the probabilities should be written
between mult, and C:white
pseudorandom and etc
ok done thank you Lyman :D
like code wise or description wise?
code wise
I'm assuming I need:
two different config values (?)
some weird thing in pseudorandom (???)
if pseudorandom('literally_any_word_goes_here_its_just_a_seed') < G.GAME.probabilities.normal / self.ability.extra.odds then
foobar
end```
is the gist
and I'd need only self.ability.extra.odds in the config then?
you'll want to return at least G.GAME.probabilities.normal and card.ability.extra.odds
and yeah
well this isnt really a lua thing
this is more so of "we want the same result every time" thing
ohhhh
lyman do you use aseprite?
yeah i did similar in my attempt at making a roguelike, afaik its standard?
it is indeed standard
side note, how do you make smthn show its current value?
like an upgrading variable?
yes
so in the text you can have anything you want replaced with a local variable of your choice
G.GAME.probabilities.normal will be always 1 in this case?
or how does that work
sick, i have but 1 (2) simple question(s): how do i make a gradient and can it be more than 2 main colors?
sorry feeling very stupid about this
you do it by doing #1#, or #2#, 3, etc, depending on how many local variables you have
its so it updates if you have oops all 6s!
Should probably do ‘string’..G.GAME.round_resets.ante
so if I'd want the chance to be 1 in 2 I'd need to change self.ability.extra.odds to 2 and that's it?
side note: would also probvably update with oops all 1s from that one mod then :D
maybe
idk i aint proficent in lua
that is true
yup
beautiful, ty!
presuming that youre doing #1# in #2# here and probability is 1 and odds is 2
right now th eonly variable i think is the one in the card
idk if this will help but we got this rn
if config.cubicJoker then
-- Create CubicJoker Joker
local cujo = {
loc = {
name = "CubicJoker",
text = {
'+ {X:mult,C:white}X2{} Mult if the sum of chips of played poker hand',
'is evenly divisible by 4', '{C:(ex. 16/4 = 4, valid. 6/4 = 2.5, invalid)'
}
},
ability_name = "cubicjoker",
slug = "cubic_joker",
ability = {
extra = {current_mult = 1, mult_mod = 2}
},
somewhere lower in your code there should be something like
return { BLAH }
end```
this is where you tell the game what local variables to store
oh wait you dont need a local variable here
OHHHH
this!
function SMODS.Jokers.j_cubic_joker.loc_def(card)
return {card.ability.extra.current_mult}
end
aye
so any time you want anything that uses dynamic text, you tell it to return there
so like for example, a joker that does "1 in 4" or something would return two variables
function SMODS.Jokers.j_pawn.loc_def(card)
return { G.GAME.probabilities.normal, card.ability.extra.odds}
end
wait so
and then i could write the text as #1# in #2#
in your text whatever piece of text you want to be replaced with that variable, put #1# there
(Sprite by Renren
)
and in here, change whatever is return here to the variable that you want displayed
i might be stupid what does that mean ;-;
to the moon + money tree + fiendish joker....
oh god tha implications
so you want the text to dynamically update right?
golden joker + rocketship too
yes :>
ok so your text here
text = { '+ {X:mult,C:white}X2{} Mult if the sum of chips of played poker hand', 'is evenly divisible by 4', '{C:(ex. 16/4 = 4, valid. 6/4 = 2.5, invalid)' }
this is your description
what part of it do you want to have the updating variable
rn it says
text = {
'+ {X:mult,C:white}X2{} Mult if the sum of chips of played poker hand',
'is evenly divisible by 4, currently {X:mult,C:white}#1#{}', '{C:(ex. 16/4 = 4, valid. 6/4 = 2.5, invalid)'
}
you got it
thats it?
yup
it wont show "Mult" afterwards so you should write it right after the {}
so currently {X:mult,C:white}#1#{} Mult
but other than that, that is how you format local variables for the most part
got it
sdifakdmgad
i didnt see this in time
click your bucket tool!!
you helped a lot im crediting you (and the people that helped in #1229979352926650550 ) because its the right thing to do :D
how do i use that!
testing the code first lol
i probably messed smthn up earlier before getting help loll
(i am juggling like 3 things rn lmao)
apologies
i dont think you can do multiple colors besides 2
with the gradient tool selected you can turn on dithering at the tool of the screen
ya sorry should've just waited for you to not be busy
how do i choose the 2 colors? i feel like its a very dumb question but when i use the gradient tool it just uses the 1 color
left/right click with color picker
it'll draw from your first color to your second color
first color being at the origin of where you clicked
you can if you do regular gradient and then turn palette into indexed just for this part 🤓
dont make me do an alpha ink painting using balatro palette
indexed?
you can change the color mode from RGB to indexed
uptate
it restricts the colors you use to whatever loaded palette you have
i changed the heck outa the joker
instead of + x2 mult
its x x2 mult
and wildly expensive
(and rare)
ahhhhh i see the option
hows this look
i think i wanna change the badge color but other than that looks good right! :D
you can make þe example line grey with {C:inactive}
thank you i was wonding how to do that
but its x x2 mult
(no joke its exponential)
hey chat any pro tips for quickly getting to your joker code when it is in three different places in the mod
dont do þat
I'm so tried of scrolling
i hope þis helps you
maybe write it ^2 Mult then?
spend less on code segments
ooh ok
comments are your friends
I can't move my injections when they're used by multiple jokers at the same time
what if its a different color too :OO
i'd write "Multiply this card's Mult by 2" probably
black text?
i think that would work
also localization...
orange background....?
exactly three places
i have multiple lua files now so i þink þat kinda þing is helped, idk still in process of fixing it all up lol
my code feels like playing factorio
i hate factorio 😭
splash makes this so easy to trigger dawg
factorio is my top-1 game lmao
I wish you could create some sort of links in code
like something similar to clicking on function to get to its origin
That’s what an IDE is for
but creating links from comments to other comments
I know in VS Code I’ll often search across multiple files using a keyboard shortcut to find what I want
Doing a modded joker only run and got an interesting combo ty @rare shell lol
yall get credit because yall helped so much
OH GOD
This is going to be a fun mod to play
i mean you can come up with a sort of searching system, maybe have every section start with a certain 2 letter combination, followed by the joker
wonderful
balagoogle no way
balagle?
looking forward to when snow's mod releases so i can use the last hand synergy deck with lyman's last hand synergy jonklers
so true
Xmult_mod instead of mult_mod
ok got it thank you
Yea sorry there's much more but usually it's an X behind the mult
mini question for anyone out there, should i release this? i wanna make more mathmatical jokers :>
the mod horde must grow
im gonna take that as a yes
👍
im also gonna rename it to be smthn to do with math
I must feed my modpack before it feeds on me
ideas are welcome
Bunco now has 1 full list of jokers (+ 3 more jokers (+ WIP Jimbo)!
i still dont have a single joker in my mod
i may need to nerf the modifier
just a slight nerf may be needed
(just got to ante 3 boss)
Dark Mult 😱
Your art is so sick
exponential mult :)
Or whoever made it
what the heck thats so cool
half of these are made by Renren
Shoutout
Ink and color compatibility with cassette?
c-side
unfortunately I don't think I can support any other suit mods at this point because I have my own balancing of additional hands
in-side
spectrums are much more powerful here because you can't get the new suits right at the beggining
imagine 4d cassette
for that reason there's no longer a moon/star support, that'd simply break stuff
your suits are still given at the start tho?
yea
look at the poker hand values here
these'd be very strong at the beginning; they're not meant to be played at the beginning
just beat the game to test cubic from ante 1 shop 0 (as if it was a challenge i guess)
mild nerf will def be needed (thats x1bil mult)
I kind of want to post the first part of my mod, but cadio hasn't gotten back to me in a while. Should i just use a placeholder for verdant shift till then, and release it anyway?https://discord.com/channels/1116389027176787968/1226203695365099681
weakest modded balatro card
what are you waitin on
I like that ^X2 is dark
it is exponential after all!
(instantly nerfing it into the ground)
chatgpt what does verdant shift mean
btw how do you check if you are on a specific blind?
You could double the chip divisibility requirement to make it “balanced”
Like first, second or boss?
if G.GAME.blind.boss
Lost to greed 😔
Hmmm
I mean it makes it so high card dont work so that’s a plus
i think
no it does
high card 8 would work
very much does stull
chip# has to be a perfect cube
Its based off of total chips not ones just from cards (level is accounted for)
wait how would I do this
OH CUBEROOT
I forgot abt that
That’s also much more difficult
thank u for idea :)
how would i cuberoot the chips by chance
idk lua math stuff
i think so
https://discord.com/channels/1116389027176787968/1227500439055110175
There’s also a lot of math joker ideas in this thread, would be cool to combine forces
ok and how would i check that its a whole number ;-;
math.round
???
Oh you mean check it’s a perfect cube
if math.fmod(math.pow(x,1/3),1)<0.000001 or math.fmod(math.pow(x,1/3),1)>0.99999
something like that
idk
yes
if math.pow(x,1/3) == math.floor(math.pow(x,1/3))
you could use a local var to avoid running math.pow multiple times þo
won't that mess up on floating point errors
Are you getting one billion chips in your modded runs?
you're a floating point error
so this?
if math.pow(x,1/3) == math.floor(math.pow(x,1/3)) then
self.ability.extra.current_mult = self.ability.extra.current_mult * 2
end
We shouldn’t be seeing those effects within thwt range
þis is final chips i þink so maybe
above or below 1b?
It would be funny to make the cube root the Mult (unless you’re still doing the doubling scaling Mult)
Below
i mean i did earlier when it was extremely unbalanced
Probably still works above 1B for a while
obviously just write out a table of every perfect cube þe game supports
if math.abs(math.floor(x)-x)<0.000001 then```
?
that would be a little much for me cuz i was struggling to color the text earlier ;-;
it worked, thanks👍
Why not just ==0?
ill try the current code i had and if that dont work for whatever reason ill try this :D
We should do that for my joker idea involving zeros of the Reimann Zeta function
its how i patch fibonacci in dankranks
Reimann - Legendary
Adds the imaginary part of the nth nontrivial zero of the Reimann Zeta function to mult, where n is the number of chips when triggered
1 more Aspect card and I am done with this hell!!!
ok but funnier idea though
just literally add fibo
function
and like
just run it until its like
higher than base
i dont know how to make an efficient fibo check þo
i can send you an efficient algo that i know of
þis is also funnier
i think its funnier when your fps drops to 2 because the game is running 40 iterations of fibo
This is incompatible with sixty suits though
??????
A four of eights should still trigger Fibonacci 
what the HELL is a FOUR OF EIGHTS
best mod
4 of 8's
i added like 3 suits
new cubic joker dropped
it INSTANTLY crashed my game when i played a hand so
welsh sword
caledfucker
truth be told i am not the biggest fan of mult/chip/xmult on probability
found out why it didnt work so
Well it’s common at least
lollipop was fine though because the effect is cute
Boutta oops all 6s this
me when showman gives a second oops all sixes >:D
Aspect cards my beloved
It works by like
it's exclusive effects
so like, only one aspect can be active at a time
vouchers but different?
but you can level up aspects
ooh
so this can go from 1 in 3 fail to 1 in 4 fail to 1 in 5 fail
thats much more into the rougelike
like charms, or trinkets
then you have Void
the BEST example in explaining how they work.
increases max?
yep
so if you have like
Void level 1
if you have 0 negatives
1 will be created until you have 1 negative
then 2
3
4
i dont like bloodstone for the same reason but i think it works because its one of the few random mult giving jokers and the bonus is worthwhile (but even then it had ot be buffed)
At last i've won
lyman what do you think of Doom
Coupon Voucher can go hard so fast
I made Doom specifically with probability jokers in mind
that blue is blinding
yeah
flash bang
I'm exactly doing that right now 😢
may i reccomend a fancy shmancy red color? :>
the value that increases here per level is the denominator
personally i havent seen a "bad effects build" type of design that i liked (as a whole package, that is), but ive seen a few of them
so it'll go to 1 in 4 on level 2
but i think youre on to something
its specifically on 1 in 3 when you first pick it up because
it makes it proc on stuff like Sucker (once), Bloodstone, Reserved Parking, Faceless Joker, Caledflwch
and then the second time you pick it up its power really gets good
because now it also gives negative fools of Wheel of Fortune, Glass cards
and the further you go the more luck-based cards it includes
But I'm currently working on an API to create a Consumable collection in one line
eventually you have 10 negative fools and pick up death
fixed cubic joker (it was looking for x, not hand chips)
wait lyman
do you think it'd be better if it was
negative death instead of negative fool
negative death would be insane
nah, negative fool is far more versatile
true
yea it's a bit annoying
hm true
negative death would just be shoehorning a playstyle as well, with negative fool there's a lot more choice and a lot more chance to screw up using it which it makes it more fun to use
oh yeah you can negative fool into temperance
or wheel of fortune
oh god
there's an engine
there's a really awful engine
you get like 3 negative fools right
wheel of fortune
it nopes
negative fool spawns
again
again
again
what have i done
doom is awesome
any strategy that goes straight into wheel of fortune meming is a good one
ok so holdup
holding
theoretcally this should only trigger on perfect cube roots right?
if math.pow(G.GAME.chips,1/3) == math.floor(math.pow(G.GAME.chips,1/3)) then
self.ability.extra.current_mult = self.ability.extra.current_mult * 2
end
(as in if chips total = perfect cube, xmult becomes doubled)
is there a function I can replace create_option_table with to just make the Ui for the consumable?

)
