Random number generators (RNG’s) are frequently used in cryptology where random numbers are used to generate difficult to predict keys which are used to unlock coded messages. An interesting application of random number generators is in the online casino and poker industry. Since its the online poker and casino industry has relied heavily on random number generators to provide statistically random outcomes to a wide range of casino games such as blackjack, poker and of course slots. Initially the industry relied heavily on cumbersome Geiger Muller RNG’s but as gaming software technology developed further so did the type of RNG’s used. Today’s online casinos and poker rooms rely exclusively on pseudo random number generators with what is called the “seed number” generated by a separate process.![]()
So now you do not really need to marvel how online poker sites achieve completely unpredictable and random results 24/7 because the answer is in our random number generators (RNGs). You do not need to rack your brain to figure out who or what determines whether a King of Hearts or a deuce of spades will be dealt out next in a poker game – it’s the thingy that our poker software developers term as random number generators, abbreviated as RNGs! In simple terms RNGs is a system for generating a totally random (lacking any pattern, unconnected and unpredictable) series of numbers. It is absolutely not an easy thing to achieve 100% random results using man-made codes to work on computers but the RNGs deployed by all the online poker rooms that we build to do just that.
Let me show you how cards are presented, as a side note. Cards are represented as a long 64 bit representation. A value of “70370896904320” stands for bit pattern “10000000000000010000000010100000000000010000000” which literally represents 5 cards (note the 5 set bits and their position) of value 9C 9D JD 7H 9S. The cards value is usually accompanied by a count or another long for visibility. A set bit for a card in the visibility filed means that the card is an open card. Sometimes a “card count” field is also present for example in player hand. This is there because the actual player card cannot be broadcasted to all players and are zeroed out. The client needs to know how many closed cards need to be displayed and this is the field which provides that value.![]()
Getting back to random number generators, as recently as 100 years ago, people who needed to use random numbers for scientific work did a number of seemingly silly things like tossing coins, rolling dice, dealing cards or picking numbers out of hats or baskets. True random numbers are generally generated by sampling and processing a source of entropy outside the computer. This source of entropy can be very simple, like the tiny variations in somebody's mouse movements or in the amount of time lapsing between keystrokes on your keyboard. In practice, however, it can be tricky to use any user input as a source of entropy. Keystrokes, for example, are often buffered by the computer's operating system, meaning that several keystrokes are collected before they are sent to the program waiting for them. To the program, it will seem as though the keys were pressed almost simultaneously. So, no go.
Most poker sites use hardware random number generators. They will also modify the output to remove any scaling bias and often use ‘pots’ of numbers which can be ‘stirred’ using entropic events (like user activity, server i/o events etc). Quite often the resultant numbers just index pre-generated decks (starting off as a sorted list of cards).![]()
Even casino slot machines generate random numbers continuously at very high speed and use the most recent result(s) when the user pulls the lever (or hits the button) to spin the reels. Thus, even a simplistic generator can be used. Even if you knew the algorithm used, you cannot observe where in the sequence it exactly is because nearly all the results are discarded. If somehow you did know where it was in the sequence, you would have to have millisecond or better timing to take advantage of it. Modern "mechanical reel" machines use PRNGs and drive the reels with stepper motors to simulate the old style spin-and-brake.
To get a license to operate a gaming site in a particular jurisdiction usually requires that the random number generator (RNG) has been certified by an independent third-party. The third-party testers will analyze the source code and run statistical tests to ensure that the RNG behaves randomly. Reputable poker sites will usually include details of the certification that their Random Number Generators (RNGs) have undergone.
Pokerhotchick is a complete online poker blog providing you with poker tips and articles on poker strategies designed to make you win more money on the poker table. Angelina Wang’s close association with the poker software development industry makes her articles on poker software a reader’s delight. Enjoy reading her online poker blog.
Wednesday, November 25, 2009
Random Number Generators
Monday, November 16, 2009
Poker Hand History
Poker hand history is one of the additional benefits of playing poker online. It helps you to develop and further better your game. The poker hand history feature keeps an account and records all the process and action in online poker game hands. It can include player names with their seating positions, game limit and types, player accounts and chip amounts any and all community cards, as well as the betting amounts and actions of each player in every betting round.
Poker hand history is used by players to check their previous hands and used by the poker online site for player game play, disputes, habits and even fraud and collusion. This is great advantage for both poker sites and even poker players.
Maintaining poker hand history is a very complex task. On the client side of the poker software, details of hands played are kept in a log file and this normally appears as a virtual replay of one or more previously played hands. This log file however gets overwritten after the client closes and hence maintains the user hand history only for a given session during which the client was active. This however is just the visible side of things. Now let’s go beyond the poker client and to the server and database.![]()
Just as the log file is being maintained for your poker hand history on your local computer system, the poker server also maintains a breakdown of all hands being played and keeps updating a database which saves all data using a game id and a hand id. This is where things really get complicated. Just imagine 5000 players playing simultaneously with each other on different tables. The volumes of poker hand history data which this will generate over a given length of time is simply mindboggling!
Simply managing these millions (soon may be in billions!) of lines of data is a really challenging task. Though it is very easy (so tempting!) to take the database approach, it costs us a fortune with respect to performance as this ever increasing volume of poker hand history will eventually over load the best of the database servers around. We realized this pretty early on and we took the more difficult file based approach while implementing poker hand histories. The file system approach is basically where the index is maintained in a database for quick retrieval of data and the data is stored in millions of small files (typically of the order of 2 kilo bytes).This means one ends up dealing with a huge disk space. Typically the setup involves two machines, each one forming a “stand-by” backup to the other machine also called as RAID.![]()
Every poker game server creates a file per game at the end of each game. A cron (a type of auto running server side script) on respective servers, move all such created files to a centralized machine (where file system is optimized for them!). For better management and speedy access, these files are stored in hierarchically organized directories where no directory hosts more than a 1000 files. When a client requests for a hand history, a URL is formed to fetch the poker hand history and is handed over to the mail system. Mail system, in turn, fetches the poker hand history and sends an e-mail to the user.
Poker hand history also is a very important tool for online support. A very common query which most online poker support staff has to contend with is the ‘Show me the money’ query. Say, a player deposits $100 and then goes on a losing streak and ends up with $0 in his account. In most cases you will end up with a ‘Show me the money’ query. Customer support can then simply run a query from the back office and check the entire hand and game history of the player and they can have the entire poker hand history of the player.
Tuesday, November 10, 2009
Poker Reports
Poker reports are the report system that provides secure web based reports customized to the needs of various parties like customer service, management, marketing etc. It uses back office reports for fetching the data from poker database and serving on the web. The various poker reports are:
- · User based, for Customer Support, used for user details and profile updating.
- · Game based, for Customer Support, user for game details.
- · Financial and revenue reports, for accounting and management
- · Webmaster related
- · Fraud and Collusion related, for Poker Investigation Team
- · Summary and statistics, for marketing team.
- · Bonus/Promotions related reports
Let me elaborate a bit further on some of the more important poker reports:
Financial and revenue reports, for accounting and management
Financial reporting tends to give the site owner a moment by moment historically overview of the financial health of the entire poker system per se. Deposit histories as well as withdrawal histories give the finance manager a clear picture on cash flows as well as enabling him/her to plan large money transactions. These could be the high priority poker reports.
Webmaster related
User statistics combined with visitor logs from poker reports can be also used to optimize the site with respect to specific users. Let me explain. For instance if one finds that the poker player traffic is maximum from the US, for instance, then we could have the servers residing in the US itself to improve game play and mitigate network related issues.
User based, for Customer Support, used for user details and profile updating
User based poker reports provide complete profile details of poker players that are using the software. These are essential for customer support and meeting compliance issues with third party payment processors as well as licensing authorities.
Fraud and Collusion related, for the Poker Investigation Team
Back office reporting forms the key to an efficient poker fraud and collusion control methodology. The idea is to combine key fraud and collusion control rules within the poker software itself with a human interface provided by Fraud and collusion reports from the poker back office. The human in the loop is required to validate and check events such as chip dumping and collusion between players. High priority poker reports, these.
Summary and statistics reports
An efficient poker report system allows for data mining opportunities which can be leveraged in multiple ways. At the poker tables the customer is the king .When data is combined with Data mining - technologies and techniques for recognizing and tracking patterns within data – it allows for customer service , marketing as well as other associated teams to anticipate, rather than simply react, to customer needs.
Bonus and promotion related poker reports
- Bonus and promotions can be tweaked and customized to suit specific user needs.
- Geo-tagging online poker players.
- market profiles can be generated on users using visitor statistics.
- Deposit trends can be found for users and tailor made promotions can be offered to pull in the poker fish.
Thursday, November 5, 2009
Poker Mail System
The Poker Mail System provides a template-based mail sending service to other sub-systems in the game system. By using replaceable parameters, it allows the “text” of the mail customizable with specific details. It is very easy to setup a new template for a particular purpose and sending the mail using this poker mail system is easier.
The poker mail system also allows to setup sending an e-mail by fetching the text from a specified URL. This comes in quite handy when you are integrating the poker game lobby with data and information to be pulled from a particular website for instance.
The poker mail system is used for sending automated customized mails from game server and other sub-systems on events like:
· registration
· purchases and redeems
· hand histories (game logs)
· winning tournaments
· promotional / marketing stuff like tell a friend, tournaments etc.,
· forgot password
· mail validation codes
· etc.
An important part of the communication layer in the poker software, the poker mail system is an integral part of the gaming software.
Blog Directories
More followers
Photarium blog directory
|
|
|
|
|
|
|
Blog Search Engine WebLog Directory Blogoriffic.com Blogs Directory The Blog Resource Submit Blog Directory A1 Web Links Blog Directory GeekySpeaky: Submit Your Site! Free RSS Feeds Directory Ireland Website Directory GlobeSpot.Net Web Directory One Way Links quick trim