IP Library Granted Patent US 11,413,539
Granted Patent B2
US 11,413,539 · App. 16/518,914 · Granted Aug 16, 2022

Realtime dynamic modification and optimization of gameplay parameters within a video game application

Inventors: Navid Aghdaie (San Jose, CA); John Kolen (Half Moon Bay, CA); Mohamed Marwan Mattar (San Francisco, CA); Mohsen Sardari (Redwood City, CA); Su Xue (Fremont, CA); Kazi Atif-Uz Zaman (Foster City, CA); Meng Wu (Fremont, CA)
Assignee: ELECTRONIC ARTS INC.
A63F13/67A63F13/79A63F13/31A63F13/352
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 11,413,539
App. No.
16/518,914
Granted
Aug 16, 2022
Kind
B2
Abstract

Embodiments presented herein include systems and methods for performing dynamic difficulty adjustment. Further, embodiments disclosed herein perform dynamic difficulty adjustment using processes that may not be detectable or are more difficult to detect by users compared to static and/or existing difficulty adjustment processes. In some embodiments, historical user information utilized by a machine learning system to generate a prediction model that predicts an expected duration of game play, such as for example, an expected churn rate, a retention rate, the length of time a user is expected to play the game, or an indication of the user's expected game play time relative to a historical set of users who have previously played the game. Before or during game play, the prediction model can be applied to information about the user to predict the user's expected duration of game play. Based on the expected duration, in some embodiments, the system may then utilize a mapping data repository to determine how to dynamically adjust the difficulty of the game, such as, for example, changing the values of one or more gameplay parameters to make portions of the game less difficult.

Claims (50)

1. A computer-implemented method comprising:

under control of one or more hardware computing devices configured with specific computer-executable instructions, the specific computer-executable instructions stored in an electronic hardware memory,

receiving, over a network from a user computing system, a gameplay session data packet comprising an indication of initiation of a current gameplay session of a video game application at a first gameplay level of a plurality of gameplay levels on the user computing system;

identifying a user identifier associated with the current gameplay session of the video game application on the user computing system from the gameplay session data packet, the user identifier associated with a user account;

accessing user account data in a physical data store based at least in part on the user identifier, wherein the physical data store is configured to store user account data structures storing user interaction data associated with one or more gameplay sessions of the video game application;

accessing a user specific difficulty trajectory associated with progression of the user account through the video game application, wherein the user specific difficulty trajectory is generated based at least in part on an analysis of at least a portion of the user account data using a difficulty analysis model, wherein the user specific difficulty trajectory identifies a predicted challenge level for each gameplay level of the plurality of gameplay levels within the video game application, wherein each gameplay level can be one of a plurality of different challenge levels;

determining a first difficulty level for the first gameplay level of the current gameplay session of the video game application using the predicted challenge level identified for the first gameplay level by the user specific difficulty trajectory and gameplay session data associated with the current gameplay session, wherein each gameplay level can be one of a plurality of different difficulty levels;

based at least in part on the determined first difficulty level, selecting a value for at least one gameplay parameter associated with the video game application, wherein the at least one gameplay parameter comprises a variable that when adjusted causes a modification to a state of the video game application; and

modifying execution of the video game application by adjusting the at least one gameplay parameter to the selected value for the first gameplay level of the current gameplay session.

2. The computer-implemented method of claim 1 , wherein the user interaction data comprises recent user interaction data that is more recent than a threshold age time period and historical user interaction data that less recent than the threshold age time period.

3. The computer-implemented method of claim 1 , wherein the determined difficulty first level is further determined based at least in part on a skill level associated with the user account.

4. The computer-implemented method of claim 1 , wherein the user specific difficulty trajectory is based on a win rate calculated for the user account to satisfy a threshold level of engagement during gameplay sessions of the video game application.

5. The computer-implemented method of claim 1 , wherein the at least one gameplay parameter is a seed value that identifies seed data used to generate a gameplay level within the video game application.

6. The computer-implemented method of claim 1 , wherein modifying execution of the video game application by adjusting the gameplay parameter to the selected value for the current gameplay session occurs prior to initiation of each gameplay level during the current gameplay session.

7. The computer-implemented method of claim 1 , further comprising:

determining a relationship between the user specific difficulty trajectory and a detected level of difficulty associated with the user account;

based upon the determined relationship, generating one or more design recommendations; and

updating the video game application based upon the one or more design recommendation.

8. A system comprising:

an electronic data store configured to store user account data structures storing user interaction data associated with one or more gameplay sessions of a video game application;

a hardware processor in communication with the electronic data store, the hardware processor configured to execute specific computer-executable instructions to at least:

receive, over a network from a user computing system, a gameplay session data packet comprising an indication of initiation of a current gameplay session of a video game application at a first gameplay level of a plurality of gameplay levels on the user computing system;

identify a user identifier associated with the current gameplay session of the video game application on the user computing device system from the gameplay session data packet, the user identifier associated with a user account;

access user account data in a physical data store based at least in part on the user identifier, wherein the physical data store is configured to store user account data structures storing user interaction data associated with one or more gameplay sessions of the video game application;

