EP-4735135-A1 - RECORD AND REPLAY OF GAME STATE IN A VIRTUAL ENVIRONMENT
Abstract
A metaverse application receives user input from a user during gameplay of a virtual experience. The metaverse application renders a first game state of gameplay of the virtual experience on a user device based on the user input, wherein the first game state is described by a set of properties. The metaverse application generates a list of changes in properties between the first game state and a second game state, wherein the second game state occurred before the first game state. The metaverse application receives a request from the user to replay the second game state. The metaverse application renders the second game state of gameplay by reversing the list of changes between the first game state and the second game state.
Inventors
- O'SULLIVAN, DAVID
- SPENCE, Kyle Joseph
- GONEN, AYKUD
- LYU, DAVID M.
- WONG, CHI MING
Assignees
- Roblox Corporation
Dates
- Publication Date
- 20260506
- Application Date
- 20240410
Claims (20)
- 1. A computer implemented method comprising: receiving user input from a user during gameplay of a virtual experience; rendering a first game state of gameplay of the virtual experience on a user device based on the user input, wherein the first game state is described by a set of properties; generating a list of changes in properties between the first game state and a second game state, wherein the second game state occurred before the first game state; receiving a request from the user to replay the second game state; and rendering the second game state of gameplay by reversing the list of changes between the first game state and the second game state.
- 2. The method of claim 1, further comprising: displaying a user interface that includes options to replay the gameplay from the second game state to the first game state, display the gameplay backwards from the first game state to the second game state, pause the gameplay, and return to a current game state of gameplay of the virtual experience.
- 3. The method of claim 2, further comprising: receiving a selection from the user of an option to display the gameplay backwards from the first game state to the second game state; and decrementing a frame counter while reversing the list of changes from the first game state to the second game state.
- 4. The method of claim 2, The method of claim 2, wherein the options in the user interface further include an option to report abuse that occurs in the virtual experience by identifying one or more frames between the first game state and the second game state that correspond to the abuse and identifying one or more avatars associated with the abuse.
- 5. The method of claim 4, wherein the option to report abuse that occurs in the virtual experience further includes identifying an abusive object, and the method further comprises: identifying, based on the list of changes, a player that is associated with the abusive object.
- 6. The method of claim 2, wherein the options in the user interface further include an option to view a heatmap of an avatar that is used to illustrate how a new player can move in the virtual environment.
- 7. The method of claim 2, wherein the options in the user interface further include an option to report a translation error that occurs in the virtual experience.
- 8. The method of claim 7, wherein the translation error is identified as being associated with an object in the virtual experience.
- 9. The method of claim 1, further comprising: in response to a size of the list of changes exceeding a predetermined size threshold, removing one or more oldest changes in the list.
- 10. The method of claim 1, wherein the changes between the first game state and the second game state are grouped by a frame number in which one or more of the changes occurred.
- 11. A system comprising: a processor; and a memory coupled to the processor, with instructions stored thereon that, when executed by the processor, cause the processor to perform operations comprising: receiving user input from a user during gameplay of a virtual experience; generating a list of changes in properties between a first game state and a second game state based on the user input, wherein the second game state occurred before the first game state; receiving a report of abuse from the user that includes a recording of the gameplay between the first game state and the second game state, and an avatar or an object associated with the abuse; and providing the report of abuse to a moderator or a machine- learning model to output a determination of abuse.
- 12. The system of claim 11 , wherein the report includes an identification of the abuse that occurs in the virtual experience and one or more frames between the first game state and the second game state that corresponds to the abuse.
- 13. The system of claim 11 , wherein the operations further include determining a player associated with the object based on the list of changes.
- 14. The system of claim 11 , wherein the operations further include, responsive to the moderator or the machine-learning model outputting the determination of the abuse, muting, blocking, or placing a temporary ban on a player associated with the avatar.
- 15. The system of claim 11 , wherein the operations further include, responsive to determining that the object is abusive, hiding the object from view.
- 16. A non-transitory computer-readable medium with instructions that, when executed by one or more processors at a user device, cause the one or more processors to perform operations, the operations comprising: receiving user input from a user during gameplay of a virtual experience; rendering a first game state of gameplay of the virtual experience on a user device based on the user input, wherein the first game state is described by a set of properties; generating a list of changes in properties between the first game state and a second game state, wherein the second game state occurred before the first game state; receiving a request from the user to replay the second game state; and rendering the second game state of gameplay by reversing the list of changes between the first game state and the second game state.
- 17. The non-transitory computer-readable medium of claim 16, wherein the operations further comprise: displaying a user interface that includes options to replay the gameplay from the second game state to the first game state, display the gameplay backwards from the first game state to the second game state, pause the gameplay, and return to a current game state of gameplay of the virtual experience.
- 18. The non-transitory computer-readable medium of claim 17, wherein the operations further comprise: receiving a selection from the user of an option to display the gameplay backwards from the first game state to the second game state; and decrementing a frame counter while reversing the list of changes from the first game state to the second game state.
- 19. The non-transitory computer-readable medium of claim 17, The method of claim 2, wherein the options in the user interface further include an option to report abuse that occurs in the virtual experience by identifying one or more frames between the first game state and the second game state that correspond to the abuse.
- 20. The non-transitory computer-readable medium of claim 19, wherein the option to report abuse that occurs in the virtual experience further includes identifying one or more avatars associated with the abuse.
Description
Record and Replay of Game State in a Virtual Environment CROSS-REFERENCE TO RELATED APPLICATIONS [0001] This application claims the benefit of priority to U.S. Patent Application No. 18/231,098, filed August 7, 2023 and titled RECORD AND REPLAY OF GAME STATE IN A VIRTUAL ENVIRONMENT, the entire contents of which are hereby incorporated by reference herein. BACKGROUND [0002] Abuse in a virtual environment occurs in multiple ways. For example, avatars may wear offensive outfits, players may perform offensive actions, players may say offensive things, and players may type offensive words into a group chat. Proving that a player committed abuse by performing an offensive action or saying an offensive thing, is difficult to prove because it requires reviewing the alleged abuse. Recording all things that occur in a three-dimensional (3D) virtual environment is not feasible due to the technical requirements, e.g., the amount of storage space needed to store recordings, game state, or other information; network resources to transmit such information; processing resources to process such information (e.g., encode/decode, transform formats, etc.). [0003] The background description provided herein is for the purpose of presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure. SUMMARY [0004] Embodiments relate generally to a system and method to store changes to a game state for replaying a previous game state. According to one aspect, a method includes receiving user input from a user during gameplay of a virtual experience. The method further includes rendering a first game state of gameplay of the virtual experience on a user device based on the user input, wherein the first game state is described by a set of properties. The method further includes generating a list of changes in properties between the first game state and a second game state, wherein the second game state occurred before the first game state. The method further includes receiving a request from the user to replay the second game state. The method further includes rendering the second game state of gameplay by reversing the list of changes between the first game state and the second game state. [0005] In some embodiments, the method further includes displaying a user interface that includes options to replay the gameplay from the second game state to the first game state, display the gameplay backwards from the first game state to the second game state, pause the gameplay, and return to a current game state of gameplay of the virtual experience. In some embodiments, the method further includes receiving a selection from the user of an option to display the gameplay hackwards from the first game state to the second game state and decrementing a frame counter while reversing the list of changes from the first game state to the second game state. In some embodiments, the user interface further includes an option to report abuse that occurs in the virtual experience by identifying one or more frames between the first game state and the second game state where the abuse occurred and identifying one or more avatars associated with the abuse. In some embodiments, the option to report abuse that occurs in the virtual experience further includes identifying an abusive object and the method further includes identifying, based on the list of changes, a player that is associated with the abusive object. In some embodiments, the user interface further includes an option to view a heatmap of an avatar that is used to illustrate how a new player can move in the virtual environment. In some embodiments, the user interface further includes an option to report a translation error that occurs in the virtual experience and to provide an alternative translation. In some embodiments, the translation error is identified as being associated with an object in the virtual experience. In some embodiments, the method further includes in response to a size of the list of changes exceeding a predetermined size threshold, removing one or more oldest changes in the list. In some embodiments, the method further includes the changes between the first game state and the second game state are grouped by a frame number in which one or more of the changes occurred. [0006] According to one aspect, a system includes a processor and a memory coupled to the processor, with instructions stored thereon that, when executed by the processor, cause the processor to perform operations comprising: receiving user input from a user during gameplay of a virtual experience, generating a list of changes in properties between a first game state and a second game state based on the user input, wherein the second game state occurre