U.S. Pat. No. 10,035,070
COMPUTER GAME ELEMENTS, SYSTEMS, AND METHODS THEREFOR
AssigneeKING.COM LTD.
Issue DateFebruary 6, 2014
Illustrative Figure
Abstract
In an embodiment there is provided a game element within a game adapted to be played on data processing apparatus, the method comprising the following steps implemented by at least one processor of the data processing apparatus, displaying a game area having a plurality of game objects on the display, providing a predetermined player object configured for targeting and shooting of the game objects in response to player input, providing predetermined data comprising characteristics of at least one game element, selecting the at least one game element and associated characteristics for display, displaying the at least one game element, and executing the characteristics of said at least one game element in the game in dependence on a trigger event. A computing system, user device and server are also described.
Description
DETAILED DESCRIPTION OF SOME EMBODIMENTS The techniques described herein can be implemented in for instance a video game such as a ‘bubble shooter’ game. The game mixes up the bubble popping with explosive bombs and other special bubbles to clear your way to the top faster. The player can in some embodiments connect the bombs that are mixed into the bubbles on the game board to create long blast chains and then detonate to uncover game elements that can award the player points. In a typical bubble shooter game the player operates a player element launcher that can shoot player elements in to the game board. The game board is typically populated with a number of game elements already. The game elements are of different types. The number of different types of game elements may vary between the levels. The launched player element will travel toward the game elements already on the game board and stick to the elements on the game board. In one embodiment, if the launched player element hit a game element of the same type that already have another game element of the same type adjacent to it the three game elements will disappear from the game board. This can for instance be done through a popping animation. If the launched player element will cause two other game elements to pop that will leave one game element on the game board with no adjacent game element or a set of game elements that will not have a connection sequence of adjacent game elements to the top of the game board then the orphaned game element or elements will fall downwards on the game board. The falling game elements can in some embodiments land in receptacles in the lower end of the game board and in some ...
DETAILED DESCRIPTION OF SOME EMBODIMENTS
The techniques described herein can be implemented in for instance a video game such as a ‘bubble shooter’ game. The game mixes up the bubble popping with explosive bombs and other special bubbles to clear your way to the top faster. The player can in some embodiments connect the bombs that are mixed into the bubbles on the game board to create long blast chains and then detonate to uncover game elements that can award the player points.
In a typical bubble shooter game the player operates a player element launcher that can shoot player elements in to the game board. The game board is typically populated with a number of game elements already. The game elements are of different types. The number of different types of game elements may vary between the levels.
The launched player element will travel toward the game elements already on the game board and stick to the elements on the game board. In one embodiment, if the launched player element hit a game element of the same type that already have another game element of the same type adjacent to it the three game elements will disappear from the game board. This can for instance be done through a popping animation.
If the launched player element will cause two other game elements to pop that will leave one game element on the game board with no adjacent game element or a set of game elements that will not have a connection sequence of adjacent game elements to the top of the game board then the orphaned game element or elements will fall downwards on the game board.
The falling game elements can in some embodiments land in receptacles in the lower end of the game board and in some embodiments bounce off game objects that are placed on the game board.
The game elements that are launched in to the game board can be random or based on a set pattern. The player can in some embodiments replace the game element to be launched with another game element, for instance the next game element in the ‘launch queue’.
The player elements that are in the launch queue may be of the same type as the game elements that are already on the game board, but the skilled person will understand that the game can be implemented in several ways.
The game element launcher can have a sight line extending in to the game board to aid the player in how the launched game element will travel in to the game board.
The game can be implemented with the game element launcher in the lower edge of the game board. The launcher can in some embodiment move right and left along the edge of the game board.
There can in some embodiments of the game be one or more special game elements. An embodiment may have one or more of these special game elements that when activated will destroy a number of other game elements on the game board irrespective of which type they are. Such game elements will be described in more detail later.
The game board can have some bomb game elements already mixed into it at the start of a level or a game.
Using the bomb game elements may help the player to complete the level fast.
The game can be implemented so that a level or a game session is completed when all game elements on the game board have been cleared. The player can have a limited time or a limited number of game elements to launch in to the game board or a combination of both.
The player can in some embodiments be awarded for good gameplay. For instance after a series of consecutive launched game elements that have caused game elements to disappear from the game board. In one embodiment the player is awarded a special game element that can be launched from the game element launcher or a booster. The number of special game elements can be displayed for instance in relation to the game element launcher.
The game can in one embodiment end if the player runs out of time or shots before he manages to blast the final row of bombs at the top of the level.
The game board has a number of game elements of different types aligned in rows. The game elements on the game board can have 6 (or any other suitable number) of contact points with other game elements. There can be empty spaces on the game board where there are not game elements. There can also be other game objects on the game board that are not game elements and in some embodiments that cannot be removed.
Game elements can be removed from the game board in three main ways
Pop the game element through combining it with two other game elements of the same type.
Clear game elements above it so that it has no connections to game elements that are connected to the top of the game board. This will cause the game element to fall downwards on the game board and be removed from the game board.
Blast the game element with an explosion from a bomb game element.
There can in some implementations be special game elements that change the gameplay for the player. There can for instance be ‘black game elements’ that cannot be matched with other game elements. These game elements can only be removed from the game board with a blast or that they are dropped down from the game board.
Other special game elements will be described below.
Reference is made toFIG. 1which shows an example embodiment of a “bubble shooter” type computer game such as “Bubble Witch Saga”™. The game has a game area100upon which are disposed game objects110a,110b, and110c. The objects may be of different colours or types. There is also provided a player object120which may be a projectile for shooting at the game objects depending on the game. A target indicator130is provided which may be moved by the player to target game objects110a,110b.110cwith player object or projectile120.FIG. 1also shows scoring pots140a,140b,140c,140f,140e. A pot150for providing player objects is also shown. Typically the game area100will also depict game indicators such as a score160, a time played170, lives and/or turns left180, and may indicate an in game currency190.
In such games, the object may be to clear the game area100of game objects110a,110b, and110cby shooting the player object120at the game objects. If the properties of the game object110aand the player object120match (such as color or any other suitable criteria) then the game object110ais eliminated. In some embodiments, there may be a requirement for the player object to match two or more adjacent game objects for the game objects to be eliminated.
A schematic view of a user device200according to an embodiment is shown inFIG. 2. All of the blocks shown are implemented by suitable circuitry. The blocks may be implemented in hardware and/or software. The user device may have a control part210. The control part210has one or more processors215and one or more memories220. The control part210is also shown as having a graphics controller225and a sound controller230. It should be appreciated that one or other or both of the graphics controller225and sound controller230may be provided by the one or more processors215.
The graphics controller225is configured to provide a video output235. The sound controller230is configured to provide an audio output240. The controller210has an interface245allowing the device to be able to communicate with a network250such as the Internet or other communication infrastructure.
The video output235is provided to a display255. The audio output240is provided to an audio device260such as a speaker and/or earphone(s).
The device200has an input device265. The input device265can take any suitable format and can be one or more of a keyboard, mouse, touch screen, joystick or game controller. It should be appreciated that the display255may in some embodiments also provide the input device265by way of an integrated touch screen for example.
The blocks of the controller210are configured to communicate with each other by an interconnect such as a bus or any other suitable interconnect and/or by point to point communication.
It should be appreciated that in some embodiments, the controller210may be implemented by one or more integrated circuits, at least in part.
The user device200is shown by way of example only. In alternative embodiments, one or more of the parts may be omitted. Alternatively or additionally, some embodiments may comprise one or more other parts. Alternatively or additionally, one or more parts may be combined.
FIG. 3schematically shows a system300in some embodiments. The system300comprises a server320which may store databases of game players' details, profiles, high scores and so on. In practice, one or more databases may be provided. Where more than one server is provided, the database(s) may be provided in one database or across two or more servers. The server may also have a games data function. This may comprise a memory to store the computer game program and a processor to run the games program.
The server may communicate via for instance the Internet310to one or more user devices305and may further provide connections to a social network330such as Facebook™.
It should be appreciated that embodiments may be deployed in different system architectures. For example, the computer game may be implemented as a computer game that is stored in the memory220of the user device200and is run on the processor215of the user device200. However, the server320may handle some elements of the game in some embodiments. By way of example only, a Java game applet may be provided to the user device200and the locally running Java applet will generate, for example, the graphics, sounds, and user interaction for the game play on the user device200. Some data may be fed back to the server320to allow interaction with other players305. The data which is fed back may also allow scoring and/or cross platform synchronization.
In some embodiments, the game may be implemented as a computer program that is stored in a memory of the system, for example the server320, and which runs on a processor of the game server. Data streams or updates are supplied to the user device200to allow the user device200to render and display graphics and sounds in a browser of the user device200. Such an approach is sometimes referred to as a web services approach. It should be appreciated, however, that such an approach does not necessarily require the use of the Internet.
Embodiments will now be described with reference toFIG. 4andFIG. 5.FIG. 4shows a game area400of an embodiment comprising game objects410a,410b, and410c. Also provided are a player object420and a targeting indicator430responsive to input from the player. Game data in the form of elapsed time440and score450are shown.
FIG. 5shows the game area400ofFIG. 4, with the addition of a special game element460. In this embodiment the special game element460is shown as a cloud. The cloud game element460may be stationary with respect to the game area400, or in alternative embodiments, the cloud may move as indicated by arrow470. The cloud game element may be generally the same size as a game object (for example a bubble). Alternatively or additionally the cloud game element may cover two or more game objects.
Thus the cloud game element may be a stationary object, covering one or more bubble game objects. For example a cloud game element may cover or obscure a colour of a bubble game object.
Alternatively, a cloud shaped game element may move or drift across the game area400, obscuring or covering the one or more game objects making them harder to shoot, or immune to being shot by player.
When the cloud game element has been hit by a player object, a predetermined number of times the colour of the bubble game object(s) under the cloud may be revealed. The predetermined number of times may be one or more times. In some embodiments, the predetermined number of times may be one. If there is a match, the game object under the cloud may drop down.
In another embodiment as shown inFIG. 6, a special game element540is depicted as a black disc or hole. For example in an embodiment the special game element540ofFIG. 6may have programmed characteristics to absorb player objects fired at it. Such a game element540may be depicted as a “black hole.
In some embodiments, the black hole game element may be destroyed or caused to drop down by the player by eliminating game objects410a,410baround the game element540. This may be in the alternative or an additional option to the absorbing of a predetermined number of game objects.
The black hole game element may be generally the same size as a game object (for example a bubble). Alternatively or additionally the black hole game element may cover two or more game objects.
In some embodiments, the black hole may absorb a predetermined number of player objects before the black hole is removed. The predetermined number of times may be one or more times. In some embodiments, the predetermined number of times may be three times.
The player object may be shot at the special game element. The player object is then removed from the display after hitting the black hole game element. The display may be controlled such that the player object appears to disappear into or to be eaten by the black hole game element.
In another embodiment as shown inFIG. 7aandFIG. 7b, a special game element640may be programmed to eliminate a plurality of game objects410a,410bwhen a trigger event is detected by said processor215or server320.FIG. 7aillustrates the game element640before the trigger event, andFIG. 7billustrates a possible embodiment in which the player object420has collided with the special game element640, thereby triggering the elimination of game objects410a,410bin a horizontal660direction with respect to said game area400. The game element640may be a line removing booster. Alternatively or additionally the directions may be perpendicular to the horizontal direction.
In another embodiment as shown inFIG. 8aandFIG. 8b, a special game element640may be programmed to eliminate a plurality of game objects410a,410bwhen a trigger event is detected by said processor215or server320.FIG. 8aillustrates the game element640before the trigger event, andFIG. 8billustrates a possible embodiment in which the player object420has collided with the game element640, thereby triggering the elimination of game objects410a,410bin a diagonal670direction with respect to said game area400.
In some embodiments, the line removing game element may be added to the game play area when the user selects a line removing booster. Alternatively or additionally the line removing game element may be provided to the game play area at the beginning of a level.
In some embodiments, the line removing game play element may appear like the other game elements and its function is only revealed when hit by a player element. In some embodiments, if this line game element drops down, the line game element is activated.
In some embodiments, the direction of the line of game elements which is removed may be selected at random. In other embodiments, a predetermined line direction, e.g. always horizontal, always diagonal etc. is provided. In other embodiments, the line direction removed may be dependent on the direction of impact of the player element.
In some embodiments, the player element needs to directly impact the line removing element in order for a line of game elements to be removed. In some embodiments, indirect impacts may cause the line removing element to be activated. In some embodiments, if this line game element drops down, the line game element is activated.
In some embodiments, a plurality of different line removing elements with different properties may be provided in the game.
Alternatively or additionally the line removing booster may be a special player element being fired at the game elements.
The game elements may be characterised by predetermined data which describes their behaviour and effect on screen.
Different game elements may have different characteristics.
The characteristics may comprise trigger events defining the game element behaviour.
In another embodiment a booster may be programmed to have “undo last move” characteristics, wherein, upon triggering event detection, the processor215,320resets said displayed game area and said game objects to a previous state. The booster is an option which may be selected by a user. In some embodiments, available and/or potentially available boosters may be displayed on the display and which may be selected by the user via the user interface.
In an embodiment, the previous state comprises the game state immediately prior to the triggering event, hence providing an “undo last move” game element. In some embodiments, the previous state may be n game states prior to the current game state, where n is an integer. A previous game state may be defined as the game state prior to the previous firing of a player object.
The booster can be earned by attaining levels of performance in the game and/or by purchasing a booster with real money and/or in game currency.
Alternatively, the undo function may be provided by a special game element which when activated provides an undo function.
The undo function may not be available after certain events. Those events may be the use of other boosters. By way of example the other booster may change a colour of a game element or be a destructive booster.
If the undo option is selected while game or player objects elements are still moving, the undo function will wait until the game or player objects are no longer moving.
FIGS. 9, 10 and 11will now be described, in order to help illustrate embodiments showing how game elements may be technically characterised, stored, generated and selected during a game using example methods.
FIG. 9illustrates steps of an example method. The method is suitable for providing a game element within a game adapted to be played on data processing apparatus having a display, such as, but not limited to the user device200and/or system300which may include server320. In a first step710the processor215displays (D) a game area400having a plurality of game objects410a,410bon a display255.
In a next step720there is also provided (P), for display a player object420configured for targeting and shooting of the game objects410a,410bin response to player input via, for example the input device265, which may be one or more of a touchscreen, keyboard, mouse, joystick, gamepad and other suitable input device.
In a next step730predetermined data (PPDC) comprising characteristics of at least one game element and/or a booster is provided. This may be in the form of a table900as shown inFIG. 11. The data may comprise characteristics920of respective game elements and boosters910, together with trigger event data930. The data may be stored in memory220and/or memory of the server315and provided to the processor215of the user device200and/or the server315.
In some embodiments one or more of the game elements and boosters may be omitted.
In alternative embodiments, boosters may be provided in one table and special game elements in another table.
In a next step740the processor selects (S) at least one game element and/or booster and associated characteristics for display, and subsequently in a following step750displays the game element and/or booster.
The processor then monitors at step760for a trigger event (TE). The trigger event or events930may be provided in the predetermined data900.
If a trigger event is detected, then the processor moves770to step780and executes the characteristics of the displayed game element.
For example the cloud game element may reveal the bubble below by the trigger event of a player element striking the cloud game element.
For example, the game element540as previously described may be depicted as a “black hole” and may only be destroyed by the trigger event of striking of a predetermined number of player objects on the black hole game element and/or eliminating game objects410a,410baround the game element540.
In another embodiment, the trigger event may be the detection of a collision of the player object with the game element640, with the game elements640then eliminating a plurality of game objects410a,410bin a horizontal660direction (FIG. 7b) or a diagonal670direction (FIG. 8b) with respect to said game area400.
For example the trigger event of the undo booster is the selecting of that booster causing the previous turn to be undone.
FIG. 10illustrates the steps of an example selection method for selecting and generating a game element or booster. At step810the processor selection comprises selecting a game element for generation (G) determined by an algorithm (A (ti, GD) step820or the selection of an available or potentially available booster. The algorithm may determine generation and selection based on criteria as shown at step830.
In an embodiment the criteria may be based on game data (GD).
In another embodiment the criteria may be monitoring a time interval (ti) since a game element was last generated.
In another embodiment both game data and time may be monitored to set the criteria for the algorithm. For example, a game element may only be selected if a certain score is reached in a certain time.
Other embodiments may comprise the aggregation of two or more scores, time and level data.
Other embodiments may comprise randomly selecting based on for instance a random number function.
If the criteria at step830is met then the processor moves via flow840(Y) to step850and the game element and/or booster is selected for display along with its associated data920,930, shown for example inFIG. 11and as previously described.
One or more of the special game elements may be removed by other special game elements which have a destruction function such as bomb function or a fireball function.
An undo booster can be awarded to the player or seeded in any number of ways. The player can also purchase the boosters before or during the game using soft currency collected in the game or hard currency bought for real money. It is however understood that the payment options implemented in the game can vary.
Some embodiments therefore provide a framework or architecture which enables new game elements to be incorporated in a game in modular, upgradeable fashion. This may increase the user's engagement over time. The game elements may be provided via download or in real-time from a server, to update the game on the user device.
Different Devices
Some embodiments of the game allows for the game to be synchronised between different devices or platforms.
The game can for instance be played in an offline mode on a handheld device using locally stored information on the handheld device. The device can store all or some of the levels that are available for the player to play in the game. Some of the features in the game can be locally run on the device and dependent on the local machine. This can for instance be that if the game is implemented to regenerate lives after a certain period of time, then the time can be locally decided based on the clock on the device. In some embodiments, the central game server clock can override the local clock when the local device has been synchronised with the server.
A game can be implemented so that the player knows if it has synchronised the available data with the central server or servers. This can for instance be through a coloured symbol or a check mark that indicates that the information is up to date.
The game can also indicate if it has been able to establish a connection with the central server for synchronisation or if for instance the network connection is down. That the device is offline can for instance be illustrated with a greyed out icon.
Different Platforms (FB/Google+)
The game can be implemented to synchronize game state information and/or retrieve and connect to the social graph information and user profile of the player on a social network such as Facebook or Google+.
The game can also be implemented so that it is connected to a plurality of social networks. The user can be given the option to select what information that can be derived and shared with which social network.
One example of how the game can be connected to a social network is the Facebook™'s Open Graph API allows websites and applications to draw and share information about more objects than simply people, including photos, events, and pages, and their relationships between each other. This expands the social graph concept to more than just relationships between individuals and instead applies it to virtual non-human objects between individuals, as well. A game can typically share in-game events such as that a level has been completed, that a player has passed a friend in the game or beaten a friend's high score on a level. The game can also post event such as that a player has purchased objects in the game or received objects from other players of the game.
Various methods have been described. It should be appreciated that these methods will be implemented in apparatus, where the apparatus is implemented by any suitable circuitry. Some embodiments may be implemented by at least one memory and at least one processor. The memory is provided by memory circuitry and the processor is provided by processor circuitry. Some embodiments may be provided by a computer program running on the at least one processor. The computer program may comprise computer implemented instructions which are stored in the at least one memory and which may be run on the at least one processor.
It is also noted herein that while the above describes exemplifying embodiments of the invention, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present invention.
Claims
- A computer implemented method of controlling a user interface responsive to user engagement with displayed game elements on the interface, the method comprising the following implemented by a processor of a computer device displaying a game area for a game having a plurality of game objects of different types on said interface, providing a launcher configured to provide a sequence of player objects of different types into the game area;the launcher receiving player input for targeting and shooting of said game objects by said player objects provided by the launcher, detecting if a player object hits a game object of the same type as the player object, the hit game object being adjacent to another of the game objects of the same type as the hit game object, and, if so, removing from the game area the player object, the hit game object and any adjacent another game objects, providing data comprising characteristics of at least one game element, selecting said at least one game element and associated characteristics for display, displaying in the game area said at least one game element, detecting if a player object hits the at least one game element, when it is detected that the player object hits the at least one game element executing said characteristics of said at least one game element in said game based on the data, said characteristics of said at least one game element comprising absorbing the player object which has hit the at least one game element, and controlling the user interface to depict the player object disappearing into the at least one game element.
- A method as claimed in claim 1 , wherein said at least one game element absorbing game or player objects is removed after said at least one game element has absorbed a predetermined number of game or player objects.
- A computer device having: a user interface configured to display a game area for a game having a plurality of game objects of different types and to display at least one game element, said user interface being configured to receive user input;and at least one processor in conjunction with at least one memory configured to: provide a launcher configured to provide a sequence of player objects of different types into the game area, the launcher receiving player input for targeting and shooting of said game objects by said player objects provided by the launcher, detect if a player object hits a game object of the same type as the player object, the hit game object being adjacent to another of the game objects of the same type as the hit game object, and, if so, remove from the game area the player object, the hit game object and any adjacent another game objects, provide data comprising characteristics of at least one game element, select said at least one game element and associated characteristics for display by said user interface, wherein the at least one game element is depicted in the game area, and detect if a player object hits the at least one game element, and when it is detected that the player object hits the at least one game element execute said characteristics of said at least one game element in said game based on the data, said characteristics of said at least one game element comprising absorbing at least one player object which has hit the at least one game element, and controlling the user interface to depict the player object disappearing into the at least one game element.
- A computer implemented method of controlling a user interface responsive to user engagement with displayed game elements on the interface, the method comprising the following implemented by a processor of a computer device displaying a game area for a game having a plurality of game objects of different types on said interface, providing a launcher configured to provide a sequence of player objects of different types into the game area;the launcher receiving player input for targeting and shooting of said game objects by said player objects provided by the launcher, detecting if a player object hits a game object of the same type as the player object, the hit game object being adjacent to another of the game objects of the same type as the hit game object, and, if so, removing from the game area the player object, the hit game object and any adjacent another game objects, providing data comprising characteristics of at least one game element, selecting said at least one game element and associated characteristics for display, displaying said at least one game element, and executing said characteristics of said at least one game element in said game based on the data, said characteristics of said at least one game element comprises absorbing at least one game or player objects wherein said at least one game element absorbing at least one game or player objects is removed after said at least one game element has absorbed a predetermined number of game or player objects.
- A computer device having: a user interface configured to display a game area for a game having a plurality of game objects of different types and to display at least one game element, said user interface being configured to receive user input;and at least one processor in conjunction with at least one memory configured to: provide a launcher configured to provide a sequence of player objects of different types into the game area, the launcher receiving player input for targeting and shooting of said game objects by said player objects provided by the launcher, detect if a player object hits a game object of the same type as the player object, the hit game object being adjacent to another of the game objects of the same type as the hit game object, and, if so, remove from the game area the player object, the hit game object and the any adjacent another game objects, provide data comprising characteristics of at least one game element, select said at least one game element and associated characteristics for display by said user interface, and executing said characteristics of said at least one game element in said game based on the data, said characteristics of said at least one game element comprise absorbing at least one game or player objects wherein said at least one game element absorbing at least one game or player objects is removed after said at least one game element has absorbed a predetermined number of game or player objects.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.