#⚙・modding-general

1 messages · Page 20 of 1

split drift
#

Mobile version ...

knotty fable
#

imagine this..... A deck called the angelic deck

split drift
#

Ohhh

#

Imagine, i have an apk...

knotty fable
#

This deck has only numbers that is angelic in nature so no 9 no 7 no 6s

knotty fable
tidal ice
#

Steammoded isn't working for me (BC antivirus)

rare shell
#

imagine reading the rules

cosmic shell
split drift
#

😬

knotty fable
#

<~> literally no one reads rules

split drift
rare shell
#

that sounds like a you problem

tidal ice
knotty fable
#

The first thing I did was read the rules and I don't even see a reason to talk about that anyway

split drift
#

Exactly

knotty fable
#

.....

#

Ok then

stable pike
#

Random question.
Is there a mod that lowers the curve of endless? As in doesn’t get so hard so quick

rare shell
stable pike
#

Thx Lyman!

rare shell
#

🫡

rapid epoch
#

Ayo, I'm using Sound_Util and I want to add sound effects to other cards besides Tarot
Where does balatro internally reference the names of cards? Is it literally just plain text whatever the card is called?

knotty fable
#

I wish I knew a modder that would take on the task in making cursed card as a separate thing from upgrade s (and whatever Polly's are) lol 🤣 and make a couple jokers based on curses and add one tarot and spectral card one to possibly add a curse with great value to the card and the other to remove unwanted curses

cosmic shell
rapid epoch
#

oh, groovy

#

I'm building off of @gleaming talon ' sound utils and jojo mod to make a mod to play The Binding of Isaac voiceovers when using certain consumable cards

#

The Tarots are straightforward but if any Isaac fans have suggestions for runes/souls/others to use for the Spectral Cards I would be thrilled

echo hatch
#

which modloader has better mods?

knotty fable
#

Well its like fabric versus forge

#

It has its benefits and it's downsides

stone brook
#

steamodded has been around longer, so it has more mods

#

personally used balamod for my mods since i prefer its utility 👍

knotty fable
gleaming talon
cosmic shell
dusky reef
#

so technicially as long as you don't break anything you can just add a line or two to the og function

dusky reef
#

smarteyes i didn't say anything then

cosmic shell
#

that's also kind of what balamod (and lovely) allows you to do where you can inject code into the middle of a function (without rewriting it of course)

dusky reef
#

yeah i figured.. the thing is we are at a point that for the mod to be more compatible, smod seems to be favourable

cosmic shell
#

lovely at least doesn't have the same compat issues as balamod, because it already runs before any lua is executed so it doesn't encounter issues with overridden functions

#

evident from the fact steamodded can be trivially installed as a lovely patch

dusky reef
#

actually now that i think about it i don't really rely much on smod itself in my mod code, still have been reading G most of the time

#

if only people can make a even cleaner framework that unites the two...

#

i thought somebody's been doing that tho

cosmic shell
#

(there are now three competing standards)

jolly kiln
#

there are now 5 competing standards.

dusky reef
#

there are now 10 competing standards.

jolly kiln
#

yknow what

#

screw you

#

20 competiting standards.

dusky reef
jolly kiln
#

(video in the 90s and 2000s was like this)

dusky reef
#

40 competing standards!

white scarab
#

naneinf competing standards

dusky reef
#

oh no you beat the game

jolly kiln
#

10e307 competing standards

#

ive now read competing so much it looks spelled wrong spelled correctly

dusky reef
#

you did spell wrong once

jolly kiln
#

nuh uh

dense dock
#

having this error with im pretty sure mikas mod idk whats causing it tho, also a screenshot of my mods folder

#

if anyone knows why this would happen or if this is a common issue

#

just seems to be a visual bug

dusky reef
#

loaded wrong argument for rendering messages

dense dock
dusky reef
#

if it is not intentional then yes it will be a visual bug

cosmic shell
#

it's likely a compatability error, hard to say without looking at each mod individually

dusky reef
#

^

dense dock
#

alright ill just take them out one by one and see if i can figure out which one it is

dusky reef
#

you can comment in the mod release thread to confirm whether this is the case across the board

cosmic shell
dense dock
#

yea that was it just got it

#

didnt know it was balamod

#

probably shoulda payed more attention lol

west pecan
wet fable
#

so i downloaded steamodded from the github and it just deleted itself

#

hmm

west pecan
#
bankerJoker = {
        ability_name = "MMC The Banker",
        slug = "mmc_banker",
        ability = { extra = { dollars = 2 } },
        rarity = 1,
        cost = 5,
        unlocked = true,
        discovered = true,
        blueprint_compat = true,
        eternal_compat = true
    },



elseif self.ability.name == 'MMC The Banker' then
            loc_vars = { self.ability.extra.dollars }



bankerJoker = {
        name = "The Banker",
        text = {
            "Earn {C:money}$#1#{} for every",
            "{C:attention}Gold Seal{} and {C:attention}Gold card{}",
            "at end of round"
        }
    },```
wet fable
#

is it possible that my windows defender is flagging the steamodded injector?

west pecan
#

So I guess it's in your side, not the mod @dense dock

cosmic shell
wet fable
#

i think my defender just autodeletes the injector exe

cosmic shell
#

yeah

wet fable
#

thanks🙏

west pecan
wet fable
#

id have to keep redownloading

#

trying lovely rn!

umbral pilot
#

let me know if defender flags the lovely dll

west pecan
#

Once installed ? Weird

wet fable
umbral pilot
#

I think what gets flagged is the shell exec + exe patching

#

and http query for 7z

cosmic shell
#

my running theory is that it's because it's an exe with embedded python, lots of malware likes to take that form too i hear

gusty fulcrum
#

Gold stake getting changed to white stake. is this likely a problem with modloader, or a specific mod I am using?

umbral pilot
#

it's likely just a perfect combination of sus behavior

gusty fulcrum
coral shale
shy ibex
#

I have Balamod and Steammodded both downloaded. What kind of problems could that lead to? Aside from the text in top-right corner copying Baldi's Basics Q3.

wet fable
#

most likely me being an idiot though

cosmic shell
wet fable
#

am i doing anything wrong here Hmmge

#

just downloaded some random ones to try out

#

maybe its too many at once

cosmic shell
#

There should be a folder for steamodded in there, if you're using lovely.

wet fable
#

Ohh hmm i mustve missed that

#

ill check the installation again

umbral pilot
#

yeah, looks like you skipped the steamodded install step

wet fable
#

peeposit me dumb

#

sorry

umbral pilot
#

you're fine :-)

#

it's somewhat tricky atm to get right

wet fable
#

at least it doesnt autodelete

#

it worked now

#

thanks kings

umbral pilot
shy ibex
#

Is there a way to unload Balamod/Steammodded?

dense dock
#

so i tried out that mod that lowers the ante scaling...

#

think imma be done there

#

its only like XXe12 on ante 39 so you can get to like 50 probably

#

incase anyone was wondering if u buy all vouchers you just get blank voucher in the rest of the shops

woeful finch
#

that's why normal endless has exponential scaling: to prevent people from burning out from the game after playing hours for one match

coral shale
#

Unrelated, but I'm so happy to see my preview mod being used already ❤️

#

Lmk if you find bugs 😄

coral shale
shy ibex
#

Hot take:
I think the game should still have exponential scaling, but less than 1000^x. maybe 10^x?

coral shale
#

I wouldn't decrease it that drastically

shy ibex
#

Maybe 50^x?

coral shale
#

I think it should not be a strict math function. Antes 1-8 are great, 8-12 are also fine, but I would slow down the increase between 12-16, to make the second boss more reachable, and then make it go sicko mode

shy ibex
#

Oh, so like in BTD6?

coral shale
#

I wouldn't know lol

shy ibex
#

Late-game ramping is linear, but it grows every 50 rounds.

coral shale
#

Nah, I'd make everything past Ante 16 exponential

#

You could maybe decrease the rate of increase but increase the appearance of bosses to make it more interesting

shy ibex
woeful finch
#

#1184574232617828464 message

(A) * ((B + (K*C))^2) ^ C
A = Ante 8 amount, 80,000 for example
B = 1.75
C = Ante amount past 8, so Ante 10 would be C = 2
K = insane scaling factor

willow sonnet
#

can anyone help me figure out why steammod isnt working? i drag balatro to the exe, it open and closes, and when i open balatro the mod isnt working

#

using jelly mod fyi

shy ibex
#

Anyways, I'm looking for some help on trying to get a custom deck to work properly for me.
I made a deck that is essentially all decks in the base game (without drawbacks) put together; however since I have both Balamod & Steammod downloaded at once, the custom deck is doing double duty in places where it shouldn't be:
instead of getting 2 Fools and 1 Hex, I get 2x as many;
when I play a hand, the Plasma property happens 2x (essentially averaging out the Chips and Multiplier twice, which is idempotent [same power]);
when I beat a boss, I get 2 Double Tags instead of 1 (which can be broken AF).

#

Look in the upper-right corner for overlapping text.

strong swift
#

there's an easy solution here

shy ibex
strong swift
#

verify game integrity

shy ibex
#

Thanks!

hexed surge
#

i think i broke balatro

shy ibex
#

In this Guide You learn How to Download & Install Mods in Balatro! Plus, YOU see How to get New Deck´s and Joker´s via MODS for Balatro!

🔴LINK 1: https://github.com/Steamopollys/Steamodded/releases
🔴LINK 2: Mika Mod Collection which adds New Decks & Jokers:
https://github.com/MikaSchoenmakers/MikasBalatro/blob/9723e72c194299afed96f7718d9c1181a...

▶ Play video
glad sedge
#

guys if i set the interest to:

does it mean that when i add the two vouchers 100 is the new cap?

#

then it gets confusing when code says:

v_money_tree= {order = 22, discovered = false, unlocked = false, available = true, cost = 10, name = "Money Tree", pos = {x=1,y=3}, set = "Voucher", config = {extra = 100}, requires = {'v_seed_money'},unlock_condition = {type = 'interest_streak', extra = 10}},
v_seed_money= {order = 21, discovered = false, unlocked = true , available = true, cost = 10, name = "Seed Money", pos = {x=1,y=2}, set = "Voucher", config = {extra = 50}},

50 extra, and 10 extra? what is going on?

rigid jewel
#

Every 1 dollar of interest is 5$, so if the interest cap is 10 then 50$ is required to meet it.

#

Game calcs interest as G.GAME.interest_amount*math.min(math.floor(G.GAME.dollars/5), G.GAME.interest_cap/5)

#

And G.GAME.interest_cap is set to the extra value in both those vouchers when redeemed

#

In this case, it doesn't matter. The game overrides it when either voucher is redeemed

glad sedge
#

thank you

#

do you think there is a way to change the code so 100 met after buying the two vouchers? woudl that be too complex code?

vivid mortar
#

hey this seems like the right place to ask; has anyone written an explanation for what's what in profile.jkr? specifically i want to know where joker stake sticker data is.

cunning silo
#

I know it’s compressed

vivid mortar
#

if i open it as bz2 it's recognized as an archive

#

but it's exactly the same file 🤔

#

actually it looks like that's just ark filling stuff in
try it from terminal, no dice

#

it looks like either it's not compressed, it's compressed in some strange format, or it's encrypted for some reason

#

well it looks like someone has indeed figured it out

#

balatro.exe can straight up just be unzipped as 7z so maybe there are clues there

#

aha
the get_deck_win_sticker function in misc_functions

vivid mortar
#

aha
found it

#

oh it's just raw zlib
yknow i really should have guessed that

#

oh wait looking at all this modding the game is..... really easy actually

#

nice

vivid mortar
#

oooooh wait i misread it

#

well okay looks like you just have to decompress it with deflate

#

(note for future: most online decompressors will expect base64)

stone brook
#

how many hands is there on average in a run?

#

i know it depends on your deck and all but just on average

vivid mortar
#

assuming about 4 skips and an average of 2 hands per round, 40 at the end of ante 8

#

i have no idea how close that is to the real average but it should be in that ballpark

stone brook
#

alright yea that makes sense, ty ty

rare shell
#

Does anyone know if the sprite of the card is separate object/child of the card itself?

rare shell
#

if it is, what is the name of it?

#

I kinda can't find it

cunning silo
stone brook
#

self.children.center, im pretty sure

#

its defined in card.set_sprites yea

rare shell
stone brook
#

youre not supposed to juice_up the sprite, you juice_up the card

rare shell
#

well in my case I need to juice_up the sprite balatrojoker

stone brook
#

wouldnt juice_up on the sprite mean using juice_up on the card 🤔

rare shell
#

I mean yeah but I also added another child to the card and I don't want it to be affected by parent's shaking

stone brook
#

Sprite objects dont have a juice_up function, only the Card object does

#

you could try 'manually' juicing up

rare shell
#

oh I entierly forgot that some functions require specific objects

#

yeah I know what to do now

#

ty!

stone brook
#

👍

vivid mortar
#

so, a quick primer on what's in profile.jkr for future reference: first off is hands. Pretty self explanatory. Hand name, number of times played. After that we have some miscellaneous "best ever" stats that are also pretty self-explanatory. Next is consumables, with two fields. Count is number of times used, order is where it appears in the collection screen. This goes for vouchers too. Also in the consumables section we have "all time" stats like money spent, face cards played, etc.
Next up is decks, and this is where things start to get a little more complicated. Here's an example:
["b_checkered"]={["count"]=1,["wins"]={[2]=1,[5]=1,[3]=1,[1]=1,[4]=1,[6]=1,},["order"]=10,["losses"]={[7]=4,[5]=1,[3]=1,}
As you can see here, the first field is the deck name, so we can tell we're looking at stats for the checkered deck. Second, we have the wins section, where we have the numbers in the brackets representing stake (1 is white, 2 is red, 3 is green, etc) and the number after the equals sign is the number of wins on that stake. Second section is order again, which is 10 here, and if we go to the new game selection, sure enough, checkered is the 10th one over. Last is the losses section, which follows the same rule as the wins section. So put that all together and we see that I've won once on every stake from white to purple with this deck, but failed once on green, once on blue, and 4 times on orange.
Last of all we have jokers, which work on just about the same lines. Ex:
["j_vampire"]={["count"]=180,["wins"]={[2]=3,[3]=1,[1]=3,[4]=1,[6]=1,},["order"]=68,["losses"]={[1]=6,[5]=1,[4]=1,},} shows that it's the 68th card in the collection screen, i've won with it thrice on red stake, lost six times on white stake, etc. Count is unique here, it shows the number of rounds completed with the joker instead of times used like with consumables or vouchers.

sonic pollen
#

What format is a .jkr file?

#

It's clearly not plaintext

#

if I had to guess it's some object notation

#

what app should I open one with

vivid mortar
#

it's compressed with the DEFLATE algorithm

#

online converters exist but they expect it in base64 usually so what i did was open it with a hex editor, copy everything, convert to base64, and plug it into one of those

#

it's just gzip without a header so i'm sure there's some command to just do it without all that but i'm not sure what it is

stone brook
#

does anyone know what happens if you use a soul card while having every legendary joker

vivid mortar
#

iirc you get jimbo

stone brook
#

does he do anything or does he just jimbo

vivid mortar
#

he's just jimbo, the default joker
+4 mult

stone brook
#

oh that jimbo alright

#

ty ty

gleaming talon
#

I'm doing something like that, why would it have legal repercussion ?

lean dune
#

is this about the no debugging of source code rule?

#

that one makes no sense and no one knows what it's supposed to mean exactly

#

my guess it was supposed to be about decompilation, but the source code is no longer compiled to begin with

#

so don't worry about it

round ore
#

It's more about the legality of intelectual property rights

lean dune
#

at core, sure

#

that directly implies no redistribution

round ore
#

Software is split into two things. The product the consumer gets and what makes that product (the code). If you buy the product you aren't entitled to the code unless its expressly granted in the terms.

So even though the code isn't compiled, you're still not entitled to it as that is the property of the programmer, or if there is another legal entity involved which supersedes the individuals rights

lean dune
#

but regarding "debugging", the game exe is literally a copy of the game's source code

#

and thunk definitely doesn't mean we're not allowed to inspect the source code you can literally just extract from the SFX

round ore
#

There is various legal clauses for reverse engineering depending on where abouts you are, and the softwares legal distrubution rights. So yes, looking is fine. But basically debugging creates a copy of that program and is essentially classed as piracy.

It gets tougher to argue with languages which aren't compiled, but the precident is that running decompiled code, even if debugging, is piracy and thus should be avoided

#

The laws around it are mostly designed to protect against loss of revenue so don't really care about if a programming language is build into a distro or if its running through an interpreter. It's just "you ran it, you're guilty of piracy"

#

With games, you also have the legal president of game systems are often IP in themselves. So it then is even worse for you to be reverse engineering stuff.

In a legal defense in that situation you best hope you're doing it to expose predatory mechanics or its going to be a very expensive time

#

The laws and precident around it are archaic and view software similar to a factory. So the law treats it like "just because you bought a car, it doesn't mean you're entitled to enter the factory, and certainly not allowed to tinker with things in that factory"

I don't agree with it, and on principle I make sure all code I write is able to be open source. But it's the way the law is. It's best to be careful around stuff, as getting cease and desists or other legal things is intimating and expensive

past tendon
#

Is there a way at the moment to include a new rank without breaking compatibility with other mods ?
I have a joker concept revolving around number 13 cards but I don't want to include it if it breaks other joker/decks mods.

lean dune
past tendon
#

I'll check it out, thanks

cunning silo
#

Do you think adding a new consumable type would hog the consumable slots too much, or do you think it’s fine?

vivid mortar
#

probably okay
especially if it doesn't show up in shop by default like spectrals

runic kraken
#

I dont think so, you use most consumables asap anyway, I guess

#

I did not check yet, but do we have an easy way to add custom booster packs? I want to try to make a booster that only includes Themed Jokers Jokers for example

cunning silo
gleaming talon
lean dune
cunning silo
#

Oh BTw next update of FederAPI will have seals, planets, and spectrals

#

And maybe boosters if I will get them to work

lean dune
#

i was just about to ask about planets lmao

#

I'm gonna try and figure out a priority system for mod loading

cunning silo
#

The way I update FederAPI was by checking what my mods (MusicalSuit, FederRandos, and a secret one for now) need, and add that

#

But yeah i can add planets

lean dune
#

I'd just implement it myself otherwise, but there's no need if you're already on it

gleaming talon
#

I need to understand how the shop works better, I would love to be able to debug that mf XD

cunning silo
runic kraken
#

looking forward to that. I would have no idea where to start , if i had to add that on my own

cunning silo
#

If actually pretty simple

#

I already know how consumables are configured, and I can just modify my present registers to accommodate for it

#

Since all registers follow a similar format

rare shell
#

Is it possible to inject into localization files?

gleaming talon
#

with lovely injector for sure

rare shell
#

without it?

#

actually I'm trying to figure out where the localize() function comes from and I checked every file and couldn't find it

runic kraken
#

its in misc_functions.lua, I think

rare shell
#

oh yeah, thank you!

rough horizon
#

how do I check if all the scoring of the played hand is already done? I feel like i've tried every combination of contexts there is, but my Joker always triggers before the final score of the hand is calculated

gleaming talon
rare shell
#

I use vscode too but I never actually unarchived the files

gleaming talon
#

you should

#

makes research way easier

umbral delta
#

hello, it's me again, i cant instal/download the steamodded injector thing on any browser, it always says virus detected

#

does anyone know a fix?

lean dune
#

also use the lovely injector

gleaming talon
#

also press keep if popup

umbral delta
#

i'll try

round ore
#

Using the ps script is a good way around it

gleaming talon
#

Why is the first one nil

#

even though

#

wait

#

isn't it sound_args.sound_code

lean dune
#

sounds like it should be

gleaming talon
#

rookie mistake lmao

#

working with tables inside a table messed me up XD

gleaming talon
#

I've finished my Custom playing sound API and I'm pretty happy with myself,
I have :

  • Autoloading sounds in a folder and autodefine sound_code to play them based on their name
  • Playing a custom sound by calling it's sound_code and you can modulate it's volume and pitch
  • Stopping a base game sound called by the game from it's sound_code
  • Call a custom sound when a base game sound gets called with the possibility to modulate sound and pitch
sinful bridge
#

hey, apologies if this is explained somewhere. not very knowledgeable on github/modding, any idea how i install balamod?

rough horizon
#

i think i'm getting there

rough horizon
#

if the instructions say so, I guess. I haven't used balamod myself yet

sinful bridge
#

really sorry man i have no idea how code or any of this stuff works

sinful bridge
#

so confusing

rough horizon
#

that's probably all you need to do then

sinful bridge
rough horizon
#

yes

#

maybe, i don't know lol

gleaming talon
rough horizon
#

same

sinful bridge
#

where do i paste this

round ore
#

It's a description of the file structure. The indentations represent folders or files and the roaming/Balatro is the games main folder structure

tall seal
gleaming talon
#

and 0.98 * 0.98 is a real 2% decrease each time

rough horizon
#

it's just flat 2% less every time

#

so it goes from 75% to 73%

gleaming talon
#

Yeah

#

you shouldn't do that

#

XD

#

just multiply by 0.98 each time

hardy brook
#

I haven't coded it in but

rough horizon
gleaming talon
#

Well you do what you want but multiplying by 0.98 will avoid it reaching 0% too fast

#

or stupidly low %

rough horizon
#

yeah, I was also worried about it reaching the lose treshold of 25% lol

gleaming talon
#

Yeah if it's 0 you can either instantly loose or instantly win

#

XD

tidal ice
hardy brook
#

I'm still finetuning it

#

Ignore that it's orange x2

#

Just messing around with the text is all

#

Trying to find the right balance

tidal ice
#

That's better, plus come to think of it, if you can easily make glass cards (which this Joker does) it doesn't matter if they die immediately

#

As long as you don't run out of cards

hardy brook
#

yeah

#

Just found out in the localization that the border of the mult is just part of the font so it can be color changed too

#

you can do cursed stuff like this

sinful bridge
grand geode
gleaming talon
#

now on ante 13 if you get it ante 1 it'll be 0.40 (with the 2 vouchers that reduce the ante by 1)

fervent owl
#

is it supposed to be "this joker isn't that good, but X2 mult so you would want to pick it up"

hardy brook
#

i dunno

#

I'm just trying to make a joker with code right now

#

I'm not trying to make anything good/bad, I just wanna MAKE the thing

torpid lava
#

So I have a really peculiar problem. I downloaded steamodded last night and then it worked. I got a mod on it, but then I cannot find the file to place more mods into. I even asked here, and it seemed everyone I asked was stumped, so I just deleted steammodded and deleted Balatro and reinstalled it and now I for the life of me cannot figure out how to make it work again.

hardy brook
#

It was supposed to be originally a specific type of card but I don't know how to do that

grand geode
#

Certificate adds cards to hand

gleaming talon
#

I've finished My custom playing sound

#

it should do basicly everything you want to do with sound in the game

umbral basin
#

Hi. I just started the modding of Balatro. I wanna know is it possible to launch the game with Steamodded + Balamod mods?

gleaming talon
#

It's possible

#

but it's also very possible your game crashes

#

so not recommended at all

umbral basin
#

I had that fear, I guess i will just have to make "mod" packs and switch from time to time

grand geode
#

yes but there will be no support if anything breaks

gleaming talon
#

Myst

#

did you try to mess with the shop_update function or with the shop at all ?

grand geode
#

i did not

#

the most i touched is the pack opening function

gleaming talon
#

frick

#

wel I'm a pioneer

#

but the function is really scary I don't understand everything lmao

cunning silo
gleaming talon
#

update_shop

#

my bad

#

Game:update_shop

#

in main.lua iirc

cedar comet
#

So I recently installed Steamodded using the Lovely Injector after having done it the "classic" way before, and installed a few new mods.

#

But now I'm getting this error.

lean dune
# cedar comet

looks like an incomplete install of one of your mods. Mind showing me your mods folder so we can figure out which mods are affected?

cedar comet
#

Sure.

lean dune
#

phew, that's a lot

#

there's not supposed to be an assets folder directly in your mods directory, all mods that have assets should go into a separate subdirectory

#

iirc FrenchTarotCavalierCard should have assets...

cosmic shell
#

that's probably the culprit since "8bitdeck" is the name of playing card art file

cedar comet
#

Alright, I'll reinstall it and see if that fixes the problem

#

That did it! Thanks y'all

gleaming talon
#

😉

cedar comet
#

No idea how I installed the Cavalier mod wrong like that but now it's installed correctly and Balatro launches as it should

gleaming talon
#

when there's more than 1 thing in the installation put it into a fodler

grand geode
#

watch as it breaks again due to all the mods

hardy brook
#

Welp, I still don't know how to bugfix this

#

but I'll do it in a bit

#

Plus I gotta add the function to shatter glass cards after scored

#
    local loc_def = {
        MurphyLaw = {
        ["name"] = "Murphy's Law",
        ["text"] = {
            [1] = "{X:red,C:white}X2{} Mult",
            [2] = "When Round begins add a random {C:attention}Glass Card{} to your hand",
            [3] = "Scored {C:attention}Glass Cards{} break after poker hand"
        }
    }
    }

    -- SMODS.Joker:new(name, slug, config, spritePos, loc_txt, rarity, cost, unlocked, discovered, blueprint_compat, eternal_compat)
    local MurphyLaw = SMODS.Joker:new(
        "Murphy's Law", --name
        "MurphyLaw", --slug
        {extra = {j_MurphyLaw = true}}, --config
        {x = 0, y = 0}, --spritePos
        loc_def.MurphyLaw, --loc_txt
        2, --rarity
        5, --cost
        true, --unlocked
        true, --discovered
        true, --blueprint_compat
        true --eternal_compat
    )
    MurphyLaw:register()
    SMODS.Sprite:new("j_MurphyLaw", SMODS.findModByID("MurphyLaw").path, "j_MurphyLaw.png", 71, 95, "asset_atli"):register()
end

SMODS.Jokers.j_MurphyLaw.effect = function(self, context)
    if context.first_hand_drawn then
        if self.ability.name == "Murphy's Law" then
            G.E_MANAGER:add_event(Event({
                func = function() 
                    local _card = create_playing_card({
                        front = pseudorandom_element(G.P_CARDS, pseudoseed('Murphy')), 
                        center = G.P_CENTERS.m_glass}, G.hand, nil, nil, nil)
                end
        }))
            G.hand:sort()
            if context.blueprint_card then context.blueprint_card:juice_up() else self:juice_up() end
            return true
        end
    end
end```
#

I never used the joker API before

gleaming talon
#

I have the jokers stats ! :
70% common
25% uncommon
5% rare

#

in the shop

cosmic shell
grand geode
#

Steamodded automatically adds j_ in front of the joker name

#

but idk why it's niling

cedar comet
#

Well some of my mods just aren't working anymore, like the Neow Blessings mod.

gleaming talon
#

I present to you the showmann check

strong falcon
#

Does anyone know where cards get (vertically) centered, like Half Joker for example? This code only seems to stretch the card out (from Card:set_ability)

    if center.name == "Half Joker" and (center.discovered or self.bypass_discovery_center) then 
        H = H/1.7
        self.T.h = H
    end
gleaming talon
#

it doesn't strecth

#

it divides it's H by 1.7

cosmic shell
gleaming talon
#

What the game does when the pool is empty

strong falcon
# gleaming talon it divides it's H by 1.7

Well if I inject into the function and copy the same code but for my joker, it ends up looking like this

local set_abilityref = Card.set_ability
function Card:set_ability(center, initial, delay_sprites)
    local X, Y, W, H = self.T.x, self.T.y, self.T.w, self.T.h

    if center.name == "MMC Incomplete Joker" and (center.discovered or self.bypass_discovery_center) then
        H = H / 1.7
        self.T.h = H
    end

    set_abilityref(self, center, initial, delay_sprites)
end
#

It does get centered to be fair, but it's also squished

gleaming talon
#

did you look at the original file of Half Joker ?

cunning silo
#

Feder is figuring stuff out...

gleaming talon
#

ohh tags right ?

cunning silo
#

I am using that as placeholder XD

gleaming talon
#

idk then

#

oh so it was the right thing

lean dune
#

oh what's that

cunning silo
#

i mean kinda yeah

gleaming talon
#

I was searching for the difference with the IG one

cunning silo
#

it opens the tarot menu rn

lean dune
#

I see that

#

but what's it a placeholder for?

#

a new consumable type?

cunning silo
lean dune
#

neat

cunning silo
#

I think I goofed up

lean dune
#

nah that seems pretty alright

#

just a bit empty

gleaming talon
#

pool manipulation, done

cunning silo
#

could you send the code you used?

gleaming talon
#

well now I need to make it do what I want lmao

#

I just putted not(_pool_size == 0) instead of _pool_size == 0

#

I'm still testing but I've confirmed that it works

#

and that it's the right function that gets called : get_current_pool

#

I wonder what would happen if I replaced everything with a joker

#

Yeah if you replace tag it's not a good idea

#

as long as you don't hover on skip blind

#

you can get through

#

That's a nice voucher

#

you can buy it and it goes where it needs to

#

that's cool

#

that cpuld be a very neat idea for a special joker that can only go here

lean dune
#

oh no

gleaming talon
#

wdym oh no ?

lean dune
#

jimbo took over everything

gleaming talon
lean dune
#

now replace the packs too balatrojoker

gleaming talon
#

it's not the same function sadly but I probably could

strong falcon
#

So close yet so far 😔

gleaming talon
sand thicket
#

why are you floating out there

lean dune
#

lmao

sand thicket
gleaming talon
#

adding shop slots seems pretty easy

grand geode
gleaming talon
#

as long as it has a price I can add it

lean dune
gleaming talon
#

hum

#

wouldn't be so sure

lean dune
#

they have a price

gleaming talon
#

hmm

lean dune
#

you just never see it in game

#

but they do

#

the only reason they don't show up in shops is not being added to any pools

white scarab
gleaming talon
lean dune
#

oh yes

gleaming talon
#

it just works

lean dune
#

finally we can perkeo infinite black holes

gleaming talon
#

if you modify this line with ghost deck you should be able to see them in the shop (I think)

#

and maybe also in booster spectrals

cold barn
#

I've seen mentions of people working on a multiplayer mod (reddit and here), has there been any progress? Have been thinking about building/working on one myself, but would prefer to contribute to an existing effort if it exists.

gleaming talon
#

They don't talk that much about it from what I've seen here

#

maybe someone know if you can contact them in discord or something ?

late ledge
#

sounds awesome

runic kraken
#

Is there an easy way to check if repetitions are triggered? This should work in therory, but you cant return a message for other jokers if repetitions = nil is returned while in context.repetition

     ---Cosmic - Virgo---
    SMODS.Jokers.j_cosmicvirgo.calculate = function(self, context)
        if  context.repetition and context.cardarea == G.play then 
            if (context.other_card:get_id() == 12) then --repeat played queens
                addcountertocosmic() --add 1 counter to Cosmic Jokers
                return {
                    message = localize('k_again_ex')..' +1 Cosmic',
                    colour=G.C.PURPLE,
                    repetitions = 1,
                    card = context.other_card
                }
            end
            for i= 1, #G.jokers.cards do --check if other Cosmic jokers would repeat and add counter
                other_joker = G.jokers.cards[i]
                if other_joker and other_joker ~= self and string.match(other_joker.ability.name,"Cosmic -")  then
                    local other_joker_ret = other_joker:calculate_joker(context)
                    if other_joker_ret then
                        addcountertocosmic() --add 1 counter to Cosmic Jokers
                        return {
                            message="+1 Cosmic",
                            colour=G.C.PURPLE,
                            card = self
                        }
                    end                    
                end
            end
        end
    end
left ivy
#

I believe somone else had a similar problem as this one time?

#

where having steammodded makes the game say the ace isnt there for some reason

lean dune
round ore
#

tried to download base mod but my computer keeps detecting it as malware. help

lean dune
round ore
#

on inspirion which works better

lean dune
#

both should be fine, but lovely doesn't modify the exe directly so you may have fewer issues with it

river ledge
#

Is Balatro's source code anywhere? I'd love to look into it

strong swift
#

yep, just extract balatro.exe with 7zip or whatever

river ledge
#

cool thanks

stone brook
round ore
#

since the post is flooded with comments anyone know a good walkthrough for installation

#

there are over 2000 comments

round ore
#

basemod

coral shale
#

Haven't heard of it, sorry

strong swift
#

or steamodded

round ore
#

steamodded

#

the basemod to mod balatro

coral shale
strong swift
lean dune
strong swift
#

i wouldn't recommend using the other injectors because antivirus issues, i've never gotten anything like that using lovely

lean dune
#

chrome might still not like to let you download it, but you should be fine just using firefox

strong swift
#

not the download thing, sometimes windef can block even using it

lean dune
#

for the other loaders, yeah

#

for lovely, I've heard chrome sometimes likes to block the download

stone brook
#

ive only had windef block steamodded, balamod worked perfectly fine for me

cunning moth
#

Hello

lean dune
#

yo

round ore
#

the first 2 won't download

cunning moth
#

After discarding all the shame that remained in me, I come to you asking for a mod that allow infinite money, is there such a thing ?

Short story : I once hit an e36 hand, and never managed to do it again, my frustration won over my integrity

stone brook
#

theres the debug mode mod

lean dune
round ore
#

balamod work for windows?

stone brook
#

both work for windows, yea

round ore
#

the steamod can't download

strong swift
#

the others arent

lean dune
cunning moth
lean dune
cunning moth
#

Nope

lean dune
cunning moth
#

Alrighty

lean dune
#

then you'll just need to drop the file in the Mods directory you installed the loader into

cunning moth
#

I hope to come back with a victorious report 🙂

#

Alright, steps has been followed, altough I don't know how to verify if I did it right

#

Do I just copy the LUA file into the mod folder ?

lean dune
#

yep

cunning moth
#

Alright, doing it

lean dune
#

then just hold tab in game to see an overview of the debug functions

cunning moth
#

And now I just start the game, whitout forgetting to look innocent

#

right ?

lean dune
#

yep

#

if everything worked, you should also see an fps counter in the top left corner

cunning moth
#

It does seems to works

#

thank you very much for your help and reactivity 🙂

lean dune
#

you're welcome :) be sure to check out some other mods as well

#

we got all sorts of fun stuff

cunning moth
#

Well, so far, I'm gonna land a score so high my computer's gonna crash, then I'll see 🙂

lean dune
cunning moth
#

Let me dream 🙂

#

Also, it might take a while before I break the maximum by playing only with more money

lean dune
#

gl

white scarab
#

guess how this happened

iron juniper
#

This is fine

white scarab
#

any advice on what to do here?

iron juniper
#

I gotta be honest I'm not a programmer, but I think something might be a little bit off bluezeHmm

queen coyote
lean dune
#

oh no

left ivy
lean dune
#

actually I think that other thing is an extra retrigger? then just don't play an ace ig

#

lmao

dense dock
#

is there a mod that adds new vouchers? or is that a thing people cant/havent done yet

#

and/or one that increases the chance for holo/foil/poly/negative jokers the higher the ante?

#

if not i think these are 2 pretty cool ideas

white scarab
dense dock
#

oooo that sounds fun ill deff be looking foward to that

strong falcon
#

Does anyone know how to return both chips and mult as seperate localize messages?

river ledge
#

I'm using steammodder and I am not sure how to view the debugger logs? They aren't going to localhost:12345 like I though. Do I need to enable something?

lean dune
stone brook
strong falcon
#

I've tried, but it seems to just show an empty message

cunning silo
#

Do we know if this error is common?

rare shell
#

How can I trigger Joker when it's added to your joker slots?

#

Like, the exact moment it's added

stone brook
gleaming talon
#

You could probably hook some function

stone brook
#

if not, then you have the chips & mult variables wrong

cosmic shell
lean dune
cunning silo
#

I have made a new card, and when I "discover" it, this error appears

stone brook
cosmic shell
stone brook
#

for boosters, the atlas is just "Booster"

cunning silo
#

i used the same methods jokers use with the API

stone brook
#

yea you cant

lean dune
#

you can probably make that work

stone brook
#

if you look in card.lua line 185, it uses _center.atlas instead of G.ASSET_ATLAS[_center.atlas] instead of whatever set it is

#

or line 174

cunning silo
#

I know

#

and the card's texture appears when it's "locked"

lean dune
#

this should be expandable to boosters without too much trouble

stone brook
#

oh is the card locked/undiscovered when you install

cunning silo
#

yup

#

when the card is being discovered in general the error jumps

lean dune
#

since the fallback 'centers' is there, probably getting rid of the set check might be fine

stone brook
#

is this the custom card type you're making?

cunning silo
stone brook
#

if so, you need to edit line 174 to include your card type

cunning silo
#

but it's still a consumable, so it should be fine

#

its consumeable value is still true

stone brook
#

line 174 doesnt check if its a consumeable, it checks if _center.set is "joker", "edition", etc etc

cunning silo
#

ohhh i see

lean dune
#

it does

stone brook
#

it does check that it is a consumeable, but then when defining the atlas, it doesnt check

cunning silo
#

which is really odd

stone brook
#

so it gets to the sprite init then passes nil

strong falcon
lean dune
#

oh that's peculiar

#

easiest way is probably to insert a line with a lovely patch, but preferably it can be made extensible in some way...

stone brook
#

:3 balamod injection also works

lean dune
#

yeah sure, minus the issue of compatibility of the mod loaders

hardy brook
#

How do I fix it?

gleaming talon
#

negative booster pack oooo

hardy brook
lean dune
#

nvm

#

might be the wrong function

hardy brook
#

...

#

End me

gleaming talon
lean dune
#

it's definitely not taking 2 params

hardy brook
#

all I did was copy the Certificate effect in cards

gleaming talon
#

try G.context

lean dune
#

eh

#

have you looked at other joker mods?

#

cause I sure haven't, I ain't got no idea what's right or wrong about that

hardy brook
#

I don't even know if something HAS something like that

#

if it did, I wouldn't be making this mod to begin with because what's the point in me doing it if it is already done

#

Stupid idea

#

What if i add "if context.first_hand_drawn then --- Code"

lean dune
#

some quick research says the function you should be modifying is Card:calculate_joker

hardy brook
#

wait no i have thast

gleaming talon
#

try G.context

#

already said it but try it

hardy brook
#

I tried g.context

#

does not work

gleaming talon
#

it's G

#

not g

cosmic shell
hardy brook
#

Yes

#

I know it's G not g

gleaming talon
#

k

rigid jewel
hardy brook
#

FLOWWEY, YOU'RE JOKER SMART

rigid jewel
#

Isn't it supposed to be SMODS.Jokers.j_joker_slug.calculate?

hardy brook
lean dune
#

let me send you somewhere

#

line 216

cosmic shell
rigid jewel
hardy brook
#

...

rigid jewel
#

Should look like this

hardy brook
#

page loads

#

Now to put the challenge in for testing purposes

white scarab
#

Or debug mode

hardy brook
#

oh yeah

#

Okay debug mode it is then

#

I also need to add in the logic for scored glass cards and the 2x mult

#

Welp

#

Kapoot

#

game loads, Joker in play

#

Blind Starts

#

Crash

gleaming talon
#

context being rough lmao

hardy brook
#

Context making me want to 0 Hands

runic kraken
#

can you add stuff to the card ui like this?

#

or this?

gleaming talon
rigid jewel
#

Hmm

gleaming talon
rigid jewel
#

Lemme check how

hardy brook
#

want me to just send it to you Flowwey

rare shell
hardy brook
#

Oh my gosh lol

gleaming talon
hardy brook
#

Here you are rebuilding Jimbo as a joker and I'm out here struggling MAKING GLASS CERTIFICATE BASICALLY

#

Ah yes, my pain is funny

lofty jungle
#

the threads are a bit too long - how do you make mods? ik there are 2 mod loaders and that i need to use lua but that's it

#

and related, is there a template for joker art somewhere?

lofty jungle
#

epic

rigid jewel
#

Evil jonkler

gleaming talon
#

you know nothing and either you struggle or hope someone has done it and ask

hardy brook
#

Well I know a positive right now

#

The way Jelly did their mod makes it easier for me to port the jokers in Archived

lofty jungle
#

so other mods are good starting points?

rare shell
#

vineBlind

hardy brook
rare shell
hardy brook
#

For now I'm gonna work on archived i guess

runic kraken
rare shell
#

it is mostly "trial and error and ask"

lofty jungle
#

oh dang there is an example thing in steamodded didn't notice that lol

bold fiber
#

Anyone has modded Superposition to wrap straights around?

#

By wrapping around I mean 32AKQ Straights

gleaming talon
#

did someone add a way to add a variable to G and save it in the save file ?

#

iirc it has been done so I'm asking

lofty jungle
rare shell
#

what do you mean by that?

#

setting up the mod itself of?...

lofty jungle
#

like autocomplete in visual studio code

gleaming talon
#

you extract the game in a folder with 7-zip or something and open the folder with vscode

#

then open the file you wanna write your mod in

rare shell
#

ohhh you do that???

gleaming talon
#

it helps with autocompletion yes

lofty jungle
#

alrighty

rare shell
#

lol I've been doing this wrong all this time

gleaming talon
lofty jungle
#

although steamodded isn't downloading because chrome thinks it's a virus :D

rare shell
#

yeah but I thought that was only to search things

lean dune
#

i might be, though

gleaming talon
lofty jungle
gleaming talon
#

for example

#

Firch is stuff in G.Game saved automaticly or no ?

rare shell
#

I think it is, but I'd check the .lua that saves stuff (save manager?)

gleaming talon
#

I want to cheese proof my mod but it'll be hard if I don't save it frever

umbral pilot
#

imho mods should be saving things in cosaves, not within the save itself

#

but yeah afaik G.GAME is saved

gleaming talon
cosmic shell
#

G.GAME is temporary per run saves as well so it should be fine

gleaming talon
#

that's exactly what I wanted

umbral pilot
#

yeah, it's not a problem when you have a small amount of mods, but it becomes problematic the more you have

#

just takes one mistake for a save to go boom

gleaming talon
#

yup

umbral pilot
#

do any of the modloaders have cosaves atm? might be a fun project

gleaming talon
#

But since I force load something in the shop I wouldn't want that to be broken by mistake or something

gleaming talon
#

Where can I see the values of the save ? I don't remember there was a site to edit save etc

umbral pilot
lofty jungle
gleaming talon
#

there are some example mods in steamodded I'm pretty sure

umbral pilot
#

afaik the save is just a zlib binary dump, so you can decompress it and poke around

lofty jungle
#

is it really just one lua file and a potential folder for assets?

gleaming talon
#

Assets it depends what you wanna do

#

but yeah 1 lua file

past tendon
#

I'm trying to include a new rank using the SMODS.Card:new_rank function . Things are working as expected, except for one major issue: game crashes when playing flush five or 5oak using that rank. Actually it doesn't even crash, it just freezes. I'll look into the code to understand what happens 🤔

gleaming talon
#

and respect the template

lean dune
#

get_X_same can't possible infloop though...

rare shell
#

Stupid question: is it possible to delay a function for some time?

umbral pilot
lean dune
gleaming talon
#

Yup G.GAME is indeed saved

lean dune
#

looks like this, so it should be non-blocking

gleaming talon
#

and even G itself is saved

rare shell
cosmic shell
lean dune
gleaming talon
#

I didn't use G I used G.GAME but it's good to know you know

#

is there a way to know if you're in the game menu with G or something ?

#

or know where you're currently at

lean dune
#

there's G.SETTINGS.paused, idk if you can know any more specific details

gleaming talon
#

that's a good beginning thx

rare shell
#

I mean before delay ended

gleaming talon
#

I'm not so sure

#

the only way to know is to try it

rare shell
#

I mean I tried

gleaming talon
#

ot you can use G.E_manager or something and tell him to do the code after 3sec

cosmic shell
stone brook
gleaming talon
#

G.E_MANAGER:add_event(
Event({
trigger = 'after',
delay = 0.2,
func = function()
for k,v in pairs(G.playing_cards) do
if v.seal== 'Black'then
v.seal=nil
end
end
return true
end
})
)

#

delay = 3 should do the trick

autumn yew
#

Hmm, having trouble detecting what types of plays can be made with the player's current held cards (i.e. on draw, "does hand contain X?")
A few types work, I've gotten success with Pair and Two Pair, but not with Flush.
Any ideas?
return next(originalResults["Two Pair"]) -- works
return next(originalResults["Flush"]) -- doesn't

past tendon
lean dune
lean dune
#

I'm thinking it's a weird edge case regarding get_straight

autumn yew
#

Ok, I did get partial results just now. All three selected cards should have been face down (I discarded 3, leaving the flush, drawn cards should be face down if the hand contains a flush)

rare shell
gleaming talon
#

yes

rare shell
#

how?

cosmic shell
#

just use the name of the function like a variable, lua puts functions and variables in the same namespace

gleaming talon
#

just calls them

autumn yew
gleaming talon
#

my arrow is bad but you get the point

lean dune
gleaming talon
rare shell
#

yep it worked, thanks!

lean dune
#

the way get_flush works is it returns an empty table if you give it more than 5 cards

gleaming talon
#

😉

lean dune
#

even if the 8 cards you gave it do contain a flush

#

same with straights

autumn yew
#

whiiich is what evaluate_poker_hand relies on

#

explains why the first drawn card comes in face down but not the second

lean dune
#

there's no real base game effect that needs get_flush and get_straight returning nothing if passed too many cards, I don't think

#

I just don't really like the idea of potentially altering base-game behavior in the loader

autumn yew
#

interestingly, get_flush works just fine if the #hand > 5 is removed.

#

because the final check is if flush_count >= (5 - (four_fingers and 1 or 0)) then

lean dune
#

I would have expected it to

gleaming talon
autumn yew
# lean dune I would have expected it to

right, which just makes it weird that it just goes return nil if its passed more than 5 cards XD
its an edge case that is literally irrelevant to the base game

gleaming talon
#

it's a security

lean dune
gleaming talon
#

when I make a mod or something else I love to have extra security just in case something really bad happens

#

like playing 6 cards when you''re not supposed to

lean dune
#

that being said, I'm now thinking if there's not some way to get more than 5 cards selected with cerulean bell

#

let me try that

gleaming talon
#

someone made a 6card

#

mod

autumn yew
lean dune
gleaming talon
#

perkeo ?

lean dune
#

yep

gleaming talon
#

showman

autumn yew
lean dune
gleaming talon
#

DEATH 13

#

I have its sound in my jojo's tarot mod

lean dune
#

actually no

#

it doesn't

#

you're gonna have too many selected cards

#

hear me out... DNA?

autumn yew
lean dune
#

hm

autumn yew
solar lantern
#

Hi everyone, I'm looking forward to accelerate game speed to go higher than x4, with some mods it takes a long time to play a hand ^^'

solar lantern
autumn yew
lean dune
gleaming talon
#

that's why I want 2 channels :
1 dev with only code special jokers etc
1 modding chat

rare shell
# gleaming talon

Is it okay to "nest" these events inside each other to make chains of events?

gleaming talon
#

should be

#

or you can create one that isn't inside with a different time delay

#

like this

lean dune
#

so yeah selecting 6 or more cards is literally impossible

fickle elbow
#

i scrolled over my tarot card.

gleaming talon
#

seems like a mod that messes wit tarots and does osmething bad

autumn yew
#

specifically.... the unlock condition I think
actually not sure, show your localization entry

past tendon
#
    -- This rank can only be created by the joker Number 13
    -- Note: Suffix B will be picked by the function, for instance 13 of heart will be called "H_B"
    local cards_rank13 = SMODS.Sprite:new('cards_rank13', mtl_jkr_mod.path, 'cards_rank13.png', 71, 95, 'asset_atli')
    local cards_rank13_opt2 = SMODS.Sprite:new('cards_rank13_opt2', mtl_jkr_mod.path, 'cards_rank13_opt2.png', 71, 95, 'asset_atli')
    cards_rank13:register()
    cards_rank13_opt2:register()
    SMODS.Card:new_rank('13', 13, 'cards_rank13', 'cards_rank13_opt2', { x = 0 }, {
        Hearts = { y = 0 },
        Clubs = { y = 1 },
        Diamonds = { y = 2 },
        Spades = { y = 3 }
    }, {
        next= {'2'},
        strength_effect = { ignore = true }
    })   ```

At first I thought something was wrong because I left the "next" field empty  (guess it's used by get_straight()) so I tried '2' or 'Ace' but nothing changed.
fickle elbow
#

i believe this is it.

lean dune
gleaming talon
#

Okay, I've finished making a mod that forces the first joker to appear in a shop to be a chosen joker

fickle elbow
dawn mango
#

people born in 2006 are 18 now?

#

wild

gleaming talon
#

sheesh

autumn yew
#

and that terrifies me

lean dune
#

yes, ik my bio says otherwise, but that's just because rounding

autumn yew
# fickle elbow

What. No, I mean whatever you did to make your card have tooltip text. Not sure what mod system you're using, but I mean this stuff:

    name = "Close Shave",
    text = {
        "Gives {C:money}$#1#{} when blind is",
        "cleared by less than {C:chips}#2#{}%",
    },
    unlock = {
        "Lose {C:attention,E:1}#1#{} runs",
        "{C:inactive}(#2#)"
    }
},```
dawn mango
#

yea i didnt do the math there

#

lol

#

still

#

turning 18 is still wild

rigid jewel
fickle elbow
#

oh, here it is

gleaming talon
lean dune
#

if so, I got something to test for you

quasi anvil
#

Does someone know if there is a mod allowing to freeze the shop until the next shop like in Hearstsone Battleground ? I've searched in #1209506514763522108 but I have no results

gleaming talon
#

I've messed with the shop and it may be doable

hardy brook
gleaming talon
#

I know for the galls where it is

#

lemme check

#

if scoring_hand[i].ability.name == 'Glass Card' and not scoring_hand[i].debuff and pseudorandom('glass') < G.GAME.probabilities.normal/scoring_hand[i].ability.extra then
destroyed = true
end

#

G.FUNCS.evaluate_play

#

in state_events.lua

#

in functions folder

river ledge
#

is there a non destructive way to alter the function in the misc_functions.lua file. Stuff like get_flush() and get_straight()

gleaming talon
#

Or you can check for every glass card and shatter them, then add them to a trash can then at the end destroy them

autumn yew
lean dune
#

but steamodded overwrites them, so be careful with that

gleaming talon
autumn yew
#

yeah that should work 👆

lean dune
#

indeed you can append/prepend to them if that fits your use case

gleaming talon
#

and you can add your logic

lean dune
#

in case of get_flush or get_straight, it likely wouldn't

#

but that depends on what you want to do

gleaming talon
#

also don't forget to return the base one since it seems to return something

river ledge
#

cool I'll give this a try

#

I think this was being discussed earlier, but I'd like to implement a way to score 6 cards at once, but the get_flush() function has a hard lock on 5 card hands, so I was thinking for a non-desctructive way around that, before get_flush gets called, if there are 6 cards I could take out the one card that isn't in the most common suit, run get_flush() then add that card back to the hand

autumn yew
lean dune
#

do note that function is being modified for the playing card API

#

I can however remove that check for you, since it serves no base game use

gleaming talon
#

find the intruder

river ledge
wild thunder
#

it's in the middle

autumn yew
lean dune
#

I'll get that removed as well

river ledge
#

appreciate it

autumn yew
#

👍

wraith stream
lean dune
wraith stream
lean dune
#

(yes that name is misleading, but card.lua would load before core.lua when I made it)

limber mural
#

What are the best mods to make the game more interesting?

#

No tacky ones please

dusky reef
#

smarteyes would always advertise my own

lunar fable
#

also incresed sould and blackhole probabilty is nice

past tendon
wraith stream
#

I am working on a botting API, coming along nicely if anyone else is interested. The bot playing does not have any intelligence obviously, but it can automatically lose, so that is progress!

autumn yew
#

it can automatically lose
That's... something

wraith stream
autumn yew
#

well ok fair

wraith stream
#

Here is a snapshot of the API so far, so it's very easy to get something up and going

#

It can also interact with the shop but I have to manually play to get to that part atm...

rigid jewel
#

Y'all are cooking some insane API

umbral pilot
#

got a repo eyeshake

rigid jewel
#

Meanwhile I'm out here trying to take a crack at those mini UI squares that explain editions and whatnot

autumn yew
#

Hm hmm, new thingamajigger not workin'

local handScores = {}
for k,v in pairs(G.GAME.hands) do
    if v.visible then
        handScores[k] = {
            name = k,
            value = v.chips * v.mult
        }
    end
end

originalResults[handScores[4].name] results in a "tried to access a nil value" error. This should be identical to originalResults['Flush'] (assuming no planet cards).
What am I doing wrong?
And no, originalResults isn't the nil thing.

wraith stream
# umbral pilot got a repo <a:eyeshake:412688632202395661>

not yet, the mod itself is not using steammodded or anything, I manually hooked it. Still need to finish the all of the actions (like choosing cards from packs and selling cards), and adding a decision flow. Hopefully in a week or two

umbral pilot
#

self promotion but check out lovely

#

it should make development a bit easier

wraith stream
#

oh did you make the lovely injector?

umbral pilot
#

yeah, that's been my project

white scarab
#

Yo that AI API mod looks really cool

#

wonder if it’ll be possible to make TASes with that

wraith stream
#

I just wrote a shell script to unpack/repack the executable and my injection is just a "require (my mod)" in the original source. I wrote a hooking library to add callbacks to my code and stuff

umbral pilot
#

pepeawooga need repo

#

that sounds sick

wraith stream
#

yeah metatables are crazy lol

umbral pilot
#

that's an understatement. you can blow the runtime wide open with them

#

I've been abusing experimenting with them in lovely for the past week

wraith stream
#

I will ping you when I make a repo 🙂

umbral pilot
#

very nice

wraith stream
river ledge
gleaming talon
#

it really interests me

gleaming talon
#

you could space a bit more the cards

gleaming talon
exotic pine
#

looking to add extra ui, think i can get away with it without injecting?

#

if anyone has examples i would appreciate

white scarab
fickle elbow
#

how do i post a mod?

gleaming talon
#

put it on nexus

#

and link it there

#

XD

lunar fable
umbral pilot
lunar fable
gleaming talon
#

idk why this modding community just hates nexus

lunar fable
#

it crashes my pc

gleaming talon
#

ah you yes

#

lmao

lunar fable
#

i have a good reason

gleaming talon
#

You wanted one of my mods right ?

#

which one did you want I can send it in dm

lunar fable
#

black seal

#

sounds cool

gleaming talon
#

thx

fair current
#

Does anyone have an example of adding the plasma deck scoring properties to another deck?

lunar fable
fair current
#

Nice, thank you, I'll take a look and either use that or see if I can figure out how they're setting it

lunar fable
#

also why do all my probabiltys keep getting set to 1bil

coral shale
lunar fable
#

mods is your mod

gleaming talon
lunar fable
#

GOD DAMIT

gleaming talon
coral shale
lunar fable
#

id didnt read the link

coral shale
#

It's a lazy way to do it

lunar fable
#

but now everything is garanted

coral shale
#

It shouldn't be permanent tho 🤔

lunar fable
#

well it is

coral shale
#

I've never seen it on my cards

rare shell
#

question for yall

#

is there any coding difference between the normal booster packs?

coral shale
rare shell
#

i.e these packs, not mega/jumbo

#

do the colors indicate anything?

gleaming talon
#

no

#

same function same arguments

coral shale
rare shell
#

just cosmetic variety then?

lunar fable
#

im on that