Balatro

Balatro

View Stats:
Balatro Ground Hog's Day
Is it me or does it feel like the game sometime gets on a roll where it's stuck in pair mode? Not a big deal in later antes but when you're drawing for flushes and straights in the first few rounds and you get nothing but one pair after another, it's just seems weird. It could be my imagination but some nights it feels like the draw just has it in for me - even on the white stake.
< >
Showing 1-15 of 15 comments
I mean one pair is by far the most likely non high card hand to draw in a standard deck of cards and a high pair is very likely to win any given game of regular poker. So is not every single game technically "in pair mode" for the first ante or two before you have any significant amount of deck fixing going?
Flushes and straights get harder in the higher levels because they normally don't scale up as fast as the blinds. So you aren't as likely to draw into flushes and straights if you aren't discarding as much, and simple math probabilities will tell you that it's easier to make a 4-card scoring hand than a 5-card scoring hand.

That being said, people will launch into Balatro's form of RNG: long, involved, semi-coherent bias-confirmed shaggy dog tails exactly like this one:

I've noticed that most of the time, not all the time, but reliably enough, the exact cards that I buy in the packs at the shop after the blind will appear in the next hand dealt.
If i have in the first stake two pairs at the beginning of the blind or after one discard i try to get a Full House.
Apokalyptic Feb 26 @ 11:07pm 
Originally posted by Twelvefield:
Flushes and straights get harder in the higher levels because they normally don't scale up as fast as the blinds. So you aren't as likely to draw into flushes and straights if you aren't discarding as much, and simple math probabilities will tell you that it's easier to make a 4-card scoring hand than a 5-card scoring hand.

That being said, people will launch into Balatro's form of RNG: long, involved, semi-coherent bias-confirmed shaggy dog tails exactly like this one:

I've noticed that most of the time, not all the time, but reliably enough, the exact cards that I buy in the packs at the shop after the blind will appear in the next hand dealt.

Yeah, the shuffling definitely isn't random, I've noticed what you mentioned as well.

You can usually tell by the 2nd or 3rd Ante if you're on a famine seed or one where you get fed useful pieces to progress a build on each consecutive shop.
Originally posted by Apokalyptic:
Originally posted by Twelvefield:
Flushes and straights get harder in the higher levels because they normally don't scale up as fast as the blinds. So you aren't as likely to draw into flushes and straights if you aren't discarding as much, and simple math probabilities will tell you that it's easier to make a 4-card scoring hand than a 5-card scoring hand.

That being said, people will launch into Balatro's form of RNG: long, involved, semi-coherent bias-confirmed shaggy dog tails exactly like this one:

I've noticed that most of the time, not all the time, but reliably enough, the exact cards that I buy in the packs at the shop after the blind will appear in the next hand dealt.

Yeah, the shuffling definitely isn't random, I've noticed what you mentioned as well.

You can usually tell by the 2nd or 3rd Ante if you're on a famine seed or one where you get fed useful pieces to progress a build on each consecutive shop.
Shuffling is truly random. Don't make me post the games code again.
Originally posted by Apokalyptic:
You can usually tell by the 2nd or 3rd Ante if you're on a famine seed or one where you get fed useful pieces to progress a build on each consecutive shop.
Define "useful." Every joker is good for something. If you're trying to force the same build every run, sure, some jokers are going to be useless. But that's not how you win. You adapt and make the your build relevant to the jokers you're given.
Originally posted by w0rM.9™:
It could be my imagination but some nights it feels like the draw just has it in for me - even on the white stake.

I could be your imagination.

Every seed on White Stake will feel like child's play once you've beaten all challenges and all decks on Gold Stake. I promise.
Originally posted by RazzberryMocha:
Originally posted by Apokalyptic:

Yeah, the shuffling definitely isn't random, I've noticed what you mentioned as well.

You can usually tell by the 2nd or 3rd Ante if you're on a famine seed or one where you get fed useful pieces to progress a build on each consecutive shop.
Shuffling is truly random. Don't make me post the games code again.
Oh, you've seen it in the code? Proves what I know then. Oh well.
Originally posted by snakeskip:
Originally posted by w0rM.9™:
It could be my imagination but some nights it feels like the draw just has it in for me - even on the white stake.

I could be your imagination.

