Injecting Content into Episodic Video Games

- BIG FISH GAMES, INC.

A hidden object video game having multiple episodes is played on a computing device. Periodically or upon reaching a milestone in the game, the computing device automatically connects with a server to update the game with data containing new episodes of the game and then disconnects from the server. The hidden object game continues to be played with the updated data after the disconnection.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
BACKGROUND

Popular electronic video games include hidden object games. These hidden object games display objects hidden in a pictorial background in a game window. A list containing hidden objects is simultaneously displayed in a textual or list window. The objective of the game is for the game player to select the hidden objects in the game window until all the objects on the list are found at which the game player can select a new game window to find more objects.

In one embodiment of the game, an episodic mystery story is displayed. After displaying the mystery story, the game player finds objects in the game to find clues appearing in the story. The game player may then find all the clues to solve mysteries.

Eventually the game player reaches the highest level of the game and the game ends. If the game player wants more games, the player must download additional games and start the story for that game from the beginning.

Illustrated in FIG. 1 is an exemplary display 100 of one scene of an exemplary hidden object video game. The display includes a game window 102 and a list window 104. The game window 102 includes various objects, such as exemplary racket 106a, key 106b and car 106c. The list window 104 may include text 108 corresponding to the objects 106(a-c) in the game window.

Illustrated in FIG. 2 is an exemplary process 200 for playing the hidden objects video game. The game is launched by the user (also referred to as a game player) in block 202. When the game is launched, text containing the plot of a mystery story is displayed to the game player. A background graphic along with various objects 106(a-c) are displayed in game window 102. In block 206, a list of objects 106(a-c) to be found in the game window 102 are displayed in list window 104. In block 208, a game player using an input device finds and then selects one or more of the various objects 106(a-c) from the game window 102 corresponding to objects in the list 108. The selected objects are removed from the list 108 in block 210. An indication of the selection (such as by animating and removing the object) is performed in response to selecting an object in the game window 102.

In block 212, a determination is made whether all the objects have been removed from list 108. If not, the game player selects more objects from the list in block 208. If all objects have been removed, in block 214, a determination is made whether there is a new list/graphics window in which the game player can select new objects. If there are new text/list/graphics windows, a text window containing a continuation or new episode of the story along with a new game window 102 and list window 104 are displayed, and blocks 204-212 are repeated. If there are not any additional text, list and game windows, the game ends in block 216.

SUMMARY

A method is described for enabling a game player to play an episodic hidden object video game on a computing device. Upon reaching a milestone in the game, additional episodes are automatically requested and received from a server. In one aspect of the playing the game, the additional episodes are automatically providing by establishing a connection between a computing device and the server, downloading a new episodic content from the server, disconnecting the connection with the server; and playing the game on the computer with the new episodic content after disconnecting the connection.

In another implementation of the game, a computer readable medium having instructions, which when executed by one or more processors, implement a video game with a computing device. The instructions when executed by one or more processors in the computing device enable the play of a hidden object video game having multiple episodes. Upon reaching a milestone in the hidden object video game, one or more additional game episodes is automatically requested and received from a server in the form of a dynamic linked library (DLL). The DLL is downloaded into a database and retrieved during play of the game. In one implementation, the DLL is content such as text, background images and objects and do not include executable instructions so that only the content be downloaded and not the entire program. The DLL content may be continuing episodes of the existing story and may use game playing information, such as awards, when playing the hidden object game with the additional game episodes.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The use of the same reference number in different figures indicates similar or identical items.

FIG. 1 depicts an illustrative screen of a prior art version of the hidden object video game.

FIG. 2 depicts an illustrative process for playing the prior art hidden object video game on a computing device.

FIG. 3 depicts an exemplary system in which the injecting content into an episodic hidden object video game may be implemented.

FIGS. 4-5 are illustrative processes executed by the computing device for injecting content into the episodic hidden object video game.

FIG. 6 is an illustrative process executed by a server computer device for injecting content into the episodic hidden object video game.

DETAILED DESCRIPTION

The following document describes method(s) or software capable of injecting content into a hidden object computer video game. The hidden object video game may be executed on any electronic device such as a computer, PDA, computer laptop or gaming device. Various examples of the video game are described below with reference to FIGS. 1-6.

