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 2014, WMS Gaming, Inc.
Embodiments of the inventive subject matter relate generally to wagering game systems, and more particularly to maintaining game history in wagering games using handheld devices.
Operators of wagering game machines (“operators”), e.g., casino operators, typically maintain game history for wagering game machines. For example, operators may utilize a server or other mechanism to monitor and store game events during game play (e.g., button presses, bets, credit balances, intermediate results, final game results, etc.) on the wagering game machines. Operators can use the game events to reproduce games and verify results. In some cases, operators may access game history for dispute resolution (e.g., if a player disputes the results of a wagering game). However, operators may use game history for other purposes, such as to reconstruct games that were interrupted due to power loss, power surges, hardware/software failure, track mode play, etc. In some instances, wagering game machines can use the game history to attract players by replaying wagering games when the machines are not being used.
Embodiments of the invention are illustrated in the Figures of the accompanying drawings in which:
This description of the embodiments is divided into eight sections. The first section provides an introduction to some embodiments, while the second section provides a system environment. The third section describes example games and awards. The fourth section describes example operating environments, and the fifth section describes example operations performed by some embodiments. The sixth section describes an example wagering game machine architecture. The seventh section describes an example wagering game machine and the eighth section presents some general comments.
This section provides an introduction to some embodiments.
Some wagering game machines are configured as a group or bank of machines. A bank of wagering game machines can offer community games for multiple players at the bank. For example, a bank of wagering game machines can share a common display device (e.g., overhead) for community games. These community games are generally triggered by random events during base games at the wagering game machines.
Some embodiments include handheld devices that receive player input during community games. In some instances, every wagering game machine in a bank has an associated handheld device. Accordingly, each player can use (e.g., hold, position, move, etc.) a handheld device to play community games. The handheld devices can provide unique experiences for each player involved in the community games.
Various embodiments maintain a game history that includes movement and activity related to the handheld devices. For example, some embodiments can record the position of the handheld device at periodic intervals of the community game. The position can include the location and orientation of the handheld device in three-dimensional space. In some embodiments, the movement of the handheld devices can be recorded at periodic time intervals independent of game events of the community game. Accordingly, in contrast to only recording in response to game events, the recording at periodic intervals allows for a finer granularity for tracking the positions of the handheld devices.
In addition to position and movement information, the game history can also include inputs (e.g., button presses) received from the handheld devices. Output to the handheld devices can also be recorded as part of the game history. For example, output to the handheld devices can include lighting, vibration, and rumbling of the handheld devices.
Embodiments can use the game history to replay community games. Additionally, some embodiments can replay community games without playback of multimedia (e.g., video) frames recorded during the live game play. These and other embodiments are further described below.
The wagering game system 100 also includes handheld devices 108A-108C. The handheld device 108A is associated with the wagering game machine 102A. The handheld device 108B is associated with the wagering game machine 102B. The handheld device 108C is associated with the wagering game machine 102C. Players at the wagering game machines 102A-102C can use the handheld devices 108A-108C to provide input to and receive output from the wagering game play. For example, the players can use the handheld devices 108A-108C during a community game to select objects being displayed on the community display 106 for prize selection.
The community display 106 is presenting a community game to players at the wagering game machines 102A-102C. The community game can include features not available to machines outside the bank. For example, as described herein, the community game can include a free spin feature that awards a community free spin award to all players at the wagering game machines 102A-102C. Other embodiments of the community game can give cash awards (e.g., selected from different levels of cash awards), basic credit awards and variations of the basic credit awards. Any of these features can be randomly selected by the community game controller 104 for inclusion in a community game.
In various embodiments, the community game controller 104 records a game history of a community game. The game history can include movement (including current position) and activity related to the handheld devices 108A-108C. In some embodiments, the community game controller 104 can record movement and activity related to the handheld devices 108A-108C at periodic intervals. For example, the community game controller 104 can record movement and activity of the handheld devices 108A-108C eight times per second, four times per second, 16 times per second, etc. during the community game.
Each position can include a location and an orientation of an associated handheld device 108A-108C in three-dimensional space.
The periodic intervals at which recording of game history occurs can be independent of events that occur in the community game. In other words, events in the community game do not trigger recording of positions of the handheld devices 108A-108C. Instead, irrespective of community game events, some embodiments record positions of the handheld devices 108A-108C.
In some instances, the community game controller 104 can record a time at which events (e.g., button presses) are received from the handheld devices 108A-108C. The controller 104 can record the time, event (e.g., button press), and position of the handheld devices 108A-108C at the time of the event.
In some embodiments, the community game controller 104 can also record a time at which data is sent to the handheld devices 108A-108C. For example, the handheld devices 108A-108C can include programmable lighting. In response to certain events in the community game, the controller 104 activates lighting on the devices 108A-108C, and records one or more times at which it sent lighting signals to the devices. In another example, the handheld devices 108A-108C can include an internal mechanism to create a haptic feedback sensation (e.g., rumbling). In response to certain events in the community game, the internal mechanism in the handheld devices 108A-108C can be activated at certain levels and for a certain time interval. The community game controller 104 can record these events and times.
The processors in the wagering game machines 102A-102C transmit information to and receive information from the community game controller 104. In some embodiments, the community game controller 104 can receive a triggering signal associated with a community game that is achieved by at least one of the wagering gaming machines 102A-102C. Alternatively, the community game controller 104 can trigger the community game independent of the wagering game machines 102A-102C. The community game controller 104 transmits the triggering signal to the wagering gaming machines 102A-102C.
The community game can be triggered by a variety of outcomes including a special outcome achieved at one of the wagering gaming machines 102A-102C, a bonus outcome at one of the wagering gaming machines 102A-102C, etc. In some instances, the community game can be triggered when a certain amount of time has lapsed since the last community game, at fixed intervals, when a certain sum of wager inputs have been received at the wagering gaming machines 102A-102C, when a certain number of additional or maximum wagers are received at the wagering gaming machines 102A-102C, etc. The community game can be triggered so as to be awarded randomly as a “mystery bonus” to one or more players of the wagering gaming machines 102A-102C. In some cases, only certain players will be eligible to play the community game. Player eligibility to participate in the community game can be based on random player selection or on predetermined criteria, such as the amount or number of additional or maximum wagers at the player's gaming machine, rate of wagering over time at the player's gaming machine, the time since the player last made a wager at the player's gaming machine, the time since the player last played a community game, etc. Alternatively, all players playing at the wagering game machines 102A-102C can be eligible.
The community game on the community display 106 can include features for selecting objects or symbols displayed in the community game. For example, a community game can include a selection feature that allows players at the wagering gaming machines 102A-102C to select objects or symbols associated with awards or enhancements. In some embodiments, players at the wagering gaming machines 102A-102C can take turns selecting an object from a plurality of objects that are associated with the community game. The players can move their handheld devices 108A-108C to cause the cursor to on the community display 106 to be positioned over the object. The players can then use one of the buttons on the handheld devices 108A-108C to select the object. In this manner, a player's selection of an object can be affected by prior selections made by other players because prior selections can influence what selections are available and/or desirable to a subsequent player. This interaction, based on alternating or sequential player selections, provides for a more communal experience for the players as they root for other players to make selections that are favorable to their subsequent selections.
Each handheld device 108A-108C can have one or more buttons 120A or switches (only one button is shown on the handheld device 108A for clarity of illustration, but it should be understood that the other handheld device 108B-108C can share the same features as the handheld device 102A). The handheld device 108A includes an antenna 122A. An antenna 124A is disposed in the in the wagering game machines 102A-102C or in the community display 106 or at a location or locations within a sensing range of the handheld device 108A-108C. In this example, the antenna 122A includes three mutually orthogonal (e.g., oriented in the x, y, and z directions) sensing coils, and the antenna 124A includes a corresponding set of three mutually orthogonal transmitting coils. The sensing coils in the antenna 122A are configured to sense an electromagnetic field generated by the transmitting coils in the antenna 124A.
In this example, the transmitting coils in the antenna 124A are disposed in each of the wagering game machines 102A-102C. The transmitting coils are configured to generate an electromagnetic field that is transmitted along each of the mutually orthogonal coils at 90 degrees relative to each other. The sensing coils in the antenna 122A sense the electromagnetic energy, and based on the strength of the detected field, the relative orientation and position of the handheld device in three-dimensional space can be determined by a controller, such as a controller in the community game controller 104.
When a player holding the handheld device 108A desires to make a selection of a selectable element on the community display 106, the player points the handheld device 108A in the three-dimensional space in front of the wagering game machine 102A and stops at the target the player wishes to select. Optionally, a cursor, indicium or other game element can be displayed on the community display 106 to track the location of the handheld device 108A as the player waves it in front of the community display 106. To select the selectable element, the player depresses the switch or button 120A, which sends the selection information, along with the coordinate information representing the location and orientation of the handheld device 108A at the time that the button or switch 120A is depressed, to the community game controller 104 for determining an action to be performed as a result of the selection, such as awarding the player making the selection an award.
Instead of using electromagnetic radiation, infrared transmitters and receivers can be used to locate and orient the handheld devices 108A-108C in three-dimensional coordinate space. Likewise, instead of transmitters and receivers, a virtual track pad on a touch screen on each of the wagering game machines 102A-102C can be used by the player to move a cursor on the community display 106 and thereby make selections by touching the touch screen. Alternately, a track ball can be used by the players at the wagering game machines 102A-102C to move a cursor around on the community display 106 and to make selections by a button adjacent to the track ball.
The wagering game system 200 includes a bank of wagering game machines that include wagering game machines 210A-210C. The handheld device 212A is associated with the wagering game machines 210A. The handheld device 212B is associated with the wagering game machines 210B. The handheld device 212C is associated with the wagering game machines 210C. The handheld devices 212A-212C can be used by wagering game players for play of a community game that is being displayed (as described above).
During play of a community game, the community game server 204 provides game data for the community game to the display controller 202. The display controller 202 uses the game data to create video frames of the community game for display on the community displays 206A-206C. The display controller 202 also receives data from the antenna 208 and the handheld devices 210A-210C. This data represent activity (e.g., position and button presses) of the handheld devices 210A-210C that occurs during play of the community game. The display controller 202 integrates this data that represents the handheld device activity with the game data from the community game server 204 to create video frames that includes the handheld device activity for display of the community game on the community game display devices 206A-206C.
The display controller 202 also includes functionality to record the data that represent handheld device activity. As further described below, the display controller 202 can subsequently use this recorded data that represent handheld device activity to replay a community game that was previously displayed.
The display controller 202 can record inputs from the handheld device 300 to the community game. In this example, the handheld device 300 includes a top button 306 and a trigger button 308. A player can use their thumb to press or select the top button 306 and can use their index finger to press or select the trigger button 308. The display controller 202 can record button presses of the top button 306 and the trigger button 308 as inputs to the community game. For example, a player can press the top button 306 to select an item being displayed on the community display device during community game play (as described above).
In some embodiments, the display controller 202 can also record outputs to the handheld device 300 that are provided during community game play. For example, outputs to the handheld device 300 that can be recorded include activating and deactivating lighting and haptic feedback sensation of vibration or rumbling.
In this example, the handheld device 300 includes programmable lighting 310. The display controller 202 (shown in
In some embodiments, the handheld device 300 includes an internal mechanism 312 to create a haptic feedback sensation of vibration or rumbling. The display controller 202 can transmit an instruction to activate and deactivate the mechanism 312. The display controller 202 can record the activating and deactivating of the internal mechanism 312 to create haptic feedback.
The components described herein can facilitate various games and awards.
Referring back to
In the above-described skill-based community game, players may be given multiple chances to hit one or more targets. Although players have multiple opportunities to hit targets, some players may be less proficient at doing so than others. However, in a skill-based wagering game, the operator may want to limit the amount of expected-value variation among players. In other words, the operator may want to ensure that a highly skilled player receives the same overall payout as a player with no skill at all. In some embodiments, the skill-based wagering game is designed to alter the mathematical outcomes such that players of high skill and of low skill have substantially identical expected values for the skill-based wagering game.
In some embodiments, the skill-based wagering game utilizes a physics-based world within game. When players miss targets within the physics-based world, the bullets may bounce off other objects in the environment. These bounces and ricochets can be used to balance out the mathematics of the game by tracking the number of targets hit and missed as the bonus progresses and by manipulating the physics accordingly. For example, if a player has been consistently missing targets, the game can begin to force “lucky bounces” where a bullet ricochets off an object in the environment and hits the intended target, a different target, or a mystery area. By “handicapping” the skill-based wagering game in this manner, the player feels they got lucky instead of getting a “pity” award at the end of the bonus. The worse a player is, based on the tracking of targets missed, the luckier the player appears to be as their misses begin to strike targets within the physics-based world.
In some embodiments, the physics-based world may include random “multi-selection” targets and “self-destructing” targets. These targets, when hit, or ricocheted into, by a less skilled player may explode to award multiple targets in proximity to the original target, or they may even simply randomly self-destruct without being hit by a player. In a skill-based community game, for example, as the players progress through the skill-based bonus rounds, some “player-specific” targets may be provided on the community display 106. These player-specific targets may only be selected by (e.g., shot), and awarded to, a particular player. The award values of these player-specific targets may appear to be random to the players, but are, in fact, adjusted based on the players' proficiency up through that point of the skill-based community game. Thus, the less proficient a particular player has been up to that point of the skill-based community game, the more likely that player is to receive a higher value for their associated player-specific target. Alternatively, the less proficient players can be given various advantages over the remainder of the skill-based wagering game, such as a higher quantity of targets, larger targets, exploding bullets, a different type of weapon with a larger blast radius (e.g., pistol, to sniper, to shotgun, to rocket launcher as continued lack of skill is demonstrated).
In some embodiments, the skill-based wagering game may be separated into two unique components, an interactive skill-based component and a non-skill-based component (e.g., a free-spin component). The skill-based component may have a small effect or no effect on a player's payback percentage, whereas the non-skill-based component creates the true mathematical variety, volatility, and near-miss experience that are desirable for a wagering game. For example, the skill-based component may be a shooting game as described above, including a plurality of shootable targets. For each target a player shoots, the player is awarded a free spin in a subsequent, non-skill-based component. Thus, the more skillful a player, the more free spins they are awarded in the subsequent event.
The non-skill-based component, however, may be adjusted to compensate players displaying lesser proficiency at the skill-based component. In one embodiment, if a player misses every target in the skill-based game (or decides not to participate at all in the skill-based component), they may be provided two free spins. Alternatively, a player that went ten for ten in the skill-based component may be provided twelve free spins. So as to ensure that the non-skillful player has the same payback percentage as the skilled player, the mathematical model for the two free spins is altered to be different from the mathematical model of the twelve free spins. For example, if the average payout for each of the twelve free spins is 1×, the average payout for each of the two free spins could be adjusted to be 6×. Thus, the overall average payout for both the skilled and unskilled player is 12×, but the volatility and game experience for each player is dramatically different.
In some embodiments, awards can be based on the number of targets collected by a player, and can be bonus free spin events, more free spins, a mystery prize, a number of credits, a bonus event, and the like, which can be redeemed on the individual wagering game being played by the participating player on the wagering game machines 102A-102C. The award types can be adapted to the skill of the participating player to discourage unskilled players from becoming frustrated and ceasing their participation in the community game. For example, if an unskilled participating player in a particular session of the community game is missing many of the targets, the community display 106 can be adapted to display in front of the unskilled player an easy target that has a large selectable area. If this unskilled player is using the center wagering game machine 102B, the large target can be positioned in the center of the community display 106 to make it easier for the unskilled player to hit the target. In some embodiments, the adjusted mathematical models used for these adjustments during the bonus round for the unskilled player can also be recorded for subsequent replays.
This section describes example operating environments of some embodiments. More specifically, this section includes discussion about example wagering game system architectures.
The display controller 402 includes a community game presentation unit 406, a handheld device input service 408, and a game history recorder unit 410. The community game presentation unit 406, the handheld device input service 408, and the game history recorder unit 410 can be hardware, software, firmware or a combination thereof. For example, the community game presentation unit 406, the handheld device input service 408, and the game history recorder unit 410 can be software executing on one or more processors (not shown) in the display controller 402. The community game server 404 includes a community game unit 412 and non-volatile machine-readable media 414. The community game unit 412 can also be hardware, software, firmware or a combination thereof. For example, the community game unit 412 can be software executing on one or more processors (not shown) in the community game server 404. During play of a live community game, components of the display controller 402, the community game server 404 and the handheld devices 420A-420C perform operations to enable recording of handheld device activity to enable subsequent replay of the community game.
Initially, during live play of the community game, the community game unit 412 in the community game server 404 can create game data that is used in creating the video frames of the community game for display on one or more community display devices. The community game unit 412 transmits the game data to the community game presentation unit 406 (game data for video frame rendering for community game 426). Using the game data, the community game presentation unit 406 can create the video frames for display on the community display devices.
Also during play of the live community game, activity by the handheld devices 420A-420C can affect the community game play (including the video being displayed). To illustrate, the handheld devices 420A-420C transmit communications (live handheld device input activity 421) to the handheld device input service 408. In some embodiments, in order to receive the messages, the handheld device input service 408 can poll the handheld devices 420A-420C periodically. For example, the handheld device input service 408 can poll the handheld devices 420A-420C eight times per second, four times per second, 16 times per second, etc. Alternatively or in addition to polling, the handheld devices 420A-420C can periodically push data defining live handheld device input activity to the handheld device input service 408. As described above, the live handheld device input activity can include current position (e.g., location and orientation in three-dimensional space) of the handheld devices 420A-420C and inputs (e.g., button presses) from the handheld devices 420A-420C. If the inputs are received between the polling intervals, the handheld devices 420A-420C can store the input for transmission at a next polling interval.
The live handheld device input activity 421 can include the position of the handheld devices (recorded at periodic intervals) and inputs (e.g., button presses) from the handheld devices 420A-420C. The game history recorder unit 410 can capture the live handheld device activity 421 that are inputs from the handheld devices 420A-420C being received by the handheld device input service 408. The game history recorder unit 410 can store the live handheld device activity 421 as part of the game history for the community game. The game history recorder unit 410 can store the live handheld device activity 421 relative to a timeline of the community game. In other words, along with the live handheld device activity 421 the game history recorder unit 410 can store the time point in the community game when this activity occurred.
The handheld device input service 408 can also transmit communications back to the handheld devices 420A-420C (live handheld device output activity 423). These communications can include instructions to cause output activity (lighting, vibration, rumble, etc.) at the handheld devices 420A-420C. For example during community game play, the community game unit 412 can transmit communications to the handheld device input service 408 that instruct the handheld device input service 408 to output instructions to one or more of the handheld devices 420A-420C. These instructions can cause output activity at the one or more of the handheld devices 420A-420C. The handheld device input service 408 can also output subsequent messages to the one or more of the handheld devices 420A-420C to cause the output activity to be deactivated.
In some embodiments, the game history recorder unit 410 can capture the live handheld device output activity 423 that are outputs to the handheld devices 420A-420C from the handheld device input service 408. The game history recorder unit 410 can store the live handheld device output activity 423 as part of the game history for the community game. The game history recorder unit 410 can store the live handheld device output activity 423 relative to the timeline of the community game (as described above).
The game history recorder unit 410 can store the live handheld device input activity 421 in the non-volatile machine-readable media 414 in the community game server 404 (recorded live handheld device activity 424). If the live handheld device output activity 423 is also being captured as part of the game history, the game history recorder unit 410 can also store the live handheld device output activity 423 in the non-volatile machine-readable media 414 in the community game server 404.
The game history recorder unit 410 can store the activity in the non-volatile machine-readable media 414 as the data is received from the handheld devices 420A-420C. Alternatively, the game history recorder unit 410 can perform a block transfer of data representing multiple activities. For example, the game history recorder unit 410 can compress and perform a block transfer to the non-volatile machine-readable media 414 of the different activity in a community game, after a community game is complete. In some embodiments, the game history recorder unit 410 can store the recorded live handheld device activity 424 in other locations than the non-volatile machine-readable storage media 414. For example, the game history recorder unit 410 can store the recorded live handheld device activity 424 in local media (not shown) in the display controller 402, remote servers, etc.
During play of the live community game, the community game presentation unit 406 receives live handheld device activity 422 from the handheld device input service 408. The live handheld device activity 422 can include current position of the handheld devices 420A-420C and inputs (e.g., button presses) from the handheld devices 420A-420C to the community game. The current position of the handheld devices 420A-420C can be represented by game elements (e.g., cursors) on the display of the community game. Also, inputs from the handheld devices 420A-420C can trigger game events that are displayed as part of the community game. For example, a button press of a handheld device when the associated cursor is positioned over a box can cause the box to open to reveal a reward.
As described above, the community game presentation unit 406 creates a video frame based on game data received from the community game unit 412. Prior to displaying the video frame, the community game presentation unit 406 can update the video frame to include the live handheld device activity 422. For example, the community game presentation unit 406 can update the video frame to show the position of the cursors (or other game elements) associated with the handheld devices 420A-420C. The community game presentation unit 406 can also update the video frame based on any inputs from the handheld devices 420A-420C. For example, the community game presentation unit 406 can update the video frame to change a box from unopened to opened to reveal a reward based on a button press. After updates to the video frame, the community game presentation unit 406 outputs the video frame for display on the community display devices (shown as video of live community game with live handheld device activity 428).
These operations of
This discussion continues with operations for replaying games based on data indicating activities of handheld devices. Operators may want to replay games to settle player disputes, promote games by showing previous big wins, etc.
Initially during replay of the community game, the community game unit 412 in the community game server 404 can create game data that is used in creating the video frames of the video of the community game for display on the community display devices. The community game unit 412 transmits the game data to the community game presentation unit 406 (shown as game data for creating video frames for community game 526). Using the game data, the community game presentation unit 406 creates the video frames for display on the community display devices. Accordingly, the community game presentation unit 406 does not use recorded video to replay games. Video of the live community game is not recorded. Rather, the community game presentation unit 406 recreates the video based on the game data (similar to operations that occur during display of the live community game).
After initiating the replay, the handheld device input service 408 receives, from the community game server 404, recorded handheld device activity of the community game being replayed (recorded handheld device activity 520). For example, the handheld device input service 408 can retrieve the recorded handheld device activity from the non-volatile machine-readable media 414. As described above, the recorded handheld device activity can include current positions (e.g., orientation, rotation, and three-dimensional position) of the handheld devices 420A-420C at periodic intervals, and inputs (e.g., button presses) from the handheld devices 420A-420C. Therefore, the community game presentation unit 406 receives the recorded handheld device activity 520 in place of live handheld device activity.
As described above, the community game presentation unit 406 creates a video frame based on game data received from the community game unit 412. Prior to displaying the video frame, the community game presentation unit 406 can update the video frame to include the recorded handheld device activity 520. For example, the community game presentation unit 406 can update the video frame to show the position of the cursors associated with the handheld devices 420A-420C. The community game presentation unit 406 can also update the video frame based on any inputs from the handheld devices 420A-420C. After updates to the video frame based on the recorded handheld device activity 520, the community game presentation unit 406 outputs the video frame for display on the community display devices (shown as video of community game with recorded handheld device activity 528).
In some embodiments, the recorded handheld device activity can also include output to the handheld devices 420A-420C (handheld device output activity 550). The handheld device input service 408 can use these recorded outputs to recreate the output instructions for recreating output at the handheld devices 420A-420C. Alternatively, the handheld device input service 408 can recreate the output instructions based on game data from the community game unit 412 (similar to creating the output instructions during play of the live community game). The handheld device input service 408 can then transmit the output instructions to the handheld devices 420A-420C to cause the output at the handheld devices 420A-420C.
These operations of
In some embodiments, the handheld devices can also be used to play the base game at the wagering game machines. For example, a player can press a button on the handheld device to trigger a new wagering game (e.g., initiate spinning of the reels for a slots game). In some embodiments, the recording of handheld device activity is not performed during play of the base game. Accordingly, some embodiments include selective recording of handheld device activity based on whether the base game or the community game is being played.
Also, while described in reference to play of a community game at a bank of wagering game machines, some embodiments can be used for recording of handheld device activity in other games or activities for wagering where recording movement of handheld devices at periodic intervals is needed for subsequent replay.
As described in some embodiments, some but not all of the components in the display controller 402 and the community game server 404 can be configured to operate differently depending on whether the community game is live or a replay. For example, the community game presentation unit 406 and the community game unit 412 can be configured to operate essentially the same for a live community game and a community game replay. In particular, the community game presentation unit 406 can receive the same game data from the community game unit 412 for a community game regardless of whether the community game is live or a replay. Also, the community game presentation unit 406 can receive handheld device activity from the handheld input service 408 without knowledge of whether the handheld device activity is from live play or from a recorded history of a previous community game play.
In contrast, the handheld input service 408 and the game history recorder unit 410 can be configured to operate differently depending on whether the community game is live or a replay. For live play, the handheld input service 408 can provide live handheld device activity from the handheld devices to the community game presentation unit 406. For a replay, the handheld input service 408 can provide recorded handheld device activity from a prior community game play to the community game presentation unit 406. The game history recorder unit 410 can be configured to only record for live play (not for a replay).
Also in some embodiments, live community game play and a replay are not mutually exclusive. For example, the handheld input service 408 can provide both live and recorded handheld device activity to the community game presentation unit 408. As an example, if there is only one wagering game player playing a wagering game machine at the bank of wagering game machines, a community game can still occur. As part of live play of the community game, the handheld input service 408 can provide live handheld device activity from the one wagering game player and can provide recorded handheld device activity from a replay that includes past activity from one or more additional wagering game players.
This section describes operations associated with some embodiments. In the discussion below, the flowcharts will be described with reference to the block diagrams presented above. 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 less than all the operations shown in the flowcharts. The section will discuss
At block 602, the community game unit 414 in the community game server 412 initiates a community game during game play of a bank of wagering game machines. As described above, a community game can be triggered by a variety of outcomes including a special outcome achieved at one of the wagering gaming machines, a bonus outcome at one of the wagering gaming machines, etc. The community game can also be triggered when a certain amount of time has lapsed since the last community game, at fixed intervals, when a certain sum of wager inputs have been received at the wagering gaming machines, when a certain number of additional or maximum wagers are received at the wagering gaming machines, etc. The community game can also be triggered randomly as a “mystery bonus” for one or more players of the wagering gaming machines. In response to triggering the community game, the community game unit 414 initiates the community game. Operations of the flowchart 600 continue at block 604.
At block 604, the community game presentation unit 406 presents a community game on the community display devices. The community game unit 412 transmits the game data to the community game presentation unit 406. Using the game data, the community game presentation unit 406 can create the video frames for display on the community display devices. Also prior to displaying the video frames, the community game presentation unit 406 can update the video frames to include the live handheld device activity 422. For example, the community game presentation unit 406 can update the video frames to show the position of the cursors associated with the handheld devices 420A-420C. The community game presentation unit 406 can also update the video frames based on any inputs from the handheld devices 420A-420C. Operations of the flowchart 600 continue at blocks 606 and 608.
At block 606, the game history recorder unit 410 records at periodic intervals current position of the handheld devices used for play of community game relative to a timeline in the community game. For example, the handheld device input service 408 can poll the handheld devices 420A-420C periodically. The game history recorder unit 410 can capture the current positions of the handheld devices at periodic intervals that are inputs from the handheld devices 420A-420C being received by the handheld device input service 408. The game history recorder unit 410 can store these positions as part of the game history for the community game. The game history recorder unit 410 can store these positions device activity 421 relative to a timeline of the community game. In other words, the game history recorder unit 410 can store the time point in the community game when current positions of the handheld devices are recorded. Operations of the flowchart 600 continue at block 612 (which is described in more detail below).
The operations at block 606 can occur simultaneously with the operations at blocks 608 and 610.
At block 608, the game history recorder unit 410 determines whether a recordable game event related to the community game occurred. Game events can include inputs (e.g., button presses) from the handheld devices 420A-420C and outputs (e.g., lighting, vibration, rumble, etc.) to the handheld devices 420A-420C. The game events can also include activity independent of the handheld devices 420A-420C. For example, recordable game events can include events that are determined by a randomized determination for awarding a prize or a physics determination for movement of an object in the community game. To illustrate, a physics engine can determine a result of a ball being pushed off a table during the community game. These game events can be recorded to ensure a more accurate replay of the community game. The community game unit 412 can provide these types of recordable game events to the game history recorder unit 410.
The game history recorder unit 410 can receive the game events (e.g., button presses) from the handheld devices 420A-420C being received by the handheld device input service 408. The game history recorder unit 410 can also receive game events that are outputs being transmitted by the handheld device input service 408 to the handheld devices 420A-420C. The game history recorder unit 410 can also receive game events (e.g., awarding of a prize) from the community game unit 412. One or more of these game events can be considerable a recordable event. Therefore, the game history recorder unit 410 can record one or more of these game events. For example, the game history recorder unit 410 can record only the inputs from the handheld devices 420A-420C or all game events related to the community game. If a recordable game event related to the community game did occur, operations of the flowchart 600 continue at block 610. Otherwise, operations of the flowchart 600 continue at block 612.
At block 610, the game history recorder unit 410 records the recordable game event related to the community game relative to the timeline of the community game. The game history recorder unit 410 can record the recordable game events in the non-volatile machine-readable media 414 in the community game server 404. The game history recorder unit 410 can store these recordable events relative to a timeline of the community game. In other words, the game history recorder unit 410 can store the time point in the community game when the recordable event occurred. Operations of the flowchart 600 continue at block 612.
At block 612, the community game presentation unit 406 determines whether the end of the community game has been reached. If the community game has not been reached, operations of the flowchart 600 continue back at block 604. Otherwise, operations of the flowchart 600 are complete.
Operations for replaying a community game are now described. In particular,
At block 702, the community game unit 412 initiates replay of a community game. With reference to
At block 704, the community game presentation unit 406 creates a current video frame based on game data for the community game for display on community display device. The community game unit 412 transmits the game data to the community game presentation unit 406. Using the game data, the community game presentation unit 406 creates a current video frame for display on the community display devices. Accordingly, the community game presentation unit 406 does not use recorded video of the community game to be replayed. Video of the live community game is not recorded. Rather, the community game presentation unit 406 recreates the video based on the game data (similar to operations that occur during display of the live community game). Operations of the flowchart 700 continue at block 706.
At block 706, the community game presentation unit 406 receives recorded data of positions of the handheld devices for current video frame of the community game to be displayed. In response to initiation of replay of a community game, the handheld device input service 408 can receive, from the community game server 404, recorded handheld device activity from the previous community game to be replayed. As described above, the recorded handheld device activity can include current positions (e.g., orientation, rotation, and three-dimensional position) of the handheld devices 420A-420C at periodic intervals and inputs (e.g., button presses) from the handheld devices 420A-420C. The recorded positions of the handheld devices can be positions that are recorded at periodic intervals along a timeline of the community game. The handheld device input service 408 can transmit to the community game presentation unit the recorded positions that can affect the current video frame. Operations of the flowchart 700 continue at block 708.
At block 708, the community game presentation unit 406 receives recorded game events of community game for current video frame to be displayed. The recorded events (e.g., button presses) of the community game can be included in the recorded handheld device activity received by the handheld device input service 408. The recordable game events can also include activity independent of the handheld devices 420A-420C. For example as described above, recordable game events can include events that are determined by a randomized determination for awarding a prize or a physics determination for movement of an object in the community game. The handheld device input service 408 can transmit to the community game presentation unit 406 the recorded game events of the community game that can affect the current video frame. Operations of the flowchart 700 continue at block 710.
At block 710, the handheld device input service 408 receives the recorded handheld device activity to be output to the handheld devices 420A-420C. In some embodiments, the recorded handheld device activity can also include output to the handheld devices 420A-420C (handheld device output activity 550). The handheld device input service 408 can use these recorded outputs to recreate the output instructions for recreating output at the handheld devices 420A-420C. Alternatively, the handheld device input service 408 can recreate the output instructions based on game data from the community game unit 412 (similar to creating the output instructions during play of the live community game). The handheld device input service 408 can then transmit the output instructions to the handheld devices 420A-420C to cause the output at the handheld devices 420A-420C. Operations of the flowchart 700 continue at block 712.
At block 712, the community game presentation unit 406 updates the current video frame with the recorded data of positions of the handheld devices and recorded game events affecting the current video frame. Prior to displaying the video frame, the community game presentation unit 406 can update the video frame to include the recorded data of positions of the handheld devices and recorded game events. For example, the community game presentation unit 406 can update the video frame to show the position of the cursors associated with the handheld devices 420A-420C. The community game presentation unit 406 can also update the video frame based on any inputs from the handheld devices 420A-420C or other recorded game events. Operations of the flowchart 700 continue at block 714.
At block 714, the community game presentation unit 406 displays the current video frame of the community game on the community display device. After updates to the video frame, the community game presentation unit 406 outputs the video frame for display on the community display devices. Operations of the flowchart 700 continue at block 716.
At block 716, the community game presentation unit 406 determines whether the end of the community game has been reached. If the community game has not been reached, operations of the flowchart 700 continue back at block 704. Otherwise, operations of the flowchart 700 are complete.
This section describes an example wagering game architecture of some embodiments.
The CPU 830 is also connected to an input/output (I/O) bus 836, which can include any suitable bus technologies, such as an AGTL+ frontside bus and a PCI backside bus. The I/O bus 836 is connected to various input devices 838, output devices 840, and input/output devices 842 such as those discussed below in connection with
The external system 848 includes, in various aspects, a gaming network, other gaming machines, a gaming server, a remote controller, communications hardware, or a variety of other interfaced systems or components, in any combination. In yet other aspects, the external system 848 may comprise a player's portable electronic device (e.g., cellular phone, electronic wallet, etc.) and the external system interface 846 is configured to facilitate wireless communication and data transfer between the portable electronic device and the CPU 830, such as by a near-field communication path operating via magnetic-field induction or a frequency-hopping spread spectrum RF signals (e.g., Bluetooth, etc.).
The wagering game machine optionally communicates with the external system 848 such that the wagering game machine operates as a thin, thick, or intermediate client. In general, a wagering game includes an RNG for generating a random number, game logic for determining the outcome based on the randomly generated number, and game assets (e.g., art, sound, etc.) for presenting the determined outcome to a player in an audio-visual manner. The RNG, game logic, and game assets are contained within the wagering game machine 810 (“thick client” wagering game machine), the external system 848 (“thin client” wagering game machine), or are distributed therebetween in any suitable manner (“intermediate client” wagering game machine).
The wagering game machine 810 may include additional peripheral devices or more than one of each component shown in
The wagering game machine 10 illustrated in
Input devices, such as the touch screen 18, buttons 20, a mouse, a joystick, a gesture-sensing device, a voice-recognition device, and a virtual input device, accept player input(s) and transform the player input(s) to electronic data signals indicative of the player input(s), which correspond to an enabled feature for such input(s) at a time of activation (e.g., pressing a “Max Bet” button or soft key to indicate a player's desire to place a maximum wager to play the wagering game). The input(s), once transformed into electronic data signals, are output to a CPU for processing. The electronic data signals are selected from a group consisting essentially of an electrical current, an electrical voltage, an electrical charge, an optical signal, an optical element, a magnetic signal, and a magnetic element.
In response to receiving a wager, the reels 52 are rotated and stopped to place symbols on the reels in visual association with paylines such as paylines 58. The wagering game evaluates the displayed array of symbols on the stopped reels and provides immediate awards and bonus features in accordance with a pay table. The pay table may, for example, include “line pays” or “scatter pays.” Line pays occur when a predetermined type and number of symbols appear along an activated payline, typically in a particular order such as left to right, right to left, top to bottom, bottom to top, etc. Scatter pays occur when a predetermined type and number of symbols appear anywhere in the displayed array without regard to position or paylines. Similarly, the wagering game may trigger bonus features based on one or more bonus triggering symbols appearing along an activated payline (i.e., “line trigger”) or anywhere in the displayed array (i.e., “scatter trigger”). The wagering game may also provide mystery awards and features independent of the symbols appearing in the displayed array.
In accord with various methods of conducting a wagering game on a gaming system in accord with the present concepts, the wagering game includes a game sequence in which a player makes a wager and a wagering game outcome is provided or displayed in response to the wager being received or detected. The wagering game outcome is then revealed to the player in due course following initiation of the wagering game. The method comprises the acts of conducting the wagering game using a gaming apparatus, such as the wagering game machine 10 depicted in
In the aforementioned method, for each data signal, the CPU (e.g., CPU 830 of
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 of the invention, 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 claims the priority benefit of U.S. Provisional Application Ser. No. 61/832,550 filed Jun. 7, 2013.
Number | Name | Date | Kind |
---|---|---|---|
6906700 | Armstrong | Jun 2005 | B1 |
7927216 | Ikeda et al. | Apr 2011 | B2 |
8164567 | Barney et al. | Apr 2012 | B1 |
8169406 | Barney et al. | May 2012 | B2 |
8460103 | Mattice et al. | Jun 2013 | B2 |
8491389 | Weston et al. | Jul 2013 | B2 |
8542105 | Grant et al. | Sep 2013 | B2 |
8674932 | Armstrong | Mar 2014 | B2 |
8707216 | Wilson | Apr 2014 | B2 |
20090054123 | Mityagin | Feb 2009 | A1 |
20090280910 | Gagner et al. | Nov 2009 | A1 |
20090286601 | Rubio et al. | Nov 2009 | A1 |
20110034239 | Collette | Feb 2011 | A1 |
20110086706 | Zalewski | Apr 2011 | A1 |
20110144983 | Salazar | Jun 2011 | A1 |
20120075168 | Osterhout | Mar 2012 | A1 |
20130274016 | Gagner | Oct 2013 | A1 |
20140235343 | Kelly | Aug 2014 | A1 |
20140370971 | Kelly | Dec 2014 | A1 |
Number | Date | Country | |
---|---|---|---|
20140364217 A1 | Dec 2014 | US |
Number | Date | Country | |
---|---|---|---|
61832550 | Jun 2013 | US |