WO2000038089A2 - Amusement and premiums network - Google Patents
Amusement and premiums network Download PDFInfo
- Publication number
- WO2000038089A2 WO2000038089A2 PCT/CA1999/001201 CA9901201W WO0038089A2 WO 2000038089 A2 WO2000038089 A2 WO 2000038089A2 CA 9901201 W CA9901201 W CA 9901201W WO 0038089 A2 WO0038089 A2 WO 0038089A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- field
- bytes
- database
- bin
- long
- Prior art date
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/352—Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/61—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor using advertising information
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/51—Server architecture
- A63F2300/513—Server architecture server hierarchy, e.g. local, regional, national or dedicated for different tasks, e.g. authenticating, billing
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5506—Details of game data or player data management using advertisements
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
Definitions
- This invention relates to the field of data communications, and in particular to a method and a system for on-line global distribution and redemption of loyalty points and coupons, control of directed advertising and control of parameters related to various operations, activity software, etc.
- a transaction value is keyed in by the retailer, and a PIN number is additionally keyed in by a user.
- the bank account of the user the identity of which having been previously stored in association with the PIN number and card number, is accessed, and the transaction value is debited from the bank account of the customer.
- This amount (less a transaction charge) is credited to the bank account of the merchant identified when the debit card reader dials an administration office which is in association with the bank.
- the transaction is associated specifically with and is controlled by the issuer of the debit card.
- loyalty points for example a point for each dollar purchased on the credit card. These points are accumulated by the credit card issuer to the credit of the credit card user, and can be redeemed for merchandise or services typically advertised in a catalogue. In some cases, loyalty points are awarded by a vendor such as an airline, wherein the loyalty points can be used for airline travel with that airline. The vendor retains its own database of loyalty points accumulated against particular customers which have joined the loyalty point program.
- identity cards rather than credit cards are sometimes used in the awarding of airline miles based on purchases from certain vendors.
- the card issuer retains a single database of airline points against customers.
- the card issuer or the vendor retains a simple database to keep track of the value of points accumulated or retained after redemption.
- a card issuer may have a tie-in with several merchants to provide a discount on merchandise or services. In such a case, no loyalty points tied to a particular merchant are awarded to the customer for patronizing the merchant, but loyalty points are awarded based on use of the card per se.
- the systems are not capable of dispensing or redeeming premiums or loyalty points "on-the-spot" for certain actions taken by customers, for example for patronizing certain merchants.
- a single loyalty point database is associated with the card issuer, but not with the merchants.
- a merchant has no way of knowing whether a particular customer repeatedly purchases from that merchant.
- such systems provide and record loyalty points related to use of a card, or to a single merchant, or to a single program (such as airline points) , but do not provide loyalty points that can be traded between merchants or programs, and do not give incentive to patronize particular merchants as distinct from incentive to use a single card.
- the airline points programs which are not associated with a particular credit card also require the use of a single card, and loyalty points cannot be traded between merchants.
- the systems are also not capable of accumulating prize values or loyalty points won on games played on game terminals, nor of dispensing prizes to players, e.g. loyalty points, premiums or plays on the games.
- the systems are not capable of displaying advertising directed to specific customers who have identified themselves or have been identified at a terminal or to classes of such customers, nor of tracking what advertising has been displayed to particular customers, nor for controlling what advertising should be shown to such identified customers or classes of customers.
- the present invention is an integrated on-line system which can accumulate and decrement exchange values associated with any customer from any merchant which has authorized access to the system or by an administrator or by plural authorized administrators.
- the system provides means for the awarded exchange values for any transaction to be controlled by an administrator or by authorized plural administrators, and can in addition be varied by location of the customer, by customer activity, by time and/or date, and by past history of either the activity itself or of the actions of the customer or of changing demographics of the customer.
- the system provides means for the administrator to vary the characteristics of a software program the customer, merchant, etc. is interacting with, so that loyalty points, advertisements, premiums, scores, game difficulty, characteristics of a game and reward brackets, pricing by currency and/or loyalty point exchange, etc. can be controlled and varied.
- the program can involve scoring of sporting events, scoring of school tests, operate applications such as email, etc. or it can be a video game such as one operating in a system of the type described in U.S. patent 5,083,271 issued January 21, 1992, or on a personal or public computer (public PC) .
- a user interface to the program can be displayed on a video terminal which can be one of the games described in the aforenoted U.S.
- the advertisement can be shown in one or more frames (windows) which share the display with a game frame, or can occupy the entire display area.
- the advertisement can be directed to a particular player, or to a class of customer to which the player belongs, and/or can be scheduled based on time and/or date and/or location at which it is to be presented.
- the advertisement can be changed based on various criteria, such as the location of the display, how many times the advertisement has been run, how many times the advertisement has been directed to the customer or class of customer at a particular display or display location or at a class of locations or at plural particular or classes of locations or based on advertisements which have been shown to the customer in the past.
- Loyalty points i.e. exchange values, which can include coupons, etc.
- Game programs can be changed and varied as to degree of difficulty and currency or exchange value price to participate, competition brackets can be set up and varied, thresholds for prizes can be established and varied, prize and premium values can be accumulated for various activities such as plays, purchases, loyalty, and/or timing, customers or players can be authorized or disqualified, advertising can be directed to certain customers or classes of customers, premiums can be accumulated and dispensed and prizes awarded across any kind of commercial or non-commercial activity with controllable interchangeability, preferably from an administration terminal.
- a customer can receive a coupon at a gasbar (or can read an announcement in a newspaper) containing a question to be answered, and if answered correctly at a terminal used in the system of the present invention, a prize (e.g. a coupon for $1000 off the price of a purchase, or the awarding of loyalty points which can be exchanged for merchandise or service at participating or at all merchants) can be awarded by the system, and the accounts of the customer, merchants and administrator incremented or decremented as required.
- a prize e.g. a coupon for $1000 off the price of a purchase, or the awarding of loyalty points which can be exchanged for merchandise or service at participating or at all merchants
- the present invention thus provides for the first time an efficient way of combining loyalty point and premiums of any (rather than restricted) merchants, allows interchange of loyalty points, and at the same time gathers activity information and/or demographic information about the customers of those merchants as an effective commercial measurement tool, and so that advertising may be targeted and efficiently delivered to those exact customers which can best benefit from the advertising and those exact customers desired by the advertisers.
- merchants By the use of the term merchants, included are merchants not only of merchandise, but also of services including the services of play of various games and contests.
- a system for controlling a medium of exchange comprises:
- an administration terminal in communication with the first database for generating and downloading to the first database parameters indicative of the predetermined exchange values for various activities, from time to time.
- a system for controlling a medium of exchange comprises:
- an administration terminal on which control parameters can be input (f) an administration terminal on which control parameters can be input, (g) apparatus for receiving control parameters relating to medium of exchange values for activities carried out by the person from the administration terminal and for downloading the control parameters to the support server, (h) apparatus for transferring those control parameters which relate to media of exchange functions controlled by the regional server, to the first database, and
- a system for controlling a medium of exchange comprises: (a) plural terminals at various locations for detecting the presence of a person and of an activity carried out by the person, and for providing signals indicative of at least the activity,
- apparatus for detecting the signals, for accessing the first database and for storing data related to the activity in a record related to a class of persons carrying out the activity, in the second database, and (e) an administration terminal in communication with the first database for receiving the stored data, and for generating and downloading to the first database parameters controlling the provision of offers to persons of the same class from time to time.
- a system for controlling a medium of exchange comprises: (a) plural terminals at various locations for detecting the presence of a person and of an activity carried out by the person, and for providing signals indicative of at least the activity,
- apparatus for detecting said signals, for accessing the first database and for storing data related to the activity in a record related to a class of persons carrying out the activity, in the second database, (e) an administration terminal in communication with the first database for receiving the stored data, and for generating and downloading to the first database parameters for controlling the provision of advertising, for display on display apparatus which is part of the terminal or is adjacent the terminal, to the person or to persons of the same class, or for controlling the printing of premiums on a printer which is part of the terminal or is adjacent the terminal, from time to time.
- Figure 1 is a block diagram of a preferred embodiment of a system on which the present invention can be implemented
- Figure 2 is a flow chart of call initialization and loyalty point or coupon data interchange
- Figure 3 is a histogram of player scores against number of plays
- Figure 4 is an illustration of a database format for specifying advertisements to be played under various circumstances.
- Figure 5 is an illustration of an exclusion code signal .
- Each regional server is located at a separate regional data center, although for convenience of illustration they are all shown in this Figure in data center 3.
- Each regional server has a memory containing a corresponding database 5A, 5B...5N coupled to it.
- the corresponding memory stores not only score data, but also values of money on deposit to be credited against the playing of a game, and handicaps of players and/or games. If an activity other than playing a game is to be rewarded, the user activity can J
- the databases 5A, 5B...5N also store specialized data relating to parameters used in a game or activity, such as difficulty levels, points to be awarded for certain game activities, and other functions to be described in more detail below, as well as parameters and content relating to advertising, premiums, loyalty points, etc.
- the data to be stored in databases 5A..5N is loaded by a decision support server 7, from data stored in a database 9 with which it communicates.
- Validation and redemption terminals 11 are in communication with the regional servers 1A..1N.
- Each of the terminals 11 is comprised of a card reader 13 and preferably a bar code reader 14, smart card reader, or the equivalent, coupled to a printer 15.
- the card reader is preferably also a card writer for writing the magnetic stripe on a card and/or for updating, debiting or crediting one or more values stored on a smart card (a card which carries a processor or the equivalent and a memory) .
- the term card reader is used in a general sense, since it can include a keypad or keyboard which can be used by the customer and/or merchant.
- the customer can also or alternatively be identified by a voice identifier, an eye iris reader, a fingerprint reader, a palmprint reader, a keyed-in identity code such as a PIN number, etc.
- the printer is used to print receipts and coupons, preferably including a bar code or the equivalent.
- the card reader can be based on the type made by Verifone Corp. for swiping cards and dialing a credit or debit card administration office. 1
- a terminal 11 should be located at the premises of each associated merchant authorized to use the system, and can be located at one or plural arcades 17 or other single or multi-terminal system.
- a system which can be, but is not limited to arcade 17 which is similar to the system described in the aforenoted patent is in communication with a corresponding server, in a manner as will be described later.
- each game 19 communicating directly with a regional server via its own interface, it is preferred that it communicate with a regional server through a master game 21, via shell software which uses a particular communication protocol which can encrypt data. This will be described in more detail later.
- a database 23 is also coupled to the master game 21.
- a computer 25, referred to below as a public PC 25, can be in communication with an associated regional server 1A..1N.
- a card reader 13, bar code reader 14 and printer 15 are coupled to the computer, as well as a display 27, keyboard 28, game controls (e.g. a joystick, mouse, trackball, pedals, etc.) a CD ROM player 29, and a DVD (digital versatile disk) player 31.
- game controls e.g. a joystick, mouse, trackball, pedals, etc.
- CD ROM player 29 e.g. a CD ROM player
- DVD digital versatile disk
- An administration office 41 contains a computer terminal 43 preferably operating in a Windows tm software environment, with a display 45. Rather than a Windows'TM software environment, any type of operating system can be used, such as one which will operate under control of applets downloaded from the internet or any other network, Macintosh, OS/2, etc.
- the terminal 43 includes a database and a processor for controlling parameters of software used in the system, and can communicate with the decision support server 7 as will be described below. J
- games, advertising and parameters relating to loyalty points and/or coupons are downloaded under control of the decision support server 7 to database 9, then are distributed to regional servers 1A..1N, then are downloaded to database 23.
- the games, parameters and/or advertising are stored at the arcade 17 on local mass storage devices such as hard disk drives, digital versatile disks (DVDs) or CD ROMs (or can be stored in a semiconductor or any other form of mass storage memory) , and are enabled from data stored in the decision support server 7 and preferably downloaded to the database 23.
- the games, parameters and/or advertising can be provided via applet if desired. In the description below, and only for this example, the games and advertising will be described as being stored on DVDs (in database 23) at the arcade.
- the database will be considered for this example to be a combination of the local mass storage and semiconductor memory, but it should be understood that the data can alternatively be downloaded from database 5A to 5N coupled to the regional server, and stored for use as needed in the database 23.
- the games themselves should be written within a shell, with software "hooks" between the games and shell.
- the shell should be responsible for starting and stopping the game, altering its parameters, controlling the display of the game that is to be played, and communicating both with other games and with the regional server 1A..1N. It is preferred that each of the games should communicate with the regional server only under control of the master game 21.
- the software operated by the master game 21 should in addition be designed to communicate with each of the games of the j
- Customer accounts are retained in the database 9, and are preferably comprised of the following fields:
- Account data (customer name and PIN),
- the balance value of loyalty points associated with the customer e.g. as incremented or decremented by a device such as by an input device at a merchant location (for example by inputting via a keypad connected to the card reader 13 at a validation and redemption terminal 11) or by an administrator via terminal 43 at the administration location 41, or by operating an automatic terminal such as a coin telephone having a swipe card reader in administrative communication with regional server 1A to IN, a game machine, etc.,
- Game ratings such as skill level of the customer for variously played games, handicap values of the customer for variously played games, profiles (e.g. how much time is allocated to the player to complete various games) ,
- Merchandise orders e.g. the identity and loyalty point, premium or currency cost of merchandise that has been ordered, the date ordered, the date the order was sent to the supplier, the date the order was shipped, etc.
- the game play history e.g. for each game played, the rank achieved, number of players in a game or tournament, etc.
- the administrator characterizes each game and activity relating to merchant products and services with certain parameters, and downloads these parameters from terminal 43 to server 7. For example;, the administrator establishes game formulae for each game, loyalty points (or none) for playing each game, for patronizing particular merchants, etc.
- an identity (ID) card When a customer is issued an identity (ID) card, a PIN number is issued in a well known manner, and information re its issuance is uploaded from a validation terminal 11 to the associated regional server 1A to IN.
- a record in the database 9 relating to this customer is established by server 7.
- the record is seeded by the parameters provided by the administration terminal to the server 7. For example, upon first initiation of the record, a number of loyalty points can be deposited to the customer, and recorded in the database in field 4.
- the customer pays currency to play say, 5 video games.
- the payment value is entered by swiping the J
- ID card in a local card reader in the arcade, and by then entering the PIN number of the customer and the number of games to be played, or a currency amount into a local keypad. This amount is stored (deposited) in database field 1 (see the above field list) of database 9, after uploading from the arcade 17 via master game 21.
- the customer then goes to the game and swipes his card in a card reader associated with the game.
- the request to initiate the game is sent to the game from the card reader, and value of the game play is sent to the decision support server 7.
- Server 7 addresses database 9, and selects the record of the customer from the card number read and provisionally decrements the amount on deposit, storing the resulting pending balance. If the game is not played (e.g. if there is a power outage), the pending balance is again incremented back to the previous balance after a predetermined amount of time.
- the customer can be provided with service at any location which communicates with any regional server.
- a duplicate account is established and retained in the regional support server database 5A..5N, the records being mutually updated (synchronized) from time to time.
- the server 7 At the time of establishment of the record in database e.g. 5A, the server 7 would also store values in the remaining fields of the record. For example, it would store an advertisement value, to be described in more detail below, in field 6, indicating that no ads have been presented to the customer.
- the local database After the customer has swiped his card at a game, and thus identifies himself, the local database provides a data message to a the local system which enables the 17 selected game. If it is the first time the customer has identified himself to the local system, the regional server e.g. 1A sends a data message which enables the selected game. It also enables a DVD to run an advertisement to the game via its shell, which overlays the game in a window, or is presented prior to or with the initial, intermediate or final screens of the game. For example, the initial screen can be a "welcome to a new player" screen, with an advertisement relating to one or another of the associated merchants. The advertisements to be run are pre-established at the administration terminal 43.
- the fact of running a particular advertisement and of the customer being located at a particular game is then stored in the 10 th field of the record.
- the score is uploaded to the regional server and the rank of the player is established and is stored in the 10 th field.
- the number of plays of the player of that game, and of other games, are also stored in the 10 th field.
- loyalty points, coupons or premiums can be provided to the customer.
- a printer 15 can dispense a coupon to the customer e.g. for a discount on a food item at a fast food outlet, the serial number and value of which is recorded in the 3 rd field of the record.
- the printout can also record the score and the game that was played. 18
- the identity of the advertisement which was run is recorded in the 6 th field of the record.
- the customer in achieving a particular amount of expertise can be handicapped by the software in the regional server 1A, and the handicap value recorded in the 5 th field of the record, the rank achieved recorded in the 10 th field, and all of this information can be printed on the same ticket as the coupon, or another ticket.
- server IB searches its database 5B for a record of the identified customer, and doesn't find it. It then sends an inquiry to the server 7, which sends an inquiry to each of the other regional servers.
- Server 1A responds, and provides an indication to server IB that the customer record is stored in a database associated with server 1A.
- Server 1A then sends the record of the customer to server IB via server 7.
- Server IB checks whether the second field has sufficient balance to pay for the game. On the indication that it does, a provisional decrement is done as described earlier, and server IB sends a signal to the master game of the arcade to enable the game.
- the server IB also checks the ad view history and image last viewed, and enables the DVD at the arcade to run the next advertisement in the predetermined sequence of advertisements to the game to be played, via the game shell. The entire process is repeated as described earlier.
- the above process can be carried out using the data stored in the local database, rather than using the data stored in the server.
- the score can result in loyalty points or premiums being awarded to the player, which are stored in the account of the player.
- the customer wishes to redeem loyalty points or premiums.
- the customer can visit a validation and redemption terminal, which can be at the location of a merchant, a public PC, or at an arcade.
- the ID card of the customer is read, and an attendant types in a request on a local keyboard such as 28 to obtain the number of loyalty points, or the identities of coupons or premiums held by the customer.
- This request is uploaded to the regional server, which reads the database e.g. 5A and accesses the record of the customer identified by the card (and PIN number, if desired) .
- the data stored in the fields of the information requested by the attendant are then downloaded to the local terminal, such as computer 25, and is displayed on display 27.
- the customer can ask for redemption of the value of the coupon.
- the validation and redemption center is at a fast food outlet, and the coupon is for a discount on a hamburger from the fast food outlet
- the merchant can sell the hamburger at the required discount, take the coupon from the customer, and key in the coupon on a keypad or read a barcode or magnetic stripe or the equivalent carried by the coupon, J
- the local computer or the equivalent then uploads this data to the regional server 1A, which records that the coupon has been rendered. While this transaction is going on, there could be a display adjacent the redemption equipment.
- the regional server in learning of the presence of the customer at that location from the ID card swipe, can then look up the advertisement viewing history from the 6 th field of the customer's record in the database, and send a control signal to the computer or the equivalent at the redemption center, to enable a local DVD 31 to run the next advertisement in a predetermined sequence to the display which is adjacent the customer. Loyalty points can be awarded to the identified customer based on viewing a particular advertisement, and stored in the database as described earlier.
- loyalty points can be redeemed.
- the customer can attend a redemption center which can be a merchant, or a special catalog store.
- the regional server e.g. 1A accesses the record of the customer using his ID and PIN number in database e.g. 5A, and downloads the information to a local display. Following redemption of a particular number of loyalty points for the merchandise or services requested, the 4 th field of the record of the customer is decremented by the value of the loyalty points redeemed. It should be noted that the system is global, in that any merchant can have a redemption terminal. Upon redeeming loyalty points which have been accrued by the customer by playing games, viewing advertisements, or J
- the redeeming merchant can be owed a certain value based on the redemption.
- This value or the equivalent in loyalty points can be stored (credited) in a database 5A related to the merchant.
- a customer purchases goods from that merchant a certain number of loyalty points can be awarded the customer, and the balance debited from the balance of the merchant.
- Administrator service fees in the form of loyalty points can be accrued to an account of the administrator for each transaction. In this manner, loyalty points become a medium of exchange for the customer, the merchants and the administrator. Loyalty points or a monetary amount can be decremented from an account of each merchant for each play of its advertisement.
- the administrator and merchants can settle the accounts, e.g. collecting a prescribed monetary value for negative balances of merchant loyalty point accounts, and paying a prescribed monetary value for positive balances of merchant loyalty point accounts.
- Loyalty points can also be redeemed by the customer for any merchandise or service at any merchant location or venue at which a service terminal is located, or for game play at an arcade.
- synchronous and asynchronous Two types of data interchange are preferably used in the system: synchronous and asynchronous.
- the client initiates a connection to a server, sends a request, and await a reply, in a manner similar to credit card authorizations in retail stores.
- An example of this type of interchange in the present invention is the validation of a prize receipt.
- Asynchronous interchanges are used for database J
- each server can initiate two types of connections to client servers: asynchronous dial-in to the transaction network at relatively low speeds (e.g. 2400 baud or higher) for short duration queries, or via a dial-in PPP connection (e.g. 28.8 kbaud or higher) or ISDN to perform sockets-based communication.
- asynchronous dial-in to the transaction network at relatively low speeds (e.g. 2400 baud or higher) for short duration queries, or via a dial-in PPP connection (e.g. 28.8 kbaud or higher) or ISDN to perform sockets-based communication.
- the data transmission protocol used is preferred to be bi-directional full-duplex asynchronous 23 communication using X.25-based packet switching, but other communications technologies, e.g. ADSL can be used, as they become widely available.
- the event data Prior to application to the network, the event data should be packetized, inserted into variable length telecommunication packets, compressed and encrypted using the encryption key of the location. Other fields in the telecommunication packet need not be compressed or encrypted.
- the received packets should be decrypted, decompressed, and extracted from the telecommunication packets.
- the transmissions are preferably initiated from the transmitting entity (dial-in) rather than being polled.
- the calls can be normal (e.g. to pass data re start, game plays, alarms, meters, etc. to and from the client, stored in a queue at that location for subsequent transmission), urgent (e.g. such as customer information when a card is swiped), and receipt validation (e.g. to verify calls used by validation terminals) .
- Terminals communicating within a single location can use lObaseT twisted pair wiring and 802.3 (Ethernet*TM) standard for data link management, or higher speed Ethernet or other technologies, as they become available.
- the regional servers can accept connections from either the point-of-sale transaction network or from a TCP/IP internet/intranet connection (using Berkeley sockets) .
- the same application-layer protocols operate over each connection, with the possible exception of synchronization, which can operate only over TCP/IP connections, if desired.
- the four types of packets referred to above can have a number of subtypes, as follows: Packet Possible Subtypes Type:
- Receipt Validation Receipt Validation Response Subscriber Information Subscriber Information Response Account Withdrawal Account Withdrawal Response Account Deposit Account Deposit Response Subscriber Account Data Subscriber Account Data Response
- the client and server exchange context negotiation packets to configure the session communications as shown in Figure 2 .
- data packets can begin .
- the client sends a context negotiation packet with the settings it wishes to use for the call (including the encryption and compression parameters) .
- This packet also tells the server what type of call this is ( e . g . events , 25 queries, etc.).
- the server examines the context negotiation packet and determines whether the values are acceptable. If so, it sends a context negotiation packet with the same settings to the client.
- the client acknowledges this packet to the server, and the call is considered to be established.
- the server If the server cannot use the context provided by the client, it sends its own context negotiation packet back to the client with its preferred settings (e.g. a "lower" standard for compression or encryption) . If the client agrees with these settings, it sends an acknowledgement to the server, and the call is considered to be established.
- the preferred settings e.g. a "lower" standard for compression or encryption
- the contents of the context packet are sent uncompressed, but encrypted using the terminal's 16 byte license key and a TEA encryption algorithm.
- the terminal cannot operate unless the license key entered at the machine matches the key entered through the server administrative application.
- NAK unacknowlege
- the server should retransmit session key packets, working from best to worst encryption (retrying a number of times in case of communications faults) until the client returns an acknowledgement. If the client never acknowledges the packet, the server should close the connection. Likewise, if the server never acknowledges the packet from the client, the client can close the connection. The client is free to retry with a new socket on the same call .
- the client may immediately begin transmitting data packets to the server. Then a PPP connection is established, the client should create a socket connection to one of the TCP ports listed above. Packets can then be sent over this socket connection. Multiple socket connections can be opened to allow parallel processing of synchronization, event and query traffic.
- Query exchanges preferably occur in lockstep over a single connection.
- a terminal issues a query, it waits on the same connection for a matching query response to arrive.
- the terminal then processes the query response, sends an acknowledgement, then closes the connection or continues with other query exchanges.
- a query initiates the download of table and/or file information to the client, the downloads should take place before the server sends the query response.
- the query response is received at the client, it can assume that all downloads are complete.
- Event transfer from clients to servers follows a lockstep acknowledgement cycle in which the client sends event packets and the server sends acknowledgement or nonacknowledgement packets in response. Events should remain in the client's event queue until an acknowledgement has been received from the server. When all events have been sent and acknowledged, the client can close the connection.
- the client and server begin by exchanging inventory packets.
- the client sends an inventory of all data currently loaded, and the server sends an inventory of what the client should have (including table records and files) .
- the client should use the server's inventory to delete all records and files that are not present at the 27 server.
- the server should use the client's inventory to build a set of table and file download packets to send new information to the client.
- the server should begin sending table and file download packets.
- the client should respond to these with either an acknowledgment or nonacknowledgement packet.
- the server When the server has sent all records, it should send a table download packet with 0 records to indicate the end of data. The client is free to close the connection at this point.
- All packets should be framed with a consistent header and trailer, to allow the protocol processor in the receiving server or terminal to distinguish between different versions of requests.
- a preferred packet is as follows:
- Control packets 1 byte Subtype - the following values are defined:
- Acknowledgement packets indicate the successful receipt of information.
- the total size of the framed packet will be 6 bytes
- Negative Acknowledgement packets indicate that a transmission was unsuccessful or that the receiver encountered an error processing the data.
- the total size of the framed packet will be 7 bytes.
- Location ID will be 0 in packets from the client. It will be filled in with packets from the server with the location ID configured for the terminal ID from the client, or 0 if the terminal is not configured in any location. Terminals that are not configured in any location can still access the server for some limited functions. However, if the licensing information is not correct, the server will never send a Context Negotiation packet to the client.
- the license key is a value entered through the user interface at the terminal, and entered by the operator when configuring the machine in the administrative application. It is used to encrypt the encrypted area of the Context Negotiation packet. When the packet is received, the receiving node decrypts the encrypted area with its stored license key, then compares that key with the decrypted version from the packet.
- the machine is not licensed 31 correctly and the Context Negotiation will not succeed until this is corrected.
- a message indicating incorrect license information should be displayed or printed.
- the event will be logged for reporting and/or alarming.
- connection type will be one of the packet type codes (0x80 through 0x83) indicating the type of connection being made. This will indicate to the server which protocol processor to launch for the connection. Note that if more than one type of activity needs to occur on one connection, the client can send a Context Negotiation packet during the call to renegotiate the call type (and other parameters of the connection as well) . When this occurs, all in-progress operations are completed, then renegotiation occurs.
- the contents of the key data will depend on the encryption type, as shown here: j
- Key length is 5 Key length is 5, key data can vary Key length and key data can vary
- the terminal ID and location ID are both set to 0.
- the contents of the packet will not be encrypted and should have the following values:
- Encryption type 0
- the license key field will be filled by the terminal's license key. This allows the server process to enforce unique license keys and prevent services from establishing their own connections to the server without their own valid license keys. Ping
- Ping packets are used to test communications to the server.
- the total size of the framed packet will be 6 bytes.
- Ping Response Ping Response packets are sent in reply to a Ping packet.
- the total size of the framed packet will be 6 bytes
- Open Query Link A request that a link to the server be created that is capable of supporting query traffic (or increases the reference count of an existing link) .
- the total size of the framed packet will be 6 bytes.
- Field Size: Description: 1 byte Packet Type 0x80
- This operation is intended for use between slave and master terminals within a location or between processes on a single terminal.
- the recipient On receipt of this packet, the recipient should establish a connection to the server suitable for query traffic. This may mean forwarding a similar request to the next higher server in the hierarchy.
- the total size of the framed packet will be 6 bytes.
- Open IP Link A request that a link to the server be created that is capable of supporting IP traffic (or increases the reference count of an existing link) .
- the total size of the framed packet will be 6 bytes.
- Field Size: Description: 1 byte Packet Type 0x80
- This operation is intended for use between slave and master terminals within a location or between processes on a single terminal.
- the recipient On receipt of this packet, the recipient should establish a connection to the server suitable for all types of traffic. This may mean forwarding a similar request to the next higher server in the hierarchy.
- 0x30 Modem is connected 0x40 Modem is authenticating High bit indicates processing is suspended 0x80 Processing suspended 1 byte Query status High bit is one if a query is in progress
- Bits 0-6 indicate the percentage complete
- the total size of the framed packet will be 10 bytes.
- Link Status to determine when processing has been suspended.
- the total size of the framed packet will be 6 bytes.
- the total size of the framed packet will be bytes .
- Defined bits include:
- Sent by the communications process on the master terminal in response to a Synchronize packet indicating that the process will begin the synchronization as soon as possible.
- the total size of the framed packet will be 6 bytes.
- Receipt validation packets are traditionally sent by validation terminals, but can be sent by any authorized ADMIN terminal. Receipt IDs are printed on all receipts or coupons generated at ADMIN terminals. j
- the receipt ID is printed in two formats - a bar-code symbol using the Code 39 symbology, and a 15-digit numerical string, printed in 5 groups of 3 digits.
- This packet is also used to redeem receipts and loyalty points the subscriber has on account. This is typically done by game terminals, following a Subscriber Account Information query to gather the current account information.
- Receipt validation packets have the following data structure:
- the length of the receipt data governs its format.
- the formats supported, and their lengths, are shown here :
- the receipt ID should appear in the packet in the same order as entered or scanned from the receipt.
- For numeric IDs send the ASCII code for each digit.
- For bar-code format send the ASCII codes for the bar-code symbols as defined in the Code 39 bar-code symbology. Receipt Validation Response
- the server When the server receives a Receipt Validation query, it will attempt to validate the receipt ID in the packet, and will return this response packet with the results.
- Receipt validation response packets have the following data structure:
- the authorization code will be an ASCII string consisting of digits only. It will always contain 15 digits.
- Subscriber information queries are sent by clients when a subscriber logs on to a terminal and that subscriber' s information is not in the local database cache. This query will cause table and file downloads between the query and the response.
- Subscriber information request packets have the following data structure: Field Size: Description:
- the card data should be filled with the 10-digit ID read from the NANI card followed by 6 spaces. If the card type is 2 or 3 (Credit or Debit card) , the card data field should be the data read from the PAN field on the card stripe (either track or track 2) .
- the card data field should be filled with 14 characters of the player's name followed by 2 spaces.
- the card data field should be filled with 10 characters of the player' s name followed by a 4-byte representation of the players SSN (treated as an integer, stored LSB first), followed by 2 spaces. This is the only case in which non-ASCII data is stored in the card data field.
- Subscriber information response packets have the following data structure:
- this packet will be preceded by a one or more table and/or file download packets containing the subscriber information.
- the response packet is received, all subscriber data will have been downloaded to the terminal.
- Responses with status codes 1 or 2 will be returned right away.
- Account withdrawal packets have the following data structure: 43
- the server will enforce limits on the maximum and minimum amounts for which a withdrawal can be made.
- Account withdrawal response packets have the following data structure:
- Account deposit packets have the following data structure:
- the server When an account deposit request is made, the server will attempt to perform the deposit, then will send this response packet to the client with the results.
- Subscriber Account Data Request This query is sent by clients when a subscriber requests a full report on his or her current account status.
- Subscriber account data request packets have the following data structure: Field Size: Description:
- Subscriber account data response packets have the following data structure:
- the terminal When a redemption game has been played that awards a prize, and the prize has a limited number of units available (a non-zero value for the NUM_REMAINING field in the database) , or that wins a prize that includes a pool amount, the terminal should immediately issue this query to update its local prize information.
- This packet permits prize pools to be maintained across several locations, without the chance that more prizes that are available will be given out. It also allows the server to update the local pool value so players can see pool contributions from multiple locations.
- Winning redemption play packets have the following data structure:
- the subscriber ID may be 0 if the redemption game is unidentified. Winning Redemption Play Response
- a winning redemption play query When a winning redemption play query is received at the server, it will adjust the number of the awarded prizes remaining (if that number is limited) , and/or it will calculate the pool amount to award to the player based on the current value of the collective prize pool. (If the par level has an associated pool amount) . It will send this response packet back to the terminal, indicating the amount of the pool the player should be awarded and updating the pool value and number of prizes remaining as appropriate.
- Winning redemption play response packets have the following data structure: 48
- a subscriber ID request is used when a terminal needs to register a new player who does not have a NANI card. It generates a unique, unassigned subscriber ID that the player's card data can be associated with.
- Subscriber ID request packets have no data.
- the packet header is sufficient to convey the request.
- this request Upon completion, this request will have registered this ID as "allocated but unassigned".
- the terminal should send in a New Subscriber Event to assign the ID to the player.
- Subscriber ID response packets have the following data structure: Field Size: Description:
- Credit/debit request packets have the following data structure:
- the card format, card data and expiration date fields should all appear exactly as read from the magnetic stripe on the card.
- the PIN should be entered by the player for debit cards only. 50
- This request is used when a player wants to save the state of a game or other service (including the user interface shell) for later restoration (on this or another terminal) .
- Save State request packets have the following data structure:
- Terminal ID on which the state is being saved 4 bytes Subscriber ID 2 bytes PIN 4 bytes Service ID
- This packet is sent to the server to obtain a File ID. That file ID can then be used to upload the save state file to the server.
- This request is issued when a player wants to restore a state that was saved previously on this or another terminal.
- the server will return the File ID of the save state file, and if the download flag indicates a download is required, it will download the save state file between the request and the response.
- Restore State request packets have the following data structure: Field Size: Description:
- the server When the server received a restore state request, it will search for the saved state data, validate the integrity of the file, and return the file ID to the client. If the client requested a download of the file, the file will be transmitted before the response is returned.
- Restore State response packets have the following data structure:
- This request is used to associate a new card number with an existing subscriber. This allows players to use multiple cards (including their name or name/SSN combination) to identify themselves to the network. This request will succeed only if the new card ID is unique throughout the entire ADMIN network.
- New Subscriber Card request packets have the following data structure:
- Terminal ID 4 bytes Subscriber ID 2 bytes PIN
- New Subscriber Card response packets have the following data structure:
- Reserve merchandise request packets are used to reserve an item of merchandise.
- the requester can specify attribute values for the item, which the server will try to match.
- Reserve Merchandise response packets indicate to the requester whether the reservation was successful, and if so, what the actual attribute values of the reserved item is. If the requested quantity could not be met, the largest quantity that could be reserved is returned.
- Purchase merchandise request packets are used to purchase merchandise that was previously reserved with a Reserve merchandise query.
- the requester can specify attribute values for the item, which the server will try to match.
- Terminal ID 4 bytes Subscriber ID 2 bytes PIN
- Purchase Merchandise Response Packs verify to the requester that the purchase has been processed by the server and that the money should be deducted from the player's funds (either account fees or cash).
- Purchase merchandise response packets have the following data structure:
- Release merchandise request packets are used to release merchandise that was previously reserved with a Reserve merchandise query.
- the requester can specify attribute values for the item, which the server will try to match. j
- Purchase merchandise request packets have the following data structure:
- Terminal ID 4 bytes Subscriber ID 2 bytes PIN
- Release merchandise response packets verify to the requester that reserved merchandise has been released.
- a request for a subscriber' s current ranking in one or more tournament brackets This can be used to request ranking in brackets that have ended and are beyond their posting period.
- Subscriber ranking request packets have the following data structure: J
- Terminal ID 4 bytes Subscriber ID 2 bytes PIN
- This packet contains the subscriber's current position and ranking score in each of the requested tournament brackets that the subscriber has participated in. If the subscriber has not yet played in one of the requested brackets, or the bracket is not found on the server, it will not be included in the list.
- Subscriber ranking response packets have the following data structure:
- Event packets are transmitted on sockets connected to the Event services IP port, or over an asynchronous POS network connection. In either case, they use a transmit-ack lockstep exchange.
- the client transmits an event packet
- the server responds with an Ack. If the server does not respond within 1 second, the client resends the event packet up to 5 times, then fails and moves on to its next event. If the server sends a Nak, the packet should be resent right away. These timeouts may need to be tuned for Internet-based transmission.
- the entire data portion of the event packet is encrypted using the encryption parameters negotiated for the connection. Alarm
- Alarm event packets have the following data structure: Field Size: Description:
- Variable Alarm data The content of this field depends on the alarm type. The formats for each defined alarm code are shown below. (Pad data portion of packet to even 8-byte boundary with zeros)
- Alarm events are queued to the server as soon as they are detected. Alarms of the following types are considered critical and should be transmitted right away:
- tournament play event packets have the following data structure:
- Redemption play event packets have the following data structure:
- Terminal manufacturers should support as many of the following pre-defined terminal meter IDs as possible, as well as any additional meters available:
- Terminal meters should never reset to zero. They should accumulate in 32-bit fields over the lifetime of the terminal. Relative values will be computed between two consecutive readings at the database. Ad Statistics
- Ad statistics event packets have the following data structure:
- Ad statistics are accumulated on each terminal and queued at midnight each night (or whenever the terminal detects the current day has changed, in case it is powered off at midnight) .
- the packet reports all ad plays for the day.
- the ad play records can be deleted from the terminal, and a new day's record keeping begun.
- the queued entry must not be deleted until successfully received at the server and acknowledged. Service Accesses
- LSB first 4 bytes Subscriber ID (LSB first) 4 bytes Cash funds used (LSB first) 4 bytes Account funds used (LSB first)
- This packet tracks all accesses to any service on the terminal. Each time a player plays a game or engages in a session in any other service, the data should be stored. This packet should be generated each evening at midnight for the day's service accesses (or whenever the terminal detects the current day has changed) .
- Down Time Down time event packets have the following data structure:
- This packet tracks all down times experienced by a terminal. Games should periodically update some nonvolatile timestamp while they are running, and then test this value on powerup to see how long the power outage was, and report this as down time. When a technician administratively takes the game down through a service menu, this is also logged in this packet.
- New Subscriber New subscriber event packets have the following data structure:
- New subscriber events are queued when players register a new card. They are queued at the time the data is entered, but do not need to be sent right away. However, if the player subsequently plays any games that generate queue entries, the terminal must ensure that this event is transmitted to the server before any game plays for that player. This is to ensure that the server has established an account for the player before attaching a game play to it.
- New team event packets have the following data structure:
- New team events are queued when teams register. They are queued at the time the data is entered, but do not need to be sent right away. However, if the team subsequently plays any games that generate queue J
- the terminal must ensure that this event is transmitted to the server before any game plays for that team. This is to ensure that the server has established an account for the team before attaching a game play to it. Issued Coupons
- Issued coupons event packets have the following data structure:
- Loyalty Point awards have the following data structure:
- This packet tracks all loyalty points awarded by a terminal. This packet should be generated each evening at midnight for the day's awards (or whenever the terminal detects the current day has changed) . Synchronization Packets
- Inventory packets have the following data structure:
- Terminal ID issuing the request (or 0 for server inventories) 2 bytes System software version (LSB first) 2 bytes Number of records (LSB first) (n) 1 byte Table ID the record belongs to 4 bytes Record ID 2 bytes Number of files (LSB first) (m) 4 bytes File ID (LSB first)
- Table Download Downloaded table records are inserted directly into the database, using the record ID as a key. Any existing records with the same record ID are overwritten.
- a table download packet with 0 records is used to indicate no more data.
- Table download packets have the following data structure:
- Retrieve file request packets have the following data structure:
- This packet is sent to the client immediately if the requested file is up to date, or does not exist, or after a series of file download packets if the file needs to be downloaded.
- the packets can add a field (e.g. 4 bytes) which identifies the customer.
- a field e.g. 4 bytes
- the administration terminal 43 contains a database which specifies the entire system, in subdatabases which can be specified as classes.
- the content of the complete database, or the content of each subdatabase can be specified by a single administration entity, or any can be specified by authorized suppliers. In the latter case, the content of the subdatabases can be filled by communication between the terminal 43 and suppliers' terminals, using the system shown in Figure 1.
- Subdatabases are preferred to relate to the following: Suppliers Locations
- VALTM is a standard profile descriptor which has been adopted by some companies. VALs or class systems used by other companies can be stored and used in addition to or as a replacement for the demographic classification described herein.
- Game Software is an example of the above.
- a field of the above can be the identification of a game which is located on a CD ROM, hard disk drive, DVD or J
- Another field can be an algorithm which controls the parameters of the game.
- Another field can store score brackets which a player must reach in order to win a prize.
- Another field can store timing information which can be used to modify the brackets.
- Other fields can be filled with other data required for the game .
- the other subdatabases can be similarly filled with data to specify the operation of each parameter of the system.
- a merchant can specify a premium related to the merchant's store as a prize to the player of a game at an arcade nearby to the store.
- a field in the prize or coupon subdatabase can point to the game or games for which the premium or coupon is to be distributed, another can specify a score bracket to be achieved (which can be >0) by the player in order to win the premium or coupon, etc.
- the subdatabases are downloaded to the decision support server 7, which stores it in its database 9.
- the decision support server then downloads the data as related to the various peripheral terminals to the associated regional servers, which in turn stores required data in their respective databases 5A to 5N, and downloads the data related to the respective terminals to those of concern.
- regional server 5A downloads initialization parameters to the master games 21 in the arcades in which authorized game machines are located which can communicate with the regional server 5A. It also downloads initialization parameters to the software at the public PCs with which it can J
- the initialization parameters may initialize or authorize operation of particular video games, with particular score brackets, at the arcade 17 and at the public PC.
- the initialization parameters may also initialize a program at the public PC which controls acceptance of payments, and/or acceptance of orders for merchandise, and/or redemption of premiums, etc., and also controls transmission of data to the regional server which updates the account of the customer in currency or other media of exchange such as loyalty points, etc.
- Table 1 which is attached at the end of this specification describes preferred subdatabases to be established initially at the administration terminal, which specify games, software, advertisements and other matters, and their parameters, which are downloaded to the terminals in a manner as described above.
- Each of the subdatabases is headed by a table name, and each of the fields describes the content of the field; its content and use are self evident from the name chosen.
- parameters can be downloaded for the operation of a game.
- the shell of a game can have a requirement for score formulae to be inserted.
- the score formulae can be determined at the administration terminal, and downloaded as noted earlier, as one or more parameters of the game.
- a formula can be determined, e.g. (S00 + 5) * S03 to determine an output score for dots, for example.
- the formulae can be modified by a player rating, the player having been identified by his ID card that has been swiped.
- the formulae can be modified by the time of day, the number of games played in a certain time interval, the score brackets achieved by players in a certain time interval, etc.
- a game can be refreshed by formulae which change the object of a game.
- An easy game can be made more difficult or different based on the formulae for a particular player profile.
- Loyalty points, coupons or other prizes can be awarded based on different formulae. These can be specified by different suppliers' terminals interacting with the administration terminal, or solely at the administration terminal. Prizes can be awarded based on a history of plays at a particular location. Par level and score brackets can be automatically adjusted.
- a histogram is shown of scores of a game against the number of plays achieving the scores. Within the region A, the top 10% of scores occur.
- a supplier determines, through the administration terminal, that the best prizes should be awarded for the scores in region A, the next best prizes for the scores in region B, and the lowest prize for the scores in region C.
- the software can store the scores, and supply the scores to the game shell software to adjust the regions A, B and C, depending on how well and how many players play, and the history of prize redemptions at the particular game location, as specified by parameters input at the administration terminal. This can consist of adding the scores together, and if there have been prize redemptions in excess of a predetermined number established at the administration terminal, skewing the scores, or multiplying the scores, by a number or game handicap value.
- This process of skewing in effect varies the shape and placement of the curve shown in Figure 4, and provides an automatic par or bracket adjustment for the game.
- the software can also keep track of a player's score on a particular game and store it in the player's database, and can forbid the awarding of a prize to the player for a particular game within a certain time interval or within a certain arcade. This will stop a good player from collecting too many prizes or too large a prize on a single machine if the number of players is low, or if the player monopolizes a game.
- a key aspect of the system is to control the advertising shown to specific subscribers. Advertising can be shown in "slots", e.g. frames on a video game or public PC display.
- the administrator can specify advertisement types as indicated in the matrix of Figure 4 as "Ad Target Types to Play", i.e. types of ads for specific matched demographic player types.
- the first column in the matrix specifies "When To Play” . For example, when no player is present, advertisement types "0x00” followed by “Location Attract”, followed by “Terminal Attract (for this J
- 77 terminal's ID or a broadcast ID)" are specified.
- an unidentified player e.g. by detecting a body using an infrared detector
- an additional advertisement "0x01” is run immediately following advertisement "0x00”.
- the entire matrix is filled out at an administrative location and is stored at the administration terminal 43 database, and once complete, it is downloaded to the decision support server 7, and stored in its database 9. It is then downloaded to the regional server, where it is stored in database 5A, and is downloaded to the master game 21, where it is stored in database 23.
- the master game 21 then controls the local DVD or CD ROM in accordance with the local condition (when to play) , to run the advertisements identified in the matrix.
- One of the parameters that can be used in an advertisement subdatabase is a demographic limit.
- a field parameter can specify that playing of an advertisement for a toy doll can be logically nulled in the event that the location of the game, or the location of the identified player, is in a bar. This information can be downloaded with the initialization data for an advertisement and/or for a player.
- the advertisement specified in the database matrix or the equivalent stored at the database 23 of the master game 21 is indicated to the game shell to be loaded from the DVD or CD ROM.
- the game shell inserts the advertisement into a time slot and window (or full screen) on the game (or public PC or other form of) display. Unless the presence of a player, identified or not, has been detected (e.g.
- the master game accesses the database matrix or the equivalent and causes the next advertisement to run via the shell and be displayed.
- the master game (or public PC) software accesses the advertisement matrix in the database 23, and determines that a different schedule of advertisements should be run. It then indicates which is the first of the advertisements in this schedule, and causes it to run via the shell, as described above.
- a player will typically interrupt an attraction mode advertisement by indicating that he wishes to play a game, e.g. by swiping his card in the card reader of a game, or by depositing coins in the coin acceptor of the game and keying in an identification code.
- the game software will then indicate this to the master game, which stores an indication in the indicated subscriber's database the identity of the last complete advertisement that the subscriber has seen. This is stored in the table "SUBSCRIBER_AD”, under "AD_ID” (See Table 1 located at the end of this specification) .
- 79 matrix is controlled by the master game or public PC to be displayed.
- table "Ad_Target” contains fields which specify the minimum and maximum daily exposures, and the minimum and total daily exposures of an advertisement. These values can be based on sales of the advertisement, and are specified by the administrator.
- the field AD_ID stores the identity of the advertisement
- CONTENT_ID identifies the file(s) that make up the advertisement (video clips, audio, image, etc.),
- the field NEXT_AD_ID identifies the advertisement to be run immediately following this one
- the field MAX_VIEWS_PER_PERSON specifies the maximum number of times the present advertisement should be shown to an identified subscriber
- the field FLAGS can be used to for various purposes, such as inhibiting a specified ad from playing e.g. inhibiting plays from bars, casinos, arcades, general audiences, men, women, male teens, female teens, etc.
- advertisements can be selected based on an algorithm.
- a random number e.g. between 0 and 9, say 5
- That random number 5 can identify e.g. a video or slide advertisement to be run. Following running, that random number can be added to another predetermined number (e.g. 3), to identify the next advertisement to be run, e.g. advertisement number 8. Following running of advertisement number 8, that number can be added to another predetermined number (e.g. 7), to identify the next advertisement to be run, e.g. advertisement number 15, etc.
- the selection of which advertisement to run can cycle back to the beginning, or once a predetermined highest number has been reached, another random number can be selected and the process started again.
- advertisements that are selected for playing have been filtered through a schedule of particular advertisements. It is preferred that they should also be filtered by exclusions, for unsuitable advertisements. For example, cigarette advertisements or advertisements containing unsuitable subject matter can be excluded from certain locations, and competitor's products can be excluded from certain locations.
- exclusions URCs
- the field RECORD_ID in this table stores the record identity.
- the field AD_ID stores the identity of the advertisement against which the URC is to be applied.
- the URC can be comprised of a data field illustrated in Figure 5.
- the numeric value indicates the URC restriction code number.
- the bit in the flag indicates IS or NO, depending on whether it is set or not.
- the code e.g. J
- the code 1 can mean "underage".
- the flag is set (i.e. indicates IS) .
- an underage person such as age 17 years (as can be indicated by his identity on e.g. the swipe card and his age statistic taken when the subscriber is first registered) is indicated as being at a particular location by him swiping his card at a validation and redemption center, a public PC or at a game in an arcade, for example, the advertisement is filtered through the URC, and is not shown for a time period.
- the time period can be a predetermined interval, or until a game played by the subscriber has been terminated, or can last for a time following termination of the game.
- advertisements should thus be construed to include messages of any type, and presented in any way, such as by still picture, video, audio, etc.
- display should also be construed to include any form of presentation, including audio, video, tactile, odor dispersion, etc.
- a customer may attend a validation or redemption terminal location at the location of a merchant, or at an arcade, or at the location a public PC, and wish to enter credits, or wish to be registered in the system. Entering of credits can be effected by an attendant keying in relevant information to a terminal, J
- an automatic terminal such as a card vending machine which provides instructions how to proceed. If there are no credits to be entered, the customer should choose a PIN number, which is recorded in a hidden manner (such as in a magnetic stripe or in the memory of a "smart card” carried on the card) , and the card is dispensed or personally given to the customer. If a currency credit is to be posted, the customer will pay the attendant or deposit money into the card vending machine, which is recorded against the identity of the customer.
- the data entered into the terminal is then uploaded to the regional server e.g. 1A, and is stored in its associated database 5A.
- the customer now will undertake certain activities, such as purchasing goods or services from any of the merchants registered in the system, or play games at the arcade. If the customer plays games at the arcade, and wishes to use the credit balance in his account to play, he will swipe his card in a card reader at the game, which identifies him and the value to be debited from his balance. If he wishes to purchase goods or services against his credit, or purchase a different service offered at the public PC (e.g. purchase printing or communication services) his card will be swiped in a card reader at the location of the merchant where he wishes to purchase the goods or services or at the public PC. In any such case, the identity of the customer, the location of the customer, the identity of the merchant, game or public PC, and the amount of the debit will be uploaded into and stored in the database J
- the administrator had already entered into its database using terminal 43 loyalty point values for certain activities, which had been downloaded and stored at database 9, and then loaded to databases 5A..5N. Therefore for each activity undertaken by the customer for which loyalty points are to be awarded, they are credited to the customer's account stored in the customer's database of the regional server. These loyalty points can then be used as a form of scrip by the customer, apart from, or with cash deposits.
- the administrator can specify and store records in the aforenoted databases that premium coupons should be dispensed for the customer at the determined location of the customer via a local printer, for defined activities undertaken by the customer.
- Loyalty points, game credits for future play and/or coupons can also be awarded to the account of the customer and/or dispensed when predetermined scores or score brackets are achieved on the games (whether due to individual play or in tournaments) by the identified customer player.
- the amounts of the loyalty points, game credits or coupons can be varied by time, by location, by number of players having played the game or tournament within a certain time interval or within certain clock times, by number of players, by demographic of the player, by difficulty of the game, by game handicap, etc. All such variations can be established at the administration location by means of a matrix (or form) to be filled in, such as shown in Table I attached J
- the administrator can indicate a conversion of loyalty points to currency, for redemption or for use to purchase goods of particular ones or of any goods or services provided by member merchants.
- a customer When a customer wishes to redeem a coupon, the customer presents it to a merchant, public pc operator, public pc, etc., its bar code is read by a bar code reader at a validation and redemption terminal, and the customer's identification is read from his card by a card reader, at the validation and redemption terminal.
- the identification (and value, if desired for greater security) of the coupon is uploaded to the regional server, and the database is accessed using the identification of the customer.
- the identity of the coupon is then checked in the customer's record, and if the coupon had been validly recorded, a message is sent to the validation and redemption terminal acknowledging the validity of the transaction.
- An acknowledgement is entered into the terminal and is uploaded to the regional server, which either marks the coupon record as having been used, or deletes it from the customer's record.
- information of the awarding, and subsequently of the redemption of the coupon is entered to database 9 via the decision support server, to provide a statistical report to terminal 43 either immediately or from time to time as to volumes and identities of services used by the customer or by groups of customers, by demographics, etc. and coupons and loyalty points awarded and redeemed, and the identity of the merchant or terminal performing the redemption.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU17637/00A AU1763700A (en) | 1998-12-22 | 1999-12-16 | Amusement and premiums network |
EP99960734A EP1145175A2 (en) | 1998-12-22 | 1999-12-16 | Amusement and premiums network |
CA002354408A CA2354408A1 (en) | 1998-12-22 | 1999-12-16 | Amusement and premiums network |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21801898A | 1998-12-22 | 1998-12-22 | |
US09/218,018 | 1998-12-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2000038089A2 true WO2000038089A2 (en) | 2000-06-29 |
WO2000038089A3 WO2000038089A3 (en) | 2000-11-09 |
Family
ID=22813426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA1999/001201 WO2000038089A2 (en) | 1998-12-22 | 1999-12-16 | Amusement and premiums network |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1145175A2 (en) |
AU (1) | AU1763700A (en) |
CA (1) | CA2354408A1 (en) |
WO (1) | WO2000038089A2 (en) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1106219A2 (en) * | 1999-11-30 | 2001-06-13 | Midway Amusement Games, LLC | Method of authorizing free play of an amusement game |
WO2002008969A1 (en) * | 2000-07-24 | 2002-01-31 | Voyager Media Ltd | A method and a system for providing a reward for viewing advertisements |
WO2002077935A2 (en) * | 2001-03-27 | 2002-10-03 | Igt | Interactive game playing preferences |
GB2380687A (en) * | 2001-09-28 | 2003-04-16 | Acres Gaming Inc | Method for implementing scheduled return play at gaming machine networks |
EP1359531A1 (en) * | 2000-10-30 | 2003-11-05 | Aruze Corporation | Loyalty point management system and server |
EP1363252A2 (en) * | 2002-05-14 | 2003-11-19 | Atronic International GmbH | Configuration technique for a gaming machine |
WO2004013820A2 (en) * | 2002-08-06 | 2004-02-12 | Igt | Flexible loyalty points management for gaming machines |
AU784977B2 (en) * | 2002-04-29 | 2006-08-10 | Universal Entertainment Corporation | Point management system and server |
US7526649B2 (en) * | 2003-12-30 | 2009-04-28 | Intel Corporation | Session key exchange |
WO2009117385A1 (en) * | 2008-03-19 | 2009-09-24 | Richard Albert Ferdinand | Game-based advertising system and method |
WO2009124360A1 (en) * | 2008-04-11 | 2009-10-15 | G5 Enterprizes Pty Ltd | Systems and methods for managing carbon credit data |
US7909699B2 (en) | 2002-06-27 | 2011-03-22 | Igt | Scan based configuration control in a gaming environment |
US8157644B2 (en) | 2001-09-28 | 2012-04-17 | Igt | Apparatus and methods for implementing bonuses in gaming machine networks using weighted pay tables |
US8162737B2 (en) | 2009-05-27 | 2012-04-24 | Igt | Contactless player card with improved security |
US8323103B2 (en) | 2005-08-17 | 2012-12-04 | Igt | Scan based configuration control in a gaming environment |
US9640035B2 (en) | 2004-10-04 | 2017-05-02 | Igt | Jackpot interfaces and services on a gaming machine |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8979646B2 (en) | 2002-06-12 | 2015-03-17 | Igt | Casino patron tracking and information use |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5083271A (en) * | 1984-06-27 | 1992-01-21 | John A. Klayh | Tournament data system with game score communication between remote player terminal and central computer |
US5373440A (en) * | 1992-01-16 | 1994-12-13 | Uc'nwin Systems, Inc. | Promotional game method and apparatus therefor |
GB2282690A (en) * | 1993-10-05 | 1995-04-12 | Barcrest Ltd | Credit -operated machines |
US5811772A (en) * | 1989-12-19 | 1998-09-22 | Scotch Twist, Inc. | Gaming machine system operable with general purpose charge cards |
US5823879A (en) * | 1996-01-19 | 1998-10-20 | Sheldon F. Goldberg | Network gaming system |
-
1999
- 1999-12-16 AU AU17637/00A patent/AU1763700A/en not_active Abandoned
- 1999-12-16 CA CA002354408A patent/CA2354408A1/en not_active Abandoned
- 1999-12-16 EP EP99960734A patent/EP1145175A2/en not_active Withdrawn
- 1999-12-16 WO PCT/CA1999/001201 patent/WO2000038089A2/en not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5083271A (en) * | 1984-06-27 | 1992-01-21 | John A. Klayh | Tournament data system with game score communication between remote player terminal and central computer |
US5811772A (en) * | 1989-12-19 | 1998-09-22 | Scotch Twist, Inc. | Gaming machine system operable with general purpose charge cards |
US5373440A (en) * | 1992-01-16 | 1994-12-13 | Uc'nwin Systems, Inc. | Promotional game method and apparatus therefor |
GB2282690A (en) * | 1993-10-05 | 1995-04-12 | Barcrest Ltd | Credit -operated machines |
US5823879A (en) * | 1996-01-19 | 1998-10-20 | Sheldon F. Goldberg | Network gaming system |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1106219A3 (en) * | 1999-11-30 | 2003-05-28 | Midway Amusement Games, LLC | Method of authorizing free play of an amusement game |
EP1106219A2 (en) * | 1999-11-30 | 2001-06-13 | Midway Amusement Games, LLC | Method of authorizing free play of an amusement game |
WO2002008969A1 (en) * | 2000-07-24 | 2002-01-31 | Voyager Media Ltd | A method and a system for providing a reward for viewing advertisements |
EP1359531A1 (en) * | 2000-10-30 | 2003-11-05 | Aruze Corporation | Loyalty point management system and server |
US7090581B2 (en) | 2000-10-30 | 2006-08-15 | Aruze Corporation | Point management system and server |
WO2002077935A2 (en) * | 2001-03-27 | 2002-10-03 | Igt | Interactive game playing preferences |
WO2002077935A3 (en) * | 2001-03-27 | 2004-02-19 | Igt Reno Nev | Interactive game playing preferences |
GB2380687B (en) * | 2001-09-28 | 2005-05-18 | Acres Gaming Inc | Method for implementing scheduled return play at gaming machine networks |
GB2380687A (en) * | 2001-09-28 | 2003-04-16 | Acres Gaming Inc | Method for implementing scheduled return play at gaming machine networks |
US8616961B2 (en) | 2001-09-28 | 2013-12-31 | Igt | Apparatus and methods for implementing bonuses in gaming machine networks using weighted pay tables |
US8157644B2 (en) | 2001-09-28 | 2012-04-17 | Igt | Apparatus and methods for implementing bonuses in gaming machine networks using weighted pay tables |
AU784977B2 (en) * | 2002-04-29 | 2006-08-10 | Universal Entertainment Corporation | Point management system and server |
EP1363252A2 (en) * | 2002-05-14 | 2003-11-19 | Atronic International GmbH | Configuration technique for a gaming machine |
EP1363252A3 (en) * | 2002-05-14 | 2004-10-13 | Atronic International GmbH | Configuration technique for a gaming machine |
US7909699B2 (en) | 2002-06-27 | 2011-03-22 | Igt | Scan based configuration control in a gaming environment |
GB2406951B (en) * | 2002-08-06 | 2006-10-11 | Igt Reno Nev | Flexible loyalty points program |
GB2406951A (en) * | 2002-08-06 | 2005-04-13 | Igt Reno Nev | Flexible loyalty points management for gaming machines |
WO2004013820A2 (en) * | 2002-08-06 | 2004-02-12 | Igt | Flexible loyalty points management for gaming machines |
WO2004013820A3 (en) * | 2002-08-06 | 2004-05-06 | Igt Reno Nev | Flexible loyalty points management for gaming machines |
US7526649B2 (en) * | 2003-12-30 | 2009-04-28 | Intel Corporation | Session key exchange |
US9640035B2 (en) | 2004-10-04 | 2017-05-02 | Igt | Jackpot interfaces and services on a gaming machine |
US8323103B2 (en) | 2005-08-17 | 2012-12-04 | Igt | Scan based configuration control in a gaming environment |
WO2009117385A1 (en) * | 2008-03-19 | 2009-09-24 | Richard Albert Ferdinand | Game-based advertising system and method |
WO2009124360A1 (en) * | 2008-04-11 | 2009-10-15 | G5 Enterprizes Pty Ltd | Systems and methods for managing carbon credit data |
US8333654B2 (en) | 2008-04-11 | 2012-12-18 | Srg Enterprizes Pty Limited | Systems and methods for managing carbon credit data |
US8162737B2 (en) | 2009-05-27 | 2012-04-24 | Igt | Contactless player card with improved security |
Also Published As
Publication number | Publication date |
---|---|
AU1763700A (en) | 2000-07-12 |
EP1145175A2 (en) | 2001-10-17 |
WO2000038089A3 (en) | 2000-11-09 |
CA2354408A1 (en) | 2000-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20030103644A1 (en) | System and method for directed advertising | |
US20020094863A1 (en) | Remote establishment of game formulae and parameters auto-adjustment of par and score brackets e.g. from an administration terminal or terminals | |
EP1141876A1 (en) | System for distribution and redemption of loyalty points and coupons | |
AU2009213039B2 (en) | Multi-function cashless gaming ATM | |
US6890256B2 (en) | System and method for advertising/sales at a gaming device | |
US9076281B2 (en) | Cashless gaming system and method with monitoring | |
US8721432B2 (en) | Managing marketing offers in wagering game networks | |
US7931529B2 (en) | System and method for operating on-line governmental lottery games | |
US20070077997A1 (en) | Closed-loop system for providing additional event participation to electronic video game customers | |
WO2000038089A2 (en) | Amusement and premiums network | |
US20020062253A1 (en) | Loyalty club reward system for use in a broadcast loyalty program | |
KR20010005536A (en) | Method and system for processing supplementary product sales at a point of sale terminal | |
AU2002236547A1 (en) | A system and a method for operating on-line state lottery games | |
US20030078835A1 (en) | Method of establishing a promotion at a point of sale terminal | |
AU2011229695B2 (en) | Cashless gaming system and method with monitoring | |
GB2399765A (en) | A cashless gaming system | |
NZ543072A (en) | Cashless gaming system and method with monitoring | |
ZA200508243B (en) | Cashless gaming system and method with monitoring |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2000 17637 Country of ref document: AU Kind code of ref document: A |
|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
ENP | Entry into the national phase |
Kind code of ref document: A Ref document number: 2354408 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1999960734 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 17637/00 Country of ref document: AU |
|
WWP | Wipo information: published in national office |
Ref document number: 1999960734 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1999960734 Country of ref document: EP |