WO2011048546A2 - Single to multi-user synchronous application conversion - Google Patents
Single to multi-user synchronous application conversion Download PDFInfo
- Publication number
- WO2011048546A2 WO2011048546A2 PCT/IB2010/054731 IB2010054731W WO2011048546A2 WO 2011048546 A2 WO2011048546 A2 WO 2011048546A2 IB 2010054731 W IB2010054731 W IB 2010054731W WO 2011048546 A2 WO2011048546 A2 WO 2011048546A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- application
- user
- synchronous
- computer
- client devices
- Prior art date
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/63—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by the player, e.g. authoring using a level editor
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/352—Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/53—Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
- A63F13/533—Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/61—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor using advertising information
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/90—Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
- A63F13/92—Video game devices specially adapted to be hand-held while playing
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/20—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
- A63F2300/209—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform characterized by low level software layer, relating to hardware management, e.g. Operating System, Application Programming Interface
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/552—Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5593—Details of game data or player data management involving scheduling aspects
Definitions
- Figure 10 is a block diagram showing a sample integration environment, in accordance with an example embodiment.
- FIG. 2 is a block diagram showing a sample development environment 200 within which systems and methods for a single to multi-user synchronous application conversion are implemented, in accordance with an example embodiment.
- the environment 200 can include the client device 120, the synchronous multi-user server 110, and the SDK 210.
- the SDK 210 permits a rapid conversion of a single-user application into a synchronous multi-user application.
- various callback functions can be utilized by the application developer 130. For example, a function call startApplicationWithParams 212 can be used to start a game on the client device with a specific parameter/seed.
- the SDK 210 can enable the application developer 130 to add synchronous multi-user capabilities to single player applications.
- An application management console 230 can be provided to allow management of scenarios associated with the synchronous multi-user application.
- the method 900 can continue at operation 910 with the application developer 130 setting application scenarios in the application management console 230 of the synchronous multi-user server 110.
- a user connects to the synchronous multi-user server 110, he can be placed in one of the application rooms at operation 914. The user can also choose a room by viewing different application scenarios played in each room.
- FIG 11 is a diagrammatic representation of an example machine in the form of a computer system 1100, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein may be executed.
- the machine operates as a standalone device or may be connected (e.g., networked) to other machines.
- the machine may operate in the capacity of a server or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.
- the disk drive unit 1120 includes a computer-readable medium 1122 on which is stored one or more sets of instructions and data structures (e.g., instructions 1110) embodying or utilizing any one or more of the methodologies or functions described herein.
- the instructions 1110 may also reside, completely or at least partially, within the main memory 1108 and/or within the processors 1102 during execution thereof by the computer system 1100.
- the main memory 1108 and the processors 1102 may also constitute machine-readable media.
Abstract
A system for converting a single-user application into a multi-user synchronous application, in one example embodiment, comprises synchronous multi-user services to provide a Software Development Kit (SDK) including one or more function calls, which when implemented on one or more client devices allow using the single-user application as the multi-user synchronous application, to receive, upon implementation of the one or more function calls, a request to register the multi-user synchronous application and associated application parameters, register the multi-user synchronous application and the associated application parameters, and to provide a synchronous multi-user server to enable runtime operations of the multi-user synchronous application on the one or more of the client devices. The runtime operations of the multi-user synchronous application include simultaneous running of an application algorithm on the one or more client devices. The system can further comprise displaying progress of one or more users of the multi-user synchronous application on the respective one or more client devices during the simultaneous running of the multi-user synchronous application and making results associated with the multi-user synchronous application visible on the one or more users upon conclusion of the multi-user synchronous application.
Description
Description
Title of Invention: SINGLE TO MULTI-USER SYNCHRONOUS
APPLICATION CONVERSION
Field
[1] This application relates generally to data processing and more specifically to
computer-implemented systems and methods for a single to multi-user synchronous application conversion.
Background
[2] A single-user application (e.g., a single-user video game) is an application where input from only one user is expected throughout the course of the use session. The term single-user application implies that the application can only be used by one person, while single-user mode typically refers to a single-user option in a multi-user application. Single-user applications are very common but would be more enjoyable if they could be converted for use by more than one user at a time. However, no simple mechanism by which a single-user application can be converted into a synchronous multi-user application is available.
Summary
[3] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
[4] In an example, a computer- implemented system for converting a single -user application into a multi-user synchronous application comprises synchronous multi-user services to provide, a Software Development Kit (SDK) including one or more function calls, which, when implemented on one or more client devices, allow playing of the single-user application as the multi-user synchronous application receives, upon implementation of the one or more function calls, a request to register the multi-user synchronous application and associated application parameters, registers the multi-user synchronous application and the associated application parameters, and provides a synchronous multi-user server to enable runtime operations of the multi-user synchronous application on the one or more client devices.
[5] In an example, the synchronous multi-user server includes an application
management console. In an example, the application management console is to enable an authorized user to perform one or more of the following actions: set the application parameters; modify the application parameters; define a winner of the multi-user syn-
chronous application; interrupt the multi-user synchronous application on the one or more client devices participating in the multi-user synchronous application; set an application robot; view data related to users associated with the one or more client devices; view traffic analytics associated with the multi-user synchronous application; and place advertisements.
[6] In an example, the application robot is a virtual representation of the one or more client devices. In an example, the advertisements enable users associated with the one or more client devices to view one or more promotions associated with a further multiuser synchronous application while using the multi-user synchronous application. In an example, the application parameters include one or more scenarios associated with the multi-user synchronous application.
[7] In an example, the synchronous multi-user server includes an application room
engine to run the multi-user synchronous application substantially simultaneously on the one or more devices participating in the multi-user synchronous application and to determine the winner. In an example, the one or more client devices participating in the multi-user synchronous application are to run the same version of the multi-user synchronous application, the same scenario of the multi-user synchronous application, and the same application algorithm of the multi-user synchronous application.
[8] In an example, the one or more function calls are to perform one or more of the
following: connect the one or more client devices to the synchronous multi-user server upon loading of the multi-user synchronous application; inform the synchronous multiuser server that the one or more client devices have completed the application; notify the synchronous multi-user server that the multi-user synchronous application is to be interrupted; and determine a score associated with the multi-user synchronous application. In an example, the synchronous multi-user server is configured to support one multi-user synchronous application. In an example, the synchronous multi-user server is configured to support one or more multi-user synchronous applications.
[9] In further examples, the above methods steps are stored on a machine-readable
medium comprising instructions, which, when implemented by one or more
processors, perform the steps. In yet further examples, subsystems, or devices can be adapted to perform the recited steps. Other features, examples, and embodiments are described below.
Description of Drawings
[10] Example embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
[11] Figure 1 is a block diagram showing a sample synchronous multi-user server environment within which systems and methods for a single to multi-user synchronous
application conversion are implemented, in accordance with an example embodiment;
[12] Figure 2 is a block diagram showing a sample development environment within which systems and methods for a single to multi-user synchronous application conversion are implemented, in accordance with an example embodiment;
[13] Figure 3 is a block diagram showing a sample synchronous multi-user server, in accordance with an example embodiment;
[14] Figure 4 is a block diagram showing multi-user scenario parameters, in accordance with an example embodiment;
[15] Figure 5 is a block diagram showing a sample usage of a synchronous multi-user library for a single to multi-user synchronous application conversion, in accordance with an example embodiment;
[16] Figure 6 is a block diagram showing sample synchronous multi-user services, in accordance with an example embodiment;
[17] Figure 7 is a block diagram showing a sample use of a converted multi-user synchronous application within a client device, in accordance with an example embodiment;
[18] Figure 8 is a flow chart showing a method for a single to multi-user synchronous application conversion, in accordance with an example embodiment;
[19] Figure 9 is a flow chart showing a method for a single to multi-user synchronous application conversion and use, in accordance with an example embodiment;
[20] Figure 10 is a block diagram showing a sample integration environment, in accordance with an example embodiment; and
[21] Figure 11 is a diagrammatic representation of an example machine in the form of a computer system within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein is executed.
Detailed Description
[22] Example systems and methods for a single to multi-user synchronous application conversion are described. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of example embodiments. It will be evident, however, to one skilled in the art, that the present invention may be practiced without these specific details.
[23] The instant disclosure is related to systems and methods for a single to multi-user synchronous application conversion. In the instant disclosure, a game can be used as an example application, and terms "game" and "application" are used interchangeably. It will be understood, however, that the invention is not limited to games.
[24] In one example embodiment, a method for a single to multi-user synchronous application conversion can commence with providing an SDK to an application developer. The SDK can include functions allowing the application developer to
convert a single-user application into a synchronous multi-user application. Furthermore, a synchronous multi-user server can be provided to run the application (e.g., a game) simultaneously on multiple client devices.
[25] Using the SDK, a developer can implement a function call to connect a client device to the synchronous multi-user server upon application load. A function call starting the application with predefined application parameters can also be implemented. These application parameters can be predefined by the developer in many different application scenarios. For example, after the game of "Tetris" is played for one minute by all participating players, the scores can be compared. In other examples, players can play at a specific skill level, play until the last player remains, or play until the first player completes a certain level.
[26] Another function call can inform the synchronous multi-user server that the user has completed the application. Yet another function call can be implemented to notify the synchronous multi-user server that the application should be interrupted and the score submitted. Once the above function calls are implemented, the developer can send the updated application to users and the synchronous multi-user server can be ready to serve the application with new multi-user features.
[27] After submitting, the application having been submitted to synchronous multi-user services, an application operator can get access to application usage analytics, user data, and an application management console. Using the application management console, the application operator can change application scenarios and add new ones. Furthermore, the application operator can enable application robots that act as live users when there are no live users in an application room. The application robots can permit the application operators to enable application robots for the synchronous multiuser application that look like other players when there are no live players.
[28] In some example embodiments, instead of using a preexisting application, the application developer can build his own multi-user synchronous application. For this application, the developer can implement server extensions and make them reside within the synchronous multi-user services. Besides multi-user and social functions, the SDK can allow the application developer to connect his applications to one application network.
[29] Application users can be provided with the ability to see other application
promotions from inside the application shell. Additionally, the synchronous multi-user application's start and end function calls can be customized to show all application offerings on the application network. On the backend, the developer can be provided with the ability to see the unified users' traffic and user data across all applications in the application network.
[30] Figure 1 is a block diagram showing sample synchronous multi-user server en-
vironment 100 within which systems and methods for a single to multi-user synchronous application conversion can be implemented, in accordance with an example embodiment. As shown in Figure 1, the sample synchronous multi-user server environment 100 can comprise a synchronous multi-user server 110.
[31] The synchronous multi-user server 110 can provide runtime support to synchronous multi-user applications. The synchronous multi-user server 110 can be configured to run any synchronous multi-user application implemented by a conversion process described herein, a predetermined collection of applications, or as a dedicated server, which supports only one type of synchronous multi-user application. The synchronous multi-user server 110 is described in more detail below with reference to Figure 3.
[32] An application developer 130 is a software developer (a business or an individual) who creates one or more single-user applications and utilizes functionalities provided by the synchronous multi-user server 110 via a synchronous multi-user library 124 to convert a single -user application into a multi-user synchronous application. The application developer 130 can also be involved in publishing of the applications he creates. In some example embodiments, the application developer 130 is not the creator of the single-user application to be converted into the multi-user synchronous application. Instead, the application developer 130 is engaged by the owners or operators of the single -user application to convert the single-user application into a multi-user synchronous application.
[33] The sample synchronous multi-user server environment 100 can further include a client device 120. The client device 120 is any device on which a synchronous multiuser application can be used by an application user, such as, for example, a mobile telephone or other handset. Other example client devices can have a mere browser or more advanced PC-like functionality which can run complete operating system software and provide a standardized interface and platform for the application developer 130.
[34] In some example embodiments, the synchronous multi-user application can be
played simultaneously on a number of client devices 120 and each client device can run the same version of the synchronous multi-user application, the same scenario of the synchronous multi-user application, and the same algorithm associated with the synchronous multi-user application. Each user can use the synchronous multi-user application independently on his respective client device 120 without having to wait for another user's action. If the synchronous multi-user application is a game, a winner of the round of the game can be determined by the synchronous multi-user server 110, which receives results of the game from the client devices 120.
[35] Figure 2 is a block diagram showing a sample development environment 200 within which systems and methods for a single to multi-user synchronous application
conversion are implemented, in accordance with an example embodiment. The environment 200 can include the client device 120, the synchronous multi-user server 110, and the SDK 210. The SDK 210 permits a rapid conversion of a single-user application into a synchronous multi-user application. To integrate an existing single-user application, various callback functions can be utilized by the application developer 130. For example, a function call startApplicationWithParams 212 can be used to start a game on the client device with a specific parameter/seed.
[36] The application developer 130 can set multi-user scenario parameters 240 to define scenarios of the synchronous multi-user application when an application room engine 220 starts the synchronous multi-user application. A function call startApplication- WithParameters 212 can be provided in the SDK 210 to set the application parameters on start. The multi-user scenario parameters 240 can include many different scenarios for the synchronous multi-user application. For example, the game of "Tetris" can be played for 1 minute by all players and then their respective scores can be compared, played at a specific level of difficulty, played until the last player remains, or played until the first player finishes a level.
[37] A finishApplication 216 can notify the application room engine 220 that a user associated with the client device 120 has finished the synchronous multi-user application. An optional function call interruptApplication 214 can be provided by the SDK 210 and implemented by the application developer 130 to notify the application room engine 220 that the synchronous multi-user application currently being played on the client device 120 is to be interrupted and the score submitted to the synchronous multiuser server 110. The multi-user scenario parameters are discussed in greater detail below with reference to Figure 4.
[38] Thus, the SDK 210 can enable the application developer 130 to add synchronous multi-user capabilities to single player applications. An application management console 230 can be provided to allow management of scenarios associated with the synchronous multi-user application.
[39] Figure 3 is a block diagram showing the sample synchronous multi-user server 110, in accordance with an example embodiment. The synchronous multi-user server 110 can include the application management panel 230. The application room engine 220 can further include a start application 222, a finish application 224, an optional interrupt application 226, and a receive scores send result 228.
[40] When a user starts the synchronous multi-user application, the client device 120 can connect to the application room engine 220 of the synchronous multi-user server 110 and the user placed in an application room (not shown) run by the application room engine 220. In some example embodiments, the user is able to select an application room based on the application scenario of a particular room.
[41] When a predetermined minimum number of users, including robots, needed to start the synchronous multi-user application have joined an application room, the application room engine 220 starts the synchronous multi-user application for all users in this application room and passes the multi-user scenario parameters 240 to all client devices 120 running the synchronous multi-user application. The synchronous multiuser server 110 can also read the multi-user scenario parameters 240 and define the criteria of finishing the synchronous multi-user application.
[42] In some example embodiments, there can be no predefined multi-user scenario parameters 240 and the synchronous multi-user server 110 can start the synchronous multi-user application using default startApplication criteria 242 and finish the synchronous multi-user application using a default endApplication criteria 246. The default criteria can be set in the multi-user scenario parameters 240. Besides the default criteria, the application developer 130 can set many scenarios for the synchronous multi-user application.
[43] Some of the scenarios do not require any support of the client device 120. Example scenarios that do not require any support from the client device 120 include a minimum number of players for the synchronous multi-user application. Some other scenarios may require support of the client device 120. For example, a random algorithm seed can be needed to run the same session of the synchronous multi-user application on client devices 120.
[44] When the application room engine 220 determines that the synchronous multi-user application needs to be ended, it can send an interruptApplication 226 to all client devices 120 participating in the synchronous multi-user application. Thereafter, the application room engine 220 can define the winner according to the application scenario settings specified in the application parameters 248 and send the results of the synchronous multi-user application to all client devices 120 in the application room.
[45] It will be noted that the process of conversion of a single-user application to a multiuser synchronous application can include passing of the multi-user scenario parameters 240 to the application client associated with the client device 120. The multi-user scenario parameters 240 that define an application scenario can be set on the synchronous multi-user server 110 via the application management console 230. This provides the application operator with an ability to add and/or edit the multi-user scenario parameters 240 when the synchronous multi-user application is deployed to the synchronous multi-user server 110.
[46] Figure 4 is a block diagram showing multi-user scenario parameters 240, in accordance with an example embodiment. In some example embodiments, after the synchronous multi-user application is integrated, the application developer 130 can register the synchronous multi-user application to the synchronous multi-user server
110 and define one or more scenarios for the synchronous multi-user application by setting the multi-user scenario parameters 240. Thereafter, the synchronous multi-user server 110 can pass the information associated with the multi-user scenario parameters 240 to the clients of the synchronous multi-user application installed on the client devices 120.
[47] Application parameters 248 can be used to set the minimum number of users needed to start the synchronous multi-user application. JoinApplication Rules 244 can be used to specify whether the application scenario is open or closed, i.e., to define whether other players can join the application while it is running. The JoinApplication Rules 244 can also be used to define the maximum time after the start of the synchronous multi-user application within which other users can join the synchronous multi-user application. After the maximum time to join has elapsed, the synchronous multi-user application is played in a closed scenario.
[48] EndApplication Criteria 246 can be used to set the end-of -round criteria for the synchronous multi-user application. The end-of-round criteria can be utilized to specify whether the synchronous multi-user application is played as a timed race, until the first player finishes, or until the last player remains in the synchronous multi-user application 160. A wait-for-others command can be used to interrupt all clients, once the winner is defined. Thus, the multi-user scenario parameters 240 can be used by the synchronous multi-user server 110 to start and run the synchronous multi-user application, and to configure the same application scenario on all client devices 120. Figure 5 is a block diagram 500 showing a sample usage of a synchronous multi-user library for a single to multi-user synchronous application conversion, in accordance with an example embodiment.
[49] Figure 6 is a block diagram 600 showing sample synchronous multi-user services, in accordance with an example embodiment. Synchronous multi-user services 120 can provide dynamically scalable and virtualized multi-user synchronous application implementation resources as a service. The synchronous multi-user services 120 can utilize a computing paradigm allowing computing resources and underlying technical infrastructure to be abstracted away from the application developer 130. The application developer 130 need not have knowledge of, expertise in, or control over the technology infrastructure that supports them. Computing services offered by the synchronous multi-user services 120 can be accessed from, for example, a web browser, while the software and data can be stored at a user's DB 640 and an application DB 650 associated with the synchronous multi-user services 120.
[50] Despite the application room engine 220 being shown within the context of the synchronous multi-user services 120, it will understood that the synchronous multi-user services 120 and the synchronous multi-user server 110 can reside at the different
locations and/or provide their respective functionalities as a single physical or logical unit.
[51] The application management console 230 can be utilized by the application operator to manage the synchronous multi-user application after it has been submitted to the synchronous multi-user server 110. The application management console 230 can provide a user interface to permit the application operators and/or the application developer 130 to change application scenarios and add new ones. As shown in Figure 6, developer services 620 can include registration 622 and analytics 624 to provide the application operator with applications traffic analytics and user reports.
[52] Figure 7 is a block diagram showing a sample usage of a converted multi-user synchronous application 700, in accordance with an example embodiment. A sample scenario can commence in Figure 6 with a user clicking on a multi-user button 706 within the main menu to select the multi-user version of the application. Once on the multi-user matchmaking page, the user can select a room by clicking on a select room button 710. Thereafter, the user can be automatically matched to an application room 712 based on, for example, geographical location, Internet Protocol (IP) address, or a social network. Thus, the user is placed in the application room 710 and can wait for the start of the synchronous multi-user application by watching a start button 714. Thereafter, the synchronous multi-user application is run with the same parameters for all players.
[53] Once the synchronous multi-user application is finished, the user can wait for the results by watching waiting results 720. Once the results are shown at 722, the user can wait and start another round by clicking on a start button 726. In some example embodiments, featured promotions can be presented to the users. For example, the top five applications, rated by predetermined criteria, can be presented along with information related to the number of the players, whether or not the user's friends liked the applications, and the prices of the applications.
[54] Figure 8 is a flow chart showing a method 800 for a single to multi-user synchronous application conversion, in accordance with an example embodiment. The method 800 may be performed by processing logic that may comprise hardware (e.g., dedicated logic, programmable logic, microcode, etc.), software (such as that which is run on a general-purpose computer system or a dedicated machine), or a combination of both. In one example embodiment, the processing logic resides at the synchronous multiuser server 110 illustrated in Figure 3.
[55] The method 800 can commence at operation 802 with the synchronous multi-user services 120 providing, to the application developer 130, the SDK 210 including the function calls 212, 214, 216, and 218, which when implemented on one or more client devices 120, allow using the existing single-user application as a multi-user syn-
chronous application.
[56] The function calls 212, 214, 216, and 218 can permit connecting the one or more client devices 120 to the synchronous multi-user server 110 upon loading of the multiuser synchronous application, informing the synchronous multi-user server 110 that the one or more client devices 120 have completed the multi-user synchronous application 160, notifying the synchronous multi-user server 110 that the multi-user synchronous application 160 is to be interrupted, and determining a score associated with the multiuser synchronous application.
[57] Upon implementation of the function calls 212, 214, 216, and 218, the synchronous multi-user server 110 can receive a request to register the multi-user synchronous application and the associated multi-user scenario parameters 240 at operation 804. The multi-user scenario parameters 240 can include one or more scenarios associated with the multi-user synchronous application. The synchronous multi-user server 110 can include the application room engine 220 to run the multi-user synchronous application substantially simultaneously on the one or more devices 120 and to determine the winner of the multi-user synchronous application based on the multi-user scenario parameters 240.
[58] Thereafter, the synchronous multi-user server 110 can register the multi-user synchronous application and the associated multi-user scenario parameters 240 to the synchronous multi-user server 110 at operation 806. The synchronous multi-user server 110 can be provided a means to enable runtime operations of the multi-user synchronous application on the one or more client devices 120 at operation 808. The method 800 can further comprise providing the application management console 230 to an authorized user at operation 810.
[59] The application management console 230 can enable the authorized user to set the scenario parameters 240, modify the scenario parameters 240, define a winner of the multi-user synchronous application, interrupt the multi-user synchronous application on the one or more client devices 120, set an application robot as a virtual representation of the one or more client devices 120, view data related to users associated with the one or more client devices 120, view traffic analytics associated with the multi-user synchronous application, and place advertisements. The advertisements can be related to a further multi-user synchronous application.
[60] The one or more of the client devices 120 participating in the multi-user synchronous application can be programmed to run the same version of the multi-user synchronous application, the same scenario the multi-user synchronous application, and the same application algorithm associated with the multi-user synchronous application. The synchronous multi-user server 110 can be configured to run one multi-user synchronous application on a dedicated application server or one or more multi-user synchronous
applications.
[61] Figure 9 is a flow chart showing a method 900 for a single to multi-user synchronous application conversion and use, in accordance with an example embodiment. The method 900 may be performed by processing logic that may comprise hardware (e.g., dedicated logic, programmable logic, microcode, etc.), software (such as that which is run on a general-purpose computer system or a dedicated machine), or a combination of both. In one example embodiment, the processing logic resides at the synchronous multi-user server 110 illustrated in Figure 3. The method 900 can commence with adding a synchronous multi-user to user's single player applications at operation 902. At operation 904, the multi-user synchronous application can be integrated with the SDK 210. Thereafter, at operation 906, the multi-user synchronous application can be registered to the synchronous multi-user server 110. At operation 908, the application operators can define multiple application scenarios by setting the application parameters 248. It will be noted that the method 900 may or may not be concerned with the development of a new application with multi-user components. The application developer 130 can utilize a preexisting single-user application (development finished, production ready, live) and add synchronous multi-user capabilities to this application by integrating it with the Application Programming Interface (API) of the synchronous multi-user server 110. The application developer 130 can also build a new single-user application and add synchronous multi-user capabilities to this new application.
[62] The method 900 can continue at operation 910 with the application developer 130 setting application scenarios in the application management console 230 of the synchronous multi-user server 110. When a user connects to the synchronous multi-user server 110, he can be placed in one of the application rooms at operation 914. The user can also choose a room by viewing different application scenarios played in each room.
[63] At operation 916, the multi-user synchronous application can wait for a minimum number of players to join the application room. When the minimum number of players needed to start the multi-user synchronous application has joined, the synchronous multi-user server 110 can start a multi-user synchronous application for all players in the room. When the application function is called by the synchronous multi-user server 110 on all client devices and the players are ready to play the multi-user synchronous application, the synchronous multi-user server 110 passes the multi-user scenario parameters 240 to all application clients at operations 918.
[64] At operation 922, the multi-user synchronous application is started on the second device. Based on the multi-user scenario parameters 240 passed at operation 918, the multi-user synchronous application is finished on both devices at operations 926 and 928 respectively.
[65] If there are no multi-user scenario parameters 240 found for the multi-user synchronous application, the synchronous multi-user server 110 can run the multi-user synchronous application using a default start application criteria and default criteria to finish the multi-user synchronous application. The default criteria can be set in the application management console 230. At operation 930, the winners are defined and, at operations 932 and 934, the winners are shown on all devices.
[66] Figure 10 is a block diagram showing a sample integration environment 1000, in accordance with an example embodiment. As shown in Figure 10, the integration environment 1000 can include an integration service 1010 (e.g., a website) and an automated integrator 1020. The integration service 1010 can be utilized to receive single-user application computer code (source code or binary code) associated with the single-user application. The single-user application computer code can be sent to the automated integrator 1020. The automated integrator 1020 can automatically integrate the single-user computer code with multi-player API provided by the SDK 210. The resulting multi-user computer code can be sent back to the developer 130.
[67] In some example embodiments, the resulting multi-user computer code can be immediately accepted by the synchronous multi-user server 110 to run the application room engine 220. In some example embodiments, the integration service 1010 and the automated integrator 1020 can run in an interactive mode 1030. In the interactive mode 1030, the automated integrator 1020 can automatically analyze the computer code and suggest one or more options for a manual selection by the application developer 130. Based on the manual selection made by the application developer 130 through the integration service 1010, the automated integrator 1020 can automatically integrate the one or more function calls to produce the integrated computer code. The resulting multi-user computer code can be sent back to the developer 130 or be immediately accepted by the synchronous multi-user server 110 to run the application room engine 220.
[68] Figure 11 is a diagrammatic representation of an example machine in the form of a computer system 1100, within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein may be executed. In various example embodiments, the machine operates as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine may operate in the capacity of a server or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a portable music player (e.g., a portable hard drive audio device such as an Moving Picture Experts Group Audio Layer 3 (MP3) player), a web appliance, a network router, switch or
bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term "machine" shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
[69] The example computer system 1100 includes a processor or multiple processors 1102 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), and a main memory 1108 and static memory 1114, which communicate with each other via a bus 1128. The computer system 1100 may further include a video display unit 1106 (e.g., a liquid crystal display (LCD)). The computer system 1100 may also include an alphanumeric input device 1112 (e.g., a keyboard), a cursor control device 1116 (e.g., a mouse), a voice recognition or biometric verification unit, a disk drive unit 1120, a signal generation device 1126 (e.g., a speaker) and a network interface device 1118. The computer system 1100 may further include a data encryption module (not shown) to encrypt data.
[70] The disk drive unit 1120 includes a computer-readable medium 1122 on which is stored one or more sets of instructions and data structures (e.g., instructions 1110) embodying or utilizing any one or more of the methodologies or functions described herein. The instructions 1110 may also reside, completely or at least partially, within the main memory 1108 and/or within the processors 1102 during execution thereof by the computer system 1100. The main memory 1108 and the processors 1102 may also constitute machine-readable media.
[71] The instructions 1110 may further be transmitted or received over a network 1124 via the network interface device 1118 utilizing any one of a number of well-known transfer protocols (e.g., Hyper Text Transfer Protocol (HTTP)).
[72] While the computer-readable medium 1122 is shown in an example embodiment to be a single medium, the term "computer-readable medium" should be taken to include a single medium or multiple media (e.g., a centralized or distributed database and/or associated caches and servers) that store the one or more sets of instructions. The term "computer-readable medium" shall also be taken to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by the machine and that causes the machine to perform any one or more of the methodologies of the present application, or that is capable of storing, encoding, or carrying data structures utilized by or associated with such a set of instructions. The term "computer-readable medium" shall accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media, and carrier wave signals. Such media may also include, without limitation, hard disks, floppy disks, flash memory cards, digital video disks, random access memory (RAMs), read only memory (ROMs), and the like.
[73] The example embodiments described herein may be implemented in an operating environment comprising software installed on a computer, in hardware, or in a combination of software and hardware.
[74] Thus, methods and systems for conversion of a single-user application to a synchronous multi-user application have been described. Although embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the system and method described herein. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Claims
Claims
A computer-implemented method for converting a single -user application into a multi-user synchronous application, the method comprising:
providing a Software Development Kit (SDK) including one or more function calls, which when implemented on one or more client devices, allows using the single-user application as the multi-user synchronous application;
upon implementation of the one or more function calls, receiving a request to register the multi-user synchronous application and associated application parameters;
registering the multi-user synchronous application and the associated application parameters; and
providing a multi-user synchronous server to enable runtime operations of the multi-user synchronous application on the one or more client devices.
The computer- implemented method of claim 1, wherein the implementation comprises receiving first computer code associated with the single-user application and automatically integrating the one or more function calls to produce second computer code, the second computer code being associated with the multi-user synchronous application. The computer-implemented method of claim 2, wherein the computer code is selected from one or more of the following: source code and binary code.
The computer- implemented method of claim 3, further comprising running the implementation in an interactive mode, the interactive mode including automatically analyzing the computer code, suggesting one or more option for a manual selection by an application developer, and based on the manual selection, automatically integrating the one or more function calls to produce the second computer code.
The computer- implemented method of claim 1, wherein the runtime operations of the multi-user synchronous application include simultaneous running of an application algorithm on the one or more client devices.
The computer- implemented method of claim 5, further comprising displaying progress of one or more opponents on the one or more client devices during the simultaneous running of the multi-user synchronous
application and making results associated with the multi-user synchronous application visible on the one or more client devices upon conclusion of the multi-user synchronous application.
[Claim 7] A computer-implemented system for converting a single-user application into a multi-user synchronous application, the system comprising:
at least one subsystem to provide a Software Development Kit (SDK) including one or more function calls, which when implemented on one or more client devices allow using of the single-user application as the multi-user synchronous application;
at least one subsystem to receive, upon implementation of the one or more function calls, a request to register the multi-user synchronous application and associated application parameters;
at least one subsystem to register the multi-user synchronous application and the associated application parameters; and
at least one subsystem to provide a synchronous multi-user server to enable runtime operations of the multi-user synchronous application on the one or more client devices.
[Claim 8] The computer-implemented system of claim 7, further comprising an automated integrator to receive first computer code associated with the single-user application and to automatically integrate the one or more function calls, thereby producing second computer code, the second computer code being associated with the multi-user synchronous application.
[Claim 9] The computer- implemented system of claim 8, further comprising an integration service to receive the first computer code and, upon the integration, make the second computer code available for the runtime operations of the multi-user synchronous application.
[Claim 10] The computer-implemented system of claim 9, wherein the automated integrator is to perform further following operations:
run the implementation in an interactive mode, the interactive mode including automatically analyzing the computer code;
suggest one or more option for a manual selection by an application developer;
based on the manual selection, to automatically integrate the one or more function calls to produce the second computer code.
[Claim 11] The computer- implemented system of claim 7, wherein the synchronous multi-user server includes an application management
console.
The computer- implemented system of claim 7, wherein the application management console is to enable an authorized user to perform one or more of the following actions: set the application parameters, modify the application parameters, define a winner of the multi-user synchronous application, interrupt the multi-user synchronous application on the one or more client devices participating in the multi-user synchronous application, set an application robot, view data related to users associated with the one or more client devices, view traffic analytics associated with the multi-user synchronous application, and place advertisements.
The computer- implemented system of claim 12, wherein the application parameters are used by the synchronous multi-user server to define start, join and finish options of the multi-user synchronous application.
The computer- implemented system of claim 12, wherein the application robot is a virtual representation of the one or more client devices.
The computer- implemented system of claim 12, wherein the application parameters include one or more scenarios associated with the multi-user synchronous application.
The computer- implemented system of claim 7, further comprising an application room engine to run the multi-user synchronous application substantially simultaneously on the one or more devices participating in the multi-user synchronous application and to determine the winner. The computer- implemented system of claim 16, wherein the one or more function calls are to perform one or more of the following:
connect the one or more client devices to the application room engine upon loading of the multi-user synchronous application, inform the application room engine that the one or more client devices have completed the application, notify the application room engine that the multi-user synchronous application is to be interrupted, and to determine a score associated with the multi-user synchronous application.
The computer- implemented system of claim 16, wherein the application room engine is configured to support one multi-user synchronous application.
The computer- implemented method of claim 16, wherein the ap-
plication room engine is configured to support one or more of multiuser synchronous applications.
[Claim 20] A machine-readable medium comprising instructions for converting a single-user application into a multi-user synchronous application, which when implemented by one or more processors, performs the following operations:
provide a Software Development Kit (SDK) including one or more function calls, which when implemented on one or more of client devices allow playing of the single-user application as the multi-user synchronous application;
upon implementation of the one or more function calls, receive a request to register the multi-user synchronous application and associated application parameters;
register the multi-user synchronous application and the associated application parameters; and
provide a synchronous multi-user server to enable runtime operations of the multi-user synchronous application on the one or more client devices.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US25326009P | 2009-10-20 | 2009-10-20 | |
US61/253,260 | 2009-10-20 | ||
US12/616,141 US8556713B2 (en) | 2009-10-20 | 2009-11-11 | Single to multi-user synchronous application conversion |
US61/616,141 | 2009-11-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2011048546A2 true WO2011048546A2 (en) | 2011-04-28 |
WO2011048546A3 WO2011048546A3 (en) | 2011-10-27 |
Family
ID=43879713
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2010/054731 WO2011048546A2 (en) | 2009-10-20 | 2010-10-19 | Single to multi-user synchronous application conversion |
PCT/IB2010/054734 WO2011048549A2 (en) | 2009-10-20 | 2010-10-19 | Dynamic assignment of rights |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2010/054734 WO2011048549A2 (en) | 2009-10-20 | 2010-10-19 | Dynamic assignment of rights |
Country Status (2)
Country | Link |
---|---|
US (2) | US8556713B2 (en) |
WO (2) | WO2011048546A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017219488A1 (en) * | 2016-06-23 | 2017-12-28 | 中兴通讯股份有限公司 | Method and apparatus for application to receive information |
US10356214B2 (en) * | 2017-03-29 | 2019-07-16 | Ca, Inc. | Composing monolithic applications based on multi-container applications |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG117571A1 (en) * | 2004-05-11 | 2005-12-29 | Ebs Group Ltd | Price display in an anonymous trading system |
US8788655B2 (en) * | 2008-12-19 | 2014-07-22 | Openpeak Inc. | Systems for accepting and approving applications and methods of operation of same |
US9390578B2 (en) | 2010-01-08 | 2016-07-12 | Ami Entertainment Network, Llc | Multi-touchscreen module for amusement device |
US8118680B2 (en) * | 2010-01-08 | 2012-02-21 | Ami Entertainment Network, Inc. | Multi-touchscreen module for amusement device |
US8589481B2 (en) | 2011-09-14 | 2013-11-19 | Microsoft Corporation | Multi tenant access to applications |
US8635152B2 (en) * | 2011-09-14 | 2014-01-21 | Microsoft Corporation | Multi tenancy for single tenancy applications |
US9195840B2 (en) | 2012-04-23 | 2015-11-24 | Google Inc. | Application-specific file type generation and use |
US9176720B1 (en) | 2012-04-23 | 2015-11-03 | Google Inc. | Installation of third-party web applications into a container |
US9317709B2 (en) | 2012-06-26 | 2016-04-19 | Google Inc. | System and method for detecting and integrating with native applications enabled for web-based storage |
US9430578B2 (en) | 2013-03-15 | 2016-08-30 | Google Inc. | System and method for anchoring third party metadata in a document |
WO2014160934A1 (en) | 2013-03-28 | 2014-10-02 | Google Inc. | System and method to store third-party metadata in a cloud storage system |
US9836549B2 (en) * | 2013-05-12 | 2017-12-05 | Sap Se | Collaboration adapter to exploit single-user web applications for collaborative work |
US10303531B2 (en) | 2014-07-28 | 2019-05-28 | Red Hat, Inc. | Console application through web service |
US10118099B2 (en) * | 2014-12-16 | 2018-11-06 | Activision Publishing, Inc. | System and method for transparently styling non-player characters in a multiplayer video game |
US10083323B1 (en) | 2014-12-31 | 2018-09-25 | Wells Fargo Bank, N.A. | Strategy based feature disablement |
US9985999B1 (en) * | 2015-02-02 | 2018-05-29 | Amazon Technologies, Inc. | Changing an application between a single-user session and a multi-user session |
US10315113B2 (en) | 2015-05-14 | 2019-06-11 | Activision Publishing, Inc. | System and method for simulating gameplay of nonplayer characters distributed across networked end user devices |
US10715584B2 (en) | 2016-06-28 | 2020-07-14 | Microsoft Technology Licensing, Llc | Multiuser application platform |
US10765948B2 (en) | 2017-12-22 | 2020-09-08 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
US11240247B2 (en) * | 2018-07-27 | 2022-02-01 | Microsoft Technology Licensing, Llc | Multi-user computing device configured for executing applications in multiple user contexts simultaneously |
JP6743102B2 (en) * | 2018-09-06 | 2020-08-19 | 株式会社アグニ・フレア | Game program, recording medium, and game control method |
JP7211039B2 (en) * | 2018-11-29 | 2023-01-24 | 株式会社リコー | Information processing device, information processing system, electronic blackboard device, control method, and program |
US11679330B2 (en) | 2018-12-18 | 2023-06-20 | Activision Publishing, Inc. | Systems and methods for generating improved non-player characters |
US11712627B2 (en) | 2019-11-08 | 2023-08-01 | Activision Publishing, Inc. | System and method for providing conditional access to virtual gaming items |
US11524234B2 (en) | 2020-08-18 | 2022-12-13 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically modified fields of view |
US11351459B2 (en) | 2020-08-18 | 2022-06-07 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values |
US11857882B1 (en) * | 2022-06-29 | 2024-01-02 | Superplay Ltd | Altering computer game tiles having multiple matchable ends |
US20240001231A1 (en) * | 2022-06-29 | 2024-01-04 | Superplay Ltd | Altering computer game tiles having multiple matchable ends |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6684259B1 (en) * | 1995-10-11 | 2004-01-27 | Citrix Systems, Inc. | Method for providing user global object name space in a multi-user operating system |
US6935960B2 (en) * | 2000-10-27 | 2005-08-30 | Terraplay Systems Ab | Server for mapping application names to tag values in distributed multi-user application |
US20070260675A1 (en) * | 2006-05-08 | 2007-11-08 | Forlines Clifton L | Method and system for adapting a single-client, single-user application to a multi-user, multi-client environment |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4998199A (en) | 1987-10-02 | 1991-03-05 | Namco Ltd. | Game machine system with machine grouping feature |
US5971849A (en) | 1997-04-28 | 1999-10-26 | Falciglia; Sal | Computer-based system and method for playing a poker-like game |
ZA977451B (en) | 1997-06-30 | 1999-05-19 | Mandiro Trading Ltd | Multiplayer interactive video gaming device |
US20020026327A1 (en) * | 2000-08-24 | 2002-02-28 | Kothari Satyen V. | Channel content management |
US20030177187A1 (en) * | 2000-11-27 | 2003-09-18 | Butterfly.Net. Inc. | Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications |
US20030190960A1 (en) | 2002-04-04 | 2003-10-09 | Eron Jokipii | Method and system for providing access to and administering online gaming leagues and tournaments |
US20030217135A1 (en) * | 2002-05-17 | 2003-11-20 | Masayuki Chatani | Dynamic player management |
AU2003301482A1 (en) * | 2002-10-16 | 2004-05-04 | Rocksteady Networks, Inc. | System and method for dynamic bandwidth provisioning |
US7568217B1 (en) * | 2003-03-20 | 2009-07-28 | Cisco Technology, Inc. | Method and apparatus for using a role based access control system on a network |
US7493595B2 (en) * | 2003-12-19 | 2009-02-17 | The United States Of America As Represented By The Secretary Of The Navy | Multiple-user graphical programming and analysis environment |
GB2409786B (en) * | 2003-12-29 | 2006-12-13 | Nokia Corp | Content distribution |
US20060007893A1 (en) * | 2004-07-09 | 2006-01-12 | Mark Kaplan | System for adapting printed literary, educational, and business works to fixed-line and mobile telephony networks |
SE0402876D0 (en) * | 2004-11-25 | 2004-11-25 | Ericsson Telefon Ab L M | TV-like standards-compliant unicast streaming over IP |
US20060190616A1 (en) * | 2005-02-04 | 2006-08-24 | John Mayerhofer | System and method for aggregating, delivering and sharing audio content |
US8555318B2 (en) * | 2006-12-06 | 2013-10-08 | Verizon Patent And Licensing Inc. | Customized media on demand |
US8162757B2 (en) * | 2007-03-07 | 2012-04-24 | Electronic Arts Inc. | Multiplayer platform for mobile applications |
US20080320516A1 (en) * | 2007-06-25 | 2008-12-25 | Microsoft Corporation | Tailored channel for content consumption |
US20090187834A1 (en) * | 2008-01-17 | 2009-07-23 | Disney Enterprises, Inc. | Method and system for implementing a single user computer application in a multi-user session |
EP2096798B1 (en) * | 2008-02-29 | 2012-12-12 | Accenture Global Services Limited | Dynamic profile system for resource access control |
US8176124B2 (en) * | 2008-12-04 | 2012-05-08 | Disney Enterprises, Inc. | Communication hub for video game development systems having a video game development tool and video game platforms with communication libraries |
-
2009
- 2009-11-11 US US12/616,141 patent/US8556713B2/en not_active Expired - Fee Related
-
2010
- 2010-06-08 US US12/796,321 patent/US20110093507A1/en not_active Abandoned
- 2010-10-19 WO PCT/IB2010/054731 patent/WO2011048546A2/en active Application Filing
- 2010-10-19 WO PCT/IB2010/054734 patent/WO2011048549A2/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6684259B1 (en) * | 1995-10-11 | 2004-01-27 | Citrix Systems, Inc. | Method for providing user global object name space in a multi-user operating system |
US6935960B2 (en) * | 2000-10-27 | 2005-08-30 | Terraplay Systems Ab | Server for mapping application names to tag values in distributed multi-user application |
US20070260675A1 (en) * | 2006-05-08 | 2007-11-08 | Forlines Clifton L | Method and system for adapting a single-client, single-user application to a multi-user, multi-client environment |
Non-Patent Citations (1)
Title |
---|
CHIA SHEN ET AL.: 'DiamondSpin: An Extensible Toolkit for Around-the-Table Interaction' CHI 2004 24 April 2004, pages 167 - 174 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017219488A1 (en) * | 2016-06-23 | 2017-12-28 | 中兴通讯股份有限公司 | Method and apparatus for application to receive information |
US10356214B2 (en) * | 2017-03-29 | 2019-07-16 | Ca, Inc. | Composing monolithic applications based on multi-container applications |
Also Published As
Publication number | Publication date |
---|---|
WO2011048549A2 (en) | 2011-04-28 |
US8556713B2 (en) | 2013-10-15 |
WO2011048549A3 (en) | 2011-10-27 |
US20110092279A1 (en) | 2011-04-21 |
WO2011048546A3 (en) | 2011-10-27 |
US20110093507A1 (en) | 2011-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8556713B2 (en) | Single to multi-user synchronous application conversion | |
JP5968366B2 (en) | Method and system for implementing a game center with player specific options and statistics | |
JP2022088431A (en) | Information processing system and information processing method | |
US8123599B2 (en) | Game builder for mobile device-based games | |
KR20140031399A (en) | Method and system for transferring an application state | |
US8961315B1 (en) | Providing tasks to users during electronic game play | |
CN103858434B (en) | Specific to the convertible content of group | |
JP5521104B1 (en) | Electronic game providing device, electronic game device, electronic game providing program, and electronic game program | |
JP2015122085A (en) | Game control device, program, and game system | |
US20150297999A1 (en) | Game progression using retrieved partial user data | |
JP7366948B2 (en) | Game replay method and system | |
JP6675055B2 (en) | Game system and computer program used therefor | |
JP6768112B2 (en) | Game system and game program | |
JP6775060B2 (en) | Game system and game program | |
EP4088243A1 (en) | Personalized game notifications | |
KR20220061383A (en) | Method and system for recommending content using chatbot | |
US20140323217A1 (en) | Method and server for providing item according to joining an event in online game | |
JP7147015B2 (en) | Method and system for providing betting services using game logs | |
JP2019181203A (en) | Methods and computer apparatus for joining battle in progress | |
KR102241530B1 (en) | Apparatus for providing broadcast | |
JP2010094512A (en) | Method and system for block game provision | |
JP2023177573A (en) | Lottery process support system | |
JP2021153747A (en) | Server device and program | |
KR101327946B1 (en) | Method for managing game room for waiting persons, Device, Record Media program for implement thereof and Game providing system including device for managing game room for waiting persons | |
JP2018068888A (en) | Event control method and event control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10824548 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10824548 Country of ref document: EP Kind code of ref document: A2 |