The construction of the video game and an environment in which this video game may be enabled by techniques is set forth first below. This is followed by others sections describing various inventive techniques and illustrative embodiments of other aspects of the video game.

Example System Architecture

The computer environment 300 illustrated in FIG. 3 is a general computer environment that includes a user interface which can provide a hidden object video game to a game player. Similar resources may use the computer environment and the processes as described herein. The computer environment 300 is only one example of a computer environment and is not intended to suggest any limitation as to the scope of use or functionality of the computer and network architectures. Neither should the computer environment 300 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary computer environment 300.

The computer environment 300 includes a general-purpose computing device in the form of a computing device 301 (also referred to as a client computer). The computing device 301 can be, for example, one or more of a stand alone computer, laptop computer, server, a networked computer, a mainframe computer, a PDA, a telephone, a microcomputer or microprocessor, or any other computer device that uses a processor in combination with a memory. The components of the computing device 301 can include, but are not limited to, one or more processors or processing units 302, a system memory 304, and a system bus (not shown) that couples various system components including the processor 302 and the system memory 304.

System memory 304 can comprise a variety of computer readable media. Such media may be any available media that is accessible by the computing device 301 and includes both volatile and non-volatile media, and removable and non-removable media. The process for creating and playing the video game can be stored as instructions sets on the computer readable media. The system memory 304 may include the computer readable media in the form of non-volatile memory such as read only memory (ROM) and/or volatile memory such as random access memory (RAM).

The computing device 301 may also include other removable/non-removable, volatile/non-volatile computer storage media. By way of example, memory 304 may include a hard disk drive (not shown) for reading from and writing to a non-removable, non-volatile magnetic media (not shown), and an optical disk drive, for reading from and/or writing to a removable, non-volatile optical disk such as a CD-ROM, DVD-ROM, or other optical media. The hard disk drive and optical disk drive may each be directly or indirectly connected to the system bus.

Stored in memory 304, including by way of example, may be an operating system (OS) 306, hidden object video game application 308 and database 310. Stored in database 310 may be game content 312 that is used to play the hidden object video game. Addition game content 314 may be downloaded from server 324 and stored in database 310. Although game application 308 and database 310 reside together as part of a single application in a memory 304 of computing device 301, any combination of such modules, tools, and data may reside on a memory of server 324, while other modules reside in computing device 301. The graphics and objects to be inserted into the game may be stored in database 310 as game content 312 and 314.

A player can enter commands and information into the computing device 301 via input devices 318 Input devices 318 may be a keyboard and/or a pointing device (e.g., a “mouse”), which send a signal to the computing device 301 in response to commands from the game player. Other input devices (not shown specifically) may include a microphone, joystick, game pad, satellite dish, serial port, scanner, and/or the like. These and other input devices are connected to the processing unit 302 via input/output interfaces (not shown) that are coupled to the system bus of computing device 301, but may be connected by other interface and bus structures, such as a parallel port, game port, or a universal serial bus (USB).

A monitor, flat panel display, or other type of computer display 316 can also be connected to the system bus via a video interface (not shown), such as a video adapter. In addition to the computer display 316, other output peripheral devices can include components such as speakers (not shown) which can be connected to the computing device 301.

The computing device 301 can operate in a networked environment using logical connections to one or more remote computers, such as a remote computer device 324 (also referred to herein as a “server”) through network adapter 320 via network 322. By way of example, the remote computer device 324 can be a personal computer, portable computer, a server, a router, a network computer, a peer device or other common network node, game console, and the like. The remote computer device 324 can include many or all of the elements and features described herein relative to the computing device 301. Specifically device 324 may include memory that stores additional game content 326. Such additional content 326 may include additional episodes in the hidden object game for transmission to computing device 301. When such additional game content 326 is transmitted to computing device 301, the transmitted content is received by computing device 301 and stored as additional game content 314 in a dynamic linked library (DLL) in database 310.

Logical connections between the computing device 301 and the remote computer device (e.g. a service provider) are depicted as an Internet (or Intranet) which may include a local area network (LAN) and/or a general wide area network (WAN). Video game application 308 may be initially stored on the server 324 and be downloaded from the internet onto memory 304 in computing device 301. Computing device 301 may communicate to the remote computer device using any Communications Media.

