#⚙・modding-general

1 messages · Page 7 of 1

tacit mountain
#

I did not saw anything for Mod support inside the code

cerulean herald
#

Really damn good art for the vouchers frfr esp with the shiny/glossy surface texture

cerulean herald
#

Thought it might be native support in game.lua or main.lua, maybe global (forget which one it was)

#

But it must've been steamodded haha

tacit mountain
#

That might be Steamodded code

cerulean herald
#

Btw are achievements not enabled by default? Like steam achievements

#

I saw that there's a mod and code in steamodded to enable it

tacit mountain
#

With steamodded it's disabled, but you have a mod to enable them back

#

It was decided by the community to disable them by default

cerulean herald
#

AHHH

#

That makes sense

tacit mountain
#

Same, crash reports upload to game dev are disabled

#

To avoid spamming mods error

cerulean herald
#

Makes sense lmao. I had to reenabled that earlier to diagnose an issue with a keyboard shortcut mod

#

I was trying to modify milcks qol mod and add a run info button

tacit mountain
#

Fo your "Alternate PC" version ?

cerulean herald
#

Kept getting an error saying local run_info_button couldn't be found

cerulean herald
#

Oh I think I knoe what ur referring to hshs

#

Nah just native pc

tacit mountain
#

Yeah you know what I mean lol

cerulean herald
#

Lemme show you what I was getting, maybe you'll have an idea from a glance

#

It's my messages in there

#

They should be the newest one and include screenshots

#

Of my code and the error I was getting

#

I just added that code to his qol mod

tacit mountain
#

Does the mod use an INIT function from Steamodded ?

#

If not it might be the issue

tribal rover
#

How do you extract card pngs from the game?

cerulean herald
#

So if you look at the code for the stock mod from milck

#

Woops sorry here

#

I think everything else worked

#

It doesn't call init I don't think

#

But all milcks keybinds worked

hardy brook
#

Yo, you see my response to your deck thing?

cerulean herald
#

Just mine wasn't for some reason bc of that one error, seemed to be missing a reference to run_info_button even though there's a reference for that in the code

#

In ui_definitions.lua I think

cerulean herald
tribal rover
#

Is their a guide for asset extracting already on the discord?

cerulean herald
tribal rover
#

You mean balatro.exe?

hardy brook
#

Yes

tribal rover
#

Ahhh

cerulean herald
#

the main thing I added to the mod is just this:
elseif keys_to_ui[key] == "run_info" then local run_info_button = G.buttons:get_UIE_by_ID('run_info_button') if run_info_button.config.button == 'b_run_info_1' then G.FUNCS.run_info()

trim finch
cerulean herald
#

MY BRUDDER

#

THANK YOU SO MUCH balatroheart

trim finch
#

local run_info_button = G.HUD:get_UIE_by_ID('run_info_button') if run_info_button.config.button == 'run_info' then G.FUNCS.run_info() end

cerulean herald
#

what was the issue?!

trim finch
#

it's in the Hud not the buttons

#

so it was turning up nil when it searched for the run_info_button id

cerulean herald
#

thats crazy 😭

#

haha appreciate it @trim finch

#

your mod is one of the main reasons I really wanted to mod balatro

#

I needed kb controls

#

didnt wanna mouse over everything so it makes it a lot easier to play now

#

now I just need the slutty joker pack

#

and joker/arsene from p5r joker

#

and IM SET BAYBEE

#

@trim finch can you share the updated file please? 🙏🏼 or I can just add that code to the lua under Hud right?

cerulean herald
#

You're very appreciated @trim finch ! balatroheart Small mods like this make all the difference in gameplay and QOL!

molten lily
#

We'll add the game into r2 at the same time as to Thunderstore (well actually r2 releases are not made by us, but ebkr usually makes the release within a week or two of us adding a game there (when lethal company was added I think ebkr was on some vacation or something, which then lead to r2 release getting delayed a bit)).

About the progress: In the past 5 hours we've gotten pretty far and will soon try starting the game with mods.

About the features: Yea, basically Balatro in r2/TS would have all the same mod management features as other games. Dependencies, enabling/disabling, profiles and profile sharing, modpacks and so on..

Someone mentioned that there were two mod loaders? Steammodded is one, but what was the other one?

molten lily
#

Oh nice

#

lol

#

I'm just blind

cerulean herald
#

It's not as widely used just yet as it just came out of the "GitHub Abyss" as @stable crag told me 🤣 but more mods are being made for it now with some really cool features

#

Currently it mainly has 2-3 test mods I believe, but mod makers will likely make mods for it very soon, so a profile to switch between the balamod version and steamodded versions would be huge in r2/thunderstore!

#

Currently they don't play together well at the same timd

#

But that might change in the future if both modloader devs work it out

molten lily
#

Hmm, well I don't see any hard blockers on adding support for both mod loaders. It's kind of the same situation as with some people using melon loader and others using bepinex for certain games AFAIK.

cerulean herald
#

The two authors are Steamo and uwudev who I @ in my last message

cerulean herald
#

I mainly used bepinex, but now that I think about it 1 or 2 mods i used needed lethal API and maybe melon too

molten lily
cerulean herald
#

That would be so much easier for so many people

molten lily
cerulean herald
#

I've seen a lot of people in here recently (just joined this server myself like yesterday haha), and on reddit, asking for help installing both modloaders 🥲

molten lily
cerulean herald
#

One was considered more stable

strong swift
cerulean herald
#

At least at a certain point in time

#

Yeah bepinex became like the main loader from what I saw, with some more extensive mods like helmet cams sometimes using lethal API, but even that one went full bepinex at some point!

cerulean herald
strong swift
#

nope, it's neither of those

#

i'm getting "this app can't run on your pc"

cerulean herald
#

And at least 20h2 build?

strong swift
#

no, i got my pc recently enough that i was forced into win 11 and it's too late to change

cerulean herald
#

And you're not double clicking the steamodded loader to run it right?

strong swift
#

no

cerulean herald
#

Don't wanna clutter this place with all the support messages haha

strong swift
#

tyty

cerulean herald
#

Most stuff is steamodded right now Anyways but I still wanted to have access to balamod for testing and when new mods drop very soon

thin pilot
#

hello, I personally dont plan on making mods because I'm too dumb for it, I was curious if there was anyone working on a mod to turn off jokers from the shop

#

the more I unlock it's like other roguelike/lite games where it just makes it more difficult the more I unlock while the shop itself doesnt get bigger or increase chances on its own lol

lean dune
#

i would assume making that into a deck effect is literally setting a value to 0

hardy brook
thin pilot
#

I mean like, turning off jokers from appearing

#

like the first 5 jokers, the +4 mult or the +4 mult per scored suited card

#

with like 130 or so jokers I have unlocked now

