U.S. Pat. No. 9,713,765

ONLINE GAME EXPERIENCE USING MULTIPLE DEVICES

AssigneeEMPIRE TECHNOLOGY DEVELOPMENT LLC

Issue DateSeptember 14, 2012

Illustrative Figure

Abstract

Technologies and implementations for providing an online game experience using multiple devices are generally disclosed including methods and devices for, in some examples, receiving first data from a first device, the received first data being associated with a first interaction with the online game, receiving a request to utilize a second device and responsive to the received request, transmitting second data to the second device, the second data being associated with a second interaction with the online game, the second interaction related to the first interaction but being different from the first interaction.

Description

DETAILED DESCRIPTION The following description sets forth various examples along with specific details to provide a thorough understanding of claimed subject matter. It will be understood by those skilled in the art that claimed subject matter might be practiced without some or more of the specific details disclosed herein. Further, in some circumstances, well-known methods, procedures, systems, components and/or circuits have not been described in detail, in order to avoid unnecessarily obscuring claimed subject matter. In the following detailed description, reference is made to the accompanying drawings, which form a part hereof. In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be utilized, and other changes may be made, without departing from the spirit or scope of the subject matter presented here. It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the Figures, can be arranged, substituted, combined, and designed in a wide variety of different configurations, all of which are explicitly contemplated and made part of this disclosure. This disclosure is drawn, inter alia, to methods, devices, systems and computer readable media related to providing an online game experience that uses multiple devices for interaction with the online game. Conventional online computer games allow a user to interact with the online game through a single computing device. For example, as part of the interaction, the computing device may display information about the online computer game. More specifically, the online computer game may include display information, and a display component of the computing device may use the display information to provide an interaction with the online game. An online computer game experience typically includes multiple pieces ...

DETAILED DESCRIPTION

The following description sets forth various examples along with specific details to provide a thorough understanding of claimed subject matter. It will be understood by those skilled in the art that claimed subject matter might be practiced without some or more of the specific details disclosed herein. Further, in some circumstances, well-known methods, procedures, systems, components and/or circuits have not been described in detail, in order to avoid unnecessarily obscuring claimed subject matter.

In the following detailed description, reference is made to the accompanying drawings, which form a part hereof. In the drawings, similar symbols typically identify similar components, unless context dictates otherwise. The illustrative embodiments described in the detailed description, drawings, and claims are not meant to be limiting. Other embodiments may be utilized, and other changes may be made, without departing from the spirit or scope of the subject matter presented here. It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the Figures, can be arranged, substituted, combined, and designed in a wide variety of different configurations, all of which are explicitly contemplated and made part of this disclosure.

This disclosure is drawn, inter alia, to methods, devices, systems and computer readable media related to providing an online game experience that uses multiple devices for interaction with the online game.

Conventional online computer games allow a user to interact with the online game through a single computing device. For example, as part of the interaction, the computing device may display information about the online computer game. More specifically, the online computer game may include display information, and a display component of the computing device may use the display information to provide an interaction with the online game. An online computer game experience typically includes multiple pieces of display information. Accordingly, the computing device may display these different pieces of information simultaneously as part of the online game experience.

For example, an online driving game experience may include a main window (e.g., view from the driver's seat perspective, view from the front bumper, or the like). Additionally, the driving game experience may include a number of other windows (e.g., instrument panel, speedometer, rear view mirror, side view mirror, map, or the like). Accordingly, in order to experience (e.g., “play”) the online driving game, a user may use a computing device to display the windows and provide feedback (e.g., gas pedal pressure, brake pedal pressure, steering wheel movement, or the like) to the online game. The online game provider may then use the feedback to update the windows (e.g., view from the driver seat, speedometer, etc.) displayed on the computing device. As indicated, with conventional online computer games, a single computing device (e.g., a laptop computer, a game console or the like) may display all these windows. More specifically, a user may use a single computing device to “play” the online game, which would include viewing the main view (e.g., view from the driver's perspective) and other windows (e.g., view of the speedometer, side view mirror, etc.) on the computing device.

As indicated above, with various implementations of the disclosed subject matter, multiple computing devices may be used to experience an online game. Accordingly, using the online driving game example given above, a tablet computer may be used to display the main window (e.g., view from the driver seat, or the like) while a smart phone may be used to display another window (e.g., the speedometer, side view mirror, or the like). Furthermore, feedback (e.g., gas pedal pressure, steering wheel movement, or the like) may be provided using one or more of these multiple devices. This example is given as illustrative only and is not intended to be limiting. This example, along with other examples and implementations for using multiple computing devices to experience an online game will be apparent from the following detailed disclosure.

Although care is taken herein to distinguish between an online computer game, the computer resources (e.g., a server, or the like) providing the online computer game, the computing devices (e.g., laptop computer, tablet computer, or the like) used to experience the online game and the experience of playing the online computer game, there may be instances where their usage is not consistent. As such, it is to be appreciated that those of ordinary skill in the art will be able to correctly distinguish between the different usages of online game in this disclosure from the context of the usage.

FIG. 1illustrates a block diagram of an example display associated with an online game experience, arranged in accordance with at least some embodiments of the present disclosure. In particular,FIG. 1shows a display100including a main information window110and sub-information windows112,114and116. The information windows110,112,114and116may be used to display different pieces or items of information (e.g., views, maps, items, statuses, metrics, qualities, characteristics, or the like) related to an online game experience. With some online games, the online game may continually update the information displayed in the windows110,112,114and/or116. More particularly, as the online game experience progresses or changes, the information displayed in the windows110,112,114and/or116may be changed.

