Patent Description:
User interfaces for platform-based gameplay (e.g., Sony PlayStation®) may include a variety of different user interfaces used to select content (e.g., a game) to play, interact with other users, or otherwise interact with the selected content or other content in different ways. The user interfaces used in digital games may also display information about the user, peers, and gameplay by the users and/or peers. Presently available user interfaces for displaying the user gameplay data may include displaying a string text and/or a specific achievement (e.g., a trophy) provided by each game for each user. Such string text may be displayed within each game and may not be viewable outside of the game.

Due to its usage in numerous aspects of digital content interaction, user interfaces can have significant impact on user experience. Such interfaces may, for example, detract from the user experience when gameplay information and statistics are not displayed or poorly displayed. Further, such interfaces may detract from the user experience when peer information and availability of peer interaction is not displayed or only displayed within each game.

There is, therefore, a need in the art for systems and methods for generating integrated interfaces for dynamic user experiences. Previously proposed arrangements are disclosed by <CIT>, <CIT> and <CIT>.

The detailed description set forth below is intended as a description of various configurations of the subject technology and is not intended to represent the only configurations in which the technology can be practiced. The detailed description includes specific details for the purpose of providing a more thorough understanding of the technology. However, it will be clear and apparent that the technology is not limited to the specific details set forth herein and may be practiced without these details. In some instances, structures and components are shown in block diagram form in order to avoid obscuring the concepts of the subject technology.

Embodiments of the present invention include systems and methods for generating an integrated interface that displays a group of available activities associated with interactive content titles, a user presence, and a peer presence on a user device. Such an integrated interface presents multiple options for participating in an activity, or viewing or interacting with a peer (e.g., based on peer presence information). User history and peer history may also be displayed on the integrated interface, thereby presenting the user with past activities in which the user or peer has previously participated. Such histories can therefore provide additional options by which the user can newly participate in a previous activity of an interactive content title or be reminded to try participating in a different activity associated with the same interactive content title. Further, peer history provides an opportunity for the user to discover a new interactive content title, as the user may view a peer history of activities within an interactive content title to which the user does not currently or previously have access or interaction. The integrated interface provides a rich user experience by identifying and presenting multiple options for the user to interact with peers, new or old interactive content titles, and opportunities for multi-user interactions.

<FIG> illustrates a network environment <NUM> in which a system for generating an integrated interface may be implemented. The network environment <NUM> may include one or more interactive content source servers <NUM> that provide interactive content (e.g., video games, interactive video, etc.), platform servers <NUM>, and one or more user devices <NUM>.

Interactive content source servers <NUM> may maintain and host interactive content titles available for play to a user device <NUM> over a communication network. Such interactive content servers <NUM> may be implemented in the cloud (e.g., one or more cloud servers). Each interactive content title may include one or more activities available within the content title. The one or more activities may be playable by a single user or by multiple users. In one example, the interactive content title is a video game title having different modes of competitive gameplay available within that game title. In another example, the interactive content title is another video game title having an interactive storyline for single user play. The interactive content source servers <NUM> may also provide user data pertaining to a hosted interactive title. For example, the user data may include a current status of the user within an interactive title and current and historical statistics related to the user and/or user interaction with one or more interactive titles.

The platform servers <NUM> may be responsible for communicating with the different interactive content source servers <NUM> in order to retrieve activity data of one or more activities available within each content title, user data, and/or peer (e.g., one or more other users) data to the user device <NUM>. Such platform servers <NUM> may be implemented on one or more cloud servers. Peer data may be stored in memory on a corresponding platform server <NUM> and/or interactive content source servers <NUM>. The platform server <NUM> may carry out instructions, for example, for constructing a set of activities available to the user based on the activity data, a user presence based on the user data, and/or a peer presence based on the peer data on user device <NUM>. The user presence and peer presence may be updated in real-time, for example, as the user progresses through an interactive title and the peer progresses through another interactive title. As such, the set of activities, user presence, and peer presence can be different each time the user accesses the user device <NUM>. The platform servers <NUM> may also carry out further instructions, for example, for tracking and displaying user progress within an interactive content title (e.g., progress of an activity, competitive match, gameplay, storyline, etc.) and/or up-to-date information or progress of a peer within the same or a different interactive title. The platform server <NUM> may also generate a user interface to be displayed on a specific user device <NUM> by which the user can view and select activities, interactive content, user data, user history, peer data, peer history, or the like.

