#so we arent flooding the chat?

1 messages · Page 1 of 1 (latest)

ripe idol
#

thread

sudden karma
#

thread moment

ripe idol
#

so where are we rn

sudden karma
#

we are in

#

making the file

#

i have made the file

#

called en-us.lua

ripe idol
#

is it in the folder

sudden karma
#

it is

ripe idol
#

and is that folder in your mod folder

sudden karma
#

yes

ripe idol
#

cool cool

#

ok

sudden karma
#

with a cute little bowtie

ripe idol
#

niceee

#

ok two things

#

ill be explaining things ofc

sudden karma
#

okay thank you

ripe idol
#

but im also gonna link you to how localization works... the ones by the smods people

sudden karma
#

okay awesome

ripe idol
sudden karma
#

im guessing i just copy paste the skeleton

ripe idol
#

no 😭 you dont need ALL of that

sudden karma
#

okay yes

ripe idol
#

rn you just need

sudden karma
#

just funny joker colours

ripe idol
#

so you'll need the descriptions section

#

and in the description section, you'll need Joker

sudden karma
#

this?

ripe idol
#

yeah

#

any part of that you dont get?

sudden karma
#

i get everything

ripe idol
#

ok cool

#

so set up the description for your joker

sudden karma
#

done

ripe idol
#

alright now

#

youre gonna duplicate that

#

but change the id to whatever it is already and add _alt

#

to the end

#

as in the alternate description

sudden karma
#

wait in the discription of the file, I shoudl say just Joker

ripe idol
ripe idol
#

what do you have rn

sudden karma
#

yeah better idea to just send it

#

1sec

ripe idol
#

kay

sudden karma
ripe idol
#

you have "Joker" already

sudden karma
#

okay so for description

#

i put

#

empress_of_light

#

for example

ripe idol
#

take out the first "Joker"

#

leave the Joker = {

sudden karma
#

okay

ripe idol
#

change the id you have there Empress_Of_Light to lowercase and also make it one word

sudden karma
#

okay and change the id on my main file where she is to that as well

#

?

ripe idol
#

yes

#

they need to match

#

but HERE in the loc file it's gonna be slightliy different

sudden karma
#

done

ripe idol
#

add a j_ at the beginning to tell the game it's a joker

#

this is ONLY for the loc file we're not changing main rn

sudden karma
#

j_empressoflight

#

okay

ripe idol
#

good

#

now after the j

#

put your mod's prefix

sudden karma
#

okay

ripe idol
#

and another underscore

sudden karma
#

done

ripe idol
#

how's it look

sudden karma
#

j_terraria_empressoflight

ripe idol
#

the whole thing i mean

sudden karma
#

okay

#
    descriptions = {
        Joker = {
            j_terraria_empressoflight = {
                name = 'Empress of Light',
                text = {
                        'For every card {C:attention}Scored,',
                        'turn into {C:pink}Polychrome{}'
                },
                unlock = {
                    'This is a condition',
                    'for unlocking this card',
                },
            },
        },
    },
}
ripe idol
#

just good practice

sudden karma
#

ah yeah

#

im trying to improve on that so thank you for pointing it out

ripe idol
#

np

ripe idol
#

put three backticks and lua to format this

sudden karma
#

okay

#
--lua code
#

hm okay

ripe idol
#

there ya go

sudden karma
#

i getcha i getcha

#

okay so now we copy paste it

ripe idol
#

right

sudden karma
#

and we put

#

at the end

#

_alt

ripe idol
#

yes

sudden karma
#

okay

ripe idol
#

just making sure you wanted the text to change when you have it versus when you dont?

sudden karma
#

well i wanted to use
name = '{C: <colour>} Empress of Light{}'

#

right

#

my original plan was to do Polychrome

#

but apparently thats hard

#

so now im going for pink maybe?

ripe idol
#

went to go check if they had a pink implemented

#

they do not

sudden karma
#

no pink.

ripe idol
#

so you'll have to HEX it

#

hex value

#

yk

sudden karma
#

mhm

ripe idol
#

also we'll only need the duplicate joker thing if it's changing

sudden karma
#

okay got one

#

wdym by changing

#