As can be appreciated, in order to fully experience an online game, a computing device with a display large enough to show the windows (e.g., the windows110,112,114and116) associated with the online game interaction is needed. However, many computing devices (e.g., smart phones, tablet computers, ultra-book laptops, or the like) may not have displays large enough to show all the windows associated with an online game experience. Such computing devices (e.g., those with smaller displays) are commonly used today. Furthermore, users may often carry more than one computing device with a smaller display (e.g., a smartphone and a tablet).

As such, various implementations of the disclosed subject matter may be provided to allow an interaction with an online game using two or more computing devices. For example, a user's interaction with an online computer game may include simultaneously displaying the windows110,112,114and/or116using multiple computing devices. It is to be appreciated that online games may provide for a different number or configuration of windows than represented inFIG. 1.FIG. 1is shown for illustrative purposes only, and although referenced throughout this disclosure, it is not intended to be limiting.

FIG. 2illustrates a block diagram of an example system for providing an online game experience, arranged in accordance with at least some embodiments of the present disclosure. In particular,FIG. 2shows an online game environment200including an online game host210and computing devices220and230. The online game host210(e.g., a computer server, a virtual machine, a cloud based resource, a console game system, a desktop computer, or the like) may be configured to provide an online game experience. As will be appreciated, the online game host210may be configured to provide a variety of different types of online game experiences. For example, the online game host210may provide a massively multi-player online game (MMOG), a single person game, a co-op game, or other type of online game. Additionally, the online game host210may provide a role-playing game, strategy game, first person game, or other type of game. With various implementations, the online game host210may be a computing resource (e.g., as detailed above) executing online computer game software, which provides for an interaction with the online computer game using the computing devices220and230.

As stated, the computing devices220and the computing device230may facilitate an interaction with the online game host210. In various implementations, the computing device220may be a gaming console, a desktop computer, a laptop computer, a tablet computer, a smart phone, a mobile phone, a personal digital assistant, or the like. In various implementations, the computing device230may be a gaming console, a desktop computer, a laptop computer, a tablet computer, a smart phone, a mobile phone, a personal digital assistant, or the like. The computing devices220and230may connect to the online game host210through a connection240(e.g. a wired internet connection, a wireless internet connection, a mobile internet connection, a VPN connection, or the like).

With some implementations, the connection240facilitates transmitting data between the online game host210and the computing devices220and230. For example, in some implementations, the connection240may an Internet connection. Accordingly, the online game host210may be connected to the Internet (e.g., through an ISP, an Internet backbone, or the like) and may be configured to transmit and/or receive (e.g., using TCP/IP, UDP, RSVP, DCCP, or the like) data to and/or from the computing devices220and230. Additionally, the first computing devices220and230may be connected to the Internet (e.g., through a wired Internet connection, a wireless Internet connection, a mobile Internet connection, or the like) and may be configured to transmit and/or receive data to and/or from the online game host210.

In some implementations, one of the computing devices220or230may function as a proxy connection to the other computing device220or230. For example, the computing devices220and230may be connected (e.g., over Bluetooth, Wifi, USB, or the like). As such, one of the computing devices220or230may be a proxy for communication the online game host210from the other computing device.

As indicated, the computing devices220and230may be used to interact with the online game host210, in order to experience an online game. In some implementations, the online game host210may transmit data (e.g., input feedback, or the like) related to the online game experience to the computing devices220and/or230. Alternatively, the computing devices220and/or230may transmit data related to the online game experience to the online game host210. For example, the online game host210may transmit display data to the computing devices220and230. The computing devices220and230may then use the display data to display information about the online game experience for a user. For example, the display data sent to the computing device220may correspond to the main information windows110while the display data sent to the computing device230may correspond to the sub-information windows112,114and116.

In some implementations, different users (e.g., players of the online game) may use the computing devices220and230. For example, a first player may be using the computing devices220and230to interact with an online game. Additionally, a second player may be using one of the computing devices220or230to interact with an online game. As such, the shared computing device may be used to display common data for both the first and the second players' online experience.

FIGS. 3-7illustrate flow charts of example methods for providing an online game experience, arranged in accordance with some embodiments of the present disclosure. In some portions of the description, illustrative implementations of the methods are described with reference to elements of the display100and environment200depicted inFIGS. 1 and 2. However, the described embodiments are not limited to these depictions. More specifically, some elements depicted inFIGS. 1 and 2may be omitted from example implementations of the methods detailed herein. Furthermore, other elements not depicted inFIGS. 1 and 2may be used to implement example methods.

Additionally,FIGS. 3-7employ block diagrams to illustrate the example methods detailed therein. These block diagrams may set out various functional blocks or actions that may be described as processing steps, functional operations, events and/or acts, etc., and may be performed by hardware, software, and/or firmware. Numerous alternatives to the functional blocks detailed may be practiced in various implementations. For example, intervening actions not shown in the figures and/or additional actions not shown in the figures may be employed and/or some of the actions shown in the figures may be eliminated. In some examples, the actions shown in one figure may be operated using techniques discussed with respect to another figure. Additionally, in some examples, the actions shown in these figures may be operated using parallel processing techniques. The above described, and others not described, rearrangements, substitutions, changes, modifications, etc., may be made without departing from the scope of claimed subject matter.

FIG. 3illustrates an example method300for providing an online game experience, arranged in accordance with at least some embodiments of the present disclosure. Beginning at block310, “Receive First Data from a First Device, the First Data Being Associated with a First Interaction with an Online Game”, the online game host210may include logic and/or features configured to receive data related to an online game experience from one of the computing devices220or230. In general, at block310, the online game host210may be interacting with one of the computing devices220or230. More particularly, an online game may be “played” (e.g., experienced) using one of the computing devices220or230and the online game host210.