The interactive content titles and their corresponding activities may be provided through an application programming interface (API) <NUM>, which allows various types of interactive content sources server <NUM> to communicate with different platform servers <NUM> and different user devices <NUM>. API <NUM> may be specific to the particular computer programming language, operating system, protocols, etc., of the interactive content source servers <NUM> providing the interactive content titles and user devices <NUM> receiving the same. In a network environment <NUM> that includes multiple different types of interactive content source servers <NUM> (or platform servers <NUM> or user devices <NUM>), there may likewise be a corresponding number of APIs <NUM>.

The user device <NUM> may include a plurality of different types of computing devices. For example, the user device <NUM> may include any number of different gaming consoles, mobile devices, laptops, and desktops. Such user devices <NUM> may also be configured to access data from other storage media, such as, but not limited to memory cards or disk drives as may be appropriate in the case of downloaded services. Such devices <NUM> may include standard hardware computing components such as, but not limited to network and media interfaces, non-transitory computer-readable storage (memory), and processors for executing instructions that may be stored in memory. These user devices <NUM> may also run using a variety of different operating systems (e.g., iOS, Android), applications or computing languages (e.g., C++, JavaScript). An exemplary user device <NUM> is described in detail herein with respect to <FIG>.

<FIG> is a flowchart illustrating an exemplary method <NUM> for generating an integrated interface. The method <NUM> of <FIG> may be embodied as executable instructions in a non-transitory computer readable storage medium including but not limited to a CD, DVD, or non-volatile memory such as a hard drive. The instructions of the storage medium may be executed by a processor (or processors) to cause various hardware components of a computing device hosting or otherwise accessing the storage medium to effectuate the method. The execution of the instructions may be implemented on the cloud servers (e.g., the steps identified in <FIG> are performed in the cloud). The steps identified in <FIG> (and the order thereof) are exemplary and may include various alternatives, equivalents, or derivations thereof including but not limited to the order of execution of the same.

In step <NUM>, a user dataset associated with a user, a peer dataset associated with one or more peers, and one or more activity sets are retrieved by, for example, the platform server <NUM>. The user dataset, the peer dataset, and the one or more activity sets may be stored in memory on the interactive content source servers <NUM> or the platform servers <NUM>.

The user dataset may include data related to a past activity completed (e.g., a completed competitive match, a completed task or quest, etc.) by the user. Such past activity may be re-playable by the user, as discussed below. The user dataset may also include content captured during the past activity (e.g., video, broadcast, screenshots, etc.). The user dataset may also include data related to an in-progress user session, where the user is currently participating in an activity. The user session can be paused and resumed at a later time. Such in-progress data may be continuously retrieved by the platform server <NUM> as the progress data is updated. The user dataset may also include data and statistics related to the in-progress user session (e.g., time elapsed since start of the activity, percentage of activity completed, progress efficiency, team members in competitive activity, etc.) or to a past activity (e.g., total time to complete activity, result of competitive activity, etc.).

The peer may be any other user in the interactive network, including designated friends, team members, celebrities, and other individuals. The peer dataset may include data related to a past activity completed (e.g., a completed competitive match, a completed task or quest, etc.) by the peer. Such past activity may be viewable and/or playable by the user. The peer dataset may also include content captured during the past activity (e.g., video, broadcast, screenshots, etc.). The peer dataset may also include data related to an in-progress peer session, where the peer is currently participating in an activity. Such in-progress data may be continuously retrieved by the platform server <NUM> as the progress data is updated. The peer dataset may also include data and statistics related to the in-progress peer session (e.g., time elapsed since start of the activity, percentage of activity completed, progress efficiency, team members in competitive activity, etc.) or related to a past activity (e.g., total time to complete activity, result of competitive activity, etc.).

