# US 8,789,055 B1 · Maintaining time fidelity for an instance of a virtual space placed in a background state

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

- Number: US 8,789,055 B1
- Document ID: US8789055B1
- Status: Granted
- Kind: B1
- Application number: 13/564,654
- Filed: 2012-08-01
- Granted: 2014-07-22
- Earliest claimed: 2012-08-01
- Assignees: Kabam, Inc.
- Applicants: Michael R. Pearce
- Inventors: Michael R. Pearce
- Web page: https://patentgrep.com/patent/US8789055B1

## CPC

- G06F 9/542: {Event management; Broadcasting; Multicasting; Notifications}
- A63F 13/00: Video games, i.e. games using an electronically generated display having two or more dimensions
- G06F 9/4843: {by program, e.g. task dispatcher, supervisor, operating system}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- A63F: CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR

## Abstract

Time fidelity may be maintained for an instance of a virtual space placed in a background state. The background state may be a state in which user intervention with the instance of the virtual space is disallowed. In contrast, a foreground state may be a state in which user intervention with the instance of the virtual space is allowed. Individual timers may be associated with corresponding events configured to occur within the virtual space. An elapsed time while the instance of the virtual space is in a background state may be determined. Individual timers may be adjusted based on the elapsed time responsive to the instance of the virtual space resuming from the background state to the foreground state in order to maintain time fidelity.

## Claims

### Claim 1

A system configured to maintain time fidelity for an instance of a virtual space placed in a background state, the system comprising:
one or more processors configured to execute computer program modules, the computer program modules comprising:
a space module configured to implement the instance of the virtual space to determine views of the virtual space, the instance being associated with one or more events including a first event, the first event being configured to (1) occur at a first occurrence time within the virtual space, (2) occur over a first period of time within the virtual space, or (3) be completed at a first completion time within the virtual space;
a timer module configured to manage one or more timers including a first timer, individual ones of the one or more timers being associated with individual ones of the one or more events, the first timer being associated with the first event, the first timer being configured to effectively (1) count down to the first occurrence time, (2) count down the first period of time, or (3) count down to the first completion time;
a lapse determination module configured to determine an elapsed time while the instance of the virtual space is in a background state, the background state being a state in which user intervention with the instance of the virtual space is disallowed, a foreground state being a state in which user intervention with the instance of the virtual space is allowed; and
a global timer module configured to adjust individual ones of the one or more timers based on the elapsed time responsive to the instance of the virtual space resuming from the background state to the foreground state, wherein the first timer is adjusted such that the first event (1) occurs at the first occurrence time within the virtual space, (2) occurs over the first period of time within the virtual space, or (3) is completed at the first completion time within the virtual space.

### Claim 2 (depends on 1)

The system of claim 1, wherein execution of the instance of the virtual space is suspended responsive to the instance of the virtual space being in the background state.

### Claim 3 (depends on 1)

The system of claim 1, further comprising a state detection module configured to determine whether the instance of the virtual space is in the background state or the foreground state.

### Claim 4 (depends on 1)

The system of claim 1, wherein the instance of the virtual space is placed in the background state responsive to a second application being placed in the foreground state.

### Claim 5 (depends on 1)

The system of claim 1, wherein the elapsed time is equal to a duration between (1) a first time at which the instance of the virtual space was placed in the background state and (2) a second time at which the instance of the virtual space was resumed from the background state to the foreground state.

### Claim 6 (depends on 1)

The system of claim 1, wherein the elapsed time is equal to a duration during which execution of the instance of the virtual space was suspended while the instance of the virtual space is in the background state.

### Claim 7 (depends on 1)

The system of claim 1, wherein the global timer module is further configured to maintain a record of one or more active timers, a given active timer corresponding to a given event that has not yet occurred within the virtual space.

### Claim 8 (depends on 7)

The system of claim 7, wherein a given one of the one or more timers become an active timer responsive to one or both of user actions or an occurrence of another corresponding event within the virtual space.

### Claim 9 (depends on 7)

The system of claim 7, wherein a given active timer is removed from the record responsive to an occurrence in the virtual space of a given event corresponding to the given active timer.

### Claim 10

A computer-implemented method for maintaining time fidelity for an instance of a virtual space placed in a background state, the method being performed by one or more processors configured to execute computer program modules, the method comprising:
implementing the instance of the virtual space to determine views of the virtual space, the instance being associated with one or more events including a first event, the first event being configured to (1) occur at a first occurrence time within the virtual space, (2) occur over a first period of time within the virtual space, or (3) be completed at a first completion time within the virtual space;
managing one or more timers including a first timer, individual ones of the one or more timers being associated with individual ones of the one or more events, the first timer being associated with the first event, the first timer being configured to effectively (1) count down to the first occurrence time, (2) count down the first period of time, or (3) count down to the first completion time;
determining an elapsed time while the instance of the virtual space is in a background state, the background state being a state in which user intervention with the instance of the virtual space is disallowed, a foreground state being a state in which user intervention with the instance of the virtual space is allowed; and
adjusting individual ones of the one or more timers based on the elapsed time responsive to the instance of the virtual space resuming from the background state to the foreground state, wherein the first timer is adjusted such that the first event (1) occurs at the first occurrence time within the virtual space, (2) occurs over the first period of time within the virtual space, or (3) is completed at the first completion time within the virtual space.

### Claim 11 (depends on 10)

The method of claim 10, wherein execution of the instance of the virtual space is suspended responsive to the instance of the virtual space being in the background state.

### Claim 12 (depends on 10)

The method of claim 10, further comprising determining whether the instance of the virtual space is in the background state or the foreground state.

### Claim 13 (depends on 10)

The method of claim 10, wherein the instance of the virtual space is placed in the background state responsive to a second application being placed in the foreground state.

### Claim 14 (depends on 10)

The method of claim 10, wherein the elapsed time is equal to a duration between (1) a first time at which the instance of the virtual space was placed in the background state and (2) a second time at which the instance of the virtual space was resumed from the background state to the foreground state.

### Claim 15 (depends on 10)

The method of claim 10, wherein the elapsed time is equal to a duration during which execution of the instance of the virtual space was suspended while the instance of the virtual space is in the background state.

### Claim 16 (depends on 10)

The method of claim 10, wherein the global timer module is further configured to maintain a record of one or more active timers, a given active timer corresponding to a given event that has not yet occurred within the virtual space.

### Claim 17 (depends on 16)

The method of claim 16, wherein a given one of the one or more timers become an active timer responsive to one or both of user actions or an occurrence of another corresponding event within the virtual space.

### Claim 18 (depends on 16)

The method of claim 16, wherein a given active timer is removed from the record responsive to an occurrence in the virtual space of a given event corresponding to the given active timer.