For example, the computing device220may be used to play an online game in conjunction with the online game host210. As part of playing the online game, the online game host210may send (e.g., transmit, convey, broadcast, share, or the like) data to the computing device220. Additionally, the computing device220may send data to the online game host210.

As will be appreciated from this disclosure, it may be convenient to refer to the computing device220as the “first computing device220” and the computing device230as the “second computing device230”. Accordingly, at block310, the online game host210may receive data related to an interaction with an online game from the first computing device220. It is to be appreciated, that although the computing device220and the computing device230are referred to as the first and second computing devices respectively, the disclosed technology is not limited in such regard. For example, the first computing device may be the computing device230. Additionally, as an online game is experienced, the first computing device may refer to different computing devices. For example, initially, the first computing device may refer to the computing device220. Subsequently, the first computing device may refer to the computing device230. More particularly, if a first, second and third computing devices were being used to interact with an online game, a user may decide to discontinue use of the first computing device but keep playing the game with the second and third computing devices. Accordingly, the second or third computing devices may then become the “first” computing device.

As indicated, at block310, the online game host210may receive data from the first computing device220. In various implementations, the data may be login data associated with a user of the online game. For example, a user desiring to experience the online game may log into the online game host210using the first computing device220. Accordingly, the online game host210may receive data associated with the login (e.g., user name, password, desired login detailed, or the like) from the first computing device220.

In some implementations, the data may relate to a selection (e.g., action, choice, request, invitation, entry, or the like) regarding some aspect of the online game experience. For example, the data may be related to a character's movement within the online game. Alternatively or additionally, the data may be related to a message (e.g., chat, text, email, or the like) between users of the online game. Accordingly, as detailed above, as part of an online game experience (e.g., playing an online game, or the like) the online game host210may receive data from the first computing device220.

Continuing from block310to block320, “Receive a Request to Utilize a Second Device”, the online game host210may include logic and/or features configured to receive a request to utilize the second computing device230. In general, the online game host210may receive a request to include the second computing device230in the interaction with the online game. In some implementations, a user may desire to utilize both computing devices220and230to experience an online game, as such, a request to utilize the second computing device230may be made by the user from the first computing device220.

With some implementations, the request to utilize the second computing device230may be made from the second computing device. For example, software executing on the second computing device230may send a request to the online game host210that the second computing device230be used to interact with the online game. Alternatively, or additionally, loading a specific webpage in a browser of the second computing device230may cause a request to utilize the second computing device230to the online game host210.

With some examples, the first computing device220and the second computing device230may be registered (e.g., during online game client software installation, online game user account creation, or the like) with the online game host210. Subsequently, the online game host210may identify available computing devices (e.g., the second computing device230) and suggest these (or one or more of these) devices be used to interact with the online game.

In some implementations, the online game host210may scan for available computing devices. For example, the online game host210may search for computing devices proximally located (e.g., via wifi scan, local network scan, or the like) to the first computing device220. The online game host210may then suggest that one or more of these identified devices be used to interact with the online game.

In some examples, where the online game host210suggests available devices with which to interact with the online game, a request to use one of the devices may be automatically generated. For example, if a registered device is identified as available, the online game host210may automatically generate a request to use the identified device.

Continuing from block320to block330, “Transmit Second Data to the Second Device, the Second Data Being Associated with a Second Interaction with the Online Game”, the online game host210may include logic and/or features configured to send second data to the second computing device230. In general, the online game host210may send (e.g., transmit, convey, broadcast, share, or the like) data related to an interaction with the online game to the second computing device230. In some implementations, the second data may be display data as detailed above. For example, the second data may be data facilitating the display of the windows112,114and/or116on the second computing device230.

In various implementations, more than two computing devices may be used to interact with the online game through the online game host210. For example, the first and second computing devices220and230may be used to interact with an online game as detailed above. Additionally, a third computing device (not shown inFIG. 2) may be used to interact with the online game in a similar manner as detailed above in conjunction with the second computing device230.

FIG. 4illustrates a method400for interacting with an online game, arranged in accordance with at least some embodiments of the present disclosure. Beginning at block410, “By a First Device, Interact with an Online Game”, the first computing device220may include logic and/or features configured to interact with the online game host210. In general, the first computing device220may interact with an online game provided by the online game host210at block410. For example, the first computing device may receive data (e.g., display data) associated with an interaction with the online game from the online game host210at block410. In some implementations, a user may be playing an online game provided by the online game host210with the first computing device220. As such, as part of playing the online game, the first computing device220may interact with the online game host210at block410.

Continuing at block420, “By the First Device, Transmit a Request to Utilize a Second Device for the Online Game”, the first computing device220may include logic and/or features configured to transmit a request to utilize the second computing device230to the online game host210. In general, a request to utilize the second computing device230as part of the interaction with the online game may be made by the first computing device220at block420. A number of illustrative examples of receiving a request to utilize the second computing device230to interact with the online game are detailed above. Particularly with respect to block320ofFIG. 3. It will be appreciated that these examples may be adapted to block420. As such, these examples are not repeated here.

It is to be appreciated, however, as detailed above, that the first computing device220may not initiate the request. For example, the online game host210may identify the second computing device230as being available for interaction with the online game. The online game host210may transmit an indication of availability and option to use the second computing device230to the first computing device220. Then, the first computing device220may accept the option to use the second computing device230at block420.

Continuing at block430, “By the Second Device, Receive Data Associated with the Online Game to Facilitate Utilization of the Second Device with the First Device, the Received Data Capable of Providing a Second Interaction with the Online Game”, the second computing device230may include logic and/or features configured to receive data associated with the online game from the online game host210. In general, the second computing device230may receive data (e.g., display data) related to the online game experience. A number of illustrative examples of the online game host210sending data to the second computing device230are discussed above. Particularly with respect to block330ofFIG. 3. It will be appreciated that these examples and the discussion of block330are similar to block430. As such, these examples are not repeated here.

