Cloud Gaming Testing Service Using ML Snapshot Reproduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Game testing is an expensive and time-consuming process due to the complexity of modern video games, and developers face challenges in reproducing bugs identified by testers, as these bugs often depend on specific player interactions and system variances that are difficult to replicate.

Innovation Solution

A cloud-based system using machine learning to process player-generated snapshot files, which include control inputs, game state data, and video output, to identify and reproduce bugs by generating machine-learned control inputs that can reproduce the bugs, and automate testing under varying conditions, enabling faithful bug reproduction and identification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual game testing is performed by human testers, then bugs can be identified through player interactions, but the bugs cannot be reliably reproduced by developers due to system variances and specific player session conditions

Engineering Contradiction:
Improvebug reproduction reliabilityVSAvoidloss of player session context information
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The system creates a copy of the player's game session by recording control inputs, game state data, and video output to generate a snapshot file. This copy preserves all necessary information to reproduce the bug without requiring the original player session, allowing developers to reliably reproduce issues by replaying the recorded snapshot data.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary recording of control inputs, game state, and video output during the player's game session before the bug reproduction phase. By capturing this data in advance and storing it in a snapshot file, the system prepares all necessary information beforehand, enabling reliable bug reproduction without needing to recreate the exact original session conditions.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If cloud-based automated testing with machine learning is implemented, then bug reproduction efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvetesting efficiencyVSAvoidtesting system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system introduces a cloud-based machine learning module as an intermediary between the snapshot file and bug analysis. This module processes the recorded data, extracts features, and generates machine-learned control inputs that can reproduce bugs. By placing the complex ML processing in the cloud rather than requiring complex local testing infrastructure, the system improves productivity while managing complexity through service abstraction.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If extensive game testing is performed to ensure quality, then game stability is improved, but testing costs and time consumption increase

Engineering Contradiction:
Improvegame stabilityVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of performing extensive manual testing to ensure game stability, the system creates snapshot copies of actual bug-causing sessions and replays them automatically through machine learning processes. This approach maintains high reliability for detecting stability issues while dramatically reducing the time required, as automated ML-based replay and analysis is much faster than manual human testing.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3883659B1Testing as a service for cloud gaming
Publication Date: 2023.07.19 SONY INTERACTIVE ENTERTAINMENT LLC
  • EP3883659B1 patent drawingFigure 1
  • EP3883659B1 patent drawingFigure 2
  • EP3883659B1 patent drawingFigure 3

AI summary

Technology is described for Testing as a Service (TaaS) for a video game. In one embodiment, a method includes an operation for receiving a game application for testing for one or more bugs. The method further provides for executing, by an automated game testing module, a plurality of automated sessions of the game session while implementing testing inputs for the plurality of automated sessions, the testing inputs include control inputs, game states, system parameters and network parameters. The method further includes operations for detecting an occurrence of a bug during the said executing the plurality of sessions for generating a snapshot file including a portion of the control inputs, the game state data, and a video component associated with the occurrence of the bug.