Various modules and techniques may be described herein in the general context of the computer-executable instructions, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, control objects, components, control node data structures, etc. that perform particular tasks or implement particular abstract data types. Often, the functionality of the program modules may be combined or distributed as desired in various embodiments.

Operating system 306 manages the interaction between the various applications, modules and tools in memory 304 with memory 304 and devices 316-320. Operating system may include a middleware interfaces such as Flash by Adobe Inc. of San Jose, Calif. or Java by Sun Inc. of Santa Clara, Calif. Game application 308 may communicate with the operating system 306 directly or via the middleware interface.

During play of the computer game, game application 308 is launched and retrieves game content from a DLL in database 310. In one implementation of the episodic computer game, episodes and content is loaded from game content module 312 and then from additional game content module 314 in a story sequence. The computing device 301 connects with server 324 via network adapter 320 and network 322 to retrieve previously stored additional game content 326. As the game player plays additional levels of the game, the additional content 326 is downloaded from server 324. Such content 326 may be provided periodically or upon requests from computing device 301. In one implementation, an executable program is resident in computing device 301 and non-executable data or content, e.g. the graphic images, objects and textual stories for the game, are provided from server 324 as the additional game content 326. As the additional game content 326 is created by the game developer, it is stored on server 324.

Example Process

The exemplary processes, shown in FIGS. 4-6, are illustrated as a collection of blocks in logical flow diagrams. The flow diagrams are an exemplary processes used by processor 301 (see FIG. 3), to inject content into episodic video games, and represents a sequence of operations that can be implemented in hardware, software, firmware, and a combination thereof. In the context of software, the blocks represent computer-executable instructions that, when executed by one or more processors, perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, and the like that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as a limitation, and any number of the described blocks can be combined in any order and/or in parallel to implement the process.

For discussion purposes, the processes are described with reference to computing device 301 of FIG. 3, although it may be implemented in other system architectures. The processes may be embedded on a computer-readable media or memory. The computer-readable media can be any available media that can be accessed by a computing device to implement the instructions stored thereon.

Depicted in FIG. 4 is a flowchart 400 illustrating an exemplary computing device process for playing and injecting new content into an episodic video game. The computing device 301 determines base on an indication in block 402 whether there is new content available to be received. Such indication may be provided with or to the computing device 301 when the game player is not playing the game. In one implementation, the computing device 301 can determine if additional game content is available by the computing device 301 polling the server 324. In response to the polling, server 324 provides an indication to computing device 301 that content is available. In another implementation, the server 324 could send an indication to the computing device 301 via the network 322 using an RSS feed or other signalling methods, such as a server push mechanism. If there is new game content (“yes” to block 402), the client computer establishes a connection with the server 324 in block 502 (FIG. 5).

If there is no new game content available (“no” to block 402), then computing device 301 makes a determination whether there is an indication to play the game from the game player. Such indication may be provided by the game player using the input device 318. If there is no game play indication (“No” to block 404), then a determination is again made whether there is new content in block 402. If there is an indication from the game player to play the game (“Yes” to block 404), then the game is played in block 406 using the method described in FIG. 2.

While playing the game a determination is made whether a milestone has been reached in the game in block 408. Such milestone may reached when the game player accomplishes a predetermined number episodes in the game, when there is no more content available in the local database 310, when the game player chooses to obtain more content, when the game player obtains a predetermined score while playing the game or when the game player has been awarded a predetermined number of points or awards. In the case of an episodic hidden object game, the game player may reach the milestone by accomplishing a predetermined number of episodes or by finding a predetermined number of hidden objects. Choice of new content may be automatically selected by the game (when running on the server or the client computer), or selected specifically by the game player. Indications provided upon reaching milestones may specify a linear, sequential progression or a branching, rules-based progression though the content.

If the milestone is reached (“yes” to block 408), play continues by the computing device 301 connecting to server 324 in block 502. If the milestone is not yet reached (“no” to block 408), the game player may continue to play the game in block 406.

Referring to FIG. 5, the computing device 301 connects to server 324 via network adapter 320 and network 322 in block 502. Such connection may be made automatically by establishing socket connection using standard internet or network protocols. Upon establishing a connection, the computing device 301 polls server 324 (or receives an indication from server 324) to determine whether additional game content 326 is available for download in block 504. Such additional game content may comprise additional episodes, including story text, background images and objects to be found in a hidden object video game.

