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

Four Joker Poker

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

Four Joker Poker uses a 56-card deck consisting of the 52 regular cards and four Jokers. The paytable is similar to that of Deuces Wild, although the payouts are a little more generous due to the increased deck size and therefore decreased probability of achieving certain hands.

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

Deck Simplification


An "X" in the suit pattern denotes a Joker.

Unique Rank Patterns - No Jokers


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 Rank Patterns - One Joker


Core Hand Type Formula Result
Four of a Kind Combin(13, 1) 13
Three of a Kind Combin(13, 1) * Combin(12, 1) 156
Two Pair Combin(13, 2) 78
One Pair Combin(13, 1) * Combin(12, 2) 858
No Pair Combin(13, 4) 715

Unique Rank Patterns - Two Jokers


Core Hand Type Formula Result
Full House Combin(13, 1) 13
Two Pair Combin(13, 1) * Combin(12, 1) 156
One Pair Combin(13, 3) 286

Unique Rank Patterns - Three Jokers


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

Unique Rank Patterns - Four Jokers


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

Unique Suit Patterns - No Jokers


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 Joker


Four of a Kind Three of a Kind Two Pair One Pair No Pair
Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count
ABCDX 4 ABCAX 48 ABABX 24 ABAAX 48 AAAAX 16
ABCDX 16 ABACX 96 ABABX 48 AAABX 48
ABCDX 24 ABACX 96 AABAX 48
ABCAX 96 AABBX 48
ABCCX 48 AABCX 96
ABCDX 48 ABAAX 48
ABABX 48
ABACX 96
ABBAX 48
ABBBX 48
ABBCX 96
ABCAX 96
ABCBX 96
ABCCX 96
ABCDX 96

Unique Suit Patterns - Two Jokers


Full House Two Pair One Pair
Pattern Count Pattern Count Pattern Count
ABCXX 24 XXABA 72 XXAAA 24
XXABC 72 XXAAB 48
XXABA 48
XXABB 48
XXABC 96

Unique Suit Patterns - Three Jokers


Full House Three of a Kind
Pattern Count Pattern Count
XXXAB 24 XXXAA 16
XXXAB 48

Unique Suit Patterns - Four Jokers


Four of a Kind
Pattern Count
XXXXA 4

Total Unique Patterns


Joker(s)Core Hand Type Rank Patterns Suit Patterns Total
None 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
One Four of a Kind 13 1 13
Three of a Kind 156 2 312
Two Pair 78 3 234
One Pair 858 6 5,148
No Pair 715 15 10,725
Two Full House 13 1 13
Two Pair 156 2 312
One Pair 286 5 1,430
Three Full House 13 1 13
Three of a Kind 78 2 156
Four Four of a Kind 13 1 13
Total 152,828
Reduction in processing time 95.9991%

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];

    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; }

    bool Flush = false;

    int Jokers = (R1 == 13 ? 1 : 0) +
                 (R2 == 13 ? 1 : 0) +
                 (R3 == 13 ? 1 : 0) +
                 (R4 == 13 ? 1 : 0) +
                 (R5 == 13 ? 1 : 0);

    switch (Jokers)
    {
        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 = (S1 == S2) && (S2 == S3) && (S3 == S4);

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

            break;

        case 2:

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

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

            break;

        case 3:

            Flush = (S1 == S2);

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

            break;

        case 4:

            Flush = true;
            Hand = 9;
            break;
    }

    return Hand;
}


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