FIGS. 5-7illustrate methods for supplementing an online game experience, arranged in accordance with at least some embodiments of the present disclosure. In various implementations, the methods detailed inFIGS. 5-7may be provided in conjunction with the above detailed method300, or other methods detailed herein. The following discussion ofFIGS. 5-7references the method300ofFIG. 3for clarity of presentation only and is not intended to be limiting. For example, although the methods shown inFIGS. 5-7are discussed with respect to the method300, they may be provided in conjunction with the method400ofFIG. 4or other methods detailed herein.

As each ofFIGS. 5-7are discussed with reference to the method300ofFIG. 3, the method300is briefly reviewed here, prior to the discussion ofFIGS. 5-7. As detailed above, the online game host210may allow for interaction with an online game by the first computing device220and the second computing device230. For example, the method300may provide for the online game host210to receive data related to an interaction with an online game from the first computing device220at block310. The online game host210may receive a request to utilize the second computing device220as part of the online game experience at block320. Then, responsive to the received request, the online game host210may transmit second data to the second computing device230at block330.

Each ofFIGS. 5-7are herein discussed in turn. The discussion assumes an existing interaction with an online game, and sometimes references terms (e.g., “the second data”) from the discussion ofFIG. 3. It may be assumed that these terms are understood from the above description and as such, they need not repeated here for purposes of brevity.

Turning toFIG. 5, shown is a method500for supplementing an online game experience, arranged in accordance with at least some embodiments of the present disclosure. Beginning at block510, “Determine a Characteristic about the Second Device”, the online game host210may include logic and/or features configured to determine a characteristic about the second computing device230. In general, the online game host210may determine a characteristic about the second computing device that may be used to customize the second data (e.g., the data transmitted to the second computing device230at block330). Continuing at block520, “Customize the Second Data Based on the Determined Characteristic”, the online game host210may include logic and/or features configured to customize the second data based on the determined characteristic.

In various implementations, the online game host210may determine whether the second computing device230is a registered device at block510. For example, as detailed above, in some implementations, computing devices (e.g., the computing devices220and230) may be registered with an online game. Accordingly, the online game host210may check that the second computing device230is registered at block510. Subsequently, if it is determined that the computing device230is not a registered device, the second data may be customized to include an indication that the second computing device230is a non-registered device at block520.

With some implementations, the determined characteristic is a capability of the second computing device230. For example, if the second computing device230includes a touch enabled screen, the second data may be customized to take advantage of the touch enabled screen. For example, if one of the windows110,112,114and/or116includes selection data, then the second data may be customized to include that window such that the touch enabled screen may be used to conveniently select the data from the window.

In some implementations, the determined characteristic may be another feature (e.g., size of the display, processing speed, audio speaker, or the like) of the second computing device230. Subsequently, the online game host210can customize the second data to take advantage of the determined characteristic. For example, if it is determined that the second computing device includes an audio speaker, then the online game host210may include audio data within the second data.

Turning toFIG. 6, shown is a method600for supplementing an online game experience, arranged in accordance with at least some embodiments of the present disclosure. Beginning at block610, “Determine a Location of the First Device and a Location of the Second Device”, the online game host210may include logic and/or features for determining a location of a computing device. In general, the online game host210may determine the location (e.g., using GPS, using location-aware browsing, or the like) for the first and second computing devices220and230at block610.

Continuing from block610to620, “Determine a Distance Between the Location of the First and Second Device”, the online game host210may include logic and/or features to determine the distance between the locations of the first computing device220and the second computing device230. Continuing from block620to630, “Provide a Proximity Error if the Determined Distance is Greater than a Predetermined Distance”, the online game host210may include logic and/or features to provide a proximity distance error. For example, if the distance between the location of the first computing device220and the second computing device230is greater than a threshold distance, the online game host210may provide a proximity distance error to either or both of the computing devices220and230.

Turning toFIG. 7, a method700for supplementing an online game experience, arranged in accordance with at least some embodiments of the present disclosure. Beginning at block710, “Determine a Location and Orientation of the First and Second devices”, the online game host210may include logic and/or features to determine the location and orientation of a computing device. In general, the online game host210may determine the location and orientation (e.g., using a gyroscope, electro-magnetic compass, or the like), of the first and second computing devices220and230. In various implementations, the location and orientation of one of the computing devices may be determined in relation to the other computing device.

Continuing from block710to block720, “Include Relation Interactive Data with the Second Data”, the online game host210may include relational interactive data in the second data. In general, the online game host210may include data that relates to the determined relative location and orientation. For example, if it is determined that the second computing device230is located adjacent and to the right of the of the first computing device220, then the second data may include display data corresponding to views adjacent and to the right of what is displayed in the first computing device220.

In general, the methods described with respect toFIGS. 3-7and elsewhere herein may be implemented as a computer program product, executable on any suitable computing system, or the like. For example, a computer program product for providing an online game experience may be provided. Example computer program products are described with respect toFIG. 8and elsewhere herein.

FIG. 8illustrates an example computer program product800, arranged in accordance with at least some embodiments of the present disclosure. Computer program product800may include machine readable non-transitory medium having stored therein a plurality of instructions that, when executed, operatively enable an online game provider control module to provide an online game experience according to the processes and methods discussed herein. Computer program product800may include a signal bearing medium802. Signal bearing medium802may include one or more machine-readable instructions804, which, when executed by one or more processors, may operatively enable a computing device to provide the functionality described herein. In various examples, some or all of the machine-readable instructions may be used by the devices discussed herein.