If no additional content is available (“no” to block 504), the computing device 301 determines if there is an indication to play the game in block 404. If additional game content is available (“yes” to block 504), the computing device 301 requests and receives content from server 324 in block 506. Such content may be stored as a sequence of episodes on server 324 and downloaded into computing device 301 via network 322 and network adapter 322. In one implementation, such episodes are continuations of previous episodes.

In block 508 the additional game content 326 is stored as data in database 310 as a dynamic link library or DLL, and formatted so that it can be retrieved by game application 308. By storing the game content as a formatted DLL file, additional episodes of the game can be played using the existing game application without having to download new code files. Further the awards, tokens, objects, points and other information obtained when the game player played the previous episodes can be saved in database 310 during the play of the game so that the game player can use information from previous episodes when playing the new episodes along with the additional game content 314. After storing the game content in database 310, the computing device 301 disconnects from the server in block 510. The computing device can continue to play the hidden object video game when disconnected from server 324 and network 322 using the downloaded additional game content 314.

Illustrated in FIG. 6, is an exemplary process executed by server 324 when providing content to the computing device 301 to inject such content into the episodic video game. In block 602, the server may notify the computing device 301 when content is available using the methods previously described. In block 604, the server connects with the computing device 301 in response to a connection request sent from the computing device 301. Such connection request may be made via network 322. Upon connecting with the computing device 301, the server 324 receives a request for additional game content in block 606. Such request may indicate the episode level and/or version stored in computing device 301. The server 324, in block 608, determines if such game content is available. The server may also determine which episodes have previously been provided to computing device 301, and whether the computing device 301 has the latest available content. If the client already has the latest additional game content or no additional game content 324 is available (“No” to block 608), the server 324 notifies client device in block 610 that the computing device 301 has the latest game content and that no new game content with new episodes are available. The server 324 may also provide information about when new content will become available in the future and then indicated to the game player via the computing device so that the game player knows when to play the game again with the new content.

If new additional game content is available, such additional game content 326 is retrieved from server 324 memory in block 612 and transmitted to computing device 301 in block 614. Such additional game content 326, in server 324, may be periodically updated as a game developer develops the content and makes the content available. The server 324 may be updated by the game developer loading the additional game content on the server using conventional methods. Such additional game content may also be made available from a web site for manual downloading to computing device 301. After transmitting the additional game content to the computing device 301 in block 614, or after notifying the computing device 301 that no new content is available in block 610, the server 324 transmits an indication of how long the client should wait before checking for more content, and then disconnects from computing device 301 in block 616.

Conclusion

Above is described an apparatus and method for playing episodic hidden objects computer implemented video game. These and other techniques described herein may provide significant improvements over the current state of the art, to enable game play of the hidden objects game. Although the system and method has been described in language specific to structural features and/or methodological acts, it is to be understood that the system and method defined in the appended claims is not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as illustrative forms of implementing the claimed system and method.

Claims

1. A method comprising:

playing a hidden object video game having multiple episodes;
upon reaching a milestone in the hidden object video game, automatically requesting and receiving from a server additional episodes of the video game.

2. The method as recited in claim 1, further comprising:

playing the video game on a computer device; and
automatically providing the additional episodes by: establishing a connection between the computing device and the server; downloading the episode from the server; disconnecting the connection with the server; and playing the hidden object video game on the computer after disconnecting the connection.

3. The method as recited in claim 1 further comprising:

playing the hidden object video game on a computer device; and
storing the additional episodes in a database in a memory of the computing device so the game can be played when the computing device is disconnected from the server.

4. The method as recited in game 1 wherein the additional episodes of the game are received when a game player is not playing the game.

5. The method as recited in claim 1 further comprising:

providing points or awards for playing the game; and
supplying additional episodes when a game player receives a predetermined number of points or awards.

6. The method as recited in claim 5 further comprising using a reward provided from playing a previous episode when playing game using the additional episode.

7. The method s recited in claim 1 further comprising:

storing in a datastore in a server on regular periodic intervals the additional episodes comprising new episodic content;
notifying the computing device of the availability of the new episodic content; and
automatically receiving the new episodic content from the datastore when available.

8. The method as recited in claim 1 wherein the hidden object video game comprises a computer program the runs the video game, and wherein the additional episode comprise a dynamic linked library (DLL) comprising additional game content, and wherein the DLL plugs into the computer program.

9. The method as recited in claim 1 further comprising:

storing a sequence of episodes of the game on server, and receiving the additional episodes in a predetermined order relating to a plot of the game.

10. The method as recited in claim 1 wherein each episode has a plot, and wherein each of the additional received episodes have plots that are a continuation of the plot of the previous episode.

11. A computer readable medium having instruction which when executed by one or more processor implement a video game with a computing device, said instructions when executed by one or more processors comprise:

playing a hidden object video game having multiple episodes; and
upon reaching a milestone in the hidden object video game, automatically requesting and receiving from a server one or more additional episodes of the video game that comprises a dynamic linked data library which plugs into the computer program.

12. The computer readable medium as recited in claim 11, further comprising:

playing the video game on the computer device; and
automatically providing the additional episodes by: establishing a connection between the computing device and the server; downloading the episode from the server; disconnecting the connection with the server; and playing the hidden object video game on the computer after disconnecting the connection.

13. The computer readable medium as recited in claim 11, further comprising: playing the hidden object video game on the computer device; and storing the additional episodes in a database in a memory of the computing device so the game can be played when the computing device is not connected to the server.

14. The computer readable medium as recited in claim 11 wherein the additional episodes of the game is received when a game player is not playing the game.

15. The computer readable medium as recited in claim 11 further comprising:

providing points or awards for playing the game; and
supplying additional episodes when game player receives a predetermined number of points or awards.

16. The computer readable medium as recited in claim 11 further comprising:

storing a sequence of episodes of the game on server; and
receiving the additional episodes in a predetermined order relating to a plot of the game.

17. A computing device to play a video game, the computing device comprising:

a video screen;
an input device;
a processor;
a memory comprising a datastore that includes content related to the video game, the content comprising text of a story of the video game, background graphic design and partially obfuscated objects embedded in the background graphic design, and a textual list of items related to the story and corresponding to the partially obfuscated objects;
the memory comprising core program instruction which when executed by the processor comprise: (a) retrieve content from the data store; (b) display a text of a story on the video screen using the retrieved content; (c) display a background graphic design and partially obfuscated objects embedded in the background graphic design on the video screen using the retrieved content; (d) display on the video screen, a textual list of items related to the story and corresponding to the partially obfuscated objects using the retrieved content; (e) receive a signal from the input device to select the partially obfuscated objects in the video screen; (f) provide an indication on the video screen as each of the partially obfuscated objects are selected; (g) upon reaching a milestone in the hidden object video game, connecting with a server via a network; (h) upon connecting with the server, requesting that one or more additional episodes of the video game be transmitted from the server to the computing device via the network; (i) receiving content comprising additional episodes via the network; (j) storing the received content as a dynamic link library (DLL) in a database; (k) disconnecting from the server; and (l) executing with the core program steps (a)-(f) using the stored received content stored in the DLL.

18. The computing device as recited in claim 17, wherein the core program instruction which when executed by the processor comprise:

automatically upon reaching a milestone in the hidden object video game;
connecting with a server via a network and requesting that one or more additional episodes of the video game be transmitted from the server to the computing device via the network; and
providing episode level information and/or version information of the game in the request.

19. The computer readable medium as recited in claim 17 further comprising:

reaching a milestone in the hidden object video game by completing episodes, wherein the episodes are completed by finding partially obfuscated objects in the game.

20. The computer readable medium as recited in claim 17 further comprising:

reaching a milestone in the hidden object video game when the game player receives a predetermined number of points or awards.
Patent History
Publication number: 20090062007
Type: Application
Filed: Aug 31, 2007
Publication Date: Mar 5, 2009
Applicant: BIG FISH GAMES, INC. (Seattle, WA)
Inventor: Tyson M. Chihaya (Seattle, WA)
Application Number: 11/849,053
Classifications
Current U.S. Class: Network Type (e.g., Computer Network, Etc.) (463/42)
International Classification: A63F 9/24 (20060101);