In step <NUM>, a session is established between a user device <NUM> associated with the user and the platform server <NUM>. The session enables the platform server <NUM> to communicate to and from the user device <NUM>.

In step <NUM>, the retrieved data may be used to construct user-specific (and peer-specific) components for an integrated interface. For example, a group of interactive activities based on the one or more activity sets, a user presence based on the user dataset, and a peer presence based on the peer dataset may be constructed by the platform server <NUM>. The user presence may include a current status of the user. Such user current status may be constructed from the data related to the in-progress user session, which may be updated in real-time as the data may be retrieved continuously from the interactive content source servers <NUM>. A user history may also be constructed by the platform server <NUM>. Such user history may be constructed from the data and statistics related to the retrieved past activity data regarding the user. Such history may further combine both the user and peer histories, including data regarding head-to-head competitions, team activities, and other items in common.

The peer presence may include a current status of the peer. Such peer current status may be constructed from the data related to the in-progress peer session, which may be updated in real-time as the data may be retrieved continuously from the interactive content source servers <NUM>. The peer current status may also include whether the peer is available to chat or interactive with directly by the user. A peer history may also be constructed by the platform server <NUM>. Such peer history may be constructed from data and statistics related to past activity or activities of the peer.

In step <NUM>, the interface components-e.g., group of interactive activities, the user presence, and the peer presence-may be configured and displayed on the user device <NUM> in an integrated interface. The group of interactive activities displayed may be available to currently interact with by the user or in the future (e.g., at a predetermined time). The user may also save an activity for future interaction. The user may also invite a peer to currently join the user in an activity or to join the user in the activity at a later time. For example, the user can send an invitation to five peers who are online to join the user in a competitive match requiring six total users. The invite sends a request to the platform servers <NUM> to transmit an invitation from the user to the peer. After receiving such request, the platform servers <NUM> may retrieve data from a past activity (e.g., participants, the interactive title associated with the past activity, configuration of content, match type, match field, etc.) selected by the user. Such data from a past activity, a current activity, or a future activity may be used to create invitations for a current activity or a future activity based on the retrieved data. Such invitation is generated by the platform server <NUM> of the user and includes a link to the activity. Such invitation may be edited by the user prior to transmission of the invitation to the peer. The invitation is then transmitted from the user platform server <NUM> to the peer platform server <NUM> over a communication network. Similarly, the user can receive an invitation from the peer to join the peer in an activity chosen by the peer.

The user presence may be displayed on a peer device and may indicate to a peer whether the user is available to interact with (e.g. voice chat, direct message, etc.) or whether the user is in a user session and participating in an activity of an interactive content title available to the user. The user presence may also display whether the user is interacting with other users within the user session. For example, if the user is participating in a competitive match with three additional users against a team of four other users, the user presence may display the additional users that the user is participating in the competitive match with on the integrated interface. The user may choose to hide user presence from appearing on a peer device. For example, the user may choose to appear offline even when the user is online.

The peer presence may be displayed on the user device and may indicate to the user whether the peer is available to directly interact with by the user (e.g. voice chat, direct message, etc.) or whether the peer is in a peer session and participating in an activity of an interactive content title available to the peer. If the activity includes multi-user interactions, the user may join the peer session and interact with the peer within the activity or view the interaction of the peer in the activity. If the activity is a single-user activity, the user may join the peer session to view the interaction of the peer in the activity. Furthermore, if the interactive content title is not available to the user because the user has not yet obtained access to the interactive content title (e.g., purchased), the user may be able to view a portion of the peer participation in the activity or the user may be able to participate in an excerpt of the activity (e.g., a demo), thereby incentivizing the user to obtain access to the interactive content title. Peer presences of multiple peers of the user may be displayed, such that the user can view which peers are online or otherwise available to interact with, what activity each peer is participating in if the peer is participating in an activity, and whether the activity each peer is participating in is joinable by the user. Such presence data may provide opportunities for the user to interactive with one or more peers (e.g., friends). In some embodiments, visual indicators may be used to illustrate which peers are or are likely to be available, for how long, and for which activities.

