#Joker Forge - Create Balatro Mods Visually and Export the Lua Files (WIP)

1 messages · Page 16 of 1

icy crow
#

i wonder how many people will remove the .jokerforge file from the export before posting it to the github

humble lion
#

i was eagerly awaiting the modded rarity fix but my consumables are still producing stinky jimbos

wild pier
#

variable hashtags and showing up :(

heady frost
wild pier
#

ohg

heady frost
#

unless youve exported them in the past like hour

humble lion
#

I did it 5 minutes ago because I figured I would need to do that yea

#

I might try making the cards from scratch to test

heady frost
#

i know its a silly question but if theres no available jokers it just spawns jimbo

humble lion
#

Several

heady frost
#

can u send me the joker forge file

#

so i can import it and see for myself

humble lion
#

Well that was the issue I always had, but the rarities seem to work

#

Sure

humble lion
heady frost
#

this is the third time now i thought i fixed this bug but it still doesnt work lol

humble lion
heady frost
#

beautiful art

#

thats strange the code its generating looks all correct

#

will test in game

#

wait

#

did you refresh the site

humble lion
#

...no

heady frost
#

oh wait no

#

it is not working i see

humble lion
#

i was kinda hoping i did something dumb

heady frost
#

nah its not your fault its a code gen fault for sure

#

also i need to add it so you can have overlay images on consumables

#

will do that after this fix

humble lion
#

that should be an easy fix because ive been manually fixing it every time i export the consumables lmao

heady frost
#

yeah for sure

#

im honestly so confused as to why the joker spawning thing doesnt work

nimble island
#

it works for me

#

odd

heady frost
#

yeah it worked in testing

#

but also i just exported these jokers and it doesnt work

#

maybe it has something to do with multiple rarities or something idek

humble lion
#

i thought at first it was because the mod id was the same as the rarity id (which is no longer the case)

heady frost
#

i will ask modding-dev when ive eaten this pasta

#

that sentence makes it seem like im gonna ask modding dev about the pasta

woeful bough
#

lol

crude trail
#

among some friends some time ago we decided that chicot is the worst joker, so as a joke we created this joker

heady frost
#

does mierda mean mother

#

soy is 'I' or 'me' i think

nimble island
#

lmao

heady frost
#

una might mean possession

#

or am

nimble island
heady frost
#

close enouh

nimble island
#

damn

icy crow
#

😭

heady frost
#

how many spanish speakers are in here damn lol

#

is clash royale big with the spanish speaking community

icy crow
#

On the wall

nimble island
crude trail
heady frost
#

i was thinking about it earlier

nimble island
#

me too

heady frost
#

i see a lot of spanish clash royale videos that are in spanish

#

but that might just be my algorithm

crude trail
#

Spanish support when

nimble island
#

me when spanish people exist

safe minnow
wild pier
heady frost
#

el joker forge

humble lion
#

burger

#

send the update

nimble island
#

BURGER

icy crow
nimble island
#

this is your job now

wild pier
safe minnow
#

could pull a cryptid and make it auto update

nimble island
#

yeah

wild pier
#

not coco lulu

#

the fuck

nimble island
#

the membership card

wild pier
#

the fuck did i just say

safe minnow
#

i think you can just copy the https module code from cryptid but just change it

wild pier
#

well i dont know how to do that okay :(

crude trail
# wild pier

I would do something similar, except that shitcot was only said five times on the server

heady frost
#

burger

icy crow
#

i hate how adding a new thing like retriggers (what i mean is effects using separate context) to the code gen needs copy pasting 300 lines of code and changing a few things

safe minnow
heady frost
#

same with destroy card

icy crow
#

same with two effects im adding

safe minnow
#

can't remember if it has an https module however

icy crow
#

hell yeah .jokerforge

crude trail
#

I got stuck at 130 jokers

wild pier
#

FUCK

#

WRONG IMAGE

crude trail
#

lol

wild pier
#

THATS BART

nimble island
#

good ol 2 pair

nimble island
#

was that the referencve

safe minnow
# wild pier

when this joker is clicked on ^^^3 chips and mult

woeful bough
wild pier
#

and that might be good

safe minnow
woeful bough
crude trail
wild pier
vast frost
#

I had asked this earlier but do random groups inside of custom jokers crash the game for anyone else?

#

I’ve been experimenting with the website and everytime I try to use any random feature it crashes the game

icy crow
#

Update smods

vast frost
#

Hmm ok

#

Will using the update feature through the mod manager work?

icy crow
#

im not sure

#

probably

vast frost
#

Ok cool

#

Thanks

icy crow
#

@heady frost you silly

#

load rarities before jokers

heady frost
#

wait fr

#

is that the actual issue

nimble island
#

no shot

heady frost
#

bruh

icy crow
#

wait i looked at the define function

heady frost
#

all this time

#

doesnt it do that already tho?

SMODS.Atlas({
    key = "CustomJokers", 
    path = "CustomJokers.png", 
    px = 71,
    py = 95, 
    atlas_table = "ASSET_ATLAS"
}):register()

SMODS.Atlas({
    key = "CustomConsumables", 
    path = "CustomConsumables.png", 
    px = 71,
    py = 95, 
    atlas_table = "ASSET_ATLAS"
}):register()

local NFS = require("nativefs")
to_big = to_big or function(a) return a end

local function load_jokers_folder()
    local mod_path = SMODS.current_mod.path
    local jokers_path = mod_path .. "/jokers"
    local files = NFS.getDirectoryItemsInfo(jokers_path)
    for i = 1, #files do
        local file_name = files[i].name
        if file_name:sub(-4) == ".lua" then
            assert(SMODS.load_file("jokers/" .. file_name))()
        end
    end
end

local function load_consumables_folder()
    local mod_path = SMODS.current_mod.path
    local consumables_path = mod_path .. "/consumables"
    local files = NFS.getDirectoryItemsInfo(consumables_path)
    for i = 1, #files do
        local file_name = files[i].name
        if file_name:sub(-4) == ".lua" then
            assert(SMODS.load_file("consumables/" .. file_name))()
        end
    end
end

local function load_rarities_file()
    local mod_path = SMODS.current_mod.path
    assert(SMODS.load_file("rarities.lua"))()
end

load_rarities_file()
load_jokers_folder()
load_consumables_folder()
icy crow
#

i looked at the order of the functions

#

not the order of calling them

#

im stupid

heady frost
#

yeah its a bit counter intuitive

#

i genuinely cant find the issue here at all

#

i swear this worked when i tested it earlier

#

i feel like im going a bit schizophrenic

icy crow
#

im going to send what i did in my mod

heady frost
#

that would be perfect

icy crow
#

part of main.lua

assert(SMODS.load_file("src/rarities.lua"))()
assert(SMODS.load_file("src/jokers/load.lua"))()

rarity

SMODS.Rarity {
    key = "plant",
    loc_txt = { name = "Plant" },
    badge_colour = G.C.EF.PLANT,
    pools = {
        ["Joker"] = true,
    },
    get_weight = function (self, weight, object_type)
        return 0
    end
}

part of jokers/load.lua

assert(SMODS.load_file(curr_dir.."plant.lua"))()
#

shit

#

part of plant.lua

SMODS.Joker{
    key = "pocketplant",
    config = { extra = { discards = 3, hands = 1 } },
    loc_txt = {
        name = 'Pocket Plant',
        text = {
            'When {C:attention}Blind{} is',
            'selected, gain',
            '{C:attention}+#1#{} Discards and',
            '{C:attention}set Hands to 1{}'
        }
    },

    atlas = 'Jokers',
    pos = {x = 0, y = 0},
    
    cost = 6,
    rarity = "EF_plant",
    blueprint_compat = true,
    eternal_compat = true,
    unlocked = true,
    discovered = true,
    
    loc_vars = function(self, info_queue, card)
        return {vars = {card.ability.extra.discards}}
    end,

    calculate = function(self, card, context)
    end
}
#

i cut off the calculate function because it was long

heady frost
#

this looks all the same

icy crow
#

and that annoys me

heady frost
#
local function load_rarities_file()
    local mod_path = SMODS.current_mod.path
    assert(SMODS.load_file("rarities.lua"))()
end

load_rarities_file()
SMODS.Rarity {
    key = "royalty",
    pools = {
        ["Joker"] = true
    },
    default_weight = 0.1,
    badge_colour = HEX('c3a919'),
    loc_txt = {
        name = "Royalty"
    },
    get_weight = function(self, weight, object_type)
        return weight
    end,
}
SMODS.Joker{ --Royal Joker
    name = "Royal Joker",
    key = "royaljoker",
    config = {
        extra = {
            Xmult = 2
        }
    },
    loc_txt = {
        ['name'] = 'Royal Joker',
        ['text'] = {
            [1] = 'Gives {X:red,C:white}X2{} Mult when a',
            [2] = '{C:attention}face card{} is scored'
        }
    },
    pos = {
        x = 0,
        y = 0
    },
    cost = 5,
    rarity = "testytest_royalty",
    blueprint_compat = true,
    eternal_compat = true,
    unlocked = true,
    discovered = true,
    atlas = 'CustomJokers',
#

prefix is correct too

{
  "id": "testytestmod",
  "name": "testytestmod",
  "author": [
    "Wingcap"
  ],
  "description": "Custom jokers attempted with Joker Forge",
  "prefix": "testytest",
  "main_file": "main.lua",
  "version": "1.0.0",
  "priority": 0,
  "badge_colour": "666665",
  "badge_text_colour": "FFFFFF",
  "dependencies": [
    "Steamodded (>=1.0.0~BETA-0404a)"
  ]
}
SMODS.add_card({ set = 'Joker', rarity = 'testytest_royalty' })
#

this makes literally no sense

icy crow
heady frost
#

just done it now lol

storm hamlet
#

is there a plan for the consumables to be able to target a specific joker when destroying a joker?

heady frost
storm hamlet
#

awesome

heady frost
#

theres plans to have a bunch of new stuff for consumables

#

especially conditions

#

cos theres only 2 lol

storm hamlet
#

cant wait

icy crow
#

why am i stupid

#

-20 min of debugging

heady frost
#

lmao ive done that

#

i think im gonna come back to the create joker bug another day and leave it for now because im genuinely so lost

#

it should just... work

nimble island
#

turn it off and on again

#

that works for me all the time

heady frost
#

and the code is the exact same

icy crow
#

anyone down?

nimble island
#

damn

#

wheel of fortune would still say nope for me

heady frost
# smoky sorrel whats the bug?

the create joker effect does not work when creating a joker with a custom rarity, it just creates jimbo (which is the default for add_card)

#

but the code it generates is identical to the actual code it should be

#

like look at this

icy crow
# icy crow anyone down?

i'll do some testing to find bugs/ edge cases and if i don't find any it should be ready for merging

heady frost
#

LET'S FUCKING GOOOOO

icy crow
#

this code begs for proper formatting

heady frost
icy crow
#

i mean it's possible

#

but then the code gen code is ugly

#

there's no in between

#

one or the other

wild pier
#

well uh its almost been a week

icy crow
#

.

#

also if everything goes well in like a hour or 2 there will be the probability stuff

heady frost
icy crow
#

that too

#

most changes are polishing and bug fixing at the moment

heady frost
#

easily logged 100s of hours into programming this shit lol

#

boosters soon tho

#

after consumables have more options

#

namely conditions

icy crow
#

i mean the effect adding is perfect

#

i can't imagine a better way

heady frost
#

thats why i was able to rapid fire new effects and conditions in like 30 mins

#

if they are easy ones tho

#

probability related ones are NOT easy ones

humble lion
#

are you planning to add conditions to passive joker effects (the ones that are always on)?

icy crow
#

i mean they are always on no matter what

#

what are you trying to do?

humble lion
#

well for example what if you wanted to have queens act as kings, but only if theyre a certain suit

#

i guess checking that is hard

heady frost
humble lion
#

or hell, paredolia but it only works if you have >$5

heady frost
#

but it probably wont happen until seals and enhancements and stuff are here

humble lion
#

yeah fair enough

smoky sorrel
#

are seals hard to implement?

#

in my mind it sounds easy

heady frost
#

from my understanding they are fairly easy

#

easier than consumables

icy crow
#

currently the effects are defined like this

#

if anything needs changing let me know

heady frost
#

now thats looking all fire

icy crow
#

i had no ideas for names of these

heady frost
#

i would capitalise every word like the other top-level labels

#

like "Modify Probability"

#

maybe part of the chance roll could be a simply "Numerator or Denominator"

#

you dont have to change the ids ofc

icy crow
#

worst thing that can happen is being confused in the future

smoky sorrel
#

btw should the 'when a card is bought' be on economy?

heady frost
icy crow
#

someone remind me later to update Oops! All 6s in the Vanilla Reforged

#

would be funny if i forgot and it stopped working

smoky sorrel
heady frost
icy crow
#

oh god i (probably) made a typo somewhere in the 300 lines

#

set probability also has this issue

#

pre return code is put there

#

I FORGOT TO RENAME RETRIGGER TO PROBABILITY

#

i hate copy pasting code

alpine elk
#

i am quite new but how th do you actually apply score?

icy crow
#

When hand is played > Add Chips/Mult

#

for example

#

you have your trigger telling when it will happen, condition checking if it should happen, and effect telling what should happen

low jasper
#

when i get back from holiday im gonna lock tf in, just start creating as many jokers as f***ing possible

icy crow
#

you could note your ideas on google docs or notepad

alpine elk
#

I’m just doing it on my iPad rn

icy crow
#

well i wish you gl

#

ok so i was testing for stack overflow,

#

and why tf is there a if true statement

#

is it my fault or just a quirk of the code gen

#

because if its my fault im not fixing it

heady frost
icy crow
#

i can't find any errors now

#

i think it's time to push the mod probability and let the masses test it for me

#

also the custom message in the probability stuff does nothing for this reason

smoky sorrel
#

yours doesnt

icy crow
#

wait

#

nvm

smoky sorrel
#

understandable

icy crow
#

technically the trigger doesn't matter for the probability stuff but wouldn't this example of Oops all 6s be counter intuitive?

smoky sorrel
#

its a little weird

icy crow
#

im not sure if i should come back to the idea of separate trigger

smoky sorrel
#

cant you put it in passive?

icy crow
#

althought that would require a lot of refactor

icy crow
#

and passive doesn't allow that

humble lion
heady frost
#

bruh

#

who knows lol

icy crow
heady frost
#

honestly if i were you i would change it to passive

gusty meadow
#

Anyone else having an issue with a joker just not being in the mod files?

heady frost
#

does the trigger actually matter for that effect at all

heady frost
#

if so, the keys are the same

#

if the keys are the same it wont generate unfortunately

icy crow
#

and i really want the conditions on this

humble lion
heady frost
heady frost
#

keep it at when a hand is played then honestly

#

maybe in the future when conditions can get added to passive triggers we can move it over

icy crow
#

unless i make a separate trigger for this

#

(that would remove most of the code i added)

heady frost
#

because it allows for conditions aswell

#

probably wouldve been easier from the start haha

#

but its a learning experience

icy crow
#

time to remove 600 lines of code

heady frost
#

😭

icy crow
#

funny thing is. if i stuck with separate trigger, it would be finished yesterday

gusty meadow
icy crow
icy crow
#

and file names are assigned by key

heady frost
icy crow
#

deleted around 500 lines of code and reworked adding the contexts themselves

heady frost
icy crow
#

can't wait to commit these changes and essentially invalidate 4 earlier commits 🔥

icy crow
#

ok now the harder part of judging what conditions should be added here

woeful bough
icy crow
#

that's another context not this one

#

either of this ones

#

im working on this now

#

shit i forgot to modify the description of the effect

#

brb

alpine elk
#

Anyone know why the save changes button isn't working?

#

Like at all

#

I'm on ipad

#

It's really pissing me off

spice sigil
#

I am checking this out for the first time rn. This is so sick

icy crow
#

i wouldn't be suprised if it's ipad's fault

woeful bough
#

its (atleast RN) a mainly PC thing

alpine elk
#

I know but everything else has been working

spice sigil
#

Gonna make a yugioh mod with this

icy crow
alpine elk
#

I've been able to do basically everything other than save

icy crow
#

mod files now include the save file for the site

#

if none work then idk

alpine elk
#

This doesn't work

#

I cant export files if i don't have joker information

icy crow
#

oh this button

#

it just doesn't work?

#

we need to find a mobile web designer

heady frost
heady frost
alpine elk
icy crow
#

i can click this button on my phone so idk

alpine elk
#

It might be internet/battery tho

#

I'm at my cabin so have quite shitty internet

icy crow
#

-477 lines 👀

alpine elk
#

Dayum

icy crow
#

i hate that im doing things that the system wasn't designed for

harsh forge
#

very proud of how this one came out!

wild pier
woeful bough
#

my point stands

heady frost
heady frost
# wild pier

yeah, it can definitely work on mobile pretty decently at times, i think the biggest think would be removing the sidebar and replacing it with a dock on mobile screens

icy crow
#

i need to do two things:

  • get access to the key of a joker/consumable in the effect generating code ( pseudorandom_probability would need something like the name as a identifier (not seed) to recognize it )
  • get the keys of all the jokers/consumables using random groups
heady frost
#

the second one is quite hard tho i wont lie

icy crow
#

the first one would need to be passed somehow in the code gen

heady frost
#

this shit is beyond my paygrade haha

icy crow
# icy crow

the 2nd time the probabilityIdentifier is passed here

#

is the identifier

#

field in the function

#

what's passed there can be later accessed in a context

uneven hedge
wild pier
uneven hedge
wild pier
#

fuck..

#

uhh..

#

this is awkward

icy crow
#

how is this even relevant

#

different name

#

different effects

#

different image

#

sure its referencing the same drink but its a popular drink

heady frost
heady frost
uneven hedge
harsh forge
#

Clickbait Joker for a friend lol

#

Evil Joker

icy crow
#

what chance

harsh forge
woeful bough
#

the creating custom rarity bug is fixed right?

icy crow
#

works sometimes

woeful bough
icy crow
#

it works on some saves and on some it doesnt

#

idk whats the rule

#

the code on the one that doesn't work looks the same to the working one

woeful bough
#

rip

icy crow
#

i swear to god

woeful bough
#

lol

icy crow
#

ok the 2nd is mostly the balatro's fault

gusty meadow
icy crow
#

oh if you create two jokers without updating their name it they have the same key

#

im bad at naming but condition made

#

no im not going to add custom rolls yet

smoky sorrel
#

is there a condition to check the played hand?

#

like if it has at least 3 enhancements

woeful bough
#

yes

smoky sorrel
#

where

#

i only see the suit and rank ones

#

@heady frost sorry for the ping, does it make sense to create a condition to check anything from the played hand?

#

similar to deck count

#

that way we dont need to have two separate conditions to check suit and rank count

#

and we can check for num of enhancements, editions, etc

heady frost
smoky sorrel
#

yeah its more intuitive

#

what do i call the condition then

#

like special_thingies_hand

#

to check for seals, enhances and editions

icy crow
#

hardest part in making conditions and effects is naming them

#

ok im going to stop adding stuff because it'll never end

silent rock
# icy crow im bad at naming but condition made

does this even need to be a list of cards and not letting the user put in any card they want, so what if they put in a card that doesnt have any probability rolls, the worst thing that happens is it doesnt work, but now they could also check for cards from like their own mod and others

heady frost
icy crow
#

at least i think

heady frost
#

i would say just replace it with a key

silent rock
#

wdym by key isnt possible here

#

on the jokerforge side i assume

#

since you 100% can do it if you code it yourself

icy crow
#

i'll change it in the future but rn i just want to merge this

heady frost
#

I think I may be thinking of something different idk I didn't read the context lol

smoky sorrel
icy crow
smoky sorrel
heady frost
#

yeah for sure, categories were made to split them up and now the categories are filling up haha

icy crow
#

but i don't want to change it yet

#

i want to finish the current thing and consider it later

#

rn im considering the names for these

#

then i'll do Oops all 6's

#

then hopefully merge

icy crow
#

-# after merge

olive agate
#

i wish there was a way to cross mod

icy crow
#

maybe some day

icy crow
smoky sorrel
#

i think probability compare is good

#

maybe chance compare

#

it fits into the special tab

woeful bough
smoky sorrel
#

compare odds is good also

icy crow
#

detect odds for sure sound better than what i have now

autumn dove
#

staring at the github issues list wondering what the fuck next to do

olive agate
icy crow
#

im writing a little changelog so im not confused later

autumn dove
#

sweet

olive agate
neon marten
#

Pretty cool

autumn dove
icy crow
olive agate
icy crow
#

no my pc is just turned up like crazy

#

because my dumbass basically muted balatro and then instead of making balatro louder i made my pc louder

olive agate
woeful bough
#

FL studio

#

and my keyboard

#

*synth keyboard, not computer

olive agate
#

ok then

#

well it sounds amazing

icy crow
olive agate
crude trail
# woeful bough ethereal

They already have everything ready, and I still don't even have the jokers with their original texture

smoky sorrel
#

is this too obviously a tablet?

#

idk what icon to put

icy crow
#

the button at the bottom looks off

#

imo

#

you can pull off a funny and use a credit card

smoky sorrel
#

lol

#

is this better?

icy crow
#

i think so

#

Hand especially

smoky sorrel
#

ill leave it like this for now

autumn dove
#

hate that vercel just wont let me see ANY details despite being a collaborator on the repo

nimble island
icy crow
#

all i can say is that the code worked on my machine

autumn dove
#

did you do npm run build

icy crow
#

ik whats wrong

#

i forgot to revert one commit

smoky sorrel
#

pr made 👍

#

hope i didnt break any conditions

icy crow
#
PS C:\Users\user\Desktop\joker-forge\joker-forge> npm run build

> joker-forge@0.0.0 build
> tsc -b && vite build

vite v6.3.5 building for production...
✓ 1966 modules transformed.
dist/index.html                     0.47 kB │ gzip:   0.31 kB
dist/assets/index-Fk9c7dPI.css     66.20 kB │ gzip:  11.15 kB
dist/assets/index-D7bsGDK9.js   1,373.71 kB │ gzip: 345.44 kB

(!) Some chunks are larger than 500 kB after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
✓ built in 18.24s
PS C:\Users\user\Desktop\joker-forge\joker-forge>
icy crow
autumn dove
#

pretty cool

sour spear
#

when force game over effect 🧌

icy crow
#

that's super easy actually (at least in theory)

#

i'll do it tomorrow if i won't forget

sour spear
#

also why does when this joker is sold, copy a joker dont work on full slots

icy crow
#

I honestly have no idea

#

Probably some quirk of the code gen

sour spear
#

also the same trigger (when this joker is sold) with create joker doesnt also work on full slots

#

thats why mitosis, anti-matter, and legacy very smiley dont work on full slots

#

maybe it has to do with a condition that checks if joker slots is full in effects in the code gen

crimson tulip
#

quick question, i want a joker that when a flush is played it uses straight's hand stats, how to i do that?

woeful bough
sour spear
#

huh

#

weird

sour spear
#

this is the 100th joker i made

woeful bough
#

copying an ability

torpid lava
sour spear
#

really?

#

aww shucks

#

is the probability variable on descriptions fixed or its just stuck on nil

woeful bough
sour spear
#

cool

woeful bough
#

the update (should) be out on balatro mod manager! im tired!

silent rock
#

so not advisable

sour spear
lilac yacht
#

when you lowkey evil 😈

woeful bough
sour spear
#

krusty krab fine print moment

lilac yacht
#

could you even read that

woeful bough
#

or it gets smaller every line at the bottom

#

That'd be funny

lilac yacht
#

well no thats pretty dang small and i want people to be able to catch the cheat if they look hard enough instead of "ooh wheel!"

sour spear
#

why is the variables between probability and the normal vars switched 😭

lilac yacht
#

mmyeah, still feels a bit too small

woeful bough
#

I can read it

lilac yacht
#

willing to comprimise 0.4

woeful bough
lilac yacht
#

handshake gif

sour spear
#

did someone change the code in creating spritesheet

#

i have to reopen the jokers to fix the sprite

verbal goblet
#

I have some funny ideas

sour spear
#

should i release the update rn

smoky sorrel
#

now this is possible

woeful bough
#

*or x1 because that's literally the same thing

verbal goblet
woeful bough
verbal goblet
#

the wording confused me but i got ya there

crude trail
sour spear
verbal goblet
#

How do you change the text size?

sour spear
verbal goblet
#

Ah

#

Thanks

sour spear
#

the four horsemen

crude trail
ashen prairie
sour spear
#

yoooo

ashen prairie
sour spear
#

very epic sprite

ashen prairie
sour spear
#

ill make it High res Wee smiley

#

ill still keep the original wee smiley

ashen prairie
#

HD Wee Smiley

#

The HD Wee
(4K Piss)

crude trail
#

omega smiley

autumn dove
#

sorry

#

for the variables bug you encountered if you have it

#

thinking it might have been my fault that who is to say though

sour spear
autumn dove
#

thanks

lapis mauve
#

wait are .jokerforge files new

autumn dove
#

its just a renamed .json file

crude trail
lapis mauve
#

actually

#

not what i think about it

#

i'm surprised you can't add a custom mod icon yet

crude trail
#

(my icon)

sour spear
#

but howww do you dooo that

#

IDK HOW

crude trail
#

SMODS.Atlas({ key = "modicon", path = "modicon.png", px = 32, py = 32, })

#

Add this to main.lua and in the x1 folder a 32x32 image and in x2 a 64x64 image.

#

above all the code

sour spear
#

it looks easy to implement

#

why havent they implemented this yet?

verbal goblet
sour spear
wild pier
iron tiger
#

Is the "create joker" plugin broken?

#

i cant make it work

icy crow
#

In what way broken?

iron tiger
#

it gives this error

#

the idea was to create a better version of a joker by selling the joker and one additional joker

wild pier
#

idk ¯_(ツ)_/¯

icy crow
#

Are you sure the key you entered is correct?

wild pier
#

made my icon will put in later

crude trail
#

breb

wild pier
#

breb

#

bread couldn’t fit

#

i put breb

iron tiger
#

it is, same prefix and everything

#

block looks like this

wild pier
sour spear
#

j_

wild pier
#

guys new joker added to balatro!

#

j_

iron tiger
#

i'll try again

sour spear
alpine elk
#

Is there a way to edit a joker’s sprite from this screen?

wild pier
wild pier
#

and then main image

#

boom

alpine elk
#

Can’t

wild pier
#

bugs on mobile devices

#

happens to me

iron tiger
#

it works

alpine elk
#

The save changes button does nothing

autumn dove
#

damn we really gotta add mobile support

iron tiger
#

thank you kind stranger

wild pier
autumn dove
#

quick question though does your web browser have a desktop mode?

icy crow
#

Smh

#

If it is then it looks weird as an outline

alpine elk
wild pier
wild pier
#

i used joker font

alpine elk
icy crow
#

Another angry tapping? (I didn't watch yet)

wild pier
#

works fine for me

#

i’m on a mobile too

alpine elk
#

Strange

#

I'll try to restart

wild pier
#

that usually works for me too

#

but i save my json first

autumn dove
alpine elk
#

Found out already was on desktop mode

wild pier
#

nope theres only translate to german

#

and change web size

#

WAIT REALLY?

#

OH SHIT

#

im not even german

#

why the fuck is german there

alpine elk
#

Restart didn't work

icy crow
autumn dove
#

hidden containers might be overlapping over the save changes button

#

ill see if i can fix it

wild pier
#

click the Aa and then change the joker forge oage size to 50

autumn dove
#

this is a good idea too

alpine elk
#

Didn't sork

#

*work

autumn dove
#

whats your ipad model

wild pier
#

thats strange i use the same method no problems to me

#

and no that google search isnt up purpose

#

its so i can get this image

#

for this

autumn dove
wild pier
#

yeah

#

im on safari

#

its my main web browser

sour spear
#

j_

wild pier
sour spear
#

30 new jokers...
should i update the mod

lapis mauve
#

probably

alpine elk
wild pier
#

pro?

#

mini?

#

air?

alpine elk
#

It just says "iPad (7th generation)"

autumn dove
#

does it really not save the image even if you tap outside of the modal

alpine elk
#

Wdym

autumn dove
#

the space on the right behind the preview on desktop i can just click it and it exits out of the modal, and there is auto saving

alpine elk
#

Wat

autumn dove
#

try changing the image, and then tap the blurry space to the right of the edit joker info window

alpine elk
autumn dove
#

does it not work?

alpine elk
#

No

#

It does not work

autumn dove
#

that is so strange

#

what image are you trying to upload?

alpine elk
autumn dove
#

i think i might know what the problem is

wild pier
#

i think too big

#

yeah

autumn dove
#

the image you just sent me is 1704x2280 but the site only accepts 71x95 or 142x190

#

normally you would get an alert telling you this but you might not be getting that

wild pier
#

use this template for the size

autumn dove
#

try this image its 142x190

alpine elk
#

Wrong image

#

Meant to send dis

autumn dove
#

okay yeah looking back anyway it worked in the video you snet me

wild pier
#

is it 71x95

alpine elk
#

Yes

autumn dove
#

very strange bug i will see what i can do

alpine elk
#

It’s not the image I think

#

Anything in the editor I do isn’t saved

#

Tho I guess I could just add the image through the mod files

crude trail
wild pier
#

made my version of blob for my mod

#

i love making fake collaborations

#

now to do a fake collab with flushtro

crude trail
autumn dove
wild pier
crude trail
wild pier
#

im going to make it have more sold phases

#

making it also have mult and chips and ofc the joker slots but the things slowly gets worse every time its sold

icy crow
#

im not sure if i should release the force game over effect

#

sounds evil

wild pier
icy crow
#

it's in testing

wild pier
#

wait what happens if force game over and undo game over

icy crow
#

i tested like 4 out of this many triggers

icy crow
wild pier
#

idk how it workd

icy crow
wild pier
icy crow
wild pier
#

LMAOO

icy crow
#

back to the drawing board

wild pier
crude trail
crude trail
#

melted blob

wild pier
#

3rd phase

icy crow
#

ok i found another way of triggering game over but this one ignores mr bones

wild pier
#

4th phase of sold

#

last phase if sold

crude trail
#

bob.exe

alpine elk
autumn dove
#

shit

#

okay

wild pier
# crude trail bob.exe

when boss is defeated and you still have them in your inventory it goes back to the previous phase

earnest wraith
#

is the site down rn? it doesn't load for me

oblique sail
#

no

wild pier
#

might make it every boss defeated

alpine elk
autumn dove
alpine elk
#

Still nope

autumn dove
#

damn tough nut to crack

icy crow
#

i can't get it to work the other way

icy crow
alpine elk
#

You know what I’ll just change the files

#

Wait wtf

#

The add joker button doesn’t work

autumn dove
#

i know on refresh it does take a couple clicks or a few seconds for it to load im not sure why but if its straight up not working ill revert the changes right now

#

also, you can try using a different web browser like firefox to see if that works

#

but i dont know if its an issue with safari, or if its a container thing

#

i reversed the changes for now

alpine elk
icy crow
#

i tried

#

unless i have to update it somehow

wild pier
iron tiger
#

is there a "when blind is defeated by first hand" variable?

heady frost
#

hwy guys im awake

#

whats been changed

#

can someone give me a run down

icy crow
#

good morning

wild pier
icy crow
#

can't even say good morning smh

icy crow
iron tiger
still mirage
#

my game keeps crashing when i try to activate an effect which is tied to a probability? am i doing something wrong?

heady frost
#

checking the commits, you guys have been balling

heady frost
icy crow
#

can you close the issues mentioned in this pr ?

heady frost
icy crow
#

the extension change from json to jokerforge is so helpful when asking for that file

heady frost
#

yeah thats the main reason i wanted it lol

#

cos its still formatted like a json lol

icy crow
#

im working on issue 230 rn

still mirage
heady frost
#

i think

wild pier
#

any idea on what slop should do?

heady frost
#

wait

#

half of this probability is using the old way and half is using the new way

twin sonnet
still mirage
still mirage
heady frost
#

there was a big rework on probability last night

still mirage
#

ohhh ok makes sense, thank you so much lmao, is there anything i can do to fix it myself or should i wait for a fix?

icy crow
#

did i forget something 😰

heady frost
#
SMODS.Joker{ --High Joker
    name = "High Joker",
    key = "highjoker",
    config = {
        extra = {
            expMult = 1,
            odds = 2
        }
    },
    loc_txt = {
        ['name'] = 'High Joker',
        ['text'] = {
            [1] = 'If {C:orange}played{} poker hand is {C:attention}High Card{}',
            [2] = '{C:green}#2# in #3#{} chance to gain {X:red,C:white}^0.05{} Mult when scored',
            [3] = '{C:inactive}(Currently {C:red}^#1#{} {C:inactive}Mult){}{}'
        }
    },
    pos = {
        x = 0,
        y = 0
    },
    cost = 8,
    rarity = 3,
    blueprint_compat = true,
    eternal_compat = true,
    unlocked = true,
    discovered = true,
    atlas = 'CustomJokers',

    loc_vars = function(self, info_queue, card)
        return {vars = {G.GAME.probabilities.normal, card.ability.extra.odds, card.ability.extra.expMult}}
    end,

    calculate = function(self, card, context)
        if context.cardarea == G.jokers and context.joker_main then
            if context.scoring_name == "High Card" then
                if SMODS.pseudorandom_probability(card, 'group_0_0a9f734b', 1, card.ability.extra.odds, 'group_0_0a9f734b') then
                      card.ability.extra.expMult = (card.ability.extra.expMult) + 0.05
                        card_eval_status_text(context.blueprint_card or card, 'extra', nil, nil, nil, {message = ":3", colour = G.C.GREEN})
                  end
            else
                return {
                    e_mult = card.ability.extra.expMult
                }
            end
        end
    end
}
sour spear
#

when can we change mod icons

still mirage
wild pier
sour spear
wild pier
# sour spear 😢

also toxic can you give me a random smiley joker i need it for another fake collab

#

like blob

heady frost
wild pier
wild pier
icy crow
#

OHHH i forgot to update the loc vars

heady frost
#

because i sorted it all out with the new probability system

#

loc vars never needed updating and the random chance group stuff never needed updating

#

i dont believe

icy crow
#

like this didn't need updating?

#

i love stack overflows

heady frost
#

like you made the branch

#

before i updated it to new probability for jokers

#

maybe

icy crow
heady frost
#

that mightve been after then

#

why did the loc vars stuff need updating and the random chance group stuff need updating

#

i wasnt able to read the code before merge and i think taylor just merged it lol

icy crow
heady frost
#

why was it stack overflowing

icy crow
#

because pseudorandom_probability called the context

#

and the context called the pseudorandom_probability

heady frost
#

oh i see

icy crow
#

and loc_vars i didn't touch

#

and im not sure if you did this to them

heady frost
#

oh thats strange then

heady frost
icy crow
heady frost
#

then idk what happened lol

#

i will just go back to the commit that i ported the probability over and copy paste that version of the generatelocvars function in lol

#

because the loc vars generate function being wrong is causing both of the issues i believe

icy crow
#

all i changed in loc_vars is issue #216

heady frost
#

yeah i think you were chill then i think its just loc vars stuff

#

mb lol

icy crow
#

back to updating vanilla reforged

heady frost
icy crow
#

is the add_dollars the only thing?

heady frost
#

hanging chad can be remade without the variable now

#

wait

#

why did you delete all of the card destroyed related stuff from generatecalculatefunction

sour spear
icy crow
#

?

icy crow
heady frost
#

ohhh

icy crow
#

because there's no destroy and retrigger inside that trigger

heady frost
#

yeah

#

i get you

#

mb im just reading through now

#

that makes sense

icy crow
#

i stuck with the idea of custom handling for those effects for flexibility

heady frost
#

yeah thats the better method i think

icy crow
heady frost
#

yeah iu think your code is all good then

#

when did this get broken im so confused lol

still mirage
#

im sorry for asking many question but there is a joker with jokerkey blobthesequel which is created on turn end but it crashes instead??? is it an error on the code end or my end?

icy crow
#

j_modprefix_key

still mirage
heady frost
#

you write j_abbysama_blobthesequel

still mirage
#

OHHH alright thank you my bad

heady frost
#

in your mod metadata, you can see your mod prefix

#

and you can customise it and stuff

icy crow
heady frost
#

so its [modprefix]_[jokerkey]

icy crow
#

j_

#

for joker

wild pier
icy crow
#

c_ for consumable

heady frost
#

and if you wanted to spawn a vanilla joker its just j_[jokerkey]

icy crow
#

wait isn't delayed Gratification just broken?

#

apart from the add_dollars

#

variable reset where

still mirage
icy crow
#

why are you cutting the main error out 😢

#

anyway

#

can i get the jokerforge file?

heady frost
still mirage
icy crow
#

"main" error message is usually the top 2 lines

#

the rest is the function stack iirc

#

helps narrow down where stuff went wrong

heady frost
#

i thought create_card has been replaced by add_card everywhere

still mirage
#

ohh oki

icy crow
heady frost
#

oh i see yeah it was a consumable

icy crow
#

i didn't edit the files with the comment in all caps at the top

still mirage
icy crow
#

wait a sec

heady frost
icy crow
still mirage
#

ohohhh i see alright thank you so much

still mirage
#

yayyyy

heady frost
#

those are NOT becoming placeholders

#

its just stock images haha

icy crow
#

then close the issue 🙏

#

it's just upping the issue count and i want to finally get to sub 50

lapis mauve
#

this one

#

its funny

heady frost
heady frost
icy crow
#

My mail is SPAMMED by GitHub recently

heady frost
#

like 2 commits an hour

icy crow
#

average

heady frost
#

this shit is actually crazy

#

i think i will start adding boosters this weekend

#

i want to add more conditions for consumables first

#

then boosters can come out but i dont think they will take long

#

then its the fun time with enhancements/seals/editions

icy crow
#

is this right for the delayed gratification 😭 ?

#

i genuinely have no idea how to use game vars

heady frost
#

multiplier should be 2

#

starts from can be 0

#

multiplier just means how much it should go up per variable

#

so per discard

icy crow
#

i bet it shows how little i used the system

heady frost
#

and starts from is for jokers that need to start at 1 (xmult jokers)

#

you are the goat for this btw

#

cos i know how tedious it is to fix a bunch of vanilla reforged stuff

icy crow
#

probably less tedious than creating it all one by one

heady frost
#

yeah that took so long haha i remember doing that

icy crow
#

life saver

#

13 left

alpine elk
#

FINALLY(on a laptop tho)

#

Is there a way to make exotic jokers?

icy crow
#

you can make custom rarities

alpine elk
#

I know

#

But like can you make gateway work with it

icy crow
#

if you mean the one from cryptid i don't think so

alpine elk
#

Aww

#

Is it possible to make code cards?

#

If not, why is that one of the placeholders for consumables

icy crow
#

because someone made it and submited it 👀

alpine elk
#

Ok

lapis mauve
#

Me :b

alpine elk
#

Yknow on for example wheel of fortune how next to the description, it shows the description of poly, foil, and holo? Is there a way to do that in jokerforge

heady frost
alpine elk
#

You know what its ok

crude trail
#

Good morning and good afternoon. I just woke up

icy crow
#

good morning

heady frost
#

goodmorning

smoky sorrel
#

goodmorning

crude trail
icy crow
#

guys discover bugs so i have a point in my existence

icy crow
#

i just opened up minecraft 🥺

#

i'll check it out

#

i don't see the error

olive agate
#

weird

#

it crashes for me when i launched the game

icy crow
#

im booting up balatro

#

yeah the error is there

olive agate
#

is there a way to fix it?

icy crow
#

oh wait i see it

#

the return is missing

#

@heady frost smh

#

pushing the fix (hopefully nothing broke)

#

wait it has to be merged

#

you'll either wait 2 min or 2h no in between

#

now we wait for goodmorning to finish his match in Marvel Rivals

hidden oriole
# iron tiger block looks like this

ah yes one thing about hand size that it is permanent i think, like if you set to 2 and then sell or destroy that joker it will keep it at w

iron tiger
#

nuh uh

heady frost
#

what is this fix

#

why does it say please work

#

did u not test it

icy crow
#

i tested it

#

just didn't change the name

heady frost
#

oh ok

#

merged

#

ty

iron tiger
#

people cooks tea now?

#

i thought it was boiled

icy crow
#

eww boiled water

#

cooked is better

heady frost
#

in england we call the meal you eat at 6pm 'tea'

#

kinda like how in china they call it rice

iron tiger
#

so not the literal tea

heady frost
#

well, the translated word for rice