FIELD OF THE INVENTIONThe invention relates generally to a system and method of providing secure payment transactions at a terminal, and more particularly, to a system and method of validating a printed ticket used as payment and pay out for play in a gaming machine.
BACKGROUND OF THE INVENTIONHistorically, gaming machines, such as slot machines, have been activated by the insertion of coins or paper currency into the gaming machine through a slot or optical reader and providing the player with credits corresponding to the value if the coins and/or currency. In relatively recent times, gaming machines include a bar code reader that can read and validate pre-printed free play coupons or cash out tokens (also referred to throughout this document as “tickets”), which include a machine-readable bar code. The gaming machine also includes a printer that prints and dispenses cash out tickets that include a bar code.
Each individual gaming machine includes an interface to a server that collects the gaming machine data, such as the codes from the bar codes and the output of the paper currency reader and formats it and then transmits it to the server. The server is typically located in a secured office at the casino. The printed cash out tickets can be accepted by the gaming machines in order to obtain credit to play the gaming machine or can be inserted or scanned into a separate device at a change station to obtain actual currency. In effect, these systems permit the player to use the gaming machines in exactly the same manner as if the player was using money.
In previous gaming machine systems, the bar code on the cash out ticket included the value of the free play coupon or cash out token augmented by a unique control number randomly generated by the server in order to permit the server to verify the validity and unique identification of the ticket at a later time. When the ticket was inserted into the bar code reader, the server compared the bar code on the particular cash out ticket with those stored in its memory. Also stored in memory was an indication of whether or not the bar code had been “paid” or not. For example, the status may be “paid,” in which case the cash out ticket will be consider invalid and no credit will be given for the cash out token because a cash out ticket can receive credit only once. Additionally, control numbers for free play coupons were generated externally and then entered into the server as a valid code. The options available if the code was invalid are: (1) the gaming machine would merely reject the cash out token if it does not have any readable code, such as would be the case if it was blank paper; or (2) if there is a readable bar code, but one that is an invalid code, a silent alarm would be used to alert security personnel to go to the specific gaming machine when an invalid code was attempted to be used.
Thus, the concern over counterfeiting of individual cash out tokens was lessened because the server will be able to keep track of the unique random number for each cash out token or coupon. However, counterfeiting of cash out tickets and other methods of perpetuating fraud on the cash out ticketing system remain unaddressed by the prior art.
SUMMARY OF THE INVENTIONAccording to an embodiment of the invention, there is disclosed a method of verifying a cash out token associated with a gaming machine that includes a cash out token signal with an encoded data field and an encoded checksum field and includes performing a checksum algorithm on at least a portion of the encoded data field to produce a numerical result and comparing the produced numerical result with the checksum field. Upon detecting a match between the produced numerical result and the checksum field, a data set is extracted from the encoded data field, where a monetary value associated with the cash out token or, alternatively, an index (or pointer) value, which constitutes reference into a database is contained in the data set. The pointer may reference a monetary value stored in the database that is associated with the cash out token. The server is then instructed to look up the cash balance associated with the token so that the player may be credited an equivalent amount of game credits to the value which the server has determined is the balance associated with this token.
In accordance with one aspect of the invention, the received data field includes site identification, machine identification, and/or sequence information. According to another aspect of the invention, the received data field includes player identification information. In accordance with yet another aspect of the invention, the cash out token signal is encrypted, and prior to extracting a data set from the encoded data field, the cash out token signal is decrypted. According to yet another aspect of the invention, the method further includes performing a checksum algorithm on the extracted data set to produce a numerical result includes the use of a polynomial equation. In accordance with another aspect of the invention, the cash out token may be a plastic card, on which the encoded data field and an encoded checksum field are stored electronically. According to another aspect of the invention, the cash out token signal may be received through wireless communication means.
According to another embodiment of the invention, there is disclosed a method of producing a cash out token associated with a gaming machine upon the detection of the end of game play. Upon detection of the end of game play, a data field associated with the game play is determined and a checksum operation is performed on the data field to produce a checksum field. The method further includes encoding the data field and checksum field; printing the encoded data field and checksum field on a cash out token; and dispensing the cash out token to the player.
In accordance with one aspect of the invention, the determined data field associated with the game play may include site identification, machine identification, and/or sequence information. According to another aspect of the invention, the determined data field associated with the game play includes player identification information. In accordance with yet another aspect of the invention, the method further includes printing a time stamp on the cash out token. In accordance with yet another aspect of the invention, the data field includes data provided by the server which may include some or all of: site identification, machine identification, sequence information, a date/time stamp, player identification or a randomly generated piece of information. According to yet another aspect of the invention, encoding the data field and checksum field includes dispersing the checksum field throughout the data field. In accordance with another aspect of the invention, performing a checksum operation on the data field to produce a checksum field includes the use of a polynomial equation. According to another aspect of the invention, the method further includes encrypting the data field and checksum field prior to encoding the data field and checksum field.
According to yet another embodiment of the invention, there is disclosed a system for verifying cash out tokens associated with gaming machines that includes two or more gaming machines, where each of the gaming machines includes a bar code reader. The system further includes a server in communication with the gaming machines, where the server includes a processor executing software instructions for: receiving an encoded data field and an encoded checksum field from one of the gaming machines; performing a checksum algorithm on at least a portion of the encoded data field to produce a numerical result; comparing the produced numerical result with the checksum field. Upon detecting a match between the produced numerical result and the checksum field, a data set is extracted from the encoded data field, where a monetary value associated with a cash out token is contained in the data set. A player is then credited an equivalent amount of game credits to the validated value of the cash out token.
In accordance with one aspect of the invention, each of the gaming machines may include a player identification code reader. According to another aspect of the invention, each of the gaming machines may include a printer for printing a cash out token at the end of game play. In accordance with yet another aspect of the invention, the checksum algorithm includes, at least in part, the use of a polynomial equation.
According to yet another aspect of the invention, the system further includes two or more change stations in communication with a server. The change stations each include a display and are associated with a processor for executing software instructions for: receiving an encoded data field and an encoded checksum field from a cash out token, performing a checksum algorithm on at least a portion of the encoded data field to produce a numerical result and comparing the produced numerical result with the checksum field. Upon detecting a match between the produced numerical result and the checksum field, a data set is extracted from the encoded data field where a monetary value associated with a cash out token or, alternatively, a pointer to a monetary value that is stored in a database and is associated with the cash out token is contained in the data set is contained in the data set. The equivalent amount of currency to the validated value of the cash out token is then displayed on a display.
In accordance with yet another aspect of the invention, the system further includes two or more change stations in communication with the server. The change stations are associated with a processor for executing software instructions for: receiving an encoded data field and an encoded checksum field from a cash out token, performing a checksum algorithm on at least a portion of the encoded data field to produce a numerical result, and comparing the produced numerical result with the checksum field. Upon detecting a match between the produced numerical result and the checksum field, a data set is extracted from the encoded data field where a monetary value associated with a cash out token is contained in the data set. An equivalent amount of currency to the validated value of the cash out token is then dispensed.
BRIEF DESCRIPTION OF DRAWINGSHaving thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
FIG. 1 shows a gaming machine network employed at a casino in accordance with an exemplary embodiment of the invention.
FIG. 2 shows a gaming machine interface in accordance with an exemplary embodiment of the invention.
FIG. 3 shows a cash out ticket in accordance with an exemplary embodiment of the invention.
FIG. 4 is a flowchart directed to the creation of a cash out ticket in accordance with an exemplary embodiment of the invention.
FIG. 5 is a flowchart directed to the verification of a cash out ticket in accordance with an exemplary embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTIONThe embodiments of the invention discussed herein are directed to a method for verifying the authenticity of a cash out ticket generated by gaming machine. The verification process utilizes a checksum operation when producing and validating the bar code generated on a ticket. At least a portion of the bar code may be used to determine the amount of currency or credits a player has at her disposal for use in a gaming machine, or to determine the location of such information stored in a database. The use of the checksum operation provides an additional means of security and allows the ticket to be a single source of verification rather than relying solely on a database entry associated with the generated ticket. In addition to gaming machines, this method of secure payment printing may also be used for other applications and industries where it is considered less expensive and/or more secure to return a printed, negotiable instrument rather than currency when the user wants to take his balance or change from a transaction.
An embodiment of the invention is described below with reference to block diagrams of systems, methods, apparatuses and computer program products according to an embodiment of the invention. It will be understood that each block of the block diagrams, and combinations of blocks in the block diagrams, respectively, can be implemented by computer program instructions. These computer program instructions may be loaded onto a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions which execute on the computer or other programmable data processing apparatus create means for implementing the functionality of each block of the block diagrams, or combinations of blocks in the block diagrams discussed in detail in the descriptions below.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means that implement the function specified in the block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions that execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the block or blocks.
Accordingly, blocks of the block diagrams support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the block diagrams, and combinations of blocks in the block diagrams, can be implemented by special purpose hardware-based computer systems that perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
The inventions may be implemented through an application program running on an operating system of a computer. The inventions also may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor based or programmable consumer electronics, mini-computers, mainframe computers, etc.
Application programs that are components of the invention may include routines, programs, components, data structures, etc. that implement certain abstract data types, perform certain tasks, actions, or tasks. In a distributed computing environment, the application program (in whole or in part) may be located in local memory, or in other storage. In addition, or in the alternative, the application program (in whole or in part) may be located in remote memory or in storage to allow for the practice of the inventions where tasks are performed by remote processing devices linked through a communications network. Exemplary embodiments of the invention are more fully described hereinafter with reference to the accompanying drawings, in which like numerals indicate like elements throughout the several drawings. Indeed, these inventions may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements.
Throughout the description below of various embodiments of the invention, the phrase “cash out token” maybe interpreted as a paper receipt or coupon, a card with a magnetic strip, a smart card, or the like. The “cash out token” may also refer to more sophisticated means of providing secure tracking of a player's game play and/or monetary values associated with such game play such as the use of a wireless device, PDA's, mobile phone, etc. that may be associated with a player or group of players. Other forms of “cash out tokens” may be appreciable by one of ordinary skill in the art.
FIG. 1 shows a gaming machine system employed at a casino for playing an electronic casino game in accordance with an exemplary embodiment of the invention. The gaming machine system includes both gaming machine(s)100 and changestations102 connected to aserver104 via anetwork106. As shown in the exemplary embodiment ofFIG. 1, the gaming machine(s)100 are each made up of several components may includememory108, a processor of thegaming machine110, I/O interfaces112, and, in certain exemplary embodiments of the invention, such as the embodiment shown inFIG. 1, thegaming machine100 may include anetwork interface114. Thegaming machine100 may be a stand alone machine fully operational without the need to be connected to aserver106, or as in the exemplary embodiment shown inFIG. 1, thegaming machine100 may communicate with aserver106 via anetwork104 and may even be connected via thenetwork104 to other gaming machines or change stations to provide more robust game play or provide an added convenience for exchanging game credits for currency, respectively.
The various functions of thegaming machine102 discussed herein are controlled by the processor of thegaming machine110 utilizing various software programs stored inmemory108. Thememory108 is where various game data such as winning game patterns and the pay schedule (i.e., pay tables, which are utilized to determine the value of the awards payable for such patterns) are stored. The memory also stores a randomnumber generator program116, thegame program software118, and an O/S (Operating System)120 for use by the processor of thegaming machine110 in controlling the various functionality of thegaming machine102, such as the calling of various software routines and operating various system hardware and interfaces such as the I/O interfaces112 and network interfaces114.
In alternative embodiments of the invention, the software that implements the random number generation and game software can be integrated into one software program. In additional alternative embodiments of the invention, the random number generator could utilize additional hardware that is internal or external to the gaming machine for more complex generation of number selection and/or to provide additional security and integrity to the operation of the casino game. In yet another alternative embodiment of the invention, the gaming machine100 (also referred to as a “player station”) may be a “dummy” terminal that accepts input signals from a player through the I/O interfaces112 and is operated via thenetwork104 by software, including software for the remote number generation, located on theremote server106.
In the exemplary embodiment ofFIG. 1, thememory108 resides within thegaming machine100, or in an alternative embodiment of the invention, the memory may reside remote from thegaming machine100. For example, thememory108, and some or all of its stored content, may reside on a central machine orserver106 where two ormore game machines100 are networked together. In such a case, the gaming machine communicates with the central machine orserver106 through anetwork interface114. The network interface allows thegaming machine100 to simply communicate with a transmission portal such as a server or router, and thegaming program118 functions may be ran remotely from thegame machine100.
In the exemplary embodiment of the invention shown inFIG. 1, theserver106 can include a stand alone computer having some or all of the conventional attributes of a general purpose computer. Theserver106 is connected to a series ofgaming machines100. In certain exemplary embodiments of the invention, the play of thegaming machine100 is controlled by internal game software located at theserver106 with preset parameters for the play of the game. Theserver106 may also control various menu driven options, such as game selection and amount of the wager for the game.
In an exemplary embodiment of the invention, theserver106 is fed signals generated by an interface, such as114, which acts as the interface between thegaming machine100 and theserver106. The interface may be a commercially available interface which is widely used in the gaming industry to control the operation of existing stand alone electronic gaming apparatus. In an exemplary embodiment of the invention, the interface, such as114, may be a Universal Interface Board (UIB) or other interface that will be appreciable by one of ordinary skill in the art. The interface includes an electronic chip or controller which collects all of the gaming machine data, organizes and formats it, and then transmits the organized data to theserver106. In certain exemplary embodiments of the invention, the interface also acts as a controller for the operation and functions of the bar code reader, the printer, the paper currency reader, the player identification card input and other peripherals associated with the gaming machine(s)100. The interface is capable of being reconfigured by theserver106 to alter its functions. Standard computer programming, such as is well known to computer programmers in the gaming industry, is used to select the particular parameters designed to be employed in the operation and control of the interface and theserver106.
The game machine(s)100 contains one or more I/O interfaces112. These interfaces, or I/O devices, may include a display, touch-screen display, microphones, speakers, buttons, mouse, joystick, a keyboard or other user interfaces appreciable by one of ordinary skill in the art. The I/O interfaces112 may also include card readers, bar code readers, coin and/or paper currency detectors, scanners, disk drives, USB ports, receiving/transmitting antennae, infra-red (IR) sensors, or other such I/O interfaces appreciated by one of ordinary skill in the art capable of accepting information relating to wager amounts, game credits, etc.
In an exemplary embodiment of the invention, thegaming machine100 includes a monetary input interface as part of its I/O interfaces112 through the use of which a player receives game credits available to wager. In an exemplary embodiment of the invention, the monetary input interface is a bill acceptor into which a player inserts paper currency and receives credit on thegaming machine102 for the amount deposited. Additionally, the monetary input interface is also a ticket reader into which the player places a paper ticket bearing an encoded monetary value into the monetary input interface and is credited with that monetary value. Other monetary input interfaces may also be included such as a coin slot, credit card reader or other means known in the art. Further, the I/O interfaces112 also may include printers, coin dispensers, ticket dispenser and other such I/O interfaces112 appreciated by one of ordinary skill capable of dispensing a user's remaining credits and/or winnings (i.e., “cashing out”).
Thegaming machine100 also includes a bar code printer for printing cash out tokens having bar codes on a permanent storage medium, such as paper, which is stored within the housing. The printer prints a bar code on the cash out tokens responsive to the instructions from the processor of thegaming machine110 orserver106, depending on the configuration. Such printers are well known. In an exemplary embodiment of the invention, the bar code printer is commercially available from FutureLogic, Inc. and other bar code printer and/or reader manufacturers and/or suppliers. A fan fold stack of preprinted cash out tokens should be sufficient to generate numerous cash out tokens. In an exemplary embodiment of the invention, a sensor can signal the processor of thegaming machine110 orserver106 when only a particular amount, of the stored cash out tokens are remaining so that the paper can be changed.
In addition to the bar code, the cash out token may also contain other information such as the date of the print out of the cash out token. In certain exemplary embodiments of the invention, the processor of the gainingmachine110 generates the bar code to be printed, in other embodiments of the invention theserver106 generates the bar code to be printed. In an exemplary embodiment of the invention where theserver106 is controlling the bar code generation, the generated information to be printed on the cash out token may be stored in adatabase122 associated with theserver106. In alternative embodiments of the invention, thedatabase122 may be contained in or local to theserver106. The generation of the bar code and the information to be considered during its generation and/or included in the generated bar code is discussed in further detail below with reference to the other figures.
In an exemplary embodiment of the invention, the paper currency reader and/or the bar code reader are located within the housing of thegaming machine100 so that the free play coupons, cash out tokens and paper currency are all entered within a single slot and stored in a lock box that would be removable from the gaming machine by authorized personnel. However, it is also possible to have the paper currency deposited in a separate slot from the free play coupons or cash out tokens and stored them separately.
In an exemplary embodiment of the invention, a user may enter wager information utilizing the gaming machine's I/O interface112. The wager information is stored in thememory108. Next, the processor of thegaming machine110 utilizes an operating system (O/S)120, which in turn calls thegaming program118 to run the game functionality. As part of the game operation, therandom number generator116, under the control of the processor of thegaming machine110 orserver106, generates random numbers which are utilized in the game operation to determine whether or not the game will have a winning outcome. In alternative embodiments of the invention, the random number generation and determination of a winning outcome may occur remote to thegaming machine100.
When a game is over, the user's winnings are determined by the processor of thegaming machine110 running thegaming program118. The user may continue to play a new game or the player may “cash out.” When “cashing out,” the processor of thegaming machine110 operates the dispensing of the user's remaining credits and/or winnings. After one user ends his or her play, thegaming machine100 is reset for another user to begin play.
As shown in the exemplary embodiment ofFIG. 1, a number ofgame machines100 may be in communication with aserver106 through anetwork104. Thenetwork104 can be a dedicated private network including a LAN, WAN, T1 connection, or a public network such as the Internet. Thenetwork104 can also be one which supports any networking protocol including Internet Protocol, FTP, Telnet, TCP/IP, Point to Point Protocol (PPP), Challenge Handshake Authentication Protocol (CHAP), or another public or private networking protocol. Secured or encrypted network protocols such as secured HTTPS protocol and other secure methods of data transfer over public networks appreciable by one of ordinary skill in the art and/or user ID and password protected log-in security features may also be utilized. In an exemplary embodiment of the invention, the use of adedicated server106 allows thegame machines102 to be remotely accessed through the Internet or someother network104 such as a private Intranet, LAN, WAN, T1 connection, or other networking configurations appreciable by one of ordinary skill in the art.
In an exemplary embodiment of the invention that utilizes the above described network configuration, a plurality ofgaming machines100 may be networked together in which case a processor and/or the operational software that implements one or more aspects of the game may reside on a central computer orserver106 and control eachindividual gaming machine100 in thenetwork104. In such an exemplary embodiment of the invention, many players may participate in the same game. The requisite architecture for networking a series of games is well known in the art and is not discussed further herein.
Also associated with theserver106 are one or more change stations102 (or convenient ATM) devices which instead of dispensing cash, generate a coupon usable with thegaming machines100. In an exemplary embodiment of the invention, thechange station102 may include of a second bar code reader that accepts cash out tokens. The validity of the cash out token222 is verified by either a processor associated with the change station103 or theserver106, depending on the configuration of the system. If the ticket is determined to be valid, a process that will be discussed below, the value of the ticket will be paid for by an attendant.
As is the case with thegaming machine100, in the event that a cash out token is inserted into the bar code reader, either a processor associated with thechange station102 or theserver106 will validate the cash out token by making sure that it had not already been paid or is otherwise invalid as will be discussed below. If the cash out token is valid then the corresponding value of currency would be paid out by the change station attendant. The attendant could be advised of the amount of currency to be paid to the player by a monitor display or a receipt printer, such is used in cash registers. Such receipt printers are well known.
In an alternative embodiment of the invention, thechange station102 may be more automated. For example, thechange station102 may include a second paper currency reader, a second bar code reader, and a second bar code printer for printing bar codes on a permanent storage medium. The second currency reader, second bar code reader, and second bar code printer may be the same as used in thegaming machine100. In this alternative embodiment of the invention, thechange station102 may also include a currency dispenser so that when a cash out token is inserted into the bar code reader, then paper currency and coins can be dispensed directly to the user. In yet another alternative embodiment of the invention, a coin receiver is capable of accepting coins from a player in order to print cash out tokens having a bar code, in the same manner that thegaming machine100 would print out cash out tokens that could be used with thegaming machines100.
FIG. 2 shows a gaming machine interface in accordance with an exemplary embodiment of the invention. In the exemplary embodiment shown inFIG. 2, the gaming machine includes adisplay202 and a series ofbuttons204 for use as a user interface for controlling game play. In the exemplary embodiment of the invention shown inFIG. 2, thebuttons204 include a “Bet” button for controlling the amount of the wager placed on a particular game, a “Play” button, for starting the game, a “Max Bet” button, which automatically places the maximum allowable bet on the next round of game play and a “Cash Out” button allowing the player to retrieve the monetary value remaining upon completion of play.
In addition to thesebuttons204, other buttons or other forms of user input can be utilized to allow a player to select the particular game that the player wishes to play, as well as other options. For example, a menu may provide the player with the options of playing blackjack, conventional slots, poker, horse racing, roulette, or any other game available on software. In alternative embodiments of the invention, thedisplay202 has a “touch screen” including icons representing some or all of the features associated with thebuttons204 ofFIG. 2. Through the use of a touch-screen a user can activate some or all of the features associated with the icons by touching the appropriate area of thedisplay202. The technology for touch screen menu driven devices is known. Such touch screen of the invention is sold commercially by 3M Touch Systems, Inc. and others.
The gaming machine200 also includes acurrency input206 as a first input means in the form of a paper currency reader. The paper currency reader provides a signal to the processor of the gaming machine or alternatively to the server computer controlling game play of the gaming machine remotely, where the signal indicates the validity of the inserted currency and its value. The processor of the gaming machine and/or the server then authorizes the appropriate credit to the gaming machine. While in an exemplary embodiment of the invention thepaper currency reader206 may be limited to United States paper currency, it is possible to have several different paper currency readers or one reader that recognize a variety of international currencies. The processor of the gaming machine and/or the server can have the current exchange rates for purposes of determining the credit available to the player. The paper and coin currency readers that may be utilized ascurrency input206 are well known in the trade and are commercially available from numerous companies, including Japan Cash Machine Co., Ltd. (JCM) and others.
The gaming machine200 has a second input means in the form of abar code reader208. The operation of bar code readers is well known, and in an exemplary embodiment of the invention, a bar code reader commercially available from JCM may be used. While in the exemplary embodiment of the invention, the bar code is inserted in the form of a permanent storage means, such as a paper cash out token, shown below inFIG. 3, which has a bar code on the ticket for reading by the bar code reader.
It is recognized that other forms of codes can be used in its place, such as coded magnetic strips on plastic cards. In alternative embodiments of the invention, the cash out token may be a plastic card or a portable electronic device such as a pager or cell phone, where the encoded data field and an encoded checksum field are stored electronically on the card or device. In such embodiments of the invention, the cash out token signal with an encoded data field and an encoded checksum field may be transmitted from a transmitter (e.g. antenna) located on or proximate to the gaming machine and/or change stations and received by a receiver (e.g., antenna or sensor) on the card or device through wireless communication means such as radio frequency (RF) transmission or infra-red (IR) data transfer methods. Examples of such wireless communications means include Bluetooth or WiFi enabled devices such as PDA's, mobile phones, Blackberries, or the like.
It is also recognized that, in alternative embodiments of the invention, the same input means used to accept the paper currency may be used to accept the paper tickets containing the printed bar codes. For instance, in an exemplary embodiment of the invention, the bar code reader below is integrated into the bill acceptor such that a bill or cash out ticket may be entered into the same slot, read by the same reader and stacked in the same vault. Further, in an alternative embodiment of the invention, when paper currency, a cash out token or a free play coupon is inserted into either thecurrency input206 orbar code reader208, a status indicator in the form of a visual display of the amount of the value of the ticket, currency or free play coupon may appear on the display. In another embodiment of the invention, a query to the player to verify that the displayed amount is the correct amount may also be displayed to the user. If it is not the right amount or there is some other error, then the player would be directed to call an attendant.
As shown inFIG. 2, another input to the game machine200 can be a playeridentification code reader210 which is capable of reading a specially encoded identification card, such as one having a magnetic strip, for identifying the player using the gaming machine200. The tracking of the amount of use of the gaming machines by a particular player is important to a casino which frequently provides perks to customers that use the casino to a significant extent. In certain exemplary embodiments of the invention, a room key may be utilized as the specially encoded identification card. This identification card is intended to permit the processor of the gaming machine200 or the sever in communication with the gaming machine200 to keep track of the player, the type of games played, and the amount of time and/or money played by the identified player. The processor of the gaming machine and/or the server would then store the types of games played, amount of play, time and/or money, and/or the individual player. The processor of the gaming machine and/or the server would stop tracking the individual player when a cash out token was generated by a printer associated with or contained in the gaming machine200 and dispensed by theticket output212. This system can provide a complete or comprehensive accounting of customer accounts.
In alternative embodiments of the invention, theidentification card reader210 input can also be a key pad which the player would use to enter a number or some other means of identification. Such key pads are will known and are commercially available. If no identification card or the like is inserted, the gaming machine still operates, but the player is not tracked. In alternative embodiments of the invention, once a player has inserted an identification card into a gaming machine, that player can then be tracked by the insertion of any cash out token generated by the gaming machine for that player. The player would not have to insert the identification card into a gaming machine as long as the player had a cash out token.
FIG. 3 shows a cash out ticket in accordance with an exemplary embodiment of the invention. In an exemplary embodiment of the invention, an 18-digit validation number on all of the bar-coded tickets as receipts from its games and terminals may be issued. The number of digits in the bar code could vary considerably in different implementations. In exemplary embodiments of the invention, the number of digits in the bar code may range from as few as 5 digits to as many as 50 (or more). These ticket receipts may be cash receipts, credit receipts and coupons of various types. While in most cases the tickets will be in the form of a monetary value, preprinted free play coupons not having money values associated with them, but other forms of play are possible. For example, the coupon may be used to permit the player to compete in a contest, or other promotional purposes.
As shown in the exemplary embodiment ofFIG. 3, theticket300 may contain atime stamp302 indicating the time and date the ticket was printed. Further, theticket300 may includeidentification information304. The identification information may include casino identification information for identifying the particular casino in which the ticket was printed. The identification information may include gaming machine identification information for identifying the particular game or gaming machine associated with game play and/or associated with the printing of the ticket. In alternative embodiments of the invention the ticket identification information may have player identification information obtained from the preferred player's card also inserted into the gaming machine. Player identification information may be used to ensure the game play associated with the preferred player's card that is associated with the printing of the ticket performed at termination of the game play and that both are attributed to the same player.
The exemplary ticket shown inFIG. 3 also includes theticket value306, which represents the winnings or monetary balance at the end of game play for the player to be credited and abar code308. The bar code enables the tickets to be automatically read by a variety of bar code scanning equipment. In alternative embodiments of the invention, the validation number encoded in the bar code may be of any arbitrary length that can be printed by the ticket printers in use at the time and which can be read by the bar code readers in use. In an exemplary embodiment of the invention the bar code may broken into two distinct areas. The two distinct and pre-defined areas the data field (“D”), which represents data relative to the encoding of the ticket and a coded checksum field (“C”). For example:
DDDDDDDDDDDDDDCCCC
The data field contains data that relates to the ticket produced. Such encoded data may include, but not be limited to: site identification related to where the ticket was produced, machine identification related to the machine which produced the ticket, time and/or date of when the ticket was produced, sequence information relating to the sequence number of the ticket produced (as related to the machine, site, or multiple sites), and the type of ticket produced (e.g., cash, credit, coupon, free play, etc.).
In an exemplary embodiment of the invention the checksum field (“C”) is produced after the data field is produced. The checksum field is produced as a result of taking the data field and performing some mathematical, Boolean or combination of processes on the field to produce a result. That result, the Checksum, can be used by the reader of the ticket, to verify that the ticket has been produced and transmitted correctly. A checksum of n digits in length, when defined properly, will insure, in virtually all cases, that the ticket is valid. For instance, an n-digit checksum can only be accidentally produced correctly, with no knowledge of the actual algorithm, one time out of 10ntrial, on average, as there are 10ndifferent checksums possible. The process of producing a checksum can be as simple as adding the digits in the data field and as complex as using a complex polynomial equation to produce a result. Often a process in the computer industry known as CRC-16 (Cyclic Redundancy Check-16 bit) or CRC-32 is used to produce the checksum.
The different data elements in a single field can be combined in a variety of ways ranging from a simple separating of digits for each data element to a combination of data elements using a mathematical formula or process. While the two areas (i.e., data field “D” and checksum field “C”) are shown above as distinct from each other and contiguous, there is no requirement that they be encoded that way. The data areas may be broken up and distributed through the bar code in a variety of ways, all of which are valid, as they are predefined. The number of digits allocated for each field is arbitrary as well. Some possible schemas for layout of this combined set of fields include:
DDDDCDDDDCDDDCDDDC
CCDDDDDDDDDDDDDDCC
CCDDDDDDCDDDDDDDCC
DDDDDDDCCCCDDDDDDD
Other schemas for layout of the bar code number wilt be appreciable by one of ordinary skill in the art. Additionally, in alternative embodiments of the invention, as a further protection to the checksum field the check sum data may only be presented on the ticket in the form of the bar code and not presented numerically on the face of the ticket. In other alternative embodiments of the invention the data field and checksum field may be encrypted prior to encoding and/or printing the bar code on the cash out token. The encrypted version may then be encoded and or printed on the cash out token as an additional layer of security. When another game machine or change station receives such a cash out token, then the data field and checksum field are decrypted and then the checksum is validated.
While the exemplary embodiment described inFIG. 3 utilizes printed bar codes are used as the encoding means, it is also possible to use other coding means, such as magnetic codes on magnetic strips on plastic cards. The cards would be treated the same as cash out tokens, but would require magnetic code readers and magnetic code generators rather than bar code readers and bar code printers. Other security devices, such as holograms and the like that can be visually inspected to provide further security for the ticket may be employed as well.
FIG. 4 is a flowchart directed to the creation of a cash out ticket in accordance with an exemplary embodiment of the invention. The ticket producing process begins atstep402 where the end of game play is detected by the gaming machine that produces the ticket. Next,step404 is invoked where the required data elements to produce the data field are retrieved and the data field is producing utilizing mathematical, Boolean, substitution or a combination of those processes. Step406 is then invoked where the data field is then presented to the process which creates a checksum field for production of the checksum field. When the checksum field has been produced,step408 is then invoked where the data field and checksum field can be combined according to whatever layout schema has been adopted for use in the particular application. This data is then converted to an industry standard bar code, such as a “2 of 5” bar code, instep410 and then printed on the ticket instep412. In an exemplary embodiment of the invention,step414 is invoked where at least a portion of the data relating to the ticket and the bar code produced is passed to a host computer for future use. In an exemplary embodiment of the invention the host computer creates a temporary account record which relates to this ticket and will place the cash balance in the temporary account which corresponds to the value of the ticket when it is issued. As an additional security measure, the host computer may use at least a portion of or the entire checksum field to perform a mathematical or Boolean operation on the data field prior to storing it in any database or storage medium. In this way the data cannot be retrieved by simply performing a lookup against the validated data field. The data must be transformed by this operation in order to be able to retrieve the data.
FIG. 5 is a flowchart directed to the verification of a cash out ticket in accordance with an exemplary embodiment of the invention. As shown in the flowchart ofFIG. 5, the process begins atstep502 where the gaming machine receives a ticket. Instep504, the bar code of the ticket is read and its data is converted to numeric values. In an exemplary embodiment of the invention the bar code itself contains encoding and error checking information to assure the reading device that the code has been read correctly.
Next,step506 is invoked where the n-digit bar code is then broken up, according to the predefined schema, into a data field and a checksum field. The data field is used to obtain information from the ticket. The data field may be used for means of lookup or comparison into a database which is used to provide the cash balance available for the temporary account which is represented by the ticket. Alternatively, information may be extracted from the data field for further processing. For instance, a host computer with a database relating to all the tickets previously produced may use the data presented in the data field to determine that a ticket has a certain value and has not been previously presented for use. As an additional security measure the host computer may use some of or all of the checksum field to perform a mathematical or Boolean operation on the data field prior to trying to retrieve it from any database or storage medium where it may have been stored. In this exemplary embodiment of the invention, the data cannot be retrieved by doing a simple lookup against the validated data field, rather the data must be transformed by this operation in order to be able to retrieve the data.
Step508 is then invoked to process the data field by the same checksum producing algorithm described above in reference toFIG. 4 to determine if the produced checksum is the same as the checksum contained within the bar code. If the checksums are not the same, then step510 is invoked where an indication is presented to the user that the ticket is invalid and an attendant may be notified to assist them. If the checksums do match, then step512 is invoked where the ticket is deemed valid and may have further processing performed. In an alternative embodiment of the ticket validation process, the entire bar code, including the checksum may be processed to verify its validity.
Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation. It is appreciated that other variations of the invention may be devised which do not depart from the inventive concept of the invention.