just to keep here- f099e1

ripe idol
#

let me send a video

sudden karma
ripe idol
#

oop thats mkv

sudden karma
#

we love mkv!

ripe idol
#

see what i mean?

sudden karma
#

like the name

ripe idol
#

are you trying to do that with the pink? or do you want it always pink

sudden karma
#

have it always be pink lets say

ripe idol
#

ok in THAT case

#

forget the duplicate alt thikng

sudden karma
#

okay!

#

i see what you mean know though

#

but the joker thing

#

its really cool

ripe idol
#

thanks he

#

he

#

had help from the JokerDisplay guy but im glad he gave me the basics

#

OKAY

#

go back to the main

#

Sorry

sudden karma
#

okay

ripe idol
#

local file

sudden karma
#

its okay!

#

yep yep on it

ripe idol
#

what's it look ike

#

like

sudden karma
#
SMODS.Joker{
    key = 'empressoflight',
    loc_txt = {
        name = 'Empress of Light',
        text = {
            'For every card {C:attention}Scored{},',
            'turn into {C:pink}Polychrome{}'
        }
    },
    pos = { x = 1, y = 1 },
    cost = 10,
    rarity = 4,
    blueprint_compat = true,
    eternal_compat = false,
    unlocked = true,
    unlock_card = true,
    discovered = true,
    atlas = 'Jokers',

    calculate = function(self, card, context)
        if context.before then
    
            -- Flip animation + sound
            for i = 1, #context.scoring_hand do
                local percent = 1.15 - (i - 0.999) / (#context.scoring_hand - 0.998) * 0.3
                context.scoring_hand[i]:flip()
                play_sound('card1', percent)
                context.scoring_hand[i]:juice_up(0.3, 0.3)
            end
    
            delay(0.2)
    
            -- Apply Poly enhancement to all non-stone cards
            for i = 1, #context.scoring_hand do
                local this_card = context.scoring_hand[i]
                this_card:set_edition('e_polychrome', nil, true)
            end
    
            delay(0.3)
    
            -- Flip back animation + sound
            for i = 1, #context.scoring_hand do
                local percent = 0.85 + (i - 0.999) / (#context.scoring_hand - 0.998) * 0.3
                context.scoring_hand[i]:flip()
                play_sound('tarot2', percent, 0.6)
                context.scoring_hand[i]:juice_up(0.3, 0.3)
            end
    
            delay(0.5)
        end
    end
}

#

dont mind the middle comment

ripe idol
#

okay now that you have a localization file

sudden karma
#

mhm

ripe idol
#

take out loc text

sudden karma
#

okay

ripe idol
#

its useless now

sudden karma
#

pathetic

#

i spit

ripe idol
#

ptuh

sudden karma
#

done

#

in the trash

ripe idol
#

alright good

#

just wanted to check the key but glad you sent that

sudden karma
#

oh lmao

ripe idol
#

back to the localization file

sudden karma
#

we are so back

ripe idol
#

whats THAT look like

#

(so i dont have to scroll)

sudden karma
#
return {
    descriptions = {
        Joker = {
            j_terraria_empressoflight = {
                name = 'Empress of Light',
                text = {
                        'For every card {C:attention}Scored,',
                        'turn into {C:pink}Polychrome{}'
                },
                unlock = {
                    'This is a condition',
                    'for unlocking this card',
                },
            },
        },
    },
}
ripe idol
#

ok

sudden karma
#

ill get rid of the C:pink

ripe idol
#

and terraria IS your mod's prefix right?

sudden karma
#

ya

ripe idol
#

ok

#

keep C:pink

sudden karma
#

we keep

ripe idol
#

we're gonna use it

sudden karma
#

hell yeah 🦅

ripe idol
#

go to your main file

sudden karma
#

back

ripe idol
#

we're gonna first wanna initialize the local colour

#

yk how to do that?

sudden karma
#
local colour = 'hex code'
```?
ripe idol
#

(if it's one line you dont have to lua it but thanks)

sudden karma
#

okie

ripe idol
#

loc_colour('red')

sudden karma
#

okay

ripe idol
#

yes it has to be red

sudden karma
#

but put my hex

#

it has to be?

ripe idol
#

yes

#

it's to get it to recogniz

#

e

sudden karma
#

okay where do we put that?

#

at the top of the file?

ripe idol
#

yeah

#

since you have your joker in there,,,,,

sudden karma
#

well

#

i didnt know if i should put it in SMODS.Joker

#

or above it all yk

ripe idol
#

oh no very top of the file

#

this is something for your whole mod so

sudden karma
#

done

ripe idol
#

alright

#

very next line youre gonna set up a global ARGS using loc_colours

#

do you know how THAT works

sudden karma
#

i have never done this

ripe idol
#

got it

#

G.ARGS.LOC_COLOURS[]

sudden karma
#

but i remember someoen sending a screenshot

#

of like all the colours

#

and they had it set up

ripe idol
#

i see

ripe idol
#

still top of the file

sudden karma
#

mhmm

#

but red is at the very top

ripe idol
#

dw

#

ok now

#

in the square brackets

sudden karma
#
loc_colour('red') 
loc_colours
G.ARGS.LOC_COLOURS[]
``` not to be stupid
#

but its this?

ripe idol
#

no

#

take out that second line

sudden karma
#

knew something looked wrong

#

okay

#

dead

ripe idol
#

good

#

now in the square brackets

sudden karma
#

mhm

ripe idol
#

put your color id

#

in this case pink

#

BUT

#

put it in single quotes

#

'pink'

sudden karma
#

okay

ripe idol
#

once you do that we're gonna set this whole line equal to something

sudden karma
#

okay im ready

ripe idol
#

see where this is going?

sudden karma
#

yes i think so

ripe idol
#

cool

#

put HEX()

sudden karma
#

= HEX()?

ripe idol
#

yep

sudden karma
#

all lower case and no hashtag right

ripe idol
#

and in DOUBLE quotes put your hexcode

#

all uppercase

#

no hashtag

sudden karma
#

Okay

ripe idol
#

you should have something like this

sudden karma
#

yep

ripe idol
#

cool you're done load it up

sudden karma
#

the game?

ripe idol
#

yes 😭

sudden karma
#

hmm

ripe idol
#

also make sure to save

#

your code first

sudden karma
#

yeah i didnt save en-us

ripe idol
#

uh oh

#

better do that

sudden karma
#

i forgot i was coding another joker

#

he crashed the game bleh

ripe idol
#

comment him out for now

sudden karma
#

okay there is no text

#

or name

ripe idol
ripe idol
sudden karma
#

it might be a key issue

#

on like empress onlt

#

only

ripe idol
#

oh did you screw up your key

sudden karma
#

the key in the main file is
key = 'empress of light'

#

all together

#

^

ripe idol
#

and the key in your local?

sudden karma
#

and then on this
'j_terraria_empressoflight'

ripe idol
#

with spaces?

sudden karma
#

no no

#

sorry that was just me

#

key = 'empressoflight'

ripe idol
#

oh ok

sudden karma
#

its this

ripe idol
#

can i see your metadata file?

sudden karma
#

sorry do you mean my files?

#

like the main.json, lua, etc

ripe idol
#

what's in

#

your metadata file

sudden karma
#

i dont know that word in english 😭 and translate isnt helping

ripe idol
#

oh no 😭

#

OK SO

#

can i see

sudden karma
#

this?

ripe idol
#

THE JSON

sudden karma
#

the json

#

okay

ripe idol
#

send me whats in that

sudden karma
#
{
    "id": "TerrariaxBalatro",
    "name": "Terraria",
    "display_name": "Terraria",
    "author": ["Misenrol, Megark"],
    "description": "Something suspicious is brewing...",
    "prefix": "terraria",
    "main_file": "main.lua",
    "priority": 0,
    "badge_colour": "1390A1",
    "badge_text_colour": "FCFCFC",
    "version": "1.0.0",
    "dependencies": [
        "Steamodded (1.0.0 beta (0312b))",
        "Lovely (0.7)"
    ]
}
ripe idol
#

can i see your folder setup?

sudden karma
#

in localization

ripe idol
#

ok ok cool

#

it should be working

#

did you change the json name to metadata?

sudden karma
#

nope

#

ill change it now

#

it still doesnt work

#

hmm

ripe idol
#

hmmm

#

and did the description work fine before all this?

sudden karma
#

yep

#

well like before localization

ripe idol
#

so then it's something we did now

sudden karma
#

and all that

#

so this was wayyy back

ripe idol
#

can you ss the localization fi-is your steamodded up to date

sudden karma
#

steammodded is up to date

#

is it because theres no discription?

ripe idol
#

oh duh

#

wrong quotation marks

sudden karma
#

hm?

ripe idol
#

use " instead of ' 😭

sudden karma
#

omdsss

#

IT still doesnt

ripe idol
#

what

sudden karma
ripe idol
#

oh also move that indent inward

#

too far out

sudden karma
#

wait

#

i think i got it

#

i see a problem

ripe idol
#

looking

#

whatd i miss

sudden karma
#

in the main file

#

empressoflight was '' and not ""

#

ah

#

made no difference

ripe idol
#

in the main file

#

its supposed to be

#

single quotes

#

thats a key

sudden karma
#

mhm it didnt make a diff anyway

ripe idol
#

hm

#

you fix the indent?

sudden karma
#

yes

ripe idol
#

{} after attention

sudden karma
#

hmhm

#

i cant see the issue

#

are the folders correct?

#

localization, etc

#

maybe change it to default?

ripe idol
#

try taking out the unlock text

sudden karma
#

i did

#

lets try default

#

no :/

#

ill send all the ss and if you cant spot naything lets just call it

ripe idol
#

alr

sudden karma
ripe idol
#

what is

#

unlock_card

sudden karma
#

nothing i got rid of it

#

it was probably like auto pilot and messed up

ripe idol
#

oh

#

hey uh

#

change the quotation marks in the joker name

sudden karma
#

to single?

ripe idol
#

yes

sudden karma
#

and text?

ripe idol
#

text is fine

sudden karma
#

nope

#

it works

#

i just got rid of the localization and did it again

#

it works?

ripe idol
#

oh 😭

#

guess you formatted soemthing wrong

#

in that case hooray!

#

and you're welcome!

sudden karma
#

thank you so much!

ripe idol
#

ofc!

sudden karma
#

can i please credit oyu in the mod? as a special thanks

ripe idol
#

feel free!

sudden karma
#

what username?

ripe idol
#

can you put tomatose?

sudden karma
#

ofc!

ripe idol
#

do you need a picture

sudden karma
#

nope

ripe idol
#

kay

sudden karma
#

thank you

#

again

#

its so silly

#

but like my brain wanted a pink polychrome

ripe idol
#

itll take more work but im sure someone in modding dev knows how the polychrome works

sudden karma
#

mhmhm!

#

still youve been amazing and thank you 100x

ripe idol
#

its no biggie!

#

im off to eat now, but let me know if something happens!

ripe idol
#

literally greedy joker but it changes into another joker after a hand is scored

#

AND the hand must contain diamonds ofc

sudden karma
#

Okay

ripe idol
#

sending file

sudden karma
#

And you want it to flip

#

Change

#

And flip

ripe idol
#

that part works already

sudden karma
#

So what doesn’t work exactly

ripe idol
#

the problem is i could only get it to work on the right time

#

by putting it

#

in the for loop 😭

sudden karma
ripe idol
#

it changes for each diamond in the played hand

#

of course it changes to the same card

#

so it really only changes once

#

but it flips that same amount of times

#

so it looks silly

sudden karma
#

Peak coding

ripe idol
#

oh NOOOOO 😭

sudden karma
#

We only want it to flip once

ripe idol
#

if i can get it to trigger at the right timing and condition

#

without using the for loop

sudden karma
#

I’m just brainstorming here

#

So let’s say we play a flush of diamonds

#

It flips 5 times?

ripe idol
#

it flips 5 times

#

yes

#

because it transforms for each diamond in hand

#

PLAYED

sudden karma
#

Okay so we want it to look at only one card

ripe idol
#

one scoring card

#

but yes

sudden karma
#

Yeah yeah

ripe idol
#

cause what if i play a two pair and then just any diamond

sudden karma
#

Could we do a bolean?

ripe idol
#

maybe

sudden karma
#

Hmmm let me see

ripe idol
#

it's in a for loop so i can check if it's the suit

#

if i can do that in context.after without the for loop

#

then im set

#

reiterating that the animation itself has zero problems. works as intended

sudden karma
#

I’m trying to think here

ripe idol
#

youre good

sudden karma
#

This code is so bugged out by the way (mine)

#

For some reason it doesn’t work with high card

ripe idol
#

uh oh

sudden karma
#

Like if you do

ripe idol
#

the one im using is N's

sudden karma
#

Only activate with high card

ripe idol
#

(the joker display guy)

ripe idol
sudden karma
#

It’s really weird yeah

#

But when I put pair or anything else it’s fine

#

I think we do a suit_found = false

#

If found = true

#

Let me try doing it on NOTES

#

Omg it’s too large

#

Uhhhhh

#
    calculate = function(self, card, context)
        if context.individual and context.cardarea == G.play then
            if context.other_card:is_suit(card.ability.extra.suit) then        
                return {
                    mult = card.ability.extra.mult,
                    card = card
                } 
            end
        end

        if context.after and context.cardarea == G.jokers then
            local suitFound = false
            for _, v in ipairs(context.scoring_hand) do
                if v:is_suit(card.ability.extra.suit) then
                    suitFound = true
                    break
                end
            end

            if suitFound then
                G.E_MANAGER:add_event(Event({
                    trigger = "after",
                    delay = 0.15,
                    func = function()
                        card:flip()
                        return true
                    end,
                }))

                G.E_MANAGER:add_event(Event({
                    trigger = "after",
                    delay = 0.15,
                    func = function()
                        card:set_ability(G.P_CENTERS["j_hpfx_ijiraq"])
                        play_sound("card1")
                        card:juice_up(0.3, 0.3)
                        return true
                    end,
                }))

                G.E_MANAGER:add_event(Event({
                    trigger = "after",
                    delay = 0.15,
                    func = function()
                        card:flip()
                        return true
                    end,
                }))
            end
        end
    end

``` @ripe idol try this
#

Hopefully that looks better

#

On your end

#

Because on my end it’s fucked

ripe idol
#

i will check

sudden karma
#

If not I can send a file

ripe idol
#

oh for a second i thought you changed the calculate

sudden karma
#

Here’s the file

#

Does it work is the question….

ripe idol
#

here's hopin

sudden karma
#

. . .

ripe idol
#

YEAHHHH

sudden karma
#

LETS FUCKING GO

#

NOTES APP

#

GOATED

ripe idol
#

NOTES APP GOATED

sudden karma
#

OMG IM SO SUPRISED

ripe idol
#

now it’s my turn to credit YOU

thank you for the help 🙏

sudden karma
#

AHAHAHA

#

SORRY IM SPEECHLESS WITH MYSELF

ripe idol
#

how should you be called

sudden karma
#

apple note apps at 3am

#

misenrol

ripe idol
#

done

sudden karma
#

Glad I can bring back the favour

ripe idol
#

i don’t have a credits thing setup yet (as you could probably guess)

sudden karma
#

I am suprised you don’t

ripe idol
#

so rn ive just been commenting to remind myself lmfaoooo

sudden karma
#

Your stuff is so organised

ripe idol
#

trying to finish the content first

sudden karma
#

OH BUT WAIT TILL TOMORROW

#

my new terraria file

#

EVERYTHING FORMATED

#

EVERYTHING CONSISTANT

ripe idol
#

HURRAHHHGGG

sudden karma
#

did it take 3 hours.

#

mayhaps

ripe idol
#

but hey

#

so did my joker

sudden karma
#

I want to use like more complicated mechanics

#

And functions

#

Like I saw someone make a plasma joker

#

I want it

ripe idol
#

ok how’s this

#

for now i mean

sudden karma
#

That’s so funny omg

#

My notes app now have:
shopping list
random thoughts
venting
a random joker

ripe idol
#

it do be like that

sudden karma
#

cinema

ripe idol
sudden karma
#

I should go to sleep now

ripe idol
#

YES

#

GOOD NIGHT