In some examples, the machine readable instructions804may include receiving first data from a first device, the received first data being associated with a first interaction with the online game. In some examples, the machine readable instructions804may include receiving a request to utilize a second device. In some examples, the machine readable instructions804may include transmitting, in response to a received request, second data to the second device, the second data being associated with a second interaction with the online game, the second interaction related to the first interaction but being different from the first interaction. In some examples, the machine readable instructions804may include determining if the second device is a registered device, and include an indication of a non-registered device with the second data, if it is determined that the second device is not a registered device. In some examples, the machine readable instructions804may include determining a capability of the second device, and customize the second data based at least in part on the determined capability of the second device. In some examples, the machine readable instructions804may include determining a location of the first device, determine a location of the second device, determine a distance between the location of the first device and the location of the second device, and if it is determined that the determined distance between the location of the first device and the location of the second device is greater than a predetermined distance, include an indication of a proximity error with the second data. In some examples, the machine readable instructions804may include determining a location and orientation of the first device, determine a location and orientation of the second device, and include relational interactive data with the second data, wherein the relational interactive data includes data configured to utilize the location and orientation of the first device relative to the location and orientation of the second device.

In some implementations, signal bearing medium802may encompass a computer-readable medium806, such as, but not limited to, a hard disk drive (HDD), a Compact Disc (CD), a Digital Versatile Disk (DVD), a digital tape, memory, etc. In some implementations, the signal bearing medium802may encompass a recordable medium808, such as, but not limited to, memory, read/write (R/W) CDs, R/W DVDs, etc. In some implementations, the signal bearing medium802may encompass a communications medium810, such as, but not limited to, a digital and/or an analog communication medium (e.g., a fiber optic cable, a waveguide, a wired communication link, a wireless communication link, etc.). In some examples, the signal bearing medium802may encompass a machine readable non-transitory medium.

In general, the methods described with respect toFIGS. 3-7and elsewhere herein may be implemented in any suitable server and/or computing system. Example systems may be described with respect toFIG. 9and elsewhere herein. In general, the computer system may be configured to provide an online game experience.

FIG. 9is a block diagram illustrating an example computing device900, arranged in accordance with at least some embodiments of the present disclosure. In various examples, computing device900may be configured to provide an online game experience as an online game host as discussed herein. In various examples, computing device900may be configured to provide an interaction with an online game as a computing device or multiple computing devices as discussed herein. In one example of a basic configuration901, computing device900may include one or more processors910and a system memory920. A memory bus930can be used for communicating between the one or more processors910and the system memory920.

Depending on the desired configuration, the one or more processors910may be of any type including but not limited to a microprocessor (μP), a microcontroller (μC), a digital signal processor (DSP), or any combination thereof. The one or more processors910may include one or more levels of caching, such as a level one cache911and a level two cache912, a processor core913, and registers914. The processor core913can include an arithmetic logic unit (ALU), a floating point unit (FPU), a digital signal processing core (DSP core), or any combination thereof. A memory controller915can also be used with the one or more processors910, or in some implementations, the memory controller915can be an internal part of the processor910.

Depending on the desired configuration, the system memory920may be of any type including but not limited to volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.) or any combination thereof. The system memory920may include an operating system921, one or more applications922, and program data924. The one or more applications922may include online game experience application923that can be arranged to perform the functions, actions, and/or operations as described herein including the functional blocks, actions, and/or operations described herein. The program data924may include online game experience data925for use with online game experience application923. In some example embodiments, the one or more applications922may be arranged to operate with the program data924on the operating system921. This described basic configuration901is illustrated inFIG. 9by those components within dashed line.

Computing device900may have additional features or functionality, and additional interfaces to facilitate communications between the basic configuration901and any required devices and interfaces. For example, a bus/interface controller940may be used to facilitate communications between the basic configuration901and one or more data storage devices950via a storage interface bus941. The one or more data storage devices950may be removable storage devices951, non-removable storage devices952, or a combination thereof. Examples of removable storage and non-removable storage devices include magnetic disk devices such as flexible disk drives and hard-disk drives (HDD), optical disk drives such as compact disk (CD) drives or digital versatile disk (DVD) drives, solid state drives (SSD), and tape drives to name a few. Example computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.

The system memory920, the removable storage951and the non-removable storage952are all examples of computer storage media. The computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which may be used to store the desired information and which may be accessed by the computing device900. Any such computer storage media may be part of the computing device900.

The computing device900may also include an interface bus942for facilitating communication from various interface devices (e.g., output interfaces, peripheral interfaces, and communication interfaces) to the basic configuration901via the bus/interface controller940. Example output interfaces960may include a graphics processing unit961and an audio processing unit962, which may be configured to communicate to various external devices such as a display or speakers via one or more NV ports963. Example peripheral interfaces970may include a serial interface controller971or a parallel interface controller972, which may be configured to communicate with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device, etc.) or other peripheral devices (e.g., printer, scanner, etc.) via one or more I/O ports973. An example communication interface980includes a network controller981, which may be arranged to facilitate communications with one or more other computing devices983over a network communication via one or more communication ports982. A communication connection is one example of a communication media. The communication media may typically be embodied by computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and may include any information delivery media. A “modulated data signal” may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared (IR) and other wireless media. The term computer readable media as used herein may include both storage media and communication media.

The computing device900may be implemented as a portion of a small-form factor portable (or mobile) electronic device such as a cell phone, a mobile phone, a tablet device, a laptop computer, a personal data assistant (PDA), a personal media player device, a wireless web-watch device, a personal headset device, an application specific device, or a hybrid device that includes any of the above functions. The computing device900may also be implemented as a personal computer including both laptop computer and non-laptop computer configurations. In addition, the computing device900may be implemented as part of a wireless base station or other wireless system or device.

