Video Poker Video Poker Articles Online Casinos Online Gambling Video Poker Games Tools Video Poker Strategies

Jacks or Better (Grand Virtual Progressive)

Game Info Paytable Options Hand Analyzer Paytable Analyzer Simulator Strategy Guide Training Programming

This game is the progressive jackpot version of Jacks or Better which is available at online casinos that use Grand Virtual software. To win the jackpot you have to be dealt a Sequential Royal Flush in Spades (both directions count). The strategy is the same regardless of the amount of the jackpot, because there is no strategy involved in the deal portion of a hand.

The odds of winning the jackpot are 1 in 155,937,600. By comparison, the odds of winning the Powerball are 1 in 146,107,962. The base return of the game when the jackpot resets at 25,000 coins is 98.3954%. Every 5,000 coins adds 0.000641% to the long-term return of the game. The break-even point is when the jackpot reaches 12,536,039 coins (2,507,207.8 times the bet). I would say that it is extremely difficult to win the jackpot, which means it would probably grow for a long time before being won. Yet, I doubt the jackpot would ever reach the break-even point before being won. Personally I would recommend avoiding this game unless you feel extremely lucky. If you want to play Jacks or Better at a Grand Virtual casino, you should play their regular version which uses the full-pay paytable that returns 99.5439%.

Click here for help Opens in a new window

Currency Options


Currency: Coin Size: Coins per Hand:

Taxes & Tips


  Threshold   Withholding Rate
  Threshold   Withholding Rate
  Threshold   Withholding Rate
  Threshold   Amount
  Threshold   Rate

Click here for help Opens in a new window

Number of hands to simulate:  

Click here for help Opens in a new window



Don't forget that you can type in your own paytable below.

Hand Coins Paid
Two-Way Sequential Spade Royal Flush on the Deal
Royal Flush
Straight Flush
Four of a Kind
Full House
Flush
Straight
Three of a Kind
Two Pair
Jacks or Better

Deck Simplification


Unique Rank Patterns


Core Hand Type Formula Result
Four of a Kind Combin(13, 1) * Combin(12, 1) 156
Full House Combin(13, 1) * Combin(12, 1) 156
Three of a Kind Combin(13, 1) * Combin(12, 2) 858
Two Pair Combin(13, 2) * Combin(11, 1) 858
One Pair Combin(13, 1) * Combin(12, 3) 2,860
No Pair Combin(13, 5) 1,287

Unique Suit Patterns


Four of a Kind Full House Three of a Kind Two Pair One Pair No Pair
Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count
ABCDA 4 ABCAB 12 ABCAA 12 ABABA 12 ABAAA 12 AAAAA 4
ABCAD 12 ABCAB 24 ABABC 12 ABAAB 12 AAAAB 12
ABCAD 12 ABACA 24 ABAAC 24 AAABA 12
ABCDA 12 ABACB 24 ABABA 12 AAABB 12
ABCDD 4 ABACC 24 ABABB 12 AAABC 24
ABACD 24 ABABC 24 AABAA 12
ABCDA 12 ABACA 24 AABAB 12
ABCDC 12 ABACB 24 AABAC 24
ABACC 24 AABBA 12
ABACD 24 AABBB 12
ABCAA 24 AABBC 24
ABCAB 24 AABCA 24
ABCAC 24 AABCB 24
ABCAD 24 AABCC 24
ABCCA 24 AABCD 24
ABCCC 12 ABAAA 12
ABCCD 12 ABAAB 12
ABCDA 24 ABAAC 24
ABCDC 12 ABABA 12
ABCDD 12 ABABB 12
ABABC 24
ABACA 24
ABACB 24
ABACC 24
ABACD 24
ABBAA 12
ABBAB 12
ABBAC 24
ABBBA 12
ABBBB 12
ABBBC 24
ABBCA 24
ABBCB 24
ABBCC 24
ABBCD 24
ABCAA 24
ABCAB 24
ABCAC 24
ABCAD 24
ABCBA 24
ABCBB 24
ABCBC 24
ABCBD 24
ABCCA 24
ABCCB 24
ABCCC 24
ABCCD 24
ABCDA 24
ABCDB 24
ABCDC 24
ABCDD 24

Total Unique Patterns


Core Hand Type Rank Patterns Suit Patterns Total
Four of a Kind 156 1 156
Full House 156 2 312
Three of a Kind 858 5 4,290
Two Pair 858 8 6,864
One Pair 2,860 20 57,200
No Pair 1,287 51 65,637
Total 134,459
Reduction in processing time 94.8264%

Hand Scoring Code


