A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. Copyright 2013, WMS Gaming, Inc.
Embodiments of the inventive subject matter relate generally to wagering game systems, and more particularly to devices and processes that control wagering transactions for multi-provider game content.
Wagering game machines, such as slot machines, video poker machines and the like, have been a cornerstone of the gaming industry for several years. Generally, the popularity of such machines depends on the likelihood (or perceived likelihood) of winning money at the machine and the intrinsic entertainment value of the machine relative to other available gaming options. Where the available gaming options include a number of competing wagering game machines and the expectation of winning at each machine is roughly the same (or believed to be the same), players are likely to be attracted to the most entertaining and exciting machines. Shrewd operators consequently strive to employ the most entertaining and exciting machines, features, and enhancements available because such machines attract frequent play and hence increase profitability to the operator. Therefore, there is a continuing need for wagering game machine manufacturers to continuously develop new games and gaming enhancements that will attract frequent play.
In some embodiments, a method comprises tracking wagering transactions, for primary wagering game content, using a first funds tracking mode, wherein the primary wagering game content is provided to a wagering game machine by a first wagering game provider; detecting a request to process secondary wagering game content on the wagering game machine, wherein the secondary wagering game content is provided by a second wagering game provider, and wherein the secondary wagering game content uses a second funds tracking mode different from the first funds tracking mode; transitioning the tracking of the wagering transactions for the primary wagering game content from the first funds tracking mode to the second funds tracking mode; and tracking wagering transactions for both the primary wagering game content and the secondary wagering game content using the second funds tracking mode.
In some embodiments, the first wagering game provider is a first wagering game manufacturer store and the secondary wagering game provider is a second wagering game manufacturer store.
In some embodiments, the first funds tracking mode is any one or more of a cash-based funds tracking mode and a ticket-based funds tracking mode, and the second funds tracking mode is an account-based funds tracking mode.
In some embodiments, the transitioning the tracking of the wagering transactions for the primary wagering game content comprises performing, before transitioning into an account-based funds tracking mode, any one or more of transferring funds on the wagering game machine to an account and cashing out funds on the wagering game machine for the primary game.
In some embodiments, the tracking wagering transactions for both the primary wagering game content and the secondary wagering game content uses an account-based funds tracking mode, and wherein the tracking comprises reporting wagers for both the primary wagering game content and the secondary wagering game content to an account server; receiving a verification message from the account server that a player account has sufficient funds to place the wagers; subtracting the wagers from a funds meter on the wagering game machine that tracks an account balance; activating the primary wagering game content and secondary wagering game content; determining wagering game outcomes for both the primary wagering game content and the secondary wagering game content; and adding win amounts from any one or more of the primary wagering game content and the secondary wagering game content to the funds meter on the wagering game machine.
In some embodiments, the tracking wagering transactions for both the primary wagering game content and the secondary wagering game content comprises: storing a plurality of wagering transactions for both the primary wagering game content and the secondary wagering game content on the wagering game machine for a plurality of game plays; and reconciling the plurality of wagering transactions with an account server to update a player account balance after the plurality of game plays.
In some embodiments, one or more machine-readable media having instructions stored thereon, which when executed by a set of one or more processors causes the set of one or more processors to perform operations comprises detecting a request to process a plurality of wagering games from multiple wagering game providers on a wagering game machine during a single wagering game session; communicating wagering transactions for the plurality of wagering games to a wagering game player account stored on an account server; and synchronizing a session funds balance on the wagering game machine with an account balance for the wagering game player account.
In some embodiments, the communicating and synchronizing comprises communicating the wagering transactions for the plurality of wagering games to the account server after every wagering game outcome during the wagering game session; and restricting wagering game play on the wagering game machine until the session funds balance and the account balance are synchronized after every wagering game outcome.
In some embodiments, the communicating and coordinating comprises communicating the wagering transactions for the plurality of wagering games to the account server after every wager and after every wagering game outcome during the wagering game session; and restricting wagering game play on the wagering game machine until the session funds balance and the account balance are synchronized after every wager and wagering game outcome.
In some embodiments, the communicating and coordinating comprises storing a plurality of wagering transactions on the wagering game server for a plurality of wagers and wagering game outcomes; communicating the plurality of wagering transactions as a single communication to the account server; and restricting wagering game play until the session funds balance and the account balance are synchronized.
In some embodiments, the machine-readable media further comprises detecting a long running wagering game, initiated during the wagering game session, that continues to run after the wagering game session has ended; detecting a wagering game outcome for the long running game; and updating the account balance with any winning amounts generated from the wagering game outcome.
In some embodiments, a system comprises a primary wagering game server configured to provide primary wagering game content; a secondary wagering game server configured to provide secondary wagering game content; a wagering game machine configured to simultaneously process a first wagering game using the primary wagering game content and a second wagering game using the secondary wagering game content; and an account server configured to track wagering account information related to both the first wagering game and the second wagering game.
In some embodiments, the primary wagering game server is configured to serve wagering games created by a first wagering game manufacturer and the second wagering game server is configured to serve wagering games created by a second wagering game manufacturer.
In some embodiments, the system further comprises a coordination unit configured to synchronize a wagering game session balance on the wagering game machine with a wagering player account balance on the account server during a wagering game session for both the first wagering game and the second wagering game.
In some embodiments, the coordination unit is further configured to determine one or more synchronization modes for synchronizing the wagering game session balance and the wagering player account balance depending on any one or more of communication network bandwidth, player account preferences, system configuration settings, wagering game durations, and synchronization control rules.
In some embodiments, the system further comprises utilizing more than one synchronization mode during the wagering game session.
In some embodiments, the wagering game machine comprises any one or more of meters and controls to control wagering activity for both the first wagering game and the second wagering game.
In some embodiments, an apparatus comprises an account controller to control wagering transactions on a wagering game network; an account store to store financial account information related to a wagering game player account; and an account processor configured to receive wagering transaction values for a plurality of wagering games during a wagering game session, wherein the plurality of wagering games originate from multiple wagering game providers and are processed on a single wagering game machine; update a player account balance using the wagering transaction values for the plurality of wagering games, and generate a verification message to send to the wagering game machine to indicate that the player account balance is updated.
In some embodiments, the account processor is further configured to determine one or more synchronization modes for synchronizing the player account balance with a wagering game session balance on the wagering game machine based on synchronization control rules, wherein the synchronization control rules indicate a timing schedule for synchronizing the player account balance.
In some embodiments, the apparatus further comprises a content controller configured to provide control information for controlling the presentation of wagering game content for the plurality of wagering games, wherein the content controller is configured to generate control information to restrict presentation of the wagering game content until the account processor generates the verification message.
In some embodiments, the account processor is further configured to provide access to a social network account, and communicate social network account information generated while processing any one or more of the primary wagering game content and the secondary wagering game content.
In some embodiments, an apparatus comprises means for receiving primary wagering game content from a first wagering game provider; means for receiving secondary wagering game content from a second wagering game provider; means for detecting a wager amount for both the primary wagering game content and the secondary wagering game content; means for restricting game play until the wager amount can be verified with an account server; means for reporting the wager amount to the account server; means receiving a first verification message from the account server that a player account has a sufficient balance to transact the wager amount; means for subtracting the wager amount from a funds meter on the wagering game machine that tracks a wagering game session balance; and means for unrestricting game play.
In some embodiments, the apparatus further comprises means for determining wagering game outcomes for both the primary wagering game content and the secondary wagering game content; means for adding win amounts to the funds meter on the wagering game machine; means for reporting the win amounts to the account server; and means for receiving a second verification message from the account server that the account balance has been updated on the account server.
In some embodiments, the means for receiving the primary wagering game content and the secondary wagering game content comprises means for transitioning a cash-based funds tracking mode for the primary wagering game content to an account-based funds tracking mode; and means for tracking both the primary wagering game content and the secondary wagering game content using the account-based funds tracking mode.
In some embodiments, unrestricting game play comprises: means for activating the primary wagering game content and secondary wagering game content simultaneously with a single activation instruction.
Embodiments are illustrated in the Figures of the accompanying drawings in which:
This description of the embodiments is divided into five sections. The first section provides an introduction to embodiments. The second section describes example operating environments while the third section describes example operations performed by some embodiments. The fourth section describes additional example operating environments, while the fifth section presents some general comments.
This section provides an introduction to some embodiments.
Casinos, and other similar wagering game networks, provide a multitude of wagering games. These wagering games are created by different wagering game content providers and manufacturers, and are stored on separate gaming machines configured to process and present games from only that provider. When a player wants to play one of the games, the player has to find a specific machine within the casino that contains that wagering game. Some content providers, however, have recognized that a player may want to play more than one specific wagering game, and have thus created wagering game machines that can process and display multiple different wagering games themes and types from a single provider. Sometimes, however, a player may want to play a wagering game from more than one wagering game content provider or manufacturer. To do so, however, the player has to log in to, and out of, separate wagering game machines on a casino floor which are controlled by the different content providers.
The system 100 can determine how windows appear, expand, collapse, react to input, etc. The system 100 can intelligently determine an amount of available content to be displayed in a window, then automatically size, or resize, that window to present the amount of content. The system 100 determines the priority of primary content and secondary content in relation to each other. For example, the content of most importance, (e.g., a win notification) can get the highest priority and can be displayed first-in-time, or with greater significance (e.g., the system 100 may determine that a high priority window resizes and covers other lower priority windows, partially or fully, etc.). The side-windows 105, 106, 110 can have controls (e.g., collapse/minimize buttons, expand/maximize buttons, close/exit buttons, handles, scroll bars, resize-able frames, zoom, etc.) that a user can use to resize, move, or otherwise react with a window. For example, the side-windows 105, 106, 110 can have handles 118 to move the windows around. The frames of the side-windows 105, 106, 110 can be sizable. Further, the side-windows 105, 106, 110 can have control buttons 103, 107, 112 that collapse and expand the side-windows 105, 106, 110, respectively. The system 100 can prioritize a user's request to manipulate windows and respond to the request according to the importance and priority of the request. The system 100 can also deactivate certain functions based on priority and timing. For instance, the system 100 can prevent a window from being collapsed while a high priority activity occurs. For example, side-window 105 is displaying a celebratory animation of a jackpot win. As a result, the control button 103 is deactivated for the duration of the celebratory display so that a user cannot collapse the screen while the celebratory animation plays.
In some embodiments, the main window 102 and the side-windows 105, 106, 110, can present information using different technologies, file formats, etc. For instance, the wagering game machine 160 can present the primary content in the main window 102 using various complex game assets and configuration files stored on, or delivered to, the wagering game machine 160 when the wagering game machine 160 was configured by a first content provider (e.g. a manufacturer for the wagering game machine 160). The wagering game machine 160 can store and utilize the data, logic, game assets, etc., to present the primary content in a complex way (e.g., high-resolution, textured graphics, three-dimensional objects, etc.) and/or that may provide complex functionality that heavily utilizes the resources on the wagering game machine 160. Thus, the wagering game machine 160 can provide greater functionality in conjunction with the main window 102 and the primary content. However, the secondary content may come from a second content provider (e.g. a second manufacturer) that may not have access to all of the resources on the wagering game machine 160, or the wagering game network, that the primary content has access to. Consequently, the second manufacturer may create and/or provide (e.g., push the content from the wagering game server 180) the secondary content using technologies that can optimizes less complex data and programming, that can generate easily transportable files, that can quickly and efficiently push and pull data over a network, and that can unitize the secondary content into one, or very few, files. Examples of such technologies include, but are not limited to, Adobe™ Flash™ applications, Java Applets, streaming video and audio, Asynchronous Flash Applications, dynamic web technologies (e.g., XML, AJAX), etc. By utilizing these types of technologies, the second content provider can also better protect the secondary content by allowing the second content provider to store the secondary content on its own servers and push the secondary content to the side-windows. Thus, the secondary content provider may avoid having to store game assets on the wagering game machine 160, or other network servers, which may belong to, or be accessed by, competitors. Thus, in some embodiments, the side-windows 110 are configured to process different types of game content, in different files formats or using different technologies, than the main window 102.
Side-window 110 is an example of a side-window with tabbed sub-windows (“tabs”) 111. Tabs 111 help to break up different types of content. The tabs 111 can show different game types, themes, denominations, etc. The tabs 111 can show content from one secondary content provider, or from multiple secondary content providers. In some embodiments, the side-window 110, and/or tabs 111, can display an “attract” (e.g., advertisement or other attractive animations). The system 100 can cycle through the windows and/or tabs to display the attracts. The wagering game machine 160 can have touch sensitive capabilities so that a user can select the different tabs 111, manipulate the control buttons, etc.
According to some embodiments, the wagering game system 100 can include numerous capabilities and configurations. The following non-exhaustive list enumerates some example capabilities and configurations:
Although
This section describes example operating environments and networks and presents structural aspects of some embodiments. More specifically, this section includes discussion about wagering game system architectures.
The wagering game system architecture 200 also can include a secondary wagering game server 280 configured to control secondary wagering game content and communicate wagering game information and/or account information to and from the wagering game machine 260. The secondary wagering game server 280 can include a secondary content controller 282 configured to manage and control secondary content and presentation of secondary content on the wagering game machine 260. The secondary wagering game server 280 also can include a secondary content store 284 configured to contain secondary content to present on the wagering game machine 260.
The wagering game system architecture 200 also can include an account server 270 configured to process financial transactions and control user related accounts accessible via wagering game networks and social networks. The account server 270 can store and track player information, such as identifying information (e.g., avatars, screen name, account identification numbers, etc.) or other information like financial account information, social contact information, etc. The account server 270 can contain accounts for social contacts referenced by the player account. The account server 270 can also provide auditing capabilities, according to regulatory rules, and track the performance of player's, machines, and servers. The account server 270 can include an account controller 272 configured to control information for a player's account. The account server 270 also can include an account store 274 configured to store information for a player's account.
The wagering game system architecture 200 also can include a wagering game machine 260 configured to present wagering game content, to receive and transmit information between various content sources and account servers, and to coordinate the presentation of the wagering game content in multiple windows within a graphical user interface on the wagering game machine 260. The wagering game machine 260 can include a windows controller 262 configured to coordinate the positioning, controls, actions, and timing of windows. The windows controller 262 can determine the priority of content and generate instructions that will control windows according to the priority of the content. The windows controller 262 also can communicate between windows, such as to determine wager amounts, account credit amounts, point amounts, etc. The windows controller 262 can also detect, and coordinate, the presentation of attract mode content. The wagering game machine 260 also can include a primary content controller 263 configured to manage and control primary content and presentation of primary content on the wagering game machine 260. For example, the primary content controller 263 controls how the primary content appears and acts within a main window. The wagering game machine 260 also can include a primary content store 266 configured to store primary content. The wagering game machine 260 also can include a secondary content controller 264 configured to manage and control secondary content and presentation of secondary content on the wagering game machine 260. For example, the secondary content controller 264 controls how the secondary content appears and acts within a side-window. The wagering game machine 260 also can include a secondary content store 267 configured to store secondary content. The wagering game machine 260 also can include an account processor 265 configured to control and communicate account information (e.g., financial transactions, player tracking information, etc.).
Each component shown in the wagering game system architecture 200 is shown as a separate and distinct element. However, some functions performed by one component could be performed by other components. For example, the coordination unit 256 can control windows and/or presentation of content, as necessary, to ensure a proper coordination of data. The coordination unit 256 may be in a separate device, or in one of the other devices shown. Furthermore, the components shown may all be contained in one device, but some, or all, may be included in, or performed by multiple devices on the systems and networks 222, as in the configurations shown in
Furthermore, the wagering game system architecture 200 can be implemented as software, hardware, any combination thereof, or other forms of embodiments not listed. For example, any of the network components (e.g., the wagering game machines, servers, etc.) can include hardware and machine-readable media including instructions for performing the operations described herein. Machine-readable media includes any mechanism that provides (i.e., stores and/or transmits) information in a form readable by a machine (e.g., a wagering game machine, computer, etc.). For example, tangible machine-readable media includes read only memory (ROM), random access memory (RAM), magnetic disk storage media, optical storage media, flash memory machines, etc. Machine-readable media also includes any media suitable for transmitting software over a network. Furthermore, any of the components can be integrated or divided.
This section describes operations associated with some embodiments. In the discussion below, some flow diagrams are described with reference to block diagrams presented herein. However, in some embodiments, the operations can be performed by logic not described in the block diagrams.
In certain embodiments, the operations can be performed by executing instructions residing on machine-readable media (e.g., software), while in other embodiments, the operations can be performed by hardware and/or other logic (e.g., firmware). In some embodiments, the operations can be performed in series, while in other embodiments, one or more of the operations can be performed in parallel. Moreover, some embodiments can perform more or less than all the operations shown in any flow diagram.
The flow 300 continues at processing block 304, where the system receives secondary wagering game content and control information from a secondary content source. The secondary content source can push the secondary content, such as an Adobe Flash application, to a wagering game machine.
The flow 300 continues at processing block 306, where the system presents primary wagering game content in a main window and secondary wagering game content in one or more side-windows. The system can present the primary content and the secondary content simultaneously in their respective windows. The system can also control and present the primary and secondary content within their respective windows so that the content is mutually exclusive of each-other, or in other words, so that the content in each window does not have to affect the content in any other window.
The flow 300 continues at processing block 308, where the system determines content priority information and controls the appearance and actions of windows based on the content priority information. The system can detect activity occurring in each window, and can determine the importance of that activity. Based on the importance of that activity, the system can determine which activity has the highest priority, and generate one or more priority commands to control how the window reacts to other windows or user requests. Based on the priority commands, the system can control the appearance and actions of the windows.
The flow 400 continues at processing block 404, where the system receives a second control statement to display secondary content in a second window. The first and second control statements can be generated by two different servers from two different content providers.
The flow 400 continues at processing block 406, where the system determines a content display priority for both the primary and secondary content based on a set of display rules. For instance, the system can store a set of rules based on the system's configuration settings, which control how content is displayed.
The flow 400 continues at processing block 408, where the system presents the highest priority content first in time or with greater prominence. For example, the system may detect a slot reel spin from a first game in a first window and a slot reel spin from a second game in a second window. The first game may complete its spin before the spin in the second window. If the first game in the first window results in a win, and the second game in the second screen does not, the system may determine, according to a hierarchy of rules, that a celebratory screen of a win is a high priority event, and must be displayed immediately, and with greater prominence, than a non-win presentation. As a result, the system may raise the first window above any other windows, run celebratory animations in the first window, increase lighting and/or contrast in the first window, etc. On the other hand, if the second game in the second window also wins at the same time that the first game in the first window wins, the system may determine which win resulted in a greater amount. The system can determine that the win with the greater amount is more important and, consequently, has a higher priority. As a result, the system can display a celebratory screen for the game with the highest win amount and hold in stasis the second celebratory screen until the first one is complete. Priority rules can take into consideration multiple factors, including, but not limited to, wins/loss information, credit information, meter information, user account information, hardware resources, advertising schedules, environmental variables, etc. Different content providers can determine their own set of rules. A coordination unit, in a central server, however, may reconcile the rules between various providers, and provide control information to the wagering game machine to prevent conflicts. Further, the system can provide a consistent set of rules, or protocol, to which all content providers can adhere.
The flow 400 continues at processing block 410, where the system receives a user request to manipulate a window or to interact with content displayed within a window. If the system receives a user request, then the flow continues at block 412.
The flow 400 continues at processing block 412, where the system determines a priority for the user request and responds to the user request according its priority. For example, a user may request to close a window. The system, however, has to determine whether the activity that is occurring within the window is more important that the user's request. For instance, the window may be presenting a reel spin, or another similar type of active game activity. As a result the system may determine that the reel spin must occur, and be presented, before the window can be closed. Alternatively, the system can plan for priority activities, such as by deactivating certain control options before processing a high priority command. For example, before conducting a wheel spin, the system can deactivate the control button that closes a window.
This section describes example operating environments, systems and networks, and presents structural aspects of some embodiments.
The account server 570 can contain account information, and can communicate the account information via the communication network 522. The account server 570 can communicate with the wagering game machine 560 when the wagering game machine 560 is within range of the casino network. The account server 570 can manage a player's funds; provide auditing capabilities meeting exiting regulations; track player, machine, or portal performance in real time; and perform other operations related to tracking wagering game and player information. A player can add funds to the account at a cage, a kiosk, a computer, or at the wagering game machine 560, using a variety of funding methods (e.g., deposited cash, redeemed tickets, electronic funds transfers, bonus awards, funds awarded from third-party servers, etc.) The player can allocate some or all of their funds in an account to a game play session. A game play session can be started when a player inserts a player card into the wagering game machine 560 and can end when the player cashes out and removes the player card from the wagering game machine 560. The tracking of wagering game funds using an account may be referred to herein as an “account-based” funds-tracking mode, or more succinctly, as an “account-based mode”.
The system 500 can obtain content from multiple content sources, such as a primary wagering game server (“primary server”) 550 and a secondary wagering game server (“secondary server”) 580. In some embodiments, the wagering game machine 560 may track funds in a first funds-tracking mode (e.g., a cash-based mode or ticket-based mode) for a primary game, but receive a request to play a secondary game that utilizes a different funds-tracking mode (e.g., an account-based mode). For instance, a player may be playing a primary wagering game hosted by the primary server 550. The primary game may be tracking game credits using a cash-based mode, such as a ticket-in-ticket-out (TITO) mode. But, the player may wish to play a secondary game that utilizes an account-based mode to track funds. As a result, the system 500 may prefer to utilize a single funds-tracking mode for both primary and secondary games (e.g., a single account-based mode.) A single funds-tracking mode, such as an account-based mode, can make credit tracking easier, especially when both games share the same credit meter 508. Therefore, the system 500 can transition the game session from playing in the first funds-tracking mode (e.g., the cash-based mode), for the primary game, to the second funds-tracking mode (e.g., the account based mode), for both the primary and secondary games. Specifically, when the system detects a request for an account-based secondary game, the system 500 can transfer the funds on the wagering game machine 560 to an account on the account server 570 (although in some embodiments, system 500 may instead cash-out the funds on the wagering game machine 560 for the primary game before transitioning into an account-based mode.) The system 500 can then begin processing the primary and secondary wagering games in the account-based mode, using the account on the account server 570 to track game wagers and credits.
During the game play session, content is displayed in multiple windows. For example, primary content (for a first, or “primary” wagering game), can be displayed in the main window 502. Secondary content (for a second, or “secondary” wagering game), can be displayed in the side-window 505. Side-window 506 can track other critical data and meters, like a point meter 513 that tracks points which can be redeemed for rewards on a social, or community, network. The system 500 tracks the account balances between the different games and reconciles the account balance displayed in the credit meter 508 with the account server 570. The system 500 uses the credit meter 508 at the wagering game machine 560 to display the current balance of the funds allocated to the session. The credit meter 508 at the wagering game machine 560 and the session balance at the account server 570 are synchronized as game play proceeds during the session. In some instances, network latency, end point processing delays, or other factors, may result in instances of time where the session balance on the wagering game machine 560 and the account balance on the account server 570 are not identical. The system 500 can determine the appropriate times to synchronize the balances. For example, the system 500 can ensure that the account balance displayed on the credit meter 508 is the same as the account balance tracked by the account server 570, at least, at session start and session end. During the game session, however, the system 500 can determine, according to various modes, how often to synchronize the session balance at the wagering game machine 560 and the account server 570. The different modes of synchronization can offer different advantages. Some modes will now be described.
The system 500 can provide various modes for synchronizing (i.e., reconciling) the credit meter 508 and the account server 570 during the game play session. The following non-exhaustive list enumerates some possible synchronization modes.
The system 500 can be configured so that a casino operator and/or regulator can choose a mode that balances real-time player performance with operational or regulatory requirements. The system 500 can have a configuration setting that the operator or regulator can set to operate in a desired mode. Depending on the configuration setting, the wagering game machine 560 can operate differently, according to a different set of control rules. For example, one configuration setting may require the wagering game machine 560 to authorizes each wager, another configuration setting may require the wagering game machine 560 to start at most one spin without authorization, while yet another configuration setting may require the wagering game machine to continue to play games until the account server 570 requests reconciliation. For instance, one spin button (e.g., button 512) on the wagering game machine 560 may trigger a number of spins on primary and secondary games. Hence, the system 500 can be configured, according to one configuration setting (e.g., for Game Ended or Periodic modes), with control rules that can allow the wagering game machine 560 to authorize more than one game wager simultaneously. The system 500 can run all wagering game machines on a network in one mode or it can support wagering game machines running in different modes. For example, some wagering game machines might be configured to run in Strict Synchronization mode while others run in Game Ended or Periodic modes. This allows an operator to tailor the system 500. The system 500 can also be configured to change modes during a player game session. The system 500 can be configured to switch modes in a way that is transparent to the player.
The system 500 synchronizes account balances for all games played in a single wagering session, even when the content for the games is served by different content sources. The system 500 tracks wagers and balances from primary and secondary games. The system 500 can calculate combined credit totals between primary and secondary games and report the credit totals to the account server 570 as a single atomic transaction. As long as the player is still logged on to the system 500, the system 500 can add any win amounts to the current session balance and display those amounts in the credit meter 508. It is also possible, however, for some games to be long-running, which may end after the player has logged off the system 500 before that game's outcome is known. In those cases, the system can still apply any winnings directly to the player's account on the account server 570. The system 500 can notify the player, in some manner, about the win from the long-running game, such as via text message or email.
Some embodiments for tracking and synchronizing account balances for primary and secondary games include configuring the wagering game machine 560 to control the priority, appearance, and functionality of the game content in all windows. The wagering game machine 560 can hold games in stasis and prevent certain activities, when necessary, to reconcile wager and account balances and to update the credit meter 508.
The following non-exhaustive list enumerates some possible embodiments for synchronizing account balances for games provided by a plurality of content sources, using variations of the Strict Synchronization mode described further above:
The flow 600 continues at processing block 604, where the system activates a multi-provider game accounting mode and presents wagering game content from the multiple content providers. For example, the wagering game machine can shift all financial tracking to an account-based mode. The account based mode can track all transactions, such as wagers and winnings, for both the primary and secondary wagering games. The system can then present the primary and secondary wagering game content in windows, such as in a main window and one or more side-windows on the wagering game machine display. The system can then prompt the wagering game player to enter one or more bets. The system can have different bet meters for the primary and secondary content, or the same bet meter can be used for both primary and secondary content.
The flow 600 continues at processing block 606, where the system detects wager amounts and a wager activation request for the primary and secondary wagering games. Some controls on the wagering game machine can respond for both primary and secondary wagering game content. For example, a single wager activation control (e.g., a “spin” button) can activate the wagers for both the primary and secondary games.
The flow 600 continues at processing block 608, where the system detects a total wager amount. The system reports the value of all wagers from the wagering game machine to an account server (or other account tracking device). The total wager amount is the value of wagers from both the primary and secondary wagering games. The system can hold the wagering game machine in stasis until the account server can verify that the account balance can accommodate the total wager amount.
The flow 600 continues at processing block 610, where the system verifies that the account has sufficient funds to cover the wager amounts. For example, the account server can verify that the wagering account has sufficient funds. If the account does not have sufficient funds, the system can return an error message to the wagering game machine indicating that the account balance is insufficient to transact the requested wagers. The system can then return to processing block 606 to wait for updated wager amounts. If, however, the account balance is sufficient for the total wager amount, the system can deduct the wager amounts from the account server's account balance, and indicate to the wagering game machine to process the wagering games. The flow 600 continues at processing block 612.
The flow 600 continues at processing block 612, where the system processes the primary and secondary wagering games and detects wagering game outcomes. Different servers can generate wagering game outcomes. For instance, a primary server can generate an outcome for the primary wagering game and a secondary server can generate an outcome for the secondary wagering game. The wagering game machine itself, however, can also generate a wagering game outcome for both the primary and wagering games. Further, the wagering game machine can generate a wagering game outcome for one wagering game, while a server generates an outcome for another wagering game. If one of the wagering games is a long standing wagering game that does not produce an immediate outcome, the system can still detect wagering game outcomes for other wagering games (e.g., if the secondary wagering game is a bonus game that takes a while to determine an outcome, the system can proceed with processing the primary wagering game.)
The flow 600 continues at processing block 614, where the system detects and reports total winnings for primary and secondary wagering games. The system can detect winnings for any one, or both, of the primary and secondary wagering games. The system can then report the winnings to an account server to update the account balance on the account server. The system can utilize one of many techniques for reporting winnings, wagers, etc. Some techniques are described earlier in conjunction with
The flow 600 continues at processing block 616, where the system detects and indicates an updated funds balance. The system can detect the updated account balance from the account server and update a session balance displayed on credit meters on the wagering game machine. In some embodiments, the wagering game machine can indicate the account balance on the wagering game machine separate from the session balance. For example, the system may apply winnings to the account balance, but not to the session balance. The system can restrict wagering game activity (e.g., freeze wagering controls, pause game play, etc.) while the system updates balances. When the system finishes updating the balances, the system can then enable the wagering game activity again (e.g., continue processing wagering games, unfreeze wagering controls, etc.)
The CPU 726 is also connected to an input/output (“I/O”) bus 722, which can include any suitable bus technologies, such as an AGTL+frontside bus and a PCI backside bus. The I/O bus 722 is connected to a payout mechanism 708, primary display 710, secondary display 712, value input device 714, player input device 716, information reader 718, and storage unit 730. The player input device 716 can include the value input device 714 to the extent the player input device 716 is used to place wagers. The I/O bus 722 is also connected to an external system interface 724, which is connected to external systems 704 (e.g., wagering game networks). The external system interface 724 can include logic for exchanging information over wired and wireless networks (e.g., 802.11g transceiver, Bluetooth transceiver, Ethernet transceiver, etc.)
The I/O bus 722 is also connected to a location unit 738. The location unit 738 can create player information that indicates the wagering game machine's location/movements in a casino. In some embodiments, the location unit 738 includes a global positioning system (GPS) receiver that can determine the wagering game machine's location using GPS satellites. In other embodiments, the location unit 738 can include a radio frequency identification (RFID) tag that can determine the wagering game machine's location using RFID readers positioned throughout a casino. Some embodiments can use GPS receiver and RFID tags in combination, while other embodiments can use other suitable methods for determining the wagering game machine's location. Although not shown in
In one embodiment, the wagering game machine 706 can include additional peripheral devices and/or more than one of each component shown in
In one embodiment, the wagering game machine 706 includes a content coordination module 737. The content coordination module 737 can process communications, commands, or other information, where the processing can control wagering transactions for wagering game content that comes from a plurality of different content providers.
Any component of the wagering game machine 706 can include hardware, firmware, and/or machine-readable media including instructions for performing the operations described herein. Furthermore, the wagering game machine 706 can include any of the components described above, such as those described in reference to the wagering game machine 260 of
The mobile wagering game machine 800 includes several input/output devices. In particular, the mobile wagering game machine 800 includes buttons 820, audio jack 808, speaker 814, display 816, biometric device 806, wireless transmission devices 812 and 824, microphone 818, and card reader 822. Additionally, the mobile wagering game machine can include tilt, orientation, ambient light, or other environmental sensors.
In one embodiment, the mobile wagering game machine 800 uses the biometric device 806 for authenticating players, whereas it uses the display 816 and speakers 814 for presenting wagering game results and other information (e.g., credits, progressive jackpots, etc.). The mobile wagering game machine 800 can also present audio through the audio jack 808 or through a wireless link such as Bluetooth.
In one embodiment, the wireless communication unit 812 can include infrared wireless communications technology for receiving wagering game content while docked in a wager gaming station. The wireless communication unit 824 can include an 802.11G transceiver for connecting to and exchanging information with wireless access points. The wireless communication unit 824 can include a Bluetooth transceiver for exchanging information with other Bluetooth enabled devices.
In one embodiment, the mobile wagering game machine 800 is constructed from damage resistant materials, such as polymer plastics. Portions of the mobile wagering game machine 800 can be constructed from non-porous plastics which exhibit antimicrobial qualities. Also, the mobile wagering game machine 800 can be liquid resistant for easy cleaning and sanitization.
In some embodiments, the mobile wagering game machine 800 can also include an input/output (“I/O”) port 830 for connecting directly to another device, such as to a peripheral device, a secondary mobile machine, etc. Furthermore, any component of the mobile wagering game machine 800 can include hardware, firmware, and/or machine-readable media including instructions for performing the operations described herein.
The described embodiments may be provided as a computer program product, or software, that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic device(s)) to perform a process according to embodiments(s), whether presently described or not, because every conceivable variation is not enumerated herein. A machine readable medium includes any mechanism for storing or transmitting information in a form (e.g., software, processing application) readable by a machine (e.g., a computer). The machine-readable medium may include, but is not limited to, magnetic storage medium (e.g., floppy diskette); optical storage medium (e.g., CD-ROM); magneto-optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; or other types of medium suitable for storing electronic instructions. In addition, embodiments may be embodied in an electrical, optical, acoustical or other form of propagated signal (e.g., carrier waves, infrared signals, digital signals, etc.), or wireline, wireless, or other communications medium.
This detailed description refers to specific examples in the drawings and illustrations. These examples are described in sufficient detail to enable those skilled in the art to practice the inventive subject matter. These examples also serve to illustrate how the inventive subject matter can be applied to various purposes or embodiments. Other embodiments are included within the inventive subject matter, as logical, mechanical, electrical, and other changes can be made to the example embodiments described herein. Features of various embodiments described herein, however essential to the example embodiments in which they are incorporated, do not limit the inventive subject matter as a whole, and any reference to the invention, its elements, operation, and application are not limiting as a whole, but serve only to define these example embodiments. This detailed description does not, therefore, limit embodiments, which are defined only by the appended claims. Each of the embodiments described herein are contemplated as falling within the inventive subject matter, which is set forth in the following claims.
This application is a continuation of, and claims priority benefit to, U.S. patent application Ser. No. 12/918,179 which is a National Stage Application of PCT/US09/35939 filed on Mar. 3, 2009, which claims the priority benefit of the following applications: U.S. Patent Application No. 61/033,678 filed Mar. 4, 2008; U.S. Patent Application No. 61/036,671 filed Mar. 14, 2008; U.S. Patent Application No. 61/046,912 filed Apr. 22, 2008; and U.S. Patent Application No. 61/054,270 filed May 19, 2008. The Ser. No. 12/918,179 Application, the PCT/US09/35939 Application, the 61/033,678 Application, the 61/036,671 Application, the 61/046,912 Application and the 61/054,270 Application are hereby incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
4561659 | Redfield et al. | Dec 1985 | A |
4675666 | Peterson | Jun 1987 | A |
4856787 | Itkis | Aug 1989 | A |
5125671 | Ueda et al. | Jun 1992 | A |
5791991 | Small | Aug 1998 | A |
5808591 | Mantani | Sep 1998 | A |
6002397 | Jaaskelainen, Jr. | Dec 1999 | A |
6135884 | Hedrick et al. | Oct 2000 | A |
6383078 | Yacenda | May 2002 | B1 |
6409603 | Nishino et al. | Jun 2002 | B1 |
6860810 | Cannon et al. | Mar 2005 | B2 |
7445551 | Okada et al. | Nov 2008 | B1 |
20020094871 | Luciano et al. | Jul 2002 | A1 |
20040053662 | Pacey | Mar 2004 | A1 |
20040106446 | Cannon | Jun 2004 | A1 |
20040110566 | Schneider | Jun 2004 | A1 |
20040204231 | Martin et al. | Oct 2004 | A1 |
20040219969 | Casey et al. | Nov 2004 | A1 |
20040242297 | Walker | Dec 2004 | A1 |
20050137013 | Parsadaian | Jun 2005 | A1 |
20050143174 | Goldman et al. | Jun 2005 | A1 |
20050164795 | Whitten | Jul 2005 | A1 |
20050209000 | Kusajima et al. | Sep 2005 | A1 |
20050233794 | Cannon et al. | Oct 2005 | A1 |
20050266916 | Sato et al. | Dec 2005 | A1 |
20050282614 | Gauselmann | Dec 2005 | A1 |
20060040741 | Griswold et al. | Feb 2006 | A1 |
20060073890 | McAllister et al. | Apr 2006 | A1 |
20060079329 | Yamada et al. | Apr 2006 | A1 |
20060100021 | Yoshino et al. | May 2006 | A1 |
20060116208 | Chen et al. | Jun 2006 | A1 |
20060143268 | Chatani | Jun 2006 | A1 |
20060205492 | Linard et al. | Sep 2006 | A1 |
20060217173 | Walker et al. | Sep 2006 | A1 |
20060247026 | Walker et al. | Nov 2006 | A1 |
20060258351 | Fingerhut et al. | Nov 2006 | A1 |
20060277135 | Jain et al. | Dec 2006 | A1 |
20060287106 | Jensen | Dec 2006 | A1 |
20070004497 | Okada et al. | Jan 2007 | A1 |
20070004516 | Jordan et al. | Jan 2007 | A1 |
20070016559 | Kraft | Jan 2007 | A1 |
20070026932 | Sato | Feb 2007 | A1 |
20070099692 | Hishinuma et al. | May 2007 | A1 |
20070117608 | Roper et al. | May 2007 | A1 |
20070128899 | Mayer | Jun 2007 | A1 |
20070146812 | Lawton | Jun 2007 | A1 |
20070167216 | Walker et al. | Jul 2007 | A1 |
20070207851 | Yoshizawa | Sep 2007 | A1 |
20070226051 | Addepalli et al. | Sep 2007 | A1 |
20070298877 | Rosenberg | Dec 2007 | A1 |
20080046942 | Merlin | Feb 2008 | A1 |
20080064490 | Ellis | Mar 2008 | A1 |
20080102947 | Hays et al. | May 2008 | A1 |
20080108426 | Nguyen et al. | May 2008 | A1 |
20080139306 | Lutnick et al. | Jun 2008 | A1 |
20080147497 | Tischer | Jun 2008 | A1 |
20080167106 | Lutnick et al. | Jul 2008 | A1 |
20080171602 | Patel et al. | Jul 2008 | A1 |
20080258388 | Schugar et al. | Oct 2008 | A1 |
20080293494 | Adiraju et al. | Nov 2008 | A1 |
20080318651 | Gross et al. | Dec 2008 | A1 |
20090093309 | Patel et al. | Apr 2009 | A9 |
20090113303 | Goossen et al. | Apr 2009 | A1 |
20100093440 | Burke | Apr 2010 | A1 |
20110009188 | Adiraju et al. | Jan 2011 | A1 |
20110028203 | Agarwal et al. | Feb 2011 | A1 |
20110246601 | Murray et al. | Oct 2011 | A1 |
20110312409 | Vancura | Dec 2011 | A1 |
20130244761 | Agarwal et al. | Sep 2013 | A1 |
Number | Date | Country |
---|---|---|
WO-2007146205 | Dec 2007 | WO |
WO-2009111514 | Sep 2009 | WO |
WO-2009111515 | Sep 2009 | WO |
Entry |
---|
U.S. Appl. No. 13/861,750, filed Apr. 12, 2013, Agarwal, Vijay K., et al. |
“AU Application No. 2009221922 Examination Report”, Apr. 8, 2013 , 2 pages. |
“PCT Application No. PCT/US09/35938 International Preliminary Report on Patentability”, Mar. 11, 2010 , 13 pages. |
“PCT Application No. PCT/US09/35938 International Search Report”, Apr. 24, 2009 , 8 pages. |
“PCT Application No. PCT/US09/35939 International Preliminary Report on Patentability”, Mar. 29, 2010 , 12 pages. |
“PCT Application No. PCT/US09/35939 International Search Report”, May 4, 2009 , 10 pages. |
“U.S. Appl. No. 12/918,160 Office Action”, Apr. 23, 2012 , 16 pages. |
“U.S. Appl. No. 12/918,179 Final Office Action”, Mar. 15, 2013 , 14 pages. |
“U.S. Appl. No. 12/918,179 Office Action”, Jun. 29, 2012 , 11 pages. |
“U.S. Appl. No. 13/861,750 Office Action”, May 18, 2015, 12 Pages. |
“U.S. Appl. No. 13/861,750 Office Action”, Sep. 15, 2015, 8 Pages. |
Number | Date | Country | |
---|---|---|---|
20140106865 A1 | Apr 2014 | US |
Number | Date | Country | |
---|---|---|---|
61033678 | Mar 2008 | US | |
61036671 | Mar 2008 | US | |
61054270 | May 2008 | US | |
61046912 | Apr 2008 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12918179 | US | |
Child | 14134947 | US |