# US 11,896,905 B2 · Methods and systems for continuing to execute a simulation after processing resources go offline

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,896,905 B2
- Document ID: US11896905B2
- Status: Granted
- Kind: B2
- Application number: 18/054,238
- Filed: 2022-11-10
- Published: 2023-04-06
- Granted: 2024-02-13
- Earliest claimed: 2015-05-14
- Assignees: Activision Publishing, Inc.
- Applicants: Activision Publishing, Inc.
- Inventors: Michael D. Marr; Keith S. Kaplan; Nathan T. Lewis
- Web page: https://patentgrep.com/patent/US11896905B2

## CPC

- A63F 13/63: by the player, e.g. authoring using a level editor
- A63F 13/34: using peer-to-peer connections
- A63F 13/352: 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
- A63F 13/358: Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
- A63F 13/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
- A63F 13/69: by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR

## Abstract

A system and method is provided that simulates gameplay of non-player characters (NPCs) distributed across networked end user devices. The system may identify end user devices that are connected to the system through a network and are available to participate in a simulation in which each participating end user device is provided with one or more NPCs to be executed. An end user device may be available to participate when it has sufficient computing capacity, such as when in an idle or standby state. As such, the system may leverage spare computing capacity of networked end user devices to execute NPCs at networked end user devices during a simulation. In this manner, the behavior of an NPC may be tested using real-world conditions that may affect gameplay, such as a network connection quality, user-to-user game engine coordination and data exchanges, and/or other real-world conditions associated with networked end user devices.

## Claims

### Claim 1

A computer implemented method of simulating a gameplay of a video game with non-player characters (NPCs), the method comprising:
conducting the gameplay of the video game using a plurality of networked end user devices, wherein each of the networked end user devices is adapted to be used by a human player and wherein each of the networked end user devices is configured to communicate with a computer system that is positioned remote from, and is distinct from, the networked end user devices and adapted to host the video game;
determining that one of the plurality of networked end user devices is no longer available to conduct the gameplay of the video game;
generating a specification of one of the NPCs based on a latest known state of said one of the NPCs executing before the one of the plurality of networked end user devices became no longer available;
identifying, by the computer system, a replacement networked end user device;
using the replacement networked end user device together with the remaining plurality of networked end user devices to conduct the gameplay of the video game;
providing the generated specification of the one of the NPCs to the replacement networked end user device;
continuing to conduct, by the computer system, the gameplay session including a simulated gameplay of the one of the NPCs; and
transmitting, from the computer system to each of the plurality of networked end user devices and the replacement networked end user device, the simulated NPC gameplay session, including the simulated gameplay of the one of the NPCs from the replacement networked end user device.

### Claim 2 (depends on 1)

The computer implemented method of claim 1, wherein the replacement networked end user device is identified based on whether it has a spare computing capacity that can be used to instantiate the specification of the one of the NPCs.

### Claim 3 (depends on 2)

The computer implemented method of claim 2, further comprising receiving data, at the computer system, indicative of the one of the NPCs specifically being executed by the replacement networked end user device.

### Claim 4 (depends on 1)

The computer implemented method of claim 1, further comprising obtaining, by the computer system, one or more simulation metrics that describes an aspect of the simulated NPC gameplay session.

### Claim 5 (depends on 4)

The computer implemented method of claim 4, wherein the one or more simulation metrics comprises an NPC performance metric, the method further comprising determining a performance of the one of the NPCs during the simulated gameplay session based on the NPC performance metric.

### Claim 6 (depends on 4)

The computer implemented method of claim 4, wherein the one or more simulation metrics comprise a gameplay quality metric, the method further comprising determining a quality of a match of the one of the NPCs and a second one of the NPCs based on the gameplay quality metric.

### Claim 7 (depends on 6)

The computer implemented method of claim 6, wherein the one or more simulation metrics comprise a network performance metric, the method further comprising determining a quality of a network connection based on the network performance metric.

### Claim 8 (depends on 7)

The computer implemented method of claim 7, wherein the one or more simulation metrics comprise a gameplay quality metric, the method further comprising determining a quality of a match of the one of the NPCs and the second one of the NPCs based on the gameplay quality metric and the quality of the network connection.

