#💻・modding-dev

1 messages · Page 297 of 1

thin anchor
rugged pier
thin anchor
#

i see

#

thanks!

balmy wadi
#

my mods decided to stop working all of a sudden does anyone know how to fix this

rugged pier
crisp elbow
balmy wadi
#

still didnt work

rugged pier
#

looks like a talisman thing? not too sure

crisp elbow
#

Talisman issue it looks like

#

yeah

#

what mods do you have

rugged pier
#

^

balmy wadi
#

i had jens almanac on

#

that probably did it

rugged pier
#

do you have talisman?

balmy wadi
#

but i turned off the mods

#

yes

rugged pier
#

i think talisman might be a dependency for jens almanac

#

try keeping both on

balmy wadi
#

yeah i have both the mods on

#

like i have the mods in my folder but when i go on the game

rugged pier
#

no you have to remove the .lovelyignore file from talisman

balmy wadi
rugged pier
#

huh where is your mods option

#

do you have steammoded?

balmy wadi
#

exactly

#

yes

rugged pier
#

eh

balmy wadi
#

and mods dont work

rugged pier
#

is the steammoded folder in your mods folder?

#

show your mods folder

balmy wadi
#

wait i ahve 2 lovleys

#

still didnt work

rugged pier
#

lovely isnt supposed to be in this folder

balmy wadi
#

what

#

its been there the whole time

rugged pier
#

nvm

#

im tripping

#

i was thinking of the dll file

rugged pier
#

and do you have a .lovelyignore inside that folder

balmy wadi
#

i think my game crashed out after i was messing around with the debug menu and jens almanac

rugged pier
balmy wadi
#

huh?

rugged pier
#

didnt you say you were going to reinstall the mod

balmy wadi
#

i said i reinstalled the game

rugged pier
#

oh what

#

maybe theres a new appdata directory?

#

and your mods are in the old one

balmy wadi
#

i think the game updated

#

well

#

aswell*

crystal perch
#

did you check if the version.dll was removed from your game files

rugged pier
#

^

balmy wadi
#

no

crystal perch
#

check

balmy wadi
#

and how do i do that

#

im very dumb

crystal perch
#

manage local files

balmy wadi
#

alr

rugged pier
#

here

balmy wadi
#

just this?

#

i thought it was smth else

crystal perch
#

yeah there's no version.dll

#

follow the guide

#

you may have to disable windows defender and/or your browser's anti-virus protection when downloading

#

if it doesn't work try reverting back to lovely 0.7.0 instead of 0.7.1

red flower
#

wasnt 0.7.0 very broken

balmy wadi
#

it wont download

balmy wadi
#

i did

#

i think its smth to do with google

crystal perch
#

use a different browser

errant karma
#

so i've started making a wii themed balatro mod, and all i've done is the music and the font (trance)
where do i go from here

crystal perch
balmy wadi
#

yeah its my anti virus

errant karma
crystal perch
balmy wadi
#

disabled for 10mins

#

the fuck is this

#

this is wild

#

i still cant

#

and i went on microsoft edge

red flower
#

edge is basically the same as chrome

#

try firefox or smth

crystal perch
#

^

balmy wadi
#

i have to download it lol

glass scaffold
#

So you know how the Soul card has the shard that floats above? How do I implement that with a Joker?

balmy wadi
#

Finally

rugged pier
crystal perch
#