int GetHandType(int C1, int C2, int C3, int C4, int C5)
{
    int Hand = 0;

    int R1 = Rank[C1],
        R2 = Rank[C2],
        R3 = Rank[C3],
        R4 = Rank[C4],
        R5 = Rank[C5];

    int S1 = Suit[C1],
        S2 = Suit[C2],
        S3 = Suit[C3],
        S4 = Suit[C4],
        S5 = Suit[C5];

    bool Flush =

        (S1 == S2) &&
        (S2 == S3) &&
        (S3 == S4) &&
        (S4 == S5);

    if (R1 > R2) { R1 ^= R2; R2 ^= R1; R1 ^= R2; }
    if (R1 > R3) { R1 ^= R3; R3 ^= R1; R1 ^= R3; }
    if (R1 > R4) { R1 ^= R4; R4 ^= R1; R1 ^= R4; }
    if (R1 > R5) { R1 ^= R5; R5 ^= R1; R1 ^= R5; }
    if (R2 > R3) { R2 ^= R3; R3 ^= R2; R2 ^= R3; }
    if (R2 > R4) { R2 ^= R4; R4 ^= R2; R2 ^= R4; }
    if (R2 > R5) { R2 ^= R5; R5 ^= R2; R2 ^= R5; }
    if (R3 > R4) { R3 ^= R4; R4 ^= R3; R3 ^= R4; }
    if (R3 > R5) { R3 ^= R5; R5 ^= R3; R3 ^= R5; }
    if (R4 > R5) { R4 ^= R5; R5 ^= R4; R4 ^= R5; }

    if (Flush)
    {

        if (R1 == 8)
        {
            Hand = 9;           // Royal Flush
        }

        else if ((R1 == (R2 - 1)) && 
                 (R2 == (R3 - 1)) && 
                 (R3 == (R4 - 1)) && 
                ((R4 == (R5 - 1)) || ((R1 == 0) && (R5 == 12))))
        {
            Hand = 8;           // Straight Flush
        }

        else
        {
            Hand = 5;           // Flush
        }
    }

    else
    {
        if ((R2 == R3) && (R3 == R4) && ((R1 == R2) || (R4 == R5)))
        {
            Hand = 7;           // Four of a Kind
        }

        else if ((R1 == R2) && (R4 == R5) && ((R2 == R3) || (R3 == R4)))
        {
            Hand = 6;           // Full House
        }

        else if ((R1 == (R2 - 1)) && 
                 (R2 == (R3 - 1)) && 
                 (R3 == (R4 - 1)) && 
                ((R4 == (R5 - 1)) || ((R1 == 0) && (R5 == 12))))
        {
            Hand = 4;           // Straight
        }

        else if (((R1 == R2) && (R2 == R3)) || 
                 ((R2 == R3) && (R3 == R4)) || 
                 ((R3 == R4) && (R4 == R5)))
        {
            Hand = 3;           // Three of a Kind
        }

        else if (((R1 == R2) && (R3 == R4)) || 
                 ((R1 == R2) && (R4 == R5)) || 
                 ((R2 == R3) && (R4 == R5)))
        {
            Hand = 2;           // Two Pair
        }
        else if (((R1 == R2) && (R1 >= 9)) || 
                 ((R2 == R3) && (R2 >= 9)) || 
                 ((R3 == R4) && (R3 >= 9)) || 
                 ((R4 == R5) && (R4 >= 9)))
        {
            Hand = 1;           // Jacks or Better
        }
    }

    return Hand;
}

Sequential Spade Royal Flush on the Deal


Because this game has a jackpot for a Sequential Royal Flush in Spades on the deal, some adjustments are necessary to accurately analyze the game. Unlike regular Sequential Royal Flush games, there is no strategy involved because the Sequential Royal Flush must occur on the deal. Therefore, we only need to multiply the number of hands that are possible on the deal by 120, and do not need to do the same for the number of hands possible on the draw.

For the majority of starting hands, the number of permutations is calculated by simply multiplying by 120. When the starting hand is a Royal Flush, there are two weight factors that need to be fiddled with because the Sequential Royal Flush that wins the jackpot must be in Spades. The weight factor applied to this hand from the Deck Simplification is 4 because there are four possible Royal Flush hands, one for each suit. We also need to multiply by 120 to accommodate the number of ways to arrange the five cards. Since there are only 2 ways to be dealt a Sequential Royal Flush, and only 1 of the 4 suits counts for the jackpot, the number of times a jackpot-winning permutation occurs must be weighted by (1 × 2) ÷ (4 × 120), and the number of possible non-jackpot Royal Flush starting hands is weighted by (3 × 118) ÷ (4 × 120).

No other modifications are necessary. The strategy for the game always remains the same regardless of how large the jackpot is.

Processing, please wait... this could take a while.

Copyright © 2007-2010 Video Poker Genius. All rights reserved.

Free Video Poker | Mac Video Poker | Online Blackjack | Video Poker | Slot Machines | Privacy Policy & Disclaimers | Video Poker Websites | Contact