U.S. patent application number 16/157828 was filed with the patent office on 2020-04-16 for method and apparatus for providing a computer implemented game.
The applicant listed for this patent is KING.COM LIMITED. Invention is credited to Par KAMFJORD.
Application Number | 20200114261 16/157828 |
Document ID | / |
Family ID | 69902730 |
Filed Date | 2020-04-16 |
United States Patent
Application |
20200114261 |
Kind Code |
A1 |
KAMFJORD; Par |
April 16, 2020 |
METHOD AND APPARATUS FOR PROVIDING A COMPUTER IMPLEMENTED GAME
Abstract
A computer device has a display which displays game elements in
a game board. In a move, one or more game elements is removed from
the game board and the game board is displayed on the display to be
refilled. The computer device is configured to cause images showing
at least the removal of the game elements and the refilling of the
game board to be displayed on the display at a rate which increases
over time.
Inventors: |
KAMFJORD; Par; (Stockholm,
SE) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
KING.COM LIMITED |
St. Julians |
|
MT |
|
|
Family ID: |
69902730 |
Appl. No.: |
16/157828 |
Filed: |
October 11, 2018 |
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
A63F 13/80 20140902;
A63F 13/52 20140902; A63F 13/45 20140902 |
International
Class: |
A63F 13/52 20060101
A63F013/52 |
Claims
1. A computer device comprising: a display configured to display
game elements in a game board of a computer implemented game; a
user interface configured to detect a first user input when a user
engages with at least one game element in a move; and at least one
processor configured to determine that: (i) at least one game
element is to be removed from the game board which is displayed on
the display, (ii) cause the game board which is displayed on the
display to be refilled, wherein when the game board has been
refilled, the at least one processor is configured to repeat steps
(i) and (ii) until there are no game elements which are to be
removed in a refilled game board, wherein the at least one
processor is configured to cause images showing at least the
removal of the game elements and the refilling of the game board to
be displayed on the display at a rate which increases over
time.
2. The computer device as claimed in claim 1, wherein the rate is
increased to a maximum rate.
3. The computer device as claimed in claim 1, comprising a timer,
the timer being started in response to the first user input.
4. The computer device as claimed in claim 3, wherein the timer is
one of a count up and a countdown timer.
5. The computer device as claimed in claim 1, wherein the at least
one processor is configured to capture a current time in response
to the first user input.
6. The computer device as claimed in claim 1, wherein the at least
one processor is configured to determine a current rate as the
rate, the current rate being dependent on a time from the first
user input.
7. The computer device as claimed in claim 1, wherein the at least
one processor is configured to determine if at least a first given
time from the first user input has elapsed and only if the first
given time has elapsed to increase the rate from a default
rate.
8. The computer device as claimed in claim 1, wherein the at least
one processor is configured to determine if at least a second given
time from the first user input has elapsed and if so to maintain a
current rate.
9. The computer device as claimed in claim 1, wherein the at least
one processor is configured to iteratively increase the rate up to
a maximum rate.
10. The computer device is claimed as claimed in claim 1, wherein
the at least one processor is configured to determine a current
rate by adding a predefined value to a previous rate.
11. The computer device as claimed as claimed in claim 1, wherein
the at least one processor is configured to determine a current
rate by performing a function.
12. The computer device as claimed in claim 1, wherein the at least
one processor is configured to determine a current rate by
performing a look up operation.
13. The computer device as claimed in claim 1, wherein the at least
one processor is configured to determine that steps (i) and (ii)
have been performed for at least a given amount of time and in
response thereto to increase the rate over time up to a maximum
rate.
14. The computer device as claimed in claim 1, wherein the at least
one processor is configured such that the user input is configured
to receive a second user input when a user engages with at least
one game element in a next move only when there are no game
elements to be removed.
15. The computer device as claimed in claim 1, wherein the at least
one processor is configured in step (i) to determine that at least
three game elements satisfy a match condition and in response
thereto to remove the game elements.
16. A computer implemented method comprising: displaying on a
display game elements in a game board of a computer implemented
game; detecting, via a user interface, a first user input when a
user engages with at least one game element in a move; (i)
determining by at least one processor that at least one game
element is to be removed from the game board which is displayed on
the display, (ii) causing, by the at least one processor, the game
board which is displayed on the display to be refilled, wherein
when the game board has been refilled, repeating steps (i) and (ii)
until there are no game elements which are to be removed in a
refilled game board, the method comprising causing images showing
at least the removal of the game elements and the refilling of the
game board to be displayed on the display at a rate which increases
over time.
17. The computer implemented method as claimed in claim 16, wherein
the rate is increased to a maximum rate.
18. The computer implemented method as claimed in claim 16,
comprising starting a timer in response to the first user
input.
19. The computer implemented method as claimed in claim 16,
comprising determining if at least a first given time from the
first user input has elapsed and only if the first given time has
elapsed to increase the rate from a default rate.
20. The computer implemented method as claimed in claim 16,
comprising determining if at least a second given time from the
first user input has elapsed and if so to maintain a current
rate.
21. The computer implemented method as claimed in claim 16,
comprising iteratively increasing the rate up to a maximum
rate.
22. The computer implemented method as claimed in claim 16,
comprising determining a current rate by one or more of: performing
a function; adding a predefined value to a previous rate; or
performing a look up operation.
23. The computer implemented method as claimed in claim 16,
comprising determining that steps (i) and (ii) have been performed
for a least a given amount of time and in response thereto to
increase the rate over time up to a maximum rate.
24. The computer implemented method as claimed in claim 16,
comprising receiving a second user input when a user engages with
at least one game element in a next move only when there are no
game elements to be removed.
25. A computer readable non-transitory storage medium carrying one
or more computer executable instructions which when run on at least
one processor cause: displaying on a display game elements in a
game board of a computer implemented game; detecting a first user
input when a user engages with at least one game element in a move;
(i) determining that at least one game element is to be removed
from the game board which is displayed on the display, (ii) causing
the game board which is displayed on the display to be refilled,
wherein when the game board has been refilled, repeating steps (i)
and (ii) until there are no game elements which are to be removed
in a refilled game board, and causing images showing at least the
removal of the game elements and the refilling of the game board to
be displayed on the display at a rate which increases over
time.
26. A computer device comprising: a display configured to display
images; a user interface configured to detect user input when a
user engages with an app; at least one processor configured to, in
response to the user input to cause a series of images to be
displayed on the display, whereby a subsequent input by the user
via the user interface is only actioned by the at least one
processor when all of the series of images have been displayed, the
at least one processor being configured to increase the rate at
which the series of images are displayed over time.
27. A computer device comprising: a display configured to display
game elements of a computer implemented game; a user interface
configured to detect user input when a user engages with a game
element in a move; and at least one processor configured to: cause
a series of images to be displayed, whereby a subsequent move by
the user via the user interface is only permitted by the at least
one processor when all of the series of images have been displayed,
the at least one processor being configured to increase the rate at
which the series images are displayed over time.
Description
FIELD OF THE INVENTION
[0001] Embodiments of this application relate to a user device for
use in playing a computer implemented game.
[0002] Some embodiments may relate to engaging users or players in
a computer game executable in an online environment.
[0003] Some embodiments relate to a user device which supports an
app.
[0004] Some embodiments may have particular, but not exclusive
application in the field of computer implemented applications, in
an online or offline environment, and computing devices
therefor.
[0005] Some embodiments may relate to engaging a user of the app
while the user is interacting with the app.
BACKGROUND OF THE INVENTION
[0006] In the field of computer-implemented games, there are many
technical challenges facing the designer of such games when
considering how, for example, the user interface is to be
controlled in the context of computer devices available to play the
game.
[0007] One technical challenge can involve allowing a game to be
fun and compelling even when there is limited display resource
available, such as when a game is being played on a smartphone,
tablet or other minicomputer. Another significant challenge is that
of user engagement. Engagement involves designing gameplay to be
engaging and rewarding to players. This typically requires games to
be easily understood at their simplest or introductory levels,
providing rewarding gameplay with quite simple game mechanics, but
becoming progressively more challenging so that players are not
bored, but remain engaged and develop rewarding skills. Effective
engagement requires various forms of feedback to reinforce player
sense of success and accomplishment.
[0008] A common genre of casual games is so-called match games.
This is a type of tile-matching game where the player manipulates
tiles or game objects according to a matching criterion.
[0009] A match-three game is a type of casual puzzle game where the
player is required to find patterns on a seemingly chaotic board.
The player then has to match three or more of the same type of game
element on the game board and those matched elements will then
disappear. An existing type of match-three game is a so-called
"switcher" game. In a switcher game, the player switches place of
two adjacent game elements on the game board so that one or both of
them create a chain of at least three adjacent game elements of the
same type. Those matched game elements will then disappear. The
game board is then repopulated with game objects.
[0010] One such known match three-type game is known by the trade
name Candy Crush Saga. In that game, the game board is repopulated
with game elements which are perceived as falling downwards onto
the game board from the top edge of the screen from which the game
is played.
[0011] Another known type of game is "linker game", where a
sequence of game elements are linked to form a known sequence.
Another type of game is a `clicker` game, in which matches can be
made in a board by clicking a group of adjacent game elements.
[0012] A technical challenge exists when introducing complexity
into such match games. A technical challenge may arise for example
when there is limited display resource available and/or in the
providing of effective user engagement, such as described
previously.
[0013] So called "apps" are known and are installed on a computing
device such as a laptop device, a smart phone or tablet. A user of
the computing device interacts with the app. A technical challenge
exists in maintaining user engagement when interacting with the
app. This may be a particular issue where the user engages with the
app and then is prevented by the app from making a further input
until the app has performed or carried out a function which may be
visualised graphically on a display of the computer device. This
may be a particular challenge in the case where the user needs to
understand the function performed or carried out in order to make
an appropriate input.
[0014] This patent specification describes not only various ideas
and functions, but also their creative expression. A portion of the
disclosure of this patent document therefore contains material to
which a claim for copyright is made and notice is hereby given:
Copyright King.com Limited 2018 (pursuant to 17 U.S.C. 401). A
claim to copyright protection is made to all screen shots, icons,
look and feel and all other protectable expression associated with
the games illustrated and described in this patent
specification.
[0015] The copyright owner has no objection to the facsimile
reproduction by anyone of the patent document or the patent
disclosure, as it appears in the Patent and Trademark Office patent
file or records, but reserves all other copyright rights
whatsoever. No express or implied license under any copyright
whatsoever is therefore granted.
SUMMARY OF THE INVENTION
[0016] According to one aspect, there is provided a computer device
comprising: a display configured to display game elements in a game
board of a computer implemented game; a user interface configured
to detect a first user input when a user engages with at least one
game element in a move; and at least one processor configured to:
(i) determine that at least one game element is to be removed from
the game board which is displayed on the display, and (ii) cause
the game board which is displayed on the display to be refilled,
wherein when the game board has been refilled, the at least one
processor is configured to repeat steps (i) and (ii) until there
are no game elements which are to be removed in a refilled game
board, wherein the at least one processor is configured to cause
images showing at least the removal of the game elements and the
refilling of the game board to be displayed on the display at a
rate which increases over time.
[0017] The rate may be increased to a maximum rate.
[0018] The computer device may comprise a timer, the timer being
started in response to the first user input.
[0019] The timer may be one of a count up and a countdown
timer.
[0020] The at least one processor may be configured to capture a
current time in response to the first user input.
[0021] The at least one processor may be configured to determine a
current rate as the rate, the current rate being dependent on a
time from the first user input.
[0022] The at least one processor may be configured to determine if
at least a first given time from the first user input has elapsed
and only if the given time has elapsed to increase the rate from a
default rate.
[0023] The at least one processor may be configured to determine if
at least a second given time from the first user input has elapsed
and if so to maintain a current rate.
[0024] The at least one processor may be configured to iteratively
increase the rate up to a maximum rate.
[0025] The at least one processor may be configured to determine a
current rate by adding a predefined value to a previous rate.
[0026] The at least one processor may be configured to determine a
current rate by performing a function.
[0027] The at least one processor may be configured to determine a
current rate by performing a look up operation.
[0028] The at least one processor may be configured to determine
that steps (i) and (ii) have been performed for a least a given
amount of time and in response thereto to increase the rate over
time up to a maximum rate.
[0029] The at least one processor may be configured such that the
user input is configured to receive a second user input when a user
engages with at least one game element in a next move only when
there are no game elements to be removed.
[0030] The at least one processor may be configured in step (i) to
determine that at least three game elements satisfy a match
condition and in response thereto to remove the game elements.
[0031] According to another aspect, there is provided a computer
implemented method comprising: displaying on a display game
elements in a game board of a computer implemented game; detecting,
via a user interface, a first user input when a user engages with
at least one game element in a move; (i) determining by at least
one processor that at least one game element is to be removed from
the game board which is displayed on the display, (ii) causing, by
the at least on processor, the game board which is displayed on the
display to be refilled, wherein when the game board has been
refilled, repeating steps (i) and (ii) until there are no game
elements which are to be removed in a refilled game board, the
method comprising causing images showing at least the removal of
the game elements and the refilling of the game board to be
displayed on the display at a rate which increases over time.
[0032] The rate may be increased to a maximum rate.
[0033] The method may comprise starting a timer in response to the
first user input.
[0034] The timer may be one of a count up and a countdown
timer.
[0035] The method may comprise capturing a current time in response
to the first user input.
[0036] The method may comprise determining a current rate as the
rate, the current rate being dependent on a time from the first
user input.
[0037] The method may comprise determining if at least a first
given time from the first user input has elapsed and only if the
given time has elapsed to increase the rate from a default
rate.
[0038] The method may comprise determining if at least a second
given time from the first user input has elapsed and if so to
maintain a current rate.
[0039] The method may comprise iteratively increasing the rate up
to a maximum rate.
[0040] The method may comprise determining a current rate by adding
a predefined value to a previous rate.
[0041] The method may comprise determining a current rate by
performing a function.
[0042] The method may comprise determining a current rate by
performing a look up operation.
[0043] The method may comprise determining a current rate by one or
more of: performing a function; adding a predefined value to a
previous rate; and performing a look up operation
[0044] The method may comprise determining that steps (i) and (ii)
have been performed for a least a given amount of time and in
response thereto to increase the rate over time up to a maximum
rate.
[0045] The method may comprise receiving a second user input when a
user engages with at least one game element in a next move only
when there are no game elements to be removed.
[0046] The method may comprise in step (i) determining that at
least three game elements satisfy a match condition and in response
thereto to remove the game elements
[0047] According to another aspect, there is provided a computer
device comprising: a display configured to display game elements of
a computer implemented game; a user interface configured to detect
user input when a user engages with a game element in a move; and
at least one processor configured to: cause a series of images to
be displayed, whereby a subsequent move by the user via the user
interface is only permitted by the at least one processor when all
of the series of images have been displayed, the at least one
processor being configured to increase the rate at which the series
images are displayed over time.
[0048] According to another aspect, there is provided a computer
device comprising: a display configured to display images; a user
interface configured to detect user input when a user engages with
an app; at least one processor configured to, in response to the
user input to cause a series of images to be displayed on the
display, whereby a subsequent input by the user via the user
interface is only actioned by the at least one processor when all
of the series of images have been displayed, the at least one
processor being configured to increase the rate at which the series
of images are displayed over time.
[0049] The series of images may a video.
[0050] The rate may be increased to a maximum rate.
[0051] The computer device may comprise a timer, the timer being
started in response to the first user input.
[0052] The timer may be one of a count up and a countdown
timer.
[0053] The at least one processor may be configured to capture a
current time in response to the first user input.
[0054] The at least one processor may be configured to determine a
current rate as the rate, the current rate being dependent on a
time from the first user input.
[0055] The at least one processor may be configured to determine if
at least a first given time from the first user input has elapsed
and only if the given time has elapsed to increase the rate from a
default rate.
[0056] The at least one processor may be configured to determine if
at least a second given time from the first user input has elapsed
and if so to maintain a current rate.
[0057] The at least one processor may be configured to iteratively
increase the rate up to a maximum rate.
[0058] The at least one processor may be configured to determine a
current rate by adding a predefined value to a previous rate.
[0059] The at least one processor may be configured to determine a
current rate by performing a function.
[0060] The at least one processor may be configured to determine a
current rate by performing a look up operation.
[0061] According to another aspect, there is provided a computer
implemented method comprising: detecting, via a user interface,
user input when a user engages with an app; in response to the user
input, causing by at least one processor, a series of images to be
displayed on the display, auctioning by at least one processor a
subsequent input by the user via the user interface is only when
all of the series of images have been displayed, and increasing the
rate at which the series of images are displayed over time.
[0062] The rate may be increased to a maximum rate.
[0063] The method may comprise starting a timer in response to the
first user input.
[0064] The timer may be one of a count up and a countdown
timer.
[0065] The method may comprise capturing a current time in response
to the first user input.
[0066] The method may comprise determining a current rate as the
rate, the current rate being dependent on a time from the first
user input.
[0067] The method may comprise determining if at least a first
given time from the first user input has elapsed and only if the
given time has elapsed to increase the rate from a default
rate.
[0068] The method may comprise determining if at least a second
given time from the first user input has elapsed and if so to
maintain a current rate.
[0069] The method may comprise iteratively increasing the rate up
to a maximum rate.
[0070] The method may comprise determining a current rate by adding
a predefined value to a previous rate.
[0071] The method may comprise determining a current rate by
performing a function.
[0072] The method may comprise determining a current rate by
performing a look up operation.
[0073] The method may comprise determining a current rate by one or
more of: performing a function; adding a predefined value to a
previous rate; and performing a look up operation
[0074] According to another aspect, there is provided a computer
device comprising: a display configured to display game elements of
a computer implemented game; a user interface configured to detect
user input when a user engages with a game element in a move; and
at least one processor configured to: cause a series of images to
be displayed, whereby a subsequent move by the user via the user
interface is only permitted by the at least one processor when all
of the series of images have been displayed, the at least one
processor being configured to increase the rate at which the series
images are displayed over time.
[0075] According to another aspect, there is provided a computer
implemented method comprising: displaying on a display game
elements of a computer implemented game; detecting user input via a
user interface when a user engages with a game element in a move;
and causing by at least one processor a series of images to be
displayed, permitting by the at least one processor a subsequent
move by the user via the user interface only when all of the series
of images have been displayed, the method comprising increasing the
rate at which the series images are displayed over time.
[0076] According to some aspects, there is provided a program
product comprising a computer-readable storage device including a
computer-readable program for providing a computer-implemented
game, wherein the computer-readable program when executed on a
computer causes the computer to perform any one or more of the
method steps described previously.
[0077] According to another aspect, there is provided a computer
readable non-transitory storage medium carrying one or more
computer executable instructions which when run on at least one
processor cause:
[0078] A computer program comprising program code means adapted to
perform the method(s) may also be provided. The computer program
may be stored and/or otherwise embodied by means of a carrier
medium.
[0079] In the above, many different embodiments have been
described. It should be appreciated that further embodiments may be
provided by the combination of any two or more of the embodiments
described above.
[0080] Various other aspects and further embodiments are also
described in the following detailed description and in the attached
claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0081] Embodiments will now be described by way of the accompanying
drawings in which:
[0082] FIG. 1 is a schematic diagram of a game board of a match
three game illustrating a basic example of a match three game;
[0083] FIG. 2 is a schematic diagram illustrating how a game board
is populated with replacement game elements;
[0084] FIG. 3 shows an example system in which some embodiments may
be provided;
[0085] FIG. 4 shows an example user device in which some
embodiments may be provided;
[0086] FIG. 5 schematically shows the functional blocks of an
embodiment;
[0087] FIG. 6 shows a method flow for a move;
[0088] FIG. 7 shows a method flow for determining a rate at which
the method flow of FIG. 6 is provided;
[0089] FIG. 8 shows another method for determining a rate at which
the method flow of FIG. 6 is provided;
[0090] FIG. 9 shows another method for determining a rate at which
the method flow of Figure is provided;
[0091] FIG. 10 schematically shows a first rate change pattern with
respect to time; and
[0092] FIG. 11 schematically shows a second rate change pattern
with respect to time.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
[0093] The terms user and player are used interchangeably
throughout this document and no specific meaning is intended using
one or the other unless the context suggests otherwise. In the
following description of various implementations of the invention,
reference is made to the accompanying drawings which form a part
thereof, and in which is shown by way of illustration various
implementations in which the invention may be utilized. It is to be
understood that other implementations may be utilized, and
structural and functional modifications may be made without
departing from the scope of the present invention.
[0094] A person skilled in the art will realise that the different
approaches to implementing the game is not exhaustive, what is
described herein are certain preferred embodiments. It is possible
to implement the way in a number of variations.
[0095] A schematic view of a user device 100 according to an
embodiment is shown in FIG. 4. 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 part
110. The control part 110 is also shown as having a graphics
controller 125 and a sound controller 130. It should be appreciated
that one or other or both of the graphics controller 125 and sound
controller 130 may be provided by the one or more processors 115. A
timer or clock 111 is also provided. This may be provided by
hardware, software or a combination of the two. The timer or clock
111 may be provided at least partially by the processor.
[0096] The graphics controller 125 is configured to provide a video
output 135. The sound controller 130 is configured to provide an
audio output 140. The controller 110 has an interface 145 allowing
the device to be able to communicate with a network 150 such as the
Internet or other communication infrastructure.
[0097] The video output 135 is provided to a display 155. The audio
out 140 is provided to an audio device 160 such as a speaker and or
earphone(s).
[0098] The device 100 has an input device 165. The input device can
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 display 155 may in some embodiments also
provide the input device 165 by way of an integrated touch screen
for example.
[0099] The blocks of the controller 110 are 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.
[0100] It should be appreciated that in some embodiments, the
controller may be implemented by one or more integrated circuits,
at least in part.
[0101] The user device 100 is 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.
[0102] FIG. 3 schematically shows a system 200 according to an
embodiment. The system 200 comprises a server 220 which may store
or be in communication with database 250 which may store game
player's details, profiles, statistics etc. In practice, one or
more databases 250 may be provided. Where more than one server 220
is provided, the database(s) 250 may be provided in one server 220
or across two or more servers. The server 220 may also have a games
data function. This may comprise one or more units of memory to
store the computer game program, user behaviour data and a
processor to run the games program and process the user behaviour
data.
[0103] The server 220 may communicate via, for instance, the
internet 210 to one or more client or user devices 100, shown in
FIG. 6 by way of example as user devices 100a, 100b and 100c, and
may further provide connections to a social network 230, for
example, Facebook.TM.. The social network 230 may also be connected
to a database 270 storing social user interaction details, for
instance, user to user interaction maps, friend lists, location
history etc. In practice, one or more databases 270 may be
provided.
[0104] 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 memory of
the user device and is run on the processor of the user device.
However, the server 220 may handle some elements of the game in
some embodiments. By way of example only, a Java game applet may be
provided to the user device 100 and the locally running Java applet
will generate, for example, the graphics, sounds, and user
interaction for the game play on the user device. Some data may be
fed back to the server to allow interaction with other players. The
data which is fed back may alternatively or additionally allow
scoring and/or cross platform synchronization.
[0105] In some embodiments, the game may be implemented as a
computer program that is stored in a memory of the system, for
example the server, and which runs on a processor of the game
server. Data streams or updates are supplied to the user device to
allow the user device to render and display graphics and sounds in
a browser of the user device. 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.
[0106] It should be appreciated that some embodiments may be
provided as stand-alone games on the user device.
[0107] FIG. 1 shows a display of a known version of a match 3
switcher game called Candy Crush Saga.TM.. FIG. 1 illustrates a
game board 2 with a plurality of game elements 20. The game
elements are each of six different shapes and colours. Of course in
other embodiments, there may be more or less than six different
game elements. Each game element type may be defined by one or more
of particular characteristics, for example a particular shape and
colour combination. Each game element is supported by a tile
22.
[0108] In the known version of the match 3 switcher game, the aim
of the game is to swap game elements in the shape of candies with
each other to make moves on the game board. To gain points the
player has to make moves that create matches of at least three of
the same game element or candy. In doing so, the player gains
points and the matched game elements are removed. As a result new
game elements fall into place from the top of the game board in
order to fill any spaces created. Assume in FIG. 1 that game
element 20c is moved one place to the right to form a three-line
match with game elements 20a and 20b. Turning now to FIG. 2, this
has the effect of game elements 20a, 20b and 20c being removed or
"disappearing" from the game board, creating a visual effect
(animation) on the screen to indicate the disappearance, such as a
minimal explosion effect. The two game elements which were directly
above game elements 20a will now fall downwards into the spaces
created by the removal of game elements 20a, 20b and 20c. Thus,
game element 20e will end up at the location 22c, and game element
20d will end up at the location 22b. In addition, three new game
elements are provided and fall downwards into the game board to
fill the remaining three spaces above location 22b. The new game
elements may be generated at random. The user then has a new game
board on which to play a subsequent move.
[0109] Some embodiments may use so-called physics to control
movement of game elements when replenishing a game board. For
example, some embodiments may use the game physics used in Candy
Crush Saga. In this game, game elements drop down from above the
game board at from the top of the game board. In an alternative
version of this game detailed in U.S. Ser. No. 14/316,274 and
launched under the name Candy Crush Soda, the physics can vary so
that the direction of replacement game elements can alter. It
should be appreciated that the game physics described are by way of
example and in other embodiments any suitable game physics may be
used. In some embodiments, the replenishment of a game board may be
controlled without the use of game physics.
[0110] Reference is made to FIG. 5 which schematically shows the
functional blocks of an embodiment, which may enable game play such
as discussed previously. A user input block 80 is shown. This
captures the user input and feeds the input to a game engine 82. In
the context of the game of some embodiments, this user input may be
which game elements are switched by a user. This user input can be
via any suitable user interface, such as discussed earlier. One or
more of the functional blocks of FIG. 5 may be performed by at
least one processor.
[0111] The game engine 82 will process the information provided by
the user input. The game engine 82 (for example a game model) will
determine if a valid combination has been made.
[0112] Each game element has data associated therewith. The data 84
may be stored in any suitable memory location. In some embodiments,
the data may be considered to be part of the game engine and in
other embodiments may be considered to be outside the game engine.
The data may provide information as to the properties of the game
element. The data may include the position data, that is,
information representing the position of the game element in the
displayed image.
[0113] In some embodiments, the game engine will check if the game
elements satisfies the rule or rules for a valid match. The rule or
rules which define whether or not a match condition has been
satisfied. The match condition will be dependent on the game. In
some embodiments, a match condition will be satisfied if the game
elements are arranged to provide a sequence of at least three
adjacent first objects sharing at least one same
characteristic.
[0114] Thus, the game engine will be in control of the matching
mechanism. The game engine will have access to data for game
element including its position and will be able to determine if a
match condition has been met.
[0115] It should be appreciated that in other embodiments, the game
may use any type of match mechanic such as switching, sliding or
linking. The game elements may be any suitable game element and in
some embodiments may be letters. In that scenario a match will
occur when the letters match a word. Preferably the word is at
least three letters long.
[0116] A physics engine 808 is provided which is configured to
control the movement of moving game elements on the display. The
tiles are static is some embodiments.
[0117] The physics engine 808 may be part of the game engine
802.
[0118] A view function 806 uses of the data to provide the
displayed image with which the user is able to view and/or
interact.
[0119] Reference is made to FIG. 6 which schematically shows a
method flow for a move.
[0120] In step S1, a move input is provided by a user via the user
interface. In some embodiments, in order to make a move, a user
interacts with the game board via the user interface. The user
selects, for example, one or more game elements. The user may move
one or more game elements. For example, the selected game elements
switches position with another game element.
[0121] In step S2, the processor is configured to determine that
one or more matches have been made. In other words, the move made
by the user causes the game elements to be rearranged. The
processor is configured to determine if one or more match
conditions have been satisfied. For example, the at least one
processor may be configured to determine that at least 3 game
elements having a common characteristic are arranged in a row of
column. In some embodiments, the user is only permitted to make a
move which results in one or more matches being made.
[0122] In step S3 responsive to determining a match, the at least
one processor is configured to cause one or more of the game
elements satisfying a respective match to be removed. It should be
noted that in some embodiments, a match may include one or more
special game elements which may trigger an additional effect. The
removal of the game elements is represented graphically on the
display.
[0123] In step S4, after the removal of the game elements in step
S3, the processor is configured to cause the game board which is
displayed on the display to be refilled. Once the game board has
been refilled, this is followed by step S5. The removal of the game
elements is represented graphically on the display.
[0124] In step S5, the at least one processor is configured to once
again determine if there are any valid matches on the refilled game
board.
[0125] If so, the at least one processor is configured to revert to
step S3. If not, the next step is step S6. This will end the move
of the user and the user is then able to make the next move.
[0126] It should be appreciated that in some embodiments, the user
is not able to make any moves until there are no more matches on
the game board.
[0127] Some embodiments are configured to control the rate at which
the method proceeds though steps S3 to S5. In some embodiments,
subsequent iterations are performed more quickly. This
determination of the rate at which the iterations are performed
will be described in more detail later.
[0128] In some embodiments, during a game there may be in one move,
many iterations of the steps S3 to S5. This may provide a cascading
effect where one match can result in further matches when the game
board is refilled and so on.
[0129] Some embodiments may be used in the context of a casual game
where providing continuous engagement is a technical challenge. As
mentioned there may be potentially many iterations or even a single
iteration may be time consuming. If during the course of the game,
there is relatively large number of iterations and/or the
iterations are taking a relatively long time, the user may no
longer be engaged as the user is unable to make their next move.
The user may not feel that the iterations are part of the user's
game.
[0130] Accordingly, some embodiments increase the rate at which the
iterations are performed if they exceed a certain amount of time in
a single move. Increasing the rate will make these actions appear
to be "fast forwarded" as compared to the usual actions. The rate
may be increased at the point, for example, when the user is
considered to be less engaged. The fast forwarding may increase the
user engagement.
[0131] It should be appreciated that the rate of a given iteration
will also depend on what occurs in that iteration, for example, are
there many game elements to be removed, is there the activation of
a special game element etc. In some embodiments, as soon as the
method lasts more than a given amount of time, the rate is
increased. The given amount of time may be of the order of a few
seconds, for example 3 seconds. The increase in the rate may be
over a further period of time of for example 7 to 12 seconds.
[0132] The increased rate or rates may be any suitable range. For
example, the increase compared to a normal or default rate may be
for example be between 15 and 50%, in some embodiments.
[0133] In some embodiments, the user input provided by a user will
trigger the displaying of video content, the content being defined
by the iterations of the method of FIG. 6. The rate at which the
video content is displayed will increase. For example the frame
rate may be increased. The video speed may thus be increased.
[0134] Reference is made to FIG. 7 which shows a first embodiment
for providing and/or controlling the rate which is used with the
method of FIG. 6, for example.
[0135] In step B1, a user input is received via the user interface.
In some embodiments, this user input is configured to provide a
move. In some embodiments, the user is only able to provide an
input which constitutes a valid move. In other embodiments, a check
is made to see if the input provided by the user provides a valid
input. In some embodiments, the user input via the user interface
may be to select and move one or more game elements.
[0136] In step B2, a timer is started. In some embodiments this may
be a count up or time elapsed timer. In some embodiments, the timer
may be set to zero. In other embodiments, the timer may be
implemented as a countdown timer and may be set to a set value. In
other embodiments, a current time may be determined or obtained or
used. The current time may be stored in memory.
[0137] It should be appreciated that step B2 may take place at the
same time as step B1.
[0138] In some embodiments, there may be a delay before the timer
is set or started.
[0139] In step B3, a determination is made that the elapsed time
has reached a predetermined value since the timer was initiated in
step B2. This may be where the timer has reached a predetermined
time. Prior to reaching the predetermined time the default or
normal rate will be used.
[0140] For example in the case of a count up or a countdown timer,
this may be when a particular time value has been reached.
[0141] In some embodiments, the time elapsed may be monitored to
determine when the predetermined value has been reached.
[0142] In the case where a time is stored in step B2, the
determination may comprise comparing a current time to the stored
time. This may be performed iteratively until the elapsed time
reaches the predetermined value.
[0143] In step B4, it is determined if a current rate corresponds
to a maximum rate.
[0144] If not, the next step is step B5 where the rate is adjusted.
This may be by using a look up table, performing a function,
providing a predefined increase or in any other suitable
manner.
[0145] Step B5 is followed by step B3. In this subsequent
iteration, there may be an updated value for the determination as
to whether or not a given amount of time has elapsed.
[0146] If it is determined that the current rate does correspond to
a maximum rate, then optionally the next step is step B6 where the
maximum rate is used. Even if step B6 is not provided, there are no
further increases in the rate. In the context of a computer
implemented game, the maximum rate is continued until there are not
further changes to the game board and the user is able to provide
an input for a next move (and the method will go back to step B1).
The rate may be reset to a default or normal rate. In the context
of other embodiments, the maximum rate is used until the next input
by the user. After the next input by the user, the rate may be
reset to a default or normal rate.
[0147] In some embodiments, in step B4, instead of comparing the
current rate to the maximum rate, it may be determined that the
elapsed time has reached a particular value. In the case of a
countdown timer, this may be when the counter reaches zero. In the
case where the timer is a count up timer, this may be when the
timer reaches a particular value. In the case where a current time
is captured, this may be a given time after the initial captured
time.
[0148] The method of FIG. 7 may be used to set the rate up to a
maximum rate. When the maximum rate is reached, that rate is used
until the game board reaches a stable state and there are no more
matches. The rate may be reset to the default or normal value which
is the initial rate used when the user makes their next move. The
rate may be reset when the user makes their next move, when the
timer is started or when the game board is stable and there are no
further matches.
[0149] In those embodiments, where the rate has not yet reached the
maximum value and the game board is stable, the rate is reset in a
similar way as described in relation to the resetting of the
maximum rate.
[0150] In other embodiments, the method of FIG. 7 may be used to
set the rate up to a maximum rate. When the maximum rate is
reached, that rate is used. The rate may be reset to the default or
normal value which is the initial rate used after the next user
input. The rate may be reset when the user makes their input, when
the timer is started or in response to some other trigger.
[0151] Reference is made to FIG. 8 which shows some example
embodiments for determining the rate.
[0152] In Step T1, a timer is started. In some embodiments, this
may be when the user has selected and moved a given element. The
timer may be started at any suitable point in other embodiments.
For example, the timer can be started at the point that the first
iteration has been completed or after a given amount of time. For
example, once the game board has been refilled, it is at this point
that the timer may be started. The timer may be started in
association with any one of steps S1, S2, S3, S4 or S5. For
example, this may be during a first iteration through a respective
step.
[0153] In the step T2, it is determined if the time elapsed less
than n seconds. The value of n can be any suitable value. In some
embodiments, n may be the order of a few seconds. In some
embodiments, for example, n may be 3 seconds. Of course n may be
more or less than 3 seconds in other embodiments.
[0154] If the time since the timer started is less than n, then the
next step is step T3. This will ensure that a first rate is used to
progress through one or more iterations of the method of FIG. 6.
The method will then loop back to step T2. It should be appreciated
that this may be used to set an initial rate. This first rate may
be a normal or default rate.
[0155] In step T2, if it is determined that the time elapsed since
the timer is started is more than n, then the next step is step T4.
In step T4, it is determined whether the time is elapsed is less
than a value m. m is greater than n and may be any suitable value.
If it is determined that the time elapsed is less than m, then the
next step is step T5. This will ensure that a second rate is used
to progress through one or more iterations of the method of FIG. 6.
The method will then loop back to step T4.
[0156] In some embodiments, the second rate is greater than the
first rate. Of course, in other embodiments, the second rate may be
different to the first rate.
[0157] In step T4, if it is determined that the time elapsed since
the timer is started is more than m, then the next step is step T6.
In step T6, it is determined if the time elapsed is less than a
value x. x is greater than m and n and may be any suitable value.
If it is determined that the time elapsed is less than x, then the
next step is step T7. This will ensure that a third rate is used to
progress through one or more iterations of the method of FIG. 6.
The third rate may be greater than the second rate and the first
rate or at least different to the second rate. The method will then
loop back to step T6.
[0158] In step T8, if it is determined that the time elapsed since
the timer is started is more than m, then a fourth maximum rate is
used to progress through any remaining iterations of the method of
FIG. 6. The fourth rate may be greater than any of the rates.
[0159] In some embodiments, the first rate may be the initial rate
used. In other embodiments, the first rate may be an increased rate
as compared to an initial rate used. The initial rate may be a
default rate.
[0160] In the example shown in FIG. 8, there are four different
rates. It should be appreciated that in some embodiments of there
may be only one rate in addition to an initial rate giving two
rates in total. Of course in other embodiments, there may be more
than two rates in total.
[0161] In other embodiments, there may of course be more than four
rates.
[0162] In some embodiments a look up table may be provided. An
elapsed time may provide an input and the associated rate may be
output. More than one time may be associated with a given rate in
some embodiments.
[0163] Reference is made to FIG. 9 which shows another examples of
embodiments for determining the rate which is used to progress
through one or more iterations.
[0164] In step A1, the at least one processor is configured to
receive a current time from a timer. It should be appreciated that
the timer may be initiated such as discussed in relation to FIG. 7
or 8.
[0165] In step A2, it is determined if the current time is greater
than A.
[0166] If the current time is A or less, then the next step is step
A3.
[0167] In step A3, a function f(t) is used to determine a rate. The
function is dependent on the current time. This rate is used as the
current rate. The method will then revert to step A1.
[0168] If the current time is greater than A, then the next step is
step A4 when the current rate is determined using the function f(t)
but using A as the maximum time. This is to provide a maximum rate.
This rate is used as the current rate. The method will then revert
to step A1.
[0169] In one modification to the method of FIG. 9, when the
current rate is greater than A, then no further iterations of the
method of FIG. 9 are performed.
[0170] In one modification to the method of FIG. 9, when the
current rate is a maximum rate, then no further iterations of the
method of FIG. 9 are performed.
[0171] In some embodiments, the rates may be determined by
performing an algorithm as required. In other embodiments, the
rates may be determined using a look up table.
[0172] It should be appreciated that one or more of the options
outlined in relation to one or more of FIGS. 7, 8 and 9 can be used
with one or more other ones of FIG. 7, 8 or 9.
[0173] Reference is made to FIG. 10 which schematically shows
different options for updating the rate with respect to elapsed
time.
[0174] This may be as set out for example in relation to FIG.
9.
[0175] A first rate, rate 1, is used at time T0 to Time T1. Between
time T1 to T2, a second rate, rate 2 is used. Between time T2 and
T3, a third rate, rate 3 is used. After Time T3, a fourth rate,
rate 4 is used.
[0176] In the example shown in FIG. 10, the time between time T0
and T1 is the same as that between T1 and T2 as well as that
between time T2 and T3. This is by way of example only and another
embodiments, the amount of time between T0 and T1 may be different
to that between T1 and T2 and/or time T2 and T3. The number of time
intervals may be dependent on the number of different rates which
may be two or more.
[0177] Reference is now made to FIG. 11 which schematically shows a
graph rate against time in another embodiment. There is an initial
rate which is used when the method first starts. As time increases,
the rate is increased. While FIG. 10 shows a linear increase in the
rate, in some embodiments, they may be stepped changes in rate as
the rate is updated for subsequent iterations of the method of
Figure. It should be noted that once the rate exceeds a given
amount, the rate plateaus and does not increase further.
[0178] In other embodiments, there may be a non-linear increase in
the rate. The rate may increase exponentially in some
embodiments.
[0179] It should be appreciated that although the previous
embodiments have been described in the context of a switcher game,
other embodiments may be used with any other matching game.
[0180] It should be appreciated that other embodiments may be used
with any other game, both casual and non-casual games.
[0181] Embodiments may be used with single player or multiplayer
games.
[0182] Some embodiments may have application where a user provides
a first input. That input may be a turn or move. Before the user is
able to make a next turn or move or any next input, the game is
configured to show a graphic or video. The speed of the graphic or
video may be increased using any of the previously described
embodiments. There may be a variable amount of information which is
displayed by the graphic or video. The graphic or video which is
shown may be dependent on the current state of the game and the
input provided by the user. In some embodiments, the graphic or
video may show one or more events which are triggered by the user
input followed by one or more further events which are triggered by
the one or more events triggered by the user input. In some
embodiments, there may be further triggering of events based on the
one or more further events.
[0183] The above mentioned embodiments have been described in the
context of a computer implemented game. However it should be
appreciated that some embodiments may be provided in the context of
for example, non-computer game related apps. For example, some
embodiments may be provided in any suitable app where the user is
required to provide an input via the user interface. In response to
that input, the app is configured to display a graphic or video
which is triggered or responsive to the user input. This graphic or
video which is triggered may have a variable quantity of
information which is to be displayed. Accordingly the rate at which
this information is displayed may be increased using any of the
previously described methods. While the graphic is being displayed,
the user may be prevented from providing a next input.
[0184] For example, consider a navigation app. The user may provide
an input which allows a route to be previewed. The rate at which
the route is previewed may increase, using any of the embodiments
previously described. At the end of the displaying of the previewed
route, the user is able to provide a further input,
[0185] Consider an app which allows a user to provide a photo
album. The user may provide an input which allows a photo album to
be previewed. The rate at which the album is previewed may
increase, using any of the embodiments previously described. At the
end of the displaying of the album, the user is able to provide a
further input,
[0186] Of course, other embodiments may be applied to any other
suitable app.
[0187] In the above described embodiments, the rate is increased
over time. It should be appreciated that in other embodiments, the
rate may controlled in other ways. For example the rates may be
decreased. The rates may be varied in dependence on the images to
be displayed. Different types of images may be displayed with
different rates. In some embodiments, there may be a plurality of
rates. Each of the rates may be individually controlled. In some
embodiments, the rates may vary such that between user inputs the
rate may sometimes increase and sometimes decrease.
[0188] Various methods and devices have been described. It should
be appreciated that these methods may be implemented in apparatus
or devices comprising 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. A computer program product may be
provided which comprises computer program product comprising code
embodied on a computer-readable medium which is configured to be
executed on a processor of the computer or user device. In some
embodiments, a non-transitory computer readable storage device may
be provided to store program code instructions that, when executed
by at least one processor causes any of the above described methods
to be performed.
[0189] A person skilled in the art will realise that the different
approaches to implementing the game is not exhaustive, what is
described herein are certain preferred embodiments. It is possible
to implement the way in a number of variations without departing
from the scope of the invention as claimed. Although the subject
matter has been described in language specific to structural
features and/or methodological acts, it is to be understood that
the subject matter defined in the appended claims is not
necessarily limited to the specific features or acts described
above. Rather, the specific features and acts described above are
disclosed as example forms of implementing the claims.
* * * * *