Every seed on White Stake will feel like child's play once you've beaten all challenges and all decks on Gold Stake. I promise.
I 100% believe you.
Originally posted by w0rM.9™:
Originally posted by RazzberryMocha:
Shuffling is truly random. Don't make me post the games code again.
Oh, you've seen it in the code? Proves what I know then. Oh well.
This is the .draw_from_deck_to_hand function. It is what is called whenever you select a blind, draw cards after playing a hand, open packs where your cards are present, etc.

If you want to confirm you can, starting from the main page of Balatro in your Steam library, select browse local files -> right click Balatro -> show more options -> 7-zip -> open archive -> click the functions folder -> open stateevents.lua -> see this exact code on lines 355-377. I would recommend opening with a code editing software like Sublime or Visual Studio to make it easier to visualize.

G.FUNCS.draw_from_deck_to_hand = function(e)
if not (G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK) and
G.hand.config.card_limit <= 0 and #G.hand.cards == 0 then
G.STATE = G.STATES.GAME_OVER; G.STATE_COMPLETE = false
return true
end

local hand_space = e or math.min(#G.deck.cards, G.hand.config.card_limit - #G.hand.cards)
if G.GAME.blind.name == 'The Serpent' and
not G.GAME.blind.disabled and
(G.GAME.current_round.hands_played > 0 or
G.GAME.current_round.discards_used > 0) then
hand_space = math.min(#G.deck.cards, 3)
end
delay(0.3)
for i=1, hand_space do --draw cards from deckL
if G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK then
draw_card(G.deck,G.hand, i*100/hand_space,'up', true)
else
draw_card(G.deck,G.hand, i*100/hand_space,'up', true)
end
end
end

Can you point out where the game "rigs the draws against your favor?" Or maybe the reason why you aren't drawing flushes/straights is because, shocker, they're rarer poker hands.
Last edited by RazzberryMocha; Feb 27 @ 6:33pm
Originally posted by RazzberryMocha:
Originally posted by w0rM.9™:
Oh, you've seen it in the code? Proves what I know then. Oh well.
This is the .draw_from_deck_to_hand function. It is what is called whenever you select a blind, draw cards after playing a hand, open packs where your cards are present, etc.

If you want to confirm you can, starting from the main page of Balatro in your Steam library, select browse local files -> right click Balatro -> show more options -> 7-zip -> open archive -> click the functions folder -> open stateevents.lua -> see this exact code on lines 355-377. I would recommend opening with a code editing software like Sublime or Visual Studio to make it easier to visualize.

G.FUNCS.draw_from_deck_to_hand = function(e)
if not (G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK) and
G.hand.config.card_limit <= 0 and #G.hand.cards == 0 then
G.STATE = G.STATES.GAME_OVER; G.STATE_COMPLETE = false
return true
end

local hand_space = e or math.min(#G.deck.cards, G.hand.config.card_limit - #G.hand.cards)
if G.GAME.blind.name == 'The Serpent' and
not G.GAME.blind.disabled and
(G.GAME.current_round.hands_played > 0 or
G.GAME.current_round.discards_used > 0) then
hand_space = math.min(#G.deck.cards, 3)
end
delay(0.3)
for i=1, hand_space do --draw cards from deckL
if G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK then
draw_card(G.deck,G.hand, i*100/hand_space,'up', true)
else
draw_card(G.deck,G.hand, i*100/hand_space,'up', true)
end
end
end

Can you point out where the game "rigs the draws against your favor?" Or maybe the reason why you aren't drawing flushes/straights is because, shocker, they're rarer poker hands.
I think you misunderstood what I said in my original post. What I'm saying is that it seemed (clearly I'm wrong) that the game was throwing pairs at me over and over even when I had five draws to fill out my hand. For example, I'd keep five diamonds, and draw, draw, draw, draw, draw and not a single diamond. Just pairs of matching cards - which seems far more unlikely than drawing one diamond out of 20 total cards draws. Does that make sense? I'm probably not explaining it well.

I totally believe what you're saying. If it's a random draw in the code there's no disputing that. It was just dumb luck or poor strategy on my part.
Originally posted by w0rM.9™:
Originally posted by RazzberryMocha:
This is the .draw_from_deck_to_hand function. It is what is called whenever you select a blind, draw cards after playing a hand, open packs where your cards are present, etc.

If you want to confirm you can, starting from the main page of Balatro in your Steam library, select browse local files -> right click Balatro -> show more options -> 7-zip -> open archive -> click the functions folder -> open stateevents.lua -> see this exact code on lines 355-377. I would recommend opening with a code editing software like Sublime or Visual Studio to make it easier to visualize.

G.FUNCS.draw_from_deck_to_hand = function(e)
if not (G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK) and
G.hand.config.card_limit <= 0 and #G.hand.cards == 0 then
G.STATE = G.STATES.GAME_OVER; G.STATE_COMPLETE = false
return true
end

local hand_space = e or math.min(#G.deck.cards, G.hand.config.card_limit - #G.hand.cards)
if G.GAME.blind.name == 'The Serpent' and
not G.GAME.blind.disabled and
(G.GAME.current_round.hands_played > 0 or
G.GAME.current_round.discards_used > 0) then
hand_space = math.min(#G.deck.cards, 3)
end
delay(0.3)
for i=1, hand_space do --draw cards from deckL
if G.STATE == G.STATES.TAROT_PACK or G.STATE == G.STATES.SPECTRAL_PACK then
draw_card(G.deck,G.hand, i*100/hand_space,'up', true)
else
draw_card(G.deck,G.hand, i*100/hand_space,'up', true)
end
end
end

Can you point out where the game "rigs the draws against your favor?" Or maybe the reason why you aren't drawing flushes/straights is because, shocker, they're rarer poker hands.
I think you misunderstood what I said in my original post. What I'm saying is that it seemed (clearly I'm wrong) that the game was throwing pairs at me over and over even when I had five draws to fill out my hand. For example, I'd keep five diamonds, and draw, draw, draw, draw, draw and not a single diamond. Just pairs of matching cards - which seems far more unlikely than drawing one diamond out of 20 total cards draws. Does that make sense? I'm probably not explaining it well.

I totally believe what you're saying. If it's a random draw in the code there's no disputing that. It was just dumb luck or poor strategy on my part.
I see now. Misinterpretation is pretty easy when communicating solely through text (also doesn't help that these forums are filled with people who will challenge you over saying wheel is 25%, so the expectation with discussions over this kind of topic are filled with those who argue/disagree over a proven fact). But also, I wouldn't be surprised that the example you're describing is actually statistically likely, as flushes (even just trying to find that last card to complete it) mathematically are harder to get than you'd think considering that you've already drawn multiple of the same suit and that pairs are incredibly likely.
Last edited by RazzberryMocha; Feb 27 @ 8:16pm
Originally posted by CMDR Shven:
Originally posted by Apokalyptic:
You can usually tell by the 2nd or 3rd Ante if you're on a famine seed or one where you get fed useful pieces to progress a build on each consecutive shop.
Define "useful." Every joker is good for something. If you're trying to force the same build every run, sure, some jokers are going to be useless. But that's not how you win. You adapt and make the your build relevant to the jokers you're given.
Credit Card wants to know your location. It's actively detrimental unless you're Green Deck. You can turn that detriment into a benefit if you have a specific rare joker, but going into debt is still a trap just like real life credit cards.
Originally posted by HeraldOfOpera:
Originally posted by CMDR Shven:
Define "useful." Every joker is good for something. If you're trying to force the same build every run, sure, some jokers are going to be useless. But that's not how you win. You adapt and make the your build relevant to the jokers you're given.
Credit Card wants to know your location. It's actively detrimental unless you're Green Deck. You can turn that detriment into a benefit if you have a specific rare joker, but going into debt is still a trap just like real life credit cards.
Credit card has no opportunity cost as it has a cost and sell value of $1. It doesn't encourage you to go into debt, but rather allows the option to. The extra $20 of spending is nice on higher stakes to allow you more breathing room if you can't keep up with the blind scaling.
Originally posted by HeraldOfOpera:
Originally posted by CMDR Shven:
Define "useful." Every joker is good for something. If you're trying to force the same build every run, sure, some jokers are going to be useless. But that's not how you win. You adapt and make the your build relevant to the jokers you're given.
Credit Card wants to know your location. It's actively detrimental unless you're Green Deck. You can turn that detriment into a benefit if you have a specific rare joker, but going into debt is still a trap just like real life credit cards.
Like Razzberry said, no opportunity cost on credit card. It also can be purchased and immediately re-sold to increase Campfire at no cost. There are also plenty of situations where you can go -$20 to buy multiple powerful pieces and recoup it immediately with the right econ jokers. Yes, more often than not going negative money will result in a loss and yes, credit card is one of the weaker jokers, but it's far from useless.
< >
Showing 1-15 of 15 comments
Per page: 1530 50

Date Posted: Feb 26 @ 7:43pm
Posts: 15