A matchmaking system matches players for online gaming, when some of the players may be streaming players and other players may be non-streaming players. The streaming players, due to receiving content of the online game via computer networks from a streaming system, may experience a relatively greater network latency for game events relative to non-streaming players. When matching streaming players and non-streaming players for online game play, the relative competitive disadvantage for streaming players due to network latency may be compensated. Additionally, streaming players using input devices that may be more difficult to use and/or may be less responsive during game play, such as a touch screen, may also have their input device disadvantage compensated during matchmaking.
A63F 13/795 - Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for providing a buddy list
A63F 13/48 - Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
A63F 13/798 - Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame
A layered graph data structure can be stored using a vertex table and an edge table. The vertex table includes a vertex identifier column and a first graph identifier column. The edge table includes a second graph identifier column, a node identifier column, and an edge type column. Queries of the layered graph data structure include a target entity and a graph level, and iterative searching of the vertex table and the edge table is performed based on the graph level and data stored in edge type column.
ELECTRONIC ARTS COMPUTER SOFTWARE (SHANGHAI) CO., LTD. (China)
Inventor
Wei, Kun
Abstract
Systems, methods, and machine-readable media for real-time localization are provided. The system provides the real-time localization of an online product that is released to a client in its native language. The online product may include a native layer (502) where content in the native language is provided as well as a localization layer (504) where the content that has been localized can be provided for display. The localization layer (504) may be superimposed on the native layer (502) such that the content of the native layer (502) is obscured from display. The system includes determining both the native language and detecting the user's locale so that the system can provide a localized version of the native content. The client calls a backend translation engine (240) of a server to request for the localized version, and the backend translation engine (240) can respond with the localized version in real-time.
A mesh simplification system receives three-dimensional (3D) polygonal mesh of a 3D object. The mesh simplification system identifies a component of the (3D) polygonal mesh, having a first surface area size being less than a second surface area size of the 3D polygonal mesh, wherein the component comprises a set of topologically interconnected surfaces that are modeled as a separate structure from the 3D polygonal mesh. The mesh simplification system then automatically generates a simplified version of the component by removing a back surface from the component, wherein the simplified version the component comprises fewer polygons than the component.
An audio player for playing back a plurality of tracks, comprising a game state monitor for monitoring a state of an interactive video game being played by a user of a game device, a track controller for managing a plurality of audio tracks, and a track manager for playing out selected ones of the plurality of audio tracks wherein the selected ones are selected based on game logic and a current game state of the interactive video game.
A wireless terminal comprising a transmitter configured to support a wireless connection with a server and a processor configured to enable a user to play an interactive game through the server with a plurality of other users on wireless terminals across a plurality of platforms.
A live hosted multiplayer online gaming system includes a plurality of game clients, a game controller, and a live operator input. The game controller includes logic to operate a live hosted multiplayer online game, logic to couple the game controller to the plurality of game clients via a network, and logic to receive inputs from and to send outputs to the plurality of game clients. The live operator console further includes logic to couple the live operator input to the game server to enable communication between the live operator input and the game controller, logic to synchronize the live operator input to the current game state, and logic to send messages to the game controller that cause the game controller to create events that control at least in part the execution of the live hosted multiplayer online game.
A63F 9/24 - Games using electronic circuits not otherwise provided for
A63F 13/00 - Video games, i.e. games using an electronically generated display having two or more dimensions
G06F 17/00 - Digital computing or data processing equipment or methods, specially adapted for specific functions
G06F 19/00 - Digital computing or data processing equipment or methods, specially adapted for specific applications (specially adapted for specific functions G06F 17/00;data processing systems or methods specially adapted for administrative, commercial, financial, managerial, supervisory or forecasting purposes G06Q;healthcare informatics G16H)
8.
APPARATUS AND METHOD FOR SCREEN SCALING DISPLAYS ON COMMUNCATION DEVICES
A communication device and method of screen scaling dissimilar resolutions across communication devices is disclosed. A communications device includes a physical display configured to display graphics having a physical display resolution, a communications interface configured to provide an interface with a peer communications device for graphics having a predetermined resolution different from the physical display resolution, and a processor configured to scale graphics between the physical display resolution required by the physical display and the predetermined resolution for the communications interface.
G09G 5/02 - Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
An extensible character animation framework is provided that enables video game design teams to develop reusable animation controllers that are customizable for specific applications. According to embodiments, the animation framework enables animators to construct complex animations by creating hierarchies of animation controllers, and the complex animation is created by blending the animation outputs of each of the animation controllers in the hierarchy. The extensible animation framework also provides animators with the ability to customize various attributes of a character being animated and to view the changes to the animation in real-time in order to provide immediate feedback to the animators without requiring that the animators manually rebuild the animation data each time that the animators make a chance to the animation data.
Equilibrium forces and momentum are calculated using character skeleton node graphs having variable root nodes determined in real time based on contacts with fixed objects or other constraints that apply external forces to the character. The skeleton node graph can be traveled backwards and in so doing it is possible to determine a physically possible reaction force. The tree can be traveled one way to apply angles and positions and then traveled back the other way 'to calculate1 forces and moments. Unless the root is correct, however, reaction forces will not be able to be properly determined. The adaptive skeleton framework enables calculations of reactive forces on certain contact nodes to be made. Calculation of reactive forces enables more realistic displayed motion of a simulated character.
Computer simulation of the dynamics of rigid bodies interacting through collisions, stacks and joints is performed using a constraint based system in which constraints are defined in terms of the positions of the bodies. Displacements caused by reaction forces necessary to ensure that the bodies comply with the position constraints can be calculated and can be done iteratively by updating equations defining the reaction forces and the displacements such that the computation time and memory resources required to perform the calculations is linearly dependent upon the number of bodies and the number of contacts and joints between the bodies.
Computer simulation of the dynamics of rigid bodies interacting through collisions, stacks and joints is performed using a constraint based system in which constraints are defined in terms of the positions of the bodies. Displacements caused by reaction forces necessary to ensure that the bodies comply with the position constraints can be calculated and can be done iteratively by updating equations defining the reaction forces and the displacements such that the computation time and memory resources required to perform the calculations is linearly dependent upon the number of bodies and the number of contacts and joints between the bodies. Computational requirements and memory requirements are reduced further by performing the calculations using vector operations.
Computer simulation of the dynamics of rigid bodies interacting through collisions, stacks and joints is performed using a constraint based system in which constraints are defined in terms of the positions of the bodies.
Computer game system and method that saves a state of a game when indicated and records a history of previous game play. Upon resumption, the history of previous game play is presented to the user, and the game does not accept user input to alter the replaying game sequence. After a replay, the game resumes with user control and with the saved game state. In this manner, the user can be refamiliarized with the particular instance of the game that was saved before having to take control of the game. In a specific embodiment, as the game is played, the events of the game are stored in a circular buffer of some determined time period, which may be user settable or set by the game designer based on memory available and the type of game. The circular buffer would contain the most recent history of the game.
A63F 13/00 - Video games, i.e. games using an electronically generated display having two or more dimensions
A63F 9/24 - Games using electronic circuits not otherwise provided for
G06F 17/00 - Digital computing or data processing equipment or methods, specially adapted for specific functions
G06F 19/00 - Digital computing or data processing equipment or methods, specially adapted for specific applications (specially adapted for specific functions G06F 17/00;data processing systems or methods specially adapted for administrative, commercial, financial, managerial, supervisory or forecasting purposes G06Q;healthcare informatics G16H)
Motion sensing of a portable device using two cameras. A first camera is directed along a first viewing axis and a second camera is directed along a second viewing axis, different from the first viewing axis. The second viewing axis can be substantially opposite the first viewing axis. A motion processing module determines changes in images from the first camera and changes in images from the second camera. The motion processing module compares the direction of change determined from the first camera images relative to the direction of change determined from the second camera images. The motion processing module determines the motion of the portable device based in part on the comparison.
In an image processor, images are rendered into a plurality of frame buffers and corresponding Z-buffers by depth and the plurality of frame buffers are later combined to form the rendered image. The rendering can be implemented in hardware, software or a combination, for real-time or near real-time rendering of images. The plurality of frame buffers can be processed in parallel using a plurality of frame processors. The rendering can be performed on a stream of polygons received in an arbitrary order so that presorting the polygons is not required. Complex data structures and processing are not required, allowing a rendering process to proceed quickly, which is needed where the rendering must be done in real-time or near real-time for full- or nearly full-motion video. The image processor is provided with an indication of the number of frame buffers in the plurality of frame buffers. With this indication, the image processor can make the program memory allocations if needed and will process the image data with the required fidelity. The number of frame buffers used might vary as needed for different fidelities and images.
A system and method are provided testing human interactive devices, where one embodiment includes an interface device having a device interface configured to send and receive signals between it and a device being tested and an interactive interface to send and receive signals between it and an interactive device. The system further includes a storage device interface configured to store information pertaining to signals transmitted with the interactive device, the device being tested. The signals sent may represent data, the system may further include a synchronizer configured to synchronize the data. The system may be further configured to record and synchronize data sent between the device being tested and the interactive device.
A method of controlling an animation character with a controller that includes determining a position of the controller and determining a current state of the animation character. A history of positions of the controller is determined and compared with a set of history patterns based upon the current state of the animation character. An animation sequence is initiated based upon any matched history patterns.
Frames of a video sequence are interleaved with game data in a file. When the game is played, the interleaved video frames and the game data may be read from the file where a video sequence corresponding to the video frames is played while the game data is being loaded. When the video sequence has finished, the game data that is needed for a game program has been loaded. In one embodiment, the file may be stored on a medium, such as a compact disk read-only memory (CDROM) or digital versatile disk (DVD).
In an interactive, computer generated animation, a primary element is controlled by a user with a primary controller. A secondary element is controlled by the user with a secondary controller that generally includes a right analog stick. The secondary element is controlled by moving the stick. The secondary element may be controlled during occurrence of an event or prior to a scheduled event.
In an image processor, images are created, stored, manipulated and regenerated using color tinting, where color tinting applies component-to-color mapping from a color card (202) to a plurality of component images (200), which are then combined (210) to form a final image (220), tinted according to the content of the color card. In some instances, the color card might code one color for each of N components, in which case the final image might be the merging of each of N monochromatic component images colored by the color coded by the color card. In other instances, the color card codes for intensity levels or a texture.
G06K 9/00 - Methods or arrangements for reading or recognising printed or written characters or for recognising patterns, e.g. fingerprints
G06K 9/36 - Image preprocessing, i.e. processing the image information without deciding about the identity of the image
G09G 5/02 - Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
22.
CUSTOMIZING PLAYERS IN A VIDEO GAME USING MORPHING FROM MORPH TARGETS AND OTHER ELEMENTS
In a video game, a player is allowed to create a character in the video game by selecting feature variables (fig, 2-3, 6-7, 10) according to two or more target features and a feature variable. The target features can be morph targets and the feature variable might represent relative distance of the player's desired feature relative to the morph targets. In a specific example, the player might be presented with two face shapes and an input slider for a corresponding feature variable where the resulting face feature of the character matches one of the morph targets when the input slider is at one extreme, matches the other morph target when the input slider is at the other extreme and is a combination of the morph targets when the input slider is between the extremes. The character features might include face shape, height, weight, skin color, skin texture, body build, particular sports figure’s faces, clothing, hair, eyes, nose, mouth, lips, hands, feet, etc. The player can also purchase items from a shop according to restrictions on cost, sponsorship, availability, time of day, date and/or day of year (fig. 5).
A method for enabling interaction with a shared game data file in a game device is provided. The method comprises: providing logic to perform one or more actions associated with the shared game data file; and providing logic to cause the game device to perform an action in the one or more actions with the shared game data file, the shared game data file allowing data associated with a first game in the shared game data file to affect actions in a second game.
A simulation module (10) simulates events that may occur during a cautionary period based on, e.g., current relative position of vehicles, vehicle and driver attributes and current game statistics for vehicles, and compiles new statistics and attributes that are used in the resumed race. A full race simulation option and a partial race simulation option are also provided. For example, in a season mode, the simulation module simulates events that may occur during a race and compiles statistics that can be used later, e.g., in a later race, for season standings, etc. A complete race may be simulated, or a partial race may be simulated, for example, if a user desires to terminate a race before it is finished, using the compiled statistics, and a new set of statistics compiled to track the simulated race events. Real world statistics are imported and used in some aspects. For example, real world standings, performance statistics and attribute information are stored in a database and are used as a basis for AI-controlled vehicle performance and AI-generated simulation results.
A method for generating subdivision surfaces in real-time for use in connection with computer graphics is provided. According to an exemplary embodiment of the method, face information and subdivision data for a subdivided face are generated. The subdivided face is made up of a number of subdivision surfaces. The face information and subdivision data for the subdivided face respectively include vertices and edges, which define the subdivided face. Furthermore, two bitflags are associated with each edge identified in the subdivision data for the subdivided face. One bitflag is used to identify whether the associated edge is being used for a second time and the other bitflag is used to indicate whether the associated edge is used twice. The subdivision data for the subdivided face is then used to generate subdivided and additional edges. Each edge is identified by the subdivision data for the subdivided face (0, 1) vis defined by a pair of subdivided edges (13, 14). If an edge is used twice and is being used for the second time, the order of the subdivided edges which make up the edge is reversed. The face information for a subdivision surface is then generated using the face information and subdivision data for the subdivided face, and the subdivision data for the subdivision surface is generated using the subdivided and additional edges.
Art asset rendering (Figure 1, # 10) in which pre-processing is performed in a compilation process. Geometric data are processed in the compilation process with knowledge of associated shading programs. The data are converted into data structures targeted directly to a target hardware platform, and a code stream is assembled that describes the manipulations required to render these data structures. The compiler includes a front end (Figure 1, # 20) configured to read the geometric data and attributes (an art asset) output from a 3D modeling package and shaders in a platform independent form and perform platform-independent optimizations, and a back end (Figure 1, # 40) configured to perform platform-specific optimizations and generate platform-targeted data structures and code streams.
In a computer game, a game situation is analyzed using states of a plurality of game elements by determining a state for each of the plurality of game elements (10), generating a representation of a Voronoi diagram among the game elements using at least some of the game elements (10) as Voronoi sites and performing an analysis of the game situation using the Voronoi diagram (16). The analysis can be spatial analysis and/or tactical analysis to determine a move of a computer controlled entity based on the tactical analysis. The game space might represent playing spaces for soccer, baseball or basketball. The state of a game element might include momentum, speed, and direction of travel (14), velocity and/or team association of the game element. For a soccer game analysis, multiple Voronoi diagrams might be generated and the analyses done using the multiple Voronoi diagrams.
Real world data is integrated into a gaming experience to influence the game and actions of a player. A game module creates game elements from the real world data associated with the location. Weather conditions are simulated based on weather information (104) from different observation locations in the world, and traffic conditions (100) are simulated as well. In a flight simulator game, the game integrates real aircrafts and real weather conditions as the player's aircraft navigates in the world.
A method and system of providing players with positive return in a gambling game. Tokens are won (207) or lost (208) in a manner that assures net positive return. Token value is determined based on the total number of outstanding tokens, or on the total number that have been issued in a predetermined time period, so that the total prize payout is predetermined and constant (221). In one embodiment, tokens act as lottery tickets, and prizes are awarded to winners of the lottery, so that a player's chance of winning the lottery is based on the percentage of outstanding tokens he or she possesses.
A system (fig. 5), method (fig. 3), and apparatus (figs. 4-5) are provided that allow episodic delivery of entertainment (340) to a user. More specifically, an application module is created with episodic content technology (312) which can be purchased as a CD-ROM or downloaded from a remote server (400, 502). The application module contains a current episode of the game and a technology shell to allow future episodes to be downloaded and executed. The entertainment content delivery system is implemented through a centralized server (400, 502) that provides new episodes of the content available for downloading at regularly scheduled intervals to the users' computer. The current instantiation of the application module segregates technology components from content components of the application module to allow independent modification of either. Technological advancements are incorporated as they occur into the new episodes and are executed by the application module. An Internet-enabled game using the entertainment content delivery system communicates with users through various mechanisms, including electronic mail, voice mail, fax machines and web sites.
Systems, methods, and apparatus that provide an online gaming experience that is attractive to players and which provides an economic benefit to an application manufacturer or other party providing the online gaming system. In one embodiment, tokens are provided to players as currency to be used in the online gaming system of the present invention. The tokens may be issued for free, or they may issued for a fee associated with each token. In a further embodiment, an online currency account is maintained by the online gaming system for the players of the online gaming system. The players then submit a prize amount to be awarded the winner of the game. The prize amount is accompanied by a submission of the tokens necessary to comprise the prize amount. Alternatively, the online currency accounts for the players are debited by the corresponding amount. Each player may provide half of the prize amount, or any other percentage decided upon by the players (other percentages may reflect handicaps, etc.) or predefined by the online gaming system. In a further embodiment of the present invention, the tokens may be used to purchase goods online, either at a site hosted by the manager of the online gaming system or at other sites that have arrangements with the online gaming system manager to accept these tokens.
G06Q 30/02 - Marketing, e.g. market research and analysis, surveying, promotions, advertising, buyer profiling, customer management or rewards; Price estimation or determination
G07F 17/32 - Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements