VIDEO GAMES ON DEMAND WITH ANTI-PIRACY SECURITY
A method includes receiving, at a media device, a video game from a server via a network. The method includes installing, via the media device, the video game to a storage device associated with the media device. The method includes receiving, at the media device, a request to play the video game. The method includes sending an authorization request to the server from the media device via the network in response to the request. The method includes receiving authorization to execute the video game at the media device. The authorization is based on an identifier of the media device included in the authorization request being associated with rights allowing execution of the video game. The method also includes executing the video game via the media device in response to receiving the authorization.
This application claims priority from, and is a continuation of, U.S. patent application Ser. No. 12/847,764, filed on Jul. 30, 2010, which is a continuation of U.S. patent application Ser. No. 11/233,383, filed on Sep. 22, 2005, now issued as U.S. Pat. No. 7,789,757, each of which is incorporated herein by reference in its entirety.
BACKGROUNDThe television set-top box (STB) and its associated remote control allow a television viewer to interact with the television set. For example, the viewer may use the STB remote control device to have the television display a guide that shows the schedule of television shows available for viewing. Another example of interactivity, for STBs that provide video recording functions, is to interact with the on-screen guide to schedule the recording of television programs and to view the recorded programs at a time convenient to the viewer. STB interactivity is facilitated by the fact that STBs, which are associated with cable or satellite television service providers, provide a broadband network connection for the delivery of programming and services via the television set.
Satellite and television service providers have recently made available Video on Demand (VOD) services, which allow viewers to order pay-per-view programming, such as a movie, for viewing at any time and independent of a programming schedule. A subscriber may order, stop, pause, fast forward, rewind and restart a movie or event in real time, on demand. VOD applications make use of local storage on a set-top box in the user's home.
Video games are another way in which people interact with a television set. Many popular video games require a specialized STB commonly referred to as a console or platform. Console games are often played with one or two controllers connected to the console, either physically (e.g., by a wired connection) or wirelessly. Most commonly, one player plays against the computer (housed in the console) or two players play against each other, with each player connected directly to the console.
Console games are stored on a machine-readable medium such as a CD-ROM, magnetic tape cartridge, or a memory chip (for saved games). To acquire the game, players typically purchase it on a CD-ROM, for example, place the CD in the console and load the game software. Console games are also available for rent just as are motion picture DVDs.
Many of the most advanced consoles and games allow for network play, also called online play, in which the player, through the console, logs into a network such as the Internet, and plays against other players in remote locations who are also logged into the same game. Even for online playing, however, the player has to have access to the game in a tangible medium, at least at one time.
Simple computer games such as card games like solitaire or video poker, and logic games like mine sweeper, are familiar to computer users. Modern video games and online role playing games, however, require a very high degree of sophisticated interaction and graphics display. A state of the art console game requires the display of dynamically interactive environments such as a jungle. A player-controlled character navigates through the environments. Artificial intelligence units such as enemy soldiers react to the motion of the player-controlled character. Complex on-screen menus display items such as weapons, camouflage, and survival gear. On-screen communication menus allow the player-controlled character to communicate with superior officers, technical experts and the like. Cut sequences of video reward the player with plot-advancing movies upon the attainment of a game milestone. Similar complexity is found in online role-playing games. The degree and sophistication of interactivity required by console video and online role-playing games exceed that of VOD applications or computer card games.
Console-type video games are typically played by using a game controller device that is connected either by wireline or wirelessly to the console. For the purposes of the present disclosure, a game console is deemed to be included in the definition of set-top box. Controllers convey instructions or commands to the controllable element(s) on the screen. Such instructions include, for example, horizontal and vertical movement, actions such as shooting or fighting, interaction with other screen elements, such as picking them up, throwing them or speaking to them, accessing game menus such as inventory items, maps and so forth, as well as game functions such as pausing the game, saving a game in progress, and loading saved games.
A popular form of video gaming is the networked multiplayer game. An online gaming server enables networked game play. The customer/player starts their game locally, sets their preferences (such as skill level) and then requests a connection to the online gaming server. Once connected, the server groups the player with other online players based on their preferences. The games are played locally except that, to reduce the bandwidth requirements, updates on locations of other players are provided over the network connection. The online gaming service may be provided through the service provider's network, which also maintains the online gaming. Even so, there may be glitches in the game experience due to network delays.
Video Game on Demand server systems are available that stream game content to the user STB and execute controller commands also through the STB over a broadband network. Existing Game on Demand server systems, however, do not download the game for installation on the subscriber's set-top box. Rather, the game remains resident on the server, which processes the controller commands over the network. Accordingly, Game on Demand server systems consume broadband bandwidth during the entire play session.
The present disclosure provides the detailed description that follows, by reference to the noted drawings, by way of non-limiting examples of embodiments in which reference numerals represent the same parts throughout the several views of the drawings, and in which:
The present disclosure describes systems, methods and computer-readable media for automated payment, download over a network, installation on a set-top box, and play of console and online video games by user interaction with a controller-adapted set-top box. The present disclosure further addresses security measures to inhibit video game piracy.
In view of the foregoing, the present disclosure, through one or more various aspects, embodiments and/or specific features or sub-components described herein, is thus intended to bring out one or more of the advantages that will be evident from the description. The present disclosure makes frequent reference to a television set-top box (STB). It is understood, however, that a STB is merely an example of a specific exemplary illustrative embodiment, and that the terminology, examples, drawings and embodiments, therefore, are illustrative rather than limiting and are not intended to limit the scope of the disclosure.
In a particular embodiment a STB device includes a network interface, a processor, and memory. The memory includes instructions executable by the processor to receive a request to execute a video game stored at the STB device and to send an authorization request to a server via the network interface. The instructions are also executable by the processor to receive an indication of whether the STB device is authorized to access an account associated with a subscriber and to selectively execute the video game based on the indication.
In another particular embodiment, a game-on-demand server includes a processor and a memory. The memory includes instructions executable by the processor to receive, from a STB device, an authorization request to execute a game stored at the STB device. The instructions are also executable by the processor to determine whether the STB device is authorized to access an account associated with a subscriber, where the video game is selectively executable at the STB device based on the determination. The instructions are further executable to transmit the determination to the STB device.
In another particular embodiment, a system includes a STB device and a controller device configured to transmit input commands to the STB device. The STB device is configured to receive a request to execute a video game stored at the STB device and to send an authorization request to a server via the network interface. The STB device is also configured to receive an indication of whether the STB device is authorized to access an account associated with a subscriber and to selectively execute the video game based on the indication.
In a fiber optic network, where the bandwidth available to a network user has increased to tens of Mbps, new services are made possible. These services include Internet Protocol (IP)-based broadcast TV and Video-on-Demand (VOD). Video-on-Demand for example, to take one convenient example of broadband capabilities, allows the end user to select and view movies and television shows, and the content is transferred to the user through a broadband network and set-top box for viewing when they want it. VOD is different from the traditional content delivery mode, where the content is transferred to the user on a disc—a DVD—where the user must travel to the video store or wait for the disc in the mail.
Along with video rental, some retail outlets provide video game rentals for games that are generally sold for specific gaming platforms. Just as a broadband fiber optic network competes with traditional movie rentals, broadband may similarly replace store-front video game rentals.
The Gaming-on-Demand service may include, in addition to game sales, a subscription model, a game rental model, and a pay-per-play model. Subscription may include, for example, the right to rent or purchase a predetermined number of games each month for an agreed price. A rental model may be similar to an a la carte system where one or more games are selected with each access of the service with the right to unlimited game play for a predetermined amount of time, such as, for example, a week. Pay-per-play may allow a single play session for a comparatively low price.
Using a set-top-box/gaming console and a remote control, the customer scrolls through a series of menus to select the game they would like to play. The menus may include listings of most recently played games, newest releases, most popular games, action games, role-play games, and networked multiplayer games.
When the customer makes a selection, the Gaming-on-Demand server authenticates the customer's set-top-box from the customer's account information. Based on the customer's subscription status, the server informs the customer of the charges if the selection is a “pay-per-play,” where play permission expires upon termination of a session of play (i.e. the customer does not have a Gaming-on-Demand subscription). At this point the customer acknowledges the charges. The charges are automatically debited to their monthly bill as an added charge based on the STB authentication. Alternative embodiments further provide that the user may purchase the game outright and have permission for unlimited play for a quoted price; and to rent the game so that play permission expires after a pre-designated period of time. After user acceptance of the debit amount to the user's account, the game is downloaded to, and installed on, their STB.
Games that are on the “Most Recently Played” list in the menu may be stored locally on the STB or on a memory card, for example in the memory of a machine-readable medium, that may be optionally detachable from the STB. The customer's gaming may begin quickly and some of the load on the service provider's network may be reduced. Even for the “Most Recently Played” games which are stored locally, however, the STB may authenticate with the Gaming-on-Demand server and verify account information as described above.
A consideration for providing a service such as Gaming-on-Demand is digital rights management (DRM) and content security. That is, how does the service provider ensure the content owners that the content is used in accordance with the game publisher's End-User-License-Agreement (EULA)? Further, how can the service provider ensure that the content is not stolen and distributed or otherwise put in the public domain?
The present disclosure describes more than one mechanism to protect the content from piracy and provide DRM. For one, the content, the servers, and the network connections may be substantially contained in the service provider's network, as shown in
Network 105 is segregated using VLANs, VPLS, MPLS, or some other network segregation technology, as shown in
Gateway 130 provides game on demand permission once Rights Granted criteria have been met as described herein. Note that Internet 160 and access to public domain World Wide Web content are essentially segregated or sequestered from game on demand network 105 to inhibit release of proprietary games into the public domain and to promote compliance with Digital Rights requirements.
An additional security mechanism, discussed above, is that the user authentication process is through the STB/console. Typically, for broadband service providers, the STB is owned by the service provider and provided to the end user/customer for the duration of their service contract. Such an arrangement allows the STB to be a security component for DRM. That is, the games are selected and played through the STB. Before a game can be played, even if it is stored locally, the STB authenticates access with the Gaming-on-Demand server. The server verifies the rights of the user to play the game, identifies the STB to access the customer's account, and determines the gaming subscription selection or request authorization to charge the account for pay-per-play.
In either case, the game cannot be played without authorization from the gaming-on-demand server. The digital rights are not stored in the gaming file. Rather, the digital rights are tied to the STB and the customer's account, and are verified by the gaming-on-demand server each time the game is started. Advantageously, if the STB is disconnected from the network, the customer cannot authenticate and thus cannot play a game.
Additionally, the customer does not benefit from transferring a game file from one STB to a second STB. Generally, such transfer would not be possible, but which, nevertheless might occur if the customer found a software-hacking back door to accomplish the transfer. When the customer tries to play the game on the second STB, however, the second STB requests authentication from the gaming-on-demand server and such authorization is denied due to failure of STB authentication.
Alternative embodiments provide kits that include, but are not necessarily limited to, a controller-adapted STB to receive and process commands from a game controller, a controller adapted to send and receive (for example, to provide vibration function for vibration-enabled games) commands from the STB, one or more STB adapters to convert a substantially standard STB to a controller-adapted STB, and a machine-readable media, such as a compact disk (CD), containing the requisite software for the system to work.
In the case where the payment option selected by the subscriber is pay-per-play, subscription or rental 345, the game download may include, for example, code to automatically disable the game 345 upon the occurrence of a suitable predetermined contingency such as the expiration of a predetermined amount of time or after a predetermined number of playing sessions.
The game software installed locally on the subscriber's set-top box enhances the game play experience by reducing hesitation, stutters, update delays or other artifacts that network traffic, server glitches or other anomalies Game on Demand servers in a network might introduce into the responsiveness of the game.
Additional functions may include saving 360 to save a game in progress, for example, to database 362, which is maintained in the memory of a machine-readable medium of the set-top box, for example. A saved game may be loaded 364 from memory for continued play 350. A new game or a loaded saved game may further be played online with other remote players upon connection 370 of the set-top box to a network for network play.
The present disclosure contemplates that the STB is adapted to operate with a game controller. In the case where the STB is a gaming console, the STB is already adapted for the controller. In the case where the STB is also a cable or satellite television set-top box, however, the STB may need to be adapted to work with a game controller, particularly where the game controller is a device other than the STB remote control. Such adaptation may be accomplished, for example, by an adapter that connects to a STB to make the STB game-ready and able to receive and process controller commands, or by virtue of integrated controller communication and processing devices such as are known with traditional game consoles.
In case B, controller 410 communicates with adapter 440 either by wireline connection 416 or wirelessly 418. Adapter 440 receives controller commands and transmits the commands to set-top box 420, which presumably, is otherwise unable to receive controller commands because it lacks a suitable controller port or other signal receiver/transmitter. Adapter 440 also transmits information, such as controller vibration functions, from the game software on STB 420 to controller 410. Alternative embodiments contemplate that adapter 440 translates information between controller 410 and STB 420 in cases where information exchange between them is facilitated by software translation. Adapter 440 may be, in a specific alternative embodiment, a connector between a familiar video game console platform and a set-top box having a game installed on it, so that the console “reads” the game from the set-top box instead of from a disk or other medium that it would usually use, and the player uses the console controller connected to the console just as he or she normally would.
The methods described herein are intended for operation as software programs running on a programmable machine such as a computer processor.
The computer system 500 may include a processor 502 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), a main memory 504 and a static memory 506, which communicate with each other via a bus 508. The computer system 500 may further include a video display unit 510 (e.g., a liquid crystal display (LCD), a flat panel, a solid state display, or a cathode ray tube (CRT)). The computer system 500 may include an input device 512 (e.g., a keyboard), a cursor control device 514 (e.g., a mouse), a disk drive unit 516, a signal generation device 518 (e.g., a speaker or remote control) and a network interface device 520.
The disk drive unit 516 may include a machine-readable medium 522 on which is stored one or more sets of instructions (e.g., software 524) embodying any one or more of the methodologies or functions described herein, including those methods illustrated in herein above. The instructions 524 may also reside, completely or at least partially, within the main memory 504, the static memory 506, and/or within the processor 502 during execution thereof by the computer system 500. The main memory 504 and the processor 502 also may constitute machine-readable media. Dedicated hardware implementations including, but not limited to, application specific integrated circuits, programmable logic arrays and other hardware devices can likewise be constructed to implement the methods described herein. Applications that may include the apparatus and systems of various embodiments broadly include a variety of electronic and computer systems. Some embodiments implement functions in two or more specific interconnected hardware modules or devices with related control and data signals communicated between and through the modules, or as portions of an application-specific integrated circuit. Thus, the example system is applicable to software, firmware, and hardware implementations.
Software implementations may include, but not be limited to, distributed processing or component/object distributed processing, parallel processing, or virtual machine processing can also be constructed to implement the methods described herein.
The present disclosure contemplates a machine readable medium containing instructions 524, or that which receives and executes instructions 524 from a propagated signal so that a device connected to a network environment 526 can send or receive voice, video or data, and to communicate over the network 526 using the instructions 524. The instructions 524 may further be transmitted or received over a network 526 via the network interface device 520.
While the machine-readable medium 522 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present disclosure. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to: solid-state memories such as a memory card or other package that houses one or more read-only (non-volatile) memories, random access memories, or other re-writable (volatile) memories; magneto-optical or optical medium such as a disk or tape; and carrier wave signals such as a signal embodying computer instructions in a transmission medium; and/or a digital file attachment to e-mail or other self-contained information archive or set of archives is considered a distribution medium equivalent to a tangible storage medium. Accordingly, the disclosure is considered to include any one or more of a machine-readable medium or a distribution medium, as listed herein and including art-recognized equivalents and successor media, in which the software implementations herein are stored.
Although the present specification describes components and functions implemented in the embodiments with reference to particular standards and protocols, the disclosure is not limited to such standards and protocols. Each of the standards for Internet and other packet switched network transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) represent examples of the state of the art. Such standards are periodically superseded by faster or more efficient equivalents having essentially the same functions. Accordingly, replacement standards and protocols having the same functions are considered equivalents.
The illustrations of embodiments described herein are intended to provide a general understanding of the structure of various embodiments, and they are not intended to serve as a complete description of all the elements and features of apparatus and systems that might make use of the structures described herein. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. Figures are merely representational and may not be drawn to scale. Certain proportions thereof may be exaggerated, while others may be minimized. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.
The Abstract of the Disclosure is provided with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.
Dedicated hardware implementations including, but not limited to, application specific integrated circuits, programmable logic arrays and other hardware devices can likewise be constructed to implement the methods described herein. Furthermore, alternative software implementations including, but not limited to, distributed processing or component/object distributed processing, parallel processing, or virtual machine processing can also be constructed to implement the methods described herein.
It should also be noted that the software implementations described herein may be optionally stored on a tangible storage medium, such as: a magnetic medium such as a disk or tape; a magneto-optical or optical medium such as a disk; or a solid state medium such as a memory card or other package that houses one or more read-only (non-volatile) memories, random access memories, or other re-writable (volatile) memories. A digital file attachment to e-mail or other self-contained information archive or set of archives is considered a distribution medium equivalent to a tangible storage medium. The disclosure is considered to include a tangible storage medium or distribution medium, as listed herein and including art-recognized equivalents and successor media, in which the software implementations herein are stored.
Accordingly, those skilled in the art will recognize that the present disclosure extends to machine-readable media (“MRM”) contain instructions for execution by a computer. MRM is broadly defined to include any kind of electronic memory such as floppy disks, conventional hard disks, CD-ROMs, Flash ROMS, nonvolatile ROM, RAM, storage Media, email attachments, solid state media, magnetic media, and signals containing instructions, together with processors to execute the instructions.
It is understood that the words that have been used herein are words of description and illustration, rather than words of limitation. Changes may be made within the purview of the appended claims, as presently stated and as amended, without departing from the scope of the disclosure in all its aspects. Although the description has made reference to particular means, materials and embodiments, the disclosure is not intended to be limited to the particulars disclosed; rather, the disclosure extends to all functionally equivalent technologies, structures, methods and uses such as are within the scope of the appended claims.
Claims
1.-20. (canceled)
21. A method comprising:
- providing for, via a media device, display of a listing of video games available for download to the media device;
- receiving, at the media device, input from a controller connected to the media device, the input indicating selection of a video game from the listing for download to the media device;
- receiving, at the media device, the selected video game from a server via a network;
- installing, via the media device, the selected video game to a storage device associated with the media device; and
- executing the video game at the media device in response to: verifying authorization to execute the selected video game for a user based on digital rights to the selected video game that are tied to a user account of the user; and verifying authorization to execute the selected video game at the media device based on digital rights to the selected video game that are tied to the media device.
22. The method of claim 21, further comprising:
- inhibiting execution of the video game prior to at least one of: verifying authorization to execute the selected video game for a user; and verifying authorization to execute the selected video game at the media device.
23. The method of claim 21, wherein installing the video game comprises storing the video game in a storage device of the media device.
24. The method of claim 21, wherein providing for display of the listing comprises providing for display of a cost to purchase a corresponding video game for at least one video game of the listing.
25. The method of claim 24, further comprising:
- responsive to the input from the controller, providing, via the media device, a display of a charge notification for a charge of a cost of the selected video game; and
- receiving, at the media device, input from the controller indicating acceptance of the charge identified in the charge notification before executing the video game via the media device.
26. The method of claim 21, further comprising:
- receiving, at the media device, input from the controller indicating a request to play the selected video game.
27. The method of claim 26, wherein the request to play the video game includes a selection of an entry in a listing of recently played games displayed at a display device associated with the media device, and wherein the entry corresponds to the video game.
28. The method of claim 26, wherein executing the video game is further in response to receiving the input indicating the request to play the selected video game.
29. The method of claim 21, wherein the media device includes a set-top box device.
30. The method of claim 21, wherein the media device comprises a video game console.
31. A media device comprising:
- a network interface coupleable to a network;
- a display interface coupleable to a display device;
- a storage device;
- at least one processor coupled to the network interface, the display interface, and the storage device; and
- a memory coupled to the at least one processor, the memory comprising instructions executable by the at least one processor to perform operations including: providing for display, via the display interface, of a listing of video games available for download to the media device; receiving, at the media device, input from a controller connected to the media device, the input indicating selection of a video game from the listing for download to the media device; receiving, at the media device, the selected video game from a server via the network; installing the selected video game to the storage device; and executing the video game at the media device in response to: verifying authorization to execute the selected video game for a user based on digital rights to the selected video game that are tied to a user account of the user; and verifying authorization to execute the selected video game at the media device based on digital rights to the selected video game that are tied to the media device.
32. The media device of claim 31, wherein the controller is wirelessly connected to the media device.
33. The media device of claim 31, wherein the storage device includes the memory.
34. The media device of claim 31, wherein providing for the display of the listing comprises providing for display of a cost to purchase a corresponding video game for at least one video game of the listing.
35. The media device of claim 34, wherein the operations further comprise:
- responsive to the input from the controller, providing for a display of a charge notification for a charge of a cost of the selected video game; and
- receiving, at the media device, input from the controller indicating acceptance of the charge identified in the charge notification before executing the video game via the media device.
36. The media device of claim 31, wherein the operations further comprise:
- receiving, at the media device, input from the controller indicating a request to play the selected video game.
37. The media device of claim 36, wherein the request to play the video game includes a selection of an entry in a listing of recently played games displayed at a display device associated with the media device, and wherein the entry corresponds to the video game.
38. The media device of claim 36, wherein executing the video game is further in response to receiving the input indicating the request to play the selected video game.
39. The media device of claim 31, wherein the media device comprises a set-top box device.
40. The media device of claim 31, wherein the media device comprises a video game console.
Type: Application
Filed: Mar 1, 2021
Publication Date: Oct 21, 2021
Inventors: Steven Michael Gemelos (San Jose, CA), Anthony Petronelli (San Jose, CA)
Application Number: 17/188,700