access a user specific difficulty trajectory associated with progression of the user account through the video game application, wherein the user specific difficulty trajectory is generated based at least in part on an analysis of at least a portion of the user account data using a difficulty analysis model, wherein the user specific difficulty trajectory identifies a predicted challenge level for each gameplay level of the plurality of gameplay levels within the video game application, wherein each gameplay level can be one of a plurality of different challenge levels;

determine a first difficulty level for the first gameplay level of the current gameplay session of the video game application using the predicted challenge level identified for the first gameplay level by the user specific difficulty trajectory and gameplay session data associated with the current gameplay session, wherein each gameplay level can be one of a plurality of different difficulty levels;

based at least in part on the determined first difficulty level, selecting a value for at least one gameplay parameter associated with the video game application, wherein the at least one gameplay parameter comprises a variable that when adjusted causes a modification to a state of the video game application; and

modify execution of the video game application by adjusting the at least one gameplay parameter to the selected value for the current gameplay session.

9. The system of claim 8 , wherein the user interaction data comprises recent user interaction data that is more recent than a threshold age time period and historical user interaction data that less recent than the threshold age time period.

10. The system of claim 8 , wherein the determined first difficulty level is further determined based at least in part on a skill level associated with the user account.

11. The system of claim 8 , wherein the user specific difficulty trajectory is based on a win rate calculated for the user account to satisfy a threshold level of engagement during gameplay sessions of the video game application.

12. The system of claim 8 , wherein the at least one gameplay parameter is a seed value that identifies seed data used to generate a gameplay level within the video game application.

13. The system of claim 8 , wherein modification of the execution of the video game application by adjusting the gameplay parameter to the selected value for the current gameplay session occurs prior to initiation of each gameplay level during the current gameplay session.

14. The system of claim 8 , wherein the hardware processor is further configured to:

determine a relationship between the user specific difficulty trajectory and a detected level of difficulty associated with the user account;

based upon the determined relationship, generate one or more design recommendations; and

update the video game application based upon the one or more design recommendation.

15. A non-transitory computer-readable storage medium storing computer executable instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations comprising:

receiving, over a network from a user computing system, a gameplay session data packet comprising an indication of initiation of a current gameplay session of a video game application at a first gameplay level of a plurality of gameplay levels on the user computing system;

identifying a user identifier associated with the current gameplay session of the video game application on the user computing system from the gameplay session data packet, the user identifier associated with a user account;

accessing user account data in a physical data store based at least in part on the user identifier, wherein the physical data store is configured to store user account data structures storing user interaction data associated with one or more gameplay sessions of the video game application;

accessing a user specific difficulty trajectory associated with progression of the user account through the video game application, wherein the user specific difficulty trajectory is generated based at least in part on an analysis of at least a portion of the user account data using a difficulty analysis model, wherein the user specific difficulty trajectory identifies a predicted challenge level for each gameplay level of the plurality of gameplay levels within the video game application, wherein each gameplay level can be one of a plurality of different challenge levels;

determining a first difficulty level for the first gameplay level of the current gameplay session of the video game application using the predicted challenge level identified for the first gameplay level by the user specific difficulty trajectory and gameplay session data associated with the current gameplay session, wherein each gameplay level can be one of a plurality of different difficulty levels;

based at least in part on the determined first difficulty level, selecting a value for at least one gameplay parameter associated with the video game application, wherein the at least one gameplay parameter comprises a variable that when adjusted causes a modification to a state of the video game application; and

modifying execution of the video game application by adjusting the at least one gameplay parameter to the selected value for the current gameplay session.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the user interaction data comprises recent user interaction data that is more recent than a threshold age time period and historical user interaction data that less recent than the threshold age time period.

17. The non-transitory computer-readable storage medium of claim 15 , wherein the determined first difficulty level is further determined based at least in part on a skill level associated with the user account.

18. The non-transitory computer-readable storage medium of claim 15 , wherein the user specific difficulty trajectory is based on a win rate calculated for the user account to satisfy a threshold level of engagement during gameplay sessions of the video game application.

19. The non-transitory computer-readable storage medium of claim 15 , wherein the at least one gameplay parameter is a seed value that identifies seed data used to generate a gameplay level within the video game application.

20. The non-transitory computer-readable storage medium of claim 15 , wherein modifying execution of the video game application by adjusting the gameplay parameter to the selected value for the current gameplay session occurs prior to initiation of each gameplay level during the current gameplay session.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: AGHDAIE, NAVID
To: ELECTRONIC ARTS INC.
Reel/Frame 059134/0815 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: KOLEN, JOHN
To: ELECTRONIC ARTS INC.
Reel/Frame 059134/0898 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: MATTAR, MOHAMED MARWAN
To: ELECTRONIC ARTS INC.
Reel/Frame 059134/0964 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: SARDARI, MOHSEN
To: ELECTRONIC ARTS INC.
Reel/Frame 059135/0023 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: XUE, SU
To: ELECTRONIC ARTS INC.
Reel/Frame 059135/0124 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: ZAMAN, KAZI ATIF-UZ
To: ELECTRONIC ARTS INC.
Reel/Frame 059135/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2022
From: WU, MENG
To: ELECTRONIC ARTS INC.
Reel/Frame 059135/0868 →
Continuity (2)
Continuation 15445784 · Feb 28, 2017
Related Publication 20200078685A1 · Mar 12, 2020
Cited By (3)
US 12,307,203 US 12,551,795 US 12,567,196