### Claim 9 (depends on 7)

The computer implemented method of claim 7, wherein the quality of the network connection reflects network connectivity of a grouping of the plurality of networked end user devices and a second end user device, wherein the grouping is based on a geographic location, a particular network used, an Internet Service Provider associated with the plurality of networked end user devices or the second end user device, whether a wireless or wired connection is used, an identification of a game hosting service, end user device version, or type of Network Address Translation (NAT) connection.

### Claim 10 (depends on 4)

The computer implemented method of claim 4, wherein the one or more simulation metrics comprise a fault metric, the method further comprising determining whether a fault has occurred with hardware or software involved in the simulated gameplay session based on the fault metric.

### Claim 11

A system for simulating a gameplay of a video game with non-player characters (NPCs) in a multi-player gaming network, wherein the multi-player gaming network comprises a plurality of end user devices each adapted to be used by a human player and wherein the plurality of end user devices are located remote from each other, the system comprising:
at least one game server in data communication with each of the networked end user devices, wherein the at least one game server is positioned remote from, and is distinct from, the networked end user devices and is adapted to host a video game, and the at least one game server is adapted to:
conduct the gameplay of the video game using the plurality of networked end user devices;
determine that one of the plurality of networked end user devices is no longer available to conduct the gameplay of the video game;
generate a specification of one of the NPCs based on a latest known state of said one of the NPCs executing before the one of the plurality of networked end user devices became no longer available;
identify a replacement networked end user device;
use the replacement networked end user device together with the remaining plurality of networked end user devices to conduct the gameplay of the video game;
provide the generated specification of the one of the NPCs to the replacement networked end user device;
continue to conduct the gameplay session including a simulated gameplay of the one of the NPCs; and
transmit to each of the plurality of networked end user devices and the replacement networked end user device, the simulated NPC gameplay session, including the simulated gameplay of the one of the NPCs from the replacement networked end user device.

### Claim 12 (depends on 11)

The system of claim 11, wherein the at least one game server is configured to identify the replacement networked end user device based on whether it has a spare computing capacity that can be used to instantiate the specification of the one of the NPCs.

### Claim 13 (depends on 12)

The system of claim 12, wherein the at least one game server is further configured to receive data indicative of the one of the NPCs specifically being executed by the replacement networked end user device.

### Claim 14 (depends on 11)

The system of claim 11, wherein the at least one game server is further configured to obtain one or more simulation metrics that describes an aspect of the simulated NPC gameplay session.

### Claim 15 (depends on 14)

The system of claim 14, wherein the one or more simulation metrics comprises an NPC performance metric, the system further comprising the at least one game server configured to determine a performance of the one of the NPCs during the simulated gameplay session based on the NPC performance metric.

### Claim 16 (depends on 15)

The system of claim 15, wherein the one or more simulation metrics comprise a gameplay quality metric, the system further comprising the at least one game server configured to determine a quality of a match of the one of the NPCs and a second one of the NPCs based on the gameplay quality metric.

### Claim 17 (depends on 14)

The system of claim 14, wherein the one or more simulation metrics comprise a network performance metric, the system further comprising the at least one game server configured to determine a quality of a network connection based on the network performance metric.

### Claim 18 (depends on 14)

The system of claim 14, wherein the one or more simulation metrics comprise a gameplay quality metric, the system further comprising the at least one game server configured to determine a quality of a match of the one of the NPCs and the second one of the NPCs based on the gameplay quality metric and the quality of the network connection.

### Claim 19 (depends on 18)

The system of claim 18, wherein the quality of the network connection reflects network connectivity of a grouping of the plurality of networked end user devices and a second end user device, wherein the grouping is based on a geographic location, a particular network used, an Internet Service Provider associated with the plurality of networked end user devices or the second end user device, whether a wireless or wired connection is used, an identification of a game hosting service, end user device version, or type of Network Address Translation (NAT) connection.

### Claim 20 (depends on 15)

The system of claim 15, wherein the one or more simulation metrics comprise a fault metric, the system further comprising the at least one game server configured to determine whether a fault has occurred with hardware or software involved in the simulated gameplay session based on the fault metric.
