U.S. patent application number 11/225407 was filed with the patent office on 2007-02-01 for methods and devices for managing gaming networks.
This patent application is currently assigned to IGT. Invention is credited to Mark Bansemer, Michael Kinsley, Chris Lundy, Ali Saffari, Stephen Shaffer, Bryan D. Wolf.
Application Number | 20070026935 11/225407 |
Document ID | / |
Family ID | 37312029 |
Filed Date | 2007-02-01 |
United States Patent
Application |
20070026935 |
Kind Code |
A1 |
Wolf; Bryan D. ; et
al. |
February 1, 2007 |
Methods and devices for managing gaming networks
Abstract
Some implementations of the invention provide methods and
devices for managing gaming establishments and for provisioning and
configuring gaming machines. Some such implementations allow a user
to configure one or more gaming machines via an easy-to-use GUI
displayed on a wired or a wireless device, such as a laptop, a PDA,
a work station or other host device. Gaming machine parameters that
can be changed according to some implementations of the invention
include game denominations, games to enable or disable, game
payback percentage, deal speed, volume level and enabling or
disabling a tournament. Some preferred implementations of the
invention provide an event scheduler that allows a user either to
cause events to occur immediately or schedule certain events to
occur at a future time. Some implementations of the invention allow
a user to generate activity reports highlighting configuration
changes, user logins, game set additions, and/or game downloading.
Novel methods and devices for authentication are also provided
herein. Some implementations of the invention allow a user to
manage easily game downloads to a local server and/or to each
gaming machine.
Inventors: |
Wolf; Bryan D.; (Reno,
NV) ; Bansemer; Mark; (Reno, NV) ; Saffari;
Ali; (Reno, NV) ; Shaffer; Stephen; (Reno,
NV) ; Kinsley; Michael; (Reno, NV) ; Lundy;
Chris; (Reno, NV) |
Correspondence
Address: |
BEYER WEAVER & THOMAS, LLP
P.O. BOX 70250
OAKLAND
CA
94612-0250
US
|
Assignee: |
IGT
|
Family ID: |
37312029 |
Appl. No.: |
11/225407 |
Filed: |
September 12, 2005 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60704634 |
Aug 1, 2005 |
|
|
|
Current U.S.
Class: |
463/25 ;
463/23 |
Current CPC
Class: |
G07F 17/323 20130101;
G07F 17/3276 20130101; G07F 17/3234 20130101; G07F 17/32
20130101 |
Class at
Publication: |
463/025 ;
463/023 |
International
Class: |
A63F 9/24 20060101
A63F009/24 |
Claims
1. A method of controlling a gaming network, the method comprising:
selecting a first configuration change for a first gaming machine
in a gaming network; indicating a first time for attempting to
implement the first configuration change; and implementing the
first configuration change by automatically sending a signal to the
first gaming machine via the gaming network.
2. The method of claim 1, wherein at least one of the selecting
step and the indicating step is performed by interacting with a
graphical user interface on a device other than the first gaming
machine, the device being configured for communication with the
gaming network.
3. The method of claim 1, further comprising the step of
determining, before the implementing step, whether game play
credits of the first gaming machine are zero.
4. The method of claim 1, wherein the signal is automatically sent
to the first gaming machine at the first time when a configuration
change condition is satisfied.
5. The method of claim 1, further comprising: indicating 2.sup.nd
through N.sup.th times for implementing each of 2.sup.nd through
N.sup.th configuration changes; and implementing the 2.sup.nd
through N.sup.th configuration changes by automatically sending
2.sup.nd through N.sup.th signals to the first gaming machine via
the gaming network.
6. The method of claim 1, wherein the selecting step comprises
selecting a first configuration change for each of 1.sup.st through
N.sup.th gaming machines in a gaming network and wherein the
implementing step comprises implementing the first configuration
change by automatically sending 1.sup.st through N.sup.th signals
to the 1.sup.st through N.sup.th gaming machines via the gaming
network.
7. The method of claim 1, further comprising: indicating a default
configuration for the first gaming machine; and applying the
default configuration to the first gaming machine after the first
configuration change when a predetermined condition is
satisfied.
8. The method of claim 1, further comprising indicating a first
time duration for the first configuration change.
9. The method of claim 1, wherein the first configuration change is
at least one of a denomination change, a paytable change, a display
change, a game change and a tournament configuration.
10. The method of claim 1, wherein the selecting step comprises
selecting game software to be downloaded to the first gaming
machine and wherein the implementing step comprises causing the
selected game software to be downloaded to the first gaming
machine.
11. The method of claim 1, wherein the implementing step comprises
automatically sending a signal from a server to the first gaming
machine.
12. The method of claim 2, wherein the device is a hand-held
device.
13. The method of claim 2, wherein the device is configured for
wireless communication with the gaming network.
14. The method of claim 2, wherein the device is a host device
configured for communication with the first gaming machine via the
gaming network.
15. The method of claim 3, further comprising the step of delaying
the implementing step when it is determined that game play credits
of the first gaming machine are not zero.
16. The method of claim 3, further comprising the step of
proceeding with the implementing step when it is determined that
game play credits of the first gaming machine are zero.
17. The method of claim 5, further comprising determining whether a
configuration change condition is met at each of the 2.sup.nd
through N.sup.th times.
18. The method of claim 6, wherein the 1.sup.st through N.sup.th
gaming machines comprise a bank of gaming machines.
19. The method of claim 7, wherein the predetermined condition
comprises a passage of time.
20. The method of claim 17, wherein each of the 2.sup.nd through
N.sup.th signals are automatically sent to the first gaming machine
when the configuration change condition is met.
21. Computer software embodied in a machine-readable medium, the
computer software including instructions for controlling at least
one device in a gaming network to perform the following steps:
present a depiction of gaming machines in a gaming network;
indicate a present configuration of a gaming machine; receive
gaming machine configuration commands from a user; and implement
the gaming machine configuration commands by sending configuration
signals to one or more gaming machines in the gaming network.
22. The computer software of claim 21, wherein the computer
software includes instructions for controlling a display to
indicate the present configuration of the gaming machine in
response to user input.
23. The computer software of claim 21, further comprising
instructions for controlling a display to indicate whether a gaming
machine is assigned to a bank.
24. The computer software of claim 21, further comprising
instructions for controlling a display to indicate whether a gaming
machine is currently in communication with the gaming network.
25. The computer software of claim 21, further comprising
instructions for controlling a display to indicate whether a gaming
machine is currently downloading data from the gaming network.
26. The computer software of claim 21, further comprising
instructions for controlling a display to indicate a gaming
establishment in which a gaming machine is located.
27. The computer software of claim 21, further comprising
instructions for causing configuration signals to be sent to gaming
machines in more than one gaming establishment.
28. The computer software of claim 21, further comprising
instructions for controlling a device to provide a graphical user
interface for receiving gaming machine configuration commands from
a user.
29. The computer software of claim 21, further comprising
instructions for controlling a device to send configuration signals
to a plurality of gaming machines in the gaming network in response
to a single set of gaming machine configuration commands received
from a user.
30. The computer software of claim 21, further comprising
instructions for authorizing, at least in part, software for
executing a game of chance to be downloaded to at least one gaming
machine in the gaming network.
31. An apparatus for controlling a gaming network, the apparatus
comprising: a display device; an input device; at least one network
interface configured for communication with a gaming network; and a
logic device, wherein the logic device is configured to control the
display device to perform the following actions: present a
depiction of gaming machines in a gaming establishment; and
indicate a present configuration of each gaming machine presented;
and wherein the logic device is further configured to receive first
gaming machine configuration commands from a user via the input
device and to implement the commands by sending configuration
signals via the network interface to one or more gaming machines in
the gaming network.
32. The apparatus of claim 31, wherein the logic device is further
configured to control the display device to indicate whether a
gaming machine is associated with a bank.
33. The apparatus of claim 31, wherein the logic device is further
configured to control the display device to indicate whether a
gaming machine is currently in communication with the gaming
network.
34. The apparatus of claim 31, wherein the logic device is further
configured to control the display device to indicate whether a
gaming machine is associated with a bank.
35. The apparatus of claim 31, wherein the logic device is further
configured to control the display device to indicate whether a
gaming machine is associated with a bank.
36. The apparatus of claim 31, wherein the display device
incorporates the input device.
37. A method for providing automated tournaments for games of
chance, the method comprising: causing a plurality of devices in a
gaming network to indicate tournament notification information
regarding a tournament to be conducted; receiving a request to
enroll in the tournament transmitted from each of a first plurality
of gaming machines in the gaming network; determining whether to
accept each of the requests; sending a tournament confirmation
message to each of a second plurality of gaming machines in the
gaming network that transmitted a request that was accepted;
configuring each of the second plurality of gaming machines for
participation in the tournament; conducting the tournament;
awarding at least one tournament prize; and reporting tournament
outcome data, wherein the determining, sending, configuring,
conducting and awarding steps are performed automatically.
38. The method of claim 37, further comprising the step of
automatically deducting a tournament fee from a player account
corresponding to a player of one of the second plurality of gaming
machines.
39. The method of claim 37, wherein the step of reporting
tournament outcome data comprises reporting by each of the second
plurality of gaming machines to a server that is conducting the
tournament.
40. The method of claim 37, wherein the step of reporting
tournament outcome data comprises broadcasting, by a server that is
conducting the tournament, information regarding a tournament
winner.
41. The method of claim 37, wherein the conducting step comprises
conducting a time-shifted tournament wherein players may
participate in the tournament at different times.
42. The method of claim 37, wherein the conducting step comprises
conducting a game count tournament involving a predetermined number
of games that players may complete within different time
periods.
43. The method of claim 37, wherein the conducting step further
comprises providing players an option of accelerating at least some
aspects of a game.
44. The method of claim 37, further comprising: making a plurality
of game options available for player selection; and scaling a
player's tournament outcome according to at least one of the game
options.
45. The method of claim 37, further comprising: creating a
progressive pool for the tournament; and adding a percentage of
each player's wager to the progressive pool; and wherein the
awarding step comprises awarding the progressive pool to at least
one winning player.
46. The method of claim 37, wherein the awarding step comprises
awarding a plurality of prizes, at least some of the plurality of
prizes being based on a criterion other than overall ranking.
47. The method of claim 43, wherein players are provided with an
option of skipping at least a portion of a game presentation.
48. The method of claim 43, wherein players are provided with an
option of having at least one gaming decision automatically made
for the player, wherein the game would otherwise require the player
to make the gaming decision.
49. The method of claim 44, wherein the game options comprise at
least one of a denomination option and a multiple-play option.
50. The method of claim 46, wherein one of the plurality of prizes
is awarded for obtaining a greatest number of a first type of
predetermined poker hand and another of the plurality of prizes is
awarded for obtaining a greatest number of a second type of
predetermined poker hand.
51. The method of claim 46, wherein more than one of the plurality
of prizes can be awarded to an individual player.
52. A method of controlling a gaming network, comprising:
determining a first rate of revenue obtained by a first gaming
machine of a plurality of gaming machines in the gaming network
during a first time when the first gaming machine has a first
configuration; transmitting second configuration information to the
first gaming machine via the gaming network; configuring the first
gaming machine with a second configuration according to the second
configuration information; and determining a second rate of revenue
obtained by the first gaming machine during a second time when the
first gaming machine has the second configuration.
53. The method of claim 52, wherein the step of determining the
first rate of revenue comprises receiving first revenue data from
the first gaming machine via the gaming network, the first revenue
data pertaining to the first time.
54. The method of claim 52, wherein it is determined that the first
rate of revenue is higher than the second rate of revenue, further
comprising these steps: transmitting third configuration
information to the first gaming machine via the gaming network; and
configuring the first gaming machine with a third configuration
according to the second configuration information.
55. The method of claim 52, wherein the second configuration
information comprises at least one of denomination information,
display information, pay table percentage and game software.
56. The method of claim 54, wherein the first configuration is
substantially similar to the third configuration.
57. A method of controlling a gaming network, comprising: receiving
revenue data from a first gaming machine of a plurality of gaming
machines in the gaming network; determining a first rate of revenue
obtained by the first gaming machine during a first time when the
first gaming machine has a first configuration; determining a
second rate of revenue obtained by the first gaming machine during
a second time when the first gaming machine has a second
configuration; determining an N.sup.th rate of revenue obtained by
the first gaming machine during an N.sup.th time when the first
gaming machine has an N.sup.th configuration; and ascertaining a
first optimum configuration for the first gaming machine during a
first time of day, the first optimum configuration corresponding
with a highest rate of revenue determined for the first gaming
machine during the first time of day.
58. The method of claim 57, further comprising scheduling the first
gaming machine to be automatically configured with the first
optimum configuration during the first time of day.
59. The method of claim 57, wherein the first gaming machine is
part of a bank of gaming machines, further comprising scheduling
each gaming machine of the bank of gaming machines to be
automatically configured with the first optimum configuration
during the first time of day.
60. The method of claim 57, further comprising: ascertaining a
second optimum configuration for the first gaming machine during a
second time of day, the second optimum configuration corresponding
with a highest rate of revenue determined for the first gaming
machine during the second time of day; and scheduling the first
gaming machine to be automatically configured with the second
optimum configuration during the second time of day.
61. The method of claim 57, further comprising: receiving revenue
data from second through M.sup.th gaming machines in the gaming
network; determining a first average rate of revenue obtained by
the second through M.sup.th gaming machines during the first time
when the second through M.sup.th gaming machines have the first
configuration; determining a second average rate of revenue
obtained by the second through M.sup.th gaming machines during a
second time when the second through M.sup.th gaming machines have a
second configuration; determining an N.sup.th average rate of
revenue obtained by the second through M.sup.th gaming machines
during an N.sup.th time when the second through M.sup.th gaming
machines have an N.sup.th configuration; and ascertaining a first
overall optimum configuration for the second through M.sup.th
gaming machines during a predetermined time of day, the first
overall optimum configuration corresponding with a highest average
rate of revenue determined for the second through M.sup.th gaming
machines during the predetermined time of day.
62. The method of claim 57, wherein the first optimum configuration
comprises at least one of a denomination, a display type, a pay
table percentage and a game type.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Patent
Application No. 60/704,634 entitled "SERVER BASED GAMING" and filed
Aug. 1, 2005 by Wolf et al., which is incorporated herein by
reference in its entirety and for all purposes. This application is
related to U.S. patent application No. ______ (Attorney Docket No.
IGT1P253), entitled "METHODS AND DEVICES FOR AUTHENTICATION AND
LICENSING IN A GAMING NETWORK" (the "License Manager Application")
by Kinsley et al. and filed concurrently with this application,
which is also incorporated herein by reference in its entirety and
for all purposes.
BACKGROUND OF THE INVENTION
[0002] This invention relates to networks of gaming machines, such
as slot machines and video poker machines. More particularly, the
present invention relates to methods and devices for managing and
provisioning gaming machines and other devices in a gaming
network.
[0003] The gaming machines under the control of a particular entity
may be globally distributed in many different types of
establishments. Casinos, convenience stores, supermarkets, bars and
boats are a few examples of establishments where gaming machines
may be placed.
[0004] Typically, utilizing a master gaming controller, a gaming
machine controls various combinations of devices that allow a
player to play a game on the gaming machine and also encourage game
play on the gaming machine. For example, a game played on a gaming
machine usually requires a player to input money or indicia of
credit into the gaming machine, indicate a wager amount, and
initiate a game play. These steps require the gaming machine to
control input devices, such as bill validators and coin acceptors,
to accept money into the gaming machine and recognize user inputs
from devices, including key pads and button pads, to determine the
wager amount and initiate game play. After game play has been
initiated, the gaming machine determines a game outcome, presents
the game outcome to the player and may dispense an award of some
type depending on the outcome of the game.
[0005] The operations described above may be carried out on the
gaming machine when the gaming machine is operating as a "stand
alone" unit or linked in a network of some type to a group of
gaming machines. As technology in the gaming industry progresses,
more and more gaming services are being provided to gaming machines
via communication networks that link groups of gaming machines to a
networked computer (which may be a local or a remote computer) that
provides one or more gaming services. As an example, gaming
services that may be provided by a networked computer to a gaming
machine via a communication network of some type include player
tracking, accounting, cashless award ticketing, lottery,
progressive games and bonus games.
[0006] Typically, network gaming services enhance the game playing
capabilities of the gaming machine or provide some operational
advantage in regards to maintaining the gaming machine. Thus,
network gaming services provided to groups of gaming machines
linked over a dedicated communication network of some type have
become very popular in the gaming industry. In general, the
dedicated communication network is not accessible to the public. To
justify the costs associated with the infrastructure needed to
provide network gaming services on a dedicated communication
network, a certain critical number of gaming machines linked in a
network of some type must utilize the service. Thus, many of the
network gaming services are only provided at larger gaming
establishments where a large number of gaming machines are
deployed.
[0007] One example wherein a group of gaming machines are linked
using a dedicated network to provide a network gaming service is a
progressive game network. The progressive game services enabled by
the progressive game network increase the game playing capabilities
of a particular gaming machine by enabling a larger jackpot than
would be possible if the gaming machine was operating in a "stand
alone" mode. The potential size of the jackpot increases as the
number gaming machines connected in the progressive network is
increased. The size of the jackpot tends to increase game play on
gaming machines offering a progressive jackpot, which justifies the
costs associated with installing and maintaining the dedicated
progressive game network.
[0008] However, there are many aspects of managing and provisioning
gaming machines that are still performed manually. For example, in
a time consuming process, installing a new game has previously
involved manually exchanging an EPROM (e.g. a read-only memory)
containing the game on the gaming machine. The software is manually
loaded because the gaming software is very highly regulated and in
most gaming jurisdictions only approved gaming software may be
installed on a gaming machine. Further, the gaming software is
manually loaded for security reasons, in order to prevent the
source code from being obtained by individuals who might use the
source code to try to find ways of cheating the gaming machine.
Other attributes of gaming machines, such as the denomination, pay
tables, etc., are also manually configured for similar reasons.
[0009] It would be desirable to provide methods and devices that
overcome at least some of these drawbacks of the prior art.
SUMMARY OF THE INVENTION
[0010] Some implementations of the invention provide methods and
devices for managing gaming establishments and for provisioning and
configuring gaming machines. Some such implementations allow a user
to configure one or more gaming machines via an easy-to-use GUI
displayed on a wired or a wireless device, such as a laptop, a PDA,
a work station or other host device. Gaming machine configurations
that can be changed according to some implementations of the
invention include game denominations, games to enable, disable or
download, game payback percentage, deal speed, volume level and
enabling or disabling tournament play.
[0011] Some preferred implementations of the invention provide an
event scheduler that allows a user either to cause events to occur
immediately or schedule certain events to occur at a future time.
Some implementations of the invention allow a user to generate
activity reports highlighting configuration changes, user logins,
game set additions, and/or game downloading. Novel methods and
devices for authentication are also provided herein. Some
implementations of the invention allow a user to manage easily game
downloads to a local server and/or to each gaming machine.
[0012] Some aspects of the invention provide a method of
controlling a gaming network that includes these steps: selecting a
first configuration change for a first gaming machine in a gaming
network; indicating a first time for attempting to implement the
first configuration change; and implementing the first
configuration change by automatically sending a signal to the first
gaming machine via the gaming network. The signal may be
automatically sent to the first gaming machine at the first time
when a configuration change condition is satisfied. The
implementing step may involve automatically sending a signal from a
server to the first gaming machine.
[0013] The method may include the step of determining, before the
implementing step, whether game play credits of the first gaming
machine are zero. The selecting step and/or the indicating step may
be performed by interacting with a graphical user interface on a
device other than the first gaming machine, the device being
configured for communication with the gaming network. The device
may be a hand-held device. The device may be a host device
configured for wired or wireless communication with the gaming
network.
[0014] The method may also include these steps: indicating 2.sup.nd
through N.sup.th times for implementing each of 2.sup.nd through
N.sup.th configuration changes; and implementing the 2.sup.nd
through N.sup.th configuration changes by automatically sending
2.sup.nd through N.sup.th signals to the first gaming machine via
the gaming network.
[0015] The selecting step may involve selecting a first
configuration change for each of 1.sup.st through N.sup.th gaming
machines in a gaming network. The implementing step may comprise
implementing the first configuration change by automatically
sending 1.sup.st through N.sup.th signals to the 1.sup.st through
N.sup.th gaming machines via the gaming network. The 1.sup.st
through N.sup.th gaming machines may comprise a bank of gaming
machines.
[0016] The method may also include indicating a default
configuration for the first gaming machine and applying the default
configuration to the first gaming machine after the first
configuration change when a predetermined condition is satisfied.
The predetermined condition may be a passage of time. A first time
duration may be indicated for the first configuration change. The
first configuration change may be, for example, a denomination
change, a paytable change, a display change, a game change and/or a
tournament configuration.
[0017] The selecting step may involve selecting game software to be
downloaded to the first gaming machine. If so, the implementing
step may involve causing the selected game software to be
downloaded to the first gaming machine.
[0018] The implementing step may be delayed if one or more
configuration change conditions are (or are not) met, e.g., when it
is determined that game play credits of the first gaming machine
are not zero.
[0019] Some aspects of the invention provide computer software
embodied in a machine-readable medium. The computer software
includes instructions for controlling at least one device in a
gaming network to perform the following steps: present a depiction
of gaming machines in a gaming network; indicate a present
configuration of a gaming machine; receive gaming machine
configuration commands from a user; and implement the gaming
machine configuration commands by sending configuration signals to
one or more gaming machines in the gaming network.
[0020] The software may include instructions for controlling a
display to indicate the present configuration of the gaming machine
in response to user input. The software may also include
instructions for controlling a display to indicate whether a gaming
machine is assigned to a bank, to indicate whether a gaming machine
is currently in communication with the gaming network, to indicate
whether a gaming machine is currently downloading data from the
gaming network and/or to indicate a gaming establishment in which a
gaming machine is located.
[0021] The software may cause configuration signals to be sent to
gaming machines in more than one gaming establishment. The software
may include instructions for controlling a device to provide a
graphical user interface for receiving gaming machine configuration
commands from a user. In some implementations of the invention, the
software includes instructions for controlling a device to send
configuration signals to a plurality of gaming machines in the
gaming network in response to a single set of gaming machine
configuration commands received from a user.
[0022] The software may also include instructions for authorizing,
at least in part, software for executing a game of chance to be
downloaded to at least one gaming machine in the gaming
network.
[0023] Some embodiments of the invention provide an apparatus for
controlling a gaming network. The apparatus includes these
elements: a display device; an input device; at least one network
interface configured for communication with a gaming network; and a
logic device. The logic device is configured to control the display
device to present a depiction of gaming machines in a gaming
establishment and to indicate a present configuration of each
gaming machine presented. The logic device is further configured to
receive first gaming machine configuration commands from a user via
the input device and to implement the commands by sending
configuration signals via the network interface to one or more
gaming machines in the gaming network.
[0024] The logic device may be further configured to control the
display device to indicate whether a gaming machine is associated
with a bank, to indicate whether a gaming machine is currently in
communication with the gaming network, and/or to indicate whether a
gaming machine is associated with a bank. The display device may
incorporate the input device.
[0025] The invention also includes methods for providing automated
tournaments for games of chance. One such method includes these
steps: causing a plurality of devices in a gaming network to
indicate tournament notification information regarding a tournament
to be conducted; receiving a request to enroll in the tournament
transmitted from each of a first plurality of gaming machines in
the gaming network; determining whether to accept each of the
requests; sending a tournament confirmation message to each of a
second plurality of gaming machines in the gaming network that
transmitted a request that was accepted; configuring each of the
second plurality of gaming machines for participation in the
tournament; conducting the tournament; awarding at least one
tournament prize; and reporting tournament outcome data. The
determining, sending, configuring, conducting and awarding steps
may be performed automatically.
[0026] The method may also include the step of automatically
deducting a tournament fee from a player account. The step of
reporting tournament outcome data can include reporting by each of
the second plurality of gaming machines to a server that is
conducting the tournament. The step of reporting tournament outcome
data may also involve broadcasting (e.g., by a server that is
conducting the tournament), information regarding a tournament
winner.
[0027] The conducting step may involve conducting a time-shifted
tournament wherein players may participate in the tournament at
different times, conducting a game count tournament involving a
predetermined number of games that players may complete within
different time periods and/or providing players an option of
accelerating at least some aspects of a game.
[0028] The method may also include the steps of making a plurality
of game options available for player selection and of scaling a
player's tournament outcome according to at least one of the game
options. The game options may be, for example, a denomination
option and/or a multiple-play option.
[0029] The method may involve these steps: creating a progressive
pool for the tournament; and adding a percentage of each player's
wager to the progressive pool. The awarding step may involve
awarding the progressive pool to at least one winning player.
[0030] Alternatively, or additionally, the awarding step may
awarding a plurality of prizes, at least some of the plurality of
prizes being based on a criterion other than overall ranking. For
example, one of the plurality of prizes may be awarded for
obtaining a greatest number of a first type of predetermined poker
hand (e.g., the most Royal Flushes) and another of the plurality of
prizes is awarded for obtaining a greatest number of a second type
of predetermined poker hand (e.g., the most instances of a Full
House). In some such implementations, more than one of the
plurality of prizes can be awarded to an individual player.
[0031] Players of the tournament may be provided with an option of
skipping at least a portion of a game presentation and/or of having
at least one gaming decision automatically made for the player,
wherein the game would otherwise require the player to make the
gaming decision.
[0032] Some implementations of the invention control a gaming
network in response to observed revenue obtained by gaming machines
during different times and/or with different configurations. One
such method includes these steps: determining a first rate of
revenue obtained by a first gaming machine of a plurality of gaming
machines in the gaming network during a first time when the first
gaming machine has a first configuration; transmitting second
configuration information to the first gaming machine via the
gaming network; configuring the first gaming machine with a second
configuration according to the second configuration information;
and determining a second rate of revenue obtained by the first
gaming machine during a second time when the first gaming machine
has the second configuration.
[0033] The step of determining the first rate of revenue may
involve receiving first revenue data from the first gaming machine
via the gaming network, the first revenue data pertaining to the
first time. In some implementations of the invention, when it is
determined that the first rate of revenue is higher than the second
rate of revenue, the method further comprises these steps:
transmitting third configuration information to the first gaming
machine via the gaming network; and configuring the first gaming
machine with a third configuration according to the second
configuration information. The second configuration information may
be, for example, denomination information, display information, pay
table percentage and/or game software information.
[0034] Another such method involves these steps: receiving revenue
data from a first gaming machine of a plurality of gaming machines
in the gaming network; determining a first rate of revenue obtained
by the first gaming machine during a first time when the first
gaming machine has a first configuration; determining a second rate
of revenue obtained by the first gaming machine during a second
time when the first gaming machine has a second configuration;
determining an N.sup.th rate of revenue obtained by the first
gaming machine during an N.sup.th time when the first gaming
machine has an N.sup.th configuration; and ascertaining a first
optimum configuration for the first gaming machine during a first
time of day. The first optimum configuration corresponds with a
highest rate of revenue determined for the first gaming machine
during the first time of day.
[0035] The method may also involve scheduling the first gaming
machine to be automatically configured with the first optimum
configuration during the first time of day. If the first gaming
machine is part of a bank of gaming machines, the method may
involve scheduling each gaming machine of the bank of gaming
machines to be automatically configured with the first optimum
configuration during the first time of day.
[0036] The method may include these steps: ascertaining a second
optimum configuration for the first gaming machine during a second
time of day, the second optimum configuration corresponding with a
highest rate of revenue determined for the first gaming machine
during the second time of day; and scheduling the first gaming
machine to be automatically configured with the second optimum
configuration during the second time of day.
[0037] The method may include the following steps: receiving
revenue data from second through M.sup.th gaming machines in the
gaming network; determining a first average rate of revenue
obtained by the second through M.sup.th gaming machines during the
first time when the second through M.sup.th gaming machines have
the first configuration; determining a second average rate of
revenue obtained by the second through M.sup.th gaming machines
during a second time when the second through M.sup.th gaming
machines have a second configuration; determining an N.sup.th
average rate of revenue obtained by the second through M.sup.th
gaming machines during an N.sup.th time when the second through
M.sup.th gaming machines have an N.sup.th configuration; and
ascertaining a first overall optimum configuration for the second
through M.sup.th gaming machines during a predetermined time of
day. The first overall optimum configuration corresponds with a
highest average rate of revenue determined for the second through
M.sup.th gaming machines during the predetermined time of day. The
first optimum configuration may include a denomination, a display
type, a pay table percentage and/or a game type.
[0038] The present invention provides other hardware (such as
network devices and components of network devices) that is
configured to perform the methods of the invention, as well as
software to control devices to perform these methods.
[0039] These and other features of the present invention will be
presented in more detail in the following detailed description of
the invention and the associated figures.
BRIEF DESCRIPTION OF THE DRAWINGS
[0040] FIG. 1 illustrates one example of a network topology for
implementing some aspects of the present invention.
[0041] FIG. 1A is a block diagram that illustrates a simplified
network topology that illustrates some implementations of an
Arbiter.
[0042] FIG. 2 illustrates a GUI that may be used to implement some
aspects of the invention.
[0043] FIG. 3 illustrates another GUI that may be used to implement
some aspects of the invention.
[0044] FIG. 4 illustrates another GUI that may be used to implement
some aspects of the invention.
[0045] FIG. 5A illustrates another GUI that may be used to
implement some aspects of the invention.
[0046] FIG. 5B illustrates another GUI that may be used to
implement some aspects of the invention.
[0047] FIG. 6 illustrates another GUI that may be used to implement
some aspects of the invention.
[0048] FIG. 7 illustrates another GUI that may be used to implement
some aspects of the invention.
[0049] FIG. 8 illustrates another GUI that may be used to implement
some aspects of the invention.
[0050] FIG. 9A illustrates another GUI that may be used to
implement some aspects of the invention.
[0051] FIG. 9B illustrates another GUI that may be used to
implement some aspects of the invention. FIG. 9C illustrates
another GUI that may be used to implement some aspects of the
invention.
[0052] FIG. 10A is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0053] FIG. 10B is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0054] FIG. 10C is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0055] FIG. 10D is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0056] FIG. 10E is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0057] FIG. 11A is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0058] FIG. 11B is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0059] FIG. 11C is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0060] FIG. 12A is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0061] FIG. 12B is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0062] FIG. 12C is an example of a GUI that may be used for some
implementations of a Game Set Manager according to the
invention.
[0063] FIG. 13 is a flow chart that outlines one method of the
invention.
[0064] FIG. 14 illustrates a gaming machine that may be configured
according to some aspects of the invention.
[0065] FIG. 15 illustrates a gaming machine and a gaming network
that may be configured according to some aspects of the
invention.
[0066] FIG. 16 illustrates a network device that may be configured
according to some aspects of the invention.
DESCRIPTION OF PREFERRED EMBODIMENTS
[0067] Various implementations of the invention provide for high
speed delivery of game content, game configurations, direct player
marketing, and/or server-determined game outcome. Many aspects of
the present invention are implemented, at least in part, by one or
more servers. Accordingly, some embodiments of the present
invention may be referenced herein as a server-based gaming system
or simply as "SBG" or the like. A brief overview of some aspects of
the present invention is set forth in the following paragraphs. A
more detailed discussion follows.
Overview
[0068] Although the terms may have different meanings as used by
some of skill in the art, the terms "configuring," "configuration"
and the like will be used broadly herein. For example,
"configuring" a gaming machine includes not only providing
parameters such as a denomination value and/or display parameters,
but will also include controlling what games are enabled for play,
including but not limited to controlling game downloads to the
gaming machine.
[0069] Preferred implementations of the invention include a
Configuration Manager that provides customers with the ability to
manage a gaming network. For example, some implementations of the
invention allow a user to manage one or more gaming establishment
floors by configuring game machines via the gaming network.
Instructions, for example made via an easy-to-use graphical user
interface ("GUI"), may be made from various types of networked
devices to control one or more servers to control game
denominations, which games to enable or disable, game payback
percentage, the deal speed of certain games, to enable (or disable)
a gaming machine for participation in a tournament, volume level,
control gaming machine displays, etc.
[0070] Some implementations of the Configuration Manager allow the
user to browse connected game machines and select a parameter to be
changed. The user then "submits" the change to the game machine and
the status of the change will immediately be displayed. At least
some configuration changes will preferably take place only when
certain conditions are met, e.g., when a player is not actively
playing a game. All configuration changes are preferably recorded
to a log file for audit and reporting purposes.
[0071] Some implementations of the invention allow a user to
generate reports of daily activity that indicate configuration
changes, user logins, game set additions, game downloading and/or
other information. The reports are preferably both viewable and
printable, e.g. at a management console, over a network, etc.
Preferred implementations of the invention allow reports to be
generated on demand or according to a predetermined schedule. For
example, reports may be run automatically at specified times during
the day and on specified dates or days of the week. Depending on
the amount of data that a customer may desire and/or need to
manage, some implementations of server based gaming networks
include one or more middleware servers (or similar devices) for
data filtering, aggregation and/or event reporting.
[0072] Some aspects of the invention involve an Event Scheduler
that allows an operator to schedule certain events to occur
immediately and/or at a future time. The events can be one time
only or can also be recurring at times and/or intervals that the
operator selects. Game downloads, game configuration changes and
reports are examples of events that can be scheduled. For example,
if an operator would like data (including but not limited to gaming
software) to be downloaded to a certain bank of machines at a
certain time of day, the operator could schedule this event. In
some implementations, the Event Scheduler provides a GUI that
allows the operator to view, edit, or delete events that are shown
in a queue of events to be processed.
[0073] Event Scheduler can provide a user (e.g., a manager of an
individual gaming establishment or a group of gaming
establishments) a great deal of flexibility and control. Scheduled
tasks can happen instantly, on demand or on a recurring basis. For
example, an operator could decide that every day at 2 a.m. the
paytable percentage of designated gaming machines will change from
95% to 90%. Alternatively, the operator could change the
denomination of a gaming machine, of every machine in a bank, etc.,
at predetermined times or on demand.
[0074] An operator could, for example, cause a gaming machine to be
configured to play different games at predetermined times.
Alternatively, the operator could keep the underlying game the
same, but change some aspects of its configuration, e.g., the
display, denomination, etc. An operator can change the look of a
casino floor on a periodic basis, e.g., by changing the background
color or some other aspect of gaming machine and/or signage
displays on a periodic basis. An operator could change the
appearance of the game to correspond with some aspect of the
change, e.g., to correspond with a denomination of the game (nickel
is blue, quarter is red, etc.)
[0075] Some implementations of the Event Scheduler and/or the
Configuration Manager allow an operator to change whether a gaming
machine is participating in a tournament. An operator could also
change whether a gaming machine, or a bank of gaming machines is
participating in progressive pool. The gaming establishment's
signage can also be changed to correspond with scheduled changes.
For example, a gaming establishment's signage could be changed to
indicate whether a gaming machine or a bank of gaming machines is
participating in a tournament and/or a progressive pool. Both of
these aspects could be scheduled by the Event Scheduler to happen
at a predetermined time.
[0076] The Event Scheduler and other features of the invention
allow an operator to change the overall look of a casino floor on a
scheduled basis or on demand. For example, instead of spending time
moving gaming machines around, an operator could just use a host
device and make (or schedule) the changes automatically. As noted
elsewhere, such a host device could be a wired or a wireless
device, such as a laptop, a PC, a PDA, or even a cellular
telephone. Wireless devices allow such changes to be made while the
operator is on the casino floor.
[0077] According to some implementations of the invention, a
Download Manager allows, e.g., for the addition of new game
binaries into a local game server repository. Some implementations
of the Download Manager allow a user to manage game downloads to
gaming machines in a gaming network. Other implementations of the
invention allow for game downloading to be initiated by players of
the gaming machines. Relevant methods and devices are described in
U.S. patent application Ser No. 11/078,966 by Nguyen et al.,
entitled "SECURED VIRTUAL NETWORK IN A GAMING ENVIRONMENT"
(Attorney Docket No. IGT1P034X2/P-277 CIP2) and filed on Mar. 10,
2005, in U.S. patent application Ser. No. 10/757,609 by Nelson et
al., entitled "METHODS AND APPARATUS FOR GAMING DATA DOWNLOADING"
(Attorney Docket No. IGT1P213/P-657) and filed on Jan. 14, 2004,
and in U.S. patent application Ser. No. 10/938,293 by Benbrahim et
al., entitled "METHODS AND APPARATUS FOR DATA COMMUNICATION IN A
GAMING SYSTEM" (Attorney Docket No. IGT1P199/P-909) and filed on
Sep. 10, 2004, all of which are hereby incorporated by reference in
their entirety and for all purposes.
[0078] Still other implementations of the invention involve at
least some aspects of peer-to-peer file transfers between gaming
machines. Some relevant methods and devices are discussed in U.S.
patent application No. ______ (Attorney Docket No. IGT1P185/P-1017)
by Nguyen et al., filed Sep. 12, 2005 and entitled "DISTRIBUTED
GAME SERVICES" and in U.S. patent application Ser. No. 11/173,442
(Attorney Docket No. IGT1P153/P-991) by Kinsley et al., filed Jul.
1, 2005 and entitled "METHODS AND DEVICES FOR DOWNLOADING GAMES OF
CHANCE," both of which are hereby incorporated by reference in
their entirety and for all purposes.
[0079] The present invention may be practiced with various types of
verification, authentication, privacy and security measures.
Preferred implementations of the invention are practiced with the
implementations that are described in the License Manager
application, which has been incorporated herein by reference in its
entirety and for all purposes. Relevant method and devices are
described in U.S. patent application Ser. No. 10/050,747 by
Oberberger, entitled "GAMING SYSTEM LICENSE MANAGEMENT" (Attorney
Docket No. 29757/P-721) and filed on Jan. 16, 2002, which is hereby
incorporated by reference in its entirety and for all purposes.
Some relevant techniques are also described in U.S. patent
application Ser. No. 11/078,966, which has been incorporated by
reference herein. According to some aspects of the invention, an
Authentication Manager provides the operator with the ability to
perform an "on demand" authentication or signature check of
software to be run on a gaming machine. This provides the operator
the ability to ensure, among other things, that all gaming machines
connected to the SBG system are running authentic up-to-date
approved software. The Authentication Manager can also be
configured to validate all gaming machines based on a schedule set
by the operator.
[0080] Preferred implementations of the invention provide secure
communications between networked devices, including but not limited
to the ability to identify requesters on a network reliably. The
License Manager application describes some such methods.
Alternatively, or additionally, every gaming machine or other
device that will be in communication with a gaming establishment
(and/or any device that will be in communication with a central
system on behalf of a gaming establishment) may be "fingerprinted"
according to special characteristics of the machine, and/or
according to techniques such as those discussed in patent
application Ser. No. 11/078,966, referenced above. Communications
from untrusted sources will preferably cause special handling. For
example, some implementations provide some level of security
notification if an untrusted source cannot be authenticated in
response to a challenge.
[0081] When, for example, a local server of a gaming establishment
requests a game download from a central game repository, a
fingerprint of the local server may be obtained and compared with
that of a stored fingerprint for that device. If the fingerprint
does not match, the central game repository will not download the
requested game.
[0082] Some such fingerprinting techniques involve the exploitation
of small deviations in processor clock skews. Some relevant
techniques are discussed, for example, in Kohno, Tadayoshi, "Remote
Physical Device Fingerprinting" (IEEE Symposium on Security and
Privacy [May 2005]), which is hereby incorporated by reference for
all purposes.
[0083] Such clock skew deviations are approximately constant over
time for each device, but the clock skew of a particular machine
will be different from that of another machine. Most Transmission
Control Protocol ("TCP") stacks implement the TCP timestamps option
of Request for Comment ("RFC") 1323. According to this option, each
party in a TCP flow includes information about its perception of
time in each outgoing packet. Information contained in the TCP
headers can be used to estimate a device's clock skew, thereby
allowing the device to be identified. Such identification
techniques do not require any modification to the fingerprinted
devices. Moreover, such techniques can report consistent
measurements when the measurer is thousands of miles, multiple
hops, and tens of milliseconds away from the fingerprinted device,
even when the fingerprinted device is connected to the Internet
from different locations and via different access technologies.
[0084] Some such techniques provide reliable fingerprinting even
when the fingerprinted device is behind a NAT or firewall and
whether the device's system time is maintained via NTP or SNTP.
These techniques can also determine whether two devices on the
Internet, possibly shifted in time or IP addresses, are actually
the same physical device.
Exemplary System Architecture
[0085] One example of a network topology for implementing some
aspects of the present invention is shown in FIG. 1. Those of skill
in the art will realize that this exemplary architecture and the
related functionality are merely examples and that the present
invention encompasses many other such embodiments and methods.
Here, for example, a single gaming establishment 105 is
illustrated, which is a casino in this example. However, it should
be understood that some implementations of the present invention
involve multiple gaming establishments.
[0086] Gaming establishment 105 includes 16 gaming machines 2, each
of which is part of a bank 110 of gaming machines 2. It will be
appreciated that many gaming establishments include hundreds or
even thousands of gaming machines 2, not all of which are included
in a bank 110. However, the present invention may be implemented in
gaming establishments having any number of gaming machines.
[0087] Various alternative network topologies can be used to
implement different aspects of the invention and/or to accommodate
varying numbers of networked devices. For example, gaming
establishments with very large numbers of gaming machines 2 may
require multiple instances of some network devices (e.g., of main
network device 125, which combines switching and routing
functionality in this example) and/or the inclusion of other
network devices not shown in FIG. 1. For example, some
implementations of the invention include one or more middleware
servers disposed between gaming machines 2 and server 130. Such
middleware servers can provide various useful functions, including
but not limited to the filtering and/or aggregation of data
received from bank switches 115, from individual gaming machines
and from other player terminals. Some implementations of the
invention include load balancing methods and devices for managing
network traffic.
[0088] Each bank 110 has a corresponding bank switch 115, which may
be a conventional bank switch. Each bank switch is connected to SBG
server 130 via main network device 125, which combines switching
and routing functionality in this example. Although various floor
communication protocols may be used, some preferred implementations
use IGT's open, Ethernet-based SuperSAS.RTM. protocol, which IGT
makes available for downloading without charge. However, other
protocols such as Best of Breed ("BOB") may be used to implement
various aspects of SBG. IGT has also developed a
gaming-industry-specific transport layer called CASH that rides on
top of TCP/IP and offers additional functionality and security.
[0089] SBG server 130, License Manager 131, Arbiter 133 and main
network device 125 are disposed within computer room 120 of gaming
establishment 105. License Manager 131 may be implemented, at least
in part, via a server or a similar device. The operation of License
Manager 131 is described in detail in U.S. patent application Ser.
No.______ (Attorney Docket No. IGT1P253), entitled "METHODS AND
DEVICES FOR AUTHENTICATION AND LICENSING IN A GAMING NETWORK" by
Kinsley et al., which has been incorporated herein by
reference.
[0090] SBG server 130 can be configured to implement, at least in
part, various aspects of the present invention. Some preferred
embodiments of SBG server 130 include (or are at least in
communication with) clustered CPUs, redundant storage devices,
including backup storage devices, switches, etc. Such storage
devices may include a redundant array of inexpensive disks
("RAID"), back-up hard drives and/or tape drives, etc. Preferably,
a Radius and a DHCP server are also configured for communication
with the gaming network. Some implementations of the invention
provide one or more of these servers in the form of blade
servers.
[0091] In some implementations of the invention, many of these
devices (including but not limited to License Manager 131 and main
network device 125) are mounted in a single rack with SBG server
130. Accordingly, many or all such devices will sometimes be
referenced in the aggregate as an "SBG server." However, in
alternative implementations, one or more of these devices is in
communication with SBG server 130 but located elsewhere. For
example, some of the devices could be mounted in separate racks
within computer room 120 or located elsewhere on the network. For
example, it can be advantageous to store large volumes of data
elsewhere via a storage area network ("SAN").
[0092] In some embodiments, these components are SBG server 130
preferably has an uninterruptible power supply ("UPS"). The UPS may
be, for example, a rack-mounted UPS module.
[0093] Computer room 120 may include one or more operator consoles
or other host devices that are configured for communication with
SBG server 130. Such host devices may be provided with software,
hardware and/or firmware for implementing various aspects of the
invention; many of these aspects involve controlling SBG server
130. However, such host devices need not be located within computer
room 120. Wired host device 160 (which is a laptop computer in this
example) and wireless host device (which is a PDA in this example)
may be located elsewhere in gaming establishment 105 or at a remote
location.
[0094] Arbiter 133 may be implemented, for example, via software
that is running on a server or another networked device. Arbiter
133 serves as an intermediary between different devices on the
network. Some implementations of Arbiter 133 are described in U.S.
patent application Ser. No. 10/948,387, entitled "METHODS AND
APPARATUS FOR NEGOTIATING COMMUNICATIONS WITHIN A GAMING NETWORK"
and filed Sep. 23, 2004 (the "Arbiter Application") which is
incorporated herein by reference and for all purposes. In some
preferred implementations, Arbiter 133 is a repository for the
configuration information required for communication between
devices on the gaming network (and, in some implementations,
devices outside the gaming network). Although Arbiter 133 can be
implemented in various ways, one exemplary implementation is
discussed in the following paragraphs.
[0095] Wireless devices are particularly useful for implementing
some aspects of the invention. Such wireless devices could include,
but are not limited to, laptops, PDAs or even cellular telephones.
Referring once again to FIG. 1, one or more network devices in
gaming establishment 105 can be configured as wireless access
points. For example, a casino manager may use a wireless handheld
device to revise and/or schedule gaming machine configurations
while roaming the casino floor. Similarly, a representative of a
regulatory body could use a PDA to verify gaming machine
configurations, generate reports, view activity logs, etc., while
on the casino floor.
[0096] If a host device is located in a remote location, security
methods and devices (such as firewalls, authentication and/or
encryption) should be deployed in order to prevent the unauthorized
access of the gaming network. Similarly, any other connection
between gaming network 105 and the outside world should only be
made with trusted devices via a secure link, e.g., via a virtual
private network ("VPN") tunnel. For example, the illustrated
connection between SBG 130, gateway 150 and central system 163
(here, IGT.com) that may be used for game downloads, etc., is
advantageously made via a VPN tunnel.
[0097] An Internet-based VPN uses the open, distributed
infrastructure of the Internet to transmit data between sites. A
VPN may emulate a private IP network over public or shared
infrastructures. A VPN that supports only IP traffic is called an
IP-VPN. VPNs provide advantages to both the service provider and
its customers. For its customers, a VPN can extend the IP
capabilities of a corporate site to remote offices and/or users
with intranet, extranet, and dial-up services. This connectivity
may be achieved at a lower cost to the gaming entity with savings
in capital equipment, operations, and services. Details of VPN
methods that may be used with the present invention are described
in the reference, "Virtual Private Networks-Technologies and
Solutions," by R. Yueh and T. Strayer, Addison-Wesley, 2001,
ISBN#0-201-70209-6, which is incorporated herein by reference and
for all purposes.
[0098] There are many ways in which IP VPN services may be
implemented, such as, for example, Virtual Leased Lines, Virtual
Private Routed Networks, Virtual Private Dial Networks, Virtual
Private LAN Segments, etc. Additionally VPNs may be implemented
using a variety of protocols, such as, for example, IP Security
(IPSec) Protocol, Layer 2 Tunneling Protocol, Multiprotocol Label
Switching (MPLS) Protocol, etc. Details of these protocols,
including RFC reports, may be found from the VPN Consortium, an
industry trade group (http://www.vpnc.com, VPNC, Santa Cruz,
Calif.).
[0099] For security purposes, any information transmitted to or
from a gaming establishment over a public network may be encrypted.
In one implementation, the information may be symmetrically
encrypted using a symmetric encryption key, where the symmetric
encryption key is asymmetrically encrypted using a private key. The
public key may be obtained from a remote public key server. The
encryption algorithm may reside in processor logic stored on the
gaming machine. When a remote server receives a message containing
the encrypted data, the symmetric encryption key is decrypted with
a private key residing on the remote server and the symmetrically
encrypted information sent from the gaming machine is decrypted
using the symmetric encryption key. A different symmetric
encryption key is used for each transaction where the key is
randomly generated. Symmetric encryption and decryption is
preferably applied to most information because symmetric encryption
algorithms tend to be 100-10,000 faster than asymmetric encryption
algorithms.
[0100] As mentioned elsewhere herein, U.S. patent application Ser.
No.______ (Attorney Docket No. IGT1P253), entitled "METHODS AND
DEVICES FOR AUTHENTICATION AND LICENSING IN A GAMING NETWORK" by
Kinsley et al. and filed concurrently with this application,
describes novel methods and devices for authentication, game
downloading and game license management. This application,
including these methods and devices, has been incorporated herein
by reference.
[0101] Providing a secure connection between the local devices of
the SBG system and IGT's central system allows for the deployment
of many advantageous features. For example, a customer (e.g., an
employee of a gaming establishment) can log onto an account of
central system 163 (in this example, IGT.com) to obtain the account
information such as the customer's current and prior account
status.
[0102] Moreover, such a secure connection may be used by the
central system 163 to collect information regarding a customer's
system. Such information includes, but is not limited to, error
logs for use in diagnostics and troubleshooting. Some
implementations of the invention allow a central system to collect
other types of information, e.g., information about the usage of
certain types of gaming software, revenue information regarding
certain types of games and/or gaming machines, etc. Such
information includes, but is not limited to, information regarding
the revenue attributable to particular games at specific times of
day, days of the week, etc. Such information may be obtained, at
least in part, by reference to an accounting system of the gaming
network(s), as described elsewhere herein.
[0103] Automatic updates of a customer's SBG server may also be
enabled. For example, central system 163 may notify a local SBG
server regarding new products and/or product updates. For example,
central system 163 may notify a local SBG server regarding updates
of new gaming software, gaming software updates, peripheral
updates, the status of current gaming software licenses, etc.
[0104] After the local SBG server receives this information, it can
identify relevant products of interest. For example, the local SBG
server may identify gaming software that is currently in use (or at
least licensed) by the relevant gaming entity and send a
notification to one or more host devices, e.g., via email. If an
update or a new software product is desired, it can be downloaded
from the central system. Some relevant downloading methods are
described elsewhere herein and in applications that have been
incorporated herein by reference, e.g., in U.S. patent application
Ser. No. 11/078,966. Similarly, a customer may choose to renew a
gaming software license via a secure connection with central system
163 in response to such a notification.
[0105] Secure communication links allow notifications to be sent
securely from a local SBG server to host devices outside of a
gaming establishment. For example, a local SBG server can be
configured to transmit automatically generated email reports, text
messages, etc., based on predetermined events that will sometimes
be referred to herein as "triggers." Such triggers can include, but
are not limited to, the condition of a gaming machine door being
open, cash box full, machine not responding, verification failure,
etc.
[0106] In addition, providing secure connections between different
gaming establishments can enable alternative implementations of the
invention. For example, a number of gaming establishments, each
with a relatively small number of gaming machines, may be owned
and/or controlled by the same entity. hi such situations, having
secure communications between gaming establishments makes it
possible for a gaming entity to use a single SBG server as an
interface between central system 163 and the gaming
establishments.
Exemplary SBG Management Software
[0107] In this section, various exemplary types of software for
implementing an SBG system will be described. Those of skill in the
art will realize that the various software implementations
described herein are merely examples and that the present invention
encompasses many other such implementations and methods.
[0108] The next few figures and related description relate to an
exemplary software package that will sometimes be referred to
herein as the "Management Suite," the "Master Control" or the
"Director." The Management Suite provides users with a convenient
way to manage all gaming machines (sometimes referred to herein as
"Player Terminals" ("PTs")) connected to the SBG server using a
user-friendly program interface.
[0109] One of the SBG server's functions is to communicate
information to and from each PT once a connection has been
established. In some preferred implementations, such a connection
will be established through an Arbiter, e.g., as discussed above
with reference to FIG. 1.
[0110] Certain update messages and information may be sent between
the SBG server and the SBG Management Suite, thereby allowing users
to interact with and view current and planned activity between the
server and all connected PTs. The SBG Management Suite allows users
to configure PTs, view configurations for all PTs connected to the
server, schedule and plan new PT events and tasks, and view
transaction and error log activity related to the SBG system and
PTs. In addition, the SBG Management Suite facilitates PT
verification, enables downloads of game images to PTs, allows a
user to generate various useful reports, identifies and activates
all workstations connected to the server, and facilitates
management of SBG server user profiles.
[0111] FIGS. 2 et seq. provide examples of GUIs that may be used to
implement some aspects of the present invention. Such GUIs may be
displayed, for example, on a management console of computer room
120 or on another host device (such as device 160 or device 170)
that is located in gaming establishment 105 or in a remote
location. These GUIs would be generated by software running on one
of these host devices and would be used, e.g., to receive
instructions from (and to provide information to) a user. Those of
skill in the art will realize that these exemplary GUIs and the
related functionality are merely examples and that the present
invention encompasses many other such implementations and
methods.
[0112] Here, GUI 205 is used to control some aspects of the machine
management of an SBG system. GUI 205 is enabled by selecting menu
option 210 and by selecting the "Show All Machines" option of tool
bar 215. Here, only a small number of gaming machines are
networked, so the "Show All Machines" option is convenient. As
shown, this implementation of the invention also allows the user to
"Filter By Bank" of gaming machines; this option is particularly
convenient when a gaming entity controls a large number of
networked gaming machines. In preferred implementations, tool bar
215 (or another aspect of GUI 205) allows a user to display
attributes of gaming machines that are not associated with a
bank.
[0113] Here, bank name window 220 has the bank designations
expanded to indicate all gaming machines associated with each bank.
A user may interact with bank name window 220 to obtain information
and/or perform various tasks. In this example, a user may enable a
pop-up menu by "right clicking" on bank name window 220 by use of a
mouse or similar device. The menu allows a user to add or remove a
bank, view/update bank properties, add or remove a gaming machine
from a bank or schedule a task for a bank.
[0114] The Scheduler, which is described in more detail elsewhere
herein, may be used (among other things) to schedule configuration
changes for an entire bank of gaming machines in a single
operation. In this example, one way of invoking the Scheduler is to
select a "Schedule Task for Bank" option from the aforementioned
pop-up window, which will in turn invoke an "Add Task" window (also
shown and described herein as a "SchedulerConfigTaskForm").
[0115] In some implementations, a gaming machine may be assigned to
a bank by selecting the gaming machine from window 225 and dragging
it to the assigned bank name of window 220. Similarly, a gaming
machine may be removed from a bank in this example by selecting the
gaming machine from window 220 (e.g., by "right clicking" on it)
and selecting "Remove Machine from Bank."
[0116] Window 225 displays attributes of the gaming machines in
this particular network. Here, the asset number (sometimes referred
to as a "house number"), serial number, vendor and theme are
displayed in window 225. The house number may be assigned by the
customer/gaming establishment. The serial number is assigned by the
vendor and is the same as the serial number indicated on the
exterior of the cabinet. The vendor is the name of the owner of the
gaming software loaded on the gaming machine (here, IGT). The
"theme" indicates a type of game for which the gaming machine is
configured to play, some aspects of which will be displayed on a
gaming machine. For example, at a particular time a gaming machine
may be configured with a "Cleopatra.RTM." theme, a
"Lobstermania.RTM." theme, a "Wheel of Fortune.RTM." theme,
etc.
[0117] However, any convenient gaming machine attributes may be
displayed. In some implementations, for example, a gaming machine
may be configured to play more than one game according to a
player's selection and will display attributes of more than one
game theme (e.g., in different parts of a display screen and/or by
alternating the display to indicate familiar aspects of different
games at different times).
[0118] Moreover, in alternative implementations, the gaming
machines may be displayed in different ways, e.g. as icons. Some
such implementations arrange such icons to illustrate the
arrangement of a gaming floor, e.g., by aggregating gaming machine
icons into banks.
[0119] Window 225 also allows a user to select a particular gaming
machine (e.g., by "clicking" on it by use of a mouse or similar
device) and to display details of its configuration in "Machine
Details" window 230. Here, details of the game theme and gaming
machine configuration may be displayed by interacting with buttons
displayed in window 225. Many other details of gaming machine
configuration can be displayed in addition to those illustrated in
FIG. 2.
[0120] In this exemplary implementation, if a user decides to alter
the configuration of one or more gaming machines, the user may do
so by clicking on the "Scheduler" button 235. In this example, a
user also has the alternative of opening a menu by right clicking
on any one of various parts of GUI 205, thereby revealing a pop-up
menu that allows a user to perform various tasks, including but not
limited to the scheduling of configuration tasks and customizing
the display.
[0121] The Scheduler can be implemented in various ways. One
exemplary GUI 305 is shown in FIG. 3. GUI 305 includes window 310
for indicating a scheduled configuration task and a gaming machine
for which the configuration task is scheduled (in this example,
gaming machine 11777). Configuration tasks can include, but are not
limited to, changing the theme of a gaming machine (either by
enabling a previously downloaded game or by scheduling the download
and enablement of a new game), changing the "max bet" level,
denomination, pay table percentage, volume, a display attribute,
including but not limited to color and displayed information,
enabling or disabling a gaming machine for tournament play,
etc.
[0122] Window 320 indicates a bank, if any, to which the gaming
machine is assigned. Here, window 320 is blank because gaming
machine 11777 does not belong to a bank. In some implementations,
window 310 would be blank if a task is scheduled for an entire bank
of gaming machines indicated in window 320.
[0123] The Scheduler allows a task to be performed "immediately,"
by checking box 350, or to be performed at a time and date
indicated in windows 330 and 340. Here, the task is scheduled for
Aug. 12, 2005 at 11:20 a.m. In some implementations, window 330
and/or window 340 is expandable for easy entry of a date and/or a
time. For example, button 331 may be activated to display a
calendar from which a date may be selected.
[0124] Preferably, the indicated time for performing a task
(including "immediately") is actually a time for attempting to
perform a task, or at least for determining whether it is an
appropriate time for performing the task. Whether or not the task
is performed at the indicated time will preferably depend on
whether one or more conditions are satisfied, e.g., whether a
gaming machine is online at the indicated time, whether the game
play credits of the gaming machine are zero, etc. The latter
condition is important (at least in some instances) so that a
player's game play is not interrupted by a scheduled configuration
change.
[0125] Recurrence window 360 allows configuration changes to be
scheduled on a recurring basis, if a user so desires. In this
example, an occurrence interval can be specified in window 365
(e.g., daily, weekly, monthly, etc.); here, no such recurrence is
desired, so no interval is indicated in window 365. In addition,
the duration of an indicated occurrence can be specified in window
370. In this example, the duration is expressed in units of months,
but any convenient duration can be used. In some preferred
embodiments, an indicated configuration change reverts to a default
configuration value at the end of an indicated duration.
[0126] Here, window 372 and its subparts allow a user to specify
the scheduled configuration change. In this example, the user is
scheduling a change in the paytable percentage at $0.01. In this
example, the desired paytable percentage may be selected from a
variety of paytable percentages indicated in window 375. After the
selection is made, the user can click on button 380 to schedule the
task.
[0127] FIG. 4 illustrates GUI 405, which will now be used to
reference additional features of the Scheduler according to some
implementations of the invention. In this example, selecting
Scheduler button 410 causes GUI 405 to be presented. Calendar
window 415 indicates the current date 420 and also indicates, in
bold, days on which tasks are scheduled. Here, a user has clicked
on Aug. 19, 2005, which has caused the tasks scheduled for that
date to appear in window 425. More details of a scheduled task may
be revealed, for example, by selecting button 430. In alternative
implementations, more details of a scheduled task appear in window
425.
[0128] Alternatively, scheduled tasks may be determined by
activating button 450 and launching the Report Viewer, one
implementation of which is illustrated in FIGS. 5A, 5B and 6. In
this example (referring first to FIG. 5A), Report Viewer window 510
allows a user to select one of the following types of reports:
Failed Task Reports regarding tasks that did not execute through
the SBG system; Login Reports, indicating all users logged in to
the SBG server; Machine Status Reports, which provide detailed
information regarding the gaming machines in communication with the
SBG server; Scheduler Reports pertaining to pending transactions in
the Scheduler's queue; or User Activity Reports, which indicate
activity initiated by each user profile logged in to the SBG
server. Preferred implementations also allow such reports to be
exported to a selected file.
[0129] Preferably, reports may be filtered according to various
criteria specified in filtering window 517, including but not
limited to date range. In some implementations, different filtering
criteria are available, depending on the type of information to be
filtered for the report. Referring now to FIG. 5B, a user has
selected Scheduler Report field 512, filtered by gaming machine and
activated Generate Report button 520, causing Scheduled Tasks for
gaming machine 11777 to be listed in window 515.
[0130] Referring now to FIG. 6, a user has selected User Activity
Report field 610 of Report Viewer window 510. Referring to
filtering window 517, it may be observed that additional filtering
criteria are available in this example, as compared to the example
illustrated by FIG. 5. In this instance, the user has controlled
filtering window 517 to request a report for all users and all
types of user activities that had taken place thus far on Aug. 12,
2005, then activated Generate Report window 520 to cause the
indicated User Activity Report to be displayed in window 615.
[0131] FIG. 7 illustrates one manifestation of a GUI for
implementing Log Viewer. Here, a user has activated GUI 705 by
selecting Log Viewer button 710. In this example, a user can choose
to generate an error log or transaction history; here, the user has
selected button 715 to generate a transaction history. Here, by
interacting with window 720 a user can filter the transaction
history log according to the user who created the transaction. In
addition, the user may filter the data range of the transaction
history log by indicating a beginning date in window 725 and an end
date in field 730. In this example, the user has chosen to view the
transactions of all users on Aug. 12, 2005. By clicking on the
"Show Results" button 735, the transaction history log indicated in
FIG. 7 has been generated.
[0132] FIG. 8 illustrates an exemplary GUI 805 for implementing
Device Management options according to some aspects of the
invention. Here, a user has clicked on Device Management tab 810,
then selected button 815 to produce a display of all authorized
devices in window 820. In this example, "authorized devices" are
devices that are authorized to communicate with the SBG server. If
the user had selected "all devices" button 825, a display of all
devices registered as potentially capable of communicating with the
SBG server would have been produced in window 820. Here, a user
with a high enough level of authority (e.g., an "Administrative"
profile, as discussed below) can authorize or de-authorize a device
by selecting the device in window 820 and adding or removing a
check from the "Authorized" field.
[0133] FIGS. 9A, 9B and 9C illustrate features of user management
according to some implementations of the invention. GUI 905 is
invoked by selecting User Management tab 910. Here, "Active Users"
button 915 has been selected, causing a display of all active users
in window 920. Here, an "active" user is one who is authorized to
communicate with the SBG server. If the "All Users" button 915 had
been selected, all users who are registered for potential
communication with the SBG server would have been displayed in
window 920. Selecting button 935 would cause a display of users who
are currently logged in. In this example, the user name, display
name, authentication domain, email address and active/inactive
status of each user is displayed in window 920, but any convenient
user attributes may be displayed.
[0134] A user with a sufficiently high level of authority, e.g., a
user having an "Administrative" role in this example, can perform
various user management tasks by interacting with GUI 905. For
example, an Administrative user could activate or de-activate
another user or cause a logged on user to be logged off.
[0135] One example of assigning user roles according to the
invention will now be described with reference to FIG. 9B. Here, a
user having an Administrative role has selected "Assign Roles"
button 930, causing Assign Roles window 950 to pop up. The user has
selected a particular user name, "nhansen," in user name window
955. Assign Roles window 950 provides various types of predefined
user role categories for user "nhansen." In this example, the roles
include Admin, Read Only Test, Low Security, Slot Supervisor and
Temp Role 5. In some instances, more than one role can be assigned
to a user. User roles may be assigned with a relatively high level
of granularity if desired, e.g., according to authority levels for
individual aspects of SBG system management.
[0136] These roles may be created (and authorities for these roles
may be defined) by an Administrative user, e.g., as described now
with reference to FIG. 9C. Here, a user has caused Create/Edit
roles window 960 to open by engaging button 935. By interacting
with fields of window 960, a user may create a new role or modify
the authorities granted to an existing role. In this example, a
user has selected "Admin" from Role Name field 965, causing the
previously-defined authorities for an Administrative role to be
displayed in window 970. In this implementation, users may be given
differing authorization levels for GUIs of specified software
modules (also referred to herein as "forms") of the SBG system. As
noted, the Administrative role has the highest level of access,
"full," which allows a user to view, add, delete and change
information on a form. "Read" access limits users to viewing
information on the specified form. "Write" access allows a user to
view and add information for the indicated form.
[0137] FIG. 10A illustrates one exemplary GUI 1005 that may be used
for implementing Download Manager/Game Set Manager functionality
according to some implementations of the invention. This
functionality includes, but is not limited to, downloading games
and related tasks. In some implementations of the invention, some
of these tasks may be performed by an operator via interaction with
a gaming machine. In other implementations of the invention, all of
these tasks are performed by controlling SBG server 130 via
interaction with a management console or one of host devices 160 or
170. GUI 1005 provides Games button 1007, Player Terminals button
1010, Download Log button 1012, Server Log button 1015 and Options
button 1017, Information button 1040 and Validation button 1042 for
performing some of these tasks. These and other features
illustrated in FIG. 10A will be explained in the following
paragraphs.
[0138] In some implementations of the invention, an operator is
prompted to enter a password after clicking on button Games 1007.
If an operator logs in successfully, the operator may then select
games for downloading to gaming machines by clicking on New button
1037. This action will cause GUI 1045 of FIG. 10B to appear, using
which the operator may browse for a file name of a desired game
file.
[0139] In this example, the operator is browsing game files that
have already been downloaded to the local SBG server 130. In some
implementations, the process for obtaining games from central
system 163 follows a similar flow. For implementations of the
invention that include methods discussed in the License Manager
application, the game software downloaded to the local SBG server
130 would include information required to make a challenge to
License Manager 131 and to evaluate the authenticity of a challenge
response received from License Manager 131.
[0140] In some implementations, the application will fill in number
field 1025, Executable field 1048 and Type field 1030 corresponding
with a selected game and will permit (or require) the operator to
fill in Name field 1032. (See FIG. 10C.)
[0141] Clicking Apply button 1020 (see FIG. 10A) will complete the
addition of the new game. Undo button 1022 may be used to undo the
operator's last action.
[0142] After game files have been selected, these files may be
downloaded to gaming machines using a GUI such as GUI 1050 of FIG.
10D and GUI 1060 of FIG. 10E. In some implementations of the
invention, GUI 1050 and/or GUI 1060 will be presented on a display
device of a gaming machine. In other implementations of the
invention, GUI 1050 and/or GUI 1060 will be presented on an SBG
server management console, one of host devices 160 or 170, etc. In
such implementations, the gaming machines that will receive the
downloaded games are identified as part of the download
process.
[0143] Referring now to GUI 1050 of FIG. 10D, a download server may
be identified by selecting button 1058 and interacting with the GUI
displayed thereby. Memory clear and authentication functions may be
performed via interaction with buttons 1054 and 1056, respectively.
For some implementations in which GUI 1050 is presented on a SBG
server management console, one of host devices 160 or 170, etc.,
GUI 1050 (or a similar GUI) allows an operator to identify gaming
machines that will receive the downloaded games. In alternative
implementations, gaming machines may be identified via activating
Player Terminals button 1010 of GUI 1005, via the Scheduler, or
otherwise.
[0144] The game download options of GUI 1060 are presented after an
operator clicks on button 1052 of GUI 1050. An operator may scroll
through the list of games available to download by using Up button
1062, Down button 1064, Page Up button 1068 or Page Down button
1070. To start the download process, an operator may select a game
from the list and then select Download button 1072.
[0145] Selecting Download Log button 1012 of GUI 1005 (see FIG.
10A) displays GUI 1105, which indicates the games downloaded to
player terminals in the current session. In this example, the date,
time, board ID and game number can be displayed, but other
implementations provide other relevant information (e.g., download
progress). Printout 1125 of FIG. 11B indicates another download log
that displays game number, icon, name, type and validation
information in XML format.
[0146] In this exemplary implementation, selecting Server Log
button 1015 of GUI 1005 (see FIG. 10A) displays GUI 1150, which
indicates recent activities of a game download server. The
information provided is similar to that described elsewhere herein
with reference to Log Viewer button 710 of FIG. 7. Selecting
Options button 1017 of GUI 1005 (see FIG. 10A) provides a view of
current server configurations.
[0147] Referring now to FIG. 12A, validation button 1042 may be
selected to verify the authenticity of gaming software. First, an
operator activates Games button 1007 of GUI 1005 (see FIG. 10A) and
selects the game to be verified. After clicking validation button
1042, the operator may select a validation method in window 1210,
type in an offset number (as a hexadecimal digit) in window 1215
and click Calculate button 1217. If the calculation has completed
and is valid, the value displayed in signature field 1221 will
match the value displayed in the upper portion of the window.
[0148] To authenticate the game's validation, an operator can click
Authenticate button 1220. If the game is a valid executable image,
a GUI such as GUI 1225 of FIG. 12B will be displayed. As shown in
FIG. 12C, signature field 1255 is populated with this
information.
Tournament Play
[0149] The following examples are merely exemplary and do not in
any manner limit the possible types of tournaments enabled by
Server Based Gaming.
[0150] "Standard" Tournaments
[0151] The SBG server can access the database of machines, games
available on those machines, denominations at which the games may
be played and, in some implementations, information regarding the
players currently using the gaming machines. The last feature may
be implemented, for example, via interaction between the SBG server
and a player tracking server. All of these factors can be used to
determine eligibility:
[0152] In some implementations, the tournament may be limited to
specific machines, so that the tournament may be located in one
area of the casino (to build excitement and competition). In some
implementations, the tournament may be limited to specific games,
to ensure that all players have equal chances of winning. The
tournament may also be limited to a specific denomination, to
ensure that all players'winnings are fairly compared.
[0153] In some implementations, the operator, working at the server
or at a workstation with access to the server, can identify the
games, denominations and machines that are available for tournament
play. In some such implementations, the operator keys in (or
otherwise specifies) a tournament start time and either end time or
duration. The operator can also specify a tournament prize (or
prizes for 1st, 2nd, 3rd, etc). The server can communicate
tournament eligibility requirements and tournament start and end
events to the gaming machines. These messages may be part of a
standardized protocol (e.g. SuperSAS or Best of Breed).
[0154] One example will now be described with reference to the flow
chart of FIG. 13. In step 1305 the SBG server sends a tournament
notification message to a plurality of gaming machines on the SBG
network. For example, the notification message may indicate that a
tournament for Little Green Men, with a 5 cent denomination, max
wager, is starting at 5:00pm and lasting until 6:00pm., and that
the player with the highest credit meter at the end of the
tournament wins $5,000. The message from the SBG server may
include, e.g.: a header identifying the message as a tournament
advertisement; a tournament ID; a game ID (e.g., Game Name,
paytable); a denomination/max wager; a start time; an end time (or
duration); and prize(s) obtainable. Delivery of the message may be
scheduled ahead of time, e.g., by using the SBG Scheduler.
[0155] In step 1310, some of the gaming machines that received the
notification (and possibly others operated by players who found out
about the tournament in other ways) send a request to enroll in the
tournament. The request may be sent, for example, in response to a
player's activation of a button, etc., of the gaming machine in
response to the message. The request may, for example, include: a
header identifying the message as a response to a tournament
advertisement; a tournament ID; a game ID; a gaming machine ID;
denomination; and a Player ID and/or account information. The last
information is necessary, for example, if money (e.g., for a
tournament fee) is to be deducted from a player account. The
request may also indicate credit meter information if the
tournament fee is to be deducted from the gaming machine's credit
meter.
[0156] In some implementations, the server and/or an administrator
may apply predetermined criteria to evaluate whether a gaming
machine and/or a player is eligible to enroll in the tournament.
(Step 1315.) For example, if a player's credit meter indicates that
the player has insufficient credits for enrolling in the
tournament, the player will not be allowed to enroll.
[0157] If a player is allowed to enroll in the tournament, the
server will send a tournament enrollment confirmation message in
this implementation. (Step 1320.) The confirmation message may, for
example, include the following information: a header; the
tournament ID; the game ID; the gaming machine ID; denomination;
amount to deduct from the credit meter (if applicable); and the
tournament start time. In some implementations, the confirmation
message will include time synchronization data. At this time, the
server may deduct the tournament fee from a player account. If the
player is not allowed to enroll in the tournament, the server will
send a denial message (step 1325).
[0158] In step 1330, it is determined whether the SBG server has
received another enrollment request from a gaming machine, e.g.,
within a predetermined time period. If so, the request is evaluated
as before. Shortly before the tournament begins, the server sends a
notification message that the tournament is about to start (step
1335) and configures the gaming machines for tournament play (step
1340). The notification message may, for example, have the
following format: header; tournament ID; game ID; machine ID;
denomination; Date/Time stamp; and tournament duration or end
time.
[0159] The gaming machines report tournament outcome data (step
1345), such as: Header; Tournament ID; Game ID; Machine ID;
Denomination; Wager; outcome data (e.g. 3 LGM scatters paid 200
credits); Pay amount; and Credit meter reading, after payout. In
some implementations, step 1345 may have several sub-parts. For
example, the server may request an overall tournament outcome from
the gaming machines via a message with the following format:
Header; Tournament ID; Game ID; and Machine ID (if sent to one
specific machine and not broadcast to all machines). In some such
implementations, the gaming machines respond with outcome data such
as the following: Header; Tournament ID; Game ID; Machine ID;
Denomination; Final Credit Meter (or difference between initial and
final credit meter); and counts of specific outcomes required by
the tournament (e.g., 12 royal flushes achieved during
tournament).
[0160] In step 1350, the server broadcasts messages relating to the
tournament winner(s), e.g.,: Header; Tournament ID; Game ID; Winner
ID(s); and Amount(s) or Prize(s) Won. In step 1355, the prizes are
awarded. The server may, for example, credit the winner's account
or send an EFT message to the gaming machine to add the amount won
to the machine's credit meter.
[0161] In some implementations, the tournament winner may be
decided upon one or more of the following criteria: (1) Highest
payout percentage achieved; (2) Highest final credit meter; (3)
Most money won (regardless of games played or money wagered);
and/or (4) Highest count of a specific win category (e.g. Royal
Flush).
[0162] Time-Shifted Tournaments
[0163] Alternative implementations of the invention provide a
tournament where not all players have to begin at the same
time--they just play for the same duration. The tournament
enrollment period may be, e.g., for 1 week. During that time, any
player can enroll, play for one hour and have his performance
recorded. In this tournament, a single player can enroll more than
once. The server must track a database of players and performances
to determine winners after the tournament is over.
[0164] Game Count Tournaments
[0165] Most tournaments are played for a specific duration, so the
faster a player plays, the more he can win. Alternative
implementations of the invention provide a tournament that consists
of a specific number of games that do not need to be completed
within a short time frame. In this way, some players may have a
greater opportunity to enjoy the games, rather than, e.g., pounding
frantically at a "spin" button.
[0166] Time-Scaled Tournaments
[0167] Some implementations of the invention provide a tournament
wherein one player may play for a longer duration than another. For
example, one player may play for 5 hours and another for one hour
only. The server can take the best single hour of play out of the
first player's performance, or can scale the player's results
(e.g., by dividing winnings or outcomes by 5).
[0168] Accelerated Bonuses
[0169] During some tournaments of the present invention, the game
may offer the player the option of accelerating the bonus game,
such as by skipping intro videos or automatically making random
picks for the player.
[0170] Wager-Relative Tournaments
[0171] In some implementations, a server makes a range of
denominations available for tournament play. The winnings are
scaled to the player's wager before being compared to other
players. The server could also scale the outcomes to the wager. For
example, a player playing 10-play poker for $0.10 each may play
against a player playing single-play poker for $1.00, but since his
chances of achieving a royal flush is 10.times.greater, his final
royal flush count is divided by 10 before being compared to the
other player's royal flush count.
[0172] Progressive Tournaments
[0173] Here, the server may instantiate and track a progressive
pool for the lifetime of the tournament. The pool may be, for
example, seeded with casino funds, then funded by a percentage of
each tournament player's wager. The progressive can then be awarded
to the winning player or divided among multiple winning players. As
an alternative to dividing the pool, the server could manage
multiple pools, one for each winner to be awarded later.
[0174] Performance-Based Tournaments
[0175] In these implementations, a tournament may award multiple
prizes that are not based solely one 1st, 2nd, 3rd places. For
example, a tournament may award one prize for the player with the
most royal flushes, another prize to the player with the most
straight flushes and another to the player with the most instances
of "4 of a kind." One player could potentially win more than one
prize.
Gaming Machine
[0176] Turning next to FIG. 14, a video gaming machine 2 of the
present invention is shown. Machine 2 includes a main cabinet 4,
which generally surrounds the machine interior (not shown) and is
viewable by users. The main cabinet includes a main door 8 on the
front of the machine, which opens to provide access to the interior
of the machine. Attached to the main door are player-input switches
or buttons 32, a coin acceptor 28, and a bill validator 30, a coin
tray 38, and a belly glass 40. Viewable through the main door is a
video display monitor 34 and an information panel 36. The display
monitor 34 will typically be a cathode ray tube, high resolution
flat-panel LCD, or other conventional electronically controlled
video monitor. The information panel 36 may be a back-lit, silk
screened glass panel with lettering to indicate general game
information including, for example, a game denomination (e.g. $0.25
or $1). The bill validator 30, player-input switches 32, video
display monitor 34, and information panel are devices used to play
a game on the game machine 2. The devices are controlled by
circuitry (e.g. the master gaming controller) housed inside the
main cabinet 4 of the machine 2.
[0177] Many different types of games, including mechanical slot
games, video slot games, video poker, video black jack, video
pachinko and lottery, may be provided with gaming machines of this
invention. In particular, the gaming machine 2 may be operable to
provide a play of many different instances of games of chance. The
instances may be differentiated according to themes, sounds,
graphics, type of game (e.g., slot game vs. card game),
denomination, number of paylines, maximum jackpot, progressive or
non-progressive, bonus games, etc. The gaming machine 2 may be
operable to allow a player to select a game of chance to play from
a plurality of instances available on the gaming machine. For
example, the gaming machine may provide a menu with a list of the
instances of games that are available for play on the gaming
machine and a player may be able to select from the list a first
instance of a game of chance that they wish to play.
[0178] The various instances of games available for play on the
gaming machine 2 may be stored as game software on a mass storage
device in the gaming machine or may be generated on a remote gaming
device but then displayed on the gaming machine. The gaming machine
2 may executed game software, such as but not limited to video
streaming software that allows the game to be displayed on the
gaming machine. When an instance is stored on the gaming machine 2,
it may be loaded from the mass storage device into a RAM for
execution. In some cases, after a selection of an instance, the
game software that allows the selected instance to be generated may
be downloaded from a remote gaming device, such as another gaming
machine.
[0179] The gaming machine 2 includes a top box 6, which sits on top
of the main cabinet 4. The top box 6 houses a number of devices,
which may be used to add features to a game being played on the
gaming machine 2, including speakers 10, 12, 14, a ticket printer
18 which prints bar-coded tickets 20, a key pad 22 for entering
player tracking information, a florescent display 16 for displaying
player tracking information, a card reader 24 for entering a
magnetic striped card containing player tracking information, and a
video display screen 42. The ticket printer 18 may be used to print
tickets for a cashless ticketing system. Further, the top box 6 may
house different or additional devices than shown in the FIGS. 1.
For example, the top box may contain a bonus wheel or a back-lit
silk screened panel which may be used to add bonus features to the
game being played on the gaming machine. As another example, the
top box may contain a display for a progressive jackpot offered on
the gaming machine. During a game, these devices are controlled and
powered, in part, by circuitry (e.g. a master gaming controller)
housed within the main cabinet 4 of the machine 2.
[0180] Understand that gaming machine 2 is but one example from a
wide range of gaming machine designs on which the present invention
may be implemented. For example, not all suitable gaming machines
have top boxes or player tracking features. Further, some gaming
machines have only a single game display--mechanical or video,
while others are designed for bar tables and have displays that
face upwards. As another example, a game may be generated in on a
host computer and may be displayed on a remote terminal or a remote
gaming device. The remote gaming device may be connected to the
host computer via a network of some type such as a local area
network, a wide area network, an intranet or the Internet. The
remote gaming device may be a portable gaming device such as but
not limited to a cell phone, a personal digital assistant, and a
wireless game player. Images rendered from 3-D gaming environments
may be displayed on portable gaming devices that are used to play a
game of chance. Further a gaming machine or server may include
gaming logic for commanding a remote gaming device to render an
image from a virtual camera in a 3-D gaming environments stored on
the remote gaming device and to display the rendered image on a
display located on the remote gaming device. Thus, those of skill
in the art will understand that the present invention, as described
below, can be deployed on most any gaming machine now available or
hereafter developed.
[0181] Some preferred gaming machines of the present assignee are
implemented with special features and/or additional circuitry that
differentiates them from general-purpose computers (e.g., desktop
PC's and laptops). Gaming machines are highly regulated to ensure
fairness and, in many cases, gaming machines are operable to
dispense monetary awards of multiple millions of dollars.
Therefore, to satisfy security and regulatory requirements in a
gaming environment, hardware and software architectures may be
implemented in gaming machines that differ significantly from those
of general-purpose computers. A description of gaming machines
relative to general-purpose computing machines and some examples of
the additional (or different) components and features found in
gaming machines are described below.
[0182] At first glance, one might think that adapting PC
technologies to the gaming industry would be a simple proposition
because both PCs and gaming machines employ microprocessors that
control a variety of devices. However, because of such reasons as
1) the regulatory requirements that are placed upon gaming
machines, 2) the harsh environment in which gaming machines
operate, 3) security requirements and 4) fault tolerance
requirements, adapting PC technologies to a gaming machine can be
quite difficult. Further, techniques and methods for solving a
problem in the PC industry, such as device compatibility and
connectivity issues, might not be adequate in the gaming
environment. For instance, a fault or a weakness tolerated in a PC,
such as security holes in software or frequent crashes, may not be
tolerated in a gaming machine because in a gaming machine these
faults can lead to a direct loss of funds from the gaming machine,
such as stolen cash or loss of revenue when the gaming machine is
not operating properly.
[0183] For the purposes of illustration, a few differences between
PC systems and gaming systems will be described. A first difference
between gaming machines and common PC based computers systems is
that gaming machines are designed to be state-based systems. In a
state-based system, the system stores and maintains its current
state in a non-volatile memory, such that, in the event of a power
failure or other malfunction the gaming machine will return to its
current state when the power is restored. For instance, if a player
was shown an award for a game of chance and, before the award could
be provided to the player the power failed, the gaming machine,
upon the restoration of power, would return to the state where the
award is indicated. As anyone who has used a PC, knows, PCs are not
state machines and a majority of data is usually lost when a
malfunction occurs. This requirement affects the software and
hardware design on a gaming machine.
[0184] A second important difference between gaming machines and
common PC based computer systems is that for regulation purposes,
the software on the gaming machine used to generate the game of
chance and operate the gaming machine has been designed to be
static and monolithic to prevent cheating by the operator of gaming
machine. For instance, one solution that has been employed in the
gaming industry to prevent cheating and satisfy regulatory
requirements has been to manufacture a gaming machine that can use
a proprietary processor running instructions to generate the game
of chance from an EPROM or other form of non-volatile memory. The
coding instructions on the EPROM are static (non-changeable) and
must be approved by a gaming regulators in a particular
jurisdiction and installed in the presence of a person representing
the gaming jurisdiction. Any changes to any part of the software
required to generate the game of chance, such as adding a new
device driver used by the master gaming controller to operate a
device during generation of the game of chance can require a new
EPROM to be burnt, approved by the gaming jurisdiction and
reinstalled on the gaming machine in the presence of a gaming
regulator. Regardless of whether the EPROM solution is used, to
gain approval in most gaming jurisdictions, a gaming machine must
demonstrate sufficient safeguards that prevent an operator or
player of a gaming machine from manipulating hardware and software
in a manner that gives them an unfair and some cases an illegal
advantage. The gaming machine should have a means to determine if
the code it will execute is valid. If the code is not valid, the
gaming machine must have a means to prevent the code from being
executed. The code validation requirements in the gaming industry
affect both hardware and software designs on gaming machines.
[0185] A third important difference between gaming machines and
common PC based computer systems is the number and kinds of
peripheral devices used on a gaming machine are not as great as on
PC based computer systems. Traditionally, in the gaming industry,
gaming machines have been relatively simple in the sense that the
number of peripheral devices and the number of functions the gaming
machine has been limited. Further, in operation, the functionality
of gaming machines were relatively constant once the gaming machine
was deployed, i.e., new peripherals devices and new gaming software
were infrequently added to the gaming machine. This differs from a
PC where users will go out and buy different combinations of
devices and software from different manufacturers and connect them
to a PC to suit their needs depending on a desired application.
Therefore, the types of devices connected to a PC may vary greatly
from user to user depending in their individual requirements and
may vary significantly over time.
[0186] Although the variety of devices available for a PC may be
greater than on a gaming machine, gaming machines still have unique
device requirements that differ from a PC, such as device security
requirements not usually addressed by PCs. For instance, monetary
devices, such as coin dispensers, bill validators and ticket
printers and computing devices that are used to govern the input
and output of cash to a gaming machine have security requirements
that are not typically addressed in PCs. Therefore, many PC
techniques and methods developed to facilitate device connectivity
and device compatibility do not address the emphasis placed on
security in the gaming industry.
[0187] To address some of the issues described above, a number of
hardware/software components and architectures are utilized in
gaming machines that are not typically found in general purpose
computing devices, such as PCs. These hardware/software components
and architectures, as described below in more detail, include but
are not limited to watchdog timers, voltage monitoring systems,
state-based software architecture and supporting hardware,
specialized communication interfaces, security monitoring and
trusted memory.
[0188] A watchdog timer is normally used in IGT gaming machines to
provide a software failure detection mechanism. In a normally
operating system, the operating software periodically accesses
control registers in the watchdog timer subsystem to "re-trigger"
the watchdog. Should the operating software fail to access the
control registers within a preset timeframe, the watchdog timer
will timeout and generate a system reset. Typical watchdog timer
circuits contain a loadable timeout counter register to allow the
operating software to set the timeout interval within a certain
range of time. A differentiating feature of the some preferred
circuits is that the operating software cannot completely disable
the function of the watchdog timer. In other words, the watchdog
timer always functions from the time power is applied to the
board.
[0189] IGT gaming computer platforms preferably use several power
supply voltages to operate portions of the computer circuitry.
These can be generated in a central power supply or locally on the
computer board. If any of these voltages falls out of the tolerance
limits of the circuitry they power, unpredictable operation of the
computer may result. Though most modem general-purpose computers
include voltage monitoring circuitry, these types of circuits only
report voltage status to the operating software. Out of tolerance
voltages can cause software malfunction, creating a potential
uncontrolled condition in the gaming computer. Gaming machines of
the present assignee typically have power supplies with tighter
voltage margins than that required by the operating circuitry. In
addition, the voltage monitoring circuitry implemented in IGT
gaming computers typically has two thresholds of control. The first
threshold generates a software event that can be detected by the
operating software and an error condition generated. This threshold
is triggered when a power supply voltage falls out of the tolerance
range of the power supply, but is still within the operating range
of the circuitry. The second threshold is set when a power supply
voltage falls out of the operating tolerance of the circuitry. In
this case, the circuitry generates a reset, halting operation of
the computer.
[0190] The standard method of operation for IGT slot machine game
software is to use a state machine. Different functions of the game
(bet, play, result, points in the graphical presentation, etc.) may
be defined as a state. When a game moves from one state to another,
critical data regarding the game software is stored in a custom
non-volatile memory subsystem. This is critical to ensure the
player's wager and credits are preserved and to minimize potential
disputes in the event of a malfunction on the gaming machine.
[0191] In general, the gaming machine does not advance from a first
state to a second state until critical information that allows the
first state to be reconstructed is stored. This feature allows the
game to recover operation to the current state of play in the event
of a malfunction, loss of power, etc that occurred just prior to
the malfunction. After the state of the gaming machine is restored
during the play of a game of chance, game play may resume and the
game may be completed in a manner that is no different than if the
malfunction had not occurred. Typically, battery backed RAM devices
are used to preserve this critical data although other types of
non-volatile memory devices may be employed. These memory devices
are not used in typical general-purpose computers.
[0192] As described in the preceding paragraph, when a malfunction
occurs during a game of chance, the gaming machine may be restored
to a state in the game of chance just prior to when the malfunction
occurred. The restored state may include metering information and
graphical information that was displayed on the gaming machine in
the state prior to the malfunction. For example, when the
malfunction occurs during the play of a card game after the cards
have been dealt, the gaming machine may be restored with the cards
that were previously displayed as part of the card game. As another
example, a bonus game may be triggered during the play of a game of
chance here a player is required to make a number of selections on
a video display screen. When a malfunction has occurred after the
player has made one or more selections, the gaming machine may be
restored to a state that shows the graphical presentation at the
just prior to the malfunction including an indication of selections
that have already been made by the player. In general, the gaming
machine may be restored to any state in a plurality of states that
occur in the game of chance that occurs while the game of chance is
played or to states that occur between the play of a game of
chance.
[0193] Game history information regarding previous games played
such as an amount wagered, the outcome of the game and so forth may
also be stored in a non-volatile memory device. The information
stored in the non-volatile memory may be detailed enough to
reconstruct a portion of the graphical presentation that was
previously presented on the gaming machine and the state of the
gaming machine (e.g., credits) at the time the game of chance was
played. The game history information may be utilized in the event
of a dispute. For example, a player may decide that in a previous
game of chance that they did not receive credit for an award that
they believed they won. The game history information may be used to
reconstruct the state of the gaming machine prior, during and/or
after the disputed game to demonstrate whether the player was
correct or not in their assertion.
[0194] Another feature of gaming machines, such as IGT gaming
computers, is that they often contain unique interfaces, including
serial interfaces, to connect to specific subsystems internal and
external to the slot machine. The serial devices may have
electrical interface requirements that differ from the "standard"
EIA 232 serial interfaces provided by general-purpose computers.
These interfaces may include EIA 485, EIA 422, Fiber Optic Serial,
optically coupled serial interfaces, current loop style serial
interfaces, etc. In addition, to conserve serial interfaces
internally in the slot machine, serial devices may be connected in
a shared, daisy-chain fashion where multiple peripheral devices are
connected to a single serial channel.
[0195] The serial interfaces may be used to transmit information
using communication protocols that are unique to the gaming
industry. For example, IGT's Netplex is a proprietary communication
protocol used for serial communication between gaming devices. As
another example, SAS is a communication protocol used to transmit
information, such as metering information, from a gaming machine to
a remote device. Often SAS is used in conjunction with a player
tracking system.
[0196] IGT gaming machines may alternatively be treated as
peripheral devices to a casino communication controller and
connected in a shared daisy chain fashion to a single serial
interface. In both cases, the peripheral devices are preferably
assigned device addresses. If so, the serial controller circuitry
must implement a method to generate or detect unique device
addresses. General-purpose computer serial ports are not able to do
this.
[0197] Security monitoring circuits detect intrusion into an IGT
gaming machine by monitoring security switches attached to access
doors in the slot machine cabinet. Preferably, access violations
result in suspension of game play and can trigger additional
security operations to preserve the current state of game play.
These circuits also function when power is off by use of a battery
backup. In power-off operation, these circuits continue to monitor
the access doors of the slot machine. When power is restored, the
gaming machine can determine whether any security violations
occurred while power was off, e.g., via software for reading status
registers. This can trigger event log entries and further data
authentication operations by the slot machine software.
[0198] Trusted memory devices are preferably included in an IGT
gaming machine computer to ensure the authenticity of the software
that may be stored on less secure memory subsystems, such as mass
storage devices. Trusted memory devices and controlling circuitry
are typically designed to not allow modification of the code and
data stored in the memory device while the memory device is
installed in the slot machine. The code and data stored in these
devices may include authentication algorithms, random number
generators, authentication keys, operating system kernels, etc. The
purpose of these trusted memory devices is to provide gaming
regulatory authorities a root trusted authority within the
computing environment of the slot machine that can be tracked and
verified as original. This may be accomplished via removal of the
trusted memory device from the slot machine computer and
verification of the secure memory device contents is a separate
third party verification device. Once the trusted memory device is
verified as authentic, and based on the approval of the
verification algorithms contained in the trusted device, the gaming
machine is allowed to verify the authenticity of additional code
and data that may be located in the gaming computer assembly, such
as code and data stored on hard disk drives. A few details related
to trusted memory devices that may be used in the present invention
are described in U.S. Pat. No. 6,685,567 from U.S. patent
application Ser. No. 09/925,098, filed Aug. 8, 2001 and titled
"Process Verification," which is incorporated herein in its
entirety and for all purposes.
[0199] Mass storage devices used in a general purpose computer
typically allow code and data to be read from and written to the
mass storage device. In a gaming machine environment, modification
of the gaming code stored on a mass storage device is strictly
controlled and would only be allowed under specific maintenance
type events with electronic and physical enablers required. Though
this level of security could be provided by software, IGT gaming
computers that include mass storage devices preferably include
hardware level mass storage data protection circuitry that operates
at the circuit level to monitor attempts to modify data on the mass
storage device and will generate both software and hardware error
triggers should a data modification be attempted without the proper
electronic and physical enablers being present.
[0200] Returning to the example of FIG. 14, when a user wishes to
play the gaming machine 2, he or she inserts cash through the coin
acceptor 28 or bill validator 30. Additionally, the bill validator
may accept a printed ticket voucher which may be accepted by the
bill validator 30 as an indicia of credit when a cashless ticketing
system is used. At the start of the game, the player may enter
playing tracking information using the card reader 24, the keypad
22, and the florescent display 16. Further, other game preferences
of the player playing the game may be read from a card inserted
into the card reader. During the game, the player views game
information using the video display 34. Other game and prize
information may also be displayed in the video display screen 42
located in the top box.
[0201] During the course of a game, a player may be required to
make a number of decisions, which affect the outcome of the game.
For example, a player may vary his or her wager on a particular
game, select a prize for a particular game selected from a prize
server, or make game decisions which affect the outcome of a
particular game. The player may make these choices using the
player-input switches 32, the video display screen 34 or using some
other device which enables a player to input information into the
gaming machine. In some embodiments, the player may be able to
access various game services such as concierge services and
entertainment content services using the video display screen 34
and one more input devices.
[0202] During certain game events, the gaming machine 2 may display
visual and auditory effects that can be perceived by the player.
These effects add to the excitement of a game, which makes a player
more likely to continue playing.
[0203] Auditory effects include various sounds that are projected
by the speakers 10, 12, 14.
[0204] Visual effects include flashing lights, strobing lights or
other patterns displayed from lights on the gaming machine 2 or
from lights behind the belly glass 40. After the player has
completed a game, the player may receive game tokens from the coin
tray 38 or the ticket 20 from the printer 18, which may be used for
further games or to redeem a prize. Further, the player may receive
a ticket 20 for food, merchandise, or games from the printer
18.
[0205] A gaming network that may be used to implement additional
methods performed in accordance with embodiments of the invention
is depicted in FIG. 15.
[0206] Gaming establishment 1501 could be any sort of gaming
establishment, such as a casino, a card room, an airport, a store,
etc. In this example, gaming network 1577 includes more than one
gaming establishment, all of which are networked to game server
1522.
[0207] Here, gaming machine 1502, and the other gaming machines
1530, 1532, 1534, and 1536, include a main cabinet 1506 and a top
box 1504. The main cabinet 1506 houses the main gaming elements and
can also house peripheral systems, such as those that utilize
dedicated gaming networks. The top box 1504 may also be used to
house these peripheral systems.
[0208] The master gaming controller 1508 controls the game play on
the gaming machine 1502 according to instructions and/or game data
from game server 1522 or stored within gaming machine 1502 and
receives or sends data to various input/output devices 1511 on the
gaming machine 1502. In one embodiment, master gaming controller
1508 includes processor(s) and other apparatus of the gaming
machines described above in FIGS. 6 and 7. The master gaming
controller 1508 may also communicate with a display 1510.
[0209] A particular gaming entity may desire to provide network
gaming services that provide some operational advantage. Thus,
dedicated networks may connect gaming machines to host servers that
track the performance of gaming machines under the control of the
entity, such as for accounting management, electronic find
transfers (EFTs), cashless ticketing, such as EZPay.TM., marketing
management, and data tracking, such as player tracking. Therefore,
master gaming controller 1508 may also communicate with EFT system
1512, EZPay.TM. system 1516 (a proprietary cashless ticketing
system of the present assignee), and player tracking system 1520.
The systems of the gaming machine 1502 communicate the data onto
the network 1522 via a communication board 1518.
[0210] It will be appreciated by those of skill in the art that
embodiments of the present invention could be implemented on a
network with more or fewer elements than are depicted in FIG. 15.
For example, player tracking system 1520 is not a necessary feature
of some implementations of the present invention. However, player
tracking programs may help to sustain a game player's interest in
additional game play during a visit to a gaming establishment and
may entice a player to visit a gaming establishment to partake in
various gaming activities. Player tracking programs provide rewards
to players that typically correspond to the player's level of
patronage (e.g., to the player's playing frequency and/or total
amount of game plays at a given casino). Player tracking rewards
may be free meals, free lodging and/or free entertainment.
Moreover, player tracking information may be combined with other
information that is now readily obtainable by an SBG system.
[0211] Moreover, DCU 1524 and translator 1525 are not required for
all gaming establishments 1501. However, due to the sensitive
nature of much of the information on a gaming network (e.g.,
electronic fund transfers and player tracking data) the
manufacturer of a host system usually employs a particular
networking language having proprietary protocols. For instance,
10-20 different companies produce player tracking host systems
where each host system may use different protocols. These
proprietary protocols are usually considered highly confidential
and not released publicly.
[0212] Further, in the gaming industry, gaming machines are made by
many different manufacturers. The communication protocols on the
gaming machine are typically hard-wired into the gaming machine and
each gaming machine manufacturer may utilize a different
proprietary communication protocol. A gaming machine manufacturer
may also produce host systems, in which case their gaming machine
are compatible with their own host systems. However, in a
heterogeneous gaming environment, gaming machines from different
manufacturers, each with its own communication protocol, may be
connected to host systems from other manufacturers, each with
another communication protocol. Therefore, communication
compatibility issues regarding the protocols used by the gaming
machines in the system and protocols used by the host systems must
be considered.
[0213] A network device that links a gaming establishment with
another gaming establishment and/or a central system will sometimes
be referred to herein as a "site controller." Here, site controller
1542 provides this function for gaming establishment 1501. Site
controller 1542 is connected to a central system and/or other
gaming establishments via one or more networks, which may be public
or private networks. Among other things, site controller 1542
communicates with game server 1522 to obtain game data, such as
ball drop data, bingo card data, etc.
[0214] In the present illustration, gaming machines 1502, 1530,
1532, 1534 and 1536 are connected to a dedicated gaming network
1522. In general, the DCU 1524 functions as an intermediary between
the different gaming machines on the network 1522 and the site
controller 1542. In general, the DCU 1524 receives data transmitted
from the gaming machines and sends the data to the site controller
1542 over a transmission path 1526. In some instances, when the
hardware interface used by the gaming machine is not compatible
with site controller 1542, a translator 1525 may be used to convert
serial data from the DCU 1524 to a format accepted by site
controller 1542. The translator may provide this conversion service
to a plurality of DCUs.
[0215] Further, in some dedicated gaming networks, the DCU 1524 can
receive data transmitted from site controller 1542 for
communication to the gaming machines on the gaming network. The
received data may be, for example, communicated synchronously to
the gaming machines on the gaming network.
[0216] Here, CVT 1552 provides cashless and cashout gaming services
to the gaming machines in gaming establishment 1501. Broadly
speaking, CVT 1552 authorizes and validates cashless gaming machine
instruments (also referred to herein as "tickets" or "vouchers"),
including but not limited to tickets for causing a gaming machine
to display a game result and cash-out tickets. Moreover, CVT 1552
authorizes the exchange of a cashout ticket for cash. These
processes will be described in detail below. In one example, when a
player attempts to redeem a cash-out ticket for cash at cashout
kiosk 1544, cash out kiosk 1544 reads validation data from the
cashout ticket and transmits the validation data to CVT 1552 for
validation. The tickets may be printed by gaming machines, by
cashout kiosk 1544, by a stand-alone printer, by CVT 1552, etc.
Some gaming establishments will not have a cashout kiosk 1544.
Instead, a cashout ticket could be redeemed for cash by a cashier
(e.g. of a convenience store), by a gaming machine or by a
specially configured CVT.
[0217] Some methods of the invention combine information that can
be obtained from game network accounting systems with features
described above. By combining, for example, information regarding
scheduled gaming machine configurations and information regarding
the amount of money that a gaming machine brings in while a gaming
machine has a particular configuration, gaming machine
configurations may be optimized to maximize revenue. Some such
methods involve determining a first rate of revenue obtained by a
gaming machine in the gaming network during a first time when the
gaming machine has a first configuration. The gaming machine is
later automatically configured according to second configuration
information supplied by the SBG server, e.g., as scheduled by the
Scheduler. A second rate of revenue, obtained by the gaming machine
during a second time when the gaming machine has the second
configuration, is determined, and so on.
[0218] After scheduling various configurations at various times,
optimum configurations for the gaming machine may be determined for
various times of day. The SBG system can them provide scheduled
optimal configurations for the gaming machine at the corresponding
times of day. Some implementations provide for groups (e.g., banks)
of gaming machines to be automatically configured according to a
predetermined schedule of optimal configurations for various times
of day, days of the week, times of the year, etc.
[0219] In some such implementations, an average revenue may be
computed, based on revenue from many gaming machines having the
same configuration at the same time of day. These average revenues
could be used to determine an overall optimal value for relevant
time periods.
[0220] FIG. 16 illustrates an example of a network device that may
be configured for implementing some methods of the present
invention. Network device 1660 includes a master central processing
unit (CPU) 1662, interfaces 1668, and a bus 1667 (e.g., a PCI bus).
Generally, interfaces 1668 include ports 1669 appropriate for
communication with the appropriate media. In some embodiments, one
or more of interfaces 1668 includes at least one independent
processor and, in some instances, volatile RAM. The independent
processors may be, for example, ASICs or any other appropriate
processors. According to some such embodiments, these independent
processors perform at least some of the functions of the logic
described herein. In some embodiments, one or more of interfaces
1668 control such communications-intensive tasks as encryption,
decryption, compression, decompression, packetization, media
control and management. By providing separate processors for the
communications-intensive tasks, interfaces 1668 allow the master
microprocessor 1662 efficiently to perform other functions such as
routing computations, network diagnostics, security functions,
etc.
[0221] The interfaces 1668 are typically provided as interface
cards (sometimes referred to as "linecards"). Generally, interfaces
1668 control the sending and receiving of data packets over the
network and sometimes support other peripherals used with the
network device 1660. Among the interfaces that may be provided are
FC interfaces, Ethernet interfaces, frame relay interfaces, cable
interfaces, DSL interfaces, token ring interfaces, and the like. In
addition, various very high-speed interfaces may be provided, such
as fast Ethernet interfaces, Gigabit Ethernet interfaces, ATM
interfaces, HSSI interfaces, POS interfaces, FDDI interfaces, ASI
interfaces, DHEI interfaces and the like.
[0222] When acting under the control of appropriate software or
firmware, in some implementations of the invention CPU 1662 may be
responsible for implementing specific functions associated with the
functions of a desired network device. According to some
embodiments, CPU 1662 accomplishes all these functions under the
control of software including an operating system and any
appropriate applications software.
[0223] CPU 1662 may include one or more processors 1663 such as a
processor from the Motorola family of microprocessors or the MIPS
family of microprocessors. In an alternative embodiment, processor
1663 is specially designed hardware for controlling the operations
of network device 1660. In a specific embodiment, a memory 1661
(such as non-volatile RAM and/or ROM) also forms part of CPU 1662.
However, there are many different ways in which memory could be
coupled to the system. Memory block 1661 may be used for a variety
of purposes such as, for example, caching and/or storing data,
programming instructions, etc.
[0224] Regardless of network device's configuration, it may employ
one or more memories or memory modules (such as, for example,
memory block 1665) configured to store data, program instructions
for the general-purpose network operations and/or other information
relating to the functionality of the techniques described herein.
The program instructions may control the operation of an operating
system and/or one or more applications, for example.
[0225] Because such information and program instructions may be
employed to implement the systems/methods described herein, the
present invention relates to machine-readable media that include
program instructions, state information, etc. for performing
various operations described herein. Examples of machine-readable
media include, but are not limited to, magnetic media such as hard
disks, floppy disks, and magnetic tape; optical media such as
CD-ROM disks; magneto-optical media; and hardware devices that are
specially configured to store and perform program instructions,
such as read-only memory devices (ROM) and random access memory
(RAM). The invention may also be embodied in a carrier wave
traveling over an appropriate medium such as airwaves, optical
lines, electric lines, etc. Examples of program instructions
include both machine code, such as produced by a compiler, and
files containing higher-level code that may be executed by the
computer using an interpreter.
[0226] Although the system shown in FIG. 16 illustrates one
specific network device of the present invention, it is by no means
the only network device architecture on which the present invention
can be implemented. For example, an architecture having a single
processor that handles communications as well as routing
computations, etc. is often used. Further, other types of
interfaces and media could also be used with the network device.
The communication path between interfaces may be bus based (as
shown in FIG. 16) or switch fabric based (such as a cross-bar).
[0227] While this invention is described in terms of preferred
embodiments, there are alterations, permutations, and equivalents
that fall within the scope of the invention. It should also be
noted that there are many alternative ways of implementing the
present invention. It is therefore intended that the invention not
be limited to the preferred embodiments described herein, but
instead that the invention should be interpreted as including all
such alterations, permutations, and equivalents as fall within the
true spirit and scope of the present invention.
* * * * *
References