Video Poker Video Poker Articles Online Casinos Online Gambling Strategy Guides Tools Video Poker Strategies

Deuces Wild (Grand Virtual Progressive)

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

This game is the progressive jackpot version of Deuces Wild 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 any suit (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 38,984,400. The base return of the game when the jackpot resets to 25,000 credits is 97.5899%. Every additional 5,000 coins in the jackpot adds 0.002565% to the theoretical return of the game. The break-even point is when the jackpot reaches 4,722,798 coins (944,559.6 times the bet). I would say that it is very difficult to win the jackpot, which means it would probably grow for a long time before being won. Yet, on the other hand, I doubt the jackpot would ever reach the break-even point before being won. Because the game only returns 97.5791% without the jackpot, I would recommend avoiding it unless you feel extremely lucky. If you want to play Deuces Wild at a Grand Virtual casino, you should play their regular version which features the NSUD paytable that returns 99.7283%.

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 Natural Royal Flush on the Deal
Natural Royal Flush
Four Deuces
Wild Royal Flush
Five of a Kind
Straight Flush
Four of a Kind
Full House
Flush
Straight
Three of a Kind

Deck Simplification


A "W" in the suit pattern denotes a wild card.

Unique Rank Patterns - No Wild Cards


Core Hand Type Formula Result
Four of a Kind Combin(12, 1) * Combin(11, 1) 132
Full House Combin(12, 1) * Combin(11, 1) 132
Three of a Kind Combin(12, 1) * Combin(11, 2) 660
Two Pair Combin(12, 2) * Combin(10, 1) 660
One Pair Combin(12, 1) * Combin(11, 3) 1,980
No Pair Combin(12, 5) 792

Unique Rank Patterns - One Wild Card


Core Hand Type Formula Result
Four of a Kind Combin(12, 1) 12
Three of a Kind Combin(12, 1) * Combin(11, 1) 132
Two Pair Combin(12, 2) 66
One Pair Combin(12, 1) * Combin(11, 2) 660
No Pair Combin(12, 4) 495

Unique Rank Patterns - Two Wild Cards


Core Hand Type Formula Result
Full House Combin(12, 1) 12
Two Pair Combin(12, 1) * Combin(11, 1) 132
One Pair Combin(12, 3) 220

Unique Rank Patterns - Three Wild Cards


Core Hand Type Formula Result
Full House Combin(12, 1) 12
Three of a Kind Combin(12, 2) 66

Unique Rank Patterns - Four Wild Cards


Core Hand Type Formula Result
Four of a Kind Combin(12, 1) 12

Unique Suit Patterns - No Wild Cards


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

Unique Suit Patterns - One Wild Card


Four of a Kind Three of a Kind Two Pair One Pair No Pair
Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count
ABCDW 4 ABCAW 48 ABABW 24 ABAAW 48 AAAAW 16
ABCDW 16 ABACW 96 ABABW 48 AAABW 48
ABCDW 24 ABACW 96 AABAW 48
ABCAW 96 AABBW 48
ABCCW 48 AABCW 96
ABCDW 48 ABAAW 48
ABABW 48
ABACW 96
ABBAW 48
ABBBW 48
ABBCW 96
ABCAW 96
ABCBW 96
ABCCW 96
ABCDW 96

Unique Suit Patterns - Two Wild Cards


Full House Two Pair One Pair
Pattern Count Pattern Count Pattern Count
ABCWW 24 WWABA 72 WWAAA 24
WWABC 72 WWAAB 72
WWABA 72
WWABB 72
WWABC 144

Unique Suit Patterns - Three Wild Cards


Full House Three of a Kind
Pattern Count Pattern Count
WWWAB 24 WWWAA 16
WWWAB 48

Unique Suit Patterns - Four Wild Cards


Four of a Kind
Pattern Count
WWWWA 4

Total Unique Patterns


Wild Cards Core Hand Type Rank Patterns Suit Patterns Total
Four Four of a Kind 12 1 12
Three Full House 12 1 12
Three of a Kind 66 2 132
Two Full House 12 1 12
Two Pair 132 2 264
One Pair 220 5 1,100
One Four of a Kind 12 1 12
Three of a Kind 132 2 264
Two Pair 66 3 198
One Pair 660 6 3,960
No Pair 495 15 7,425
None Four of a Kind 132 1 132
Full House 132 2 264
Three of a Kind 660 5 3,300
Two Pair 660 8 5,280
One Pair 1,980 20 39,600
No Pair 792 51 40,392
Total 102,359
Reduction in processing time 96.0615%

Hand Scoring Code


int WildRank = 0;

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 = false;

    if (R1 > R2) { R1 ^= R2; R2 ^= R1; R1 ^= R2; S1 ^= S2; S2 ^= S1; S1 ^= S2; }
    if (R1 > R3) { R1 ^= R3; R3 ^= R1; R1 ^= R3; S1 ^= S3; S3 ^= S1; S1 ^= S3; }
    if (R1 > R4) { R1 ^= R4; R4 ^= R1; R1 ^= R4; S1 ^= S4; S4 ^= S1; S1 ^= S4; }
    if (R1 > R5) { R1 ^= R5; R5 ^= R1; R1 ^= R5; S1 ^= S5; S5 ^= S1; S1 ^= S5; }
    if (R2 > R3) { R2 ^= R3; R3 ^= R2; R2 ^= R3; S2 ^= S3; S3 ^= S2; S2 ^= S3; }
    if (R2 > R4) { R2 ^= R4; R4 ^= R2; R2 ^= R4; S2 ^= S4; S4 ^= S2; S2 ^= S4; }
    if (R2 > R5) { R2 ^= R5; R5 ^= R2; R2 ^= R5; S2 ^= S5; S5 ^= S2; S2 ^= S5; }
    if (R3 > R4) { R3 ^= R4; R4 ^= R3; R3 ^= R4; S3 ^= S4; S4 ^= S3; S3 ^= S4; }
    if (R3 > R5) { R3 ^= R5; R5 ^= R3; R3 ^= R5; S3 ^= S5; S5 ^= S3; S3 ^= S5; }
    if (R4 > R5) { R4 ^= R5; R5 ^= R4; R4 ^= R5; S4 ^= S5; S5 ^= S4; S4 ^= S5; }

    if ((S1 == S2) &&
        (S2 == S3) &&
        (S3 == S4) &&
        (S4 == S5) &&
        (R1 == 08) &&
        (R2 == 09) &&
        (R3 == 10) &&
        (R4 == 11) &&
        (R5 == 12))
    {
        Hand = 10;     // Natural Royal Flush
    }
    else
    {
        int Wilds = (R1 == WildRank ? 1 : 0)
                  + (R2 == WildRank ? 1 : 0)
                  + (R3 == WildRank ? 1 : 0)
                  + (R4 == WildRank ? 1 : 0)
                  + (R5 == WildRank ? 1 : 0);

        switch (Wilds)
        {
            case 1:

                     if (R1 == WildRank) { }

                else if (R2 == WildRank) { R1 ^= R2; R2 ^= R1; R1 ^= R2; S1 ^= S2; S2 ^= S1; S1 ^= S2; }

                else if (R3 == WildRank) { R1 ^= R3; R3 ^= R1; R1 ^= R3; S1 ^= S3; S3 ^= S1; S1 ^= S3;
                                           R2 ^= R3; R3 ^= R2; R2 ^= R3; S2 ^= S3; S3 ^= S2; S2 ^= S3; }

                else if (R4 == WildRank) { R1 ^= R4; R4 ^= R1; R1 ^= R4; S1 ^= S4; S4 ^= S1; S1 ^= S4;
                                           R2 ^= R4; R4 ^= R2; R2 ^= R4; S2 ^= S4; S4 ^= S2; S2 ^= S4;
                                           R3 ^= R4; R4 ^= R3; R3 ^= R4; S3 ^= S4; S4 ^= S3; S3 ^= S4; }

                else if (R5 == WildRank) { R1 ^= R5; R5 ^= R1; R1 ^= R5; S1 ^= S5; S5 ^= S1; S1 ^= S5;
                                           R2 ^= R5; R5 ^= R2; R2 ^= R5; S2 ^= S5; S5 ^= S2; S2 ^= S5;
                                           R3 ^= R5; R5 ^= R3; R3 ^= R5; S3 ^= S5; S5 ^= S3; S3 ^= S5;
                                           R4 ^= R5; R5 ^= R4; R4 ^= R5; S4 ^= S5; S5 ^= S4; S4 ^= S5; }
                break;

            case 2:

                     if (R1 == WildRank) { }

                else if (R2 == WildRank) { R1 ^= R3; R3 ^= R1; R1 ^= R3; S1 ^= S3; S3 ^= S1; S1 ^= S3; }

                else if (R3 == WildRank) { R1 ^= R3; R3 ^= R1; R1 ^= R3; S1 ^= S3; S3 ^= S1; S1 ^= S3;
                                           R2 ^= R4; R4 ^= R2; R2 ^= R4; S2 ^= S4; S4 ^= S2; S2 ^= S4; }

                else if (R4 == WildRank) { R3 ^= R5; R5 ^= R3; R3 ^= R5; S3 ^= S5; S5 ^= S3; S3 ^= S5;
                                           R1 ^= R3; R3 ^= R1; R1 ^= R3; S1 ^= S3; S3 ^= S1; S1 ^= S3;
                                           R2 ^= R4; R4 ^= R2; R2 ^= R4; S2 ^= S4; S4 ^= S2; S2 ^= S4; }

                break;

            case 3:

                     if (R1 == WildRank) { }

                else if (R2 == WildRank) { R1 ^= R4; R4 ^= R1; R1 ^= R4; S1 ^= S4; S4 ^= S1; S1 ^= S4; }

                else if (R3 == WildRank) { R1 ^= R4; R4 ^= R1; R1 ^= R4; S1 ^= S4; S4 ^= S1; S1 ^= S4;
                                           R2 ^= R5; R5 ^= R2; R2 ^= R5; S2 ^= S5; S5 ^= S2; S2 ^= S5; }

                break;

            case 4:

                     if (R1 == WildRank) { }

                else if (R2 == WildRank) { R1 ^= R5; R5 ^= R1; R1 ^= R5; S1 ^= S5; S5 ^= S1; S1 ^= S5; }

                break;
        }

        switch (Wilds)
        {
            case 0:

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

                if (Flush)
                {

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

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

                    else
                    {
                        Hand = 3;           // Flush
                    }
                }

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

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

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

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

                break;

            case 1:

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

                if (Flush)
                {
                    if (R2 >= 8)
                    {
                        Hand = 8;                // Wild Royal Flush
                    }
                    else if (((R5 - R2) <= 4) || ((R5 == 12) && (R4 <= 3)))
                    {
                        Hand = 6;                // Straight Flush
                    }
                    else
                    {
                        Hand = 3;                // Flush
                    }
                }

                else
                {
                    if ((R2 == R3) && (R3 == R4) && (R4 == R5))
                    {
                        Hand = 7;                // Five of a Kind
                    }
                    else if (((R2 == R3) && (R3 == R4)) || ((R3 == R4) && (R4 == R5)))
                    {
                        Hand = 5;                // Four of a Kind
                    }
                    else if ((R2 == R3) && (R4 == R5))
                    {
                        Hand = 4;                // Full House
                    }
                    else if ((((R5 - R2) <= 4) || ((R5 == 12) && (R4 <= 3))) &&
                            (R2 != R3) && (R3 != R4) && (R4 != R5))
                    {
                        Hand = 2;                // Straight
                    }
                    else if ((R2 == R3) || (R3 == R4) || (R4 == R5))
                    {
                        Hand = 1;                // Three of a Kind
                    }
                }

                break;

            case 2:

                Flush = (S3 == S4) && (S4 == S5);

                if (Flush)
                {
                    if (R3 >= 8)
                    {
                        Hand = 8;                // Wild Royal Flush
                    }
                    else if (((R5 - R3) <= 4) || ((R5 == 12) && (R4 <= 3)))
                    {
                        Hand = 6;                // Straight Flush
                    }
                    else
                    {
                        Hand = 3;                // Flush
                    }
                }
                else
                {
                    if ((R3 == R4) && (R4 == R5))
                    {
                        Hand = 7;                // Five of a Kind
                    }
                    else if ((R3 == R4) || (R4 == R5))
                    {
                        Hand = 5;                // Four of a Kind
                    }
                    else if ((((R5 - R3) <= 4) || ((R5 == 12) && (R4 <= 3))) &&
                            (R3 != R4) && (R4 != R5))
                    {
                        Hand = 2;                // Straight
                    }
                    else
                    {
                        Hand = 1;                // Three of a Kind
                    }
                }

                break;

            case 3:

                Flush = (S4 == S5);

                if (Flush)
                {
                    if (R4 >= 8)
                    {
                        Hand = 8;                // Wild Royal Flush
                    }
                    else if (((R5 - R4) <= 4) || ((R5 == 12) && (R4 <= 3)))
                    {
                        Hand = 6;                // Straight Flush
                    }
                    else
                    {
                        Hand = 5;                // Four of a Kind
                    }
                }
                else
                {
                    if (R4 == R5)
                    {
                        Hand = 7;                // Five of a Kind
                    }
                    else
                    {
                        Hand = 5;                // Four of a Kind
                    }
                }

                break;

            case 4:

                Flush = true;
                Hand = 9;                      // Four Wilds
                break;
        }
    }

    return Hand;
}


Sequential Royal Flush on the Deal


Because this game has a jackpot for a Sequential Royal Flush 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, it is necessary to multiply by 120 but split it into two types - a Sequential Royal Flush or a Non-Sequential Royal Flush. Since both directions count, there are 2 ways to be dealt a Sequential Royal Flush, and 118 ways to be dealt a Non-Sequential Royal Flush. Therefore, the average value is calculated by multiplying the jackpot amount by 2⁄120 and the regular Royal Flush payout by 118⁄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-2008 Video Poker Genius. All rights reserved.

Free Video Poker | Mac Video Poker | Video Poker | Legal Notices | Websites | Contact