lean dune
#

ah

thin pilot
#

it's honestly exhausting to see some of the older ones lol

lean dune
#

still should be manageable to just remove them from the pool

thin pilot
#

it's a problem a lot of rogue lites/likes suffer from, the bigger you make the pool of unlocks the more random it gets

thin pilot
thin pilot
#

because I also dont want to like, tailor craft a specific set of 10 jokers to show up every time either, I just want to turn off otherwise middling ones

#

but if it's a pool related thing, my husband knows a good bit about lua

#

maybe he can poke around at it, I didnt see anything like that in the mods yet

lean dune
#

for what it's worth, I haven't looked all that deep into jokers yet, I've mostly been focusing on my playing card stuff

molten lily
# cerulean herald Most stuff is steamodded right now Anyways but I still wanted to have access to ...

A small update; we've got the lua and mod injection working pretty okay. Next up we'll mangle it to work with Thunderstore filesystem stuff and then we should be golden PepeAngel

What needs to happen from the existing mod loader repos devs is to; put the following(ish) files to a package and upload it to Thunderstore:

Balamod
https://github.com/UwUDev/balamod/tree/master/src/luas

Steamodded
https://github.com/Steamopollys/Steamodded/tree/main/loader
https://github.com/Steamopollys/Steamodded/tree/main/core
(https://github.com/Steamopollys/Steamodded/blob/main/debug/debug.lua)

I'm not sure what the package structure and format will exactly be yet (like if there are folders and what the file names should be), but I'll let the devs know/help when I know more pepeD

Oh and the injection tool will be open source so that devs can see how and when it does stuff pepe_ok

stable crag
umbral pilot
#

Completely in memory, no executable patching required.

hardy brook
#

Uh....

strong swift
# hardy brook

i think thats a false positive for the most part, i use it all the time for lethal company

#

besides, you can still use regular modloaders

hardy brook
#

I'm sticking with the normal steamodded

umbral pilot
# hardy brook

yeah, that's fair, which is why we also maintain r2modman. the two managers are generally 1:1, but TMM has a nicer coat of paint.

#

and it has no ads sungaels

hardy brook
#

why i am getting very "Sponsorship" vibes

umbral pilot
#

I work there lol

strong swift
#

tbh i don't really care about overwolf being spyware. if it works it works tbh

hardy brook
#

lol

strong swift
#

but thats just me

haughty hinge
#

i wanted to make something where you'd put a score in and see what round/ante you can go to with that as a final score

white scarab
#

So this is the code for the ante base scores in endless

haughty hinge
white scarab
#

let me turn this into an equation

#

k=0.75 btw

haughty hinge
#

oh thank u

#

that's all i needed lol

white scarab
#

so this is what the formula turns into

haughty hinge
#

is the output the score for the boss blind of said ante

white scarab
#

or like this to be a little neater (A_E = number of endless antes)

haughty hinge
#

ah

#

got it

white scarab
#

and then it's rounded down to 3 decimal places I think

haughty hinge
#

wait put ante 40 in the equation lmao

white scarab
#

it predicts the last ante as 39, which is correct (Desmos and LOVE use the same limit)

haughty hinge
#

gimme link

haughty hinge
#

thank

hardy brook
magic sandal
#

I wonder if you can just use a different graphing calculator with maybe a higher number limit

white scarab
hardy brook
#

oh

#

I'd love to see someone try to hit ante 8 with the extreme deck though

#

I can get to ante 2

jovial escarp
#

hypothetically speaking

#

if i wanted to make a simple mod where i just start with a negative joker of my selection

#

would it be hard

jovial notch
#

can someone help me even find out how to mod in the first place

jovial escarp
#

learn lua

jovial notch
#

?

jovial escarp
#

the programming language

charred helm
jovial notch
#

that unsuprisingly does not help

#

i just wanna play a mod i dont wanna make one yet :(

jovial escarp
#

if u wanna play theres mods

#

see what u like

#

its not hard to install a modloader

#

not hard to swap assets and textures around

jovial notch
#

you are saying its not hard for thinks i dont know how to do

hardy brook
#

Is there a list of every joker for challenge mods?

jovial notch
#

it might be easy but i have no knowledge of how to do it in the first place

#

where do i install a mod loader? how do i use said mod loader? which modloader should i install if there is more than one (which it sounds like there is)

charred helm
#

Modded jokers or just base jokers?

jovial notch
hardy brook
jovial notch
#

website?

charred helm
hardy brook
#

But a list that I can use for making a mod for Challenges

#

because i'm seeing like "j_burglar" for example

charred helm
charred helm
hardy brook
#

I'm working on recreating Jimboless and Jimbo only from MurphyObv's Wheelatro as a deck

#

Thinking of locking a deck to make it impossible to unlock and you can use it in my custom challenges (just like the actual challenge deck

jovial notch
jovial notch
#

im blind

#

thank you so much

#

just checking, it doesnt affect achievments right?

#

or collection?

hardy brook
#

This is my current screen, it's crazy

jovial escarp
#

does anyone know how jokers work?

#

i'm staring at this piece of code but i have to reference frame

#
                    "ability": {
                        "t_mult": 0,
                        "extra_value": 0,
                        "bonus": 0,
                        "t_chips": 0,
                        "h_x_mult": 0,
                        "name": "Splash",
                        "mult": 0,
                        "order": 52,
                        "h_dollars": 0,
                        "p_dollars": 0,
                        "d_size": 0,
                        "h_mult": 0,
                        "x_mult": 1,
                        "hands_played_at_create": 3,
                        "h_size": 0,
                        "perma_bonus": 0,
                        "type": "",
                        "set": "Joker"
                    },```
#

im specifically interested in what 'type' can be and what ids the jokers have

#

as long as i have that information im good

umbral pilot
#

ultrawides are amazing lmao

hardy brook
umbral pilot
#

what's stopping you?

#

more the merrier

jovial escarp
#

i think im just gonna make the id something wonky and see how the game reacts

hardy brook
#

And the amount of room on my desk

hardy brook
umbral pilot
#

floor monitor harold

molten lily
hardy brook
molten lily
#

Then you'll more or less have a 4:3 sunglas

jovial escarp
#

there we go

#

i've figured out how to edit my save file for this handsome boy

#

now i just need to figure out how to inject that save data into every run

hardy brook
#

Jimbo and Jimboless is added to my modpack

clever rampart
#

where in the game's code is the code for the checkered deck

stable crag
clever rampart
#

oh! thank you

#

as for abandoned?

strong swift
#

just ctrl f

clever rampart
#

I'm not searching and opening several files

strong swift
#

its on the same back.lua

clever rampart
#

I wanted to see how it removes the face card

#

and then use it's effect on a different way

stable crag
#

If you use any jetbrains IDE press CRTL + SHIFT + F

#

Gl now MenheraSalute3

clever rampart
#

essentially what i want my deck to do is to outright remove all starting cards with ranks higher than (number)

jovial escarp
#

how does one edit starting jokers

#

i wanna make a deck ideally

barren mist
#

do achievements get disabled when u play modded?

charred helm
limber cairn
#

I didnt know Balatro had a modding scene already, cool

clever rampart
#

if i move over to using balamod will i need to get rid of steamodded

umbral pilot
#

just implemented a very unreliable config-file interface for lovely (https://github.com/ethangreen-dev/lovely-injector). basically means you can inject lua files into the game at runtime without needing to recompile anything.
I'm currently using this config to inject Steamodded: ```toml
[manifest]
version = "1.0.0"
dump_lua = true
priority = 0

[[patches]]
[patches.pattern]
target = "@game.lua"
pattern = "self.SPEEDFACTOR = 1"
position = "after"
payload = "initSteamodded()"
match_indent = true
overwrite = false

[[patches]]
[patches.copy]
target = "@main.lua"
position = "append"
sources = [
"core/core.lua",
"core/deck.lua",
"core/joker.lua",
"core/sprite.lua",
"debug/debug.lua",
"loader/loader.lua",
]

#

the format is still super jank but it's promising

#

ooh, it might be cool to implement git diff / patch support

clever rampart
#

can one of the effects be a hand size related effect, and if so, how

tacit mountain
tacit mountain
silk viper
#

how hard would it be to add a squared operator to a card?

hardy brook
stable crag
lean dune
rare shell
#

hiya, just found out about the modded scene today, is their documentation of the code yet, or has everything just been reverse engineering from example mods and what not?

lean dune
rare shell
#

love is a magic engine

lean dune
#

it is

rare shell
#

actually baffled you can do that, but then again ive never dabbled in modding with lua based stuff

#

cheefs

grand geode
#

better like that so people don't accidentally fuck something up and unlocks every achievement

rare shell
#

are stone cards refered to as base.id 14?

lean dune
rare shell
#

huh, what's id 1 then?

lean dune
#

stone cards get a random negative value

empty brook
#

is it possible to mod in new legendary jokers, or is that not feasible rn

lean dune
empty brook
#

gotcha! yeah i wasn't sure if they'd be like. Weird? since their whole unique way of getting them and all

rare shell
#

figured it out

wispy cape
silk viper
#

is the the right section to change the card rates in the shop?

rare shell
#

actually, a better question is what is the formatting for having chips be added to a card?

#
                if self.ability.name == 'Expanded Art Joker' then
                    return {
                        chip_mod = self.ability.extra,
                        card = self,
                        message = localize { type = 'variable', key = 'a_chips', vars = { self.ability.extra } },
                    }
                end```
am i missing something here?
#

joker in question has a config of config = { extra = 25, },

fresh prairie
#

Imagine make custom mod that all jokers are negative

cerulean herald
cerulean herald
#

This is gonna be huge for so many users who have had issues installing the modloaders or aren't as tech savvy and don't want to learn how to install them manually

#

PLUS it'll be easily findable on Google/search engines, so more people will use the mods/modloaders and the modding scene will continue to grow even larger ⚙️gold_seal 🙌🏼

cerulean herald
cerulean herald
# hardy brook

Thunderstore has been known to be relatively safe overall, but yeah the issue is overwolf which does collect data. It's just a reskin of r2modman essentially. I personally prefer to use r2modman when I can, but if you post something to thunderstore it should post to r2modman I believe and vice versa

cerulean herald
cerulean herald
cerulean herald
cerulean herald
cerulean herald
fresh prairie
#

I can't even install it cause Window defender

rare shell
#

just make an exception for it

fresh prairie
stable crag
rare shell
#

depending on your browser you should be able to click to confirm you want to download it

cerulean herald
lean dune
#

chrome likes to block stuff very strictly

fresh prairie
#

Tbh, I just wait until official mod support

empty brook
#

so i think i'm like, not getting something. i'm working on a joker, and the intended effect is meant to be: When you play a Pair, retrigger each played card.

right now, what it does is that when i play a Pair, it retriggers every card in my hand. as in like, not the hand i played, but the hand i didn't play (so steel cards, raised fist, etc.)

this is really close to what i want, if i can only fix it so that it's retriggering the cards it's supposed to, instead of literally every other card

cerulean herald
stable crag
cerulean herald
lean dune
#

or if you don't trust, you can always build it from source yourself

cerulean herald
stable crag
#

Disable windows defender and re-enable it after patching the game, I'll try to sign the exe with GitHub actions for the next releases

cerulean herald
#

You can use defender control to temporarily disable defender too

#

More easily

stable crag
cerulean herald
#

After that, just need to allow the exe through the firewall so it can grab 7zip through the internet

#

You can renable defender after modifying the exe file

cerulean herald
#

If it did anything remotely malicious the community would be well aware haha. But I think the bigger thing is a lot of people just get lazy and don't want to take extra steps to install mods support sadly

#

Luckily r2modman/thunderstore support is here now pretty much

#

So people won't have to do that anymore in like a day or two, if that

#

Just click "install steamodded/balamod" in r2modman and bam, done

#

Defender is also kinda a PITA to disable so I personally use Kaspersky so I can pause protection more easily when doing stuff like this (it has a button to pause protection with one click). Defender gets disabled when another AV is installed since it would be redundant

#

Any other good AV that's low on resource usage and not full of ads could also be recommended. It's not as necessary these days bc defender and a good adblocker like ublock is all you need really with modern security features, but just being able to easily pause protection makes it worth it

empty brook
grand geode
spare hemlock
#

YES, YES, YES!

winter hearth
#

Hi there, really loved the game, and I want to make/participate in development of overlay-app, that will read the data (current cards in deck/on hand, jokers, boss-blind modifier etc.) from running game and let player to see the probability of getting each combination after discard, seeing the amount of chips earned for hand (for jokers with non-100% chances display min-max situation) and so on.
But I don't really know a lot about lua and Love2D engine (have a 5+ years experience in other languages). Is it even possible to do it?

grand geode
#

should be possible since it's easy to read everything

spare hemlock
#

Which will be more or less 2 and a half hours until I get there, but I will

grand geode
#

considering bumping it to -4 or -5 mm

winter hearth
#

Cause i search a bit about engine and asked gpt, but didn't find anything

grand geode
#

there aren't many documentations yet considering modding is still relatively new mm

exotic dagger
#

that joker already looks hardly worth it with -3

grand geode
empty brook
#

it looks really funny

#

i will download this mod literally instantly once it's out

silk viper
#

what do consumeable_buffer and joker_buffer do in game.lua?

umbral pilot
winter hearth
grand geode
grand geode
#

actually no

#

mm

winter hearth
#

That's the one problem i see, yes

grand geode
#

yeah you can read every joker and highlighted card anywhere methinks

#

they're global

jagged bloom
#

Me thinks 🤔

winter hearth
#

I think it I think it is stored in the save file, but I can’t find it in the game directory, only scripts and one file with the extension .jkr

#

I saw the cards={} and jokers={} properties in some scripts, but they are empty

grand geode
#

you just straight up pull from the game variables

cerulean herald
winter hearth
#

Ok thanks, I'll look for how to do this

grand geode
#

like jokers you have are in the table (array) G.jokers.cards

winter hearth
#

Maybe even make a bot that will be playing on itself balatrojoker

cerulean herald
cerulean herald
#

then you can look through all the variables to find what you're trying to modify

#

I think theres also some light guides out

#

Nothing too extensive yet

#

but it has the basics

winter hearth
cerulean herald
cerulean herald
#

What are you trying to pull/read from there?

#

I might have missed that part

grand geode
#

if you're doing it during play then i don't see why you'd want to pull from save

winter hearth
#

Sorry, maybe im thinking wrong, like i said, lua and love2d are new to me, i don't know exactly how it works there

cerulean herald
#

most mods are based off of the lua files I believe

#

I havent seen one read from the save yet I dont think

#

except maybe a safe profile editor

#

but that doesnt really read them i believe

winter hearth
#

Ok my bad then

cerulean herald
#

it more like makes different profiles so you can have more than 3 saves

#

nah this is why this discord is here for haha

#

what are you trying to find again?

#

the joker variables?

rare shell
cerulean herald
#

most of the data for cards is in that one lua

#

let me see if I can find the name real quick

rare shell
#

card.lua aye?

winter hearth
#

Everything that going on in the game, cards in decks, their mods, jokers, etc.

cerulean herald
#

all cards are in card.lua yep!

#

there we go

#

other variables are in other lua files

#

for example half joker

winter hearth
#

All the cards like in your current deck or what?

rare shell
#

yeah, like i said, i've been trying to cross reference it with a joker that would be on played, like odd todd, but im getting errors thrown at me

#

ill try to snatch the error in a sec

cerulean herald
#

actually sorry

#

not card.lua i dont think

grand geode
#

the effects are in card.lua

cerulean herald
#

if youre looking for like chip amount and multipliers/effects for the cards

#

oh it is?

#

maybe I missed it

grand geode
#

the variables (chips amount, etc.) are in game.lua

cerulean herald
#

ah yeah I did

#

there we go

winter hearth
#

As i said in my idea message, i need my overlay to parse the current deck im playing and everything too, so i can calculate probabilities etc.

cerulean herald
#

you mean your current deck during a run yeah?

winter hearth
#

Yes

grand geode
#

yea you can just straight up read your full deck lol

rare shell
#

i'm just looking for a simple "gives +X chips when Y happens" and i already got Y, but trying to plug in odd todd's code like so

                if self.ability.name == 'Expanded Art Joker' and context.other_card.ability.set == 'Enhanced' then
                    return {
                        chips = self.ability.extra,
                        card = self
                    }
                end```
i keep getting an error about performing arithmetic on "chips", do i just have my formatting on my original joker wrong somehow?
winter hearth
grand geode
#

have you defined config = { extra = [some value] } while defining the joker?

rare shell
#

as { chips = 25 } aye

grand geode
#

then it would be self.ability.chips

#

not self.ability.extra

#

ah wait

#

if it's extra = { chips = 25 } then it's self.ability.extra.chips

#

mb

rare shell
#

i was just reading the message to you saying that earlier today wew

#

i am tired

#

ill try that out and see if it works

#

well its not crashing but it didnt seem to add the chips

grand geode
#

hmst

#

oh yeah i see why

cerulean herald
rare shell
#

i am an absolute novice when it comes to lua and my coding is atrocious but i appreciate yall putting up with my questions

grand geode
#

try context.other_card.config.center ~= G.P_CENTERS.c_base instead of context.other_card.ability.set == 'Enhanced'?

cerulean herald
grand geode
#

former taken from Vampire, which checks for Enhancements

cerulean herald
#

got a lot of respect for all the mod makers/devs here

rare shell
#

ill give it a try, but i did get it to work with a simple mult increaser before

empty brook
#

i thought this one was going to be easy but apparently not lmao

i'm trying to make a Joker which gives 1.5x your mult when you score an ace or an eight. i thought i had everything set up here correctly--but when i score either of those, nothing happens.

i'm pretty sure i have the right card IDs here (8 is 8 and 14 is ace, right?), so i'm not really sure what the hell is going on

sorry if this is like interrupting helping Lyman here, not my intention, just really frustrated here

rare shell
grand geode
#

mmmmm

#

yea no clue

rare shell
grand geode
#

mood

molten lily
cerulean herald
rare shell
#

WOOOOOO

#

I GOT IT TO WORK

cerulean herald
#

give yourself up to the coding gods

rare shell
#

for some reason it didnt want to show until i placed a Colour field in there???

grand geode
#

wack

empty brook
#

if you asked me for 100 answers on what would have fixed it

#

that would have been none of them

grand geode
#

same

umbral pilot
#

the hell lol

#

that's an unexpected fix

cerulean herald
rare shell
#
                    return {
                        chips = self.ability.extra.chips,
                        colour = G.C.RED,
                        card = self
                    }
                end``` it doesnt even change the color here
cerulean herald
#

Super cool that you guys let people know like that

rare shell
#

but it just works

#

just in case anyone else gets stuck like i did

umbral pilot
cerulean herald
#

you must give yourself fully to them

rare shell
#

anyway i suppose ill show what i managed to accomplish today before i slumber

cerulean herald
#

then they will show you the way, which is absolutely full of 0 logic LMAO

empty brook
#

i like, stopped coding a couple of years ago, literally only picking it up again for Balatro (conveniently the language i used to code in was Lua)

rare shell
empty brook
#

and man, lemme tell you

#

it's still so wack

rare shell
#

🤠

empty brook
rare shell
#

card games compel me to learn to code

empty brook
#

especially devilish joker

rare shell
#

i did a lot of art for the sts modding community

silk viper
cerulean herald
rare shell
#

i have just been grifting bits and pieces from the existing 5 github repos with joker code on them RWcry

cerulean herald
grand geode
#

i am so sorry if you went through mine

empty brook
#

the resources here have been really helpful, honestly!

rare shell
#

i will say i looked at all the other ones first to grasp how a mod file works

empty brook
#

the only reason i'm tearing my hair out is The Act Of Programming And It Not Working, but i would definitely be struggling a lot more if not for both the helpful people here + the useful github repos

cerulean herald
#

XD

grand geode
#

like can you guess what this awful code does

cerulean herald
#

i love right angles especially

grand geode
#

that's right it allows me to checked for scored hand

#

because somehow the normal game doesn't do that

rare shell
#

aaaa i was looking at literally this today

empty brook
#

like what do you mean

grand geode
#

there was nothing that lets you see the score of your hand

empty brook
#

huh

rare shell
#

wew

#

that sounds like a good lib function

cerulean herald
cerulean herald
rare shell
#

thats how its always been whenever i try to mod anything spongesob

grand geode
rare shell
#

ok but

grand geode
#

if it works it works ! or something

rare shell
#

if theres not a function that exists is it not more like a prosthetic

#

🧐

grand geode
#

good point

cerulean herald
rare shell
#

when i get home from errands today i have to figure out how to make pagliacci real

cerulean herald
tired mirage
#

i gave up on programming years ago cause it makes no sense

wanton rapids
#

most dubious mr bones sidegrade

rare shell
#

im crying every time i get this off a spectral pack

rare shell
#

ohohoh

cerulean herald
#

thats pretty sick!

empty brook
cerulean herald
#

I'd take that anyday as a temp joker

exotic dagger
wanton rapids
#

art is placeholder

rare shell
# cerulean herald whats pagliacci?

a man goes to the doctor and he is sobbing, screaming, absolutely crying in pain
the man goes "doctor, my life is a wreck, everything around me is falling apart"
the doctor says "the great clown pagliacci is in town, you should go see him! it will cheer you right up"
the man wimpers, wiping tears away from his eyes and responds
"but doctor, i am the great clown pagliacci"

empty brook
#

I HAD A FEELING IT WAS THE SAME ONE...

#

yeah i'm excited to see what you might do with that

rare shell
empty brook
cerulean herald
rare shell
#

idk if its just super twisted joker

exotic dagger
#

btw what's that triangle joker

cerulean herald
rare shell
#

if you need some art leave a dm and ill get to you in a couple of hours

wanton rapids
cerulean herald
rare shell
cerulean herald
#

we need that art for a polymerization abilty card/joker

rare shell
#

ah man i gotta cook up a bunch of reference arts

cerulean herald
rare shell
wanton rapids
#

ok wow that's odd

rare shell
#

actually 10004 is an even number

grand geode
#

:get_id() checks for Stone Card

#

i have so many half baked ideas that i cannot implement because i cant sprite sob

rare shell
#

i am the opposite

empty brook
#

i like to think of myself as a nice middle ground: can't sprite and can't code

exotic dagger
#

that's low ground

wanton rapids
#

i also can't sprite (very well)

empty brook
#

i'm assuming there's probably an issue with something that isn't the ID Getting Part™️

cerulean herald
rare shell
cerulean herald
#

I like never coded before this pretty much (light modification of other mods if anything, thats it. I'm just tech savvy, (build pcs, setup media servers, light linux stuff/ game console modification, hardware mods, ios/android tweaking) and nearly got an added mod function to work yesterday. I just messed up one thing, which @trim finch helped me fix balatroheart

empty brook
#
        elseif context.individual then
            if context.cardarea == G.play then
                if self.ability.name == 'Read Em and Weep' and (
                context.other_card.base.id == 8 or 
                context.other_card.base.id == 14) then
                    return {
                            x_mult = self.ability.extra,
                            colour = G.C.RED,
                            card = self
                    }
                end
            end

the spacing is kinda wacky for putting it on discord but this is what i have (i can also revert it back to :get_id() if that's actually better lol)

wanton rapids
#

how do you check if you're in combat?

grand geode
#

first is for RDCards which is a discord bot not a love2d game

cerulean herald
#

the person didnt realize they needed the custom steamodded or wasnt able to use steamodded easily themselves due to win11/defender, so I helped them get that going

empty brook
grand geode
#

oh i changed it to not use the custom steamodded now

#

only 0.7.0-pre

cerulean herald
#

or was there an update adding the atlas support thing?

grand geode
#

nah i just hardcoded the atlas thing into the mod itself

cerulean herald
cerulean herald
#

big brain plays

#

I'll let them know they can use the regular 0.7.0 pre version of steamodded then

#

was the modified version unstable at all tho? seemed to work pretty well from what I heard even tho it was a modified steamodded exe

#

If it was all fine, i'll just tell them to leave it on the old version of steamodded and mystjokers

grand geode
#

i think it would've broken other mods using the api

wanton rapids
#

anyways, is there a way to check if you're currently in a blind

cerulean herald
#

someone was mentioning how to read hands I think

empty brook
#

hold up, i think i might've figured it out

cerulean herald
empty brook
#

gonna do one more test to make sure

cerulean herald
grand geode
#

👍

empty brook
#

yep! figured it out

#

this elseif? apparently it should've just been an if statement (with a corresponding end later down the line ofc)

cerulean herald
#

that was FORSURE what anyone guessed was the issue... 🤔 🤣

#

🤥

#

props on figuring that out tho fr ahaha 👍🏼 balatroheart that'll likely help someone else out in the future too

wanton rapids
lean dune
#

me going oops all 6s

#

parallel universe version [all cards are considered 6s]

wanton rapids
#

probably quite strong

grand geode
#

Rose-Tinted Glasses looks quite strong

#

Hall of Mirrors is weak

wanton rapids
#

might make hom common

#

and rose-tinted will apply the same conditions as sixth sense except for requiring 2

hollow sigil
#

I don't know lua but I looked at Steamodded mod example and I encode using vscode but there are no type hints what do I need to do

lean dune
#

it can only work with the information it's given

wanton rapids
#

art and reworked effect for rosetinted

summer tusk
#

noice

hollow sigil
cerulean herald
#

most of the info is available somewhere in there too, just gotta search around for the variables you need

#

that + other mod code helps quite a bit

#

This may be useful to you too ^

hollow sigil
cerulean herald
#

You might be able to point vscode towards the exe (or unpacked exe) as well to get hints

#

Check out that reddit post too, I think the top suggestion mentioned zerobrane studio which seems like it could be useful for this case (lua coding)

#

or the vscode extensions mentioned in the post @hollow sigil

#

LOVE extension would prolly help too

#

a lot of people recomoned sublime for love

cerulean herald
#

Think most people here are using sublime for mod development

wanton rapids
#

i'm using vs code but idrc about type hints

dapper nacelle
#

I'm not modding at all but I enjoy mods since a long time, i have to say, been lurking here for some days now, you guys have absolute speechless idea. Hope to see mods soon

cerulean herald
#

@dapper nacelle have u seen the current mods?

grand geode
#

i already have love2d extensions installed (somehow) so that was a nice bonus

cerulean herald
cerulean herald
summer tusk
#

got that future sight mod installed irl

grand geode
#

oh yeaaa i wanted to make a love2d game a few years ago that's why i had the extension

cerulean herald
grand geode
#

i forgor 💀

stable crag
stable crag
#

Idk, just open any lua file and it will ask you if you want to install it

#

So basically I make the rust and lua part of balamod in the same ide

cerulean herald
#

thats a sick IDE

dapper nacelle
stable crag
#

I recommend opening the ide in the decompiled folder, create your mod file in %appdata%/Balatro/mods and drag this file into the ide so you just have to edit the code and press f3 on balatro to quick reload

cerulean herald
#

And mentioned it in the Steam discussions 😏

dapper nacelle
cerulean herald
#

A lot of people run into issues with windows defender or their AV/chrome blocking the modloader and don't know how to get around it

dapper nacelle
#

Yeah sure thing KKomrade

summer tusk
cerulean herald
grand geode
cerulean herald
cerulean herald
#

you mean installing mods? or WRITING them?

summer tusk
#

writing them

cerulean herald
#

OH scratch that XD

summer tusk
#

lol lmao

wanton rapids
#

yeah looking at modded code is likely the best way to learn how to mod

cerulean herald
#

sorry you'll have to wait for a full fledged mod dev to do that ahaha

wanton rapids
#

also looking at the source code

summer tusk
#

yeah fair enough

#

i read most of the code at work today

lean dune
summer tusk
#

but yeah ill read up the code of some mods tomorrow

#

just joined before i go to sleep to see what was on here

#

looks like everything i want to do is possible at least

cerulean herald
#

that and asking people here for helps when you're stuck

wanton rapids
#

also the fact that there are two modloaders doesn't exactly help

summer tusk
#

that too

grand geode
#

most use steamodded, i'm porting mine to balamod soon™️

summer tusk
#

im gonna have to figure out which mod uses what yeah

#

which one is the more flexible one in your opinion?

#

the one that would be better to learn first

cerulean herald
summer tusk
#

assuming i was open to learning both eventually

#

i assume the code is almost the same at least

cerulean herald
#

Let me find the link to that new modloader, I was talking to the guy who made it earlier today

lean dune
#

given some of the structure is different, you're still essentially modifying the same code

cerulean herald
summer tusk
#

yeah ill probably be fine with the game code modification, its just the loader stuff

#

learning new things hardge

cerulean herald
wanton rapids
#

wait you can do that?

summer tusk
#

i think ill just try and make something simple to learn the basics

#

like making the cards spin erratically for no reason

cerulean herald
wanton rapids
#

run balamod and steamodded together

cerulean herald
#

I applied both to an exe and it loads fine

#

the balamod API worked, FPS counter showed up

#

but the test mods @stable crag gave me werent working

#

so they likely both are targetting the same code and steamodded wasn't letting the mods work

wanton rapids
#

which one did you apply first?

cerulean herald
#

steamodded

#

balamod was actaully 2nd haha

#

you'd think itd be the other way around right?

#

but like in the top left

#

under the version number in the main menu

#

both balamod AND steamodded were showing up

#

they were actually overlaying each other LOL

#

since they were both trying to show text in the same spot

#

let me show you

wanton rapids
#

as an aside, more jokers of dubious balancedness

lean dune
#

highly dubious

#

how about "Sell this card for a free Spectral Tag"

silk viper
#

if i wanted to change this line in card.lua
for k, v in pairs(G.GAME.hands) do level_up_hand(self, k, true) end
to
for k, v in pairs(G.GAME.hands) do level_up_hand(self, k, true,3) end
and make this into a mod how would i do that

stable crag
silk viper
summer tusk
#

i assume level_up_hand only accepts 3 arguments normally?

#

unless theres an optional argument

silk viper
#

yeah theres one more

silk viper
#

number of times

#

so blackhole would level up every *hand 3 times

#

idk how the mod files work

lean dune
#

Something like this is easiest, probably, let the function do whatever, and when it's black hole, level up two more times

local Card_use_consumeable_ref = Card.use_consumeable
function Card.use_consumeable(area, copier)
  Card_use_consumeable_ref(self, area, copier)
  if self.ability.name == 'Black Hole' then
     for k, v in pairs(G.GAME.hands) do
            level_up_hand(self, k, true, 2)
     end
  end
end
#

given you'd probably also want the hand text changed, in which case copy the code from that block over, change what you need and run the original method otherwise

silk viper
grand geode
#

tl;dr "run Card.use_consumeable first, then my code after"

silk viper
#

🤔

summer tusk
#

how would i write something similar if i wanted my code to happen before?

grand geode
#

put the reference line (Card_use_consumeable_ref(self, area, copier)) at the bottom instead

summer tusk
#

ah ok i get it

#

thancc

silk viper
#

idk how to ask this but why do we need to put that before the code we want to change, like what's the flow of things? what is it supposed to be

grand geode
#

if you don't then it straight up overrides the game's code

lean dune
#

you're basically replacing the method for your own version, but you still want the original code to be run

summer tusk
#

the card..._ref function calls the original use_consumable function i think

lean dune
#

so in your own function, you make sure the original is called when you change stuff

silk viper
#

maybe i should be asking, what does a mod file do in general

summer tusk
#

its possible to just completely replace it tho if you wanted to and it would be fine right?

#

like if you did a complete rewrite of the entire function?

grand geode
summer tusk
#

ah right

cerulean herald
#

like it lets you add your own code to the lua files

#

so you can do what you want and add in your own properties for cards/jokers/abilities/buttons etc

#

thats how pretty much all mod files work I think

grand geode
#

shoutouts to yippeegameover which has this stupid fucking code

silk viper
cerulean herald
#

win game = you won game

grand geode
silk viper
#

right and how does it know where or what to apply

cerulean herald
#

it reads whats in the /mod folder than modifies the games code using the modloader to the relative/referenced code in the game files

clever rampart
#

is there a way to have my deck remove a specific rank on init

cerulean herald
#

I think mod files usually reference the targets too. You don't have to tell it to look in, say, card.lua because it just looks in all of the lua files, since it's targetting the game exe (which includes all the lua files and game code) not a specific lua file

summer tusk
#

oh right what order does it do them in?

lean dune
grand geode
#

i think alphabetical?

silk viper
cerulean herald
#

I think you'll need to use the code mentioned up above

lean dune
grand geode
#

or just yeah abandoned deck i forgot about that

silk viper
clever rampart
#

i swear i cannot find the code for the abandoned deck tho

cerulean herald
lean dune
#

look out for no_faces or something

cerulean herald
#

or ask chatgpt or something as well. The main thing is if you reference other peoples mods, you should be able to figure out how to implement your own mod using similar code

lean dune
#

don't ask chatgpt, it can and will give you utter nonsense

cerulean herald
#

Theres other code you need to write as well, can't just put for k, v in pairs(G.GAME.hands) do level_up_hand(self, k, true,2) in a lua file and plop that in mods and have it work

silk viper
#

lol i have been using chatgpt 😅

cerulean herald
#

Jetpilot is supposed to be good as both an IDE to write the code, and has AI to help assist you and error check

#

as @stable crag mentioned

lean dune
#

yeah, i guess

#

rely on common sense first though

cerulean herald
#

as well as asking here for help and referencing other mod files

#

and just the general lua and love documentation

lean dune
#

exactly

cerulean herald
#

look through all the deck names by searching for "deck" in the files

stable crag
cerulean herald
#

you'll likely find a deck with a weird name similar to abandoned deck @clever rampart

summer tusk
#

ill keep in mind to name my mod either aaaScreamJoker or zzzSleepyJoker

stable crag
stable crag
stable crag
clever rampart
#

i cant find how to remove card

tired ibex
stable crag
#

I have to admit that the dev tool api is named _devtools.lua for this reason

lean dune
lean dune
#

(playing card api stuff)

clever rampart
#

i think im on the right track just idk how to actually remove it

cerulean herald
cerulean herald
#

But hey thats what this discord is for 😌

remote zephyr
#

Has there been progress on an in-game score preview mod yet by chance? Seems like all calculator effort I've seen thus far has been manual tools (external) rather than anything automatic, tho I might've missed a mod/thread somewhere.

(Would be super helpful and probably take about 20-30 minutes of manual calculations off every run for me...)

lean dune
#

Personally, I'm not gonna be working on it, as I believe using a calculators is not a fun way to play the game, and I never use one myself. But I do understand people want it added, and surely someone will create an integrated version at some point

remote zephyr
#

Yeah for me it would simply save a lot of time; I can do all the calculations myself anyway, it's just tedious and time-consuming.

lean dune
#

yeah I get that, it's just a lot more fun to play by feel in my experience, but that's just me

hardy brook
#

anyone know what these decks could possibly be?

#

I have an idea possibly for the left one but not so much the right one

spice spear
#

I think left was supposed to be a deck that made hands and discards into a single value

#

not sure about the right

hardy brook
#

I thought it could've been an earlier version for Plasma's card back

#

because looking at plasma, it's got a similar coloring

cerulean herald
# remote zephyr Yeah for me it would simply save a lot of time; I can do all the calculations my...

I agree 100%! It might be a bit tough bc some jokers have random multipliers/effects, but I think if the mod calculated the score JIT/IRT that could be accounted for too, or it could just exclude those random multipliers/additions to the score. I would like the option to see what my score is going to be before playing the hand at least so I can know if one hand is better than the other due to my abillities/jokers/hand levels. It would be awesome to have as a native feature honestly, and could be left off by default

#

Hopefully localthunk either adds it in themselves soon as lots of people have requested this, or a mod dev whos interested in this hears our pleas and makes one 😄

stable crag
#

but the problem as you said is "random multipliers/effects", this is pseudo rng based on the seed at first and will calculate the next value based on the seed and each time it calls it, the new random number generated will pass through a hashing algoritm that will influence the next generated number. but like all hashing algorithms, it's not designed to be reversible function

#

so maybe making a full backup of the seed and hash can be a solution or you'll have to remake this pseudo rng function to not influence how the game stores these values

hardy brook
#

So trying to figure out how to get this working

#

I want so that ONLY at the beginning of the run, you get a Buffoon Tag

dapper nacelle
stable crag
cerulean herald
tacit mountain
cerulean herald
#

That makes sense. Backing up that value each time seems a bit much but yeah could probably be done; I'd be down to have one with the randoms excluded though too 😄

tacit mountain
#

Or, for Steamodded, you can check at the lovely injector discutted in the thread

cerulean herald
#

I guess it might change the run a bit though? Since the next random value would also be different from what it was originally going to be

#

Or actually maybe not? If it called the random 1st value, backed it up, applied the backed up random number to the card during calculation and playing the hand, then the 2nd value would still be there and unaffected

hardy brook
#

Deck loads, tag does not atm

cerulean herald
tacit mountain
umbral pilot
#

I think it's cool too 👀

white scarab
hardy brook
cerulean herald
#

3 modloaders already, we got a 💪🏼 strong, dedicated community baybeee 😁

umbral pilot
umbral pilot
#

just two modloaders though, this is meant to replace the injectors of Steamodded and Balamod

#

I guess you could call it a JIT injector? I dunno lol

tacit mountain
#

Yeah Steamodded will probably use this method as the primary one, and the other injectors (So Python, compiled Python Nuitka, Powershell and Compiled PS2EXE Powershell) will be switched as secondary options with disclaimer about there usage (AV, Game.exe being replaced, etc...).

tacit mountain
umbral pilot
lean dune
#

alright I think I'm about done with the playing card API

tacit mountain
#

F more merge to do

lean dune
#

what i like specifically is cards being able to have multiple "next" cards for the purposes of straights and strength

#

if there's multiple "next" cards, you can randomize which one the card gets strengthened to, or set a fixed one

remote zephyr
# cerulean herald I agree 100%! It might be a bit tough bc some jokers have random multipliers/eff...

Randomness isn't a big concern to me; the baseline can simply show a '+' next to the score preview if there are random factors, and that already covers 85% of what you care about on average.

From there one can get fancier if desired, and e.g. show the min and max possible scores from RNG, or get extra-fancy and show like +/- 2 standard deviations to give a decent idea of what's "possible but unlikely" in both directions. But simply ignoring the randomized stuff would already be hugely helpful.

(I believe there is no intention to add it to the base game unfortunately; not having a preview is a design decision, even if one I disagree with.)

tacit mountain
#

Ok so the plan for tonight is: Joker API with custom Sprite Support + Card API deployment + Mod menu tab + Powershell Compiled and Uncompiled Injector official deployment + Adding lovely as the new "Prefered" installation method for the Modloader.

lean dune
#

gotta get some compat with challenges resolved real quick

#

well yeah i guess I need to redo the view deck ui for challenges as well

hardy brook
#

So... still have no clue how to get the tag to load when I first start the run

woeful finch
#

im no expert in coding, but maybe use the code of anaglyph’s double tag spawn but instead use it at the start of game?

hardy brook
#

Yeah that's what i thought

#

problem is, I don't know how to force it to start of game instead of end of boss blind

woeful finch
#

idk either

hardy brook
#

At first I thought "Oh you can add vouchers and consumables at the start"

#

So i thought this would work

#

the deck loads but doesn't give me the buffoon tag

woeful finch
#

weird

hardy brook
#

lemme check something

rigid jewel
hardy brook
#

Should I do consumable?

rigid jewel
#

I think you might need to set up an event to give yourself the tag

#

Yeah I don't think you can give yourself tags with config

hardy brook
#

well currently it's showing boss blind

#

idk where G.GAME.last_blind

lean dune
hardy brook
#

let alone how to make it so that it loads ONLY at the beginning

lean dune
#

wait that is config mb

rigid jewel
#

Couldn't you use Back.apply_to_run?

#

I remember using it for my edition enhance deck and it worked fine

#

Didn't bleed into other decks

lean dune
#

even if you wrap that in a list, you'll still need to process that config in Back.apply_to_run

rigid jewel
#

(although it did bleed into the main menu xdd

#

Something like this but instead an event like Anaglyph to give yourself a buffoon tag

#

Only thing to figure out is what needs to be called to set it to start

#

I assume apply_to_run works since it's when deck effects at the start of runs are set up

hardy brook
charred sparrow
hardy brook
#

DO NOT PUT A TAG AS A CONSUMABLE

hardy brook
#

I broke it

lean dune
#

💀

hardy brook
#

welp

#

I looked at buffoon tag

#

it's a mega bufoon pack

#

So I can't even use that

lean dune
#

i think i need to rescale that?

hardy brook
# hardy brook So I can't even use that

Two alternatives I can do:

  1. Make a duplicate buffoon tag that only appears when I use silver deck and only for the beginning

  2. Figure out how to make it load a regular buffoon pack at the beginning of the game

hardy brook
lean dune
#

I'll probably squish them somewhat the same way I do on the view deck ui

#

good enough right?

dapper nacelle
lean dune
#

one more lil tweak and all should be ready

hardy brook
#

Tried replicating more like the anaglyph effect

#

Idk

lean dune
hardy brook
#

idk

#

it's a placeholder

#

I thought if I'd make it check for if Round = 0 (which it is when you start the game), it'd work

hardy brook
lean dune
#

yeah this has to be fine

#

wait this isn't supposed to squish 💀

hardy brook
#

you broke it lol

#

But yeah I blocked out the sections

#

the round there would have to be whatever stores the round number in the game and SilverChecker is in case I accidentally go infinite

haughty hinge
#

wow that is code

#

somehow i understood it a bit

hardy brook
lean dune
#

i forgot to check how many suits are actually present vs. how long the suit list is

haughty hinge
#

every time i see args i think of pirates

#

arghhhhhhhhhhh

hardy brook
haughty hinge
#

lol

#

i need to get back on my python skillz

#

also need to improve on my lack of understanding written instructions(I still have no idea how to install any mods or even the mod installer)

lean dune
#

aight it actually fits now

#

at least for six suits, after 8 I made it stop squishing so I don't get negative height card areas

#

and these are no longer being changed

haughty hinge
#

have you incorporated flushes and its variants or it does it by itself

wild thunder
#

you mean spectrum?

lean dune
#

flushes were the easy part

haughty hinge
lean dune
#

spectrum is not gonna be incorporated into the loader

wild thunder
#

also with more suits flush beats full house

lean dune
#

but i did have to reimplement all of the logic for straights

#

because I decided I wanted to give modders a way to mess extensively with what cards come after what other cards

jaunty lion
#

my computer won't let me run steamodded

lean dune
jaunty lion
#

even running as administrator didn't work

lean dune
#

try this

cerulean herald
cerulean herald
cerulean herald
lean dune
#

lmao

jaunty lion
#

nothing happens when i try to run it

haughty hinge
#

since nothing happens for me lol

cerulean herald
#

I just helped someone with that haha

haughty hinge
#

yea i need help too lmao i suck with instructions

cerulean herald
#

whered you get that?

#

from the github?

lean dune
jaunty lion
cerulean herald
#

or maybe its your default downloader/browser icon

#

OH maybe its a new version?

#

lemme see

haughty hinge
#

yea it's the updated version from the post

cerulean herald
#

AH yep

#

nice!

haughty hinge
#

so what should happen when it is run

jaunty lion
#

am i supposed to just drag the balatro executable onto the steamodded thing

cerulean herald
#

yep the exe file

#

not the steam icon/desktop icon

#

some people mistakenly did that haha

jaunty lion
#

i did that and nothing is still happening

cerulean herald
#

funnily enough I did as well and didn't see a new steamodded.exe pop up in the same folder

#

where is it supposed to extract to?

haughty hinge
#

wish there was a video

#

that would make it easier to follow for me

cerulean herald
#

I have steamodded already installed

#

but in this new downloader

cerulean herald
#

I'll try to include screenshots and maybe pictures

haughty hinge
#

it kinda sucks being terrible at understanding written instructions

cerulean herald
haughty hinge
#

ill just wait for the guide lol

cerulean herald
#

just send me a DM @jaunty lion , I've already helped lots of people with it by now

#

Just helped @dapper nacelle like less than 30m ago ahaha

cerulean herald
haughty hinge
#

k

cerulean herald
#

If you have another one like Kaspersky or Avast, its even easier

#

AH I FOUND THE ISSUE

#

with the downloader

#

it creates a temporary version of steamodded_injector.exe in %appdata%/Roaming/Balatro

#

for some reason it didnt automatically start the injector for me

#

and since balatro isnt in the default place it is in for most people (the steamlibrary in C:/

#

it just didnt do anything lol, didnt popup any errors either

haughty hinge
#

so to get it working you need to drag it to that place

cerulean herald
#

This might work for some people, but its def not gonna work for a lot of others since you cant specify the install location

jaunty lion
#

i wish this server had a voice channel, we could just stream the process that way

cerulean herald
#

So another user would have no way of knowing where it went

haughty hinge
#

so i have to drag all the balatro files into where the profiles would be?

cerulean herald
jaunty lion
#

oh there you are

haughty hinge
#

yea

cerulean herald
haughty hinge
cerulean herald
#

didnt auto run it for me either

#

which is more along the lines of what I expected

#

or open a file explorer window

jaunty lion
#

so i just drag balatro.exe onto this thing

cerulean herald
#

showing where it went LOLOL

#

yes exactly

#

drag only balatro.exe onto it, but MAKE SURE YOUR AV IS DISABLED

#

its a one click small program to temporarily disable windows defender

#

you might also have to allow the steamloaded_injector.exe in your firewall

#

but try first without doing that

jaunty lion
#

i just dragged the thing on the thing and it worked without any interference from defender

cerulean herald
#

THATS A FIRST LOLOL

#

did the window popup?

#

and stay up for more than 1second?

#

and did it say "press a key to continue" at the end?

jaunty lion
#

the command box? yeah

#

whee yippee!

cerulean herald
#

AYOOOOOO