IP Library › Granted Patent US 10,891,125
Granted Patent B2
US 10,891,125 · App. 16/368,179 · Granted Jan 12, 2021

Videogame patch data compilation system

Inventor: Kurtis Michael Schmidt (Port Moody, CA)
Assignee: Electronic Arts Inc.
G06F8/656A63F13/77G06F8/71A63F2300/209
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,891,125
App. No.
16/368,179
Granted
Jan 12, 2021
Kind
B2
Abstract

The present disclosure provides a system and method for updating a game application during runtime of a game application. The game application is executed on a client computing device using application code that includes a function store. During runtime of the game application, a function asset is received and stored in the function store. The function asset includes either precompiled code or code written in a scripting language and includes a version identifier. To execute a particular game function of the game application, the function asset is identified from other function assets in the function store based at least in part on its version identifier, and the game function is executed using the function asset.

Claims (53)

1. A method for executing a game application, on a client computing device, the method comprising:

by one or more processors configured with computer-readable instructions,

executing a game application on a client computing device using application code comprising a function store, wherein the function store comprises one or more function assets, the one or more function assets including at least a first function asset associated with a first game function, wherein the first function asset is compiled machine code and includes a first version identifier; and

during runtime of the game application:

receiving, over a network, a data packet that includes a second function asset that is associated with the first game function, wherein the second function asset is non-compiled code and includes a second version identifier,

updating the function store to include the second function asset as one of the one or more function assets of the function store, wherein said updating occurs without recompiling the game application, and

executing the first game function, wherein said executing the first game function comprises:

identifying the first function asset and the second function asset as being associated with the first game function,

selecting the second function asset instead of the first function asset based, at least in part, on a comparison of the second version identifier to the first version identifier, and

executing the first game function using the second function asset based, at least in part, on said selecting.

2. The method of claim 1 , further comprising, prior to said receiving the data packet, executing the first game function using the first function asset based, at least in part, on the first version identifier.

3. The method of claim 1 , wherein said selecting the second function asset instead of the first function asset comprises:

comparing the first version identifier with the second version identifier, and

identifying the second version identifier based, at least in part, on a determination that the second version identifier corresponds to a newer version identifier than does the first version identifier.

4. The method of claim 1 , wherein each of the first function asset and the second function asset includes a game function identifier associated with the first game function, wherein said identifying the first function asset and the second function asset as being associated with the first game function comprises identifying the first function asset and the second function asset from other function assets in the function store based, at least in part, on the game function identifier of the first function asset and the second function asset.

5. The method of claim 1 , wherein said identifying the the first function asset and the second function asset as being associated with the first game function comprises:

identifying, for each of the one or more function assets of the function store, an associated game function identifier; and

selecting the first function asset and the second function asset based at least in part, on a determination that the game function identifier of the first function asset and the second function asset corresponds to the first game function.

6. The method of claim 1 , wherein the second function asset includes a scripting language.

7. A user computing system comprising:

one or more non-transitory, computer-readable storage mediums storing computer readable instructions, the computer readable instructions comprising at least application code for executing a game application, the application code comprising a function store that includes one or more function assets, the one or more function assets including at least a first function asset, wherein the first function asset is associated with a first game function, includes compiled machine code, and includes a first version identifier; and

one or more processors configured to execute the computer readable instructions to perform operations comprising:

executing the game application using the application code, and

during runtime of the game application:

updating the function store to include a second function asset as one of the one or more function assets of the function store, wherein the second function asset is associated with the first game function, includes non-compiled code, and includes a second version identifier, wherein said updating occurs without recompiling the game application, and

executing the first game function, wherein said executing the first game function comprises:

identifying the first function asset and the second function asset as being associated with the first game function,

selecting the second function asset instead of the first function asset based, at least in part, on the first version identifier and the second version identifier, and

executing the first game function using the second function asset based, at least in part, on said selecting.

8. The user computing system of claim 7 , wherein the one or more processors are configured to execute the computer readable instructions to perform operations further comprising:

prior to said updating the function store to include the second function asset, executing the first game function using the first function asset based, at least in part, on the first version identifier.

9. The user computing system of claim 7 , wherein said selecting the second function asset instead of the first function asset comprises:

comparing the first version identifier with the second version identifier, and

identifying the second version identifier based, at least in part, on a determination that the second version identifier corresponds to a newer version identifier than does the first version identifier.

10. The user computing system of claim 7 , wherein each of the first function asset and the second function asset includes a game function identifier associated with the first game function, wherein said identifying the first function asset and the second function asset as being associated with the first game function comprises:

identifying at least one of the first function asset or the second function asset from other function assets in the function store based, at least in part, on the game function identifier of the at least one of the first function asset or the second function asset.

11. The user computing system of claim 7 , wherein said identifying the first function asset and the second function asset as being associated with the first game function comprises:

identifying, for each of the one or more function assets of the function store, an associated game function identifier; and

selecting the first function asset and the second function asset based, at least in part, on a determination that the game function identifier of the first function asset and the second function asset corresponds to the first game function.

12. The user computing system of claim 7 , wherein the second function asset is code in a scripting language.

13. The user computing system of claim 7 , wherein the one or more processors are configured to execute the computer readable instructions to perform operations further comprising:

updating the function store to include a third function asset as one of the one or more function assets of the function store, wherein the third function asset is associated with the first game function and includes a third version identifier,

selecting the third function asset instead of the first function asset and the second function asset based, at least in part, on the third version identifier, and

executing the first game function using the third function asset.

14. The user computing system of claim 13 , wherein the third function asset is non-compiled code.

15. The user computing system of claim 13 , wherein the third function code is compiled machine code.

16. A method for updating a game application on a client computing device comprising:

receiving an indication of a client computing device executing a game application, wherein the client computing device executes the game application using application code comprising a function store, wherein the function store comprises one or more function assets, the one or more function assets including at least a first function asset associated with a first game function, wherein the first function asset is compiled machine code and includes a first version identifier; and

during runtime of the game application, communicating, over a network, a data packet to the client computing device, wherein the data packet includes a second function asset that is associated with the first game function, wherein the second function asset is non-compiled code and includes a second version identifier,

wherein during the runtime of the game application and without recompiling the game application, the client computing device updates the function store to include the second function asset as one of the one or more function assets of the function store, identifies the first function asset and the second function asset as being associated with the first game function, selects the second function asset instead of the first function asset based at least in part on the second version identifier, and executes the first game function using the second function asset.

17. The method of claim 16 , wherein prior to said communicating the data packet to the client computing device, the client computing device executes the first game function using the first function asset.

18. The method of claim 16 , the client computing device selects the second function asset instead of the first function asset by comparing the first version identifier with the second version identifier, and identifying the second version identifier based, at least in part, on a determination that the second version identifier corresponds to a newer version identifier than does the first version identifier.

19. The method of claim 16 , wherein each of the first function asset and the second function asset includes a game function identifier associated with the first game function, wherein the client computing device identifies the first function asset and the second function asset as being associated with the first game function by identifying the first function asset and the second function asset from other function assets in the function store based, at least in part, on the game function identifier of the first function asset and the second function asset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2020
From: SCHMIDT, KURTIS MICHAEL
To: ELECTRONIC ARTS INC.
Reel/Frame 052283/0055 →
Continuity (1)
Related Publication 20200310783A1 · Oct 1, 2020