The user history and the peer history may also be displayed on the user device <NUM>. Illustrative content regarding the user history and/or the peer history (e.g., video, broadcast, screenshots, etc.) may be viewable by the user or the peer. Such content may be stored at the platform server <NUM>. The content may also link to a portion of the activity stored at the interactive content source server <NUM>. Such link may allow the user to view the content directly in the interactive content title.

The past activity of the user history displayed on the user device <NUM> may be available for re-interaction with by the user, thereby incentivizing the user to continue interacting with the interactive title associated with the past activity. The user history may also display the statistics of the past activity. The user history may also display an amount of completion of an interactive content title completed by the user. For example, if the user has completed half of an interactive content title (e.g., completed half of the activities available in the interactive content title), "<NUM>% completed" may be displayed by a visual of the interactive content title. Such overall progress may incentivize the user to continue interacting with the interactive title to finish or complete all activities associated with the interactive content title. Further, even if the user has completed activities associated with a main storyline of an interactive content title, the user may not have completed all side activities (e.g., side quests). A progress display may show that the user has completed <NUM>% of the interactive content title and as such, may incentivize the user to continue interacting with the interactive content title until all activities are completed.

The past activity of the peer history may also be displayed on the user device. The user may be able to view statistics related to the peer's past activity, or play the past activity if the interactive content title associated with the peer's past activity is available to the user. Such peer history may provide information to the user such that the user can determine if the user wishes to interact with the peer. For example, the user may decide to interact with the peer because the peer history indicates that the peer and the user interact with the same or similar interactive content titles. If the interactive content title associated with the peer's past activity is not available to the user, the user may view an excerpt of the peer participation stored with the peer's past activity or may play an excerpt of the peer's past activity, thereby incentivizing the user to obtain access to the interactive content title associated with the peer's past activity.

As described, a mixture of currently available activities for a user to interactive with, user history, peer presence, and peer history may be displayed on an integrated interface, providing the user with multiple options and opportunities to interact with new and/or old interactive content titles and/or with peers of the user. The specific configuration of the different components (e.g., activities) within the integrated interface may be based on predetermined preferences, priorities, and conditions specified by the user. Such interface provides opportunities for the user to directly interact with multiple peers and presents available multi-user experiences to the user. The user may also view peer history and peer presence to determine if the user wants to interact with a particular peer directly or join the peer in a user or peer session. Further, such interface allows the user to send an invitation to one or more peers to join the user in participating in an activity and interacting with an interactive content title.

<FIG> is an exemplary user electronic entertainment system that may be used in launching interactive content and providing dynamic interfaces. The entertainment system <NUM> of <FIG> includes a main memory <NUM>, a central processing unit (CPU) <NUM>, vector unit <NUM>, a graphics processing unit <NUM>, an input/output (I/O) processor <NUM>, an I/O processor memory <NUM>, a peripheral interface <NUM>, a memory card <NUM>, a Universal Serial Bus (USB) interface <NUM>, and a communication network interface <NUM>. The entertainment system <NUM> further includes an operating system read-only memory (OS ROM) <NUM>, a sound processing unit <NUM>, an optical disc control unit <NUM>, and a hard disc drive <NUM>, which are connected via a bus <NUM> to the I/O processor <NUM>.

Entertainment system <NUM> may be an electronic game console. Alternatively, the entertainment system <NUM> may be implemented as a general-purpose computer, a set-top box, a hand-held game device, a tablet computing device, a virtual reality device, an augmented reality device, or a mobile computing device or phone. Entertainment systems may contain more or less operating components depending on a particular form factor, purpose, or design.

The CPU <NUM>, the vector unit <NUM>, the graphics processing unit <NUM>, and the I/O processor <NUM> of <FIG> communicate via a system bus <NUM>. Further, the CPU <NUM> of <FIG> communicates with the main memory <NUM> via a dedicated bus <NUM>, while the vector unit <NUM> and the graphics processing unit <NUM> may communicate through a dedicated bus <NUM>. The CPU <NUM> of <FIG> executes programs stored in the OS ROM <NUM> and the main memory <NUM>. The main memory <NUM> of <FIG> may contain pre-stored programs and programs transferred through the I/O Processor <NUM> from a CD-ROM, DVD-ROM, or other optical disc (not shown) using the optical disc control unit <NUM>. I/O Processor <NUM> of <FIG> may also allow for the introduction of content transferred over a wireless or other communications network (e.g., <NUM>, LTE, <NUM>, and so forth). The I/O processor <NUM> of <FIG> primarily controls data exchanges between the various devices of the entertainment system <NUM> including the CPU <NUM>, the vector unit <NUM>, the graphics processing unit <NUM>, and the peripheral interface <NUM>.