all you do is add a soul_pos = {x = #, y = #} to your joker

#

the pos is for your atlas ofc

glass scaffold
rugged pier
crystal perch
#

lemme show

balmy wadi
#

Im so lost in this

crystal perch
glass scaffold
crystal perch
lavish lake
#

you know i think the smods wiki should be updated more or else i will never know what the fuck does set_ability() do

crystal perch
glass scaffold
crystal perch
#

what

#

no just put it on the same atlas as the card

glass scaffold
#

but how does the thing know what the soul texture is?

crystal perch
# crystal perch

so these are both on the atlas 'Jokers'
the joker's pos on the atlas is x=3, y=0
the soul's pos on the atlas is x=3, y=1

crystal perch
lavish lake
glass scaffold
#

Now how do I set it in the SMODS.Atlas?

crystal perch
#

as you would any atlas

balmy wadi
#

im going to pull my hair out, i downloaded it and it had nothing in it

crystal perch
balmy wadi
#

i turned it off

crystal perch
#

do you use another antivirus in addition to defender?

red flower
# lavish lake how set_ability() works

it sets the ability of a card

so it basically either makes a new card or "transforms" a card from one to another replacing all the card.ability values

balmy wadi
#

i use norton

crystal perch
#

check the norton log

balmy wadi
#

which is the one i turned off

crystal perch
#

do you have both defender and norton disabled

red flower
lavish lake
red flower
#

aren't they in the code

balmy wadi
#

No clue how to turn off defender

crystal perch
#

wrong paste

crystal perch
glass scaffold
crystal perch
#

exactly like that

manic rune
#

good evening everyone

crystal perch
#

i have a png called "jokers.png" in the file path ChakraCollection/assets/1x/, then i added an atlas with the key "Jokers" to point to that file
then in my joker code itself, i set it to use the atlas with the key "Jokers", set the position of the joker's texture on that atlas with the code pos = {x = 3, y = 0}, and set the position of the joker's "soul" on that atlas with the code soul_pos = {x = 3, y = 1}

#

sent screenshots again for reference

red flower
manic rune
#

have u checked out art i made for relic pack :3

lavish lake
#

That escalated quickly

red flower
manic rune
#

"ruining my life"

manic rune
lavish lake
#

"ruining my life"

manic rune
red flower
#

ohhh that looks really cool

manic rune
#

thankss

glass scaffold
manic rune
#

thats a lot of pixel

crystal perch
#

idk if you can have the soul texture be on a different atlas than the joker texture

balmy wadi
#

ok im crashing out ive looked for like 10mins verywhere and looked up stuff and i still cant find the manage settings

crystal perch
#

let me consult the wiki

glass scaffold
crystal perch
#

god forbid we have a reasonable pixel density

manic rune
#

its faster to just have the soul and sprite in one same png

crystal perch
#

yeah

#

just do that

#

if you really want such a high res soul then just also include the joker backing on the same atlas upscaled

balmy wadi
#

where tf is manage settings here

crystal perch
#

if you're using norton it'd be in norton

balmy wadi
#

IT ONLY TOOK 45 MINS

errant karma
#

i think im an idiot, can someone help me replace the title texture and the location of the card on the main menu

balmy wadi
#

you have to be kidding me

#

i had a run with a natural canio cuz i was tryna do naninf on gold stake and wanted to be able to drag my mouse and now i cant do that run anymore cuz i updated steam modded

ionic verge
#

how would i set a created card's sticker? specifically i want it to have an eternal sticker

#

i presume something like card:set_sticker?

glass scaffold
#

Well... that's not exactly right.

sturdy monolith
ionic verge
#

(eternal, and thank you!)

glass scaffold
old bane
#

how does SMODS.take_ownership work

old bane
glass scaffold
sturdy monolith
glass scaffold
#

I finally got it fully working.

#

Now for the worst part:

Checking for 4 specific Jokers, and if they exist, destroy all of them and create a specific one.

#

So before I bang my head against a wall for a lot longer, anyone know how THAT'S implemented?

balmy wadi
#

Dude it did it again

glass scaffold
balmy wadi
faint yacht
#

Exclusions.

balmy wadi
#

How do i do that

sturdy monolith
glass scaffold
sturdy monolith
balmy wadi
#

Norton 360

scarlet spire
#

the color of my custom pack's UI outline is defaulting to red, how do I change this color? I can't find anything on this

balmy wadi
#

wait it worked

#

nvm

#

Giess not i didnt paste it

#

Its been an hour and im still clueless

errant karma
#

making a mod, all i'm tryna do is either get help with replacing textures or get someone to do programming for the mod, so how do i replace the main menu sprite?

#

this, how do i replace this

tepid crow
#

use an atlas like this

SMODS.Atlas{
    key = "balatro",
    path = "balatro.png",
    px=333,
    py=216,
    prefix_config = {key = false}
}
errant karma
#

thanks lol

#

anyway now time to ask/find out how to change the position of the card on the menu

shrewd cobalt
#

How can I check if a new ante has been started? (aka leaving the shop after completing the boss blind)

sturdy monolith
drowsy dome
errant karma
#

may i ask how to move the card

unborn bay
#

for now it basically just calculates the invisible card area which is not what i was looking for but a good compromise

modern kindle
#

The win button

tired skiff
#

what dis mean

rugged pier
#

do you guys know of any mods that add Boss Blinds? looking for code examples to see how they are structured

old bane
#

cryptid does

#

my mod does as well

spark pumice
#

Update: It still doesn't work, but now it doesn't crash. Currently it just spams "No Available Joker" as soon as a Boss Blind is Active

old bane
#

you can also look at the documentation for SMODS.Blind

rugged pier
spark pumice
#

K 👍

quartz ravine
rugged pier
quartz ravine
#

Something that feels sooooo nice about seeing your custom boosters appear in the store

old bane
modern kindle
tepid crow
quartz ravine
spark pumice
#

Ohhh I see

quartz ravine
#

YOu guys are really cooking tonight

spark pumice
#

How do I do that?

errant karma
#

i still need to know how to move the ace card

spark pumice
quartz ravine
errant karma
tepid crow
old bane
#

it's usually gonna be a lovely patch (for the ace card)

spark pumice
#

Oh ok

#

Ty!

quartz ravine
errant karma
spark pumice
# spark pumice Ty!

update it works now 👍 But I should probably do something about how it gives eternal to cards that aren't supposed to-

quartz ravine
#

# spawn WAYYY more cards
[[patches]]
[patches.pattern]
target = "game.lua"
pattern = '''            
for i = 1, 200 do
'''
position = "at"
payload = '''
  print("test")
for i = 1, 450 do 
m
'''
match_indent = false
errant karma
#

just a disclaimer but i am in no way a coder so if i seem dense you know why

quartz ravine
#

That needs to go in a file called lovely.toml. which needs to be in your mod folder.

Use this as a proof of concept to show modifying that area of code. This is pretty funny because it makes the intro sound play SUPER slowly to account for the 450 cards spawning, lol

rugged pier
#

love the bosses you implemented

coral flume
#

When picking a pseudo random element, is there anyway to make an exception, random card but not X card

crisp coral
#

remove the card from the given table

wary skiff
#

Can I implement purple stake's scaling as a custom challenge rule?

coral flume
glad osprey
#

mod that plays the invincible title card sting whenever you buy an invis joker

reef belfry
#

If hes invincible then why can i see him

errant karma
#

IT WOOOORKS, IT WOOOOOOOORKS!!!!

stark geode
errant karma
#

im going to try work on more dumb textures and stuff lol

quartz ravine
# errant karma IT WOOOORKS, IT WOOOOOOOORKS!!!!

I spent all of that time working on this,

eval local card
G.E_MANAGER:add_event(Event({
                trigger = 'after',
                delay = 2.04,
                func = (function()
                    local SC_scale = 1.1*(G.debug_splash_size_toggle and 0.8 or 1)
                    card = Card(G.title_top.T.x, G.title_top.T.y, 1.2*G.CARD_W*SC_scale, 1.2*G.CARD_H*SC_scale, nil, G.P_CENTERS.j_joker)
                    card.no_ui = 1
                    card.states.visible = false
                    if nil ~= replace_card then 
                        replace_card.parent = nil
                        replace_card:start_dissolve({G.C.BLACK, G.C.ORANGE, G.C.RED, G.C.GOLD})
                    end
                G.title_top:emplace(card)
                    return true
            end)}))

            G.E_MANAGER:add_event(Event({
                trigger = 'after',
                delay = 1.04,
                func = (function()
                    card:start_materialize()
                    G.title_top:emplace(card)
                    return true
            end)}))
#

If you have debug plus and run this, it will add additional jokers to that start screen

stark geode
#

It works with souled cards

quartz ravine
#

I am not sure how cryptid made them look nice like that. It looks pretty whack if you add too many cards!

tepid rock
#

Quesiton: how does midas mask work? I'm trying to make a joker with a similar idea (glass instead of gold) but i'm stumped. I have based the detection of the king being played using the example walkie talkie in the smod example joker code but i can not figure out how midas mask works

#

i can send what i have if needed

quartz ravine
stark geode
#

Huh

#

Cool

stark geode
#

Extract it out if the .exe with 7z

tepid rock
#

I have, can not figure out how its changing the cards

stark geode
#

Should be in cards.lua

#

Search 'midas_mask' or smth

glass scaffold
stark geode
#

The code will be in this big if statement

#

Undertale style

glass scaffold
errant karma
tepid rock
quartz ravine
# glass scaffold poyo

I actually used listenToYoutube to make an mp3 of that video to extract out the Poyo sound efect

tepid rock
#

if that makes sense

errant karma
#

i also came up with a custom joker ability even thought im tryna keep it to a texture mod

#

ahem

#

Dolphin - Copies a random ability of a joker sold this run.

#

coz dolphin emulator

glass scaffold
#

Nice

quartz ravine
glass scaffold
quartz ravine
#

yt-dlp is an amazing tool, I am happy it is not so well known

I wrote a Family YouTube Replacement that uses yt-dlp. It's an aspnet core app running bootstrap (because I like it !) and I added auth and a shopping cart system.

Kids get credits and they can put in 'orders' for videos. I have a black list and some some auto approve conditions. I thought about open-sourcing my whole tool chain but I worry about it getting noticed and then I'd have to redo things

tardy reef
#

Hey, I'm trying to make a joker that retriggers cards that are enhanced, what's the best way to know when a card is enhanced at all?

#

Like, not looking for a specific enhancement

rugged pier
daring fern
rugged pier
rugged pier
tepid rock
rugged pier
tardy reef
tepid rock
#
        info_queue[#info_queue + 1] = G.P_CENTERS.m_glass
    end
    calculate = function(self, card, context)
        if context.individual and context.cardare == G.play then
            if context.other_card:get_id() == 13 then
                context.other_card:set_ability(G.P_CENTERS.m_glass, nil, true)```
rugged pier
#

just next(SMODS>get_enhancements())

tepid rock
#

this is what i have so far

errant karma
#

man i wonder how the ui would look if the buttons were round and didnt have pixellated corners

tardy reef
#

This is the relevant part where I'm trying to check if the card is enhanced or not before it's told to retrigger

#

How do I plug in the next(SMODS>get_enhancements()) there?

rugged pier
rugged pier
tardy reef
#

Gotcha, thanks!

rugged pier
#

nw

quartz ravine
#

I am kind of struggling to make this feel fun to play. My idea was to make this like a stone card that starts low and 'grows' when held, like grass grows in your yard

gilded narwhal
quartz ravine
#

I made a set of cards that either also grow when grass cards are scored or held, but to me this doesn't feel that fun

rugged pier
errant karma
#

i swear i really wanna make a trance colour scheme for the wii but 1. the website keeps lagging really bad for me and 2. im tired so goodbye chat

rugged pier
#

easiest way to make things fun -> make number go up

quartz ravine
#

A new enhanced card I made. It functions but isnt' that fun. Maybe it grows too slowly. Or maybe just +chips isn't that fun

#

When it gets a red seal and a special edition then it's very fun

tepid rock
quartz ravine
#

yes, it starts at +0 chips and gets more and more chips. Then when you play it, those chips it accrued score. So it's like a stone card that gets better the more often it hangs out in your hand

rugged pier
#

so what i would do is

#

start at ~25/30

#

then increase it by 15-20 everytime its held in hand

quartz ravine
#

ohh, very good idea!

tepid rock
tardy reef
#

Got this error when testing, further on it said the error came from this line in my code

#

I assume I'm not using get_enhacements correctly and that's where it fails?

rugged pier
#

or you can cap it

unborn bay
#

How do i change a joker's graphic but only for that specific joker instance and not the center of that joker

#

im assuming it has something to do with the draw function but there is very little documentation on how to actually use it

nocturne spire
#

Hi how can add new files .lua to replace some lines of code when selecting a language without effect the others

#

As I’m having some weird issues regarding save data

#

I will share some info later on

#

As I have quiz in a few moments

paper zealot
shrewd cobalt
#

trying to make a joker that turns only the pair(s) in a hand into lucky cards, I keep getting Attempt to call method 'set_ability' (a nil value), I know I'm probably doing something wrong with the ipairs thing but not sure how to fix it

rapid stag
#

does anyone have any insight as to how i can fix additional tooltips that i try to add to wild card just merging into the normal wildcard tooltip?

all i'm doing is adding { key = [my tooltip key], set = 'Other' } to info_queue as part of functionality i've patched into generate_card_ui()

last sentinel
#

pretty sure set_ability takes the string not the full key table

rapid stag
rugged pier
#

is there a way to adjust joker effects as they trigger?

tepid rock
rugged pier
#

like the calculate part

tardy reef
#

I keep getting an error saying I'm trying to index a local nil value, and I have no clue what the reason for it is

tepid rock
# rugged pier can you show the whole function?
    loc_vars = function(self, info_queue, card)
        info_queue[#info_queue + 1] = G.P_CENTERS.m_glass
    end,
    calculate = function(self, card, context)
        if context.individual and context.cardare == G.play then
            if context.other_card:get_id() == 13 then
                context.other_card:set_ability(m_glass, nil, true)
                return true
            end
        end
    end
tardy reef
#

The second if is the problem part

tepid rock
#

this is the whole thing under "cost"

#

unless you need more

rugged pier
tepid rock
#

🤦‍♀️ thank you

rugged pier
daring fern
rugged pier
rugged pier
#

nah, a boss blind that appplies a modifier on all jokers

#

that reduces their effectiveness

tardy reef
daring fern
unborn bay
unborn bay
#

actually i think its children.center not children.front idk

rugged pier
daring fern
rugged pier
#

and there would be no way to dynamically go through owned jokers?

#

and get ability

daring fern
manic rune
#

yall yall

#

hear me out

rugged pier
#

BEPIS

#

lord and saviour

manic rune
rugged pier
#

is it a pendulum

tepid rock
#

new deck effect

manic rune
#

The Pendulum
Swings your screen in
a pendulum arc
(adapted code from notmario)

rugged pier
#

crazy

#

i feel like i would not be able to function

manic rune
#

its a boss blind anyways :p

rugged pier
manic rune
#

i actually wanted to do something like how asriel moves from undertale

#

but ended up with that

#

i think it looks pretty cool

quartz ravine
#

Weird! If you have two different To Do lists, they both will reward different hands

shrewd cobalt
manic rune
#

its P_CENTERS i think

#

or P_CENTER, i forgot

quartz ravine
#

I have a joker that will respect the hand that To Do list is working, and wow, it took me a bit to understand just how weird Todo list is

tepid rock
#

side question: which file is it to see the effect of editions (eg negatives)

manic rune
#

you can do ctrl + shift + F

rugged pier
manic rune
#

and do a global search on what edition u want to find

#

:p

#

-# its convenient for everything too, actually

tepid rock
#

where would i do ctrl shift f?

quartz ravine
quartz ravine
#

Yes, it's so odd. Meanwhile To Do list does its own thing!

rugged pier
#

actually i think its global variable

#

that changes it for specific abilities

#

its true for all of them

#

whereas for todo its probably not the case

manic rune
rugged pier
#

maybe an oversight?

manic rune
quartz ravine
#

iit's G.Global.Ancient_joker_suit or something like that

manic rune
#

and instead its a value inside the joker itself

#

:p

tepid rock
quartz ravine
#

I wrote a lovely shim so that multiple To Do lists would reward the same hand but then undid it

manic rune
rugged pier
tepid rock
#

gotcha, my bad

rugged pier
#

ctrl f does it inside the file

manic rune
#

☝️

quartz ravine
#

then try Control + Shift + G, find & replace in all files! And it even has regex mode

manic rune
#

im bad at maths so i genuinely cant figure out how to get the effect i want

quartz ravine
#

meanwhile notepad's getting worse with every windows update

rugged pier
#

tbh

manic rune
#

fax

tepid rock
manic rune
#

...7 zip?

tepid rock
#

it can only check the currently open file

#

i am using 7zip to check the balatro source code

manic rune
#

its a visual studio code thing

#

oh

#

you need to open the entire balatro folder as a workplace then

tepid rock
#

is that just highlight then right click open on it all?

manic rune
#

nop

#

turn on your visual studio code

#

there should be like, an Open Folder button here

quartz ravine
manic rune
#

orrr just this

tepid rock
daring fern
quartz ravine
#

unzip to some directory and close 7zip, then it will be fine.

Keep in mind this is just so you can see the source and figure thigns out, changes you make to the unzipped source will do nothing

rugged pier
#

which is independant from the version you have that is unzipped

tepid rock
#

gotcha, it looks good (minus accidentally putting all the files into my desk top)

#

so much knowledge for a semi-dumb joker idea /j

unborn bay
#

you know you'd come far for a single joker idea if you need a lovely patch to do it

tepid rock
#

I now have two problems. 1 is my previous joker has the chance to break the moment it turns glass (idek if i wanna change that or not cus it was kinda funny) and 2 my new joker (ill add the code here after this) does not remove its effect after being sold

glass scaffold
tepid rock
#
    loc_vars = function(self, info_queue, card)
        return {vars = {card.ability.extra.joker_size}}
    end,

    add_to_deck = function(self, card, from_debuff)
        G.jokers.config.card_limit = G.jokers.config.card_limit + 1
    end
tepid rock
# glass scaffold "it's a feature, not a bug"

FR. I'm sure I could add something that makes the glass not break by reducing the chances to 0 but tbh, i think this works out well and has good synergy with glass joker (which was the idea)

tepid rock
daring fern
tepid rock
#

wait, instead of "add_to_deck"?

#

i just looked it up lol

#

nvm, im an idiot

#

thank you, it is working, sorry for the spam

#

If we are struggling to think of a name for a joker idea, would we ask here or in modding chat?

tepid rock
#

Aight, i have an idea (idek if its possible yet) that destroys the joker to the right and turns the one on the left negative

#

I was thinking trauma unit but idk

tepid rock
#

Sweet. I will figure that out later then 🫡

tepid rock
glass scaffold
#

Is there a way to have a consumable appear whenever certain Jokers are held?

tepid rock
#

like replenishes after use or after blind? after blind could look at how the blue stamp works

tepid rock
#

I dont see why not. Is it a specific one?

glass scaffold
#

I want to have a consumable appear when 4 certain Jokers are held, and when the specific 4 are selected, use the consumable to destroy them and create a new one.

manic rune
glass scaffold
glass scaffold
manic rune
#

so true

#

im gonna work on an asriel boss shitpost lmfao

manic rune
shell timber
#

another window dance mod?

manic rune
#

oh hi notmario

yeah, decided to take a break from my mod and work on a shitpost boss blind instead :p

coral flume
#

Really stumped here, Im trying to make a joker that retriggers cards once for each identical card in scoring hand and am getting lost at having each card find the number of itself within the scoring hand

manic rune
#

doesnt seem to lag that bad though

#

i should probably optimize that

nocturne spire
#

I want to edit some code without replacing the main code, as I want to add the Arabic patch

#

And it’s rtl not ltr

#

I have already done that but the issue is that effect all other languages

rugged pier
#

oh im not too sure about languages stuff

#

maybe someone else can help

nocturne spire
#

No i mean like a toggle function

#

I or something like that

daring fern
nocturne spire
#

Yeah I know

#

I already made a beta patch and released it

#

But again the issue is that it broke all other languages

#

Oh yeah I forgot to mention that it replace some code from the function folder files

#

Like if you installed my Arabic patch it will have some issues in the other languages as it’s right to left not left to right

runic pecan
#

Generally speaking, what would cause this push problem and how to avoid them when coding?Oops! The game crashed: game.lua:2765: bad argument #1 to 'push'

last sentinel
#

First time trying to hook, but think i just overwrote cause now consumables dont work, what am i missing to get this to work?

Edit: wait hang on idek why im in Card:use_consumable

paper zealot
daring fern
maiden phoenix
last sentinel
#

Only last_tarot_planet, i'm just making the tarot-exclusive version of that

maiden phoenix
#

Oh ok

last sentinel
daring fern
last sentinel
#

ah okay the same way that igo is working

daring fern
#

Is it possible to make it possible to use discards in arcana and spectral packs?

coral flume
#

Is there no way to check how many cards are the same within a hand?

coral flume
#

yeah but non specified each hand

#

like not a specific suit or rank

#

like how many 10 hearts are played in this hand for example

runic pecan
#

How do I eval but in code instead of DebugPlus' in-game console?
Is there something like print?

last sentinel
#

hmm im getting a crash now when using consumables

daring fern
last sentinel
#

🙃

#

I was wondering why it wasnt recognizing it as a function lmao

#

ayyy switched it back to self instead of _card and it works now. Thanks for the help

runic pecan
#

WHY??? WHY IS ITS LENGTH ZERO???

wintry solar
#

You’d need to count them manually

wintry solar
shrewd cobalt
#

I copy and pasted this code from the example mods on the wiki, why isnt the 'Extinct!' message showing up? The destroy animation works perfectly fine

runic pecan
coral flume
chrome widget
#

Is there a way to return two messages simultaneouslt for different effects in a caulcate return table?

daring fern
chrome widget
#

I have a joker that can alternatively give +10 mult, X1.5 mult, or both +10 and X1.5. For the latter effect, I want to be able to have it show messages for both. So would I also put one of the two mult effects in the extra table?

chrome widget
#

Yep that worked. Thanks!!

wintry solar
#

Mult and chip messages are automatically done for you

#

So you can just put mult and xmult in the top level

#

Unless you’re using custom messages

chrome widget
#

Doing so seemed to result in no message at all, just instant addition to the score

wintry solar
#

Then you’re using the wrong keys

#

Show code pls

chrome widget
#
    return {
        mult_mod = card.ability.extra.mult,
        Xmult_mod = card.ability.extra.x_mult,
    }```
daring fern
wintry solar
#

Yeah dont use the mod keys

#

They don’t have messages attached

chrome widget
#

Thanks, I'll probably edit some of my other jokers I did manual messages for

#

But not tonight

nocturne spire
#

dose now how to make mod work for newer versions

#

It’s annoying to keep updating the code every so update

runic pecan
#

How do I make weighted pseudorandom_element?

wintry solar
#

You don’t

#

You’d need your own function

#

Though maybe I should pull all the stuff in smods out into a generalised function for others to use

fickle stag
#

how do I debug crashes? im not sure where in my mod is this comparison happening

hushed field
fickle stag
#

ah yeah

hushed field
# fickle stag ah yeah

Talisman turns certain numbers into tables. The crash is solvable either by making your mod Talisman compatible, or by turning off Talisman

fickle stag
#

oh I see

#

which numbers are turned into tables?

#

ill turn it off for now

hushed field
#

But it only matters in contexts of comparison

fickle stag
#

oh money 😭

hushed field
#

So any time you make a comparison like G.GAME.dollars > 15, Talisman will cause a crash

fickle stag
#

okay that makes sense, it was crashing entering the store

hushed field
#

Fixing all talisman issues can be a bit finicky, so it's not a bad idea to just not focus on it for now and mark your mod as not talisman compatible. On the other hand, setting up compatibility early is a good step towards not having to go through every if statement in your code later on

unborn bay
hushed field
#

I do wish that it was clearer to players that they don't need to run Talisman with everything, but compatibility is kinda necessary just because half your mods installs will be together with Cryptid 😋

maiden phoenix
#

If your mod and Cryptid doesn't work together it's not Cryptid they're going to delete balatrojoker

hushed field
#

😭

#

My mod's not made for cryptid numbers, please, I add jokers that just give 100 chips, I won't get you to eeee10

maiden phoenix
#

Me when Gemini:

reef belfry
#

The extremely dubious booster pack of whatever this is gonna contain

hushed field
fickle stag
#

i only use talisman for the scoring animation skip

#

but i could prolly just skid that hook

hushed field
#

The hook is just making sure your mod doesn't crash when you're not running talisman. You'll have to wrap any comparison variable that you compare with G.GAME.dollars, the score global, and hand levels with a to_big or to_number

wintry solar
#

I wish we would normalise not making talisman compat, it’s ridiculous that every mod has to program around one mod in such drastic circumstances, it’s absolutely something that should be addressed on the talisman side imo

hushed field
#

I'd have suspected that it could be solved by either setting up the big num tables as meta tables, or changing the behaviour of comparators, but I'm far too much of a layman to know how realistic that'd be

fickle stag
#

right i could probably make comparators check if it's a table before doing stuff

#

i have a lot of comparisons and wrapping to_big around everything is so annoying

last sentinel
#

do you still need remove = true in destroy_card if youre using :shatter? my enhancement(glass type) keeps destroying two cards when it shatters when its supposed to just destroy itself

hushed field
wintry solar
#

You should add shatter = true in your enhancement definition

#

And also make sure that context.destroy_card = card

ocean niche
#

what is the state for cards that are being actively being dissolved/shattered

last sentinel
#

you mean shatter in there like this yeah?

wintry solar
#

Oh sorry, it’s shatters = true

unborn bay
#

@tall wharf is it fine if i steal your code for displaying cardareas in info queue

ocean niche
unborn bay
#

im trying to make it display the uhh sold jokers

daring fern
#

How could I make a custom colour that cycles between red blue purple and yellow?

red flower
#

SMODS.Gradient?

rose dragon
tall wharf
#

n'

red flower
tall wharf
#

i just improved the code

#

lol

#

programming is basically advanced level stealing

hushed field
#

me whenever I need to do something with UI

maiden phoenix
#

Autumn's subtitle code is free real estate (tho I did improve it too for the next burglar)

tall wharf
#

i just made a function that displays shit

rose dragon
reef belfry
#

The Deck of Jimbob

rose dragon
ocean niche
#

Is there a way too render graphics in a card description

#

and add buttons

#

I have a very dumb Idea

red flower
#

yes and yes

#

i imagine you're not talking about buttons in the description

ocean niche
#

hehehehe

red flower
#

then no without changing the hover logic

ocean niche
#

k

#

im making a mockup rn

unborn bay
#

ignore the ERROR message i havent set up the localization yet

red flower
#

isn't a tooltip too small to show all sold jokers

tall wharf
#

☝️🤓

ocean niche
#

@red flower like this

red flower
# ocean niche <@390594268286418944> like this

i mean you can do that but rn if the player stops hovering the card then the description disappears so you need to figure out that logic
and also while it is completely possible, any kind of custom graphics drawing is outside of my expertise. you would probably need to interact with love2d directly

ocean niche
#

Ill look into It even though I suck at lua

#

proud rust programmer here

tall wharf
#

no

ocean niche
tall wharf
#

no rust allowed

ocean niche
#

also how do you display a alert below a joker

hushed field
#

I can choose to get the enhancement sprite to affect the card back today, finally finish up the Quest system, or try and get Ratatouille working. I yearn for simpler times

last sentinel
#

what do i have to do to have a deck start with >52 cards. I figure change some variable to make erosion work but do i need to add_card for each additional card?

crisp coral
hushed field
ocean niche
red flower
# ocean niche yeah

inside calculate return { message = "your message" }
outside SMODS.calculate_effect({ message = "your message" }, card)

tall wharf
red flower
#

i need to learn rust

hushed field
#

I think I should turn this concept for a Crime Enhancement into the Action Enhancement and make a different Crime enhancement

#

I feel like a Crime enhancement shouldn't be about retriggers, and probably interact with money in some way

primal robin
#

Does blinds have listeners to calculate_context?

red flower
#

blinds have calculate now if that's what you mean

primal robin
#

Hm.......

#

That's interesting

coral flume
#

Finished the art and description

#

now I need to make it work :(

unborn bay
rose dragon
rose dragon
manic rune
#

back from school

#

time to continue the shitpost blind

rose dragon
manic rune
#

asriel

#

those r what i got rn

rose dragon
manic rune
fickle stag
#

what controls handsize? how do i change it with a joker

red flower
#

G.hand:change_size(modifier)

fickle stag
#

thanks bbg <3

tall wharf
#

i wish i know more

rose dragon
#

cheesestick deck when?

unborn bay
red flower
#

do cards that were sold more often have a higher chance

unborn bay
#

depends on the amount of said sold card in the cardarea

#

also i really hate how the order of the cards displayed is random every time despite manually iterating adding cards to the ui cardarea aaaaa

crisp coral
#

are you using pairs instead of ipairs

unborn bay
#

i am using none

#

im manually iterating via a traditional for loop

crisp coral
#

what the fuck

#

oh

#

hm no clue what's happening then

red flower
#

yeah it should be fixed unless you're shuffling the card area

manic rune
#

how do i ease balatro's window back to the middle of the screen

#

:3

ocean niche
last sentinel
#

why is this not properly adding the cards to the deck? in a deck's apply function

#

trying to end up with a 65 card deck (52+13) but keep getting crashes in this part

red flower
#

what's the crash? you might need an event

last sentinel
#

I have it in an event, heres the full apply

manic rune
#

god

#

timing an event to a specific part of a music

#

might be harder than i thought when theres nothing to allow you to access the current duration of a music

#

ghh

reef belfry
#

what kind of hellsscape of an idea did you conjure in your brain for that

manic rune
#

beat drop

unborn bay
#

dealing with music sync alone is a nightmare

#

especially considering stutters, lag spikes etc

reef belfry
#

ok maybe i should nerf it slightly

manic rune
#

whats with that mult 😭

reef belfry
#

it uses an exponent

#

well i made it pretty hard to scale anyways

crisp coral
modern kindle
#

Good schmorning chat

unborn bay
#

Good schmevning chat

manic rune
#

i think i mightve succeded

#

I THINK I SUCCEEDED

manic rune
manic rune
modern kindle
manic rune
#

im working on smt cool

modern kindle
#

What u doin

manic rune
unborn bay
#

This is so Undertale

crisp coral
#

kid named frame drops

manic rune
#

it uses delta time

#

i dont think frame drops affect it

crisp coral
#

do they know

modern kindle
#

<@&1133519078540185692> kill him

manic rune
#

i dont know

modern kindle
grand violet
#

Dang

#

someone got there faster

karmic creek
modern kindle
#

youre too slow egg...

#

gotta be quicker then that..

grand violet
manic rune
#

no but like

#

from what i learnt from coding in roblox, deltatime should make it so that framerate doesnt affect the timing

unborn bay
#

deltatime alone cannot account for everything

manic rune
#

well fuck

#

currently doing the whole deltatime timing stuff in lovely.update rn

#

i had a lot of frame drops but so far it still seems synced

crisp coral
#

from my rhythm game experience, deltatime fucking sucks if you're timing it on the beat

unborn bay
#

you should track the current music position over increasing deltatime every frame for that

manic rune
#

current music position...

#

i dont think thats possible

#

-# or at least, i dont know how to :p

crisp coral
#

holy shit notitg mutual server

unborn bay
#

unbelievable

reef belfry
#

i just realized how influential oops all 6s is to every joker ive made so far

unborn bay
#

iirc you need to get the sound source and use tell to get it's current position

#

now im not sure how exactly balala manages the sound source part

faint yacht
manic rune
#

perhaps its this one

#

...hm, let me try

faint yacht
#

...not the first time such had been asked about LÖVE.

unborn bay
#

naw getPosition gets the listener position

#

in 3d space

#

because openal

manic rune
#

dsaiodmsao

unborn bay
#

it is not helpful here whatsoever

manic rune
#

dang

manic rune
crisp coral
#

the worst part of this is that the audio manager is in a different thread

manic rune
#

oh god damn it

unborn bay
#

the horrors of asynchronous sound management

manic rune
#

can i just keep it this way and slap a "pc issue" whenver someone complains about it not syncing 🪫

crisp coral
#

the existence of sound_manager.lua is the reason why i haven't remade a rhythm game in balatro yet

west mason
#

any idea what could be causing this? it was working just fine last time i tested it and i havent modified any of its code

crisp coral
west mason
#

here's the code for it

manic rune
unborn bay
#

the problem is making your own sound manager

crisp coral
#

so true

manic rune
#

i dont doubt myst's ability to make balatro in balatro itself

modern kindle
#

if sound.manager return fully_built end

#

there you go, did it

#

youre welcome bepis

manic rune
#

wha

modern kindle
#

i made your sound manager

manic rune
#

thank you dilly, that will certainly solve my issue :3

#

Ali, that was dangerously close

#

🥀

modern kindle
#

i was so scared seeing 'ni' appear

crisp coral
#

close to what

faint yacht
#

🤴

manic rune
#

N I L

modern kindle
#

close to calling me nice which is a blatant lie

#

😇

manic rune
#

welp

#

now onto the next part

reef belfry
#

time to plaster and not context.blueprint in all of my if statements

manic rune
#

how do i figure out the position of the middle of the screen to ease the window to

crisp coral
#

get the size of the monitor and the size of game window

#

then do math

manic rune
#

icic, thanks

unborn bay
#

love2d wiki love.window.getDesktopDimensions

#

love2d bros ,,,,

manic rune
#

love2d...

modern kindle
#

when love3d...

unborn bay
#

never

next timber
#

why is my deck skin showing up blank?

#

wait nvm im fucking stupid

tall apex
#

Awawa

unborn bay
#

im pretty sure atlases don't use prefixes

next timber
#

they do for deck skins only. for some reason

#

anyways the file isn't called suits.png im just stupid

#

omg twilight sparkle hii

reef belfry
#

for a split second i thought that was susie deltarune

next timber
#

lmao

modern kindle
#

i still thought thats what it was

zealous glen
unborn bay
#

susie deltarune with ourple hair and pink highlights

zealous glen
next timber
#

do you guys know how to read

#

lmao

#

"omg twilight sparkle hii"

zealous glen
next timber
#

you heard me

native zinc
reef belfry
#

same

zealous glen
unborn bay
#

what if it's not in game

manic rune
#

hello

zealous glen
manic rune
#

hi victin

#

:3

tall apex
manic rune
#

im making asriel undertale

#

gotta be the craziest boss blind ever

before those from lcorp

zealous glen
next timber
#

ITS NOT SUZIEEEE ITS TWILIGHT SPARKLE STOP BEING MEANN TO MY BOYRFRENDS ART SHUT UPPPPP/j

zealous glen
manic rune
tall apex
zealous glen
next timber
#

sporcle

tall apex
#

sporcle

next timber
#

hit quiz website

zealous glen
tall apex
#

Wait does that mean by math I’m also twilight sparkle

next timber
#

yes

#

you are twilight sparkle

#

go obliterate someone with friendship laser

modern kindle
#

so my knowledge comes from the outside

tall apex
#

I don’t shoot lasers I just work out and draw LMAO

tall apex
#

I wish I shot lasers

next timber
#

obliteration

unborn bay
#

people would die

#

😦

zealous glen
tall apex
next timber
#

sombra death gif my beloved

zealous glen
native zinc
#

if you don't want people to die you could always just look at the moon

zealous glen
#

You don’t look at the moon

native zinc
#

what has the moon ever done for us? tides? nahhh

zealous glen
#

You discord I’m howling at the moon

native zinc
#

destroy it thanks

next timber
#

look at the moon

#

look at the moon

#

anyways if youre all so smart what deltarune characters are these

tall apex
#

King kong

reef belfry
#

dont look at the moon

next timber
#

dont listen to this user

#

look at the moon

zealous glen
tall apex
#

don’t listen to either of these users, maybe look at the moon if you want to but you don’t have to

reef belfry
#

dont disturb the moons agent

tall apex
#

moom

reef belfry
#

is this a dumb name

zealous glen
#

What does it mean

reef belfry
#

idk

#

i took it from a game i used to play which was just

reef belfry
#

this does more but has a downside

zealous glen
#

I’m not a big fan

native zinc
#

hexed legendary? you seeded this ghost deck run didn't ya?

#

tsk tsk

red flower
#

hexagon legendary

native zinc
#

polychrome chicot when

next timber
#

hmmmmmmmmmmmmmmmmmmm

native zinc
#

i need something for my Brochure joker to do

#

its just like sitting as art . i mean yeah like i have 12 joker arts in backlog atp

zealous glen
#

I have some effectless art too

native zinc
#

yeah . im waiting on my mod testers to give feedback on
Blackmail
+2 Joker slots, -2 hands. Creates a Boss Tag per blind played or when sold
before trying to get it on mod manager

#

it's probably op for a common but they all die when it rerolls to The Water or The Plant and that's just funny

next timber
#

whats a boss tag

zealous glen
#

Isn’t it the one that rerolls Bosses?

native zinc
#

yes

stark geode
#

How do I get the name of the played hand and the most played hand

zealous glen
#

By the way, what do y’all think of this

daring fern
modern kindle
#

hm, thats not quite right

daring fern
native zinc
reef belfry
#

me perssonally id like my mult to have digits not reaching inhumane numbers

unborn bay
#

man i still need to figure out how to trigger all jokers in a separate card area based on the amount of a specific joker you have

#

i wanna make rigged adult card work multiple times since it currently doesn't

native zinc
#

for loop G.jokers.cards and count amnt of specific joker maybe

reef belfry
#

i have to make 1 more joker till i go back to doing consumables but idk which one id do

zealous glen
unborn bay
#

that's what IM already doing

zealous glen
unborn bay
#

add it multiple times probably?

manic rune
unborn bay
#

since again it only works once per one of that joker

manic rune
#

like

when does it trigger

zealous glen
manic rune
#

is it a joker

#

or is it a consumable

zealous glen
manic rune
#

uhhhh

zealous glen
manic rune
#

triggered in context.joker_main?

unborn bay
#

card gets rigged

#

sets a boolean to add that cardarea to calculation table

#

hmm actually i could just rig that actually maybe i am stupid

zealous glen
unborn bay
#

just make it a counter instead

zealous glen
manic rune
#

oh

#

ohhhh

unborn bay
#

results

#

sometimes it crashes due to stack overflow

manic rune
#

icic, i never saw a joker doing that before so i didnt assume that

zealous glen
#

I mean it sounds like a coding issue

unborn bay
#

i do fucking suck at programming yes

manic rune
#

-# but also, its actually not that good if thats the case

#

you are wasting a joker slot for +3 hand levels which can be obtained through planet cards pretty easily

doesnt help the fact that its randomized everytime you find it in shop too, so if its a hand you dont use - you never want it

unborn bay
zealous glen
#

It’s strong early, and it encourages playing a random hand

zealous glen
#

And retriggers

#

Because it works and you don’t need to think too hard

unborn bay
#

retriggers won't work here because the joker belongs in a completely different card area

#

again

zealous glen
#

That’s fine

manic rune
zealous glen
#

Jokers retrigger playing cards

manic rune
#

and if it does land on a hand thats easy to play, the benefits usually arent as huge

zealous glen
#

Playing cards are in a completely different CardArea

unborn bay
#

yeah but thats a very specific context accounted by smods

zealous glen
unborn bay
#

the two card areas are functionally apart and never interact without a specific joker lmao

#

the normal version accounts for this fairly fine

#

just act like a blueprint to any card in that card area

zealous glen
unborn bay
#

this was the previous code i used prior to just adding the invisible card area to standard calculations

-- Go through all cards
for i = 1, #PTASaka.adultcard_cardarea.cards do
     G.E_MANAGER:add_event(Event({blocking = false, 
                function()
                    local joker = PTASaka.adultcard_cardarea.cards[i]
                    local ret = joker:calculate_joker(context)
                    --print("joker mr")
                    if ret and type(ret) == "table" then ret.message_card = card; ret.card = card; SMODS.calculate_effect(ret, card) end
                return true
                end
                }))
end
#

don't mind the shit formatting

#

SMODS.calculate_effect seems to just yield no result or maybe im stupid and just doing it wrong

zealous glen
#

I don’t think it automatically calculates

unborn bay
#
If you want to evaluate effects outside of the return table, use SMODS.calculate_effect({effects}, card), where {effects} is a table like the return table of a calculate function, and card is the card that is being evaluated.
manic rune
#

that seems right

zealous glen
#

I tried to use it before and it didn’t automatically calculate

unborn bay
#

🤔

unborn bay
#

think that together with SMODS.calculate_individual_effect might be what im looking for

#

since that indeed does the effect

#

ill do it tomorrow though

glad osprey
#

anyone know how to render an image over the entire game without it being affected by screenshake

zealous glen
#

Cutscene?

manic rune
#

yeah

#

how do i check if state in the scoring step or not

glad osprey
manic rune
#

thank you very much mr politician

#

this is why i hate you ❤️

glad osprey
#

--x--x

manic rune
#

--x--x❤️

glad osprey
manic rune
#

something related to display_cutscene

glad osprey
#

probably smth to do with G.STATE if i had to guess

unborn bay