#⚙・modding-general
1 messages · Page 9 of 1
Esp with that one mod that gives you 5 of a kind with the same suit
I know what I'm using my planet cards on 🧠😆
AYO WTF
lmao now that's a sight to behold
what's normally there?
How the heck did the ante even show up there ahaha
an 8-character seed
But this seed is several hundred thousand characters
ohh
That’s “5?” because of the demo
Monka
im on ante 39 and i got this
yeah that normally happens on ante 39
the most dubious deck (back is temporary)
nvm (this is too strong)
and now for the most cursed joker ever
who's paul
There is a save file we can edit?
you have to deflate .jkr files in %appdata%/Balatro/(1 or 2 or 3)
maybe 7zip can do this
Actually there is a Save editor if I remember
No idea how it work, but you can try it!
@floral jewel
hi, is there a listener for onCardHighlight or smth like that?
Thank you. But usually not into letting random websites alter files. Can't be 100% sure what people can do these days.
I think all the code is there yeah?
On the GitHub?
Found it. If anyone will need it, just do override for Card.highlight or Card.click function
Actually not 100 percent sure about that site having a GitHub but it's just modifying a save file too
Not an exe or anything
Can't inject any malicious code or anything that way and save editors like this are pretty common for lots of games like these, hollow knight comes to mind immediately
the more i think about it the more i want a mod that just gives you one completely dumb card in your hand
every card enhancement that didn't stack before would stack
and the card would have all of them
every single one
You should be able to consider it pretty safe. Run it in a sandbox if you want @floral jewel
True, but I rather learn how to do it myself. Need to unpack the jkr.
there is a save editor online
#1209675501585825822 message
You can with Balatro savefiles
i use that to convert it to json
Yeah we were talking about that haha
it doesnt have to be that serious
u can also look into the code of that editor
fo reference
Where's the code at btw?
Is it on a GitHub?
I thought it should be but didn't immediately see it on the awesome Balatro page
the probability of you being attacked through a save file for a game written in love2d would require someone to really really want to put a rootkit on your system
i'm talking like federal level investigation stuff
there would need to be several exploits used to bridge the gaps between all the frameworks the game is built on not to mention save files are sanitized internally and only compressed into a binary format for efficiency
not to mention any modern system sandboxes applications to some level
there's just compounding probabilities here
Tbf Steamodded offer some kind of protection againt this
and the probability is close to 0
But it can still be very harmful
Even more
Way more
The save files works totally differently than other games
The game load them as pure code
Lua code, but with standard env so it can be harmful
No need for assembly code to be bad lol
i feel safe running this on linux
Steamodded isolate the env while loading them
literally nothing is at stake
I dont know if this is the place to actually find out but with lua is it possible for the mods to eventually make it to steam community as the option for install?
there would have to be consensus on a modloader
and the game is new
and there are two loaders that do similar things at a different sized scope
I mean, lovely could technically take care of the modloading 
I already shared a lot of informations about this on the Discord, you can search them with the "Workshop" keyword on discord
you could beg localthunk for an official modding api
but
i doubt it's going to happen since the game is so much of a finished product
You should do the same research than D17 lol, I already send a lot of informations about it
@formal wing
That's not even the subject lol
Anyway, for everyone in the future seing this message: DO NOT LOAD UNTRUSTED SAVE FILES. Even if Steamodded try to protect you against some of the bad stuff that can happen, it will not fully protect you against everything it can do.
@tacit mountain Thank you for pointing me in the direction of the info i was looking for!
how do you make a card polychrome I have been looking in the code and cant find it
Take a look at this: https://github.com/Steamopollys/Steamodded/blob/3ecc7a5570e0f1e5dde5d9f55e0888a00ab8f2bf/example_mods/AbsoluteDeck.lua#L6
The code is strange because coming from the Demo, but still working
how do you add poly foil and holo to cards
I dont think that will work for me
I am using the challenges code
my_card:set_edition({
polychrome = true
}, true, true)
Seems pretty polyvalent, even for challenges but tbf I never trully touched them.
I can see where he add enhancements like stone and glass
plus with redseal it is g='red'
Not sure what keyword is used for editions
that is what I am trying to find
Let me take a look
That´s it for the Joker will it work with classic cards ?
But that's for a Joker, try the solution I gave you
this?
Nop thats the card object
It need to be inside deck
deck = {
type = x,
edition = x,
cards = {x}
}
Something like that
Without --
Mb forgot to cut them
edtion typo?
i fixed it and added a comma
didnt fix it lol
wait
it loaded but not polychrome
e is for terrot effects and g is for seals if only I knew what stands for poly
idk
does this help
just in case you aren't using one, you should really use an IDE or a text editor like VS Code. will make life a lot easier
True i use vs its great
Idk i made a fake back
rip but I was able to make a challenge
Hey guys, I made a whole overhaul mod before knowing about the modloader, and thus the mod file is just a modded exe. Is this alright for upload or is there an easy way to migrate it to modloader type?
this is entirely out of my field of expertise, but is it possible to get the source code from the balatro executable? lua isn't a compiled language so I assumed that a memory dump or just looking in the executable would work but I have no leads from that point
I want to start reversing the RNG to maybe see if a seed finder is possible
You can extract the code with 7 zip
It's in the main exe
Also we have a seed finder
someone already made a seed finder @sharp kite
ah
works well but gotta somehow get rid of 6 pairs from 4 cards xd
isn't this a very common issue with like, statistics
what do you mean?
i lost
how would i make my deck end on an earlier ante
becouse no face cards
use the save editor
and in raw find ante you will see win ante 8 and change on like 4
having to exclude things from a set of data because it'd just lead to repeats
win ante is actually in the list of things to change.
main problem is, what do i need to display from these 6 pairs? Is only one random enough? Or maybe 2-3 of them?
though if you want to modify this in game with a mod, you would want to set G.GAME.win_ante iirc
If a player has a joker that gives +4 multi for every clubs, and i display only pair without clubs (but he has it), it will be ruined for him, if he won't notice
oh cool i was thinking if you change in raw it will appear but ok
I think that would fall under user error
maybe yes, if I don't find the option to make a dropdown list
no the list of things are just ones I found that would be useful
raw is for if you want to mess with other stuff
why not make it a button you can press and it opens up a menu with what hands you can make?
Still learning lua and love2d
not a pro
i want to make a deck that has twice as many cards than normal
What's that challenge btw?
you can only get xmult and mult from planets
but might be too op idk
I need a good challenge for gold fold, Bloody battle, and grave digger
Grave Digger:
Start with 5 eternal copies of Mr. Bones, no money gained from winning blinds
bloody battle feels like having a pinned eternal knife and eternal madness
Not sure how the game would like eternal Mr. Bones though
Hopefully just one dies every time you lose
maybe they start with 5 negative bones and only 2 joker slots
gold fold feels like something with midas mask and the golden ticket
intentionally losing to free up joker slots is funny tho
Then you’d just sell them all
idea for Gold Fold: start with gold cards and eternal vampire, you can only get money from gold cards
Yeah, and it makes it tough on Econ if you lose
may need some other tweaks to not be too easy idk
they are negative?
and you only have 2 joker slots
The idea of going from 0-5 by losing and getting no money is funny to me lol
I wish I didnt have to sort by rarity right after I sorted by type
anyone know how?
edit a challenge to have double cards
does anyone know if you can change the first 2 tags for skipping on each run?
kinda
ok ty
ok I think thats the last edit to this challenge
Does anyone have a guide on modding textures for cards?
save editor is amazing
Technically should level the hand 40 times
nah just 4000% chance it happens
Only thing I want to know:
How do you get into the game's sandbox/debug mode?
been fooling around with some joker ideas and man is it a pain to have to get them to show up
eh I think its an ok challenge
thank!
lucky cat gained 15x mult with a single flush five lmfao
do any of them have custom gimmicks?
wym
Custom Rules
ya
curses, the steamode patcher won't download, it's getting blocked by (windows?) for being sus
wait accually no
they have banned cards and stuff
my challenge is safe for another day 🎉
? I mean I am debating on one I am making that costs per hand
It does that
I think Balamod also has debug tools in the built-in marketplace, but haven’t tried it so can’t rly help much with that
There is multiple injector options, the lovely one will never be blocked in any way
yeah, messing with that way now. I just prefer solutions with fewer steps. I might be a software developer, but man, sometimes things are hard and I manage to screw something up in a way that makes no god damn sense
If you are on windows just use the PS one, this is not blocked by Windows (but maybe Chrome)
if you look at the source for my challenge i've implemented a few custom rules
maybe you can draw some inspiration from that?
looks like I have to try this one next, the Love2D one apparently crashes the game with Steammodded in the Mods folder. 🤪
spice up your challenges!
Try to delete the "Example Mods" folder
there isn't one
powershell version dumps a lot of "cannot open archive" errors but still finishes with a success message
something something "and I manage to screw something up in a way that makes no god damn sense"
and yes I have 7zip
Inside the folder lol
shits and giggles try putting something (say, stickers) above chips
???
Your are missing everything, you need to add Steamodded files
ah I see, the lovely requires a gitclone step.
know anything about the powershell method?
I would need the logs it give you to understand
the powershell output?
yeah one sec
ah see (part?) of my problem there, I had made a backup of the game files inside the installation folder, so it was panicking over those. It looked like it was failing to extract the source files from the exe.
Lets see now... if the game is patched, then I should be able to put the debug mod in the mods folder...
Ok, game's running, how do I tell if the mod is active?
Long press tab
Sure one moment. Eatting dinner
nothing appears to happen.
I'm guessing that's a fail, but I'm not sure at what stage
how do you install mods anyway?
You see anything under game version in the main menu?
1.0.0L-FULL
nothing else
For what loader ? Balamod or steamodded?
Nothing is patched then
none of these words are in the bible
they're modloaders
Idk how works lovely tbh, I can help you installing balamod but that's all
i imagined but still i have no idea how to do any balatro modding at all
step one: install a modloader
step two: follow instructions for that modloader to install mods
Lmao, there are 2 "mod Manager" for balatro that run mods in a different way but balamod mods don't run on steamodded and vice versa
i....see?
I hope that the integration happens soon and smoothly
Im pretty sure Steamo is interested in merging with Balamod
wowie
that would be nice
the game isn't natively set up to support mods, so people wrote patches for the game to sideload mods into the game. This is called a "mod loader."
Have you played Java Minecraft? Steamodded and Balamod are the Forge and Fabric equivalents
I would be okay too but how x)
And I think because the way Balamod and Steamodded inject code are fundamentally different it’d be cool to somehow support both
I know Lovely allows you to inject Steamodded so something like that could be a key
Yeah we choosed very distinct path to implement a lot of base stuffs
i see i see
verified file integrity and started over. works now 👍
That's always files integrity lol
If not the AV
I'd use lovely but I also want to keep a "modded" and "vanilla" version, so I'm just using the injector for steamodded. Getting back into it and finally getting around to finishing my custom "see the future" joker, rewriting it from basically the ground up to hopefully be a bit more friendly.
that and sometimes my ability to not follow instructions in just the right way (ie. giving it the path to the folder containing Balatro.exe vs. the exe itself and having it still print Successfully modified game.lua anyway (or maybe it doesn't matter, but still printed it and changes I made in my fooling around broke something))
I might have missplaced a catch somewhere
I feel like if injecting Steamodded through Lovely works similar to Balamod (and idk how exactly both ways work - I remember seeing some issues pop up with both installed) then theoretically you could do that and then work together to make both modloader codes compatible
Balamod tend to be more lightweight and based on code injection (to avoid overriding whole functions) and on a custom event system but steamodded comes with more integrated features for dev with great APIs
That's the majors differences I think
so... literally Forge and Fabric XD
Yes xd
(where Balamod is Fabric)
before 5 minutes ago when I first said it? :p
Yeah
Steamodded apis are really great but I don't know if merging them will break the "lightweight" part of balamod
Heh, nice.
could you make them available as a standalone addition?
so mrbones can not be eternal
I feel like there’s some balance where the Steamodded APIs are rewritten to be backwards compatible with Balamod
The function wrapper of steamodded may help for compatibility with Balamod
I want to get off Mr. Bones Wild Ride
You already can import any custom api into balamod, someone just need to port steamodded apis
why
Not sure if you know the reference or not 😆
I dont
yeah I know, I'm asking if you can make the steamodded APIs downloadable for balamod
that would make me switch
can there be a quick mod to toggle the option to disable sci, notation and have the numbers vertically stack on each other when it gets too large
Roller Coaster Tycoon (the original). Someone made a roller coaster called Mr. Bones Wild Ride. It took real time days for riders to complete a full loop.
If someone do it then, I can add it tho the repos
Hi. I am attempting to use Lovely with my Steam Deck, and I'm having trouble finding the directory to put the mod files in. I placed the Lovely injector into the game's directory, and got this when booting the game.
i just got 30 planets by spamming mime and blue seal
they would need to be rewritten for balamod, it's not just copy -> paste
I know that it would be great if my SpeedrunTimer mod (made with Steamodded) could be ported over to something like Balamod (and have the advantages like marketplace, etc.)
I kid you not, i moved stuff around it actually worked what the heck
juuuust FYI, there's a button on your keyboard labled PrtSc
it takes screenshots. press it, come to discord, ctrl-v
I removed everything above chips and it works
I may just have to initialize stuff in 2 functions instead of 1
Sorry. I'm using my phone.
that tells me that one of those lines is throwing an error of some sort
my steamdeck doesn't have prtscrn button, neither does my keyboard (custom split ergo)
That's the debug window
I didn’t really use any Steamodded API but it would just take a bit to port over since the fundamental way Balamod works is different
ah! I couldn't tell it was a steamdeck. carry on. :)
so i was wrong
(I’d also probably have to redo a few security features, but that’s not important)
it should be at {steamapps folder balatro is in}/compatdata/2379780/pfx/drive_c/users/steamuser/AppData/Roaming/Balatro
I didn't knew you made it :(
LOL
ok
Tags work, Stickers work, chips work
Tbf I kept it pretty hidden
Can I see it ? 
For the last few updates I didn’t want to post publicly until it gets approved for Speedrun.com usage
Not on my laptop atm but I can DM you the files
Sure !
I added autosplitting for the Speedrun.com categories and a ton of security checks lol
okay, idk what i did but I think i got it working
guests can only die by drowning and rides crashing.
there's also been a lot of advances in "long ride times" since. It's gotten to the point where the "get on to get off" time exceeds the lifespan of the universe.
All of which could probably be bypassed but serve as a good barrier to entry for cheaters compared to the vanilla game
Thank you. I appreciate it.
I've got my game modded with Lovely and Steamodded, and have been playing around with mods. Now I'm looking to make my own mods (specifically a custom deck to start). Is it possible to add jokers that a custom deck will start with?
Faceless might be too easy
I was thinking of lowering hand size
-1 hand size would probably balance it then tbh
I want to add a custom challenge "I Can't Even", all odd ranked cards are replaced with -1 rank, square joker, the pair jokers, spare trousers, etc are all banned, and you can't play pairs, two pair, or 4 of a kind (i'd prefer the hand be replaced with the next highest base hand, but worst case it would just "nope" the hand like when you don't play 5 for psychic or try to play a duplicate hand against the eye), but I'd have to add in banned hands
you would just make a challenge with double evens
thats looks sick and weird
you can manually put in cards
oh, i mean all even cards are replaced with 1 rank+
so double odds
yeah, the tricky part is somehow banning hands I think, I haven't really started looking into it yet
you can make them always play 5 cards
Ideally what I'd want is closer to what the eye does, but forcing 1, 3, or 5 played cards would be funny too
i'll dig into how the challenges work eventually, I'm rewriting my "seer" from the ground up to work with newer steamodded and hopefully balamod
it's just a silly idea i had the other day
could i have your speedrun mod? (dm to me?)
real qucik, is there a reason why steamodded doesn't let you change languages
Oh geez
im lost
Wtf is going on xD
Too many questions in one screenshot
seems normal to me
Going to keep it on the down low for now since I don’t want people to just try and crack the security checks
i badly need to know where to start with this kinda stuff lol
It should be released open source pretty soon
most of that is literally one suit retextured lol
yeah but, i need to know how to texture alone xD
now its fixed blueprint and brainstorm were too op
Why are there 7 different suits 
wdym?
no, those are just diamonds
there's only 3 suits in my hand there
SHHHH
don't listen to him, every card there is a diamonds. yes, including the king of hearts
ok
Red hearts, green squares, magenta stars, yellow triangles, orange shields, black spades and blue thing
is there a way to have two different ui buttons side by side in a menu? in steamodded
How I'm supposed to play a flush with that 
I'm even more confused
It's perfectly fine
like
The way I always try to figure out these UI things is by looking at the code for another part of the UI that does this
That’s pretty much what I did for that timer mod
yea i tried to look at the menutweaks but its just confusing me
anyone know where the code for the jokers are? i literally cannot find it
dick joker
hehehehe
I need to find out how to make his sprite smaller
is there a custom sprite thing for base wee joker?
Does anyone know how to ban or modify boss blinds in a challenge?
iirc wee joker is just a downscaled jimbo
because if so you can yoink the code and change a few numbers
Wee Joker's Size is changed in Card:set_ability in card.lua
@exotic shadow is there another way to get a different deck/seed other than inputting it manually?
how did u change the name, thats literally all i want lmao
game.lua
i tried and idk how to shove it back into balatro
most things you want are in game.lua
you can use balamod to inject lua into the game
thats what i have 0 clue on what to do ;-;
ask uwudev for more info

heck yeah, got one of my jokers
and... i just remembered i'm playing abandoned and bought Scary Face
...
Gg x)
epic
what is what
debug mode is funny
no im saying in general
what is modded about this
the run is modded
ok but that just looks like a vanilla run
say that to 20 consumable slots
i end on ante 4 every stuff gives me 10 in 4 chance and yea
ahhh fair
just playing for fun
yeah i was too
yay i get a free rare card !
if only green negative arcanas
that was fun run but well i didn't beat ante 11
amazing seed
i don't think the arm saw this coming
wait so this is dev tools right
i used save editing to give myself money and other things like more joker slots
getting all those poly blueprints and stuff took like an hour
what if you gave yourself infinite money
like what if you hit e300 money
or whatever
lol
do you just forever have infinite money?
sadly you can't change decks from what i've tried
it's stuck on anaglyph
but you can change the seed
deck builder
mhm yes let me delete my entire set of jokers for 1 polychromatic
i used 10 hangmans so im playing a deck remover
by the time im at that point my high card beats ante 12
lmao
tbh with deck builder i have like 18 stencils all with 9984x mult or smth
im gonna get 30 polys hold up
silly billy
im gonna spend half an hour on invis alone : )
i swear when in deck builder it is 5% game and 95% shop
interesting joker
forces you to spend all your cash before entering any boss blind in return you get mult
actually yeah that'd be goated with credit card because it sets money to zero, thus clearing your debt
kinda makes me think anti campfire
dunno why
how the fuck did i ghet 0.6 dollars
how do i have decimal moners xD
LOL
for the save editor, its not currently possible to change these. The seed, I haven't looked into it much, but it appears I would have to regen a bunch of stuff, for the seed to actually changed (I need to look more into this.) I could probably change the value for if the run is seeded or not easily though.
For the deck, most of them wouldn't do much on changing, (as most of the changes are just when starting the game and not throughout, and can be modified in other ways). Also the game is a bit weird, so I would have to change some stuff across different spots in the save file, so its not just a simple addition.
Right now, I'm working on some other stuff, so I would like to focus on that, but I'll keep this in mind for the future
how did you get so many negatives? debug?
debug yes
ah ok
Float weirdness probably
60 cents
holy this took so long
28 polychrome blueprints lmfao
every non negative joker is polychrome
install the higherspeed mod
how do you do that?
i just realized my hand is going to take 2 minutes now
how can you force a card to show up in shop one with a deck?
epic
nvm its add_joker
hi guys, i'm kinda interested in making my own mod which adds some jokers to the game. any idea where do i start?
is thire a mod to add a restart run keybind
which version are you playing on? pc has new run bound to holding the r key
the new one as it turns out
Look at existing mods that add jokers
i want to know how to make a deck that starts off with double every card
once again asking if there's a way to check if a card is a scoring card
If it isn't disabled
how difficult do you think it'd be to make the Consumables in Deck glitch a feature
there is a mod for building custom decks.
oh?
https://github.com/adambennett/Balatro-DeckCreator
There might be a thread for it here somewhere. I havent tried it, but claims to be a working release
Contribute to adambennett/Balatro-DeckCreator development by creating an account on GitHub.
can someone help me understand why the game doesn't recognize the values?
i'm trying to make everything sell at full value.
like debuffed?
Function def needs to be Back:apply_to_run, with a : instead of . And then self needs to be passed into the reference function too.
The first change worked!
Though I don't know how to do the second change... Mostly because I can't find where self is defined in the game's code.
Yeah
okay... everything is defined, the game doesn't crash, but the effect itself doesn't work :(
does anyone know why?
What's the go to mod loader people are using? I know Lua and would like to make something
is there an example deck lua for steamodded that shows score modification? I'm trying to create a deck for personal use that achieves the effect of plasma
should i include reminder text under it explaining what it is?
something short like
(Choose 1 of up to 2
Spectral cards to use
immediately)
or smth
doesn't hurt to clarify
diet cola doesn't
im too magic the gathering brained
last one for the night
hm
what is etheral tag
Spectral Pack
does anyone know how to fix this?
I have a /img directory in Mods/ directory and there are camera.png
Using this code
local load_ref = love.load
function love.load(self)
load_ref(self)
local appDataPath = love.filesystem.getSaveDirectory()
square = love.graphics.newImage(appDataPath .. "/Mods/img/camera.png")
end
Take a look at the Sprite API
thanks, hope this helps
No idea if this exists already but heres a template for quick color swaps/other if you add some more effort
for aseprite
I want just to add a square.png for my interface mod to make it look pretty
i don't want to change any asset, just add some .png files and work with them
how is the r2modman support going?
lmfao
31 poly blueprints with a poly mime and 51 observatory plutos with 66 red seal steel queens
oh, that's sad
eh not quite
if they're linked to a card you can do some fuckery with Card:set_sprites
haven't read the code for other stuff tho
That's mb, I forgot to update the Doc that's supported now
oh, so maybe you can help
Am i loading sprite the right way?
and how do i display them? what type is SMODS.Sprites?
You don't have to do anything else than a register, Steamodded add them to the game himself
But are you replacing an image or adding a totaly new entry ?
So you need to add it to something
There are all the combo i have in my hand
A joker, a voucher
And i want to wrap them in a square pretty box
Or anythging else
No this is the name, you can refer to the doc to see what is what
If this is for a custom joker, the Sprite will apply to it if the name match the joker key
For other stuffs, you will need to load the texture on the part you want to add/modify
Feeling so stupid rn haha
Do I understand correctly that all textures are stored in the global table SMODS.Sprites?
All the textures created by Steamodded yes, and in the game texture storage system from the Game
But SMODS.Sprites is more used by Steamodded for internal management, you should use the Game storage system if you want to manipulate it further, or just take a look at how to load a texture for a specific type of object
oh yeah; art for the 10 jokers i've made so far
if someone can come up with a good effect for spiral joker i will add it
oh yeah
Ah heck nah, JIMBO PRISM!?
Jimbo Sphere When?
But yeah how hard is it to make jokers?
I’m using 0.6.2
you need 0.7.2+ to make jokers with custom art
Crap
i don't think it is
No they are from thunderstore
Yep
https://github.com/ethangreen-dev/lovely-injector you can look at the source for it here
Thank you
Will be saving this
i already did it on 0.7.0 but
wasn't that a modded version of it?
yeah
i believe if you write it as "{T:tag_ethereal}Ethereal Tag{}" it will make one of those pop-ups explaining what it is
so you don't need to be like (this is what the tag does)
oh i need to update this for my Wheel of Fortune joker
Hey there, I've got an issue with installing mods on Balatro. I installed python3, pip3, PLocate, 7zip-full, Nuitka and the python requests library. So I cloned the repo (using the git clone https://github.com/Steamopollys/Steamodded.git && cd Steamodded && python3 steamodded_injector.py command). I'm currently on linux so I went to /home/$USER/.steam/debian-installation/steamapps/compactdata/2379780/pfx/drive_c/users/steamuser/AppData/Roaming/Balatro and there I created a folder named "Mods". Then I put some example mods in this folder (MoreSpeeds.lua and DeckOf4s.lua). After that, I launched Balatro but none of the mods are working. What did I do wrong ?
does that work for specific tarot cards???
i've mostly just seen that for like, tags lol
haven't tested
What the python script says during the operation ?
No steamodded_injector.py the one you launched lol
Without the logs it will be a little difficult for me to help you
omg still can't display just one image on screen. why is it so hard lol
and even no mods that use this feature so nothing to refer to
The front part in Balatro is probably the hardest one lol, try to take a look at how it's done by the base game with the type of asset you are trying to use
It said "Please drag and drop the SFX archive onto this executable."
i am looking at this and my eyes hurt
I feel you
Did you tune the full command ?
git clone https://github.com/Steamopollys/Steamodded.git && cd Steamodded && python3 steamodded_injector.py $(/common/Balatro/Balatro.exe | head -n 1)
maybe just make an ASCII boxes instead of png lmao
What $(/common/Balatro/Balatro.exe | head -n 1) give you ?
I get "bash: /common/Balatro/Balatro.exe: No such file or directory"
Maybe I need to relocate my exe file of Balatro ?
Can you locate where is it now ? You can simply give the path to the script and it will take it
Alright
python3 steamodded_injector.py GAME_EXE_PATH
How to add text for a custom challenge rule? My code does nothing
the powershell script/exe is awesome btw
esp bc you can now specify a path to the balatro.exe
thanks @tacit mountain
big help for a lot of people 😄
Yeah I added an auto detect, but issues with AV are still happening sadly...
with defender control to easily disable defender (instead of having people go 1 by 1 through all the diff win security tabs) thats gotten a lot easier to fix as well at least!
with lovely support I imagine AV shouldnt be as big an issue too yeah?
I think Google is the issue for th PS injector
plus r2modman support soon
And yeah, no AV issue with lovely
That's the injection method I will push in the future, but I will still maintain the 2 other ones
You'll need to reinitialize the localizations after changing it
(literally just add init_localization())
well that's how I did it anyways
I havent tried to run it yet but took a look at the readme and saw someone else installing it, gonna try to use lovely soon to see how it works. If it's a lot simpler I'll suggest people use that in general to inject steamodded
whats the lovely.toml file for btw?
havent seen anything about that yet
to load Steamodded
Looks so stupid like im playing Space Invaders xd
So, it seems that the process installed succesfully, however when I launch the game, I get this error
It works! thanks
Is it something with the mod that I installed ?
Can you share me the installation script logs ?
I will prepare a github-action to create a .zip with everything need for the lovely part
I put everything in a text file
The game you are launching is placed at /home/rabbit/.steam/debian-installation/steamapps/common/Balatro/Balatro.exe right ?
Yep, that's the output of locate Balatro.exe
which is spiral joker
I assume you a re using Steam with Proton ?
Yep
this, i haven't given it an effect yet
Can you try to ask steam to locate the game files just to be sure
Sure
deletes the lowest rank card in deck on blind select
I will DM you
Sure
maybe conveyor belt or smth
ah, that one
which rarity is it supposed to be?
don't care
fair
could be something simple like +50 chips, and gaining +10 per round
or something along those lines
snoozeville
flat growing chip or mult jokers are not really synergy inducing
Tbh I should have been snoozing 4 hours ago
hello, are there resources on how to mod this game? Or is it mostly looking at other mods and seeing how they do it
Still lacking a lot of stuff but that's a start
thank you
For now there is only Sprite and Deck
Where can we have access to all of the assets used ingame ?
Also, can we have access to the lua code of the game somewhere, or do we need to figure out some things like how to add modifiers to existing jokers (like foil) ?
extract Balatro.exe
open up the game's executable in 7zip
legit
Real
yeah, it's hilarious
Is their a way to rezip the assets once extracted?
Yes, but use either Balamod or Steamodded to manage your assets, it's a better practice
You'd think it be easier to just rezip the assets up instead of having to learn c#
At least from the surface value
Isnt the coding for the modding scene c#?
not for a game programmed in lua
depends on what the game uses
for unity games, yes
for love2d games, no
Ahh
So how easy is it to do sprite replacements?
Because the only game I did lua programming in was 100% orange juice
.
this is where it's documented
pretty much, for just replacing sprites, you need to shove the assets in a folder and have like two lines in an init function that tell the loader to register your sprites
Ok
i was going to say i don't remember 100%oj having lua
then i remembered texture packs exist
What’s up in here?
waiting for docker to do its thing
How do tarot card works ? I can't find the .lua file that manages the tarot cards
I think they're just a part of cards.lua
Ah
We added one in ShamPack, it might be worth taking a look there
Alright thanks
Hey all, has anyone had any luck yet adding custom card enhancements?
Yep, there's one in ShamPack
Ty, will take a look
will changing VERSION change the save?
Are shamwows even good
Dunno, don't own one
how do i disable crash reports in balatro? i dont see it in options and i dont want to send garbage crash reports as a result of my clumsy attempts at modding the game
It’s in the game settings
If you are using Steamodded it's done by default
Ah and Balamod and Steamodded aren't compatible, are they?
ahh thanks
Still unstable however
Gotcha, was probably going to go with balamod because ShamPack has that example of custom enhancement
When I try to download the steamodded my pc recognizes it as a virus and blocks it, how do I avoid this?
There is Multiple injectors available, just try with another one or add an exception to your AntiVirus.
Unfortunately both mod loaders get detected as viruses by a lot of security software because of the way they work.
adding an AV exception is the only course of action if you want to use one.
Lovely don't need to, the Powershell injector neither apparently (Except with some Google Chrome version)
I've only used Steamodded and Balamod so far
Lovely is used to inject either Steamodded or Balamod
it was windows defender, I assume because of the python.
The PowerShell injector is one of the 3 injectors from Steamodded
If anyone finds out how to make cards polychrome lmk!
after it says its ready do I just launch Balatro through steam?
It should yep
Next is there a good place to look for how to start making the content for the mod? It is appearing in the game now. I managed to find something
Is there a way to use sprites that are already in game as a placeholder?
im messing around with making mods, when i create a joker at the start of the run, how do i change its modifiers? make it foil, eternal, polychrome, etc?
take a look at card.lua, search for "Card:set_edition"
okay, that works for every Edition, but not for eternal
are you trying to make what i wanted to make
i already made it, im just working on a sprite
im trying to understand how stuff works
it was a disgusting hack because i dont really know how to exclude non-eternable jokers from the pool
so it just generates some joker and if it happens to be non-eternable it gets immediately destroyed and it tries again
i see, thank you
set_eternal is what youre looking for, beware of this edge case though, G.jokers seems to be the entire joker pool and idk an easy way to exclude stuff from it (there most likely is)
i wonder what happens if you forcefully make a non compatible joker into an eternal one
if the game crashes or if it goes away like normal
it just doesnt apply
i see, alright
the function set_eternal checks whether the joker can be made eternal and just does nothing if it cant
okay this method worked perfectly, thank you
also sorry not G.jokers which is the area where the card goes i think, the type 'Joker'
Weird deck idea
Jimbo Deck
Unable to buy Jokers
When Blind is selected, create a
random Common, Uncommon, Rare,
and Legendary Joker.
At end of round, destroy them.
Jimbo knows what's best for you...
Is there a way I can check if a sprite exists before setting it?
I tried the following, but it's setting them to fallback whether their sprite exists or not.lua if love.filesystem.exists( SMODS.findModByID(mod_id).path.."/"..id .. ".png") then SMODS.Sprite:new(mod_id .. id, SMODS.findModByID(mod_id).path, id .. ".png", 71, 95, "asset_atli"):register(); else SMODS.Sprite:new(mod_id .. id, SMODS.findModByID(mod_id).path, "fallback.png", 71, 95, "asset_atli"):register(); end Also tried the following but am getting the same problem.lua local file_exists = love.filesystem.getInfo(SMODS.findModByID(mod_id).path .. "/" .. id .. ".png") ~= nil if file_exists then SMODS.Sprite:new(mod_id .. id, SMODS.findModByID(mod_id).path, id .. ".png", 71, 95, "asset_atli"):register(); else SMODS.Sprite:new(mod_id .. id, SMODS.findModByID(mod_id).path, "fallback.png", 71, 95, "asset_atli"):register(); end
yes i think
where do i find a list with all the joker ids? i already unpacked the game but its a lot of files and im not finding it
is the save file mostly the same as from the previous demos
should be in game.lua, as part of P_CENTERS
ive found it, thank you
@hard crest KYU ILY
YOU REALLY ADDED IT!
THE SLUTTY JOKERS IS HERE BRUDDERS
HOLY SHIET
MY LIFE IS NOW COMPLETE
🥹 😭 
As soon as I saw that suggestion I was like WE NEED THIS
and YOU REALLY DID IT 🫡
Hahahaha :D
Yeah, i tried to reply on the reddit thread but i guess my comment wasnt shown to people 🤷♀️
so, i have learned how to add a random joker on a deck mod, but how do you grab a specific joker
I'll see if I can boost it up somehow but yeah, sometimes reddit hides comments sadly. dumb stuff like the word slutty will do that lmao
I'll add it to the post actually in an edit 😉
Any idea how I can get this working? I've tried so many things now qvq
whats the cover art
I don't really like buying midas mask without vampire.
What do you guys think of my reversed strength ? (I'll probably change it better)
epic is that issac reference
Yep
Anyone here know what G.UIT.R or G.UIT.C are?
Because we also have this: n = G.UIT.ROOT,
lol
i forgot to reroll boss becouse i got the infinite rerolls for 10$ and i lost becouse of amber acorn
double showman
idk why i take double showman but ok
Nice. Reminds me of the one I did
Cool, what kind of mod are you doing ?
It was a submission for #1210358731066576957
Ah I see
btw, could someone make a tutorial for 0.7.2's api stuff for #1209596139922259968? Pls and thnx
I saw we have Joker API and Card API now
whats the difference between steamodded and balamod?
was gonna ask something similar. I'm trying to add a button next to the Play Hand or Discard buttons and what I'm trying isn't working. I would like to understand G.UIT.C and G.UIT in general becasue that's what's being modified to create buttons. Anyone have suggestions here? thanks
could i use both modloader at the same time?
I was able to pack balatro (and steamodded) into a .love file and run it natively on linux (using system's love2d)
pretty neat
seems to run just fine
what are the image resolutions needed for individual cards that go into the 1x and 2x folders?
nvm i think i got it
What is P_CENTERS ? Is it just a list for the planets or is it also for tarot cards ?
Where the config info for basically everything is located
Consumables, jokers, decks, etc.
it has basically all the data (joker, planets, spectrals, vouhcers, backs, enhanced cards, ediitons, booster packs, extras)
Aaah I see I was looking at the wrong file
So do I add my tarot card at G.ASSET_ATLAS.Tarot or something ?
How do people mod balatro?
With coding
I still can't find where tarot cards are created, in card.lua I can find where their abilities are defined but that's it
P_CENTERS holds the definitions for all "centers" which are things like Jokers, Tarot Cards, Planets, etc.
Alright
If I want to add something in the function Card:use_consumeable(), do I need to replace it entirely in my code ?
So, I'm looking to modify some card graphics. I already have a mod template for the main deck fronts, so I could change the textures used for the different cards and suits in your deck, but... I want to be able to change the base card artwork... like enhancers.png and whatnot. I have very basic LUA knowledge but I don't know how to write the code that interacts with Balatro. Does anyone have either a template or a code snippet that allows me to swap out my own enhancers.png or stickers.png or ui_assets.png?
I tried clicking around the mod list but I wasn't finding much of anything that just modifies those textures.
use 0.5x speed please
i think it should be what your looking for
does anyone know how to have this work? heres code snippet: ```function create_UIBox_options()
contents = createOptionsRef()
if G.STATE ~= G.STATES.MENU then
local cashout_button = UIBox_button({
minw = 2,
button = "cashout_button",
label = {
"Cash Out"
},
colour = G.C.RED,
})
local fold_button = UIBox_button({
minw = 3,
button = "fold_button",
label = {
"Fold"
},
colour = HEX('E82C20')
})
table.insert(contents.nodes[1].nodes[1].nodes[1].nodes, #contents.nodes[1].nodes[1].nodes[1].nodes, fold_button) --fold button
table.insert(contents.nodes[1].nodes[1].nodes[1].nodes, #contents.nodes[1].nodes[1].nodes[1].nodes, cashout_button) --cashout button
end
return contents
end```
ive been trying to figure this out for awhile
and i just have no idea how the ui works
I think you hit naneinf 
omg thanks I didn't realize that crimsonheart separated out the enhancers file from the rest of the mods if you wanted that!
thank you!
no problem
if someone has a way of also replacing the other files that'd be awesome. Basically, I'm a twitch streamer and I want my viewers to be able to have me put their emotes or whatever on my cards
ah, you should be able to just ctrl-c ctrl-v the code for the enhancers for other files
lemme look at that code again
ehh im not sure actually
function SMODS.INIT.PlainDeck()
local ch_plain_art = SMODS.findModByID("PlainDeck")
local sprite_centers = SMODS.Sprite:new("centers", ch_plain_art.path, "Enhancers.png", 71, 95, "asset_atli")
sprite_centers:register()
local loc_def = {
["name"] = "Plain Deck",
["text"] = {
[1] = "Base Deck",
},
}
local PlainDeck = SMODS.Deck:new("Plain Deck", "ch_plain", {my_deck_effect = true}, {x = 0, y = 5}, loc_def)
PlainDeck:register()
end
So you mean to say I only have to change the enhancers.png to ui_assets.png? I...
I don't know about that
yea i just said that off memory, sorry
yea i shouldve sent that first
steamo the mod goat lol
always comes in clutch
yeah I know how to read and understand code if given a few minutes to look it over but I have no idea how to interact with the game. So I can look at existing code and finagle it to do what I need but I can't write new code
this api sprite documentation should be just enough for me to get digging in
who cares how bad it is, it looks like it's good enough for me
but balatro modding isnt very well documented
yea, i mean its only been like 15 days since full game release
exactly.
I was really really hoping there were gonna be mods for this.
Then I learned it was mostly in LUA which made me happy because that's generally easily moddable.
Then I learned about how the .exe file is packaged.
and I knew that given some time we were gonna have modded Balatro
it took almost exactly 14 minutes for the hand lmfao
how do you check if you have a specific joker that is rare rarity
Ahem
What'cha doing?~
I hope LT doesn't add anticheat features that make mods unusable
cough cough Plants Vs. Zombies: Garden Warfare 2 cough cough
LT?
oh thunk

was the one who made the mods channel, why would they make an anticheat to make everything unusable?
Because EA did that with PVZ: GW2 and I wanted to get my disappointment and frustration out somewhere.
isn't that a multiplayer game?
Yep. People were using mods in multiplayer, so EA decided to just... ban mods.
there's no multiplayer in this so I don't think there'd be any reason to add anticheat
I know. I was just ranting.
thunk has been very supportive with the modding community
i ask this again
also is there any function that runs when you get a joker
but uh yeah
Mind giving me context on why I see my github in the channel?
and the plaindeck's lua file?
oh sorry
I'm just asking
its cause they were asking how to replace the textures in game
so i gave the plaindeck.lua as an eg cause it replaces enhancers.lua
context.other_joker.config.center.rarity == 3
i'm fairly certain this is it
i just took it from the base game code though (from baseball card specifically)
ah ok ty
wait so how would i check for a specific joker?
do i just replace other_joker for the number
rarity 3 is rare
no just checking if there is a joker in the hand that is rare
if context.v.config.center.rarity == 3 then```
Card:add_to_deck is run when a joker is added, if you're still looking.
I was just trying to figure out how to replace textures that weren't just the faces of the cards in the deck. Specifically enhancers, seals, UI elements, etc. I want my Twitch viewers to be able to put their emotes and stuff on my cards.
No worries
tried this just now, didnt work sadly
also

i actually have not coded this second ability and i have to ask, how would you be able to check end of round hand? its not calculate dollar bonus, is it?
Probably in Card:calculate_joker under context.end_of_round && not context.blueprint ?
if alloyed joker:
G.GAME.dollar_buffer = (G.GAME.dollar_buffer or 0) + self.ability.extra
or whatever you named it, something like that
so does it completely reverse both enhancements in terms of effect or is it like a bonus
bonus
where is the hand stored by the way?
as in held cards