The graphics processing unit <NUM> of <FIG> executes graphics instructions received from the CPU <NUM> and the vector unit <NUM> to produce images for display on a display device (not shown). For example, the vector unit <NUM> of <FIG> may transform objects from three-dimensional coordinates to two-dimensional coordinates, and send the two-dimensional coordinates to the graphics processing unit <NUM>. Furthermore, the sound processing unit <NUM> executes instructions to produce sound signals that are outputted to an audio device such as speakers (not shown). Other devices may be connected to the entertainment system <NUM> via the USB interface <NUM>, and the communication network interface <NUM> such as wireless transceivers, which may also be embedded in the system <NUM> or as a part of some other component such as a processor.

A user of the entertainment system <NUM> of <FIG> provides instructions via the peripheral interface <NUM> to the CPU <NUM>, which allows for use of a variety of different available peripheral devices (e.g., controllers) known in the art. For example, the user may instruct the CPU <NUM> to store certain game information on the memory card <NUM> or other non-transitory computer-readable storage media or instruct a character in a game to perform some specified action.

The present invention may be implemented in an application that may be operable by a variety of end user devices. For example, an end user device may be a personal computer, a home entertainment system (e.g., Sony PlayStation2® or Sony PlayStation3® or Sony PlayStation4®), a portable gaming device (e.g., Sony PSP® or Sony Vita®), or a home entertainment system of a different albeit inferior manufacturer. The present methodologies described herein are fully intended to be operable on a variety of devices. The present invention may also be implemented with cross-title neutrality wherein an embodiment of the present system may be utilized across a variety of titles from various publishers.

The present invention may be implemented in an application that may be operable using a variety of devices. Non-transitory computer-readable storage media refer to any medium or media that participate in providing instructions to a central processing unit (CPU) for execution. Such media can take many forms, including, but not limited to, non-volatile and volatile media such as optical or magnetic disks and dynamic memory, respectively. Common forms of non-transitory computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a CD-ROM disk, digital video disk (DVD), any other optical medium, RAM, PROM, EPROM, a FLASHEPROM, and any other memory chip or cartridge.

Various forms of transmission media may be involved in carrying one or more sequences of one or more instructions to a CPU for execution. A bus carries the data to system RAM, from which a CPU retrieves and executes the instructions. The instructions received by system RAM can optionally be stored on a fixed disk either before or after execution by a CPU. Various forms of storage may likewise be implemented as well as the necessary network interfaces and network topologies to implement the same.

The foregoing detailed description of the technology has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the technology to the precise form disclosed.

Claim 1:
A computer-implemented
method (<NUM>) for generating a graphical interface, the method comprising:
retrieving (<NUM>) stored data regarding a user, at least one peer, and two or more interactive titles available to the user, wherein the two or more interactive titles include two or more interactive activities and the retrieved stored data indicates historical data of two or more of the interactive activities from at least two different interactive titles of the two or more interactive titles as having been completed by the at least one peer and the user;
establishing (<NUM>) a session with a user device associated with the user;
constructing (<NUM>) a set of interactive activities based on the retrieved stored data, wherein the constructed set of interactive activities is associated with a current presence of the at least one peer;
generating (<NUM>) a graphical interface associated with the user based on the constructed set of interactive activities, the generated graphical interface being displayed on the user device, wherein the interactive activities in the constructed set are launchable from the graphical interface upon selection at the user device; and
generating and transmitting an invitation regarding a selected one of the interactive activities to at least one selected peer, wherein generating the invitation is based on data from a past activity associated with the selected interactive activity, the data including a configuration of content associated with the interactive activities completed by the at least one peer and the user.