Some portions of the foregoing detailed description are presented in terms of algorithms or symbolic representations of operations on data bits or binary digital signals stored within a computing system memory, such as a computer memory. These algorithmic descriptions or representations are examples of techniques used by those of ordinary skill in the data processing arts to convey the substance of their work to others skilled in the art. An algorithm is here, and generally, is considered to be a self-consistent sequence of operations or similar processing leading to a desired result. In this context, operations or processing involve physical manipulation of physical quantities. Typically, although not necessarily, such quantities may take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared or otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to such signals as bits, data, values, elements, symbols, characters, terms, numbers, numerals or the like. It should be understood, however, that all of these and similar terms are to be associated with appropriate physical quantities and are merely convenient labels. Unless specifically stated otherwise, as apparent from the following discussion, it is appreciated that throughout this specification discussions utilizing terms such as “processing,” “computing,” “calculating,” “determining” or the like refer to actions or processes of a computing device, that manipulates or transforms data represented as physical electronic or magnetic quantities within memories, registers, or other information storage devices, transmission devices, or display devices of the computing device.

The claimed subject matter is not limited in scope to the particular implementations described herein. For example, some implementations may be in hardware, such as employed to operate on a device or combination of devices, for example, whereas other implementations may be in software and/or firmware. Likewise, although claimed subject matter is not limited in scope in this respect, some implementations may include one or more articles, such as a signal bearing medium, a storage medium and/or storage media. This storage media, such as CD-ROMs, computer disks, flash memory, or the like, for example, may have instructions stored thereon, that, when executed by a computing device, such as a computing system, computing platform, or other system, for example, may result in execution of a processor in accordance with the claimed subject matter, such as one of the implementations previously described, for example. As one possibility, a computing device may include one or more processing units or processors, one or more input/output devices, such as a display, a keyboard and/or a mouse, and one or more memories, such as static random access memory, dynamic random access memory, flash memory, and/or a hard drive.

There is little distinction left between hardware and software implementations of aspects of systems; the use of hardware or software is generally (but not always, in that in certain contexts the choice between hardware and software can become significant) a design choice representing cost vs. efficiency tradeoffs. There are various vehicles by which processes and/or systems and/or other technologies described herein can be affected (e.g., hardware, software, and/or firmware), and that the preferred vehicle will vary with the context in which the processes and/or systems and/or other technologies are deployed. For example, if an implementer determines that speed and accuracy are paramount, the implementer may opt for a mainly hardware and/or firmware vehicle; if flexibility is paramount, the implementer may opt for a mainly software implementation; or, yet again alternatively, the implementer may opt for some combination of hardware, software, and/or firmware.

The foregoing detailed description has set forth various embodiments of the devices and/or processes via the use of block diagrams, flowcharts, and/or examples. Insofar as such block diagrams, flowcharts, and/or examples contain one or more functions and/or operations, it will be understood by those within the art that each function and/or operation within such block diagrams, flowcharts, or examples can be implemented, individually and/or collectively, by a wide range of hardware, software, firmware, or virtually any combination thereof. In one embodiment, several portions of the subject matter described herein may be implemented via Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs), digital signal processors (DSPs), or other integrated formats. However, those skilled in the art will recognize that some aspects of the embodiments disclosed herein, in whole or in part, can be equivalently implemented in integrated circuits, as one or more computer programs running on one or more computers (e.g., as one or more programs running on one or more computer systems), as one or more programs running on one or more processors (e.g., as one or more programs running on one or more microprocessors), as firmware, or as virtually any combination thereof, and that designing the circuitry and/or writing the code for the software and/or firmware would be well within the skill of one of skill in the art in light of this disclosure. In addition, those skilled in the art will appreciate that the mechanisms of the subject matter described herein are capable of being distributed as a program product in a variety of forms, and that an illustrative embodiment of the subject matter described herein applies regardless of the particular type of signal bearing medium used to actually carry out the distribution. Examples of a signal bearing medium include, but are not limited to, the following: a recordable type medium such as a flexible disk, a hard disk drive (HDD), a Compact Disc (CD), a Digital Versatile Disk (DVD), a digital tape, a computer memory, etc.; and a transmission type medium such as a digital and/or an analog communication medium (e.g., a fiber optic cable, a waveguide, a wired communication link, a wireless communication link, etc.).

Those skilled in the art will recognize that it is common within the art to describe devices and/or processes in the fashion set forth herein, and thereafter use engineering practices to integrate such described devices and/or processes into data processing systems. That is, at least a portion of the devices and/or processes described herein can be integrated into a data processing system via a reasonable amount of experimentation. Those having skill in the art will recognize that a typical data processing system generally includes one or more of a system unit housing, a video display device, a memory such as volatile and non-volatile memory, processors such as microprocessors and digital signal processors, computational entities such as operating systems, drivers, graphical user interfaces, and applications programs, one or more interaction devices, such as a touch pad or screen, and/or control systems including feedback loops and control motors (e.g., feedback for sensing position and/or velocity; control motors for moving and/or adjusting components and/or quantities). A typical data processing system may be implemented utilizing any suitable commercially available components, such as those typically found in data computing/communication and/or network computing/communication systems.

The herein described subject matter sometimes illustrates different components contained within, or connected with, different other components. It is to be understood that such depicted architectures are merely exemplary, and that in fact many other architectures can be implemented which achieve the same functionality. In a conceptual sense, any arrangement of components to achieve the same functionality is effectively “associated” such that the desired functionality is achieved. Hence, any two components herein combined to achieve a particular functionality can be seen as “associated with” each other such that the desired functionality is achieved, irrespective of architectures or intermedial components. Likewise, any two components so associated can also be viewed as being “operably connected”, or “operably coupled”, to each other to achieve the desired functionality, and any two components capable of being so associated can also be viewed as being “operably couplable”, to each other to achieve the desired functionality. Specific examples of operably couplable include but are not limited to physically mateable and/or physically interacting components and/or wirelessly interactable and/or wirelessly interacting components and/or logically interacting and/or logically interactable components.

With respect to the use of substantially any plural and/or singular terms herein, those having skill in the art can translate from the plural to the singular and/or from the singular to the plural as is appropriate to the context and/or application. The various singular/plural permutations may be expressly set forth herein for sake of clarity.

It will be understood by those within the art that, in general, terms used herein, and especially in the appended claims (e.g., bodies of the appended claims) are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.). It will be further understood by those within the art that if a specific number of an introduced claim recitation is intended, such an intent will be explicitly recited in the claim, and in the absence of such recitation, no such intent is present. For example, as an aid to understanding, the following appended claims may contain usage of the introductory phrases “at least one” and “one or more” to introduce claim recitations. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim recitation to subject matter containing only one such recitation, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an” (e.g., “a” and/or “an” should typically be interpreted to mean “at least one” or “one or more”); the same holds true for the use of definite articles used to introduce claim recitations. In addition, even if a specific number of an introduced claim recitation is explicitly recited, those skilled in the art will recognize that such recitation should typically be interpreted to mean at least the recited number (e.g., the bare recitation of “two recitations,” without other modifiers, typically means at least two recitations, or two or more recitations). Furthermore, in those instances where a convention analogous to “at least one of A, B, and C, etc.” is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., “a system having at least one of A, B, and C” would include but not be limited to systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.). In those instances where a convention analogous to “at least one of A, B, or C, etc.” is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., “a system having at least one of A, B, or C” would include but not be limited to systems that have A alone, B alone, C alone, A and B together, A and C together, B and C together, and/or A, B, and C together, etc.). It will be further understood by those within the art that virtually any disjunctive word and/or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms. For example, the phrase “A or B” will be understood to include the possibilities of “A” or “B” or “A and B.”

Reference in the specification to “an implementation,” “one implementation,” “some implementations,” or “other implementations” may mean that a particular feature, structure, or characteristic described in connection with one or more implementations may be included in at least some implementations, but not necessarily in all implementations. The various appearances of “an implementation,” “one implementation,” or “some implementations” in the preceding description are not necessarily all referring to the same implementations.

While certain exemplary techniques have been described and shown herein using various methods and systems, it should be understood by those skilled in the art that various other modifications may be made, and equivalents may be substituted, without departing from claimed subject matter. Additionally, many modifications may be made to adapt a particular situation to the teachings of claimed subject matter without departing from the central concept described herein. Therefore, it is intended that claimed subject matter not be limited to the particular examples disclosed, but that such claimed subject matter also may include all implementations falling within the scope of the appended claims, and equivalents thereof.

Claims

  1. A processor-implemented method to provide an experience of an online game, the method comprising: receiving, by a processor from a first device that has a first display, a first request to play an online game to be controlled via the first device, wherein the first request is associated with participation in the online game in which a character is controlled by a game player via the first device as a virtual participant in the online game;receiving, by the processor from the first device, a second request to utilize a second device that has a second display for information related to the online game, wherein the second device is suitable for use to control play of the online game;and determining whether the second device is available to be utilized to display the information related to the online game, and in response to a determination that the second device is available: transmitting first data of participation by the game player as the virtual participant in the online game to the first device, wherein the first data includes first game play information formatted for display via a main information window of the first display;and transmitting second data related to the participation by the game player as the virtual participant in the online game to the second device, wherein the second data includes second game play information formatted for display via at least one sub-information window from a plurality of sub-information windows of the second display, and wherein each of the plurality of sub-information windows is configured to display game play information related to the online game that is distinct from game play information displayed in the main information window of the first display.
  1. The method of claim 1 , further comprising: determining if the second device is a registered device;and including an indication of a non-registered device with the second data, if it is determined that the second device is not a non-registered device.
  2. The method of claim 1 , further comprising: determining whether the second device comprises a touch screen;and in response to a determination that the second device comprises the touch screen, selecting the at least one sub-information window from the plurality of sub-information windows of the second display for presentation of the second game play information formatted for display on the touch screen.
  3. The method of claim 1 , further comprising: determining a distance between the first device and the second device;and in response to a determination that the distance between the first device and the second device is greater than a specific distance, transmitting in the second data a proximity error to the second device.
  4. The method of claim 1 , further comprising: determining a location and orientation of the first device;determining a location and orientation of the second device in relation to the first device;and selecting the at least one sub-information window from the plurality of sub-information windows of the second device based on the location and orientation of the second device in relation to the first device.
  5. A processor-implemented method to provide an experience of an online game, the processor-implemented method, performed by an online game host, comprising: receiving, from a first device that has a first display and that is controlled to provide a first interaction as a participant in the online game in which a character is controlled by a game player via the first device, a request to utilize a second device that has a second display to provide information related to the online game, wherein the second device is suitable for use to control play of the online game;and responsive to the request received from the first device: determining whether the second device is available to be utilized to display the information related to the online game, and in response to a determination that the second device is available: transmitting first data of participation by the game player as a virtual participant in the online game to the first device, wherein the first data includes first game play information formatted for display via a main information window of the first display;and transmitting second data related to the participation by the game player as the virtual participant in the online game to the second device, wherein the second data includes second game play information formatted for display via at least one sub-information window from a plurality of sub-information windows of the second display, and wherein each of the plurality of sub-information windows is configured to display game play information related to the online game that is distinct from game play information displayed in the main information window of the first display.
  6. The method of claim 6 , further comprising: determining whether the second device comprises a touch screen;and in response to a determination that the second device comprises the touch screen, selecting the at least one sub-information window from the plurality of sub-information windows of the second display for presentation of the second game play information formatted for display on the touch screen.
  7. The method of claim 7 , further comprising: determining a distance between the first device and the second device;and in response to a determination that the distance between the first device and the second device is greater than a specific distance, transmitting, in the second data and to the second device, a proximity error.
  8. The method of claim 6 further comprising receiving data that includes an indication of a non-registered device.
  9. The method of claim 6 , further comprising: determining a location and orientation of the first device;determining a location and orientation of the second device in relation to the first device;and selecting the at least one sub-information window from the plurality of sub-information windows of the second display based on the location and orientation of the second device in relation to the first device.
  10. A machine readable non-transitory medium having stored therein instructions that, when executed by one or more processors, operatively enable an online game provider control module to: receive, from a first device that has a first display, a first request to play an online game to be controlled via the first device, wherein the first request is associated with participation in the online game in which a character is controlled by a game player via the first device as a virtual participant in the online game;receive, from the first device, a second request to utilize a second device that has a second display for information related to the online game, wherein the second device is suitable for use to control play of the online game;and determine whether the second device is available for to be utilized to display the information related to the online game, and in response to a determination that the second device is available: transmit first data of participation by the game player as the virtual participant in the online game to the first device, wherein the first data includes first game play information formatted for display via a main information window of the first display;and transmit second data related to the participation by the game player as the virtual participant in the online game to the second device, wherein the second data includes second game play information formatted for display via at least one sub-information window from a plurality of sub-information windows of the second display, and wherein each of the plurality of sub-information windows is configured to display game play information related to the online game that is distinct from game play information displayed in the main information window of the first display.
  11. The machine readable non-transitory medium of claim 11 , wherein the stored instructions, when executed by the one or more processors, further operatively enable the online game provider control module to: determine if the second device is a registered device;and include an indication of a non-registered device with the second data, if it is determined that the second device is not a registered device.
  12. The machine readable non-transitory medium of claim 11 , wherein the stored instructions, when executed by the one or more processors, further operatively enable the online game provider control module to: determine whether the second device comprises a touch screen;and in response to a determination that the second device comprises the touch screen, select the at least one sub-information window from the plurality of sub-information windows of the second display for presentation of the second game play information formatted for display on the touch screen.
  13. The machine readable non-transitory medium of claim 11 , wherein the stored instructions, when executed by the one or more processors, further operatively enable the online game provider control module to: determine a distance between the first device and the second device;and in response to a determination that the determined distance between the first device and the second device is greater than a specific distance, transmit in the second data a proximity error to at least one of the first device or the second device.
  14. The machine readable non-transitory medium of claim 11 , wherein the stored instructions, when executed by the one or more processors, further operatively enable the online game provider control module to: determine a location and orientation of the first device;determine a location and orientation of the second device in relation to the first device;and select the at least one sub-information window from the plurality of sub-information windows of the second display based on the location and orientation of the second device in relation to the first device.
  15. An online game system, comprising: a first device that has a first display, wherein the first device is operable to have a first interaction during an online game in which a character is controlled by a game player via the first device as a virtual participant in the online game, and is operable to transmit a request to an online game host to utilize a second device as a component of the online game concurrently with the first device to display information related to the online game, wherein the second device is suitable for use to control play of the online game;the online game host operable to: receive from the first device the request to utilize the second device;responsive to the request, determine whether the second device is available to be utilized to display the information related to the online game;and in response to a determination that the second device is available: transmit first data of participation by the game player as the virtual participant in the online game to the first device, wherein the first data includes game play information formatted for display via a main information window;and transmit second data related to the participation by the game player as the virtual participant in the online game to the second device, wherein the second data includes game play information formatted for display via at least one sub-information window from a plurality of sub-information windows of the second display, and wherein each of the plurality of sub-information windows is configured to display game play information related to the online game that is distinct from game play information displayed in the main information window of the first display;and the second device operable to receive the second data of the online game to coordinate utilization of the second device with the first device, wherein the second data is capable to provide a second interaction with the online game, wherein the second interaction is related to the first interaction but different from the first interaction, wherein the first interaction is associated with game play viewed via the first display of the first device and the second interaction is associated with a concurrent game play viewed via the second display of the second device, wherein the game player participates in the online game via the first device, and wherein the game player utilizes both the first device and the second device to participate in the online game.
  16. The online game system of claim 16 , wherein the online game host is further operable to: determine whether the second device comprises a touch screen;and in response to a determination that the second device comprises the touch screen, select the at least one sub-information window from the plurality of sub-information windows of the second display for presentation of the second game play information formatted for display on the touch screen.
  17. The online game system of claim 17 , wherein the online game host is further operable to: determine a distance between the first device and the second device;and in response to a determination that the distance between the first device and the second device is greater than a specific distance, transmit in the second data a proximity error to the second device.
  18. The online game system of claim 16 , wherein the second data comprises data that includes an indication of a non-registered device.
  19. The online game system of claim 16 , wherein the online game host is further operable to: determine a location and orientation of the first device;determine a location and orientation of the second device in relation to the first device;and select the at least one sub-information window from the plurality of sub-information windows of the second display based on the location and orientation of the second device in relation to the first device.
  20. The online game system of claim 20 , wherein the second data comprises data that has relational interactive data capable to utilize the location and orientation of the first device relative to the location and orientation of the second device.
  21. The online game system of claim 16 , wherein the first device comprises a gaming console.
  22. The online game system of claim 16 , wherein the second device comprises a mobile device.
  23. The online game system of claim 23 , wherein the mobile device comprises at least one of a mobile phone, a personal digital assistant, a laptop computer, or a tablet personal computer.

Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.